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

Disassembly:
push 0x24
mov eax, 0x596f6a
call fcn.00410ff3
mov ebx, dword [ebp + 8]
and dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], ebx
call fcn.0041555d
test al, al
je 0x408d05
push ebx
push edx
pop edi
pop esp
push esp
pop eax
push edx
pop edi
pop ebp
push esi
push edi
push edi
push edi
push ebp
pop esi
pop ebp
pop esi
call fcn.00415a37
test al, al
je 0x408d2e
push edx
pop esi
push esp
pop ebx
pop eax
push edi
push ebp
push eax
pop ebx
pop esp
push edi
push esp
pop edx
pop edx
push edi
push edx
push esi
pop ecx
pop eax
pop ebx
pop eax
push esp
pop edi
push ecx
pop esp
pop ebp
pop esp
pop ebp
push esi
mov ebx, dword [ebp - 0x30]
call fcn.00415ac1
test al, al
je 0x408d48
pop edi
pop esi
push edx
push esp
pop eax
push esp
pop edx
push ebp
push edx
push edx
push edx
push edi
pop ebp
push esp
pop eax
pop esi
pop esp
and dword [ebp - 0x18], 0
xor eax, eax
mov esi, 0x59c388
mov dword [ebp - 0x14], 7
push esi
mov word [ebp - 0x28], ax
call fcn.00434fd1
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00401f62
and dword [ebp - 4], 0
mov esi, str.7E1D3ACC_2F3F_4606_BAD3_7577317D558A
push esi
call fcn.00434fd1
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00401cf3
mov esi, 0x59c3dc
push esi
call fcn.00434fd1
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00401cf3
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x2c]
push ecx
push 0xf013f
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push 0
push eax
push ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
call fcn.004155e7
test al, al
je 0x408de3
push edi
pop ecx
push esi
push ebx
push edi
push ebp
push ebp
push esp
pop eax
pop edi
pop ecx
pop ebp
pop ecx
pop esp
push esi
pop eax
pop ebp
push ebp
push ebp
push eax
pop edi
push edx
push eax
push eax
pop ebp
push ebx
pop edx
push ebp
pop esi
cmp dword [ebp - 0x2c], 0
mov ebx, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
je 0x408e44
mov esi, dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
push 0x59b670
push dword [ebp - 0x2c]
call esi
push 0x59c3e0
push dword [ebp - 0x2c]
call esi
push str.InprocServer32
push dword [ebp - 0x2c]
call ebx
push str.ProgID
push dword [ebp - 0x2c]
call ebx
push str.Programmable
push dword [ebp - 0x2c]
call ebx
push str.TypeLib
push dword [ebp - 0x2c]
call ebx
push str.VersionIndependentProgID
push dword [ebp - 0x2c]
call ebx
push dword [ebp - 0x2c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.004159f2
test al, al
je 0x408e67
push edi
pop esp
push esp
pop edi
push esi
pop edx
push ecx
pop edx
push esi
pop edx
push esi
push eax
push esp
pop ebx
pop ebp
push ebx
pop ebx
push edx
push esp
pop ebp
push ebp
push edi
push ebp
pop esi
push ebx
pop ebx
call fcn.004158de
test al, al
je 0x408e81
pop ebp
push esi
pop eax
pop esp
push ecx
pop ebp
push ebx
pop ebp
pop ecx
pop edi
push edi
pop ecx
push ecx
pop eax
pop ebx
push esp
pop edx
call fcn.004155e7
test al, al
je 0x408e9c
pop ecx
push esp
pop ebp
push esi
pop esp
pop eax
pop edi
push ebp
push esp
pop edi
push ecx
pop ecx
push edx
push ecx
pop ecx
push eax
push esp
push ecx
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push dword [ebp - 0x30]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.00401bfd
call fcn.00410fae
ret 4