Function at 0x1800b31f0
Capabilities:
Hash data using fnv

Disassembly:
sub rsp, 0x38
mov rcx, qword [0x1804b4de0]
test rcx, rcx
je 0x1800b32ae
mov rax, qword [0x1804b4e08]
shr rax, 3
cmp rax, rcx
jbe 0x1800b322a
mov rdx, qword [0x1804b4dd8]
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x38
jmp 0x1800b32c0
mov rcx, qword [0x1804b4dd8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x1800b326a
mov qword [rsp + 0x30], rbx
nop dword [rax]
mov rbx, qword [rcx]
mov edx, 0x20
call fcn.18022bb14
mov rcx, rbx
test rbx, rbx
jne 0x1800b3250
mov rbx, qword [rsp + 0x30]
mov rax, qword [0x1804b4dd8]
lea r8, [rsp + 0x20]
mov qword [rax], rax
mov rax, qword [0x1804b4dd8]
mov qword [rax + 8], rax
mov rax, qword [0x1804b4dd8]
mov rdx, qword [0x1804b4df0]
mov rcx, qword [0x1804b4de8]
mov qword [rsp + 0x20], rax
mov qword [0x1804b4de0], 0
call fcn.180054250
add rsp, 0x38
ret
push rbp
push rsi
sub rsp, 0x48
mov rsi, r8
mov rbp, rdx
cmp rdx, r8
je 0x1800b34cd
mov rdx, qword [0x1804b4de8]
movabs r8, 0x100000001b3
mov qword [rsp + 0x60], rbx
movabs rax, 0xcbf29ce484222325
mov qword [rsp + 0x68], rdi
mov rbx, rbp
mov qword [rsp + 0x70], r12
mov r12, qword [rbp + 8]
mov qword [rsp + 0x40], r13
movzx r13d, byte [rbp + 0x10]
xor r13, rax
mov qword [rsp + 0x38], r14
movzx eax, byte [rbp + 0x11]
imul r13, r8
mov qword [rsp + 0x30], r15
mov r15, qword [0x1804b4dd8]
xor r13, rax
movzx eax, byte [rbp + 0x12]
imul r13, r8
mov qword [rsp + 0x28], rdx
xor r13, rax
movzx eax, byte [rbp + 0x13]
imul r13, r8
xor r13, rax
movzx eax, byte [rbp + 0x14]
imul r13, r8
xor r13, rax
movzx eax, byte [rbp + 0x15]
imul r13, r8
xor r13, rax
movzx eax, byte [rbp + 0x16]
imul r13, r8
xor r13, rax
movzx eax, byte [rbp + 0x17]
imul r13, r8
xor r13, rax
imul r13, r8
and r13, qword [0x1804b4e00]
shl r13, 4
add r13, rdx
mov rax, qword [r13]
mov r14, qword [r13 + 8]
mov qword [rsp + 0x20], rax
nop word [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.18022bb14
dec qword [0x1804b4de0]
cmp rdi, r14
je 0x1800b33d8
cmp rbx, rsi
jne 0x1800b33a0
cmp qword [rsp + 0x20], rbp
jne 0x1800b34a7
mov qword [r13], rbx
jmp 0x1800b34a7
cmp qword [rsp + 0x20], rbp
jne 0x1800b33e8
mov qword [r13], r15
mov rax, r15
jmp 0x1800b33eb
mov rax, r12
mov qword [r13 + 8], rax
cmp rbx, rsi
je 0x1800b34a7
mov r13, qword [rsp + 0x28]
nop dword [rax]
movzx r14d, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r14, rax
movzx eax, byte [rbx + 0x11]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x12]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x13]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x14]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x15]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x16]
imul r14, rdx
xor r14, rax
movzx eax, byte [rbx + 0x17]
imul r14, rdx
xor r14, rax
imul r14, rdx
and r14, qword [0x1804b4e00]
shl r14, 4
add r14, r13
mov rbp, qword [r14 + 8]
nop
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.18022bb14
dec qword [0x1804b4de0]
cmp rdi, rbp
je 0x1800b34d7
cmp rbx, rsi
jne 0x1800b3480
mov qword [r14], rbx
mov r14, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x30]
mov qword [r12], rbx
mov qword [rbx + 8], r12
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rax, rsi
add rsp, 0x48
pop rsi
pop rbp
ret
mov qword [r14], r15
mov qword [r14 + 8], r15
cmp rbx, rsi
jne 0x1800b3400
jmp 0x1800b34a7