Jeżeli jest dynamicznie lokowany i zmienia pozycję to nie pozostaje nic innego jak przeszukać blok pamięci po patternie.
Mógłbyś opisać coś więcej w jaki sposób mogę to zrealizować ?
Podobnie jak to się ręcznie robi na Cheat Engine - można naskrobać skrypt, który np przeszuka pamięć pod kątem pewnych charakterystycznych danych i na tej podstawie coś dalej tam robi.
Musisz dać więcej informacji, najlepiej to apke którą chcesz czytać. Ustalić te zmienne adresy da się na wiele sposobów. W niektórych przypadkach nawet nie jest to potrzebne bo jeżeli ta aplikacja gada po socketach da się podsłuchać dane. Można też dllki podmienić i z nich zrobić pomost między oryginalnymi z dodatkową implementacją. Już nie mówiąc o dekompilacji, kilku poprawkach i ponownej kompilacji takiego targetu.
Co do przykładu kalkulatora to masz kontrolkę bodaj typu label czy edit, która ma swój stały name i za pomocą winapi możesz się dobrać do niej i w miarę dowolnie modyfikować.