Function at 0x18008aea0
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xa0
mov rax, qword [0x180152040]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov r13, rcx
xor esi, esi
mov rax, qword [0x1803f1f90]
test rax, rax
je 0x18008aeec
mov rax, qword [rax + 0x98]
jmp 0x18008aeef
mov rax, rsi
cmp qword [rax + 0x48], rsi
jne 0x18008aefa
call fcn.180042e00
call fcn.180044030
call fcn.18001cae0
call fcn.18005d130
cmp byte [0x1803f10b0], sil
je 0x18008b1a1
mov eax, dword [0x18013b6dc]
mov dword [rbp - 0x39], eax
movzx eax, word [0x18013b6e0]
mov word [rbp - 0x35], ax
mov byte [rbp - 0x39], 0x4c
xor byte [rbp - 0x38], 0x34
xor byte [rbp - 0x37], 0x35
xor byte [rbp - 0x36], 0x36
xor al, 0x37
mov byte [rbp - 0x35], al
xor byte [rbp - 0x34], 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1f], xmm1
lea rax, [rbp - 0x39]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], sil
jne 0x18008af60
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0xf]
call fcn.180006f30
mov rax, qword [0x1803f72e8]
mov rcx, qword [rax + 0xd0]
add rcx, 0x20
lea rdx, [rbp + 0xf]
call fcn.180090b40
mov rdx, qword [rbp + 0x27]
cmp rdx, 0xf
jbe 0x18008afcc
inc rdx
mov rcx, qword [rbp + 0xf]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008afc7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008b0b7
call fcn.1800fed90
mov rax, qword [0x1803f1f90]
cvttss2si r8d, dword [rax + 0xd4]
lea r9, [rbp + 0xc]
test r8d, r8d
jns 0x18008b030
neg r8d
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18008aff0
dec r9
mov byte [r9], 0x2d
jmp 0x18008b05a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18008b030
lea r8, [rbp + 0xc]
mov rdx, r9
lea rcx, [rbp - 0x31]
call fcn.180093c20
mov rax, qword [0x1803f72e8]
mov rcx, qword [rax + 0xd0]
add rcx, 0x40
lea rdx, [rbp - 0x31]
call fcn.180090b40
mov rdx, qword [rbp - 0x19]
cmp rdx, 0xf
jbe 0x18008b0c3
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008b0be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008b0be
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800fed90
mov rax, qword [0x1803f7338]
mov r15d, dword [rax + 0x60]
lea rax, [rbp - 9]
mov qword [rbp - 0x39], rax
mov rdi, qword [0x1803f72e8]
xorps xmm0, xmm0
movdqu xmmword [rbp - 9], xmm0
mov qword [rbp + 7], rsi
mov rdx, qword [rdi + 0xd8]
sub rdx, qword [rdi + 0xd0]
sar rdx, 5
test rdx, rdx
je 0x18008b16b
lea rcx, [rbp - 9]
call fcn.1800157f0
lea rax, [rbp - 9]
mov qword [rbp - 0x11], rax
mov r14, qword [rdi + 0xd8]
mov rdi, qword [rdi + 0xd0]
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
mov rbx, qword [rbp - 9]
mov qword [rbp + 0xf], rbx
mov qword [rbp + 0x17], rbx
lea rax, [rbp - 9]
mov qword [rbp + 0x1f], rax
cmp rdi, r14
je 0x18008b15c
nop
mov rdx, rdi
mov rcx, rbx
call fcn.180014650
add rbx, 0x20
mov qword [rbp + 0x17], rbx
add rdi, 0x20
cmp rdi, r14
jne 0x18008b140
mov rdx, rbx
mov rcx, rbx
call fcn.180015360
mov qword [rbp - 1], rbx
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
mov qword [rbp - 0x21], rsi
mov qword [rbp - 0x19], rsi
mov r8d, 9
lea rdx, str.watermark
lea rcx, [rbp - 0x31]
call fcn.180006f30
nop
mov r9d, r15d
lea r8, [rbp - 9]
lea rdx, [rbp - 0x31]
call fcn.180011e90
call fcn.180089f10
xorps xmm0, xmm0
movups xmmword [rbp + 0xf], xmm0
lea rax, [rbp + 0x5f]
movabs r15, 0xff00ff00ff00ff00
mov qword [rbp + 0x17], r15
mov qword [rbp + 0x1f], rax
mov rdi, qword [rax]
xor rdi, r15
mov qword [rbp + 0xf], rdi
movups xmmword [rbp - 9], xmm0
lea r12, [rbp + 0x5f]
mov qword [rbp - 1], r15
mov qword [rbp + 7], r12
mov qword [rbp - 9], r15
mov qword [r12], rsi
mov ecx, esi
lea r14, [0x180092330]
lea rbx, [0x180000000]
mov rax, qword [0x1803f5c00]
test rax, rax
je 0x18008b22d
mov rdx, rsi
cmp rax, r14
je 0x18008b21c
inc ecx
mov edx, ecx
mov rax, qword [rbx + rcx*8 + 0x3f5c00]
test rax, rax
jne 0x18008b204
jmp 0x18008b22d
mov r9, qword [rbx + rdx*8 + 0x3f3300]
test r9, r9
jne 0x18008b310
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r9, rax
test rax, rax
jne 0x18008b256
mov r9, rsi
jmp 0x18008b2ef
mov rax, r14
mov rcx, r9
mov edx, 3
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x18008b261
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x1803f6ed0]
mov qword [rbx + rax*8 + 0x3f5c00], r14
mov qword [rbx + rax*8 + 0x3f3300], r9
inc rax
mov qword [0x1803f6ed0], rax
lea rcx, [0x18006a5c0]
call r9
nop
mov qword [r12], rsi
cmp byte [r13 + 0x32], 0
je 0x18008b32e
mov rcx, r13
call fcn.18008a160
call fcn.18001ec00
mov rcx, qword [r13 + 0x98]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [r13 + 0xa8]
mov edx, 1
call qword [rax + 0x108]
mov rcx, qword [r13 + 0x98]
mov rax, qword [rcx]
lea r8, [r13 + 0xb4]
mov rdx, qword [r13 + 0xa8]
call qword [rax + 0x190]
mov rax, qword [0x1803f1f90]
mov rax, qword [rax + 0x4b10]
mov rcx, qword [rax]
add rcx, 0x48
cmp byte [rcx], 0
cmove rcx, rsi
call fcn.180042390
mov rcx, qword [r13 + 0xa0]
mov rax, qword [rcx]
cmp byte [0x1803f1110], 0
setne sil
xor r8d, r8d
mov edx, esi
call qword [rax + 0x40]
nop
xor rdi, r15
lea rax, [rbp + 0x5f]
mov qword [rax], rdi
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1800fed70
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret