Function at 0x18000a3f0
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rbx
mov qword [r11 + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r12, r9
mov r15, r8
mov rbx, rdx
mov rdi, rcx
xor r14d, r14d
mov qword [r9], r14
mov ebp, r14d
mov qword [r11 + 0x10], r14
test rdx, rdx
je 0x18000a45e
mov rax, qword [rdx]
lea r8, [r11 + 0x10]
lea rdx, [0x180166e48]
mov rcx, rbx
call qword [rax]
test eax, eax
je 0x18000a456
mov rax, qword [rbx]
lea r8, [rsp + 0x88]
lea rdx, [0x180166f50]
mov rcx, rbx
call qword [rax]
mov rbp, qword [rsp + 0x88]
mov qword [rsp + 0x28], rbp
test rbp, rbp
jne 0x18000a478
test r15, r15
jne 0x18000a478
mov r14d, 1
jmp 0x18000a656
lea rsi, [rdi + 0x20]
mov qword [rsp + 0x20], rsi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 8]
nop
mov rax, qword [rdi + 0x50]
mov rdx, qword [rax + 0x4028]
mov r10, qword [rax + 0x4040]
nop dword [rax]
mov r8, qword [rdi + 0x50]
mov rax, qword [r8 + 0x4048]
add rax, qword [r8 + 0x4040]
cmp r10, rax
je 0x18000a580
test rdx, rdx
je 0x18000a4c5
mov rax, qword [rdx]
jmp 0x18000a4c8
mov rax, r14
mov rcx, qword [rax + 0x10]
dec rcx
and rcx, r10
mov rax, qword [rax + 8]
mov rcx, qword [rax + rcx*8]
cmp qword [rcx], rbp
je 0x18000a4e8
test rbp, rbp
jne 0x18000a578
mov r8d, r14d
nop dword [rax + rax]
test rdx, rdx
je 0x18000a4fa
mov rax, qword [rdx]
jmp 0x18000a4fd
mov rax, r14
mov rcx, qword [rax + 0x10]
dec rcx
and rcx, r10
mov rax, qword [rax + 8]
mov rcx, qword [rax + rcx*8]
cmp r8d, dword [rcx + 0x10]
jae 0x18000a578
test rdx, rdx
je 0x18000a51f
mov r9, qword [rdx]
jmp 0x18000a522
mov r9, r14
mov eax, r8d
lea r11, [rax*8]
mov rcx, qword [r9 + 0x10]
dec rcx
and rcx, r10
mov rax, qword [r9 + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 8]
cmp qword [r11 + rax], r15
jne 0x18000a570
test rdx, rdx
je 0x18000a553
mov rax, qword [rdx]
jmp 0x18000a556
mov rax, r14
mov rcx, qword [rax + 0x10]
dec rcx
and rcx, r10
mov rax, qword [rax + 8]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 8]
mov qword [r11 + rax], r14
inc r8d
jmp 0x18000a4f0
inc r10
jmp 0x18000a4a0
test rbp, rbp
jne 0x18000a699
mov rcx, r14
mov qword [rsp + 0x98], rcx
mov edx, 0x100
mov qword [rsp + 0x20], rdx
nop
mov r13, qword [rdi + 0x50]
add r13, rcx
mov rax, qword [r13 + 8]
mov rdi, qword [rax]
cmp rdi, rax
je 0x18000a621
mov rbx, qword [rdi + 0x18]
mov rax, qword [rdi + 0x20]
cmp rbx, rax
je 0x18000a60b
lea rbp, [rbx + 8]
cmp qword [rbx], r15
jne 0x18000a5fe
mov rcx, rax
sub rcx, qword [rdi + 0x18]
sar rcx, 3
mov qword [r12], rcx
cmp rcx, 1
je 0x18000a681
sub rax, rbp
mov r8, rax
mov rdx, rbp
mov rcx, rbx
call fcn.1801188c0
add qword [rdi + 0x20], 0xfffffffffffffff8
mov rax, qword [rdi + 0x20]
jmp 0x18000a606
add rbx, 8
add rbp, 8
cmp rbx, rax
jne 0x18000a5c4
mov rdi, qword [rdi]
cmp rdi, qword [r13 + 8]
jne 0x18000a5b3
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x20]
add rcx, 0x40
mov qword [rsp + 0x98], rcx
sub rdx, 1
mov qword [rsp + 0x20], rdx
mov rdi, qword [rsp + 0x80]
jne 0x18000a5a0
mov rbp, qword [rsp + 0x88]
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + 0x10]
nop
test rbp, rbp
je 0x18000a666
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x10]
nop
mov eax, r14d
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8, rdi
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.18000bd70
mov rdi, qword [rax]
jmp 0x18000a60e
mov r13b, 1
mov rax, rbp
shr rax, 0xc
movzx r9d, al
shl r9, 6
add r9, r8
mov qword [rsp + 0x98], r9
movzx edx, bpl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
mov rax, rbp
sar rax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rax, rbp
sar rax, 0x38
movzx ecx, al
xor rdx, rcx
imul rdx, r8
mov rcx, qword [r9 + 0x30]
and rcx, rdx
add rcx, rcx
mov rax, qword [r9 + 0x18]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r9 + 8]
je 0x18000a781
mov rax, qword [rax + rcx*8]
cmp rbp, qword [rdi + 0x10]
je 0x18000a784
nop
cmp rdi, rax
je 0x18000a781
mov rdi, qword [rdi + 8]
cmp rbp, qword [rdi + 0x10]
jne 0x18000a770
jmp 0x18000a784
mov rdi, r14
test rdi, rdi
je 0x18000a822
cmp rdi, qword [r9 + 8]
je 0x18000a822
mov rax, qword [rdi + 0x20]
test r15, r15
jne 0x18000a7c1
sub rax, qword [rdi + 0x18]
sar rax, 3
mov qword [r12], rax
mov r8, rdi
lea rdx, [rsp + 0x88]
mov rcx, r9
call fcn.18000bd70
jmp 0x18000a822
mov rbx, qword [rdi + 0x18]
cmp rbx, rax
je 0x18000a822
lea rbp, [rbx + 8]
nop
cmp qword [rbx], r15
jne 0x18000a83c
sub rax, rbp
mov r8, rax
mov rdx, rbp
mov rcx, rbx
call fcn.1801188c0
mov rax, qword [rdi + 0x20]
add rax, 0xfffffffffffffff8
mov qword [rdi + 0x20], rax
inc qword [r12]
cmp qword [rdi + 0x18], rax
jne 0x18000a847
mov r8, rdi
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x98]
call fcn.18000bd70
test r13b, r13b
je 0x18000a644
mov rbp, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
add rcx, 0x18
mov rax, qword [rcx]
mov rdx, rbp
call qword [rax + 0x18]
jmp 0x18000a64c
add rbx, 8
add rbp, 8
xor r13b, r13b
cmp rbx, rax
jne 0x18000a7d0
jmp 0x18000a811