Function at 0x14001de10
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
xor ebx, ebx
mov r10, rdx
test cl, 3
jne 0x14001e0af
test r10b, 3
jne 0x14001e0af
test r8b, 3
jne 0x14001e0af
test cl, 7
jne 0x14001df8f
test r10b, 7
jne 0x14001df8f
test r8b, 7
jne 0x14001df8f
mov rdi, r9
mov esi, ebx
shr rdi, 3
test rdi, rdi
je 0x14001df75
cmp rdi, 8
jb 0x14001df39
lea rax, [r8 - 8]
lea rax, [rax + rdi*8]
lea rdx, [rcx - 8]
lea rdx, [rdx + rdi*8]
cmp rcx, rax
ja 0x14001de9b
cmp rdx, r8
jae 0x14001df39
lea rax, [r10 - 8]
lea rax, [rax + rdi*8]
cmp rcx, rax
ja 0x14001deb1
cmp rdx, r10
jae 0x14001df39
mov r14, rdi
and r14, 0xfffffffffffffff8
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov r11, rcx
sub r11, r8
nop dword [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rsi, 8
movdqu xmm1, xmmword [rax + rdx - 0x10]
movdqu xmm2, xmmword [rax + rdx]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + r11 - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rax + r11 - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + r11 - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + r11 - 0x20], xmm2
cmp rsi, r14
jb 0x14001ded0
cmp rsi, rdi
jae 0x14001df75
mov r14, r10
lea rdx, [r8 + rsi*8]
mov rbp, rcx
sub r14, r8
sub rbp, r8
mov r11, rdi
sub r11, rsi
mov rsi, rdi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r14 + rdx]
xor rax, qword [rdx]
mov qword [rdx + rbp], rax
lea rdx, [rdx + 8]
sub r11, 1
jne 0x14001df60
lea rsi, [rsi*8]
sub r9, rsi
je 0x14001e1a4
add rcx, rsi
add r10, rsi
add r8, rsi
mov rdi, r9
mov rsi, rbx
shr rdi, 2
test rdi, rdi
je 0x14001e095
cmp rdi, 0x10
jb 0x14001e069
lea rax, [rdi - 1]
lea rax, [r8 + rax*4]
lea rdx, [rdi - 1]
lea rdx, [rcx + rdx*4]
cmp rcx, rax
ja 0x14001dfca
cmp rdx, r8
jae 0x14001e069
lea rax, [rdi - 1]
lea rax, [r10 + rax*4]
cmp rcx, rax
ja 0x14001dfe0
cmp rdx, r10
jae 0x14001e069
mov r14, rdi
and r14, 0xfffffffffffffff0
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov r11, rcx
sub r11, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rsi, 0x10
movdqu xmm1, xmmword [rax + rdx - 0x10]
movdqu xmm2, xmmword [rax + rdx]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + r11 - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rax + r11 - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + r11 - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + r11 - 0x20], xmm2
cmp rsi, r14
jb 0x14001e000
cmp rsi, rdi
jae 0x14001e095
mov r14, r10
lea rdx, [r8 + rsi*4]
mov rbp, rcx
sub r14, r8
sub rbp, r8
mov r11, rdi
sub r11, rsi
mov rsi, rdi
mov eax, dword [r14 + rdx]
xor eax, dword [rdx]
mov dword [rdx + rbp], eax
lea rdx, [rdx + 4]
sub r11, 1
jne 0x14001e082
lea rsi, [rsi*4]
sub r9, rsi
je 0x14001e1a4
add rcx, rsi
add r10, rsi
add r8, rsi
test r9, r9
je 0x14001e1a4
cmp r9, 0x40
jb 0x14001e179
lea rdx, [rcx - 1]
lea rax, [r8 - 1]
add rdx, r9
add rax, r9
cmp rcx, rax
ja 0x14001e0de
cmp rdx, r8
jae 0x14001e179
lea rax, [r10 - 1]
add rax, r9
cmp rcx, rax
ja 0x14001e0f3
cmp rdx, r10
jae 0x14001e179
mov rdi, r9
and rdi, 0xffffffffffffffc0
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov r11, rcx
sub r11, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rbx, 0x40
movdqu xmm1, xmmword [rax + rdx - 0x10]
movdqu xmm2, xmmword [rax + rdx]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + r11 - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rax + r11 - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + r11 - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + r11 - 0x20], xmm2
cmp rbx, rdi
jb 0x14001e110
cmp rbx, r9
jae 0x14001e1a4
sub r10, r8
lea rdx, [rbx + r8]
sub rcx, r8
sub r9, rbx
nop word [rax + rax]
movzx eax, byte [r10 + rdx]
xor al, byte [rdx]
mov byte [rdx + rcx], al
lea rdx, [rdx + 1]
sub r9, 1
jne 0x14001e190
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r14
pop rdi
ret