Function at 0x180154cc0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov rbp, r8
mov r13, rdx
mov rdx, rcx
cmp r13, r8
je 0x1801544c9
lea r15, [rcx + 8]
mov r12, qword [r15]
mov qword [rsp + 0x30], r12
mov r8, qword [rcx + 0x18]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x40], r15
mov rax, qword [r13 + 8]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], rax
mov r14, r13
mov qword [rsp + 0x50], r13
mov rax, qword [r13 + 8]
mov qword [rsp + 0x20], rax
movzx ecx, byte [r13 + 0x10]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs r9, 0x100000001b3
imul rcx, r9
movzx eax, byte [r13 + 0x11]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x12]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x13]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x14]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x15]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x16]
xor rcx, rax
imul rcx, r9
movzx eax, byte [r13 + 0x17]
xor rcx, rax
imul rcx, r9
mov rax, qword [rdx + 0x30]
and rax, rcx
shl rax, 4
add rax, r8
mov qword [rsp + 0xb8], rax
mov rcx, qword [rax]
mov qword [rsp + 0xc0], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0xc8], rax
nop dword [rax]
nop word [rax + rax]
cmp r14, rax
sete dil
mov rbx, r14
mov rsi, qword [r14]
mov r14, rsi
mov qword [rsp + 0x50], rsi
lea rcx, [rbx + 0x10]
call fcn.180150790
mov edx, 0x30
mov rcx, rbx
call fcn.180286270
dec qword [r15 + 8]
test dil, dil
jne 0x1801543bf
cmp rsi, rbp
mov rax, qword [rsp + 0xc8]
jne 0x180154360
cmp qword [rsp + 0xc0], r13
jne 0x1801544bd
mov rax, qword [rsp + 0xb8]
mov qword [rax], rsi
jmp 0x1801544bd
mov rax, qword [rsp + 0xb8]
cmp qword [rsp + 0xc0], r13
jne 0x1801543d6
mov qword [rax], r12
jmp 0x1801543db
mov r12, qword [rsp + 0x20]
mov qword [rax + 8], r12
cmp rsi, rbp
je 0x1801544bd
nop dword [rax + rax]
movzx ecx, byte [r14 + 0x10]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [r14 + 0x11]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x12]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x13]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x14]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x15]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x16]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [r14 + 0x17]
xor rcx, rax
imul rcx, rdx
mov rax, qword [rsp + 0xb0]
mov r13, qword [rax + 0x30]
and r13, rcx
shl r13, 4
add r13, qword [rsp + 0x28]
mov r12, qword [r13 + 8]
cmp r14, r12
sete sil
mov rdi, r14
mov rbx, qword [r14]
mov r14, rbx
mov qword [rsp + 0x50], rbx
lea rcx, [rdi + 0x10]
call fcn.180150790
mov edx, 0x30
mov rcx, rdi
call fcn.180286270
dec qword [r15 + 8]
test sil, sil
jne 0x1801544dd
cmp rbx, rbp
jne 0x180154480
mov qword [r13], rbx
mov rax, qword [rsp + 0x38]
mov qword [rax], r14
mov qword [r14 + 8], rax
mov rax, rbp
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rdx, qword [rsp + 0x30]
mov qword [r13], rdx
mov qword [r13 + 8], rdx
cmp rbx, rbp
jne 0x1801543f0
jmp 0x1801544bd
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x180154d78
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x180154d0d
mov rdx, qword [rdi + 8]
mov r8, rdx
mov rdx, qword [rdx]
mov rcx, rdi
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x180154250
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rsi, qword [rcx]
test rsi, rsi
je 0x180154d45
mov rbx, qword [rsi]
lea rcx, [rsi + 0x10]
call fcn.180150790
mov edx, 0x30
mov rcx, rsi
call fcn.180286270
mov rsi, rbx
test rbx, rbx
jne 0x180154d24
mov rax, qword [rdi + 8]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x30]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
call fcn.180023d40
nop
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret