当前位置: 代码迷 >> 汇编语言 >> 将一段asm函数插入到任意的exe文件中解决办法
  详细解决方案

将一段asm函数插入到任意的exe文件中解决办法

热度:922   发布时间:2013-02-26 00:00:00.0
将一段asm函数插入到任意的exe文件中
怎么能将一段c++编译出来的exe文件中的一段asm函数加入到任意的exe中?
我想在一个没有源代码的exe中加入时间校验和用户认证的代码。

现在已有一个名为   tool.exe,以及一段很长的调用了很多系统函数的汇编代码。怎样加到exe文件中呢?

从未做过,我现在的想法是增大.data的存储空间。将那段汇编代码加入到.data的某一个空白处。然后在tool.exe的程序的入口处跳到我写的汇编位置。等我的代码执行完以后在跳回到tool.exe的头部继续执行。这样的方法可行吗?还有.data的空间分配有工具可以完成吗?

会遇到的一个问题是我的那段汇编代码中用到了许多动态库,可能原exe中是没有的。我是不是需要将所有的动态都用LoadLibrary链接进来。这样我的那段asm就什么都不用改直接可以放到.data中了?

望各位路过的大侠指点。

------解决方案--------------------------------------------------------
看不太明白,不过要达到你的要求只需要找一个合适的加密壳就OK了,如ACProtect
------解决方案--------------------------------------------------------
在导入表中加入你自己的验证函数,EXE内找一空白区段填入代码,然后重构PE文件
具体操作参考Win32PE格式说明以及看雪上的相关帖子。

其实给程序加一个壳是最简单的,ASProtect,ACProtect,Themida什么的都行
------解决方案--------------------------------------------------------
看看我写的课件吧。

http://www.teamsourcing.com.cn/lesson/inject.htm
回答了你的问题。
  相关解决方案