Function at 0x1047015
Capabilities:
Create process on windows

Disassembly:
push 0x78
mov eax, 0x106070f
call fcn.0104f320
xor esi, esi
mov edi, 0x1068adc
mov dword [ebp - 4], esi
push edi
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x2c], esi
mov byte [ebp - 4], 1
call fcn.010309e3
push edi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.010309e3
push 0x10129c8
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 3
call fcn.01031665
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x28], esi
push 0x44
pop edi
push edi
lea eax, [ebp - 0x84]
push esi
push eax
mov byte [ebp - 4], 6
call sub.msvcrt.dll_memset
mov dword [ebp - 0x84], edi
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x58], 0x100
call fcn.01046775
cmp eax, esi
mov dword [ebp - 0x14], eax
jge 0x10470ea
push 0x1002fb0
push 0x10129b8
push eax
call fcn.0104a504
add esp, 0xc
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.010303ce
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.010303ce
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.010303ce
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.010303ce
mov eax, dword [ebp - 0x14]
call fcn.0104f3d4
ret 8
push dword [ebp - 0x20]
lea eax, [ebp - 0x24]
push 0x1012984
push eax
call fcn.0103152e
add esp, 0xc
push dword [ebp + 8]
lea eax, [ebp - 0x18]
cmp dword [ebp + 0xc], esi
je 0x1047110
push 0x1012970
jmp 0x1047115
push 0x101295c
push eax
call fcn.01031549
mov ebx, dword [ebp - 0x24]
add esp, 0xc
push dword [ebp - 0x18]
push ebx
push 0x1002678
push 0x1012924
push 0x4000000
call fcn.0104a7da
add esp, 0x14
lea ecx, [ebp - 0x18]
call fcn.0103080d
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x84]
push ecx
push esi
push esi
push 0x8000000
push esi
push esi
push esi
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
cmp eax, esi
jne 0x10471b1
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, esi
jle 0x104717b
and eax, 0xffff
or eax, 0x80070000
cmp eax, esi
mov dword [ebp - 0x14], eax
jl 0x1047189
mov dword [ebp - 0x14], 0x80004005
push 0x10128f0
push 0x10128e0
call edi
push eax
call fcn.0104a5f6
mov ecx, dword [ebp - 0x18]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.010303ce
lea ecx, [ebx - 0x10]
jmp 0x10470c4
push 0xffffffffffffffff
lea ecx, [ebp - 0x18]
call fcn.010309b9
mov eax, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push 0xffffffffffffffff
push eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], ebx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x40]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
cmp eax, esi
jne 0x104723c
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, esi
jle 0x10471f7
and eax, 0xffff
or eax, 0x80070000
cmp eax, esi
mov dword [ebp - 0x14], eax
jl 0x1047205
mov dword [ebp - 0x14], 0x80004005
push 0x1012888
push 0x1012874
call edi
push eax
call fcn.0104a5f6
add esp, 0xc
cmp ebx, esi
je 0x1047226
lea ecx, [ebp - 0x28]
call fcn.010303b2
cmp dword [ebp - 0x1c], esi
je 0x10470b3
lea ecx, [ebp - 0x1c]
call fcn.010303b2
jmp 0x10470b3
cmp dword [ebp - 0x2c], esi
je 0x104721a
push dword [ebp - 0x2c]
mov eax, 0x80004005
push 0x1012828
push 0x1012818
push eax
mov dword [ebp - 0x14], eax
call fcn.0104a504
add esp, 0x10
jmp 0x104721a