Function at 0x18003ac10
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push r12
push r13
push r15
sub rsp, 0x90
movabs rax, 0x360648a0e0fa97b8
movzx r15d, r8b
mov qword [rsp + 0xc8], rax
mov r12d, edx
mov rax, qword [rsp + 0xc8]
mov r13d, ecx
mov qword [rsp + 0x20], rax
movabs rax, 0x4ed2ea703005e9e3
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x80], rax
movabs rax, 0x2ad26f792eca7006
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x78], rax
movabs rax, 0x82c98c73bbf84d13
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x70], rax
movabs rax, 0x20dd36d48e58fa52
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x68], rax
movabs rax, 0xfaf5f814c5d6daa0
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x60], rax
movabs rax, 0x51680dd99493f9ed
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x50], rax
movabs rax, 0x3dab82201e60878a
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x58], rax
movabs rax, 0x44b5264314b9136f
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x60], rax
movabs rax, 0xf0acf512f79d3f7c
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x68], rax
movabs rax, 0x4fb445bde2349511
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x70], rax
movabs rax, 0xfaf5f814c5d6dace
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
movdqa xmm0, xmmword [rsp + 0x20]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rsp + 0x30]
xorps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm0, xmmword [rsp + 0x40]
mov qword [rsp + 0x78], rax
mov rax, qword [0x1800ebbe0]
xorps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x30], xmm1
test rax, rax
jne 0x18003aedf
mov rax, qword gs:[0x60]
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov rcx, qword [rax + 0x18]
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x28], r14
mov rax, qword [rcx + 0x10]
mov rbp, qword [rax]
mov r14, rbp
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov edi, dword [rax + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x18003ae98
mov r10d, dword [rdi + 0x18]
test r10d, r10d
je 0x18003ae98
mov esi, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
mov r9d, 0x1ba07848
lea rax, [rsi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx eax, byte [r8]
inc r8
test al, al
je 0x18003ae93
nop
movsx ecx, al
lea r8, [r8 + 1]
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
movzx eax, byte [r8 - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test al, al
jne 0x18003ae60
cmp r9d, 0x2e1291a5
je 0x18003af21
test r10d, r10d
jne 0x18003ae40
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x18003aeae
cmp qword [rax + 0x30], 0
jne 0x18003ae10
xor eax, eax
mov r14, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xb0]
mov qword [0x1800ebbe0], rax
mov qword gs:[0x130], rax
lea rcx, [rsp + 0x20]
mov rax, qword [0x1800c4210]
mov qword gs:[0x128], rax
call fcn.1800c21a0
test rax, rax
je 0x18003af13
movzx r8d, r15b
mov edx, r12d
mov ecx, r13d
call rax
add rsp, 0x90
pop r15
pop r13
pop r12
ret
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x18003aeb0