Function at 0x40fa50
Capabilities:
Create process on windows

Disassembly:
sub esp, 0x6c
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov eax, dword [ebp]
lea esi, [ebp + 0x898]
add eax, 0x310
push eax
push esi
call fcn.004110c0
mov eax, dword [esp + 0x84]
xorps xmm0, xmm0
or ebx, 0xffffffff
movlpd qword [esp + 0x30], xmm0
movlpd qword [esp + 0x38], xmm0
movlpd qword [esp + 0x40], xmm0
movlpd qword [esp + 0x48], xmm0
movlpd qword [esp + 0x50], xmm0
mov dword [esp + 0x58], 0
movlpd qword [esp + 0x60], xmm0
movlpd qword [esp + 0x6c], xmm0
movlpd qword [esp + 0x28], xmm0
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x14], 0xc
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x5c], 0x100
mov dword [esp + 0x68], 0
test eax, eax
je 0x40fb19
push 0
push 0x100080
push 4
lea ecx, [esp + 0x20]
push ecx
push 3
push 4
push eax
call dword [sym.imp.kernel32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x40fb19
mov dword [esp + 0x70], ebx
mov dword [esp + 0x6c], ebx
jmp 0x40fb34
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
push str.CreateFile_awLogFileName__failed_in_CWatsonDump::LaunchAWDump__error:__d
push 1
push 0x429048
call fcn.00404d90
add esp, 0x10
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x34]
push eax
push 0
push 0
push 0x400
push 1
push 0
push 0
push dword [esp + 0xa0]
push esi
call dword [sym.imp.kernel32.dll_CreateProcessW]
test eax, eax
je 0x40fd20
cmp dword [esp + 0x20], 0xffffffff
je 0x40fd20
push str.CWatsonDump::LaunchAWDump:Wait_for_awdump.exe_to_complete...
push 2
push 0x429048
call fcn.00404d90
add esp, 0xc
mov ecx, 0x429048
call fcn.004050b0
push 0x3a98
push dword [esp + 0x24]
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x40fbd2
xor esi, esi
add esi, 0xf
push esi
push str.CWatsonDump::LaunchAWDump:_awdumps.exe_has_taken__d_seconds._Continuing_to_wait_...
push 2
push 0x429048
call fcn.00404d90
add esp, 0x10
push 0x3a98
push dword [esp + 0x24]
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x40fba4
test eax, eax
jne 0x40fbec
push str.CWatsonDump::LaunchAWDump::_awdump.exe_completed.
push 2
push 0x429048
call fcn.00404d90
add esp, 0xc
jmp 0x40fc07
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
push str.CWatsonDump::LaunchAWDump:WaitForSingleObject_returned_error:__d
push 1
push 0x429048
call fcn.00404d90
add esp, 0x10
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x24]
call dword [sym.imp.kernel32.dll_GetExitCodeProcess]
test eax, eax
jne 0x40fc63
call dword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
test edi, edi
jg 0x40fc2a
mov esi, edi
jmp 0x40fc33
movzx esi, di
or esi, 0x80070000
push edi
push 1
push dword [esp + 0x18]
test esi, esi
mov eax, 0x80004005
push str.GetExitCodeProcess_of_awdump.exe_failed._Exit_code:__d__expected:__d_._Error:__d
push 1
push 0x429048
cmovns esi, eax
call fcn.00404d90
push edi
push 1
push dword [esp + 0x30]
push str.GetExitCodeProcess_of_awdump.exe_failed._Exit_code:__d__expected:__d_._Error:__d
jmp 0x40fcc7
call dword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
mov eax, dword [esp + 0x10]
cmp eax, 1
jne 0x40fc9a
push eax
push str.Process_exit_code_is_expected:__d._awdump.exe_invoke_succeeded.
push 2
push 0x429048
xor esi, esi
call fcn.00404d90
mov eax, dword [ebp]
add esp, 0x10
mov byte [eax + 0x36c], 0
jmp 0x40fd71
cmp eax, 0x103
jne 0x40fce2
push edi
push 1
push eax
push str.Process_exit_code:__d__expected:__d_._awdump.exe_STILL_ACTIVE._Error:__d
push 1
push 0x429048
mov esi, 0x80070102
call fcn.00404d90
push edi
push 1
push dword [esp + 0x30]
push str.Process_exit_code:__d__expected:__d_._awdump.exe_STILL_ACTIVE._Error:__d
mov eax, dword [ebp]
add eax, 0x36e
push 0x104
push eax
call fcn.00401fd0
add esp, 0x30
jmp 0x40fd71
test edi, edi
jg 0x40fcea
mov esi, edi
jmp 0x40fcf3
movzx esi, di
or esi, 0x80070000
push edi
push 1
push eax
push str.Process_exit_code:__d__expected:__d_._awdump.exe_invoke_failed._Error:__d
test esi, esi
mov ecx, 0x80004005
push 1
push 0x429048
cmovns esi, ecx
call fcn.00404d90
push edi
push 1
push dword [esp + 0x30]
push str.Process_exit_code:__d__expected:__d_._awdump.exe_invoke_failed._Error:__d
jmp 0x40fcc7
call dword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
test edi, edi
jg 0x40fd30
mov esi, edi
jmp 0x40fd39
movzx esi, di
or esi, 0x80070000
push edi
push str.CreateProcessW_Failed_in_CWatsonDump::LaunchAWDump__error:__d
mov eax, 0x80004005
test esi, esi
push 1
push 0x429048
cmovns esi, eax
call fcn.00404d90
mov eax, dword [ebp]
push edi
push str.CreateProcessW_Failed_in_CWatsonDump::LaunchAWDump__error:__d
add eax, 0x36e
push 0x104
push eax
call fcn.00401fd0
add esp, 0x20
cmp ebx, 0xffffffff
je 0x40fd7d
push ebx
call dword [sym.imp.kernel32.dll_CloseHandle]
mov eax, dword [esp + 0x20]
cmp eax, 0xffffffff
je 0x40fd8d
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
mov eax, dword [esp + 0x24]
cmp eax, 0xffffffff
je 0x40fd9d
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 8