Function at 0x402d0b
Capabilities:
Delete file

Disassembly:
jmp 0x42c6d0
push 0xffffffffffffffff
push 0x526d7f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0xc], esi
mov dword [esi], vtable.CFotoCanvasFrame.1.0
mov dword [esi + 0xc0], vtable.CFotoCanvasFrame.0
mov edi, dword [esi + 0x21ec]
mov dword [esp + 0x1c], 0x16
test edi, edi
je 0x42c723
mov ecx, edi
call fcn.00492f70
push edi
call sub.MFC42.DLL_operatordelete
add esp, 4
mov eax, dword [esi + 0x222c]
push eax
call sub.MFC42.DLL_operatordelete
mov edi, dword [esi + 0x2498]
add esp, 4
test edi, edi
je 0x42c74c
mov ecx, edi
call fcn.00492f70
push edi
call sub.MFC42.DLL_operatordelete
add esp, 4
mov edi, dword [esi + 0x2490]
test edi, edi
je 0x42c766
mov ecx, edi
call fcn.00492f70
push edi
call sub.MFC42.DLL_operatordelete
add esp, 4
mov edi, dword [esi + 0x2494]
test edi, edi
je 0x42c780
mov ecx, edi
call fcn.00492f70
push edi
call sub.MFC42.DLL_operatordelete
add esp, 4
mov ecx, dword [esi + 0x24cc]
test ecx, ecx
je 0x42c790
mov eax, dword [ecx]
push 1
call dword [eax]
mov ecx, dword [esi + 0x24d0]
test ecx, ecx
je 0x42c7a0
mov edx, dword [ecx]
push 1
call dword [edx]
mov cl, byte [esi + 0x24d4]
lea eax, [esi + 0x24d4]
test cl, cl
je 0x42c7b7
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, dword [esi + 0x25fc]
test edi, edi
je 0x42c7d1
mov ecx, edi
call fcn.004df1c0
push edi
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esi + 0xba0]
call fcn.00402095
mov eax, dword [esi + 0xf4]
lea ebp, [esi + 0xe4]
test eax, eax
je 0x42c818
mov eax, dword [ebp + 8]
xor edi, edi
test eax, eax
jle 0x42c818
cmp edi, eax
jge 0x42c805
test edi, edi
jl 0x42c805
mov eax, dword [ebp + 4]
mov eax, dword [eax + edi*4]
jmp 0x42c807
xor eax, eax
push eax
call sub.MFC42.DLL_operatordelete
mov eax, dword [ebp + 8]
add esp, 4
inc edi
cmp edi, eax
jl 0x42c7f9
mov eax, dword [ebp + 4]
push eax
call sub.MFC42.DLL_operatordelete
push 0x80
call sub.MFC42.DLL_operatornew
mov dword [ebp + 4], eax
mov dword [ebp + 8], 0
mov dword [ebp + 0xc], 0x1f
mov dword [ebp + 0x14], 0x40
mov eax, dword [esi + 0x2480]
add esp, 8
test eax, eax
je 0x42c857
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
lea ecx, [esi + 0x2600]
mov byte [esp + 0x1c], 0x15
call fcn.004fe4a8
mov eax, dword [esi + 0x25f0]
mov byte [esp + 0x1c], 0x14
test eax, eax
mov dword [esi + 0x25e0], 0x5340e0
je 0x42c8b3
mov eax, dword [esi + 0x25e8]
xor edi, edi
test eax, eax
jle 0x42c8b3
cmp edi, eax
jge 0x42c8a8
test edi, edi
jl 0x42c8a8
mov ecx, dword [esi + 0x25e4]
mov ecx, dword [ecx + edi*4]
test ecx, ecx
je 0x42c8a8
push 1
call fcn.00402c9d
mov eax, dword [esi + 0x25e8]
inc edi
cmp edi, eax
jl 0x42c890
mov eax, dword [esi + 0x25e4]
push eax
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esi + 0x22f4]
mov byte [esp + 0x1c], 0x13
call fcn.004d0340
lea edi, [esi + 0x228c]
mov dword [esp + 0x10], edi
lea ecx, [edi + 4]
mov byte [esp + 0x1c], 0x17
call sub.MFC42.DLL_CString::CString
mov ecx, edi
mov byte [esp + 0x1c], 0x12
call sub.MFC42.DLL_CString::CString
mov eax, dword [esi + 0x221c]
mov byte [esp + 0x1c], 0x11
test eax, eax
mov dword [esi + 0x220c], 0x5340ec
je 0x42c941
mov eax, dword [esi + 0x2214]
xor edi, edi
test eax, eax
jle 0x42c941
cmp edi, eax
jge 0x42c936
test edi, edi
jl 0x42c936
mov edx, dword [esi + 0x2210]
mov ecx, dword [edx + edi*4]
test ecx, ecx
je 0x42c936
push 1
call fcn.00401e33
mov eax, dword [esi + 0x2214]
inc edi
cmp edi, eax
jl 0x42c91e
mov eax, dword [esi + 0x2210]
push eax
call sub.MFC42.DLL_operatordelete
mov eax, dword [esi + 0x2200]
add esp, 4
test eax, eax
mov byte [esp + 0x1c], 0x10
mov dword [esi + 0x21f0], 0x5340ec
je 0x42c99c
mov eax, dword [esi + 0x21f8]
xor edi, edi
test eax, eax
jle 0x42c99c
cmp edi, eax
jge 0x42c991
test edi, edi
jl 0x42c991
mov eax, dword [esi + 0x21f4]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x42c991
push 1
call fcn.00401e33
mov eax, dword [esi + 0x21f8]
inc edi
cmp edi, eax
jl 0x42c979
mov eax, dword [esi + 0x21f4]
push eax
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esi + 0xba0]
mov byte [esp + 0x1c], 0xf
call fcn.004028fb
lea edi, [esi + 0xb98]
mov dword [esp + 0x10], edi
mov dword [edi], vtable.CMenu.0
mov ecx, edi
mov byte [esp + 0x1c], 0x18
call sub.MFC42.DLL_CMenu::DestroyMenu
mov dword [edi], vtable.CObject.0
lea edi, [esi + 0xb90]
mov dword [esp + 0x10], edi
mov dword [edi], vtable.CMenu.0
mov ecx, edi
mov byte [esp + 0x1c], 0x19
call sub.MFC42.DLL_CMenu::DestroyMenu
mov dword [edi], vtable.CObject.0
lea edi, [esi + 0xa78]
mov dword [esp + 0x10], edi
lea ecx, [edi + 0xfc]
mov byte [esp + 0x1c], 0x1e
call fcn.00401df2
lea ecx, [edi + 0xe0]
mov byte [esp + 0x1c], 0x1d
call fcn.00402969
lea ecx, [edi + 0xdc]
mov byte [esp + 0x1c], 0x1c
call sub.MFC42.DLL_CString::CString
lea ecx, [edi + 0xd8]
mov byte [esp + 0x1c], 0x1b
call sub.MFC42.DLL_CString::CString
lea ecx, [edi + 0x7c]
mov byte [esp + 0x1c], 0x1a
call fcn.00402356
mov ecx, edi
mov byte [esp + 0x1c], 0xc
call fcn.004fe4d2
lea ecx, [esi + 0x838]
mov byte [esp + 0x1c], 0xb
call fcn.00402130
lea ecx, [esi + 0x7f8]
mov byte [esp + 0x1c], 0xa
call sub.MFC42.DLL_CProgressCtrl::CProgressCtrl
lea ecx, [esi + 0x700]
mov byte [esp + 0x1c], 9
call fcn.00401aff
lea edi, [esi + 0x5b4]
mov dword [esp + 0x10], edi
lea ecx, [edi + 0x13c]
mov byte [esp + 0x1c], 0x20
call fcn.00401cda
lea ecx, [edi + 0x98]
mov byte [esp + 0x1c], 0x1f
call fcn.00402e14
mov ecx, edi
mov byte [esp + 0x1c], 8
call fcn.00402bc1
lea ecx, [esi + 0x498]
mov byte [esp + 0x1c], 7
call fcn.004016e5
lea ecx, [esi + 0x37c]
mov byte [esp + 0x1c], 6
call fcn.004016e5
lea ecx, [esi + 0x260]
mov byte [esp + 0x1c], 5
call fcn.004016e5
mov byte [esp + 0x1c], 4
lea ecx, [esi + 0x1e0]
call fcn.004fe4b4
lea ecx, [esi + 0x108]
mov byte [esp + 0x1c], 3
call fcn.0048c3d0
lea edi, [esi + 0x100]
mov dword [esp + 0x10], edi
mov dword [edi], vtable.CMenu.0
mov ecx, edi
mov byte [esp + 0x1c], 0x21
call sub.MFC42.DLL_CMenu::DestroyMenu
mov ecx, ebp
mov dword [edi], vtable.CObject.0
mov byte [esp + 0x1c], 1
call fcn.00401d8e
lea ecx, [esi + 0xc8]
mov byte [esp + 0x1c], 0
call fcn.004032ab
mov ecx, esi
mov dword [esp + 0x1c], 0xffffffff
call fcn.004fe4ba
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x14
ret