Function at 0x14002ca00
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
xchg rsi, rdx
mov rdx, rcx
xchg rdx, rsi
bsr rcx, rax
mov ebx, 1
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x14002cca6
lea rax, [rdx - 1]
xchg rdi, r12
mov qword [rsp + 0x38], r12
xchg r12, rdi
mov rdi, qword [rsi + 8]
or rax, rbx
bsr rcx, rax
xchg r8, rdi
mov rdi, r8
xchg r8, rdi
xchg r14, r12
mov qword [rsp + 0x40], r12
xchg r12, r14
inc ecx
shl rbx, cl
lea rcx, [rsi + 0x18]
lea rdx, [rbx + rbx]
call fcn.14002c160
xchg rdx, rbx
mov qword [rsi + 0x38], rdx
xchg rbx, rdx
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
xchg rdx, rcx
mov rdx, qword [rsi + 8]
xchg rdx, rcx
mov rcx, qword [rcx]
cmp rcx, rdi
je 0x14002cc2f
mov qword [rsp + 0x30], rbp
mov rax, rcx
movabs rbp, 0xcbf29ce484222325
movabs rbx, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx r9d, byte [rax + 0x10]
movzx edx, byte [rax + 0x11]
push r9
xor r9d, ebp
push r9
xor r9, qword [rsp + 8]
shr r9, 0x20
ror rbp, 0x20
xor r9d, ebp
ror rbp, 0x20
shl r9, 0x20
or r9, qword [rsp]
add rsp, 0x10
mov r11, qword [rsi + 0x30]
mov rcx, qword [rcx]
imul r9, rbx
push r9
xor r9d, edx
push r9
xor r9, qword [rsp + 8]
shr r9, 0x20
ror rdx, 0x20
xor r9d, edx
ror rdx, 0x20
shl r9, 0x20
xor r9, qword [rsp]
add rsp, 0x10
imul r9, rbx
and r11, r9
shl r11, 1
shl r11, 2
shl r11, 1
add r11, qword [rsi + 0x18]
mov r8, qword [r11]
cmp r8, rdi
jne 0x14002cb5b
xchg rbp, rax
mov qword [r11], rbp
xchg rbp, rax
xchg rbp, rax
mov qword [r11 + 8], rbp
xchg rbp, rax
jmp 0x14002cc18
mov rdx, qword [r11 + 8]
movzx r9d, word [rax + 0x10]
cmp r9w, word [rdx + 0x10]
jne 0x14002cbc1
xchg rdi, r10
mov rdi, qword [rdx]
xchg r10, rdi
cmp r10, rax
je 0x14002cbb4
xchg r10, r9
mov r10, qword [rax + 8]
xchg r9, r10
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
xchg r8, rdi
mov qword [r10 + 8], rdi
xchg r8, rdi
mov qword [rcx + 8], r9
xchg rdx, r11
mov qword [rax + 8], r11
xchg r11, rdx
xchg r10, rax
mov qword [r11 + 8], r10
xchg r10, rax
jmp 0x14002cc18
cmp r8, rdx
je 0x14002cbe4
nop
mov rdx, qword [rdx + 8]
cmp r9w, word [rdx + 0x10]
je 0x14002cc59
cmp r8, rdx
jne 0x14002cbcc
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
xchg r8, r13
mov r13, qword [rdx + 8]
xchg r13, r8
xchg rcx, rax
mov qword [r8], rcx
xchg rcx, rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
xchg r9, r8
mov qword [rax + 8], r9
xchg r8, r9
mov qword [r11], rax
mov rax, rcx
cmp rcx, rdi
jne 0x14002cac4
xchg rdi, rbp
mov rdi, qword [rsp + 0x30]
xchg rdi, rbp
mov rdi, qword [rsp + 0x38]
xchg r14, rbp
mov rbp, qword [rsp + 0x40]
xchg rbp, r14
xchg rbx, r15
mov r15, qword [rsp + 0x48]
xchg rbx, r15
add rsp, 0x20
push rbx
xchg qword [rsp + 8], rsi
add rsp, 0x10
ret
xchg r10, r12
mov r12, qword [rdx]
xchg r10, r12
mov r9, qword [rax + 8]
xchg rcx, r14
mov qword [r9], r14
xchg r14, rcx
xchg rdi, r8
mov rdi, qword [rcx + 8]
xchg rdi, r8
xchg r10, r13
mov qword [r8], r13
xchg r10, r13
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
xchg r8, r11
mov qword [r10 + 8], r11
xchg r11, r8
mov qword [rcx + 8], r9
xchg rdx, r10
mov qword [rax + 8], r10
xchg rdx, r10
jmp 0x14002cc18
lea rcx, [0x140001530]
call fcn.140154e00
int3