Function at 0x1800e66f0
Capabilities:
Hash data using fnv

Disassembly:
mov rcx, qword [0x18023f5a0]
add rcx, 1
mov rdx, qword [0x18023f5c8]
vxorps xmm0, xmm0, xmm0
js 0x1800e61cf
vcvtsi2ss xmm0, xmm0, rcx
jmp 0x1800e61e4
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vdivss xmm0, xmm0, dword [0x18023f590]
vxorps xmm1, xmm1, xmm1
vroundss xmm1, xmm1, xmm0, 2
vmovss xmm0, dword [0x180218d30]
xor ecx, ecx
vcomiss xmm1, xmm0
jb 0x1800e621d
vsubss xmm1, xmm1, xmm0
vcomiss xmm1, xmm0
jae 0x1800e621d
movabs rax, 0x8000000000000000
mov rcx, rax
vcvttss2si rax, xmm1
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x1800e624f
cmp rdx, 0x200
jae 0x1800e624c
lea rdx, [rdx*8]
cmp rdx, rcx
jae 0x1800e624f
mov rdx, rcx
jmp 0x1800e66f0
sub rsp, 0x28
movabs rax, 0xfffffffffffffff
mov r8d, 1
bsr rcx, rax
shlx rax, r8, rcx
cmp rdx, rax
jbe 0x1800e6720
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x18023f598]
or rax, r8
bsr rcx, rax
mov qword [rsp + 0x20], rdi
inc ecx
shlx rdi, r8, rcx
mov r8, rbx
lea rcx, [0x18023f5a8]
lea rdx, [rdi + rdi]
call fcn.1800991c0
mov rax, qword [0x18023f598]
lea r9, [rdi - 1]
mov qword [0x18023f5c0], r9
mov qword [0x18023f5c8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1800e68d2
mov qword [rsp + 0x38], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
nop word [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x14]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x15]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x16]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x17]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x18023f5a8]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1800e681b
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800e6893
mov rdx, qword [r11 + 8]
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x1800e6858
mov r10, qword [rdx]
cmp r10, rax
je 0x1800e6852
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1800e6893
cmp r9, rdx
je 0x1800e686f
nop dword [rax]
mov rdx, qword [rdx + 8]
cmp r8, qword [rdx + 0x10]
je 0x1800e68a7
cmp r9, rdx
jne 0x1800e6860
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x1800e68cd
mov r9, qword [0x18023f5c0]
jmp 0x1800e67a0
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1800e6893
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x20]
add rsp, 0x28
ret