Function at 0x40e32e
Capabilities:
Get common file path
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x417d54
mov eax, dword fs:[0]
push eax
mov eax, 0x15cc
call fcn.004152d0
mov eax, dword [0x42b028]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
call sub.mfc90u.dll_AfxGetModuleState
mov ecx, dword [eax + 4]
call sub.mfc90u.dll_CCmdTarget::BeginWaitCursor
xor esi, esi
push 0x10140
mov dword [ebp - 4], esi
call sub.mfc90u.dll_new
pop ecx
cmp eax, esi
je 0x40e392
mov ecx, eax
call fcn.004016e4
mov dword [ebp - 0x15a8], eax
jmp 0x40e398
mov dword [ebp - 0x15a8], esi
push dword [ebp - 0x15a8]
call fcn.00401121
mov eax, dword [0x41fa74]
push dword [0x42bde0]
mov dword [ebp - 0x18], eax
mov eax, dword [0x41fa78]
mov dword [ebp - 0x14], eax
mov ax, word [0x42bddc]
mov word [ebp - 0x18], ax
call fcn.00403cd6
lea ecx, [ebp - 0x15d0]
call dword [0x419844]
mov eax, 0x100
push eax
lea ecx, [ebp - 0x940]
push ecx
push esi
push esi
push esi
push eax
lea eax, [ebp - 0x538]
push eax
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 1
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationW]
mov esi, 0x41fa7c
lea edi, [ebp - 0x28]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor eax, eax
lea edi, [ebp - 0x22]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ax, word [0x42bddc]
mov word [ebp - 0x28], ax
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x740], ax
lea eax, [ebp - 0x73e]
push eax
call sub.MSVCR90.dll_memset
add esp, 0xc
push 0x104
lea eax, [ebp - 0x740]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x15cc]
call dword [0x419724]
lea eax, [ebp - 0xb40]
push eax
lea eax, [ebp - 0xd40]
push eax
lea eax, [ebp - 0x1540]
push eax
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x15cc]
call dword [sym.imp.MSVCR90.dll__wsplitpath]
add esp, 0x14
lea ecx, [ebp - 0x1594]
call dword [0x419844]
lea ecx, [ebp - 0x15ac]
call dword [0x419844]
lea ecx, [ebp - 0x15b4]
call dword [0x419844]
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x15ac]
mov byte [ebp - 4], 5
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x15b4]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push dword [ebp - 0x15b4]
lea ecx, [ebp - 0x15ac]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Compare]
mov esi, 0x42022c
lea ecx, [ebp - 0x1594]
test eax, eax
jne 0x40e59d
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
push 0x41fa84
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea eax, [ebp - 0x15ac]
push eax
lea ecx, [ebp - 0x1594]
call dword [0x419708]
push 0x41fa88
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea eax, [ebp - 0x538]
push eax
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
push esi
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
mov edi, dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
push 0x41f998
push str.IDS_SYS_DRIVE
lea eax, [ebp - 0x1598]
push eax
mov ecx, 0x42bc88
call edi
push eax
lea ecx, [ebp - 0x1594]
mov byte [ebp - 4], 6
call dword [0x419708]
lea ecx, [ebp - 0x1598]
mov byte [ebp - 4], 5
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 0x420234
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
jmp 0x40e5ee
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
push 0x41fa84
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
push 0x420234
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea eax, [ebp - 0x538]
push eax
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
mov edi, dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
lea eax, [ebp - 0x1594]
push eax
lea ecx, [ebx + 0x6c0]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
push esi
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea eax, [ebp - 0x940]
push eax
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
push 0x41fa88
lea ecx, [ebp - 0x1594]
call dword [0x4196f4]
lea ecx, [ebx + 0x6f0]
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
mov esi, dword [ebp - 0x15a8]
lea eax, [ebp - 0x238]
push eax
push dword [esi + 0x24]
push dword [esi + 0x20]
call fcn.00402427
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebx + 0x6f0]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push 0x41f998
push str.IDS_FILES
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call edi
lea ecx, [ebp - 0x1598]
push 0x4206a8
push ecx
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.00406174
pop ecx
pop ecx
push eax
lea ecx, [ebx + 0x6f0]
mov byte [ebp - 4], 8
call dword [0x419708]
lea ecx, [ebp - 0x1598]
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 - 0x158c]
mov byte [ebp - 4], 5
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, [ebp - 0x238]
push eax
push dword [esi + 0x2c]
push dword [esi + 0x28]
call fcn.00402427
lea eax, [ebp - 0x238]
lea ecx, [ebx + 0x6f4]
push eax
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push 0x41f998
push str.IDS_DIRS
lea eax, [ebp - 0x1598]
push eax
mov ecx, 0x42bc88
call edi
lea ecx, [ebp - 0x158c]
push 0x4206a8
push ecx
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.00406174
pop ecx
pop ecx
push eax
lea ecx, [ebx + 0x6f4]
mov byte [ebp - 4], 0xa
call dword [0x419708]
lea ecx, [ebp - 0x158c]
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 - 0x1598]
mov byte [ebp - 4], 5
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 eax, dword [esi + 0x38]
mov dword [ebx + 0x6d8], eax
mov eax, dword [esi + 0x3c]
mov dword [ebx + 0x6dc], eax
mov eax, dword [ebx + 0x6d8]
mov dword [0x42be20], eax
lea eax, [ebp - 0x238]
push eax
push dword [ebx + 0x6dc]
push dword [ebx + 0x6d8]
call fcn.00402427
lea eax, [ebp - 0x238]
lea ecx, [ebx + 0x6d0]
push eax
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push 0x41f998
push str.IDS_FRAG_FILES_STATUS
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call edi
mov byte [ebp - 4], 0xb
mov eax, dword [eax]
push dword [ebx + 0x6d0]
mov edi, dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Format]
push eax
mov eax, dword [0x42bde0]
add eax, 0x14d0
push eax
call edi
add esp, 0xc
lea ecx, [ebp - 0x158c]
mov byte [ebp - 4], 5
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 0x41f998
push str.IDS_NUM_FILES
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
mov byte [ebp - 4], 0xc
push dword [ebx + 0x6d0]
mov eax, dword [eax]
lea ecx, [ebx + 0x714]
push eax
push ecx
mov dword [ebp - 0x15d4], ecx
call edi
add esp, 0xc
lea ecx, [ebp - 0x158c]
mov byte [ebp - 4], 5
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 eax, dword [esi + 0x40]
mov dword [ebx + 0x6e0], eax
mov eax, dword [esi + 0x44]
mov ecx, dword [ebx + 0x6e0]
mov dword [ebx + 0x6e4], eax
test eax, eax
ja 0x40e84c
cmp ecx, 0x100000
jbe 0x40e85c
shrd ecx, eax, 0x14
shr eax, 0x14
mov byte [ebx + 0x6e8], 1
jmp 0x40e86a
shrd ecx, eax, 0xa
shr eax, 0xa
mov byte [ebx + 0x6e8], 0
mov dword [ebx + 0x6e4], eax
lea eax, [ebp - 0x238]
push eax
push dword [ebx + 0x6e4]
mov dword [ebx + 0x6e0], ecx
push ecx
call fcn.00402427
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebx + 0x6ec]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
lea eax, [ebp - 0x15c8]
push eax
call fcn.00401166
xor ecx, ecx
mov dword [ebp - 0x15a0], ecx
mov dword [ebp - 0x159c], ecx
mov dword [ebx + 0x1a0], ecx
mov dword [ebx + 0x1a4], ecx
mov dword [ebp - 0x1598], ecx
cmp dword [ebp - 0x15c8], ecx
jbe 0x40e948
lea esi, [ebp - 0x1588]
call fcn.004016b9
mov byte [ebp - 4], 0xd
push dword [ebp - 0x1598]
mov ecx, esi
call fcn.004011a0
mov eax, dword [ebp - 0x1568]
cmp eax, 1
jbe 0x40e91c
mov ecx, dword [ebp - 0x1560]
add dword [ebp - 0x15a0], ecx
mov ecx, dword [ebp - 0x155c]
adc dword [ebp - 0x159c], ecx
add dword [ebx + 0x1a0], eax
adc dword [ebx + 0x1a4], 0
lea ecx, [ebp - 0x1588]
mov byte [ebp - 4], 5
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
inc dword [ebp - 0x1598]
mov eax, dword [ebp - 0x1598]
cmp eax, dword [ebp - 0x15c8]
jb 0x40e8d0
mov esi, dword [ebp - 0x15a8]
xor ecx, ecx
mov eax, dword [ebp - 0x15a0]
mov edx, dword [esi + 0x60]
mov dword [ebp - 0x1590], eax
mov eax, dword [ebp - 0x159c]
mov dword [ebp - 0x159c], eax
mov dword [ebp - 0x15a0], ecx
mov ecx, dword [esi + 0x64]
and eax, 0x7fffffff
mov dword [ebp - 0x158c], eax
fild qword [ebp - 0x1590]
mov eax, SysReAllocString
and dword [ebp - 0x159c], eax
fild qword [ebp - 0x15a0]
and dword [ebp - 0x15a0], 0
mov dword [ebp - 0x159c], ecx
and dword [ebp - 0x159c], eax
fchs
and ecx, 0x7fffffff
faddp st(1)
mov dword [ebp - 0x158c], ecx
mov dword [ebp - 0x1590], edx
fmul qword [0x4231e8]
fild qword [ebp - 0x1590]
fild qword [ebp - 0x15a0]
and dword [ebp - 0x15a0], 0
fchs
faddp st(1)
fld st(1)
fdivrp st(1)
fstp qword [ebx + 0x728]
mov ecx, dword [esi + 0x6c]
mov edx, dword [esi + 0x68]
mov dword [ebp - 0x159c], ecx
and dword [ebp - 0x159c], eax
and ecx, 0x7fffffff
mov dword [ebp - 0x158c], ecx
mov dword [ebp - 0x1590], edx
fild qword [ebp - 0x1590]
fild qword [ebp - 0x15a0]
lea ecx, [ebx + 0x6c4]
fchs
faddp st(1)
fdivp st(1)
fstp qword [ebx + 0x738]
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
lea ecx, [ebx + 0x6c8]
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::Empty]
fld qword [ebx + 0x728]
push ecx
push ecx
fstp qword [esp]
lea eax, [ebx + 0x6c4]
push str._0.2f
push eax
call edi
push dword [ebx + 0x6c4]
call dword [sym.imp.MSVCR90.dll__wtof]
add esp, 0xc
fstp qword [esp]
call fcn.0040e2e6
pop ecx
fstp qword [ebx + 0x728]
pop ecx
push 0x421e9c
lea ecx, [ebx + 0x6c4]
call dword [0x4196f4]
fld qword [ebx + 0x738]
push ecx
push ecx
fstp qword [esp]
lea eax, [ebx + 0x6c8]
push str._0.2f
push eax
call edi
push dword [ebx + 0x6c8]
call dword [sym.imp.MSVCR90.dll__wtof]
add esp, 0xc
fstp qword [esp]
call fcn.0040e2e6
pop ecx
pop ecx
push 0x421e9c
fstp qword [ebx + 0x738]
lea ecx, [ebx + 0x6c8]
call dword [0x4196f4]
lea eax, [ebx + 0x6c4]
lea ecx, [ebx + 0x70c]
push eax
mov dword [ebp - 0x159c], ecx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x15b0]
call dword [0x419844]
mov byte [ebp - 4], 0xe
movzx eax, word [0x42bddc]
push 1
push eax
lea ecx, [ebp - 0x15c0]
call dword [0x4195fc]
push 0x41f998
push 0x421ea0
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
mov byte [ebp - 4], 0xf
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
mov byte [ebp - 4], 0x10
push dword [ebx + 0x6c4]
mov eax, dword [eax]
push dword [ebp - 0x15c0]
push eax
lea eax, [ebp - 0x15b0]
push eax
call edi
add esp, 0x10
lea ecx, [ebp - 0x158c]
mov byte [ebp - 4], 0xf
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 [0x42bde0]
lea eax, [ebp - 0x15b0]
push eax
add ecx, 0x14cc
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
mov ecx, dword [0x42bde0]
call fcn.00403b00
lea ecx, [ebp - 0x15bc]
call dword [0x419844]
push 0x41f998
push str.IDS_FRAGMENTATION_RES_ONLYSCAN
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
mov byte [ebp - 4], 0x11
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
mov byte [ebp - 4], 0x12
push dword [ebx + 0x6c4]
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x15bc]
push eax
call edi
add esp, 0xc
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
mov ecx, dword [0x42bde0]
lea eax, [ebp - 0x15bc]
push eax
add ecx, 0x14dc
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
mov ecx, dword [0x42bde0]
call fcn.004040d9
lea ecx, [ebp - 0x15a4]
call dword [0x419844]
lea eax, [ebp - 0x538]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x15a4]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
mov eax, dword [ebp - 0x15a4]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x1598], eax
test eax, eax
jne 0x40ec62
push 0x41f998
push str.IDS_LOCAL_DISK
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
push eax
lea ecx, [ebp - 0x15a4]
mov byte [ebp - 4], 0x14
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
cmp dword [ebp - 0x1598], 8
jle 0x40ecdf
push 8
push 0
lea eax, [ebp - 0x158c]
push eax
lea ecx, [ebp - 0x15a4]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Mid]
push eax
lea ecx, [ebp - 0x15a4]
mov byte [ebp - 4], 0x15
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
lea eax, [ebp - 0x158c]
push 0x41a718
push eax
lea esi, [ebp - 0x15a4]
call fcn.004063b3
pop ecx
pop ecx
push eax
mov ecx, esi
mov byte [ebp - 4], 0x16
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
mov esi, dword [ebp - 0x15a8]
push dword [ebp - 0x15c0]
mov eax, dword [0x42bde0]
push dword [ebp - 0x15a4]
add eax, 0x14d8
push str._s___s:_
push eax
call edi
mov ecx, dword [0x42bde0]
add esp, 0x10
call fcn.00403ee7
push 0x41f998
push str.IDS_FRAG_FOUND
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
mov byte [ebp - 4], 0x17
mov ecx, dword [0x42bde0]
push dword [ecx + 0x14d8]
mov eax, dword [eax]
push dword [ebx + 0x6c4]
push eax
lea eax, [ebx + 0x708]
push eax
call edi
add esp, 0x10
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
push dword [ebx + 0x1a4]
mov ecx, dword [ebx + 0x6e4]
push dword [ebx + 0x1a0]
mov eax, dword [ebx + 0x6e0]
push ecx
push eax
call fcn.0040ded2
fstp dword [ebx + 0x1a8]
push 0
push 0
push dword [ebx + 0x6e4]
push dword [ebx + 0x6e0]
call fcn.0040ded2
fstp dword [ebx + 0x1ac]
fld qword [ebx + 0x738]
add esp, 0x18
fstp qword [esp]
lea eax, [ebx + 0x6cc]
push str._.2f__
push eax
call edi
add esp, 0x10
lea ecx, [ebp - 0x15b8]
call dword [0x419844]
push 0x41f998
push str.IDS_FRAGMENTATION_RES_ONLYSCAN
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
mov byte [ebp - 4], 0x18
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
mov byte [ebp - 4], 0x19
push dword [ebx + 0x6cc]
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x15b8]
push eax
call edi
add esp, 0xc
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
mov ecx, dword [0x42bde0]
lea eax, [ebp - 0x15b8]
push eax
add ecx, 0x14e0
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
mov ecx, dword [0x42bde0]
call fcn.004042cb
lea ecx, [ebp - 0x15c4]
call dword [0x419844]
push ecx
mov byte [ebp - 4], 0x1a
fld qword [ebx + 0x728]
push ecx
fstp qword [esp]
lea eax, [ebp - 0x15c4]
push str._0.2f__
push eax
call edi
fld qword [ebx + 0x738]
pop ecx
pop ecx
fstp qword [esp]
lea eax, [ebp - 0x15c4]
push str._0.2f__
push eax
call edi
mov eax, dword [esi + 0x8c]
mul dword [esi + 0x88]
add esp, 0x10
push dword [esi + 0xac]
push dword [esi + 0xa8]
push edx
push eax
call fcn.00415520
push 0x80
lea ecx, [ebp - 0x338]
push ecx
push 0x400
push edx
push eax
call dword [sym.imp.K9PCUhelper.dll_int___cdecl_BytesToString_unsigned_long_long_unsigned___int64___unsigned_int__wchar_t___unsigned_int_]
add esp, 0x14
lea eax, [ebp - 0x338]
lea ecx, [ebx + 0x710]
push eax
mov dword [ebp - 0x1598], ecx
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
mov ecx, dword [0x42bde0]
call dword [sym.imp.K9PCUhelper.dll_public:_void___thiscall_CDlgBaseAppDlg::EnableCloseButton_void_]
mov ecx, dword [0x42bde0]
xor esi, esi
inc esi
push esi
push esi
push esi
push esi
push esi
call dword [sym.imp.K9PCUhelper.dll_public:_void___thiscall_CDlgBaseAppDlg::EnableTopButtons_bool__bool__bool__bool__bool_]
mov eax, dword [0x42bde0]
mov ecx, dword [eax + 0x1430]
call dword [sym.imp.K9PCUhelper.dll_public:_void___thiscall_CDlgLeftDlgBase::EnableRegnCheckUpdateButton_void_]
push esi
push esi
xor eax, eax
push eax
push eax
push esi
push eax
push eax
mov eax, dword [0x42bde0]
mov ecx, dword [eax + 0x1430]
call dword [sym.imp.K9PCUhelper.dll_public:_void___thiscall_CDlgLeftDlgBase::EnableLeftButtons_bool__bool__bool__bool__bool__bool__bool_]
lea esi, [ebx + 0x748]
xor edi, edi
call fcn.00408a5c
lea edi, [ebx + 0x720]
push edi
mov eax, esi
call fcn.004089fc
push edi
mov eax, esi
call fcn.004089fc
push edi
mov eax, esi
call fcn.004089fc
lea esi, [ebx + 0x75c]
xor edi, edi
call fcn.00408a5c
lea eax, [ebp - 0x158c]
push eax
mov edi, 0x4a41a6
mov eax, esi
mov dword [ebp - 0x158c], edi
call fcn.004089fc
lea eax, [ebp - 0x158c]
push eax
mov eax, esi
mov dword [ebp - 0x158c], edi
call fcn.004089fc
lea eax, [ebp - 0x158c]
push eax
mov eax, esi
mov dword [ebp - 0x158c], edi
call fcn.004089fc
xor edi, edi
cmp dword [ebx + 0x6dc], edi
ja 0x40eff3
jb 0x40efa4
cmp dword [ebx + 0x6d8], 0x64
jae 0x40eff3
fld1
fcomp qword [ebx + 0x728]
fnstsw ax
test ah, 0x41
jne 0x40eff3
push 0x41f998
push str.IDS_NO
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
push eax
lea ecx, [ebx + 0x718]
mov byte [ebp - 4], 0x1b
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
push edi
jmp 0x40f032
push 0x41f998
push str.IDS_YES
lea eax, [ebp - 0x158c]
push eax
mov ecx, 0x42bc88
call dword [sym.imp.K9PCUhelper.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______thiscall_CMainApp::LoadStringW_wchar_t_const___wchar_t_const__]
push eax
lea ecx, [ebx + 0x718]
mov byte [ebp - 4], 0x1c
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea ecx, [ebp - 0x158c]
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_____::CStringT_wchar_t_clas]
push 1
lea esi, [ebx + 0x258]
mov ecx, esi
call sub.mfc90u.dll_CWnd::EnableWindow
push 0xffffffffffffffff
add ebx, 0x784
push edi
mov ecx, ebx
call sub.mfc90u.dll_CStringArray::SetSize
push dword [ebp - 0x159c]
mov eax, dword [ebx + 8]
push eax
mov ecx, ebx
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
push dword [ebp - 0x1598]
mov eax, dword [ebx + 8]
push eax
mov ecx, ebx
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
push dword [ebp - 0x15d4]
mov eax, dword [ebx + 8]
push eax
mov ecx, ebx
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
call dword [sym.imp.K9PCUhelper.dll_public:_static_bool___cdecl_CMainApp::IsRegisteredVersion_void_]
test al, al
jne 0x40f095
push 1
mov ecx, esi
call sub.mfc90u.dll_CWnd::EnableWindow
push dword [ebp - 0x15a8]
call sub.mfc90u.dll_delete
pop ecx
lea ecx, [ebp - 0x15c4]
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 - 0x15b8]
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 - 0x15a4]
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 - 0x15bc]
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 - 0x15c0]
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 - 0x15b0]
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 - 0x15b4]
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 - 0x15ac]
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 - 0x1594]
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 - 0x15cc]
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 - 0x15d0]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
or dword [ebp - 4], 0xffffffff
call fcn.00408b7d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00414918
leave
ret