Function at 0x180037850
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
movss xmm0, dword [0x1800be164]
comiss xmm0, dword [0x1800e1f58]
ja 0x180037ee5
cmp byte [0x1800e1f5f], 0
mov qword [rax + 0x18], rsi
movabs rsi, 0x8afd473cacb6b6a4
mov qword [rax - 0x18], r12
movabs r12, 0x168d4ed721ff05d4
mov qword [rax - 0x20], r14
movabs r14, 0xcbf29ce484222325
mov qword [rax - 0x28], r15
movabs r15, 0x100000001b3
movaps xmmword [rax - 0x48], xmm7
xorps xmm7, xmm7
mov qword [rax + 0x10], rbx
mov qword [rax - 0x10], rdi
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
je 0x180037b9a
cmp qword [0x1800bbfa0], 0
je 0x180037b9a
movss xmm0, dword [0x1800bbf90]
ucomiss xmm0, xmm7
jp 0x18003791a
jne 0x18003791a
movss xmm0, dword [0x1800bbf94]
ucomiss xmm0, xmm7
jp 0x18003791a
jne 0x18003791a
movss xmm0, dword [0x1800bbf98]
ucomiss xmm0, xmm7
jp 0x18003791a
je 0x180037b9a
mov rcx, qword [0x1800df390]
call fcn.180011610
mov rdi, rax
test rax, rax
je 0x180037b9a
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x10]
movsx rdx, byte [rcx]
test dl, dl
je 0x180037b9a
xor rdx, r14
imul rdx, r15
inc rcx
call fcn.18000ab20
cmp rax, r12
je 0x180037962
cmp rax, rsi
jne 0x180037b9a
cmp byte [0x1800e1f5f], 0
je 0x180037b9a
mov edx, dword [0x1800bc188]
lea rcx, [rbp + 0x67]
call fcn.180019870
test al, al
je 0x180037b9a
movss xmm0, dword [0x1800bbf90]
movss xmm1, dword [0x1800bbf94]
mov rcx, qword [0x1800df390]
movss dword [rbp - 0x59], xmm0
movss xmm0, dword [0x1800bbf98]
movss dword [rbp - 0x51], xmm0
movss dword [rbp - 0x55], xmm1
call fcn.180017550
lea rdx, [rbp - 0x29]
mov rcx, rax
call fcn.18001c280
movss xmm8, dword [0x1800bbf90]
movss xmm6, dword [0x1800bbf94]
movaps xmm1, xmm8
movss xmm9, dword [0x1800bbf98]
movaps xmm2, xmm6
subss xmm2, dword [rax + 4]
subss xmm1, dword [rax]
movaps xmm0, xmm9
subss xmm0, dword [rax + 8]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x180037a1f
xorps xmm10, xmm10
sqrtss xmm10, xmm2
jmp 0x180037a2b
movaps xmm0, xmm2
call fcn.1800b8770
movaps xmm10, xmm0
subss xmm6, dword [rbp - 0x55]
subss xmm8, dword [rbp - 0x59]
subss xmm9, dword [rbp - 0x51]
xorps xmm0, xmm0
mulss xmm6, xmm6
mulss xmm8, xmm8
mulss xmm9, xmm9
addss xmm6, xmm8
addss xmm6, xmm9
ucomiss xmm0, xmm6
ja 0x180037a62
sqrtss xmm6, xmm6
jmp 0x180037a6d
movaps xmm0, xmm6
call fcn.1800b8770
movaps xmm6, xmm0
addss xmm6, dword [0x1800bdee4]
call fcn.18001b9e0
call fcn.18001bb90
call fcn.18001b820
mov rcx, qword [0x1800df390]
call fcn.180025080
lea rdx, [rbp - 0x49]
mov rcx, rax
call fcn.180012510
movss xmm0, dword [rbp - 0x49]
ucomiss xmm0, xmm7
jp 0x180037ac4
jne 0x180037ac4
movss xmm0, dword [rbp - 0x45]
ucomiss xmm0, xmm7
jp 0x180037ac4
jne 0x180037ac4
movss xmm0, dword [rbp - 0x41]
ucomiss xmm0, xmm7
jp 0x180037ac4
je 0x180037e8a
xorps xmm3, xmm3
mov qword [rsp + 0x20], 0
mov r8d, 0x48a10000
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x49]
call fcn.18001d430
test al, al
je 0x180037b9a
mov rcx, qword [0x1800bbf50]
call fcn.1800371a0
movss xmm1, dword [0x1800e1f58]
addss xmm1, dword [0x1800be15c]
mulss xmm1, dword [0x1800bdef0]
mulss xmm0, xmm1
cvtss2sd xmm0, xmm0
addsd xmm0, qword [0x1800be170]
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm6
jbe 0x180037b9a
movss xmm0, dword [0x1800be184]
comiss xmm0, xmm10
jb 0x180037b9a
mov rcx, qword [0x1800bbfa0]
movsd xmm6, qword [0x1800bbf90]
mov ebx, dword [0x1800bbf98]
call fcn.180017550
mov ecx, dword [rbp - 0x41]
lea r9, [rbp - 0x29]
movsd xmm0, qword [rbp - 0x49]
mov r8, qword [0x1800bbfa0]
mov rdx, qword [0x1800df390]
mov dword [rbp - 0x21], ecx
lea rcx, [rbp - 0x39]
mov byte [rsp + 0x38], 0
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], rcx
mov rcx, rdi
movsd qword [rbp - 0x39], xmm6
mov dword [rbp - 0x31], ebx
movsd qword [rbp - 0x29], xmm0
mov qword [rsp + 0x20], rax
call fcn.180025680
cmp byte [0x1800e1f5e], 0
je 0x180037e8a
cmp qword [0x1800bbf50], 0
je 0x180037e8a
movss xmm0, dword [0x1800bbf40]
ucomiss xmm0, xmm7
jp 0x180037be6
jne 0x180037be6
movss xmm0, dword [0x1800bbf44]
ucomiss xmm0, xmm7
jp 0x180037be6
jne 0x180037be6
movss xmm0, dword [0x1800bbf48]
ucomiss xmm0, xmm7
jp 0x180037be6
je 0x180037e8a
mov rcx, qword [0x1800df390]
call fcn.180011610
mov rdi, rax
test rax, rax
je 0x180037e8a
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x10]
movsx rax, byte [rcx]
test al, al
je 0x180037e8a
mov rdx, rax
xor rdx, r14
imul rdx, r15
inc rcx
call fcn.18000ab20
cmp rax, r12
je 0x180037c31
cmp rax, rsi
jne 0x180037e8a
cmp byte [0x1800e1f5e], 0
je 0x180037e8a
mov edx, dword [0x1800bc188]
lea rcx, [rbp + 0x67]
call fcn.180019870
test al, al
je 0x180037e8a
movss xmm0, dword [0x1800bbf40]
movss xmm1, dword [0x1800bbf44]
mov rcx, qword [0x1800df390]
movss dword [rbp - 0x49], xmm0
movss xmm0, dword [0x1800bbf48]
movss dword [rbp - 0x41], xmm0
movss dword [rbp - 0x45], xmm1
call fcn.180017550
lea rdx, [rbp - 0x29]
mov rcx, rax
call fcn.18001c280
movss xmm8, dword [0x1800bbf40]
movss xmm6, dword [0x1800bbf44]
movaps xmm1, xmm8
movss xmm9, dword [0x1800bbf48]
movaps xmm2, xmm6
subss xmm2, dword [rax + 4]
subss xmm1, dword [rax]
movaps xmm0, xmm9
subss xmm0, dword [rax + 8]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x180037cee
xorps xmm10, xmm10
sqrtss xmm10, xmm2
jmp 0x180037cfa
movaps xmm0, xmm2
call fcn.1800b8770
movaps xmm10, xmm0
subss xmm6, dword [rbp - 0x45]
subss xmm8, dword [rbp - 0x49]
subss xmm9, dword [rbp - 0x41]
xorps xmm0, xmm0
mulss xmm6, xmm6
mulss xmm8, xmm8
mulss xmm9, xmm9
addss xmm6, xmm8
addss xmm6, xmm9
ucomiss xmm0, xmm6
ja 0x180037d31
sqrtss xmm6, xmm6
jmp 0x180037d3c
movaps xmm0, xmm6
call fcn.1800b8770
movaps xmm6, xmm0
addss xmm6, dword [0x1800bdee4]
call fcn.18001b9e0
call fcn.18001bb90
call fcn.18001b820
mov rcx, qword [0x1800df390]
call fcn.180025080
lea rdx, [rbp - 0x59]
mov rcx, rax
call fcn.180012510
movss xmm0, dword [rbp - 0x59]
ucomiss xmm0, xmm7
jp 0x180037d93
jne 0x180037d93
movss xmm0, dword [rbp - 0x55]
ucomiss xmm0, xmm7
jp 0x180037d93
jne 0x180037d93
movss xmm0, dword [rbp - 0x51]
ucomiss xmm0, xmm7
jp 0x180037d93
je 0x180037e8a
xorps xmm3, xmm3
mov qword [rsp + 0x20], 0
mov r8d, 0x48a10000
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x59]
call fcn.18001d430
test al, al
je 0x180037e8a
mov rcx, qword [0x1800bbf50]
call fcn.1800371a0
movss xmm1, dword [0x1800e1f58]
addss xmm1, dword [0x1800be15c]
mulss xmm1, dword [0x1800bdef0]
mulss xmm0, xmm1
cvtss2sd xmm0, xmm0
addsd xmm0, qword [0x1800be170]
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm6
jbe 0x180037e8a
mov rcx, qword [0x1800bbf50]
call fcn.180011980
mov edx, 0x200
mov rcx, rax
call fcn.18001a240
test al, al
je 0x180037e8a
movss xmm0, dword [0x1800be180]
comiss xmm0, xmm10
jb 0x180037e8a
mov rcx, qword [0x1800bbf50]
movsd xmm6, qword [0x1800bbf40]
mov ebx, dword [0x1800bbf48]
call fcn.180017550
mov ecx, dword [rbp - 0x51]
lea r9, [rbp - 0x39]
movsd xmm0, qword [rbp - 0x59]
mov r8, qword [0x1800bbf50]
mov rdx, qword [0x1800df390]
mov dword [rbp - 0x31], ecx
lea rcx, [rbp - 0x29]
mov byte [rsp + 0x38], 0
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], rcx
mov rcx, rdi
movsd qword [rbp - 0x29], xmm6
mov dword [rbp - 0x21], ebx
movsd qword [rbp - 0x39], xmm0
mov qword [rsp + 0x20], rax
call fcn.180025680
movaps xmm9, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xa0]
mov rbx, qword [rsp + 0x108]
movaps xmm6, xmmword [rsp + 0xc0]
mov rdi, qword [rsp + 0xe8]
movaps xmm10, xmmword [rsp + 0x80]
mov r12, qword [rsp + 0xe0]
mov r14, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0x110]
mov r15, qword [rsp + 0xd0]
movaps xmm7, xmmword [rsp + 0xb0]
add rsp, 0xf0
pop rbp
ret