Function at 0x14005a030
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x140093010]
xor rax, rsp
mov qword [rbp + 0x2f], rax
xor ebx, ebx
mov rax, rdx
and rax, 0xfffffffffffff000
mov r15, r8
add rax, 0x1000
mov r14, rdx
mov r9d, ebx
mov qword [rsp + 0x20], rax
lea r8, [rbx - 1]
mov edx, ebx
mov rsi, rcx
call fcn.14004d8c0
mov rdi, rax
test rax, rax
jne 0x14005a14f
mov dword [rbp - 0x49], 0xc241c230
mov ecx, 0x3d95
mov dword [rbp - 0x45], 0xc24ec230
mov dword [rbp - 0x41], 0xc211c22c
mov dword [rbp - 0x3d], 0xc255c21f
mov dword [rbp - 0x39], 0xc254c207
mov dword [rbp - 0x35], 0xc21ac214
mov dword [rbp - 0x31], 0xc217c21b
mov dword [rbp - 0x2d], 0xc21bc21a
mov dword [rbp - 0x29], 0xc219c20f
mov dword [rbp - 0x25], 0xc20ec25d
mov dword [rbp - 0x21], 0xc2e7c21e
mov dword [rbp - 0x1d], 0xc2f1c2e4
mov dword [rbp - 0x19], 0xc2e2c2a3
mov dword [rbp - 0x15], 0xc2f4c2ea
mov dword [rbp - 0x11], 0xc2e5c2a7
mov dword [rbp - 0xd], 0xc2e6c2ed
mov word [rbp - 9], bx
mov byte [rbp - 7], 1
nop dword [rax]
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x20
jb 0x14005a110
mov byte [rbp - 7], 0
lea rdx, [rbp - 0x49]
mov rcx, qword [0x140070250]
call fcn.140054b30
lea rdx, [0x140054d10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
xor eax, eax
jmp 0x14005a5e3
lea r8, [rax + 0x28]
mov dword [rbp + 0x27], ebx
mov r9d, 4
lea rdx, [rbp + 0x27]
mov rcx, rsi
call fcn.14004d3a0
test al, al
jne 0x14005a221
mov dword [rbp - 0x49], 0xc241c230
mov ecx, 0x3d95
mov dword [rbp - 0x45], 0xc24ec230
mov dword [rbp - 0x41], 0xc211c22c
mov dword [rbp - 0x3d], 0xc255c21f
mov dword [rbp - 0x39], 0xc254c207
mov dword [rbp - 0x35], 0xc213c207
mov dword [rbp - 0x31], 0xc21cc216
mov dword [rbp - 0x2d], 0xc20ec259
mov dword [rbp - 0x29], 0xc219c213
mov dword [rbp - 0x25], 0xc221c25d
mov dword [rbp - 0x21], 0xc2c4c232
mov dword [rbp - 0x1d], 0xc2a2c2cd
mov dword [rbp - 0x19], 0xc2a4c2b9
mov dword [rbp - 0x15], 0xc2ffc2e7
mov dword [rbp - 0x11], 0xc2edc2f3
mov dword [rbp - 0xd], 0xc2e5c2ca
mov dword [rbp - 9], 0xc2e2c2fe
mov dword [rbp - 5], 0xc2f9
mov byte [rbp - 1], 1
nop word [rax + rax]
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x23
jb 0x14005a200
mov byte [rbp - 1], 0
lea rdx, [rbp - 0x49]
jmp 0x14005a12c
mov eax, dword [rbp + 0x27]
cmp rax, r14
jae 0x14005a337
mov dword [rbp - 0x49], 0xc240c237
mov ecx, 0x3d94
mov dword [rbp - 0x45], 0xc24fc233
mov dword [rbp - 0x41], 0xc21ec233
mov dword [rbp - 0x3d], 0xc21fc207
mov dword [rbp - 0x39], 0xc21bc210
mov dword [rbp - 0x35], 0xc203c251
mov dword [rbp - 0x31], 0xc218c258
mov dword [rbp - 0x2d], 0xc217c216
mov dword [rbp - 0x29], 0xc21ec213
mov dword [rbp - 0x25], 0xc20bc21f
mov dword [rbp - 0x21], 0xc2a1c2e5
mov dword [rbp - 0x1d], 0xc2edc2e7
mov dword [rbp - 0x19], 0xc2f0c2eb
mov dword [rbp - 0x15], 0xc2efc2e1
mov dword [rbp - 0x11], 0xc2e4c2a8
mov dword [rbp - 0xd], 0xc2e6c2ef
mov dword [rbp - 9], 0xc2ffc2e3
mov dword [rbp - 5], 0xc2a3c2f7
mov dword [rbp - 1], 0xc2f2c2b0
mov dword [rbp + 3], 0xc2f6c2fe
mov dword [rbp + 7], 0xc2fbc2f5
mov dword [rbp + 0xb], 0xc2f9c2ff
mov dword [rbp + 0xf], 0xc2b9c2ff
mov dword [rbp + 0x13], 0xc2ebc2ef
mov word [rbp + 0x17], bx
mov byte [rbp + 0x19], 1
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x30
jb 0x14005a2e2
mov byte [rbp + 0x19], 0
lea rdx, [rbp - 0x49]
mov rcx, qword [0x140070250]
call fcn.140054b30
lea rdx, [0x140054d10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov rdx, rdi
mov rcx, rsi
call fcn.14004e170
mov rdx, rdi
mov rcx, rsi
call fcn.14004e370
xor eax, eax
jmp 0x14005a5e3
mov rdx, rdi
mov rcx, rsi
call fcn.14004daf0
mov r14, rax
test rax, rax
jne 0x14005a412
mov dword [rbp - 0x49], 0xc241c230
mov ecx, 0x3d95
mov dword [rbp - 0x45], 0xc24ec230
mov dword [rbp - 0x41], 0xc211c22c
mov dword [rbp - 0x3d], 0xc255c21f
mov dword [rbp - 0x39], 0xc254c207
mov dword [rbp - 0x35], 0xc213c206
mov dword [rbp - 0x31], 0xc258c203
mov dword [rbp - 0x2d], 0xc21ec214
mov dword [rbp - 0x29], 0xc25cc217
mov dword [rbp - 0x25], 0xc21fc20d
mov dword [rbp - 0x21], 0xc2e5c218
mov dword [rbp - 0x1d], 0xc2a2c2f2
mov dword [rbp - 0x19], 0xc2e5c2e0
mov dword [rbp - 0x15], 0xc2eec2e6
mov dword [rbp - 0x11], 0xc2a4c2e2
mov dword [rbp - 0xd], 0xc2e9c2a9
mov dword [rbp - 9], 0xc2e9c2e7
mov dword [rbp - 5], 0xc2e0c2ec
mov dword [rbp - 1], 0xc2fec2e6
mov dword [rbp + 3], 0xc2b2c2f6
mov dword [rbp + 7], 0xc2e4c2e6
mov dword [rbp + 0xb], 0xc2bb
mov byte [rbp + 0xf], 1
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x2b
jb 0x14005a3f1
mov byte [rbp + 0xf], 0
lea rdx, [rbp - 0x49]
jmp 0x14005a2fe
mov rdx, rdi
mov rcx, rsi
call fcn.14004dd40
mov dword [rbp - 0x45], 0xc24ec230
mov ecx, 0x3d95
test al, al
jne 0x14005a53b
mov dword [rbp - 0x49], 0xc241c230
mov dword [rbp - 0x41], 0xc211c22c
mov dword [rbp - 0x3d], 0xc255c21f
mov dword [rbp - 0x39], 0xc254c207
mov dword [rbp - 0x35], 0xc21ec216
mov dword [rbp - 0x31], 0xc216c216
mov dword [rbp - 0x2d], 0xc21fc21e
mov dword [rbp - 0x29], 0xc20cc25b
mov dword [rbp - 0x25], 0xc211c20f
mov dword [rbp - 0x21], 0xc2e5c20b
mov dword [rbp - 0x1d], 0xc2f6c2e2
mov dword [rbp - 0x19], 0xc2ebc2ea
mov dword [rbp - 0x15], 0xc2a6c2eb
mov dword [rbp - 0x11], 0xc2e7c2e1
mov dword [rbp - 0xd], 0xc2aac2fb
mov dword [rbp - 9], 0xc2e8c2e6
mov dword [rbp - 5], 0xc2aec2e1
mov dword [rbp - 1], 0xc2f1c2ff
mov dword [rbp + 3], 0xc2f7c2f6
mov dword [rbp + 7], 0xc2b8c2e0
mov dword [rbp + 0xb], 0xc2f5c2b5
mov dword [rbp + 0xf], 0xc2fdc2fb
mov dword [rbp + 0x13], 0xc2f4c2f8
mov dword [rbp + 0x17], 0xc2f2c2f2
mov dword [rbp + 0x1b], 0xc2bec2fa
mov dword [rbp + 0x1f], 0xc2d0c2ea
mov word [rbp + 0x23], bx
mov byte [rbp + 0x25], 1
nop
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x36
jb 0x14005a4f0
mov rcx, qword [0x140070250]
lea rdx, [rbp - 0x49]
mov byte [rbp + 0x25], 0
call fcn.140054b30
lea rdx, [0x140054d10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.14004df70
jmp 0x14005a31a
mov dword [rbp - 0x49], 0xc247c230
mov dword [rbp - 0x41], 0xc21cc22e
mov dword [rbp - 0x3d], 0xc21dc21d
mov dword [rbp - 0x39], 0xc215c210
mov dword [rbp - 0x35], 0xc213c201
mov dword [rbp - 0x31], 0xc258c213
mov dword [rbp - 0x2d], 0xc21bc209
mov dword [rbp - 0x29], 0xc219c21c
mov dword [rbp - 0x25], 0xc25ec20e
mov dword [rbp - 0x21], 0xc2efc219
mov dword [rbp - 0x1d], 0xc2a2c2f3
mov dword [rbp - 0x19], 0xc2e0c2ee
mov dword [rbp - 0x15], 0xc2e9
mov byte [rbp - 0x11], 1
nop word [rax + rax]
movzx eax, bx
sub ax, cx
xor word [rbp + rbx*2 - 0x49], ax
inc rbx
cmp rbx, 0x1b
jb 0x14005a5a0
mov rcx, qword [0x140070250]
lea rdx, [rbp - 0x49]
mov byte [rbp - 0x11], 0
call fcn.140054b30
lea rdx, [0x140054d10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
test r15, r15
je 0x14005a5e0
mov qword [r15], rdi
mov rax, r14
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.14006c910
mov rbx, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret