Function at 0x1400615c0
Capabilities:
Set console window title

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov rdi, rcx
mov qword [rsp + 0x38], rcx
xor r15d, r15d
mov dword [rsp + 0x20], r15d
mov qword [rsp + 0x28], rcx
lea rax, [0x14013a648]
mov qword [rcx], rax
add rcx, 0xa8
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x20], 1
lea rbx, [rdi + 8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rcx + rdi], rax
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rcx + rdi - 4], edx
mov qword [rsp + 0x30], rbx
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rbp, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rbx], rbp
mov byte [rbx + 0x7c], r15b
mov byte [rbx + 0x71], r15b
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [rbx + 0x80], r15
mov rax, qword [0x140186f88]
mov qword [rbx + 0x74], rax
mov qword [rbx + 0x68], r15
lea rsi, [rdi + 0x108]
mov qword [rsp + 0x30], rsi
lea rax, [0x14013a650]
mov qword [rsi], rax
lea rcx, [rsi + 0xb0]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x20], 3
lea r14, [rsi + 0x10]
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rcx + rsi], rax
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rcx + rsi - 4], edx
mov qword [rsp + 0x28], r14
mov rcx, r14
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
mov qword [r14], rbp
mov byte [r14 + 0x7c], r15b
mov byte [r14 + 0x71], r15b
mov rcx, r14
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [r14 + 0x80], r15
mov rax, qword [0x140186f88]
mov qword [r14 + 0x74], rax
mov qword [r14 + 0x68], r15
call qword [sym.imp.KERNEL32.dll_AllocConsole]
lea rcx, [0x1401508b0]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rcx, qword [0x1401508b0]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
lea r9d, [r15 + 2]
mov r8b, 0xeb
xor edx, edx
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_SetConsoleCP]
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_SetConsoleOutputCP]
lea r8d, [r15 + 2]
lea rdx, str.CONOUT_
mov rcx, rbx
call fcn.140062b50
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
xor r8d, r8d
add rcx, rdi
test rax, rax
je 0x1400617a4
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x1400617af
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov r8d, 1
lea rdx, str.CONIN_
mov rcx, r14
call fcn.140062b50
mov rcx, qword [rsi]
movsxd rcx, dword [rcx + 4]
xor r8d, r8d
add rcx, rsi
test rax, rax
je 0x1400617e0
xor edx, edx
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool____ptr64]
jmp 0x1400617ec
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, rdi
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret