-
-
关于SOFTICE快捷键F11的定义含义问题
-
发表于:
2005-11-15 21:00
4649
-
我是刚刚学习破解的菜鸟,请教大侠一个问题。
SOFTICE的快捷键F11定义为"G @SS:ESP" ,其用法我经过实验,发现如果刚刚
跟踪进一个子程序的时候,你没有执行其他指令的话,可以从这个子程序里直
接跳回主调程序,等同F12键的功能。
如果执行了几条指令,堆栈内容变了,就会因为当前ESP所指的不是一条代码
而出错。
如果你一直用此热键跟踪,你会发现SOFTICE就在那个VMM领空的两个地方来回
打转,而且从一个地方跳到另一个地方的时候,我看了一下ESP所指的栈顶地
址,根本不是要跳的目的地址,所以我不明白此命令的作用是什么呢?请哪位
大侠给我指点?
比如栈顶现在是XXXX73A0,那么用G @SS:ESP可以跳到那里。可是等跳到那里
后,栈顶内容成了XXXX3CE0,如果继续用G @SS:ESP,本来应该跳到XXXX3CE0
,可是现在还是回到了XXXX73A0这个老地方来。我不知为什么会这样呢?这简
直自相矛盾,解释不通啊。我真是纳闷了!
在论坛其他地方没有关于此问题的介绍。
另外,关于该热键的定义,发现在SOFTICE的帮助文档内竟然是G @SS:EIP,把
ESP竟然写成了EIP了, 你看一个字符之差,可是误人子弟不轻了。而且网上
很多地方都是以讹传讹,误导了我们许多初学者。而且网上的解释也不明白。
好像是台湾人的一个解释,大家都在照搬引用。其实根本许多内容不对。
感谢你的解释。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课