Function at 0x140243f70
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
xor r10b, r10b
xor ebx, ebx
mov r11, rcx
test cl, 3
jne 0x140244189
test dl, 3
jne 0x140244189
mov r9d, ebx
test r11b, 7
jne 0x140244089
test dl, 7
jne 0x140244089
mov rsi, r8
mov r10d, ebx
shr rsi, 3
test rsi, rsi
je 0x140244064
cmp rsi, 4
jb 0x140244030
mov r10, rsi
lea rax, [rdx + 0x10]
and r10, 0xfffffffffffffffc
xorps xmm3, xmm3
sub rcx, rdx
xorps xmm2, xmm2
movdqu xmm0, xmmword [rax - 0x10]
add r9, 4
movdqu xmm1, xmmword [rcx + rax - 0x10]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax]
por xmm1, xmm3
movdqa xmm3, xmm1
movdqu xmm1, xmmword [rcx + rax]
add rax, 0x20
pxor xmm1, xmm0
por xmm1, xmm2
movdqa xmm2, xmm1
cmp r9, r10
jb 0x140243fe1
por xmm2, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
por xmm2, xmm0
movq r10, xmm2
cmp r9, rsi
jae 0x140244064
mov rbp, r11
lea rcx, [rdx + r9*8]
sub rbp, rdx
mov rdi, rsi
sub rdi, r9
mov r9, rsi
nop dword [rax + rax]
mov rax, qword [rcx + rbp]
xor rax, qword [rcx]
lea rcx, [rcx + 8]
or r10, rax
sub rdi, 1
jne 0x140244050
lea r9, [r9*8]
sub r8, r9
jne 0x140244079
test r10, r10
jmp 0x140244257
add r11, r9
add rdx, r9
mov r9, r10
shr r9, 0x20
or r9d, r10d
mov rsi, r8
mov rdi, rbx
shr rsi, 2
test rsi, rsi
je 0x140244152
cmp rsi, 8
jb 0x140244120
mov r10, rsi
lea rax, [rdx + 0x10]
and r10, 0xfffffffffffffff8
mov rcx, r11
sub rcx, rdx
xorps xmm3, xmm3
xorps xmm2, xmm2
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x10]
add rdi, 8
movdqu xmm1, xmmword [rax + rcx - 0x10]
lea rax, [rax + 0x20]
pxor xmm1, xmm0
por xmm1, xmm3
movdqa xmm3, xmm1
movdqu xmm1, xmmword [rax + rcx - 0x20]
movdqu xmm0, xmmword [rax - 0x20]
pxor xmm1, xmm0
por xmm1, xmm2
movdqa xmm2, xmm1
cmp rdi, r10
jb 0x1402440c0
por xmm2, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
por xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 4
por xmm2, xmm0
movd eax, xmm2
or r9d, eax
cmp rdi, rsi
jae 0x140244152
mov rbp, r11
lea rcx, [rdx + rdi*4]
sub rbp, rdx
mov r10, rsi
sub r10, rdi
mov rdi, rsi
nop dword [rax + rax]
mov eax, dword [rcx + rbp]
xor eax, dword [rcx]
lea rcx, [rcx + 4]
or r9d, eax
sub r10, 1
jne 0x140244140
lea rdi, [rdi*4]
sub r8, rdi
jne 0x140244167
test r9d, r9d
jmp 0x140244257
mov r10d, r9d
mov eax, r9d
shr eax, 0x10
add r11, rdi
shr r10d, 0x18
add rdx, rdi
or r10b, al
mov eax, r9d
shr eax, 8
or r10b, al
or r10b, r9b
test r8, r8
je 0x140244254
cmp r8, 0x20
jb 0x14024422a
mov r9, r8
mov rcx, r11
and r9, 0xffffffffffffffe0
xorps xmm3, xmm3
sub rcx, rdx
xorps xmm2, xmm2
mov rax, rdx
movdqu xmm0, xmmword [rax]
add rbx, 0x20
movdqu xmm1, xmmword [rax + rcx]
lea rax, [rax + 0x20]
pxor xmm1, xmm0
por xmm1, xmm3
movdqa xmm3, xmm1
movdqu xmm1, xmmword [rcx + rax - 0x10]
movdqu xmm0, xmmword [rax - 0x10]
pxor xmm1, xmm0
por xmm1, xmm2
movdqa xmm2, xmm1
cmp rbx, r9
jb 0x1402441b2
por xmm2, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
por xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 4
por xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 2
por xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 1
por xmm2, xmm0
movd eax, xmm2
or r10b, al
cmp rbx, r8
jae 0x140244254
sub r11, rdx
lea rcx, [rbx + rdx]
sub r8, rbx
nop dword [rax]
movzx eax, byte [rcx + r11]
xor al, byte [rcx]
lea rcx, [rcx + 1]
or r10b, al
sub r8, 1
jne 0x140244240
test r10b, r10b
mov rbx, qword [rsp + 8]
sete al
mov rbp, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
ret