Function at 0x1400ef9d0
Capabilities:
Hash data using fnv

Disassembly:
push rsi
push r15
sub rsp, 0x68
mov r15, qword [rcx + 8]
mov rsi, rcx
mov rcx, qword [rcx + 0x28]
mov qword [rsp + 0x20], r15
cmp r15, 1
jne 0x1400efa41
mov qword [rsi + 0x18], 8
mov qword [rsi + 8], 8
test rcx, rcx
jne 0x1400efa0e
lea ecx, [r15 + 0x3f]
call fcn.14014e590
jmp 0x1400efa18
mov edx, 0x40
call fcn.14009e7d0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov qword [rsi + 0x20], rax
mov rax, rsi
shr rax, 4
mov qword [rsi + 0x10], rax
add rsp, 0x68
pop r15
pop rsi
ret
mov qword [rsp + 0x88], rbx
lea rbx, [rdx*8]
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r12
mov r12, qword [rsi + 0x20]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x40], r14
mov qword [rsi + 8], rdx
test rcx, rcx
jne 0x1400efa7c
mov rcx, rbx
call fcn.14014e590
jmp 0x1400efa84
mov rdx, rbx
call fcn.14009e7d0
mov r8, rbx
xor edx, edx
mov rcx, rax
mov rdi, rax
call fcn.1401511b0
mov r14, qword [rsi + 0x18]
mov rax, qword [rsi + 8]
mov qword [rsi + 0x18], rax
mov qword [rsi + 0x20], rdi
mov qword [rsp + 0x90], r14
cmp r14, r15
jae 0x1400efcba
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x48], r13
movabs r13, 0x100000001b3
nop dword [rax]
mov rdi, qword [r12 + r14*8]
test rdi, rdi
je 0x1400efc83
movzx eax, dil
not al
test al, 1
je 0x1400efc83
movabs r15, 0x9e3779b97f4a7c15
movabs r12, 0x9ddfea08eb382d69
movabs r14, 0xffffffff00000000
nop dword [rax]
mov rbp, qword [rdi]
lea r8, [rdi + 8]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x80]
call fcn.1400ee4e0
mov rbx, rax
mov r8, qword [rax]
test r8, r8
jne 0x1400efb98
movzx eax, byte [rax + 8]
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movzx ecx, byte [rbx + 9]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xa]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xb]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xc]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xd]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xe]
imul rax, r13
xor rax, rcx
movzx ecx, byte [rbx + 0xf]
imul rax, r13
xor rax, rcx
imul rax, r13
jmp 0x1400efbcf
mov rbx, qword [rax + 8]
lea rdx, [0x140196a28]
mov r9, rbx
lea rcx, [rsp + 0x98]
call fcn.14006b620
mov eax, ebx
mov rcx, rbx
and rcx, r14
or rcx, rax
mov rax, r12
add rcx, qword [rsp + 0x98]
mul rcx
xor rax, rdx
xor rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
imul rax, r15
dec rcx
shr rax, 0x20
and rax, rcx
mov rcx, qword [rsi + 0x20]
lea r9, [rax*8]
mov r8, qword [r9 + rcx]
test r8, r8
jne 0x1400efc16
mov qword [rdi], r8
mov rcx, qword [rsi + 0x20]
mov qword [r9 + rcx], rdi
mov rcx, qword [rsi + 0x18]
cmp rax, rcx
cmovb rcx, rax
mov qword [rsi + 0x18], rcx
jmp 0x1400efc63
movzx ecx, r8b
not cl
test cl, 1
je 0x1400efc4e
mov rcx, r8
xor edx, edx
nop word [rax + rax]
mov rcx, qword [rcx]
inc rdx
test rcx, rcx
jne 0x1400efc30
cmp rdx, 8
jae 0x1400efc4e
mov qword [rdi], r8
mov rax, qword [rsi + 0x20]
mov qword [r9 + rax], rdi
jmp 0x1400efc63
mov r9, rdi
lea r8, [0x1400ef930]
mov rdx, rax
mov rcx, rsi
call fcn.14010a9a0
mov rdi, rbp
test rbp, rbp
jne 0x1400efb10
mov r14, qword [rsp + 0x90]
mov r15, qword [rsp + 0x20]
mov r12, qword [rsp + 0x28]
jmp 0x1400efc9c
test dil, 1
je 0x1400efc9c
lea rdx, [rdi - 1]
mov rcx, rsi
lea r8, [0x1400ef930]
call fcn.14010ab60
inc r14
mov qword [rsp + 0x90], r14
cmp r14, r15
jb 0x1400efad0
mov r13, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x60]
cmp qword [rsi + 0x28], 0
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x88]
jne 0x1400efce3
lea rdx, [r15*8]
mov rcx, r12
call fcn.14014e5d4
mov r12, qword [rsp + 0x50]
add rsp, 0x68
pop r15
pop rsi
ret