妖精
- UID
- 19808
- 精华
- 1
- 积分
- 332
- 威望
- 0 度
|
阁楼
大 中
小 发表于 2010-3-23 22:56 显示全部帖子
gmsv内部函数研究号召帖
一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小
( T) D- I' u9 i0 d. G9 u# Z( T- i魔力私服,最新魔力宝贝私服技术交流—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ p8 ]: l9 I9 q0 R
在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁
1 Y3 n/ n3 r* h. g3 n# Q; y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
' y7 J4 R1 A& J$ c魔力私服,最新魔力宝贝私服技术交流我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后
! l7 j2 J( F9 J妖城在线论坛
8 z& H6 U- y7 n# A+ ]7 v妖城在线论坛我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!
/ q( @2 P, x X% H" w N魔力私服,最新魔力宝贝私服技术交流
5 w$ @+ d K) X4 V' Q# w7 N0 u! Y魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!
9 [" M) M% e8 C! L) v* r) [
4 A1 E0 g9 D. K7 J妖城在线论坛同时希望将此贴置顶?……bbs.mocwww.com2 l" g7 U) n$ o8 B5 B
. d" n, R) O d) Nbbs.mocwww.com注:需使用到 反汇编工具IDA—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ _" p) K8 r( l' M0 V
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート* l# c: G' I& B: j8 ~
.text:08074098 ; =============== S U B R O U T I N E =======================================—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート5 Y8 Z- d5 a! E- {: l
.text:08074098魔力私服,最新魔力宝贝私服技术交流" `, F" a G) [& r2 T/ D+ q
.text:08074098 ; Attributes: bp-based frame
. v% P( `* a; ?+ l9 X.text:08074098魔力私服,最新魔力宝贝私服技术交流+ r3 Z0 ~$ U/ Q# s
.text:08074098 public CHAR_GetLevelExp
2 i7 L& S/ N. i1 ?7 B& K2 Bbbs.mocwww.com.text:08074098 CHAR_GetLevelExp proc near ; CODE XREF: CHAR_LevelUpCheck+42p
6 D) w, r( o) ]0 {6 x+ _妖城在线论坛.text:08074098 ; CHAR_make_CP_String+517p
* J8 e- l1 }. H* F% }+ D D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098 ; CHAR_make_KP_String+5AAp魔力私服,最新魔力宝贝私服技术交流3 N& K5 g1 j" F/ }& y9 L8 [1 d
.text:08074098 ; PET_createPetFromCharaIndex+1BEp
. }; F( `( u& O; q- M妖城在线论坛.text:08074098 ; BATTLE_AttackEnergyDrain+1E1p魔力私服,最新魔力宝贝私服技术交流8 q! E2 W7 j. x9 W
.text:08074098 ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数bbs.mocwww.com8 B5 d9 }" A+ i V5 Q& X
.text:08074098 arg_0 = dword ptr 8bbs.mocwww.com9 W0 f: U0 ^, ^" |+ B1 @ W
.text:08074098
* Z3 s% T) d# [) mbbs.mocwww.com.text:08074098 push ebp ; 函数功能:. Z# C; S+ K) z, p1 U+ c' ~% `' O& c
.text:08074098 ; 取得人物或者宠物下一级的升级经验值—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: C" {2 Y- Q4 i; t! l! y7 M
.text:08074098 ; 入口参数:等级值魔力私服,最新魔力宝贝私服技术交流4 L) A F6 c: f% x9 l
.text:08074098 ; 出口参数:eax即下一级的升级经验值妖城在线论坛$ B' _; `- q3 O0 }4 F
.text:08074099 mov ebp, esp
' T9 o2 x& ^# j9 l X5 L9 s* m妖城在线论坛.text:0807409B mov edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里
8 V6 ~5 Z. \0 X! Zbbs.mocwww.com.text:0807409E cmp edx, 78h ; 与78h即120比较魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. y1 H. W' o8 }
.text:080740A1 jbe short loc_80740C0 ; 小于等于则跳转妖城在线论坛8 W3 H$ U5 e4 V9 [% `$ { [
.text:080740A3 cmp edx, 82h ; 与82h即130比较
! @% t4 {) G: q+ X; ^8 ^4 dbbs.mocwww.com.text:080740A9 jg short loc_80740B8 ; 大于则跳转bbs.mocwww.com0 R8 z8 n& A2 o
.text:080740AB mov eax, edx ; 否则将等级值放入eax
# b7 R1 X) G, `( Z3 O: |/ V—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740AD imul eax, edx ; 2次方bbs.mocwww.com; n+ ?- U/ x' B. Z. u
.text:080740B0 imul eax, edx ; 3次方魔力私服,最新魔力宝贝私服技术交流% X( ?. d a4 D; ^# W3 K
.text:080740B3 imul eax, edx ; 存放经验值的eax = 等级的4次方魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, X v' T9 `3 x, m6 d: P: K
.text:080740B6
) d, ]. z# A5 Z+ fbbs.mocwww.com.text:080740B6 locret_80740B6: ; CODE XREF: CHAR_GetLevelExp+25j
3 Z6 K: i( O, d) J* Q: Ibbs.mocwww.com.text:080740B6 ; CHAR_GetLevelExp+2Fj魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ B! f9 O0 W, h! o! @
.text:080740B6 leave妖城在线论坛# @. ?: x3 Y4 e" D
.text:080740B7 retn妖城在线论坛! Z% K3 M. }$ k7 g3 V7 X% o
.text:080740B8 ; ---------------------------------------------------------------------------
5 x, D9 h0 U* O- g& u妖城在线论坛.text:080740B8魔力私服,最新魔力宝贝私服技术交流7 ]4 V; L n1 j: {
.text:080740B8 loc_80740B8: ; CODE XREF: CHAR_GetLevelExp+11j
; S& B- C( t2 V; b.text:080740B8 mov eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -1—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 A9 H2 L4 Q, F
.text:080740B8 ; 游戏内看到的是一个 - 号魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% q+ s$ F* v0 H; Q- F. u
.text:080740BD jmp short locret_80740B6 ; 函数结束4 H2 q1 [# o+ I8 G
.text:080740BD ; ---------------------------------------------------------------------------bbs.mocwww.com) D2 Y2 v, K+ V s
.text:080740BF align 10h魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! B$ l7 H# S7 n6 ~0 l8 N/ n
.text:080740C0
& @6 w6 O, j, O6 Q; v$ A7 h# o妖城在线论坛.text:080740C0 loc_80740C0: ; CODE XREF: CHAR_GetLevelExp+9j妖城在线论坛* i# [6 B8 O* t' j2 E
.text:080740C0 mov eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表
) v' e7 Y$ a) y- u, J3 t; Bbbs.mocwww.com.text:080740C0 ; 即LevelUpTbl
& F4 }5 c7 }6 R; N: v# s5 x4 y.text:080740C7 jmp short locret_80740B6 ; 函数结束8 T4 C% x' Y O4 Y) {0 {" @9 X" s
.text:080740C7 CHAR_GetLevelExp endp妖城在线论坛1 C0 ~. t/ m: ^8 ]
.text:080740C7bbs.mocwww.com; `4 @3 c/ ^9 \) w8 m( b
.text:080740C7 ; ---------------------------------------------------------------------------
2 L/ ]7 T% m" C' t妖城在线论坛
% d0 I" `1 d- o4 d+ A" `" t5 }
# V! [! p" g/ e, t0 ?妖城在线论坛
/ n: l1 `; x8 X7 V) ^1 i魔力私服,最新魔力宝贝私服技术交流[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]
|