Function at 0x140144dc0
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 0x1401450ad
test r10b, 3
jne 0x1401450ad
test r8b, 3
jne 0x1401450ad
test cl, 7
jne 0x140144f3f
test r10b, 7
jne 0x140144f3f
test r8b, 7
jne 0x140144f3f
mov rdi, r9
mov esi, r11d
shr rdi, 3
test rdi, rdi
je 0x140144f25
cmp rdi, 8
jb 0x140144ef5
lea rax, [r8 - 8]
lea rax, [rax + rdi*8]
lea rdx, [rcx - 8]
lea rdx, [rdx + rdi*8]
cmp rcx, rax
ja 0x140144e55
cmp rdx, r8
jae 0x140144ef5
lea rax, [r10 - 8]
lea rax, [rax + rdi*8]
cmp rcx, rax
ja 0x140144e6b
cmp rdx, r10
jae 0x140144ef5
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 0x140144e90
cmp rsi, rdi
jae 0x140144f25
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 0x140144f10
lea rsi, [rsi*8]
sub r9, rsi
je 0x1401451e6
add rcx, rsi
add r10, rsi
add r8, rsi
mov rdi, r9
mov rbx, r11
shr rdi, 2
test rdi, rdi
je 0x140145093
cmp rdi, 2
jb 0x140145065
lea rax, [rdi - 1]
lea rax, [r8 + rax*4]
lea rdx, [rdi - 1]
lea rdx, [rcx + rdx*4]
cmp rcx, rax
ja 0x140144f7a
cmp rdx, r8
jae 0x140145065
lea rax, [rdi - 1]
lea rax, [r10 + rax*4]
cmp rcx, rax
ja 0x140144f90
cmp rdx, r10
jae 0x140145065
cmp rdi, 0x10
jb 0x140145026
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 0x140144fc0
cmp rbp, 2
jb 0x140145060
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 0x140145040
cmp rbx, rdi
jae 0x140145093
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 0x140145080
lea rbx, [rbx*4]
sub r9, rbx
je 0x1401451e6
add rcx, rbx
add r10, rbx
add r8, rbx
test r9, r9
je 0x1401451e6
cmp r9, 8
jb 0x1401451c5
lea rdx, [rcx - 1]
lea rax, [r8 - 1]
add rdx, r9
add rax, r9
cmp rcx, rax
ja 0x1401450dc
cmp rdx, r8
jae 0x1401451c5
lea rax, [r10 - 1]
add rax, r9
cmp rcx, rax
ja 0x1401450f1
cmp rdx, r10
jae 0x1401451c5
cmp r9, 0x40
jb 0x140145186
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 0x140145120
cmp rdi, 8
jb 0x1401451c0
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 0x1401451a0
cmp r11, r9
jae 0x1401451e6
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 0x1401451d2
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