ну вот ты стек не ровняешь после отработки printf, данные в нем указывают на... (не знаю, вроде на локальные данные похоже), и вот в этот адрес ты изменишь свой eip, а это стек, а его выполнять нельзя, а это исключение, а это крах программы и ОС без твоего ведома сама прибьет твой процесс