Нет. Если объявить перехватчик так, как написал я, то можно оперировать просто параметрами p1... Т.е. не надо будет писать что-то типа mov eax,[esp+7*4+8+...]. Тебе для вызова оригинального обработчика надо будет сделать так: push pn ... push p2 push p1 call original_func ;(только первые байты восстанови) Никаких попов не надо! Из своего обработчика выходишь просто с пом. ret. Если ты объявляешь процедуру так, как я сказал и/или используешь локальные переменные, то компилятор (во всяком случае масм) вначале прецедуры пишет push ebp/mov ebp,esp/sub esp... - это типа и есть стековый кадр. Я ж тебе и советую объявлять функию обработчика отдельно - так гораздо удобнее - и к параметрам, и к локальным переменным обращаться. Да и вообще со стеком не запутаешься. Но это только на мой взгляд.