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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x50]
mov qword [rbp], 0xfffffffffffffffe
mov r13, rcx
mov r12, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0x10
mov rbx, r8
jb 0x140020601
mov rbx, qword [r8]
test r12, r12
mov qword [rbp - 8], rdx
mov qword [rbp - 0x28], r8
je 0x140020638
lea rax, [r12 - 1]
mov r8d, r12d
and r8d, 3
movabs rcx, 0x100000001b3
cmp rax, 3
jae 0x140020647
movabs rdi, 0xcbf29ce484222325
xor edx, edx
jmp 0x140020698
movabs r15, 0xcbf29ce484222325
jmp 0x1400206c8
mov rsi, r12
and rsi, 0xfffffffffffffffc
movabs rdi, 0xcbf29ce484222325
xor edx, edx
nop word [rax + rax]
movzx eax, byte [rbx + rdx]
xor rax, rdi
imul rax, rcx
movzx edi, byte [rbx + rdx + 1]
xor rdi, rax
imul rdi, rcx
movzx eax, byte [rbx + rdx + 2]
xor rax, rdi
imul rax, rcx
movzx edi, byte [rbx + rdx + 3]
xor rdi, rax
imul rdi, rcx
add rdx, 4
cmp rsi, rdx
jne 0x140020660
mov r15, rdi
test r8, r8
je 0x1400206c8
add rdx, rbx
xor esi, esi
nop word cs:[rax + rax]
nop
movzx r15d, byte [rdx + rsi]
xor r15, rdi
imul r15, rcx
add rsi, 1
mov rdi, r15
cmp r8, rsi
jne 0x1400206b0
mov rax, qword [r13 + 0x30]
and rax, r15
mov rcx, qword [r13 + 0x18]
mov rdx, rax
shl rdx, 4
mov r14, qword [rcx + rdx + 8]
cmp r14, qword [r13 + 8]
je 0x14002073b
add rax, rax
mov rsi, qword [rcx + rax*8]
cmp r12, qword [r14 + 0x20]
jne 0x140020727
nop word cs:[rax + rax]
nop dword [rax]
cmp qword [r14 + 0x28], 0x10
jb 0x140020710
mov rdx, qword [r14 + 0x10]
jmp 0x140020714
lea rdx, [r14 + 0x10]
mov rcx, rbx
mov r8, r12
call fcn.1401d4960
test eax, eax
je 0x1400208c4
cmp r14, rsi
je 0x140020738
mov r14, qword [r14 + 8]
cmp r12, qword [r14 + 0x20]
je 0x140020700
jmp 0x140020727
mov r14, rsi
movabs rax, 0x333333333333333
cmp qword [r13 + 0x10], rax
je 0x1400209fb
lea rsi, [r13 + 8]
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x10], 0
mov qword [rbp - 0x20], 0
mov ecx, 0x50
call fcn.1400ad850
mov rbx, rax
mov qword [rbp - 0x10], rax
mov r12, rax
add r12, 0x10
mov qword [rbp - 0x20], rax
mov rcx, rsi
mov rdx, r12
mov r8, qword [rbp - 0x28]
call fcn.140020ad0
mov rax, qword [r13 + 0x10]
add rax, 1
js 0x1400207a3
cvtsi2ss xmm0, rax
jmp 0x1400207b8
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
movss xmm1, dword [r13]
mov rsi, qword [r13 + 0x38]
test rsi, rsi
js 0x1400207ce
cvtsi2ss xmm2, rsi
jmp 0x1400207e5
mov rax, rsi
shr rax, 1
mov ecx, esi
and ecx, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm3, xmm0
divss xmm3, xmm2
ucomiss xmm3, xmm1
jbe 0x1400208dc
divss xmm0, xmm1
call fcn.1401e7a18
cvttss2si rax, xmm0
mov rcx, rax
subss xmm0, dword [0x1402117a0]
cvttss2si rdx, xmm0
sar rcx, 0x3f
and rdx, rcx
or rdx, rax
cmp rdx, 9
mov eax, 8
cmovae rax, rdx
cmp rsi, rax
jae 0x14002084c
lea rcx, [rsi*8]
cmp rcx, rax
cmovb rcx, rax
cmp rsi, 0x200
cmovae rcx, rax
mov rsi, rcx
mov rcx, r13
mov rdx, rsi
call fcn.140020cb0
mov rax, qword [r13 + 0x30]
and rax, r15
mov rcx, qword [r13 + 0x18]
mov rdx, rax
shl rdx, 4
mov r14, qword [rcx + rdx + 8]
cmp r14, qword [r13 + 8]
je 0x1400208dc
add rax, rax
cmp qword [rbx + 0x28], 0x10
jb 0x140020882
mov r12, qword [rbx + 0x10]
mov rdi, qword [rcx + rax*8]
mov rsi, qword [rbx + 0x20]
cmp rsi, qword [r14 + 0x20]
jne 0x1400208b3
cmp qword [r14 + 0x28], 0x10
jb 0x1400208a0
mov rdx, qword [r14 + 0x10]
jmp 0x1400208a4
lea rdx, [r14 + 0x10]
mov rcx, r12
mov r8, rsi
call fcn.1401d4960
test eax, eax
je 0x1400208d9
cmp r14, rdi
je 0x1400208d4
mov r14, qword [r14 + 8]
cmp rsi, qword [r14 + 0x20]
je 0x140020890
jmp 0x1400208b3
mov rdi, qword [rbp - 8]
mov qword [rdi], r14
mov byte [rdi + 8], 0
jmp 0x1400209e7
mov r14, rdi
jmp 0x1400208dc
mov r14, qword [r14]
mov qword [rbp - 0x10], 0
mov rax, qword [r14 + 8]
add qword [r13 + 0x10], 1
mov qword [rbx], r14
mov qword [rbx + 8], rax
mov qword [rax], rbx
mov qword [r14 + 8], rbx
mov rdi, qword [r13 + 0x18]
and r15, qword [r13 + 0x30]
shl r15, 4
lea rcx, [rdi + r15]
add rcx, 8
lea rdx, [rdi + r15]
mov rdi, qword [rdi + r15]
cmp rdi, qword [r13 + 8]
je 0x140020930
cmp rdi, r14
mov rdi, qword [rbp - 8]
je 0x14002093a
cmp qword [rcx], rax
jne 0x14002093d
mov rdx, rcx
jmp 0x14002093a
mov qword [rdx], rbx
mov rdx, rcx
mov rdi, qword [rbp - 8]
mov qword [rdx], rbx
mov qword [rdi], rbx
mov byte [rdi + 8], 1
mov rsi, qword [rbp - 0x10]
test rsi, rsi
je 0x1400209e7
mov rax, qword [rsi + 0x48]
cmp rax, 0x10
jb 0x140020990
mov rcx, qword [rsi + 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14002098b
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140020a07
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1400ad894
movaps xmm0, xmmword [section..rdata]
movups xmmword [rsi + 0x40], xmm0
mov byte [rsi + 0x30], 0
mov rax, qword [rsi + 0x28]
cmp rax, 0x10
jb 0x1400209da
mov rcx, qword [rsi + 0x10]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400209d5
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140020a07
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1400ad894
mov edx, 0x50
mov rcx, rsi
call fcn.1400ad894
mov rax, rdi
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1400aea7c
call fcn.1401e54b4
int3