昨天的更新,腾讯将装备变态代码变形了
原
00B23FB2 40 INC EAX ; 3333
00B23FB3 0000 ADD BYTE PTR DS:[EAX],AL
00B23FB5 0000 ADD BYTE PTR DS:[EAX],AL
00B23FB7 3F AAS ; 装备变态代码
00B23FB8 24 81 AND AL,81
00B23FBA AA STOS BYTE PTR ES:[EDI]
00B23FBB 0000 ADD BYTE PTR DS:[EAX],AL
00B23FBD 0000 ADD BYTE PTR DS:[EAX],AL
00B23FBF 002E ADD BYTE PTR DS:[ESI],CH
00B23FC1 3F AAS ; 2222
00B23FC2 41 INC ECX
00B23FC3 56 PUSH ESI
00B23FC4 49 DEC ECX
00B23FC5 41 INC ECX
00B23FC6 6273 74 BOUND ESI,QWORD PTR DS:[EBX+74] ; 1111
明天更新后装备变态代码位置
00B23FDA 40 INC EAX ; 333
00B23FDB 00A47E AA000000 ADD BYTE PTR DS:[ESI+EDI*2+AA],AH
00B23FE2 0000 ADD BYTE PTR DS:[EAX],AL
00B23FE4 2E:3F AAS ; 2222
00B23FE6 41 INC ECX
00B23FE7 56 PUSH ESI
00B23FE8 49 DEC ECX
00B23FE9 41 INC ECX
00B23FEA 6273 74 BOUND ESI,QWORD PTR DS:[EBX+74] ; 1111
请看清楚,对应1111 2222 3333 分别是特征,也就是没修改的,看我的注释就知道,代码的确被变异过了,话题出来了,有能耐的可以逆向这段指令
我现在提供一个简单的思路,将旧版本的代码利用到明天的新版本上
看我怎么在新版本里修改的:
00B23FDA 40 INC EAX ; 333
00B23FB3 /E9 641D2200 JMP DNF.00D45D1C
00B23FB8 |90 NOP
00B23FB9 |90 NOP
00B23FBA |90 NOP
00B23FBB |90 NOP
00B23FBC |90 NOP
00B23FBD |90 NOP
00B23FBE |90 NOP
00B23FBF |90 NOP
00B23FC0 |90 NOP
00B23FE4 2E:3F AAS ; 2222
00B23FE6 41 INC ECX
00B23FE7 56 PUSH ESI
00B23FE8 49 DEC ECX
00B23FE9 41 INC ECX
00B23FEA 6273 74 BOUND ESI,QWORD PTR DS:[EBX+74] ; 1111
.
.
.
.
00D45D1E 0000 ADD BYTE PTR DS:[EAX],AL
00D45D20 3F AAS
00D45D21 24 81 AND AL,81
00D45D23 AA STOS BYTE PTR ES:[EDI]
00D45D24 0000 ADD BYTE PTR DS:[EAX],AL
00D45D26 0000 ADD BYTE PTR DS:[EAX],AL
00D45D28 002E ADD BYTE PTR DS:[ESI],CH
00D45D2A ^\E9 B5E2DDFF JMP DNF.00B23FE4
制作CT表,黄颜色的 F12 /F12 开/关
惊叹一件事,腾讯这次更新DND.EXE是不错,但是更新的文件字节数与原文件一致,但的确被修改过了,真是精打细算,是碰巧?是有意?