/// <summary> /// Before processing the body of a procedure, perform housekeeping tasks. /// </summary> /// <param name="addr"></param> /// <param name="state"></param> /// <param name="proc"></param> /// <returns></returns> private void EstablishInitialState(Address addr, ProcessorState st, Procedure proc) { st.InstructionPointer = addr;; st.OnProcedureEntered(); var sp = proc.Frame.EnsureRegister(Program.Architecture.StackRegister); st.SetValue(sp, proc.Frame.FramePointer); SetAssumedRegisterValues(addr, st); }