Function at 0x14005c150
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x140091010]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r13, rdx
mov r14, rcx
mov qword [rbp - 0x18], rdx
mov rsi, qword [rdx]
mov r12, qword [rdx + 8]
cmp rsi, r12
je 0x14005c38a
mov rcx, rsi
call fcn.14005f350
mov rdi, rax
test rax, rax
je 0x14005c2cf
mov rbx, qword [rsi + 0x20]
mov r15, qword [rsi + 0x28]
cmp rbx, r15
je 0x14005c1f5
mov r8, rbx
mov rdx, rdi
mov rcx, r14
call fcn.14004f4a0
mov rcx, rax
test rax, rax
jne 0x14005c1e5
mov rdx, qword [0x1401bc9a8]
cmp rdi, rdx
je 0x14005c1e5
mov r8, rbx
mov rcx, r14
call fcn.14004f4a0
mov rcx, rax
test rax, rax
je 0x14005c1fb
mov rax, qword [rbx + 0x20]
mov qword [rax], rcx
add rbx, 0x28
cmp rbx, r15
jne 0x14005c1b0
add rsi, 0x38
jmp 0x14005c186
movdqa xmm0, xmmword [0x140085e20]
movdqu xmmword [rbp - 0x38], xmm0
mov dword [rbp - 0x28], 0xd9c2c2df
mov dword [rbp - 0x24], 0xdedb91d5
mov dword [rbp - 0x20], 0xc3c4dac4
mov word [rbp - 0x1c], 0x98
mov byte [rbp - 0x1a], 1
xor edi, edi
mov edx, edi
nop dword [rax + rax]
lea eax, [rdx - 0x64]
xor byte [rbp + rdx - 0x38], al
inc rdx
cmp rdx, 0x1d
jb 0x14005c230
mov byte [rbp - 0x1a], dil
lea rdx, [rbp - 0x38]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14005cbe0
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x14005c262
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.14005ce90
mov dword [rbp - 0x50], 0x100b5bc
nop dword [rax]
nop dword [rax + rax]
lea ecx, [rdi - 0x64]
xor byte [rbp + rdi - 0x50], cl
inc rdi
cmp rdi, 2
jb 0x14005c280
mov byte [rbp - 0x4d], 0
lea rdx, [rbp - 0x50]
mov rcx, rax
call fcn.14005cbe0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
jb 0x14005c2ae
mov rsi, qword [rsi]
mov rdx, rsi
mov rcx, rax
call fcn.14005ce90
mov word [rbp - 0x4c], 0x29
mov byte [rbp - 0x4a], 0
lea rdx, [rbp - 0x4c]
mov rcx, rax
jmp 0x14005c368
movdqa xmm0, xmmword [0x140085bb0]
movdqu xmmword [rbp - 0x38], xmm0
mov byte [rbp - 0x28], 1
xor edi, edi
mov edx, edi
nop dword [rax]
nop dword [rax + rax]
lea eax, [rdx - 0x64]
xor byte [rbp + rdx - 0x38], al
inc rdx
cmp rdx, 0xf
jb 0x14005c2f0
mov byte [rbp - 0x28], dil
lea rdx, [rbp - 0x38]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14005cbe0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
jb 0x14005c322
mov rsi, qword [rsi]
mov rdx, rsi
mov rcx, rax
call fcn.14005ce90
mov rcx, rax
mov dword [rbp - 0x48], 0xecffeabc
mov dword [rbp - 0x44], 0x83d686ce
mov dword [rbp - 0x40], 0xc9d3cac2
mov word [rbp - 0x3c], 0xcc
mov byte [rbp - 0x3a], 1
nop
lea eax, [rdi - 0x64]
xor byte [rbp + rdi - 0x48], al
inc rdi
cmp rdi, 0xd
jb 0x14005c350
mov byte [rbp - 0x3a], 0
lea rdx, [rbp - 0x48]
call fcn.14005cbe0
lea rdx, [0x14005cdd0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rcx, r13
call fcn.14005c3c0
xor al, al
jmp 0x14005c394
mov rcx, r13
call fcn.14005c3c0
mov al, 1
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1400726c0
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret