Function at 0x403100
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea eax, [ebp - 0x18]
push ebx
sub esp, 0x24c
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x23c]
mov dword [ebp - 0x224], sym.___gxx_personality_sj0
mov dword [ebp - 0x220], 0x4e0d50
mov dword [ebp - 0x218], 0x4035cd
mov dword [ebp - 0x214], esp
mov dword [esp], eax
call dbg._Unwind_SjLj_Register
lea ecx, [ebp - 0xa0]
call fcn.004d3000
mov eax, dword [0x4eeec0]
xor edx, edx
mov ebx, dword [0x4eeec4]
mov word [ebp - 0x2c], dx
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x110], eax
mov eax, dword [eax - 0xc]
mov dword [ebp - 0xa0], 0x4f0b9c
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp + eax - 0x110], ebx
mov eax, dword [0x4eeec0]
mov dword [ebp - 0x10c], 0
add ecx, dword [eax - 0xc]
mov dword [esp], 0
mov dword [ebp - 0x238], 8
call method.std::basic_ios_char__std::char_traits_char___.init_std::basic_streambuf_char__std::char_traits_char____
mov dword [ebp - fcn.004a3930], 0x4f0024
lea eax, [ebp - 0x108]
sub esp, 4
mov dword [ebp - 0xa0], 0x4f0038
mov ecx, eax
mov dword [ebp - 0x238], 4
mov dword [ebp - 0x240], eax
call fcn.004946e0
mov eax, dword [ebp - 0x240]
lea esi, [ebp - 0xa0]
mov ecx, esi
mov dword [esp], eax
mov dword [ebp - 0x238], 5
call method.std::basic_ios_char__std::char_traits_char___.init_std::basic_streambuf_char__std::char_traits_char____
sub esp, 4
mov dword [esp + 4], 0xc
mov edi, dword [ebp + 8]
mov dword [esp], edi
mov ecx, dword [ebp - 0x240]
call method.std::basic_filebuf_char__std::char_traits_char___.open_char_const__std::_Ios_Openmode_
mov edx, dword [ebp - 0x110]
lea ecx, [ebp - 0x110]
sub esp, 8
add ecx, dword [edx - 0xc]
test eax, eax
je 0x403568
mov dword [esp], 0
mov dword [ebp - 0x238], 5
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
lea eax, [ebp - 0x198]
sub esp, 4
mov ecx, eax
mov dword [ebp - 0x244], eax
call fcn.004d3000
xor eax, eax
lea ecx, [ebp - 0x204]
mov dword [ebp - fcn.004d4fd0], 0x4f0b9c
mov word [ebp - 0x124], ax
mov eax, dword [0x4eeefc]
mov dword [ebp - 0x128], 0
add ecx, dword [eax - 0xc]
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x120], 0
mov eax, dword [0x4eef00]
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
mov dword [ecx], eax
mov dword [esp], 0
mov dword [ebp - 0x238], 9
call method.std::basic_ios_char__std::char_traits_char___.init_std::basic_streambuf_char__std::char_traits_char____
mov dword [ebp - method.std::basic_ofstream_char__std::char_traits_char___.basic_ofstream__], 0x4f00b0
sub esp, 4
lea ecx, [ebp - 0x200]
mov dword [ebp - sym.virtual_thunk_to_std::basic_ofstream_char__std::char_traits_char___::basic_ofstream__], 0x4f00c4
mov dword [ebp - 0x238], 2
call fcn.004946e0
lea eax, [ebp - 0x200]
mov dword [esp], eax
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x238], 3
call method.std::basic_ios_char__std::char_traits_char___.init_std::basic_streambuf_char__std::char_traits_char____
sub esp, 4
lea ecx, [ebp - 0x200]
mov dword [esp + 4], 0x14
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call method.std::basic_filebuf_char__std::char_traits_char___.open_char_const__std::_Ios_Openmode_
mov edx, dword [ebp - 0x204]
lea ecx, [ebp - 0x204]
sub esp, 8
add ecx, dword [edx - 0xc]
test eax, eax
je 0x403550
mov dword [esp], 0
mov dword [ebp - 0x238], 3
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
mov eax, dword [ebp - 0x8c]
or eax, dword [ebp - 0x184]
mov byte [ebp - 0x245], 0
sub esp, 4
test al, 5
je 0x4034e0
mov dword [ebp - sym.virtual_thunk_to_std::basic_ofstream_char__std::char_traits_char___::basic_ofstream__], 0x4f00c4
lea ecx, [ebp - 0x200]
mov dword [ebp - fcn.00494c00], 0x4efec4
mov dword [ebp - 0x238], 6
mov dword [ebp - method.std::basic_ofstream_char__std::char_traits_char___.basic_ofstream__], 0x4f00b0
call method.std::basic_filebuf_char__std::char_traits_char___.close__
lea ecx, [ebp - 0x1dc]
call method.std::__basic_file_char_.__basic_file__
lea ecx, [ebp - 0x1e4]
mov dword [ebp - fcn.004aa620], vtable.c_streambufIwSt11char_traitsIwEE.0
call fcn.004b5850
mov eax, dword [0x4eeefc]
mov ebx, dword [0x4eef00]
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x204], eax
mov eax, dword [eax - 0xc]
mov dword [ebp + eax - 0x204], ebx
mov dword [ebp - fcn.004d4fd0], 0x4f0b9c
call method.std::ios_base.ios_base__
mov ecx, dword [ebp - 0x240]
mov dword [ebp - 0xa0], 0x4f0038
mov dword [ebp - fcn.00494c00], 0x4efec4
mov dword [ebp - 0x238], 7
mov dword [ebp - fcn.004a3930], 0x4f0024
call method.std::basic_filebuf_char__std::char_traits_char___.close__
lea ecx, [ebp - 0xe4]
call method.std::__basic_file_char_.__basic_file__
lea ecx, [ebp - 0xec]
mov dword [ebp - fcn.004aa620], vtable.c_streambufIwSt11char_traitsIwEE.0
call fcn.004b5850
mov eax, dword [0x4eeec0]
mov esi, dword [0x4eeec4]
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x110], eax
mov eax, dword [eax - 0xc]
mov dword [ebp + eax - 0x110], esi
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0xa0], 0x4f0b9c
call method.std::ios_base.ios_base__
lea eax, [ebp - 0x23c]
mov dword [esp], eax
call sym.__Unwind_SjLj_Unregister
movzx eax, byte [ebp - 0x245]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x240]
lea ecx, [ebp - 0x204]
mov dword [esp], eax
mov dword [ebp - 0x238], 1
call method.std::ostream.operator___std::basic_streambuf_char__std::char_traits_char____
sub esp, 4
lea ecx, [ebp - 0x200]
call method.std::basic_filebuf_char__std::char_traits_char___.close__
test eax, eax
je 0x403580
mov dword [ebp - 0x238], 1
mov ecx, dword [ebp - 0x240]
call method.std::basic_filebuf_char__std::char_traits_char___.close__
test eax, eax
je 0x4035a8
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov dword [ebp - 0x238], 1
call sym._remove
mov byte [ebp - 0x245], 1
jmp 0x4033ae
mov eax, dword [ecx + 0x14]
or eax, 4
mov dword [esp], eax
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
jmp 0x403390
mov eax, dword [ecx + 0x14]
or eax, 4
mov dword [esp], eax
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
jmp 0x40326e
mov eax, dword [ebp - 0x204]
lea ecx, [ebp - 0x204]
add ecx, dword [eax - 0xc]
mov eax, dword [ecx + 0x14]
or eax, 4
mov dword [esp], eax
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
sub esp, 4
jmp 0x403510
mov eax, dword [ebp - 0x110]
lea ecx, [ebp - 0x110]
add ecx, dword [eax - 0xc]
mov eax, dword [ecx + 0x14]
or eax, 4
mov dword [esp], eax
call method.std::basic_ios_char__std::char_traits_char___.clear_std::_Ios_Iostate_
sub esp, 4
jmp 0x403529