Function at 0x4050c0
Capabilities:
Access peb ldr_data
Get file attributes
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x407501
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_2]
lea ecx, [esp + 0x14]
mov dword [esp + 0x24], 0
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_2]
mov bl, 1
push str.OutputDrivers
lea ecx, [esp + 0x1c]
mov byte [esp + 0x28], bl
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push eax
lea edi, [esi + 0xe0]
lea eax, [esp + 0x14]
push edi
push eax
mov byte [esp + 0x30], 2
call fcn.004017c0
add esp, 0xc
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x28], 3
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x18]
mov byte [esp + 0x24], bl
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
push str.Program
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_3]
push eax
lea ecx, [esp + 0x1c]
push edi
push ecx
mov byte [esp + 0x30], 4
call fcn.004017c0
add esp, 0xc
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x28], 5
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 0x18]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x10]
mov byte [esp + 0x24], bl
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea edx, [esp + 0xc]
push edx
lea ecx, [esp + 0x14]
call dword [0x4081c0]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
push eax
call edi
cmp eax, 0x80000
lea ecx, [esp + 0x10]
ja 0x405296
test al, 0x10
je 0x405296
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0x14]
call dword [0x4081c0]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call edi
cmp eax, 0x80000
lea ecx, [esp + 0x10]
ja 0x4052e2
test al, 0x10
je 0x4052e2
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call dword [0x4081c0]
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
mov byte [esp + 0x30], 8
call dword [0x4081c0]
mov ecx, esi
mov byte [esp + 0x2c], bl
call fcn.00401650
mov ecx, dword [esi + 0x98]
push 0xfffffffffffffff0
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edx, dword [esi + 0x98]
or eax, 5
push eax
push 0xfffffffffffffff0
push edx
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov ecx, esi
call fcn.004048e0
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0xc]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0x1c
ret
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_2]
push 0x83
push 0
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c], 6
call dword [sym.imp.MFC71.DLL_ATL::CStringT::LoadStringA_1]
mov eax, dword [esp + 0xc]
push eax
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Format]
add esp, 0xc
push 0
lea ecx, [esp + 0x14]
jmp 0x40532c
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_2]
push 0x83
push 0
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c], 7
call dword [sym.imp.MFC71.DLL_ATL::CStringT::LoadStringA_1]
mov eax, dword [esp + 0xc]
push eax
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Format]
add esp, 0xc
push 0
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
push 0
mov ecx, esi
call sub.MFC71.DLL_CWnd::MessageBoxA
push 0x4086a0
push str.ICCInstallerRetValue
push str.SoftwareAmiableInstall
push 0x80000001
call fcn.00405ad0
add esp, 0x10
push 0xffffffffffffffff
call dword [sym.imp.MSVCR71.dll_exit]
int3