妖精
![Rank: 2](images/default/star_level1.gif) ![Rank: 2](images/default/star_level1.gif)
- UID
- 19808
- 精华
- 1
- 积分
- 332
- 威望
- 0 度
|
阁楼
大 中
小 发表于 2010-3-23 22:56 显示全部帖子
gmsv内部函数研究号召帖
一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小
- l8 }% g$ c( S3 b2 h4 T/ T( _bbs.mocwww.com
8 @- P, K- w* Q, M+ M# _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁魔力私服,最新魔力宝贝私服技术交流0 ~% a, ~$ n& Q; Q# U
3 w0 `# q1 ]0 [—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后
8 A1 B- [9 z: E W! o. D9 M魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
% }% _7 T. x- P) s# v+ _: A7 {bbs.mocwww.com我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート7 j6 i. {9 I! j, ~, T y
- i% I% } v4 v* S2 B# ^; Y# b1 `魔力私服,最新魔力宝贝私服技术交流为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: |) c7 l9 L. k3 U
魔力私服,最新魔力宝贝私服技术交流$ J, E$ j$ P. Q9 {- ?# U
同时希望将此贴置顶?……bbs.mocwww.com7 P/ g2 z$ r# `1 c9 [( d1 g
3 c+ C! ~, G) ?7 W
注:需使用到 反汇编工具IDAbbs.mocwww.com/ ^& Y' S# i d
, K/ z' o/ c n% Y+ U% l( ]妖城在线论坛.text:08074098 ; =============== S U B R O U T I N E =======================================—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 F# p# Z4 @3 l
.text:08074098
h( Q. q; G; j" Y- B$ L* J—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 ; Attributes: bp-based frame魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. M: }: {. s8 |( [3 J: P
.text:08074098—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート h; _. F" n2 b! X- H+ J0 K- s5 c
.text:08074098 public CHAR_GetLevelExp魔力私服,最新魔力宝贝私服技术交流- n+ d0 C2 U: g X
.text:08074098 CHAR_GetLevelExp proc near ; CODE XREF: CHAR_LevelUpCheck+42p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表" f6 {& B- g% T# V
.text:08074098 ; CHAR_make_CP_String+517p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# g" K5 H' `1 _
.text:08074098 ; CHAR_make_KP_String+5AAp魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表, @1 p* I+ j. i5 a
.text:08074098 ; PET_createPetFromCharaIndex+1BEp—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) K! U( Y' M; L
.text:08074098 ; BATTLE_AttackEnergyDrain+1E1p
& _6 g( [4 h; X" k* T4 g( j/ X- s.text:08074098 ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数bbs.mocwww.com _0 a! y9 ~. q" c
.text:08074098 arg_0 = dword ptr 8
& z' ^6 n1 l5 C7 R- W1 W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098
0 [& }$ h0 w3 o.text:08074098 push ebp ; 函数功能:
8 x* ]% @) K# Y9 W.text:08074098 ; 取得人物或者宠物下一级的升级经验值
7 E$ @; o/ s; j1 W.text:08074098 ; 入口参数:等级值—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 I+ K8 G+ S: p: Q5 {
.text:08074098 ; 出口参数:eax即下一级的升级经验值妖城在线论坛' D* U; O3 H8 T8 O1 W+ \
.text:08074099 mov ebp, esp
4 g9 `: U( x. P1 A* L* o9 j+ s8 l—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:0807409B mov edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里魔力私服,最新魔力宝贝私服技术交流. I$ U! K0 }- i3 J* F- Q3 \7 {) k4 a
.text:0807409E cmp edx, 78h ; 与78h即120比较
G9 A; H) \, w i" B妖城在线论坛.text:080740A1 jbe short loc_80740C0 ; 小于等于则跳转魔力私服,最新魔力宝贝私服技术交流3 l% P. S. T* a: [# b
.text:080740A3 cmp edx, 82h ; 与82h即130比较
3 r9 c3 [/ N2 p$ m. C- {& g" ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740A9 jg short loc_80740B8 ; 大于则跳转bbs.mocwww.com( B- F8 Q6 Q% J* t5 v2 z/ Q, I. F
.text:080740AB mov eax, edx ; 否则将等级值放入eax
. @* s$ n3 m9 S# r5 ?. Q.text:080740AD imul eax, edx ; 2次方
; }( r% p! m. u$ a$ ]$ U- G5 e5 ybbs.mocwww.com.text:080740B0 imul eax, edx ; 3次方bbs.mocwww.com1 t; A3 z' ^: L: `/ }; s6 `
.text:080740B3 imul eax, edx ; 存放经验值的eax = 等级的4次方bbs.mocwww.com( B4 g; ?2 F. l9 B
.text:080740B6妖城在线论坛8 t4 y, I* A4 r0 n; Z' K) N w/ L
.text:080740B6 locret_80740B6: ; CODE XREF: CHAR_GetLevelExp+25j
! H) T4 I( m) `2 A$ ]# a- fbbs.mocwww.com.text:080740B6 ; CHAR_GetLevelExp+2Fj魔力私服,最新魔力宝贝私服技术交流' b! F" N/ |5 ?0 W9 P6 g
.text:080740B6 leavebbs.mocwww.com2 e' H7 B* t q& @$ @* w* L3 b
.text:080740B7 retn—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: w% X3 u) K! D0 q
.text:080740B8 ; ---------------------------------------------------------------------------魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. t6 G( O# F" u% W( w0 n
.text:080740B8
. x J% V( O, S4 O魔力私服,最新魔力宝贝私服技术交流.text:080740B8 loc_80740B8: ; CODE XREF: CHAR_GetLevelExp+11j魔力私服,最新魔力宝贝私服技术交流0 V0 t* y! i1 x9 Q6 T0 k1 f
.text:080740B8 mov eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -1
: V3 H/ M( @2 u4 q6 l9 d8 lbbs.mocwww.com.text:080740B8 ; 游戏内看到的是一个 - 号妖城在线论坛2 U: S# y: ^* ?0 o' r, }
.text:080740BD jmp short locret_80740B6 ; 函数结束妖城在线论坛+ a' ]6 r' b: ] s( ]4 G+ g
.text:080740BD ; ---------------------------------------------------------------------------
( Q1 [8 n% E3 N i# L8 z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740BF align 10h& d% O" K& a" B6 s. C! q
.text:080740C0
0 j/ ^$ O/ r5 A9 T+ E( x* \8 q0 dbbs.mocwww.com.text:080740C0 loc_80740C0: ; CODE XREF: CHAR_GetLevelExp+9j
+ Q2 G5 s- t7 K3 H7 n Y妖城在线论坛.text:080740C0 mov eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表
1 u5 w; ^; ~+ o魔力私服,最新魔力宝贝私服技术交流.text:080740C0 ; 即LevelUpTbl妖城在线论坛% q/ d) l% c# H. M) I
.text:080740C7 jmp short locret_80740B6 ; 函数结束—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; Q* x# F9 D. [+ A2 x& r) G# e
.text:080740C7 CHAR_GetLevelExp endp% O, J9 ~, H) b) D8 |; t7 S
.text:080740C7bbs.mocwww.com+ `" Z6 \$ a3 t" I
.text:080740C7 ; ---------------------------------------------------------------------------魔力私服,最新魔力宝贝私服技术交流 L- J) N: L8 S, o
) |9 y9 n0 m8 c7 w$ n—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
; p6 _ r, F- T* y, r7 A& \6 i魔力私服,最新魔力宝贝私服技术交流; c0 M7 V$ ]/ K, \+ X2 J* G
[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]
|