| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4353 人关注过本帖
标题:论坛不热闹,我来抛砖引玉
只看楼主 加入收藏
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
论坛不热闹,我来抛砖引玉
0041e55c    push    edi
0041e55d    jmp    0041e56a
0041e55f    nop
0041e560    mov    al,[esi]
0041e562    inc    esi
0041e563    mov    [edi],al
0041e565    inc    edi
0041e566    add    ebx,ebx
0041e568    jne    0041e571
0041e56a    mov    ebx,[esi]
0041e56c    sub    esi,ffff fffc
0041e56f    adc    ebx,ebx
0041e571    jb    0041e560
0041e573    mov    eax,0000 0001
这是一个反汇编片段,想了好久也无法还原成WIN32汇编
基本能看懂,我的理解:
核心思想是将ESI指向地址的值搬到EDI指向的地址,用EBX控制
琢磨5天了,汇不出原貌,恳请大牛指点
2015-08-01 11:49
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:20 
程序代码:
    push edi
    jmp @loop
    nop
    @inner:
        mov al, [esi]
        inc esi
        mov [edi], al
        inc edi
        add ebx, ebx
        jne @F
@loop:
    mov ebx, [esi]
    sub esi, 0fffffffcH    ; add esi, 4
    adc ebx, ebx
@@:
    jb @inner
    mov  eax, 1


大概是这个样子的 但搞不懂想干什么
2015-08-01 12:40
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
收藏
得分:0 
多谢zklhp大牛,我先去研究研究,然后回来汇报
2015-08-01 13:08
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
收藏
得分:0 
起因,我朋友要考工程劳务员,需要在线学习40小时视频,他没时间,托我帮忙。
学习是每10分钟弹出对话框,如果不点“确定”,永远是10分钟,这样我就要
坐在电脑前每隔10分钟点确定,很烦。

想到做个程序,带定时器,每分钟发送回车消息,网页句柄好象获取成功了,
但发送的消息总不起作用。想到按键精灵,看它怎么发的消息,但生成的精灵
程序加壳,然后转到脱壳,先找个最普通壳UPX练习。上面的代码就是UPX起手式

在次感谢zklhp大牛,您的代码我抄纸上了,躺床上仔细研究
菜鸟一直在努力!!!
2015-08-01 13:31
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
收藏
得分:0 
        push    edi
        .while    TRUE
            mov    ebx,[esi]
            sub    esi,-4
            adc    ebx,ebx
            .break    .if    !CARRY?
            .while    TRUE
                .break    .if    !CARRY?
                mov    al,[esi]
                inc    esi
                mov    [edi],al
                inc    edi
                add    ebx,ebx
                .break    .if    ZERO?
             .endw
         .break    .if    !CARRY?
        .endw
        mov    eax,1


刚才边玩星际边合计,灵光一闪,设计出这么个怪胎。

好象执行的意思相同,还请大牛们指正。

如果相同的话,还是我这怪胎好看。

[ 本帖最后由 菜鸟AB 于 2015-8-1 23:38 编辑 ]
2015-08-01 22:38
快速回复:论坛不热闹,我来抛砖引玉
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017650 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved