请求注册 原创【关于常见程序的汉化步骤】
原创【关于常见程序的汉化步骤】
作者:小贱
邮箱:[email]1871522048@qq.com[/email]
我的主要技术:汉化破解,软件美化,软件绿化!
我的编程技术:C++也会一点 ,易语言还行呀,汇编也会一些 ,但是写程序就罢了 呵呵!!
常去的论坛:吾爱破解,暗组,unpack!
汉化其实也很简单了!!
第一步就是查壳了
通用方法就是拖到peid0.94里看看:lol 查不出来的话用深度扫描试试!!
有时候程序是有壳的但是peid0.94查不到{分享一个小技巧,用od载入程序看一看提示不提示,程序被加密或压缩是否分析代码提示说明有壳不提示就往下看吧 呵呵:lol }
:L 打字真累呀
下面是常见程序入口点{入口od载入看看像不像下面的那一个}
delphi:
55 PUSH EBP
8BEC MOV EBP,ESP
83C4 F0 ADD ESP,-10
B8 A86F4B00 MOV EAX,PE.004B6FA8
vc++
55 PUSH EBP
8BEC MOV EBP,ESP
83EC 44 SUB ESP,44
56 PUSH ESI
vb:
00401166 - FF25 6C104000 JMP DWORD PTR DS:[<&MSVBVM60.#100>] ; MSVBVM60.ThunRTMain
0040116C > 68 147C4000 PUSH PACKME.00407C14
00401171 E8 F0FFFFFF CALL <JMP.&MSVBVM60.#100>
00401176 0000 ADD BYTE PTR DS:[EAX],AL
00401178 0000 ADD BYTE PTR DS:[EAX],AL
0040117A 0000 ADD BYTE PTR DS:[EAX],AL
0040117C 3000 XOR BYTE PTR DS:[EAX],AL
bc++
0040163C > $ /EB 10 JMP SHORT BCLOCK.0040164E
0040163E |66 DB 66 ; CHAR 'f'
0040163F |62 DB 62 ; CHAR 'b'
00401640 |3A DB 3A ; CHAR ':'
00401641 |43 DB 43 ; CHAR 'C'
00401642 |2B DB 2B ; CHAR '+'
00401643 |2B DB 2B ; CHAR '+'
00401644 |48 DB 48 ; CHAR 'H'
00401645 |4F DB 4F ; CHAR 'O'
00401646 |4F DB 4F ; CHAR 'O'
00401647 |4B DB 4B ; CHAR 'K'
00401648 |90 NOP
00401649 |E9 DB E9
0040164A . |98E04E00 DD OFFSET BCLOCK.___CPPdebugHook
0040164E > \A1 8BE04E00 MOV EAX,DWORD PTR DS:[4EE08B]
00401653 . C1E0 02 SHL EAX,2
00401656 . A3 8FE04E00 MOV DWORD PTR DS:[4EE08F],EAX
0040165B . 52 PUSH EDX
0040165C . 6A 00 PUSH 0 ; /pModule = NULL
0040165E . E8 DFBC0E00 CALL <JMP.&KERNEL32.GetModuleHandleA> ; \GetModuleHandleA
00401663 . 8BD0 MOV EDX,EAX
dasm:
00401000 >/$ 6A 00 PUSH 0 ; /pModule = NULL
00401002 |. E8 C50A0000 CALL <JMP.&KERNEL32.GetModuleHandleA> ; \GetModuleHandleA
00401007 |. A3 0C354000 MOV DWORD PTR DS:[40350C],EAX
0040100C |. E8 B50A0000 CALL <JMP.&KERNEL32.GetCommandLineA> ; [GetCommandLineA
00401011 |. A3 10354000 MOV DWORD PTR DS:[403510],EAX
00401016 |. 6A 0A PUSH 0A ; /Arg4 = 0000000A
00401018 |. FF35 10354000 PUSH DWORD PTR DS:[403510] ; |Arg3 = 00000000
0040101E |. 6A 00 PUSH 0 ; |Arg2 = 00000000
00401020 |. FF35 0C354000 PUSH DWORD PTR DS:[40350C] ; |Arg1 = 00000000
晕!!易语言的入口点就去网上搜吧 我这里就不找了!!
第二 步脱壳
1.简单的壳{upx等}就用超级巡警1.5托就行了
2.难一点{穿山甲等加密壳}的用专用的脱壳机 就能搞定了
3.特别难的比如vmp等就得用od慢慢分析了(分析不出来的话 ,呵呵:) 往下看)
4.干不掉的壳用freeres释放资源汉化一部分 额呵呵,
汗!!有人说破解汉化时版权狗我无语了 !!想不被破解就把程序搞好点 !!基本所有的程序都会有弱点的,不管你怎么加密,额呵呵!请尊重
cracker!!
第三步了 关键步奏
Borland Delphi 所编写的软件
大家可以随便选一些资源修改软件,比如ResScope,Restorator等.我用过修改D语言最好的资源编辑软件是 ResScope
Microsoft Visual C++ 所编写的软件
资源编辑软件,我用的是 Restorator,打开所要编辑的软件
Microsoft Visual Basic 所编写的软件
VB所写的程序修改资源,不能用Restorator,ResScope等资源编辑工具,要用到专用的 修改软件.如:GetVBRES ,VBLocalize等.我用的是 GetVBRES.这个软件修改后不能保存到执行文件上,所以这个算是一个bug
E Language 所编写的软件
E语言写的软件,用资源编辑工具是修改不了的.那怎么办呢? 我们可以用字串替换工具和C32Asm
我们用字串替换工具 点睛助手v1.31
所有程序修改通用方法就是可以用字串替换工具和C32Asm:lol
汗!!累死我了,好辛苦!!:victory:
请网站管理给个邀请码把呵呵!!
我的邮箱[email]1871522048@qq.com[/email]!!
谢谢:handshake