170523 逆向-循环语句

1625-5 王子昂 总结《2017年5月23日》 【连续第234天总结】

A. 加密与解密 循环语句

B. 循环是高级语言中可以进行反向引用的一种语言形式,其他类型的分支语句都是由低向高端地址区域走的

因此,可以通过这点快速地将循环语句识别出来

如果确定某段代码是循环,就可分析其计数器,一般是用ecx寄存器做计数器,也有用其他方法来控制循环的,如test eax,eax

今天找了一些crackeme的程序来反汇编练手,基本无论多么简单都无从下手,只会直接在内存中查找字符串,找不到就傻眼

其中经常看到的有两个指令未在书上出现过,特查询并记录于此

test:

两个操作数,表示进行逻辑与运算,结果若为0则置ZF标志位为1

常见用法有test eax,eax,可以测试eax是否为0

lea:

两个操作数,前一个为16位寄存器,后一个为16位存储单元

作用为将该存储单元的值放置入寄存器中

eg: lea eax,[00454070h]

就是令eax=00454070h

优点在于本命令的效率高

C. 明日计划

crackme教程、练习

加密与解密 数学运算符的优化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值