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,45 @@
package u0;
import kotlin.jvm.internal.Intrinsics;
import kotlin.text.StringsKt__StringsKt;
/* renamed from: u0.a, reason: case insensitive filesystem */
/* loaded from: classes.dex */
public abstract class AbstractC0631a {
public static boolean a(String current, String str) {
CharSequence trim;
Intrinsics.checkNotNullParameter(current, "current");
if (Intrinsics.areEqual(current, str)) {
return true;
}
if (current.length() != 0) {
int i = 0;
int i4 = 0;
int i5 = 0;
while (true) {
if (i < current.length()) {
char charAt = current.charAt(i);
int i6 = i5 + 1;
if (i5 == 0 && charAt != '(') {
break;
}
if (charAt != '(') {
if (charAt == ')' && i4 - 1 == 0 && i5 != current.length() - 1) {
break;
}
} else {
i4++;
}
i++;
i5 = i6;
} else if (i4 == 0) {
String substring = current.substring(1, current.length() - 1);
Intrinsics.checkNotNullExpressionValue(substring, "this as java.lang.String…ing(startIndex, endIndex)");
trim = StringsKt__StringsKt.trim((CharSequence) substring);
return Intrinsics.areEqual(trim.toString(), str);
}
}
}
return false;
}
}

View File

@@ -0,0 +1,149 @@
package u0;
import C.w;
import java.util.Locale;
import kotlin.jvm.internal.Intrinsics;
import kotlin.text.StringsKt__StringsKt;
/* renamed from: u0.b, reason: case insensitive filesystem */
/* loaded from: classes.dex */
public final class C0632b {
/* renamed from: a, reason: collision with root package name */
public final String f8594a;
/* renamed from: b, reason: collision with root package name */
public final String f8595b;
/* renamed from: c, reason: collision with root package name */
public final boolean f8596c;
/* renamed from: d, reason: collision with root package name */
public final int f8597d;
/* renamed from: e, reason: collision with root package name */
public final String f8598e;
/* renamed from: f, reason: collision with root package name */
public final int f8599f;
/* renamed from: g, reason: collision with root package name */
public final int f8600g;
public C0632b(String name, String type, boolean z3, int i, String str, int i4) {
boolean contains$default;
boolean contains$default2;
boolean contains$default3;
boolean contains$default4;
boolean contains$default5;
boolean contains$default6;
boolean contains$default7;
boolean contains$default8;
Intrinsics.checkNotNullParameter(name, "name");
Intrinsics.checkNotNullParameter(type, "type");
this.f8594a = name;
this.f8595b = type;
this.f8596c = z3;
this.f8597d = i;
this.f8598e = str;
this.f8599f = i4;
int i5 = 5;
if (type != null) {
Locale US = Locale.US;
Intrinsics.checkNotNullExpressionValue(US, "US");
String upperCase = type.toUpperCase(US);
Intrinsics.checkNotNullExpressionValue(upperCase, "this as java.lang.String).toUpperCase(locale)");
contains$default = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "INT", false, 2, (Object) null);
if (contains$default) {
i5 = 3;
} else {
contains$default2 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "CHAR", false, 2, (Object) null);
if (!contains$default2) {
contains$default3 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "CLOB", false, 2, (Object) null);
if (!contains$default3) {
contains$default4 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "TEXT", false, 2, (Object) null);
if (!contains$default4) {
contains$default5 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "BLOB", false, 2, (Object) null);
if (!contains$default5) {
contains$default6 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "REAL", false, 2, (Object) null);
if (!contains$default6) {
contains$default7 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "FLOA", false, 2, (Object) null);
if (!contains$default7) {
contains$default8 = StringsKt__StringsKt.contains$default(upperCase, (CharSequence) "DOUB", false, 2, (Object) null);
if (!contains$default8) {
i5 = 1;
}
}
}
i5 = 4;
}
}
}
}
i5 = 2;
}
}
this.f8600g = i5;
}
public final boolean equals(Object obj) {
if (this != obj) {
if (!(obj instanceof C0632b)) {
return false;
}
C0632b c0632b = (C0632b) obj;
if (this.f8597d != c0632b.f8597d) {
return false;
}
if (!Intrinsics.areEqual(this.f8594a, c0632b.f8594a) || this.f8596c != c0632b.f8596c) {
return false;
}
int i = c0632b.f8599f;
String str = c0632b.f8598e;
String str2 = this.f8598e;
int i4 = this.f8599f;
if (i4 == 1 && i == 2 && str2 != null && !AbstractC0631a.a(str2, str)) {
return false;
}
if (i4 == 2 && i == 1 && str != null && !AbstractC0631a.a(str, str2)) {
return false;
}
if (i4 != 0 && i4 == i) {
if (str2 != null) {
if (!AbstractC0631a.a(str2, str)) {
return false;
}
} else if (str != null) {
return false;
}
}
if (this.f8600g != c0632b.f8600g) {
return false;
}
}
return true;
}
public final int hashCode() {
return (((((this.f8594a.hashCode() * 31) + this.f8600g) * 31) + (this.f8596c ? 1231 : 1237)) * 31) + this.f8597d;
}
public final String toString() {
StringBuilder sb = new StringBuilder("Column{name='");
sb.append(this.f8594a);
sb.append("', type='");
sb.append(this.f8595b);
sb.append("', affinity='");
sb.append(this.f8600g);
sb.append("', notNull=");
sb.append(this.f8596c);
sb.append(", primaryKeyPosition=");
sb.append(this.f8597d);
sb.append(", defaultValue='");
String str = this.f8598e;
if (str == null) {
str = "undefined";
}
return w.r(sb, str, "'}");
}
}

View File

@@ -0,0 +1,67 @@
package u0;
import java.util.List;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes.dex */
public final class c {
/* renamed from: a, reason: collision with root package name */
public final String f8601a;
/* renamed from: b, reason: collision with root package name */
public final String f8602b;
/* renamed from: c, reason: collision with root package name */
public final String f8603c;
/* renamed from: d, reason: collision with root package name */
public final List f8604d;
/* renamed from: e, reason: collision with root package name */
public final List f8605e;
public c(String referenceTable, String onDelete, String onUpdate, List columnNames, List referenceColumnNames) {
Intrinsics.checkNotNullParameter(referenceTable, "referenceTable");
Intrinsics.checkNotNullParameter(onDelete, "onDelete");
Intrinsics.checkNotNullParameter(onUpdate, "onUpdate");
Intrinsics.checkNotNullParameter(columnNames, "columnNames");
Intrinsics.checkNotNullParameter(referenceColumnNames, "referenceColumnNames");
this.f8601a = referenceTable;
this.f8602b = onDelete;
this.f8603c = onUpdate;
this.f8604d = columnNames;
this.f8605e = referenceColumnNames;
}
public final boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof c)) {
return false;
}
c cVar = (c) obj;
if (Intrinsics.areEqual(this.f8601a, cVar.f8601a) && Intrinsics.areEqual(this.f8602b, cVar.f8602b) && Intrinsics.areEqual(this.f8603c, cVar.f8603c) && Intrinsics.areEqual(this.f8604d, cVar.f8604d)) {
return Intrinsics.areEqual(this.f8605e, cVar.f8605e);
}
return false;
}
public final int hashCode() {
return this.f8605e.hashCode() + ((this.f8604d.hashCode() + com.google.android.gms.measurement.internal.a.d(this.f8603c, com.google.android.gms.measurement.internal.a.d(this.f8602b, this.f8601a.hashCode() * 31, 31), 31)) * 31);
}
public final String toString() {
StringBuilder sb = new StringBuilder("ForeignKey{referenceTable='");
sb.append(this.f8601a);
sb.append("', onDelete='");
sb.append(this.f8602b);
sb.append(" +', onUpdate='");
sb.append(this.f8603c);
sb.append("', columnNames=");
sb.append(this.f8604d);
sb.append(", referenceColumnNames=");
return com.google.android.gms.measurement.internal.a.o(sb, this.f8605e, '}');
}
}

View File

@@ -0,0 +1,36 @@
package u0;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes.dex */
public final class d implements Comparable {
/* renamed from: a, reason: collision with root package name */
public final int f8606a;
/* renamed from: b, reason: collision with root package name */
public final int f8607b;
/* renamed from: c, reason: collision with root package name */
public final String f8608c;
/* renamed from: d, reason: collision with root package name */
public final String f8609d;
public d(String from, int i, int i4, String to) {
Intrinsics.checkNotNullParameter(from, "from");
Intrinsics.checkNotNullParameter(to, "to");
this.f8606a = i;
this.f8607b = i4;
this.f8608c = from;
this.f8609d = to;
}
@Override // java.lang.Comparable
public final int compareTo(Object obj) {
d other = (d) obj;
Intrinsics.checkNotNullParameter(other, "other");
int i = this.f8606a - other.f8606a;
return i == 0 ? this.f8607b - other.f8607b : i;
}
}

View File

@@ -0,0 +1,79 @@
package u0;
import java.util.ArrayList;
import java.util.List;
import kotlin.jvm.internal.Intrinsics;
import kotlin.text.StringsKt__StringsJVMKt;
/* loaded from: classes.dex */
public final class e {
/* renamed from: a, reason: collision with root package name */
public final String f8610a;
/* renamed from: b, reason: collision with root package name */
public final boolean f8611b;
/* renamed from: c, reason: collision with root package name */
public final List f8612c;
/* renamed from: d, reason: collision with root package name */
public final List f8613d;
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARN: Type inference failed for: r5v1, types: [java.util.Collection] */
/* JADX WARN: Type inference failed for: r5v2 */
/* JADX WARN: Type inference failed for: r5v4, types: [java.util.ArrayList] */
public e(String name, boolean z3, List columns, List orders) {
Intrinsics.checkNotNullParameter(name, "name");
Intrinsics.checkNotNullParameter(columns, "columns");
Intrinsics.checkNotNullParameter(orders, "orders");
this.f8610a = name;
this.f8611b = z3;
this.f8612c = columns;
this.f8613d = orders;
List list = orders;
if (list.isEmpty()) {
int size = columns.size();
list = new ArrayList(size);
for (int i = 0; i < size; i++) {
list.add("ASC");
}
}
this.f8613d = (List) list;
}
public final boolean equals(Object obj) {
boolean startsWith$default;
boolean startsWith$default2;
if (this == obj) {
return true;
}
if (!(obj instanceof e)) {
return false;
}
e eVar = (e) obj;
if (this.f8611b != eVar.f8611b || !Intrinsics.areEqual(this.f8612c, eVar.f8612c) || !Intrinsics.areEqual(this.f8613d, eVar.f8613d)) {
return false;
}
String str = this.f8610a;
startsWith$default = StringsKt__StringsJVMKt.startsWith$default(str, "index_", false, 2, null);
String str2 = eVar.f8610a;
if (!startsWith$default) {
return Intrinsics.areEqual(str, str2);
}
startsWith$default2 = StringsKt__StringsJVMKt.startsWith$default(str2, "index_", false, 2, null);
return startsWith$default2;
}
public final int hashCode() {
boolean startsWith$default;
String str = this.f8610a;
startsWith$default = StringsKt__StringsJVMKt.startsWith$default(str, "index_", false, 2, null);
return this.f8613d.hashCode() + ((this.f8612c.hashCode() + ((((startsWith$default ? -1184239155 : str.hashCode()) * 31) + (this.f8611b ? 1 : 0)) * 31)) * 31);
}
public final String toString() {
return "Index{name='" + this.f8610a + "', unique=" + this.f8611b + ", columns=" + this.f8612c + ", orders=" + this.f8613d + "'}";
}
}

View File

@@ -0,0 +1,80 @@
package u0;
import java.util.Map;
import java.util.Set;
import kotlin.jvm.internal.Intrinsics;
/* loaded from: classes.dex */
public final class f {
/* renamed from: a, reason: collision with root package name */
public final String f8614a;
/* renamed from: b, reason: collision with root package name */
public final Map f8615b;
/* renamed from: c, reason: collision with root package name */
public final Set f8616c;
/* renamed from: d, reason: collision with root package name */
public final Set f8617d;
public f(String name, Map columns, Set foreignKeys, Set set) {
Intrinsics.checkNotNullParameter(name, "name");
Intrinsics.checkNotNullParameter(columns, "columns");
Intrinsics.checkNotNullParameter(foreignKeys, "foreignKeys");
this.f8614a = name;
this.f8615b = columns;
this.f8616c = foreignKeys;
this.f8617d = set;
}
/* JADX WARN: Code restructure failed: missing block: B:69:0x01f4, code lost:
r0 = kotlin.collections.SetsKt.build(r9);
*/
/* JADX WARN: Code restructure failed: missing block: B:70:0x01f8, code lost:
kotlin.io.CloseableKt.closeFinally(r3, null);
r9 = r0;
*/
/* JADX WARN: Finally extract failed */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public static final u0.f a(x0.c r26, java.lang.String r27) {
/*
Method dump skipped, instructions count: 538
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: u0.f.a(x0.c, java.lang.String):u0.f");
}
public final boolean equals(Object obj) {
Set set;
if (this == obj) {
return true;
}
if (!(obj instanceof f)) {
return false;
}
f fVar = (f) obj;
if (!Intrinsics.areEqual(this.f8614a, fVar.f8614a) || !Intrinsics.areEqual(this.f8615b, fVar.f8615b) || !Intrinsics.areEqual(this.f8616c, fVar.f8616c)) {
return false;
}
Set set2 = this.f8617d;
if (set2 == null || (set = fVar.f8617d) == null) {
return true;
}
return Intrinsics.areEqual(set2, set);
}
public final int hashCode() {
return this.f8616c.hashCode() + ((this.f8615b.hashCode() + (this.f8614a.hashCode() * 31)) * 31);
}
public final String toString() {
return "TableInfo{name='" + this.f8614a + "', columns=" + this.f8615b + ", foreignKeys=" + this.f8616c + ", indices=" + this.f8617d + '}';
}
}