Цитата(desh @ Sep 29 2010, 10:54)

Во время выполнения функции происходит изменение вершины стека, а при выходе из функции значение регистра восстанавливается измененным значением.
А вершина стека случайно не налезает в этот момент на глобальные переменные? Стеков хватает? Их там два, попробуйте увеличить оба.