可执行文件字符串提取替换工具0.2.3
V" T( u* o, B/ V by Luigi Auriemma
' [1 p# E Q: ^+ c' aemail:[email protected]) B8 P7 e2 `- c3 R" r
web: aluigi.org6 i" C3 U9 t( O5 V9 }' t3 W: _5 h
反汇编引擎来自Oleh Yuschuk
% o3 {. L7 p6 Y
( b) T" F" W0 N5 Q. [3 C0 }使用方法:
; Z6 q7 j8 g3 r3 ?命令提示符下:exestringz [options] <cmd_1/2> <file.exe/dll> <strings.txt>, I i' D$ n+ R2 }: V7 c7 r9 l
- m( G; n5 T! S& i h$ kOptions:在模式1下(从可执行文件提取字符串到文本文件)
1 ]) S2 _6 w. v$ m6 N+ O9 t-f 禁用字符过滤,默认状况(即不加-f)只提取0~9,a~z,A~Z以及各种符号标点1 G7 ^4 X, e3 m6 I
+ h4 T4 H8 [ u" \-a 只提取亚洲字符,即高于0x7f字节的字符串
/ T3 A+ o/ ^% N& j5 }: L1 S
) Y( ^ x# c6 O+ q! l7 C-u 不提取unicode字符串
4 @/ _$ d2 W, _7 e- g* F" U$ x& p9 Y7 }6 a( M. Z
-l LEN 规定有效字符串的最短长度LEN
( f6 L. A" K! c$ G/ Z/ w% y$ }2 Z5 }) A( f0 C+ u+ U2 |% V
-b 激活二进制模式,输入文件不会被反汇编,那么工具会尝试提取所有看起来像是字符串的字节,就像unix程序“srtings”
/ B# z0 ?4 b _6 q1 B v
; _1 M. o! C- s, Q2 j, v- v& c$ S-e 从文件的入口点开始进行反汇编扫描
+ X1 w- u! w0 F, R [( V9 C" m* p" j! y0 ~' h
-A NUM 只提取按NUM个字节排列的字符串
& z" G: c% X5 x; |0 l
* l$ A3 z* Q$ z9 @6 b下列模式1下的参数只用于查看,因为如此提取出的strings.txt不被模式2支持) R; t: v% z. m* I- |* Z! ], s( D
-c C语言格式输出0 C. d2 p4 T3 b) i
. K" E2 x- Z) ?( I' _
-C 同上,但是输出成数组的样式,例: ) H. E" v* Y: f6 u5 Q
; r! I i5 K, T- X
-q 没有字符串之间的“____”线
5 Z1 ]1 V2 Q) @- s) i* H
) W4 E& v" v+ w4 w" m举例:创建strings.txt并且将他们放回可执行文件中& u/ N( f# z- W B
7 B3 A g, `: T) F: Y, _9 z" B5 J. f e
1)提取字符串生成strings.txt+ h# z" G7 V% A7 c: K& B$ @# y
命令:exestringz 1 program.exe strings.txt4 ?" B" H! a3 K+ P5 _
4 y( j; k6 |, `" S$ G. \* y* D' z 编辑stirngs.txt,可以修改提取出的字符串,但不要修改每一条字符串下面的一行“______”8 u T% M& c7 w: f2 H) V5 }
你也可以删掉你不需要修改字符串,记得把每一句下面的“____”也删掉
1 F6 \% F5 C a/ s6 m; S9 z) p' E5 b5 _2 ~: J
2)将修改过的strings.txt注回程序
7 k+ Q/ l% F2 |3 a命令:exestringz 2 program.exe strings.txt
- R- W3 J- H; w0 ]$ o
" L& Z7 P1 E5 K9 \8 y——————————————————————————————————————. i4 C! G9 H1 S c
可惜的是,经过测试,该工具不能直接用于script内嵌字幕的WME引擎游戏字幕的汉化.
4 N$ s V, V$ ?4 V因为直接把.scripts格式改为.exe或者.dll是不能被该工具识别的,他会提示 :6 H$ b0 L8 m0 x
Error:unsupported input file or architecture |