Function at 0x1800725e0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
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
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rdi, r9
mov rbx, r8
mov rsi, rdx
mov r15, rcx
test rdx, rdx
je 0x180072f7e
test rbx, rbx
je 0x180072f7e
mov rcx, rdx
call fcn.18005f7a0
test al, al
je 0x180072f7e
mov rax, qword [0x180189d30]
cmp byte [rax], 0
je 0x180072f7e
movd xmm0, dword [r15 + 4]
cvtdq2ps xmm0, xmm0
xorps xmm8, xmm8
comiss xmm8, xmm0
jae 0x180072f7e
mov r14d, dword [0x18018768c]
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax + r14*8]
movabs r13, 0x492b8cadbd534914
movabs r12, 0xcbf29ce484222325
mov eax, dword [rcx + rax]
cmp dword [0x180189438], eax
jle 0x18007284e
lea rcx, [0x180189438]
call fcn.1800abe2c
cmp dword [0x180189438], 0xffffffff
jne 0x18007284e
movabs rax, 0x8d5939eff2c18d48
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0x275cedfdcf363075
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x260bb0ae40f27ed8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0x3a552e43eaee504b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0xa1274d93007eb789
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rcx, 0x3b5d3c51bf68d838
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0xe1095c9c9383d20b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0x5064fdde1f9f40f5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0x48307d37848b3d2e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0xa1274de0651ddeff
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0x80]
vmovdqu ymmword [rbp + 0x40], ymm1
vmovdqa xmm0, xmmword [rbp + 0x60]
vxorps xmm0, xmm0, xmmword [rbp + 0xa0]
vmovdqa xmmword [rbp + 0x60], xmm0
vmovd eax, xmm1
test al, al
jne 0x180072813
mov rax, r12
vzeroupper
jmp 0x180072834
movsx rdx, al
xor rdx, r12
movabs rax, 0x100000001b3
imul rdx, rax
lea rcx, [rbp + 0x41]
vzeroupper
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x1801894cc], eax
lea rcx, [0x180189438]
call fcn.1800abdc0
mov eax, dword [0x1801894cc]
cmp qword [rax + rsi], 0
je 0x180072f7e
mov rcx, rbx
call fcn.1800628b0
mov r13, rax
test rax, rax
je 0x180072f7e
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx + r14*8]
mov edx, 4
mov ecx, dword [rdx + rcx]
cmp dword [0x180189454], ecx
jle 0x1800728da
lea rcx, [0x180189454]
call fcn.1800abe2c
cmp dword [0x180189454], 0xffffffff
jne 0x1800728d5
movabs rdx, 0xaf63fe4c86022652
lea rcx, [0x18010cbf1]
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x180189490], eax
lea rcx, [0x180189454]
call fcn.1800abdc0
mov edx, 4
mov eax, dword [0x180189490]
cmp dword [rax + rbx], 0
jne 0x180072954
mov rax, qword gs:[0x58]
mov rcx, qword [rax + r14*8]
mov eax, dword [rdx + rcx]
cmp dword [0x180189318], eax
jle 0x180072943
lea rcx, [0x180189318]
call fcn.1800abe2c
cmp dword [0x180189318], 0xffffffff
jne 0x180072943
movabs rdx, 0xaf63fe4c86022652
lea rcx, [0x18010c651]
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x18018933c], eax
lea rcx, [0x180189318]
call fcn.1800abdc0
mov eax, dword [0x18018933c]
cmp dword [rax + r13], 5
je 0x180072f7e
cmp byte [0x180188de4], 0
je 0x180072f7e
cmp byte [r15 + 0x10], 0
je 0x180072f7e
mov rcx, rbx
call fcn.1800628b0
mov r15, rax
mov rcx, qword gs:[0x58]
mov rdx, qword [rcx + r14*8]
mov ecx, 4
mov ecx, dword [rcx + rdx]
cmp dword [0x1801894c0], ecx
jle 0x1800729d9
lea rcx, [0x1801894c0]
call fcn.1800abe2c
cmp dword [0x1801894c0], 0xffffffff
jne 0x1800729d9
movabs rdx, 0xaf63fe4c86022652
lea rcx, [0x18010cac1]
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x1801894c4], eax
lea rcx, [0x1801894c0]
call fcn.1800abdc0
mov eax, dword [0x1801894c4]
movss xmm6, dword [rax + r15]
mov rax, qword gs:[0x58]
mov rcx, qword [rax + r14*8]
mov r15d, 4
mov eax, dword [r15 + rcx]
cmp dword [0x180189430], eax
jle 0x180072a49
lea rcx, [0x180189430]
call fcn.1800abe2c
cmp dword [0x180189430], 0xffffffff
jne 0x180072a49
movabs rdx, 0xaf63fe4c86022652
lea rcx, [0x18010cb29]
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x1801894d8], eax
lea rcx, [0x180189430]
call fcn.1800abdc0
mov eax, dword [0x1801894d8]
movsd xmm7, qword [rax + rsi]
movsd qword [rbp + 0x10], xmm7
mov eax, dword [rax + rsi + 8]
mov dword [rbp + 0x18], eax
mov rcx, rbx
call fcn.180072520
mov rdx, rax
movabs rax, 0xe1096caee1e2b178
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0xc0], rcx
movabs rbx, 0x492b8cadbd534914
mov qword [rbp], rbx
mov rcx, qword [rbp]
mov qword [rbp + 0xc8], rcx
movabs rsi, 0xe1095c9c9383d20b
mov qword [rbp], rsi
mov rcx, qword [rbp]
mov qword [rbp + 0x20], rcx
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movdqa xmm0, xmmword [rbp + 0xc0]
xorps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0xc0], xmm0
mov rax, rdx
lea r9, [rbp + 0xc0]
sub r9, rdx
movzx r8d, byte [rax]
movzx ecx, byte [rax + r9]
sub r8d, ecx
jne 0x180072af5
inc rax
test ecx, ecx
jne 0x180072ae0
test r8d, r8d
je 0x180072b7b
movabs rax, 0xe1095cadf4f0e16c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xd0], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0xd8], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movdqa xmm0, xmmword [rbp + 0xd0]
xorps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0xd0], xmm0
lea r8, [rbp + 0xd0]
sub r8, rdx
nop dword [rax]
movzx ecx, byte [rdx]
movzx eax, byte [rdx + r8]
sub ecx, eax
jne 0x180072b73
inc rdx
test eax, eax
jne 0x180072b60
test ecx, ecx
je 0x180072b7b
xor cl, cl
jmp 0x180072b7d
mov cl, 1
mov rax, qword [0x180189d30]
cmp byte [rax + 2], 0
jne 0x180072bfd
test cl, cl
jne 0x180072bfd
mov rax, qword gs:[0x58]
mov r8, qword [rax + r14*8]
mov eax, dword [r15 + r8]
cmp dword [0x180189318], eax
jle 0x180072bec
lea rcx, [0x180189318]
call fcn.1800abe2c
cmp dword [0x180189318], 0xffffffff
jne 0x180072bec
movabs rdx, 0xaf63fe4c86022652
lea rcx, [0x18010c651]
call fcn.18005f770
mov rcx, rax
call fcn.180097d70
mov dword [0x18018933c], eax
lea rcx, [0x180189318]
call fcn.1800abdc0
mov eax, dword [0x18018933c]
cmp dword [rax + r13], 5
je 0x180072f7e
movss xmm1, dword [rbp + 0x14]
mulss xmm1, xmm1
movss xmm0, dword [rbp + 0x10]
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180072c26
xorps xmm12, xmm12
sqrtss xmm12, xmm1
jmp 0x180072c32
movaps xmm0, xmm1
call fcn.1800d2074
movaps xmm12, xmm0
and qword [rdi + 0x60], 0xfffffffffffdf9e7
movabs rax, 0x8d6c3ffff2dca478
mov qword [rbp], rax
mov rax, qword [rbp]
movabs rax, 0x492b8cc8c9323b71
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp], rbx
mov rax, qword [rbp]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
mulsd xmm0, qword [0x180111138]
cvtpd2ps xmm10, xmm0
mov rax, qword gs:[0x58]
mov rcx, qword [rax + r14*8]
mov eax, dword [r15 + rcx]
cmp dword [0x180189438], eax
jle 0x180072e23
lea rcx, [0x180189438]
call fcn.1800abe2c
cmp dword [0x180189438], 0xffffffff
jne 0x180072e23
movabs rax, 0x8d5939eff2c18d48
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0x275cedfdcf363075
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0x260bb0ae40f27ed8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0x3a552e43eaee504b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0xa1274d93007eb789
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rcx, 0x3b5d3c51bf68d838
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0x5064fdde1f9f40f5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0x48307d37848b3d2e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0xa1274de0651ddeff
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
vmovdqu ymm0, ymmword [rbp + 0x40]
vpxor ymm1, ymm0, ymmword [rbp + 0x80]
vmovdqu ymmword [rbp + 0x40], ymm1
vmovdqa xmm0, xmmword [rbp + 0x60]
vxorps xmm0, xmm0, xmmword [rbp + 0xa0]
vmovdqa xmmword [rbp + 0x60], xmm0
vmovd eax, xmm1
test al, al
jne 0x180072de5
vzeroupper
jmp 0x180072e09
movsx rdx, al
xor rdx, r12
movabs rax, 0x100000001b3
imul rdx, rax
lea rcx, [rbp + 0x41]
vzeroupper
call fcn.18005f770
mov r12, rax
mov rcx, r12
call fcn.180097d70
mov dword [0x1801894cc], eax
lea rcx, [0x180189438]
call fcn.1800abdc0
mov qword [rbp], 0
movsd qword [rbp + 0x10], xmm7
movss dword [rbp + 0x18], xmm8
lea rdx, [rbp]
lea rcx, [rbp + 0x10]
call fcn.180062390
mov rbx, qword [rdi + 0x40]
mov rax, qword [rbx + 0x40]
movss xmm9, dword [rax + 0x1c]
subss xmm9, dword [rbp + 4]
movss xmm0, dword [rbp]
movss xmm6, dword [0x180111064]
mulss xmm0, xmm6
call fcn.1800cd340
movaps xmm7, xmm0
movaps xmm8, xmm12
xorps xmm8, xmmword [0x180111930]
movaps xmm0, xmm9
mulss xmm0, xmm6
call fcn.1800cd340
movaps xmm11, xmm0
mulss xmm11, xmm7
mulss xmm11, xmm8
mulss xmm9, xmm6
movaps xmm0, xmm9
call fcn.1800d18b0
mulss xmm0, xmm7
mulss xmm0, xmm8
xor esi, esi
mov dword [rbx + 0x50], esi
mov rax, qword [rdi + 0x40]
mov dword [rax + 0x54], esi
mov rbx, qword [rdi + 0x40]
comiss xmm12, xmm10
jbe 0x180072ee6
mov dword [rbx + 0x50], esi
mov rax, qword [rdi + 0x40]
mov dword [rax + 0x54], esi
mov rax, qword [rdi + 0x40]
movss dword [rax + 0x50], xmm11
mov rax, qword [rdi + 0x40]
movss dword [rax + 0x54], xmm0
jmp 0x180072f7e
movss xmm8, dword [rbx + 0x50]
movss xmm0, dword [rbx + 0x54]
cvtps2pd xmm0, xmm0
movsd xmm6, qword [0x180111170]
movaps xmm1, xmm6
call fcn.1800ced70
movaps xmm7, xmm0
cvtps2pd xmm0, xmm8
movaps xmm1, xmm6
call fcn.1800ced70
addsd xmm7, xmm0
movss xmm0, dword [rbx + 0x58]
cvtps2pd xmm0, xmm0
movaps xmm1, xmm6
call fcn.1800ced70
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x180072f3d
xorps xmm0, xmm0
sqrtsd xmm0, xmm7
jmp 0x180072f45
movaps xmm0, xmm7
call fcn.1800d1fa8
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
comiss xmm1, xmm10
jbe 0x180072f74
divss xmm10, xmm1
mulss xmm8, xmm10
movss dword [rbx + 0x50], xmm8
mov rax, qword [rdi + 0x40]
mulss xmm10, dword [rax + 0x54]
movss dword [rax + 0x54], xmm10
jmp 0x180072f7e
mov dword [rbx + 0x50], esi
mov rax, qword [rdi + 0x40]
mov dword [rax + 0x54], esi
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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