At the moment Tracy.inject() accepts a tracy.SyscallArguments() object, however, since almost always only the first few registers are set, it'd make sense to allow tuples as well.
Resulting in the following code
# inject a write(fd, NULL, 0); call
def hook_write(child, event, args):
if child.pre:
child.inject(1, tracy.SyscallArguments(args.a0))
turning into this;
def hook_write(child, event, args):
if child.pre:
child.inject(1, (args.a0,))
At the moment Tracy.inject() accepts a tracy.SyscallArguments() object, however, since almost always only the first few registers are set, it'd make sense to allow tuples as well.
Resulting in the following code
turning into this;