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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x230
mov eax, dword [0x45a3f2e4]
push ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp + 0x14]
push edi
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x22c], ebx
mov dword [ebp - 0x218], ebx
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x228], 1
mov dword [ebp - 0x230], eax
call fcn.45a15035
jmp 0x45a16a39
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push 0x45a11454
push edi
call esi
mov ebx, eax
neg ebx
push 0x45a11478
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x45a1686a
test ebx, ebx
je 0x45a16912
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x45a16912
push 0x5c
push edi
mov dword [ebp - 0x210], esi
call fcn.45a14f10
test eax, eax
jne 0x45a16d52
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15147
test eax, eax
je 0x45a168cf
mov eax, dword [ebp - 0x21c]
push edi
lea ecx, [ebp - 0x210]
mov dword [ebp - 0x210], eax
call fcn.45a1591c
mov dword [ebp - 0x210], esi
cmp ebx, esi
je 0x45a16907
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d9f
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15244
lea ecx, [ebp - 0x210]
mov esi, eax
call fcn.45a14a85
jmp 0x45a16cfb
lea ecx, [ebp - 0x210]
call fcn.45a14a85
push 0x45a11464
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x45a1693e
mov ecx, dword [ebp - 0x214]
and dword [ebp - 0x228], eax
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push 0x45a11490
push edi
xor ebx, ebx
call esi
test eax, eax
jne 0x45a16a42
mov ecx, dword [ebp - 0x214]
lea eax, [ebp - 0x20c]
push eax
call fcn.45a15035
mov esi, eax
cmp esi, ebx
jl 0x45a16d62
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
cmp esi, ebx
jl 0x45a16d62
cmp word [edi], 0x3d
jne 0x45a16d5d
cmp dword [ebp + 0x10], ebx
je 0x45a169d8
mov eax, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x214]
push ebx
mov dword [ebp - 0x210], eax
push edi
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.45a1653c
lea ecx, [ebp - 0x210]
mov esi, eax
mov dword [ebp - 0x210], ebx
call fcn.45a14a85
cmp esi, ebx
jmp 0x45a16cfd
cmp dword [ebp + 0x14], ebx
jne 0x45a16a2d
push 0x20006
push ebx
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x210]
mov dword [ebp - 0x210], ebx
call fcn.45a14af8
cmp eax, ebx
jne 0x45a16d91
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x210]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
cmp eax, ebx
je 0x45a16a22
cmp eax, 2
jne 0x45a16d8f
lea ecx, [ebp - 0x210]
call fcn.45a14a85
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15244
mov esi, eax
cmp esi, ebx
jmp 0x45a16d44
push 0x5c
push edi
call fcn.45a14f10
test eax, eax
jne 0x45a16d5d
cmp dword [ebp + 0x10], ebx
je 0x45a16b1d
push 0xf003f
push edi
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x218]
call fcn.45a14af8
test eax, eax
je 0x45a16ab4
push 0x20019
push edi
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x218]
call fcn.45a14af8
test eax, eax
je 0x45a16ab4
push ebx
push ebx
push 0x2001f
push ebx
push ebx
push edi
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x218]
call fcn.45a14aa3
test eax, eax
jne 0x45a16d5d
mov ax, word [edi]
cmp ax, 0x4c
mov byte [ebp - 0x224], 0
je 0x45a16aca
cmp ax, 0x6c
jne 0x45a16add
push 0x45a11d74
push edi
call esi
test eax, eax
jne 0x45a16add
mov byte [ebp - 0x224], 1
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
cmp word [edi], 0x3d
jne 0x45a16cff
push dword [ebp - 0x224]
mov ecx, dword [ebp - 0x214]
push edi
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.45a1653c
jmp 0x45a16cf9
cmp dword [ebp + 0x14], ebx
jne 0x45a16b44
push 0x20019
push edi
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x218]
call fcn.45a14af8
test eax, eax
je 0x45a16b44
mov dword [ebp + 0x14], 1
cmp dword [ebp - 0x220], ebx
jne 0x45a16b88
mov esi, 0x208
push esi
call fcn.45a146de
test al, al
je 0x45a16b6a
mov eax, esi
call fcn.45a3abe0
mov dword [ebp - 0x220], esp
jmp 0x45a16b7c
push esi
lea ecx, [ebp - 0x22c]
call fcn.45a16060
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], ebx
je 0x45a16dac
push 0x104
push edi
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
cmp dword [ebp + 0x14], ebx
jne 0x45a16bcd
push dword [ebp - 0x218]
mov ecx, dword [ebp - 0x214]
call fcn.45a1517d
test eax, eax
jne 0x45a16bcd
push dword [ebp - 0x218]
mov ecx, dword [ebp - 0x214]
call fcn.45a151b9
test eax, eax
je 0x45a16c9c
mov ebx, dword [ebp - 0x214]
push edi
mov ecx, ebx
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
push edi
mov ecx, ebx
call fcn.45a15244
mov esi, eax
test esi, esi
jl 0x45a16d62
cmp word [edi], 0x7b
jne 0x45a16c48
push dword [ebp + 0x14]
mov ecx, ebx
push 0
push dword [ebp - 0x218]
push edi
call fcn.45a167e7
mov esi, eax
test esi, esi
jl 0x45a16d62
cmp dword [ebp + 0x14], 0
je 0x45a16c58
mov eax, dword [ebp - 0x230]
push edi
mov ecx, ebx
mov dword [ebp + 0x14], eax
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
push edi
mov ecx, ebx
call fcn.45a15244
jmp 0x45a16d40
cmp dword [ebp + 0x14], 0
jne 0x45a16d46
mov ebx, dword [ebp - 0x214]
push dword [ebp - 0x218]
mov ecx, ebx
call fcn.45a1517d
test eax, eax
je 0x45a16c92
push dword [ebp - 0x220]
mov ecx, ebx
call fcn.45a15147
test eax, eax
je 0x45a16c8b
push dword [ebp - 0x220]
lea ecx, [ebp - 0x218]
call fcn.45a1591c
mov ecx, ebx
jmp 0x45a16d3a
cmp dword [ebp + 0x14], 0
jne 0x45a16d46
lea ecx, [ebp - 0x218]
call fcn.45a14a85
test eax, eax
jne 0x45a16d5d
cmp dword [ebp - 0x228], eax
je 0x45a16cdb
push dword [ebp - 0x220]
push dword [ebp - 0x21c]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
and dword [ebp - 0x210], 0
lea ecx, [ebp - 0x210]
call fcn.45a14a85
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15244
mov esi, eax
test esi, esi
jl 0x45a16d62
cmp dword [ebp + 0x10], 0
je 0x45a16d46
cmp word [edi], 0x7b
jne 0x45a16d46
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x45a16d46
mov ecx, dword [ebp - 0x214]
push 0
push dword [ebp + 0x10]
push dword [ebp - 0x218]
push edi
call fcn.45a167e7
mov esi, eax
test esi, esi
jl 0x45a16d62
mov ecx, dword [ebp - 0x214]
push edi
call fcn.45a15035
mov esi, eax
test esi, esi
jl 0x45a16d62
cmp word [edi], 0x7d
jne 0x45a16841
jmp 0x45a16d62
lea ecx, [ebp - 0x210]
call fcn.45a14a85
mov esi, 0x80020009
lea ecx, [ebp - 0x218]
call fcn.45a14a85
lea ecx, [ebp - 0x22c]
call fcn.45a15696
mov eax, esi
lea esp, [ebp - 0x23c]
mov ecx, dword [ebp - 4]
call fcn.45a3a970
pop edi
pop esi
pop ebx
leave
ret 0x10
cmp eax, ebx
jle 0x45a16d9d
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
lea ecx, [ebp - 0x210]
call fcn.45a14a85
jmp 0x45a16d62
mov esi, 0x8007000e
jmp 0x45a16d62