Function at 0x4077f0
Capabilities:
Enumerate gui resources

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x443354
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1ba4
call fcn.0043f9d0
mov eax, dword [0x455028]
xor eax, esp
mov dword [esp + 0x1ba0], eax
push ebx
push esi
push edi
mov eax, dword [0x455028]
xor eax, esp
push eax
lea eax, [esp + 0x1bb8]
mov dword fs:[0], eax
mov edi, dword [sym.imp.MSVCR90.dll__wcsicmp]
mov esi, ecx
mov eax, dword [esi + 0x48]
push str._UninstallNative
push eax
call edi
add esp, 8
test eax, eax
jne 0x407859
call sub.BottDefrag.dll_UninstallNative
jmp 0x407b09
mov ecx, dword [esi + 0x48]
push str._InstallNative
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40787f
call fcn.00407d80
push 0
call sub.BottDefrag.dll_SetRunCHK
add esp, 4
jmp 0x407b09
call fcn.00430370
call fcn.00407d80
mov edx, dword [esi + 0x48]
push edx
lea ecx, [esp + 0x18]
call dword [0x4446ac]
xor ebx, ebx
mov dword [esp + 0x1bc0], ebx
call fcn.00407cd0
test eax, eax
je 0x407942
mov eax, dword [esi + 0xb0]
cmp eax, ebx
je 0x4078c4
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0xb0], ebx
lea eax, [esp + 0x10]
push eax
push 0x407790
mov dword [esp + 0x18], ebx
call dword [sym.imp.USER32.dll_EnumWindows]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x407aff
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov eax, dword [esp + 0x10]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push ebx
push 0x1105
push eax
call esi
mov eax, dword [esp + 0x14]
cmp dword [eax - 0xc], ebx
je 0x407aff
mov ecx, dword [eax - 0xc]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x20]
push eax
push ebx
lea edx, [ecx + ecx + 2]
mov ecx, dword [esp + 0x18]
push 0x4a
push ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], 0x464
call esi
jmp 0x407aff
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x1c], 8
mov dword [esp + 0x20], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, esi
call sub.mfc90u.dll_CWinApp::InitInstance
push ebx
call sub.mfc90u.dll_AfxEnableControlContainer
add esp, 4
push 7
call sub.CrashReport.dll_Ordinal_1_1
mov eax, dword [esi + 0x48]
push str._BootTimeDefrag
push eax
call edi
add esp, 8
test eax, eax
jne 0x407a5a
call fcn.00407d50
call fcn.00407d10
test eax, eax
je 0x4079d4
call fcn.00407d50
lea ecx, [esp + 0x10]
push ecx
push 0x4077c0
mov dword [esp + 0x18], ebx
call dword [sym.imp.USER32.dll_EnumWindows]
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x407aff
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x407aff
push 4
lea ecx, [esp + 0x30]
push ecx
call fcn.0041c9d0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1bc0], 1
call sub.mfc90u.dll_CDialog::DoModal
cmp eax, 1
jne 0x407a2b
lea edx, [esp + 0x10]
push edx
push 0x407790
mov dword [esp + 0x18], ebx
call dword [sym.imp.USER32.dll_EnumWindows]
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x407a2b
mov ecx, dword [esp + 0x10]
push ebx
push ebx
push 0x108e
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
call sub.BottDefrag.dll_IsInstalNative
test eax, eax
jne 0x407a40
push ebx
push ebx
push ebx
push ebx
call sub.BottDefrag.dll_InstallNative
add esp, 0x10
call sub.BottDefrag.dll_ReSetStatus
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1bc0], bl
call fcn.0041cb20
jmp 0x407aff
lea edx, [esp + 0xa84]
push edx
call fcn.0040b9f0
mov byte [esp + 0x1bc0], 2
mov eax, dword [esi + 0x48]
push eax
lea ecx, [esp + 0xafc]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push ebx
lea ecx, [esp + 0xa88]
push 0x66
mov dword [esi + 0x20], ecx
call sub.mfc90u.dll_CDialog::Create
test eax, eax
je 0x407ad1
lea edx, [esp + 0xa84]
push edx
call fcn.00410ee0
lea ecx, [esp + 0xa84]
test eax, eax
je 0x407ab1
push ebx
jmp 0x407ab3
push 5
call sub.mfc90u.dll_CWnd::ShowWindow
push ebx
lea ecx, [esp + 0xa88]
call sub.mfc90u.dll_CWnd::RunModalLoop
lea ecx, [esp + 0xa84]
call fcn.0040ed20
call sub.BottDefrag.dll_IsInstalNative
test eax, eax
jne 0x407ae6
push ebx
push ebx
push ebx
push ebx
call sub.BottDefrag.dll_InstallNative
add esp, 0x10
call sub.BottDefrag.dll_ReSetStatus
lea eax, [esp + 0xa84]
push eax
mov byte [esp + 0x1bc4], bl
call fcn.00407b30
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 eax, eax
mov ecx, dword [esp + 0x1bb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1ba0]
xor ecx, esp
call fcn.0043ec6a
mov esp, ebp
pop ebp
ret