Function at 0x1400fab00
Capabilities:
Allocate or change rwx memory
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], r8
push r15
sub rsp, 0x80
mov eax, dword [rdx + 0xf0]
mov r10, rdx
mov r15, rcx
test eax, eax
je 0x1400fae67
cmp dword [rdx + 0xf4], 0
je 0x1400fae67
mov qword [r11 + 8], rbx
xor edx, edx
mov qword [r11 - 0x20], rdi
mov ebx, eax
mov qword [r11 - 0x30], r13
lea r13, [rcx + 0xc]
movzx r11d, word [r10 + 6]
add r13, rax
mov r9d, dword [r13]
add r9, rcx
test r11d, r11d
je 0x1400fab8f
movzx edi, word [r10 + 0x14]
lea rcx, [rdx + rdx*4]
lea r8, [rdi + rcx*8]
mov ecx, dword [r8 + r10 + 0x24]
lea rax, [rcx + r15]
cmp r9, rax
jb 0x1400fab88
mov eax, dword [r8 + r10 + 0x28]
add rax, rcx
add rax, r15
cmp r9, rax
jb 0x1400fab99
inc edx
cmp edx, r11d
jb 0x1400fab62
mov eax, 0xc0000049
jmp 0x1400fae4b
mov edx, dword [r8 + r10 + 0x20]
mov rax, rcx
add rax, r15
je 0x1400fab8f
test rdx, rdx
je 0x1400fab8f
mov qword ds:[rsp + 0x48], rax
lea r8, [rsp + 0x40]
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x40], rdx
mov r9d, 4
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x50], r14
mov rcx, 0xffffffffffffffff
call qword [sym.imp.ntdll.dll_NtProtectVirtualMemory]
mov r14d, eax
test eax, eax
js 0x1400fae46
cmp dword [rbx + r15 + 4], 0
je 0x1400fae19
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x60], r12
nop dword [rax]
mov esi, dword [r13 - 8]
mov ebp, dword [r13 - 4]
add rsi, r15
mov r12d, dword [r13]
add rbp, r15
mov edi, dword [r13 + 4]
mov rcx, rsi
mov rdx, qword [rsp + 0xa0]
add r12, r15
mov byte [rsp + 0x98], 0
add rdi, r15
mov qword [rsp + 0x38], rbp
call fcn.140190588
test eax, eax
jne 0x1400fadfb
lea rdx, [0x1401f02b0]
mov rcx, rsi
call fcn.1401a8df0
test eax, eax
jne 0x1400fac78
mov rbx, qword [0x140241948]
xor r14d, r14d
jmp 0x1400fad3e
mov rbx, qword ss:[rbp]
test rbx, rbx
je 0x1400fac8d
xor r14d, r14d
jmp 0x1400fad49
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rsi + rdx], 0
jne 0x1400fac94
mov rcx, rsi
call sym.ProcessHacker.exe_PhZeroExtendToUtf16Ex
mov rbp, rax
mov rcx, qword [rax + 8]
call fcn.1400f9d00
mov rbx, rax
test rax, rax
jne 0x1400fad18
mov rsi, qword [rbp + 8]
xor edx, edx
mov rcx, rsi
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rbx, rax
test rax, rax
jne 0x1400facef
xor edx, edx
mov r8d, 0xa00
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rbx, rax
test rax, rax
je 0x1400facfc
mov byte [rsp + 0x98], 1
xor r14d, r14d
jmp 0x1400fad18
xor ebx, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
test eax, eax
jle 0x1400fad18
movzx r14d, ax
or r14d, 0xc0070000
lea rcx, [rbp - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400fad30
call fcn.1400fbcc0
test r14d, r14d
js 0x1400fae0a
mov rbp, qword [rsp + 0x38]
nop
test rbx, rbx
je 0x1400fae0a
mov rax, qword [rdi]
test rax, rax
je 0x1400faddc
sub r12, rdi
mov ebp, 0x5a4d
test rax, rax
jns 0x1400fadb3
movzx r9d, word [rdi]
cmp word [rbx], bp
jne 0x1400fadaf
mov ecx, dword [rbx + 0x3c]
lea eax, [rcx - 1]
cmp eax, 0x7ffffffd
ja 0x1400fadaf
cmp dword ds:[rcx + rbx], 0x4550
jne 0x1400fadaf
lea rdx, [rbx + 0x88]
add rdx, rcx
mov eax, dword [rdx]
test eax, eax
je 0x1400fadaf
cmp dword [rdx + 4], 0
je 0x1400fadaf
mov word [rsp + 0x20], r9w
lea r8, [rbx + rax]
xor r9d, r9d
mov rcx, rbx
call fcn.1400fa1a0
jmp 0x1400fadc7
xor eax, eax
jmp 0x1400fadc7
movzx r8d, word [rax + r15]
lea rdx, [r15 + 2]
add rdx, rax
mov rcx, rbx
call fcn.1400fa480
mov qword [rdi + r12], rax
add rdi, 8
mov rax, qword [rdi]
test rax, rax
jne 0x1400fad60
mov rbp, qword [rsp + 0x38]
mov rax, rbx
xchg qword [rbp], rax
cmp rax, rbx
jne 0x1400fadfb
cmp byte [rsp + 0x98], 0
je 0x1400fadfb
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
add r13, 0x20
cmp dword [r13 - 8], 0
jne 0x1400fac10
mov rbp, qword [rsp + 0x78]
mov r12, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov r9d, dword ds:[rsp + 0xa8]
lea rax, [rsp + 0xa8]
lea r8, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x48]
mov rcx, 0xffffffffffffffff
call qword [sym.imp.ntdll.dll_NtProtectVirtualMemory]
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x58]
add rsp, 0x80
pop r15
ret
xor eax, eax
add rsp, 0x80
pop r15
ret