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

Disassembly:
push 0x42c
mov eax, 0x300170d8
call fcn.30016115
mov eax, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
and dword [ebp - 0x42c], 0
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x434], eax
mov eax, dword [ebp + 0x14]
and dword [ebp - 4], 0
mov dword [ebp - 0x438], eax
jmp 0x300068a6
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push 0x300014b8
push edi
mov dword [ebp - 0x430], 1
call esi
mov ebx, eax
neg ebx
push 0x300014dc
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x3000641c
test ebx, ebx
je 0x300064cd
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
cmp dword [ebp + 0x10], 0
je 0x300064cd
and dword [ebp - 0x428], 0
push 0x5c
push edi
call fcn.30005716
test eax, eax
jne 0x300068be
mov ecx, dword [ebp - 0x424]
push edi
call fcn.30005890
test eax, eax
je 0x30006482
mov eax, dword [ebp - 0x434]
push edi
lea ecx, [ebp - 0x428]
mov dword [ebp - 0x428], eax
call fcn.30005a7b
and dword [ebp - 0x428], 0
test ebx, ebx
je 0x300064c2
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x300068d0
mov ecx, dword [ebp - 0x424]
push edi
call fcn.300058f4
lea ecx, [ebp - 0x428]
mov esi, eax
call fcn.300053e1
test esi, esi
jl 0x3000691a
jmp 0x3000686b
lea ecx, [ebp - 0x428]
call fcn.300053e1
push 0x300014c8
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x300064f9
mov ecx, dword [ebp - 0x424]
and dword [ebp - 0x430], eax
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
push 0x300014f4
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x3000660a
mov ecx, dword [ebp - 0x424]
lea eax, [ebp - 0x420]
push eax
call fcn.3000578d
mov esi, eax
xor ebx, ebx
cmp esi, ebx
jl 0x3000691a
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
cmp esi, ebx
jl 0x3000691a
cmp word [edi], 0x3d
jne 0x300068c9
cmp dword [ebp + 0x10], ebx
je 0x30006598
mov eax, dword [ebp - 0x434]
mov ecx, dword [ebp - 0x424]
mov dword [ebp - 0x430], eax
push edi
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x430]
push eax
mov byte [ebp - 4], 1
call fcn.3000606e
mov esi, eax
cmp esi, ebx
mov dword [ebp - 0x430], ebx
lea ecx, [ebp - 0x430]
jl 0x30006915
mov byte [ebp - 4], bl
jmp 0x30006866
cmp dword [ebp + 0x14], ebx
jne 0x300065f5
cmp dword [ebp - 0x430], ebx
je 0x300065f5
push 0x20006
push ebx
push dword [ebp - 0x434]
lea ecx, [ebp - 0x428]
mov dword [ebp - 0x428], ebx
call fcn.30005446
cmp eax, ebx
jne 0x300068d8
lea eax, [ebp - 0x420]
push eax
push dword [ebp - 0x428]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
cmp eax, ebx
je 0x300065ea
cmp eax, 2
jne 0x300068d8
lea ecx, [ebp - 0x428]
call fcn.300053e1
mov ecx, dword [ebp - 0x424]
push edi
call fcn.300058f4
mov esi, eax
cmp esi, ebx
jmp 0x300068b0
push 0x5c
push edi
call fcn.30005716
test eax, eax
jne 0x300068c9
cmp dword [ebp + 0x10], eax
je 0x300066b9
mov esi, 0x2001f
push esi
push edi
push dword [ebp - 0x434]
lea ecx, [ebp - 0x42c]
call fcn.30005446
test eax, eax
je 0x3000667d
push 0x20019
push edi
push dword [ebp - 0x434]
lea ecx, [ebp - 0x42c]
call fcn.30005446
test eax, eax
je 0x3000667d
xor ebx, ebx
push ebx
push ebx
push esi
push ebx
push ebx
push edi
push dword [ebp - 0x434]
lea ecx, [ebp - 0x42c]
call fcn.300053f8
mov esi, eax
cmp esi, ebx
jne 0x300068e6
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
cmp word [edi], 0x3d
jne 0x3000686b
mov ecx, dword [ebp - 0x424]
push edi
push 0
lea eax, [ebp - 0x42c]
push eax
call fcn.3000606e
mov esi, eax
jmp 0x300064b5
cmp dword [ebp + 0x14], 0
jne 0x300066da
push 0x20019
push edi
push dword [ebp - 0x434]
lea ecx, [ebp - 0x42c]
call fcn.30005446
mov ebx, eax
jmp 0x300066dd
push 2
pop ebx
test ebx, ebx
je 0x300066e8
mov dword [ebp + 0x14], 1
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0x218]
push 0x104
push eax
call dword [sym.imp.MSVCR80.dll_wcsncpy_s]
add esp, 0x10
push eax
call fcn.3000528c
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
mov ecx, dword [ebp - 0x424]
push edi
call fcn.300058f4
mov esi, eax
test esi, esi
jl 0x3000691a
cmp word [edi], 0x7b
jne 0x30006781
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x30006781
push dword [ebp + 0x14]
mov ecx, dword [ebp - 0x424]
push 0
push dword [ebp - 0x42c]
push edi
call fcn.300063af
mov esi, eax
test esi, esi
jge 0x3000676b
cmp dword [ebp + 0x14], 0
je 0x3000691a
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
cmp ebx, 2
mov eax, dword [ebp - 0x438]
mov dword [ebp + 0x14], eax
je 0x300068b2
test ebx, ebx
je 0x300067ac
test eax, eax
jne 0x300068b2
push ebx
call fcn.3000531b
mov esi, eax
jmp 0x3000691a
test eax, eax
je 0x30006803
push dword [ebp - 0x42c]
mov ecx, dword [ebp - 0x424]
call fcn.300058bf
test eax, eax
je 0x30006803
mov ecx, dword [ebp - 0x424]
lea eax, [ebp - 0x218]
push eax
call fcn.30005890
test eax, eax
je 0x300068b2
cmp dword [ebp - 0x430], 0
je 0x300068b2
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x42c]
call fcn.30005a7b
jmp 0x300068b2
push dword [ebp - 0x42c]
mov ecx, dword [ebp - 0x424]
call fcn.300058bf
lea ecx, [ebp - 0x42c]
mov dword [ebp - 0x428], eax
call fcn.300053e1
mov ebx, eax
test ebx, ebx
jne 0x300068f9
cmp dword [ebp - 0x430], eax
je 0x300068b2
cmp dword [ebp - 0x428], eax
jne 0x300068b2
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x434]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
and dword [ebp - 0x430], ebx
test eax, eax
jne 0x30006907
lea ecx, [ebp - 0x430]
call fcn.300053e1
cmp dword [ebp + 0x10], 0
je 0x300068b2
cmp word [edi], 0x7b
jne 0x300068b2
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x300068b2
mov ecx, dword [ebp - 0x424]
push 0
push dword [ebp + 0x10]
push dword [ebp - 0x42c]
push edi
call fcn.300063af
mov esi, eax
test esi, esi
jl 0x3000691a
mov ecx, dword [ebp - 0x424]
push edi
call fcn.3000578d
mov esi, eax
test esi, esi
jl 0x3000691a
cmp word [edi], 0x7d
jne 0x300063e9
jmp 0x3000691a
lea ecx, [ebp - 0x428]
call fcn.300053e1
mov esi, 0x80020009
jmp 0x3000691a
lea ecx, [ebp - 0x428]
jmp 0x30006915
push eax
call fcn.3000531b
lea ecx, [ebp - 0x428]
jmp 0x30006913
lea ecx, [ebp - 0x42c]
call fcn.300053e1
push esi
call fcn.3000531b
jmp 0x30006927
lea ecx, [ebp - 0x42c]
call fcn.300053e1
push ebx
jmp 0x300068f2
push eax
call fcn.3000531b
lea ecx, [ebp - 0x430]
mov esi, eax
call fcn.300053e1
lea ecx, [ebp - 0x42c]
call fcn.300053e1
mov eax, esi
call fcn.30016198
ret 0x10