Function at 0x47c3d0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push esi
push edi
call fcn.0046d4f0
test eax, eax
je 0x47c456
push 0
push str.CRegOps::StartTheApp_n
push 0x6a0fd0
call fcn.00599ee3
mov eax, dword [str.ENTRY:]
mov ecx, dword [0x5ccf7c]
mov dword [0x6a0ed0], eax
mov eax, 0x6a0fd0
mov dword [0x6a0ed4], ecx
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x47c412
mov edi, 0x6a0ed0
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x47c423
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d500
push 0x6a0ed0
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
call fcn.0046d4f0
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
test eax, eax
je 0x47c48a
push edi
push esi
push str.pszCmdline___s__dwFlags___X_n
push 0x6a0dd0
call fcn.00599ee3
add esp, 0x10
push 0x6a0dd0
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
push 0x44
lea edx, [ebp - 0x54]
push 0
push edx
call fcn.00599fb0
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x54]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
push esi
push 0
mov dword [ebp - 0x54], 0x44
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x47c55e
call fcn.0046d4f0
test eax, eax
je 0x47c554
push 0
push str.CRegOps::StartTheApp__FAILED__:_bRetVal__0_n
push 0x6a0cd0
call fcn.00599ee3
mov eax, dword [0x5ccefc]
mov edx, dword [str.EXIT:]
mov dword [0x6a0bd4], eax
mov eax, 0x6a0cd0
add esp, 0xc
mov dword [0x6a0bd0], edx
mov ecx, eax
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x47c510
mov edi, 0x6a0bd0
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x47c521
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x6a0bd0
rep movsb byte es:[edi], byte [esi]
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d510
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8
test edi, 0x1000000
je 0x47c5fd
call fcn.0046d4f0
test eax, eax
je 0x47c584
push str.Do_wait.._n
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
mov ecx, dword [ebp - 0x10]
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, 0x3e8
push esi
push ecx
call edi
cmp eax, 0x102
jne 0x47c5c0
lea ecx, [ecx]
cmp esi, 0xea60
jae 0x47c5d0
mov edx, dword [ebp - 0x10]
push 0x3e8
push edx
add esi, 0x3e8
call edi
cmp eax, 0x102
je 0x47c5a0
call fcn.0046d4f0
test eax, eax
je 0x47c5fd
push str.Child_process_signalled_success_n
jmp 0x47c5f1
call fcn.0046d4f0
test eax, eax
je 0x47c5fd
push esi
push str.Time_Out____d_n
push 0x6a0ad0
call fcn.00599ee3
add esp, 0xc
push 0x6a0ad0
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
mov eax, dword [ebp - 0x10]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call esi
mov ecx, dword [ebp - 0xc]
push ecx
call esi
call fcn.0046d4f0
test eax, eax
je 0x47c694
push 1
push str.CRegOps::StartTheApp_:_bRetVal___d_n
push 0x6a09d0
call fcn.00599ee3
mov eax, dword [0x5ccefc]
mov edx, dword [str.EXIT:]
mov dword [0x6a08d4], eax
mov eax, 0x6a09d0
add esp, 0xc
mov dword [0x6a08d0], edx
mov ecx, eax
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x47c650
mov edi, 0x6a08d0
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x47c661
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0x6a08d0
rep movsb byte es:[edi], byte [esi]
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d9d0
call fcn.0046d6a0
mov ecx, eax
call fcn.0046d510
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret 8