Function at 0x140013970
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
lea rcx, [rbp - 0x35]
call fcn.140012514
mov r12d, 0x10
mov ecx, r12d
call fcn.1400521f8
xor r14d, r14d
lea esi, [r12 + 0x38]
mov rbx, rax
test rax, rax
je 0x1400139da
mov ecx, esi
mov qword [rax], r14
mov qword [rax + 8], r14
call fcn.1400521f8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbx], rax
jmp 0x1400139dd
mov rbx, r14
mov rcx, rbx
call fcn.14001275c
movdqa xmm0, xmmword [0x14005b9e0]
mov rcx, r14
movdqu xmmword [rbp - 0x31], xmm0
mov dword [rbp - 0x21], 0x7239302c
mov dword [rbp - 0x1d], 0x31333f
mov al, byte [rbp - 0x31]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x16
jb 0x140013a03
xor r9d, r9d
mov byte [rbp - 0x1a], r14b
lea rdx, [rbp - 0x30]
lea rcx, [0x1400709e0]
lea r8d, [r9 + 1]
call fcn.140050c2c
test eax, eax
jne 0x140013a45
mov edx, 0xbb8
lea rcx, [0x1400709e0]
call fcn.140051588
jmp 0x1400139e5
mov al, 0x51
mov byte [rbp - 0x39], 0x18
xor al, 0x18
mov byte [rbp - 0x37], r14b
or rdi, 0xffffffffffffffff
mov byte [rbp - 0x38], al
xorps xmm0, xmm0
lea rax, [rbp - 0x38]
xorps xmm1, xmm1
mov r8, rdi
movups xmmword [rbp - 0x19], xmm0
movdqu xmmword [rbp - 9], xmm1
inc r8
cmp byte [rax + r8], r14b
jne 0x140013a6e
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x19]
call fcn.1400013b0
lea rdx, [rbp - 0x19]
mov rcx, rbx
call fcn.140011ef4
mov cl, 0x71
mov dword [rbp - 0x39], 0x263871
mov rax, r14
xor byte [rbp + rax - 0x38], cl
inc rax
cmp rax, 2
jae 0x140013aae
mov cl, byte [rbp - 0x39]
jmp 0x140013a9c
xorps xmm0, xmm0
mov byte [rbp - 0x36], r14b
xorps xmm1, xmm1
lea rax, [rbp - 0x38]
movups xmmword [rbp - 0x19], xmm0
mov r8, rdi
movdqu xmmword [rbp - 9], xmm1
inc r8
cmp byte [rax + r8], r14b
jne 0x140013ac8
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x19]
call fcn.1400013b0
lea rdx, [rbp - 0x19]
mov rcx, rbx
call fcn.140011ef4
test rbx, rbx
je 0x140013b02
mov rcx, rbx
call fcn.140012408
mov rdx, r12
mov rcx, rbx
call fcn.140052234
mov rcx, r12
call fcn.1400521f8
mov rbx, rax
test rax, rax
je 0x140013b37
mov rcx, rsi
mov qword [rax], r14
mov qword [rax + 8], r14
call fcn.1400521f8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbx], rax
jmp 0x140013b3a
mov rbx, r14
mov cl, 0x22
mov dword [rbp - 0x39], 0x7a6b22
mov rax, r14
xor byte [rbp + rax - 0x38], cl
inc rax
cmp rax, 2
jae 0x140013b58
mov cl, byte [rbp - 0x39]
jmp 0x140013b46
xorps xmm0, xmm0
mov byte [rbp - 0x36], r14b
xorps xmm1, xmm1
lea rax, [rbp - 0x38]
movups xmmword [rbp - 0x19], xmm0
mov r8, rdi
movdqu xmmword [rbp - 9], xmm1
inc r8
cmp byte [rax + r8], r14b
jne 0x140013b72
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x19]
call fcn.1400013b0
mov rcx, rsi
call fcn.1400521f8
test rax, rax
je 0x140013bb9
lea rcx, vtable.std::_Func_impl_no_alloc_class__void___cdecl_CreateMemoryEraser_struct_lambda_function____ptr64_::_2::_lambda_1___void___.0
mov qword [rbp + 7], rcx
lea rdx, [rbp + 7]
lea rcx, [rbp + 7]
mov qword [rbp + 0x3f], rcx
mov rcx, rax
call fcn.140012330
mov rsi, rax
jmp 0x140013bbc
mov rsi, r14
lea r8, [rbp - 0x19]
mov rcx, rbx
lea rdx, [rbp - 0x31]
call fcn.1400121b8
mov rdx, qword [rax]
mov rcx, qword [rdx + 0x40]
mov qword [rdx + 0x40], rsi
test rcx, rcx
je 0x140013be6
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x140013c24
mov rcx, qword [rbp - 0x19]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013c1f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013c1f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140052234
mov cl, 0x59
mov dword [rbp - 0x39], 0x11059
mov rax, r14
xor byte [rbp + rax - 0x38], cl
inc rax
cmp rax, 2
jae 0x140013c42
mov cl, byte [rbp - 0x39]
jmp 0x140013c30
xorps xmm0, xmm0
mov byte [rbp - 0x36], r14b
xorps xmm1, xmm1
lea rax, [rbp - 0x38]
movups xmmword [rbp - 0x19], xmm0
movdqu xmmword [rbp - 9], xmm1
inc rdi
cmp byte [rax + rdi], r14b
jne 0x140013c59
mov r8, rdi
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x19]
call fcn.1400013b0
lea rdx, [rbp - 0x19]
mov rcx, rbx
call fcn.140011ef4
test rbx, rbx
je 0x140013c96
mov rcx, rbx
call fcn.140012408
mov rdx, r12
mov rcx, rbx
call fcn.140052234
lea r11, [rsp + 0xa0]
xor eax, eax
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r12
pop rbp
ret