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:
73
apk_decompiled/sources/q2/AbstractC0562d.java
Normal file
73
apk_decompiled/sources/q2/AbstractC0562d.java
Normal file
@@ -0,0 +1,73 @@
|
||||
package q2;
|
||||
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.util.Log;
|
||||
import java.io.File;
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
import kotlin.text.StringsKt__StringsJVMKt;
|
||||
|
||||
/* renamed from: q2.d, reason: case insensitive filesystem */
|
||||
/* loaded from: classes3.dex */
|
||||
public abstract class AbstractC0562d {
|
||||
|
||||
/* renamed from: a, reason: collision with root package name */
|
||||
public final int f8189a;
|
||||
|
||||
public static void a(String str) {
|
||||
boolean equals;
|
||||
equals = StringsKt__StringsJVMKt.equals(str, ":memory:", true);
|
||||
if (equals) {
|
||||
return;
|
||||
}
|
||||
int length = str.length() - 1;
|
||||
int i = 0;
|
||||
boolean z3 = false;
|
||||
while (i <= length) {
|
||||
boolean z4 = Intrinsics.compare((int) str.charAt(!z3 ? i : length), 32) <= 0;
|
||||
if (z3) {
|
||||
if (!z4) {
|
||||
break;
|
||||
} else {
|
||||
length--;
|
||||
}
|
||||
} else if (z4) {
|
||||
i++;
|
||||
} else {
|
||||
z3 = true;
|
||||
}
|
||||
}
|
||||
if (str.subSequence(i, length + 1).toString().length() == 0) {
|
||||
return;
|
||||
}
|
||||
Log.w("SupportSQLite", "deleting the database file: ".concat(str));
|
||||
try {
|
||||
File file = new File(str);
|
||||
Intrinsics.checkNotNullParameter(file, "file");
|
||||
SQLiteDatabase.deleteDatabase(file);
|
||||
} catch (Exception e4) {
|
||||
Log.w("SupportSQLite", "delete failed: ", e4);
|
||||
}
|
||||
}
|
||||
|
||||
public abstract int b();
|
||||
|
||||
public abstract int c();
|
||||
|
||||
public abstract int d();
|
||||
|
||||
public abstract int e();
|
||||
|
||||
public abstract int f();
|
||||
|
||||
public void g(x0.c db) {
|
||||
Intrinsics.checkNotNullParameter(db, "db");
|
||||
}
|
||||
|
||||
public abstract void h(x0.c cVar);
|
||||
|
||||
public abstract void i(x0.c cVar, int i, int i4);
|
||||
|
||||
public abstract void j(x0.c cVar);
|
||||
|
||||
public abstract void k(x0.c cVar, int i, int i4);
|
||||
}
|
||||
6
apk_decompiled/sources/q2/AbstractC0563e.java
Normal file
6
apk_decompiled/sources/q2/AbstractC0563e.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package q2;
|
||||
|
||||
/* renamed from: q2.e, reason: case insensitive filesystem */
|
||||
/* loaded from: classes3.dex */
|
||||
public abstract class AbstractC0563e {
|
||||
}
|
||||
57
apk_decompiled/sources/q2/C0560b.java
Normal file
57
apk_decompiled/sources/q2/C0560b.java
Normal file
@@ -0,0 +1,57 @@
|
||||
package q2;
|
||||
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Paint;
|
||||
import androidx.recyclerview.widget.AbstractC0232n0;
|
||||
import androidx.recyclerview.widget.E0;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import com.adif.elcanomovil.R;
|
||||
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
|
||||
import com.google.android.material.carousel.CarouselLayoutManager;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
/* renamed from: q2.b, reason: case insensitive filesystem */
|
||||
/* loaded from: classes3.dex */
|
||||
public final class C0560b extends AbstractC0232n0 {
|
||||
|
||||
/* renamed from: a, reason: collision with root package name */
|
||||
public final Paint f8185a;
|
||||
|
||||
/* renamed from: b, reason: collision with root package name */
|
||||
public final List f8186b;
|
||||
|
||||
public C0560b() {
|
||||
Paint paint = new Paint();
|
||||
this.f8185a = paint;
|
||||
this.f8186b = Collections.unmodifiableList(new ArrayList());
|
||||
paint.setStrokeWidth(5.0f);
|
||||
paint.setColor(-65281);
|
||||
}
|
||||
|
||||
@Override // androidx.recyclerview.widget.AbstractC0232n0
|
||||
public final void onDrawOver(Canvas canvas, RecyclerView recyclerView, E0 e02) {
|
||||
Canvas canvas2;
|
||||
super.onDrawOver(canvas, recyclerView, e02);
|
||||
Paint paint = this.f8185a;
|
||||
paint.setStrokeWidth(recyclerView.getResources().getDimension(R.dimen.m3_carousel_debug_keyline_width));
|
||||
Iterator it = this.f8186b.iterator();
|
||||
while (it.hasNext()) {
|
||||
((AbstractC0563e) it.next()).getClass();
|
||||
ThreadLocal threadLocal = G.a.f556a;
|
||||
float f2 = 1.0f - BitmapDescriptorFactory.HUE_RED;
|
||||
paint.setColor(Color.argb((int) ((Color.alpha(-16776961) * BitmapDescriptorFactory.HUE_RED) + (Color.alpha(-65281) * f2)), (int) ((Color.red(-16776961) * BitmapDescriptorFactory.HUE_RED) + (Color.red(-65281) * f2)), (int) ((Color.green(-16776961) * BitmapDescriptorFactory.HUE_RED) + (Color.green(-65281) * f2)), (int) ((Color.blue(-16776961) * BitmapDescriptorFactory.HUE_RED) + (Color.blue(-65281) * f2))));
|
||||
if (((CarouselLayoutManager) recyclerView.getLayoutManager()).I0()) {
|
||||
canvas2 = canvas;
|
||||
canvas2.drawLine(BitmapDescriptorFactory.HUE_RED, ((CarouselLayoutManager) recyclerView.getLayoutManager()).f5611q.f(), BitmapDescriptorFactory.HUE_RED, ((CarouselLayoutManager) recyclerView.getLayoutManager()).f5611q.b(), paint);
|
||||
} else {
|
||||
canvas2 = canvas;
|
||||
canvas2.drawLine(((CarouselLayoutManager) recyclerView.getLayoutManager()).f5611q.c(), BitmapDescriptorFactory.HUE_RED, ((CarouselLayoutManager) recyclerView.getLayoutManager()).f5611q.d(), BitmapDescriptorFactory.HUE_RED, paint);
|
||||
}
|
||||
canvas = canvas2;
|
||||
}
|
||||
}
|
||||
}
|
||||
85
apk_decompiled/sources/q2/C0561c.java
Normal file
85
apk_decompiled/sources/q2/C0561c.java
Normal file
@@ -0,0 +1,85 @@
|
||||
package q2;
|
||||
|
||||
import com.google.android.material.carousel.CarouselLayoutManager;
|
||||
|
||||
/* renamed from: q2.c, reason: case insensitive filesystem */
|
||||
/* loaded from: classes3.dex */
|
||||
public final class C0561c extends AbstractC0562d {
|
||||
|
||||
/* renamed from: b, reason: collision with root package name */
|
||||
public final /* synthetic */ int f8187b;
|
||||
|
||||
/* renamed from: c, reason: collision with root package name */
|
||||
public final /* synthetic */ CarouselLayoutManager f8188c;
|
||||
|
||||
/* JADX WARN: 'super' call moved to the top of the method (can break code semantics) */
|
||||
public C0561c(CarouselLayoutManager carouselLayoutManager, int i) {
|
||||
super(1);
|
||||
this.f8187b = i;
|
||||
switch (i) {
|
||||
case 1:
|
||||
this.f8188c = carouselLayoutManager;
|
||||
super(0);
|
||||
return;
|
||||
default:
|
||||
this.f8188c = carouselLayoutManager;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@Override // q2.AbstractC0562d
|
||||
public final int b() {
|
||||
switch (this.f8187b) {
|
||||
case 0:
|
||||
return this.f8188c.f3895o;
|
||||
default:
|
||||
CarouselLayoutManager carouselLayoutManager = this.f8188c;
|
||||
return carouselLayoutManager.f3895o - carouselLayoutManager.H();
|
||||
}
|
||||
}
|
||||
|
||||
@Override // q2.AbstractC0562d
|
||||
public final int c() {
|
||||
switch (this.f8187b) {
|
||||
case 0:
|
||||
return this.f8188c.I();
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@Override // q2.AbstractC0562d
|
||||
public final int d() {
|
||||
switch (this.f8187b) {
|
||||
case 0:
|
||||
CarouselLayoutManager carouselLayoutManager = this.f8188c;
|
||||
return carouselLayoutManager.f3894n - carouselLayoutManager.J();
|
||||
default:
|
||||
return this.f8188c.f3894n;
|
||||
}
|
||||
}
|
||||
|
||||
@Override // q2.AbstractC0562d
|
||||
public final int e() {
|
||||
switch (this.f8187b) {
|
||||
case 0:
|
||||
return 0;
|
||||
default:
|
||||
CarouselLayoutManager carouselLayoutManager = this.f8188c;
|
||||
if (carouselLayoutManager.J0()) {
|
||||
return carouselLayoutManager.f3894n;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@Override // q2.AbstractC0562d
|
||||
public final int f() {
|
||||
switch (this.f8187b) {
|
||||
case 0:
|
||||
return 0;
|
||||
default:
|
||||
return this.f8188c.K();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user