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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf70]
mov eax, 0x1070
call fcn.140286ca0
sub rsp, rax
mov rax, qword [0x140353240]
xor rax, rsp
mov qword [rbp + 0xf68], rax
mov r13, r8
mov rsi, rdx
mov rdi, rcx
mov qword [rbp + 0xf60], 0
mov r8, rdx
lea rdx, [rbp + 0xf60]
call fcn.1401e22b0
movabs rbx, 0x6666666666666667
mov rcx, qword [rbp + 0xf60]
cmp rcx, qword [rdi + 8]
je 0x1401e2471
sub rcx, qword [rdi]
mov rax, rbx
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rdi + 0x18]
lea rax, [rax + rdx*8]
jmp 0x1401e2475
mov rax, qword [rdi + 0x20]
cmp rax, qword [rdi + 0x20]
jne 0x1401e26f6
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x1401e249d
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
lea rcx, [rsp + 0x38]
call fcn.1400223f0
mov r9, qword [rsi + 0x10]
mov r8, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x1401e24bc
mov r8, qword [rsi]
mov edx, 0xcbf29ce4
xor ecx, ecx
test r9, r9
je 0x1401e24e7
nop dword [rax + rax]
movsx rax, byte [r8 + rcx]
xor rax, rdx
imul rdx, rax, 0x1000193
inc rcx
cmp rcx, r9
jb 0x1401e24d0
mov qword [rsp + 0x58], rdx
mov rax, qword [rdi + 8]
cmp rax, qword [rdi + 0x10]
je 0x1401e2525
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rax + 0x10], xmm1
movdqa xmm0, xmmword [0x140311250]
movdqu xmmword [rsp + 0x48], xmm0
mov byte [rsp + 0x38], 0
mov qword [rax + 0x20], rdx
add qword [rdi + 8], 0x28
jmp 0x1401e2536
lea r8, [rsp + 0x38]
mov rdx, rax
mov rcx, rdi
call fcn.1401e4f80
nop
lea rcx, [rsp + 0x38]
call fcn.140022880
mov r12, qword [rdi + 8]
mov r15, qword [rdi]
mov rcx, r12
sub rcx, r15
mov rax, rbx
imul rcx
mov r14, rdx
sar r14, 4
mov rax, r14
shr rax, 0x3f
add r14, rax
cmp r14, 0x20
jg 0x1401e257a
mov rdx, r12
mov rcx, r15
call fcn.1401e4aa0
jmp 0x1401e263d
mov rax, r14
cqo
sub rax, rdx
sar rax, 1
mov rbx, r14
sub rbx, rax
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
cmovl rax, rbx
cmp rbx, 0x66
jbe 0x1401e25f5
mov rbx, rax
movabs rcx, 0x666666666666666
cmp rax, rcx
ja 0x1401e25e5
test rax, rax
jle 0x1401e25e5
nop dword [rax]
lea rcx, [rbx + rbx*4]
shl rcx, 3
lea rdx, [0x1402f357c]
call fcn.140286c00
mov r9, rax
test rax, rax
jne 0x1401e26a7
shr rbx, 1
jne 0x1401e25c0
xor r9d, r9d
mov rcx, r9
call fcn.140286544
mov ebx, 0x66
lea r9, [rsp + 0x70]
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], rbx
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], rbx
mov r8, r14
mov rdx, r12
mov rcx, r15
call fcn.1401e4c00
nop
cmp qword [rsp + 0x68], 0x66
jbe 0x1401e2633
mov rcx, qword [rsp + 0x60]
call fcn.140286544
movabs rbx, 0x6666666666666667
mov qword [rbp + 0xf60], 0
mov r8, rsi
lea rdx, [rbp + 0xf60]
mov rcx, rdi
call fcn.1401e22b0
mov rcx, qword [rbp + 0xf60]
cmp rcx, qword [rdi + 8]
je 0x1401e26f6
sub rcx, qword [rdi]
mov rax, rbx
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rdi + 0x18]
lea r9, [rax + rdx*8]
mov rcx, qword [rdi + 0x20]
cmp rcx, qword [rdi + 0x28]
je 0x1401e26e7
mov r8, qword [r13]
cmp r9, rcx
jne 0x1401e26bb
mov qword [rcx], r8
add qword [rdi + 0x20], 8
jmp 0x1401e26f6
cmp rbx, 0x66
jbe 0x1401e25e8
mov qword [rsp + 0x60], rax
jmp 0x1401e25ff
lea rdx, [rcx - 8]
mov rax, qword [rdx]
mov qword [rcx], rax
add qword [rdi + 0x20], 8
cmp rdx, r9
je 0x1401e26e2
nop
mov rcx, rdx
sub rdx, 8
mov rax, qword [rdx]
mov qword [rcx], rax
cmp rdx, r9
jne 0x1401e26d0
mov qword [r9], r8
jmp 0x1401e26f6
mov r8, r13
mov rdx, r9
lea rcx, [rdi + 0x18]
call fcn.1401de8e0
mov rcx, qword [rbp + 0xf68]
xor rcx, rsp
call fcn.1402863b0
mov rbx, qword [rsp + 0x10c0]
add rsp, 0x1070
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret