找回密码
 加入
搜索
查看: 6501|回复: 13

[转贴] Autoit 反编译

 火.. [复制链接]
发表于 2011-1-27 19:39:21 | 显示全部楼层 |阅读模式
CTRL+S 查找命令序列:
============================================
push eax
ANY
test eax,eax
pop ecx
pop ecx
ANY
push ebx
push ebx
============================================

找到后显示为:
0043964E        |.        50                       |push eax
0043964F        |.        E8 ACFC0000              |call AutoIt3A.00449300
00439654        |.        85C0                     |test eax,eax
00439656        |.        59                       |pop ecx
00439657        |.        59                       |pop ecx
00439658        |.        74 48                    |je short AutoIt3A.004396A2
0043965A        |.        53                       |push ebx
0043965B        |.        53                       |push ebx

在push eax上面按F2下断,F9运行,中断.
如果EAX显示:
ASCII ">AUTOIT UNICODE SCRIPT<"
就说明脚本是UNICODE编码的.
如果显示:
ASCII ">AUTOIT SCRIPT<"
就说明脚本是ANSI编码的.
取消断点.

CTRL+S 查找命令序列:
============================================
lea eax,dword ptr ss:[ebp-1018]

lea eax,dword ptr ss:[ebp-2018]
push eax
mov ecx,ebx
ANY
test al,al
ANY
lea eax,dword ptr ss:[ebp-1018]

lea eax,dword ptr ss:[ebp-2018]
============================================

找到后在第二个lea eax,dword ptr ss:[ebp-1018]上面下断点(按F2)

按F9一次,中断,F8一次,寄存器窗口出现脚本?取消刚才设置的断点(F2)
=====================================================
004069D3        |.        E8 D5FDFFFF              |call AutoIt3A.004067AD
004069D8        |.        84C0                     |test al,al
004069DA        |.        0F84 CE000000            |je AutoIt3A.00406AAE
004069E0        |.        8D85 E8EFFFFF            |lea eax,dword ptr ss:[ebp-1018]            ;        断在这里
004069E6        |.        E8 ECF7FFFF              |call AutoIt3A.004061D7
004069EB        |.        84C0                     |test al,al
=====================================================
点击刚才lea eax,dword ptr ss:[ebp-1018]上面那个je AutoIt3A.00406AAE,看它跑哪里去.

跑到了这里:
=====================================================
00406AAE        |> \FF75 0C                  push dword ptr ss:[ebp+C]
=====================================================

在上面的地址下断.F9运行一次,再次中断.
现在脚本解压缩完了.
看看寄存器EDX的值(如果EDX未出现脚本,请使用下面的那个方法):
EAX 0012F700 ASCII "U3TOOL.exe"
ECX 0046E2D8 AutoIt3A.0046E2D8
EDX 00C10048 ASCII 3B," <AUT2EXE VERSION: 3.2.5.1>
在EDX那一行上面点击右键>

;在数据窗口跟随.
再看左下方内存窗口.



在内存窗口右键>备份>保存数据到文件(扩展名修改为AU3).
用scite打开这个保存的au3脚本,删除无用的数据.OK,脚本已经反编译完成了.
发表于 2011-1-27 22:20:44 | 显示全部楼层
可惜暂时看不懂
发表于 2011-1-27 22:23:49 | 显示全部楼层
孩子,你的代码过时了
发表于 2011-1-27 23:13:33 | 显示全部楼层
真的吗?

学习啦~
发表于 2011-1-27 23:42:58 | 显示全部楼层
回头有空再看看
发表于 2011-1-28 00:58:46 | 显示全部楼层
这个方法早就不行了,只能对很老的版本有效,另外:转帖要注明,楼主!
发表于 2011-1-28 09:23:05 | 显示全部楼层
正编译还没学好呢!!
发表于 2011-1-28 11:39:27 | 显示全部楼层
楼主是没效果了才发出来,有效果的收着,哈哈哈
发表于 2011-2-11 14:54:15 | 显示全部楼层
我还以为是可以反编译最新版呢!
发表于 2011-2-12 14:30:17 | 显示全部楼层
貌似没这么简单吧?
发表于 2011-2-15 03:08:51 | 显示全部楼层
代码过时了
发表于 2018-11-13 15:43:21 | 显示全部楼层
学习学习,谢谢分享
zmkkk 该用户已被删除
发表于 2020-2-13 21:22:12 | 显示全部楼层
不明真相的围观群众
发表于 2020-2-13 21:38:39 | 显示全部楼层
自己写多好,编译别人的干嘛!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-24 20:51 , Processed in 0.076871 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表