2016wapjpc 发表于 2017-9-13 00:50

[笔记] 移动导出表

本帖最后由 2016wapjpc 于 2017-9-13 00:57 编辑

说来真是好笑,要不是自己去用winhex看,和源pe导出表的对照,不知道何时才能修正错误呀。
就是不小心,一个很小的不起眼的错误,害了自己大半年。
在改回自己的导出表的函数地址表时,修正函数原来地址为新地址时,
把多加的13个函数的地址没有减去,使函数的地址一直不对,自己没有调试出来,真是的。
就修改了一外代码:
      //2017 9 12修正23:35,destadd3算函数时加了13*4 =52 = 0x34个函数地址,要减回去
            // pExportDy->AddressOfNames = FileOffsetToRva(pFileBuffer,destadd3 - (char*)pFileBuffer );

             pExportDy->AddressOfNames = FileOffsetToRva(pFileBuffer,destadd3-0x34 -(char*)pFileBuffer );
         printf("addresof name address %x \n",pExportDy->AddressOfNames);

还有指针这地方,自己笨的没法说了。这么长时间了,用的还是颠三倒四的。还是上图吧。

longhai001 发表于 2017-9-13 19:08

表示没看懂

peterq521 发表于 2017-9-13 09:49

惭愧 没太看懂啊
页: [1]
查看完整版本: [笔记] 移动导出表