Function at 0x140016d20
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, 0x30
mov rdi, r8
mov r12, rdx
mov r13, rcx
mov r9, qword [r8 + 0x10]
mov rdx, r8
mov r11, qword [r8 + 0x18]
cmp r11, 7
jbe 0x140016d51
mov rdx, qword [r8]
movabs r15, 0xcbf29ce484222325
lea r8, [r9 + r9]
xor ecx, ecx
test r8, r8
je 0x140016d83
movabs r10, 0x100000001b3
movzx eax, byte [rdx + rcx]
xor r15, rax
imul r15, r10
inc rcx
cmp rcx, r8
jb 0x140016d70
mov rax, qword [r13 + 0x30]
and rax, r15
add rax, rax
mov rcx, qword [r13 + 0x18]
mov rbx, qword [rcx + rax*8 + 8]
mov rbp, qword [r13 + 8]
cmp rbx, rbp
jne 0x140016da7
mov rbx, rbp
mov rsi, rbp
jmp 0x140016e14
mov r10, qword [rcx + rax*8]
nop dword [rax + rax]
lea rcx, [rbx + 0x10]
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 7
jbe 0x140016dc2
mov rcx, qword [rcx]
mov r8, rdi
cmp r11, 7
jbe 0x140016dce
mov r8, qword [rdi]
cmp r9, rax
jne 0x140016e03
mov rdx, r9
test r9, r9
je 0x140016df4
sub r8, rcx
nop
movzx eax, word [r8 + rcx]
cmp ax, word [rcx]
jne 0x140016e03
add rcx, 2
sub rdx, 1
jne 0x140016de0
mov qword [r12], rbx
mov byte [r12 + 8], 0
jmp 0x140017037
cmp rbx, r10
je 0x140016e0e
mov rbx, qword [rbx + 8]
jmp 0x140016db0
mov rbp, rbx
mov rsi, rbx
movabs rax, 0x555555555555555
cmp qword [r13 + 0x10], rax
je 0x140017052
lea rax, [r13 + 8]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
mov ecx, 0x30
call fcn.14003f480
mov r14, rax
mov qword [rsp + 0x28], rax
lea rcx, [rax + 0x10]
mov rdx, rdi
call fcn.14000f2b0
nop
mov rcx, qword [r13 + 0x10]
movss xmm3, dword [r13]
add rcx, 1
xorps xmm0, xmm0
js 0x140016e73
cvtsi2ss xmm0, rcx
jmp 0x140016e88
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 0x140016e9b
cvtsi2ss xmm2, rdi
jmp 0x140016eb3
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 0x140016fe2
divss xmm0, xmm3
call fcn.1400682dc
xor ecx, ecx
movss xmm1, dword [0x140079630]
comiss xmm0, xmm1
jb 0x140016ef6
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140016ef6
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 0x140016f28
cmp rdi, 0x200
jae 0x140016f25
lea rdi, [rdi*8]
cmp rdi, rcx
jae 0x140016f28
mov rdi, rcx
mov rdx, rdi
mov rcx, r13
call fcn.140017810
mov rax, qword [r13 + 0x30]
and rax, r15
add rax, rax
mov rcx, qword [r13 + 0x18]
mov r9, qword [rcx + rax*8 + 8]
mov rbx, qword [r13 + 8]
cmp r9, rbx
jne 0x140016f56
mov qword [rsp + 0x20], rbx
jmp 0x140016fd1
mov rdi, qword [rcx + rax*8]
mov rsi, qword [r14 + 0x28]
mov r10, qword [r14 + 0x20]
nop dword [rax]
nop word [rax + rax]
mov rbx, r9
lea rcx, [r9 + 0x10]
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 7
jbe 0x140016f85
mov rcx, qword [rcx]
lea r8, [r14 + 0x10]
cmp rsi, 7
jbe 0x140016f93
mov r8, qword [r14 + 0x10]
cmp r10, rax
jne 0x140016fc1
mov rdx, r10
test r10, r10
je 0x140016fb7
sub r8, rcx
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x140016fc1
add rcx, 2
sub rdx, 1
jne 0x140016fa3
mov rbx, qword [r9]
mov qword [rsp + 0x20], rbx
jmp 0x140016fda
cmp r9, rdi
je 0x140016fcc
mov r9, qword [r9 + 8]
jmp 0x140016f70
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], 0
mov rsi, rbx
mov rbp, qword [rsp + 0x20]
mov rdx, qword [rbx + 8]
inc qword [r13 + 0x10]
mov qword [r14], rbp
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, r15
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [r13 + 8]
jne 0x140017016
mov qword [rcx + rax*8], r14
jmp 0x140017028
cmp r8, rsi
jne 0x140017021
mov qword [rcx + rax*8], r14
jmp 0x14001702d
cmp qword [rcx + rax*8 + 8], rdx
jne 0x14001702d
mov qword [rcx + rax*8 + 8], r14
mov qword [r12], r14
mov byte [r12 + 8], 1
mov rax, r12
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.14001a2d4
int3