论坛风格切换切换到宽版
  • 1799阅读
  • 7回复

GUI Design Studio 脱壳后程序的优化 [复制链接]

上一主题 下一主题
离线大牛
 

发帖
3293
金钱
1700
威望
170
只看楼主 倒序阅读 0 发表于: 03-25
— 本帖被 大牛 执行置顶操作(2017-03-29) —
前几天在世纪网站上下了个GUI Design Studio 4.1 汉化版,感觉汉化界面的界面怪怪的,连菜单上都有缺少字符的现象,如“新建(&N)"显示为"新建&N"
试着用 PE Explorer 打开看了一下,这个主程序文件的区段头是这样子的:

可以看到程序的资源段不在程序文件的最后,可以肯定该汉化软件的汉化作者是用非标的方式来处理这个程序的,因此就产生了上面出现的问题。
天为什么这么黑, 因为牛在天上飞。
牛为什么飞天上, 因为我在地上吹!
汉化 摄影 音响CAD→→清风工作室
离线大牛

发帖
3293
金钱
1700
威望
170
只看该作者 1 发表于: 03-25
找到最新该程序的最新版,发现该程序是用穿山甲来进行保护的,网上找到了脱壳破解版,用 PE Explorer 打开后我们看到该程序的资源段也不在文件的最后区段。


这应该是由于脱壳后优化不到位引起的。
试着用 FixRes 及 PE Optimizer 来进行脱壳后的程序优化,但很遗憾,都没有成功,虽然用 PE Optimizer 优化后程序体积小了一点,但程序的资源段还不是在文件最后。
尝试用 freeRes 来重建资源段,但是非常遗憾,用  freeRes  加载后,程序直接成了未破解前的状况,直接弹出注册界面,连程序有主界面都无法进入,因此也就无法重建资源段。
天为什么这么黑, 因为牛在天上飞。
牛为什么飞天上, 因为我在地上吹!
汉化 摄影 音响CAD→→清风工作室
离线大牛

发帖
3293
金钱
1700
威望
170
只看该作者 2 发表于: 03-25
本着死马当活马医的原则,我分别用最常用的汉化程序 Alchemy Catalyst 10.0 和 PASSOLO 2016 建了个二个汉化工程,并汉化了一部分资源,然后导出生成汉化文件。试着运行了一下,发现用  Alchemy Catalyst 汉化后的程序居然没有出错,能够正常运行,而用 PASSOLO 生成的文件就直接 OVER 了,感觉非常奇怪。看了一下文件大小,发现 Alchemy Catalyst 汉化后的文件比英文的原版程序要大得多


立即用 PE Explorer 打开汉化后的程序,令人惊喜,资源段已经在程序文件的最后了。

天为什么这么黑, 因为牛在天上飞。
牛为什么飞天上, 因为我在地上吹!
汉化 摄影 音响CAD→→清风工作室
离线大牛

发帖
3293
金钱
1700
威望
170
只看该作者 3 发表于: 03-25
看来 Alchemy Catalyst  在生成汉化文件时会自己判断资源是否在文件末,如果不是的话能自动在程序的最后重建资源段。
这就好办了,用 Alchemy Catalyst  重新插入脱壳破解的英文版文件,不作任何改动,直接导出,呵呵,资源段自动跑到程序最后了。

天为什么这么黑, 因为牛在天上飞。
牛为什么飞天上, 因为我在地上吹!
汉化 摄影 音响CAD→→清风工作室
离线大牛

发帖
3293
金钱
1700
威望
170
只看该作者 4 发表于: 03-25
虽然文件现在能被任何汉化工具作汉化处理了,但仍有点不甘心,毕竟程序这样处理后最大了好多,看了一下,程序的最后第三个区段就是被废弃的资源区段,可以看到它的大小和最后一个区段大小都一样。这就好办了,拿出 Hex Workshop 将程序 0080EC00——008CE600之间的废弃资源段全部填”0“。然后再用 PE Optimizer 优化一下,发现程序已经缩小到未作处理前的大小了,用 PE Explorer 看一下,废弃资源段的大小已经归零:




OK 收工!
天为什么这么黑, 因为牛在天上飞。
牛为什么飞天上, 因为我在地上吹!
汉化 摄影 音响CAD→→清风工作室
离线binweiwei

发帖
177
金钱
280
威望
28
只看该作者 5 发表于: 04-02
非常感恩,谢谢,学习了
L.W.K.L-力挽狂澜软件工作室
我的视频转换帖
我的网络硬盘
【嘟嘟oοО○●哇靠!!!快让开】
   ╭══╮老婆!开车罗`坐好啊
  ╭╯五档║老公!开慢点`我兴奋
  ╰⊙═⊙╯。oо○ 压死了不赔!
离线HuAnGkUn

发帖
236
金钱
110
威望
11
只看该作者 6 发表于: 06-29
好方法,学习了
签名有个性
离线wanfu

发帖
2652
金钱
11370
威望
1137
只看该作者 7 发表于: 06-30
好文章,又是一种将资源段移到最后的方法,建议发表到汉化教学中。

Passolo 确实有这方面的问题,按理,开发这么久的工具,这些问题应该都注意并解决了。
还有,位于最后区段后的隐藏区段,Passolo在生成目标文件时,直接给删除。
可是,这些隐藏区段说不定是被合并在一起的完整PE文件或其他类型的数据文件。
真是脑残的开发商。

关于资源段移动到最后的问题,有兴趣的朋友,也可以参阅一下这篇文章:
http://teach.hanzify.org/article/675-1241250357.html