Codex
الذهاب إلى القناة على Telegram
Content channel : - App Development - Python , C++, kotlin , Golang, Java , JS , Rust This Channel Doesn't Promote Any Illegal Activities It's Just For Fun Educational Purposes Owner : @Qwanwin From : Indonesia
إظهار المزيد1 406
المشتركون
لا توجد بيانات24 ساعات
لا توجد بيانات7 أيام
+1930 أيام
أرشيف المشاركات
1 406
Hi everyone 👋,
I just created the DexParser project – a home-made DEX parser + disassembler project, inspired by AOSP libdexfile and also references from other website.
What is DexParser?
DexParser is a toolkit that can:
Parse .dex files directly or from within APK/ZIP.
Dump methods complete with registers, ins/outs, try-catch, debug info, and annotations.
Decode instructions (DEX 035–039 + some CompactDex basics aren't complete yet).
Display custom payloads (array-data, packed-switch, sparse-switch).
Further adjustments may be needed.
Because the code structure is more compact than AOSP
Maybe you will also be able to create a dynamic Java Hook using my parser.
Stay tuned.
Still in development.
@Qwanwin
1 406
#include <EGL/egl.h>
#include <GLES2/gl2.h>
#include <android/log.h>
#include <dlfcn.h>
#include <atomic>
#define LOG_TAG "Qwanwin"
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
static std::atomic<int> gW{0}, gH{0};
using PFN_eglSwapBuffers = EGLBoolean (*)(EGLDisplay, EGLSurface);
static PFN_eglSwapBuffers orig_eglSwapBuffers = nullptr;
static thread_local bool tls_in_hook = false;
extern "C" EGLBoolean _eglSwapBuffers(EGLDisplay dpy, EGLSurface surface) {
if (tls_in_hook) {
return orig_eglSwapBuffers ? orig_eglSwapBuffers(dpy, surface) : EGL_FALSE;
}
tls_in_hook = true;
if (dpy != EGL_NO_DISPLAY && surface != EGL_NO_SURFACE) {
EGLint w = 0, h = 0;
if (eglQuerySurface(dpy, surface, EGL_WIDTH, &w) == EGL_TRUE &&
eglQuerySurface(dpy, surface, EGL_HEIGHT, &h) == EGL_TRUE &&
w > 0 && h > 0) {
gW.store((int)w, std::memory_order_relaxed);
gH.store((int)h, std::memory_order_relaxed);
} else {
// fallback
GLint vp[4] = {0,0,0,0};
glGetIntegerv(GL_VIEWPORT, vp); // [x,y,w,h]
if (vp[2] > 0 && vp[3] > 0) {
gW.store(vp[2], std::memory_order_relaxed);
gH.store(vp[3], std::memory_order_relaxed);
}
}
}
EGLBoolean ret = orig_eglSwapBuffers ? orig_eglSwapBuffers(dpy, surface) : EGL_FALSE;
tls_in_hook = false;
return ret;
}
static void* Qwanwin_eglSwapBuffers() {
void* sym = dlsym(RTLD_NEXT, "eglSwapBuffers");
if (sym) return sym;
void* h = dlopen("libEGL.so", RTLD_NOW);
if (!h) return nullptr;
sym = dlsym(h, "eglSwapBuffers");
return sym;
}
extern "C" void QwanEglSwapHook_Easy() {
if (orig_eglSwapBuffers) return;
void* target = Qwanwin_eglSwapBuffers();
if (!target) {
LOGE("Failed to eglSwapBuffers");
return;
}
if (Tools::Hook((void*)target, (void*)_eglSwapBuffers, (void**)&orig_eglSwapBuffers)) {
LOGI("Hooked eglSwapBuffers successfully");
} else {
LOGE("Hook failed");
}
}
/*
extern "C" int eglhook_get_w() { return gW.load(std::memory_order_relaxed); }
extern "C" int eglhook_get_h() { return gH.load(std::memory_order_relaxed); }*/
Auto set-up
__attribute__((constructor))
static void on_load() { QwanEglSwapHook_Easy(); }
EGL Hook
Credit @codex44441 406
https://www.playbook.com/s/qwanwinkill/65bTgPsGR8XDMm2bDwzEsfFB
kill signature 64BIT 4.0
=> Without Crashing
=> Without blank
=> Without Crashing in game
=> Support Java and Imgui
=> Libanort edited
Author: @Qwanwin
1 406
https://www.playbook.com/s/qwanwinkill/V8nnTBUKFjrUUCd4kZK76cR4
Safe kill signature 32BIT
=> Without Crashing
=> Without blank
=> Without Crashing in game
=> Support Java and Imgui
Author: @Qwanwin
1 406
Tools plugin ida
Speeds up the process of labeling functions during reverse without having to rename them manually one by one for each binary version.
For usage instructions, refer to the readme.txt file.
For non-Indonesian language, please use a translator.☺️
Author: @Qwanwin
https://t.me/codex4444
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
