Function at 0x180115080
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
vmovaps xmmword [rax - 0x38], xmm6
vmovaps xmmword [rax - 0x48], xmm7
movzx ebx, r8b
vmovaps xmm6, xmm1
mov rdx, qword [0x1802675f0]
cmp rdx, qword [0x1802675f8]
je 0x1801150cc
mov qword [rdx], rcx
add qword [0x1802675f0], 8
jmp 0x1801150d5
lea r8, [rbp + 0x67]
call fcn.180149d90
xor r15d, r15d
test bl, bl
jne 0x1801151c1
mov rcx, qword [rbp + 0x67]
movzx edx, cl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
movzx eax, byte [rbp + 0x68]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x69]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x6a]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x6b]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x6c]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x6d]
xor rdx, rax
imul rdx, r8
movzx eax, byte [rbp + 0x6e]
xor rdx, rax
imul rdx, r8
and rdx, qword [0x180267690]
add rdx, rdx
mov r8, qword [0x180267678]
mov rax, qword [r8 + rdx*8 + 8]
cmp rax, qword [0x180267668]
je 0x180115189
mov rdx, qword [r8 + rdx*8]
cmp rcx, qword [rax + 0x10]
je 0x18011518c
cmp rax, rdx
je 0x180115189
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x180115178
jmp 0x18011518c
mov rax, r15
test rax, rax
je 0x1801151c1
lea r8, [rbp + 0x67]
lea rdx, [rbp - 0x19]
call fcn.180145e20
mov rcx, qword [rax]
vmovss xmm0, dword [rcx + 0x18]
vcomiss xmm0, xmm6
jbe 0x1801151c1
lea r8, [rbp + 0x67]
lea rdx, [rbp - 9]
call fcn.180145e20
mov rcx, qword [rax]
vmovss xmm6, dword [rcx + 0x18]
mov rbx, qword [0x1802663c0]
lea rcx, [rbx + 0x4b58]
vmovss xmm1, dword [rbx + 0x3994]
vmovss xmm0, dword [rbx + 0x3998]
mov dword [rbp - 0x29], 0x11
vmovss dword [rbp - 0x25], xmm1
vmovss dword [rbp - 0x21], xmm0
lea rdx, [rbp - 0x29]
call fcn.180060ba0
mov qword [rbx + 0x3994], r15
call fcn.18007ca10
vmovss dword [rbp + 0x7f], xmm0
vmovss dword [rbp + 0x83], xmm6
mov rdi, qword [rbp + 0x67]
mov rcx, qword [0x1802663c0]
mov rax, qword [rcx + 0x40b0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40b0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, rdi
call fcn.180044c80
mov esi, eax
mov rdx, qword [rbx]
cmp dword [rdx + 0x4108], eax
jne 0x18011526b
mov r8, rdi
mov edx, 0xc
mov ecx, eax
call fcn.180060220
mov dword [rsp + 0x20], 0x40000018
xor r9d, r9d
lea r8, [rbp + 0x7f]
mov edx, esi
mov rcx, rdi
call fcn.18004cf60
movzx r14d, al
vmovss xmm0, dword [0x18026b964]
vmulss xmm6, xmm0, dword [0x18023bce8]
mov rbx, qword [0x1802663c0]
lea rcx, [rbx + 0x4b58]
vmovss xmm1, dword [rbx + 0x3984]
vmovss xmm0, dword [rbx + 0x3988]
mov dword [rbp - 0x29], 0xe
vmovss dword [rbp - 0x25], xmm1
vmovss dword [rbp - 0x21], xmm0
lea rdx, [rbp - 0x29]
call fcn.180060ba0
vmovss dword [rbx + 0x3984], xmm6
mov dword [rbx + 0x3988], r15d
mov rax, qword [rbp + 0x67]
cmp byte [rax], 0x23
je 0x1801154cd
mov rbx, qword [0x1802663c0]
mov rax, qword [rbx + 0x40b0]
vmovss xmm0, dword [rax + 0x11c]
vsubss xmm1, xmm0, dword [rax + 0x2c]
vaddss xmm6, xmm1, dword [rax + 0x9c]
vmovss xmm0, dword [rax + 0x118]
vsubss xmm1, xmm0, dword [rax + 0x28]
vaddss xmm7, xmm1, dword [rax + 0x98]
mov dword [rbp - 9], r15d
vmovups xmm0, xmmword [rbx + 0x3a28]
vmovups xmmword [rbp - 5], xmm0
lea rcx, [rbx + 0x4b48]
lea rdx, [rbp - 9]
call fcn.180060ce0
cmp dword [rbx + 0x4b44], r15d
je 0x18011535e
vmovups xmm0, xmmword [0x1802617a4]
vmovups xmmword [rbx + 0x3a28], xmm0
mov rbx, qword [0x180261838]
mov qword [rbp + 0x7f], rbx
mov rdi, qword [0x1802663c0]
mov rsi, rbx
test rbx, rbx
jne 0x180115396
mov rbx, qword [rdi + 0x48]
mov rsi, rbx
test rbx, rbx
jne 0x180115392
mov rax, qword [rdi + 0x38]
mov rcx, qword [rax + 0x60]
mov rbx, qword [rcx]
mov rsi, rbx
mov qword [rbp + 0x7f], rbx
lea rcx, [rdi + 0x4b68]
lea rdx, [rbp + 0x7f]
call fcn.180061030
mov rcx, rbx
call fcn.180053280
mov rcx, qword [rdi + 0x40b0]
mov rcx, qword [rcx + 0x2b0]
mov rax, qword [rsi + 0x40]
mov rdx, qword [rax + 8]
cmp qword [rcx + 0x70], rdx
je 0x1801153d3
mov qword [rcx + 0x70], rdx
call fcn.180069c60
vaddss xmm2, xmm6, dword [0x18023bc20]
mov rcx, qword [0x1802663c0]
mov rax, qword [rcx + 0x40b0]
mov byte [rax + 0xcc], 1
mov rax, qword [rcx + 0x40b0]
vmovss xmm0, dword [rax + 0x2c]
vsubss xmm1, xmm0, dword [rax + 0x9c]
vaddss xmm2, xmm1, xmm2
vmovss dword [rax + 0x11c], xmm2
mov byte [rax + 0x159], 1
mov rdx, qword [rbp + 0x67]
lea rcx, [rbp - 9]
call fcn.180113ce0
nop
cmp qword [rax + 0x18], 0xf
jbe 0x18011542f
mov rax, qword [rax]
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rax
call fcn.18007d850
nop
lea rcx, [rbp - 9]
call fcn.1800a0370
call fcn.180053340
mov ecx, 1
call fcn.180045a60
mov rcx, qword [0x1802663c0]
mov rax, qword [rcx + 0x40b0]
mov byte [rax + 0xcc], 1
mov rax, qword [rcx + 0x40b0]
vmovss xmm0, dword [rax + 0x28]
vsubss xmm1, xmm0, dword [rax + 0x98]
vaddss xmm3, xmm1, xmm7
vmovss xmm2, dword [rax + 0x2c]
vsubss xmm0, xmm2, dword [rax + 0x9c]
vaddss xmm1, xmm0, xmm6
vmovss dword [rax + 0x118], xmm3
vmovss dword [rax + 0x11c], xmm1
mov byte [rax + 0x159], 1
vxorps xmm2, xmm2, xmm2
vmovss xmm0, dword [0x18026b964]
vmulss xmm1, xmm0, dword [0x18023bd0c]
vunpcklps xmm2, xmm2, xmm1
vmovq rcx, xmm2
call fcn.180113e90
movzx eax, r14b
mov rbx, qword [rsp + 0xc8]
vmovaps xmm6, xmmword [rsp + 0x80]
vmovaps xmm7, xmmword [rsp + 0x70]
add rsp, 0x90
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret