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

Disassembly:
push rbx
push rdi
push r13
sub rsp, 0x100
mov rax, qword [0x1402bb040]
xor rax, rsp
mov qword [rsp + 0xd0], rax
xor edi, edi
mov rbx, rdx
mov r13, rcx
test rdx, rdx
jne 0x14018f635
mov eax, 0xc000000d
jmp 0x14018f9f6
mov rax, qword gs:[0x30]
mov ecx, dword [rax + 0x48]
cmp dword [0x1402c91cc], ecx
je 0x14018f653
mov eax, 0xc0000476
jmp 0x14018f9f6
mov eax, dword [0x1402c91c8]
nop dword [rax]
test eax, eax
jne 0x14018f9f6
test r13, r13
je 0x14018f687
mov rcx, qword [r13]
test rcx, rcx
jne 0x14018f691
mov dword [0x1402c91c8], 0xc0000008
mov qword [0x1402ca220], r13
mov eax, 0xc0000008
jmp 0x14018f9f6
mov qword ss:[rsp + 0x130], rbp
mov qword [rsp + 0xf8], rsi
mov rsi, rdi
mov qword [rsp + 0xf0], r12
mov qword [rsp + 0xe8], r14
mov r14, rdi
mov qword [rsp + 0xe0], r15
call fcn.14018f120
mov rcx, rbx
mov r15, rax
call fcn.14018f120
mov qword [rsp + 0x38], rax
cmp rax, r15
jne 0x14018f6eb
cmp dword [0x1402c6258], edi
jne 0x14018f9c5
jmp 0x14018f974
mov ecx, 0x30
call fcn.1401e610c
mov rcx, r15
mov r14, rax
call fcn.14018ef20
mov rsi, rax
test rax, rax
jne 0x14018f717
mov edi, 0xc0000017
jmp 0x14018f974
xor eax, eax
mov r8, r15
mov qword [rsi + 0x40], rax
mov rbp, rsi
mov r12d, edi
lea rax, [rsp + 0x88]
mov qword [rsp + 0x60], rdi
test rbp, rbp
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x90]
mov dword [rsp + 0x68], edi
lea rax, [rsp + 0x30]
mov qword [rsp + 0x88], rdi
cmovne rcx, rbp
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x30], edi
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [0x1402e21d0]
mov rbx, r8
test r8, r8
jne 0x14018f78b
mov ecx, 0xd
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r8, rdi
jmp 0x14018f7b1
movzx eax, byte [r8]
mov r9, r8
shl rax, 4
mov r8, rcx
add rax, rdx
lea rcx, [rsp + 0x50]
mov rdx, rax
mov rax, qword [rax + 8]
call qword [case.0x14013f76a.0]
mov r8, rax
movsxd rax, dword [rsp + 0x30]
mov edx, r8d
sub rax, rbx
sub edx, r15d
add rax, r8
add rbp, rax
movzx eax, bpl
sub al, sil
shl al, 3
movzx ecx, al
xor cl, dl
and cl, 7
xor cl, al
mov eax, r12d
inc r12d
mov byte [rax + rsi + 0x40], cl
cmp r12d, 8
jae 0x14018f857
movzx ecx, byte [rbx]
cmp cl, 0xeb
je 0x14018f857
lea eax, [rcx + 0x3e]
cmp al, 0x27
ja 0x14018f808
movabs r9, 0x8040000403
bt r9, rax
jb 0x14018f857
cmp cl, 0xf3
jne 0x14018f84c
cmp byte [rbx + 1], 0xc3
je 0x14018f857
cmp cl, 0x26
je 0x14018f834
cmp cl, 0x2e
je 0x14018f834
nop dword [rax]
cmp cl, 0x36
je 0x14018f834
cmp cl, 0x3e
je 0x14018f834
cmp cl, 0x64
je 0x14018f834
cmp cl, 0x65
jne 0x14018f842
cmp byte [rbx + 1], 0xff
jne 0x14018f842
cmp byte [rbx + 2], 0x25
nop
je 0x14018f857
cmp edx, 5
jae 0x14018f88f
jmp 0x14018f726
cmp cl, 0xff
jne 0x14018f813
cmp byte [rbx + 1], 0x25
jmp 0x14018f83e
cmp edx, 5
jae 0x14018f885
nop dword [rax]
mov rcx, r8
call fcn.14018e8e0
test eax, eax
je 0x14018f966
cdqe
add r8, rax
mov rdx, r8
sub edx, r15d
cmp edx, 5
jb 0x14018f860
cmp r12d, 8
ja 0x14018f966
lea r12, [rsi + 0x1e]
cmp rbp, r12
jbe 0x14018f899
int3
mov byte [rsi + 0x3e], dl
lea rcx, [rsi + 0x20]
mov ebx, edx
sub bpl, sil
mov r8d, edx
mov rdx, r15
mov byte [rsi + 0x1e], bpl
call fcn.14020c7e0
cmp rbx, 0x19
jbe 0x14018f8c5
mov edi, 0xc0000008
jmp 0x14018f974
movzx edx, byte [rsi + 0x1e]
lea rax, [rbx + r15]
mov qword [rsi + 0x48], rax
add rdx, rsi
mov rax, qword [rsp + 0x38]
mov qword [rsi + 0x50], rax
mov eax, esi
lea rcx, [rdx + 6]
mov word [rdx], 0x25ff
sub eax, ecx
lea rcx, [rdx + 6]
add eax, 0x48
mov dword [rdx + 2], eax
mov rdx, r12
call fcn.14018e880
lea rax, [rsp + 0x34]
mov dword [rsp + 0x34], edi
mov r9d, 0x40
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x40]
mov qword [rsp + 0x48], r15
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x40], rbx
mov rcx, 0xffffffffffffffff
call qword [sym.imp.ntdll.dll_NtProtectVirtualMemory]
test eax, eax
jns 0x14018f939
mov edi, eax
jmp 0x14018f974
mov dword [r14 + 8], edi
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x20], rsi
mov qword [r14 + 0x18], r15
mov eax, dword [rsp + 0x34]
mov dword [r14 + 0x28], eax
mov rax, qword [0x1402ca238]
mov qword [r14], rax
xor eax, eax
mov qword [0x1402ca238], r14
jmp 0x14018f9ce
cmp dword [0x1402c6258], 0
mov edi, 0xc0000141
jne 0x14018f97f
mov dword [0x1402c91c8], edi
test rsi, rsi
je 0x14018f9af
xorps xmm0, xmm0
mov r9, rsi
movups xmmword [rsi], xmm0
and r9, 0xffffffffffff0000
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x50], xmm0
mov r8, qword [r9 + 0x10]
mov qword [rsi + 0x48], r8
mov qword [r9 + 0x10], rsi
test r14, r14
je 0x14018f9c5
mov edx, 0x30
mov rcx, r14
call fcn.1401e615c
mov qword [0x1402ca220], r13
mov eax, edi
mov r14, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x130]
mov r15, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1401e5e40
add rsp, 0x100
pop r13
pop rdi
pop rbx
ret