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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov r12, r8
mov qword [rsp + 0x20], rdx
mov r15, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0xf
mov rbx, r8
jbe 0x14006d15a
mov rbx, qword [r12]
movabs rdi, 0xcbf29ce484222325
test r15, r15
je 0x14006d188
movabs rax, 0x100000001b3
lea rdx, [r15 - 1]
mov r8d, r15d
and r8d, 3
cmp rdx, 3
jae 0x14006d18d
xor edx, edx
jmp 0x14006d1d8
mov rbp, rdi
jmp 0x14006d207
mov rsi, r15
sub rsi, r8
xor edx, edx
nop word cs:[rax + rax]
nop
movzx ebp, byte [rbx + rdx]
xor rbp, rdi
imul rbp, rax
movzx edi, byte [rbx + rdx + 1]
xor rdi, rbp
imul rdi, rax
movzx ebp, byte [rbx + rdx + 2]
xor rbp, rdi
imul rbp, rax
movzx edi, byte [rbx + rdx + 3]
xor rdi, rbp
imul rdi, rax
add rdx, 4
cmp rsi, rdx
jne 0x14006d1a0
mov rbp, rdi
test r8, r8
je 0x14006d207
add rdx, rbx
xor esi, esi
nop word cs:[rax + rax]
nop
movzx ebp, byte [rdx + rsi]
xor rbp, rdi
imul rbp, rax
add rsi, 1
mov rdi, rbp
cmp r8, rsi
jne 0x14006d1f0
and rbp, qword [rcx + 0x30]
mov r14, qword [rcx + 8]
mov qword [rsp + 0x30], rcx
mov rax, qword [rcx + 0x18]
mov rcx, rbp
shl rcx, 4
mov r13, rbp
add r13, rbp
mov rdi, qword [rax + rcx]
mov rbp, r14
cmp rdi, r14
je 0x14006d250
lea rcx, [r13*8]
or rcx, 8
mov rax, qword [rax + rcx]
mov rbp, qword [rax]
nop word cs:[rax + rax]
nop
cmp rdi, rbp
je 0x14006d28f
mov rbp, qword [rbp + 8]
cmp r15, qword [rbp + 0x20]
jne 0x14006d250
cmp qword [rbp + 0x28], 0xf
jbe 0x14006d270
mov rdx, qword [rbp + 0x10]
jmp 0x14006d274
lea rdx, [rbp + 0x10]
mov rcx, rbx
mov r8, r15
call fcn.1400cc660
test eax, eax
jne 0x14006d250
xor eax, eax
mov rdi, qword [rsp + 0x20]
jmp 0x14006d429
mov r15, qword [r14]
mov rbx, qword [r15 + 8]
mov ecx, 0x30
call fcn.1400a8a10
mov rsi, rax
test r15, r15
mov qword [rsp + 0x28], rbx
mov rax, rbx
cmove rax, rsi
mov rcx, r15
cmove rcx, rsi
mov qword [rsi], rcx
mov qword [rsi + 8], rax
xorps xmm0, xmm0
movups xmmword [rsi + 0x20], xmm0
mov rbp, qword [r12 + 0x10]
cmp qword [r12 + 0x18], 0xf
jbe 0x14006d2d8
mov r12, qword [r12]
mov rbx, rsi
add rbx, 0x10
cmp rbp, 0xf
ja 0x14006d2f5
movups xmm0, xmmword [r12]
movups xmmword [rbx], xmm0
mov r14d, 0xf
jmp 0x14006d348
mov r14, rbp
or r14, 0xf
movabs rax, 0x7fffffffffffffff
cmp r14, rax
cmovae r14, rax
cmp r14, 0xfff
jb 0x14006d32d
lea rcx, [r14 + 0x28]
call fcn.1400a8a10
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x14006d339
lea rcx, [r14 + 1]
call fcn.1400a8a10
mov rcx, rax
mov qword [rbx], rcx
lea r8, [rbp + 1]
mov rdx, r12
call fcn.1400cc760
mov qword [rsi + 0x20], rbp
mov qword [rsi + 0x28], r14
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx + 0x10]
movabs rdx, 0x555555555555554
cmp rax, rdx
je 0x14006d443
add rax, 1
mov qword [rcx + 0x10], rax
mov qword [r15 + 8], rsi
mov rax, qword [rsp + 0x28]
mov qword [rax], rsi
mov rdx, qword [rcx + 8]
mov rbp, qword [rdx]
mov rax, qword [rbp]
cmp rax, rdi
je 0x14006d3c1
mov rdx, qword [rbp + 8]
mov qword [rdx], rax
mov rdx, qword [rax + 8]
mov qword [rdx], rdi
mov rdx, qword [rdi + 8]
mov qword [rdx], rbp
mov rbx, qword [rdi + 8]
mov rdx, qword [rax + 8]
mov qword [rdi + 8], rdx
mov rdx, qword [rbp + 8]
mov qword [rax + 8], rdx
mov qword [rbp + 8], rbx
mov rdx, qword [rcx + 8]
mov rsi, qword [rcx + 0x18]
lea rax, [rsi + r13*8]
mov rbx, qword [rsi + r13*8]
cmp rbx, rdx
je 0x14006d405
mov rdx, rbp
cmp rbx, rdi
mov rdi, qword [rsp + 0x20]
je 0x14006d41f
or r13, 1
mov rax, qword [rsi + r13*8]
mov rax, qword [rax]
mov qword [rsi + r13*8], rax
cmp rbp, rax
je 0x14006d422
mov rdx, qword [rcx + 0x18]
lea rax, [rdx + r13*8]
mov rdx, qword [rdx + r13*8]
mov rdx, qword [rdx + 8]
jmp 0x14006d41f
mov qword [rax], rbp
shl r13, 3
or r13, 8
add r13, qword [rcx + 0x18]
mov rax, r13
mov rdx, rbp
mov rdi, qword [rsp + 0x20]
mov qword [rax], rdx
call fcn.14006d460
mov al, 1
mov qword [rdi], rbp
mov byte [rdi + 8], al
mov rax, rdi
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.list_T__too_long
call fcn.1400aa2a0
ud2