CreateWindowExA定位按钮创建处
关键代码:
81C9 00200044 or ecx,0x44002000///激活所有灰色按钮,则将or改成mov,一直赋值为真
or汇编:
{
1. 其中OPRD1,OPRD2含义与AND指令相同,对标志位的影响也与AND指令相同.
2. 两数相或,有一个数为真则值为真.
}
通过OR对ECX值进行计算。
禁止ecx=4C012F00假值
激活ecx=44012F00真值
此时EDI的值可看作按钮的标识
找一段空代码来PATCH
下列为PATCH:
00464F8A . 83FA 48 cmp edI,48///当标识为48时
00464F8F . 75 05 jnz Xcracked.00464F96//此跳转不跳
00464F91 . B9 002F014C mov ecx,0x4C012F00///赋值ecx为禁止
00464F96 > 81C9 00200044 or ecx,0x44002000///非48时则按程序正常流程走
00464F9C .^ E9 2EFFF9FF jmp cracked.00404ECF//回调原位置