|
妖精
 
- UID
- 19808
- 精华
- 1
- 积分
- 332
- 威望
- 0 度
|
阁楼
大 中
小 发表于 2010-3-23 22:56 只看该作者
gmsv内部函数研究号召帖
一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小魔力私服,最新魔力宝贝私服技术交流6 B. H& Y! p9 i
9 B2 w r7 U t1 m8 Q; u—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁4 R' A2 K6 ~- [2 b& t1 `
妖城在线论坛/ Q, o* t- L$ \) d
我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; g9 ?. \. g+ M d2 \0 q# P2 {
1 x: x! r! s# }- K0 u& Z魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!) ~# s7 x( K/ E5 J% K8 p! b: w
* R( F$ c3 u& I6 B8 z; e& C% t" e魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!妖城在线论坛+ ^7 M0 b4 m# a2 k; J- F; r7 `
妖城在线论坛* u- q7 E8 K0 M& b: H: W
同时希望将此贴置顶?……
4 x7 d- k9 ?' p# U! d k( b, O魔力私服,最新魔力宝贝私服技术交流魔力私服,最新魔力宝贝私服技术交流2 L/ Z) w: x. U- d3 Z2 d
注:需使用到 反汇编工具IDA魔力私服,最新魔力宝贝私服技术交流) \- u& A6 ]" W8 W
妖城在线论坛9 y6 j5 y) c* P$ u
.text:08074098 ; =============== S U B R O U T I N E =======================================妖城在线论坛 o. K7 s* a; }$ h+ ^2 o4 p
.text:08074098
0 G1 h+ ~" c# e, h: G- U; B% Q1 N妖城在线论坛.text:08074098 ; Attributes: bp-based frame
% Q1 n8 w, c3 M1 [, A" V3 _魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098魔力私服,最新魔力宝贝私服技术交流5 o- f+ o2 H9 |6 C
.text:08074098 public CHAR_GetLevelExpbbs.mocwww.com- X% H R* ]) p: k
.text:08074098 CHAR_GetLevelExp proc near ; CODE XREF: CHAR_LevelUpCheck+42p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, U9 U& \8 c+ [ D6 e+ m
.text:08074098 ; CHAR_make_CP_String+517p
8 y4 D6 { O3 O1 X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 ; CHAR_make_KP_String+5AAp6 _/ ]( L3 K7 q* F+ W# p" Y1 q. D( k
.text:08074098 ; PET_createPetFromCharaIndex+1BEp—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 c6 C' h1 t- i9 k7 i; Z! e
.text:08074098 ; BATTLE_AttackEnergyDrain+1E1p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 h& z( _# _/ x k2 h
.text:08074098 ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数
4 G, t; L$ r; B! pbbs.mocwww.com.text:08074098 arg_0 = dword ptr 8
% c( ^+ f2 ~ y0 r9 ^6 @魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098魔力私服,最新魔力宝贝私服技术交流' _6 c% g0 M0 W" o3 Q
.text:08074098 push ebp ; 函数功能:5 E! v. G* u% W* ^& I
.text:08074098 ; 取得人物或者宠物下一级的升级经验值4 u+ B, W% i! m
.text:08074098 ; 入口参数:等级值妖城在线论坛; k; ]1 |" W- k n
.text:08074098 ; 出口参数:eax即下一级的升级经验值魔力私服,最新魔力宝贝私服技术交流1 }/ p8 ?+ t( k# o6 W! n4 w9 K
.text:08074099 mov ebp, espbbs.mocwww.com8 e, {1 O0 h$ N4 G! j" d% Q
.text:0807409B mov edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里
) C. S' p! c3 e' X9 V5 Y3 z. D4 Q$ xbbs.mocwww.com.text:0807409E cmp edx, 78h ; 与78h即120比较魔力私服,最新魔力宝贝私服技术交流/ Y% |4 W# x7 s" K3 o% D
.text:080740A1 jbe short loc_80740C0 ; 小于等于则跳转
% i/ D! Z. R4 Z' |: K) R7 |—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740A3 cmp edx, 82h ; 与82h即130比较—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ J" k4 g& ~# m3 w+ N8 `+ X
.text:080740A9 jg short loc_80740B8 ; 大于则跳转魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 g) h8 E: ~/ S0 E( G1 R
.text:080740AB mov eax, edx ; 否则将等级值放入eax
; J$ x4 s( ~5 _* T s- Y& E, }bbs.mocwww.com.text:080740AD imul eax, edx ; 2次方
! W+ n o, `* F4 `魔力私服,最新魔力宝贝私服技术交流.text:080740B0 imul eax, edx ; 3次方
( \& G8 f3 S6 u! t( L.text:080740B3 imul eax, edx ; 存放经验值的eax = 等级的4次方魔力私服,最新魔力宝贝私服技术交流5 u8 e5 n3 y |# `4 D h( {3 l% }# [, w
.text:080740B6
3 M. a1 u- L) I) F' ?- ?* b# _魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B6 locret_80740B6: ; CODE XREF: CHAR_GetLevelExp+25j
$ j5 b& D- u8 Y; b' X/ i魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B6 ; CHAR_GetLevelExp+2Fj
: E+ y- r" p. D( q妖城在线论坛.text:080740B6 leave
8 R/ g4 H% U. A: T1 `0 \) W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B7 retn' {! m8 y3 p) ^" f8 U! \
.text:080740B8 ; ---------------------------------------------------------------------------, n0 W" J# n7 I- ~
.text:080740B8
: |6 J$ o% D4 ?—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740B8 loc_80740B8: ; CODE XREF: CHAR_GetLevelExp+11j
3 q. F* }: q% n3 ?bbs.mocwww.com.text:080740B8 mov eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -1魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表7 B; E* M3 D' j, x' H
.text:080740B8 ; 游戏内看到的是一个 - 号, s. e& y6 @2 g d
.text:080740BD jmp short locret_80740B6 ; 函数结束
! i. H2 D: K2 r妖城在线论坛.text:080740BD ; ---------------------------------------------------------------------------—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 l1 S9 J W5 u) X# ~
.text:080740BF align 10h
- C& L3 q. |. ?) Q妖城在线论坛.text:080740C0魔力私服,最新魔力宝贝私服技术交流4 ^1 u' K( j4 l3 C9 f4 P
.text:080740C0 loc_80740C0: ; CODE XREF: CHAR_GetLevelExp+9j妖城在线论坛% E8 {5 _0 C5 W' C
.text:080740C0 mov eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表& J# B5 ^1 A& l& O$ J; K+ g
.text:080740C0 ; 即LevelUpTbl) [+ f2 J% B# z! X* S% U
.text:080740C7 jmp short locret_80740B6 ; 函数结束魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 F1 n, D+ E2 G3 ]
.text:080740C7 CHAR_GetLevelExp endp
6 e- `1 ^9 w" Z& K7 D* I3 y1 o. qbbs.mocwww.com.text:080740C7bbs.mocwww.com: L4 {3 I4 {) M
.text:080740C7 ; ---------------------------------------------------------------------------妖城在线论坛/ U) L/ \0 }7 G. V
妖城在线论坛7 c; a4 \- ~* t6 F
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート1 o8 l, s. M1 Z3 ^+ J
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表% i* G" I% e9 b3 K& K) u3 C$ `. I
[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]
|