@Havanitos Well, I assume that LOGD lines are for trouble shooting to indicate the patch size and address are correct. However, when I removed the all LOGD lines, I remembered that only the first patch is effective, but not both. Did I delete something important for both patch to work? Following is an example of 1 toogle to patch 2 addresses in a thread.
void *my_test_thread(void *) {
// loop until our target library is found
ProcMap il2cppMap;
do {
il2cppMap = KittyMemory::getLibraryMap("libil2cpp.so");
sleep(1);
} while (!il2cppMap.isValid());
my_cool_Patches.canShowInMinimap1 = MemoryPatch("libil2cpp.so", 0x36B82C, "\xDC\x0F\x00\xE3\x1E\xFF\x2F\xE1", 8);
my_cool_Patches.canShowInMinimap2 = MemoryPatch("libil2cpp.so", 0x36B82D, "\xDD\x0F\x00\xE3\x1E\xFF\x2F\xE1", 8);
return NULL;
}
void *my_test_thread(void *) {
// loop until our target library is found
ProcMap il2cppMap;
do {
il2cppMap = KittyMemory::getLibraryMap("libil2cpp.so");
sleep(1);
} while (!il2cppMap.isValid());
my_cool_Patches.canShowInMinimap1 = MemoryPatch("libil2cpp.so", 0x36B82C, "\xDC\x0F\x00\xE3\x1E\xFF\x2F\xE1", 8);
my_cool_Patches.canShowInMinimap2 = MemoryPatch("libil2cpp.so", 0x36B82D, "\xDD\x0F\x00\xE3\x1E\xFF\x2F\xE1", 8);
return NULL;
}