Function at 0x4203cd
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a1feb
mov eax, dword fs:[0]
push eax
mov eax, 0x2258
call fcn.0045aa10
mov eax, dword [0x4d5e88]
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.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push 0x7d
pop eax
cmp word [edi], ax
je 0x420970
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 0x4c0c0c
inc esi
push edi
mov dword [ebp - 0x221c], esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x420483
test esi, esi
je 0x42054f
push edi
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x420551
push 0x5c
push edi
mov dword [ebp - 0x2238], esi
mov dword [ebp - 0x2234], esi
mov dword [ebp - 0x2230], esi
call fcn.00422a46
pop ecx
pop ecx
test eax, eax
jne 0x420960
push edi
mov ecx, ebx
call fcn.00418d84
test eax, eax
je 0x420506
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.00420009
mov dword [ebp - 0x2238], esi
mov dword [ebp - 0x2234], esi
mov dword [ebp - 0x2230], esi
cmp dword [ebp - 0x221c], esi
je 0x420542
push edi
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420958
push edi
mov ecx, ebx
call fcn.0042288b
lea ecx, [ebp - 0x2238]
mov esi, eax
call fcn.004018c0
test esi, esi
js 0x420970
jmp 0x420914
lea ecx, [ebp - 0x2238]
call fcn.004018c0
jmp 0x420551
xor esi, esi
push str.NoRemove
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x420579
push edi
mov ecx, ebx
mov dword [ebp - 0x223c], esi
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push 0x4c0c04
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x4206a5
lea eax, [ebp - 0x2218]
push eax
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push edi
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push 0x3d
pop eax
cmp word [edi], ax
jne 0x42096b
cmp dword [ebp + 0x10], 0
je 0x42062b
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.00418198
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 0x4209a8
mov byte [ebp - 4], al
jmp 0x42090f
cmp dword [ebp + 0x14], 0
jne 0x420698
cmp dword [ebp - 0x223c], 0
je 0x420698
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.004018f0
test eax, eax
jne 0x420999
lea eax, [ebp - 0x2218]
push eax
push dword [ebp - 0x2260]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x42068d
cmp eax, 2
jne 0x420999
lea ecx, [ebp - 0x2260]
call fcn.004018c0
push edi
mov ecx, ebx
call fcn.0042288b
jmp 0x420435
push 0x5c
push edi
call fcn.00422a46
pop ecx
pop ecx
test eax, eax
jne 0x42096b
cmp dword [ebp + 0x10], eax
je 0x420748
mov esi, dword [ebp - 0x2220]
push 0x2001f
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.004018f0
test eax, eax
je 0x420712
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.004018f0
test eax, eax
je 0x420712
xor eax, eax
push eax
push eax
push 0x2001f
push eax
push eax
push edi
push esi
lea ecx, [ebp - 0x222c]
call fcn.0040e8b4
test eax, eax
jne 0x42082a
push edi
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push 0x3d
pop eax
cmp word [edi], ax
jne 0x420914
push edi
push 0
lea eax, [ebp - 0x222c]
push eax
mov ecx, ebx
call fcn.00418198
mov esi, eax
jmp 0x420535
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x420768
push 0x20019
push edi
push dword [ebp - 0x2220]
lea ecx, [ebp - 0x222c]
call fcn.004018f0
jmp 0x42076b
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.0045b89f
push eax
call fcn.00418921
add esp, 0x14
mov ecx, ebx
push edi
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
push edi
mov ecx, ebx
call fcn.0042288b
mov esi, eax
test esi, esi
js 0x420970
push 0x7b
pop eax
cmp word [edi], ax
jne 0x420806
push edi
call fcn.0045a1f4
pop ecx
cmp eax, 1
jne 0x420806
push dword [ebp + 0x14]
mov ecx, ebx
push 0
push dword [ebp - 0x222c]
push edi
call fcn.004203cd
mov esi, eax
test esi, esi
jns 0x4207f4
cmp dword [ebp + 0x14], 0
je 0x420970
push edi
mov ecx, ebx
call fcn.0041d1fa
mov esi, eax
test esi, esi
js 0x420970
mov eax, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2264]
mov dword [ebp + 0x14], ecx
cmp eax, 2
je 0x42043f
test eax, eax
je 0x420838
test ecx, ecx
jne 0x42043f
push eax
call fcn.00418991
pop ecx
mov esi, eax
jmp 0x420970
test ecx, ecx
je 0x420887
push dword [ebp - 0x222c]
mov ecx, ebx
call fcn.0041b7ca
test eax, eax
je 0x420887
lea eax, [ebp - 0x218]
push eax
mov ecx, ebx
call fcn.00418d84
test eax, eax
je 0x42043f
cmp dword [ebp - 0x223c], 0
je 0x42043f
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x222c]
call fcn.00420009
jmp 0x42043f
push dword [ebp - 0x222c]
mov ecx, ebx
call fcn.0041b7ca
lea ecx, [ebp - 0x222c]
mov dword [ebp - 0x221c], eax
call fcn.004018c0
test eax, eax
jne 0x42082a
cmp dword [ebp - 0x223c], eax
je 0x42043f
cmp dword [ebp - 0x221c], eax
jne 0x42043f
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.00419a3e
xor ecx, ecx
mov dword [ebp - 0x2248], ecx
mov dword [ebp - 0x2244], ecx
mov dword [ebp - 0x2240], ecx
test eax, eax
jne 0x4209af
lea ecx, [ebp - 0x2248]
call fcn.004018c0
cmp dword [ebp + 0x10], 0
je 0x42043f
push 0x7b
pop eax
cmp word [edi], ax
jne 0x42043f
push edi
call fcn.0045a1f4
pop ecx
cmp eax, 1
jne 0x42043f
push 0
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp - 0x222c]
push edi
call fcn.004203cd
mov esi, eax
test esi, esi
js 0x420970
jmp 0x42042d
lea ecx, [ebp - 0x2238]
jmp 0x4209a8
lea ecx, [ebp - 0x2238]
call fcn.004018c0
mov esi, 0x80020009
lea ecx, [ebp - 0x222c]
call fcn.004018c0
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.00458e9f
leave
ret 0x10
push eax
call fcn.00418991
pop ecx
lea ecx, [ebp - 0x2260]
mov esi, eax
call fcn.004018c0
jmp 0x420970
push eax
call fcn.00418991
pop ecx
lea ecx, [ebp - 0x2248]
jmp 0x4209a6