Function at 0x4086f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x424149
mov eax, dword fs:[0]
push eax
sub esp, 0x60
push ebx
push esi
push edi
mov eax, dword [0x44c028]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
mov edi, dword [ebx + 0x8c]
add ebx, 0x118
test edi, edi
jne 0x40873c
push str.NULL_pointer
push ebx
call fcn.00408d9a
jmp 0x408744
lea esi, [ebx + 4]
call fcn.0040919b
push str.result_clearrow
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_class]
and dword [esp + 0x78], 0
lea ecx, [esp + 0x44]
call sub.mfc90u.dll_CStringArray::CStringArray
push 0
lea eax, [esp + 0x48]
push eax
push ecx
mov byte [esp + 0x84], 1
lea eax, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
call dword [0x436a20]
push ebx
call fcn.00408f14
lea ecx, [esp + 0x44]
mov byte [esp + 0x78], 0
call fcn.004203d4
or dword [esp + 0x78], 0xffffffff
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]
lea ecx, [esp + 0x30]
call sub.mfc90u.dll_CStringArray::CStringArray
mov dword [esp + 0x78], 2
mov eax, dword [0x4a10a4]
mov ecx, dword [eax]
mov ebx, 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 dword [esp + 0x14], ecx
mov edi, 0x438cc8
cmp ecx, eax
je 0x408aab
call fcn.00401009
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x38]
call sub.mfc90u.dll_CStringArray::SetSize
lea esi, [esp + 0x44]
call fcn.00401243
mov byte [esp + 0x78], 3
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x58]
add ecx, 0x10
push eax
call fcn.00406625
mov esi, eax
mov byte [esp + 0x78], 4
mov eax, dword [esi]
mov dword [esp + 0x44], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x48], eax
lea eax, [esi + 8]
push eax
lea ecx, [esp + 0x50]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea eax, [esi + 0xc]
push eax
lea ecx, [esp + 0x54]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
add esi, 0x10
push esi
lea ecx, [esp + 0x58]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
lea esi, [esp + 0x58]
call fcn.00404641
lea ecx, [esp + 0x10]
call dword [0x436ac8]
lea ecx, [esp + 0x24]
call dword [0x436ac8]
push edi
push str.IDS_D_PERCENT
lea eax, [esp + 0x28]
push eax
mov ecx, 0x4a0f68
mov byte [esp + 0x84], 6
call ebx
mov byte [esp + 0x78], 7
push dword [esp + 0x44]
mov eax, dword [eax]
push eax
lea eax, [esp + 0x18]
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, 0xc
lea ecx, [esp + 0x20]
mov byte [esp + 0x78], 6
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 + 0x10]
push eax
push dword [esp + 0x3c]
lea ecx, [esp + 0x38]
call sub.mfc90u.dll_CStringArray::SetAtGrow
mov eax, dword [esp + 0x48]
cmp eax, 0x1d
ja 0x408978
je 0x408971
cmp eax, 0x13
ja 0x408927
je 0x40891d
sub eax, 7
je 0x408913
dec eax
je 0x408909
sub eax, 3
je 0x4088ff
dec eax
je 0x4088ff
sub eax, 4
je 0x4088f5
dec eax
jne 0x408a02
push str.Media_Player1.gif
jmp 0x4089f5
push str.Media_Center1.gif
jmp 0x4089f5
push str.IE1.gif
jmp 0x4089f5
push str.General1.gif
jmp 0x4089f5
push str.Fixit1.gif
jmp 0x4089f5
push str.Office1.gif
jmp 0x4089f5
sub eax, 0x14
je 0x408967
dec eax
je 0x40891d
dec eax
je 0x40895d
dec eax
je 0x408953
dec eax
je 0x408949
dec eax
jne 0x408a02
push str.PowerPoint1.gif
jmp 0x4089f5
push str.outlook_express1.gif
jmp 0x4089f5
push str.Outlook1.gif
jmp 0x4089f5
push str.OneNote1.gif
jmp 0x4089f5
push str.OfficeCommunicator1.gif
jmp 0x4089f5
push str.Streetstips1.gif
jmp 0x4089f5
cmp eax, 0x31
ja 0x4089c6
je 0x4089bf
sub eax, 0x1f
je 0x4089b8
push 2
pop ecx
sub eax, ecx
je 0x4089b1
sub eax, 3
je 0x4089aa
sub eax, ecx
je 0x4089aa
sub eax, ecx
je 0x4089a3
sub eax, ecx
jne 0x408a02
push str.Zune1.gif
jmp 0x4089f5
push str.Word1.gif
jmp 0x4089f5
push str.Windows1.gif
jmp 0x4089f5
push str.Windows_Vista1.gif
jmp 0x4089f5
push str.System_Center_Configuration_Manager1.gif
jmp 0x4089f5
push str.Adobe.gif
jmp 0x4089f5
sub eax, 0x32
je 0x4089f0
dec eax
je 0x4089e9
dec eax
je 0x4089e2
dec eax
je 0x4088ff
dec eax
jne 0x408a02
push str.ControlPanel1.gif
jmp 0x4089f5
push str.Explorer1.gif
jmp 0x4089f5
push str.Taskbar1.gif
jmp 0x4089f5
push str.Desktop1.gif
push dword [esp + 0x3c]
lea ecx, [esp + 0x38]
call sub.mfc90u.dll_CStringArray::SetAtGrow_1
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x1c]
call dword [0x436a20]
lea eax, [esp + 0x18]
push eax
mov byte [esp + 0x7c], 8
push dword [esp + 0x3c]
lea ecx, [esp + 0x38]
call sub.mfc90u.dll_CStringArray::SetAtGrow
lea eax, [esp + 0x4c]
push eax
push dword [esp + 0x3c]
lea ecx, [esp + 0x38]
call sub.mfc90u.dll_CStringArray::SetAtGrow
push 0
lea eax, [esp + 0x34]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.addrow
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 eax, dword [ebp + 8]
add eax, 0x118
push eax
call fcn.00408f14
call fcn.00401009
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 + 0x24]
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]
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 esi, [esp + 0x44]
mov byte [esp + 0x78], 2
call fcn.00404641
lea eax, [esp + 0x14]
call fcn.00415984
mov eax, dword [esp + 0x14]
cmp eax, dword [0x4a10a4]
jne 0x4087d4
lea ecx, [esp + 0x28]
call dword [0x436ac8]
lea ecx, [esp + 0x1c]
call dword [0x436ac8]
push str.IDS_TOTAL_ERR_FOUND
lea ecx, [esp + 0x20]
mov byte [esp + 0x7c], 0xa
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator]
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push edi
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 edi
push str.IDS_PRB_ID
lea eax, [esp + 0x30]
mov esi, 0x4a0f68
push eax
mov ecx, esi
mov byte [esp + 0x88], 0xb
call ebx
mov byte [esp + 0x7c], 0xc
mov eax, dword [eax]
push eax
push dword [ebp + 8]
mov byte [esp + 0x84], 0xd
call fcn.00408cdd
lea ecx, [esp + 0x24]
mov byte [esp + 0x78], 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]
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.IDS_CATEGORY
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 edi
push str.IDS_CATEG_ID
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x88], 0xe
call ebx
mov byte [esp + 0x7c], 0xf
mov eax, dword [eax]
push eax
push dword [ebp + 8]
mov byte [esp + 0x84], 0x10
call fcn.00408cdd
lea ecx, [esp + 0x24]
mov byte [esp + 0x78], 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]
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.IDS_ERRORS
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 edi
push str.IDS_ERROR_ID
lea eax, [esp + 0x30]
push eax
mov ecx, esi
mov byte [esp + 0x88], 0x11
call ebx
mov byte [esp + 0x7c], 0x12
mov eax, dword [eax]
push eax
push dword [ebp + 8]
mov byte [esp + 0x84], 0x13
call fcn.00408cdd
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_clas]
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]
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]
or dword [esp + 0x78], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.004203d4
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4