Function at 0x14001ecd0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc88
mov qword [rsp + 0x48], 0
test rcx, rcx
je 0x14001f085
mov rbx, rcx
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor edi, edi
mov edx, 0x80000000
xor r8d, r8d
xor r9d, r9d
call qword [0x14021a210]
cmp rax, 0xffffffffffffffff
je 0x14001f0e4
mov rsi, rax
lea rdx, [rsp + 0x48]
mov rcx, rax
call qword [0x14021a388]
test eax, eax
je 0x14001ed5c
cmp dword [rsp + 0x4c], 0
jne 0x14001f089
cmp dword [rsp + 0x48], 0x10000001
jae 0x14001f089
mov rax, qword [0x1402246b8]
mov rcx, qword [0x140224498]
lea rdx, [0x140225bf0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, str._s_s._s
lea rdi, [rsp + 0x270]
mov edx, 0x103
mov rcx, rdi
call fcn.1400083a0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
mov rcx, rdi
mov edx, 0xc0000000
mov r8d, 3
xor r9d, r9d
call qword [0x14021a210]
cmp rax, 0xffffffffffffffff
je 0x14001f097
mov rdi, rax
mov qword [rsp + 0x58], 0
lea r8, [rsp + 0x5c]
xor r12d, r12d
mov rcx, rax
xor edx, edx
mov r9d, 2
call qword [0x14021a5e0]
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x54], 0x50000
mov qword [rsp + 0x20], 0
mov r13, qword [0x14021a6b8]
lea rdx, [rsp + 0x54]
lea r14, [rsp + 0x38]
mov rcx, rdi
mov r8d, 4
mov r9, r14
call r13
test eax, eax
sete al
cmp dword [rsp + 0x38], 4
setne cl
or cl, al
movzx r15d, cl
mov rcx, rbx
call fcn.14015b9f4
inc eax
mov dword [rsp + 0x44], eax
mov qword [rsp + 0x20], 0
lea rdx, [rsp + 0x44]
mov rcx, rdi
mov r8d, 4
mov r9, r14
call r13
lea ecx, [r15 + 1]
cmp dword [rsp + 0x38], 4
cmovne r15d, ecx
test eax, eax
cmove r15d, ecx
lea rcx, [rsp + 0x60]
mov edx, 0x104
mov r8, rbx
mov r9, 0xffffffffffffffff
call fcn.14015bf40
mov r8d, dword [rsp + 0x44]
add r8d, r8d
je 0x14001eee8
mov eax, r8d
lea rcx, [0x140178880]
xor edx, edx
mov r9d, edx
and r9d, 0xe
add r12d, dword [rcx + r9*4]
xor r12b, byte [rsp + rdx + 0x60]
mov byte [rsp + rdx + 0x60], r12b
lea r9d, [rdx + 1]
and r9d, 0xf
add r12b, byte [rcx + r9*4]
xor r12b, byte [rsp + rdx + 0x61]
mov byte [rsp + rdx + 0x61], r12b
movzx r12d, r12b
add rdx, 2
cmp rax, rdx
jne 0x14001eeb0
mov qword [rsp + 0x20], 0
lea rdx, [rsp + 0x60]
lea r9, [rsp + 0x38]
mov rcx, rdi
call qword [0x14021a6b8]
test eax, eax
je 0x14001ef18
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x44]
add rcx, rcx
cmp rcx, rax
je 0x14001ef1b
inc r15d
mov qword [rsp + 0x20], 0
lea rdx, [rsp + 0x48]
lea r9, [rsp + 0x38]
mov rcx, rdi
mov r8d, 4
call qword [0x14021a6b8]
test eax, eax
sete al
cmp dword [rsp + 0x38], 4
setne cl
or cl, al
movzx eax, cl
add eax, r15d
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x40], 0
xor ebp, ebp
lea r15, [rsp + 0x480]
lea r12, [rsp + 0x40]
mov r13, qword [0x14021a570]
lea rbx, [0x140178880]
xor r14d, r14d
nop
mov qword [rsp + 0x20], 0
mov rcx, rsi
mov rdx, r15
mov r8d, 0x800
mov r9, r12
call r13
test eax, eax
je 0x14001f0a4
mov r8d, dword [rsp + 0x40]
test r8d, r8d
je 0x14001f0a4
cmp r8d, 1
jne 0x14001efd0
xor eax, eax
test r8b, 1
jne 0x14001f031
jmp 0x14001f051
mov ecx, r8d
and ecx, 0xfffffffe
mov edx, r14d
xor eax, eax
nop dword [rax + rax]
lea r9d, [rdx + rax]
and r9d, 0xf
add ebp, dword [rbx + r9*4]
xor bpl, byte [rsp + rax + 0x480]
mov byte [rsp + rax + 0x480], bpl
lea r9d, [rdx + rax]
inc r9d
and r9d, 0xf
add bpl, byte [rbx + r9*4]
xor bpl, byte [rsp + rax + 0x481]
mov byte [rsp + rax + 0x481], bpl
movzx ebp, bpl
add rax, 2
cmp rcx, rax
jne 0x14001efe0
add r14d, eax
test r8b, 1
je 0x14001f051
mov ecx, r14d
and ecx, 0xf
add ebp, dword [rbx + rcx*4]
xor bpl, byte [rsp + rax + 0x480]
mov byte [rsp + rax + 0x480], bpl
movzx ebp, bpl
inc r14d
mov qword [rsp + 0x20], 0
mov rcx, rdi
mov rdx, r15
lea r9, [rsp + 0x38]
call qword [0x14021a6b8]
test eax, eax
je 0x14001f07d
mov eax, dword [rsp + 0x38]
cmp eax, dword [rsp + 0x40]
je 0x14001ef80
mov ebp, dword [rsp + 0x3c]
inc ebp
jmp 0x14001f0a8
xor edi, edi
jmp 0x14001f0e4
mov rcx, rsi
call qword [0x14021a1f0]
mov dil, 1
jmp 0x14001f0e4
mov rcx, rsi
call qword [0x14021a1f0]
xor edi, edi
jmp 0x14001f0e4
mov ebp, dword [rsp + 0x3c]
mov rbx, qword [0x14021a1f0]
mov rcx, rsi
call rbx
mov rcx, rdi
call rbx
test ebp, ebp
sete dil
je 0x14001f0e4
lea rcx, str._ndeleted__s_fue__d_errors_r_n
lea rsi, [rsp + 0x270]
mov rdx, rsi
mov r8d, ebp
call fcn.14001f100
mov rcx, rsi
call qword [0x14021a248]
mov eax, edi
add rsp, 0xc88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret