Function at 0x40a280
Capabilities:
Check if file exists
Delete file

Disassembly:
push 0x84
mov eax, 0x42e60a
call fcn.00429b95
xor ebx, ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], ebx
call sub.mfc90u.dll_CStringArray::CStringArray
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 1
call sub.mfc90u.dll_CFile::CFile
push ebx
push ebx
mov byte [ebp - 4], 2
push dword [ebp + 0xc]
lea ecx, [ebp - 0x34]
call sub.mfc90u.dll_CFile::Open
test eax, eax
je 0x40a341
push ebx
push 0x1000
push 1
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x90]
call sub.mfc90u.dll_CArchive::CArchive
mov byte [ebp - 4], 3
test byte [ebp - 0x78], 1
je 0x40a321
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 4
call sub.mfc90u.dll_CStringArray::Serialize
lea ecx, [ebp - 0x90]
call sub.mfc90u.dll_CArchive::Close
mov dword [ebp - 4], 3
jmp 0x40a321
lea ecx, [ebp - 0x34]
call sub.mfc90u.dll_CFile::Close
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 2
call fcn.00428da2
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
cmp eax, 1
jne 0x40a41b
push dword [ebp - 0x44]
lea ecx, [ebp - 0x18]
call dword [0x42fa28]
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], 3
lea ecx, [ebp - 0x18]
jne 0x40a411
push ebx
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::operator__]
movzx eax, ax
push eax
mov eax, dword [0x4420b4]
mov esi, dword [eax + 0x11d8]
call fcn.00413069
mov eax, dword [0x4420b4]
mov eax, dword [eax + 0x11d8]
mov eax, dword [eax + 0x568]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 1
mov esi, 0xf1
push esi
push dword [eax + 0x20]
call edi
mov eax, dword [0x4420b4]
mov eax, dword [eax + 0x11d8]
mov eax, dword [eax + 0x564]
push ebx
push ebx
push esi
push dword [eax + 0x20]
call edi
mov eax, dword [0x4420b4]
mov eax, dword [eax + 0x11d8]
mov eax, dword [eax + 0x560]
push ebx
push ebx
push esi
push dword [eax + 0x20]
call edi
mov ecx, dword [0x4420b4]
push 0x4ed
call dword [sym.imp.SolvusoftWMhelper.dll_public:_void___thiscall_CDlgBaseAppDlg::ChangeTopSide_enum_CDlgBaseAppDlg::CHANGE_TOP_BTNS_]
mov eax, dword [0x4420b4]
mov ecx, dword [eax + 0x11d8]
push 0x4af
call dword [sym.imp.SolvusoftWMhelper.dll_public:_void___thiscall_CDlgLeftSideChild::ChangeTheRightSideStep_enum_DLG_BTN_STEPS_]
lea ecx, [ebp - 0x18]
jmp 0x40a559
mov byte [ebp - 4], 2
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
cmp dword [ebp - 0x20], ebx
mov byte [ebp - 0x11], bl
mov dword [ebp - 0x1c], ebx
jle 0x40a504
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov esi, 0xf1
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jl 0x40a599
cmp eax, dword [ebp - 0x40]
jge 0x40a599
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax*4]
push eax
lea ecx, [ebp - 0x18]
call dword [0x42fa28]
mov byte [ebp - 4], 7
push dword [ebp - 0x18]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x40a4e8
cmp byte [0x4420c0], bl
jne 0x40a493
push ecx
lea eax, [ebp - 0x18]
mov ecx, esp
mov dword [ebp - 0x24], esp
push eax
call dword [0x42fa28]
call dword [sym.imp.SolvusoftWMhelper.dll_enum_PCO_ERROR_CODES___cdecl_IsTargetFolder_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____]
pop ecx
cmp eax, ebx
je 0x40a493
mov byte [ebp - 0x11], 1
jmp 0x40a4e8
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp + 8]
call fcn.00408d3b
test al, al
je 0x40a587
mov eax, dword [ebp + 8]
add eax, 0x1e8
call fcn.0040a8b1
mov ecx, dword [ebp + 8]
add ecx, 0x894
test eax, eax
jle 0x40a4c4
push 1
jmp 0x40a4c5
push ebx
call sub.mfc90u.dll_CWnd::EnableWindow
mov eax, dword [ebp + 8]
call fcn.00409ce6
test eax, eax
mov eax, dword [ebp + 8]
push ebx
je 0x40a4de
push 1
jmp 0x40a4df
push ebx
push esi
push dword [eax + 0x8b4]
call edi
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
inc dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jl 0x40a435
mov ecx, dword [0x4420b4]
push 0x4eb
call dword [sym.imp.SolvusoftWMhelper.dll_public:_void___thiscall_CDlgBaseAppDlg::ChangeTopSide_enum_CDlgBaseAppDlg::CHANGE_TOP_BTNS_]
mov ecx, dword [ebp + 8]
push 0x4b0
call dword [sym.imp.SolvusoftWMhelper.dll_public:_void___thiscall_CDlgLeftSideChild::ChangeTheRightSideStep_enum_DLG_BTN_STEPS_]
cmp byte [ebp - 0x11], bl
je 0x40a55f
push 0x430ef8
push str.IDS_FOLDER_RESTRICTION
lea eax, [ebp + 8]
push eax
mov ecx, 0x441f98
call dword [sym.imp.SolvusoftWMhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CSystweakApp::LoadStringW_wchar_t_const___wchar_t_const__]
push 1
push ebx
push ebx
mov byte [ebp - 4], 8
mov eax, dword [eax]
push ebx
push eax
call dword [sym.imp.SolvusoftWMhelper.dll_public:_static_int___cdecl_CSystweakApp::AfxMessageBox_wchar_t_const___unsigned_int__class_CDialog___class_CRect___bool_]
add esp, 0x14
lea ecx, [ebp + 8]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 1
call fcn.00428d90
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.00428a42
lea ecx, [ebp + 0xc]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
call fcn.00429c01
ret 8
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
jmp 0x40a504
call sub.mfc90u.dll_AfxThrowInvalidArgException
int3