Function at 0x152230
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
push ebx
push esi
mov dword [ebp - 0x10], ecx
push edi
lea ecx, [ebp - 0x30]
call fcn.000fd7f7
xor ecx, ecx
push 0x3c
push ecx
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 4], ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], 1
call fcn.00110d50
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
add esp, 0xc
cmp ebx, 2
jb 0x1522a0
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.000f936c
mov eax, dword [esi + 8]
xor ecx, ecx
mov eax, dword [eax]
cmp word [eax], cx
je 0x1522a0
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.000f936c
mov eax, dword [esi + 8]
mov ecx, dword [eax]
call fcn.0010c6f4
mov dword [ebp - 4], eax
cmp ebx, 3
jb 0x1522bf
mov ecx, dword [edi + 4]
mov esi, dword [ecx + 8]
mov ecx, esi
call fcn.000f936c
mov eax, dword [esi + 8]
mov ecx, dword [eax]
call fcn.0010c6f4
mov dword [ebp - 8], eax
cmp ebx, 4
jb 0x152302
mov ecx, dword [edi + 4]
mov esi, dword [ecx + 0xc]
mov ecx, esi
call fcn.000f936c
mov eax, dword [esi + 8]
xor esi, esi
mov eax, dword [eax]
cmp word [eax], si
je 0x152304
mov eax, dword [edi + 4]
push 0x29
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.000f1bec
test al, al
jne 0x152302
mov ecx, esi
call fcn.000f936c
push dword [esi + 8]
lea ecx, [ebp - 0x30]
call fcn.000f6eed
xor esi, esi
cmp ebx, 5
jb 0x15231a
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x10]
call fcn.000fd286
movzx eax, ax
mov dword [ebp - 0xc], eax
push 0x3c
pop ebx
push ebx
lea eax, [ebp - 0x6c]
push esi
push eax
call fcn.00110d50
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], 0x40
mov dword [ebp - 0x64], esi
mov esi, dword [eax]
add esp, 0xc
mov ecx, esi
call fcn.000f936c
mov eax, dword [esi + 8]
mov esi, dword [ebp - 4]
mov eax, dword [eax]
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x54], ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov edi, eax
test esi, esi
je 0x15237b
push esi
call fcn.0010f55e
pop ecx
test ebx, ebx
je 0x152386
push ebx
call fcn.0010f55e
pop ecx
test edi, edi
jne 0x1523b2
mov edx, dword [ebp - 0x10]
xor ebx, ebx
mov eax, dword [edx]
push ebx
mov ecx, dword [eax + 4]
inc edi
push edi
add ecx, edx
call fcn.0013cf4c
mov esi, dword [ebp + 0x14]
mov ecx, esi
call fcn.00102c20
mov dword [esi + 0xc], edi
mov dword [esi], ebx
jmp 0x152444
cmp byte [ebp + 8], 0
je 0x1523c6
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov dword [edx + 0x470], eax
jmp 0x152444
mov esi, dword [ebp + 0x14]
mov ecx, esi
call fcn.00102c20
or dword [esi], 0xffffffff
xor edi, edi
inc edi
cmp dword [ebp - 0x34], 0
mov dword [esi + 0xc], edi
je 0x152444
xor eax, eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
call fcn.001521f3
test al, al
je 0x15242c
push dword [ebp - 0x34]
lea ecx, [ebp - 0x20]
call fcn.0014f858
call eax
mov dword [ebp + 8], eax
fild dword [ebp + 8]
test eax, eax
jns 0x152410
fadd qword [0x1a6a00]
fstp qword [ebp - 0x14]
mov ecx, esi
fld qword [ebp - 0x14]
fstp qword [ebp - 0x14]
call fcn.00102c20
fld qword [ebp - 0x14]
mov dword [esi + 0xc], 3
fstp qword [esi]
push dword [ebp - 0x34]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x20], 0
je 0x152444
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x30]
call fcn.000fcb37
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret 0x10