Function at 0x1400afc90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x10
xor r11d, r11d
mov rdi, r9
shr rdi, 3
mov r10, rcx
mov esi, r11d
test rdi, rdi
je 0x1400afda5
cmp rdi, 8
jb 0x1400afd75
add rcx, 0xfffffffffffffff8
lea rax, [r8 - 8]
lea rax, [rax + rdi*8]
lea rcx, [rcx + rdi*8]
cmp r10, rax
ja 0x1400afce3
cmp rcx, r8
jae 0x1400afd75
lea rax, [rdx - 8]
lea rax, [rax + rdi*8]
cmp r10, rax
ja 0x1400afcf9
cmp rcx, rdx
jae 0x1400afd75
mov r14, rdi
and r14, 0xfffffffffffffff8
mov rcx, rdx
lea rax, [r8 + 0x10]
sub rcx, r8
mov rbx, r10
sub rbx, r8
movdqu xmm0, xmmword [rax - 0x10]
add rsi, 8
movdqu xmm1, xmmword [rcx + rax - 0x10]
movdqu xmm2, xmmword [rcx + 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 [rcx + rax - 0x30]
movdqu xmmword [rbx + rax - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rcx + rax - 0x20]
movdqu xmmword [rbx + rax - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rbx + rax - 0x20], xmm2
cmp rsi, r14
jb 0x1400afd10
cmp rsi, rdi
jae 0x1400afda5
mov rbp, rdx
lea rcx, [r8 + rsi*8]
mov r14, r10
sub rbp, r8
sub r14, r8
mov rbx, rdi
sub rbx, rsi
mov rsi, rdi
nop
mov rax, qword [rcx + rbp]
xor rax, qword [rcx]
mov qword [rcx + r14], rax
lea rcx, [rcx + 8]
sub rbx, 1
jne 0x1400afd90
lea rsi, [rsi*8]
sub r9, rsi
je 0x1400b0076
add r10, rsi
add rdx, rsi
add r8, rsi
mov rbx, r11
mov rsi, r9
shr rsi, 2
test rsi, rsi
je 0x1400aff29
cmp rsi, 2
jb 0x1400afee5
lea rax, [rsi - 1]
lea rax, [r8 + rax*4]
lea rcx, [rsi - 1]
lea rcx, [r10 + rcx*4]
cmp r10, rax
ja 0x1400afdfa
cmp rcx, r8
jae 0x1400afee5
lea rax, [rsi - 1]
lea rax, [rdx + rax*4]
cmp r10, rax
ja 0x1400afe10
cmp rcx, rdx
jae 0x1400afee5
mov rcx, rdx
sub rcx, r8
cmp rsi, 0x10
jb 0x1400afea6
mov rbp, rsi
mov r14, rsi
and ebp, 0xf
sub r14, rbp
mov rdi, r10
lea rax, [r8 + 0x10]
sub rdi, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rbx, 0x10
movdqu xmm1, xmmword [rax + rcx - 0x10]
movdqu xmm2, xmmword [rax + rcx]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rax + rdi - 0x50], xmm1
pxor xmm2, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmm1, xmmword [rax + rcx - 0x30]
movdqu xmmword [rax + rdi - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rax + rcx - 0x20]
movdqu xmmword [rax + rdi - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rax + rdi - 0x20], xmm2
cmp rbx, r14
jb 0x1400afe40
cmp rbp, 2
jb 0x1400afee0
mov rdi, rsi
and rdi, 0xfffffffffffffffe
mov rbp, r10
lea rax, [r8 + rbx*4]
sub rbp, r8
nop word [rax + rax]
movq xmm1, qword [rcx + rax]
add rbx, 2
movq xmm0, qword [rax]
lea rax, [rax + 8]
pxor xmm1, xmm0
movq qword [rax + rbp - 8], xmm1
cmp rbx, rdi
jb 0x1400afec0
cmp rbx, rsi
jae 0x1400aff29
mov qword [rsp + 0x30], r15
lea rcx, [r8 + rbx*4]
mov r15, r10
mov r14, rdx
sub r15, r8
sub r14, r8
mov rdi, rsi
sub rdi, rbx
mov rbx, rsi
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r14 + rcx]
xor eax, dword [rcx]
mov dword [r15 + rcx], eax
lea rcx, [rcx + 4]
sub rdi, 1
jne 0x1400aff10
mov r15, qword [rsp + 0x30]
lea rbx, [rbx*4]
sub r9, rbx
je 0x1400b0076
add r10, rbx
add rdx, rbx
add r8, rbx
test r9, r9
je 0x1400b0076
cmp r9, 8
jb 0x1400b0055
lea rcx, [r10 - 1]
lea rax, [r8 - 1]
add rcx, r9
add rax, r9
cmp r10, rax
ja 0x1400aff72
cmp rcx, r8
jae 0x1400b0055
lea rax, [rdx - 1]
add rax, r9
cmp r10, rax
ja 0x1400aff87
cmp rcx, rdx
jae 0x1400b0055
mov rcx, rdx
sub rcx, r8
cmp r9, 0x40
jb 0x1400b0016
mov rdi, r9
mov rsi, r9
and edi, 0x3f
sub rsi, rdi
mov rbx, r10
lea rax, [r8 + 0x10]
sub rbx, r8
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x10]
add r11, 0x40
movdqu xmm1, xmmword [rcx + rax - 0x10]
movdqu xmm2, xmmword [rcx + 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 [rcx + rax - 0x30]
movdqu xmmword [rbx + rax - 0x40], xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm2, xmmword [rcx + rax - 0x20]
movdqu xmmword [rbx + rax - 0x30], xmm1
pxor xmm2, xmm0
movdqu xmmword [rbx + rax - 0x20], xmm2
cmp r11, rsi
jb 0x1400affb0
cmp rdi, 8
jb 0x1400b0050
mov rbx, r9
and rbx, 0xfffffffffffffff8
mov rdi, r10
lea rax, [r11 + r8]
sub rdi, r8
nop word [rax + rax]
movq xmm1, qword [rcx + rax]
add r11, 8
movq xmm0, qword [rax]
lea rax, [rax + 8]
pxor xmm1, xmm0
movq qword [rax + rdi - 8], xmm1
cmp r11, rbx
jb 0x1400b0030
cmp r11, r9
jae 0x1400b0076
sub rdx, r8
lea rcx, [r11 + r8]
sub r10, r8
sub r9, r11
movzx eax, byte [rcx + rdx]
xor al, byte [rcx]
mov byte [rcx + r10], al
lea rcx, [rcx + 1]
sub r9, 1
jne 0x1400b0062
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
add rsp, 0x10
pop r14
pop rdi
pop rsi
ret