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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0xd0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmm9, xmm3
movaps xmm10, xmm2
lea r14, [rsp + 0xe8]
movabs r15, 0xff00ff00ff00ff00
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], r14
mov rbx, qword [r14]
xor rbx, r15
mov qword [rsp + 0x40], rbx
mov qword [r14], 0
mulss xmm10, dword [0x18001af78]
mulss xmm9, dword [0x18001af78]
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm6, xmm6
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x60], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rax - 0x78], xmm1
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x60]
call fcn.1800021f0
test al, al
je 0x18000d400
xorps xmm0, xmm0
movups xmm3, xmmword [rsp + 0x30]
ucomisd xmm3, xmm0
jp 0x18000d249
je 0x18000d400
movaps xmm2, xmm3
unpckhpd xmm2, xmm3
ucomisd xmm2, xmm0
jp 0x18000d25c
je 0x18000d400
xorps xmm4, xmm4
cvtss2sd xmm4, xmm10
movss xmm5, dword [rsp + 0x110]
comisd xmm3, xmm4
jbe 0x18000d2a5
movaps xmm0, xmm4
subsd xmm0, xmm3
xorps xmm0, xmmword [0x18001b2e0]
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm0
divss xmm7, xmm5
movaps xmm1, xmm7
addss xmm1, xmm10
movaps xmm0, xmm10
addss xmm0, xmm10
comiss xmm1, xmm0
jbe 0x18000d2a5
xorps xmm7, xmm7
comisd xmm4, xmm3
jbe 0x18000d2cb
subsd xmm3, xmm4
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm3
divss xmm7, xmm5
movaps xmm0, xmm7
addss xmm0, xmm10
comiss xmm8, xmm0
jbe 0x18000d2cb
xorps xmm7, xmm7
xorps xmm3, xmm3
cvtss2sd xmm3, xmm9
comisd xmm2, xmm3
jbe 0x18000d30b
movaps xmm0, xmm3
subsd xmm0, xmm2
xorps xmm0, xmmword [0x18001b2e0]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
divss xmm6, xmm5
movaps xmm1, xmm6
addss xmm1, xmm9
movaps xmm0, xmm9
addss xmm0, xmm9
comiss xmm1, xmm0
jbe 0x18000d30b
xorps xmm6, xmm6
comisd xmm3, xmm2
jbe 0x18000d331
subsd xmm2, xmm3
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm2
divss xmm6, xmm5
movaps xmm0, xmm6
addss xmm0, xmm9
comiss xmm8, xmm0
jbe 0x18000d331
xorps xmm6, xmm6
cvttss2si rsi, xmm6
cvttss2si rbp, xmm7
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x18000d3c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x18000d3c6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0x80969097
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x18000d3c1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x18000d3a0
cmp r8d, 0x80fc1bc5
je 0x18000d3cb
test r9d, r9d
jne 0x18000d380
mov rax, qword [rax]
jmp 0x18000d350
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, esi
mov edx, ebp
lea ecx, [r9 + 1]
call r10
mov rbx, qword [rsp + 0x40]
xor rbx, r15
mov qword [r14], rbx
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop rdi
ret