Function at 0x140005050
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov r15, r9
mov r12, r8
mov r14, rdx
mov rsi, rcx
movzx edi, byte [r8]
movabs rax, 0xcbf29ce484222325
xor rdi, rax
movabs rcx, 0x100000001b3
imul rdi, rcx
movzx eax, byte [r8 + 1]
xor rdi, rax
imul rdi, rcx
mov rdx, rdi
and rdx, qword [rsi + 0x30]
add rdx, rdx
mov rcx, qword [rsi + 0x18]
mov rax, qword [rcx + rdx*8 + 8]
lea r13, [rsi + 8]
mov rbp, qword [r13]
cmp rax, rbp
je 0x1400050f4
mov rdx, qword [rcx + rdx*8]
movzx ecx, word [r8]
cmp cx, word [rax + 0x10]
je 0x1400050d5
cmp rax, rdx
je 0x1400050f1
mov rax, qword [rax + 8]
cmp cx, word [rax + 0x10]
jne 0x1400050c6
mov qword [r14], rax
mov byte [r14 + 8], 0
mov rax, r14
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rbp, rax
movabs rax, 0x492492492492492
cmp qword [rsi + 0x10], rax
jne 0x140005112
lea rcx, str.unordered_map_set_too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x28], 0
mov ecx, 0x38
call fcn.140026a94
mov rbx, rax
mov qword [rsp + 0x28], rax
movzx eax, word [r12]
mov word [rbx + 0x10], ax
xor r12d, r12d
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], r12
movups xmm0, xmmword [r15]
movups xmmword [rbx + 0x18], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rbx + 0x28], xmm1
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], 0xf
mov byte [r15], r12b
mov rdx, qword [rsi + 0x10]
lea rcx, [rdx + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x14000517d
cvtsi2ss xmm0, rcx
jmp 0x140005192
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [rsi + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400051a5
cvtsi2ss xmm1, rcx
jmp 0x1400051ba
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi]
seta al
test al, al
je 0x140005236
mov rcx, rsi
call fcn.140005f90
mov rax, rdi
and rax, qword [rsi + 0x30]
add rax, rax
mov r8, qword [rsi + 0x18]
mov rcx, qword [r8 + rax*8 + 8]
mov rdx, qword [r13]
cmp rcx, rdx
jne 0x1400051f8
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], r12
jmp 0x140005222
mov rdx, qword [r8 + rax*8]
movzx eax, word [rbx + 0x10]
cmp ax, word [rcx + 0x10]
je 0x140005215
cmp rcx, rdx
je 0x14000526b
mov rcx, qword [rcx + 8]
cmp ax, word [rcx + 0x10]
jne 0x140005206
mov rax, qword [rcx]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsi + 0x10]
mov rbp, qword [rsp + 0x20]
mov rcx, qword [rbp + 8]
lea rax, [rdx + 1]
mov qword [rsi + 0x10], rax
mov qword [rbx], rbp
mov qword [rbx + 8], rcx
mov qword [rcx], rbx
mov qword [rbp + 8], rbx
mov rax, qword [rsi + 0x18]
and rdi, qword [rsi + 0x30]
add rdi, rdi
mov rdx, qword [rax + rdi*8]
cmp rdx, qword [r13]
jne 0x140005277
mov qword [rax + rdi*8], rbx
jmp 0x140005289
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], r12
jmp 0x140005222
cmp rdx, rbp
jne 0x140005282
mov qword [rax + rdi*8], rbx
jmp 0x14000528e
cmp qword [rax + rdi*8 + 8], rcx
jne 0x14000528e
mov qword [rax + rdi*8 + 8], rbx
mov qword [r14], rbx
mov byte [r14 + 8], 1
jmp 0x1400050dd