Function at 0x47b016
Capabilities:
Create process on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rbp + 0x10], rcx
mov dword [rbp + 0x18], edx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r9
mov qword [rbp - 0x10], 0
mov qword [rbp - 0x30], 0
mov qword [rbp - 8], 0
cmp qword [rbp + 0x28], 0
je 0x47b1a3
mov dword [rbp - 0x14], 0
jmp 0x47b060
add dword [rbp - 0x14], 1
mov eax, dword [rbp - 0x14]
cdqe
lea rdx, [rax*8]
mov rax, qword [rbp + 0x28]
add rax, rdx
mov rax, qword [rax]
test rax, rax
jne 0x47b05c
cmp dword [rbp - 0x14], 0
jle 0x47b1a3
mov dword [rbp - 0x1c], 1
mov eax, dword [rbp - 0x14]
cdqe
shl rax, 3
add rax, 0xf
add rax, 0xf
shr rax, 4
shl rax, 4
call fcn.00487db0
sub rsp, rax
lea rax, [rsp + 0x50]
add rax, 0xf
shr rax, 4
shl rax, 4
mov qword [rbp - 0x38], rax
mov eax, dword [rbp - 0x14]
cdqe
lea rcx, [rax*8]
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x38]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov eax, dword [rbp - 0x14]
movsxd rdx, eax
mov rax, qword [rbp - 0x38]
lea r9, [0x0047af7b]
mov r8d, 8
mov rcx, rax
call sub.msvcrt.dll_qsort
mov dword [rbp - 0x18], 0
jmp 0x47b13b
mov eax, dword [rbp - 0x18]
cdqe
lea rdx, [rax*8]
mov rax, qword [rbp + 0x28]
add rax, rdx
mov rax, qword [rax]
mov rcx, rax
call sub.msvcrt.dll_strlen
mov edx, eax
mov eax, dword [rbp - 0x1c]
add eax, edx
add eax, 1
mov dword [rbp - 0x1c], eax
add dword [rbp - 0x18], 1
mov eax, dword [rbp - 0x18]
cmp eax, dword [rbp - 0x14]
jl 0x47b10b
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, rax
call fcn.0047c0a6
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x18], 0
jmp 0x47b194
mov eax, dword [rbp - 0x18]
cdqe
lea rdx, [rax*8]
mov rax, qword [rbp - 0x38]
add rax, rdx
mov rdx, qword [rax]
mov rax, qword [rbp - 0x28]
mov rcx, rax
call fcn.0047cb10
add rax, 1
mov qword [rbp - 0x28], rax
add dword [rbp - 0x18], 1
mov eax, dword [rbp - 0x18]
cmp eax, dword [rbp - 0x14]
jl 0x47b165
mov rax, qword [rbp - 0x28]
mov byte [rax], 0
mov eax, dword [rbp + 0x18]
mov edx, eax
mov rcx, qword [rbp + 0x10]
call fcn.0047acaf
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x30], 0
je 0x47b288
mov rax, qword [rbp + 0x20]
mov rcx, rax
call fcn.0047a84c
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
je 0x47b28b
mov rdx, qword [rbp - 8]
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x40]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp + 0x38]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], 0
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov ecx, dword [rbp + 0x30]
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], 1
mov r9d, 0
mov r8d, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CreateProcessA]
call rax
test eax, eax
jne 0x47b253
mov rax, qword [rbp - 0x10]
mov rcx, rax
call fcn.00494cb8
mov rax, qword [rbp - 0x30]
mov rcx, rax
call fcn.00494cb8
mov rax, 0xffffffffffffffff
jmp 0x47b2b7
mov rax, qword [rbp + 0x40]
mov rax, qword [rax + 8]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
mov rax, qword [rbp - 0x30]
mov rcx, rax
call fcn.00494cb8
mov rax, qword [rbp - 0x10]
mov rcx, rax
call fcn.00494cb8
mov rax, qword [rbp + 0x40]
mov rax, qword [rax]
jmp 0x47b2b7
nop
jmp 0x47b28c
nop
mov rax, qword [rbp - 0x10]
mov rcx, rax
call fcn.00494cb8
mov rax, qword [rbp - 8]
mov rcx, rax
call fcn.00494cb8
mov rax, qword [rbp - 0x30]
mov rcx, rax
call fcn.00494cb8
mov rax, 0xffffffffffffffff
mov rsp, rbp
pop rbp
ret