Function at 0x4162cc
Capabilities:
Create process on windows

Disassembly:
push 0x98
mov eax, 0x59cc0b
call fcn.005693c7
mov eax, dword [ebp + 8]
xor ebx, ebx
push 0x44
mov dword [ebp - 0x44], eax
mov eax, dword [ebp + 0xc]
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], ebx
call fcn.0056f390
push 0x10
lea edx, [eax + 0x106a0015]
add byte [edx + 0x10], ch
lea eax, [ebp - 0x60]
mov dword [ebp - 0xa4], esi
push ebx
push eax
call fcn.0056f390
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.0042add8
test al, al
je 0x416353
push edx
inc edi
xchg ecx, eax
jns 0x4162ff
fdivrp st(4)
push ds
inc ebp
mov al, byte gs:[0xd14e698]
pop eax
invalid
call fcn.0042aa9c
test al, al
je 0x416377
xchg ebp, eax
aas
mov ebx, 0x6e8919a7
inc ebx
enter 0xc34, 0xffffffffffffffda
jne 0x416302
stosd dword es:[edi], eax
pushal
lcall 0x2831, 0xc33c7274
aam 0x32
mov al, byte [0x4720e89d]
add dword [eax], eax
call fcn.0042aa9c
test al, al
je 0x41639b
xor al, 0x8c
jns 0x4163f5
invalid
mov ebx, dword [ebp - 0x4c]
xor esi, esi
test ebx, ebx
je 0x4163be
cmp word [ebx], si
jne 0x4163ad
mov eax, esi
jmp 0x4163b4
push ebx
call fcn.00578706
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x40]
call fcn.00403772
or edi, 0xffffffff
cmp dword [ebp - 0x30], 0
jne 0x4163e6
mov ebx, dword [ebp - 0x44]
cmp word [ebx], si
jne 0x4163d3
mov eax, esi
jmp 0x4163da
push ebx
call fcn.00578706
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x28]
call fcn.00403772
jmp 0x41643c
mov esi, 0x5a3918
push esi
call fcn.00578706
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00403772
mov ebx, dword [ebp - 0x44]
dec ebp
fsubr st(0)
jbe 0x4163cd
invalid
xor eax, eax
cmp word [ebx], ax
je 0x41640d
push ebx
call fcn.00578706
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x28]
call fcn.00408c34
mov esi, 0x5a391c
push esi
call fcn.00578706
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00408c34
push edi
push 0
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x28]
call fcn.00408b95
call fcn.0042a9cd
test al, al
je 0x416465
push ebp
xchg ebp, eax
mov esi, 0xb682769c
scasd eax, dword es:[edi]
and dl, byte [edi + 0x6d1bfde2]
pop eax
dec eax
mov ss, word [ebp + 0x68d5da07]
loope 0x4164b1
rcl bh, 0x45
adc byte [edx], 0x64
cld
mov ebp, 0x149f8e8
add byte [eax + eax*8 + 0xbbb1f74], al
sbb dword [esi + 0x2f], edx
call fcn.0042ae62
test al, al
je 0x41648d
mov ebx, 0x2f56190b
rol dword [ebp + 0x48], 1
mov cl, 0x73
out 0xe7, al
movsd dword es:[edi], dword [esi]
aas
jno 0x4163ff
cmp bh, cl
inc eax
sub eax, 0x52098f4f
pop edi
xchg ebx, eax
mov byte [ebx + eax*4 - 0x31], 0xff
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push 0x67
call fcn.00413331
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
pop ecx
cmovae eax, dword [ebp - 0x28]
xor ebx, ebx
pop ecx
lea ecx, [ebp - 0x60]
push ecx
lea ecx, [ebp - 0xa4]
push ecx
push ebx
push ebx
push ebx
push 1
push ebx
push ebx
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x4164d4
mov al, byte [0x5c8d8d51]
invalid
mov esi, ebx
jmp 0x416555
cmp byte [ebp + 0x10], bl
je 0x4164ea
cmp dword [ebp + 0x14], ebx
cmovg edi, dword [ebp + 0x14]
push edi
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, dword [ebp - 0x50]
test esi, esi
je 0x416507
lea eax, [ebp - 0x48]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x416507
mov eax, dword [ebp - 0x48]
mov dword [esi], eax
inc ebp
mov eax, 0xd5e80689
inc ebp
add dword [eax], eax
call fcn.0042aae1
test al, al
je 0x416521
invalid
call fcn.0042aa57
test al, al
je 0x416540
pop edx
outsd dx, dword [esi]
xchg ebp, eax
pop ebp
cli
test byte [esi + 0x4d], al
jae 0x416503
xor ebp, esi
test cl, cl
adc byte [0x3bc505a0], dl
aad 0xce
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
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x40]
call fcn.00403628
push ebx
push 1
lea ecx, [ebp - 0x28]
call fcn.00403628
mov eax, esi
call fcn.00569382
ret