winRAR中文版老是弹出一些广告,很头疼,比如:
使用OD进行处理,发现了CreateWindowEx这个敏感函数,查找引用,发现有个地址传递了一看就知道是广告的className:RARReminder:
这里不能直接把调用CreateWindowEx的代码NOP抹掉,因为后面可能要ShowWindow或者SetWindowPos来设置窗口位置的,如果这时候的代码NOP了,
存这个广告的HANDLE是随机的,后面会出异常,软件崩溃:
但是这里dwStyle的入栈代码只有一个字节,所以只能用寄存器来处理,看到前面入lpParam的时候使用了ECX寄存器,猜想这么一个简单的窗口应该是
不会使用额外信息字段的,ECX有可能是0,所以改成push ecx试试,结果成功了。
PS:最近想把博文写简单点了,感觉长篇大论没有意义,提到的东西需要的可以去Google或者其他地方查。