冒险解谜游戏中文网 ChinaAVG
标题:
FPAK文件解包器
[打印本页]
作者:
shane007
时间:
2010-5-4 20:24
标题:
FPAK文件解包器
放上老外发布的FPAK文件解包器。
& l, a9 G/ V4 @- J. ~' H
) j. n" r4 J3 G# A/ j3 X, W
# Tibet Quest
( \8 ^6 ~% `9 K+ A( M
# script for QuickBMS
http://aluigi.org/papers.htm#quickbms
. V; ^$ r- v: R& U, a$ @
quickbmsver 0.2.1 # needed for the "binary" type used for MEMORY_FILE2
' n( Q- V, m5 x+ j, t
idstring FPAK
1 [- e8 P( J$ p& {
get DUMMY long
3 d, e! }. [( T* ~
get DUMMY long
' T- z! E. O% j6 {5 B: {
get FILES long
& ]/ g" n( C7 L; i" h+ R; J" i* w" L
set INFO_SIZE long FILES
3 T% A6 o% Q: K3 ?1 c7 i8 {
math INFO_SIZE *= 73
) C# b0 j/ G# f! X$ Y; Q
savepos INFO_OFFSET
/ L2 m; ~' `# u8 ~4 w3 s, k2 h+ p
log MEMORY_FILE INFO_OFFSET INFO_SIZE
7 J# z" j0 x7 l
set VAR_A long INFO_SIZE
. L4 n6 b4 b: N7 _3 ~. ~: s" p" `& B
math VAR_A -= 0x27
, Q% t. U" G5 B
set VAR_C long 0xad
# O2 z4 t& d3 o- Q8 e/ @
set VAR_D long 0x6f
$ |% g6 o8 O2 L) \
for i = 0 < INFO_SIZE
2 i; F7 V4 a" _ d, \# I- J' ?
math VAR_A += VAR_C
9 o' s, h/ z# \' ^5 r
math VAR_C += VAR_A
$ o$ e7 ?8 b, d* n7 r" ]9 E
math VAR_D += VAR_C
5 W. @4 |0 y5 r& K0 c& g
math VAR_D ^= VAR_A
7 X3 o R: n) q8 n/ d/ t
math VAR_A &= 0xff # not needed
% T8 j: v/ H' h$ o. N: H+ y* ~. f
math VAR_C &= 0xff # not needed
* [9 w0 x/ d" ?. c- u9 s, L
math VAR_D &= 0xff # not needed
' y% r {/ J' R4 h) q( V( }
getvarchr BYTE MEMORY_FILE i
. R7 @* y8 S( W7 t
math BYTE ^= VAR_D
& }9 b& ?/ ]% o) ~, {! L- a
putvarchr MEMORY_FILE i BYTE
! h/ @2 f. Y, ?% R' o" @
next i
8 R% b0 i( b* e0 R* S$ c4 k: r
set MEMORY_FILE2 binary "\x7B\x47\x85\xF0\x91\x8B\x2C\x94\xA7\x55\x3A\xF6\x17\xB1\xC2\x06\x6B\x64\x28\x8A\x86\x09\xCE\xA2
( k* }( ^/ P( y# e3 m
\x9F\x58\xDE\x46\xAE\x24\x63\x74\x69\x9D\xFB\xFD\x6E\x50\xE0\x12\x57\x1C\x08\xBC\x1B\xD0\xD9\x81\x01\xE4\xC7\x07\x88\x16\x76
2 ~$ C& r# y! D8 @5 j" A; Y8 M9 P
\x49\x23\x05\xAD\x51\x38\x78\x45\x89\x5D\xCF\x2E\x20\x26\xB6\x3B\xC3\xEB\xEF\x22\xA0\x19\xC6\x6A\xBB\xA1\x41\xF5\xCB\x73
2 \. D. l) M- `8 i* T& a0 i
\xED\xEA\x9B\x90\xA9\x2D\xAA\x15\x27\xDA\x37\xF9\x40\xA4\xE8\x67\xBF\x1E\xB8\xAC\x60\x53\xD2\x54\x1D\x68\xF7\x4F\x00\xC4
+ K f+ J. x* d# i
\x5E\x33\x29\x14\x0C\x3F\x62\xFC\x93\xC1\xB0\xB4\x9C\x1F\x72\xAB\x11\x18\x87\xB5\xE9\xF1\x59\xF8\x36\x5C\xA3\xE3\x79
' A: A4 D1 o$ a1 H+ t1 o$ N q
\x8C\x2F\x0A\xBA\x44\xD8\xC8\xA6\x2A\x03\xCA\x1A\x10\x35\xF3\x77\xD7\x31\xB9\x97\x43\xF2\x3D\xDF\x21\x52\x65\xB2\x34
/ I$ G* k3 S$ C) G
\x6F\x7F\xD3\x2B\xC0\xCC\x6D\x75\xDD\x0D\x13\xDB\xE5\x02\xEE\xB3\xF4\xC9\xFE\x66\x5B\xEC\x7D\x83\x5F\xCD\x8E\xE6\x84\xD4
m! g% I3 r( p$ {; R: _6 d- f
\xBE\x32\xD1\xA5\x56\xC5\x70\x9E\x0B\x9A\x80\x6C\x5A\xE7\x7A\x7C\xB7\x7E\xFA\xDC\x0F\xE1\x4B\x4C\x8F\x4A\x04\x4E\xA8
' U- @5 O3 n+ U
\xFF\x3C\xD6\x0E\x95\x39\x82\x42\x3E\x61\x96\x48\x8D\xAF\x30\xE2\x71\x4D\xD5\x25\x92\xBD\x99\x98"
( {. m+ a* _$ }+ l& n$ {# W1 Y) Y
for i = 0 < FILES
2 j1 Q9 R# p" T
getdstring NAME 0x41 MEMORY_FILE
2 k4 V- \! d. a0 W% l' y
get OFFSET long MEMORY_FILE
4 n$ J* ]/ E" `1 c z f" u& J/ \. P
get SIZE long MEMORY_FILE
, A8 q; l0 A3 J4 k4 u9 H! a) W
log MEMORY_FILE3 OFFSET SIZE
1 _ D8 v v9 ~+ V2 h
for j = 0 < SIZE
4 p6 ?% ~3 ^% F2 [3 |3 W: p
getvarchr BYTE MEMORY_FILE3 j
1 t4 @8 E; U3 `' I
getvarchr BYTE MEMORY_FILE2 BYTE
# H2 l& K2 t) K' m, a E" m
putvarchr MEMORY_FILE3 j BYTE
1 ?) Y* A2 y# S( N. h
next j
3 V/ y1 {; z7 X4 @3 F
log NAME 0 SIZE MEMORY_FILE3
/ h0 _( R: A0 v/ \
next i
作者:
竹のかぐや姫
时间:
2010-5-5 19:00
经测试可用,但是会解出一些识别不了的spr文件
d- V1 S3 k. W$ r% }5 R: k- p: f/ f+ I
还有一些以map为后缀的文件...
作者:
竹のかぐや姫
时间:
2010-5-5 19:05
解决了的说...简单地提取一下就好了
( t$ p' _' ~+ Z; d, K
谢谢大大提供~
作者:
davidgbl
时间:
2011-9-5 22:26
回复
竹のかぐや姫
的帖子
* I' B9 [, M O1 Q5 t8 \
# E+ T7 _5 w* o: J& V! c% I, m1 x" a
如何提取的,能说说吗?
欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/)
Powered by Discuz! X3.2