- repne scasb

  흔히 반복해서 하는 작업을 나타내는 연산자로

  ECX에 반복횟수를 세팅하고 그 수만큼 루프를 돌게 된다.

  일반적으로 '문자열'을 다룰 때 많이 사용된다.

 

  REP는 반복을 의미하고

  뒤에 'N'은 NOT, 'E'는 =를 의미하고 있기 때문에

  REPNE는 ECX가 0이 아닐 때, 즉 감소하는 ECX가 0보다 큰 상태일 때를 의미한다.

 

  SCASB (Scan String byte)

  EAX의 값 중 일정 영역의 데이터와 EDI의 데이터를 비교한다.

  SCASB 는 1BYTE => AL

  SCASW 는 1Word => AX

  SCASD 는 1DWord => EAX

  값이 같으면 ZF(Zero Flag)가 '1'이 된다.

 

- REP

* stos, movs, scas 에만 쓸 수 있다.

* 반복 count는 ECX가 수행한다. (반복 시, ECX 1씩 감소)

* EDI값(주소값)을 자료형의 크기만큼 ECX감소와 동일한 횟수로 증가시킨다.

 

  REP MOVS

- ECX의 count만큼 감소하며 ESI의 값을 EDI로 넣는다.

'Reverse Engineering > IDA Pro 사용기' 카테고리의 다른 글

STRING 컨트롤  (0) 2020.04.07
IDA FLOW 타입  (0) 2020.04.07
IDA에서 개체 표기규칙  (0) 2020.04.07
이런 코드를 만났을 때 [01]  (0) 2020.04.07
SET OPCODE LIST  (0) 2020.04.07

+ Recent posts