Function at 0x406a5b
Capabilities:
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4223b1
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x3844
call fcn.0041eaa0
mov eax, dword [0x436028]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 8]
mov ebx, edx
push 0x48
xor esi, esi
mov dword [ebp - 4], esi
mov edi, dword [sym.imp.MSVCR90.dll_memmove]
lea edx, [ebp - 0x3854]
push 0x43a418
push edx
mov dword [ebp - 0x26b0], ebx
mov dword [ebp - 0x26e4], eax
mov dword [ebp - 0x2760], ecx
mov dword [ebp - 0x273c], 3
mov dword [ebp - 0x280c], esi
call edi
add esp, 0xc
push 0x1000
lea eax, [ebp - 0x380c]
push 0x43a460
push eax
call edi
add esp, 0xc
lea ecx, [ebp - 0x26f4]
call fcn.0041dd7a
lea ecx, [ebp - 0x26cc]
mov byte [ebp - 4], 1
call fcn.0041dd7a
lea ecx, [ebp - 0x26e0]
push ecx
mov byte [ebp - 4], 2
call fcn.00409a50
push 0x206
lea eax, [ebp - 0x22a]
xor edx, edx
push esi
mov byte [ebp - 4], 3
push eax
mov word [ebp - 0x22c], dx
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0x206
lea edx, [ebp - 0x63a]
xor ecx, ecx
push esi
push edx
mov word [ebp - 0x63c], cx
call sub.MSVCR90.dll_memset
xor eax, eax
add esp, 0xc
push 0x60
mov dword [ebp - 0x26a3], eax
mov word [ebp - 0x269f], ax
mov byte [ebp - 0x269d], al
lea eax, [ebp - 0x269c]
push esi
push eax
mov byte [ebp - 0x26a4], 0
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0x42508c
lea ecx, [ebp - 0x26ac]
mov dword [ebp - 0x2708], esi
mov dword [ebp - 0x2704], esi
mov dword [ebp - 0x26fc], esi
mov dword [ebp - 0x26f8], esi
mov dword [ebp - 0x2710], esi
mov dword [ebp - 0x270c], 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 0x1fff
lea ecx, [ebp - 0x263b]
push esi
mov byte [ebp - 4], 4
push ecx
mov byte [ebp - 0x26a5], 1
mov byte [ebp - 0x263c], 0
call sub.MSVCR90.dll_memset
add esp, 0xc
mov esi, ebx
call fcn.00409190
mov edi, dword [sym.imp.ASOHelper.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 0x42508c
push str.IDS_STR_ENCRYPT_FILES
lea edx, [ebp - 0x2764]
push edx
mov ecx, 0x440670
call edi
mov byte [ebp - 4], 5
mov eax, dword [eax]
mov ecx, dword [0x4403ec]
push eax
add ecx, 0x6c0
call sub.mfc90u.dll_CWnd::SetWindowTextW
lea ecx, [ebp - 0x2764]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_ENCRYPT
lea eax, [ebp - 0x2778]
push eax
mov ecx, 0x440670
call edi
lea ecx, [ebp - 0x2734]
push ebx
push ecx
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.00409840
add esp, 8
mov byte [ebp - 4], 7
mov esi, dword [eax]
call fcn.00407cc0
lea ecx, [ebp - 0x2734]
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 - 0x2778]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_ENCRYPT
lea edx, [ebp - 0x276c]
push edx
mov ecx, 0x440670
call edi
lea ecx, [ebp - 0x2754]
push ebx
push ecx
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.00409840
add esp, 8
push eax
mov ecx, 0x440858
mov byte [ebp - 4], 9
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x2754]
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 - 0x276c]
mov byte [ebp - 4], 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]
mov ecx, dword [ebx]
call fcn.004096a0
test al, al
je 0x4062d9
lea ecx, [ebp - 0x26b8]
call dword [0x42497c]
push 0x42508c
push str.IDS_STR_ALREADY_ENCRYPT
lea edx, [ebp - 0x2730]
push edx
mov ecx, 0x440670
mov byte [ebp - 4], 0xa
call edi
push eax
lea eax, [ebp - 0x272c]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0xb
call fcn.00409840
add esp, 8
mov byte [ebp - 4], 0xc
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x26b8]
push ecx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Format]
add esp, 8
lea ecx, [ebp - 0x272c]
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 - 0x2730]
mov byte [ebp - 4], 0xa
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, dword [ebp - 0x26b8]
call fcn.00407cc0
lea edx, [ebp - 0x26b8]
push edx
mov ecx, 0x440858
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
push 0
push 1
call fcn.00408c90
lea ecx, [ebp - 0x26b8]
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 - 0x26ac]
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 - 0x26d0]
mov dword [ebp - method.CFileException.virtual_0], vtable.CFileException.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]
lea ecx, [ebp - 0x26cc]
mov byte [ebp - 4], 1
call sub.mfc90u.dll_CFile::CFile
lea ecx, [ebp - 0x26f4]
mov byte [ebp - 4], 0
call sub.mfc90u.dll_CFile::CFile
xor eax, eax
lea esp, [ebp - 0x3864]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x18]
xor ecx, ebp
call fcn.0041e2f2
mov esp, ebp
pop ebp
ret 4
push ecx
mov ecx, esp
mov dword [ebp - 0x2714], esp
push ebx
call dword [0x424970]
call fcn.00402980
add esp, 4
test al, al
je 0x40639b
lea ecx, [ebp - 0x26bc]
call dword [0x42497c]
push 0x42508c
push str.IDS_STR_SYSFILE_SKIPPED
lea eax, [ebp - 0x2740]
push eax
mov ecx, 0x440670
mov byte [ebp - 4], 0xd
call edi
push eax
lea ecx, [ebp - 0x2738]
push ecx
mov ecx, ebx
mov byte [ebp - 4], 0xe
call fcn.00409840
add esp, 8
mov byte [ebp - 4], 0xf
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x26bc]
push edx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Format]
add esp, 8
lea ecx, [ebp - 0x2738]
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 - 0x2740]
mov byte [ebp - 4], 0xd
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, dword [ebp - 0x26bc]
call fcn.00407cc0
lea eax, [ebp - 0x26bc]
push eax
mov ecx, 0x440858
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
push 0
push 1
call fcn.00408c90
lea ecx, [ebp - 0x26bc]
jmp 0x40626d
mov eax, dword [ebx]
lea ecx, [ebp - 0x26e0]
push ecx
push 0x10
push eax
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Open
test eax, eax
jne 0x406427
push 0x42508c
push str.IDS_STR_CANT_READING
lea edx, [ebp - 0x2748]
push edx
mov ecx, 0x440670
call edi
mov byte [ebp - 4], 0x10
mov eax, dword [eax]
push eax
lea edi, [ebp - 0x26e0]
call fcn.00407df0
lea ecx, [ebp - 0x2748]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_CANT_READING
lea eax, [ebp - 0x2750]
push eax
mov ecx, 0x440670
call dword [sym.imp.ASOHelper.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 eax
mov ecx, 0x440858
mov byte [ebp - 4], 0x11
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x2750]
jmp 0x40626d
lea ebx, [ebp - 0x26ac]
call fcn.00408010
test eax, eax
jne 0x4064a7
push 0x42508c
push str.IDS_STR_CANT_WRITE
lea ecx, [ebp - 0x2758]
push ecx
mov ecx, 0x440670
call edi
mov byte [ebp - 4], 0x12
mov eax, dword [eax]
push eax
lea edi, [ebp - 0x26e0]
call fcn.00407df0
lea ecx, [ebp - 0x2758]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_CANT_WRITE
lea edx, [ebp - 0x2774]
push edx
mov ecx, 0x440670
call dword [sym.imp.ASOHelper.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 eax
mov ecx, 0x440858
mov byte [ebp - 4], 0x13
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x2774]
jmp 0x40626d
mov ecx, dword [ebp - 0x26ac]
lea edx, [ebp - 0x22c]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x4064b3
mov eax, dword [ebp - 0x26b0]
mov eax, dword [eax]
call fcn.00405ec0
call fcn.0041ea26
mov esi, eax
mov ebx, edx
mov ecx, esi
or ecx, ebx
mov dword [ebp - 0x2724], esi
mov dword [ebp - 0x2720], ebx
jne 0x4065ad
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Close
lea ecx, [ebp - 0x26b4]
call dword [0x42497c]
push 0x42508c
push str.IDS_STR_FILESKIP2
lea edx, [ebp - 0x2770]
mov bl, 0x14
push edx
mov ecx, 0x440670
mov byte [ebp - 4], bl
call edi
mov esi, eax
push 0x42508c
push str.IDS_STR_FILESKIP1
lea eax, [ebp - 0x277c]
push eax
mov ecx, 0x440670
mov byte [ebp - 4], 0x15
call edi
mov edx, dword [ebp - 0x26b0]
mov byte [ebp - 4], 0x16
mov ecx, dword [esi]
push ecx
mov ecx, dword [edx]
mov edx, dword [eax]
push ecx
push edx
lea eax, [ebp - 0x26b4]
push str._s_s_s
push eax
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Format]
add esp, 0x14
lea ecx, [ebp - 0x277c]
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 - 0x2770]
mov byte [ebp - 4], bl
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, dword [ebp - 0x26b4]
call fcn.00407cc0
lea ecx, [ebp - 0x26b4]
push ecx
mov ecx, 0x440858
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x26b4]
jmp 0x40626d
lea edx, [ebp - 0x2710]
push edx
mov edx, dword [ebp - 0x26f0]
lea eax, [ebp - 0x26fc]
push eax
lea ecx, [ebp - 0x2708]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetFileTime]
push ebx
push esi
call fcn.00408c90
call fcn.00405de0
lea eax, [ebp - 0x2728]
push eax
mov dword [ebp - 0x2728], esi
call fcn.004090d0
call fcn.00405de0
cmp byte [0x4403f7], 0
je 0x406631
mov ecx, dword [ebp - 0x26b0]
mov eax, dword [ecx]
push eax
lea edx, [ebp - 0x2724]
lea ecx, [ebp - 0x26ac]
call fcn.004083b0
mov edx, dword [ebp - 0x26ac]
push 0x208
push edx
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.MSVCR90.dll_wcsncpy]
add esp, 0xc
push 0x80
lea ecx, [ebp - 0x22c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea edx, [ebp - 0x26e0]
push edx
push 0x1011
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x26cc]
call sub.mfc90u.dll_CFile::Open
test eax, eax
jne 0x4066d6
push 0x42508c
push str.IDS_STR_CANT_OPEN
lea ecx, [ebp - 0x275c]
push ecx
mov ecx, 0x440670
call edi
mov byte [ebp - 4], 0x17
mov eax, dword [eax]
push eax
lea edi, [ebp - 0x26e0]
call fcn.00407df0
lea ecx, [ebp - 0x275c]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_CANT_OPEN
lea edx, [ebp - 0x26e4]
push edx
mov ecx, 0x440670
call dword [sym.imp.ASOHelper.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 eax
mov ecx, 0x440858
mov byte [ebp - 4], 0x18
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x26e4]
jmp 0x40626d
mov eax, dword [ebp - 0x26b0]
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push 0x208
lea ecx, [ebp - 0x434]
push 0
push ecx
mov dword [ebp - 0x2714], eax
call sub.MSVCR90.dll_memset
mov esi, dword [ebp - 0x26e4]
mov eax, dword [esi]
mov ecx, dword [eax - 0xc]
add esp, 0xc
push ecx
push eax
lea edx, [ebp - 0x434]
push edx
call dword [sym.imp.MSVCR90.dll_wcsncpy]
add esp, 0xc
lea eax, [ebp - 0x2800]
push 3
lea ecx, [ebp - 0x434]
mov dword [ebp - 0x2804], eax
push ecx
lea eax, [ebp - 0x2804]
call fcn.00403620
mov ecx, dword [ebp - 0x2804]
lea edx, [ebp - 0x3854]
call fcn.0040a000
mov eax, dword [ebp - 0x2804]
lea edx, [ebp - 0x2800]
cmp eax, edx
je 0x406769
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
push 0x68
lea eax, [ebp - 0x26a4]
push 0
push eax
call sub.MSVCR90.dll_memset
mov ecx, dword [esi]
add esp, 0xc
lea edx, [ebp - 0x274c]
push edx
lea eax, [ebp - 0x2680]
push eax
call fcn.00408af0
mov byte [0x4403f6], 1
jmp 0x4067a0
mov cl, byte [0x4403f6]
test cl, cl
je 0x406a96
mov dl, byte [0x440652]
test dl, dl
je 0x406a96
call fcn.00405de0
push 0x2000
lea eax, [ebp - 0x263c]
push eax
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Read
mov esi, eax
mov dword [ebp - 0x2718], esi
test esi, esi
jle 0x406a96
push 0
push esi
call fcn.00408de0
cmp byte [ebp - 0x26a5], 0
je 0x406986
push 0x13
lea ecx, [ebp - 0x2694]
push str.SYSTWEAK_ENCRYPT
push ecx
call dword [sym.imp.MSVCR90.dll_strncpy]
mov edx, dword [ebp - 0x2760]
mov ebx, dword [edx]
add esp, 0xc
test ebx, ebx
je 0x406871
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jg 0x406871
lea edi, [eax + eax]
mov eax, edi
call fcn.0041ead0
mov esi, esp
mov dword [ebp - 0x10], esp
test esi, esi
je 0x40686b
mov eax, dword [ebp - 0x273c]
push 0
push 0
push edi
push esi
push 0xffffffffffffffff
push ebx
push 0
push eax
mov byte [esi], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov edi, dword [sym.imp.ASOHelper.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__]
neg eax
sbb eax, eax
and eax, esi
jmp 0x406873
mov edi, dword [sym.imp.ASOHelper.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__]
xor eax, eax
push 0x18
push eax
lea ecx, [ebp - 0x266c]
push ecx
call dword [sym.imp.MSVCR90.dll_strncpy]
mov ecx, dword [ebp - 0x2704]
mov eax, dword [ebp - 0x2708]
add esp, 0xc
mov dword [ebp - 0x2650], ecx
mov ecx, dword [ebp - 0x2710]
push 0
mov edx, 2
mov dword [ebp - 0x2654], eax
mov eax, dword [ebp - 0x26f8]
mov word [ebp - 0x269a], dx
mov edx, dword [ebp - 0x26fc]
mov dword [ebp - 0x2644], ecx
mov ecx, dword [ebp - 0x2720]
push 8
mov dword [ebp - 0x2648], eax
mov eax, dword [ebp - 0x2724]
mov dword [ebp - 0x264c], edx
mov edx, dword [ebp - 0x270c]
push ecx
push eax
mov dword [ebp - 0x2640], edx
mov dword [ebp - 0x2698], eax
call fcn.0041eb00
push 0x68
lea edx, [ebp - 0x26a4]
push edx
lea ecx, [ebp - 0x26cc]
mov word [ebp - 0x269c], ax
call sub.mfc90u.dll_CFile::Write
push 0x42508c
push str.IDS_STR_SUCCESS_WRITE
lea eax, [ebp - 0x2768]
push eax
mov ecx, 0x440670
mov byte [ebp - 0x26a5], 0
call edi
mov byte [ebp - 4], 0x19
mov esi, dword [eax]
call fcn.00407cc0
lea ecx, [ebp - 0x2768]
mov byte [ebp - 4], 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 0x42508c
push str.IDS_STR_SUCCESS_WRITE
lea ecx, [ebp - 0x2744]
push ecx
mov ecx, 0x440670
call edi
push eax
mov ecx, 0x440858
mov byte [ebp - 4], 0x1a
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
lea ecx, [ebp - 0x2744]
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, dword [ebp - 0x2718]
push 1
lea edx, [ebp - 0x3854]
push edx
mov eax, esi
lea ecx, [ebp - 0x263c]
call fcn.00409dd0
push esi
lea eax, [ebp - 0x263c]
push eax
lea ecx, [ebp - 0x26cc]
mov byte [ebp - 4], 0x1b
call sub.mfc90u.dll_CFile::Write
mov ebx, dword [ebp - 0x2718]
and ebx, 0x80000007
jns 0x4069c6
dec ebx
or ebx, 0xfffffff8
inc ebx
je 0x406a54
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov eax, ebx
neg eax
cdq
push 2
mov edi, edx
mov esi, eax
push edi
push esi
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Seek
and eax, edx
cmp eax, 0xffffffff
je 0x406a54
push ebx
lea ecx, [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Read
push 1
lea edx, [ebp - 0x3854]
push edx
mov eax, 8
lea ecx, [ebp - 0x20]
call fcn.00409dd0
lea ecx, [ebp - 0x26cc]
call fcn.00403790
push 8
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x26cc]
call sub.mfc90u.dll_CFile::Write
push 2
push edi
push esi
lea ecx, [ebp - 0x26cc]
call sub.mfc90u.dll_CFile::Seek
push ebx
lea ecx, [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x26cc]
call sub.mfc90u.dll_CFile::Write
mov dword [ebp - 4], 4
call fcn.00405de0
mov edi, dword [sym.imp.ASOHelper.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__]
jmp 0x4067a0
mov dl, byte [0x4403f6]
test dl, dl
je 0x406adf
mov al, byte [0x440652]
test al, al
je 0x406adf
lea ecx, [ebp - 0x2710]
push ecx
mov ecx, dword [ebp - 0x26c8]
lea edx, [ebp - 0x26fc]
push edx
lea eax, [ebp - 0x2708]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov edx, dword [ebp - 0x2714]
push edx
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x26cc]
call sub.mfc90u.dll_CFile::Close
lea ecx, [ebp - 0x26f4]
call sub.mfc90u.dll_CFile::Close
mov cl, byte [0x4403f6]
test cl, cl
je 0x406b7d
mov dl, byte [0x440652]
test dl, dl
je 0x406b7d
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x2700]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
mov edi, dword [ebp - 0x26b0]
lea ecx, [ebp - 0x2700]
push edi
push ecx
mov byte [ebp - 4], 0x1d
call dword [sym.imp.ASOHelper.dll_enum_PCO_ERROR_CODES___cdecl_ShMoveFile_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const___class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const__]
add esp, 8
lea ecx, [ebp - 0x2700]
mov esi, eax
mov byte [ebp - 4], 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]
test esi, esi
je 0x406b72
lea edx, [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push ecx
mov ecx, esp
mov dword [ebp - 0x274c], esp
push edi
call dword [0x424970]
call fcn.00405560
add esp, 4
call fcn.00405de0
inc dword [0x440634]
mov al, byte [0x440652]
xor ecx, ecx
cmp al, 1
sete cl
mov esi, ecx
lea ecx, [ebp - 0x26ac]
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 - 0x26d0]
mov dword [ebp - method.CFileException.virtual_0], vtable.CFileException.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]
lea ecx, [ebp - 0x26cc]
mov byte [ebp - 4], 1
call sub.mfc90u.dll_CFile::CFile
lea ecx, [ebp - 0x26f4]
mov byte [ebp - 4], 0
call sub.mfc90u.dll_CFile::CFile
mov eax, esi
jmp 0x4062b5