starting good function
in foo
first foo a=1
in foo
second foo a=2
starting bad function
looking at ring
#if defined(PROGRAM_SHEPHERDING) && defined(security) && !defined(no_ret_after_call) && !defined(C) && !defined(X) && !defined(low) && !defined(client) && !defined(thin_client) && !defined(use_moduledb)
# if !defined(detect_mode)
SEC_VIO_AUTO_STOP
# if !defined(internal_detach_mask)
STOP
# endif
# else
SEC_VIO_CONT
# endif
#endif
M-m-my PRECIOUS is stolen! ATTACK SUCCESSFUL!