본문 바로가기
모의해킹/리버싱

[리버싱] 알아야 할 주요 레지스터

by 보안의신 2017. 7. 29.
반응형

[리버싱] 알아야 할 주요 레지스터

 

 

### Register ###

연산 처리 및 번지지정을 도와줌

컴퓨터의 장치들을 제어함.

 

 

레지스터들도 종류가 나뉩니다.

 

 

General Purpose Register (범용 레지스터) : 일반적인 목적으로 쓰임

-EAX : 연산의 결과값이 저장되는 레지스터, 함수의 리턴값이 저장되기도 한다.

- EBX : 주소연산 결과값이 저장 된다, 흔하게 사용되지는 아니함.

- ECX : 반복의 횟수를 저장

- EDX : EAX 레지스터의 보조역할을 수행한다.

예를들면, 나누기 연산 수행 시 몫은 EAX레지스터에 저장이 되며,

나머지는 EDX에 저장 된다.

 

 

X는 레지스터를 의미하며 , E는 확장을 의미 한다.

 

16비트 레지스터에는 E가 붙지 않지만,

컴퓨터가 발전하면서 32비트, 64비트에서는

E가 붙습니다.

 

 

* 추가적인 범용레지스터 4가지 *

 

ESI, EDI : 문자열을 저장하는 용도로 쓰이는 레지스터

S : Source , D : Destination

 

ESP, EBP : 스택구조의 Top, Bottom과 같음.

 

ESP(스택포인터) = Top

EBP(베이스포인터) = Bottom

 

ESP = EBP 값이 똑같다? => Stack에 데이터가 하나도 없다.

 

 

* 그밖의 레지스터 *

EIP : Program Counter라고도 함, 다음에 수행해야 할 위치를 저장하고 있다.

Eflags (상태 레지스터) : CPU의 상태를 나타내는 레지스터, Z(Zero flag) 평상시에는 0이다가 연산의 결과가

0이 나오면 값이 1로 바뀌어 상태를 알려준다. 

반응형

'모의해킹 > 리버싱' 카테고리의 다른 글

[리버싱] 기본 어셈블리 명령어  (0) 2017.07.29
[리버싱] 리버싱 사전 지식  (0) 2017.07.29

댓글