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

Disassembly:
mov dword [rsp + 0x10], edx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xd8
mov qword [rbp - 0x51], 0xfffffffffffffffe
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp - 1], rax
mov edi, r9d
mov rbx, r8
mov r12d, edx
mov r14, rcx
lea r15, [rcx + 0x88]
mov rcx, r15
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_AcquireSRWLockExclusive]
nop dword [rax + rax]
mov qword [rbp - 0x49], r15
movabs rcx, 0xcbf29ce484222325
mov rax, rcx
lea r8, [rbp + 0x67]
movabs rsi, 0x100000001b3
mov r9d, 4
movzx edx, byte [r8]
xor rax, rdx
imul rax, rsi
inc r8
sub r9, 1
jne 0x1402c1129
mov r11d, 0x9e3779b9
add r11, rax
mov r9, qword [rbx + 0x10]
mov r8, rbx
cmp qword [rbx + 0x18], 8
jb 0x1402c1157
mov r8, qword [rbx]
mov r10, r8
add r9, r9
lea rdx, [r9 + r8]
xor r13d, r13d
cmp r8, rdx
cmova r9, r13
test r9, r9
je 0x1402c1189
movzx edx, byte [r10]
xor rcx, rdx
imul rcx, rsi
inc r10
mov rdx, r10
sub rdx, r8
cmp rdx, r9
jne 0x1402c1170
shl rax, 6
mov r8, r11
shr r8, 2
lea rdx, [rcx + rax]
movabs rcx, 0x282c15e7f9
add rcx, r8
add rcx, rdx
xor rcx, r11
mov qword [rsp + 0x30], rcx
lea rsi, [r14 + 0x48]
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x79]
mov rcx, rsi
call fcn.14005e824
mov rcx, qword [rbp - 0x79]
cmp rcx, qword [r14 + 0x50]
je 0x1402c11e3
mov r8, qword [rbp + 0x7f]
mov edx, edi
mov rcx, qword [rcx + 0x18]
call fcn.1402c29e0
jmp 0x1402c13f2
cmp dword [r14 + 0x13c], 0x7d0
jae 0x1402c13f2
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.1402c1e7c
nop
mov r8, qword [rbp + 0x7f]
mov edx, edi
mov rdi, qword [rsp + 0x38]
mov rcx, rdi
call fcn.1402c29e0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1402c122c
lock inc dword [rcx + 8]
mov r12d, dword [rbp + 0x67]
mov rdi, qword [rsp + 0x38]
mov qword [rbp - 0x39], rdi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x31], rax
mov rdx, rbx
lea rcx, [rbp - 0x29]
call fcn.14005da24
nop
mov dword [rbp - 9], r12d
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x71]
mov rcx, rsi
call fcn.14005e824
mov rax, qword [rsi + 8]
mov rbx, qword [rbp - 0x71]
cmp rbx, rax
jne 0x1402c12e5
lea rcx, [rsp + 0x30]
mov qword [rbp - 0x69], rcx
mov rbx, qword [rax]
mov rdi, qword [rbx + 8]
lea rax, [rbp - 0x69]
mov qword [rsp + 0x20], rax
mov r8, rdi
mov rdx, rbx
call fcn.1402c24f8
mov rdx, rax
mov rax, qword [rsi + 0x10]
movabs rcx, 0x333333333333332
sub rcx, rax
cmp rcx, 1
jae 0x1402c12ba
lea rcx, str.list_T__too_long
call qword [sym.imp.msvcp_win.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
nop dword [rax + rax]
int3
inc rax
mov qword [rsi + 0x10], rax
mov qword [rbx + 8], rdx
mov qword [rdi], rdx
mov r9, qword [rsi + 8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
lea rdx, [rbp - 0x61]
mov rcx, rsi
call fcn.1402c1fb0
mov rbx, qword [rbp - 0x61]
jmp 0x1402c12e9
mov qword [rbp - 0x61], rbx
mov dword [rbx + 0x48], r12d
lea rcx, [rbx + 0x28]
lea rdx, [rbp - 0x29]
call fcn.140085570
mov rax, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x31]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x39], xmm0
mov qword [rbx + 0x18], rax
mov qword [rbp - 0x41], rcx
mov rdi, qword [rbx + 0x20]
mov qword [rbx + 0x20], rcx
or esi, 0xffffffff
test rdi, rdi
je 0x1402c1358
mov eax, esi
lock xadd dword [rdi + 8], eax
add eax, esi
jne 0x1402c1358
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax]
call qword [str.p76_]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
add eax, esi
jne 0x1402c1358
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [str.p76_]
nop
lea rcx, [rbp - 0x29]
call fcn.140055f70
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x1402c13a4
mov eax, esi
lock xadd dword [rcx + 8], eax
add eax, esi
jne 0x1402c13a4
mov rbx, qword [rbp - 0x31]
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [str.p76_]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
add eax, esi
jne 0x1402c13a4
mov rcx, qword [rbp - 0x31]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.p76_]
inc dword [r14 + 0x13c]
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x1402c13f2
mov eax, esi
lock xadd dword [rcx + 8], eax
add eax, esi
jne 0x1402c13f2
mov rbx, qword [rsp + 0x40]
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax]
call qword [str.p76_]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
add eax, esi
jne 0x1402c13f2
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.p76_]
nop
test r15, r15
je 0x1402c1406
mov rcx, r15
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseSRWLockExclusive]
nop dword [rax + rax]
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.140356560
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret