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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x180178b98]
movaps xmmword [rsp + 0x50], xmm6
movss xmm6, dword [0x1801737ec]
test rax, rax
jne 0x18001dc07
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov r11, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x18001dbe8
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x18001dbe8
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r8d
mov edx, 0xd5a38f17
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001dbe3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001dbc0
cmp edx, 0xc88dd967
je 0x18001dca0
test r8d, r8d
jne 0x18001dba0
mov rax, qword [r11]
mov r11, rax
cmp rax, rsi
je 0x18001dbfe
cmp qword [rax + 0x30], 0
jne 0x18001db70
xor eax, eax
mov qword [0x180178b98], rax
mov ecx, 0xa0
call rax
test ax, ax
je 0x18001dc1b
mulss xmm6, dword [0x18012c59c]
cmp byte [0x1801737ea], 0
je 0x18001e00b
mov qword [rsp + 0x80], r13
movabs rcx, 0xd80958fc74e988a6
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], r15
movaps xmmword [rsp + 0x40], xmm7
call fcn.180040870
mov r14, qword [0x180177318]
xor r8d, r8d
mov edx, eax
movabs rcx, 0x997abd671d25ca0b
mov ebx, eax
call fcn.1800409e0
test eax, eax
je 0x18001dc92
xor r8d, r8d
mov edx, ebx
movabs rcx, 0x9a9112a0fe9a4713
call fcn.1800409e0
mov r14, qword [0x180177338]
mov ebx, eax
lea rax, [r14 + 0x30]
test rax, rax
je 0x18001dcbc
mov r13, qword [rax]
jmp 0x18001dcbf
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x18001dc00
xor r13d, r13d
cmp byte [0x1801737e9], 0
movsd xmm7, qword [r14 + 0x90]
mov r15d, dword [r14 + 0x98]
movsd qword [rbp - 0x40], xmm7
mov dword [rbp - 0x38], r15d
je 0x18001dcf8
xor r9d, r9d
xor r8d, r8d
mov edx, ebx
movabs rcx, 0xea1c610a04db6bbb
call fcn.180041120
xor r9d, r9d
xor r8d, r8d
mov edx, ebx
movabs rcx, 0x1a9205c1b9ee827f
call fcn.180041120
mov r8d, 1
mov edx, ebx
movabs rcx, 0x428ca6dbd1094446
call fcn.180040d30
mov rax, qword [0x180177300]
movsd xmm0, qword [rax + 0x40]
mov eax, dword [rax + 0x48]
mov dword [rbp - 0x28], eax
mov rax, qword [0x180178ab0]
movsd qword [rbp - 0x30], xmm0
test rax, rax
jne 0x18001de07
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x18001dde8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x18001dde8
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0xb538e92c
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001dde3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001ddc0
cmp edx, 0x94d0883c
je 0x18001de6f
test r8d, r8d
jne 0x18001dda0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18001ddfe
cmp qword [rax + 0x30], 0
jne 0x18001dd70
xor eax, eax
mov qword [0x180178ab0], rax
mov ecx, 0x57
call rax
test ax, ax
je 0x18001de8d
movss xmm0, dword [rbp - 0x30]
movss xmm4, dword [rbp - 0x40]
movss xmm1, dword [rbp - 0x2c]
movss xmm5, dword [rbp - 0x3c]
mulss xmm0, xmm6
mulss xmm1, xmm6
addss xmm4, xmm0
movss xmm0, dword [rbp - 0x28]
mulss xmm0, xmm6
movss xmm6, dword [rbp - 0x38]
addss xmm5, xmm1
addss xmm6, xmm0
movsd xmm1, qword [rbp - 0x40]
movss xmm1, xmm4
movss dword [rbp - 0x38], xmm6
mov r15d, dword [rbp - 0x38]
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm5
shufps xmm1, xmm1, 0xe1
movaps xmm7, xmm1
jmp 0x18001dfba
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x18001de00
mov rax, qword [0x180178af0]
test rax, rax
jne 0x18001df53
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x18001df34
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x18001df34
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x56c54f1a
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001df2f
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x18001df10
cmp edx, 0x31f74072
je 0x18001df9a
test r8d, r8d
jne 0x18001def0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18001df4a
cmp qword [rax + 0x30], 0
jne 0x18001dec0
xor eax, eax
mov qword [0x180178af0], rax
mov ecx, 0x53
call rax
movss xmm4, dword [rbp - 0x40]
movss xmm5, dword [rbp - 0x3c]
test ax, ax
je 0x18001dfb5
movss xmm0, dword [rbp - 0x30]
movss xmm1, dword [rbp - 0x2c]
mulss xmm0, xmm6
mulss xmm1, xmm6
subss xmm4, xmm0
movss xmm0, dword [rbp - 0x28]
mulss xmm0, xmm6
movss xmm6, dword [rbp - 0x38]
subss xmm5, xmm1
subss xmm6, xmm0
jmp 0x18001de49
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x18001df4c
movss xmm6, dword [rbp - 0x38]
movaps xmm3, xmm6
movaps xmm2, xmm5
movaps xmm1, xmm4
call fcn.180041230
movsd qword [r14 + 0x90], xmm7
mov dword [r14 + 0x98], r15d
mov r14, qword [rsp + 0x88]
movsd qword [r13 + 0x50], xmm7
movaps xmm7, xmmword [rsp + 0x40]
mov dword [r13 + 0x58], r15d
mov r15, qword [rsp + 0x90]
mov r13, qword [rsp + 0x80]
mov byte [0x180178b39], 1
jmp 0x18001e0ab
cmp byte [0x180178b39], 0
je 0x18001e0ab
movabs rcx, 0xd80958fc74e988a6
call fcn.180040870
xor r8d, r8d
mov edx, eax
movabs rcx, 0x997abd671d25ca0b
mov ebx, eax
call fcn.1800409e0
test eax, eax
je 0x18001e057
xor r8d, r8d
mov edx, ebx
movabs rcx, 0x9a9112a0fe9a4713
call fcn.1800409e0
mov ebx, eax
cmp byte [0x1801737e9], 0
je 0x18001e078
xor r9d, r9d
mov edx, ebx
movabs rcx, 0xea1c610a04db6bbb
lea r8d, [r9 + 1]
call fcn.180041120
xor r9d, r9d
mov edx, ebx
movabs rcx, 0x1a9205c1b9ee827f
lea r8d, [r9 + 1]
call fcn.180041120
xor r8d, r8d
mov edx, ebx
movabs rcx, 0x428ca6dbd1094446
call fcn.180040d30
mov byte [0x180178b39], 0
mov rbx, qword [rsp + 0x98]
movaps xmm6, xmmword [rsp + 0x50]
add rsp, 0x60
pop rdi
pop rsi
pop rbp
ret