Function at 0x428db1
Capabilities:
Create thread
Delete registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
movzx eax, byte [ebp + 0x30]
test eax, eax
je 0x428fb6
lea eax, [ebp + 0x24]
mov dword [ebp - 0x18], eax
lea eax, [ebp + 0x28]
mov dword [ebp - 0x38], eax
lea eax, [ebp + 0x20]
mov dword [ebp - 8], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x88], eax
lea eax, [ebp + 0xc]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x48], eax
lea eax, [ebp + 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x88]
movzx eax, byte [eax]
test eax, eax
je 0x428edd
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x70]
movzx eax, byte [eax]
test eax, eax
je 0x428e99
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [eax]
test eax, eax
je 0x428e7f
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], eax
and dword [ebp - 4], 0
jmp 0x428e61
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x581e
jge 0x428e7d
lea eax, [ebp - 4]
push eax
push dword [ebp - 0x60]
push 0
call fcn.0042a5c6
add esp, 0xc
jmp 0x428e5a
jmp 0x428e97
push 0
push 0x2d5
push 0
push 0
push 0x1248
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
jmp 0x428ed8
push 1
push 1
push 0x750
push 0
push 1
push 0x5be7
push 0x7e15
push 0x6238
push 0x5614
push 0x3ba6
push 0x4067
push 0x49ea
push 0x5bd2
push 0
call fcn.004284c2
add esp, 0x38
jmp 0x428fb4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xc]
movzx eax, byte [eax]
test eax, eax
je 0x428f6d
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
movzx eax, byte [eax]
test eax, eax
je 0x428f57
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x54]
cmp dword [eax], 0x54b2
jge 0x428f55
mov eax, dword [ebp - 0x5c]
push dword [eax]
call fcn.0048e81a
pop ecx
jmp 0x428f6b
push 0
push 0xa97c11
push str._::SetPixel___::GetDC___::GetDesktopWindow______3117__5180__0___error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x428fb4
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
movzx eax, byte [eax]
test eax, eax
je 0x428f8f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x428fb4
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x8c], eax
mov edx, 0xf0308ec4
mov ecx, dword [ebp - 0x8c]
call fcn.00406801
jmp 0x428fca
push 0
push 0x4f12
push 0x2a55
call fcn.0042808b
add esp, 0xc
mov esp, ebp
pop ebp
ret