Function at 0x428504
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf8
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp + 0x14]
push ebx
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 0x18]
push esi
push edi
mov dword [ebp - 0x98], eax
lea edi, [ebp - 0x64]
xor eax, eax
xor esi, esi
stosd dword es:[edi], eax
mov ebx, esi
push 0x44
push esi
mov dword [ebp - 0x70], esi
stosd dword es:[edi], eax
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x6c], ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xf8]
push eax
call fcn.004292a0
xor eax, eax
mov dword [ebp - 0x78], esi
lea edi, [ebp - 0x90]
add esp, 0xc
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.RPCRT4.dll_UuidCreate]
mov esi, eax
or esi, 1
jge 0x428596
push str.Failed_to_create_netfx_chainer_guid.
jmp 0x428717
push 0x27
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.ole32.dll_StringFromGUID2]
test eax, eax
jne 0x4285c9
mov esi, 0x8007000e
push esi
push 0x175
push str.NetFxChainer.cpp
call fcn.00436473
push str.Failed_to_convert_netfx_chainer_guid_into_string.
jmp 0x428717
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x68]
push str.NetFxSection._ls
push eax
call fcn.0043a845
mov esi, eax
add esp, 0xc
test esi, esi
jns 0x4285ee
push str.Failed_to_allocate_section_name.
jmp 0x428717
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x70]
push str.NetFxEvent._ls
push eax
call fcn.0043a845
mov esi, eax
add esp, 0xc
test esi, esi
jns 0x428613
push str.Failed_to_allocate_event_name.
jmp 0x428717
lea eax, [ebp - 0x6c]
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x68]
call fcn.00427ef7
mov esi, eax
test esi, esi
jns 0x42862f
push str.Failed_to_create_netfx_chainer.
jmp 0x428654
push dword [ebp - 0x68]
lea eax, [ebp - 0x74]
push dword [ebp - 0x94]
push str._ls__pipe__ls
push eax
call fcn.0043a887
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x42865e
push str.Failed_to_allocate_netfx_chainer_arguments.
push esi
call fcn.00437258
pop ecx
pop ecx
jmp 0x4286d3
mov edi, dword [ebp - 0x9c]
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0xf8]
mov dword [ebp - 0xf8], 0x44
push eax
xor eax, eax
push eax
push eax
push 0x8000000
push eax
push eax
push eax
push dword [ebp - 0x74]
push edi
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x4286db
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x187
push str.NetFxChainer.cpp
call fcn.00436473
push edi
push str.Failed_to_CreateProcess_on_path:__ls
push esi
call fcn.00437258
add esp, 0xc
mov ebx, dword [ebp - 0x6c]
jmp 0x42881c
mov ebx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x90]
mov edi, dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebx + 4]
mov dword [ebp - 0xa0], eax
jmp 0x428729
cmp eax, 1
jne 0x428724
push dword [ebp - 0x80]
push dword [ebp - 0x7c]
push ebx
call fcn.004283ff
mov esi, eax
test esi, esi
jns 0x428729
push str.Failed_to_process_netfx_chainer_message.
push esi
call fcn.00437258
pop ecx
pop ecx
jmp 0x42881c
cmp eax, 0xffffffff
je 0x4287a6
push 0x64
push 0
lea eax, [ebp - 0xa4]
push eax
push 2
call edi
test eax, eax
jne 0x4286fb
lea eax, [ebp - 0x78]
push eax
push ebx
call fcn.004282cf
mov ecx, dword [ebp - 0x98]
mov dword [ecx], eax
cmp eax, 0x8000000a
jne 0x4287de
push ecx
push dword [ebp - 0x90]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
jne 0x42881c
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x197
push str.NetFxChainer.cpp
call fcn.00436473
push str.Failed_to_get_netfx_return_code.
jmp 0x428717
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
push esi
push 0x1ab
push str.NetFxChainer.cpp
call fcn.00436473
push str.Failed_to_wait_for_netfx_chainer_process_to_complete
jmp 0x428717
mov ecx, dword [ebp - 0x78]
test ecx, ecx
jns 0x42881c
push dword [ebp - 0x80]
xor eax, eax
lea edi, [ebp - 0xb4]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xb4]
and dword [ebp - 0xb0], 0
and dword [ebp - 0xa8], 0
push eax
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0xac], ecx
call dword [ebp - 0x7c]
cmp dword [ebp - 0x68], 0
je 0x42882a
push dword [ebp - 0x68]
call fcn.0043af5b
cmp dword [ebp - 0x70], 0
je 0x428838
push dword [ebp - 0x70]
call fcn.0043af5b
push dword [ebp - 0x74]
call fcn.0043b084
push ebx
call fcn.004281c8
cmp dword [ebp - 0x8c], 0
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
je 0x428864
push dword [ebp - 0x8c]
call edi
and dword [ebp - 0x8c], 0
cmp dword [ebp - 0x90], 0
je 0x428875
push dword [ebp - 0x90]
call edi
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042928d
mov esp, ebp
pop ebp
ret 0x14