Function at 0x485a10
Capabilities:
Delete registry key
Delete registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2250
call fcn.004eba30
mov eax, dword [0x53f4a0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
push edi
mov dword [ebp - 0x2210], ecx
mov dword [ebp - 0x2220], eax
mov dword [ebp - 0x221c], ebx
mov dword [ebp - 0x2218], ebx
mov dword [ebp - 0x2238], edx
call fcn.00484370
mov esi, eax
cmp esi, ebx
jl 0x4860f3
cmp word [edi], 0x7d
je 0x4860f1
lea ecx, [ecx]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push 0x50d7dc
push edi
mov dword [ebp - 0x222c], 1
call esi
mov ebx, eax
neg ebx
push str.ForceRemove
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x485aa3
test ebx, ebx
je 0x485bbb
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x485bbd
push 0x5c
push edi
mov dword [ebp - 0x2228], esi
mov dword [ebp - 0x2224], esi
call fcn.004842c0
add esp, 8
test eax, eax
jne 0x486047
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.004844f0
test eax, eax
je 0x485b1d
mov eax, dword [ebp - 0x2220]
push edi
lea ecx, [ebp - 0x2228]
mov dword [ebp - 0x2228], eax
mov dword [ebp - 0x2224], esi
call fcn.00484690
mov dword [ebp - 0x2228], esi
mov dword [ebp - 0x2224], esi
cmp ebx, esi
je 0x485bb3
mov ebx, dword [ebp - 0x2210]
push edi
mov ecx, ebx
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x486075
push edi
mov ecx, ebx
call fcn.00484580
mov esi, eax
test esi, esi
jl 0x486075
mov dword [ebp - 0x2224], 0
cmp word [edi], 0x7b
jne 0x485ba4
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x485ba4
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2210]
push 0
push edx
push eax
push edi
call fcn.00485a10
mov esi, eax
test esi, esi
jl 0x4860e0
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
cmp word [edi], 0x7d
jne 0x485a70
jmp 0x4860e0
mov dword [ebp - 0x2224], esi
jmp 0x485bbd
xor esi, esi
push str.NoRemove
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x485beb
mov ecx, dword [ebp - 0x2210]
push edi
mov dword [ebp - 0x222c], eax
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
xor esi, esi
push 0x50d818
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x485d15
lea ecx, [ebp - 0x220c]
push ecx
mov ecx, dword [ebp - 0x2210]
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
cmp word [edi], 0x3d
jne 0x486052
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
je 0x485c8f
mov edx, dword [ebp - 0x2220]
push edi
lea eax, [ebp - 0x220c]
push eax
lea ecx, [ebp - 0x2240]
push ecx
mov ecx, dword [ebp - 0x2210]
mov dword [ebp - 0x2240], edx
mov dword [ebp - 0x223c], ebx
call fcn.004856b0
mov esi, eax
cmp esi, ebx
mov dword [ebp - 0x2240], ebx
mov dword [ebp - 0x223c], ebx
jl 0x48607d
mov dword [ebp - 0x223c], ebx
jmp 0x485b59
cmp dword [ebp + 0x14], ebx
jne 0x485d00
cmp dword [ebp - 0x222c], ebx
je 0x485d00
mov edx, dword [ebp - 0x2220]
push 0x20006
push ebx
push edx
lea ecx, [ebp - 0x2234]
mov dword [ebp - 0x2234], ebx
mov dword [ebp - 0x2230], ebx
call fcn.00483f60
cmp eax, ebx
jne 0x486095
mov esi, dword [ebp - 0x2234]
lea eax, [ebp - 0x220c]
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
cmp eax, ebx
je 0x485ce9
cmp eax, 2
jne 0x486095
cmp esi, ebx
je 0x485cfa
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x2234], ebx
mov dword [ebp - 0x2230], ebx
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484580
mov esi, eax
cmp esi, ebx
jmp 0x485b9e
push 0x5c
push edi
call fcn.004842c0
add esp, 8
test eax, eax
jne 0x486052
cmp dword [ebp + 0x10], esi
je 0x485e39
mov ebx, dword [ebp - 0x2220]
lea ecx, [ebp - 0x2214]
push ecx
push 0x2001f
push esi
push edi
push ebx
mov dword [ebp - 0x2214], esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
cmp eax, esi
jne 0x485d7f
mov ecx, dword [ebp - 0x221c]
xor eax, eax
cmp ecx, esi
je 0x485d69
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, dword [ebp - 0x2214]
mov dword [ebp - 0x2218], esi
mov dword [ebp - 0x221c], edx
cmp eax, esi
je 0x485df5
push 0x20019
push edi
push ebx
lea ecx, [ebp - 0x221c]
call fcn.00483f60
test eax, eax
je 0x485df5
lea eax, [ebp - 0x2250]
push eax
lea ecx, [ebp - 0x2214]
push ecx
push esi
push 0x2001f
push esi
push esi
push esi
push edi
mov edx, ebx
push edx
mov dword [ebp - 0x2214], esi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov ebx, eax
cmp ebx, esi
jne 0x4860a3
mov ecx, dword [ebp - 0x221c]
xor eax, eax
cmp ecx, esi
je 0x485dd9
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x2214]
mov dword [ebp - 0x2218], esi
mov ebx, eax
mov dword [ebp - 0x221c], ecx
cmp eax, esi
jne 0x4860a3
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
cmp word [edi], 0x3d
jne 0x485b59
mov ecx, dword [ebp - 0x2210]
push edi
push 0
lea edx, [ebp - 0x221c]
push edx
call fcn.004856b0
mov esi, eax
test esi, esi
jl 0x4860e0
jmp 0x485b59
cmp dword [ebp + 0x14], esi
jne 0x485f39
mov eax, dword [ebp - 0x2220]
push 0x20019
push edi
push eax
lea ecx, [ebp - 0x221c]
call fcn.00483f60
mov ebx, eax
mov dword [ebp - 0x2214], ebx
cmp ebx, esi
je 0x485e6d
mov dword [ebp + 0x14], 1
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x20c]
push 0x104
push ecx
call fcn.004ecae3
push eax
call fcn.0045f8b0
mov ecx, dword [ebp - 0x2210]
add esp, 0x14
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484580
mov esi, eax
test esi, esi
jl 0x4860e0
cmp word [edi], 0x7b
jne 0x485f0b
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x485f0b
mov ebx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2210]
push ebx
push 0
push edx
push edi
call fcn.00485a10
mov esi, eax
test esi, esi
jge 0x485eef
test ebx, ebx
je 0x4860e0
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00484370
mov esi, eax
test esi, esi
jl 0x4860e0
mov ebx, dword [ebp - 0x2214]
mov eax, dword [ebp - 0x2238]
mov dword [ebp + 0x14], eax
cmp ebx, 2
je 0x485ba4
test ebx, ebx
je 0x485f4e
test eax, eax
jne 0x485ba4
push ebx
call fcn.00483e40
add esp, 4
mov esi, eax
jmp 0x4860e0
mov dword [ebp - 0x2214], 2
mov ebx, dword [ebp - 0x2214]
jmp 0x485e66
mov ebx, dword [ebp - 0x221c]
test eax, eax
je 0x485fa6
mov ecx, dword [ebp - 0x2210]
push ebx
call fcn.00484530
test eax, eax
je 0x485fa6
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x2210]
call fcn.004844f0
test eax, eax
je 0x485ba4
cmp dword [ebp - 0x222c], 0
je 0x485ba4
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x221c]
call fcn.00484690
jmp 0x485ba4
mov ecx, dword [ebp - 0x2210]
push ebx
call fcn.00484530
mov dword [ebp - 0x224c], eax
mov dword [ebp - 0x2214], 0
test ebx, ebx
je 0x485fdd
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x2214], eax
mov dword [ebp - 0x221c], 0
mov ebx, dword [ebp - 0x2214]
mov dword [ebp - 0x2218], 0
test ebx, ebx
jne 0x4860a3
cmp dword [ebp - 0x222c], ebx
je 0x485ba4
cmp dword [ebp - 0x224c], ebx
jne 0x485ba4
mov ecx, dword [ebp - 0x2220]
lea eax, [ebp - 0x20c]
push eax
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
xor ecx, ecx
mov dword [ebp - 0x2248], ecx
mov dword [ebp - 0x2244], ecx
cmp eax, ecx
jne 0x4860ca
lea ecx, [ebp - 0x2248]
call fcn.00484670
jmp 0x485ba4
lea ecx, [ebp - 0x2228]
call fcn.00484670
lea ecx, [ebp - 0x221c]
call fcn.00484670
pop edi
pop esi
mov eax, 0x80020009
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ea5a8
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [ebp - 0x2228]
jmp 0x4860db
lea ecx, [ebp - 0x2240]
call fcn.00484670
lea ecx, [ebp - 0x221c]
call fcn.00484670
jmp 0x4860f1
push eax
call fcn.00483e40
lea ecx, [ebp - 0x2234]
jmp 0x4860d6
lea ecx, [ebp - 0x221c]
call fcn.00484670
push ebx
call fcn.00483e40
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ea5a8
mov esp, ebp
pop ebp
ret 0x10
push eax
call fcn.00483e40
lea ecx, [ebp - 0x2248]
add esp, 4
mov esi, eax
call fcn.00484670
mov eax, dword [ebp - 0x221c]
test eax, eax
je 0x4860f1
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004ea5a8
mov esp, ebp
pop ebp
ret 0x10