- [Patch]
- Number=2995
-
- [RoName]
- WindowCaption=Ragnarok
- WindowClass=Ragnarok
-
- [Ragexe]
- Size=3887233
-
- [Address]
- CharName=00856DD4
- Zeny=0085544C
- BaseExp=008553A4
- BaseExpNext=008553B0
- JobExp=00855460
- JobExpNext=0085545C
- Weight=00855464
- WeightMax=00855458
- BaseLv=008553A8
- JobLv=008553B4
- HPIndex=0085661C
- MaxHPTable=00856660
複製代碼 RagAddress.ini 搜尋教學
使用 W32DASM "嗶"
就可以得到下列的組合語言程式碼
然後利用關鍵字找相關位址
ps:HP部份的關鍵字 2011/01/05 更新完後 會有2組 由上往下找 第2組才是我們要的- //使用2010-10-15aRagexe
- //CharName=
- //關鍵字:mov dl, byte ptr [ecx+eax+00
-
- * Referenced by a CALL at Addresses:
- |:004622DE , :00462701 , :00463BE3 , :0046C66D , :0046C927 ,
- |:0046CA1F , :0048BE46 , :0048C911 , :0048CAA1 , :00494527 ,
- |:00494566 , :0049597F , :0049F5CE , :004A45A5 , :004AD0BA
- |:004ADA4F , :004C5EAB , :004D344B , :004D3484 , :004F0539 ,
- |:004F0DEC , :004F127D , :004F13C3 , :0050DE0D , :005ACF09 ,
- |:005CB333 , :005CB602 , :005CBABF , :005CBB18 , :005CBD36
- |:005CBF1A , :005CC0F6 , :005CC2FB , :005CFD7E , :005D685E ,
- |:005D6CF3 , :005DCA3D , :005DD01A , :005DD1BD , :005DF5D2 ,
- |:005DF5FC , :005DF626 , :005DF66F , :005DF699 , :005DF6C3
- |:005DF796 , :005DF7BD , :005DF7E4 , :005DF851 , :005DF878 ,
- |:005DF89F , :005E050A , :005E4785 , :005E4F5B , :005E51A6 ,
- |:005E7D33 , :005E7D78 , :005E8E05 , :005EECC2 , :00639E48
- | 00
- :006F0FC0 53 push ebx :
- :006F0FC1 56 push esi :
- :006F0FC2 57 push edi :
- :006F0FC3 8DB15C0F0000 lea esi, dword ptr [ecx+00000F5C]
- :006F0FC9 B910000000 mov ecx, 00000010
- :006F0FCE BFB4B68400 mov edi, 0084B6B4
- :006F0FD3 F3 repz d
- :006F0FD4 A5 movsd
- :006F0FD5 8B0DDCF47900 mov ecx, dword ptr [0079F4DC]
- :006F0FDB 33C0 xor eax, eax d
- :006F0FDD 81E9B4B68400 sub ecx, 0084B6B4
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:006F0FFC(C) y
- | 00
- :006F0FE3 8A9401B4B68400 mov dl, byte ptr [ecx+eax+0084B6B4] //CharName=
- :006F0FEA 8A98B4B68400 mov bl, byte ptr [eax+0084B6B4] B4
- :006F0FF0 32DA xor bl, dl
- :006F0FF2 8898B4B68400 mov byte ptr [eax+0084B6B4], bl B4
- :006F0FF8 40 inc eax p
- :006F0FF9 83F840 cmp eax, 00000040
- :006F0FFC 72E5 jb 006F0FE3 00
- :006F0FFE 5F pop edi FE
- :006F0FFF 5E pop esi FE
- :006F1000 B8B4B68400 mov eax, 0084B6B4
- :006F1005 5B pop ebx 0
- :006F1006 C3 ret eb
-
-
- //Zeny=
- //BaseExp=
- //BaseExpNext=
- //JobExp=
- //JobExpNext=
- //關鍵字:* Possible StringData Ref from Data Obj ->"%d : %d/%d More : %d"
-
- * Possible StringData Ref from Data Obj ->"%d : %d/%d More : %d"
- |
- :005DA47A 68483E7900 push 00793E48
- :005DA47F 50 push eax 3
- :005DA480 E8B3101400 call 0071B538
- :005DA485 83C418 add esp, 00000018
- :005DA488 8D8D00FFFFFF lea ecx, dword ptr [ebp+FFFFFF00]
- :005DA48E 6A00 push 00000000
- :005DA490 6A00 push 00000000
- :005DA492 68F51EF500 push 00F51EF5
- :005DA497 51 push ecx 1
- :005DA498 6A01 push 00000001
- :005DA49A B938337E00 mov ecx, 007E3338
- :005DA49F E8FC2CF3FF call 0050D1A0
- :005DA4A4 5F pop edi 0D
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
- |:005DA44B(C), :005DA45C(C), :005DA460(C) di
- | 00
- :005DA4A5 8B5304 mov edx, dword ptr [ebx+04] re
- :005DA4A8 B988828400 mov ecx, 00848288
- :005DA4AD 89153C9D8400 mov dword ptr [00849D3C], edx //BaseExp=
- :005DA4B3 E878E60F00 call 006D8B30
- :005DA4B8 5E pop esi D8
- :005DA4B9 5B pop ebx D8
- :005DA4BA 8BE5 mov esp, ebp
- :005DA4BC 5D pop ebp e
- :005DA4BD C20400 ret 0004 e
-
-
- :005DA4C0 8B4304 mov eax, dword ptr [ebx+04] x
- :005DA4C3 B988828400 mov ecx, 00848288
- :005DA4C8 A3F89D8400 mov dword ptr [00849DF8], eax //JobExp=
- :005DA4CD E85EE60F00 call 006D8B30
- :005DA4D2 5B pop ebx D8
- :005DA4D3 8BE5 mov esp, ebp
- :005DA4D5 5D pop ebp e
- :005DA4D6 C20400 ret 0004 e
-
-
- :005DA4D9 8B8110010000 mov eax, dword ptr [ecx+00000110]
- :005DA4DF 85C0 test eax, eax
- :005DA4E1 7414 je 005DA4F7 x
- :005DA4E3 C7811001000000000000 mov dword ptr [ebx+00000110], 00000000
- :005DA4ED B988828400 mov ecx, 00848288
- :005DA4F2 E8B96A0F00 call 006D0FB0
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:005DA4E1(C) y
- | 00
- :005DA4F7 8B4B04 mov ecx, dword ptr [ebx+04] re
- :005DA4FA 890DE49D8400 mov dword ptr [00849DE4], ecx //Zeny=
- :005DA500 B988828400 mov ecx, 00848288
- :005DA505 E826E60F00 call 006D8B30
- :005DA50A 5B pop ebx D8
- :005DA50B 8BE5 mov esp, ebp
- :005DA50D 5D pop ebp e
- :005DA50E C20400 ret 0004 e
-
-
- :005DA511 8B5304 mov edx, dword ptr [ebx+04] x
- :005DA514 B988828400 mov ecx, 00848288
- :005DA519 8915489D8400 mov dword ptr [00849D48], edx //BaseExpNext=
- :005DA51F E80CE60F00 call 006D8B30
- :005DA524 5B pop ebx D8
- :005DA525 8BE5 mov esp, ebp
- :005DA527 5D pop ebp e
- :005DA528 C20400 ret 0004 e
-
-
- :005DA52B 8B4304 mov eax, dword ptr [ebx+04] x
- :005DA52E B988828400 mov ecx, 00848288
- :005DA533 A3F49D8400 mov dword ptr [00849DF4], eax //JobExpNext=
- :005DA538 E8F3E50F00 call 006D8B30
-
-
- //Weight=
- //WeightMax=
- //關鍵字:* Possible StringData Ref from Data Obj ->"Weight %d%%"
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0046D5D5(C) y
- | 00
- :0046D5F7 C3 ret C)
- :0046D5F8 90 nop C)
- :0046D5F9 90 nop C)
- :0046D5FA 90 nop C)
- :0046D5FB 90 nop C)
- :0046D5FC 90 nop C)
- :0046D5FD 90 nop C)
- :0046D5FE 90 nop C)
- :0046D5FF 90 nop C)
- :0046D600 55 push ebp i
- :0046D601 8BEC mov ebp, esp n
- :0046D603 83EC40 sub esp, 00000040
- :0046D606 56 push esi 0
- :0046D607 57 push edi 0
- :0046D608 8BF9 mov edi, ecx 0
- :0046D60A 8B4720 mov eax, dword ptr [edi+20] re
- :0046D60D 8B4F64 mov ecx, dword ptr [edi+64] re
- :0046D610 3BC1 cmp eax, ecx d
- :0046D612 0F858F000000 jne 0046D6A7 d
- :0046D618 8D70EC lea esi, dword ptr [eax-14] re
- :0046D61B 8B4508 mov eax, dword ptr [ebp+08] re
- :0046D61E 85C0 test eax, eax
- :0046D620 0F8C81000000 jl 0046D6A7 x
- :0046D626 83F864 cmp eax, 00000064
- :0046D629 7D7C jge 0046D6A7 0
- :0046D62B 8B450C mov eax, dword ptr [ebp+0C] re
- :0046D62E 3BC6 cmp eax, esi d
- :0046D630 7C75 jl 0046D6A7 d
- :0046D632 8D4E14 lea ecx, dword ptr [esi+14] re
- :0046D635 3BC1 cmp eax, ecx d
- :0046D637 7D6E jge 0046D6A7 d
- :0046D639 8B0DF09D8400 mov ecx, dword ptr [00849DF0] //WeightMax=
- :0046D63F 85C9 test ecx, ecx
- :0046D641 750C jne 0046D64F
- :0046D643 51 push ecx 6
- :0046D644 8D55C0 lea edx, dword ptr [ebp-40] ]
-
- * Possible StringData Ref from Data Obj ->"Weight %d%%"
- |
- :0046D647 68781F7700 push 00771F78
- :0046D64C 52 push edx 1
- :0046D64D EB1B jmp 0046D66A
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0046D641(C) y
- | 00
- :0046D64F A1FC9D8400 mov eax, dword ptr [00849DFC] //Weight=
- :0046D654 8D0480 lea eax, dword ptr [eax+4*eax]
- :0046D657 8D0480 lea eax, dword ptr [eax+4*eax]
- :0046D65A C1E002 shl eax, 02 rd
- :0046D65D 99 cdq ea
- :0046D65E F7F9 idiv ecx 0
- :0046D660 50 push eax 0
- :0046D661 8D45C0 lea eax, dword ptr [ebp-40] x]
-
- * Possible StringData Ref from Data Obj ->"Weight %d%%"
- |
- :0046D664 68781F7700 push 00771F78
- :0046D669 50 push eax 1
-
-
- //BaseLv=
- //JobLv=
- //關鍵字:* Possible StringData Ref from Data Obj ->"Base Lv. %d"
- //關鍵字:* Possible StringData Ref from Data Obj ->"Job Lv. %d"
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0046D2F8(C) y
- | 00
- :0046D30E 8B15409D8400 mov edx, dword ptr [00849D40] //BaseLv=
- :0046D314 8D8564FFFFFF lea eax, dword ptr [ebp+FFFFFF64]
- :0046D31A 52 push edx d
-
- * Possible StringData Ref from Data Obj ->"Base Lv. %d"
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0046D352(C) y
- | 00
- :0046D368 8B154C9D8400 mov edx, dword ptr [00849D4C] //JobLv=
- :0046D36E 8D8564FFFFFF lea eax, dword ptr [ebp+FFFFFF64]
- :0046D374 52 push edx d
-
- * Possible StringData Ref from Data Obj ->"Job Lv. %d"
-
-
- //HPIndex=
- //MaxHPTable=
- //關鍵字:lea edx, dword ptr [8*eax+00000000] ]
- //2011/01/05 更新完後 會有2組 由上往下找 第2組才是我們要的
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0061CDB3(C) y
- | 00
- :0061CDC8 8D14C500000000 lea edx, dword ptr [8*eax+00000000] ]
- :0061CDCF 2BD0 sub edx, eax d
- :0061CDD1 33C0 xor eax, eax d
- :0061CDD3 C1E204 shl edx, 04 d
- :0061CDD6 8A841AAC0E0000 mov al, byte ptr [edx+ebx+00000EAC] ]
- :0061CDDD 8D341A lea esi, dword ptr [edx+ebx] 0
- :0061CDE0 A358968400 mov dword ptr [00849658], eax
- :0061CDE5 0FBF8E780E0000 movsx ecx, word ptr [esi+00000E78]
- :0061CDEC 890D389D8400 mov dword ptr [00849D38], ecx
- :0061CDF2 B988828400 mov ecx, 00848288
- :0061CDF7 E834BD0B00 call 006D8B30
- :0061CDFC B988828400 mov ecx, 00848288
- :0061CE01 E88ABC0B00 call 006D8A90
- :0061CE06 8B96400E0000 mov edx, dword ptr [esi+00000E40]
- :0061CE0C B988828400 mov ecx, 00848288
- :0061CE11 89152C9D8400 mov dword ptr [00849D2C], edx
- :0061CE17 0FBF86760E0000 movsx eax, word ptr [esi+00000E76]
- :0061CE1E A3E89D8400 mov dword ptr [00849DE8], eax
- :0061CE23 E808BD0B00 call 006D8B30
- :0061CE28 0FBF8E7E0E0000 movsx ecx, word ptr [esi+00000E7E]
- :0061CE2F 890D409D8400 mov dword ptr [00849D40], ecx
- :0061CE35 B988828400 mov ecx, 00848288
- :0061CE3A E8F1BC0B00 call 006D8B30
- :0061CE3F 0FBF96800E0000 movsx edx, word ptr [esi+00000E80]
- :0061CE46 B988828400 mov ecx, 00848288
- :0061CE4B 8915509D8400 mov dword ptr [00849D50], edx
- :0061CE51 E8DABC0B00 call 006D8B30
- :0061CE56 0FBF86680E0000 movsx eax, word ptr [esi+00000E68]
- :0061CE5D B988828400 mov ecx, 00848288
- :0061CE62 A3449D8400 mov dword ptr [00849D44], eax
- :0061CE67 E8C4BC0B00 call 006D8B30
- :0061CE6C 33C9 xor ecx, ecx
- :0061CE6E 8A8EA60E0000 mov cl, byte ptr [esi+00000EA6] 8]
- :0061CE74 890D789D8400 mov dword ptr [00849D78], ecx
- :0061CE7A B988828400 mov ecx, 00848288
- :0061CE7F E8ACBC0B00 call 006D8B30
- :0061CE84 33D2 xor edx, edx
- :0061CE86 B988828400 mov ecx, 00848288
- :0061CE8B 8A96A70E0000 mov dl, byte ptr [esi+00000EA7] 8]
- :0061CE91 89157C9D8400 mov dword ptr [00849D7C], edx
- :0061CE97 E894BC0B00 call 006D8B30
- :0061CE9C 33C0 xor eax, eax
- :0061CE9E B988828400 mov ecx, 00848288
- :0061CEA3 8A86A80E0000 mov al, byte ptr [esi+00000EA8] 8]
- :0061CEA9 A3809D8400 mov dword ptr [00849D80], eax
- :0061CEAE E87DBC0B00 call 006D8B30
- :0061CEB3 33C9 xor ecx, ecx
- :0061CEB5 8A8EA90E0000 mov cl, byte ptr [esi+00000EA9] 8]
- :0061CEBB 890D849D8400 mov dword ptr [00849D84], ecx
- :0061CEC1 B988828400 mov ecx, 00848288
- :0061CEC6 E865BC0B00 call 006D8B30
- :0061CECB 33D2 xor edx, edx
- :0061CECD B988828400 mov ecx, 00848288
- :0061CED2 8A96AA0E0000 mov dl, byte ptr [esi+00000EAA] 8]
- :0061CED8 8915889D8400 mov dword ptr [00849D88], edx
- :0061CEDE E84DBC0B00 call 006D8B30
- :0061CEE3 33C0 xor eax, eax
- :0061CEE5 B988828400 mov ecx, 00848288
- :0061CEEA 8A86AB0E0000 mov al, byte ptr [esi+00000EAB] 8]
- :0061CEF0 A38C9D8400 mov dword ptr [00849D8C], eax
- :0061CEF5 E836BC0B00 call 006D8B30
- :0061CEFA 8B8E440E0000 mov ecx, dword ptr [esi+00000E44]
- :0061CF00 890D3C9D8400 mov dword ptr [00849D3C], ecx
- :0061CF06 B988828400 mov ecx, 00848288
- :0061CF0B E820BC0B00 call 006D8B30
- :0061CF10 8B15BCAF8400 mov edx, dword ptr [0084AFBC]
- :0061CF16 8B866A0E0000 mov eax, dword ptr [esi+00000E6A]
- :0061CF1C 8B0C95C8AF8400 mov ecx, dword ptr [4*edx+0084AFC8] ]
- :0061CF23 51 push ecx d
- :0061CF24 50 push eax d
- :0061CF25 B988828400 mov ecx, 00848288
- :0061CF2A E851990C00 call 006E6880
- :0061CF2F 8B0DB4AF8400 mov ecx, dword ptr [0084AFB4] //HPIndex=
- :0061CF35 3B048D58B08400 cmp eax, dword ptr [4*ecx+0084B058] ]
- :0061CF3C 7417 je 0061CF55 rd
- :0061CF3E 89048D58B08400 mov dword ptr [4*ecx+0084B058], eax ]
- :0061CF45 B988828400 mov ecx, 00848288
- :0061CF4A E881BB0B00 call 006D8AD0
- :0061CF4F 8B0DB4AF8400 mov ecx, dword ptr [0084AFB4] //HPIndex=
-
- * Referenced by a (U)nconditional or (C)onditional Jump at Address:
- |:0061CF3C(C) y
- | 00
- :0061CF55 8B15BCAF8400 mov edx, dword ptr [0084AFBC]
- :0061CF5B 8B0C8D58B08400 mov ecx, dword ptr [4*ecx+0084B058] ]
- :0061CF62 8B0495C8AF8400 mov eax, dword ptr [4*edx+0084AFC8] ]
- :0061CF69 50 push eax d
- :0061CF6A 51 push ecx d
- :0061CF6B B988828400 mov ecx, 00848288
- :0061CF70 E86B9A0C00 call 006E69E0
- :0061CF75 8B15BCAF8400 mov edx, dword ptr [0084AFBC]
- :0061CF7B A308B28400 mov dword ptr [0084B208], eax
- :0061CF80 8B866E0E0000 mov eax, dword ptr [esi+00000E6E]
- :0061CF86 8B0C95C8AF8400 mov ecx, dword ptr [4*edx+0084AFC8] ]
- :0061CF8D 51 push ecx d
- :0061CF8E 50 push eax d
- :0061CF8F B988828400 mov ecx, 00848288
- :0061CF94 E8E7980C00 call 006E6880
- :0061CF99 8B0DC0AF8400 mov ecx, dword ptr [0084AFC0]
- :0061CF9F 3B048DF8AF8400 cmp eax, dword ptr [4*ecx+0084AFF8] ] //MaxHPTable=
- :0061CFA6 7417 je 0061CFBF rd
- :0061CFA8 89048DF8AF8400 mov dword ptr [4*ecx+0084AFF8], eax ] //MaxHPTable=
- :0061CFAF B988828400 mov ecx, 00848288
- :0061CFB4 E817BB0B00 call 006D8AD0
- :0061CFB9 8B0DC0AF8400 mov ecx, dword ptr [0084AFC0]
複製代碼
|