Function at 0x18000d710
Capabilities:
Hash data using fnv

Disassembly:
push r12
push r13
push r14
mov eax, 0x40
call fcn.18002da60
sub rsp, rax
xor r14d, r14d
mov r12, rcx
mov r8, rcx
mov qword [rdx], r14
mov rax, qword [rcx]
mov r13, rdx
lea rcx, [rsp + 0x68]
xor edx, edx
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x60], r14d
call qword [rax + 0x10]
test eax, eax
jne 0x18000d768
mov rax, qword [rsp + 0x68]
mov qword [r13], rax
xor eax, eax
add rsp, 0x40
pop r14
pop r13
pop r12
ret
lea rcx, [rsp + 0x70]
call qword [0x1800b4320]
test eax, eax
je 0x18000d789
mov ecx, eax
call fcn.1800028d0
add rsp, 0x40
pop r14
pop r13
pop r12
ret
lea rcx, [rsp + 0x60]
call qword [0x1800b4350]
test eax, eax
jne 0x18000d777
call fcn.180007b80
mov r8d, dword [rsp + 0x60]
lea rdx, [rsp + 0x78]
mov rcx, qword [rax + 0x28]
call fcn.180006da0
test eax, eax
jne 0x18000d87f
mov ecx, 0xf8
call fcn.18000bdb0
test rax, rax
je 0x18000da35
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rcx, rax
call fcn.180009720
mov r8, rax
mov qword [rsp + 0x68], rax
test rax, rax
je 0x18000da35
mov rcx, qword [r12 + 0x20]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbp
mov rbx, qword [rcx + 0x10]
mov ecx, dword [rcx]
mov qword [rsp + 0x28], rsi
lea rsi, [rbx + rcx*8]
mov qword [rsp + 0x20], rdi
mov rdi, r14
cmp rbx, rsi
je 0x18000d890
nop dword [rax]
cmp qword [rbx], rdi
jne 0x18000d88a
add rbx, 8
cmp rbx, rsi
jne 0x18000d820
mov rax, qword [r12]
lea r9, [0x18000d6c0]
mov rdx, r12
xor ecx, ecx
call qword [rax]
mov edi, eax
test eax, eax
je 0x18000d8e6
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x18000d864
mov rcx, rbx
call fcn.180009660
mov rcx, rbx
call fcn.18000be10
mov ecx, edi
call fcn.1800028d0
mov rsi, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x20]
add rsp, 0x40
pop r14
pop r13
pop r12
ret
mov rdi, qword [rbx]
nop dword [rax]
test rdi, rdi
je 0x18000d82e
mov rdx, qword [rdi + 0x10]
mov rcx, r8
call fcn.18000a580
mov ebp, eax
test eax, eax
jne 0x18000d8c8
mov rdi, qword [rdi]
test rdi, rdi
jne 0x18000d8c1
nop
add rbx, 8
cmp rbx, rsi
je 0x18000d8c1
mov rdi, qword [rbx]
test rdi, rdi
je 0x18000d8b0
mov r8, qword [rsp + 0x68]
jmp 0x18000d890
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x18000d8e2
mov rcx, rbx
call fcn.180009660
mov rcx, rbx
call fcn.18000be10
mov eax, ebp
jmp 0x18000d86b
mov r9d, dword [r12 + 8]
test r9d, r9d
jne 0x18000d90c
lea edx, [r9 + 1]
lea rcx, [r12 + 8]
call fcn.18000cdd0
mov r9d, dword [r12 + 8]
test r9d, r9d
je 0x18000da2b
mov r10, qword [r12 + 0x18]
mov r8, qword [rsp + 0x68]
test r9d, r9d
jne 0x18000d927
mov esi, dword [rsp + 0x60]
mov rbx, r14
jmp 0x18000d9d7
movzx ecx, r8b
mov rdx, r8
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 esi, dl
xor edx, edx
imul ecx, ecx, 0x1000193
xor eax, ecx
imul eax, eax, 0x1000193
xor esi, eax
imul esi, esi, 0x1000193
mov eax, esi
div r9d
mov rax, qword [r10 + rdx*8]
lea rbx, [r10 + rdx*8]
test rax, rax
je 0x18000d9d7
cmp qword [rax + 8], r8
je 0x18000d9d7
mov rbx, rax
mov rax, qword [rax]
test rax, rax
jne 0x18000d9c6
cmp qword [rbx], r14
jne 0x18000da20
mov ecx, 0x18
call fcn.18000bdb0
test rax, rax
je 0x18000d9fc
mov qword [rax], r14
mov rcx, qword [rsp + 0x68]
mov dword [rax + 0x10], esi
mov qword [rax + 8], rcx
jmp 0x18000d9ff
mov rax, r14
mov qword [rbx], rax
test rax, rax
je 0x18000da2b
inc qword [r12 + 0x10]
mov rdx, qword [r12 + 0x10]
lea rcx, [r12 + 8]
call fcn.18000cdd0
mov r8, qword [rsp + 0x68]
mov qword [r13], r8
xor eax, eax
jmp 0x18000d86b
mov eax, 2
jmp 0x18000d86b
mov eax, 2
add rsp, 0x40
pop r14
pop r13
pop r12
ret