Function at 0x43b9e0
Capabilities:
Create process on windows
Resume thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5d8
mov eax, dword [0x51a0a0]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x7c], edx
push edi
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0xc4]
xor ebx, ebx
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x64], ebx
call fcn.00463710
cmp dword [edi + 0x20], 1
mov eax, dword [edi + 0x24]
sete byte [ebp - 0x51]
xor ecx, ecx
mov dword [ebp - 0x58], ecx
cmp eax, dword [edi + 0x28]
je 0x43bb2e
mov eax, dword [edi + 0x28]
sub eax, dword [edi + 0x24]
sar eax, 2
cmp eax, 0x3fffffff
jbe 0x43ba4a
push ecx
mov ecx, esi
call fcn.00435590
jmp 0x43bf6f
mov esi, dword [edi + 0x24]
mov edi, dword [edi + 0x28]
cmp esi, edi
je 0x43baa4
push 1
push 1
push dword [esi]
call dword [sym.imp.KERNEL32.dll_SetHandleInformation]
test eax, eax
jne 0x43ba8a
or ebx, 2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 3
push 0xe6
push str..._.._base_process_launch_win.cc
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x18c], eax
call fcn.0044bca0
test bl, 2
je 0x43ba9d
lea ecx, [ebp - 0x18c]
and ebx, 0xfffffffd
call fcn.0044c710
add esi, 4
cmp esi, edi
jne 0x43ba54
push ecx
lea ecx, [ebp - 0xc4]
call fcn.00463790
test al, al
jne 0x43bae5
test bl, 4
je 0x43bac4
lea ecx, [ebp - 0x2f4]
call fcn.0044c710
mov esi, dword [ebp - 0x5c]
mov dword [esi], 0
mov byte [esi + 4], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
test eax, eax
jne 0x43bf6f
int3
mov edi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x80]
mov eax, dword [edi + 0x28]
sub eax, dword [edi + 0x24]
test ecx, ecx
je 0x43bbb0
push 0
push 0
and eax, 0xfffffffc
push eax
push dword [edi + 0x24]
push 0x20002
push 0
push ecx
call dword [0x51e22c]
test eax, eax
setne al
test al, al
je 0x43bbb0
mov esi, dword [ebp - 0x5c]
mov ecx, 0x80000
mov byte [ebp - 0x51], 1
mov dword [ebp - 0x58], ecx
cmp byte [edi + 0x34], 0
mov eax, 0x4ff854
mov dword [ebp - 0x98], 1
cmove eax, dword [ebp - 0xbc]
mov dword [ebp - 0xbc], eax
xor eax, eax
cmp byte [edi + 0x1c], al
sete al
mov word [ebp - 0x94], ax
mov eax, dword [edi + 0x3c]
test eax, eax
jne 0x43bb6e
cmp dword [edi + 0x40], eax
jne 0x43bb6e
cmp dword [edi + 0x44], eax
je 0x43bb90
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x88], eax
mov eax, dword [edi + 0x44]
mov dword [ebp - 0x98], 0x101
mov dword [ebp - 0x84], eax
cmp dword [edi + 0x38], 0
je 0x43bbd1
or ecx, 4
mov dword [ebp - 0x58], ecx
call fcn.00452960
cmp eax, 5
mov eax, dword [ebp - 0x58]
jge 0x43bbd4
or eax, 0x1000000
jmp 0x43bbd4
test bl, 8
je 0x43bbc0
lea ecx, [ebp - 0x3ac]
call fcn.0044c710
mov esi, dword [ebp - 0x5c]
mov ecx, esi
push 0
call fcn.00435590
jmp 0x43bf6f
mov eax, dword [ebp - 0x58]
mov ecx, eax
xorps xmm0, xmm0
or ecx, 0x1000000
cmp byte [edi + 0x48], 0
movups xmmword [ebp - 0xd4], xmm0
cmove ecx, eax
cmp dword [edi + 0x14], 0
mov dword [ebp - 0x64], ecx
jne 0x43bbff
mov dword [ebp - 0x58], 0
jmp 0x43bc10
cmp dword [edi + 0x18], 8
lea eax, [edi + 4]
mov dword [ebp - 0x58], eax
jb 0x43bc10
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
xor eax, eax
mov dword [ebp - 0xc], 7
push 0xffffffffffffffff
push eax
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], 0
mov word [ebp - 0x20], ax
call fcn.0041b960
mov eax, dword [edi + 0x30]
test eax, eax
je 0x43bd9f
or dword [ebp - 0x64], 0x400
push 0
push eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], 0
push eax
call dword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
test eax, eax
jne 0x43bccb
test bl, 0x10
je 0x43bc6c
lea ecx, [ebp - 0x464]
call fcn.0044c710
push 0
mov ecx, esi
call fcn.00435590
mov eax, dword [ebp - 0xc]
cmp eax, 8
jb 0x43bf5f
mov ecx, dword [ebp - 0x20]
inc eax
cmp eax, 0x7fffffff
ja 0x43bf9b
add eax, eax
cmp eax, 0x1000
jb 0x43bf56
test byte [ebp - 0x20], 0x1f
jne 0x43bfa0
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43bfa5
sub ecx, eax
cmp ecx, 4
jb 0x43bfaa
cmp ecx, 0x23
jbe 0x43bf54
jmp 0x43bfaf
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0xc4]
push eax
push dword [ebp - 0x58]
movzx eax, byte [ebp - 0x51]
lea ecx, [ebp - 0x20]
push dword [ebp - 0x60]
cmovae ecx, dword [ebp - 0x20]
push dword [ebp - 0x64]
push eax
push 0
push 0
push ecx
push 0
push dword [edi + 0x30]
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
push dword [ebp - 0x60]
mov esi, eax
call dword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
test esi, esi
jne 0x43be46
test bl, 0x40
je 0x43bd28
lea ecx, [ebp - 0x51c]
and ebx, 0xffffffbf
call fcn.0044c710
test bl, 0x20
je 0x43bd73
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x43bd73
mov ecx, dword [ebp - 0x38]
inc eax
cmp eax, 0x1000
jb 0x43bd6a
test cl, 0x1f
jne 0x43bfb4
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43bfb9
sub ecx, eax
cmp ecx, 4
jb 0x43bfbe
cmp ecx, 0x23
ja 0x43bfc3
mov ecx, eax
push ecx
call fcn.004cbd7a
add esp, 4
mov esi, dword [ebp - 0x5c]
mov ecx, esi
push 0
call fcn.00435590
mov eax, dword [ebp - 0xc]
cmp eax, 8
jb 0x43bf5f
mov ecx, dword [ebp - 0x20]
inc eax
cmp eax, 0x7fffffff
jbe 0x43bc90
jmp 0x43bfc8
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0xc4]
push eax
push dword [ebp - 0x58]
movzx eax, byte [ebp - 0x51]
lea ecx, [ebp - 0x20]
cmovae ecx, dword [ebp - 0x20]
push 0
push dword [ebp - 0x64]
push eax
push 0
push 0
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x43be46
test ebx, 0x100
je 0x43bdef
lea ecx, [ebp - 0x5d4]
and ebx, 0xfffffeff
call fcn.0044c710
test bl, bl
jns 0x43bc6c
mov eax, dword [ebp - 0x3c]
cmp eax, 0x10
jb 0x43bc6c
mov ecx, dword [ebp - 0x50]
inc eax
cmp eax, 0x1000
jb 0x43be38
test cl, 0x1f
jne 0x43bfcd
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x43bfd2
sub ecx, eax
cmp ecx, 4
jb 0x43bfd7
cmp ecx, 0x23
ja 0x43bfdc
mov ecx, eax
push ecx
call fcn.004cbd7a
add esp, 4
jmp 0x43bc6c
lea eax, [ebp - 0xd4]
mov dword [ebp - 0x78], 0
push eax
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
call fcn.00458be0
mov eax, dword [edi + 0x38]
test eax, eax
je 0x43bee0
push dword [ebp - 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
test eax, eax
jne 0x43bed7
test ebx, 0x200
je 0x43be99
lea ecx, [ebp - 0x23c]
call fcn.0044bd90
lea ecx, [ebp - 0x78]
call fcn.00458d30
push eax
lea ecx, [ebp - 0x68]
call fcn.00435590
push 1
push 1
lea ecx, [ebp - 0x68]
call fcn.004356d0
mov esi, dword [ebp - 0x5c]
mov ecx, esi
push 0
call fcn.00435590
lea ecx, [ebp - 0x68]
call fcn.00435640
lea ecx, [ebp - 0x78]
call fcn.00458ab0
jmp 0x43bc75
push dword [ebp - 0x74]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp byte [edi], 0
je 0x43bef0
push 0xffffffffffffffff
push dword [ebp - 0x78]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [0x51ed64]
test ecx, ecx
je 0x43bf05
push dword [ebp - 0x7c]
push dword [ebp - 0x70]
call fcn.0045b710
mov edi, dword [ebp - 0x78]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x78], 0
test edi, edi
je 0x43bf3c
cmp edi, 0xffffffff
je 0x43bf3c
call sym.setup.exe_GetHandleVerifier
mov edx, eax
mov esi, dword [edx]
call fcn.0044dee0
mov ecx, dword [ebp + 4]
push eax
push ecx
lea eax, [ebp - 0x78]
mov ecx, edx
push eax
push edi
call dword [esi + 8]
mov esi, dword [ebp - 0x5c]
mov ecx, esi
push edi
call fcn.00435590
lea ecx, [ebp - 0x78]
call fcn.00458ab0
jmp 0x43bc75
mov ecx, eax
push ecx
call fcn.004cbd7a
add esp, 4
xor eax, eax
mov dword [ebp - 0xc], 7
mov dword [ebp - 0x10], eax
mov word [ebp - 0x20], ax
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x43bf88
push eax
call dword [0x51e234]
push dword [ebp - 0x80]
call fcn.004cb8b4
add esp, 4
mov ecx, dword [ebp - 8]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004cb8a3
mov esp, ebp
pop ebp
ret
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
call fcn.004d1350
int3