Function at 0x7ff6eb141540
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0x240
mov rax, qword [0x7ff6eb201bd8]
xor rax, rsp
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x298]
movsxd rbx, dword [rsp + 0x288]
mov edi, dword [rsp + 0x280]
mov dword [rsp + 0x34], edx
mov rdx, rcx
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x2a0]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], r9
mov r14d, r8d
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x3c], ebx
test rdx, rdx
je 0x7ff6eb1419c8
test rax, rax
je 0x7ff6eb1419e2
test rcx, rcx
je 0x7ff6eb1419fc
mov ecx, ebx
call fcn.7ff6eb140f90
test eax, eax
jne 0x7ff6eb14196f
mov ecx, edi
call fcn.7ff6eb140cd0
test eax, eax
jne 0x7ff6eb14196f
mov qword [rsp + 0x238], rbp
lea rax, [0x7ff6eb0d0000]
mov qword [rsp + 0x220], r13
mov ecx, 0
mov r13, rbx
shl r13, 7
mov edx, dword [rax + r13 + 0x135acc]
mov eax, dword [rsp + 0x290]
dec eax
mov dword [rsp + 0x38], edx
test al, 7
mov dword [rsp + 0x290], eax
setne cl
shr eax, 3
lea ebp, [rcx + rax]
cmp r14d, ebp
ja 0x7ff6eb1419c1
lea eax, [r14 + 2]
add eax, edx
cmp ebp, eax
jb 0x7ff6eb1419c1
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x228], r12
mov ecx, ebp
mov qword [rsp + 0x218], r15
call fcn.7ff6eb17f2c8
mov ecx, ebp
mov rdi, rax
call fcn.7ff6eb17f2c8
mov ecx, ebp
mov rsi, rax
call fcn.7ff6eb17f2c8
mov ecx, ebp
mov r12, rax
call fcn.7ff6eb17f2c8
mov r15, rax
test rdi, rdi
je 0x7ff6eb141993
test rsi, rsi
je 0x7ff6eb14198b
test r12, r12
je 0x7ff6eb14198b
test rax, rax
je 0x7ff6eb14198b
lea rbx, [0x7ff6eb0d0000]
test r14d, r14d
je 0x7ff6eb1416db
movsxd rax, dword [rsp + 0x30]
mov edx, r14d
mov r8, qword [rsp + 0x48]
mov rcx, r12
lea r9, [rax + rax*4]
add r9, r9
call qword [rbx + r9*8 + 0x136be8]
cmp eax, r14d
je 0x7ff6eb1416db
mov ebx, 9
jmp 0x7ff6eb141925
lea rcx, [rsp + 0x60]
call qword [rbx + r13 + 0x135b18]
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
lea edx, [rax + 8]
mov rcx, rdi
call fcn.7ff6eb140bc0
lea r8d, [rbx + 8]
mov rdx, rdi
lea rcx, [rsp + 0x60]
lea rax, [0x7ff6eb0d0000]
call qword [rax + r13 + 0x135b20]
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
mov r8d, dword [rsp + 0x34]
lea rcx, [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
lea rax, [0x7ff6eb0d0000]
call qword [rax + r13 + 0x135b20]
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
mov r8d, r14d
lea rcx, [rsp + 0x60]
mov rdx, r12
lea rax, [0x7ff6eb0d0000]
call qword [rax + r13 + 0x135b20]
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
mov rdx, r15
lea rcx, [rsp + 0x60]
lea rax, [0x7ff6eb0d0000]
call qword [rax + r13 + 0x135b28]
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
mov r13d, dword [rsp + 0x38]
mov r8d, ebp
sub r8d, r14d
xor edx, edx
sub r8d, r13d
mov rcx, rdi
sub r8d, 2
call fcn.7ff6eb172f50
mov edx, ebp
mov r8, r14
sub edx, r14d
sub edx, r13d
sub edx, 2
lea ecx, [rdx + 1]
mov byte [rdx + rdi], 1
add rcx, rdi
mov rdx, r12
call fcn.7ff6eb172b40
mov ecx, dword [rsp + 0x3c]
mov r14d, ebp
sub r14d, r13d
mov r9, rsi
dec r14d
mov r8d, r13d
mov rdx, r15
mov dword [rsp + 0x20], r14d
call fcn.7ff6eb146420
mov ebx, eax
test eax, eax
jne 0x7ff6eb141925
xor edx, edx
test r14d, r14d
je 0x7ff6eb1418c1
cmp r14d, 0x40
jb 0x7ff6eb141898
lea eax, [r14 - 1]
lea r8, [rax + rdi]
add rax, rsi
cmp rdi, rax
ja 0x7ff6eb14181f
cmp r8, rsi
jae 0x7ff6eb141898
mov r8d, r14d
and r8d, 0xffffffc0
mov r9d, 0x20
nop dword [rax]
movdqu xmm0, xmmword [rdx + rdi]
lea eax, [r9 - 0x10]
movdqu xmm1, xmmword [rdx + rsi]
pxor xmm1, xmm0
movdqu xmmword [rdx + rdi], xmm1
add edx, 0x40
movdqu xmm0, xmmword [rax + rdi]
movdqu xmm1, xmmword [rax + rsi]
pxor xmm1, xmm0
movdqu xmmword [rax + rdi], xmm1
mov eax, r9d
movdqu xmm0, xmmword [rax + rdi]
movdqu xmm1, xmmword [rax + rsi]
pxor xmm1, xmm0
movdqu xmmword [rax + rdi], xmm1
lea eax, [r9 + 0x10]
add r9d, 0x40
movdqu xmm0, xmmword [rax + rdi]
movdqu xmm1, xmmword [rax + rsi]
pxor xmm1, xmm0
movdqu xmmword [rax + rdi], xmm1
cmp edx, r8d
jb 0x7ff6eb141830
cmp edx, r14d
jae 0x7ff6eb1418c1
mov eax, edx
mov r8, rsi
add rax, rdi
sub r8, rdi
mov ecx, r14d
sub ecx, edx
mov edx, ecx
nop word [rax + rax]
movzx ecx, byte [r8 + rax]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x7ff6eb1418b0
mov rax, qword [rsp + 0x40]
cmp dword [rax], ebp
jae 0x7ff6eb1418d1
mov ebx, 6
jmp 0x7ff6eb141923
mov r8d, r14d
mov rdx, rdi
mov r14, qword [rsp + 0x58]
mov rcx, r14
call fcn.7ff6eb172b40
mov ebx, ebp
mov r8, r13
sub ebx, r13d
mov rdx, r15
dec ebx
mov ecx, ebx
add rcx, r14
call fcn.7ff6eb172b40
lea eax, [rbx + r13]
mov edx, 0xff
lea ecx, [rbp*8]
sub ecx, dword [rsp + 0x290]
sar edx, cl
mov byte [rax + r14], 0xbc
and byte [r14], dl
mov rax, qword [rsp + 0x40]
xor ebx, ebx
mov dword [rax], ebp
mov rcx, r15
call fcn.7ff6eb17a114
mov rcx, r12
call fcn.7ff6eb17a114
mov rcx, rsi
call fcn.7ff6eb17a114
mov rcx, rdi
call fcn.7ff6eb17a114
mov eax, ebx
mov rsi, qword [rsp + 0x230]
mov r12, qword [rsp + 0x228]
mov r15, qword [rsp + 0x218]
mov rbp, qword [rsp + 0x238]
mov r13, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x200]
xor rcx, rsp
call fcn.7ff6eb154b30
add rsp, 0x240
pop r14
pop rdi
pop rbx
ret
mov rcx, rdi
call fcn.7ff6eb17a114
test rsi, rsi
je 0x7ff6eb1419a0
mov rcx, rsi
call fcn.7ff6eb17a114
test r12, r12
je 0x7ff6eb1419ad
mov rcx, r12
call fcn.7ff6eb17a114
test r15, r15
je 0x7ff6eb1419ba
mov rcx, r15
call fcn.7ff6eb17a114
mov eax, 0xd
jmp 0x7ff6eb141947
mov eax, 0x16
jmp 0x7ff6eb14195f
mov r8d, 0x24
lea rdx, [0x7ff6eb1a7470]
lea rcx, [0x7ff6eb1a7500]
call fcn.7ff6eb140c00
int3
mov r8d, 0x25
lea rdx, [0x7ff6eb1a7470]
lea rcx, [0x7ff6eb1a63b8]
call fcn.7ff6eb140c00
int3
mov r8d, 0x26
lea rdx, [0x7ff6eb1a7470]
lea rcx, [0x7ff6eb1a6c58]
call fcn.7ff6eb140c00
int3