Function at 0x14002b2e0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x130
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x1401bb040]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rsi, qword [rsp + 0x198]
movaps xmm8, xmm2
movss xmm7, dword [rsp + 0x1a0]
mov rdi, rdx
mov rbx, qword [rsp + 0x190]
mov rbp, rcx
movss dword [rsp + 0x40], xmm7
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], rsi
test rsi, rsi
jne 0x14002b368
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rbx + rsi], 0
jne 0x14002b357
add rsi, rbx
mov qword [rsp + 0x50], rsi
cvttss2si eax, dword [r9]
mov r14, qword [rsp + 0x188]
movd xmm14, eax
cvttss2si eax, dword [r9 + 4]
cvtdq2ps xmm14, xmm14
movd xmm15, eax
cvtdq2ps xmm15, xmm15
comiss xmm15, dword [r14 + 0xc]
ja 0x14002bcd2
mov qword [rsp + 0x120], r15
xorps xmm0, xmm0
movaps xmmword [rsp + 0x110], xmm6
movaps xmm6, xmm14
movaps xmmword [rsp + 0xe0], xmm9
movss xmm9, dword [rcx + 0x14]
divss xmm8, xmm9
comiss xmm7, xmm0
movss xmm0, dword [r14 + 4]
mulss xmm9, xmm8
seta r15b
movss dword [rsp + 0x3c], xmm6
movss dword [rsp + 0x34], xmm8
movaps xmm1, xmm9
movss dword [rsp + 0x48], xmm9
addss xmm1, xmm15
mov byte [rsp + 0x30], r15b
comiss xmm0, xmm1
jbe 0x14002b48e
cmp rbx, rsi
jae 0x14002b48e
mov r8, rsi
mov edx, 0xa
sub r8, rbx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test r15b, r15b
je 0x14002b465
test rax, rax
movss dword [rsp + 0x20], xmm7
mov r9, rsi
mov r8, rbx
cmovne r9, rax
movaps xmm1, xmm8
mov rcx, rbp
call fcn.14002af30
mov rbx, rax
cmp rax, rsi
jae 0x14002b45b
movzx eax, byte [rbx]
cmp al, 0x20
je 0x14002b453
cmp al, 9
jne 0x14002b45b
inc rbx
cmp rbx, rsi
jb 0x14002b448
cmp byte [rbx], 0xa
jne 0x14002b471
inc rbx
jmp 0x14002b471
lea rbx, [rax + 1]
test rax, rax
jne 0x14002b471
mov rbx, rsi
movss xmm0, dword [r14 + 4]
addss xmm15, xmm9
movaps xmm1, xmm9
addss xmm1, xmm15
comiss xmm0, xmm1
ja 0x14002b400
mov rax, rsi
sub rax, rbx
cmp rax, 0x2710
jle 0x14002b4f7
test r15b, r15b
jne 0x14002b4f7
movss xmm7, dword [r14 + 0xc]
mov rax, rbx
comiss xmm7, xmm15
movaps xmm6, xmm15
jbe 0x14002b4e3
cmp rax, rsi
jae 0x14002b4e3
mov r8, rsi
mov edx, 0xa
sub r8, rax
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14002b4d6
inc rax
jmp 0x14002b4d9
mov rax, rsi
addss xmm6, xmm9
comiss xmm7, xmm6
ja 0x14002b4b4
movss xmm6, dword [rsp + 0x3c]
mov rsi, rax
movss xmm7, dword [rsp + 0x40]
mov qword [rsp + 0x50], rax
cmp rbx, rsi
je 0x14002bcb9
mov eax, dword [rdi + 0x10]
mov r8d, esi
sub r8d, ebx
mov qword [rsp + 0x178], r12
mov rcx, rdi
mov qword [rsp + 0x128], r13
lea edx, [r8 + r8*2]
shl edx, 2
lea r8d, [r8*8]
add eax, edx
mov dword [rsp + 0x44], eax
call fcn.140025e50
mov eax, dword [rsp + 0x180]
mov r8, rdi
mov rdi, qword [rdi + 0x40]
or eax, 0xffffff
xor r13d, r13d
mov dword [rsp + 0x38], eax
mov r15, qword [r8 + 0x48]
mov r12d, dword [r8 + 0x34]
cmp rbx, rsi
jae 0x14002bc56
movaps xmmword [rsp + 0xd0], xmm10
movaps xmmword [rsp + 0xc0], xmm11
movaps xmmword [rsp + 0xb0], xmm12
movaps xmmword [rsp + 0xa0], xmm13
movss xmm13, dword [rsp + 0x44]
nop dword [rax]
cmp byte [rsp + 0x30], 0
je 0x14002b60b
test r13, r13
jne 0x14002b5c6
movaps xmm1, xmm14
movaps xmm0, xmm7
subss xmm1, xmm6
mov r9, rsi
mov r8, rbx
mov rcx, rbp
subss xmm0, xmm1
movaps xmm1, xmm8
movss dword [rsp + 0x20], xmm0
call fcn.14002af30
mov r13, rax
cmp rbx, r13
jb 0x14002b60b
addss xmm15, xmm9
movaps xmm14, xmm6
comiss xmm15, dword [r14 + 0xc]
ja 0x14002bc2d
xor r13d, r13d
cmp rbx, rsi
jae 0x14002b5fa
movzx eax, byte [rbx]
cmp al, 0x20
je 0x14002b5f2
cmp al, 9
jne 0x14002b5fa
inc rbx
cmp rbx, rsi
jb 0x14002b5e7
cmp byte [rbx], 0xa
jne 0x14002bc11
inc rbx
jmp 0x14002bc11
movsx ecx, byte [rbx]
mov dword [rsp + 0x70], ecx
cmp ecx, 0x80
jae 0x14002b61f
inc rbx
jmp 0x14002b639
mov r8, rsi
lea rcx, [rsp + 0x70]
mov rdx, rbx
call fcn.14000ae20
movsxd rcx, eax
add rbx, rcx
mov ecx, dword [rsp + 0x70]
cmp ecx, 0x20
jae 0x14002b665
cmp ecx, 0xa
jne 0x14002b65c
addss xmm15, xmm9
movaps xmm14, xmm6
comiss xmm15, dword [r14 + 0xc]
ja 0x14002bc2d
jmp 0x14002bc11
cmp ecx, 0xd
je 0x14002bc11
movabs r8, 0x100000001b3
movzx edx, cl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movzx eax, byte [rsp + 0x71]
imul rdx, r8
xor rdx, rax
movzx eax, byte [rsp + 0x72]
imul rdx, r8
xor rdx, rax
movzx eax, byte [rsp + 0x73]
imul rdx, r8
xor rdx, rax
imul rdx, r8
mov r8, qword [0x1401c0a78]
and rdx, qword [0x1401c0a90]
add rdx, rdx
mov rax, qword [r8 + rdx*8 + 8]
cmp rax, qword [0x1401c0a68]
je 0x14002b6e0
mov r8, qword [r8 + rdx*8]
cmp ecx, dword [rax + 0x10]
je 0x14002b6e2
nop
cmp rax, r8
je 0x14002b6e0
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x14002b6d0
jmp 0x14002b6e2
xor eax, eax
test rax, rax
jne 0x14002b947
movsxd rax, dword [rbp + 0x18]
mov edx, ecx
cmp rdx, rax
jb 0x14002b6fc
mov rax, qword [rbp + 0x38]
jmp 0x14002b71a
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + rdx*4]
cmp ecx, 0xffffffff
jne 0x14002b70e
mov rax, qword [rbp + 0x38]
jmp 0x14002b71a
mov rax, qword [rbp + 0x30]
lea rcx, [rcx + rcx*4]
lea rax, [rax + rcx*8]
test rax, rax
je 0x14002bc11
mov ecx, dword [rax]
movaps xmm13, xmm8
mulss xmm13, dword [rax + 4]
test cl, 2
je 0x14002bc05
movss xmm12, dword [r14 + 8]
movaps xmm6, xmm8
mulss xmm6, dword [rax + 8]
movaps xmm3, xmm8
mulss xmm3, dword [rax + 0x10]
movaps xmm5, xmm8
mulss xmm5, dword [rax + 0xc]
addss xmm6, xmm14
movaps xmm4, xmm8
addss xmm3, xmm14
mulss xmm4, dword [rax + 0x14]
comiss xmm12, xmm6
addss xmm5, xmm15
addss xmm4, xmm15
jb 0x14002bc05
movss xmm7, dword [r14]
comiss xmm3, xmm7
jb 0x14002bc05
cmp byte [rsp + 0x1a8], 0
movss xmm10, dword [rax + 0x18]
movss xmm11, dword [rax + 0x1c]
movss xmm8, dword [rax + 0x20]
movss xmm9, dword [rax + 0x24]
je 0x14002b898
comiss xmm7, xmm6
jbe 0x14002b7ec
movss xmm1, dword [0x1401aaebc]
movaps xmm0, xmm3
subss xmm0, xmm6
movaps xmm2, xmm3
subss xmm2, xmm7
movaps xmm6, xmm7
divss xmm2, xmm0
movaps xmm0, xmm8
subss xmm0, xmm10
subss xmm1, xmm2
mulss xmm1, xmm0
addss xmm10, xmm1
movss xmm7, dword [r14 + 4]
comiss xmm7, xmm5
jbe 0x14002b82a
movss xmm1, dword [0x1401aaebc]
movaps xmm0, xmm4
subss xmm0, xmm5
movaps xmm2, xmm4
subss xmm2, xmm7
movaps xmm5, xmm7
divss xmm2, xmm0
movaps xmm0, xmm9
subss xmm0, xmm11
subss xmm1, xmm2
mulss xmm1, xmm0
addss xmm11, xmm1
comiss xmm3, xmm12
jbe 0x14002b85b
movaps xmm0, xmm8
subss xmm3, xmm6
movaps xmm1, xmm12
subss xmm0, xmm10
subss xmm1, xmm6
divss xmm1, xmm3
movaps xmm3, xmm12
movaps xmm8, xmm1
mulss xmm8, xmm0
addss xmm8, xmm10
movss xmm2, dword [r14 + 0xc]
comiss xmm4, xmm2
jbe 0x14002b88f
movaps xmm0, xmm9
subss xmm4, xmm5
movaps xmm1, xmm2
subss xmm0, xmm11
subss xmm1, xmm5
divss xmm1, xmm4
movaps xmm4, xmm2
movaps xmm9, xmm1
mulss xmm9, xmm0
addss xmm9, xmm11
comiss xmm5, xmm4
jae 0x14002bc05
mov eax, dword [rsp + 0x180]
test cl, 1
movss dword [rdi], xmm6
cmovne eax, dword [rsp + 0x38]
mov dword [rdi + 0x10], eax
mov dword [rdi + 0x24], eax
mov dword [rdi + 0x38], eax
mov dword [rdi + 0x4c], eax
lea eax, [r12 + 1]
movss dword [rdi + 4], xmm5
movss dword [rdi + 8], xmm10
movss dword [rdi + 0xc], xmm11
movss dword [rdi + 0x14], xmm3
movss dword [rdi + 0x18], xmm5
movss dword [rdi + 0x1c], xmm8
movss dword [rdi + 0x20], xmm11
movss dword [rdi + 0x28], xmm3
movss dword [rdi + 0x2c], xmm4
movss dword [rdi + 0x30], xmm8
movss dword [rdi + 0x34], xmm9
movss dword [rdi + 0x3c], xmm6
movss dword [rdi + 0x40], xmm4
movss dword [rdi + 0x44], xmm10
movss dword [rdi + 0x48], xmm9
add rdi, 0x50
mov word [r15 + 2], ax
lea eax, [r12 + 2]
mov word [r15 + 4], ax
mov word [r15 + 8], ax
lea eax, [r12 + 3]
mov word [r15], r12w
mov word [r15 + 6], r12w
add r12d, 4
mov word [r15 + 0xa], ax
add r15, 0xc
jmp 0x14002bc05
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x60]
call fcn.14002cc00
xor r8d, r8d
mov r9, qword [rax]
mov rax, qword [r9 + 0x20]
sub rax, qword [r9 + 0x18]
sar rax, 2
test rax, rax
je 0x14002bc05
mov r10d, dword [rsp + 0x70]
mov esi, dword [rsp + 0x38]
nop word [rax + rax]
movsxd rax, dword [rbp + 0x18]
lea ecx, [r8 + r10]
cmp rcx, rax
jb 0x14002b993
mov rax, qword [rbp + 0x38]
jmp 0x14002b9b1
mov rax, qword [rbp + 0x20]
mov edx, dword [rax + rcx*4]
cmp edx, 0xffffffff
jne 0x14002b9a5
mov rax, qword [rbp + 0x38]
jmp 0x14002b9b1
mov rax, qword [rbp + 0x30]
lea rcx, [rdx + rdx*4]
lea rax, [rax + rcx*8]
test rax, rax
je 0x14002bbe8
mov ecx, dword [rax]
movaps xmm13, xmm8
mulss xmm13, dword [rax + 4]
test cl, 2
je 0x14002bbe8
movaps xmm7, xmm8
movaps xmm3, xmm8
mulss xmm7, dword [rax + 8]
movaps xmm6, xmm8
mulss xmm3, dword [rax + 0x10]
movaps xmm4, xmm8
mulss xmm6, dword [rax + 0xc]
addss xmm7, xmm14
mulss xmm4, dword [rax + 0x14]
addss xmm3, xmm14
movss xmm8, dword [r14 + 8]
addss xmm6, xmm15
comiss xmm8, xmm7
addss xmm4, xmm15
jb 0x14002bbe1
movss xmm5, dword [r14]
comiss xmm3, xmm5
jb 0x14002bbe1
cmp byte [rsp + 0x1a8], 0
movss xmm11, dword [rax + 0x18]
movss xmm12, dword [rax + 0x1c]
movss xmm9, dword [rax + 0x20]
movss xmm10, dword [rax + 0x24]
je 0x14002bb35
comiss xmm5, xmm7
jbe 0x14002ba83
movss xmm1, dword [0x1401aaebc]
movaps xmm0, xmm3
subss xmm0, xmm7
movaps xmm2, xmm3
subss xmm2, xmm5
movaps xmm7, xmm5
divss xmm2, xmm0
movaps xmm0, xmm9
subss xmm0, xmm11
subss xmm1, xmm2
mulss xmm1, xmm0
addss xmm11, xmm1
movss xmm5, dword [r14 + 4]
comiss xmm5, xmm6
jbe 0x14002bac1
movss xmm1, dword [0x1401aaebc]
movaps xmm0, xmm4
subss xmm0, xmm6
movaps xmm2, xmm4
subss xmm2, xmm5
movaps xmm6, xmm5
divss xmm2, xmm0
movaps xmm0, xmm10
subss xmm0, xmm12
subss xmm1, xmm2
mulss xmm1, xmm0
addss xmm12, xmm1
comiss xmm3, xmm8
jbe 0x14002baf2
movaps xmm0, xmm9
subss xmm3, xmm7
movaps xmm1, xmm8
subss xmm0, xmm11
subss xmm1, xmm7
divss xmm1, xmm3
movaps xmm3, xmm8
movaps xmm9, xmm1
mulss xmm9, xmm0
addss xmm9, xmm11
movss xmm2, dword [r14 + 0xc]
comiss xmm4, xmm2
jbe 0x14002bb26
movaps xmm0, xmm10
subss xmm4, xmm6
movaps xmm1, xmm2
subss xmm0, xmm12
subss xmm1, xmm6
divss xmm1, xmm4
movaps xmm4, xmm2
movaps xmm10, xmm1
mulss xmm10, xmm0
addss xmm10, xmm12
comiss xmm6, xmm4
jb 0x14002bb35
addss xmm14, xmm13
jmp 0x14002bbe1
test cl, 1
je 0x14002bb3e
mov eax, esi
jmp 0x14002bb46
mov rax, qword [r9 + 0x18]
mov eax, dword [rax + r8*4]
mov dword [rdi + 0x10], eax
mov dword [rdi + 0x24], eax
mov dword [rdi + 0x38], eax
mov dword [rdi + 0x4c], eax
lea eax, [r12 + 1]
movss dword [rdi], xmm7
movss dword [rdi + 4], xmm6
movss dword [rdi + 8], xmm11
movss dword [rdi + 0xc], xmm12
movss dword [rdi + 0x14], xmm3
movss dword [rdi + 0x18], xmm6
movss dword [rdi + 0x1c], xmm9
movss dword [rdi + 0x20], xmm12
movss dword [rdi + 0x28], xmm3
movss dword [rdi + 0x2c], xmm4
movss dword [rdi + 0x30], xmm9
movss dword [rdi + 0x34], xmm10
movss dword [rdi + 0x3c], xmm7
movss dword [rdi + 0x40], xmm4
movss dword [rdi + 0x44], xmm11
movss dword [rdi + 0x48], xmm10
add rdi, 0x50
mov word [r15 + 2], ax
lea eax, [r12 + 2]
mov word [r15 + 4], ax
mov word [r15 + 8], ax
lea eax, [r12 + 3]
mov word [r15], r12w
mov word [r15 + 6], r12w
add r12d, 4
mov word [r15 + 0xa], ax
add r15, 0xc
movss xmm8, dword [rsp + 0x34]
mov rax, qword [r9 + 0x20]
inc r8
sub rax, qword [r9 + 0x18]
sar rax, 2
cmp r8, rax
jb 0x14002b980
mov rsi, qword [rsp + 0x50]
movss xmm8, dword [rsp + 0x34]
addss xmm14, xmm13
movss xmm9, dword [rsp + 0x48]
movss xmm6, dword [rsp + 0x3c]
movss xmm7, dword [rsp + 0x40]
cmp rbx, rsi
jb 0x14002b590
mov r8, qword [rsp + 0x58]
movaps xmm13, xmmword [rsp + 0xa0]
movaps xmm12, xmmword [rsp + 0xb0]
movaps xmm11, xmmword [rsp + 0xc0]
movaps xmm10, xmmword [rsp + 0xd0]
mov r13, qword [rsp + 0x128]
mov rcx, rdi
sub rcx, qword [r8 + 0x28]
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, dword [r8]
mov dword [r8 + 0x20], edx
mov rdx, r15
sub rdx, qword [r8 + 0x18]
sar rdx, 1
mov dword [r8 + 0x10], edx
sub edx, dword [rsp + 0x44]
imul rcx, rax, 0x38
mov rax, qword [r8 + 8]
add dword [rcx + rax - 0x18], edx
mov dword [r8 + 0x34], r12d
mov r12, qword [rsp + 0x178]
mov qword [r8 + 0x40], rdi
mov qword [r8 + 0x48], r15
movaps xmm6, xmmword [rsp + 0x110]
mov r15, qword [rsp + 0x120]
movaps xmm9, xmmword [rsp + 0xe0]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14006fc80
lea r11, [rsp + 0x130]
movaps xmm7, xmmword [r11 - 0x30]
movaps xmm8, xmmword [r11 - 0x40]
movaps xmm14, xmmword [r11 - 0xa0]
movaps xmm15, xmmword [r11 - 0xb0]
mov rsp, r11
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret