Function at 0x14000bf20
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rdi
mov eax, 0x30
call fcn.1401be380
sub rsp, rax
cmp byte [rdx + 0x32], 0
mov rbx, rdx
mov r10, rcx
je 0x14000bf47
mov r9, qword [rdx + 8]
jmp 0x14000bf4a
mov r9, qword [rdx]
mov r11d, dword [rcx + 0x18]
mov rdi, qword [rcx + 0x28]
lea rbp, [rcx + 0x18]
mov qword [rsp + 0x58], rsi
test r11d, r11d
je 0x14000c066
movzx ecx, r9b
mov r8, r9
xor ecx, 0x811c9dc5
shr r8, 8
movzx eax, r8b
shr r8, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, r8b
shr r8, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, r8b
shr r8, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, r8b
shr r8, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, r8b
shr r8, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, r8b
shr r8, 8
movzx edx, r8b
shr r8, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, r8b
imul ecx, ecx, 0x1000193
xor edx, ecx
imul edx, edx, 0x1000193
xor eax, edx
xor edx, edx
imul eax, eax, 0x1000193
div r11d
mov rax, qword [rdi + rdx*8]
lea rdx, [rdi + rdx*8]
test rax, rax
je 0x14000c021
nop dword [rax]
cmp qword [rax + 8], r9
je 0x14000c021
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x14000c010
test rdx, rdx
je 0x14000c066
mov rax, qword [rdx]
test rax, rax
je 0x14000c066
mov rax, qword [rax + 0x10]
cmp byte [rax], 0
je 0x14000c053
cmp byte [rbx + 0x20], 0
je 0x14000c053
mov edx, 1
mov byte [rax], dl
xor eax, eax
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
pop rbp
pop rbx
ret
xor edx, edx
mov byte [rax], dl
xor eax, eax
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
pop rbp
pop rbx
ret
mov edx, dword [r10 + 0xb8]
mov rcx, qword [r10 + 0xc8]
lea r8, [rsp + 0x60]
xor r9d, r9d
call fcn.14000a640
test rax, rax
jne 0x14000c08a
xor edi, edi
jmp 0x14000c08d
mov rdi, qword [rax]
mov rdi, qword [rdi + 0x10]
mov r9, qword [rbx + 0x10]
lea rcx, [rsp + 0x50]
mov r8, qword [rdi + 8]
xor edx, edx
call qword [0x1402c59e0]
cmp eax, 0x1f4
je 0x14000c251
test eax, eax
je 0x14000c0c9
mov ecx, eax
call fcn.140003390
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
pop rbp
pop rbx
ret
cmp byte [rbx + 0x32], 0
mov rsi, qword [rbx]
je 0x14000c0e5
mov rax, qword [rsp + 0x50]
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rax, qword [rbx + 8]
mov rsi, qword [rax]
mov ecx, 0x20
call fcn.14000cde0
test rax, rax
je 0x14000c260
movzx edx, byte [rbx + 0x20]
mov r10, qword [rbx + 0x18]
mov r9, qword [rdi + 8]
mov r8, qword [rsp + 0x50]
mov byte [rax], dl
lea rdx, [rsp + 0x20]
mov rcx, rbp
mov qword [rax + 0x10], r9
mov qword [rax + 0x18], r10
mov qword [rax + 8], r8
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rax
call fcn.14000b920
mov r8d, dword [rdi + 0x28]
test r8d, r8d
jne 0x14000c151
lea edx, [r8 + 1]
lea rcx, [rdi + 0x28]
call fcn.140009c70
mov r8d, dword [rdi + 0x28]
test r8d, r8d
je 0x14000c260
mov r9, qword [rdi + 0x38]
test r8d, r8d
jne 0x14000c165
mov ebp, dword [rsp + 0x50]
xor ebx, ebx
jmp 0x14000c215
movzx ecx, sil
mov rdx, rsi
xor ecx, 0x811c9dc5
shr rdx, 8
movzx eax, dl
shr rdx, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dl
shr rdx, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dl
shr rdx, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dl
shr rdx, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dl
shr rdx, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dl
shr rdx, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dl
shr rdx, 8
movzx ebp, dl
xor edx, edx
imul ecx, ecx, 0x1000193
xor eax, ecx
imul eax, eax, 0x1000193
xor ebp, eax
imul ebp, ebp, 0x1000193
mov eax, ebp
div r8d
mov rax, qword [r9 + rdx*8]
lea rbx, [r9 + rdx*8]
test rax, rax
je 0x14000c215
cmp qword [rax + 8], rsi
je 0x14000c215
mov rbx, rax
mov rax, qword [rax]
test rax, rax
jne 0x14000c204
cmp qword [rbx], 0
jne 0x14000c251
mov ecx, 0x18
call fcn.14000cde0
test rax, rax
je 0x14000c238
mov qword [rax], 0
mov qword [rax + 8], rsi
mov dword [rax + 0x10], ebp
mov qword [rbx], rax
test rax, rax
je 0x14000c260
inc qword [rdi + 0x30]
mov rdx, qword [rdi + 0x30]
lea rcx, [rdi + 0x28]
call fcn.140009c70
xor eax, eax
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
pop rbp
pop rbx
ret
mov eax, 2
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
pop rbp
pop rbx
ret