Function at 0x14010a740
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 0x14010aa2d
test r10b, 3
jne 0x14010aa2d
test r8b, 3
jne 0x14010aa2d
test cl, 7
jne 0x14010a8bf
test r10b, 7
jne 0x14010a8bf
test r8b, 7
jne 0x14010a8bf
mov rdi, r9
mov esi, r11d
shr rdi, 3
test rdi, rdi
je 0x14010a8a5
cmp rdi, 8
jb 0x14010a875
lea rax, [r8 - 8]
lea rax, [rax + rdi*8]
lea rdx, [rcx - 8]
lea rdx, [rdx + rdi*8]
cmp rcx, rax
ja 0x14010a7d5
cmp rdx, r8
jae 0x14010a875
lea rax, [r10 - 8]
lea rax, [rax + rdi*8]
cmp rcx, rax
ja 0x14010a7eb
cmp rdx, r10
jae 0x14010a875
mov r14, rdi
and r14, 0xfffffffffffffff8
mov rdx, r10
lea rax, [r8 + 0x10]
sub rdx, r8
mov rbx, rcx
sub rbx, r8
nop dword [rax]
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rsi, 8
movdqu xmm1, xmmword [rdx + rax - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rbx + rax - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rdx + rax - 0x30]
movdqu xmmword [rbx + rax - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rdx + rax - 0x20]
movdqu xmmword [rbx + rax - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rbx + rax - 0x20], xmm2
cmp rsi, r14
jb 0x14010a810
cmp rsi, rdi
jae 0x14010a8a5
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
mov rax, qword [rdx + rbp]
xor rax, qword [rdx]
mov qword [rdx + r14], rax
lea rdx, [rdx + 8]
sub rbx, 1
jne 0x14010a890
lea rsi, [rsi*8]
sub r9, rsi
je 0x14010ab66
add rcx, rsi
add r10, rsi
add r8, rsi
mov rdi, r9
mov rbx, r11
shr rdi, 2
test rdi, rdi
je 0x14010aa13
cmp rdi, 2
jb 0x14010a9e5
lea rax, [rdi - 1]
lea rax, [r8 + rax*4]
lea rdx, [rdi - 1]
lea rdx, [rcx + rdx*4]
cmp rcx, rax
ja 0x14010a8fa
cmp rdx, r8
jae 0x14010a9e5
lea rax, [rdi - 1]
lea rax, [r10 + rax*4]
cmp rcx, rax
ja 0x14010a910
cmp rdx, r10
jae 0x14010a9e5
cmp rdi, 0x10
jb 0x14010a9a6
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]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + rsi - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rsi + rax - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + rsi - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + rsi - 0x20], xmm2
cmp rbx, r14
jb 0x14010a940
cmp rbp, 2
jb 0x14010a9e0
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]
pxor xmm1, xmm0
movq qword [rax + rbp - 8], xmm1
cmp rbx, rdx
jb 0x14010a9c0
cmp rbx, rdi
jae 0x14010aa13
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
mov eax, dword [rdx + rbp]
xor eax, dword [rdx]
mov dword [rdx + r14], eax
lea rdx, [rdx + 4]
sub rsi, 1
jne 0x14010aa00
lea rbx, [rbx*4]
sub r9, rbx
je 0x14010ab66
add rcx, rbx
add r10, rbx
add r8, rbx
test r9, r9
je 0x14010ab66
cmp r9, 8
jb 0x14010ab45
lea rdx, [rcx - 1]
lea rax, [r8 - 1]
add rdx, r9
add rax, r9
cmp rcx, rax
ja 0x14010aa5c
cmp rdx, r8
jae 0x14010ab45
lea rax, [r10 - 1]
add rax, r9
cmp rcx, rax
ja 0x14010aa71
cmp rdx, r10
jae 0x14010ab45
cmp r9, 0x40
jb 0x14010ab06
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]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + rbx - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rdx - 0x30]
movdqu xmmword [rax + rbx - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rdx - 0x20]
movdqu xmmword [rax + rbx - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + rbx - 0x20], xmm2
cmp r11, rsi
jb 0x14010aaa0
cmp rdi, 8
jb 0x14010ab40
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]
pxor xmm1, xmm0
movq qword [rax + rdi - 8], xmm1
cmp r11, rdx
jb 0x14010ab20
cmp r11, r9
jae 0x14010ab66
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 0x14010ab52
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