Function at 0x463e86
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2250
call fcn.004aa3b0
xor eax, eax
push ebx
push esi
mov dword [ebp - 0x20], eax
mov ebx, ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x48], eax
push edi
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push 0x7d
pop eax
cmp word [edi], ax
je 0x46433d
xor eax, eax
push 0x4018cc
inc eax
push edi
mov dword [ebp + 8], eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
neg eax
push 0x4018a0
sbb esi, esi
inc esi
push edi
mov dword [ebp - 4], esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x463efd
test esi, esi
je 0x463f9f
push edi
mov ecx, ebx
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x463fa1
push 0x5c
push edi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], esi
call fcn.00465669
pop ecx
pop ecx
test eax, eax
jne 0x464330
push edi
mov ecx, ebx
call fcn.00461951
test eax, eax
je 0x463f5f
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x10]
push edi
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], esi
call fcn.00463aba
mov dword [ebp - 0x10], esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], esi
cmp dword [ebp - 4], esi
je 0x463f95
push edi
mov ecx, ebx
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46432b
push edi
mov ecx, ebx
call fcn.004655a0
mov esi, eax
lea ecx, [ebp - 0x10]
call fcn.00461cdd
test esi, esi
js 0x46433d
jmp 0x4642d7
lea ecx, [ebp - 0x10]
call fcn.00461cdd
jmp 0x463fa1
xor esi, esi
push 0x4018b8
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x463fc6
push edi
mov ecx, ebx
mov dword [ebp + 8], esi
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push 0x401898
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x4640ae
lea eax, [ebp - 0x2250]
mov ecx, ebx
push eax
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push edi
mov ecx, ebx
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push 0x3d
pop eax
cmp word [edi], ax
jne 0x464338
cmp dword [ebp + 0x10], 0
je 0x46404c
mov eax, dword [ebp + 0xc]
mov ecx, ebx
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x2250]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00460ecb
mov esi, eax
lea ecx, [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
jmp 0x463f83
cmp dword [ebp + 0x14], 0
jne 0x4640a1
cmp dword [ebp + 8], 0
je 0x4640a1
xor eax, eax
lea ecx, [ebp - 0x44]
push 0x20006
push eax
push dword [ebp + 0xc]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
call fcn.0046350c
test eax, eax
jne 0x464350
lea eax, [ebp - 0x2250]
push eax
push dword [ebp - 0x44]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x464099
cmp eax, 2
jne 0x464350
lea ecx, [ebp - 0x44]
call fcn.00461cdd
push edi
mov ecx, ebx
call fcn.004655a0
jmp 0x463eb5
push 0x5c
push edi
call fcn.00465669
pop ecx
pop ecx
test eax, eax
jne 0x464338
cmp dword [ebp + 0x10], eax
je 0x46413f
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x1c]
push 0x2001f
push edi
push esi
call fcn.0046350c
test eax, eax
je 0x46410b
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x1c]
call fcn.0046350c
test eax, eax
je 0x46410b
xor eax, eax
lea ecx, [ebp - 0x1c]
push eax
push eax
push 0x2001f
push eax
push eax
push edi
push esi
call fcn.00461e3f
test eax, eax
jne 0x464220
push edi
mov ecx, ebx
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push 0x3d
pop eax
cmp word [edi], ax
jne 0x4642d7
push edi
xor eax, eax
mov ecx, ebx
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00460ecb
mov esi, eax
jmp 0x463f88
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x464159
push 0x20019
push edi
push dword [ebp + 0xc]
lea ecx, [ebp - 0x1c]
call fcn.0046350c
jmp 0x46415c
push 2
pop eax
push 1
test eax, eax
mov dword [ebp - 4], eax
pop eax
push 0xffffffffffffffff
cmovne esi, eax
lea eax, [ebp - 0x250]
push edi
push 0x104
push eax
mov dword [ebp + 0x14], esi
call fcn.004b46d2
push eax
call fcn.0046176a
add esp, 0x14
mov ecx, ebx
push edi
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
push edi
mov ecx, ebx
call fcn.004655a0
mov esi, eax
test esi, esi
js 0x46433d
push 0x7b
pop eax
cmp word [edi], ax
jne 0x464202
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x20]
jne 0x4641b8
sub ecx, edx
xor eax, eax
sar ecx, 1
inc eax
cmp ecx, eax
jne 0x464202
push dword [ebp + 0x14]
xor eax, eax
mov ecx, ebx
push eax
push dword [ebp - 0x1c]
push edi
call fcn.00463e86
mov esi, eax
test esi, esi
jns 0x4641f0
cmp dword [ebp + 0x14], 0
je 0x46433d
push edi
mov ecx, ebx
call fcn.00463389
mov esi, eax
test esi, esi
js 0x46433d
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x48]
mov dword [ebp + 0x14], ecx
cmp eax, 2
je 0x463ebf
test eax, eax
je 0x46422e
test ecx, ecx
jne 0x463ebf
push eax
call fcn.004617da
pop ecx
mov esi, eax
jmp 0x46433d
test ecx, ecx
je 0x464274
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.004624aa
test eax, eax
je 0x464274
lea eax, [ebp - 0x250]
mov ecx, ebx
push eax
call fcn.00461951
test eax, eax
je 0x463ebf
cmp dword [ebp + 8], 0
je 0x463ebf
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00463aba
jmp 0x463ebf
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.004624aa
lea ecx, [ebp - 0x1c]
mov dword [ebp - 4], eax
call fcn.00461cdd
test eax, eax
jne 0x464220
cmp dword [ebp + 8], eax
je 0x463ebf
cmp dword [ebp - 4], eax
jne 0x463ebf
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x250]
push eax
call fcn.00461eb0
xor ecx, ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], ecx
test eax, eax
jne 0x464363
lea ecx, [ebp - 0x38]
call fcn.00461cdd
cmp dword [ebp + 0x10], 0
je 0x463ebf
push 0x7b
pop eax
cmp word [edi], ax
jne 0x463ebf
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x20]
jne 0x4642f2
sub ecx, edx
xor eax, eax
sar ecx, 1
inc eax
cmp ecx, eax
jne 0x463ebf
xor eax, eax
mov ecx, ebx
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x1c]
push edi
call fcn.00463e86
mov esi, eax
test esi, esi
js 0x46433d
mov ecx, ebx
jmp 0x463eaf
lea ecx, [ebp - 0x10]
jmp 0x46435c
lea ecx, [ebp - 0x10]
call fcn.00461cdd
mov esi, 0x80020009
lea ecx, [ebp - 0x1c]
call fcn.00461cdd
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push eax
call fcn.004617da
pop ecx
lea ecx, [ebp - 0x44]
mov esi, eax
call fcn.00461cdd
jmp 0x46433d
push eax
call fcn.004617da
pop ecx
lea ecx, [ebp - 0x38]
jmp 0x46435a