PvP .66

Newbie Spellweaver
Joined
Jul 3, 2009
Messages
46
Reaction score
39
Under new GS everyone is using (.66) there is a PvP error wich if we analyse its on the PK Check fuction:

Code:
004B9B9F   . 8B55 08        MOV EDX,DWORD PTR SS:[EBP+8]
004B9BA2   . 0FBF82 A600000>MOVSX EAX,WORD PTR DS:[EDX+A6]
004B9BA9   . 83F8 05        CMP EAX,5
004B9BAC   . 7F 07          JG SHORT GameServ.004B9BB5
004B9BAE   > 33C0           XOR EAX,EAX
004B9BB0   . E9 26040000    JMP GameServ.004B9FDB
004B9BB5   >^E9 9EFEFFFF    JMP GameServ.004B9A58
004B9BBA   > 90             NOP
004B9BBB   . 90             NOP
004B9BBC   . 52             PUSH EDX
004B9BBD   . E8 D8B1F4FF    CALL GameServ.00404D9A

Well seems some one do a jump to his own code... lets see:

Code:
004B9A58   > 8B4D 08        MOV ECX,DWORD PTR SS:[EBP+8]
004B9A5B   . 51             PUSH ECX
004B9A5C   . 8B4D 0C        MOV ECX,DWORD PTR SS:[EBP+C]
004B9A5F   . 51             PUSH ECX
004B9A60   . 90             NOP
004B9A61   . 90             NOP
004B9A62   . 90             NOP
004B9A63   . 90             NOP
004B9A64   . 90             NOP
004B9A65   . 83F8 00        CMP EAX,0
004B9A68   . 0F85 64050000  JNZ GameServ.004B9FD2
004B9A6E   . 8B55 0C        MOV EDX,DWORD PTR SS:[EBP+C]
004B9A71   . 52             PUSH EDX
004B9A72   . 8B45 08        MOV EAX,DWORD PTR SS:[EBP+8]
004B9A75   . E9 40010000    JMP GameServ.004B9BBA

This is stupid, the guy who did this on the public GS dont wanted to make PvP work or he just try to do some edit job and he mess it up.

So lets put the fix so simple has this:

Code:
004B9BB5    ^E9 B4FEFFFF    JMP GameServ.004B9A6E
004B9BBA   > 90             NOP
004B9BBB   . 90             NOP
004B9BBC     50             PUSH EAX

That its how it should get for a fast fix, please feel free to ask or tell any problem about this bug.

YOU NEED TO DO THIS WITH OLLYDBG

1.- Open Ollydbg with GS .66
2.- Press CTRL+G and put 004B9BB5
3.- go under JMP line, press SPACE BAR and place this JMP 004B9A6E
4.- go under PUSH EDX line, press SPACE BAR and place this PUSH EAX


ok simple and fast, enjoy.
 
Re: [Guide/Fix] PvP .66

bad fix but works, compare normal gs to cs and make it original :P:

Its a fast fix, of course you can restore to normal code of how it should be, but remember not everyone knows how do it, here fix for people think they pro:

Code:
004B9BAC                                              . /7F 07                         JG SHORT GameServ.004B9BB5
004B9BAE                                              > |33C0                          XOR EAX,EAX
004B9BB0                                              . |E9 26040000                   JMP GameServ.004B9FDB
004B9BB5                                                \8B55 0C                       MOV EDX,DWORD PTR SS:[EBP+C]
004B9BB8                                                 52                            PUSH EDX
004B9BB9                                                 8B45 08                       MOV EAX,DWORD PTR SS:[EBP+8]
004B9BBC                                                 50                            PUSH EAX
004B9BBD                                              .  E8 D8B1F4FF                   CALL GameServ.00404D9A

No big difference...

Now if you want to be more "pro" hahaha do this then:

Code:
004B9B9F                                              .  8B55 08                       MOV EDX,DWORD PTR SS:[EBP+8]
004B9BA2                                              .  0FBF82 A6000000               MOVSX EAX,WORD PTR DS:[EDX+A6]
004B9BA9                                              .  83F8 05                       CMP EAX,5
004B9BAC                                              .  7F 07                         JG SHORT GameServ.004B9BB5
004B9BAE                                              >  33C0                          XOR EAX,EAX
004B9BB0                                              .  E9 26040000                   JMP GameServ.004B9FDB
004B9BB5                                                 8B45 0C                       MOV EAX,DWORD PTR SS:[EBP+C]
004B9BB8                                                 50                            PUSH EAX
004B9BB9                                                 52                            PUSH EDX
004B9BBA                                                 E8 DBB1F4FF                   CALL GameServ.00404D9A

Assuming for get into that part of code EDX its equal to [EBP+8] you dont need to mov it again, so you just push it... you got some free lines and make the execution more faster (of course you wont even note it).

Everything depends of how people want the fix, noob way, normal way, pro way, but anyway its a fix... :P
 
Back