Function at 0x180037480
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, 0x445a87fdd1080c7e
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, 0xb54d5361b2879469
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x80], rax
movabs rax, 0xd0557eb81585dac4
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x78], rax
movabs rax, 0xcfc0904e96d67495
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x70], rax
movabs rax, 0x1ceeee01cdf28acc
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x68], rax
movabs rax, 0x952e7f65687b670a
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [r11 - 0x60], rax
movabs rax, 0x2334c284a561622b
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x50], rax
movabs rax, 0xc6343b319ce2fa00
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x58], rax
movabs rax, 0xbe3237822ff6b9ad
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x60], rax
movabs rax, 0xbda5e92fdab306fa
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x68], rax
movabs rax, 0x73879d68a19ee58f
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x70], rax
movabs rax, 0x952e7f65687b6764
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 [0x1800e83d0]
xorps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x30], xmm1
test rax, rax
jne 0x18003774f
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 0x180037708
mov r10d, dword [rdi + 0x18]
test r10d, r10d
je 0x180037708
mov esi, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
mov r9d, 0xeb52f911
lea rax, [rsi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx eax, byte [r8]
inc r8
test al, al
je 0x180037703
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 0x1800376d0
cmp r9d, 0x6861cb1c
je 0x180037791
test r10d, r10d
jne 0x1800376b0
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x18003771e
cmp qword [rax + 0x30], 0
jne 0x180037680
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 [0x1800e83d0], rax
mov qword gs:[0x130], rax
lea rcx, [rsp + 0x20]
mov rax, qword [0x1800c1210]
mov qword gs:[0x128], rax
call fcn.1800bfb20
test rax, rax
je 0x180037783
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 0x180037720