Function at 0x4047a0
Capabilities:
Create process on windows
Resume thread
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
mov eax, 0x4278
call fcn.00407650
mov eax, dword [0x43a128]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 0x44
lea eax, [ebp - 0x4278]
push 0
push eax
call fcn.00408280
xorps xmm0, xmm0
push 0x5c
push 0x43bae0
movaps xmmword [ebp - 0x4230], xmm0
call fcn.00408954
mov esi, eax
add esp, 0x14
test esi, esi
je 0x40480f
xor eax, eax
mov dword [ebp - 0x4214], 0x43bae0
mov word [esi], ax
add esi, 2
jmp 0x40481e
mov esi, 0x43bae0
mov dword [ebp - 0x4214], 0x464ec0
push 0x43bce8
push 0x460a80
lea eax, [ebp - 0x4210]
push 0x42eb60
push eax
call fcn.00403b70
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0x10
cmp byte [0x43fef6], 0
jne 0x4048f6
cmp word [esi], 0
je 0x4048f6
xor ecx, ecx
lea eax, [ebp - 0x4230]
cmp word [0x43fce8], cx
push eax
lea eax, [ebp - 0x4278]
push eax
mov eax, 0x43fce8
cmove eax, ecx
push eax
mov eax, dword [0x43fef8]
push ecx
or eax, 0x414
push eax
lea eax, [ebp - 0x4210]
push eax
xor eax, eax
cmp byte [0x43a10a], al
push ecx
setne al
push eax
push 0x460ca0
push dword [ebp - 0x4214]
push esi
call dword [0x43ff04]
test eax, eax
jne 0x404a22
push 0x460a80
push str._rPsExec_could_not_start__s:_n
push 2
call fcn.0040af7e
add esp, 4
push eax
call fcn.00402180
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0xc
call esi
push eax
call fcn.00402e00
add esp, 4
call esi
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040760d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
lea eax, [ebp - 0x4218]
push eax
push 0xf01ff
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
cmp byte [0x43fef6], 0
je 0x404986
push dword [ebp - 0x4218]
call fcn.00402290
mov esi, eax
mov dword [ebp - 0x4214], eax
add esp, 4
test esi, esi
jne 0x40497c
push str._rPsExec_could_not_create_a_limited_user_token:_n
push 2
call fcn.0040af7e
add esp, 4
push eax
call fcn.00402180
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 8
call esi
push eax
call fcn.00402e00
add esp, 4
push dword [ebp - 0x4218]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040760d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push dword [ebp - 0x4218]
call edi
jmp 0x404992
mov esi, dword [ebp - 0x4218]
mov dword [ebp - 0x4214], esi
xor ecx, ecx
lea eax, [ebp - 0x4230]
cmp word [0x43fce8], cx
push eax
lea eax, [ebp - 0x4278]
push eax
mov eax, 0x43fce8
cmove eax, ecx
push eax
mov eax, dword [0x43fef8]
push ecx
or eax, 0x414
push eax
push ecx
push ecx
push ecx
lea eax, [ebp - 0x4210]
push eax
push ecx
push esi
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
jne 0x404a1f
push 0x460a80
push str._rPsExec_could_not_start__s:_n
push 2
call fcn.0040af7e
add esp, 4
push eax
call fcn.00402180
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0xc
call esi
push eax
call fcn.00402e00
add esp, 4
push dword [ebp - 0x4214]
call edi
call esi
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040760d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
call edi
cmp dword [0x43fef8], 0x100000
jne 0x404a3c
push dword [ebp - 0x4230]
call fcn.00402870
add esp, 4
mov ax, word [0x43a10c]
mov ecx, 0xffff
cmp ax, cx
je 0x404a94
push dword [0x43fefc]
movzx eax, ax
push eax
push dword [ebp - 0x422c]
call fcn.004028d0
add esp, 0xc
test eax, eax
jne 0x404aaa
push eax
push dword [ebp - 0x4230]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push dword [ebp - 0x422c]
call edi
push dword [ebp - 0x4230]
call edi
push 0x460a80
push str._rPsExec_could_not_set_group_affinity__s:_n
jmp 0x4048bd
mov eax, dword [0x43fefc]
test eax, eax
je 0x404aaa
push eax
push dword [ebp - 0x4230]
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
push dword [ebp - 0x422c]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp byte [0x43fef1], 0
jne 0x404af7
push 0xffffffffffffffff
push dword [ebp - 0x4230]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp - 0x421c]
push eax
push dword [ebp - 0x4230]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
push dword [ebp - 0x421c]
push 0x460a80
push str._s_exited_with_error_code__d._n
call fcn.00402e90
jmp 0x404b18
push dword [ebp - 0x4228]
push 0x460a80
push str._s_started_with_process_ID__d._n
call fcn.00402e90
mov eax, dword [ebp - 0x4228]
mov dword [ebp - 0x421c], eax
add esp, 0xc
push dword [ebp - 0x422c]
call edi
push dword [ebp - 0x4230]
call edi
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x421c]
xor ecx, ebp
pop edi
pop esi
call fcn.0040760d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret