Function at 0x1337c0e7c590
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1337c0e7c57d
mov rax, qword [rbx + 0x38]
mov rdx, qword [rbx + 8]
shr rax, 3
cmp rax, rcx
jbe 0x1337c0e7c546
mov r8, rdx
mov rcx, rbx
mov rdx, qword [rdx]
add rsp, 0x20
pop rbx
jmp 0x1337c0e7c590
call fcn.1337c0e7cbd0
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.1337c0e574c0
add rsp, 0x20
pop rbx
ret
push rsi
push rdi
push r14
sub rsp, 0x40
mov rsi, r8
mov r14, rdx
mov rdi, rcx
cmp rdx, r8
je 0x1337c0e7c816
mov rax, qword [rcx + 8]
movabs r8, 0x100000001b3
mov rdx, qword [rcx + 0x18]
movzx ecx, byte [r14 + 0x10]
mov qword [rsp + 0x70], rax
mov rax, qword [r14 + 8]
mov qword [rsp + 0x68], rax
movabs rax, 0xcbf29ce484222325
xor rcx, rax
mov qword [rsp + 0x60], rbx
movzx eax, byte [r14 + 0x11]
mov rbx, r14
imul rcx, r8
mov qword [rsp + 0x38], rbp
xor rcx, rax
mov qword [rsp + 0x30], r12
movzx eax, byte [r14 + 0x12]
mov r12, qword [rdi + 0x30]
imul rcx, r8
mov qword [rsp + 0x28], r13
xor rcx, rax
mov qword [rsp + 0x20], r15
movzx eax, byte [r14 + 0x13]
imul rcx, r8
mov qword [rsp + 0x78], rdx
xor rcx, rax
imul rcx, r8
and r12, rcx
shl r12, 4
add r12, rdx
mov r13, qword [r12]
mov r15, qword [r12 + 8]
nop dword [rax]
mov r8, qword gs:[0x30]
mov r9, rbx
mov rax, r9
mov rbp, rbx
mov rbx, qword [rbx]
lea r10, [r9 - 1]
and r10, 0xfffffffffe000000
sub rax, r10
shr rax, 0x10
mov rdx, qword [r10 + 0x100]
lea rcx, [rax + rax*4]
shl rcx, 4
add rcx, 0x108
add rcx, r10
mov eax, dword [rcx + 4]
sub rcx, rax
cmp r8, rdx
jne 0x1337c0e7c6ae
cmp byte [rcx + 0xe], 0
jne 0x1337c0e7c6a9
mov rax, qword [rcx + 0x20]
mov qword [r9], rax
add dword [rcx + 0x18], 0xffffffff
mov qword [rcx + 0x20], r9
jne 0x1337c0e7c6bc
call fcn.1337c0eddf80
jmp 0x1337c0e7c6bc
mov r8b, 1
jmp 0x1337c0e7c6b1
xor r8d, r8d
mov rdx, rcx
mov rcx, r10
call fcn.1337c0edd080
dec qword [rdi + 0x10]
cmp rbp, r15
je 0x1337c0e7c6e0
cmp rbx, rsi
jne 0x1337c0e7c640
cmp r13, r14
jne 0x1337c0e7c7f1
mov qword [r12], rbx
jmp 0x1337c0e7c7f1
cmp r13, r14
mov r13, qword [rsp + 0x70]
jne 0x1337c0e7c6f3
mov qword [r12], r13
mov rax, r13
jmp 0x1337c0e7c6f8
mov rax, qword [rsp + 0x68]
mov qword [r12 + 8], rax
cmp rbx, rsi
je 0x1337c0e7c7f1
mov r12, qword [rsp + 0x78]
nop dword [rax + rax]
movzx r15d, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r15, rax
movzx eax, byte [rbx + 0x11]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x12]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x13]
imul r15, rdx
xor r15, rax
imul r15, rdx
and r15, qword [rdi + 0x30]
shl r15, 4
add r15, r12
mov r14, qword [r15 + 8]
mov r8, qword gs:[0x30]
mov r9, rbx
mov rax, r9
mov rbp, rbx
mov rbx, qword [rbx]
lea r10, [r9 - 1]
and r10, 0xfffffffffe000000
sub rax, r10
shr rax, 0x10
mov rcx, qword [r10 + 0x100]
lea rdx, [rax + rax*4]
shl rdx, 4
add rdx, 0x108
add rdx, r10
mov eax, dword [rdx + 4]
sub rdx, rax
cmp r8, rcx
jne 0x1337c0e7c7d1
cmp byte [rdx + 0xe], 0
jne 0x1337c0e7c7cc
mov rax, qword [rdx + 0x20]
mov qword [r9], rax
add dword [rdx + 0x18], 0xffffffff
mov qword [rdx + 0x20], r9
jne 0x1337c0e7c7dc
mov rcx, rdx
call fcn.1337c0eddf80
jmp 0x1337c0e7c7dc
mov r8b, 1
jmp 0x1337c0e7c7d4
xor r8d, r8d
mov rcx, r10
call fcn.1337c0edd080
dec qword [rdi + 0x10]
cmp rbp, r14
je 0x1337c0e7c822
cmp rbx, rsi
jne 0x1337c0e7c760
mov qword [r15], rbx
mov rax, qword [rsp + 0x68]
mov r13, qword [rsp + 0x28]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov r15, qword [rsp + 0x20]
mov qword [rax], rbx
mov qword [rbx + 8], rax
mov rbx, qword [rsp + 0x60]
mov rax, rsi
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
mov qword [r15], r13
mov qword [r15 + 8], r13
cmp rbx, rsi
jne 0x1337c0e7c710
jmp 0x1337c0e7c7f1