A czym właściwie jest RET?
Wydawało mi się, że w kopii EIP znajduje się właśnie adres na instrukcję, która ma być wykonywana, na przykład po wyjściu z podprogramu, czyli jak Ty to ujmujesz RET (tak myślę). Zwracam jeszcze uwagę, na różnicę między EIP, która jest realizowana w sposób, który omówiłeś, a kopią EIP, która raczej jest traktowana jako statyczna 'zmienna' na stosie.
Zgadza się. Dokładnie tak jest.
Być może myślimy o tym samym, używając innego języka.