Function at 0x401550
Capabilities:
Delete file

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x528
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x400], xmm6
movaps xmmword [rbp + 0x410], xmm7
movaps xmmword [rbp + 0x420], xmm8
movaps xmmword [rbp + 0x430], xmm9
movaps xmmword [rbp + 0x440], xmm10
movaps xmmword [rbp + 0x450], xmm11
movaps xmmword [rbp + 0x460], xmm12
movaps xmmword [rbp + 0x470], xmm13
movaps xmmword [rbp + 0x480], xmm14
movaps xmmword [rbp + 0x490], xmm15
mov qword [rbp + 0x4f0], rcx
lea rax, [sym.__gxx_personality_sj0]
mov qword [rbp - 0x30], rax
lea rax, [0x004f90fc]
mov qword [rbp - 0x28], rax
lea rax, [rbp - 0x20]
lea rbx, [rbp + 0x400]
mov qword [rax], rbx
lea rdx, [0x0040181c]
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rsp
lea rax, [rbp - 0x60]
mov rcx, rax
call dbg._Unwind_SjLj_Register
lea rax, [rbp + 0x210]
mov dword [rbp - 0x58], 0xffffffff
mov rcx, rax
call fcn.00492570
lea rax, [rbp + 0x20]
mov dword [rbp - 0x58], 1
mov rcx, rax
call fcn.00492570
mov edx, 4
mov ecx, 8
call method.std.operator_std::_Ios_Openmode__std::_Ios_Openmode_
mov edx, eax
lea rax, [rbp + 0x210]
mov dword [rbp - 0x58], 2
mov r8d, edx
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.open_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::_Ios_Openmode_
mov edx, 4
mov ecx, 0x10
call method.std.operator_std::_Ios_Openmode__std::_Ios_Openmode_
mov edx, eax
lea rax, [rbp + 0x20]
mov r8d, edx
lea rdx, str.temp
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.open_char_const__std::_Ios_Openmode_
lea rax, [rbp + 0x210]
lea rdx, [method.std.noskipws_std::ios_base_]
mov dword [rbp - 0x58], 2
mov rcx, rax
call method.std::istream.operator___std::ios_base____std::ios_base__
mov rcx, rax
lea rax, [rbp + 0x1f]
mov rdx, rax
call fcn.004d7350
mov rdx, qword [rax]
sub rdx, 0x18
mov rdx, qword [rdx]
add rax, rdx
mov rcx, rax
call method.std::basic_ios_char__std::char_traits_char___.operator_bool___const
test al, al
je 0x4016e7
movzx eax, byte [rbp + 0x1f]
sub eax, 0xf
mov byte [rbp + 0x1f], al
movzx eax, byte [rbp + 0x1f]
movsx eax, al
lea rdx, [rbp + 0x20]
lea rcx, [rdx + 0x10]
mov edx, eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
jmp 0x401680
lea rax, [rbp + 0x210]
mov dword [rbp - 0x58], 2
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.close__
lea rax, [rbp + 0x20]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.close__
mov edx, 4
mov ecx, 0x10
call method.std.operator_std::_Ios_Openmode__std::_Ios_Openmode_
mov edx, eax
lea rax, [rbp + 0x210]
mov r8d, edx
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.open_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::_Ios_Openmode_
mov edx, 4
mov ecx, 8
call method.std.operator_std::_Ios_Openmode__std::_Ios_Openmode_
mov edx, eax
lea rax, [rbp + 0x20]
mov r8d, edx
lea rdx, str.temp
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.open_char_const__std::_Ios_Openmode_
lea rax, [rbp + 0x20]
lea rdx, [method.std.noskipws_std::ios_base_]
mov dword [rbp - 0x58], 2
mov rcx, rax
call method.std::istream.operator___std::ios_base____std::ios_base__
mov rcx, rax
lea rax, [rbp + 0x1f]
mov rdx, rax
call fcn.004d7350
mov rdx, qword [rax]
sub rdx, 0x18
mov rdx, qword [rdx]
add rax, rdx
mov rcx, rax
call method.std::basic_ios_char__std::char_traits_char___.operator_bool___const
test al, al
je 0x4017b7
movzx eax, byte [rbp + 0x1f]
movsx eax, al
lea rdx, [rbp + 0x210]
lea rcx, [rdx + 0x10]
mov edx, eax
call method.std::basic_ostream_char__std::char_traits_char____std::operator____std.char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_
jmp 0x40175a
lea rax, [rbp + 0x210]
mov dword [rbp - 0x58], 2
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.close__
lea rax, [rbp + 0x20]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.close__
lea rcx, str.temp
call sym.remove
lea rax, [rbp + 0x20]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.basic_fstream__
lea rax, [rbp + 0x210]
mov rcx, rax
call method.std::basic_fstream_char__std::char_traits_char___.basic_fstream__
jmp 0x401860
lea rax, [rbp - 0x60]
mov rcx, rax
call sym._Unwind_SjLj_Unregister
nop
movaps xmm6, xmmword [rbp + 0x400]
movaps xmm7, xmmword [rbp + 0x410]
movaps xmm8, xmmword [rbp + 0x420]
movaps xmm9, xmmword [rbp + 0x430]
movaps xmm10, xmmword [rbp + 0x440]
movaps xmm11, xmmword [rbp + 0x450]
movaps xmm12, xmmword [rbp + 0x460]
movaps xmm13, xmmword [rbp + 0x470]
movaps xmm14, xmmword [rbp + 0x480]
movaps xmm15, xmmword [rbp + 0x490]
add rsp, 0x528
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret