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,233 @@
package kotlin;
import kotlin.internal.InlineOnly;
import kotlin.jvm.JvmName;
@Metadata(d1 = {"\u0000&\n\u0000\n\u0002\u0010\b\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b)\u001a\u0014\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u0087\b¢\u0006\u0004\b\u0003\u0010\u0004\u001a\u0014\u0010\u0000\u001a\u00020\u0001*\u00020\u0005H\u0087\b¢\u0006\u0004\b\u0006\u0010\u0007\u001a\u0014\u0010\u0000\u001a\u00020\u0001*\u00020\bH\u0087\b¢\u0006\u0004\b\t\u0010\n\u001a\u0014\u0010\u0000\u001a\u00020\u0001*\u00020\u000bH\u0087\b¢\u0006\u0004\b\f\u0010\r\u001a\u0014\u0010\u000e\u001a\u00020\u0001*\u00020\u0002H\u0087\b¢\u0006\u0004\b\u000f\u0010\u0004\u001a\u0014\u0010\u000e\u001a\u00020\u0001*\u00020\u0005H\u0087\b¢\u0006\u0004\b\u0010\u0010\u0007\u001a\u0014\u0010\u000e\u001a\u00020\u0001*\u00020\bH\u0087\b¢\u0006\u0004\b\u0011\u0010\n\u001a\u0014\u0010\u000e\u001a\u00020\u0001*\u00020\u000bH\u0087\b¢\u0006\u0004\b\u0012\u0010\r\u001a\u0014\u0010\u0013\u001a\u00020\u0001*\u00020\u0002H\u0087\b¢\u0006\u0004\b\u0014\u0010\u0004\u001a\u0014\u0010\u0013\u001a\u00020\u0001*\u00020\u0005H\u0087\b¢\u0006\u0004\b\u0015\u0010\u0007\u001a\u0014\u0010\u0013\u001a\u00020\u0001*\u00020\bH\u0087\b¢\u0006\u0004\b\u0016\u0010\n\u001a\u0014\u0010\u0013\u001a\u00020\u0001*\u00020\u000bH\u0087\b¢\u0006\u0004\b\u0017\u0010\r\u001a\u001c\u0010\u0018\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b\u001a\u0010\u001b\u001a\u001c\u0010\u0018\u001a\u00020\u0005*\u00020\u00052\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b\u001c\u0010\u001d\u001a\u001c\u0010\u0018\u001a\u00020\b*\u00020\b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b\u001e\u0010\u001f\u001a\u001c\u0010\u0018\u001a\u00020\u000b*\u00020\u000b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b \u0010!\u001a\u001c\u0010\"\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b#\u0010\u001b\u001a\u001c\u0010\"\u001a\u00020\u0005*\u00020\u00052\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b$\u0010\u001d\u001a\u001c\u0010\"\u001a\u00020\b*\u00020\b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b%\u0010\u001f\u001a\u001c\u0010\"\u001a\u00020\u000b*\u00020\u000b2\u0006\u0010\u0019\u001a\u00020\u0001H\u0087\b¢\u0006\u0004\b&\u0010!\u001a\u0014\u0010'\u001a\u00020\u0002*\u00020\u0002H\u0087\b¢\u0006\u0004\b(\u0010)\u001a\u0014\u0010'\u001a\u00020\u0005*\u00020\u0005H\u0087\b¢\u0006\u0004\b*\u0010\u0007\u001a\u0014\u0010'\u001a\u00020\b*\u00020\bH\u0087\b¢\u0006\u0004\b+\u0010,\u001a\u0014\u0010'\u001a\u00020\u000b*\u00020\u000bH\u0087\b¢\u0006\u0004\b-\u0010.\u001a\u0014\u0010/\u001a\u00020\u0002*\u00020\u0002H\u0087\b¢\u0006\u0004\b0\u0010)\u001a\u0014\u0010/\u001a\u00020\u0005*\u00020\u0005H\u0087\b¢\u0006\u0004\b1\u0010\u0007\u001a\u0014\u0010/\u001a\u00020\b*\u00020\bH\u0087\b¢\u0006\u0004\b2\u0010,\u001a\u0014\u0010/\u001a\u00020\u000b*\u00020\u000bH\u0087\b¢\u0006\u0004\b3\u0010.¨\u00064"}, d2 = {"countLeadingZeroBits", "", "Lkotlin/UByte;", "countLeadingZeroBits-7apg3OU", "(B)I", "Lkotlin/UInt;", "countLeadingZeroBits-WZ4Q5Ns", "(I)I", "Lkotlin/ULong;", "countLeadingZeroBits-VKZWuLQ", "(J)I", "Lkotlin/UShort;", "countLeadingZeroBits-xj2QHRw", "(S)I", "countOneBits", "countOneBits-7apg3OU", "countOneBits-WZ4Q5Ns", "countOneBits-VKZWuLQ", "countOneBits-xj2QHRw", "countTrailingZeroBits", "countTrailingZeroBits-7apg3OU", "countTrailingZeroBits-WZ4Q5Ns", "countTrailingZeroBits-VKZWuLQ", "countTrailingZeroBits-xj2QHRw", "rotateLeft", "bitCount", "rotateLeft-LxnNnR4", "(BI)B", "rotateLeft-V7xB4Y4", "(II)I", "rotateLeft-JSWoG40", "(JI)J", "rotateLeft-olVBNx4", "(SI)S", "rotateRight", "rotateRight-LxnNnR4", "rotateRight-V7xB4Y4", "rotateRight-JSWoG40", "rotateRight-olVBNx4", "takeHighestOneBit", "takeHighestOneBit-7apg3OU", "(B)B", "takeHighestOneBit-WZ4Q5Ns", "takeHighestOneBit-VKZWuLQ", "(J)J", "takeHighestOneBit-xj2QHRw", "(S)S", "takeLowestOneBit", "takeLowestOneBit-7apg3OU", "takeLowestOneBit-WZ4Q5Ns", "takeLowestOneBit-VKZWuLQ", "takeLowestOneBit-xj2QHRw", "kotlin-stdlib"}, k = 2, mv = {1, 9, 0}, xi = 48)
@JvmName(name = "UNumbersKt")
/* loaded from: classes3.dex */
public final class UNumbersKt {
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countLeadingZeroBits-7apg3OU, reason: not valid java name */
private static final int m362countLeadingZeroBits7apg3OU(byte b4) {
return Integer.numberOfLeadingZeros(b4 & UByte.MAX_VALUE) - 24;
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countLeadingZeroBits-VKZWuLQ, reason: not valid java name */
private static final int m363countLeadingZeroBitsVKZWuLQ(long j4) {
return Long.numberOfLeadingZeros(j4);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countLeadingZeroBits-WZ4Q5Ns, reason: not valid java name */
private static final int m364countLeadingZeroBitsWZ4Q5Ns(int i) {
return Integer.numberOfLeadingZeros(i);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countLeadingZeroBits-xj2QHRw, reason: not valid java name */
private static final int m365countLeadingZeroBitsxj2QHRw(short s4) {
return Integer.numberOfLeadingZeros(s4 & UShort.MAX_VALUE) - 16;
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countOneBits-7apg3OU, reason: not valid java name */
private static final int m366countOneBits7apg3OU(byte b4) {
return Integer.bitCount(UInt.m211constructorimpl(b4 & UByte.MAX_VALUE));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countOneBits-VKZWuLQ, reason: not valid java name */
private static final int m367countOneBitsVKZWuLQ(long j4) {
return Long.bitCount(j4);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countOneBits-WZ4Q5Ns, reason: not valid java name */
private static final int m368countOneBitsWZ4Q5Ns(int i) {
return Integer.bitCount(i);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countOneBits-xj2QHRw, reason: not valid java name */
private static final int m369countOneBitsxj2QHRw(short s4) {
return Integer.bitCount(UInt.m211constructorimpl(s4 & UShort.MAX_VALUE));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countTrailingZeroBits-7apg3OU, reason: not valid java name */
private static final int m370countTrailingZeroBits7apg3OU(byte b4) {
return Integer.numberOfTrailingZeros(b4 | UByte.MIN_VALUE);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countTrailingZeroBits-VKZWuLQ, reason: not valid java name */
private static final int m371countTrailingZeroBitsVKZWuLQ(long j4) {
return Long.numberOfTrailingZeros(j4);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countTrailingZeroBits-WZ4Q5Ns, reason: not valid java name */
private static final int m372countTrailingZeroBitsWZ4Q5Ns(int i) {
return Integer.numberOfTrailingZeros(i);
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: countTrailingZeroBits-xj2QHRw, reason: not valid java name */
private static final int m373countTrailingZeroBitsxj2QHRw(short s4) {
return Integer.numberOfTrailingZeros(s4 | UShort.MIN_VALUE);
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateLeft-JSWoG40, reason: not valid java name */
private static final long m374rotateLeftJSWoG40(long j4, int i) {
return ULong.m290constructorimpl(Long.rotateLeft(j4, i));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateLeft-LxnNnR4, reason: not valid java name */
private static final byte m375rotateLeftLxnNnR4(byte b4, int i) {
return UByte.m134constructorimpl(NumbersKt__NumbersKt.rotateLeft(b4, i));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateLeft-V7xB4Y4, reason: not valid java name */
private static final int m376rotateLeftV7xB4Y4(int i, int i4) {
return UInt.m211constructorimpl(Integer.rotateLeft(i, i4));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateLeft-olVBNx4, reason: not valid java name */
private static final short m377rotateLeftolVBNx4(short s4, int i) {
return UShort.m397constructorimpl(NumbersKt__NumbersKt.rotateLeft(s4, i));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateRight-JSWoG40, reason: not valid java name */
private static final long m378rotateRightJSWoG40(long j4, int i) {
return ULong.m290constructorimpl(Long.rotateRight(j4, i));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateRight-LxnNnR4, reason: not valid java name */
private static final byte m379rotateRightLxnNnR4(byte b4, int i) {
return UByte.m134constructorimpl(NumbersKt__NumbersKt.rotateRight(b4, i));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateRight-V7xB4Y4, reason: not valid java name */
private static final int m380rotateRightV7xB4Y4(int i, int i4) {
return UInt.m211constructorimpl(Integer.rotateRight(i, i4));
}
@SinceKotlin(version = "1.6")
@WasExperimental(markerClass = {ExperimentalStdlibApi.class, ExperimentalUnsignedTypes.class})
@InlineOnly
/* renamed from: rotateRight-olVBNx4, reason: not valid java name */
private static final short m381rotateRightolVBNx4(short s4, int i) {
return UShort.m397constructorimpl(NumbersKt__NumbersKt.rotateRight(s4, i));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeHighestOneBit-7apg3OU, reason: not valid java name */
private static final byte m382takeHighestOneBit7apg3OU(byte b4) {
return UByte.m134constructorimpl((byte) Integer.highestOneBit(b4 & UByte.MAX_VALUE));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeHighestOneBit-VKZWuLQ, reason: not valid java name */
private static final long m383takeHighestOneBitVKZWuLQ(long j4) {
return ULong.m290constructorimpl(Long.highestOneBit(j4));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeHighestOneBit-WZ4Q5Ns, reason: not valid java name */
private static final int m384takeHighestOneBitWZ4Q5Ns(int i) {
return UInt.m211constructorimpl(Integer.highestOneBit(i));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeHighestOneBit-xj2QHRw, reason: not valid java name */
private static final short m385takeHighestOneBitxj2QHRw(short s4) {
return UShort.m397constructorimpl((short) Integer.highestOneBit(s4 & UShort.MAX_VALUE));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeLowestOneBit-7apg3OU, reason: not valid java name */
private static final byte m386takeLowestOneBit7apg3OU(byte b4) {
return UByte.m134constructorimpl((byte) Integer.lowestOneBit(b4 & UByte.MAX_VALUE));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeLowestOneBit-VKZWuLQ, reason: not valid java name */
private static final long m387takeLowestOneBitVKZWuLQ(long j4) {
return ULong.m290constructorimpl(Long.lowestOneBit(j4));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeLowestOneBit-WZ4Q5Ns, reason: not valid java name */
private static final int m388takeLowestOneBitWZ4Q5Ns(int i) {
return UInt.m211constructorimpl(Integer.lowestOneBit(i));
}
@SinceKotlin(version = "1.5")
@WasExperimental(markerClass = {ExperimentalUnsignedTypes.class, ExperimentalStdlibApi.class})
@InlineOnly
/* renamed from: takeLowestOneBit-xj2QHRw, reason: not valid java name */
private static final short m389takeLowestOneBitxj2QHRw(short s4) {
return UShort.m397constructorimpl((short) Integer.lowestOneBit(s4 & UShort.MAX_VALUE));
}
}