Function at 0x1800d31a0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov r15, r8
mov r8, rcx
cmp rdx, r15
je 0x1800d3402
lea r12, [rcx + 8]
mov r13, qword [r12]
mov qword [rsp + 0x38], r13
mov r9, qword [rcx + 0x18]
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x48], r12
mov rax, qword [rdx + 8]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rax
mov r14, rdx
mov qword [rsp + 0x58], rdx
mov rax, qword [rdx + 8]
mov qword [rsp + 0x28], rax
movzx ecx, byte [rdx + 0x10]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs r10, 0x100000001b3
imul rcx, r10
movzx eax, byte [rdx + 0x11]
xor rcx, rax
imul rcx, r10
movzx eax, byte [rdx + 0x12]
xor rcx, rax
imul rcx, r10
movzx eax, byte [rdx + 0x13]
xor rcx, rax
imul rcx, r10
mov rax, qword [r8 + 0x30]
and rax, rcx
shl rax, 4
add rax, r9
mov qword [rsp + 0xd0], rax
mov rcx, qword [rax]
mov qword [rsp + 0xd8], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x20], rax
nop dword [rax]
cmp r14, rax
sete sil
mov rdi, r14
mov rbp, qword [r14]
mov r14, rbp
mov qword [rsp + 0x58], rbp
lea rax, [rdi + 0x10]
mov qword [rsp + 0x60], rax
lea rbx, [rax + 8]
mov qword [rsp + 0x68], rbx
lea rcx, [rbx + 0x18]
call fcn.180021250
nop
mov rcx, rbx
call fcn.18009d280
mov edx, 0x58
mov rcx, rdi
call fcn.18026a1a0
dec qword [r12 + 8]
test sil, sil
jne 0x1800d32f0
cmp rbp, r15
mov rax, qword [rsp + 0x20]
jne 0x1800d3270
mov rax, qword [rsp + 0xd8]
cmp rax, qword [rsp + 0xc8]
jne 0x1800d33f6
mov rax, qword [rsp + 0xd0]
mov qword [rax], rbp
jmp 0x1800d33f6
mov rax, qword [rsp + 0xd8]
cmp rax, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xd0]
jne 0x1800d330f
mov qword [rax], r13
jmp 0x1800d3314
mov r13, qword [rsp + 0x28]
mov qword [rax + 8], r13
cmp rbp, r15
je 0x1800d33f6
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
mov rax, qword [rsp + 0xc0]
and rcx, qword [rax + 0x30]
shl rcx, 4
mov rax, qword [rsp + 0x30]
add rax, rcx
mov qword [rsp + 0xc8], rax
mov r13, qword [rax + 8]
nop dword [rax]
cmp r14, r13
sete bpl
mov rsi, r14
mov rbx, qword [r14]
mov r14, rbx
mov qword [rsp + 0x58], rbx
lea rax, [rsi + 0x10]
mov qword [rsp + 0xd0], rax
lea rdi, [rax + 8]
mov qword [rsp + 0xd8], rdi
lea rcx, [rdi + 0x18]
call fcn.180021250
nop
mov rcx, rdi
call fcn.18009d280
mov edx, 0x58
mov rcx, rsi
call fcn.18026a1a0
dec qword [r12 + 8]
test bpl, bpl
jne 0x1800d3416
cmp rbx, r15
jne 0x1800d3390
mov rax, qword [rsp + 0xc8]
mov qword [rax], rbx
mov rax, qword [rsp + 0x40]
mov qword [rax], r14
mov qword [r14 + 8], rax
mov rax, r15
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x38]
mov qword [rax], rdx
mov qword [rax + 8], rdx
cmp rbx, r15
jmp 0x1800d331b
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1800d34c0
mov rax, qword [rbx + 0x38]
mov rdx, qword [rbx + 8]
shr rax, 3
mov qword [rsp + 0x38], rdi
cmp rax, rcx
jbe 0x1800d3480
mov r8, rdx
mov rcx, rbx
mov rdx, qword [rdx]
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
jmp 0x1800d31a0
lea rcx, [rbx + 8]
call fcn.1800d0880
mov rax, qword [rbx + 8]
lea r8, [rsp + 0x30]
mov qword [rax], rax
mov rax, qword [rbx + 8]
mov qword [rax + 8], rax
mov qword [rbx + 0x10], 0
mov rax, qword [rbx + 8]
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x18]
mov qword [rsp + 0x30], rax
call fcn.180019ab0
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
ret