|
[求助]有没有开源的反汇编工具??
关于编译质量,对于汇编一级,其实差也差不了多少。 关于语法,则是萝卜青菜了。 在MASM语法中, a dd ?? b: dd ?? mov eax, a // 变量 mov edx, b // 地址 犯这样引起的错误把我犯怕了。再加上现在我用汇编的语言的时候很少了,所以MASM基本不用了。 用NASM,更主要是因为有些东西我需要在linux下测试。 |
|
|
|
[求助]内存补丁
我的loader好不好使,测试后请反馈一下,谢谢。 |
|
[求助]有没有开源的反汇编工具??
你是要反汇编引擎吧。 NASM自带一个NDISASM 到SOURCEFORGE.NET找就行了。 NASM这个汇编器相当不错的了。 它还有一些程序包,里面有PE头的结构 利用它的一些预处理命令、宏命令等,可以使用bin方式生成合法的PE文件,学习价值非常高。 而且代码写得也非常漂亮。值得推荐。 |
|
[求助]molebox 附加数据的问题,
我给你说个思路,看行不行。 你是已经DUMP主程序了,是吧 你同时跟踪压缩过的程序和主程序。 在脱壳后主程序中下断CreateFileA,如果原来程序是通过这个API来访问附加的视频文件数据的话,在播放文件时会中断下来。然后返回到用户代码中。 现在来到压缩过的那个程序,Ctrl+G来到同样的地方,因为MOLE会偷API开头的字节,所以你看到本来应该调用CreateFile的地方却调用了其它函数。 不管它,因为它就是CreateFile。F8后看EAX,如果不是-1,那么就是有效的文件句柄。 关键到了:不管它下面是ReadFile还是CreateFileMapping,你只要找到缓冲区,然后DUMP出来就是了。 PS.如果程序不是CreateFile打开可执行文件本身的方法来访问附加数据,而是其它方法,比如LoadResource,方法是类似的。 因为mole压缩后,会把所有对系统API的调用都转向它“偷来的函数开头的代码”,然后再跳向真正的API函数(不是开头而是下面的几个字节,这样是为了对付API断点),所以需要先用脱壳后的主程序找到正确的代码位置。 |
|
[求助]我的OD怎么了
不是无法断下来,只是“暂停程序”这个功能,Windows并没有提供。对于单线程,可以SuspendThread(), 但对于多线程,如果断然SuspendThread(),则无法保证程序行为的正确性。 我不知道OD是用什么办法实现F12的,反正这个功能不完善。我猜它可能是向进程中注入远程线程,然后执行某种操作,好让程序自己停下来。但是显然,这个功能并不是特别稳定。可能跟临界资源的使用有关。这个由于我不知道它实现细节,所以不敢妄议。 而对于调试一个程序,有无数种方法。况且,使用F12来中断程序并不是一种常规的方法。 正确的,或者说通常的方法是在特定的地方下断点,让程序产生断点异常,这样它自己就停下来了。 至于在什么地方下断点,我就是靠个人的经验和灵感了。而且编程水平越高的人,就越容易快速地找到关键下断的地方。这个别人教不会的,别人可以指导,你可以参考,但还是得自己去积累和总结。 |
|
[求助]我的OD怎么了
这是OD怎么了,是你使用的方法不当。 不是所有程序都可以F12停下来的。 特别是多线程程序,按F12时可能会出现这种状况。 你应该使用断点来使程序中断。 F12对有的程序不好使,会把程序搞死。死了以后就出现这种情况,点关闭出现提示就是因为你把程序搞死了。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值