Function at 0x414860
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6e4
mov eax, dword [0x46a278]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x6e4], ecx
call fcn.00411030
movzx eax, byte [eax + 0xa4]
test eax, eax
jne 0x414890
mov al, 1
jmp 0x414cef
mov dword [ebp - 0x69c], 0x4566a0
mov ecx, dword [ebp - 0x69c]
push ecx
push 0
push 0xbc2
mov edx, dword [ebp - 0x6e4]
mov eax, dword [edx + 0x10]
push eax
call dword [0x454510]
push 0
push 3
push 0xbc2
mov ecx, dword [ebp - 0x6e4]
mov edx, dword [ecx + 0x10]
push edx
call dword [0x454510]
mov dword [ebp - 0x568], 0x104
lea eax, [ebp - 0x560]
push eax
mov ecx, dword [ebp - 0x568]
push ecx
call dword [0x45429c]
mov dword [ebp - 0x698], eax
mov edx, dword [ebp - 0x698]
cmp edx, dword [ebp - 0x568]
ja 0x41490c
cmp dword [ebp - 0x698], 0
jne 0x414923
push str.GetTempPath_failed_with_error
mov ecx, dword [ebp - 0x6e4]
call fcn.00414d10
xor al, al
jmp 0x414cef
lea eax, [ebp - 0x670]
push eax
push 0
push 0x4566d0
lea ecx, [ebp - 0x560]
push ecx
call dword [0x4542a0]
mov dword [ebp - 0x564], eax
cmp dword [ebp - 0x564], 0
jne 0x414964
push str.GetTempFileName_failed_with_error
mov ecx, dword [ebp - 0x6e4]
call fcn.00414d10
xor al, al
jmp 0x414cef
push str..EXE
lea edx, [ebp - 0x670]
push edx
call fcn.0043f950
add esp, 4
mov ecx, 0x104
sub ecx, eax
sub ecx, 1
push ecx
lea edx, [ebp - 0x670]
push edx
call fcn.004401e5
add esp, 0xc
push 0
push 0x80
push 2
push 0
push 0
push 0xc0000000
lea eax, [ebp - 0x670]
push eax
call dword [0x4542a4]
mov dword [ebp - 0x684], eax
cmp dword [ebp - 0x684], 0xffffffff
jne 0x4149d7
push str.CreateFile_failed_with_error
mov ecx, dword [ebp - 0x6e4]
call fcn.00414d10
xor al, al
jmp 0x414cef
call fcn.00411030
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0x680], ecx
push 0x456724
push 0xff
mov edx, dword [ebp - 0x680]
push edx
call dword [0x454334]
mov dword [ebp - 0x67c], eax
cmp dword [ebp - 0x67c], 0
jne 0x414a1b
push 0xffffffffffffffff
push 0
call dword [0x454314]
push eax
call fcn.00428dd2
mov eax, dword [ebp - 0x67c]
push eax
mov ecx, dword [ebp - 0x680]
push ecx
call dword [0x454338]
mov dword [ebp - 0x678], eax
mov edx, dword [ebp - 0x678]
push edx
call dword [0x45433c]
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x67c]
push eax
mov ecx, dword [ebp - 0x680]
push ecx
call dword [0x454340]
mov dword [ebp - 0x674], eax
push 0
mov edx, dword [ebp - 0x674]
push edx
push 0
push 4
push 0
mov eax, dword [ebp - 0x684]
push eax
call dword [0x4542a8]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x674]
push ecx
push 0
push 0
push 6
mov edx, dword [ebp - 0x40c]
push edx
call dword [0x4542ac]
mov dword [ebp - 0x6a0], eax
cmp dword [ebp - 0x6a0], 0
jne 0x414ac4
push str.CreateFileMapping_failed_with_error
mov ecx, dword [ebp - 0x6e4]
call fcn.00414d10
xor al, al
jmp 0x414cef
mov eax, dword [ebp - 0x674]
push eax
mov ecx, dword [ebp - 0x6a4]
push ecx
mov edx, dword [ebp - 0x6a0]
push edx
call fcn.0043fe80
add esp, 0xc
mov eax, dword [ebp - 0x678]
push eax
call fcn.00407aa0
mov ecx, dword [ebp - 0x678]
push ecx
call dword [0x4542b0]
mov edx, dword [ebp - 0x6a0]
push edx
call dword [0x4542b4]
mov eax, dword [ebp - 0x40c]
push eax
call dword [0x4542b8]
mov ecx, dword [ebp - 0x684]
push ecx
call dword [0x4542b8]
push 0
push 4
push 0xbc2
mov edx, dword [ebp - 0x6e4]
mov eax, dword [edx + 0x10]
push eax
call dword [0x454510]
mov byte [ebp - 0x408], 0
push 0x3ff
push 0
lea ecx, [ebp - 0x407]
push ecx
call fcn.0043d9e0
add esp, 0xc
lea edx, [ebp - 0x670]
push edx
push str.__s_
push 0x3ff
lea eax, [ebp - 0x408]
push eax
call fcn.0043f717
add esp, 0x10
push 0x44
push 0
lea ecx, [ebp - 0x458]
push ecx
call fcn.0043d9e0
add esp, 0xc
mov dword [ebp - 0x458], 0x44
push 0x10
push 0
lea edx, [ebp - 0x694]
push edx
call fcn.0043d9e0
add esp, 0xc
lea eax, [ebp - 0x694]
push eax
lea ecx, [ebp - 0x458]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x408]
push edx
push 0
call dword [0x4542c0]
test eax, eax
je 0x414c02
push 0xffffffffffffffff
mov eax, dword [ebp - 0x694]
push eax
call dword [0x4542c4]
mov ecx, dword [ebp - 0x694]
push ecx
call dword [0x4542b8]
mov edx, dword [ebp - 0x690]
push edx
call dword [0x4542b8]
jmp 0x414c87
mov dword [ebp - 0x6e0], 0x3c
mov dword [ebp - 0x6dc], 0
mov dword [ebp - 0x6d8], 0
mov dword [ebp - 0x6d4], str.runas
lea eax, [ebp - 0x670]
mov dword [ebp - 0x6d0], eax
mov dword [ebp - 0x6cc], 0
mov dword [ebp - 0x6c8], 0
mov dword [ebp - 0x6c4], 1
mov dword [ebp - 0x6c0], 0
lea ecx, [ebp - 0x6e0]
push ecx
call dword [0x454394]
push 0xffffffffffffffff
mov edx, dword [ebp - 0x6a8]
push edx
call dword [0x4542c4]
mov eax, dword [ebp - 0x6a8]
push eax
call dword [0x4542b8]
mov ecx, dword [ebp - 0x6e4]
mov edx, dword [ecx + 0x30]
cmp dword [edx + 0x8a0], 0
je 0x414cc7
push 0xa
mov eax, dword [ebp - 0x6e4]
mov ecx, dword [eax + 0x30]
call fcn.0040f350
push eax
mov ecx, dword [0x46b648]
push ecx
mov edx, dword [ebp - 0x6e4]
mov eax, dword [edx + 0x30]
mov ecx, dword [eax + 0x8a0]
push ecx
call dword [0x454520]
lea edx, [ebp - 0x670]
push edx
call dword [0x454294]
push 0
push 5
push 0xbc2
mov eax, dword [ebp - 0x6e4]
mov ecx, dword [eax + 0x10]
push ecx
call dword [0x454510]
mov al, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0043d97d
mov esp, ebp
pop ebp
ret