b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

ollydbg_ollydbg入门教程_ollydbg破解注册码(29)

电脑杂谈  发布时间:2017-04-17 05:02:23  来源:网络整理

OllyDbg可以对像printf()这样参数个数可变的函数进行参数解码:

PUSH EAX ; / <%.*s>

PUSH E8 ; | <*> = E8 (232.)

PUSH EBX ; | <%08X>

PUSH Mymodule.004801D2 ;| format = "Size %08X (%.*s) bytes"

PUSH ESI ; | s

CALL Mymodule.sprintf ;\sprintf

你可以定义自己的函数。每次你打开某个应用程序时,OllyDbg都会重新设置函数参数表并用内嵌描述添充这个表。然后尝试打开文件“< OllyDbg目录>\common.arg”和“<OllyDbg目录>\<应用程序名>.arg”,这里<应用程序名>使用8.3式(DOS)被调试程序文件名(不带路径和扩展名)。

下面看一个简单的.arg文件实例:

INFO Simple .ARG file that decodesCreateHatchBrush

TYPE HS_X

IF 0 "HS_HORIZONTAL"

IF 1 "HS_VERTICAL"

IF 2 "HS_FDIAGONAL"

IF 3 "HS_BDIAGONAL"

IF 4 "HS_CROSS"

IF 5 "HS_DIAGCROSS"

ELSEINT

END

TYPE COLORREF

IF 0 "<BLACK>"

IF 00FFFFFF "<WHITE>"

OTHERWISE

TEXT "RGB("

FIELD 000000FF

UINT

TEXT ","

FIELD 0000FF00

UINT

TEXT ","

FIELD 00FF0000

UINT

TEXT ")"

END

STDFUNC CreateHatchBrush

"style" HS_X

"colorref" COLORREF

END

标准Windos API函数CreateHatchBrush(int style,int colorref) 有两个参数。第一个必须是阴影风[hatch style],第二个是常量由红色、绿色、蓝色组成,并用一个32位整数的低三字节表示。为了解码这些参数,文件定义了两个新的参数类型:HS_X和 COLORREF。

阴影风是一个简单的枚举类型,如0表示HS_HORIZONTAL(水平风)、1表示HS_VERTICAL(垂直风)。IF关键字比较参数与第一个操作数(注意:其总是十六进制的),如果相同则显示第二个操作数里的文本。但万一匹配失败会如何?关键字ELSEINT 会然OllyDbg会将参数解释为一个整数。

COLORREF 更复杂一些。首先尝试解码两个广泛使用的颜色:黑(全0组成)与白(全0xFF组成)。如果匹配失败,COLORREF尝试解码颜色为一个结构包含红、绿、蓝的亮度。FIELD会用第一个操作数与参数进行逻辑与操作。然后转换结果为整数,并同时按位右移第一个操作及该整数,直到第一个操作数的二进制个位数字为1,这时整数按位右移的结果以无符号10进制显示出来。这个例子做了三次这样的操作,以分离出每个颜色成份。TEXT关键字用于无条件显示文本。如果参数为00030201,那么COLORREF将其解码为RGB(1.,2.,3.)。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-41789-29.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...