设为首页收藏本站官方微博

汉化资料 xmle文件的破解

[复制链接]
查看: 2245|回复: 4
打印 上一主题 下一主题

[汉化资料] xmle文件的破解

跳转到指定楼层
楼主
发表于 2010-3-30 08:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

xmle文件的破解

饿...本来想还是自己注册个号的,取个有点个性点的名字,结果发现今天不能注册 [s:70]# P2 a- O. E: S; r
+ U# x+ T/ X5 F6 i1 g3 m
PS.一下,偶是粥粥兽啊,HOHOHOHO8 ^2 A1 |% r/ U1 K

9 y: ?  F; ^& e9 n2 J$ X那么就来说一下我对大鱼游戏中经常出现的xmle文件的发现吧2 D% K7 ]" c& h0 x* p- O! j3 a$ ~
因为一个偶然的巧合,咖啡发给我的游戏里有个XML文件夹,我粉高兴,觉得这下肯定很好解决了,结果打开一看7 f. s& S6 v1 h
却是xmle文件,改成xml却也是打不开5 _9 |2 Z1 @6 I0 e0 G5 F: d
1 N/ b, K" i" \/ a
用CT打开一看才发现这哪是XML啊' C7 b" I$ j* x. y8 M
网上查了查无果,可琢磨着,这不是XML为什么要放在XML文件夹呢,于是我再次运用CT,盯着那些文件看,总算发现
4 p6 d8 q/ R* R& N. k; C他们的文件头5 {! A5 \- x# e! W5 C( }  \8 }
=>ylm!wdsrhno<#0/1#!dobnehof<#tug,9#>?
& m' Y3 e4 a# u% Z* E感觉有<有>还有?怎么看都有点像是XML文件的开头啊,怎么回事呢?于是我找来了份XML文件做比较
4 ], O; O) }; f8 e/ k4 Y$ b. o一开始还没发现这么明显的破绽,哈哈,硬是对着ASCII表去看的,发现
. q% W& K3 M- ^% s3 H1 C7 H=<, >和? 都在一块,才发现原来只是+1的关系啊/ U; p0 [# L: h
原来没看仔细,哈哈,破解一下后还不对再仔细研究的时候发现了这个秘密(已经圈出)
8 ]3 I: K+ K' r; A( @. B一开始还没看懂呢,心里纳闷,怎么一会儿是+1一会儿是-1,到底是怎么回事呢?这么没规律,后来追踪了某个字母(好像是e)0 f# ^8 V0 I% x0 h2 v
才发现在那文件里,e一直是+1的,9 D) v. v* w( ^  K

+ |. X" p" u! R8 C# I才发现原来从xmle到xml的转换完全是按照ASCII代码来的
4 {1 Z- _' ]% N* ?+1 -1 是看ASCII的单,双数决定 (不好意思,我记性不好,又忘了哪个是+哪个是-了...后来写CODE也是....只能在解开来发现不对再改一下.....)
5 E* _, K+ a1 a2 P7 O+ D+ h5 G/ Y$ R$ |& F! H
于是我就开始写代码了,很简单的C++代码+ _6 i2 w! y5 g5 g
% \6 v1 _1 Z( n
int main()3 I8 R; E& e. }" h6 U. b
{
, z* F& Y- N* N: O    fstream fin;
' p# T8 p6 [% F% Y/ m1 N; z    fstream fout;$ W3 m. v- c  b& b2 T
    //right now we are decoding *e files6 g) B- t4 K1 U, F4 r! i
    fin.open("test.xml",ios::binary|ios::in);
3 X# ?- d2 L. t" d: ^& R4 I    fout.open("text.xmle",ios::binary|ios::out);" Q  U, F: v. `0 a- _+ u
! z/ H, ]+ P! H( G
    if (!fout.is_open()) printf("outfile cannot be opened\n");. s2 K; l0 l# |$ S2 k: ^
( h, R. N! p4 ?/ d6 J
    fout.seekp(0,ios::beg);1 s, [* L/ ?, F( s
    fin.seekg(0,ios::end);3 v  a, F6 f- m" c) k1 u
    int size = fin.tellg();" K- h: z; j- [6 f' u. D* a- g
    fin.seekg(0,ios::beg);, U0 c; `7 x5 h
$ |; p0 M. I8 |
    char *buffer;
! X: @( l7 B& L2 d9 ?1 `    buffer = new char[size];& Z; [7 x1 m5 f' j" e
    fin.read(buffer,size);
3 n9 x3 b) O6 V4 f5 w+ I    printf("size = %d\n",size);
1 h9 D* h7 a9 k6 z" v2 i' W* `1 k    int count;
/ y4 S1 m& J5 ^1 P0 m    for (int i = 0;i<size;i++)7 E) U' S& ^. f4 g' w4 h: {
    {3 N5 Z& I4 a# y5 ^
        //encoding* v5 b4 q5 a, O3 x! O! N
        if ((buffer % 2) ==0) fout.put(buffer+1); //if even subtract one
# B; _  I& F& v( I. h/ C# ~' T        else fout.put(buffer - 1); //elsewise we add 1
' h* X* e$ z' [8 o4 l    }  c4 z" L$ e  d5 n+ L. }
; F$ f, D% M) w/ {4 Z) K5 R
    fin.close();
$ e. q7 G" I$ z1 P  v5 L    fout.close();2 l0 c8 [& S7 y: v& x: C4 O- R
}3 G+ b& h0 n4 c" I' W

+ t+ L7 o4 c# D" U* z# T4 ~那么,需要破xmle文件的朋友们,enjoy

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

沙发
发表于 2010-3-30 11:40 | 只看该作者
非常感谢粥粥兽给我们带来这么精彩的汉化分析贴。: Y4 L$ D! G) D+ L5 n. V
枫叶给加威望吧。
回复 支持 反对

使用道具 举报

板凳
发表于 2010-3-30 12:18 | 只看该作者
那它的字体文件呢?一般也不是标准的官方后缀,粥粥兽继续拓展分析一下
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2010-3-30 20:34 | 只看该作者
xmle只是XML文件,只是配置而已,字体文件就不一样了
- S8 F8 _( k! z. t1 G7 Q
/ c  ^9 V, ~+ h7 [- Y  D不过我上次看到的那个游戏BT的很,连JPG,DDS都带这样编码的...至少我觉得是,因为后面都带了个e,不过我没仔细检查,估计是一样的 [s:73]
回复 支持 反对

使用道具 举报

5#
发表于 2010-3-30 21:29 | 只看该作者
粥粥兽做个还原程序和加密程序放上来吧,要能批量操作文件夹内全部文件的~~~~6 g% B$ P% M; z4 h: @# \: n
4 @( D% S$ Q* M/ q" s2 ^1 N( z
感谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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