0

在 ida 中,函数签名是:

int __fastcall cocos2d::Image::initWithImageFile(cocos2d::FileUtils *a1, int a2)

我已经做了一个调用函数:

{
    Java.perform(function () {
       var aes_addr = Module.findBaseAddress("libcocos2dlua.so").add(0x00ad02d0);
       var aes_128 = new NativeFunction(aes_addr , 'int', ['pointer','pointer']);
       var key = Memory.allocUtf8String('assets/res/spine/E51008/action4.png');
       console.log("The result is: ", (aes_128(Java.vm.getEnv().handle, key )));
    });
}
 
setImmediate(main)

但它不正确,因为第一个参数不是 JNIEnv。并且每次运行此功能时都会更改。我不知道现在该怎么办。

------break-----
argc[0] : 0xc36e5440
jvm: 0xc6bc5580
argv[1]:string
------break-----
argc[0] : 0xc36e5e00
jvm: 0xc6bc5580
argv[1]:string
4

0 回答 0