Function at 0x402cfa
Capabilities:
Copy file
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4188d5
mov eax, dword fs:[0]
push eax
sub esp, 0x280
mov eax, dword [0x42d028]
xor eax, esp
mov dword [esp + 0x278], eax
push ebx
push esi
push edi
mov eax, dword [0x42d028]
xor eax, esp
push eax
lea eax, [esp + 0x290]
mov dword fs:[0], eax
cmp byte [0x42de89], 0
mov edi, ecx
jne 0x402d4e
cmp byte [0x42de8a], 0
je 0x402d56
mov eax, dword [sym.imp.ASOHelper.dll_bool_CDlgMainWnd::m_bRunHiddenly]
mov byte [eax], 1
call dword [sym.imp.ASOHelper.dll_public_virtual:_int___thiscall_CDlgBaseAppDlg::OnInitDialog_void_]
push 0xfff9f3
mov dword [esp + 0x34], eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
lea ecx, [edi + 0x151c]
mov dword [0x42dc44], eax
lea eax, [edi + 0x1520]
push ecx
xor ebx, ebx
push eax
mov dword [eax], ebx
call fcn.0040101a
mov esi, edi
call fcn.004037e9
push edi
call fcn.004039e7
push edi
call fcn.00403c14
push edi
call fcn.00403e25
push edi
call fcn.00404017
push edi
call fcn.00404209
mov ecx, dword [edi + 0x14e0]
mov esi, 0x234
add ecx, esi
mov eax, dword [ecx + 8]
lea edx, [edi + 0x14f8]
push edx
push eax
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
mov ecx, dword [edi + 0x14e0]
add ecx, esi
mov eax, dword [ecx + 8]
lea edx, [edi + 0x14fc]
push edx
push eax
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
mov ecx, dword [edi + 0x14e0]
add ecx, esi
mov eax, dword [ecx + 8]
lea edx, [edi + 0x1500]
push edx
push eax
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
mov ecx, dword [edi + 0x14e0]
add ecx, esi
mov eax, dword [ecx + 8]
lea edx, [edi + 0x1504]
push edx
push eax
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
cmp byte [0x42de89], bl
je 0x402e53
push ebx
mov ecx, edi
call sub.mfc90u.dll_CWnd::ShowWindow
mov esi, edi
call fcn.004051a3
mov esi, dword [sym.imp.USER32.dll_SetTimer]
push ebx
push 0x80
push 0x466
push dword [edi + 0x20]
call esi
push ebx
push 0x1000
push 0x496
push dword [edi + 0x20]
call esi
jmp 0x403123
lea ecx, [esp + 0x14]
call dword [0x41a85c]
mov dword [esp + 0x298], ebx
call sub.mfc90u.dll_AfxGetModuleState
mov eax, dword [eax + 8]
lea ecx, [esp + 0x14]
push ecx
push eax
call dword [sym.imp.ASOHelper.dll_wchar_t_const____cdecl_GetAppPath_struct_HINSTANCE_____class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_____]
pop ecx
pop ecx
push str.DefragReport
lea ecx, [esp + 0x14]
call dword [0x41a924]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
mov byte [esp + 0x29c], 1
mov ebx, dword [sym.imp.ASOHelper.dll_enum_PCO_ERROR_CODES___cdecl_STPathAppend_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const__]
push eax
call ebx
pop ecx
pop ecx
lea ecx, [esp + 0x10]
mov byte [esp + 0x298], 0
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov esi, 0x42de08
push esi
lea ecx, [esp + 0x24]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
push str.DefragReport_footer_left.jpg
lea ecx, [esp + 0x14]
mov byte [esp + 0x29c], 2
call dword [0x41a924]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x2a0], 3
call ebx
pop ecx
pop ecx
lea ecx, [esp + 0x10]
mov byte [esp + 0x298], 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]
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.ASOHelper.dll_enum_PCO_ERROR_CODES___cdecl_DoesPathExists_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const__]
pop ecx
test eax, eax
jne 0x40310d
lea ecx, [esp + 0x18]
call dword [0x41a85c]
lea ecx, [esp + 0x18]
mov byte [esp + 0x298], 4
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push esi
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
push ecx
mov byte [esp + 0x2a0], 5
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.DefragReport
call dword [0x41a924]
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x2a4], 4
call fcn.00402ad1
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x29c], 6
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x298], 4
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x250
lea eax, [esp + 0x38]
push 0
push eax
call sub.MSVCR90.dll_memset
lea eax, [esp + 0x38]
push str..jpg
push eax
lea esi, [esp + 0x28]
call fcn.00406396
mov eax, dword [eax]
add esp, 0x14
lea ecx, [esp + 0x34]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
lea ecx, [esp + 0x2c]
mov esi, eax
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 esi, 0xffffffff
je 0x403103
push 0x41b744
lea eax, [esp + 0x64]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4030e8
push 0x41b748
lea eax, [esp + 0x64]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4030e8
test byte [esp + 0x34], 4
jne 0x4030e8
test dword [esp + 0x34], 0x400
jne 0x4030e8
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x14]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x29c], 7
call dword [0x41a924]
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x14]
push eax
mov byte [esp + 0x2a0], 8
call ebx
pop ecx
pop ecx
lea ecx, [esp + 0x24]
mov byte [esp + 0x298], 7
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 eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x29c], 9
call dword [0x41a924]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x2c]
push eax
mov byte [esp + 0x2a0], 0xa
call ebx
pop ecx
pop ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0
push dword [esp + 0x14]
push dword [esp + 0x30]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea ecx, [esp + 0x28]
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, [esp + 0x10]
mov byte [esp + 0x298], 4
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 eax, [esp + 0x34]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x402fdf
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [esp + 0x18]
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, [esp + 0x20]
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, [esp + 0x14]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
xor ebx, ebx
cmp byte [0x42de8b], 0
je 0x40313d
push ebx
push 0x20
push 0x465
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x290]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x278]
xor ecx, esp
call fcn.00414f74
mov esp, ebp
pop ebp
ret