Function at 0x43ae0c
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
xor edi, edi
mov ebp, ecx
cmp ecx, edi
lea r12d, [rdi + 3]
mov r14d, edi
mov r13b, dil
je 0x43ae4e
cmp ecx, 1
je 0x43ae4e
jle 0x43ae53
cmp ecx, r12d
jle 0x43ae4e
cmp ecx, 4
jne 0x43ae53
mov r13b, 1
mov r15, r8
jmp 0x43ae93
call fcn.0042ec38
mov dword [rax], edi
call fcn.0042ec10
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov dword [rax], 0x16
mov qword [rsp + 0x20], rdi
call fcn.004337e8
jmp 0x43b0c4
inc r8
cmp byte [r8], dil
jne 0x43ae7e
cmp byte [r8 + 1], dil
je 0x43ae93
mov byte [r8], 0x20
inc r8
cmp byte [r8], dil
jne 0x43ae7e
mov ebx, 0x68
lea rcx, [rsp + 0x70]
xor edx, edx
mov r8, rbx
call fcn.00436350
mov dword [rsp + 0x70], ebx
mov ebx, dword [0x00452fe8]
cmp ebx, edi
lea r9, [0x00453000]
je 0x43aef4
lea r8d, [rbx - 1]
movsxd rax, r8d
mov cl, al
mov rdx, rax
sar rdx, 5
and ecx, 0x1f
mov rax, qword [r9 + rdx*8]
imul rcx, rcx, 0x38
cmp byte [rax + rcx + 8], dil
jne 0x43aeec
dec ebx
dec r8d
cmp ebx, edi
jne 0x43aec5
cmp ebx, edi
jl 0x43b0b9
cmp ebx, 0x1c71
jae 0x43b0b9
movzx eax, bx
mov edx, 1
shl ax, 3
lea ecx, [rax + rbx + 4]
mov word [rsp + 0xb2], cx
movzx ecx, cx
call fcn.0043544c
cmp rax, rdi
mov qword [rsp + 0xb8], rax
je 0x43b0b9
cmp ebx, edi
mov dword [rax], ebx
mov rax, qword [rsp + 0xb8]
movsxd r11, ebx
lea rcx, [rax + 4]
lea rdx, [r11 + rax + 4]
jle 0x43afa4
mov r8, rdi
mov r9d, ebx
lea r11, [0x00453000]
mov r10b, r8b
mov rax, r8
and r10d, 0x1f
sar rax, 5
imul r10, r10, 0x38
add r10, qword [r11 + rax*8]
mov al, byte [r10 + 8]
test al, 0x10
jne 0x43af80
mov byte [rcx], al
mov rax, qword [r10]
mov qword [rdx], rax
jmp 0x43af8a
mov byte [rcx], dil
mov qword [rdx], 0xffffffffffffffff
inc r8
inc rcx
add rdx, 8
dec r9
jne 0x43af58
mov rax, qword [rsp + 0xb8]
movsxd r11, ebx
cmp r13b, dil
je 0x43afdd
cmp ebx, r12d
lea rcx, [rax + 4]
lea rdx, [r11 + rax + 4]
cmovl r12d, ebx
cmp r12d, edi
jle 0x43afd7
mov eax, r12d
mov byte [rcx], dil
mov qword [rdx], 0xffffffffffffffff
add rdx, 8
inc rcx
dec rax
jne 0x43afc1
mov r14d, 8
call fcn.0042ec38
mov rcx, qword [rsp + 0x128]
xor r9d, r9d
mov dword [rax], edi
lea rax, [rsp + 0x50]
xor r8d, r8d
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x70]
mov rdx, r15
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 1
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0xb8]
mov r12d, eax
call fcn.0042e1dc
cmp ebx, edi
jne 0x43b054
mov ecx, r12d
call fcn.0042ec60
jmp 0x43b0c4
cmp ebp, 2
jne 0x43b061
xor ecx, ecx
call fcn.004314a0
int3
cmp ebp, edi
jne 0x43b092
mov rcx, qword [rsp + 0x50]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x120]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
movsxd rdi, dword [rsp + 0x120]
jmp 0x43b097
cmp ebp, 4
jne 0x43b0a4
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x43b0a9
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rdi
jmp 0x43b0cb
call fcn.0042ec10
mov dword [rax], 0xc
mov rax, 0xffffffffffffffff
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret