16位汇编第九讲汇编指令以及逆向中的花指令
一丶LOOP指令(循环指令)
作用:
循环指令利用cx计数器自动减1,方便实现计数循环的程序结构...一直加标号,一直调用吗,显然是不切实际的.
2.Call 带有参数的传递
上面发现了一个大缺陷,就是不能参数传递,这样就不行了,那么我们要想办法,可不可以在外面传入参数
看代码:
mov cx,1
mov...)一下
mov cx,2
push cx ;压栈
mov dx,1
push dx ;调用函数
CALL PROC_ADD...,为什么函数内部要+2
原因是当这个子程序执行完毕的时候,需要返回到主程序执行,所以主程序的下一条指令已经压栈了,所以+2位置,可以取得参数
最后调用ret平栈
当程序遇到ret的时候,做的事情
1....我们发现jmp的地方下面申请了一个字节,但是在汇编的时候,这1个字节和mov的机器码在一起了
因而产生的汇编代码就出错了,花指令混淆就是这样,这段代码还是可以正常执行的
对抗手法
1.如果是动态的调试,