能力值:
( LV5,RANK:60 )
2 楼
路过。。。。。。。。
你的意思是这样的?
_text:01007487 lea eax, [ebp+var_2C]
_text:0100748A push eax
_text:0100748B lea eax, [ebp+var_30]
_text:0100748E push eax
_text:0100748F lea eax, [ebp+var_34]
----->>>>>
_text:01007487 lea eax, [ebp-2Ch]
_text:0100748A push eax
_text:0100748B lea eax, [ebp-30h]
_text:0100748E push eax
_text:0100748F lea eax, [ebp-34h]
idapython写的比较拙。。
from idautils import *
ea = ScreenEA()
address_start = SegStart(ea)
address_end = SegEnd(ea)
i = address_start
while 1:
if i<address_end:
OpHex(i,-1)
print "%X" % i
i = i+1
else:
break
能力值:
( LV2,RANK:10 )
3 楼
我在ida6.1下面,File->Python command,然后输入您提供的脚本,但是输入窗口报错
File "<string>", line 12
break
^
IndentationError: unindent does not match any outer indentation level
能力值:
( LV5,RANK:60 )
4 楼
将break重新缩进一下。。。
上传的附件:
能力值:
( LV2,RANK:10 )
5 楼
谢谢你,脚本执行的挺好。
其实我还想知道,像你们这种大牛怎么学习的idc或者python脚本?
网上资料好少哦,能不能推荐几本关于脚本的教程?
能力值:
( LV5,RANK:60 )
6 楼
我不是什么大牛。是你的问题太简单。多看两页书。动一下手就知道了。
能力值:
( LV3,RANK:30 )
7 楼
还是有 var 好,给你看清楚那是变量,让你重命名,你这样,还不如在 OD 上看算了
还有你勾出来,可以随便用个编辑器替换 2 次就搞定了,麻烦吗 ?
能力值:
( LV2,RANK:10 )
8 楼
var很多,汇编代码多的时候,替换起来就麻烦了,而且容易出错的
能力值:
( LV4,RANK:50 )
9 楼
试一试
重新载入exe, 跳出load a new file的时候,点击kernel options1 ,把 create stack variables去掉,然后分析.
能力值:
( LV2,RANK:10 )
10 楼
你给的方法太好了,太感谢了,我尝试了好多设置都没用,原来这个设置在载入的时候设置的。。。
能力值:
( LV15,RANK:310 )
11 楼
写ida脚本都是看ida的帮助文档,有时候不知道想要的函数是哪个,只能从头一个个看过去!哈哈!
能力值:
( LV2,RANK:10 )
12 楼
嗯,还好,帮助文档不是太大,挨个看还是没问题