Function at 0x140111640
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb8]
sub rsp, 0x190
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov r14, rcx
mov rax, qword [rcx + 0x90]
movd xmm3, dword [rax + 0x2b0]
cvtdq2ps xmm3, xmm3
movss dword [rsp + 0x50], xmm3
mov dword [rsp + 0x54], 0x3e800000
mov dword [rsp + 0x58], 0x430c0000
mov qword [rsp + 0x5c], 0x44ce4000
xor edi, edi
mov dword [rsp + 0x64], 1
mov byte [rsp + 0x68], 1
movss xmm0, dword [0x1402f1148]
movss dword [rsp + 0x6c], xmm0
movss xmm2, dword [0x1402f114c]
movss dword [rsp + 0x70], xmm2
movss xmm0, dword [0x1402f1150]
movss dword [rsp + 0x74], xmm0
mov qword [rsp + 0x78], rdi
xorps xmm12, xmm12
mov qword [rbp - 0x80], rdi
mov byte [rbp - 0x78], dil
mov dword [rbp - 0x74], edi
movaps xmm1, xmm3
call fcn.1401bc430
mov r15, rax
mov rdx, qword [0x1402f0cc0]
cmp dword [rdx + 0x2b8], edi
jbe 0x140111734
cmp dword [rdx + 0x2b4], edi
je 0x140111ce5
movss xmm0, dword [0x1402f0af0]
comiss xmm0, dword [rdx + 0x2c0]
jb 0x140111ce5
mov eax, dword [rdx + 0x2b0]
test eax, eax
je 0x140111ce5
dec eax
movss xmm0, dword [rdx + 0x30]
comiss xmm0, dword [rdx + rax*4 + 0x2e8]
jb 0x140111ce5
movss xmm0, dword [0x1402b866c]
comiss xmm0, dword [rdx + 0x30]
ja 0x140111ce5
test r15, r15
je 0x140111ce5
cmp byte [r15 + 0xa7], dil
je 0x140111ce5
mov rcx, r15
call fcn.140066ad0
test al, al
jne 0x140111ce5
cmp byte [r15 + 0xa5], dil
je 0x140111ce5
cmp byte [r15 + 0xa4], dil
je 0x140111ce5
movss xmm0, dword [r14 + 0x1a8]
movss xmm1, dword [0x1402b8788]
addss xmm0, xmm1
movss xmm2, dword [0x1402f0ad4]
comiss xmm2, xmm0
jbe 0x140111ce5
movss xmm0, dword [r14 + 0x1ac]
addss xmm0, xmm1
comiss xmm2, xmm0
jbe 0x140111ce5
mov rax, qword [r14 + 0xa0]
mov rbx, qword [0x1402f0cc0]
cmp byte [rax + 0x2b0], dil
je 0x140111874
movdqa xmm0, xmmword [0x1402b9ab0]
movdqu xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x40], 0x61727261
mov dword [rbp - 0x3c], 0x6567
movd eax, xmm0
mov edx, 0x811c9dc5
test al, al
je 0x14011184f
movzx eax, al
xor eax, edx
imul edx, eax, 0x1000193
lea rcx, [rbp - 0x4f]
call fcn.140033860
mov edx, eax
mov rcx, qword [rbx + 0x180]
mov rax, qword [rbx + 0x188]
cmp rcx, rax
je 0x140111874
cmp dword [rcx + 0x30], edx
je 0x140111ce5
add rcx, 0x50
cmp rcx, rax
jne 0x140111862
mov rax, qword [r14 + 0x80]
movss xmm6, dword [0x1402b88c0]
movss xmm7, dword [0x1402b8608]
mov esi, 5
movaps xmm8, xmmword [rbp - 0x80]
movaps xmm9, xmmword [rsp + 0x70]
movaps xmm10, xmmword [rsp + 0x60]
movaps xmm11, xmmword [rsp + 0x50]
cmp byte [rax + 0x2b0], dil
je 0x140111a9d
movaps xmmword [rsp + 0x50], xmm11
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x70], xmm9
movaps xmmword [rbp - 0x80], xmm8
lea r9, [rsp + 0x50]
mov r8, r15
lea rdx, [rbp - 0x30]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
mov ecx, dword [r14 + 0x1d0]
test ecx, ecx
je 0x14011190f
sub ecx, 1
je 0x140111908
sub ecx, 1
je 0x1401118fd
cmp ecx, 1
je 0x140111901
mov eax, esi
jmp 0x140111914
mov eax, 6
jmp 0x140111914
mov eax, 4
jmp 0x140111914
mov eax, 3
cmp dword [rbp + 0x1c], eax
jl 0x140111a96
movss xmm5, dword [0x1402f1148]
movss xmm3, dword [0x1402f114c]
movss xmm4, dword [0x1402f1150]
movss xmm1, dword [rbp + 0x18]
movss xmm0, dword [rbp + 0x14]
movss xmm2, dword [rbp + 0x10]
ucomiss xmm2, xmm5
jp 0x140111959
jne 0x140111959
ucomiss xmm0, xmm3
jp 0x140111959
jne 0x140111959
ucomiss xmm1, xmm4
jp 0x140111959
je 0x140111977
comiss xmm2, xmm6
jbe 0x140111977
comiss xmm0, xmm6
jbe 0x140111977
comiss xmm1, xmm6
jbe 0x140111977
comiss xmm7, xmm2
jbe 0x140111977
comiss xmm7, xmm0
jbe 0x140111977
comiss xmm7, xmm1
ja 0x140111990
ucomiss xmm2, xmm5
jp 0x140111990
jne 0x140111990
ucomiss xmm0, xmm3
jp 0x140111990
jne 0x140111990
ucomiss xmm1, xmm4
jp 0x140111990
je 0x140111a96
call fcn.140139ee0
mov r13, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], dil
jne 0x140111a96
mov r12, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rdi
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x140111a04
lea rcx, [rsp + 0x20]
call fcn.140012e50
mov rdi, qword [rsp + 0x20]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rsp + 0x28], rax
xor edi, edi
lea rdx, [rsp + 0x20]
lea rcx, [r12 + 0x170]
call fcn.140062b20
test al, al
jne 0x140111a96
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x140111a96
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x140111a56
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rbp - 0x70], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp + 0x10]
movsd qword [rbp - 0x70], xmm0
mov eax, dword [rbp + 0x18]
mov dword [rbp - 0x68], eax
lea r8, [rbp - 0x70]
lea rdx, [rsp + 0x40]
call fcn.1401cec00
mov r8, qword [rax]
xor edx, edx
mov rcx, r13
call fcn.140069d30
test al, al
je 0x140111a96
movss xmm0, dword [0x1402f0ad4]
movss dword [r14 + 0x1a8], xmm0
mov rbx, qword [0x1402f0cc0]
mov rax, qword [r14 + 0x88]
cmp byte [rax + 0x2b0], 0
je 0x140111ce5
mov eax, dword [rbx + 0x2b0]
cmp eax, 1
jb 0x140111afe
movss xmm0, dword [rbx + 0x70]
movaps xmm2, xmm0
mulss xmm2, dword [rbx + 0x74]
addss xmm2, xmm0
movaps xmm0, xmmword [0x1402b9880]
movups xmmword [rbp - 0x70], xmm0
mov dword [rbp - 0x60], 0x43910000
dec eax
mulss xmm2, dword [0x1402b81f8]
addss xmm2, dword [rbp + rax*4 - 0x70]
mov rdx, r15
mov rcx, rbx
call fcn.14006ab70
movaps xmm12, xmm0
comiss xmm12, dword [r15 + 0x28]
jb 0x140111ce5
movaps xmmword [rsp + 0x50], xmm11
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x70], xmm9
movaps xmmword [rbp - 0x80], xmm8
lea r9, [rsp + 0x50]
mov r8, r15
lea rdx, [rbp - 0x30]
mov rcx, qword [0x1402f0c18]
call fcn.140157c60
mov ecx, dword [r14 + 0x1d0]
test ecx, ecx
je 0x140111b5e
sub ecx, 1
je 0x140111b57
sub ecx, 1
je 0x140111b63
cmp ecx, 1
jne 0x140111b63
lea esi, [rcx + 5]
jmp 0x140111b63
mov esi, 4
jmp 0x140111b63
mov esi, 3
cmp dword [rbp + 0x1c], esi
jl 0x140111ce5
movss xmm5, dword [0x1402f1148]
movss xmm4, dword [0x1402f114c]
movss xmm3, dword [0x1402f1150]
movss xmm0, dword [rbp + 0x18]
movss xmm1, dword [rbp + 0x14]
movss xmm2, dword [rbp + 0x10]
ucomiss xmm2, xmm5
jp 0x140111ba8
jne 0x140111ba8
ucomiss xmm1, xmm4
jp 0x140111ba8
jne 0x140111ba8
ucomiss xmm0, xmm3
jp 0x140111ba8
je 0x140111bc6
comiss xmm2, xmm6
jbe 0x140111bc6
comiss xmm1, xmm6
jbe 0x140111bc6
comiss xmm0, xmm6
jbe 0x140111bc6
comiss xmm7, xmm2
jbe 0x140111bc6
comiss xmm7, xmm1
jbe 0x140111bc6
comiss xmm7, xmm0
ja 0x140111bdf
ucomiss xmm2, xmm5
jp 0x140111bdf
jne 0x140111bdf
ucomiss xmm1, xmm4
jp 0x140111bdf
jne 0x140111bdf
ucomiss xmm0, xmm3
jp 0x140111bdf
je 0x140111ce5
call fcn.140139ee0
mov r15, rax
mov rcx, qword [0x1402f0bc0]
cmp byte [rcx + 0x6c], 0
jne 0x140111ce5
mov rsi, qword [0x1402f0cc0]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rdi
mov rdx, qword [0x1402f3eb8]
sub rdx, qword [0x1402f3eb0]
je 0x140111c51
lea rcx, [rsp + 0x20]
call fcn.140012e50
mov rdi, qword [rsp + 0x20]
mov rbx, qword [0x1402f3eb8]
mov rdx, qword [0x1402f3eb0]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
lea rax, [rdi + rbx]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x20]
lea rcx, [rsi + 0x170]
call fcn.140062b20
test al, al
jne 0x140111ce5
mov rax, qword [0x1402f0c20]
cmp dword [rax + 0x154], 1
je 0x140111ce5
mov rcx, qword [0x1402f10d8]
test rcx, rcx
jne 0x140111ca3
mov ecx, 0x36e490
call fcn.14022033c
mov qword [rsp + 0x40], rax
mov rcx, rax
call fcn.1401cf6f0
mov rcx, rax
mov qword [0x1402f10d8], rax
movsd xmm0, qword [rbp + 0x10]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [rbp + 0x18]
mov dword [rsp + 0x48], eax
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x70]
call fcn.1401cec00
mov r8, qword [rax]
xor edx, edx
mov rcx, r15
call fcn.140069d30
test al, al
je 0x140111ce5
movss xmm0, dword [0x1402f0ad4]
movss dword [r14 + 0x1a8], xmm0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
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]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret