Function at 0x1400494c0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x98
mov rax, qword [0x140166080]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rdi, rdx
mov qword [rsp + 0x30], r8
mov rdx, r8
mov r9, r8
mov r10, r8
shr rdx, 0x38
mov r11, r8
shr r9, 0x30
mov rbx, r8
shr r10, 0x28
mov rbp, r8
shr r11, 0x20
mov rax, r8
shr rbx, 0x18
shr rbp, 0x10
mov rsi, rcx
shr rax, 8
test r8, r8
je 0x140049753
test rcx, rcx
je 0x140049753
movzx eax, al
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0x90], r15
movabs r15, 0xcbf29ce484222325
movzx ecx, r8b
xor rcx, r15
movabs r15, 0x100000001b3
imul rcx, r15
xor rcx, rax
movzx eax, bpl
imul rcx, r15
xor rcx, rax
movzx eax, bl
imul rcx, r15
xor rcx, rax
movzx eax, r11b
imul rcx, r15
xor rcx, rax
movzx eax, r10b
imul rcx, r15
xor rcx, rax
movzx eax, r9b
mov r9, qword [rsi + 0x38]
imul rcx, r15
xor rcx, rax
imul rcx, r15
xor rcx, rdx
mov rdx, qword [rsi + 0x10]
imul rcx, r15
mov r15, qword [rsp + 0x90]
and r9, rcx
mov rcx, qword [rsi + 0x20]
add r9, r9
mov rax, qword [rcx + r9*8 + 8]
cmp rax, rdx
je 0x1400495e1
mov rcx, qword [rcx + r9*8]
cmp r8, qword [rax + 0x10]
je 0x1400495e3
nop dword [rax]
cmp rax, rcx
je 0x1400495e1
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x1400495d0
jmp 0x1400495e3
xor eax, eax
test rax, rax
cmove rax, rdx
cmp rax, rdx
je 0x1400495f8
mov rbx, qword [rax + 0x18]
jmp 0x140049678
mov rdx, r8
mov rcx, rsi
call fcn.140003650
mov rbx, rax
test rax, rax
jne 0x14004965e
call fcn.140019640
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov ecx, dword [rax + 0x20]
mov dword [rdi + 0x20], ecx
call fcn.140040c30
mov ecx, dword [rax]
mov dword [rdi + 0x24], ecx
mov ecx, dword [rax + 4]
mov dword [rdi + 0x28], ecx
mov ecx, dword [rax + 8]
mov dword [rdi + 0x2c], ecx
mov r14, qword [rsp + 0xd8]
mov rax, rdi
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400d04f0
add rsp, 0x98
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x20]
lea rcx, [rsi + 8]
call fcn.140005720
mov rdx, qword [rax]
mov qword [rdx + 0x18], rbx
mov r8d, 0x30
mov rdx, rbx
mov rcx, rsi
call fcn.140003700
test rax, rax
jne 0x1400496d0
lea rdx, [rsp + 0x30]
lea rcx, [rsi + 8]
call fcn.1400060f0
call fcn.140019640
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov eax, dword [rax + 0x20]
mov dword [rdi + 0x20], eax
call fcn.140040c30
mov ecx, dword [rax]
mov dword [rdi + 0x24], ecx
mov ecx, dword [rax + 4]
mov dword [rdi + 0x28], ecx
mov eax, dword [rax + 8]
mov dword [rdi + 0x2c], eax
jmp 0x14004963a
mov ebx, dword [rax + 0x20]
mov rcx, rax
movaps xmmword [rsp + 0x80], xmm6
movss xmm6, dword [rax + 0x24]
movaps xmmword [rsp + 0x70], xmm7
movss xmm7, dword [rax + 0x28]
movaps xmmword [rsp + 0x60], xmm8
movss xmm8, dword [rax + 0x2c]
movaps xmmword [rsp + 0x50], xmm9
movups xmm9, xmmword [rax]
movaps xmmword [rsp + 0x40], xmm10
movups xmm10, xmmword [rax + 0x10]
call fcn.1400d70a0
movups xmmword [rdi], xmm9
movaps xmm9, xmmword [rsp + 0x50]
movups xmmword [rdi + 0x10], xmm10
mov dword [rdi + 0x20], ebx
movaps xmm10, xmmword [rsp + 0x40]
movss dword [rdi + 0x24], xmm6
movaps xmm6, xmmword [rsp + 0x80]
movss dword [rdi + 0x28], xmm7
movaps xmm7, xmmword [rsp + 0x70]
movss dword [rdi + 0x2c], xmm8
movaps xmm8, xmmword [rsp + 0x60]
jmp 0x14004963a
call fcn.140019640
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov eax, dword [rax + 0x20]
mov dword [rdi + 0x20], eax
call fcn.140040c30
mov ecx, dword [rax]
mov dword [rdi + 0x24], ecx
mov ecx, dword [rax + 4]
mov dword [rdi + 0x28], ecx
mov eax, dword [rax + 8]
mov dword [rdi + 0x2c], eax
jmp 0x140049642