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,150 @@
package androidx.recyclerview.widget;
import O.C0079u;
import java.util.ArrayList;
/* renamed from: androidx.recyclerview.widget.m0, reason: case insensitive filesystem */
/* loaded from: classes.dex */
public abstract class AbstractC0230m0 {
/* renamed from: a, reason: collision with root package name */
public C0216f0 f3845a;
/* renamed from: b, reason: collision with root package name */
public ArrayList f3846b;
/* renamed from: c, reason: collision with root package name */
public long f3847c;
/* renamed from: d, reason: collision with root package name */
public long f3848d;
/* renamed from: e, reason: collision with root package name */
public long f3849e;
/* renamed from: f, reason: collision with root package name */
public long f3850f;
public static void b(I0 i02) {
int i = i02.mFlags;
if (!i02.isInvalid() && (i & 4) == 0) {
i02.getOldPosition();
i02.getAbsoluteAdapterPosition();
}
}
public abstract boolean a(I0 i02, I0 i03, C0079u c0079u, C0079u c0079u2);
/* JADX WARN: Removed duplicated region for block: B:16:0x0066 */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public final void c(androidx.recyclerview.widget.I0 r9) {
/*
r8 = this;
androidx.recyclerview.widget.f0 r8 = r8.f3845a
if (r8 == 0) goto Laf
r0 = 1
r9.setIsRecyclable(r0)
androidx.recyclerview.widget.I0 r1 = r9.mShadowedHolder
r2 = 0
if (r1 == 0) goto L13
androidx.recyclerview.widget.I0 r1 = r9.mShadowingHolder
if (r1 != 0) goto L13
r9.mShadowedHolder = r2
L13:
r9.mShadowingHolder = r2
boolean r1 = r9.shouldBeKeptAsChild()
if (r1 != 0) goto Laf
android.view.View r1 = r9.itemView
androidx.recyclerview.widget.RecyclerView r8 = r8.f3809a
r8.n0()
androidx.recyclerview.widget.j r2 = r8.f3682f
androidx.recyclerview.widget.i r3 = r2.f3827b
androidx.recyclerview.widget.f0 r4 = r2.f3826a
int r5 = r2.f3829d
r6 = 0
if (r5 != r0) goto L3b
android.view.View r0 = r2.f3830e
if (r0 != r1) goto L33
L31:
r0 = r6
goto L64
L33:
java.lang.IllegalStateException r8 = new java.lang.IllegalStateException
java.lang.String r9 = "Cannot call removeViewIfHidden within removeView(At) for a different view"
r8.<init>(r9)
throw r8
L3b:
r7 = 2
if (r5 == r7) goto La7
r2.f3829d = r7 // Catch: java.lang.Throwable -> L4f
androidx.recyclerview.widget.RecyclerView r5 = r4.f3809a // Catch: java.lang.Throwable -> L4f
int r5 = r5.indexOfChild(r1) // Catch: java.lang.Throwable -> L4f
r7 = -1
if (r5 != r7) goto L51
r2.j(r1) // Catch: java.lang.Throwable -> L4f
L4c:
r2.f3829d = r6
goto L64
L4f:
r8 = move-exception
goto La4
L51:
boolean r7 = r3.d(r5) // Catch: java.lang.Throwable -> L4f
if (r7 == 0) goto L61
r3.g(r5) // Catch: java.lang.Throwable -> L4f
r2.j(r1) // Catch: java.lang.Throwable -> L4f
r4.h(r5) // Catch: java.lang.Throwable -> L4f
goto L4c
L61:
r2.f3829d = r6
goto L31
L64:
if (r0 == 0) goto L91
androidx.recyclerview.widget.I0 r2 = androidx.recyclerview.widget.RecyclerView.N(r1)
androidx.recyclerview.widget.y0 r3 = r8.f3676c
r3.l(r2)
r3.i(r2)
boolean r2 = androidx.recyclerview.widget.RecyclerView.f3642B0
if (r2 == 0) goto L91
java.lang.StringBuilder r2 = new java.lang.StringBuilder
java.lang.String r3 = "after removing animated view: "
r2.<init>(r3)
r2.append(r1)
java.lang.String r1 = ", "
r2.append(r1)
r2.append(r8)
java.lang.String r1 = r2.toString()
java.lang.String r2 = "RecyclerView"
android.util.Log.d(r2, r1)
L91:
r1 = r0 ^ 1
r8.o0(r1)
if (r0 != 0) goto Laf
boolean r0 = r9.isTmpDetached()
if (r0 == 0) goto Laf
android.view.View r9 = r9.itemView
r8.removeDetachedView(r9, r6)
return
La4:
r2.f3829d = r6
throw r8
La7:
java.lang.IllegalStateException r8 = new java.lang.IllegalStateException
java.lang.String r9 = "Cannot call removeViewIfHidden within removeViewIfHidden"
r8.<init>(r9)
throw r8
Laf:
return
*/
throw new UnsupportedOperationException("Method not decompiled: androidx.recyclerview.widget.AbstractC0230m0.c(androidx.recyclerview.widget.I0):void");
}
public abstract void d(I0 i02);
public abstract void e();
public abstract boolean f();
}