Function at 0x42b051
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4ff210
mov eax, dword fs:[0]
push eax
sub esp, 0x180
mov eax, dword [0x5475b0]
xor eax, esp
mov dword [esp + 0x178], eax
push ebx
push esi
push edi
mov eax, dword [0x5475b0]
xor eax, esp
push eax
lea eax, [esp + 0x190]
mov dword fs:[0], eax
mov edi, ecx
call fcn.0040cfcf
mov esi, dword [ebp + 0xc]
mov ebx, eax
cmp esi, 1
je 0x42b37e
cmp esi, 2
je 0x42b372
cmp esi, 3
je 0x42b2ba
jle 0x42b396
cmp esi, 6
jle 0x42b0db
cmp esi, 7
jne 0x42b396
push dword [ebp + 8]
mov ecx, edi
call fcn.0042b4f5
jmp 0x42b396
lea ecx, [esp + 0x1c]
call fcn.0040cf83
lea eax, [esp + 0x1c]
mov dword [esp + 0x198], 2
push eax
push dword [ebp + 8]
mov ecx, ebx
call fcn.0040e1fb
test eax, eax
je 0x42b2ac
cmp esi, 4
jne 0x42b145
mov eax, dword [0x548750]
mov dword [esp + 0x14], eax
mov byte [esp + 0x198], 3
lea eax, [esp + 0x14]
push dword [esp + 0x2c]
push str.url.dll_FileProtocolHandler__s
push eax
call fcn.0040306c
add esp, 0xc
xor esi, esi
push 1
push esi
push dword [esp + 0x1c]
push str.rundll32.exe
jmp 0x42b297
cmp esi, 5
jne 0x42b200
mov ecx, dword [esp + 0x30]
call fcn.00404c46
test eax, eax
je 0x42b176
push 1
xor esi, esi
push esi
push esi
push dword [esp + 0x3c]
push str.open
push esi
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
jmp 0x42b2ac
push ecx
lea ecx, [esp + 0x90]
call fcn.0041d8c2
mov byte [esp + 0x198], 4
lea ecx, [esp + 0x14]
and dword [esp + 0x178], 0
call fcn.0041de01
push eax
lea ecx, [esp + 0x180]
mov byte [esp + 0x19c], 5
call fcn.00402aef
lea ecx, [esp + 0x14]
mov byte [esp + 0x198], 4
call fcn.00403080
push 0x52332c
lea ecx, [esp + 0x184]
call fcn.004028f2
push ecx
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
lea ecx, [esp + 0x94]
call fcn.00424c7f
lea ecx, [esp + 0x8c]
mov byte [esp + 0x198], 2
call fcn.0041d94d
jmp 0x42b2ac
cmp esi, 6
jne 0x42b2ac
mov eax, dword [0x548750]
mov dword [esp + 0x14], eax
mov byte [esp + 0x198], 6
mov esi, dword [esp + 0x30]
mov ecx, esi
call fcn.00404c46
test eax, eax
je 0x42b23e
push esi
lea eax, [esp + 0x18]
push str._select___s
push eax
call fcn.0040306c
add esp, 0xc
jmp 0x42b289
push 0x5c
push esi
call fcn.004dacbe
pop ecx
pop ecx
test eax, eax
je 0x42b289
sub eax, esi
sar eax, 1
cmp eax, 0xffffffff
je 0x42b289
push eax
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
call fcn.0040e5c5
mov byte [esp + 0x198], 7
push dword [eax]
lea eax, [esp + 0x18]
push str._root___s
push eax
call fcn.0040306c
add esp, 0xc
lea ecx, [esp + 0x18]
call fcn.00403080
push 5
xor esi, esi
push esi
push dword [esp + 0x1c]
push str.Explorer.exe
push str.open
push esi
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [esp + 0x14]
call fcn.00403080
lea ecx, [esp + 0x1c]
call fcn.0040d30a
jmp 0x42b396
lea ecx, [esp + 0x8c]
call fcn.004420b8
xor esi, esi
lea ecx, [esp + 0xdc]
mov dword [esp + 0x198], esi
push 0x513fdc
mov dword [esp + 0x90], vtable.CSkinDeleteTaskDlg.2.0
mov dword [esp + 0xb8], vtable.CSkinDeleteTaskDlg.1.0
mov dword [esp + method.CSkinDeleteTaskDlg.virtual_0], vtable.CSkinDeleteTaskDlg.0
mov dword [esp + 0x128], 0x81
call fcn.004028f2
push ecx
mov dword [esp + 0x19c], 1
lea ecx, [esp + 0x90]
push dword [edi + 4]
call fcn.00424c7f
cmp eax, 1
je 0x42b331
cmp eax, 2
jne 0x42b35c
cmp eax, 2
mov ecx, ebx
sete al
movzx eax, al
push eax
push dword [ebp + 8]
call fcn.0040e118
push ecx
push esi
mov ecx, edi
call fcn.0042affc
mov ecx, edi
call fcn.0042a112
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x2c]
or dword [esp + 0x198], 0xffffffff
lea ecx, [esp + 0x8c]
call fcn.0041ca59
jmp 0x42b396
push dword [ebp + 8]
mov ecx, ebx
call fcn.0040d8b9
jmp 0x42b388
push dword [ebp + 8]
mov ecx, ebx
call fcn.0040da84
mov ecx, edi
call fcn.0042a112
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x2c]
mov ecx, dword [esp + 0x190]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x178]
xor ecx, esp
call fcn.004d9731
mov esp, ebp
pop ebp
ret 8