【原创】内存指针基地址查询算法

首先针对所有有NP,GPK等保护引擎,CE貌似都会被干掉
所以这里写一篇关于自动查询内存基地址的伪代码算法,防止忘记。

DWORD  _begin = 0x40000000; //用于32位

DWORD _end = 0x7FFFFFFF;

DWORD _offset = 0;

DWORD _offsetDp = 0xff;

DWORD targetAddress = 0xBBBBB;

 

for( DWORD i = _begin; i <= _end;i++)

{

   for( _offset = 0;k < _offsetDp;_offset++)

   {

DWORD _address = readMemory(_begin + i);

DWORD _add2 = readMemory(_address + _offset);

if( targetAddress == _add2 || _address == targetAddress)

{

  prinf("base:%x offset:%x",(_begin + i),_offset);

}

   }

}

 

 

用于多级OFFSET的情况下只需要扩展递归的次数即可,需要详细编写算法,请勿使用多线程或锁可能会崩溃
错误请自行调优,尤其在其他语言的模式下 谢谢。

posted @ 2015-08-28 16:41  koangel  阅读(587)  评论(0编辑  收藏  举报