首页
社区
课程
招聘
[旧帖] [求助]帮我看段汇编代码,有难度,先谢了 0.00雪花
发表于: 2013-3-31 22:14 6449

[旧帖] [求助]帮我看段汇编代码,有难度,先谢了 0.00雪花

2013-3-31 22:14
6449
这个是判断某程序是否打开超过6个,如果大于6则退出。
问题是,这段代码用OD分析没有提示,我想知道这个用了什么逻辑判断的,给个思路谢了。

判断处


断下的CALL进去代码

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 8
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
救命啊,这是算了些什么东西,他想隐藏什么呢
2013-3-31 23:01
0
雪    币: 8
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
是不是他把过程加密了?
2013-3-31 23:04
0
雪    币: 45
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
加了壳的吧!
2013-4-1 21:35
0
雪    币: 8
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
没有加壳。
下边的图是计算一个值,但是不知道标记是什么。
2013-4-2 00:26
0
雪    币: 266
活跃值: (33)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
0x00ACD400,0x00ACD100,0x00AD54E0都要进去看看。
0x00ACD400之前栈上开辟了那么大一块空间,又把指针传进去,显然是个关键调用,0x00E5CDB8这个全局变量也要搞清楚。
2013-4-4 16:38
0
雪    币: 36
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
你就找那个6噻,找到之后改到ff,试下,比如第一个图片倒数第二行那个6就有可能是次数限制的那个6哦~
2013-4-5 09:16
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
加了壳的吧!
2013-4-5 14:27
0
雪    币: 503
活跃值: (55)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
根据你上面贴出来的汇编代码, 有一句 明显的 CMP EAX,6  这里。。。 然后 往上跟的话。。可以跟到

00ACD1F0 CALL 00AD54E0     //估计这个函数就是获得当前程序所开的 数量了。

尝试下看看着个 函数 内部的操作。。。
2013-4-5 14:40
0
雪    币: 11
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
同意楼上的~~~~~~
2013-4-7 11:47
0
雪    币: 115
活跃值: (46)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
11
从0xACD1D3看到,计算过[esp+0x28]在这里应该为第一个参数,下面为第二个
也就是说把-1(第一个参数),ebx再传入一个过程

从这里和两次比较eax 个人判断可能是结合了xxxapi检查打开数量
第一次0xACD400检查是否多开(test),没有就直接je,再检查打开的数量
单从这两幅图得到的不多

我算新手一个,有错误的还请指出
2013-4-7 13:37
0
雪    币: 55
活跃值: (519)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
12
楼主应该是想知道这段代码采用什么方式检测吧。应该是信号量检测方式吧。跟进去看看。
2013-4-8 17:53
0
雪    币: 3
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
貌似需要研究一番,同意11楼
2013-4-21 19:58
0
游客
登录 | 注册 方可回帖
返回
//