Function at 0x42d158
Capabilities:
Create process on windows

Disassembly:
push 0x98
mov eax, 0x59d5d6
call fcn.00594fd1
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov edi, dword [ebp + 8]
push 0x44
pop esi
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x18]
push esi
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0xa4]
push ebx
push eax
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], ebx
call fcn.0043ffd0
push 0x10
lea eax, [ebp - 0x60]
mov dword [ebp - 0xa4], esi
push ebx
push eax
call fcn.0043ffd0
add esp, 0x18
mov dword [ebp - 0x18], ebx
xor eax, eax
mov word [ebp - 0x28], ax
push 7
pop ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], ebx
mov word [ebp - 0x40], ax
mov byte [ebp - 4], 1
call fcn.004273d1
test al, al
je 0x42d1e5
push ebx
pop ecx
push ecx
pop ebx
push ecx
pop esp
pop ecx
pop esi
push edx
push edi
pop edi
pop edx
push esi
push esi
push ecx
push ebp
push eax
push edx
pop ecx
pop esp
push ecx
mov edi, dword [ebp - 0x48]
call fcn.0042763e
test al, al
je 0x42d205
pop ebx
pop ebp
push ebp
push esp
push edi
push eax
push ecx
pop ebx
push eax
pop ecx
push ecx
pop esi
pop esi
push edx
push ecx
push ecx
pop ebp
push edx
push esi
pop eax
pop eax
push esi
push ebp
call fcn.00427683
test al, al
je 0x42d222
push ecx
push ebx
pop ecx
push ebp
push edx
push ebx
push esp
pop eax
push edx
pop ecx
push esi
push ebx
pop ecx
push ebp
push ecx
pop ebp
pop edx
push ebx
push esi
push eax
mov ebx, dword [ebp - 0x4c]
xor esi, esi
test ebx, ebx
je 0x42d245
cmp word [ebx], si
jne 0x42d234
mov eax, esi
jmp 0x42d23b
push ebx
call fcn.0044f873
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x40]
call fcn.00401820
or ebx, 0xffffffff
cmp dword [ebp - 0x30], 0
jne 0x42d26a
cmp word [edi], si
jne 0x42d257
mov eax, esi
jmp 0x42d25e
push edi
call fcn.0044f873
pop ecx
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.00401820
jmp 0x42d2bd
mov esi, 0x5a0df0
push esi
call fcn.0044f873
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00401820
xor eax, eax
cmp word [edi], ax
je 0x42d28e
push edi
call fcn.0044f873
pop ecx
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.004048e0
mov esi, 0x5a0df4
push esi
call fcn.0044f873
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.004048e0
push ebx
push 0
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x28]
call fcn.00404a10
call fcn.004276c8
test al, al
je 0x42d2de
push esp
pop edx
pop esi
pop ecx
push ecx
push esp
pop esi
pop eax
pop ebp
push ecx
push edx
push eax
push eax
push eax
push esi
pop ecx
pop edi
pop ebx
pop ecx
pop esp
push ecx
or ebx, 0xffffffff
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push 0x67
call fcn.00427fcd
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
pop ecx
cmovae eax, dword [ebp - 0x28]
xor edi, edi
pop ecx
lea ecx, [ebp - 0x60]
push ecx
lea ecx, [ebp - 0xa4]
push ecx
push edi
push edi
push edi
push 1
push edi
push edi
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x42d322
mov esi, edi
jmp 0x42d392
cmp byte [ebp + 0x10], 0
je 0x42d339
cmp dword [ebp + 0x14], edi
cmovg ebx, dword [ebp + 0x14]
push ebx
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, dword [ebp - 0x50]
test esi, esi
je 0x42d356
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x42d356
mov eax, dword [ebp - 0x44]
mov dword [esi], eax
call fcn.0042797a
test al, al
je 0x42d37f
pop edi
pop esi
push ecx
pop edx
pop esp
push ebx
pop esp
push ebp
pop ebp
pop ecx
push edi
push ebp
push ebx
push ebp
pop ebp
pop edi
pop esp
push edx
pop ebx
push edx
push eax
pop edx
pop ebp
push ecx
pop eax
push ebx
pop ebx
push ebp
push ebp
pop ecx
xor edi, edi
push dword [ebp - 0x60]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x5c]
call esi
xor esi, esi
inc esi
push edi
push 1
lea ecx, [ebp - 0x40]
call fcn.00401760
push edi
push 1
lea ecx, [ebp - 0x28]
call fcn.00401760
mov eax, esi
call fcn.00594f8c
ret