zx游戏自上上次更新以后。帐户不是名文了。用CE搜索不到了。外挂想用帐户来绑定用户的话就实现不了了。正郁闷着呢。老大说别人找到了回写帐户内存的代码。贴来给我看。我诈一看以为Bp send往回打的第几层的代码呢。仔细一看不是。白天忙工作了。晚上下班想看那段代码。忘带回来了。这怎么办。也不能浪费时间自己找吧!
即然有人找到了。说明在登录时游戏还是存了帐户的。但是为什么登录成功以后用CE却搜索不到呢。应该在分解登录过程的某一步进行了清空了也就是上面提到某人找到的代码。但现在我想找那段代码。想了个办法。为何不在bp send断的时候。也就是发包操作的时候。让游戏中断。此时用CE搜索。果然这样做了以后搜索到了几条信息,有时是一条。如果是多条可以F9运行。此时由于中断时间久了。游戏没反应过来。还显示正在登录中。点取看多条其中哪天还在就是了。复制这条地址。然后回到OD在内存区CTRL+G然后转到。下内存写断点。
这时回到游戏。输入帐户和密码点登录。OD中断。按两次F9就来到了回写清空帐户内存区的代码了
至于为什么按两次F9。第一次是运行。一看那里是个把帐户拆成4位一个。然后又跳 回去了组完又写。所以再F9就
跳出这段汇编了来到下面这句。(汇编不熟上面这句瞎分析的)
00583CA2 F3:AB REP STOS DWORD PTR ES:[EDI]
关键代码找到了剩下就试着NOp了 以下是那段汇编的全部代码
00583C30 /$ A1 74BB9100 MOV EAX,DWORD PTR DS:[91BB74]
00583C35 |. 53 PUSH EBX
00583C36 |. 55 PUSH EBP
00583C37 |. 56 PUSH ESI
00583C38 |. 57 PUSH EDI
00583C39 |. 68 20A58E00 PUSH elementc.008EA520 ; UNICODE "NET - protocol keyexchange"
00583C3E |. 68 00FF00FF PUSH FF00FF00
00583C43 |. 50 PUSH EAX
00583C44 |. 8BF1 MOV ESI,ECX
00583C46 |. E8 659FEAFF CALL elementc.0042DBB0
00583C4B |. 8A86 34010000 MOV AL,BYTE PTR DS:[ESI+134]
00583C51 |. 8B96 24010000 MOV EDX,DWORD PTR DS:[ESI+124]
00583C57 |. 83C4 0C ADD ESP,0C
00583C5A |. 8B6C24 14 MOV EBP,DWORD PTR SS:[ESP+14]
00583C5E |. 84C0 TEST AL,AL
00583C60 |. 8B86 98000000 MOV EAX,DWORD PTR DS:[ESI+98]
00583C66 |. 8D9E 24010000 LEA EBX,DWORD PTR DS:[ESI+124]
00583C6C |. 0F95C1 SETNE CL
00583C6F |. 81E1 FF000000 AND ECX,0FF
00583C75 |. 51 PUSH ECX ; /Arg4
00583C76 |. 8B8E 94000000 MOV ECX,DWORD PTR DS:[ESI+94] ; |
00583C7C |. 52 PUSH EDX ; |Arg3
00583C7D |. 50 PUSH EAX ; |Arg2
00583C7E |. 51 PUSH ECX ; |Arg1
00583C7F |. 8BCD MOV ECX,EBP ; |
00583C81 |. E8 8A490000 CALL elementc.00588610 ; \elementc.00588610
00583C86 |. 8BCB MOV ECX,EBX
00583C88 |. E8 030B1700 CALL elementc.006F4790
00583C8D |. 8BD0 MOV EDX,EAX
00583C8F |. 83C9 FF OR ECX,FFFFFFFF
00583C92 |. 8BFA MOV EDI,EDX
00583C94 |. 33C0 XOR EAX,EAX
00583C96 |. F2:AE REPNE SCAS BYTE PTR ES:[EDI]
00583C98 |. F7D1 NOT ECX
00583C9A |. 49 DEC ECX
00583C9B |. 8BFA MOV EDI,EDX
00583C9D |. 8BD1 MOV EDX,ECX
00583C9F |. C1E9 02 SHR ECX,2
00583CA2 |. F3:AB REP STOS DWORD PTR ES:[EDI]
00583CA4 |. 8BCA MOV ECX,EDX
00583CA6 |. 83E1 03 AND ECX,3
00583CA9 |. F3:AA REP STOS BYTE PTR ES:[EDI]
00583CAB |. 8BCB MOV ECX,EBX
00583CAD |. E8 2E0B1700 CALL elementc.006F47E0
00583CB2 |. 85ED TEST EBP,EBP
00583CB4 |. 74 0A JE SHORT elementc.00583CC0
00583CB6 |. 6A 00 PUSH 0
00583CB8 |. 55 PUSH EBP
00583CB9 |. 8BCE MOV ECX,ESI
00583CBB |. E8 10BBFFFF CALL elementc.0057F7D0
00583CC0 |> 5F POP EDI
00583CC1 |. 5E POP ESI
00583CC2 |. 5D POP EBP
00583CC3 |. 5B POP EBX
00583CC4 \. C2 0400 RETN 4
跟老大发给我。某位高手找到的一样。就是这了。