The Base knowledge of Reverse Engineering. 이번 글에서는 RE를 하는 데에 있어서의 기초 지식인 어셈블리어, 논리연산, 레지스터에 대해 간단하게 다룹니다. 1.어셈블리어 Push : sp 레지스터를 조작하는 명령어중의 하나이다. 스택에 데이터를 저장하는데 쓰인다. ex:) Push eax : 스택에 Eax의 값을 스택에 저장한다. ex:) Push 20 :즉석값인 20을 스택에 저장한다. ex:) Push 401F47 : 메모리 오프셋 401F47의 값을 스택에 저장한다. Pop : 이 또한 sp 레지스터를 조작하는 명령 어중 하나이다. 스택에서 데이터를 꺼내는데 쓰인다. ex:) Pop eax :스택에 가장 상위에 있는 값을 꺼내애서 eax에 저장한다. 주의점 : Pu..
C 프로그래머가 알아야 할 것들 - Chapter 7 어셈블리 김성훈 (sunghun84@nate.com) (1) 어셈블리 언어 C언어는 다른 언어들 보다 어셈블리에 근접한 언어입니다. 인라인 어셈블리가 가능한 데다가, 메모리를 직접 다루는 것이 가능하며, C언어는 어셈블리어와 1:1대응까진 아니지만 대응 되는 언어이기 때문입니다. C언어로 작성한 코드는 컴파일러를 통해서 어셈블리어와 대응되는 오브젝트 파일로 반드시 변환이 되어야 해당 코드가 실행 될 수 있습니다. 어셈블리 언어는 그 코드가 어떤 일을 할지를 추상적이 아니라, 직접적으로 보여줍니다. 논리상의 오류나, 수행 속도, 수행 과정에 대해 명확히 해준다는 점에서 직관적인 언어입니다. 어셈블리 언어를 사용하면 메모리에 대한 이해도도 높아집니다. 우..
- Total
- Today
- Yesterday
- 멀티스레드
- 바로가기 프로그램
- 좋은 프로그래머
- SQLite Spy
- 디버깅
- Rails
- 조엘 온 소프트웨어
- EzShortcut
- 엘키
- TraceRoute
- 루비 온 레일즈
- 게임데브포에버
- CppSQLite
- perfmon
- 디자인 패턴
- c언어
- 임백준
- EasyExec
- 루비
- NDC2013
- svn
- 게임개발포에버
- TDD
- Ruby on Rails
- MS-SQL
- ftp
- 리버스 엔지니어링
- SDL
- RoR
- ruby
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |