/*
* Auto-generated by Frida. Please modify to match the signature of CCCrypt.
* This stub is currently auto-generated from manpages when available.
*
*
For
full API reference, see: https://frida.re/docs/javascript-api/
*/
{
/**
* Called synchronously when about to call CCCrypt.
*
*
@this
{object} - Object allowing you to store state
for
use
in
onLeave.
*
@param
{
function
} log - Call this
function
with a string to be presented to the user.
*
@param
{array} args -
Function
arguments represented as an array of NativePointer objects.
*
For
example use args[0].readUtf8String()
if
the first argument is a pointer to a C string encoded as UTF-8.
* It is also possible to modify arguments by assigning a NativePointer object to an element of this array.
*
@param
{object} state - Object allowing you to keep state across
function
calls.
* Only one JavaScript
function
will execute at a time, so
do
not worry about race-conditions.
* However,
do
not use this to store
function
arguments across onEnter/onLeave, but instead
* use
"this"
which is an object
for
keeping state local to an invocation.
*/
onEnter(log, args, state) {
log(`CCCrypt(op=${args[0]}, alg=${args[1]}, options=${args[2]}, keyLength=${args[4]}, iv=${args[5]} dataIn=${args[6]}, dataInLength=${args[7]}, dataOut=${args[8]}, dataOutAvailable=${args[9]}, dataOutMoved=${args[10]})`);
log(
'key'
,hexdump(args[3]));
// log(
'iv'
,hexdump(args[5]));
log(
'input'
,hexdump(args[6]));
log(
'input len'
,args[7]);
this.args8=args[8];
this.arg10=args[10];
},
/**
* Called synchronously when about to
return
from CCCrypt.
*
* See onEnter
for
details.
*
*
@this
{object} - Object allowing you to access state stored
in
onEnter.
*
@param
{
function
} log - Call this
function
with a string to be presented to the user.
*
@param
{NativePointer} retval -
Return
value represented as a NativePointer object.
*
@param
{object} state - Object allowing you to keep state across
function
calls.
*/
onLeave(log, retval, state) {
log(
'output'
,hexdump(this.args8));
log(
'output len'
,hexdump(this.arg10));
}
}