Feeling like I\'m making the call machine code too complicated. Saving the current state before I go and make changes