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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rdi, r8
mov r15, rdx
mov r13, rcx
mov rcx, r8
call fcn.1400208f0
mov rdx, rax
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x140116406
mov rdx, qword [rax]
movabs rsi, 0xcbf29ce484222325
xor ecx, ecx
add r8, r8
je 0x140116434
movabs r9, 0x100000001b3
movzx eax, byte [rcx + rdx]
xor rsi, rax
imul rsi, r9
inc rcx
cmp rcx, r8
jb 0x140116421
mov rax, qword [r13 + 0x30]
and rax, rsi
add rax, rax
mov rbp, qword [r13 + 0x18]
mov rbx, qword [rbp + rax*8 + 8]
lea rcx, [r13 + 8]
mov r12, qword [rcx]
cmp rbx, r12
jne 0x14011645b
mov rbx, r12
mov rbp, r12
jmp 0x1401164b6
mov rbp, qword [rbp + rax*8]
lea rdx, [rbx + 0x10]
mov rcx, rdi
call fcn.140115030
test al, al
jne 0x140116489
cmp rbx, rbp
je 0x1401164ac
mov rbx, qword [rbx + 8]
lea rdx, [rbx + 0x10]
mov rcx, rdi
call fcn.140115030
test al, al
je 0x140116470
mov qword [r15], rbx
mov byte [r15 + 8], 0
mov rax, r15
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r12, rbx
mov rbp, rbx
lea rcx, [r13 + 8]
movabs rax, 0x249249249249249
cmp qword [r13 + 0x10], rax
je 0x1401166e5
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], 0
lfence
mov ecx, 0x70
call fcn.140146a90
mov r14, rax
mov qword [rsp + 0x38], rax
add rax, 0x10
mov qword [rsp + 0x40], rax
mov rdx, rdi
mov rcx, rax
call fcn.140029890
nop
lea rcx, [r14 + 0x30]
lea rdx, [rdi + 0x20]
call fcn.140027a80
mov eax, dword [rdi + 0x38]
mov dword [r14 + 0x48], eax
xor eax, eax
mov qword [r14 + 0x50], rax
mov qword [r14 + 0x60], rax
mov qword [r14 + 0x68], 7
mov rcx, qword [r13 + 0x10]
movss xmm3, dword [r13]
add rcx, 1
xorps xmm0, xmm0
js 0x140116542
cvtsi2ss xmm0, rcx
jmp 0x140116557
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rdi, qword [r13 + 0x38]
xorps xmm2, xmm2
test rdi, rdi
js 0x14011656a
cvtsi2ss xmm2, rdi
jmp 0x140116582
mov rcx, rdi
shr rcx, 1
mov rax, rdi
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x14011667d
divss xmm0, xmm3
call fcn.1401268e4
xor ecx, ecx
movss xmm1, dword [0x14016cb4c]
comiss xmm0, xmm1
jb 0x1401165c5
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1401165c5
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdi, rcx
jae 0x1401165f7
cmp rdi, 0x200
jae 0x1401165f4
lea rdi, [rdi*8]
cmp rdi, rcx
jae 0x1401165f7
mov rdi, rcx
mov rdx, rdi
mov rcx, r13
call fcn.140116d80
mov rbp, qword [r13 + 0x30]
and rbp, rsi
add rbp, rbp
mov rax, qword [r13 + 0x18]
mov rdi, qword [rax + rbp*8 + 8]
mov rbx, qword [r13 + 8]
cmp rdi, rbx
jne 0x140116629
mov qword [rsp + 0x28], 0
jmp 0x140116665
mov rbp, qword [rax + rbp*8]
lea rdx, [rdi + 0x10]
lea rcx, [r14 + 0x10]
call fcn.140115030
test al, al
jne 0x14011665d
nop
mov rbx, rdi
cmp rdi, rbp
je 0x1401166b1
mov rdi, qword [rdi + 8]
lea rdx, [rdi + 0x10]
lea rcx, [r14 + 0x10]
call fcn.140115030
test al, al
je 0x140116640
mov rbx, qword [rdi]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbx
mov rbp, rbx
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x30], xmm0
mov r12, qword [rsp + 0x30]
mov rdx, qword [rbx + 8]
inc qword [r13 + 0x10]
mov qword [r14], r12
mov qword [r14 + 8], rdx
mov qword [rdx], r14
mov qword [rbx + 8], r14
mov rcx, qword [r13 + 0x18]
mov rax, qword [r13 + 0x30]
and rax, rsi
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [r13 + 8]
jne 0x1401166c1
mov qword [rcx + rax*8], r14
jmp 0x1401166d3
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], 0
jmp 0x14011666a
cmp r8, rbp
jne 0x1401166cc
mov qword [rcx + rax*8], r14
jmp 0x1401166d8
cmp qword [rcx + rax*8 + 8], rdx
jne 0x1401166d8
mov qword [rcx + rax*8 + 8], r14
mov qword [r15], r14
mov byte [r15 + 8], 1
jmp 0x140116491
lea rcx, str.unordered_map_set_too_long
call fcn.1401481b4
int3