回复 #2 x-dvd 的帖子
这也是以前一位高手帮我改的,代码如下:
一.二次移动
需要修改两个地方
修改处一
0044AF70 /EB 03 JMP SHORT Ekd5.0044AF75
0044AF72 |FE45 DC INC BYTE PTR SS:[EBP-24]
0044AF75 \8B4D DC MOV ECX,DWORD PTR SS:[EBP-24]
0044AF78 80F9 73 CMP CL,73
0044AF7B 7D 26 JGE SHORT Ekd5.0044AFA3
0044AF7D 6A 06 PUSH 6
0044AF7F 33C9 XOR ECX,ECX
0044AF81 8A4D DC MOV CL,BYTE PTR SS:[EBP-24]
0044AF84 6BC9 24 IMUL ECX,ECX,24
0044AF87 81C1 502C4B00 ADD ECX,Ekd5.004B2C50
0044AF8D E8 FEB6FBFF CALL Ekd5.00406690
0044AF92 33C0 XOR EAX,EAX
0044AF94 8A45 DC MOV AL,BYTE PTR SS:[EBP-24]
0044AF97 05 10FF4C00 ADD EAX,Ekd5.004CF000 ;4CF000大家根据自己的EXE设置,但这个位置开始往后的115字节不要有其它代码使用.
0044AF9C C600 00 MOV BYTE PTR DS:[EAX],0
0044AF9F 90 NOP
0044AFA0 90 NOP
0044AFA1 ^ EB CF JMP SHORT Ekd5.0044AF72
修改处二
0044E5FB - E9 26FB0700 JMP 004CE126 跳到新代码处
新代码
004CE126 FF75 D8 PUSH DWORD PTR SS:[EBP-28]
004CE129 E8 0A000000 CALL 004CE138
004CE12E 8B4D C8 MOV ECX,DWORD PTR SS:[EBP-38]
004CE131 33D2 XOR EDX,EDX
004CE133 - E9 C804F8FF JMP 0044E600
004CE138 55 PUSH EBP
004CE139 8BEC MOV EBP,ESP
004CE13B 83EC 08 SUB ESP,8
004CE13E 33C9 XOR ECX,ECX
004CE140 8A4D 08 MOV CL,BYTE PTR SS:[EBP+8]
004CE143 6BC9 24 IMUL ECX,ECX,24
004CE146 81C1 502C4B00 ADD ECX,004B2C50
004CE14C 894D FC MOV DWORD PTR SS:[EBP-4],ECX
004CE14F 33C0 XOR EAX,EAX
004CE151 8A45 08 MOV AL,BYTE PTR SS:[EBP+8]
004CE154 05 00F04C00 ADD EAX,004CF000 ;即上面的4CF000
004CE159 8A10 MOV DL,BYTE PTR DS:[EAX]
004CE15B 84D2 TEST DL,DL
004CE15D 75 49 JNZ SHORT 004CE1A8
004CE15F 8945 F8 MOV DWORD PTR SS:[EBP-8],EAX
004CE162 E8 0915F9FF CALL 0045F670
004CE167 6BC0 48 IMUL EAX,EAX,48
004CE16A 05 681B4A00 ADD EAX,004A1B68 ;根据你的EXE,如果是新引擎是00D60000
004CE16F 8BC8 MOV ECX,EAX
004CE171 8A41 2B MOV AL,BYTE PTR DS:[ECX+2B]
004CE174 3C 2E CMP AL,40 ;兵种编号,修改为你想要的
004CE176 74 0B JE SHORT 004CE183
004CE178 6A 40 PUSH 40 ;宝物特效编号,修改为你想要的
004CE17A E8 8A98F3FF CALL 00407A09
004CE17F 85C0 TEST EAX,EAX
004CE181 74 25 JE SHORT 004CE1A8
004CE183 8B4D FC MOV ECX,DWORD PTR SS:[EBP-4]
004CE186 6A 06 PUSH 6
004CE188 E8 0385F3FF CALL 00406690
004CE18D 8B09 MOV ECX,DWORD PTR DS:[ECX]
004CE18F 51 PUSH ECX
004CE190 E8 4103F7FF CALL 0043E4D6
004CE195 68 88000000 PUSH 88
004CE19A 6A 06 PUSH 6
004CE19C 50 PUSH EAX
004CE19D E8 FD04F7FF CALL 0043E69F
004CE1A2 8B4D F8 MOV ECX,DWORD PTR SS:[EBP-8]
004CE1A5 C601 FF MOV BYTE PTR DS:[ECX],0FF
004CE1A8 8BE5 MOV ESP,EBP
004CE1AA 5D POP EBP
004CE1AB C3 RETN
但改出来后的二次移动是存在BUG(第一次行动后,未再移动,可参与围攻),star帮我修改过,具体怎么改,就不清楚啦。
|