在分析Syberia2的时候在EXE文件中发现了一个暗藏的打包函数。
1 t% Z# q2 r+ z* q) a当然,现在打包器已经开发完成,暗藏的打包函数已经没什么用了。
6 i% x& D, F9 U# x) Z% g1 S不过,倒是给我们提供了一些启示,这就是在游戏中也许暗藏着一些有用的函数,我们如果能看懂,或是截取出来,也许能够直接用于我们的汉化中。 . p6 [3 L; T& P5 j6 @& H- c2 N
$ u4 l6 }) Z l c
' q+ G' [: D4 t+ X7 q00404990 >/$ 81EC 7C020000 sub esp, 27C ' |4 G4 H6 q" Z+ w9 P% p
00404996 |. 53 push ebx
, O/ ^" ^& S6 E8 H. m5 b00404997 |. 55 push ebp
3 N6 Y4 X' D7 t% g1 o00404998 |. 56 push esi
) `7 w# A- k3 h: M& @5 ?00404999 |. 57 push edi
" L! R/ _& }3 F* P G! C0040499A |. 8BF1 mov esi, ecx
/ @9 w* h6 i3 f( V0040499C |. 68 C0C24000 push 0040C2C0 ; ASCII "Begining construction of the BigFile",LF
1 [6 l( c% o. e/ E7 F2 a3 D004049A1 |. E8 BAC6FFFF call 00401060
: U- r8 V9 f2 w. ~% H004049A6 |. 83C4 04 add esp, 4 ! K6 ?, L; G- q1 G6 q% W+ f% e5 m
004049A9 |. 68 6CC24000 push 0040C26C ; ASCII "Building BigFiles (.syb). This will take about 5-10 minutes. Press CANCEL to start." + s/ y" S& M0 Q; ^7 s$ A
004049AE |. E8 4DC6FFFF call 00401000
+ I7 g2 f5 j/ E7 p9 {004049B3 |. 8B3D 30924000 mov edi, dword ptr [<&MSVCRT.sprintf>; MSVCRT.sprintf
$ t, w/ I3 D8 L5 V9 Q4 d& T004049B9 |. 83C4 04 add esp, 4
. s. c+ w! X$ c; x/ T* w% B004049BC |. 8D9E 38020000 lea ebx, dword ptr [esi+238] 0 D! i/ p0 F' J0 t
004049C2 |. 8D8424 880000>lea eax, dword ptr [esp+88] 5 ~4 ~8 O, P- t4 y6 D
004049C9 |. 53 push ebx ; /<%s> ; A* @; ]2 M- m9 b
004049CA |. 68 58C24000 push 0040C258 ; |format = "%sTextures\InGame\" / ~$ j( v4 s+ v% j# e
004049CF |. 50 push eax ; |s . q( i. l3 m" L& D3 n6 h
004049D0 |. FFD7 call edi ; \sprintf
8 n6 ~. k$ b" ]6 d8 Q# `004049D2 |. 83C4 0C add esp, 0C
7 W& X. f' M, C5 V004049D5 |. 8D8C24 880000>lea ecx, dword ptr [esp+88] v9 m9 D8 E2 e5 C" E% j% z
004049DC |. 51 push ecx 8 I( Y4 C) E: }6 k3 A! A5 A) l* x
004049DD |. 6A 00 push 0 3 v) R- F) C* o$ d
004049DF |. 8BCE mov ecx, esi V: M z$ G h, O$ [* v* x# p
004049E1 |. E8 1A0A0000 call 00405400 - E, U, H8 L5 G9 G3 ^# _+ h8 q
004049E6 |. 53 push ebx 4 V9 \ a8 V3 F& x3 [
004049E7 |. 8D9424 8C0000>lea edx, dword ptr [esp+8C] 8 [ ~% P2 l. e2 E9 w9 k' U
004049EE |. 68 00BA4000 push 0040BA00 ; ASCII "%sSounds\" * s9 C) @) Z$ m7 g" A* A
004049F3 |. 52 push edx % `: Y1 u, `1 e" K
004049F4 |. FFD7 call edi 0 B! h" `+ i2 }& X8 o0 l0 `' o
004049F6 |. 83C4 0C add esp, 0C 5 C1 H; V0 V5 K- h8 B2 V
004049F9 |. 8D8424 880000>lea eax, dword ptr [esp+88] 3 _/ ^0 s% Z F
00404A00 |. 8BCE mov ecx, esi 2 d3 y5 X6 m* i! V1 D7 f6 v6 I
00404A02 |. 50 push eax
- D4 S2 g# J) G2 E7 E00404A03 |. 6A 02 push 2
- O" Y4 @" L: |( j. |) ?00404A05 |. E8 F6090000 call 00405400 ( o! z" g; e9 s9 { g1 K6 A7 C8 }8 z
00404A0A |. 6A 14 push 14
, {% r6 _& Q& j3 X/ E" j: V+ v00404A0C |. 8D4C24 1C lea ecx, dword ptr [esp+1C]
$ b/ s! j0 f% W; B2 ?00404A10 |. FF15 E4924000 call dword ptr [<&VxMath.XFixedSizeAl>; VxMath.XFixedSizeAllocator::XFixedSizeAllocator & ^; R# X* V, @. r4 q8 R, P
00404A16 |. 6A 00 push 0
' W, A0 w. C. m7 o! j1 \% a6 U, X00404A18 |. 8D4C24 3C lea ecx, dword ptr [esp+3C] + M# K% Y; F5 J9 w6 H; w
00404A1C |. C74424 38 010>mov dword ptr [esp+38], 1
7 y* l3 v) @& M3 Y2 M: A+ O! l00404A24 |. E8 F71D0000 call 00406820
* |7 b- {9 `0 f) B: z$ D" `. [( F00404A29 |. 6A 10 push 10
' \5 v+ B3 Q0 q00404A2B |. 8D4C24 48 lea ecx, dword ptr [esp+48]
! T8 k9 D9 W% E; M5 ^00404A2F |. E8 2C1E0000 call 00406860
$ P' v( x4 p$ C( z! O3 k7 D00404A34 |. 8D4C24 58 lea ecx, dword ptr [esp+58]
, k! H0 H& ~: |& i- ~0 p; y, H- O ]00404A38 |. E8 A3060000 call 004050E0
7 P' ]! }! @& a8 ]00404A3D |. 68 00800000 push 8000
6 z7 c2 |1 V3 ]. y( F00404A42 |. 8D4C24 64 lea ecx, dword ptr [esp+64]
2 u: r+ F! B- {& o. ~8 S6 q00404A46 |. FF15 D0924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::VxCachedFile 7 z; G# o7 d8 z' f
00404A4C |. 8D4C24 78 lea ecx, dword ptr [esp+78]
6 h) H& |6 |# l) t00404A50 |. E8 8B060000 call 004050E0
$ L3 U% C6 p% c- `00404A55 |. 8D8C24 800000>lea ecx, dword ptr [esp+80]
2 ]2 k/ x, N: h/ L( G4 ^00404A5C |. FF15 DC924000 call dword ptr [<&VxMath.VxFile::VxFi>; VxMath.VxFile::VxFile 3 P4 a9 c/ W6 |! f
00404A62 |. 8D4C24 10 lea ecx, dword ptr [esp+10]
; b$ B! {5 H2 N% v a- k00404A66 |. 68 04C04000 push 0040C004 ; ASCII ".mp3" : c& ]; q$ x ~! {9 o- V
00404A6B |. 51 push ecx # O# M1 D; b. {( @: s6 f2 s
00404A6C |. 8D5424 20 lea edx, dword ptr [esp+20] ; R3 d b4 s5 f, a; ~
00404A70 |. 6A 02 push 2 Q9 q1 y' O, ?
00404A72 |. 52 push edx
+ g0 g" F" b3 d1 j; E00404A73 |. 8BCE mov ecx, esi $ q* M3 S# M0 q9 T
00404A75 |. C74424 20 000>mov dword ptr [esp+20], 0 3 b. f8 c) V& d
00404A7D |. E8 6E070000 call 004051F0 / Y2 k" l5 v. v2 j' \0 F5 y* e
00404A82 |. 8D4424 10 lea eax, dword ptr [esp+10] ; V# A- |0 e1 Z; {- `
00404A86 |. 68 FCBF4000 push 0040BFFC ; ASCII ".wav"
' j X; `0 @: x* R( w5 w" y00404A8B |. 50 push eax 6 J/ O( Z3 C" i$ d- B9 z9 |. i7 {
00404A8C |. 8D4C24 20 lea ecx, dword ptr [esp+20] 9 [2 U) Z1 a" f. D
00404A90 |. 6A 02 push 2 ) T% V. m/ [3 g1 t! K4 v
00404A92 |. 51 push ecx
1 U) H1 |4 T* m* b C* a2 _& M00404A93 |. 8BCE mov ecx, esi
4 h6 M* F8 R* Q/ }00404A95 |. E8 56070000 call 004051F0
S' R3 h! r3 M) _7 ]00404A9A |. 8D5424 10 lea edx, dword ptr [esp+10] : \0 S4 B% X4 ?$ l b9 d$ S
00404A9E |. 68 1CC04000 push 0040C01C ; ASCII ".jpg"
8 K: ?3 ?8 b/ x) R0 L/ s" e% Z00404AA3 |. 52 push edx 6 e5 l) k/ J* a6 u$ U1 O
00404AA4 |. 8D4424 20 lea eax, dword ptr [esp+20]
" e9 a& I( M0 V0 K# i00404AA8 |. 6A 00 push 0 ) b- r3 j& ~5 Y! b& B
00404AAA |. 50 push eax
; e" i& G1 K' [7 K5 x% [00404AAB |. 8BCE mov ecx, esi
# V: w, W2 g! L7 E) z% S00404AAD |. E8 3E070000 call 004051F0
& \" [) m$ @- D( T" f1 L( C00404AB2 |. 68 14C04000 push 0040C014 ; ASCII ".tga"
+ N- }+ d. ~6 r4 R" M* z/ M00404AB7 |. 8D4C24 14 lea ecx, dword ptr [esp+14]
8 h' ?2 \" h/ {* D2 \00404ABB |. 51 push ecx / P# x+ i* t% b" K/ u. {
00404ABC |. 8D5424 20 lea edx, dword ptr [esp+20]
/ A$ `" d; w5 k# W2 n* {4 c00404AC0 |. 6A 00 push 0
3 P5 F: B) r' y00404AC2 |. 52 push edx ; \/ I. I, E( N; a
00404AC3 |. 8BCE mov ecx, esi
' |, w+ ?( {) v" z* o00404AC5 |. E8 26070000 call 004051F0
1 g, ?( O. l3 v) b, L- V0 f' F1 n' @00404ACA |. 8D4424 10 lea eax, dword ptr [esp+10] % J) n9 d2 A4 o
00404ACE |. 68 0CC04000 push 0040C00C ; ASCII ".png" 9 }- T: u' o3 N8 b- x$ B' Y* @6 w
00404AD3 |. 50 push eax 8 R! m! l7 E3 W& M1 S9 d
00404AD4 |. 8D4C24 20 lea ecx, dword ptr [esp+20] + w9 N* N5 v. n* @/ L& Z6 K: L
00404AD8 |. 6A 00 push 0 $ l+ i$ X5 T a; {; S+ z% E @
00404ADA |. 51 push ecx , \6 H1 ?! o' u0 s
00404ADB |. 8BCE mov ecx, esi , b7 u( g# g. U, s7 @( V
00404ADD |. E8 0E070000 call 004051F0 ; ~9 [! }1 }+ ]7 y. Q! P0 T
00404AE2 |. 8B5424 10 mov edx, dword ptr [esp+10]
5 }0 f" R1 h; [% U: y. J% D5 ?00404AE6 |. 52 push edx 6 U$ [1 F# G X* B
00404AE7 |. 68 2CC24000 push 0040C22C ; ASCII " Added %i file, saving MinimalRes.syb.",LF
, @ [6 u: n" y7 m- H- E0 d00404AEC |. E8 6FC5FFFF call 00401060
. u) t; q( H) }! O! _8 [$ q: g. L) e00404AF1 |. 83C4 08 add esp, 8 + }7 G P0 ?6 _$ X' B( f
00404AF4 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
* n9 X9 t9 A; _9 O2 [: `8 U00404AF8 |. 6A 00 push 0
" W i7 o3 v2 h9 U00404AFA |. 68 18BA4000 push 0040BA18 ; ASCII "Data\MinimalRes.syb" # w; m% y! L# A. [9 K" q1 l
00404AFF |. FF15 D8924000 call dword ptr [<&VxMath.VxBigFile::S>; VxMath.VxBigFile::Save 6 F. {' k) D/ W/ K8 j7 J: J4 X
00404B05 |. 8B8E 28010000 mov ecx, dword ptr [esi+128]
5 `" E+ c& a8 E* F1 b, Z U0 J00404B0B |. 6A 00 push 0 $ W K1 v" p A( G" H
00404B0D |. E8 2C340000 call <jmp.&CK2.CKContext::GetPathMana>
! P+ K9 T& X r3 T1 Z2 f5 S" k7 i# l00404B12 |. 8BC8 mov ecx, eax 9 f1 P/ t4 m& ^, w' W+ Q/ Z
00404B14 |. E8 61340000 call <jmp.&CK2.CKPathManager::GetPath>
) A n1 g- N* m0 `4 j00404B19 |. 85C0 test eax, eax
7 r, g8 t; Q: m1 z" \) P6 Q00404B1B |. 7E 1B jle short 00404B38 ! |# Z: |+ j9 M0 c( B+ N% Y* |8 c" F
00404B1D |. 8BE8 mov ebp, eax ' Q9 E4 E* P0 h# b
00404B1F |> 8B8E 28010000 /mov ecx, dword ptr [esi+128] 7 e5 _4 ?2 a+ n7 [
00404B25 |. 6A 00 |push 0 ( G; _9 Z( q# n$ k, o* u# D% L- E9 c0 I
00404B27 |. 6A 00 |push 0 1 X8 ?( y* Z$ {6 w3 d: F# D8 O
00404B29 |. E8 10340000 |call <jmp.&CK2.CKContext::GetPathMan>
1 Z" a h1 U% D4 X' k# ^) L2 U& }& S00404B2E |. 8BC8 |mov ecx, eax + k0 t0 C- R: d5 J; b
00404B30 |. E8 3F340000 |call <jmp.&CK2.CKPathManager::Remove> % j+ }. T; N$ A: f- N! w! K3 g
00404B35 |. 4D |dec ebp
% |9 r8 B$ t' t9 r- e- @00404B36 |.^ 75 E7 \jnz short 00404B1F
$ u7 h5 c- b) A9 r \3 z00404B38 |> 8B8E 28010000 mov ecx, dword ptr [esi+128]
9 Z8 R" s3 o T2 S00404B3E |. 6A 00 push 0
* h' K% Y4 a: _7 c" l00404B40 |. E8 F9330000 call <jmp.&CK2.CKContext::GetPathMana>
i! m3 I2 x; w7 A00404B45 |. 8BC8 mov ecx, eax 9 E' t |* E- o) T4 m/ E6 Z+ _
00404B47 |. E8 2E340000 call <jmp.&CK2.CKPathManager::GetPath>
8 |3 {: G5 V6 V00404B4C |. 85C0 test eax, eax ' g* Q% l) r# N( U
00404B4E |. 74 0E je short 00404B5E
* p O" x# m! P, e0 r! H% `00404B50 |. 50 push eax
. O, f; e! {! d2 ]' l6 S7 ]; W+ ] f00404B51 |. 68 C4BF4000 push 0040BFC4 ; ASCII "RemoveAllPath: Error there is %i path still present!" $ N( m0 W& Y3 g; K
00404B56 |. E8 A5C4FFFF call 00401000
+ l& ^" p" B3 p& v00404B5B |. 83C4 08 add esp, 8 2 M3 o' }& K: ~4 S
00404B5E |> 8D8C24 800000>lea ecx, dword ptr [esp+80] 8 u0 Y3 C+ J& d0 z$ f, j# I: ]2 ?$ ]
00404B65 |. FF15 C8924000 call dword ptr [<&VxMath.VxFile::~VxF>; VxMath.VxFile::~VxFile
M% M* K \% u s- o8 B, u00404B6B |. 8B2D CC924000 mov ebp, dword ptr [<&VxMath.XString>; VxMath.XString::~XString
0 U. x! j0 a& K00404B71 |. 8D4C24 78 lea ecx, dword ptr [esp+78]
1 T& [/ H* |7 L) N8 ]% f4 d00404B75 |. FFD5 call ebp ; <&VxMath.XString::~XString>
. T4 e) v# d/ v! U00404B77 |. 8D4C24 60 lea ecx, dword ptr [esp+60]
1 e2 A4 U2 d+ Q! f, h3 ]# l: r% m" |00404B7B |. FF15 C4924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::~VxCachedFile
( R0 W5 W% v9 o1 \00404B81 |. 8D4C24 58 lea ecx, dword ptr [esp+58]
9 [; G$ s) O( w9 o00404B85 |. FFD5 call ebp
: A0 o& l& s. w00404B87 |. 8D4C24 4C lea ecx, dword ptr [esp+4C]
6 D% j+ l2 u$ r: o3 u00404B8B |. E8 E01F0000 call 00406B70 ( U6 N; t6 T5 ]$ {
00404B90 |. 8B4424 44 mov eax, dword ptr [esp+44] 9 a. d9 c7 _) R. P3 L2 k
00404B94 |. 50 push eax
& ^5 j$ l% T- |* {4 \4 H3 Y00404B95 |. E8 46340000 call <jmp.&MSVCRT.operator delete>
, X4 @/ Y! X3 T/ w" G# H" p; r) {4 r00404B9A |. 8B4C24 3C mov ecx, dword ptr [esp+3C]
4 f) M/ A( \* [' Y: O- a00404B9E |. 33C0 xor eax, eax
# p5 o/ B- o% O/ Y00404BA0 |. 51 push ecx 2 o8 ]7 ?0 ?, t: v7 ~! i- @+ \% i1 N
00404BA1 |. 894424 4C mov dword ptr [esp+4C], eax & J# v2 u) t0 u, [6 s! N$ x
00404BA5 |. 894424 50 mov dword ptr [esp+50], eax h' |3 `3 x3 b
00404BA9 |. E8 32340000 call <jmp.&MSVCRT.operator delete>
, e! s; P+ Q( g, J00404BAE |. 83C4 08 add esp, 8 ) X1 S, O9 M# ~0 T4 v) x
00404BB1 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
& ]9 Y! S3 D9 l$ A00404BB5 |. FF15 C0924000 call dword ptr [<&VxMath.XFixedSizeAl>; VxMath.XFixedSizeAllocator::~XFixedSizeAllocator 4 y, s" ?- U D. t
00404BBB |. 6A 01 push 1
$ h8 A- c* ^. ?3 d' R1 w00404BBD |. 8D4C24 1C lea ecx, dword ptr [esp+1C]
, B/ p2 \/ C, L3 m, k" A00404BC1 |. E8 3A1C0000 call 00406800 $ L* |& C' w" h8 H
00404BC6 |. 6A 00 push 0
9 w$ N: d {4 ?4 |5 [00404BC8 |. 8D4C24 3C lea ecx, dword ptr [esp+3C] - z. D6 s8 w- D+ b; k' H8 D
00404BCC |. E8 4F1C0000 call 00406820 2 y7 m5 H: h$ F; |9 P
00404BD1 |. 6A 10 push 10
, K `( a5 p* v0 ?00404BD3 |. 8D4C24 48 lea ecx, dword ptr [esp+48] 7 I6 c& o; p5 s; h2 A, V; G
00404BD7 |. E8 841C0000 call 00406860
: \+ J# Z' P* _ s2 c2 G( k1 t5 B00404BDC |. 8D4C24 58 lea ecx, dword ptr [esp+58] d( p. T' V- \7 F8 S+ }
00404BE0 |. E8 FB040000 call 004050E0
# p8 A, o9 i0 w7 |00404BE5 |. 68 00800000 push 8000 0 j/ J! o3 K, g# ^
00404BEA |. 8D4C24 64 lea ecx, dword ptr [esp+64] : ?0 F# b) Z& S8 P1 X$ ~4 R/ T0 ^
00404BEE |. FF15 D0924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::VxCachedFile
+ Z: {% O# x1 a" Z5 L# d5 H00404BF4 |. 8D4C24 78 lea ecx, dword ptr [esp+78] 4 Z6 Z' x! j; R h& c# U: @1 n
00404BF8 |. E8 E3040000 call 004050E0
0 `, |2 y/ u2 R- L8 b% L( n00404BFD |. 8D8C24 800000>lea ecx, dword ptr [esp+80] 8 e' `; m) ?2 k+ k' ^
00404C04 |. FF15 DC924000 call dword ptr [<&VxMath.VxFile::VxFi>; VxMath.VxFile::VxFile
. F; \5 P' q. O3 I% M2 ~" w* `, N00404C0A |. 6A 00 push 0
6 D+ g- ]4 `, q0 A00404C0C |. 8D5424 14 lea edx, dword ptr [esp+14] 6 u: T% d4 |, J7 J# W
00404C10 |. 68 24C24000 push 0040C224 ; ASCII ".bik"
$ C% L5 t. P5 @+ m0 U+ S00404C15 |. 52 push edx
2 r& v8 i7 O/ q$ R00404C16 |. 8D4424 24 lea eax, dword ptr [esp+24]
m* c' }: [) W- o# m& I9 T00404C1A |. 68 14C24000 push 0040C214 ; ASCII "Video\PackMenu\"
8 z/ Q. D# i: O0 ]00404C1F |. 50 push eax
" w, J g, D& ]1 q" W: h/ ?00404C20 |. 8BCE mov ecx, esi
, P: |7 G0 Y3 u" Q d2 \00404C22 |. C74424 24 000>mov dword ptr [esp+24], 0 : D+ b2 W6 x A7 [- [. z3 D" ~
00404C2A |. E8 61060000 call 00405290 9 i$ F5 @, I9 V) o$ a4 t$ y
00404C2F |. B8 58B44000 mov eax, 0040B458
* h% Z. `* D, X, s1 T5 T00404C34 |. 894424 14 mov dword ptr [esp+14], eax 8 ~: n9 c W0 `5 a% @" a
00404C38 |> 8B48 04 /mov ecx, dword ptr [eax+4]
' S# E9 m/ z Z* N8 U6 x# r1 b00404C3B |. 85C9 |test ecx, ecx / \; }( u6 j9 @) m5 ]8 g1 E
00404C3D |. 75 39 |jnz short 00404C78 8 V& S6 c6 y. l; x" B
00404C3F |. 8B08 |mov ecx, dword ptr [eax] Y, T4 K) V5 k3 p
00404C41 |. 8D9424 8C0100>|lea edx, dword ptr [esp+18C] . [8 f# I3 `7 [2 j3 `
00404C48 |. 51 |push ecx + h0 ^. p) j9 e4 K ^
00404C49 |. 68 B0BF4000 |push 0040BFB0 ; ASCII "Data\Animations\%s\"
4 e: L8 Y7 U$ S/ ?+ c @00404C4E |. 52 |push edx : [) N+ O' R) B6 F: s
00404C4F |. FFD7 |call edi ( f* L0 m2 C: L0 I W1 h
00404C51 |. 83C4 0C |add esp, 0C
7 T) f' p* ~7 I; G2 X' w" D9 h1 s00404C54 |. 8D4424 10 |lea eax, dword ptr [esp+10] 7 x) } m$ D& `& Z- m
00404C58 |. 8D8C24 8C0100>|lea ecx, dword ptr [esp+18C]
! e% o9 z2 n @' [+ H00404C5F |. 8D5424 18 |lea edx, dword ptr [esp+18]
* D9 Z* S9 W A7 }00404C63 |. 6A 00 |push 0
( N7 y- [8 q2 V5 D4 m+ _, ~00404C65 |. 68 A8BF4000 |push 0040BFA8 ; ASCII ".nmo" ' u. Z. H7 X8 X3 `2 e
00404C6A |. 50 |push eax
4 Y6 o" g) n! P00404C6B |. 51 |push ecx ! m4 f% i5 V* o8 d
00404C6C |. 52 |push edx ) ?3 `1 r! y: y4 f | ]. _
00404C6D |. 8BCE |mov ecx, esi
# `' v9 O( j8 R- ^( {/ _& D E00404C6F |. E8 1C060000 |call 00405290
7 Q A$ k4 B/ P9 s; ^00404C74 |. 8B4424 14 |mov eax, dword ptr [esp+14] # Y" D0 C% V, I; ^/ Q5 i3 p
00404C78 |> 83C0 08 |add eax, 8 , i/ t# M' Y: Z6 T
00404C7B |. 3D E0B54000 |cmp eax, 0040B5E0
5 N4 I4 G" l6 [& E# C; [00404C80 |. 894424 14 |mov dword ptr [esp+14], eax $ V- E5 A! I* T4 d& s6 f3 N( c
00404C84 |.^ 72 B2 \jb short 00404C38 9 ~, A/ B' g- Z. \" Y" }
00404C86 |. 8B4424 10 mov eax, dword ptr [esp+10]
% p6 J, U) D: T# U" p* D* G00404C8A |. 50 push eax
5 W6 e4 X" d5 m4 b1 G3 ?' w. G00404C8B |. 68 ECC14000 push 0040C1EC ; ASCII " Added %i file, saving Minimal.syb.",LF
9 Z6 A. D" X( d/ R% q2 g4 x! q& H! b00404C90 |. E8 CBC3FFFF call 00401060 ' y; o2 R0 N1 {: L) l ?6 H
00404C95 |. 83C4 08 add esp, 8 * P# j: `/ I. y' L) g
00404C98 |. 8D4C24 18 lea ecx, dword ptr [esp+18] . i5 n) u) W! S8 L6 O8 h
00404C9C |. 6A 00 push 0 + y: }# w5 _; t
00404C9E |. 68 2CBA4000 push 0040BA2C ; ASCII "Data\Minimal.syb"
; l/ Z( a3 l, D, p00404CA3 |. FF15 D8924000 call dword ptr [<&VxMath.VxBigFile::S>; VxMath.VxBigFile::Save
( X$ o P8 ^, e. J L" X/ |+ K% n3 y00404CA9 |. 8D8C24 800000>lea ecx, dword ptr [esp+80] & \ M q* L9 b3 b" c% ]
00404CB0 |. FF15 C8924000 call dword ptr [<&VxMath.VxFile::~VxF>; VxMath.VxFile::~VxFile 9 N4 D* Y; w- X+ m
00404CB6 |. 8D4C24 78 lea ecx, dword ptr [esp+78]
" P% o: E* Z6 w3 X# p00404CBA |. FFD5 call ebp % \0 U! K5 F2 I2 }+ P
00404CBC |. 8D4C24 60 lea ecx, dword ptr [esp+60] / [1 z9 W8 J+ _7 n" y$ \$ S7 Z! w! S! s$ k
00404CC0 |. FF15 C4924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::~VxCachedFile
) ?' M- Y$ [' W% b& X00404CC6 |. 8D4C24 58 lea ecx, dword ptr [esp+58]
u3 r: {) I$ t4 n* F00404CCA |. FFD5 call ebp 1 t2 [8 {: \1 }7 y+ k3 \
00404CCC |. 8D4C24 44 lea ecx, dword ptr [esp+44]
& W0 X, q' ?5 F- f- D, }$ |00404CD0 |. E8 1B1D0000 call 004069F0
% `' E5 z7 V1 x$ a* z+ f00404CD5 |. 8B4C24 38 mov ecx, dword ptr [esp+38]
% k: N y+ v' M- @00404CD9 |. 51 push ecx
2 X3 E5 Q: B, ?' c3 _00404CDA |. E8 01330000 call <jmp.&MSVCRT.operator delete> 0 b. a2 O5 b8 Y6 u- w
00404CDF |. 83C4 04 add esp, 4
6 S- |5 }% v9 m4 E& J00404CE2 |. 8D4C24 18 lea ecx, dword ptr [esp+18] # r) |: J7 \ n- D6 i, t O6 r
00404CE6 |. FF15 C0924000 call dword ptr [<&VxMath.XFixedSizeAl>; VxMath.XFixedSizeAllocator::~XFixedSizeAllocator
5 j g8 a- M) z00404CEC |. 53 push ebx
E6 v* C7 l* W" v; N3 m6 X00404CED |. 8D9424 8C0000>lea edx, dword ptr [esp+8C] # O( Q9 c# W+ F) c, i; q: O/ B" S
00404CF4 |. 68 DCC14000 push 0040C1DC ; ASCII "%sTextures\A1_"
6 i. | m+ m! U) q# V# d" C7 W00404CF9 |. 52 push edx
1 t. S3 K, ?8 y; e# `; \$ ^00404CFA |. FFD7 call edi
" Y5 g! j5 c3 |00404CFC |. 83C4 0C add esp, 0C
4 G% d5 ?7 w, V1 V$ P00404CFF |. 8D8424 880000>lea eax, dword ptr [esp+88] . ~3 G" G! E' [3 G1 v9 `
00404D06 |. 8BCE mov ecx, esi
' D, H5 e" p; O% n1 L8 U% j( B00404D08 |. 50 push eax 5 k$ _0 n1 \: [4 b/ G( M1 {: ]
00404D09 |. 6A 00 push 0 7 ]* y3 B4 r, r7 K# [
00404D0B |. E8 F0060000 call 00405400
: a) [5 ^" c4 f1 L2 O00404D10 |. 6A 01 push 1
0 [: ~! b5 ~: `00404D12 |. 8D4C24 1C lea ecx, dword ptr [esp+1C]
" `$ K+ A+ p J% p) v, a00404D16 |. E8 E51A0000 call 00406800 * A* E* A3 O/ w
00404D1B |. 6A 00 push 0
& z- h, t; L) {( G6 n# h8 t00404D1D |. 8D4C24 3C lea ecx, dword ptr [esp+3C]
t( T0 ?" O; ^9 D3 P% S( m( c" k0 O00404D21 |. E8 FA1A0000 call 00406820 ; V6 _+ N E: l' E( ?
00404D26 |. 6A 10 push 10 & d! ~! K: g% k2 z* ^. {
00404D28 |. 8D4C24 48 lea ecx, dword ptr [esp+48] ' k8 W6 D3 }/ }( ], |
00404D2C |. E8 2F1B0000 call 00406860
1 l' R6 x( }6 C4 L00404D31 |. 8D4C24 58 lea ecx, dword ptr [esp+58]
" ]; B5 n4 C& f q+ z00404D35 |. E8 A6030000 call 004050E0 - T: \" S; x7 v
00404D3A |. 68 00800000 push 8000 7 { m/ q' t8 v6 l
00404D3F |. 8D4C24 64 lea ecx, dword ptr [esp+64]
# m/ T+ [# l- G8 q00404D43 |. FF15 D0924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::VxCachedFile
+ p$ Q: c- _( M( N* G$ f00404D49 |. 8D4C24 78 lea ecx, dword ptr [esp+78] - L8 t: h3 K5 N8 a( j/ i, Q8 w0 D6 f
00404D4D |. E8 8E030000 call 004050E0 9 c1 v7 ~0 |8 S3 d
00404D52 |. 8D8C24 800000>lea ecx, dword ptr [esp+80] * T) \8 O% G) i% ?% O
00404D59 |. FF15 DC924000 call dword ptr [<&VxMath.VxFile::VxFi>; VxMath.VxFile::VxFile ! z+ [6 a! F/ Q& J t3 w
00404D5F |. 8D4C24 10 lea ecx, dword ptr [esp+10]
" b, g" K3 ]% L. u5 S00404D63 |. 68 1CC04000 push 0040C01C ; ASCII ".jpg" ( s" P: D" b9 |9 h
00404D68 |. 51 push ecx & Y$ C5 Y* V9 H/ M9 }' l" s
00404D69 |. 8D5424 20 lea edx, dword ptr [esp+20] 3 O% @" j9 G2 D* F; \* _ c
00404D6D |. 6A 00 push 0 $ k3 q- u( y5 U9 U* Q$ i
00404D6F |. 52 push edx
/ l4 X, j8 L/ R& C00404D70 |. 8BCE mov ecx, esi 6 Q/ Q& _* O( n: u. G
00404D72 |. C74424 20 000>mov dword ptr [esp+20], 0
6 u- k9 l. q2 I. @00404D7A |. E8 71040000 call 004051F0 % u$ R! o2 ^+ }1 t4 Z# w; n
00404D7F |. 8D4424 10 lea eax, dword ptr [esp+10] ! ^6 y6 ?7 _& e1 K
00404D83 |. 68 14C04000 push 0040C014 ; ASCII ".tga"
T, C. ^0 Z! a/ `: Y00404D88 |. 50 push eax u9 G0 ` B4 x2 U- l! i4 S$ v
00404D89 |. 8D4C24 20 lea ecx, dword ptr [esp+20]
: r9 q& K! }5 y2 E' u00404D8D |. 6A 00 push 0 ' Z+ O8 T4 ~* `2 ]! L" X
00404D8F |. 51 push ecx
( s5 t$ Z: c& X7 |* M* l00404D90 |. 8BCE mov ecx, esi ; { C$ x: A6 F1 G( H
00404D92 |. E8 59040000 call 004051F0
/ n0 f0 G6 }2 T$ J3 Y00404D97 |. 8D5424 10 lea edx, dword ptr [esp+10] ! |% P0 w& A- w: `
00404D9B |. 68 0CC04000 push 0040C00C ; ASCII ".png"
4 v$ f5 {) j' { E: X$ t& q00404DA0 |. 52 push edx k! g& t2 P, }8 C2 z9 e
00404DA1 |. 8D4424 20 lea eax, dword ptr [esp+20] 7 B* E$ \7 K8 t/ }1 U
00404DA5 |. 6A 00 push 0
4 h( e6 @/ N/ `; L' K6 _00404DA7 |. 50 push eax c4 p! Z9 s! k' s- h D. N7 R
00404DA8 |. 8BCE mov ecx, esi " k5 F% P H" f
00404DAA |. E8 41040000 call 004051F0 3 T# ^1 x3 X' f/ u% G8 ?- x
00404DAF |. 8B4C24 10 mov ecx, dword ptr [esp+10] 6 _0 q+ h$ Z6 D6 L, a
00404DB3 |. 51 push ecx
5 ?' u$ {% y. s9 {8 G$ D! h' M, c, U00404DB4 |. 68 B0C14000 push 0040C1B0 ; ASCII " Added %i file, saving Medium1Res.syb.",LF ; y" G7 W8 P* y9 L9 A6 M
00404DB9 |. E8 A2C2FFFF call 00401060 1 V- I* |+ M5 T+ {) x8 z
00404DBE |. 83C4 08 add esp, 8
# E5 U! t, V7 i7 H7 o0 ^00404DC1 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
# z% K! b7 P; a00404DC5 |. 6A 00 push 0 6 i* T8 N; L. F: @5 W9 U
00404DC7 |. 68 9CC14000 push 0040C19C ; ASCII "Data\Medium1Res.syb"
4 E. h7 O. L0 b2 g0 M) q4 m00404DCC |. FF15 D8924000 call dword ptr [<&VxMath.VxBigFile::S>; VxMath.VxBigFile::Save
5 c2 U& o3 x; z& \00404DD2 |. 8B8E 28010000 mov ecx, dword ptr [esi+128]
& H x4 k( \( a, v( D! U00404DD8 |. 6A 00 push 0 3 E2 c$ j2 E T
00404DDA |. E8 5F310000 call <jmp.&CK2.CKContext::GetPathMana>
/ J! i }3 B) w8 |00404DDF |. 8BC8 mov ecx, eax + C h( B# z4 \, h: v6 d. A+ ]
00404DE1 |. E8 94310000 call <jmp.&CK2.CKPathManager::GetPath>
( `0 i |2 N" y; S. M$ `: i" I' e7 ~00404DE6 |. 85C0 test eax, eax
+ B& @* A1 G4 i00404DE8 |. 7E 25 jle short 00404E0F 9 y' S- o/ q9 f7 m# h/ b9 B$ L5 {
00404DEA |. 894424 14 mov dword ptr [esp+14], eax
+ }. O% f' `" z* \; j8 W9 ]/ w; M00404DEE |> 8B8E 28010000 /mov ecx, dword ptr [esi+128] + y/ F( m1 _+ o: g9 M
00404DF4 |. 6A 00 |push 0
: P% e2 y8 T0 i7 F00404DF6 |. 6A 00 |push 0
9 _; c1 d1 A3 n00404DF8 |. E8 41310000 |call <jmp.&CK2.CKContext::GetPathMan>
) [) ?3 }5 n+ \4 \8 q00404DFD |. 8BC8 |mov ecx, eax V/ A) o4 v. y# s
00404DFF |. E8 70310000 |call <jmp.&CK2.CKPathManager::Remove>
- |8 H% @: w7 h& Q00404E04 |. 8B4424 14 |mov eax, dword ptr [esp+14]
2 G* q" z/ C" Y7 G7 u3 ^00404E08 |. 48 |dec eax 1 C9 t" _( {) V5 ~/ h7 J
00404E09 |. 894424 14 |mov dword ptr [esp+14], eax " t& ~ ~7 T/ d0 P6 f. S' X
00404E0D |.^ 75 DF \jnz short 00404DEE ( x- q' |. ? l* ~; @
00404E0F |> 8B8E 28010000 mov ecx, dword ptr [esi+128]
0 Z! [+ w# g6 A8 m5 b8 i5 ~" ~ O00404E15 |. 6A 00 push 0
% c9 v) J( b: R* d# b5 R00404E17 |. E8 22310000 call <jmp.&CK2.CKContext::GetPathMana>
7 p! c& }; A. f M- i00404E1C |. 8BC8 mov ecx, eax
: V. j% a6 y u! v3 r00404E1E |. E8 57310000 call <jmp.&CK2.CKPathManager::GetPath> 4 R- N6 ~6 U3 H' D. m" x6 J
00404E23 |. 85C0 test eax, eax ; [- c. \9 F: h9 p5 c3 V
00404E25 |. 74 0E je short 00404E35 4 d k" E" u% `9 J$ L% r) R6 ` e
00404E27 |. 50 push eax 9 h# ]; X9 k; r/ N" D
00404E28 |. 68 C4BF4000 push 0040BFC4 ; ASCII "RemoveAllPath: Error there is %i path still present!" 4 G- n. D* `6 |& Z) a3 h3 B8 v
00404E2D |. E8 CEC1FFFF call 00401000
; C1 q9 i- P% M, Q5 }00404E32 |. 83C4 08 add esp, 8 6 G v% s7 m3 A$ }4 R
00404E35 |> 8D8C24 800000>lea ecx, dword ptr [esp+80]
+ `9 } d8 g: R/ U; Y. z1 `00404E3C |. FF15 C8924000 call dword ptr [<&VxMath.VxFile::~VxF>; VxMath.VxFile::~VxFile - M/ A: ?# k: H& z2 }8 `
00404E42 |. 8D4C24 78 lea ecx, dword ptr [esp+78]
$ H5 d& X/ I2 K, c2 g' W00404E46 |. FFD5 call ebp 1 f* X2 \" }0 q% K1 O" l5 @7 Y" q
00404E48 |. 8D4C24 60 lea ecx, dword ptr [esp+60] + e* v6 }1 c Y1 Y8 \
00404E4C |. FF15 C4924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::~VxCachedFile 6 g4 O& N- t) M* X) p9 i
00404E52 |. 8D4C24 58 lea ecx, dword ptr [esp+58]
: N4 x: v" I+ m' i8 Z00404E56 |. FFD5 call ebp ' y- o G- z( F0 S- I
00404E58 |. 8D4C24 44 lea ecx, dword ptr [esp+44] ( w* ~& D. X# N' C
00404E5C |. E8 8F1B0000 call 004069F0 # Q: v% v, E, B7 r4 \: h
00404E61 |. 8B5424 38 mov edx, dword ptr [esp+38]
. h* A( T3 ]8 u T1 T5 _/ o00404E65 |. 52 push edx
- z4 O. ]9 m2 n( z00404E66 |. E8 75310000 call <jmp.&MSVCRT.operator delete> , [/ a1 q3 }- N+ m- [
00404E6B |. 83C4 04 add esp, 4
5 P9 o5 |1 s( p, x" u7 L# @, l) S# \6 C00404E6E |. 8D4C24 18 lea ecx, dword ptr [esp+18]
8 k! I9 m: h0 G4 C' d: e0 @! ?00404E72 |. FF15 C0924000 call dword ptr [<&VxMath.XFixedSizeAl>; VxMath.XFixedSizeAllocator::~XFixedSizeAllocator
+ Q3 ]& k* j' w( r( M00404E78 |. 8D4C24 18 lea ecx, dword ptr [esp+18] $ ? x+ w9 ?8 o. T
00404E7C |. E8 6F020000 call 004050F0 2 ~ Z7 z& p; L1 l* Z3 l% X
00404E81 |. 6A 00 push 0 9 M6 }9 I" B+ u4 Z% |. C
00404E83 |. 8D4424 14 lea eax, dword ptr [esp+14]
- A9 C. x. b0 `& K9 S$ U: t00404E87 |. 68 24C24000 push 0040C224 ; ASCII ".bik" 9 a( @7 G$ F( H5 k
00404E8C |. 50 push eax
" A9 H8 j: C4 Y) g0 [; w. m9 N00404E8D |. 8D4C24 24 lea ecx, dword ptr [esp+24]
# R# {. L# }- g1 S00404E91 |. 68 8CC14000 push 0040C18C ; ASCII "Video\Pack1\"
7 U! V4 E, X* b) V F {00404E96 |. 51 push ecx $ T2 H; F+ A9 H% N
00404E97 |. 8BCE mov ecx, esi ! M: J5 }' B, W* g4 K
00404E99 |. C74424 24 000>mov dword ptr [esp+24], 0
( {% C1 D- O4 u) I7 c$ G2 a4 D00404EA1 |. E8 EA030000 call 00405290 + l) z! r- V# m# G% I8 b
00404EA6 |. 8D5424 10 lea edx, dword ptr [esp+10]
a4 j2 k3 w! n5 d3 L00404EAA |. 6A 01 push 1
" t7 n3 _9 R# o5 q6 t00404EAC |. 8D4424 1C lea eax, dword ptr [esp+1C]
5 u. k1 g6 ]5 F3 M8 f6 A1 r/ d3 F00404EB0 |. 52 push edx " I: p( C6 B8 w1 V( y. o7 `
00404EB1 |. 50 push eax , i/ \( j1 S3 m* J' z' I+ s6 h
00404EB2 |. 8BCE mov ecx, esi E' u8 P7 A+ w- G; k
00404EB4 |. E8 E7F9FFFF call 004048A0
& c6 y) w- n. Z) U0 }# U( {00404EB9 |. 8B4C24 10 mov ecx, dword ptr [esp+10] # Y+ F- T5 I! _, c
00404EBD |. 51 push ecx ; @! ^* i4 e, {- E! ^& v
00404EBE |. 68 64C14000 push 0040C164 ; ASCII " Added %i file, saving Medium1.syb.",LF ) w; }7 }7 D# Y C& \- T; b
00404EC3 |. E8 98C1FFFF call 00401060
) t; ~6 w- Q% K5 [1 }. A0 _4 {$ j5 m00404EC8 |. 8B2D D8924000 mov ebp, dword ptr [<&VxMath.VxBigFi>; VxMath.VxBigFile::Save : u. f) K: j/ H) ^ v# W. P
00404ECE |. 83C4 08 add esp, 8
0 s& V O+ |. t00404ED1 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
* }; M( @0 M* V; D2 P( E/ F5 j00404ED5 |. 6A 00 push 0
2 T! |! g, t1 W00404ED7 |. 68 50C14000 push 0040C150 ; ASCII "Data\Medium1.syb"
1 v/ r" g' M7 h/ y3 S( M00404EDC |. FFD5 call ebp ; <&VxMath.VxBigFile::Save> * b/ `1 ~+ j3 F
00404EDE |. 6A 00 push 0 % J1 m0 f+ H* H! h
00404EE0 |. 8BCE mov ecx, esi 3 y* H ^6 n9 H/ H
00404EE2 |. E8 39FAFFFF call 00404920
1 v( p# D/ u7 m4 E; M, a00404EE7 |. 8D4C24 18 lea ecx, dword ptr [esp+18] - q/ B2 ]9 g9 k: A7 G5 O
00404EEB |. E8 A0020000 call 00405190 $ B5 v" [4 I2 @# r* o
00404EF0 |. 53 push ebx
& q6 T; |. Q. w- K00404EF1 |. 8D9424 8C0000>lea edx, dword ptr [esp+8C] / O" V! ?2 N, @3 I4 n& c) l1 { M
00404EF8 |. 68 40C14000 push 0040C140 ; ASCII "%sTextures\A2_"
9 T' Y) v' D2 `7 \00404EFD |. 52 push edx / G4 L; z/ |, ]* t& N" k- Y
00404EFE |. FFD7 call edi 5 X S& d: W3 h" _' ?: c
00404F00 |. 83C4 0C add esp, 0C - C. `0 s* ]- B% n3 T1 @* Q: J
00404F03 |. 8D8424 880000>lea eax, dword ptr [esp+88]
0 f) I, D9 z6 J5 ?00404F0A |. 8BCE mov ecx, esi
9 `' Y& z$ a, ^7 ?00404F0C |. 50 push eax
( D' t9 Y0 n/ J! X00404F0D |. 6A 00 push 0 ) j# M6 E2 [! ~. B+ {
00404F0F |. E8 EC040000 call 00405400 / z" ^4 j ~. x7 _4 X7 l' u; x
00404F14 |. 53 push ebx
X2 m% }' Z( h3 x00404F15 |. 8D8C24 8C0000>lea ecx, dword ptr [esp+8C]
8 Q9 E* N+ o8 p3 c7 J; @00404F1C |. 68 30C14000 push 0040C130 ; ASCII "%sTextures\A3_"
/ ^* T9 Z0 N# |, E3 V00404F21 |. 51 push ecx
. y0 n! c$ d$ }3 d0 n# m3 `. ^% V' V00404F22 |. FFD7 call edi
( m$ |& M7 }3 C% @00404F24 |. 83C4 0C add esp, 0C 8 u7 W% g' x. V/ v5 [& e9 O, J6 ~- u* ?
00404F27 |. 8D9424 880000>lea edx, dword ptr [esp+88] / `9 d6 o; T' N3 G7 S
00404F2E |. 8BCE mov ecx, esi ; k6 W" o. [/ q5 ]9 Y) d2 R
00404F30 |. 52 push edx
) }; O0 h2 k' h) s+ X- q00404F31 |. 6A 00 push 0
1 F2 o& L1 W& b& F3 g3 N00404F33 |. E8 C8040000 call 00405400 ( q, m+ X: [6 c) \0 F3 O& c
00404F38 |. 53 push ebx
1 ]# D" X; Q* X: _6 [4 I- V- _: h00404F39 |. 8D8424 8C0000>lea eax, dword ptr [esp+8C]
; H3 u8 ?* p! s ~# a$ Y( j$ K00404F40 |. 68 20C14000 push 0040C120 ; ASCII "%sTextures\A4_" ' k- Z. e& \, D* {: \
00404F45 |. 50 push eax
. ?2 v. [/ l8 G9 z5 q$ t00404F46 |. FFD7 call edi
( Q& u5 n9 V4 |2 H; x00404F48 |. 83C4 0C add esp, 0C
: T F* T8 c- x: y+ [0 P00404F4B |. 8D8C24 880000>lea ecx, dword ptr [esp+88] 0 c7 @3 M6 K: D& b" h" I) X; R( r
00404F52 |. 51 push ecx & [9 M* Y' @2 {' D+ j/ k3 `
00404F53 |. 6A 00 push 0
( q% t$ A, b& R, {00404F55 |. 8BCE mov ecx, esi : f4 T5 |! w( W5 P
00404F57 |. E8 A4040000 call 00405400 ' o' p- t: V% C6 j2 v
00404F5C |. 53 push ebx
# V: ?, ?; h. r1 i! k0 {00404F5D |. 8D9424 8C0000>lea edx, dword ptr [esp+8C] 1 G% D9 L \3 e% H7 c5 J2 |
00404F64 |. 68 10C14000 push 0040C110 ; ASCII "%sTextures\A5_" / q" v; ^8 d) I& d3 u
00404F69 |. 52 push edx 3 Z+ E+ P) k0 q e
00404F6A |. FFD7 call edi
4 w* x# Y! {4 x! c4 q4 A00404F6C |. 83C4 0C add esp, 0C
9 O d7 d7 E5 _. x& t8 H00404F6F |. 8D8424 880000>lea eax, dword ptr [esp+88] ) I0 f2 @/ L7 n0 J+ }6 n
00404F76 |. 33FF xor edi, edi . o: X M; A0 X' T- J4 z4 G
00404F78 |. 8BCE mov ecx, esi " p9 b% Y3 M* T
00404F7A |. 50 push eax * I9 o, E, I2 s* M' u
00404F7B |. 57 push edi
3 m l) ~8 Z7 [* o( {00404F7C |. E8 7F040000 call 00405400
) k: w W, u( b; \8 p- b00404F81 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
( f$ g5 n q. |00404F85 |. E8 66010000 call 004050F0 0 k( `0 O, z; G
00404F8A |. 8D4C24 10 lea ecx, dword ptr [esp+10]
}2 n) u4 d( E* U5 Z6 C0 A00404F8E |. 68 1CC04000 push 0040C01C ; ASCII ".jpg" 6 v D1 e& J3 x; \5 w/ V' T4 o! Y8 ^
00404F93 |. 51 push ecx
* V( q# r% Y% @$ j& R& A( M- }4 s00404F94 |. 8D5424 20 lea edx, dword ptr [esp+20]
, c1 u$ w! L8 L# y0 |" o00404F98 |. 57 push edi ; F8 M5 A2 E& v
00404F99 |. 52 push edx - V! O) v& Q+ I5 e# y% ^
00404F9A |. 8BCE mov ecx, esi 9 D: _: M) q- a8 n* M
00404F9C |. 897C24 20 mov dword ptr [esp+20], edi
* n/ T; `# m4 J00404FA0 |. E8 4B020000 call 004051F0 + H7 M' c" C7 e& c3 ~9 A
00404FA5 |. 8D4424 10 lea eax, dword ptr [esp+10]
5 K: g% Y. n' D! F; n( ~2 B00404FA9 |. 68 14C04000 push 0040C014 ; ASCII ".tga"
2 p2 k0 {& H6 T$ m. o00404FAE |. 50 push eax
; j* ]- Y8 G1 J. J. r( L00404FAF |. 8D4C24 20 lea ecx, dword ptr [esp+20] + n2 x2 u" M& p5 I3 u
00404FB3 |. 57 push edi
( I: u9 u& f6 ?; y( _8 O8 K00404FB4 |. 51 push ecx
% G! B) {! I0 g" p- Z+ F: @00404FB5 |. 8BCE mov ecx, esi , s* H) M$ y3 W# |
00404FB7 |. E8 34020000 call 004051F0
! [5 Z* B7 w: x( m00404FBC |. 8D5424 10 lea edx, dword ptr [esp+10] $ v8 q1 ^1 D' k( I
00404FC0 |. 68 0CC04000 push 0040C00C ; ASCII ".png"
; j9 f' {. ~+ O1 U' S00404FC5 |. 52 push edx
V9 @5 _* G) Z7 R% G00404FC6 |. 8D4424 20 lea eax, dword ptr [esp+20] / }6 J \- ?' }2 i* g
00404FCA |. 57 push edi
, W, X- G0 B- Q# b" G00404FCB |. 50 push eax # g( @% r2 r7 L# u; J1 E$ h8 W
00404FCC |. 8BCE mov ecx, esi
: f% `- s( v6 x* H8 i00404FCE |. E8 1D020000 call 004051F0 1 ~, b9 f# H: z
00404FD3 |. 8B4C24 10 mov ecx, dword ptr [esp+10]
$ O( ]' U. |4 u, {$ V00404FD7 |. 51 push ecx 5 _' ~6 Z" j! v" i" O
00404FD8 |. 68 E4C04000 push 0040C0E4 ; ASCII " Added %i file, saving Medium2Res.syb.",LF + k6 H9 F$ L( P7 S4 U
00404FDD |. E8 7EC0FFFF call 00401060
2 R- t6 ~- u% B+ `/ Z/ m" c/ ~00404FE2 |. 83C4 08 add esp, 8 6 o, Z9 |5 w0 b! o
00404FE5 |. 8D4C24 18 lea ecx, dword ptr [esp+18] 3 P9 n6 w- X, D( {3 L3 P! \: E
00404FE9 |. 57 push edi
! D# H% N1 v4 a# i3 I7 x) e00404FEA |. 68 D0C04000 push 0040C0D0 ; ASCII "Data\Medium2Res.syb" 1 f m4 x! w: }+ O, O' E, S
00404FEF |. FFD5 call ebp k" @( W2 X# d: c! _; x9 _1 j
00404FF1 |. 57 push edi
z& [- r* d$ ]. O; G9 Q! P5 d' f00404FF2 |. 8BCE mov ecx, esi 3 x' k* s1 k# o' `; q/ s
00404FF4 |. E8 27F9FFFF call 00404920
, j g* x# L7 e- o& q00404FF9 |. 8D4C24 18 lea ecx, dword ptr [esp+18]
* Z0 |3 [; X' `; h( U ?- O00404FFD |. E8 8E010000 call 00405190
8 D. [' o/ H2 O1 F00405002 |. 8D4C24 18 lea ecx, dword ptr [esp+18] ! @0 p- C: q8 u
00405006 |. E8 E5000000 call 004050F0
$ h. G4 [1 p- N, _9 Q4 s0040500B |. 57 push edi
& C4 \* @; z/ [0 x' m7 |8 I# V0040500C |. 8D5424 14 lea edx, dword ptr [esp+14] 4 a, U! y7 w" ]- z* e# ^
00405010 |. 68 24C24000 push 0040C224 ; ASCII ".bik"
9 x1 _% p, J* |8 C* j9 H( l3 i00405015 |. 52 push edx / ^& x9 p6 T$ U: R6 Q: F
00405016 |. 8D4424 24 lea eax, dword ptr [esp+24] " R2 a5 z% C# K
0040501A |. 68 C0C04000 push 0040C0C0 ; ASCII "Video\Pack2\" 7 c1 P$ h" C) y# N$ p
0040501F |. 50 push eax
: y9 k' x+ t9 j9 Q00405020 |. 8BCE mov ecx, esi
7 u2 ^# C/ k8 v$ T1 h3 C00405022 |. 897C24 24 mov dword ptr [esp+24], edi 8 @4 |' ]# Q1 {) R" d
00405026 |. E8 65020000 call 00405290 $ \% @) V' d) G, _, P
0040502B |. 57 push edi . j6 ~/ k0 p. I
0040502C |. 8D4C24 14 lea ecx, dword ptr [esp+14]
% u5 H0 V& V/ W5 K, J) f* A, A j00405030 |. 68 24C24000 push 0040C224 ; ASCII ".bik" ( ?0 t8 k" w! b6 |
00405035 |. 51 push ecx 1 y7 p; j$ m/ m/ n( {
00405036 |. 8D5424 24 lea edx, dword ptr [esp+24] & _9 s6 P/ I6 ~$ T' @
0040503A |. 68 B0C04000 push 0040C0B0 ; ASCII "Video\Pack3\" # V: f4 H5 K5 n2 ~# X
0040503F |. 52 push edx " W* F) w( n" z; E
00405040 |. 8BCE mov ecx, esi " _' T/ M0 y9 ^/ a; |; J: E
00405042 |. E8 49020000 call 00405290
! s; L5 S/ }6 Y" D00405047 |. 57 push edi + |! s* f4 k' M* \2 _
00405048 |. 8D4424 14 lea eax, dword ptr [esp+14] . H" K, Q$ Q' y S R
0040504C |. 68 24C24000 push 0040C224 ; ASCII ".bik" ) a+ ~, V/ X) Z) \6 _; Y5 P
00405051 |. 50 push eax
' d i O* c/ n2 T9 [/ {6 A5 A00405052 |. 68 A0C04000 push 0040C0A0 ; ASCII "Video\Pack4\"
! G# h8 H8 D( v8 @ d/ A$ b00405057 |. 8D4C24 28 lea ecx, dword ptr [esp+28] 3 C) O; g9 k }* H
0040505B |. 51 push ecx
7 [6 B4 Q; a; p4 \0040505C |. 8BCE mov ecx, esi 7 \" ~2 ~. c! D/ U
0040505E |. E8 2D020000 call 00405290 . x/ F, \- G, {# Z
00405063 |. 57 push edi
4 X0 h2 [# J4 T8 P00405064 |. 8D5424 14 lea edx, dword ptr [esp+14] % A; m4 O! i, f$ L+ e
00405068 |. 68 24C24000 push 0040C224 ; ASCII ".bik"
) H& _" R/ z! [8 K* s' S0040506D |. 52 push edx ( {- X Z8 p. C+ U& S$ Z/ t9 J
0040506E |. 8D4424 24 lea eax, dword ptr [esp+24]
, k2 ], r! F: M" X( y3 w5 Z00405072 |. 68 90C04000 push 0040C090 ; ASCII "Video\Pack5\"
1 w! c2 k* s9 Z0 I00405077 |. 50 push eax
( L# ]! K9 i+ t# u# w) q* v00405078 |. 8BCE mov ecx, esi 3 C* @# p C* w& r% y9 N4 ?5 h
0040507A |. E8 11020000 call 00405290 7 [* u* B/ C( \7 ^. l: F
0040507F |. 8D4C24 10 lea ecx, dword ptr [esp+10] 8 C% f% Z4 {. u
00405083 |. 6A 02 push 2
; ?9 Q5 j5 T& W8 B, |00405085 |. 8D5424 1C lea edx, dword ptr [esp+1C] + A( C6 T7 O+ Q$ S; e' l/ V
00405089 |. 51 push ecx 3 V" M, j* A( N; c' V4 x8 k" A& G2 B% ]
0040508A |. 52 push edx
% e: Y3 d: d& F: U, y0040508B |. 8BCE mov ecx, esi
& k4 y+ t8 Q- a7 ~$ t) e2 E0040508D |. E8 0EF8FFFF call 004048A0 5 z9 i% m% L! @$ A
00405092 |. 8B4424 10 mov eax, dword ptr [esp+10] 0 ~7 d$ U. v. K9 w
00405096 |. 50 push eax 6 |* V8 f' X2 S$ m2 m8 t$ l4 v& W
00405097 |. 68 68C04000 push 0040C068 ; ASCII " Added %i file, saving Medium2.syb.",LF
9 P8 ~/ p- G( I( q0040509C |. E8 BFBFFFFF call 00401060
% g `2 _( K' S0 {, V% P; @0 r004050A1 |. 83C4 08 add esp, 8 & P! X I' m% R0 i! g/ Q
004050A4 |. 8D4C24 18 lea ecx, dword ptr [esp+18] . I' }* _0 ?5 U* w
004050A8 |. 57 push edi
# T, C: z5 a% V. M& h. x- T. q; z004050A9 |. 68 54C04000 push 0040C054 ; ASCII "Data\Medium2.syb" 4 n3 d G- n* A; t F& U, s
004050AE |. FFD5 call ebp 2 q, Q0 ^+ z3 d4 k# Y$ I
004050B0 |. 57 push edi . y! g- [- U a7 h. |( Z
004050B1 |. 8BCE mov ecx, esi 4 L; w7 u. N+ r
004050B3 |. E8 68F8FFFF call 00404920
) k$ s! \( D( w/ W004050B8 |. 8D4C24 18 lea ecx, dword ptr [esp+18] 8 z# n" w* j5 G- A# l! e
004050BC |. E8 CF000000 call 00405190 4 B8 s, w- R2 W7 n+ J- o
004050C1 |. 68 24C04000 push 0040C024 ; ASCII "BigFile completed. Press CANCEL to terminate."
0 e: p5 D3 E9 n4 d { ]/ W9 M004050C6 |. E8 35BFFFFF call 00401000
; X$ S, A6 [2 U# t004050CB |. 83C4 04 add esp, 4 4 ]$ t2 ~% e5 u* F# H" u* }
004050CE |. 57 push edi ; /status
( T0 s6 o0 N6 `004050CF |. FF15 BC914000 call dword ptr [<&MSVCRT.exit>] ; \exit ) W; f/ X7 @+ G) h" z
004050D5 |. 5F pop edi : c6 l" S i# y: ~1 z
004050D6 |. 5E pop esi 8 I# f. i& u* N- V6 k# I
004050D7 |. 5D pop ebp
0 H2 y5 \5 u* B% j( d0 q1 d4 F004050D8 |. 5B pop ebx ! O% Z' |: }) Y5 J( o" |
004050D9 |. 90 nop - `6 n x! Q0 r8 V9 _( N
004050DA |. 90 nop
4 _ a! {& [+ s6 u+ ]8 u004050DB |. 90 nop
2 {+ ^& X8 n, }3 r( v# b004050DC |. 90 nop 3 X, K& ^! {1 t# Z+ [ P6 Q
004050DD |. 90 nop ! d9 n- X0 U/ b- M: b
004050DE |. 90 nop + c& U+ g4 b( Q3 C: ^& R
004050DF |. 90 nop ) `" y% Y# ^7 \! J, J0 j' |
004050E0 |$ 8BC1 mov eax, ecx
1 W& G$ y6 N6 t* a7 }004050E2 |. 33C9 xor ecx, ecx
/ p9 y: s! f$ b. O& s/ y, q$ H0 i& D004050E4 |. 8908 mov dword ptr [eax], ecx
! e L w; h7 u* h9 t. ]! S# P. @004050E6 |. 66:8948 04 mov word ptr [eax+4], cx
: F( j% U& P5 {004050EA |. 66:8948 06 mov word ptr [eax+6], cx
3 d1 {) Y" H6 b) E004050EE \. C3 retn ! L- G1 H1 E) ~+ X( u& m4 }/ ?
004050EF 90 nop * t* R8 `* W, J# Y
004050F0 /$ 53 push ebx
) [' f4 U& k$ U# I: |9 Q: p004050F1 |. 55 push ebp
% a: V' v/ v# k4 n1 l004050F2 |. 56 push esi . T. L- i- u9 U/ J) F
004050F3 |. 57 push edi % `6 C* r1 ^) A) ~: x" j
004050F4 |. 8BF1 mov esi, ecx
1 l' q1 [* Z( x) O3 q004050F6 |. 6A 14 push 14 ~& Y _: C7 y, q, d& ?
004050F8 |. FF15 E4924000 call dword ptr [<&VxMath.XFixedSizeAl>; VxMath.XFixedSizeAllocator::XFixedSizeAllocator
1 Z3 G' O8 C% {; t4 E3 Z& a' o004050FE |. 8D7E 2C lea edi, dword ptr [esi+2C]
' f1 v( M7 `; F4 K0 k00405101 |. 33DB xor ebx, ebx
9 ]& A F: J2 P5 o) f& C- d I9 x00405103 |. C746 1C 01000>mov dword ptr [esi+1C], 1
8 L2 i9 m' U8 {! P b0040510A |. 895E 28 mov dword ptr [esi+28], ebx
! V. `$ d" q' Q3 V& k- G+ w/ U0 P0040510D |. 8D6F 08 lea ebp, dword ptr [edi+8] . D$ H+ i# @8 U' p
00405110 |. 895E 24 mov dword ptr [esi+24], ebx ! ?$ j( j) S4 O, H* ]# B6 p) }* t
00405113 |. 895E 20 mov dword ptr [esi+20], ebx
* K9 V3 _0 ?+ A ]; Y00405116 |. 895F 04 mov dword ptr [edi+4], ebx , m2 C# ` e' X O; e$ O1 L w
00405119 |. 891F mov dword ptr [edi], ebx
, R, y6 M# S) p: X/ _+ \; v, v! b0040511B |. 6A 10 push 10 8 Y. n. p; {; }6 g
0040511D |. 8BCF mov ecx, edi ! d# I$ E. W2 ?( I0 S9 Z
0040511F |. 895D 08 mov dword ptr [ebp+8], ebx
1 m- \4 b' ]' W# t: b2 ]) J6 ^00405122 |. 895D 04 mov dword ptr [ebp+4], ebx
7 w" u$ `9 q! ^00405125 |. 895D 00 mov dword ptr [ebp], ebx
0 |5 [8 ~# h/ D) d! X+ X. b00405128 |. E8 F3180000 call 00406A20
6 g1 U8 P8 M5 D0040512D |. 8B07 mov eax, dword ptr [edi]
v" l) d$ b8 ]" C% E$ k& v0040512F |. 8B4F 04 mov ecx, dword ptr [edi+4]
0 i( n# F# `3 H5 v00405132 |. 3BC1 cmp eax, ecx & D& v6 v( b) X9 ?1 N8 N. ?! U9 b- m
00405134 |. 74 0C je short 00405142 & H% I. n7 E5 b. D( B! B$ l
00405136 |> 8918 /mov dword ptr [eax], ebx ' X' t3 s' E. e' ^
00405138 |. 8B4F 04 |mov ecx, dword ptr [edi+4]
/ s5 u' J+ P, V" A: N! _# c2 F0040513B |. 83C0 04 |add eax, 4 9 L3 a: |$ T9 V- J
0040513E |. 3BC1 |cmp eax, ecx
8 P6 ]& D# ^* s4 M00405140 |.^ 75 F4 \jnz short 00405136
& U+ L+ \/ k" E9 [% i& y9 @, W& g00405142 |> D905 3C934000 fld dword ptr [40933C] ' Q; o& w% l/ r0 t7 B
00405148 |. D80D 40934000 fmul dword ptr [409340] . m% ~2 W5 s! ?. y( s- N- p
0040514E |. E8 9D2E0000 call <jmp.&MSVCRT._ftol> : u$ H4 W) k# |6 _8 D
00405153 |. 50 push eax 4 L4 q7 ]( V9 t' Z- O
00405154 |. 8BCD mov ecx, ebp " l1 L; q) q/ I# S
00405156 |. E8 65190000 call 00406AC0
( s e. K& P* x- L" z9 x0040515B |. 68 00800000 push 8000
- P- t/ n3 d7 q) G- v- G00405160 |. 8D4E 48 lea ecx, dword ptr [esi+48] x3 ]$ f9 q5 w1 |
00405163 |. 895E 40 mov dword ptr [esi+40], ebx $ Z* B0 K, @7 P+ I5 `) M
00405166 |. 66:895E 44 mov word ptr [esi+44], bx
, ~0 z. ^3 ^4 A8 P0040516A |. 66:895E 46 mov word ptr [esi+46], bx
! X; N$ |7 @' ^$ k, V* S+ C( H0040516E |. FF15 D0924000 call dword ptr [<&VxMath.VxCachedFile>; VxMath.VxCachedFile::VxCachedFile 4 O3 v7 J# P& R6 _2 t3 {
00405174 |. 8D4E 68 lea ecx, dword ptr [esi+68]
2 Z) S' g5 w5 X/ b: H f00405177 |. 895E 60 mov dword ptr [esi+60], ebx
0 i ^4 h' u( N+ G4 P0040517A |. 66:895E 64 mov word ptr [esi+64], bx ( |0 _# O. I7 e3 Q& B! [
0040517E |. 66:895E 66 mov word ptr [esi+66], bx
: p' q2 l, i$ f) t H8 k00405182 |. FF15 DC924000 call dword ptr [<&VxMath.VxFile::VxFi>; VxMath.VxFile::VxFile
" x7 e, U/ b0 [& b: M00405188 |. 8BC6 mov eax, esi
8 |* ~; D8 n) }6 W1 m( M0040518A |. 5F pop edi 8 Z, L2 ~0 Y8 Y" R3 m, L
0040518B |. 5E pop esi
, M5 Z# N/ [2 c+ {0040518C |. 5D pop ebp
% V/ `. j( c8 L, P$ _( j' D3 P0040518D |. 5B pop ebx
9 \( R) e3 s2 f0040518E \. C3 retn |