Re: Function that deals with ScoreList Color
JMP to an empty part of the codecave.
Then:
MOV EBX,DWORD PTR DS:[EBP+45A]
CMP EBX, 0FC (252)
CMP EBX, 0FE (254)
CMP EBX, 0FF (255)
Took me 2 minutes to find out.
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Donald Duck
JMP to an empty part of the codecave.
Then:
MOV EBX,DWORD PTR DS:[EBP+45A]
CMP EBX, 0FC (252)
CMP EBX, 0FE (254)
CMP EBX, 0FF (255)
Took me 2 minutes to find out.
Ok, but from where do I need to jump, I mean, which function do I need to edit? Thanks.
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
cerealnp
Ok, but from where do I need to jump, I mean, which function do I need to edit? Thanks.
The function that was mentioned above. (BetrayedAcheron)
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Donald Duck
JMP to an empty part of the codecave.
Then:
MOV EBX,DWORD PTR DS:[EBP+45A]
CMP EBX, 0FC (252)
CMP EBX, 0FE (254)
CMP EBX, 0FF (255)
Took me 2 minutes to find out.
So I nop the red code betrayed showed, jump to codecave paste in
MOV EBX,DWORD PTR DS:[EBP+45A]
CMP EBX, 0FC (252)
CMP EBX, 0FE (254)
CMP EBX, 0FF (255)
[and all my other grades like that]
and then jump back right ?
and then the tablist is unmasked [the color]?
Re: Function that deals with ScoreList Color
1) Go to 004078BC
2) Select from 004078BC to 0040790D
3) Fill with NOPs
4) Go back to 004078BC and assemble the following lines:
Code:
004078BC E8 B6DE1D00 CALL theduel_.005E5777
004078C1 |. 84C0 |TEST AL,AL
004078C3 |. 8B85 64040000 |MOV EAX,DWORD PTR SS:[EBP+464] ; theduel_.0066006F
004078C9 |. 74 51 |JE SHORT theduel_.0040791C
004078CB 8BCD MOV ECX,EBP
004078CD 8D81 D0030000 LEA EAX,DWORD PTR DS:[ECX+3D0]
004078D3 | 90 |NOP
004078D4 |> 50 |PUSH EAX
004078D5 |. 68 B5060000 |PUSH 6B5
004078DA |. E8 110C1000 |CALL theduel_.005084F0
004078DF |. 8BC8 |MOV ECX,EAX
004078E1 |. E8 8A7D0C00 |CALL theduel_.004CF670
004078E6 8B8D 84030000 MOV ECX,DWORD PTR SS:[EBP+384]
004078EC 50 PUSH EAX
004078ED 51 PUSH ECX
004078EE 8D57 0C LEA EDX,DWORD PTR DS:[EDI+C]
004078F1 68 246D5E00 PUSH theduel_.005E6D24 ; ASCII "%d%s %s"
004078F6 52 PUSH EDX ; ntdll.KiFastSystemCallRet
004078F7 E8 119E1600 CALL theduel_.0057170D
004078FC E9 82DA1D00 JMP theduel_.005E5383
5) Go to 00407909 and assemble the following lines:
Code:
00407909 8B4C24 40 MOV ECX,DWORD PTR SS:[ESP+40]
0040790D 83C4 14 ADD ESP,14
6) Go to 005E5771 and hit in the following (this assumes only 255,254,2 are coloured... you may have to change it yourself to suit your needs)
Code:
005E5771 32C0 XOR AL,AL
005E5773 C3 RETN
005E5774 B0 01 MOV AL,1
005E5776 C3 RETN
005E5777 8B81 5A040000 MOV EAX,DWORD PTR DS:[ECX+45A]
005E577D 3D FF000000 CMP EAX,0FF
005E5782 ^ 74 F0 JE SHORT theduel_.005E5774
005E5784 3D FE000000 CMP EAX,0FE
005E5789 ^ 74 E9 JE SHORT theduel_.005E5774
005E578B 83F8 02 CMP EAX,2
005E578E ^ 74 E4 JE SHORT theduel_.005E5774
005E5790 ^ EB DF JMP SHORT theduel_.005E5771
7) Now go to 005E537D and do the following... (As above)
Code:
005E537D > /61 POPAD
005E537E .^|E9 8625E2FF JMP Aristrum.00407909
005E5383 > |60 PUSHAD
005E5384 . |C74424 60 FFFFFFFF MOV DWORD PTR SS:[ESP+60],-1
005E538C . |8B85 5A040000 MOV EAX,DWORD PTR SS:[EBP+45A] ; Aristrum.00630069
005E5392 . |3D FF000000 CMP EAX,0FF
005E5397 . |75 08 JNZ SHORT Aristrum.005E53A1
005E5399 . |C74424 60 C6F7FFFF MOV DWORD PTR SS:[ESP+60],-83A
005E53A1 > |3D FE000000 CMP EAX,0FE
005E53A6 . |75 08 JNZ SHORT Aristrum.005E53B0
005E53A8 . |C74424 60 00FC4DFF MOV DWORD PTR SS:[ESP+60],FF4DFC00
005E53B0 > |83F8 02 CMP EAX,2
005E53B3 . |75 08 JNZ SHORT Aristrum.005E53BD
005E53B5 . |C74424 60 FFC6EEFF MOV DWORD PTR SS:[ESP+60],FFEEC6FF
005E53BD >^\EB BE JMP SHORT Aristrum.005E537D
8) Should be it ;D
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Donald Duck
JMP to an empty part of the codecave.
Then:
MOV EBX,DWORD PTR DS:[EBP+45A]
CMP EBX, 0FC (252)
CMP EBX, 0FE (254)
CMP EBX, 0FF (255)
Took me 2 minutes to find out.
I just tested that, didn't change anything
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Aristrum
1) Go to 004078BC
2) Select from 004078BC to 0040790D
3) Fill with NOPs
4) Go back to 004078BC and assemble the following lines:
Code:
004078BC E8 B6DE1D00 CALL theduel_.005E5777
004078C1 |. 84C0 |TEST AL,AL
004078C3 |. 8B85 64040000 |MOV EAX,DWORD PTR SS:[EBP+464] ; theduel_.0066006F
004078C9 |. 74 51 |JE SHORT theduel_.0040791C
004078CB 8BCD MOV ECX,EBP
004078CD 8D81 D0030000 LEA EAX,DWORD PTR DS:[ECX+3D0]
004078D3 | 90 |NOP
004078D4 |> 50 |PUSH EAX
004078D5 |. 68 B5060000 |PUSH 6B5
004078DA |. E8 110C1000 |CALL theduel_.005084F0
004078DF |. 8BC8 |MOV ECX,EAX
004078E1 |. E8 8A7D0C00 |CALL theduel_.004CF670
004078E6 8B8D 84030000 MOV ECX,DWORD PTR SS:[EBP+384]
004078EC 50 PUSH EAX
004078ED 51 PUSH ECX
004078EE 8D57 0C LEA EDX,DWORD PTR DS:[EDI+C]
004078F1 68 246D5E00 PUSH theduel_.005E6D24 ; ASCII "%d%s %s"
004078F6 52 PUSH EDX ; ntdll.KiFastSystemCallRet
004078F7 E8 119E1600 CALL theduel_.0057170D
004078FC E9 82DA1D00 JMP theduel_.005E5383
5) Go to 00407909 and assemble the following lines:
Code:
00407909 8B4C24 40 MOV ECX,DWORD PTR SS:[ESP+40]
0040790D 83C4 14 ADD ESP,14
6) Go to 005E5771 and hit in the following (this assumes only 255,254,2 are coloured... you may have to change it yourself to suit your needs)
Code:
005E5771 32C0 XOR AL,AL
005E5773 C3 RETN
005E5774 B0 01 MOV AL,1
005E5776 C3 RETN
005E5777 8B81 5A040000 MOV EAX,DWORD PTR DS:[ECX+45A]
005E577D 3D FF000000 CMP EAX,0FF
005E5782 ^ 74 F0 JE SHORT theduel_.005E5774
005E5784 3D FE000000 CMP EAX,0FE
005E5789 ^ 74 E9 JE SHORT theduel_.005E5774
005E578B 83F8 02 CMP EAX,2
005E578E ^ 74 E4 JE SHORT theduel_.005E5774
005E5790 ^ EB DF JMP SHORT theduel_.005E5771
7) Now go to 005E537D and do the following... (As above)
Code:
005E537D > /61 POPAD
005E537E .^|E9 8625E2FF JMP Aristrum.00407909
005E5383 > |60 PUSHAD
005E5384 . |C74424 60 FFFFFFFF MOV DWORD PTR SS:[ESP+60],-1
005E538C . |8B85 5A040000 MOV EAX,DWORD PTR SS:[EBP+45A] ; Aristrum.00630069
005E5392 . |3D FF000000 CMP EAX,0FF
005E5397 . |75 08 JNZ SHORT Aristrum.005E53A1
005E5399 . |C74424 60 C6F7FFFF MOV DWORD PTR SS:[ESP+60],-83A
005E53A1 > |3D FE000000 CMP EAX,0FE
005E53A6 . |75 08 JNZ SHORT Aristrum.005E53B0
005E53A8 . |C74424 60 00FC4DFF MOV DWORD PTR SS:[ESP+60],FF4DFC00
005E53B0 > |83F8 02 CMP EAX,2
005E53B3 . |75 08 JNZ SHORT Aristrum.005E53BD
005E53B5 . |C74424 60 FFC6EEFF MOV DWORD PTR SS:[ESP+60],FFEEC6FF
005E53BD >^\EB BE JMP SHORT Aristrum.005E537D
8) Should be it ;D
Wow thanks i'm on it right away
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Aristrum
1) Go to 004078BC
2) Select from 004078BC to 0040790D
3) Fill with NOPs
4) Go back to 004078BC and assemble the following lines:
Code:
004078BC E8 B6DE1D00 CALL theduel_.005E5777
004078C1 |. 84C0 |TEST AL,AL
004078C3 |. 8B85 64040000 |MOV EAX,DWORD PTR SS:[EBP+464] ; theduel_.0066006F
004078C9 |. 74 51 |JE SHORT theduel_.0040791C
004078CB 8BCD MOV ECX,EBP
004078CD 8D81 D0030000 LEA EAX,DWORD PTR DS:[ECX+3D0]
004078D3 | 90 |NOP
004078D4 |> 50 |PUSH EAX
004078D5 |. 68 B5060000 |PUSH 6B5
004078DA |. E8 110C1000 |CALL theduel_.005084F0
004078DF |. 8BC8 |MOV ECX,EAX
004078E1 |. E8 8A7D0C00 |CALL theduel_.004CF670
004078E6 8B8D 84030000 MOV ECX,DWORD PTR SS:[EBP+384]
004078EC 50 PUSH EAX
004078ED 51 PUSH ECX
004078EE 8D57 0C LEA EDX,DWORD PTR DS:[EDI+C]
004078F1 68 246D5E00 PUSH theduel_.005E6D24 ; ASCII "%d%s %s"
004078F6 52 PUSH EDX ; ntdll.KiFastSystemCallRet
004078F7 E8 119E1600 CALL theduel_.0057170D
004078FC E9 82DA1D00 JMP theduel_.005E5383
5) Go to 00407909 and assemble the following lines:
Code:
00407909 8B4C24 40 MOV ECX,DWORD PTR SS:[ESP+40]
0040790D 83C4 14 ADD ESP,14
6) Go to 005E5771 and hit in the following (this assumes only 255,254,2 are coloured... you may have to change it yourself to suit your needs)
Code:
005E5771 32C0 XOR AL,AL
005E5773 C3 RETN
005E5774 B0 01 MOV AL,1
005E5776 C3 RETN
005E5777 8B81 5A040000 MOV EAX,DWORD PTR DS:[ECX+45A]
005E577D 3D FF000000 CMP EAX,0FF
005E5782 ^ 74 F0 JE SHORT theduel_.005E5774
005E5784 3D FE000000 CMP EAX,0FE
005E5789 ^ 74 E9 JE SHORT theduel_.005E5774
005E578B 83F8 02 CMP EAX,2
005E578E ^ 74 E4 JE SHORT theduel_.005E5774
005E5790 ^ EB DF JMP SHORT theduel_.005E5771
7) Now go to 005E537D and do the following... (As above)
Code:
005E537D > /61 POPAD
005E537E .^|E9 8625E2FF JMP Aristrum.00407909
005E5383 > |60 PUSHAD
005E5384 . |C74424 60 FFFFFFFF MOV DWORD PTR SS:[ESP+60],-1
005E538C . |8B85 5A040000 MOV EAX,DWORD PTR SS:[EBP+45A] ; Aristrum.00630069
005E5392 . |3D FF000000 CMP EAX,0FF
005E5397 . |75 08 JNZ SHORT Aristrum.005E53A1
005E5399 . |C74424 60 C6F7FFFF MOV DWORD PTR SS:[ESP+60],-83A
005E53A1 > |3D FE000000 CMP EAX,0FE
005E53A6 . |75 08 JNZ SHORT Aristrum.005E53B0
005E53A8 . |C74424 60 00FC4DFF MOV DWORD PTR SS:[ESP+60],FF4DFC00
005E53B0 > |83F8 02 CMP EAX,2
005E53B3 . |75 08 JNZ SHORT Aristrum.005E53BD
005E53B5 . |C74424 60 FFC6EEFF MOV DWORD PTR SS:[ESP+60],FFEEC6FF
005E53BD >^\EB BE JMP SHORT Aristrum.005E537D
8) Should be it ;D
Why JMP so many times?
Quote:
Originally Posted by
Nobody666
I just tested that, didn't change anything
Sigh... I'll give an example.
First, navigate to 004078F5. NOP 004078F5 until 00407904 and then do a JMP to the bottom, for example address 005E50E2. On 005E50E2, assemble the following
MOV EBX,DWORD PTR DS:[EBP+45A] ;Fill the UGrade of the player in the EBX register
CMP EBX, 0FE ;Check if the EBX is equal to 254
JNE SHORT 005E50EC ;If not, JMP to the CMP EBX, 0FF. The address here is not right but you can change it yourself
MOV BYTE PTR SS:[ESP+3C],0FF ;The R
MOV BYTE PTR SS:[ESP+3D],80 ;The G
MOV BYTE PTR SS:[ESP+3E],40 ;The B
MOV BYTE PTR SS:[ESP+3F],0FF; The A
JMP 00407909 ;JMP back to where you came from.
CMP EBX, 0FF ;Check if EBX is equal to 255. JMP to here with the JNE under the previous CMP.
JNE 00407909 ;If it's not 0FF, something really weird happened. But to prevent crashes, just JMP back.
MOV BYTE PTR SS:[ESP+3C],0FF ;The R
MOV BYTE PTR SS:[ESP+3D],80 ;The G
MOV BYTE PTR SS:[ESP+3E],40 ;The B
MOV BYTE PTR SS:[ESP+3F],0FF; The A
JMP 00407909 ;JMP back to where you came from
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Donald Duck
Why JMP so many times?
Sigh... I'll give an example.
First, navigate to 004078F5. NOP 004078F5 until 00407904 and then do a JMP to the bottom, for example address 005E50E2. On 005E50E2, assemble the following
MOV EBX,DWORD PTR DS:[EBP+45A] ;Fill the UGrade of the player in the EBX register
CMP EBX, 0FE ;Check if the EBX is equal to 254
JNE SHORT 005E50EC ;If not, JMP to the CMP EBX, 0FF. The address here is not right but you can change it yourself
MOV BYTE PTR SS:[ESP+3C],0FF ;The R
MOV BYTE PTR SS:[ESP+3D],80 ;The G
MOV BYTE PTR SS:[ESP+3E],40 ;The B
MOV BYTE PTR SS:[ESP+3F],0FF; The A
JMP 00407909 ;JMP back to where you came from.
CMP EBX, 0FF ;Check if EBX is equal to 255. JMP to here with the JNE under the previous CMP.
JNE 00407909 ;If it's not 0FF, something really weird happened. But to prevent crashes, just JMP back.
MOV BYTE PTR SS:[ESP+3C],0FF ;The R
MOV BYTE PTR SS:[ESP+3D],80 ;The G
MOV BYTE PTR SS:[ESP+3E],40 ;The B
MOV BYTE PTR SS:[ESP+3F],0FF; The A
JMP 00407909 ;JMP back to where you came from
Gj. If you want more colors, do another JNE from under the CMP EBX, 0FF to, for example, CMP EBX, 2. Then do JNE 00407909 from there or do another JNE to CMP EBX, 3. It's all up to you.
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Trilest
Wow thanks i'm on it right away
Damn it worked thanks <3
Re: Function that deals with ScoreList Color
Btw, i am using this in adding new UGrades ( Tab list not included in this ):
Code:
005E521F > \83F9 02 cmp ecx, 2
005E5222 . 75 46 jnz short 005E526A
005E5224 . 90 nop
005E5225 . 90 nop
005E5226 . 90 nop
005E5227 . 90 nop
005E5228 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E522C . 85F6 test esi, esi
005E522E . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E5232 . C74424 08 FFF>mov dword ptr ss:[esp+8], FF00FFFF
005E523A . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E523E . 8902 mov dword ptr ds:[edx], eax
005E5240 . 74 20 je short 005E5262
005E5242 . 68 31230000 push 2331
005E5247 . E8 A432F2FF call 005084F0
005E524C . 8BC8 mov ecx, eax
005E524E . E8 1DA4EEFF call 004CF670
005E5253 . 8BD6 mov edx, esi
005E5255 . E9 33010000 jmp 005E538D
005E525A 90 nop
005E525B 90 nop
005E525C 90 nop
005E525D 90 nop
005E525E 90 nop
005E525F 90 nop
005E5260 90 nop
005E5261 90 nop
005E5262 > B0 01 mov al, 1
005E5264 . 5E pop esi
005E5265 . C3 retn
005E5266 90 nop
005E5267 90 nop
005E5268 90 nop
005E5269 90 nop
005E526A > 83F9 03 cmp ecx, 3
005E526D . 75 4F jnz short 005E52BE
005E526F . 90 nop
005E5270 . 90 nop
005E5271 . 90 nop
005E5272 . 90 nop
005E5273 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5277 . 85F6 test esi, esi
005E5279 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E527D . C74424 08 FF2>mov dword ptr ss:[esp+8], FFBD24FF
005E5285 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5289 . 8902 mov dword ptr ds:[edx], eax
005E528B . 74 20 je short 005E52AD
005E528D . 68 31230000 push 2331
005E5292 . E8 5932F2FF call 005084F0
005E5297 . 8BC8 mov ecx, eax
005E5299 . E8 D2A3EEFF call 004CF670
005E529E . 8BD6 mov edx, esi
005E52A0 . E9 E8000000 jmp 005E538D
005E52A5 90 nop
005E52A6 90 nop
005E52A7 90 nop
005E52A8 90 nop
005E52A9 90 nop
005E52AA 90 nop
005E52AB 90 nop
005E52AC 90 nop
005E52AD > B0 01 mov al, 1
005E52AF . 5E pop esi
005E52B0 . C3 retn
005E52B1 90 nop
005E52B2 90 nop
005E52B3 90 nop
005E52B4 90 nop
005E52B5 90 nop
005E52B6 90 nop
005E52B7 90 nop
005E52B8 90 nop
005E52B9 90 nop
005E52BA 90 nop
005E52BB 90 nop
005E52BC 90 nop
005E52BD 00 db 00
005E52BE > 83F9 04 cmp ecx, 4
005E52C1 . 75 43 jnz short 005E5306
005E52C3 . 90 nop
005E52C4 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E52C8 . 85F6 test esi, esi
005E52CA . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E52CE . C74424 08 FF0>mov dword ptr ss:[esp+8], FF0000FF
005E52D6 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E52DA . 8902 mov dword ptr ds:[edx], eax
005E52DC . 74 20 je short 005E52FE
005E52DE . 68 31230000 push 2331
005E52E3 . E8 0832F2FF call 005084F0
005E52E8 . 8BC8 mov ecx, eax
005E52EA . E8 81A3EEFF call 004CF670
005E52EF . 8BD6 mov edx, esi
005E52F1 . E9 97000000 jmp 005E538D
005E52F6 90 nop
005E52F7 90 nop
005E52F8 90 nop
005E52F9 90 nop
005E52FA 90 nop
005E52FB 90 nop
005E52FC 90 nop
005E52FD 90 nop
005E52FE > B0 01 mov al, 1
005E5300 . 5E pop esi
005E5301 . C3 retn
005E5302 90 nop
005E5303 90 nop
005E5304 90 nop
005E5305 90 nop
005E5306 > 83F9 05 cmp ecx, 5
005E5309 . 75 48 jnz short 005E5353
005E530B . 90 nop
005E530C . 90 nop
005E530D . 90 nop
005E530E . 90 nop
005E530F . 90 nop
005E5310 . 90 nop
005E5311 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5315 . 85F6 test esi, esi
005E5317 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E531B . C74424 08 FFB>mov dword ptr ss:[esp+8], FF00B3FF
005E5323 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5327 . 8902 mov dword ptr ds:[edx], eax
005E5329 . 74 20 je short 005E534B
005E532B . 68 31230000 push 2331
005E5330 . E8 BB31F2FF call 005084F0
005E5335 . 8BC8 mov ecx, eax
005E5337 . E8 34A3EEFF call 004CF670
005E533C . 8BD6 mov edx, esi
005E533E . EB 4D jmp short 005E538D
005E5340 90 nop
005E5341 90 nop
005E5342 90 nop
005E5343 90 nop
005E5344 90 nop
005E5345 90 nop
005E5346 90 nop
005E5347 90 nop
005E5348 90 nop
005E5349 90 nop
005E534A 90 nop
005E534B > B0 01 mov al, 1
005E534D . 5E pop esi
005E534E . C3 retn
005E534F 90 nop
005E5350 90 nop
005E5351 90 nop
005E5352 90 nop
005E5353 > 81F9 FC000000 cmp ecx, 0FC
005E5359 .^ 0F85 549CEBFF jnz 0049EFB3
005E535F . 90 nop
005E5360 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5364 . 85F6 test esi, esi
005E5366 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E536A . C74424 08 FF0>mov dword ptr ss:[esp+8], FF0505FF
005E5372 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5376 . 8902 mov dword ptr ds:[edx], eax
005E5378 . 74 20 je short 005E539A
005E537A . 68 31230000 push 2331
005E537F . E8 6C31F2FF call 005084F0
005E5384 . 8BC8 mov ecx, eax
005E5386 . E8 E5A2EEFF call 004CF670
005E538B . 8BD6 mov edx, esi
005E538D > 8D2424 lea esp, dword ptr ss:[esp]
005E5390 > 8A08 mov cl, byte ptr ds:[eax]
005E5392 . 40 inc eax
005E5393 . 880A mov byte ptr ds:[edx], cl
005E5395 . 42 inc edx
005E5396 . 84C9 test cl, cl
005E5398 .^ 75 F6 jnz short 005E5390
005E539A > B0 01 mov al, 1
005E539C . 5E pop esi
005E539D . C3 retn
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Demantor
Btw, i am using this in adding new UGrades ( Tab list not included in this ):
Code:
005E521F > \83F9 02 cmp ecx, 2
005E5222 . 75 46 jnz short 005E526A
005E5224 . 90 nop
005E5225 . 90 nop
005E5226 . 90 nop
005E5227 . 90 nop
005E5228 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E522C . 85F6 test esi, esi
005E522E . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E5232 . C74424 08 FFF>mov dword ptr ss:[esp+8], FF00FFFF
005E523A . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E523E . 8902 mov dword ptr ds:[edx], eax
005E5240 . 74 20 je short 005E5262
005E5242 . 68 31230000 push 2331
005E5247 . E8 A432F2FF call 005084F0
005E524C . 8BC8 mov ecx, eax
005E524E . E8 1DA4EEFF call 004CF670
005E5253 . 8BD6 mov edx, esi
005E5255 . E9 33010000 jmp 005E538D
005E525A 90 nop
005E525B 90 nop
005E525C 90 nop
005E525D 90 nop
005E525E 90 nop
005E525F 90 nop
005E5260 90 nop
005E5261 90 nop
005E5262 > B0 01 mov al, 1
005E5264 . 5E pop esi
005E5265 . C3 retn
005E5266 90 nop
005E5267 90 nop
005E5268 90 nop
005E5269 90 nop
005E526A > 83F9 03 cmp ecx, 3
005E526D . 75 4F jnz short 005E52BE
005E526F . 90 nop
005E5270 . 90 nop
005E5271 . 90 nop
005E5272 . 90 nop
005E5273 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5277 . 85F6 test esi, esi
005E5279 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E527D . C74424 08 FF2>mov dword ptr ss:[esp+8], FFBD24FF
005E5285 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5289 . 8902 mov dword ptr ds:[edx], eax
005E528B . 74 20 je short 005E52AD
005E528D . 68 31230000 push 2331
005E5292 . E8 5932F2FF call 005084F0
005E5297 . 8BC8 mov ecx, eax
005E5299 . E8 D2A3EEFF call 004CF670
005E529E . 8BD6 mov edx, esi
005E52A0 . E9 E8000000 jmp 005E538D
005E52A5 90 nop
005E52A6 90 nop
005E52A7 90 nop
005E52A8 90 nop
005E52A9 90 nop
005E52AA 90 nop
005E52AB 90 nop
005E52AC 90 nop
005E52AD > B0 01 mov al, 1
005E52AF . 5E pop esi
005E52B0 . C3 retn
005E52B1 90 nop
005E52B2 90 nop
005E52B3 90 nop
005E52B4 90 nop
005E52B5 90 nop
005E52B6 90 nop
005E52B7 90 nop
005E52B8 90 nop
005E52B9 90 nop
005E52BA 90 nop
005E52BB 90 nop
005E52BC 90 nop
005E52BD 00 db 00
005E52BE > 83F9 04 cmp ecx, 4
005E52C1 . 75 43 jnz short 005E5306
005E52C3 . 90 nop
005E52C4 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E52C8 . 85F6 test esi, esi
005E52CA . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E52CE . C74424 08 FF0>mov dword ptr ss:[esp+8], FF0000FF
005E52D6 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E52DA . 8902 mov dword ptr ds:[edx], eax
005E52DC . 74 20 je short 005E52FE
005E52DE . 68 31230000 push 2331
005E52E3 . E8 0832F2FF call 005084F0
005E52E8 . 8BC8 mov ecx, eax
005E52EA . E8 81A3EEFF call 004CF670
005E52EF . 8BD6 mov edx, esi
005E52F1 . E9 97000000 jmp 005E538D
005E52F6 90 nop
005E52F7 90 nop
005E52F8 90 nop
005E52F9 90 nop
005E52FA 90 nop
005E52FB 90 nop
005E52FC 90 nop
005E52FD 90 nop
005E52FE > B0 01 mov al, 1
005E5300 . 5E pop esi
005E5301 . C3 retn
005E5302 90 nop
005E5303 90 nop
005E5304 90 nop
005E5305 90 nop
005E5306 > 83F9 05 cmp ecx, 5
005E5309 . 75 48 jnz short 005E5353
005E530B . 90 nop
005E530C . 90 nop
005E530D . 90 nop
005E530E . 90 nop
005E530F . 90 nop
005E5310 . 90 nop
005E5311 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5315 . 85F6 test esi, esi
005E5317 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E531B . C74424 08 FFB>mov dword ptr ss:[esp+8], FF00B3FF
005E5323 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5327 . 8902 mov dword ptr ds:[edx], eax
005E5329 . 74 20 je short 005E534B
005E532B . 68 31230000 push 2331
005E5330 . E8 BB31F2FF call 005084F0
005E5335 . 8BC8 mov ecx, eax
005E5337 . E8 34A3EEFF call 004CF670
005E533C . 8BD6 mov edx, esi
005E533E . EB 4D jmp short 005E538D
005E5340 90 nop
005E5341 90 nop
005E5342 90 nop
005E5343 90 nop
005E5344 90 nop
005E5345 90 nop
005E5346 90 nop
005E5347 90 nop
005E5348 90 nop
005E5349 90 nop
005E534A 90 nop
005E534B > B0 01 mov al, 1
005E534D . 5E pop esi
005E534E . C3 retn
005E534F 90 nop
005E5350 90 nop
005E5351 90 nop
005E5352 90 nop
005E5353 > 81F9 FC000000 cmp ecx, 0FC
005E5359 .^ 0F85 549CEBFF jnz 0049EFB3
005E535F . 90 nop
005E5360 . 8B7424 10 mov esi, dword ptr ss:[esp+10]
005E5364 . 85F6 test esi, esi
005E5366 . 8B5424 0C mov edx, dword ptr ss:[esp+C]
005E536A . C74424 08 FF0>mov dword ptr ss:[esp+8], FF0505FF
005E5372 . 8B4424 08 mov eax, dword ptr ss:[esp+8]
005E5376 . 8902 mov dword ptr ds:[edx], eax
005E5378 . 74 20 je short 005E539A
005E537A . 68 31230000 push 2331
005E537F . E8 6C31F2FF call 005084F0
005E5384 . 8BC8 mov ecx, eax
005E5386 . E8 E5A2EEFF call 004CF670
005E538B . 8BD6 mov edx, esi
005E538D > 8D2424 lea esp, dword ptr ss:[esp]
005E5390 > 8A08 mov cl, byte ptr ds:[eax]
005E5392 . 40 inc eax
005E5393 . 880A mov byte ptr ds:[edx], cl
005E5395 . 42 inc edx
005E5396 . 84C9 test cl, cl
005E5398 .^ 75 F6 jnz short 005E5390
005E539A > B0 01 mov al, 1
005E539C . 5E pop esi
005E539D . C3 retn
How about jumping back to MOV AL, 1, POP ESI, RETN in the original function?
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Wizkidje
How about jumping back to MOV AL, 1, POP ESI, RETN in the original function?
i guess the address 005E5359 in his function does that
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Trilest
Damn it worked thanks <3
I'm glad :3.
Quote:
Originally Posted by
Donald Duck
Why JMP so many times?
I just like to do it that way. It looks neater to me :3. I also find it easy to add new grades later in a few lines.
Oh, I also done it this morning so some stuff might not make sense :P.
Re: Function that deals with ScoreList Color
Quote:
Originally Posted by
Aristrum
I'm glad :3.
I just like to do it that way. It looks neater to me :3. I also find it easy to add new grades later in a few lines.
Oh, I also done it this morning so some stuff might not make sense :P.
=]
Btw, do you also know how to color it when he or she died ?
Now my 10 ranks are their own color in tab, but when they die they are all dark orange and when they are alive again they are their own color again ;O