Function at 0x14000f610
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov r15, rcx
mov rbx, r8
mov ecx, 0x50
mov r14, rdx
call fcn.1400ce7d0
mov rdx, rbx
mov rsi, rax
lea rcx, [rax + 0x10]
call fcn.14000d680
cmp qword [rsi + 0x28], 0x10
lea r8, [rsi + 0x10]
jb 0x14000f651
mov r8, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x20]
xor ecx, ecx
movabs rbp, 0xcbf29ce484222325
test rdx, rdx
je 0x14000f684
movabs r9, 0x100000001b3
movzx eax, byte [rcx + r8]
inc rcx
xor rbp, rax
imul rbp, r9
cmp rcx, rdx
jb 0x14000f670
mov r9, rbp
lea r8, [rsi + 0x10]
lea rdx, [rsp + 0x20]
mov rcx, r15
call fcn.14000f540
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14000f6ce
mov qword [r14], rax
mov byte [r14 + 8], 0
test rsi, rsi
je 0x14000f85d
lea rcx, [rsi + 0x10]
call fcn.140010020
mov edx, 0x50
mov rcx, rsi
call fcn.1400ce80c
jmp 0x14000f85d
mov rdx, qword [r15 + 0x10]
movabs rax, 0x333333333333333
cmp rdx, rax
je 0x14000f871
lea rcx, [rdx + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x14000f6f8
cvtsi2ss xmm0, rcx
jmp 0x14000f70d
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [r15 + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x14000f720
cvtsi2ss xmm1, rcx
jmp 0x14000f735
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [r15]
jbe 0x14000f801
mov rcx, r15
call fcn.140012950
mov rax, qword [r15 + 0x30]
mov rdx, qword [r15 + 0x18]
and rax, rbp
mov rcx, qword [r15 + 8]
add rax, rax
mov rbx, qword [rdx + rax*8 + 8]
cmp rbx, rcx
jne 0x14000f777
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], 0
jmp 0x14000f7f2
mov qword [rsp + 0x60], r12
mov r12, qword [rsi + 0x20]
mov qword [rsp + 0x68], r13
mov r13, qword [rdx + rax*8]
nop dword [rax]
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
jb 0x14000f79f
mov rdx, qword [rbx + 0x10]
cmp qword [rsi + 0x28], 0x10
lea rcx, [rsi + 0x10]
jb 0x14000f7ae
mov rcx, qword [rsi + 0x10]
cmp r12, qword [rbx + 0x20]
jne 0x14000f7c0
mov r8, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14000f7cb
cmp rbx, r13
je 0x14000f7da
mov rbx, qword [rbx + 8]
jmp 0x14000f790
mov rax, qword [rbx]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
jmp 0x14000f7e8
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], 0
mov r12, qword [rsp + 0x60]
mov r13, qword [rsp + 0x68]
movaps xmm0, xmmword [rsp + 0x20]
mov rdx, qword [r15 + 0x10]
movdqa xmmword [rsp + 0x20], xmm0
mov r8, qword [rsp + 0x20]
lea rax, [rdx + 1]
mov r9, qword [r8 + 8]
mov qword [r15 + 0x10], rax
mov qword [rsi], r8
mov qword [rsi + 8], r9
mov qword [r9], rsi
mov qword [r8 + 8], rsi
mov rax, qword [r15 + 0x30]
mov rcx, qword [r15 + 0x18]
and rax, rbp
add rax, rax
mov rdx, qword [rcx + rax*8]
cmp rdx, qword [r15 + 8]
jne 0x14000f83e
mov qword [rcx + rax*8], rsi
jmp 0x14000f850
cmp rdx, r8
jne 0x14000f849
mov qword [rcx + rax*8], rsi
jmp 0x14000f855
cmp qword [rcx + rax*8 + 8], r9
jne 0x14000f855
mov qword [rcx + rax*8 + 8], rsi
mov qword [r14], rsi
mov byte [r14 + 8], 1
mov rbx, qword [rsp + 0x70]
mov rax, r14
add rsp, 0x30
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3