Function at 0x417575
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ac553
mov eax, dword fs:[0]
push eax
mov eax, 0x2258
call fcn.0043d890
mov eax, dword [0x4ef340]
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 - 0x221c], eax
xor eax, eax
mov dword [ebp - 0x223c], eax
mov dword [ebp - 0x2238], eax
mov dword [ebp - 0x2234], eax
mov dword [ebp - 4], eax
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push 0x7d
pop eax
cmp word [edi], ax
je 0x417b19
xor eax, eax
push str.Delete
inc eax
push edi
mov dword [ebp - 0x2224], eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
neg eax
push 0x4dc0a4
sbb esi, esi
inc esi
push edi
mov dword [ebp - 0x2220], esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x417622
test esi, esi
je 0x4176ee
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x4176f0
push 0x5c
push edi
mov dword [ebp - 0x2230], esi
mov dword [ebp - 0x222c], esi
mov dword [ebp - 0x2228], esi
call fcn.00417f53
pop ecx
pop ecx
test eax, eax
jne 0x417b09
push edi
mov ecx, ebx
call fcn.00414165
test eax, eax
je 0x4176a5
mov eax, dword [ebp - 0x221c]
lea ecx, [ebp - 0x2230]
push edi
mov dword [ebp - 0x2230], eax
mov dword [ebp - 0x222c], esi
mov dword [ebp - 0x2228], esi
call fcn.004170f3
mov dword [ebp - 0x2230], esi
mov dword [ebp - 0x222c], esi
mov dword [ebp - 0x2228], esi
cmp dword [ebp - 0x2220], esi
je 0x4176e1
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b01
push edi
mov ecx, ebx
call fcn.00417eca
lea ecx, [ebp - 0x2230]
mov esi, eax
call fcn.00414295
test esi, esi
js 0x417b19
jmp 0x417abd
lea ecx, [ebp - 0x2230]
call fcn.00414295
jmp 0x4176f0
xor esi, esi
push str.NoRemove
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x417718
push edi
mov ecx, ebx
mov dword [ebp - 0x2224], esi
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push 0x4dc09c
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x417844
lea eax, [ebp - 0x2218]
mov ecx, ebx
push eax
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push 0x3d
pop eax
cmp word [edi], ax
jne 0x417b14
cmp dword [ebp + 0x10], 0
je 0x4177ca
and dword [ebp - 0x2248], 0
xor eax, eax
and dword [ebp - 0x2244], 0
inc eax
mov byte [ebp - 4], al
mov ecx, ebx
mov eax, dword [ebp - 0x221c]
mov dword [ebp - 0x224c], eax
lea eax, [ebp - 0x2218]
push edi
push eax
lea eax, [ebp - 0x224c]
push eax
call fcn.004137c8
mov esi, eax
lea ecx, [ebp - 0x224c]
xor eax, eax
mov dword [ebp - 0x224c], eax
mov dword [ebp - 0x2248], eax
mov dword [ebp - 0x2244], eax
test esi, esi
js 0x417b53
mov byte [ebp - 4], al
jmp 0x417ab8
cmp dword [ebp + 0x14], 0
jne 0x417837
cmp dword [ebp - 0x2224], 0
je 0x417837
xor eax, eax
lea ecx, [ebp - 0x2264]
push 0x20006
push eax
push dword [ebp - 0x221c]
mov dword [ebp - 0x2264], eax
mov dword [ebp - 0x2260], eax
mov dword [ebp - 0x225c], eax
call fcn.00416a89
test eax, eax
jne 0x417b44
lea eax, [ebp - 0x2218]
push eax
push dword [ebp - 0x2264]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x41782c
cmp eax, 2
jne 0x417b44
lea ecx, [ebp - 0x2264]
call fcn.00414295
push edi
mov ecx, ebx
call fcn.00417eca
jmp 0x4175d4
push 0x5c
push edi
call fcn.00417f53
pop ecx
pop ecx
test eax, eax
jne 0x417b14
cmp dword [ebp + 0x10], eax
je 0x4178e7
mov esi, dword [ebp - 0x221c]
lea ecx, [ebp - 0x223c]
push 0x2001f
push edi
push esi
call fcn.00416a89
test eax, eax
je 0x4178b1
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x223c]
call fcn.00416a89
test eax, eax
je 0x4178b1
xor eax, eax
lea ecx, [ebp - 0x223c]
push eax
push eax
push 0x2001f
push eax
push eax
push edi
push esi
call fcn.0041436f
test eax, eax
jne 0x4179cd
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push 0x3d
pop eax
cmp word [edi], ax
jne 0x417abd
push edi
push 0
lea eax, [ebp - 0x223c]
mov ecx, ebx
push eax
call fcn.004137c8
mov esi, eax
jmp 0x4176d4
cmp dword [ebp + 0x14], 0
jne 0x417906
push 0x20019
push edi
push dword [ebp - 0x221c]
lea ecx, [ebp - 0x223c]
call fcn.00416a89
jmp 0x417909
push 2
pop eax
mov ecx, dword [ebp + 0x14]
test eax, eax
push 1
mov dword [ebp - 0x2220], eax
pop eax
push 0xffffffffffffffff
cmovne ecx, eax
lea eax, [ebp - 0x218]
push edi
push 0x104
push eax
mov dword [ebp - 0x2240], ecx
call fcn.0044b572
push eax
call fcn.00408fb0
add esp, 0x14
mov ecx, ebx
push edi
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
push edi
mov ecx, ebx
call fcn.00417eca
mov esi, eax
test esi, esi
js 0x417b19
push 0x7b
pop eax
cmp word [edi], ax
jne 0x4179b0
push edi
call fcn.00443c45
pop ecx
cmp eax, 1
jne 0x4179b0
push dword [ebp - 0x2240]
mov ecx, ebx
push 0
push dword [ebp - 0x223c]
push edi
call fcn.00417575
mov esi, eax
test esi, esi
jns 0x41799e
cmp dword [ebp - 0x2240], 0
je 0x417b19
push edi
mov ecx, ebx
call fcn.004165e2
mov esi, eax
test esi, esi
js 0x417b19
mov eax, dword [ebp - 0x2220]
cmp eax, 2
je 0x4175de
test eax, eax
je 0x4179db
cmp dword [ebp + 0x14], 0
jne 0x4175de
push eax
call fcn.00413e51
pop ecx
mov esi, eax
jmp 0x417b19
cmp dword [ebp + 0x14], 0
je 0x417a2c
push dword [ebp - 0x223c]
mov ecx, ebx
call fcn.00415410
test eax, eax
je 0x417a2c
lea eax, [ebp - 0x218]
mov ecx, ebx
push eax
call fcn.00414165
test eax, eax
je 0x4175de
cmp dword [ebp - 0x2224], 0
je 0x4175de
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x223c]
call fcn.004170f3
jmp 0x4175de
push dword [ebp - 0x223c]
mov ecx, ebx
call fcn.00415410
lea ecx, [ebp - 0x223c]
mov dword [ebp - 0x2220], eax
call fcn.00414295
test eax, eax
jne 0x4179cd
cmp dword [ebp - 0x2224], eax
je 0x4175de
cmp dword [ebp - 0x2220], eax
jne 0x4175de
mov eax, dword [ebp - 0x221c]
lea ecx, [ebp - 0x2258]
and dword [ebp - 0x2254], 0
and dword [ebp - 0x2250], 0
mov dword [ebp - 0x2258], eax
lea eax, [ebp - 0x218]
push eax
call fcn.00414512
xor ecx, ecx
mov dword [ebp - 0x2258], ecx
mov dword [ebp - 0x2254], ecx
mov dword [ebp - 0x2250], ecx
test eax, eax
jne 0x417b5a
lea ecx, [ebp - 0x2258]
call fcn.00414295
cmp dword [ebp + 0x10], 0
je 0x4175de
push 0x7b
pop eax
cmp word [edi], ax
jne 0x4175de
push edi
call fcn.00443c45
pop ecx
cmp eax, 1
jne 0x4175de
push 0
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp - 0x223c]
push edi
call fcn.00417575
mov esi, eax
test esi, esi
js 0x417b19
jmp 0x4175cc
lea ecx, [ebp - 0x2230]
jmp 0x417b53
lea ecx, [ebp - 0x2230]
call fcn.00414295
mov esi, 0x80020009
lea ecx, [ebp - 0x223c]
call fcn.00414295
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.0043cfdf
mov esp, ebp
pop ebp
ret 0x10
push eax
call fcn.00413e51
pop ecx
lea ecx, [ebp - 0x2264]
mov esi, eax
call fcn.00414295
jmp 0x417b19
push eax
call fcn.00413e51
pop ecx
lea ecx, [ebp - 0x2258]
jmp 0x417b51