您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 汇编分析一个奇怪的程序--海大--张文超
分析一个奇怪的程序。assumecs:codecodesegmentmovax,4c00hint21hstart:movax,0s:nopnopmovdi,offsetsmovsi,offsets2movax,cs:[si]movcs:[di],axs0:jmpshortss1:movax,0int21hmovax,0s2:jmpshorts1nopcodeendsendstart程序分析:好久没写过程序分析了,这个实在有意思。其实s1的内容压根就没有被执行过,尽管你在调试的时候,她们的机器码就摆在那里,s1里面的三条指令也不过是为了凑个位移长度而已,记得,在s中的地址复制,复制的是机器码,而机器码里面只包含偏移,而不是标号的地址。这么一看,这个程序就容易多了………首先,从start开始执行,当s执行完后,s标号后面的指令也变化了(准确的说,是机器码变化的与s1后面的指令的机器码相同了,现在看s2的机器码含义是:向上移动movax,0int21hmovax,0这三条指令的长度),再执行s0跳转到s处,s处指令执行,向上移动那三条指令的长度,也就是跳转到cs:0处,执行结束语句,分析完毕。海大451QQ:269426626欢迎交流
本文标题:汇编分析一个奇怪的程序--海大--张文超
链接地址:https://www.777doc.com/doc-2279409 .html