我正在调试 Frida 的 macOS 应用程序。 这是伪代码
rax = [Herlper cfunc];
rax = *rax;
rax = (rax)(0x0, 0x0, 0x0);
rax = [rax retain];
r13 = rax;
r12 = [[r13 dataUsingEncoding:0x4] retain];
如何在脚本中获取 r12 结果?
希望您能帮忙,谢谢!
我尝试使用这个脚本
var f = new NativeFunction(ptr(ObjC.classes.Herlper.cfunc()).sign(),'pointer',['uint8','uint8','uint8'])
f(0x0,0x0,0x0)
但是错误:
Error: access violation accessing 0x600001931050
at <eval> (<input>:1)
我已经解决了这个问题。 脚本:
var stackAddress = ObjC.classes.Herlper.cfunc()
var memoryAddress = Memory.readPointer(stackAddress)
var func = new NativeFunction(memoryAddress,'pointer',['int','int'])
var result = func(0x0,0x0)
Memory.readByteArray(result,100)