¿Cómo descompilar un archivo DEX de vuelta al código fuente Java?
¡Hola, colegas! Soy nuevo en el desarrollo Android y reverse engineering. Me encontré con esta tarea: tengo un archivo APK (una aplicación Android normal) y quiero ver cómo está estructurada alguna lógica internamente. Sé que el bytecode Java (JVM) se compila a DEX (Dalvik Executable) para Android. Pero, ¿cómo obtener de este DEX el código Java legible de vuelta?
Intenté simplemente abrir el APK como un archivo ZIP y encontrar classes.dex, pero es un binario, no se puede leer. Probé convertir DEX a JAR usando la utilidad dex2jar, y luego abrir el JAR en un descompilador (por ejemplo, JD-GUI). En algunos casos funciona, pero a menudo el código resulta ofuscado (a, b, c en lugar de nombres de variables) o simplemente se rompe.
Aquí hay un ejemplo de lo que veo después de la descompilación:
```java
public class a {
public static String a(String str) {
int i = 0;
for (int i2 = 0; i2 < str.length(); i2++) {
i = (i + str.charAt(i2)) * 17;
}
return Integer.toHexString(i);
}
}
```
¿Cómo convertir esto...
No answers yet.
Inicia sesión para dejar una respuesta
Blogs