这是好的。如果遇到常量区的中文就惨了。但是有时候,根据中文定位函数。就要找中文了。
今天,一小伙伴问我怎么改,我又把之前的找得方法复习了一遍。顺便写下来了。
遇到中文,如:鼎力。这两个字,首先我要找到这个两字ascII码。那我就发个好用的转换网址:
http://tool.oschina.net/encode?type=3
结果是这样的:
\u9f0e\u529b 这个就是中文:鼎力。准确的说是: 9f0e 529b
一个中文占两字节那么应该是这样的:鼎( 9f0e)力( 529b)
有因为高位在高地址,低位在低地址的,原则。他在内存中的顺序应该是这样的: 0e 9f 9b 52
好了,知道这些后我就是开始找吧。
中文字符这样 的一定是在常量区。定义常量 dd xx 这样。
所以我们要在hopper里面搜 db 0x0e
有时候第一次不是对的。要这个顺序才对 0e 9f 9b 52(鼎( 9f0e)力( 529b))
最后放上搜到的结果:
直接修改汇编有诸多限制,文字字数等限制。不如hook.