처음 수행 하 는 조건 분기 문인 경우 에 , 강제 분기 를 위해 프로그램 의 Context ( 예 , PC ( 또는 EIP ) , 플래그 레지스터 ( Flag Register ) 값 , 조건 비교 에 사용 된 변수 값 ) 를 변경 하 여 스택 에 저장 한다 ( 275 ) . 강제 분기 를 위한 변수 값 은 심볼 표현 매칭 ( Symbolic Expression Matching ) 기법 에 의해 얻 을 수 있 다 . 다음 , 단계 ( 280 ) 로 진행 하 여 해당 명령어 를 수행 하 고 , 단계 ( 290 ) 로 진행 한다 . 예 를 들 어 , 조건 분기 문 이 if ( A == B ) . .. 라고 하 면 , 이 는 A , B 의 값 을 비교 하 는 cmp 계열 의 명령어 와 Jcc 계열 의 명령어 ( jne , je , jnz 등등 ) 의 조합 으로 표현 되 는데 , cmp 는 플래그 레지스터 의 값 을 변경 하 고 , 이 변경 된 값 에 따라 jne , je 등 의 분기 를 수행 하 는 명령어 이 다 . 여기 서 , a = 10 , b = 5 if ( a > b ) a = 1 ; else b = 1 이 라고 하 면 정상 적 으로 는 a = 1 이 라는 구문 이 수행 되 어야 하 는데 , 이 시점 에서 b = 1 이 수행 될 수 있 도록 하 는 게 강제 수행 이 다 . 따라서 , 강제 수행 을 위해 다음 EIP 를 b = 1 로 지정 하 고 , a > b ( cmp 명 령 ) 의 결과 가 저장 된 플래그 레지스터 의 값 을 변경 한다는 의미 이 다 .