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:
6
apk_decompiled/sources/N/a.java
Normal file
6
apk_decompiled/sources/N/a.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package N;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public interface a {
|
||||
void a(Object obj);
|
||||
}
|
||||
37
apk_decompiled/sources/N/b.java
Normal file
37
apk_decompiled/sources/N/b.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package N;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class b {
|
||||
|
||||
/* renamed from: a, reason: collision with root package name */
|
||||
public final Object f1119a;
|
||||
|
||||
/* renamed from: b, reason: collision with root package name */
|
||||
public final Object f1120b;
|
||||
|
||||
public b(Object obj, Object obj2) {
|
||||
this.f1119a = obj;
|
||||
this.f1120b = obj2;
|
||||
}
|
||||
|
||||
public final boolean equals(Object obj) {
|
||||
if (!(obj instanceof b)) {
|
||||
return false;
|
||||
}
|
||||
b bVar = (b) obj;
|
||||
return Objects.equals(bVar.f1119a, this.f1119a) && Objects.equals(bVar.f1120b, this.f1120b);
|
||||
}
|
||||
|
||||
public final int hashCode() {
|
||||
Object obj = this.f1119a;
|
||||
int hashCode = obj == null ? 0 : obj.hashCode();
|
||||
Object obj2 = this.f1120b;
|
||||
return hashCode ^ (obj2 != null ? obj2.hashCode() : 0);
|
||||
}
|
||||
|
||||
public final String toString() {
|
||||
return "Pair{" + this.f1119a + " " + this.f1120b + "}";
|
||||
}
|
||||
}
|
||||
79
apk_decompiled/sources/N/c.java
Normal file
79
apk_decompiled/sources/N/c.java
Normal file
@@ -0,0 +1,79 @@
|
||||
package N;
|
||||
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
import u.C0625b;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public class c {
|
||||
|
||||
/* renamed from: a, reason: collision with root package name */
|
||||
public final Object[] f1121a;
|
||||
|
||||
/* renamed from: b, reason: collision with root package name */
|
||||
public int f1122b;
|
||||
|
||||
public c(int i) {
|
||||
if (i > 0) {
|
||||
this.f1121a = new Object[i];
|
||||
return;
|
||||
}
|
||||
throw new IllegalArgumentException("The max pool size must be > 0");
|
||||
}
|
||||
|
||||
public Object a() {
|
||||
int i = this.f1122b;
|
||||
if (i <= 0) {
|
||||
return null;
|
||||
}
|
||||
int i4 = i - 1;
|
||||
Object[] objArr = this.f1121a;
|
||||
Object obj = objArr[i4];
|
||||
Intrinsics.checkNotNull(obj, "null cannot be cast to non-null type T of androidx.core.util.Pools.SimplePool");
|
||||
objArr[i4] = null;
|
||||
this.f1122b--;
|
||||
return obj;
|
||||
}
|
||||
|
||||
public void b(C0625b c0625b) {
|
||||
int i = this.f1122b;
|
||||
Object[] objArr = this.f1121a;
|
||||
if (i < objArr.length) {
|
||||
objArr[i] = c0625b;
|
||||
this.f1122b = i + 1;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean c(Object instance) {
|
||||
Object[] objArr;
|
||||
boolean z3;
|
||||
Intrinsics.checkNotNullParameter(instance, "instance");
|
||||
int i = this.f1122b;
|
||||
int i4 = 0;
|
||||
while (true) {
|
||||
objArr = this.f1121a;
|
||||
if (i4 >= i) {
|
||||
z3 = false;
|
||||
break;
|
||||
}
|
||||
if (objArr[i4] == instance) {
|
||||
z3 = true;
|
||||
break;
|
||||
}
|
||||
i4++;
|
||||
}
|
||||
if (z3) {
|
||||
throw new IllegalStateException("Already in the pool!");
|
||||
}
|
||||
int i5 = this.f1122b;
|
||||
if (i5 >= objArr.length) {
|
||||
return false;
|
||||
}
|
||||
objArr[i5] = instance;
|
||||
this.f1122b = i5 + 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
public c() {
|
||||
this.f1121a = new Object[256];
|
||||
}
|
||||
}
|
||||
34
apk_decompiled/sources/N/d.java
Normal file
34
apk_decompiled/sources/N/d.java
Normal file
@@ -0,0 +1,34 @@
|
||||
package N;
|
||||
|
||||
import kotlin.jvm.internal.Intrinsics;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
public final class d extends c {
|
||||
|
||||
/* renamed from: c, reason: collision with root package name */
|
||||
public final Object f1123c;
|
||||
|
||||
public d(int i) {
|
||||
super(i);
|
||||
this.f1123c = new Object();
|
||||
}
|
||||
|
||||
@Override // N.c
|
||||
public final Object a() {
|
||||
Object a2;
|
||||
synchronized (this.f1123c) {
|
||||
a2 = super.a();
|
||||
}
|
||||
return a2;
|
||||
}
|
||||
|
||||
@Override // N.c
|
||||
public final boolean c(Object instance) {
|
||||
boolean c4;
|
||||
Intrinsics.checkNotNullParameter(instance, "instance");
|
||||
synchronized (this.f1123c) {
|
||||
c4 = super.c(instance);
|
||||
}
|
||||
return c4;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user