Function at 0x180013620
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0x70]
movdqa xmmword [rbp - 0x10], xmm6
mov qword [rbp - 0x18], 0xfffffffffffffffe
mov rax, rdx
mov r15, rcx
movups xmm0, xmmword [r8]
movaps xmmword [rbp - 0x50], xmm0
lea rdx, [rbp - 0x50]
mov r8, rax
call fcn.180012330
lea rax, vtable.std::filesystem::filesystem_error.0
mov qword [r15], rax
xorps xmm0, xmm0
movups xmmword [r15 + 0x28], xmm0
mov qword [r15 + 0x38], 0
mov qword [r15 + 0x40], 7
movups xmmword [r15 + 0x48], xmm0
mov qword [r15 + 0x58], 0
mov qword [r15 + 0x60], 7
lea rsi, [r15 + 0x68]
mov rdi, qword [r15 + 8]
test rdi, rdi
jne 0x18001382c
cmp byte [0x180051ea2], 0
jne 0x18001381b
mov rdx, qword [0x1800506b0]
movabs rax, 0x244dc7ea6e4b4c37
add rax, rdx
movabs rcx, 0x244dc7ea6e4b4c55
add rcx, rdx
movabs r9, 0x244dc7ea6e4b4c67
add r9, rdx
lea r8, [0x180051e90]
cmp r9, r8
jbe 0x180013749
lea r9, [0x180051ea2]
cmp rax, r9
jae 0x180013749
xor edx, edx
nop dword [rax]
movzx r9d, byte [rcx + rdx]
movzx r10d, byte [rax + rdx]
mov r11d, r10d
not r11b
or r11b, r9b
not r9b
or r9b, r10b
mov r10d, r11d
xor r10b, 0xea
mov ebx, r9d
xor bl, 0xea
xor r11b, 0x15
and r11b, bl
xor r9b, 0x15
and r9b, r10b
or r9b, r11b
mov byte [rdx + r8], r9b
inc rdx
cmp rdx, 0x12
jne 0x180013700
jmp 0x180013814
movdqu xmm2, xmmword [rcx]
movdqu xmm3, xmmword [rax]
pcmpeqd xmm1, xmm1
movdqa xmm4, xmm3
pxor xmm4, xmm1
por xmm4, xmm2
pxor xmm2, xmm1
por xmm2, xmm3
movdqa xmm3, xmmword [0x1800429a0]
movdqa xmm5, xmm4
pxor xmm5, xmm3
pxor xmm3, xmm2
movdqa xmm6, xmmword [0x1800429b0]
pxor xmm4, xmm6
pand xmm4, xmm3
pxor xmm2, xmm6
pand xmm2, xmm5
por xmm2, xmm4
movdqa xmmword [0x180051e90], xmm2
movabs rax, 0x244dc7ea6e4b4c65
movzx eax, word [rdx + rax]
movd xmm2, eax
movabs rax, 0x244dc7ea6e4b4c47
movzx eax, word [rdx + rax]
movd xmm3, eax
movdqa xmm4, xmm3
pxor xmm4, xmm1
por xmm4, xmm2
pxor xmm2, xmm1
por xmm2, xmm3
movdqa xmm1, xmmword [0x1800429c0]
movdqa xmm3, xmm4
pxor xmm3, xmm1
pxor xmm1, xmm2
movdqa xmm5, xmmword [0x1800429d0]
pxor xmm4, xmm5
pand xmm4, xmm1
pxor xmm2, xmm5
pand xmm2, xmm3
por xmm2, xmm4
movd eax, xmm2
mov word [0x180051ea0], ax
mov byte [0x180051ea2], 1
movabs rdi, 0x244dc7ea6e4b41d0
add rdi, qword [0x1800506b8]
lea r12, [r15 + 0x28]
lea r13, [r15 + 0x48]
lea r14, [r15 + 8]
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi], xmm0
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test rax, rax
js 0x18001394e
mov rbx, rax
cmp rax, 0xf
ja 0x18001386d
mov qword [r15 + 0x78], rbx
mov qword [r15 + 0x80], 0xf
jmp 0x180013922
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x20], r15
mov rax, rbx
or rax, 0xf
cmp rax, 0x17
mov r14d, 0x16
cmovae r14, rax
cmp r14, 0xfff
jb 0x180013903
lea rcx, [r14 + 0x28]
call fcn.18003c980
mov rcx, 0xffffffffffffffd8
sub rcx, rax
mov rdx, rax
add rdx, 0x27
mov r8d, ecx
and r8d, 5
movabs r9, 0x5867f20cf71b6f6b
and r9, rdx
and rdx, 0xfffffffffffffffa
or rdx, r8
movabs r8, 0xa7980df308e49094
and rcx, r8
or r9, rcx
xor r8, r9
xor r9, rdx
xor rdx, 0x1a
or r8, rdx
movabs rsi, 0x5867f20cf71b6f71
xor rsi, r9
and rsi, r8
mov qword [rsi - 8], rax
jmp 0x18001390f
lea rcx, [r14 + 1]
call fcn.18003c980
mov rsi, rax
mov r15, qword [rbp - 0x20]
mov qword [r15 + 0x68], rsi
mov qword [r15 + 0x78], rbx
mov qword [r15 + 0x80], r14
mov rcx, rsi
mov rdx, rdi
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
add rbx, rsi
mov byte [rbx], 0
mov rax, r15
movaps xmm6, xmmword [rbp - 0x10]
add rsp, 0x78
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x20], r15
call fcn.18000f240
int3