파일을 읽고 분석 구성
바이너리를 불러와 명령어와 중간 표현 및 프로그램 구조를 다룬다. 제어 흐름과 데이터 의존 관계를 분석하거나 역컴파일 결과를 살필 수 있다. 결과는 복원한 모델이므로 원래 소스와 항상 일대일로 대응하지 않는다. 지원하는 형식과 호출 규약 및 환경 모델을 확인해 분석 범위를 정한다.
기호 상태와 경로
입력이나 레지스터와 메모리를 기호 값으로 표현하고 분기 조건에 따라 상태를 나누어 탐색할 수 있다. 실제로 가능한 상태와 제약을 만족하지 못하는 상태 및 충분히 제한되지 않은 상태를 구분한다. 모든 상태가 같은 후속 실행에 포함되는 것은 아니므로 단순한 상태 수만으로 탐색의 충실도를 판단하지 않는다.
훅과 외부 동작
함수나 시스템 호출의 동작을 대체하는 훅과 시뮬레이션 구성을 제공한다. 복잡한 환경을 단순화하는 데 도움이 되지만 대체한 의미가 실제 실행과 맞는지 검토해야 한다. 구체적인 실행과 기호 실행의 선택도 결과에 영향을 준다. 입력 파일과 분석 스크립트 및 버전을 보존하고 찾은 동작은 가능한 범위에서 실제 실행과 비교한다.