重写了相关代码,下来测试一下,如有问题,提供剧本与存档。
说明:吃果后重算,同时剧本中指令增加的能力可以保留(理论上是这样,没有测试过),如果吃果前武统智敏运已经达到100,对应的攻防等可以在重算后的基础上继续额外加点(如果不需要这部分,可以将蓝色代码NOP掉)。
0041D080 /$ 55 PUSH EBP
0041D081 |. 8BEC MOV EBP,ESP
0041D083 |. 83EC 34 SUB ESP,34
0041D086 |. 894D E8 MOV DWORD PTR SS:[EBP-18],ECX
0041D089 |. 33C0 XOR EAX,EAX
0041D08B |. 8945 F4 MOV DWORD PTR SS:[EBP-C],EAX
0041D08E |. 8945 EC MOV DWORD PTR SS:[EBP-14],EAX
0041D091 |. 8B49 14 MOV ECX,DWORD PTR DS:[ECX+14]
0041D094 |. E8 D70C0000 CALL Ekd54.0041DD70
0041D099 |. 25 FF000000 AND EAX,0FF
0041D09E |. 99 CDQ
0041D09F |. 2BC2 SUB EAX,EDX
0041D0A1 |. D1F8 SAR EAX,1
0041D0A3 |. 8845 F0 MOV BYTE PTR SS:[EBP-10],AL
0041D0A6 |. C645 FC FF MOV BYTE PTR SS:[EBP-4],0FF
0041D0AA |. 8B4D E8 MOV ECX,DWORD PTR SS:[EBP-18]
0041D0AD |. FF31 PUSH DWORD PTR DS:[ECX] ; /Arg4
0041D0AF |. 6A 04 PUSH 4 ; |Arg3 = 00000004
0041D0B1 |. FF71 18 PUSH DWORD PTR DS:[ECX+18] ; |Arg2
0041D0B4 |. FF71 02 PUSH DWORD PTR DS:[ECX+2] ; |Arg1
0041D0B7 |. B9 50424B00 MOV ECX,Ekd54.004B4250 ; |
0041D0BC |. E8 7C820300 CALL Ekd54.0045533D ; \Ekd54.0045533D
0041D0C1 |. 3C FF CMP AL,0FF
0041D0C3 |. 74 39 JE SHORT Ekd54.0041D0FE
0041D0C5 |. 8B55 E8 MOV EDX,DWORD PTR SS:[EBP-18]
0041D0C8 |. 8842 03 MOV BYTE PTR DS:[EDX+3],AL
0041D0CB |. 33C9 XOR ECX,ECX
0041D0CD |. 8AC8 MOV CL,AL
0041D0CF |. 6BC9 24 IMUL ECX,ECX,24
0041D0D2 |. 81C1 502C4B00 ADD ECX,Ekd54.004B2C50
0041D0D8 |. 894A 08 MOV DWORD PTR DS:[EDX+8],ECX
0041D0DB |. 8B01 MOV EAX,DWORD PTR DS:[ECX]
0041D0DD |. 6BC0 48 IMUL EAX,EAX,48
0041D0E0 |. 05 681B4A00 ADD EAX,Ekd54.004A1B68
0041D0E5 |. 8942 10 MOV DWORD PTR DS:[EDX+10],EAX
0041D0E8 |. 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
0041D0EB |. 6A 00 PUSH 0 ; /Arg3 = 00000000
0041D0ED |. FF70 03 PUSH DWORD PTR DS:[EAX+3] ; |Arg2
0041D0F0 |. FF30 PUSH DWORD PTR DS:[EAX] ; |Arg1
0041D0F2 |. E8 F2F3FFFF CALL Ekd54.0041C4E9 ; \Ekd54.0041C4E9
0041D0F7 |. 83C4 0C ADD ESP,0C
0041D0FA |. 85C0 TEST EAX,EAX
0041D0FC |. 75 05 JNZ SHORT Ekd54.0041D103
0041D0FE |> E9 61010000 JMP Ekd54.0041D264
0041D103 |> 8B4D E8 MOV ECX,DWORD PTR SS:[EBP-18]
0041D106 |. 33C0 XOR EAX,EAX
0041D108 |. 8A41 01 MOV AL,BYTE PTR DS:[ECX+1]
0041D10B |. 83E8 46 SUB EAX,46 ; Switch (cases 46..4A)
0041D10E |. 83F8 04 CMP EAX,4
0041D111 |. 77 40 JA SHORT Ekd54.0041D153
0041D113 |. 83F8 01 CMP EAX,1
0041D116 |. 75 03 JNZ SHORT Ekd54.0041D11B
0041D118 |. 40 INC EAX ; Case 47 ('G') of switch 0041D10B
0041D119 |. EB 06 JMP SHORT Ekd54.0041D121
0041D11B |> 83F8 02 CMP EAX,2
0041D11E |. 75 01 JNZ SHORT Ekd54.0041D121
0041D120 |. 48 DEC EAX ; Case 48 ('H') of switch 0041D10B
0041D121 |> 8945 E4 MOV DWORD PTR SS:[EBP-1C],EAX ; Cases 46 ('F'),49 ('I'),4A ('J') of switch 0041D10B
0041D124 |. 8A88 68D24100 MOV CL,BYTE PTR DS:[EAX+41D268]
0041D12A |. 884D FC MOV BYTE PTR SS:[EBP-4],CL
0041D12D |. 8B55 E8 MOV EDX,DWORD PTR SS:[EBP-18]
0041D130 |. 8B4A 10 MOV ECX,DWORD PTR DS:[EDX+10]
0041D133 |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
0041D136 |. 66:8B4451 11 MOV AX,WORD PTR DS:[ECX+EDX*2+11]
0041D13B |. 66:8945 EC MOV WORD PTR SS:[EBP-14],AX
0041D13F |. 8A4411 21 MOV AL,BYTE PTR DS:[ECX+EDX+21]
0041D143 |. 8845 F4 MOV BYTE PTR SS:[EBP-C],AL
0041D146 |. 8B4D E8 MOV ECX,DWORD PTR SS:[EBP-18]
0041D149 |. 8B49 08 MOV ECX,DWORD PTR DS:[ECX+8]
0041D14C |. 8A4411 18 MOV AL,BYTE PTR DS:[ECX+EDX+18]
0041D150 |. 8845 F8 MOV BYTE PTR SS:[EBP-8],AL
0041D153 |> 8B55 E8 MOV EDX,DWORD PTR SS:[EBP-18] ; Default case of switch 0041D10B
0041D156 |. 8B42 10 MOV EAX,DWORD PTR DS:[EDX+10]
0041D159 |. 8945 D8 MOV DWORD PTR SS:[EBP-28],EAX
0041D15C |. 33C9 XOR ECX,ECX
0041D15E |. 8A48 2B MOV CL,BYTE PTR DS:[EAX+2B]
0041D161 |. 6BC9 1B IMUL ECX,ECX,1B
0041D164 |. 81C1 A0BF4A00 ADD ECX,Ekd54.004ABFA0
0041D16A |. FF75 E4 PUSH DWORD PTR SS:[EBP-1C] ; /Arg1
0041D16D |. E8 2EC4FEFF CALL Ekd54.004095A0 ; \Ekd54.004095A0
0041D172 |. 25 FF000000 AND EAX,0FF
0041D177 |. 8945 DC MOV DWORD PTR SS:[EBP-24],EAX
0041D17A |. FF75 E4 PUSH DWORD PTR SS:[EBP-1C] ; /Arg1
0041D17D |. 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28] ; |
0041D180 |. E8 77A1FEFF CALL Ekd54.004072FC ; \Ekd54.004072FC
0041D185 |. 25 FF000000 AND EAX,0FF
0041D18A |. 0345 DC ADD EAX,DWORD PTR SS:[EBP-24]
0041D18D |. D1E8 SHR EAX,1
0041D18F |. 8945 D4 MOV DWORD PTR SS:[EBP-2C],EAX
0041D192 |. 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
0041D195 |. E8 3694FEFF CALL Ekd54.004065D0
0041D19A |. 25 FF000000 AND EAX,0FF
0041D19F |. 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
0041D1A2 |. 0FAFC2 IMUL EAX,EDX
0041D1A5 |. 8945 D4 MOV DWORD PTR SS:[EBP-2C],EAX
0041D1A8 |. 33C0 XOR EAX,EAX
0041D1AA |. 8A45 F4 MOV AL,BYTE PTR SS:[EBP-C]
0041D1AD |. 0345 D4 ADD EAX,DWORD PTR SS:[EBP-2C]
0041D1B0 |. 50 PUSH EAX ; /Arg2
0041D1B1 |. FF75 EC PUSH DWORD PTR SS:[EBP-14] ; |Arg1
0041D1B4 |. E8 E5280600 CALL Ekd54.0047FA9E ; \Ekd54.0047FA9E
0041D1B9 |. 83C4 08 ADD ESP,8
0041D1BC |. 8945 D0 MOV DWORD PTR SS:[EBP-30],EAX
0041D1BF |. 33C0 XOR EAX,EAX
0041D1C1 |. 8A45 F4 MOV AL,BYTE PTR SS:[EBP-C]
0041D1C4 |. 83F8 32 CMP EAX,32
0041D1C7 |. 72 0C JB SHORT Ekd54.0041D1D5
0041D1C9 |. 33D2 XOR EDX,EDX
0041D1CB |. 8A55 F0 MOV DL,BYTE PTR SS:[EBP-10]
0041D1CE |. 0155 D0 ADD DWORD PTR SS:[EBP-30],EDX
0041D1D1 |. B0 32 MOV AL,32
0041D1D3 |. EB 10 JMP SHORT Ekd54.0041D1E5
0041D1D5 |> 6A 32 PUSH 32 ; /Arg3 = 00000032
0041D1D7 |. FF75 F0 PUSH DWORD PTR SS:[EBP-10] ; |Arg2
0041D1DA |. FF75 F4 PUSH DWORD PTR SS:[EBP-C] ; |Arg1
0041D1DD |. E8 D3280600 CALL Ekd54.0047FAB5 ; \Ekd54.0047FAB5
0041D1E2 |. 83C4 0C ADD ESP,0C
0041D1E5 |> 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
0041D1E8 |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
0041D1EB |. 884411 21 MOV BYTE PTR DS:[ECX+EDX+21],AL
0041D1EF |. 52 PUSH EDX ; /Arg1
0041D1F0 |. E8 07A1FEFF CALL Ekd54.004072FC ; \Ekd54.004072FC
0041D1F5 |. 25 FF000000 AND EAX,0FF
0041D1FA |. 0345 DC ADD EAX,DWORD PTR SS:[EBP-24]
0041D1FD |. D1E8 SHR EAX,1
0041D1FF |. 8945 CC MOV DWORD PTR SS:[EBP-34],EAX
0041D202 |. 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
0041D205 |. E8 C693FEFF CALL Ekd54.004065D0
0041D20A |. 25 FF000000 AND EAX,0FF
0041D20F |. 8B55 CC MOV EDX,DWORD PTR SS:[EBP-34]
0041D212 |. 0FAFC2 IMUL EAX,EDX
0041D215 |. 8945 CC MOV DWORD PTR SS:[EBP-34],EAX
0041D218 |. 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
0041D21B |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
0041D21E |. 33C0 XOR EAX,EAX
0041D220 |. 8A4411 21 MOV AL,BYTE PTR DS:[ECX+EDX+21]
0041D224 |. 0345 CC ADD EAX,DWORD PTR SS:[EBP-34]
0041D227 |. 68 0F270000 PUSH 270F ; /Arg3 = 0000270F
0041D22C |. FF75 D0 PUSH DWORD PTR SS:[EBP-30] ; |Arg2
0041D22F |. 50 PUSH EAX ; |Arg1
0041D230 |. E8 54280600 CALL Ekd54.0047FA89 ; \Ekd54.0047FA89
0041D235 |. 83C4 0C ADD ESP,0C
0041D238 |. 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
0041D23B |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
0041D23E |. 66:894451 11 MOV WORD PTR DS:[ECX+EDX*2+11],AX
0041D243 |. FF75 FC PUSH DWORD PTR SS:[EBP-4] ; /Arg1
0041D246 |. 8B4D E8 MOV ECX,DWORD PTR SS:[EBP-18] ; |
0041D249 |. E8 14F5FFFF CALL Ekd54.0041C762 ; \Ekd54.0041C762
0041D24E |. 8B45 E4 MOV EAX,DWORD PTR SS:[EBP-1C]
0041D251 |. 83F8 04 CMP EAX,4
0041D254 |. 77 0E JA SHORT Ekd54.0041D264
0041D256 |. 6A 01 PUSH 1 ; /Arg2 = 00000001
0041D258 |. 50 PUSH EAX ; |Arg1
0041D259 |. 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18] ; |
0041D25C |. 8B48 08 MOV ECX,DWORD PTR DS:[EAX+8] ; |
0041D25F |. E8 2A270200 CALL Ekd54.0043F98E ; \Ekd54.0043F98E
0041D264 |> 8BE5 MOV ESP,EBP
0041D266 |. 5D POP EBP
0041D267 \. C3 RETN
0041D268 22 DB 22 ; CHAR '"'
0041D269 23 DB 23 ; CHAR '#'
0041D26A 22 DB 22 ; CHAR '"'
0041D26B 24 DB 24 ; CHAR '$'
0041D26C 25 DB 25
[ 本帖最后由 godtype 于 2012-11-30 11:32 编辑 ]
附件:
Ekd54.rar (2012-11-30 11:32, 208.19 K)
该附件被下载次数 213
|