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,247 @@
package androidx.appcompat.widget;
import O.X;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import com.adif.elcanomovil.R;
import java.util.WeakHashMap;
import m.C0483q0;
/* loaded from: classes.dex */
public class AlertDialogLayout extends LinearLayoutCompat {
public AlertDialogLayout(Context context, AttributeSet attributeSet) {
super(context, attributeSet);
}
public static int j(View view) {
WeakHashMap weakHashMap = X.f1226a;
int minimumHeight = view.getMinimumHeight();
if (minimumHeight > 0) {
return minimumHeight;
}
if (view instanceof ViewGroup) {
ViewGroup viewGroup = (ViewGroup) view;
if (viewGroup.getChildCount() == 1) {
return j(viewGroup.getChildAt(0));
}
}
return 0;
}
/* JADX WARN: Removed duplicated region for block: B:25:0x009e */
@Override // androidx.appcompat.widget.LinearLayoutCompat, android.view.ViewGroup, android.view.View
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public final void onLayout(boolean r10, int r11, int r12, int r13, int r14) {
/*
r9 = this;
int r10 = r9.getPaddingLeft()
int r13 = r13 - r11
int r11 = r9.getPaddingRight()
int r11 = r13 - r11
int r13 = r13 - r10
int r0 = r9.getPaddingRight()
int r13 = r13 - r0
int r0 = r9.getMeasuredHeight()
int r1 = r9.getChildCount()
int r2 = r9.getGravity()
r3 = r2 & 112(0x70, float:1.57E-43)
r4 = 8388615(0x800007, float:1.1754953E-38)
r2 = r2 & r4
r4 = 16
if (r3 == r4) goto L39
r4 = 80
if (r3 == r4) goto L30
int r12 = r9.getPaddingTop()
goto L43
L30:
int r3 = r9.getPaddingTop()
int r3 = r3 + r14
int r3 = r3 - r12
int r12 = r3 - r0
goto L43
L39:
int r3 = r9.getPaddingTop()
int r14 = r14 - r12
int r14 = r14 - r0
int r14 = r14 / 2
int r12 = r14 + r3
L43:
android.graphics.drawable.Drawable r14 = r9.getDividerDrawable()
r0 = 0
if (r14 != 0) goto L4c
r14 = r0
goto L50
L4c:
int r14 = r14.getIntrinsicHeight()
L50:
if (r0 >= r1) goto Lb0
android.view.View r3 = r9.getChildAt(r0)
if (r3 == 0) goto Lad
int r4 = r3.getVisibility()
r5 = 8
if (r4 == r5) goto Lad
int r4 = r3.getMeasuredWidth()
int r5 = r3.getMeasuredHeight()
android.view.ViewGroup$LayoutParams r6 = r3.getLayoutParams()
m.q0 r6 = (m.C0483q0) r6
int r7 = r6.gravity
if (r7 >= 0) goto L73
r7 = r2
L73:
int r8 = r9.getLayoutDirection()
int r7 = android.view.Gravity.getAbsoluteGravity(r7, r8)
r7 = r7 & 7
r8 = 1
if (r7 == r8) goto L8d
r8 = 5
if (r7 == r8) goto L87
int r7 = r6.leftMargin
int r7 = r7 + r10
goto L98
L87:
int r7 = r11 - r4
int r8 = r6.rightMargin
L8b:
int r7 = r7 - r8
goto L98
L8d:
int r7 = r13 - r4
int r7 = r7 / 2
int r7 = r7 + r10
int r8 = r6.leftMargin
int r7 = r7 + r8
int r8 = r6.rightMargin
goto L8b
L98:
boolean r8 = r9.i(r0)
if (r8 == 0) goto L9f
int r12 = r12 + r14
L9f:
int r8 = r6.topMargin
int r12 = r12 + r8
int r4 = r4 + r7
int r8 = r12 + r5
r3.layout(r7, r12, r4, r8)
int r3 = r6.bottomMargin
int r5 = r5 + r3
int r5 = r5 + r12
r12 = r5
Lad:
int r0 = r0 + 1
goto L50
Lb0:
return
*/
throw new UnsupportedOperationException("Method not decompiled: androidx.appcompat.widget.AlertDialogLayout.onLayout(boolean, int, int, int, int):void");
}
@Override // androidx.appcompat.widget.LinearLayoutCompat, android.view.View
public final void onMeasure(int i, int i4) {
int i5;
int i6;
int i7;
int i8;
AlertDialogLayout alertDialogLayout = this;
int childCount = alertDialogLayout.getChildCount();
View view = null;
View view2 = null;
View view3 = null;
for (int i9 = 0; i9 < childCount; i9++) {
View childAt = alertDialogLayout.getChildAt(i9);
if (childAt.getVisibility() != 8) {
int id = childAt.getId();
if (id == R.id.topPanel) {
view = childAt;
} else if (id == R.id.buttonPanel) {
view2 = childAt;
} else {
if ((id != R.id.contentPanel && id != R.id.customPanel) || view3 != null) {
super.onMeasure(i, i4);
return;
}
view3 = childAt;
}
}
}
int mode = View.MeasureSpec.getMode(i4);
int size = View.MeasureSpec.getSize(i4);
int mode2 = View.MeasureSpec.getMode(i);
int paddingBottom = alertDialogLayout.getPaddingBottom() + alertDialogLayout.getPaddingTop();
if (view != null) {
view.measure(i, 0);
paddingBottom += view.getMeasuredHeight();
i5 = View.combineMeasuredStates(0, view.getMeasuredState());
} else {
i5 = 0;
}
if (view2 != null) {
view2.measure(i, 0);
i6 = j(view2);
i7 = view2.getMeasuredHeight() - i6;
paddingBottom += i6;
i5 = View.combineMeasuredStates(i5, view2.getMeasuredState());
} else {
i6 = 0;
i7 = 0;
}
if (view3 != null) {
view3.measure(i, mode == 0 ? 0 : View.MeasureSpec.makeMeasureSpec(Math.max(0, size - paddingBottom), mode));
i8 = view3.getMeasuredHeight();
paddingBottom += i8;
i5 = View.combineMeasuredStates(i5, view3.getMeasuredState());
} else {
i8 = 0;
}
int i10 = size - paddingBottom;
if (view2 != null) {
int i11 = paddingBottom - i6;
int min = Math.min(i10, i7);
if (min > 0) {
i10 -= min;
i6 += min;
}
view2.measure(i, View.MeasureSpec.makeMeasureSpec(i6, 1073741824));
paddingBottom = i11 + view2.getMeasuredHeight();
i5 = View.combineMeasuredStates(i5, view2.getMeasuredState());
}
if (view3 != null && i10 > 0) {
view3.measure(i, View.MeasureSpec.makeMeasureSpec(i8 + i10, mode));
paddingBottom = (paddingBottom - i8) + view3.getMeasuredHeight();
i5 = View.combineMeasuredStates(i5, view3.getMeasuredState());
}
int i12 = 0;
for (int i13 = 0; i13 < childCount; i13++) {
View childAt2 = alertDialogLayout.getChildAt(i13);
if (childAt2.getVisibility() != 8) {
i12 = Math.max(i12, childAt2.getMeasuredWidth());
}
}
int i14 = i4;
alertDialogLayout.setMeasuredDimension(View.resolveSizeAndState(alertDialogLayout.getPaddingRight() + alertDialogLayout.getPaddingLeft() + i12, i, i5), View.resolveSizeAndState(paddingBottom, i14, 0));
if (mode2 != 1073741824) {
int makeMeasureSpec = View.MeasureSpec.makeMeasureSpec(alertDialogLayout.getMeasuredWidth(), 1073741824);
int i15 = 0;
while (i15 < childCount) {
View childAt3 = alertDialogLayout.getChildAt(i15);
if (childAt3.getVisibility() != 8) {
C0483q0 c0483q0 = (C0483q0) childAt3.getLayoutParams();
if (((LinearLayout.LayoutParams) c0483q0).width == -1) {
int i16 = ((LinearLayout.LayoutParams) c0483q0).height;
((LinearLayout.LayoutParams) c0483q0).height = childAt3.getMeasuredHeight();
alertDialogLayout.measureChildWithMargins(childAt3, makeMeasureSpec, 0, i14, 0);
((LinearLayout.LayoutParams) c0483q0).height = i16;
}
}
i15++;
alertDialogLayout = this;
i14 = i4;
}
}
}
}