ЯevDex – Telegram
ЯevDex
2.09K subscribers
56 photos
33 videos
59 files
71 links
My GitHub - https://github.com/ispointer
Telegram Bot - @RevDexbot
Telegram Chat: @RevDexChat
Download Telegram
dialog.dll
13 KB
Many people believe that modifying mobile applications is simple

add a Java dialog box and claim the credit. However, adding dialog boxes to desktop software is a different challenge. Some individuals purchase cracked PC software and try to redistribute it with their own credits, but the process is not the same as for mobile apps.

I have a method that can help, but please use it responsibly. This technique can be abused to create malicious DLLs and inject them into applications. Such misuse can harm other users and may be illegal. Do not use this method for malicious purposes only for legitimate tasks such as adding credits or creating harmless dialog boxes.

Software Required

https://github.com/master131/ExtremeInjector/releases/tag/v3.7.3

https://ntcore.com/explorer-suite

https://visualstudio.microsoft.com/


Dialog Code - https://news.1rj.ru/str/c/2307920458/130

Reverse Engineering Exe - @aantik_mods

Tutorial - https://news.1rj.ru/str/c/2307920458/132
8
Media is too big
VIEW IN TELEGRAM
In this video I will demonstrate how to inject dialog boxes externally into a Windows application one of the most interesting topics! 👍

I’ve divided this video into two parts.

At 4:40 you’ll see where I show how to make the dialog box a permanent implementation in any EXE software
Please open Telegram to view this post
VIEW IN TELEGRAM
10👀2😍1
Finally I public my channel 🌍

https://news.1rj.ru/str/RevDexChat
Please open Telegram to view this post
VIEW IN TELEGRAM
👌52
Dex2c Offline ( Apk ) No need Internet Connection User friendly 1 time NDK Download in App 😁
Anonymous Poll
91%
Yees need
9%
No need
❤‍🔥9🤓32
https://github.com/radioegor146/native-obfuscator


Java .class to .cpp converter for use with JNI

Currently, fully supports only Java 8. Java 9+ and Android support is entirely experimental

Warning: blacklist/whitelist usage is recommended because this tool slows down code significantly (like do not obfuscate full Minecraft .jar)

Also, this tool does not particularly obfuscate your code; it just transpiles it to native. Remember to use protectors like VMProtect, Themida, or obfuscator-llvm (in case of clang usage)
❤‍🔥62
This media is not supported in your browser
VIEW IN TELEGRAM
I made this app specially for my Offline Dex2C project NDK Build Project

Hope you guys will support me a lot ❤️
🥰115🤯1
ndklink ( Build Your Native Code ).apk
1.5 MB
ndklink ( Build Your Native Code )

Give me feedback Try it out for yourself and if you see any problems, be sure to let me know. I've made a public version of it available for testing as I'll be using it in a larger project ❣️

Modified NDK - https://news.1rj.ru/str/RevDexChat/113
10
Finally guys done 90% dex2c offline apk ❤️

I have a lot of work to do behind this because I converted the entire dex2c library to C++
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰11❤‍🔥5👌3
dex2c-LITE.zip
6.7 MB
Dex2C-LITE Setup Guide

Packages to Install:

pkg install python
pkg install openjdk-17 -y

About Dex2C-LITE:
This is a lightweight version of Dex2C that works perfectly with Python no need for extra package installations.
It’s an evaluation version without the 📍 Shrink Application Class feature.

Remade by @aantik_mods

The source code I’ve made public for Termux is the best modified version of Dex2C optimized so even beginners can use it easily

How to Use

#1 Install the two required packages in Termux:
python and openjdk-17

#2 Navigate to the Dex2C directory:

cd dex2c

#3 Run the Python noscript

python3 dcc_unsigned.py -i /storage/emulated/0/MT2/apks/input.apk -o output.apk

#4 Manually add antik.smali to your output.apk.

#5 Use my NDK Builder APK to build the code from this path:
/dex2c-LITE/project/jni/
After building, add all generated .so files add to your output.apk inside the lib folder.

#6 Enjoy your lightweight Dex2C build

Coming Soon

Tomorrow, I’ll release the full Dex2C Application, which will be more user-friendly and even easier to use
😍129🤯2
S = invoke-virtual\s*\{[^\}]*\},\s*Lcom/pairip/licensecheck/LicenseClient;->initializeLicenseCheck\(\)V

R = #

RevDex
12❤‍🔥3🥰2
ndklink Fix .zip
3.9 MB
Ndk Builder Source code ( Aide F*k )

Don't remove credit - @aantik_mods
111🥰2🤯2
Nice 👍 Here I see more than heaters Good job 👍 I am very disappointed after seeing these
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥136👀6
The Challenge of Changing Text in Android App lib.so

When modifying an Android app’s native library lib.so, one of the most common problems you face is this:

You want to replace a small string like "Hello" with a much longer one like "Welcome to Antik’s Mod"
But the original memory space for "Hello" is very limited so if you just overwrite it, the new text overflows into other data and crashes the program

How Text Is Stored

Strings like "Hello" aren’t stored directly inside the code.
Instead, the code holds a memory address (pointer) to where that text actually lives

Example :)

asm
LDR R0, =0x8334
BL printf


That means

“When showing the message, go read the string stored at address 0x8334.”

So, "Hello" is actually stored at lib location 0x8334

You can’t just write a longer string in the same place but you can redirect the program to another location with more space. This is called static patching

Find a New Home :)

Inside the .so file, you can often find large, unused or unimportant text areas called data caves a long help
message, debug string, or readme text that the app never uses Let’s say you find a big help text at


Offset : 0x7788 --> "App is Good app for You..."


This will be your new home for the custom text

Reroute the Pointer

In the original code

asm
LDR R0, =0x8334


Change that instruction so it points to your new offset

asm
LDR R0, =0x7788


Now the program will look for the string at 0x7788 instead of 0x8334

Open your so file in a hex editor and go to address 0x7788
Replace the old text (App is Good app...) with your new one

Welcome to Antik’s Mod


After your new string, you must add a null terminator (00) Example in hex

57 65 6C 63 6F 6D 65 20 74 6F 20 41 6E 74 69 6B 27 73 20 4D 6F 64 00

That final 00 tells the program

By - @aantik_mods

Alternative --> write replacement string to .rodata and use LineHook to redirect the existing pointer to the new location -- required c++ library <utf8.h>

#RevDex
113🤯6🥰4
Media is too big
VIEW IN TELEGRAM
3 day hard work 😁

Finally I made strong aimbot or esp

👏😁
1🥰41❤‍🔥1
Antik Mods ESP C++.rar
6 MB
DirectX 9 draw
https://github.com/naxl/directx12offline/releases/tag/v0.1.0


LocalPlayer [ac_client.exe + 0x0017E0A8]
Entity List [ac_client.exe + 0x18AC04]
FOV [ac_client.exe + 0x18A7CC]
PlayerCount [ac_client.exe + 0x18AC0C]

Position X [0x2C]
Position Y [0x30]
Position Z [0x28]

Head Position X [0x4]
Head Position Y [0xC]
Head Position Z [0x8]

Player Camera X [0x34]
Player Camera Y [0x38]

Assault Rifle Ammo [0x140]
Submachine Gun Ammo [0x138]
Sniper Ammo [0x13C]
Shotgun [0x134]
Pistol Ammo [0x12C]
Grenade Ammo [0x144]

Fast fire Assault Rifle [0x164]
Fast fire Sniper [0x160]
Fast fire Shotgun [0x158]

Auto shoot [0x204]
Health Value [0xEC]
Armor Value [0xF0]
Player Name [0x205]
1❤‍🔥2
How to Connect Weapon Class to Player Class Complete Guide

Weapon Class Explained

The Weapon class handles gun bullet count

class Weapon {
private:
int ammo; // Hidden variable

public:
// Setter method to change ammo
void setAmmo(int value) {
ammo = value;
}

// Getter method to read ammo
int getAmmo() const {
return ammo;
}
};
Player Class Connection

Player class contains weapon directly

class Player {
private:
Weapon weapon; // Player OWNS this weapon 0x2C

public:
// Returns weapon's address
Weapon* getWeapon() {
return &weapon;
}
};

Enemy Class Difference

class Enemy {
private:
Weapon* weapon; // Enemy has pointer to weapon 0x2C

public:
Weapon* getWeapon() const {
return weapon;
}
};
Hook Explain

void saferHookedUpdate(void* instance) {
// Check if this is Player (not Enemy)
if (IsPlayerInstance(instance)) {

// Extract weapon from memory offset 0x2C
void* weaponPtr = *(void**)((uint64_t)instance + 0x2C);

// If weapon exists, set ammo to 10000
if (weaponPtr != NULL) {
originalSetAmmo(weaponPtr, 10000);
}
}

// Call original game function
originalUpdate(instance);
}

How It Works In Game

Game updates all characters update each frame CPM Our hook intercepts runs before original update function Checks instance type identifies player vs enemy Sets unlimited ammo only for players 10000 bullets Game continues resumes normal operation

https://news.1rj.ru/str/RevDex/167

https://news.1rj.ru/str/RevDex/168

https://news.1rj.ru/str/RevDex/169



// SoldierLocalController->updateStep(float, cpVect, cpVect, float);
void (*orig_updateStepP)(void *instance, float f1, Vector2 v1, Vector2 v2, float f2);
void updateStepP(void *instance, float f1, Vector2 v1, Vector2 v2, float f2) {
if (instance != NULL) {


// Class Linking get Object

void* Weapon = *(void**)((uint64_t)instance + 0x1D0);


if (Weapon != NULL) {

if (isZoom > 0) {
*(float *) ((uint64_t) Weapon + 0x1dc) = (float) isZoom;
}

}
}
return orig_updateStepP(instance, f1, v1, v2, f2);
}


// cocos2d engine 🚂 example here

Guide - @aantik_mods

Some people still don't know about the field Offset I explain 😂👏 See

Example '*

Your update offset is 0x7788.

Your field offset

float get_speed is 0x5

That means the full field address is 0x7788 + 0x5
For example, in hex: 00 66 55 66 C7 88
here C7 is the pointer of your field
15👌3
Diff is Wow
2🤓116👀6