妖精
 
- UID
- 19808
- 精华
- 1
- 积分
- 332
- 威望
- 0 度
|
阁楼
大 中
小 发表于 2010-3-23 22:56 只看该作者
gmsv内部函数研究号召帖
一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小
$ z& X3 M; V: U5 J8 b" ]妖城在线论坛
8 r, g4 A/ r( K* H( {8 k% R在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁妖城在线论坛: H1 I5 p. {/ j3 V9 M
; v5 K# h2 w! P4 V8 c我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后
& v1 p0 {1 r$ {2 j$ e& g妖城在线论坛魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 q8 T) x( O1 S( U% W: g: b
我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!
, M% L# S4 l: s/ v魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
7 J; {! \6 ~1 K* i5 R, ]bbs.mocwww.com为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!bbs.mocwww.com* K5 U- x$ H( `+ v
2 G( _5 W' \8 r w; `% Z! ]魔力私服,最新魔力宝贝私服技术交流同时希望将此贴置顶?……8 I0 }) g( ]9 ^" J; ]& {, Y4 [% K
" Y3 O3 ?) d6 Y% e# ^妖城在线论坛注:需使用到 反汇编工具IDA—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) A$ }% Q# V9 O) F* b$ _; P
" l* d3 ?* A+ d6 o+ q% g.text:08074098 ; =============== S U B R O U T I N E =======================================
! f# w0 M7 t6 f. A7 [魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098妖城在线论坛' {1 A$ w( L( Y# v5 }7 k( R
.text:08074098 ; Attributes: bp-based frame魔力私服,最新魔力宝贝私服技术交流. C! C- z/ Q) T. T! Y
.text:08074098
" V, a- m" X; q1 u0 C4 r( `魔力私服,最新魔力宝贝私服技术交流.text:08074098 public CHAR_GetLevelExp
* n" K* \' L) n9 \/ I. _6 D.text:08074098 CHAR_GetLevelExp proc near ; CODE XREF: CHAR_LevelUpCheck+42p
( f8 h/ [' p! b魔力私服,最新魔力宝贝私服技术交流.text:08074098 ; CHAR_make_CP_String+517p
: e* K' Z9 b/ J5 y9 n2 p% X; Jbbs.mocwww.com.text:08074098 ; CHAR_make_KP_String+5AAp
' M' q6 A* u& y( C妖城在线论坛.text:08074098 ; PET_createPetFromCharaIndex+1BEp
9 c5 \" { n, J9 U# O4 w魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098 ; BATTLE_AttackEnergyDrain+1E1p
& w. F& G' e2 V0 l; a—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数魔力私服,最新魔力宝贝私服技术交流5 I! ] W6 ~4 ^
.text:08074098 arg_0 = dword ptr 8
4 u4 G& g8 q2 ]5 q6 m魔力私服,最新魔力宝贝私服技术交流.text:08074098
. h& `! I4 J! R6 ^.text:08074098 push ebp ; 函数功能:
% i: L( g1 u( m# X4 |.text:08074098 ; 取得人物或者宠物下一级的升级经验值
- U3 {) t6 X7 Z% V/ _- P魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098 ; 入口参数:等级值—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' h8 C c n" j% o7 |3 a
.text:08074098 ; 出口参数:eax即下一级的升级经验值魔力私服,最新魔力宝贝私服技术交流9 j) I1 J/ U1 B
.text:08074099 mov ebp, esp
' l; X/ R. L$ d! L; \# B魔力私服,最新魔力宝贝私服技术交流.text:0807409B mov edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里
( P, W6 h5 v/ `7 h/ xbbs.mocwww.com.text:0807409E cmp edx, 78h ; 与78h即120比较
& E4 N& J" s; ]3 h$ [& u.text:080740A1 jbe short loc_80740C0 ; 小于等于则跳转—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ M* l$ ?) Y; O0 Q9 B
.text:080740A3 cmp edx, 82h ; 与82h即130比较
' [8 A+ T: J% V+ U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740A9 jg short loc_80740B8 ; 大于则跳转
8 ~$ N' v$ A. I0 i8 J) xbbs.mocwww.com.text:080740AB mov eax, edx ; 否则将等级值放入eax魔力私服,最新魔力宝贝私服技术交流3 V# a) C' p1 A+ }
.text:080740AD imul eax, edx ; 2次方妖城在线论坛7 `: O+ @; }6 m: ^- u
.text:080740B0 imul eax, edx ; 3次方bbs.mocwww.com7 C$ s) }3 X2 z
.text:080740B3 imul eax, edx ; 存放经验值的eax = 等级的4次方( l% T( d3 w/ }" e- b
.text:080740B6bbs.mocwww.com4 K( C) u2 W, v
.text:080740B6 locret_80740B6: ; CODE XREF: CHAR_GetLevelExp+25j
- T7 _4 @# h0 {- a7 r. D& X* d/ V魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B6 ; CHAR_GetLevelExp+2Fj魔力私服,最新魔力宝贝私服技术交流2 Y$ R" \0 N+ ~2 M* ~- z( i* P9 J4 N
.text:080740B6 leavebbs.mocwww.com! o: p- O# e. Y' t- C, Z
.text:080740B7 retn
4 q: s7 X$ Z; z/ t H7 `2 @1 @妖城在线论坛.text:080740B8 ; ---------------------------------------------------------------------------
% ?- O, a! P; p$ ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B8
. Z) d4 k9 O0 X/ q$ C—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B8 loc_80740B8: ; CODE XREF: CHAR_GetLevelExp+11j
: {/ S' }3 z9 k* A+ v" ~魔力私服,最新魔力宝贝私服技术交流.text:080740B8 mov eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -1
+ c! A0 E3 c+ L. ]* d; \, _ }% F.text:080740B8 ; 游戏内看到的是一个 - 号
8 t. E% s7 U. W$ Z& ]/ x8 ?.text:080740BD jmp short locret_80740B6 ; 函数结束
) L1 e- k. Z+ K5 z: M1 s/ z# D—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740BD ; ---------------------------------------------------------------------------魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 K/ Z) Q' d- r! ^$ K5 i
.text:080740BF align 10h
, G2 }2 }' k6 G/ n5 j. R/ w2 Zbbs.mocwww.com.text:080740C00 j4 p) O9 v9 E3 }6 o+ O* g
.text:080740C0 loc_80740C0: ; CODE XREF: CHAR_GetLevelExp+9j
4 @8 F* I# L# D7 W( M8 ?; i妖城在线论坛.text:080740C0 mov eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表妖城在线论坛- @2 v: ^3 h" s
.text:080740C0 ; 即LevelUpTbl
% z* c/ B$ m; |& }( x+ m魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740C7 jmp short locret_80740B6 ; 函数结束—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 B# i! O) n3 }7 |: e# c0 w
.text:080740C7 CHAR_GetLevelExp endp魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; O+ o- V n4 M7 S4 m
.text:080740C71 X/ X6 I ~1 n' M% _/ v1 p
.text:080740C7 ; ---------------------------------------------------------------------------
G% b) H1 Z. Bbbs.mocwww.com
; S2 ]) p c. o& S* V% g7 f+ e, _3 }; V4 D- Z W
魔力私服,最新魔力宝贝私服技术交流0 X6 b+ }! }, B2 z! D5 j
[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]
|