Function at 0x1400cf1e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x140a23bc8]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov rdi, rcx
mov qword [rsp + 0x30], rcx
lea rsi, [rsp + 0x38]
sub rsi, rcx
lea rax, [rbp - 0x28]
sub rax, rdi
lea r12, [rbp - 0x78]
lea r13, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi]
lea rbx, [rcx + 0x50]
add rcx, 0x28
lea r15, [rsp + 0x60]
sub r12, rdi
mov qword [rsp + 0x20], rcx
sub r13, rdi
lea r14, [0x1401ff820]
sub r15, rdi
nop dword [rax + rax]
mov r10, qword [rcx]
mov r9, qword [rdi + 0xa8]
xor r10, rax
xor r9, qword [rdi + 0x80]
xor r10, qword [rdi + 0xa0]
xor r9, qword [rdi + 0x58]
xor r10, qword [rdi + 0x78]
xor r10, qword [rbx]
xor r9, qword [rdi + 8]
xor r9, qword [rdi + 0x30]
mov rcx, qword [rdi + 0x48]
mov rax, r9
xor rcx, qword [rdi + 0xc0]
xor rcx, qword [rdi + 0x98]
xor rcx, qword [rdi + 0x70]
xor rcx, qword [rdi + 0x20]
mov r8, qword [rdi + 0x10]
xor r8, qword [rdi + 0x38]
xor r8, qword [rdi + 0xb0]
xor r8, qword [rdi + 0x88]
xor r8, qword [rdi + 0x60]
mov rdx, qword [rdi + 0x18]
xor rdx, qword [rdi + 0x40]
xor rdx, qword [rdi + 0xb8]
xor rdx, qword [rdi + 0x90]
xor rdx, qword [rdi + 0x68]
rol rax, 1
xor rax, rcx
rol rcx, 1
mov qword [rsp + 0x38], rax
xor rcx, r8
mov rax, r8
mov qword [rsp + 0x50], rcx
rol rax, 1
xor rax, r10
rol r10, 1
mov qword [rsp + 0x40], rax
mov rax, rdx
rol rax, 1
xor rax, r9
xor r10, rdx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], r10
mov rax, rbx
mov edx, 5
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rsi + rax - 0x50]
xor qword [rax - 0x50], rcx
xor qword [rax - 0x28], rcx
xor qword [rax], rcx
xor qword [rax + 0x28], rcx
xor qword [rax + 0x50], rcx
lea rax, [rax + 8]
sub rdx, 1
jne 0x1400cf330
mov r8d, 0xc8
lea rcx, [rsp + 0x60]
call fcn.140195bd0
mov r8d, 6
lea r11, [0x1401ff7d8]
mov r10, rbx
mov ecx, dword [r11 - 0x28]
mov r9, qword [r10 - 0x50]
test ecx, ecx
je 0x1400cf381
rol r9, cl
lea ecx, [r8 - 6]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
lea eax, [rcx + rcx*4]
movsxd rcx, eax
mov qword [rsp + rcx*8 + 0x60], r9
mov ecx, dword [r11 - 0x14]
mov r9, qword [r10 - 0x28]
test ecx, ecx
je 0x1400cf3b4
rol r9, cl
lea ecx, [r8 - 3]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
lea eax, [rcx + rcx*4]
movsxd rcx, eax
mov qword [rsp + rcx*8 + 0x68], r9
mov ecx, dword [r11]
mov r9, qword [r10]
test ecx, ecx
je 0x1400cf3e5
rol r9, cl
mov ecx, r8d
mov eax, 0x66666667
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
lea eax, [rcx + rcx*4]
movsxd rcx, eax
mov qword [rsp + rcx*8 + 0x70], r9
mov ecx, dword [r11 + 0x14]
mov r9, qword [r10 + 0x28]
test ecx, ecx
je 0x1400cf418
rol r9, cl
lea ecx, [r8 + 3]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
lea eax, [rcx + rcx*4]
movsxd rcx, eax
mov qword [rsp + rcx*8 + 0x78], r9
mov ecx, dword [r11 + 0x28]
mov r9, qword [r10 + 0x50]
test ecx, ecx
je 0x1400cf44b
rol r9, cl
lea ecx, [r8 + 6]
mov eax, 0x66666667
imul ecx
add r8d, 2
add r11, 4
sar edx, 1
add r10, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub ecx, eax
lea eax, [rcx + rcx*4]
movsxd rcx, eax
mov qword [rbp + rcx*8 - 0x80], r9
cmp r8d, 0x10
jl 0x1400cf372
mov r10, qword [rsp + 0x20]
mov r11d, 2
mov rdi, qword [rsp + 0x28]
lea ebx, [r11 + 3]
nop dword [rax]
lea r9d, [r11 - 1]
mov eax, 0x66666667
imul r9d
mov r8d, r11d
lea r10, [r10 + 8]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub r9d, eax
mov eax, 0x66666667
imul r11d
movsxd rcx, r9d
inc r11d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
sub r8d, eax
mov rax, qword [rsp + rcx*8 + 0x60]
not rax
movsxd rdx, r8d
and rax, qword [rsp + rdx*8 + 0x60]
xor rax, qword [r15 + r10 - 0x30]
mov qword [r10 - 0x30], rax
mov rax, qword [rbp + rcx*8 - 0x78]
not rax
and rax, qword [rbp + rdx*8 - 0x78]
xor rax, qword [r15 + r10 - 8]
mov qword [r10 - 8], rax
movsxd rax, r9d
mov rcx, qword [rbp + rax*8 - 0x50]
not rcx
movsxd rax, r8d
and rcx, qword [rbp + rax*8 - 0x50]
xor rcx, qword [r12 + r10 - 8]
mov qword [r10 + 0x20], rcx
movsxd rax, r9d
mov rcx, qword [rbp + rax*8 - 0x28]
not rcx
movsxd rax, r8d
and rcx, qword [rbp + rax*8 - 0x28]
xor rcx, qword [r10 + r13 - 8]
mov qword [r10 + 0x48], rcx
movsxd rax, r9d
mov rcx, qword [rbp + rax*8]
not rcx
movsxd rax, r8d
and rcx, qword [rbp + rax*8]
xor rcx, qword [rdi + r10 - 8]
mov qword [r10 + 0x70], rcx
sub rbx, 1
jne 0x1400cf4a0
mov rdi, qword [rsp + 0x30]
lea rcx, [0x1401ff8e0]
mov rax, qword [r14]
add r14, 8
xor qword [rdi], rax
lea rbx, [rdi + 0x50]
mov rax, qword [rdi]
cmp r14, rcx
lea rcx, [rdi + 0x28]
jl 0x1400cf260
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1401777c0
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret