Function at 0x1401d8e50
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x130
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
mov rsi, rcx
mov dword [rsp + 0x20], 0x44fa0000
mov dword [rsp + 0x24], 0x451c4000
mov dword [rsp + 0x28], 0x453b8000
mov rax, qword [0x140302380]
mov edx, dword [rax + 0x3e8]
dec edx
movss xmm9, dword [rsp + rdx*4 + 0x20]
movss dword [rsp + 0x40], xmm9
mov dword [rsp + 0x44], 0x3e800000
mov dword [rsp + 0x48], 0x43820000
mov dword [rsp + 0x4c], 0x44c80000
mov qword [rsp + 0x50], 1
xor r12d, r12d
mov byte [rsp + 0x58], 1
movss xmm0, dword [0x140302828]
movss dword [rsp + 0x5c], xmm0
movss xmm1, dword [0x14030282c]
movss dword [rsp + 0x60], xmm1
movss xmm0, dword [0x140302830]
movss dword [rsp + 0x64], xmm0
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r12
mov byte [rsp + 0x78], r12b
mov dword [rsp + 0x7c], r12d
movss xmm1, dword [0x1402c82f0]
call fcn.1401cc040
mov rbx, rax
test rax, rax
je 0x1401d9286
cmp byte [rax + 0xa7], r12b
je 0x1401d9286
mov rcx, rax
call fcn.14006b660
test al, al
jne 0x1401d9286
cmp byte [rbx + 0xa5], r12b
je 0x1401d9286
cmp byte [rbx + 0xa4], r12b
je 0x1401d9286
cmp byte [rsi + 0x33], r12b
je 0x1401d9286
mov rdi, qword [0x140302380]
mov al, 0x76
mov dword [rsp + 0x20], 0x72786576
mov dword [rsp + 0x24], 0x6d697432
mov dword [rsp + 0x28], 0x7265
movzx eax, al
mov edx, 0x811c9dc5
xor eax, edx
imul edx, eax, 0x1000193
lea rcx, [rsp + 0x21]
call fcn.14002b8c0
mov edx, eax
mov rcx, qword [rdi + 0x180]
mov rax, qword [rdi + 0x188]
cmp rcx, rax
je 0x1401d8fe2
nop dword [rax]
cmp dword [rcx + 0x30], edx
je 0x1401d9286
add rcx, 0x50
cmp rcx, rax
jne 0x1401d8fd0
movss xmm1, dword [rsi + 0x164]
addss xmm1, dword [0x1402c8278]
movss xmm0, dword [0x140302194]
comiss xmm0, xmm1
jbe 0x1401d9286
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rbp - 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rbp - 0x40], xmm1
movaps xmm0, xmmword [rsp + 0x60]
movaps xmmword [rbp - 0x30], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movaps xmmword [rbp - 0x20], xmm1
lea r9, [rbp - 0x50]
mov r8, rbx
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1403022d8]
call fcn.140165680
mov ecx, dword [rsi + 0x198]
test ecx, ecx
je 0x1401d906d
sub ecx, 1
je 0x1401d9066
sub ecx, 1
je 0x1401d9058
cmp ecx, 1
je 0x1401d905f
mov eax, 5
jmp 0x1401d9072
mov eax, 6
jmp 0x1401d9072
mov eax, 4
jmp 0x1401d9072
mov eax, 3
cmp dword [rbp - 0x74], eax
jl 0x1401d9286
movss xmm3, dword [0x140302828]
movss xmm1, dword [0x14030282c]
movss xmm2, dword [0x140302830]
movss xmm6, dword [rbp - 0x78]
movss xmm7, dword [rbp - 0x7c]
movss xmm8, dword [rbp - 0x80]
ucomiss xmm8, xmm3
jp 0x1401d90b9
jne 0x1401d90b9
ucomiss xmm7, xmm1
jp 0x1401d90b9
jne 0x1401d90b9
ucomiss xmm6, xmm2
jp 0x1401d90b9
je 0x1401d90e9
movss xmm0, dword [0x1402c833c]
comiss xmm8, xmm0
jbe 0x1401d90e9
comiss xmm7, xmm0
jbe 0x1401d90e9
comiss xmm6, xmm0
jbe 0x1401d90e9
movss xmm0, dword [0x1402c8078]
comiss xmm0, xmm8
jbe 0x1401d90e9
comiss xmm0, xmm7
jbe 0x1401d90e9
comiss xmm0, xmm6
ja 0x1401d9103
ucomiss xmm8, xmm3
jp 0x1401d9103
jne 0x1401d9103
ucomiss xmm7, xmm1
jp 0x1401d9103
jne 0x1401d9103
ucomiss xmm6, xmm2
jp 0x1401d9103
je 0x1401d9286
mov rax, qword [0x140302380]
movsd xmm0, qword [rax + 8]
movss xmm1, dword [rbx + 8]
movsd qword [rsp + 0x20], xmm0
subss xmm1, xmm0
movss xmm2, dword [rbx + 0x10]
subss xmm2, dword [rax + 0x10]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1401d9145
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x1401d914d
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [rbx + 0xd4]
comiss xmm1, dword [0x1402c81d0]
jbe 0x1401d9166
movss xmm1, dword [0x1402c8110]
mulss xmm1, dword [0x1402c7c40]
subss xmm9, xmm1
comiss xmm9, xmm0
jb 0x1401d9286
call fcn.140146b10
mov r15, rax
mov rcx, qword [0x1403022c0]
cmp byte [rcx + 0x6c], r12b
jne 0x1401d9286
mov r14, qword [0x140302380]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r12
mov rdx, qword [0x140305598]
sub rdx, qword [0x140305590]
je 0x1401d91ea
lea rcx, [rbp - 0x70]
call fcn.140012ed0
mov rdi, qword [rbp - 0x70]
mov rbx, qword [0x140305598]
mov rdx, qword [0x140305590]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov qword [rbp - 0x68], rax
lea rdx, [rbp - 0x70]
lea rcx, [r14 + 0x170]
call fcn.140062670
test al, al
jne 0x1401d9286
mov rax, qword [0x1403022e0]
cmp dword [rax + 0x15c], 1
je 0x1401d9286
mov rax, qword [0x1403027b8]
test rax, rax
jne 0x1401d923d
mov ecx, 0x36e490
call fcn.14022f7fc
mov qword [rsp + 0x30], rax
mov rcx, rax
call fcn.1401debe0
nop
mov qword [0x1403027b8], rax
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm6
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.1401de270
mov r8, qword [rax]
mov edx, 3
mov rcx, r15
call fcn.14006eb00
test al, al
je 0x1401d9286
movss xmm0, dword [0x140302194]
movss dword [rsi + 0x164], xmm0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret