Primer paso de la investigacion. Se aportan el .apk, las carpetas con el apk extraido y el apk descompilado. El archivo API_DOCUMENTATION.md es un archivo donde se anotaran los descubrimientos del funcionamiento de la API, y los .py son scripts para probar la funcionalidad de la API con los métodos que vayamos encontrando. Finalmente, los archivos .js son scripts de Frida para extraer informacion de la APP durante la ejecucion.

This commit is contained in:
2025-12-04 13:59:54 +01:00
parent f2fd1c3bf5
commit e0133d2ca2
10432 changed files with 1019085 additions and 1 deletions

View File

@@ -0,0 +1,105 @@
package kotlin;
import kotlin.internal.InlineOnly;
@Metadata(d1 = {"\u0000\u0012\n\u0000\n\u0002\u0010\b\n\u0002\u0010\u0005\n\u0002\u0010\n\n\u0002\b\b\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\r\u0010\u0000\u001a\u00020\u0001*\u00020\u0003H\u0087\b\u001a\r\u0010\u0004\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\r\u0010\u0004\u001a\u00020\u0001*\u00020\u0003H\u0087\b\u001a\r\u0010\u0005\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\r\u0010\u0005\u001a\u00020\u0001*\u00020\u0003H\u0087\b\u001a\u0014\u0010\u0006\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0007\u001a\u0014\u0010\u0006\u001a\u00020\u0003*\u00020\u00032\u0006\u0010\u0007\u001a\u00020\u0001H\u0007\u001a\u0014\u0010\b\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0007\u001a\u00020\u0001H\u0007\u001a\u0014\u0010\b\u001a\u00020\u0003*\u00020\u00032\u0006\u0010\u0007\u001a\u00020\u0001H\u0007\u001a\r\u0010\t\u001a\u00020\u0002*\u00020\u0002H\u0087\b\u001a\r\u0010\t\u001a\u00020\u0003*\u00020\u0003H\u0087\b\u001a\r\u0010\n\u001a\u00020\u0002*\u00020\u0002H\u0087\b\u001a\r\u0010\n\u001a\u00020\u0003*\u00020\u0003H\u0087\\u0006\u000b"}, d2 = {"countLeadingZeroBits", "", "", "", "countOneBits", "countTrailingZeroBits", "rotateLeft", "bitCount", "rotateRight", "takeHighestOneBit", "takeLowestOneBit", "kotlin-stdlib"}, k = 5, mv = {1, 9, 0}, xi = 49, xs = "kotlin/NumbersKt")
/* loaded from: classes3.dex */
class NumbersKt__NumbersKt extends NumbersKt__NumbersJVMKt {
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countLeadingZeroBits(byte b4) {
return Integer.numberOfLeadingZeros(b4 & UByte.MAX_VALUE) - 24;
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countOneBits(byte b4) {
return Integer.bitCount(b4 & UByte.MAX_VALUE);
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countTrailingZeroBits(byte b4) {
return Integer.numberOfTrailingZeros(b4 | UByte.MIN_VALUE);
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
public static final byte rotateLeft(byte b4, int i) {
int i4 = i & 7;
return (byte) (((b4 & KotlinVersion.MAX_COMPONENT_VALUE) >>> (8 - i4)) | (b4 << i4));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
public static final byte rotateRight(byte b4, int i) {
int i4 = i & 7;
return (byte) (((b4 & KotlinVersion.MAX_COMPONENT_VALUE) >>> i4) | (b4 << (8 - i4)));
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final byte takeHighestOneBit(byte b4) {
return (byte) Integer.highestOneBit(b4 & UByte.MAX_VALUE);
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final byte takeLowestOneBit(byte b4) {
return (byte) Integer.lowestOneBit(b4);
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countLeadingZeroBits(short s4) {
return Integer.numberOfLeadingZeros(s4 & UShort.MAX_VALUE) - 16;
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countOneBits(short s4) {
return Integer.bitCount(s4 & UShort.MAX_VALUE);
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final int countTrailingZeroBits(short s4) {
return Integer.numberOfTrailingZeros(s4 | UShort.MIN_VALUE);
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
public static final short rotateLeft(short s4, int i) {
int i4 = i & 15;
return (short) (((s4 & 65535) >>> (16 - i4)) | (s4 << i4));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
public static final short rotateRight(short s4, int i) {
int i4 = i & 15;
return (short) (((s4 & 65535) >>> i4) | (s4 << (16 - i4)));
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final short takeHighestOneBit(short s4) {
return (short) Integer.highestOneBit(s4 & UShort.MAX_VALUE);
}
@SinceKotlin(version = "1.4")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class})
@InlineOnly
private static final short takeLowestOneBit(short s4) {
return (short) Integer.lowestOneBit(s4);
}
}