# Frida

Verifica si el runtime de Objective-C se encuentra cargado en el proceso actual de la aplicación.

```shell
ObjC.available
```

Obtener clases de la aplicación.

```shell
ObjC.classes
```

Obtener métodos de una clase.

```shell
# Obtener todos los métodos de una clase
ObjC.classes.<class-name>.$ownMethods
ObjC.classes["<class-name>"].$ownMethods

# Obtener los 5 primeros métodos de una clase
ObjC.classes.<class-name>.$ownMethods.slice(0, 5)
ObjC.classes["<class-name>"].$ownMethods.slice(0, 5)
```

Lectura de argumentos.

```javascript
var args0 = ObjC.Object(args[0]); // seft
var args1 = ObjC.Object(args[1]); // selector
var args2 = ObjC.Object(args[2]); // argumento 1
var args3 = ObjC.Object(args[3]); // argumento 2

console.log("- args0: " + args0.toString());
console.log("- args1: " + args1.toString());
console.log("- args2: " + args2.toString());
console.log("- args3: " + args3.toString());
```

Lectura de dirección de memoria.

```shell
Memory.readByteArray(ptr("<address>"), <length>);
Memory.readByteArray(ptr("0x00000000"), 64);

Memory.readCString(ptr("<address>"), <length>);
Memory.readCString(ptr("0x00000000"), 64);

Memory.readCString(ptr("<address>"), <length>).substring(<start>,<end>);
```
