Function at 0x14006b000
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rsi
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov r15, rdx
mov rsi, rcx
test r9, r9
je 0x14006b70d
lea rax, [r9 - 0x1000000]
movabs r11, 0x7ffffefffffe
cmp rax, r11
ja 0x14006b70d
test r8, r8
je 0x14006b70d
lea rax, [r8 - 0x1000000]
cmp rax, r11
ja 0x14006b70d
lea r10, [rcx + 0x68]
mov qword [rsp + 0xb0], rbx
mov rax, r8
mov qword [rsp + 0xb8], rdi
and eax, 0xfff
mov qword [rsp + 0xc0], r12
mov qword [rbp + 0x2f], rax
xor edi, edi
mov rax, r8
mov qword [rsp + 0x88], r13
shr rax, 0xc
and eax, 0x1ff
mov qword [rbp + 0x1f], rax
mov rax, r8
shr rax, 0x15
and eax, 0x1ff
mov qword [rbp - 9], rax
mov rax, r8
shr rax, 0x1e
and eax, 0x1ff
shr r8, 0x27
mov qword [rbp + 0x7f], rax
and r8d, 0x1ff
movabs rax, 0xcbf29ce484222325
lea r13, [r9 + r8*8]
movabs r8, 0x100000001b3
movzx edx, r13b
xor rdx, rax
mov rax, r13
shr rax, 8
movzx ecx, al
mov rax, r13
imul rdx, r8
shr rax, 0x10
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r13
xor rdx, rcx
shr rax, 0x18
movzx ecx, al
mov rax, r13
imul rdx, r8
shr rax, 0x20
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r13
xor rdx, rcx
shr rax, 0x28
movzx ecx, al
mov rax, r13
imul rdx, r8
shr rax, 0x30
xor rdx, rcx
movzx ecx, al
imul rdx, r8
mov rax, r13
xor rdx, rcx
shr rax, 0x38
mov rcx, qword [rsi + 0x98]
imul rdx, r8
xor rdx, rax
mov rax, qword [rsi + 0x80]
imul rdx, r8
and rcx, rdx
shl rcx, 4
add rax, rcx
mov rcx, qword [rsi + 0x70]
mov rbx, qword [rax + 8]
cmp rbx, rcx
je 0x14006b196
mov rax, qword [rax]
cmp r13, qword [rbx + 0x10]
je 0x14006b199
cmp rbx, rax
je 0x14006b196
mov rbx, qword [rbx + 8]
cmp r13, qword [rbx + 0x10]
jne 0x14006b185
jmp 0x14006b199
mov rbx, rdi
test rbx, rbx
mov qword [rsp + 0x80], r14
cmove rbx, rcx
cmp rbx, rcx
je 0x14006b1d4
mov rcx, qword [rbx + 0x18]
lea r12, [r15 + 8]
shr rcx, 5
dec rcx
shl rcx, 5
mov r14, rcx
xor r14, qword [rbx + 0x18]
and r14, 0xffffffffffffffdf
xor r14, rcx
mov qword [r12], r14
jmp 0x14006b24d
mov qword [r15], r13
mov r14, rdi
mov qword [rbp - 1], rdi
test r13, r13
je 0x14006b21c
lea rax, [r13 - 0x1000000]
cmp rax, r11
ja 0x14006b21c
mov rdx, qword [rsi + 0x30]
lea r8, [rbp - 1]
mov qword [rsp + 0x28], 1
mov r9, r13
mov rcx, rsi
mov qword [rsp + 0x20], 8
call fcn.14006aef0
mov r14, qword [rbp - 1]
lea r10, [rsi + 0x68]
mov qword [r15 + 8], r14
lea r12, [r15 + 8]
test r14, r14
je 0x14006b24d
lea r8, [rbp - 1]
mov qword [rbp - 1], r13
lea rdx, [rbp + 0xf]
mov rcx, r10
call fcn.14006d120
mov rcx, qword [rax]
mov qword [rcx + 0x18], r14
or qword [r12], 0x20
mov r14, qword [r12]
cmp rbx, qword [rsi + 0x70]
lea rbx, [rsi + 0x68]
je 0x14006b26c
test r14, r14
jne 0x14006b26c
lea rdx, [rbp - 1]
mov qword [rbp - 1], r13
mov rcx, rbx
call fcn.14006c780
mov rax, qword [r12]
test rax, rax
jne 0x14006b2b3
mov rcx, rbx
call fcn.14006c6c0
xor eax, eax
mov r14, qword [rsp + 0x80]
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xb0]
mov r13, qword [rsp + 0x88]
add rsp, 0x90
pop r15
pop rsi
pop rbp
ret
mov rcx, qword [rbp + 0x7f]
lea r8, [rbp - 1]
movabs r13, 0xfffffffff000
lea rdx, [rbp + 0xf]
and r13, rax
lea rcx, [rcx*8]
add r13, rcx
lea rcx, [rsi + 0xa8]
mov qword [rbp - 1], r13
call fcn.14006d050
mov rbx, qword [rbp + 0xf]
cmp rbx, qword [rsi + 0xb0]
je 0x14006b31d
mov r14, qword [rbx + 0x18]
lea r13, [r15 + 0x18]
mov rax, r14
shr rax, 5
dec rax
shl rax, 5
xor r14, rax
and r14, 0xffffffffffffffdf
xor r14, rax
mov qword [r13], r14
jmp 0x14006b3c1
mov qword [r15 + 0x10], r13
mov r14, rdi
mov qword [rbp - 1], rdi
test r13, r13
je 0x14006b36c
lea rax, [r13 - 0x1000000]
movabs rcx, 0x7ffffefffffe
cmp rax, rcx
ja 0x14006b36c
mov rdx, qword [rsi + 0x30]
lea r8, [rbp - 1]
mov qword [rsp + 0x28], 1
mov r9, r13
mov rcx, rsi
mov qword [rsp + 0x20], 8
call fcn.14006aef0
mov r14, qword [rbp - 1]
mov qword [r15 + 0x18], r14
lea r13, [r15 + 0x18]
test r14, r14
je 0x14006b3c1
mov rax, qword [r12]
lea r8, [rbp + 0xf]
movabs rdx, 0xfffffffff000
and rax, rdx
mov rdx, qword [rbp + 0x7f]
lea rcx, [rdx*8]
add rax, rcx
lea rdx, [rbp - 1]
lea rcx, [rsi + 0xa8]
mov qword [rbp + 0xf], rax
call fcn.14006d120
mov rcx, qword [rax]
mov qword [rcx + 0x18], r14
or qword [r13], 0x20
mov r14, qword [r13]
cmp rbx, qword [rsi + 0xb0]
lea rbx, [rsi + 0xa8]
je 0x14006b408
test r14, r14
movabs r14, 0xfffffffff000
jne 0x14006b412
mov rdx, qword [rbp + 0x7f]
mov rax, qword [r12]
and rax, r14
lea rcx, [rdx*8]
add rax, rcx
lea rdx, [rbp + 0x7f]
mov rcx, rbx
mov qword [rbp + 0x7f], rax
call fcn.14006c780
jmp 0x14006b412
movabs r14, 0xfffffffff000
mov rax, qword [r13]
test rax, rax
jne 0x14006b428
mov rcx, rbx
call fcn.14006c6c0
jmp 0x14006b27d
mov rcx, qword [rbp - 9]
lea r8, [rbp + 0x7f]
and rax, r14
lea rdx, [rbp + 0xf]
lea r13, [rcx*8]
add r13, rax
lea rcx, [rsi + 0xe8]
mov qword [rbp + 0x7f], r13
call fcn.14006d050
mov rbx, qword [rbp + 0xf]
lea r12, [rsi + 0xf0]
cmp rbx, qword [r12]
je 0x14006b48c
mov r14, qword [rbx + 0x18]
lea r13, [r15 + 0x28]
mov rax, r14
shr rax, 5
dec rax
shl rax, 5
xor r14, rax
and r14, 0xffffffffffffffdf
xor r14, rax
mov qword [r13], r14
jmp 0x14006b539
mov qword [r15 + 0x20], r13
mov r14, rdi
mov qword [rbp + 0x7f], rdi
test r13, r13
je 0x14006b4e4
lea rax, [r13 - 0x1000000]
movabs rcx, 0x7ffffefffffe
cmp rax, rcx
ja 0x14006b4dd
mov rdx, qword [rsi + 0x30]
lea r8, [rbp + 0x7f]
mov qword [rsp + 0x28], 1
mov r9, r13
mov rcx, rsi
mov qword [rsp + 0x20], 8
call fcn.14006aef0
mov r14, qword [rbp + 0x7f]
jmp 0x14006b4e4
lea r12, [rsi + 0xf0]
mov qword [r15 + 0x28], r14
lea r13, [r15 + 0x28]
lea rcx, [rsi + 0xe8]
test r14, r14
je 0x14006b539
mov r8, qword [rbp - 9]
movabs rdx, 0xfffffffff000
mov rax, qword [r15 + 0x18]
and rax, rdx
lea rdx, [r8*8]
add rax, rdx
lea r8, [rbp + 0x7f]
lea rdx, [rbp + 0xf]
mov qword [rbp + 0x7f], rax
call fcn.14006d120
mov rcx, qword [rax]
mov qword [rcx + 0x18], r14
or qword [r13], 0x20
mov r14, qword [r13]
cmp rbx, qword [r12]
lea rbx, [rsi + 0xe8]
je 0x14006b57d
test r14, r14
movabs r14, 0xfffffffff000
jne 0x14006b587
mov rdx, qword [rbp - 9]
mov rax, qword [r15 + 0x18]
and rax, r14
lea rcx, [rdx*8]
add rax, rcx
lea rdx, [rbp + 0x7f]
mov rcx, rbx
mov qword [rbp + 0x7f], rax
call fcn.14006c780
jmp 0x14006b587
movabs r14, 0xfffffffff000
mov rax, qword [r13]
test rax, rax
jne 0x14006b59d
mov rcx, rbx
call fcn.14006c6c0
jmp 0x14006b27d
mov rcx, qword [rbp + 0x1f]
lea r12, [rsi + 0x128]
and rax, r14
lea r8, [rbp + 0x1f]
lea rdx, [rbp + 0xf]
lea rcx, [rcx*8]
lea r13, [rax + rcx]
mov qword [rbp + 0x7f], rcx
mov rcx, r12
mov qword [rbp + 0x1f], r13
call fcn.14006d050
mov rbx, qword [rbp + 0xf]
lea r14, [rsi + 0x130]
cmp rbx, qword [r14]
je 0x14006b64d
mov rdi, qword [rbx + 0x18]
lea rsi, [r15 + 0x38]
mov rax, rdi
shr rax, 5
dec rax
shl rax, 5
xor rdi, rax
and rdi, 0xffffffffffffffdf
xor rdi, rax
mov qword [rsi], rdi
mov r13, qword [rbp + 0x7f]
cmp rbx, qword [r14]
movabs rbx, 0xfffffffff000
je 0x14006b634
test rdi, rdi
jne 0x14006b634
mov rax, qword [r15 + 0x28]
lea rdx, [rbp + 0x7f]
and rax, rbx
mov rcx, r12
add rax, r13
mov qword [rbp + 0x7f], rax
call fcn.14006c780
mov rax, qword [rsi]
test rax, rax
jne 0x14006b701
mov rcx, r12
call fcn.14006c6c0
jmp 0x14006b27d
mov qword [r15 + 0x30], r13
mov qword [rbp - 1], rdi
test r13, r13
je 0x14006b6b1
lea rax, [r13 - 0x1000000]
movabs rcx, 0x7ffffefffffe
cmp rax, rcx
ja 0x14006b6aa
mov rdx, qword [rsi + 0x30]
lea rax, [rsi + 0x128]
mov qword [rsp + 0x28], 1
lea r8, [rbp - 1]
mov r9, r13
mov qword [rbp + 0x1f], rax
mov rcx, rsi
mov qword [rsp + 0x20], 8
call fcn.14006aef0
mov rcx, qword [rbp + 0x1f]
mov rdi, qword [rbp - 1]
jmp 0x14006b6b4
lea r14, [rsi + 0x130]
mov rcx, r12
mov qword [r15 + 0x38], rdi
lea rsi, [r15 + 0x38]
test rdi, rdi
je 0x14006b602
mov r13, qword [rbp + 0x7f]
lea r8, [rbp + 0x7f]
mov rax, qword [r15 + 0x28]
movabs rdx, 0xfffffffff000
and rax, rdx
lea rdx, [rbp + 0x1f]
add rax, r13
mov qword [rbp + 0x7f], rax
call fcn.14006d120
mov rcx, qword [rax]
mov qword [rcx + 0x18], rdi
or qword [rsi], 0x20
mov rdi, qword [rsi]
jmp 0x14006b606
and rax, rbx
add rax, qword [rbp + 0x2f]
jmp 0x14006b27f
xor eax, eax
add rsp, 0x90
pop r15
pop rsi
pop rbp
ret