Function at 0x1400826f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
sub rsp, 0xb0
mov rax, qword [0x14010d0c0]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r12, qword [rsp + 0x100]
mov r13d, r9d
mov esi, dword [rsp + 0x118]
mov r9, rcx
mov ecx, dword [rsp + 0x108]
mov r14, r8
mov r10d, edx
call fcn.140078840
mov ebp, eax
test eax, eax
js 0x140082a43
mov eax, dword [rsp + 0x120]
lea ecx, [rax - 1]
and ecx, 7
mov dword [rsp + 0x30], ecx
jne 0x140082760
mov byte [r14], 0
inc r14
dec r13d
mov qword [rsp + 0x98], r15
cmp esi, 0xffffffff
jne 0x140082780
mov esi, ebp
cmp eax, 0x400
jne 0x140082791
cmp ebp, 0x40
jne 0x140082791
lea esi, [rbp - 2]
jmp 0x140082791
cmp esi, ebp
jg 0x140082a36
cmp esi, 0xffffffff
jl 0x140082a36
mov r15d, r13d
lea eax, [rsi + 2]
sub r15d, ebp
cmp r15d, eax
jl 0x140082a36
mov qword [rsp + 0xa8], rbx
xor eax, eax
mov qword [rsp + 0xa0], rdi
mov r8, r10
lea rdi, [r14 + 8]
mov qword [r14], rax
mov rcx, rdi
lea rbx, [rdi + r10]
mov rdx, r9
dec r15d
call fcn.1400d5160
test esi, esi
jle 0x140082808
mov r8d, esi
lea rdx, [rsp + 0x40]
mov rcx, r12
call fcn.140091b10
mov r9d, eax
test eax, eax
jne 0x140082a21
movsxd r12, esi
lea rdx, [rsp + 0x40]
mov r8, r12
mov rcx, rbx
call fcn.1400d5160
add rbx, r12
jmp 0x14008280b
movsxd r12, esi
mov ecx, dword [rsp + 0x108]
sub ebx, r14d
movsxd rax, r15d
mov r8d, ebx
mov rdx, r14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x20], ebp
lea rdi, [rax + r14]
mov r9, rdi
call fcn.140078960
mov r9d, eax
test eax, eax
jne 0x140082a21
mov ecx, dword [rsp + 0x110]
lea eax, [r13 - 1]
mov byte [rax + r14], 0xbc
sub ecx, 1
je 0x140082882
sub ecx, 1
je 0x14008287b
sub ecx, 1
je 0x140082874
cmp ecx, 0x17
je 0x14008286d
mov r9d, 0xffffff53
jmp 0x140082a21
mov ecx, 4
jmp 0x140082887
mov ecx, 8
jmp 0x140082887
mov ecx, 7
jmp 0x140082887
mov ecx, 6
mov r9, r14
mov dword [rsp + 0x20], r15d
mov r8d, ebp
mov rdx, rdi
call fcn.1400821b0
mov r9d, eax
test eax, eax
jne 0x140082a21
mov rdx, qword [rsp + 0x38]
mov eax, 1
mov ecx, dword [rsp + 0x30]
sub rdx, r12
add rdx, r14
shl al, cl
dec al
xor r8d, r8d
and byte [r14], al
xor byte [rdx - 1], 1
test esi, esi
jle 0x1400829f4
cmp esi, 8
jb 0x1400829f4
lea eax, [rsi - 1]
movsxd rcx, eax
lea rax, [rsp + 0x40]
add rax, rcx
lea r10, [rcx + rdx]
cmp rdx, rax
ja 0x1400828fd
lea rax, [rsp + 0x40]
cmp r10, rax
jae 0x1400829f4
cmp esi, 0x40
jb 0x1400829a8
mov ecx, esi
and ecx, 0x8000003f
jge 0x140082917
dec ecx
or ecx, 0xffffffc0
inc ecx
mov eax, esi
sub eax, ecx
lea r10, [rsp + 0x40]
movsxd rdi, eax
lea r11, [rsp + 0x50]
sub r10, rdx
sub r11, rdx
lea rcx, [rdx + 0x20]
mov rbx, 0xffffffffffffffe0
sub rbx, rdx
nop dword [rax]
movdqu xmm0, xmmword [rcx - 0x20]
add r8d, 0x40
movdqu xmm1, xmmword [rcx + r10 - 0x20]
movdqu xmm2, xmmword [rcx + r10]
lea rcx, [rcx + 0x40]
xorps xmm1, xmm0
lea rax, [rcx + rbx]
movdqu xmmword [rcx - 0x60], xmm1
movdqu xmm0, xmmword [rcx - 0x50]
movdqu xmm1, xmmword [rcx + r11 - 0x60]
xorps xmm1, xmm0
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [rcx + r11 - 0x40]
xorps xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm2
movdqu xmm0, xmmword [rcx - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
cmp rax, rdi
jl 0x140082940
mov eax, esi
and al, 0x3f
cmp al, 8
jb 0x1400829f4
mov eax, esi
and eax, 0x80000007
jge 0x1400829b8
dec eax
or eax, 0xfffffff8
inc eax
mov ecx, esi
sub ecx, eax
movsxd rax, r8d
lea r10, [rsp + 0x40]
movsxd r11, ecx
sub r10, rdx
lea rcx, [rax + rdx]
nop
movq xmm0, qword [rcx]
add r8d, 8
movq xmm1, qword [rcx + r10]
xorps xmm1, xmm0
movq qword [rcx], xmm1
add rcx, 8
mov rax, rcx
sub rax, rdx
cmp rax, r11
jl 0x1400829d0
movsxd rcx, r8d
movsxd r8, esi
cmp rcx, r8
jge 0x140082a21
lea r10, [rsp + 0x40]
sub r10, rdx
lea rax, [rcx + rdx]
sub r8, rcx
nop
movzx ecx, byte [rax + r10]
xor byte [rax], cl
lea rax, [rax + 1]
sub r8, 1
jne 0x140082a10
mov rdi, qword [rsp + 0xa0]
mov eax, r9d
mov rbx, qword [rsp + 0xa8]
jmp 0x140082a3b
mov eax, 0xffffff06
mov r15, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400a8a40
add rsp, 0xb0
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret