Function at 0x14005ae70
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x2f]
sub rsp, 0xc8
mov rax, qword [0x140091010]
xor rax, rsp
mov qword [rbp + 0x1f], 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.14004e810
mov rdi, rax
test rax, rax
jne 0x14005af8c
mov dword [rbp - 0x59], 0x41b741c2
mov ecx, 0x4199
mov dword [rbp - 0x55], 0x41bc41c6
mov dword [rbp - 0x51], 0x41ff41de
mov dword [rbp - 0x4d], 0x418741f1
mov dword [rbp - 0x49], 0x418241d5
mov dword [rbp - 0x45], 0x41c841c2
mov dword [rbp - 0x41], 0x41c941c9
mov dword [rbp - 0x3d], 0x41c941c4
mov dword [rbp - 0x39], 0x41cf41dd
mov dword [rbp - 0x35], 0x41dc418b
mov dword [rbp - 0x31], 0x41c941cc
mov dword [rbp - 0x2d], 0x41c341ca
mov dword [rbp - 0x29], 0x41d44191
mov dword [rbp - 0x25], 0x41c641dc
mov dword [rbp - 0x21], 0x41db4195
mov dword [rbp - 0x1d], 0x41d441d3
mov word [rbp - 0x19], bx
mov byte [rbp - 0x17], 1
nop dword [rax]
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x20
jb 0x14005af50
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, [rbp - 0x59]
mov byte [rbp - 0x17], 0
call fcn.140055b70
lea rdx, [0x140055d50]
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 0x14005b460
lea r8, [rax + 0x28]
mov qword [rsp + 0x118], r12
mov r9d, 4
mov dword [rbp + 0x17], ebx
lea rdx, [rbp + 0x17]
mov rcx, rsi
call fcn.14004e2c0
test al, al
jne 0x14005b07c
mov dword [rbp - 0x59], 0x41b741c2
mov ecx, 0x4199
mov dword [rbp - 0x55], 0x41bc41c6
mov dword [rbp - 0x51], 0x41ff41de
mov dword [rbp - 0x4d], 0x418741f1
mov dword [rbp - 0x49], 0x418241d5
mov dword [rbp - 0x45], 0x41c141d1
mov dword [rbp - 0x41], 0x41c241c4
mov dword [rbp - 0x3d], 0x41dc4187
mov dword [rbp - 0x39], 0x41cf41c1
mov dword [rbp - 0x35], 0x41f3418b
mov dword [rbp - 0x31], 0x41ea41e0
mov dword [rbp - 0x2d], 0x419041e3
mov dword [rbp - 0x29], 0x4192418b
mov dword [rbp - 0x25], 0x41cd41d1
mov dword [rbp - 0x21], 0x41d341c1
mov dword [rbp - 0x1d], 0x41d741f4
mov dword [rbp - 0x19], 0x41d441cc
mov dword [rbp - 0x15], 0x41cf
mov byte [rbp - 0x11], 1
nop dword [rax]
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x23
jb 0x14005b040
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, [rbp - 0x59]
mov byte [rbp - 0x11], 0
call fcn.140055b70
lea rdx, [0x140055d50]
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 0x14005b458
mov eax, dword [rbp + 0x17]
mov qword [rsp + 0xc0], r13
cmp rax, r14
jae 0x14005b16e
mov dword [rbp - 0x59], 0x41b041c7
mov ecx, 0x419c
mov dword [rbp - 0x55], 0x41bf41c3
mov dword [rbp - 0x51], 0x41ce41e3
mov dword [rbp - 0x4d], 0x41cf41d7
mov dword [rbp - 0x49], 0x41cb41c0
mov dword [rbp - 0x45], 0x41d34181
mov dword [rbp - 0x41], 0x41c84188
mov dword [rbp - 0x3d], 0x41c741c6
mov dword [rbp - 0x39], 0x41ce41c3
mov dword [rbp - 0x35], 0x41db41cf
mov dword [rbp - 0x31], 0x419141d5
mov dword [rbp - 0x2d], 0x41dd41d7
mov dword [rbp - 0x29], 0x41c041db
mov dword [rbp - 0x25], 0x41df41d1
mov dword [rbp - 0x21], 0x41d44198
mov dword [rbp - 0x1d], 0x41d641df
mov dword [rbp - 0x19], 0x41cf41d3
mov dword [rbp - 0x15], 0x419341c7
mov dword [rbp - 0x11], 0x41a241e0
mov dword [rbp - 0xd], 0x41a641ae
mov dword [rbp - 9], 0x41ab41a5
mov dword [rbp - 5], 0x41a941af
mov dword [rbp - 1], 0x41e941af
mov dword [rbp + 3], 0x41bb41bf
mov word [rbp + 7], bx
mov byte [rbp + 9], 1
nop word [rax + rax]
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x30
jb 0x14005b150
mov byte [rbp + 9], 0
lea rdx, [rbp - 0x59]
jmp 0x14005b249
mov rdx, rdi
mov rcx, rsi
call fcn.14004ea40
mov r14, rax
test rax, rax
jne 0x14005b26a
mov dword [rbp - 0x59], 0x41b741c2
mov ecx, 0x4199
mov dword [rbp - 0x55], 0x41bc41c6
mov dword [rbp - 0x51], 0x41ff41de
mov dword [rbp - 0x4d], 0x418741f1
mov dword [rbp - 0x49], 0x418241d5
mov dword [rbp - 0x45], 0x41c141d0
mov dword [rbp - 0x41], 0x418641d1
mov dword [rbp - 0x3d], 0x41cc41ca
mov dword [rbp - 0x39], 0x418a41c5
mov dword [rbp - 0x35], 0x41cd41db
mov dword [rbp - 0x31], 0x41cb41ca
mov dword [rbp - 0x2d], 0x419041dc
mov dword [rbp - 0x29], 0x41d341d2
mov dword [rbp - 0x25], 0x41dc41d0
mov dword [rbp - 0x21], 0x419a41d0
mov dword [rbp - 0x1d], 0x41db4197
mov dword [rbp - 0x19], 0x41df41d5
mov dword [rbp - 0x15], 0x41d241da
mov dword [rbp - 0x11], 0x41d041d4
mov dword [rbp - 0xd], 0x41e041d8
mov dword [rbp - 9], 0x41b241b4
mov dword [rbp - 5], 0x41ed
mov byte [rbp - 1], 1
nop dword [rax + rax]
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x2b
jb 0x14005b230
mov byte [rbp - 1], 0
lea rdx, [rbp - 0x59]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.140055b70
lea rdx, [0x140055d50]
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]
jmp 0x14005b393
mov rdx, rdi
mov rcx, rsi
call fcn.14004ec90
mov dword [rbp - 0x55], 0x41bc41c6
mov ecx, 0x4199
test al, al
jne 0x14005b3b0
mov dword [rbp - 0x59], 0x41b741c2
mov dword [rbp - 0x51], 0x41ff41de
mov dword [rbp - 0x4d], 0x418741f1
mov dword [rbp - 0x49], 0x418241d5
mov dword [rbp - 0x45], 0x41cc41c0
mov dword [rbp - 0x41], 0x41c841c4
mov dword [rbp - 0x3d], 0x41cd41c0
mov dword [rbp - 0x39], 0x41da4189
mov dword [rbp - 0x35], 0x41c341d9
mov dword [rbp - 0x31], 0x41cb41d9
mov dword [rbp - 0x2d], 0x41c441cc
mov dword [rbp - 0x29], 0x41dd41d8
mov dword [rbp - 0x25], 0x419441dd
mov dword [rbp - 0x21], 0x41d941d3
mov dword [rbp - 0x1d], 0x419841c5
mov dword [rbp - 0x19], 0x41de41d4
mov dword [rbp - 0x15], 0x419c41d7
mov dword [rbp - 0x11], 0x41df41cd
mov dword [rbp - 0xd], 0x41a541d8
mov dword [rbp - 9], 0x41ee41b2
mov dword [rbp - 5], 0x41a741e3
mov dword [rbp - 1], 0x41a341a9
mov dword [rbp + 3], 0x41a641a6
mov dword [rbp + 7], 0x41a441a0
mov dword [rbp + 0xb], 0x41ec41ac
mov dword [rbp + 0xf], 0x41be41b8
mov word [rbp + 0x13], bx
mov byte [rbp + 0x15], 1
nop word [rax + rax]
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x36
jb 0x14005b350
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, [rbp - 0x59]
mov byte [rbp + 0x15], 0
call fcn.140055b70
lea rdx, [0x140055d50]
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.14004eec0
mov rdx, rdi
mov rcx, rsi
call fcn.14004f0c0
mov rdx, rdi
mov rcx, rsi
call fcn.14004f2c0
xor eax, eax
jmp 0x14005b450
mov dword [rbp - 0x59], 0x41b141c2
mov dword [rbp - 0x51], 0x41f241dc
mov dword [rbp - 0x4d], 0x41cf41f3
mov dword [rbp - 0x49], 0x41c341c2
mov dword [rbp - 0x45], 0x41c141d7
mov dword [rbp - 0x41], 0x418641c1
mov dword [rbp - 0x3d], 0x41c941d7
mov dword [rbp - 0x39], 0x41cf41ce
mov dword [rbp - 0x35], 0x418c41d8
mov dword [rbp - 0x31], 0x41c141cb
mov dword [rbp - 0x2d], 0x419041dd
mov dword [rbp - 0x29], 0x41d641dc
mov dword [rbp - 0x25], 0x41df
mov byte [rbp - 0x21], 1
nop
lea eax, [rcx + rbx]
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x1b
jb 0x14005b410
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, [rbp - 0x59]
mov byte [rbp - 0x21], 0
call fcn.140055b70
lea rdx, [0x140055d50]
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 0x14005b44d
mov qword [r15], rdi
mov rax, r14
mov r13, qword [rsp + 0xc0]
mov r12, qword [rsp + 0x118]
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1400726c0
add rsp, 0xc8
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret