|
妖精
 
- UID
- 19808
- 精华
- 1
- 积分
- 332
- 威望
- 0 度
|
阁楼
大 中
小 发表于 2010-3-23 22:56 只看该作者
gmsv内部函数研究号召帖
一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小
! y; Z1 I6 ?' W; v. B' t! f. e
8 ~% v' m( x3 n: D在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁魔力私服,最新魔力宝贝私服技术交流, d7 m+ R7 u0 Q4 B. B1 {, n
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ w8 E7 x4 y, u
我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后魔力私服,最新魔力宝贝私服技术交流. X! }0 d& O/ W# S5 R/ g
4 b# P. E2 @4 s6 |4 ?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!
# }. q9 J, B, w0 E/ W魔力私服,最新魔力宝贝私服技术交流
; a& f# S1 c& t0 U9 w' U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; p# b9 n; O3 R
5 G7 n+ Z+ x9 s1 _bbs.mocwww.com同时希望将此贴置顶?……bbs.mocwww.com6 T- z3 q) a. A/ U' F. D. c
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート! F2 `8 q- {4 ?* v7 n+ s
注:需使用到 反汇编工具IDA魔力私服,最新魔力宝贝私服技术交流. \# l" ~* j) W$ C A7 K
- z8 R8 d! k. M- `9 |; l—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 ; =============== S U B R O U T I N E =======================================妖城在线论坛6 u5 A$ ]7 ~' ~9 Y# i8 f( c: B0 W
.text:08074098
f; M! L7 w' @) J, ?* jbbs.mocwww.com.text:08074098 ; Attributes: bp-based frame
0 X4 i$ I" Q* H+ _.text:08074098魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* m6 A" N/ t, e
.text:08074098 public CHAR_GetLevelExp
C( k) |" M4 N8 @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098 CHAR_GetLevelExp proc near ; CODE XREF: CHAR_LevelUpCheck+42p
& H/ C5 ?! e, Z& s' @. v魔力私服,最新魔力宝贝私服技术交流.text:08074098 ; CHAR_make_CP_String+517p魔力私服,最新魔力宝贝私服技术交流- Y! ~; f& ]! d g
.text:08074098 ; CHAR_make_KP_String+5AApbbs.mocwww.com7 V p, C; C/ o0 r) J
.text:08074098 ; PET_createPetFromCharaIndex+1BEp
+ V$ @0 w; M# J! f9 w$ X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 ; BATTLE_AttackEnergyDrain+1E1p
1 h* l. t2 n# @9 a! u魔力私服,最新魔力宝贝私服技术交流.text:08074098 ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: q. f5 X) t- e1 h* e# x: a# z
.text:08074098 arg_0 = dword ptr 8
) n+ r# S: i, s! g妖城在线论坛.text:08074098魔力私服,最新魔力宝贝私服技术交流2 h6 c" d- d0 ?9 e3 L
.text:08074098 push ebp ; 函数功能:
5 ]+ e+ |4 d4 B; O- N. T' ?bbs.mocwww.com.text:08074098 ; 取得人物或者宠物下一级的升级经验值魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表. I8 O' |& p( V: d" @# ~& B7 u+ E
.text:08074098 ; 入口参数:等级值
- g; j9 t Q0 a.text:08074098 ; 出口参数:eax即下一级的升级经验值bbs.mocwww.com8 ?7 X: I! ]8 X7 V) e
.text:08074099 mov ebp, esp
9 C# e$ l3 N0 H1 a.text:0807409B mov edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) i$ ]0 F) w; R+ V: X# X! q4 v
.text:0807409E cmp edx, 78h ; 与78h即120比较% \; n6 z9 \ c1 K
.text:080740A1 jbe short loc_80740C0 ; 小于等于则跳转
" A$ h) ~9 p6 ~魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740A3 cmp edx, 82h ; 与82h即130比较
, W1 c( Y' K2 [妖城在线论坛.text:080740A9 jg short loc_80740B8 ; 大于则跳转魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 w/ ]1 c% A9 o( M6 {& R% G
.text:080740AB mov eax, edx ; 否则将等级值放入eax
$ M K" k" D$ d( m妖城在线论坛.text:080740AD imul eax, edx ; 2次方
3 J( I3 ~8 k9 Y3 z' m7 L2 D魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B0 imul eax, edx ; 3次方
& M3 T- X% w. E- d9 z# ^8 _—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B3 imul eax, edx ; 存放经验值的eax = 等级的4次方
+ V3 O% E/ i' D2 g9 o.text:080740B6
X4 a4 h) V; M) l3 ?( u1 n—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B6 locret_80740B6: ; CODE XREF: CHAR_GetLevelExp+25j
! u6 E0 E- S- n0 a- n% v: f妖城在线论坛.text:080740B6 ; CHAR_GetLevelExp+2Fj
( T! i. {+ p% v7 a X魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B6 leave0 X* B# F9 q6 }
.text:080740B7 retn魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 i" X% b7 n2 U7 J
.text:080740B8 ; ---------------------------------------------------------------------------妖城在线论坛' E8 R4 G1 R' O5 H( }5 A
.text:080740B8魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: b# \- y4 @6 p2 X/ _% ^" d
.text:080740B8 loc_80740B8: ; CODE XREF: CHAR_GetLevelExp+11j
) g b; s4 }0 e$ m/ X: Z# z0 v—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B8 mov eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -1
z( r% U: e9 A3 W+ X4 O魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B8 ; 游戏内看到的是一个 - 号% W# q' u) G; I% v% l
.text:080740BD jmp short locret_80740B6 ; 函数结束妖城在线论坛9 w( S& x- i1 o& x% Y
.text:080740BD ; ---------------------------------------------------------------------------
% B$ R6 b/ I( W. t3 G: m# j0 X8 J! y.text:080740BF align 10h
, W0 X2 Z# ?+ C6 Q/ t$ h; P$ x5 F—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740C0
2 c# H% v" R9 f6 G& S妖城在线论坛.text:080740C0 loc_80740C0: ; CODE XREF: CHAR_GetLevelExp+9j妖城在线论坛9 N, C& C7 \7 A% [/ _3 V
.text:080740C0 mov eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表
3 z1 e: T+ K$ I' G4 ^0 G' g c3 e—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740C0 ; 即LevelUpTbl魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* r- G0 E# P3 T
.text:080740C7 jmp short locret_80740B6 ; 函数结束魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) Y, y% Q; u8 ?/ X1 R
.text:080740C7 CHAR_GetLevelExp endp
+ g$ L+ B% ]' X* R, Z.text:080740C7
+ N9 u2 D& N4 u$ y+ g% |3 g0 _.text:080740C7 ; ---------------------------------------------------------------------------
" `0 n" P- U! c9 S魔力私服,最新魔力宝贝私服技术交流
! D; W, K# h- L, @—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 f( V" j! t- M) v d
( m1 R t1 J: E# M[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]
|