Function at 0x1800dfc70
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rbx, r8
mov r15, rdx
mov rbp, rcx
movzx esi, byte [r8]
movabs rax, 0xcbf29ce484222325
xor rsi, rax
movabs rcx, 0x100000001b3
imul rsi, rcx
movzx eax, byte [r8 + 1]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 2]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 3]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 4]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 5]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 6]
xor rsi, rax
imul rsi, rcx
movzx eax, byte [r8 + 7]
xor rsi, rax
imul rsi, rcx
lea r8, [rbp + 0x30]
mov rcx, qword [r8]
and rcx, rsi
lea r9, [rbp + 0x18]
add rcx, rcx
mov rdx, qword [r9]
mov rdi, qword [rdx + rcx*8 + 8]
lea r10, [rbp + 8]
mov rax, qword [r10]
mov qword [rsp + 0x20], rax
cmp rdi, rax
jne 0x1800dfd42
mov rdi, rax
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x90], r8
mov r12, rax
jmp 0x1800dfda2
mov rcx, qword [rdx + rcx*8]
mov rax, qword [rbx]
cmp rax, qword [rdi + 0x10]
je 0x1800dfd5f
nop
cmp rdi, rcx
je 0x1800dfd82
mov rdi, qword [rdi + 8]
cmp rax, qword [rdi + 0x10]
jne 0x1800dfd50
mov qword [r15], rdi
mov byte [r15 + 8], 0
mov rax, r15
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x20], rdi
lea rax, [rbp + 0x18]
mov qword [rsp + 0x80], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x90], rax
mov r12, rdi
movabs rax, 0x2e8ba2e8ba2e8ba
cmp qword [rbp + 0x10], rax
je 0x1800dfffd
mov qword [rsp + 0x30], r10
xor r13d, r13d
mov qword [rsp + 0x38], r13
lea ecx, [r13 + 0x58]
call fcn.180182770
mov r14, rax
mov qword [rsp + 0x38], rax
mov rcx, qword [rbx]
mov qword [rax + 0x10], rcx
lea rbx, [rax + 0x18]
mov qword [rsp + 0x98], rbx
mov dword [rbx], r13d
mov qword [rbx + 8], r13
mov qword [rbx + 0x10], r13
lea ecx, [r13 + 0x48]
call fcn.180182770
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbx + 8], rax
lea rcx, [rbx + 0x18]
mov qword [rcx], r13
mov qword [rcx + 8], r13
mov qword [rcx + 0x10], r13
mov qword [rbx + 0x30], 7
mov r13d, 8
mov qword [rbx + 0x38], r13
mov dword [rbx], 0x3f800000
mov r8, qword [rbx + 8]
lea edx, [r13 + 8]
call fcn.1800e6ad0
nop
mov rcx, qword [rbp + 0x10]
vmovss xmm2, dword [rbp]
add rcx, 1
vxorps xmm1, xmm1, xmm1
js 0x1800dfe55
vcvtsi2ss xmm1, xmm1, rcx
jmp 0x1800dfe6a
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
vcvtsi2ss xmm1, xmm1, rax
vaddss xmm1, xmm1, xmm1
mov rdx, qword [rbp + 0x38]
vxorps xmm0, xmm0, xmm0
test rdx, rdx
js 0x1800dfe7e
vcvtsi2ss xmm0, xmm0, rdx
jmp 0x1800dfe96
mov rcx, rdx
shr rcx, 1
mov rax, rdx
and eax, 1
or rcx, rax
vcvtsi2ss xmm0, xmm0, rcx
vaddss xmm0, xmm0, xmm0
vdivss xmm0, xmm1, xmm0
vcomiss xmm0, xmm2
seta al
test al, al
je 0x1800dff85
vdivss xmm0, xmm1, xmm2
vxorps xmm1, xmm1, xmm1
vroundss xmm1, xmm1, xmm0, 2
xor ecx, ecx
vmovss xmm0, dword [0x1800aa15c]
vcomiss xmm1, xmm0
jb 0x1800dfede
vsubss xmm1, xmm1, xmm0
vcomiss xmm1, xmm0
jae 0x1800dfede
movabs rax, 0x8000000000000000
mov rcx, rax
vcvttss2si rax, xmm1
add rax, rcx
cmp rax, 8
cmova r13, rax
cmp rdx, r13
jae 0x1800dff0c
cmp rdx, 0x200
jae 0x1800dff09
lea rdx, [rdx*8]
cmp rdx, r13
jae 0x1800dff0c
mov rdx, r13
mov rcx, rbp
call fcn.1800e71c0
mov rcx, rsi
and rcx, qword [rbp + 0x30]
add rcx, rcx
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rdi, qword [rbp + 8]
cmp rax, rdi
jne 0x1800dff3b
mov qword [rsp + 0x28], 0
jmp 0x1800dff65
mov rdx, qword [rdx + rcx*8]
mov rcx, qword [r14 + 0x10]
cmp rcx, qword [rax + 0x10]
je 0x1800dff62
nop dword [rax]
mov rdi, rax
cmp rax, rdx
je 0x1800dffc9
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x1800dff50
mov rdi, qword [rax]
mov qword [rsp + 0x20], rdi
mov r12, rdi
lea rax, [rbp + 0x18]
mov qword [rsp + 0x80], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x20]
mov rcx, qword [rdi + 8]
inc qword [rbp + 0x10]
mov qword [r14], rax
mov qword [r14 + 8], rcx
mov qword [rcx], r14
mov qword [rdi + 8], r14
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x90]
and rsi, qword [rdx]
add rsi, rsi
mov rdx, qword [rax + rsi*8]
cmp rdx, qword [rbp + 8]
jne 0x1800dffd9
mov qword [rax + rsi*8], r14
jmp 0x1800dffeb
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
jmp 0x1800dff6a
cmp rdx, r12
jne 0x1800dffe4
mov qword [rax + rsi*8], r14
jmp 0x1800dfff0
cmp qword [rax + rsi*8 + 8], rcx
jne 0x1800dfff0
mov qword [rax + rsi*8 + 8], r14
mov qword [r15], r14
mov byte [r15 + 8], 1
jmp 0x1800dfd67
lea rcx, [0x1800a9538]
call fcn.1800e6e30
int3