一.断点 调试很重要一点是下断点,看看IDA提供的功能,本来已经和WinDbg一样强了. 官方文档的变化 Edit breakpoint Action name: BreakpointEdit Condition(6.5及之前版本) This IDC expression will be evaluated each time the breakpoint is reached. If the expression returns true, the debugger will execute
1. Who is the class of self instance ? class aa(object): def a(self): if self.__class__.__name__ == 'aa': print "aa, a func()" elif self.__class__.__name__ == "bb": print "bb, a func()" class bb(aa): def b(self): print "
今天我在这里通过一个例子介绍一下函数自身的call属性. 例: function whoCallMe(){ alert("My caller is" + whoCallMe.caller); }; function CallerA(){whoCallMe();}; function CallerB(){whoCallMe():}; alert{whoCallMe.caller};//输出结果为:null; whoCallMe();//输出结果为:My caller is null; C
在提到上述的概念之前,首先想说说javascript中函数的隐含参数: arguments: arguments 该对象代表正在执行的函数和调用它的函数的参数. [function.]arguments[n]参数function:选项.当前正在执行的 Function 对象的名字. n :选项.要传递给 Function 对象的从0开始的参数值索引.说明Arguments是进行函数调用时,除了指定的参数外,还另外创建的一个隐藏对象.Arguments是一个类似数组但不是数组的对象,说它类似数组是
在上文中,我们通过分析定位到sub_130C()这个函数有很大可能性是用来做反调试检测的,并且作者开了一个新的线程,并且用了一个while来不断执行sub_130C()这个函数,所以说我们每次手动的修改TracerPid实在是不现实. 既然如此我们何不把sub_130C()这个函数给nop掉呢?为了防止nop出错,我们先在”F5”界面选择所有代码,然后用”Copy to assembly”功能,就可以把c语言代码注释到汇编代码里. 在这里我们看到如果想要注释掉sub_130C()函数,只需要注释