首页
论坛
课程
招聘
[原创]基本语句逆向分析
2021-6-8 17:01 6760

[原创]基本语句逆向分析

2021-6-8 17:01
6760

基本语句逆向分析

注释:图片模糊,请附件下载原文件

一;if语句

         特点:有个类似cmp指令来成为条件表达式,然后有J**指令用于向下跳转,且跳转的目的代码当中没有jmp指令。

二;if…else语句

三;if…else if…else语句

         在if…else语句当中else再次嵌套一个if…else语句。

         特点:在j**指令向下跳转,且跳转的目的代码中有jmp指令。


 

四;switch…case语句

         注释:当switch分支数小于6时会直接使用if…else来实现,当switch分支数大于等于6时编译会进行优化。常见优化方案,将所有跳转的case位置偏移放在一个一维数组的表当中,然后将case的值当成数组下标进行跳转。

五;do循环

         该循环的流程是:先执行语句块,在进行表达式判断,当表达式的值为True,则继续执行语句块。

六;while循环

         While循环的流程是:先进行表达式判断,当表达式结果为True,会继续执行语句块。


 

七;for循环

         For(表达式1;表达式2;表达式3)

         For循环流程:

         1;计算表达式1

         2;求解表达式2,如果值为True,则执行For语句当中的内嵌语句,然后执行第3步;如果表达式2值为假,则结束循环,转到第5步。

         3;计算表达式3

         4;转会上面第2步执行。

         5;结束循环



[培训] 优秀毕业生寄语:恭喜id咸鱼炒白菜拿到远超3W月薪的offer,《安卓高级研修班》火热招生!!!

最后于 2021-6-8 17:39 被天象独行编辑 ,原因:
上传的附件:
收藏
点赞5
打赏
分享
最新回复 (6)
雪    币: 1055
活跃值: 活跃值 (581)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
鸭子咯咯哒 活跃值 2021-6-9 07:44
2
0
爱了爱了
雪    币: 53
活跃值: 活跃值 (156)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
sketch-pl4ne 活跃值 2021-6-30 15:04
3
0
哈哈,之前没有逆向基础的可太爱了
雪    币: 2073
活跃值: 活跃值 (2767)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
舒默哦 活跃值 1 2021-6-30 15:41
4
0
占个位
雪    币: 0
活跃值: 活跃值 (62)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3倍アイスクリーム! 活跃值 2021-6-30 17:38
5
0
初学者狂喜
雪    币: 219
活跃值: 活跃值 (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_光_724 活跃值 2021-7-16 13:50
6
0
请问这个表达式是怎么判断是什么运算的呀
雪    币: 1638
活跃值: 活跃值 (4196)
能力值: ( LV11,RANK:185 )
在线值:
发帖
回帖
粉丝
天象独行 活跃值 2 2021-7-16 15:37
7
0
wx_光_724 请问这个表达式是怎么判断是什么运算的呀
这个部分你可以了解一下flag 寄存器方面的知识。
游客
登录 | 注册 方可回帖
返回