1、Win32应用程序入口识别
Ollydbg一进入程序停留的地方并不是我们自己定义的函数入口点,因此我们需要寻找EIP。
前面已经讲过入口函数参数的意义,再拿来复习复习
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
WinMain的第一个参数叫“实例句柄”。在Windows程序中,句柄无非就是一个数值,程序用他来标识某些东西在早期Windows程序中,当多路并发运行同一个程序时,就需要为那个程序创建多个实例。同一个程序的所有实例都共享代码以及只读存储(即菜单或对话框模板之类的资源)。一个程序可以通过查看hPrevInstance参数从而知道是否有它的其他实例正在运行。
在32位Windows中,这一概念已不再采用。因此WinMain的第二个参数通常总是NULL。
WinMain的第三个参数是用来运行程序的命令行。有些Windows程序在启动时用它来把文件装入内存。
WinMain的第四个参数用来指示程序最初如何显示:或正常显示,或最大化,或最小化。