Function at 0x407ca0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd4
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
push str.run_child:_about_to_run__ls_with__ls_n
call fcn.004035e4
add esp, 0xc
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateJobObjectA]
mov dword [ebp - 0x7c], eax
lea edx, [ebp - 0x80]
push edx
push 0x70
lea eax, [ebp - 0x74]
push eax
push 9
mov ecx, dword [ebp - 0x7c]
push ecx
call dword [sym.imp.KERNEL32.dll_QueryInformationJobObject]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
je 0x407d00
cmp dword [ebp - 0x80], 0x70
jne 0x407d00
cmp dword [ebp - 0x7c], 0
jne 0x407d1e
push str.Job_information_querying_failed
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0040220c
add esp, 8
mov eax, 0x65
jmp 0x407f19
mov edx, dword [ebp - 0x64]
or edx, 0x3000
mov dword [ebp - 0x64], edx
push 0x70
lea eax, [ebp - 0x74]
push eax
push 9
mov ecx, dword [ebp - 0x7c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetInformationJobObject]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407d63
push str.Job_information_setting_failed
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0040220c
add esp, 8
mov eax, 0x65
jmp 0x407f19
push 0x44
push 0
lea edx, [ebp - 0xd4]
push edx
call fcn.004022de
add esp, 0xc
lea eax, [ebp - 0xd4]
push eax
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
push str.stdin
lea ecx, [ebp - 0x9c]
push ecx
push 0xfffffffffffffff6
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call fcn.004083d0
add esp, 0xc
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407db3
mov eax, 0x64
jmp 0x407f19
push str.stdout
lea edx, [ebp - 0x98]
push edx
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call fcn.004083d0
add esp, 0xc
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407de3
mov eax, 0x64
jmp 0x407f19
push str.stderr
lea eax, [ebp - 0x94]
push eax
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call fcn.004083d0
add esp, 0xc
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407e13
mov eax, 0x64
jmp 0x407f19
push 1
push 0x407670
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407e47
push str.control_handler_setting_failed
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0040220c
add esp, 8
mov eax, 0x65
jmp 0x407f19
mov dword [ebp - 0xa8], pe_nt_image_headers32
lea ecx, [ebp - 0x90]
push ecx
lea edx, [ebp - 0xd4]
push edx
push 0
push 0
push 0
push 1
push 0
push 0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407ea1
mov edx, dword [ebp + 0xc]
push edx
push str.Unable_to_create_process_using__ls
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0040220c
add esp, 0xc
mov eax, 0x65
jmp 0x407f19
mov eax, dword [ebp - 0x90]
push eax
mov ecx, dword [ebp - 0x7c]
push ecx
call dword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
mov edx, dword [ebp - 0x8c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x90]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
lea ecx, [ebp - 0x80]
push ecx
mov edx, dword [ebp - 0x90]
push edx
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x407f05
push str.Failed_to_get_exit_code_of_process
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.0040220c
add esp, 8
mov eax, 0x65
jmp 0x407f19
mov eax, dword [ebp - 0x80]
push eax
push str.child_process_exit_code:__d
call fcn.004035e4
add esp, 8
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00402275
mov esp, ebp
pop ebp
ret