Function at 0x42a465
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a7659
mov eax, dword fs:[0]
push eax
mov eax, 0x2258
call fcn.00484da0
mov eax, dword [0x4f1e38]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2220], eax
xor eax, eax
mov dword [ebp - 0x222c], eax
mov dword [ebp - 0x2228], eax
mov dword [ebp - 0x2224], eax
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x2264], eax
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push 0x7d
pop eax
cmp word [edi], ax
je 0x42aa08
xor eax, eax
push str.Delete
inc eax
push edi
mov dword [ebp - 0x223c], eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
neg eax
sbb esi, esi
push 0x4b2750
inc esi
push edi
mov dword [ebp - 0x221c], esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x42a51b
test esi, esi
je 0x42a5e7
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x42a5e9
push 0x5c
push edi
mov dword [ebp - 0x2238], esi
mov dword [ebp - 0x2234], esi
mov dword [ebp - 0x2230], esi
call fcn.0042b68c
pop ecx
pop ecx
test eax, eax
jne 0x42a9f8
push edi
mov ecx, ebx
call fcn.004265a0
test eax, eax
je 0x42a59e
mov eax, dword [ebp - 0x2220]
push edi
lea ecx, [ebp - 0x2238]
mov dword [ebp - 0x2238], eax
mov dword [ebp - 0x2234], esi
mov dword [ebp - 0x2230], esi
call fcn.00407218
mov dword [ebp - 0x2238], esi
mov dword [ebp - 0x2234], esi
mov dword [ebp - 0x2230], esi
cmp dword [ebp - 0x221c], esi
je 0x42a5da
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42a9f0
push edi
mov ecx, ebx
call fcn.0042b605
lea ecx, [ebp - 0x2238]
mov esi, eax
call fcn.0040694f
test esi, esi
js 0x42aa08
jmp 0x42a9ac
lea ecx, [ebp - 0x2238]
call fcn.0040694f
jmp 0x42a5e9
xor esi, esi
push str.NoRemove
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x42a611
push edi
mov ecx, ebx
mov dword [ebp - 0x223c], esi
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push 0x4b2748
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x42a73d
lea eax, [ebp - 0x2218]
push eax
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push 0x3d
pop eax
cmp word [edi], ax
jne 0x42aa03
cmp dword [ebp + 0x10], 0
je 0x42a6c3
and dword [ebp - 0x2250], 0
and dword [ebp - 0x224c], 0
xor eax, eax
inc eax
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x2220]
mov dword [ebp - 0x2254], eax
push edi
lea eax, [ebp - 0x2218]
push eax
lea eax, [ebp - 0x2254]
push eax
mov ecx, ebx
call fcn.00425fe6
mov esi, eax
xor eax, eax
mov dword [ebp - 0x2254], eax
mov dword [ebp - 0x2250], eax
mov dword [ebp - 0x224c], eax
lea ecx, [ebp - 0x2254]
test esi, esi
js 0x42aa40
mov byte [ebp - 4], al
jmp 0x42a9a7
cmp dword [ebp + 0x14], 0
jne 0x42a730
cmp dword [ebp - 0x223c], 0
je 0x42a730
xor eax, eax
push 0x20006
push eax
push dword [ebp - 0x2220]
lea ecx, [ebp - 0x2260]
mov dword [ebp - 0x2260], eax
mov dword [ebp - 0x225c], eax
mov dword [ebp - 0x2258], eax
call fcn.00407129
test eax, eax
jne 0x42aa31
lea eax, [ebp - 0x2218]
push eax
push dword [ebp - 0x2260]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x42a725
cmp eax, 2
jne 0x42aa31
lea ecx, [ebp - 0x2260]
call fcn.0040694f
push edi
mov ecx, ebx
call fcn.0042b605
jmp 0x42a4cd
push 0x5c
push edi
call fcn.0042b68c
pop ecx
pop ecx
test eax, eax
jne 0x42aa03
cmp dword [ebp + 0x10], eax
je 0x42a7e0
mov esi, dword [ebp - 0x2220]
push 0x2001f
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.00407129
test eax, eax
je 0x42a7aa
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.00407129
test eax, eax
je 0x42a7aa
xor eax, eax
push eax
push eax
push 0x2001f
push eax
push eax
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.00406969
test eax, eax
jne 0x42a8c2
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push 0x3d
pop eax
cmp word [edi], ax
jne 0x42a9ac
push edi
push 0
lea eax, [ebp - 0x222c]
push eax
mov ecx, ebx
call fcn.00425fe6
mov esi, eax
jmp 0x42a5cd
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x42a800
push 0x20019
push edi
push dword [ebp - 0x2220]
lea ecx, [ebp - 0x222c]
call fcn.00407129
jmp 0x42a803
push 2
pop eax
push 1
test eax, eax
mov dword [ebp - 0x221c], eax
pop eax
push 0xffffffffffffffff
cmovne esi, eax
push edi
lea eax, [ebp - 0x218]
push 0x104
push eax
mov dword [ebp + 0x14], esi
call fcn.00489182
push eax
call fcn.00402040
add esp, 0x14
mov ecx, ebx
push edi
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
push edi
mov ecx, ebx
call fcn.0042b605
mov esi, eax
test esi, esi
js 0x42aa08
push 0x7b
pop eax
cmp word [edi], ax
jne 0x42a89e
push edi
call fcn.004846da
pop ecx
cmp eax, 1
jne 0x42a89e
push dword [ebp + 0x14]
mov ecx, ebx
push 0
push dword [ebp - 0x222c]
push edi
call fcn.0042a465
mov esi, eax
test esi, esi
jns 0x42a88c
cmp dword [ebp + 0x14], 0
je 0x42aa08
push edi
mov ecx, ebx
call fcn.00429d66
mov esi, eax
test esi, esi
js 0x42aa08
mov eax, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2264]
mov dword [ebp + 0x14], ecx
cmp eax, 2
je 0x42a4d7
test eax, eax
je 0x42a8d0
test ecx, ecx
jne 0x42a4d7
push eax
call fcn.0042656d
pop ecx
mov esi, eax
jmp 0x42aa08
test ecx, ecx
je 0x42a91f
push dword [ebp - 0x222c]
mov ecx, ebx
call fcn.004298e2
test eax, eax
je 0x42a91f
lea eax, [ebp - 0x218]
push eax
mov ecx, ebx
call fcn.004265a0
test eax, eax
je 0x42a4d7
cmp dword [ebp - 0x223c], 0
je 0x42a4d7
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x222c]
call fcn.00407218
jmp 0x42a4d7
push dword [ebp - 0x222c]
mov ecx, ebx
call fcn.004298e2
lea ecx, [ebp - 0x222c]
mov dword [ebp - 0x221c], eax
call fcn.0040694f
test eax, eax
jne 0x42a8c2
cmp dword [ebp - 0x223c], eax
je 0x42a4d7
cmp dword [ebp - 0x221c], eax
jne 0x42a4d7
mov eax, dword [ebp - 0x2220]
and dword [ebp - 0x2244], 0
and dword [ebp - 0x2240], 0
mov dword [ebp - 0x2248], eax
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x2248]
call fcn.004069cc
xor ecx, ecx
mov dword [ebp - 0x2248], ecx
mov dword [ebp - 0x2244], ecx
mov dword [ebp - 0x2240], ecx
test eax, eax
jne 0x42aa47
lea ecx, [ebp - 0x2248]
call fcn.0040694f
cmp dword [ebp + 0x10], 0
je 0x42a4d7
push 0x7b
pop eax
cmp word [edi], ax
jne 0x42a4d7
push edi
call fcn.004846da
pop ecx
cmp eax, 1
jne 0x42a4d7
push 0
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp - 0x222c]
push edi
call fcn.0042a465
mov esi, eax
test esi, esi
js 0x42aa08
jmp 0x42a4c5
lea ecx, [ebp - 0x2238]
jmp 0x42aa40
lea ecx, [ebp - 0x2238]
call fcn.0040694f
mov esi, 0x80020009
lea ecx, [ebp - 0x222c]
call fcn.0040694f
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00483eb4
leave
ret 0x10
push eax
call fcn.0042656d
pop ecx
lea ecx, [ebp - 0x2260]
mov esi, eax
call fcn.0040694f
jmp 0x42aa08
push eax
call fcn.0042656d
pop ecx
lea ecx, [ebp - 0x2248]
jmp 0x42aa3e