Function at 0x14000bae0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
lea rax, [rcx + 0x3c]
mov qword [rsp + 0x58], rax
lea r10, [rdx + 0x3c]
cmp rdx, rax
ja 0x14000bb43
xor eax, eax
cmp r10, rcx
jb 0x14000bb43
mov r9, rcx
lea r8, [rdx + rax*4]
sub r9, rdx
mov ecx, 0x10
sub rcx, rax
nop word [rax + rax]
mov eax, dword [r9 + r8]
mov dword [r8], eax
lea r8, [r8 + 4]
sub rcx, 1
jne 0x14000bb30
jmp 0x14000bb61
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rdx + 0x10], xmm1
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x20], xmm0
movups xmmword [rdx + 0x30], xmm1
mov eax, dword [rdx + 0x24]
mov r15d, dword [rdx + 0x1c]
mov ebx, dword [rdx + 0x10]
mov ecx, dword [rdx]
mov r11d, dword [rdx + 0x30]
mov r12d, dword [rdx + 0x20]
mov esi, dword [rdx + 0x14]
mov r13d, dword [rdx + 4]
mov edi, dword [rdx + 0x34]
mov r14d, dword [rdx + 0x38]
mov dword [rsp + 0x20], eax
mov eax, dword [rdx + 0x18]
mov dword [rsp + 0xc0], eax
mov eax, dword [rdx + 8]
mov dword [rsp + 0xc8], eax
mov eax, dword [rdx + 0x28]
mov dword [rsp + 0x24], eax
mov eax, dword [rdx + 0xc]
mov dword [rsp + 0x28], eax
mov eax, dword [r10]
mov dword [rsp + 0x30], eax
mov eax, dword [rdx + 0x2c]
mov edx, dword [rsp + 0xc0]
mov dword [rsp + 0x2c], eax
mov dword [rsp + 0x34], r15d
mov qword [rsp + 0x50], 0xa
nop dword [rax]
lea eax, [rcx + rbx]
xor r11d, eax
mov ecx, r11d
shl r11d, 0x10
shr ecx, 0x10
or ecx, r11d
lea r9d, [r12 + rcx]
xor ebx, r9d
mov r8d, ebx
shl ebx, 0xc
shr r8d, 0x14
or r8d, ebx
lea ebp, [rax + r8]
mov eax, ebp
xor eax, ecx
mov ecx, eax
shl eax, 8
shr ecx, 0x18
or ecx, eax
mov dword [rsp + 0xc0], ecx
lea eax, [r9 + rcx]
mov r9d, dword [rsp + 0x20]
mov dword [rsp + 0x40], eax
xor eax, r8d
mov ecx, eax
shl eax, 7
shr ecx, 0x19
or ecx, eax
lea eax, [rsi + r13]
xor edi, eax
mov dword [rsp + 0x44], ecx
mov ecx, edi
shl edi, 0x10
shr ecx, 0x10
or ecx, edi
add r9d, ecx
xor esi, r9d
mov r8d, esi
shl esi, 0xc
shr r8d, 0x14
or r8d, esi
lea r12d, [rax + r8]
mov eax, r12d
xor eax, ecx
mov ecx, eax
shl eax, 8
shr ecx, 0x18
or ecx, eax
mov dword [rsp + 0x20], ecx
lea eax, [r9 + rcx]
mov r9d, dword [rsp + 0x24]
mov dword [rsp + 0x48], eax
xor eax, r8d
mov esi, eax
shl eax, 7
shr esi, 0x19
or esi, eax
mov eax, dword [rsp + 0xc8]
add eax, edx
xor r14d, eax
mov ecx, r14d
shl r14d, 0x10
shr ecx, 0x10
or ecx, r14d
add r9d, ecx
xor edx, r9d
mov r8d, edx
shl edx, 0xc
shr r8d, 0x14
or r8d, edx
lea r15d, [rax + r8]
mov eax, r15d
xor eax, ecx
mov r13d, eax
shl eax, 8
shr r13d, 0x18
or r13d, eax
lea r10d, [r9 + r13]
mov eax, r10d
xor eax, r8d
mov edi, eax
mov r11d, dword [rsp + 0x34]
mov edx, dword [rsp + 0x30]
mov r9d, dword [rsp + 0x2c]
shl eax, 7
shr edi, 0x19
or edi, eax
mov eax, dword [rsp + 0x28]
add eax, r11d
xor edx, eax
mov ecx, edx
shl edx, 0x10
shr ecx, 0x10
or ecx, edx
add r9d, ecx
xor r11d, r9d
mov r8d, r11d
shl r11d, 0xc
shr r8d, 0x14
or r8d, r11d
lea r14d, [rax + r8]
mov eax, r14d
xor eax, ecx
mov ecx, eax
shl eax, 8
shr ecx, 0x18
or ecx, eax
lea r11d, [r9 + rcx]
lea r9d, [rsi + rbp]
mov eax, r11d
xor eax, r8d
mov ebx, eax
shl eax, 7
shr ebx, 0x19
or ebx, eax
mov eax, r9d
xor eax, ecx
mov ecx, eax
shl eax, 0x10
shr ecx, 0x10
or ecx, eax
add r10d, ecx
mov eax, r10d
xor eax, esi
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r9 + r8]
mov dword [rsp + 0x38], eax
xor eax, ecx
mov ebp, eax
lea ecx, [r12 + rdi]
shl eax, 8
shr ebp, 0x18
or ebp, eax
mov dword [rsp + 0x30], ebp
lea eax, [r10 + rbp]
mov esi, eax
mov dword [rsp + 0x24], eax
xor esi, r8d
mov eax, ecx
xor eax, dword [rsp + 0xc0]
mov r10d, eax
ror esi, 0x19
shl eax, 0x10
shr r10d, 0x10
or r10d, eax
lea r9d, [r11 + r10]
mov eax, r9d
xor eax, edi
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r8 + rcx]
xor r10d, eax
mov dword [rsp + 0x3c], eax
mov r11d, r10d
shl r10d, 8
shr r11d, 0x18
or r11d, r10d
lea ecx, [r15 + rbx]
lea eax, [r9 + r11]
mov r9d, dword [rsp + 0x40]
mov edx, eax
mov dword [rsp + 0x2c], eax
xor edx, r8d
mov eax, ecx
xor eax, dword [rsp + 0x20]
mov r10d, eax
ror edx, 0x19
shl eax, 0x10
shr r10d, 0x10
or r10d, eax
add r9d, r10d
mov eax, r9d
xor eax, ebx
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r8 + rcx]
xor r10d, eax
mov dword [rsp + 0xc8], eax
mov edi, r10d
shl r10d, 8
shr edi, 0x18
or edi, r10d
lea r12d, [r9 + rdi]
mov r9d, dword [rsp + 0x48]
mov r15d, r12d
xor r15d, r8d
mov r8d, dword [rsp + 0x44]
ror r15d, 0x19
mov dword [rsp + 0x34], r15d
lea ecx, [r14 + r8]
mov eax, ecx
xor eax, r13d
mov r13d, dword [rsp + 0x3c]
mov r10d, eax
shl eax, 0x10
shr r10d, 0x10
or r10d, eax
add r9d, r10d
mov eax, r9d
xor eax, r8d
mov r8d, eax
shl eax, 0xc
shr r8d, 0x14
or r8d, eax
lea eax, [r8 + rcx]
mov ecx, dword [rsp + 0x38]
xor r10d, eax
mov dword [rsp + 0x28], eax
mov r14d, r10d
shl r10d, 8
shr r14d, 0x18
or r14d, r10d
lea eax, [r9 + r14]
mov ebx, eax
mov dword [rsp + 0x20], eax
xor ebx, r8d
ror ebx, 0x19
sub qword [rsp + 0x50], 1
jne 0x14000bbd0
mov r8d, dword [rsp + 0x24]
mov dword [rsp + 0xc0], edx
mov rdx, qword [rsp + 0xb8]
mov dword [rdx + 0x3c], ebp
mov dword [rdx + 0x24], eax
mov eax, dword [rsp + 0xc0]
mov dword [rdx + 0x18], eax
mov eax, dword [rsp + 0xc8]
mov dword [rdx + 8], eax
mov eax, dword [rsp + 0x28]
mov dword [rdx + 0xc], eax
lea rax, [rdx + 0x3c]
mov dword [rdx + 0x28], r8d
mov r8d, dword [rsp + 0x2c]
mov dword [rdx], ecx
mov rcx, qword [rsp + 0xb0]
mov dword [rdx + 0x10], ebx
mov dword [rdx + 0x30], r11d
mov dword [rdx + 0x20], r12d
mov dword [rdx + 0x14], esi
mov dword [rdx + 4], r13d
mov dword [rdx + 0x34], edi
mov dword [rdx + 0x38], r14d
mov dword [rdx + 0x1c], r15d
mov dword [rdx + 0x2c], r8d
cmp rdx, qword [rsp + 0x58]
ja 0x14000bf5a
cmp rax, rcx
jb 0x14000bf5a
mov r8, rcx
mov ecx, 0x10
sub r8, rdx
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rdx + r8]
add dword [rdx], eax
lea rdx, [rdx + 4]
sub rcx, 1
jne 0x14000bf40
mov rcx, qword [rsp + 0xb0]
jmp 0x14000bfa3
movdqu xmm1, xmmword [rdx]
movdqu xmm0, xmmword [rcx]
movdqu xmm2, xmmword [rcx + 0x10]
paddd xmm1, xmm0
movdqu xmmword [rdx], xmm1
movdqu xmm0, xmmword [rdx + 0x10]
movdqu xmm1, xmmword [rcx + 0x20]
paddd xmm2, xmm0
movdqu xmmword [rdx + 0x10], xmm2
movdqu xmm0, xmmword [rdx + 0x20]
paddd xmm1, xmm0
movdqu xmm0, xmmword [rcx + 0x30]
movdqu xmmword [rdx + 0x20], xmm1
movdqu xmm1, xmmword [rdx + 0x30]
paddd xmm1, xmm0
movdqu xmmword [rdx + 0x30], xmm1
add dword [rcx + 0x30], 1
jne 0x14000bfc8
add dword [rcx + 0x34], 1
jne 0x14000bfc8
mov r8d, 0x63
lea rdx, str.C:UsersAdministratorDesktopcryptor.api.updated_sourceencryptMe_software_baseChaCha20.hpp
lea rcx, str.0___counter_1_
call fcn.14005ac08
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret