Help! Hook

Viktorovich31

Platinian
Original poster
Sep 16, 2022
38
0
6
42
Russian
Hello! Can you please tell me how to correctly call the method - AddCoins?
AddCoins=0x11E3164
Update=0xAA4104

Code:
void (*AddCoins)(void *instance, int num);

void (*old_Update)(void *instance);
void Update(void *instance){
    if(instance != NULL) {
        AddCoins(instance, 999999);
}
        old_Update(instance);
}
__attribute__((constructor))
void libhook_main() {
    do {
        sleep(1);
    } while (!isLibraryLoaded(OBFUSCATE("libil2cpp.so")));
    LOGI(OBFUSCATE("lib loaded"));
    HOOK_LIB("libil2cpp.so", "0xAA4104", Update, old_Update);       
    LOGI(OBFUSCATE("lib hooked"));
}
 

Poison Modz

Approved Modder
Approved Modder
Aug 27, 2020
158
11,087
1,193
India
bool addcoins = false;

void (*AddCoins)(void *instance, int num);

void (*old_Update)(void *instance);
void Update(void *instance){
if(instance != NULL) {
AddCoins(instance, 999999);
}
old_Update(instance);
}

MSHookFunction((void *)getAbsoluteAddress("libil2cpp.so", 0xAA4104), (void *) Update, (void **) &old_Update);

AddCoins = (void (*)(void *, int)) getAbsoluteAddress(targetLibName, 0x11E3164);

OBFUSCATE("0_Toggle_Add Coins"),

case 0:
addcoins = boolean;
break;
 

Viktorovich31

Platinian
Original poster
Sep 16, 2022
38
0
6
42
Russian
bool addcoins = false;

void (*AddCoins)(void *instance, int num);

void (*old_Update)(void *instance);
void Update(void *instance){
if(instance != NULL) {
AddCoins(instance, 999999);
}
old_Update(instance);
}

MSHookFunction((void *)getAbsoluteAddress("libil2cpp.so", 0xAA4104), (void *) Update, (void **) &old_Update);

AddCoins = (void (*)(void *, int)) getAbsoluteAddress(targetLibName, 0x11E3164);

OBFUSCATE("0_Toggle_Add Coins"),

case 0:
addcoins = boolean;
break;
Code:
void (*AddCoins)(void *instance, int num);

void (*old_Update)(void *instance);
void Update(void *instance){
    if(instance != NULL) {
        AddCoins(instance, 999999);
}
        old_Update(instance);
}
__attribute__((constructor))
void libhook_main() {
    do {
        sleep(1);
    } while (!isLibraryLoaded(OBFUSCATE("libil2cpp.so")));
    LOGI(OBFUSCATE("lib loaded"));
    MSHookFunction((void *)getAbsoluteAddress("libil2cpp.so", 0xAA4104), (void *) Update, (void **) &old_Update);
    AddCoins = (void (*)(void *, int)) getAbsoluteAddress("libil2cpp.so", 0x11E3164);
    LOGI(OBFUSCATE("lib hooked"));
}
Hello! It didn't work, the game crashes.
 

Attachments