Function at 0x18000a670
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
mov eax, 0x30
call fcn.180060d60
sub rsp, rax
mov r9d, dword [rcx + 0x30]
mov r8, qword [rdx]
mov r10, qword [rcx + 0x40]
mov rbx, rdx
mov r12, rcx
test r9d, r9d
je 0x18000a770
movzx ecx, r8b
mov rdi, r8
xor ecx, 0x811c9dc5
shr rdi, 8
movzx eax, dil
shr rdi, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dil
shr rdi, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dil
shr rdi, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dil
shr rdi, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dil
shr rdi, 8
imul ecx, ecx, 0x1000193
xor eax, ecx
movzx ecx, dil
shr rdi, 8
movzx edx, dil
shr rdi, 8
imul eax, eax, 0x1000193
xor ecx, eax
movzx eax, dil
imul ecx, ecx, 0x1000193
xor edx, ecx
imul edx, edx, 0x1000193
xor eax, edx
xor edx, edx
imul eax, eax, 0x1000193
div r9d
mov rax, qword [r10 + rdx*8]
lea rdx, [r10 + rdx*8]
test rax, rax
je 0x18000a761
nop dword [rax]
cmp qword [rax + 8], r8
je 0x18000a761
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x18000a750
test rdx, rdx
je 0x18000a770
cmp qword [rdx], 0
jne 0x18000a848
mov rbp, qword [rbx + 0x10]
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbp
repne scasb al, byte [rdi]
not rcx
lea rdi, [rcx - 1]
call fcn.18000b800
mov rsi, rax
test rax, rax
je 0x18000a90e
lea r8, [rdi + 1]
mov rdx, rbp
mov rcx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_strncpy
mov ecx, 0x10
call fcn.18000b800
xor ebp, ebp
mov rdi, rax
test rax, rax
je 0x18000a7c6
mov qword [rax], rsi
mov dword [rax + 8], 1
jmp 0x18000a7c9
mov rdi, rbp
test rdi, rdi
je 0x18000a7eb
inc dword [rdi + 8]
test rdi, rdi
je 0x18000a7eb
dec dword [rdi + 8]
jne 0x18000a7eb
mov rcx, qword [rdi]
call fcn.18000b860
mov rcx, rdi
call fcn.18000b860
mov edx, dword [r12 + 0xb8]
mov rcx, qword [r12 + 0xc8]
lea r8, [rsp + 0x70]
xor r9d, r9d
call fcn.180009080
test rax, rax
je 0x18000a810
mov rbp, qword [rax]
mov rsi, qword [rbp + 0x10]
mov r8, qword [rbx + 8]
lea rcx, [rsp + 0x60]
mov rdx, qword [rsi + 8]
call qword [0x1800865e0]
cmp eax, 0x1f4
jne 0x18000a85b
test rdi, rdi
je 0x18000a848
dec dword [rdi + 8]
jne 0x18000a848
mov rcx, qword [rdi]
call fcn.18000b860
mov rcx, rdi
call fcn.18000b860
xor eax, eax
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
test eax, eax
je 0x18000a895
mov ecx, eax
call fcn.180002560
mov ebx, eax
test rdi, rdi
je 0x18000a882
dec dword [rdi + 8]
jne 0x18000a882
mov rcx, qword [rdi]
call fcn.18000b860
mov rcx, rdi
call fcn.18000b860
mov eax, ebx
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x18
call fcn.18000b800
test rax, rax
je 0x18000a8f4
mov edx, dword [rbx + 0x18]
mov r9, qword [rbx + 0x10]
mov r8, qword [rsp + 0x60]
mov dword [rax], edx
mov qword [rax + 8], r8
mov qword [rax + 0x10], r9
mov rdx, qword [rbx]
lea rcx, [r12 + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x20]
call fcn.18000a400
lea rcx, [rsi + 0x10]
xor r8d, r8d
mov rdx, rbx
call fcn.180009220
mov ebx, eax
test eax, eax
je 0x18000a82e
jmp 0x18000a868
test rdi, rdi
je 0x18000a90e
dec dword [rdi + 8]
jne 0x18000a90e
mov rcx, qword [rdi]
call fcn.18000b860
mov rcx, rdi
call fcn.18000b860
mov eax, 2
mov rbx, qword [rsp + 0x68]
add rsp, 0x30
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret