Function at 0x140042100
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x98
mov rax, qword [0x14015c100]
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 0x140042393
test rcx, rcx
je 0x140042393
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 0x140042221
mov rcx, qword [rcx + r9*8]
cmp r8, qword [rax + 0x10]
je 0x140042223
nop dword [rax]
cmp rax, rcx
je 0x140042221
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x140042210
jmp 0x140042223
xor eax, eax
test rax, rax
cmove rax, rdx
cmp rax, rdx
je 0x140042238
mov rbx, qword [rax + 0x18]
jmp 0x1400422b8
mov rdx, r8
mov rcx, rsi
call fcn.140003230
mov rbx, rax
test rax, rax
jne 0x14004229e
call fcn.140019410
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.14003ade0
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.1400c6580
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.1400052e0
mov rdx, qword [rax]
mov qword [rdx + 0x18], rbx
mov r8d, 0x30
mov rdx, rbx
mov rcx, rsi
call fcn.1400032e0
test rax, rax
jne 0x140042310
lea rdx, [rsp + 0x30]
lea rcx, [rsi + 8]
call fcn.140005d10
call fcn.140019410
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.14003ade0
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 0x14004227a
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.1400cc710
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 0x14004227a
call fcn.140019410
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.14003ade0
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 0x140042282