Function at 0x7ff9100cbd40
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x7ff91020e040]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov qword [rsp + 0x50], r8
mov r14, rdx
mov qword [rsp + 0x38], rdx
mov rax, qword [r8 + 0x10]
test rax, rax
jne 0x7ff9100cbd9b
mov rax, qword [rdx + 0x40]
cmp rax, qword [rdx + 0x48]
je 0x7ff9100cbd8e
mov qword [rdx + 0x48], rax
mov rcx, rdx
call fcn.7ff9100d1d00
jmp 0x7ff9100cc3f8
mov rcx, qword [rcx + 0x160]
cmp rax, 1
jne 0x7ff9100cbdc7
mov rax, qword [r8 + 8]
mov rax, qword [rax]
mov rdx, qword [rcx + 0x48]
cmp qword [rax + 0x10], rdx
jne 0x7ff9100cbdc7
mov rcx, qword [rax + 0x48]
cmp qword [rax + 0x40], rcx
je 0x7ff9100cc3f8
mov rax, qword [r8 + 0x40]
mov qword [rsp + 0x40], rax
mov rcx, qword [r8 + 0x48]
mov qword [rsp + 0x48], rcx
cmp rax, rcx
je 0x7ff9100cc3f8
nop dword [rax]
nop word [rax + rax]
mov rsi, qword [rax]
mov qword [rsp + 0x20], rsi
lea rdx, [rsp + 0x20]
mov rcx, r8
call fcn.7ff9100d1c30
mov r13, rax
mov qword [rsp + 0x28], rax
mov r15, qword [r14 + 0x40]
cmp r15, qword [r14 + 0x48]
je 0x7ff9100cc3da
nop dword [rax + rax]
mov rdi, qword [r15]
mov qword [rsp + 0x20], rdi
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.7ff9100d1c30
mov r12, rax
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x7ff9100cbe55
lea rcx, [rsi + 8]
cmp dword [rsi], 0xc
mov r9d, 0
cmovne rcx, r9
jmp 0x7ff9100cbe5b
xor r9d, r9d
mov ecx, r9d
test rdi, rdi
je 0x7ff9100cbe6d
lea rdx, [rdi + 8]
cmp dword [rdi], 0xc
cmovne rdx, r9
jmp 0x7ff9100cbe70
mov rdx, r9
test rcx, rcx
je 0x7ff9100cbe9d
cmp rcx, rdx
je 0x7ff9100cbf35
cmp byte [rcx + 0x38], 0
je 0x7ff9100cbe9d
mov rax, qword [rcx + 0x30]
test rax, rax
je 0x7ff9100cbe9d
lea rcx, [rax + 8]
cmp dword [rax], 0xc
cmovne rcx, r9
test rcx, rcx
jne 0x7ff9100cbe75
test rdi, rdi
je 0x7ff9100cbeaf
lea rax, [rdi + 8]
cmp dword [rdi], 0xc
cmovne rax, r9
jmp 0x7ff9100cbeb2
mov rax, r9
test rsi, rsi
je 0x7ff9100cbec4
lea rdx, [rsi + 8]
cmp dword [rsi], 0xc
cmovne rdx, r9
jmp 0x7ff9100cbec7
mov rdx, r9
test rax, rax
je 0x7ff9100cbef8
nop dword [rax]
cmp rax, rdx
je 0x7ff9100cc1bf
cmp byte [rax + 0x38], 0
je 0x7ff9100cbef8
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x7ff9100cbef8
lea rax, [rcx + 8]
cmp dword [rcx], 0xc
cmovne rax, r9
test rax, rax
jne 0x7ff9100cbed0
cmp rdi, rsi
je 0x7ff9100cc3cf
mov r8, qword [r14 + 0x48]
lea rdx, [r15 + 8]
sub r8, rdx
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy_1
add qword [r14 + 0x48], 0xfffffffffffffff8
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.7ff9100d3740
cmp r15, qword [r14 + 0x48]
jne 0x7ff9100cbe20
jmp 0x7ff9100cc3da
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov rax, qword [r12]
mov qword [rbp - 0x60], rax
mov rax, qword [r12 + 8]
mov qword [rbp - 0x58], rax
mov rax, qword [r12 + 0x10]
mov qword [rbp - 0x50], rax
mov rax, qword [r12 + 0x18]
mov qword [rbp - 0x48], rax
mov qword [r12], r9
mov qword [r12 + 8], r9
mov qword [r12 + 0x10], r9
mov rax, qword [r12 + 0x38]
mov qword [r12 + 0x38], r9
mov r8, qword [r12 + 0x30]
mov qword [r12 + 0x30], r9
mov rbx, qword [r12 + 0x28]
mov qword [r12 + 0x28], r9
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], r8
mov qword [rbp - 0x28], rax
mov rax, qword [r12 + 0x40]
mov qword [rbp - 0x20], rax
cmp rbx, r8
je 0x7ff9100cc0f5
movabs r14, 0x100000001b3
movabs r13, 0xcbf29ce484222325
nop dword [rax]
mov rdi, qword [rbx]
test rdi, rdi
je 0x7ff9100cbfe5
lea rax, [rdi + 8]
cmp dword [rdi], 0xc
cmovne rax, r9
jmp 0x7ff9100cbfe8
mov rax, r9
test rsi, rsi
je 0x7ff9100cbffa
lea rdx, [rsi + 8]
cmp dword [rsi], 0xc
cmovne rdx, r9
jmp 0x7ff9100cbffd
mov rdx, r9
test rax, rax
je 0x7ff9100cc02a
cmp rax, rdx
je 0x7ff9100cc1b6
cmp byte [rax + 0x38], 0
je 0x7ff9100cc02a
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x7ff9100cc02a
lea rax, [rcx + 8]
cmp dword [rcx], 0xc
cmovne rax, r9
test rax, rax
jne 0x7ff9100cc002
mov qword [rsp + 0x30], rdi
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.7ff9100c0b30
mov byte [rax], 0
mov rax, rdi
shr rax, 8
movzx edx, al
movzx eax, dil
xor rax, r13
imul rax, r14
xor rdx, rax
imul rdx, r14
mov rax, rdi
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rdi
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rdi
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rdi
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rdi
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r14
shr rdi, 0x38
xor rdx, rdi
imul rdx, r14
xor qword [rbp - 0x20], rdx
lea rdx, [rbx + 8]
mov r8, qword [rbp - 0x30]
sub r8, rdx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy_1
mov r8, qword [rbp - 0x30]
sub r8, 8
mov qword [rbp - 0x30], r8
xor r9d, r9d
cmp rbx, r8
jne 0x7ff9100cbfd0
mov r14, qword [rsp + 0x38]
mov r13, qword [rsp + 0x28]
mov r8, r13
lea rdx, [rbp - 0x60]
call fcn.7ff9100c8630
mov r8, qword [r14 + 0x48]
lea rdx, [r15 + 8]
sub r8, rdx
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy_1
add qword [r14 + 0x48], 0xfffffffffffffff8
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.7ff9100d3740
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x60], rax
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x70], rax
xor r15d, r15d
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], r15
mov r8, qword [rbp - 0x28]
mov qword [rbp - 0x28], r15
mov rcx, qword [rbp - 0x30]
mov qword [rbp - 0x30], r15
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x70], r8
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x68], rax
lea r8, [rsp + 0x58]
mov rdx, rsi
mov rcx, r14
call fcn.7ff9100c55b0
nop
lea rcx, [rbp - 0x38]
call fcn.7ff9100b41b0
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x7ff9100cc3da
call fcn.7ff9101c96ec
jmp 0x7ff9100cc3da
add rbx, 8
jmp 0x7ff9100cc0e2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rax
mov qword [rbp - 0x10], r9
mov qword [rbp - 8], r9
mov rax, qword [r13 + 0x10]
mov qword [rbp], rax
mov rax, qword [r13 + 0x18]
mov qword [rbp + 8], rax
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x7ff9100cc244
shl rcx, 4
call fcn.7ff9101c96b0
mov r8, rax
mov qword [rbp - 0x10], rax
xor r15d, r15d
mov edx, r15d
cmp qword [r13 + 8], r15
jbe 0x7ff9100cc247
mov ecx, r15d
nop dword [rax + rax]
mov rax, qword [r13]
movups xmm0, xmmword [rax + rcx]
movups xmmword [r8 + rcx], xmm0
inc rdx
mov qword [rbp - 8], rdx
lea rcx, [rcx + 0x10]
cmp rdx, qword [r13 + 8]
jae 0x7ff9100cc247
mov r8, qword [rbp - 0x10]
jmp 0x7ff9100cc220
xor r15d, r15d
lea rdx, [r13 + 0x28]
lea rcx, [rbp + 0x18]
call fcn.7ff9100b3ec0
mov rax, qword [r13 + 0x40]
mov qword [rbp + 0x30], rax
mov rbx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x20]
cmp rbx, r8
je 0x7ff9100cc3a3
movabs r14, 0x100000001b3
movabs r12, 0xcbf29ce484222325
mov rsi, qword [rbx]
test rsi, rsi
je 0x7ff9100cc296
lea rax, [rsi + 8]
cmp dword [rsi], 0xc
cmovne rax, r15
jmp 0x7ff9100cc299
mov rax, r15
test rdi, rdi
je 0x7ff9100cc2ab
lea rdx, [rdi + 8]
cmp dword [rdi], 0xc
cmovne rdx, r15
jmp 0x7ff9100cc2ae
mov rdx, r15
test rax, rax
je 0x7ff9100cc2db
cmp rax, rdx
je 0x7ff9100cc3c9
cmp byte [rax + 0x38], 0
je 0x7ff9100cc2db
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x7ff9100cc2db
lea rax, [rcx + 8]
cmp dword [rcx], 0xc
cmovne rax, r15
test rax, rax
jne 0x7ff9100cc2b3
mov qword [rsp + 0x28], rsi
lea rdx, [rsp + 0x28]
lea rcx, [rbp - 0x10]
call fcn.7ff9100c0b30
mov byte [rax], 0
mov rax, rsi
shr rax, 8
movzx edx, al
movzx eax, sil
xor rax, r12
imul rax, r14
xor rdx, rax
imul rdx, r14
mov rax, rsi
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rsi
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rsi
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rsi
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov rax, rsi
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r14
shr rsi, 0x38
xor rdx, rsi
imul rdx, r14
xor qword [rbp + 0x30], rdx
lea rdx, [rbx + 8]
mov r8, qword [rbp + 0x20]
sub r8, rdx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy_1
mov r8, qword [rbp + 0x20]
sub r8, 8
mov qword [rbp + 0x20], r8
cmp rbx, r8
jne 0x7ff9100cc281
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
lea r8, [rbp - 0x10]
mov rdx, r12
call fcn.7ff9100c8630
nop
lea rcx, [rbp + 0x18]
call fcn.7ff9100b41b0
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x7ff9100cc3da
call fcn.7ff9101c96ec
jmp 0x7ff9100cc3da
add rbx, 8
jmp 0x7ff9100cc390
mov r8, r13
mov rdx, r12
call fcn.7ff9100c8630
mov rax, qword [rsp + 0x40]
add rax, 8
mov qword [rsp + 0x40], rax
cmp rax, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
jne 0x7ff9100cbdf0
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.7ff9101c9690
mov rbx, qword [rsp + 0x190]
add rsp, 0x150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret