Help! How to hook that void fun.?

nnkiddie

Platinian
Original poster
Dec 28, 2023
7
1
1
18
How to hook this function?

// RVA: 0x7E6EE0 Offset: 0x7E6EE0 VA: 0x7E6EE0
public void FinishAllQuests() { }
 
  • Like
Reactions: cristy111

libModz

Awesome Active Platinian
Jun 2, 2022
163
29
28
UK
C++:
void (*FinishAllQuests)(void *instance);





FinishAllQuests = (void(*)(void*)) getAbsoluteAddress(targetLibName, 0x7E6EE0);

You need to hook it to an update method, preferably one from the same/similar class.
Then you can use it in a hook like so...

C++:
void (*old_Update)(void *instance);
void Update(void *instance) {
    if(instance!=nullptr) {
        if(Test) {
            FinishAllQuests(instance);
            Test=false;
        }
    }
    old_Update(instance);
}





HOOK("0xOFFSET", Update, old_Update);
 
  • Like
Reactions: danganhtuan12003

Exequel

Platinian
Jan 14, 2024
41
5
8
15
Code:
int Void hooking (with update offset) =
bool VoidHookingint;

void (*Anyname)(void *instance,int value);
void (*_Voidinthooking)(void *instance);
void Voidinthooking(void *instance) {
    if (instance != NULL) {
        if (VoidHookingFloat) {
            Anyname(instance, 999); //you can replace it with any number you want
            }
            }
            return _Voidinthooking(instance);
            }

HOOK_LIB("libname","0xUpdateOffset",Voidinthooking,_Voidinthooking);
    
 Anyname = (void (*)(void *, int))getAbsoluteAddress(targetLibName,0xYourVoidOffset);
 
 
OBFUSCATE("0_Toggle_hackname"), 

 case 0:
        VoidHookingint = boolean;
                            break;
 

Sharphades

Rookie
Jan 18, 2024
4
0
1
23
i make it like this it is possible?


void *instanceBtn;
void (*OpenredeemPanel)(void *instance);

void (*old_Update)(void *instance);
void Update(void *instance) {
if(instance!=nullptr) {
if(Test) {
FinishAllQuests(instance);
Test=false;
}
}
old_Update(instance);
}


in lib64hook
OpenredeemPanel = (void(*)(void*)) getAbsoluteAddress(targetLibName, 0x4E5714);

in featnum
case 3:
OpenredeemPanel(instanceBtn);
break;