Sto provando ad agganciare alcune funzioni in un eseguibile linkato statico e devo ottenere un pattern per la funzione in quasi tutte le nuove versioni del programma poiché la funzione è abbastanza grande, quindi il compilatore cambia molti dei byte per ogni piccolo cambiamento.
Ho notato che questa funzione utilizza un'altra funzione molto piccola che è anche collegata staticamente, ma posso ottenere uno schema che funziona per quasi tutte le versioni.
Quindi sto pianificando di cercare questa funzione, collegarla, tracciare lo stack e infine trovare l'indirizzo della funzione del chiamante.
Non sapevo quale fosse esattamente lo stack di una funzione e pensavo che CaptureStackBackTrace restituisse gli indirizzi delle funzioni, ma questo era sbagliato. Ha restituito alcuni indirizzi vicini agli indirizzi delle funzioni reali.
Posso ottenere che le funzioni inizino gli indirizzi da questi indirizzi restituiti da CaptureStackBackTrace? Non ho bisogno di usare dbghelp per ottenere i nomi o gli indirizzi delle funzioni in quanto i file pdb non saranno presentati.