在coreplayer安装的sys/bin下面有三个文件,CorePlayer_20012FA6.exe,ZCore.exe,20012FA7.dll
我用这个工具查看了E32ImageFile 'CorePlayer_20012FA6.exe',怀疑这个工具并没有完全列出所有从dll导出的函数!
E32ImageFile 'CorePlayer_20012FA6.exe'
Idata Size=00000144
Offset of import address table (relative to code section): 00000bc8
4 imports from ZCore{000a0000}[ff000e9c].dll
3
1
2
4
ZCore.dll 20012FA7.dll导出任何东西!但是很明显20012FA7.dll才是实现!100KB zcore只有2KB!
这个工具可靠吗?
或者是coreplayer通过某种方式,在exe里导入了它自己写的一个dll,但是elf2e32这个工具查不到它用这种特殊方式导入的dll!
回想到我曾经在宝典里看到rlibrary这个类,以及在example里面的dll这个例子。
重新编译那个例子,然后在分析,发现果然,通过多态dll和rlibrary的方式call dll,exe并不需要明显的在mmp中声明依赖的dll!所以elf2e32发现不了!
在coreplayer中,我怀疑ZCore.dll就是定义了interface,然后在exe通过rlibrary的方式load了20012FA7.dll,exe只用到了zcore里面4个interface!牛啊!
并且它们的程序很小,应该是用arm编译器编译出来的
阅读(850) | 评论(0) | 转发(0) |