Function at 0x14011ec00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x10
xor r11d, r11d
mov r10, rdx
test cl, 3
jne 0x14011eedd
test r10b, 3
jne 0x14011eedd
test r8b, 3
jne 0x14011eedd
test cl, 7
jne 0x14011ed6f
test r10b, 7
jne 0x14011ed6f
test r8b, 7
jne 0x14011ed6f
mov rdi, r9
mov esi, r11d
shr rdi, 3
test rdi, rdi
je 0x14011ed55
cmp rdi, 8
jb 0x14011ed21
lea rax, [r8 - 8]
lea rax, [rax + rdi*8]
lea rdx, [rcx - 8]
lea rdx, [rdx + rdi*8]
cmp rcx, rax
ja 0x14011ec95
cmp rdx, r8
jae 0x14011ed21
lea rax, [r10 - 8]
lea rax, [rax + rdi*8]
cmp rcx, rax
ja 0x14011eca7
cmp rdx, r10
jae 0x14011ed21
mov r14, rdi
and r14, 0xfffffffffffffff8
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov rbx, rcx
sub rbx, r8
nop
movdqu xmm0, xmmword [rax - 0x10]
add rsi, 8
movdqu xmm1, xmmword [rdx + rax - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rbx + rax - 0x50], xmm1
xorps xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rdx + rax - 0x30]
movdqu xmmword [rbx + rax - 0x40], xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rdx + rax - 0x20]
movdqu xmmword [rbx + rax - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [rbx + rax - 0x20], xmm2
cmp rsi, r14
jb 0x14011ecc0
cmp rsi, rdi
jae 0x14011ed55
mov rbp, r10
lea rdx, [r8 + rsi*8]
mov r14, rcx
sub rbp, r8
sub r14, r8
mov rbx, rdi
sub rbx, rsi
mov rsi, rdi
nop word [rax + rax]
mov rax, qword [rdx + rbp]
xor rax, qword [rdx]
mov qword [rdx + r14], rax
lea rdx, [rdx + 8]
sub rbx, 1
jne 0x14011ed40
lea rsi, [rsi*8]
sub r9, rsi
je 0x14011f015
add rcx, rsi
add r10, rsi
add r8, rsi
mov rdi, r9
mov rbx, r11
shr rdi, 2
test rdi, rdi
je 0x14011eec3
cmp rdi, 2
jb 0x14011ee94
lea rax, [rdi - 1]
lea rax, [r8 + rax*4]
lea rdx, [rdi - 1]
lea rdx, [rcx + rdx*4]
cmp rcx, rax
ja 0x14011edaa
cmp rdx, r8
jae 0x14011ee94
lea rax, [rdi - 1]
lea rax, [r10 + rax*4]
cmp rcx, rax
ja 0x14011edc0
cmp rdx, r10
jae 0x14011ee94
cmp rdi, 0x10
jb 0x14011ee52
mov rbp, rdi
mov r14, rdi
and ebp, 0xf
sub r14, rbp
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov rsi, rcx
sub rsi, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rbx, 0x10
movdqu xmm1, xmmword [rax + rdx - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + rsi - 0x50], xmm1
xorps xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rsi + rax - 0x40], xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + rsi - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [rax + rsi - 0x20], xmm2
cmp rbx, r14
jb 0x14011edf0
cmp rbp, 2
jb 0x14011ee8f
mov rdx, rdi
and rdx, 0xfffffffffffffffe
mov rsi, r10
lea rax, [r8 + rbx*4]
sub rsi, r8
mov rbp, rcx
sub rbp, r8
nop dword [rax]
movq xmm1, qword [rax + rsi]
add rbx, 2
movq xmm0, qword [rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax + rbp - 8], xmm1
cmp rbx, rdx
jb 0x14011ee70
cmp rbx, rdi
jae 0x14011eec3
mov rbp, r10
lea rdx, [r8 + rbx*4]
mov r14, rcx
sub rbp, r8
sub r14, r8
mov rsi, rdi
sub rsi, rbx
mov rbx, rdi
nop dword [rax]
mov eax, dword [rdx + rbp]
xor eax, dword [rdx]
mov dword [rdx + r14], eax
lea rdx, [rdx + 4]
sub rsi, 1
jne 0x14011eeb0
lea rbx, [rbx*4]
sub r9, rbx
je 0x14011f015
add rcx, rbx
add r10, rbx
add r8, rbx
test r9, r9
je 0x14011f015
cmp r9, 8
jb 0x14011eff4
lea rdx, [rcx - 1]
lea rax, [r8 - 1]
add rdx, r9
add rax, r9
cmp rcx, rax
ja 0x14011ef0c
cmp rdx, r8
jae 0x14011eff4
lea rax, [r10 - 1]
add rax, r9
cmp rcx, rax
ja 0x14011ef21
cmp rdx, r10
jae 0x14011eff4
cmp r9, 0x40
jb 0x14011efb2
mov rdi, r9
mov rsi, r9
and edi, 0x3f
sub rsi, rdi
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov rbx, rcx
sub rbx, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add r11, 0x40
movdqu xmm1, xmmword [rax + rdx - 0x10]
movdqu xmm2, xmmword [rax + rdx]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + rbx - 0x50], xmm1
xorps xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rax + rbx - 0x40], xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + rbx - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [rax + rbx - 0x20], xmm2
cmp r11, rsi
jb 0x14011ef50
cmp rdi, 8
jb 0x14011efef
mov rdx, r9
and rdx, 0xfffffffffffffff8
mov rbx, r10
lea rax, [r11 + r8]
sub rbx, r8
mov rdi, rcx
sub rdi, r8
nop dword [rax]
movq xmm1, qword [rax + rbx]
add r11, 8
movq xmm0, qword [rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax + rdi - 8], xmm1
cmp r11, rdx
jb 0x14011efd0
cmp r11, r9
jae 0x14011f015
sub r10, r8
lea rdx, [r11 + r8]
sub rcx, r8
sub r9, r11
movzx eax, byte [rdx + r10]
xor al, byte [rdx]
mov byte [rdx + rcx], al
lea rdx, [rdx + 1]
sub r9, 1
jne 0x14011f001
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
add rsp, 0x10
pop r14
ret