Function at 0x7ff6051dd9a0
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 - 0x20]
sub rsp, 0x120
movaps xmmword [rsp + 0x110], xmm6
mov rax, qword [0x7ff60566c600]
xor rax, rsp
mov qword [rbp + 8], 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], r14d
mov dword [rbp - 8], 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 0x7ff6051ddac4
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rsi, qword [rcx + 0x10]
je 0x7ff6051ddac7
cmp rcx, rax
je 0x7ff6051ddac4
mov rcx, qword [rcx + 8]
cmp rsi, qword [rcx + 0x10]
jne 0x7ff6051ddab3
jmp 0x7ff6051ddac7
mov rcx, r13
test rcx, rcx
jne 0x7ff6051ddb50
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 - 0xf]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 0xe]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 0xd]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 0xc]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 0xb]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 0xa]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 9]
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 0x7ff6051de04c
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp rsi, qword [rcx + 0x10]
je 0x7ff6051ddbf3
nop
cmp rcx, rax
je 0x7ff6051de04c
mov rcx, qword [rcx + 8]
cmp rsi, qword [rcx + 0x10]
jne 0x7ff6051ddbe0
lea rbx, [rcx + 0x18]
movzx ecx, r14b
movabs r15, 0xcbf29ce484222325
xor rcx, r15
imul rcx, r12
movzx r8d, byte [rbp + 1]
xor rcx, r8
imul rcx, r12
movzx r9d, byte [rbp + 2]
xor rcx, r9
imul rcx, r12
movzx r10d, byte [rbp + 3]
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 0x7ff6051ddc71
add rdx, rdx
mov rax, qword [r11 + rdx*8]
cmp r14d, dword [rcx + 0x10]
je 0x7ff6051ddc74
nop dword [rax]
cmp rcx, rax
je 0x7ff6051ddc71
mov rcx, qword [rcx + 8]
cmp r14d, dword [rcx + 0x10]
jne 0x7ff6051ddc60
jmp 0x7ff6051ddc74
mov rcx, r13
test rcx, rcx
jne 0x7ff6051ddd00
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]
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.7ff6051982b0
nop
lea rcx, [rbp - 0x80]
call fcn.7ff605197710
mov r14d, dword [rbp]
movzx r10d, byte [rbp + 3]
movzx r9d, byte [rbp + 2]
movzx r8d, byte [rbp + 1]
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 0x7ff6051de04c
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp r14d, dword [rcx + 0x10]
je 0x7ff6051ddd73
nop dword [rax]
cmp rcx, rax
je 0x7ff6051de04c
mov rcx, qword [rcx + 8]
cmp r14d, dword [rcx + 0x10]
jne 0x7ff6051ddd60
lea r14, [rcx + 0x18]
movzx ecx, dil
xor rcx, r15
imul rcx, r12
movzx eax, byte [rbp - 7]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 6]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 5]
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 0x7ff6051ddde0
add rdx, rdx
mov rax, qword [r8 + rdx*8]
cmp edi, dword [rcx + 0x10]
je 0x7ff6051ddde3
nop dword [rax + rax]
cmp rcx, rax
je 0x7ff6051ddde0
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x7ff6051dddd0
jmp 0x7ff6051ddde3
mov rcx, r13
mov esi, 0xffffffff
test rcx, rcx
jne 0x7ff6051ddef3
lea ecx, [rsi + 0x71]
call fcn.7ff60542adf8
mov rdx, rax
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, [0x7ff60562bf40]
mov qword [rdx], rax
lea rcx, [rdx + 0x10]
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
mov rax, qword [rbp + 0x80]
movups xmm0, xmmword [rax]
movups xmmword [rcx + 0x40], xmm0
mov rax, qword [rbp + 0x88]
movups xmm0, xmmword [rax]
movups xmmword [rcx + 0x50], xmm0
lea rax, [0x7ff60562bec8]
mov qword [rcx], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rdx
lea r9, [rsp + 0x30]
lea r8, [rbp - 8]
lea rdx, [rbp - 0x20]
mov rcx, r14
call fcn.7ff6051985b0
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x7ff6051ddef0
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ff6051ddef0
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 0x7ff6051ddef0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
call qword [rax + 8]
nop word [rax + rax]
mov edi, dword [rbp - 8]
movzx ecx, dil
xor rcx, r15
imul rcx, r12
movzx eax, byte [rbp - 7]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 6]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbp - 5]
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 0x7ff6051de04c
add r8, r8
mov rax, qword [rcx + r8*8]
cmp edi, dword [rdx + 0x10]
je 0x7ff6051ddf62
nop dword [rax + rax]
cmp rdx, rax
je 0x7ff6051de04c
mov rdx, qword [rdx + 8]
cmp edi, dword [rdx + 0x10]
jne 0x7ff6051ddf50
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x7ff6051ddf6f
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 0x7ff6051ddfab
test rbx, rbx
je 0x7ff6051ddfa6
lock inc dword [rbx + 8]
mov rdi, rbx
jmp 0x7ff6051ddfc0
xorps xmm1, xmm1
xorps xmm0, xmm0
psrldq xmm0, 8
movq rdi, xmm0
movq r14, xmm1
test rdi, rdi
je 0x7ff6051ddfee
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x7ff6051ddfee
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ff6051ddfee
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
test rbx, rbx
je 0x7ff6051de01a
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x7ff6051de01a
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x7ff6051de01a
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 8]
mov rax, r14
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.7ff60542acb0
mov rbx, qword [rsp + 0x178]
movaps xmm6, xmmword [rsp + 0x110]
add rsp, 0x120
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