Function at 0x7ff60519d5d0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
movaps xmmword [rsp + 0x130], xmm6
mov rax, qword [0x7ff60566c600]
xor rax, rsp
mov qword [rbp + 0x28], rax
movaps xmm6, xmm3
mov edi, r8d
mov r14d, edx
mov rsi, rcx
mov qword [rbp + 0x10], rcx
mov rbx, rcx
shr rbx, 0x38
mov rax, rcx
shr rax, 0x30
movzx r11d, al
mov rax, rcx
shr rax, 0x28
movzx r10d, al
mov rax, rcx
shr rax, 0x20
movzx r9d, al
mov rax, rcx
shr rax, 0x18
movzx r8d, al
mov rax, rcx
shr rax, 0x10
movzx edx, al
mov rax, rcx
shr rax, 8
movzx ecx, al
movzx eax, sil
mov dword [rbp + 0x20], r14d
mov dword [rbp + 0x18], edi
xor r13d, r13d
mov r15, qword [0x7ff60574b258]
movabs r12, 0xcbf29ce484222325
xor rax, r12
movabs r12, 0x100000001b3
imul rax, r12
xor rax, rcx
imul rax, r12
xor rax, rdx
imul rax, r12
xor rax, r8
imul rax, r12
xor rax, r9
imul rax, r12
xor rax, r10
imul rax, r12
xor rax, r11
imul rax, r12
xor rax, rbx
imul rax, r12
mov rdx, qword [r15 + 0x30]
and rdx, rax
mov r8, qword [r15 + 0x18]
mov rax, rdx
add rax, rax
mov rcx, qword [r8 + rax*8 + 8]
cmp rcx, qword [r15 + 8]
je 0x7ff60519d6f4
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rsi, qword [rcx + 0x10]
je 0x7ff60519d6f7
cmp rcx, rax
je 0x7ff60519d6f4
mov rcx, qword [rcx + 8]
cmp rsi, qword [rcx + 0x10]
jne 0x7ff60519d6e3
jmp 0x7ff60519d6f7
mov rcx, r13
test rcx, rcx
jne 0x7ff60519d780
mov qword [rsp + 0x50], r13
mov ecx, 0x58
call fcn.7ff60542adf8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x78], 8
mov dword [rsp + 0x40], 0x3f800000
mov r8, rax
mov edx, 0x10
lea rcx, [rsp + 0x58]
call fcn.7ff605191670
nop
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x10]
lea rdx, [rbp - 0x40]
mov rcx, r15
call fcn.7ff605197f10
nop
lea rcx, [rsp + 0x40]
call fcn.7ff605197690
mov rsi, qword [rbp + 0x10]
nop word [rax + rax]
movzx ecx, sil
movabs rax, 0xcbf29ce484222325
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x11]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x12]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x13]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x14]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x15]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x16]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x17]
xor rcx, rax
imul rcx, r12
mov rdx, qword [r15 + 0x30]
and rdx, rcx
mov r8, qword [r15 + 0x18]
mov rax, rdx
add rax, rax
mov rcx, qword [r8 + rax*8 + 8]
cmp rcx, qword [r15 + 8]
je 0x7ff60519dc6c
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rsi, qword [rcx + 0x10]
je 0x7ff60519d823
nop
cmp rcx, rax
je 0x7ff60519dc6c
mov rcx, qword [rcx + 8]
cmp rsi, qword [rcx + 0x10]
jne 0x7ff60519d810
lea rbx, [rcx + 0x18]
movzx ecx, r14b
movabs r15, 0xcbf29ce484222325
xor rcx, r15
imul rcx, r12
movzx r8d, byte [rbp + 0x21]
xor rcx, r8
imul rcx, r12
movzx r9d, byte [rbp + 0x22]
xor rcx, r9
imul rcx, r12
movzx r10d, byte [rbp + 0x23]
xor rcx, r10
imul rcx, r12
mov rdx, qword [rbx + 0x30]
and rdx, rcx
mov r11, qword [rbx + 0x18]
mov rax, rdx
add rax, rax
mov rcx, qword [r11 + rax*8 + 8]
cmp rcx, qword [rbx + 8]
je 0x7ff60519d8a1
add rdx, rdx
mov rax, qword [r11 + rdx*8]
cmp r14d, dword [rcx + 0x10]
je 0x7ff60519d8a4
nop dword [rax]
cmp rcx, rax
je 0x7ff60519d8a1
mov rcx, qword [rcx + 8]
cmp r14d, dword [rcx + 0x10]
jne 0x7ff60519d890
jmp 0x7ff60519d8a4
mov rcx, r13
test rcx, rcx
jne 0x7ff60519d930
mov qword [rbp - 0x70], r13
mov ecx, 0x28
call fcn.7ff60542adf8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x78], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r13
mov qword [rbp - 0x50], 7
mov qword [rbp - 0x48], 8
mov dword [rbp - 0x80], 0x3f800000
mov r8, rax
mov edx, 0x10
lea rcx, [rbp - 0x68]
call fcn.7ff605191670
nop
lea r9, [rbp - 0x80]
lea r8, [rbp + 0x20]
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.7ff6051982b0
nop
lea rcx, [rbp - 0x80]
call fcn.7ff605197710
mov r14d, dword [rbp + 0x20]
movzx r10d, byte [rbp + 0x23]
movzx r9d, byte [rbp + 0x22]
movzx r8d, byte [rbp + 0x21]
nop dword [rax]
movzx ecx, r14b
xor rcx, r15
imul rcx, r12
movzx eax, r8b
xor rcx, rax
imul rcx, r12
movzx eax, r9b
xor rcx, rax
imul rcx, r12
movzx eax, r10b
xor rcx, rax
imul rcx, r12
mov rdx, qword [rbx + 0x30]
and rdx, rcx
mov r8, qword [rbx + 0x18]
mov rax, rdx
add rax, rax
mov rcx, qword [r8 + rax*8 + 8]
cmp rcx, qword [rbx + 8]
je 0x7ff60519dc6c
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp r14d, dword [rcx + 0x10]
je 0x7ff60519d9a3
nop dword [rax]
cmp rcx, rax
je 0x7ff60519dc6c
mov rcx, qword [rcx + 8]
cmp r14d, dword [rcx + 0x10]
jne 0x7ff60519d990
lea r14, [rcx + 0x18]
movzx ecx, dil
xor rcx, r15
imul rcx, r12
movzx eax, byte [rbp + 0x19]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x1a]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x1b]
xor rcx, rax
imul rcx, r12
mov rdx, qword [r14 + 0x30]
and rdx, rcx
mov r8, qword [r14 + 0x18]
mov rax, rdx
add rax, rax
mov rcx, qword [r8 + rax*8 + 8]
cmp rcx, qword [r14 + 8]
je 0x7ff60519da10
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp edi, dword [rcx + 0x10]
je 0x7ff60519da13
nop dword [rax + rax]
cmp rcx, rax
je 0x7ff60519da10
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x7ff60519da00
jmp 0x7ff60519da13
mov rcx, r13
mov esi, 0xffffffff
test rcx, rcx
jne 0x7ff60519db15
lea ecx, [rsi + 0x71]
call fcn.7ff60542adf8
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, [0x7ff60562bf40]
mov qword [rax], rcx
lea rcx, [rax + 0x10]
movaps xmm3, xmmword [0x7ff605632660]
movups xmmword [rbp - 0x20], xmm3
movaps xmm2, xmmword [0x7ff6056325e0]
movups xmmword [rbp - 0x10], xmm2
mov byte [rcx + 8], 0
mov dword [rcx + 0xc], 0x964401f1
mov word [rcx + 0x10], 0x100
mov qword [rcx + 0x18], r13
mov byte [rcx + 0x20], 1
mov dword [rcx + 0x28], r13d
mov dword [rcx + 0x2c], 0x3f800000
movss xmm1, dword [rcx + 0x2c]
maxss xmm1, xmm0
movss dword [rcx + 0x30], xmm1
movss dword [rcx + 0x34], xmm6
mov byte [rcx + 0x38], 0
movups xmmword [rcx + 0x40], xmm2
movups xmmword [rcx + 0x50], xmm3
lea rdx, [0x7ff60562bec8]
mov qword [rcx], rdx
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x30]
lea r8, [rbp + 0x18]
lea rdx, [rbp]
mov rcx, r14
call fcn.7ff6051985b0
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x7ff60519db12
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ff60519db12
mov rbx, qword [rsp + 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x7ff60519db12
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
call qword [rax + 8]
mov edi, dword [rbp + 0x18]
movzx ecx, dil
xor rcx, r15
imul rcx, r12
movzx eax, byte [rbp + 0x19]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x1a]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp + 0x1b]
xor rcx, rax
imul rcx, r12
mov r8, qword [r14 + 0x30]
and r8, rcx
mov rcx, qword [r14 + 0x18]
mov rax, r8
add rax, rax
mov rdx, qword [rcx + rax*8 + 8]
cmp rdx, qword [r14 + 8]
je 0x7ff60519dc6c
add r8, r8
mov rax, qword [rcx + r8*8]
cmp edi, dword [rdx + 0x10]
je 0x7ff60519db82
nop dword [rax]
cmp rdx, rax
je 0x7ff60519dc6c
mov rdx, qword [rdx + 8]
cmp edi, dword [rdx + 0x10]
jne 0x7ff60519db70
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x7ff60519db8f
lock inc dword [rax + 8]
mov rcx, qword [rdx + 0x18]
mov rbx, qword [rdx + 0x20]
mov byte [rcx + 0x10], 1
mov dword [rsp + 0x20], r13d
lea r9, [0x7ff605745160]
lea r8, [0x7ff6057444a8]
xor edx, edx
call sub.VCRUNTIME140.dll___RTDynamicCast
mov r14, rax
test rax, rax
je 0x7ff60519dbcb
test rbx, rbx
je 0x7ff60519dbc6
lock inc dword [rbx + 8]
mov rdi, rbx
jmp 0x7ff60519dbe0
xorps xmm1, xmm1
xorps xmm0, xmm0
psrldq xmm0, 8
movq rdi, xmm0
movq r14, xmm1
test rdi, rdi
je 0x7ff60519dc0e
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x7ff60519dc0e
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ff60519dc0e
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
test rbx, rbx
je 0x7ff60519dc3a
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x7ff60519dc3a
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x7ff60519dc3a
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 8]
mov rax, r14
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.7ff60542acb0
mov rbx, qword [rsp + 0x198]
movaps xmm6, xmmword [rsp + 0x130]
add rsp, 0x140
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x7ff60562be70]
call qword [sym.imp.msvcp140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_]
int3