¿Quieres recibir una notificación por email cada vez que Securitymovil escriba una noticia?
¡Tenemos un desafío!
Bien, podría bajarme cualquier mod del juego para jugar off-line y tener dinero o vidas infinitas, pero sabéis que ese no es el objetivo, al menos en este blog. Tendremos por tanto que crear nuestro propio APK para eliminar el anti-cheat.
Comienzo como siempre descargando el paquete del juego con Real APK Leecher:
Ahora extraigo y decompilo las fuentes con apktool, esto incluye recursos (res), manifiesto (AndroidManifest) y fuentes decompiladas:
d:\ > java -jar apktool.jar d "Dark Avenger.apk" salidaI: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\vmotos\apktool\framework\1.apk
I: Loaded.
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Done.
I: Copying assets and libs...
Después de echar un vistazo a las actividades de la aplicación dentro del AndroidManifest.xml y husmear el directorio de salida mi objetivo es la función
OPT_CIH_CHECK en .\salida\smali\com\gamevil\lib\GvActivity.smali: sget v2, Lcom/gamevil/lib/profile/GvProfileData;->OPT_CIH_CHECK:I invoke-static {v2}, Lcom/gamevil/lib/profile/GvProfileData;->isDisabled(I)Z
move-result v2
if-nez v2, :cond_1
.line 238
iget-boolean v2, p0, Lcom/gamevil/lib/GvActivity;->isFirst:Z
if-nez v2, :cond_2
Sin entrar en mucho detalle (recordar que estoy malito) modifico las condiciones (cond_3) en el código smali y recompilo el paquete:
D:\>java -jar apktool.jar b salida avengercracked.apkI: Checking whether sources has changed...
I: Smaling...
I: Checking whether resources has changed...
I: Building resources...
I: Copying libs...
I: Building apk file...
Después de lo firmo:
java -jar signapk.jar certificate.pem key.pk8 avengercracked.apk avengercracked2.apk
Subo avengercracked2.apk a mi Google Drive, lo reinstalo en mi móvil y vuelvo corriendo al sillón a probarlo con GameCI H ;)