破解/汇编学习笔记

王朝other·作者佚名  2007-10-20
窄屏简体版  字體: |||超大  

1.循环,用得比较多,也是加密/验证常用的

MOV EAX,DWORD PTR SS:[EBP-4]

CALL XXXXXXXX //这一般是取长度

TEST EAX,EAX

@@Loop:

JBE XXXXXXXX //长度为0,不做循环

MOV EDX,1 //从第一个开始:Delphi程序

MOV ECX,DWORD PTR SS:[EBP-4]

MOVZX ECX,BYTE PTR DS:[ECX+EDX-1] //取一个字符

...

... //其它操作,各人有异

...

INC EDX //取下一个

DEC EAX

JNZ @@Loop //下一轮

2.取无效地址?

在处理中,经常看到有类似LEA ECX,DWORD PTR DS:[ECX+ECX*2]的句子.

心想,怎么可能,这样访问不会出错吗?

不会,原来LEA不会访问地址后才取地址,而是直接取,呵呵,其实这个只是用

来做运算:ECX = ECX * 3;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航