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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r12, r9
mov rbp, r8
mov r15, rdx
mov rsi, rcx
mov rdx, qword [r8 + 0x10]
mov rcx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x140168851
mov rcx, qword [r8]
movabs rdi, 0xcbf29ce484222325
xor r13d, r13d
mov r9d, r13d
test rdx, rdx
je 0x140168884
movabs r8, 0x100000001b3
movzx eax, byte [r9 + rcx]
xor rdi, rax
imul rdi, r8
inc r9
cmp r9, rdx
jb 0x140168870
mov r9, rdi
mov r8, rbp
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.14003f1c0
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1401688ad
mov qword [r15], rax
mov byte [r15 + 8], r13b
jmp 0x140168b08
movabs rax, 0x249249249249249
cmp qword [rsi + 0x10], rax
je 0x140168b23
lea rax, [rsi + 8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x30], r13
mov ecx, WSAStartup
call fcn.1401f0dd4
mov r14, rax
mov qword [rsp + 0x30], rax
lea rbx, [rax + 0x10]
mov qword [rsp + 0x90], rbx
mov rdx, rbp
mov rcx, rbx
call fcn.14003ae50
nop
add rbx, 0x20
mov qword [rsp + 0xa0], rbx
mov ecx, dword [r12]
mov dword [rbx], ecx
mov qword [rbx + 8], r13
mov qword [rbx + 0x10], r13
mov ecx, SafeArrayPutElement
call fcn.1401f0dd4
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], r13
mov qword [rbx + 0x20], r13
mov qword [rbx + 0x28], r13
mov rax, qword [r12 + 0x30]
mov qword [rbx + 0x30], rax
mov rax, qword [r12 + 0x38]
mov qword [rbx + 0x38], rax
lea rcx, [rbx + 0x18]
mov rdx, qword [r12 + 0x20]
sub rdx, qword [r12 + 0x18]
sar rdx, 3
mov r8, qword [rbx + 8]
call fcn.140040f10
mov rdx, qword [r12 + 8]
mov r8, rdx
mov rdx, qword [rdx]
mov rcx, rbx
call fcn.140168210
nop
mov rcx, qword [rsi + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x14016898e
cvtsi2ss xmm0, rcx
jmp 0x1401689a3
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 0x1401689b6
cvtsi2ss xmm1, rcx
jmp 0x1401689cb
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]
jbe 0x140168aa4
mov rcx, qword [rsi + 0x10]
mov rbx, qword [rsi + 0x38]
add rcx, 1
xorps xmm0, xmm0
js 0x1401689f0
cvtsi2ss xmm0, rcx
jmp 0x140168a05
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [rsi]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
xor eax, eax
movss xmm1, dword [0x140297114]
comiss xmm0, xmm1
jb 0x140168a33
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140168a33
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttss2si rcx, xmm0
add rcx, rax
mov qword [rsp + 0x20], rcx
lea rdx, reloc.OLEAUT32.dll_VariantClear
lea rax, [rsp + 0x20]
cmp rcx, 8
cmovbe rax, rdx
mov rcx, qword [rax]
cmp rbx, rcx
jae 0x140168a7d
cmp rbx, 0x200
jae 0x140168a7a
lea rax, [rbx*8]
cmp rax, rcx
lea rbx, [rbx*8]
jae 0x140168a7d
mov rbx, rcx
mov rdx, rbx
mov rcx, rsi
call fcn.140177da0
lea r8, [r14 + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.14003f1c0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x30], r13
mov r9, qword [rsp + 0x38]
mov r10, qword [r9 + 8]
inc qword [rsi + 0x10]
mov qword [r14], r9
mov qword [r14 + 8], r10
mov qword [r10], r14
mov qword [r9 + 8], r14
mov rcx, qword [rsi + 8]
mov r8, qword [rsi + 0x18]
mov rax, qword [rsi + 0x30]
and rax, rdi
mov rdx, rax
shl rdx, 4
add rdx, r8
add rax, rax
cmp qword [rdx], rcx
jne 0x140168aea
mov qword [rdx], r14
jmp 0x140168afb
cmp qword [rdx], r9
jne 0x140168af4
mov qword [rdx], r14
jmp 0x140168b00
cmp qword [r8 + rax*8 + 8], r10
jne 0x140168b00
mov qword [r8 + rax*8 + 8], r14
mov qword [r15], r14
mov byte [r15 + 8], 1
mov rax, r15
mov rbx, qword [rsp + 0x98]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
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