[ 어셈블리 핸드레이 ]
: 어셈블리어를 C언어로 복원시키는 것
[ 알아두면 좋은 지식 ]
1. ebp+8 이상의 값은 함수의 인자를 나타냄
2. ebp-4, esp+8 이상의 값은 지역변수임. 숫자가 높을수록 가장 먼저 선언된 변수임
3. 함수 프롤로그 밑에 sub x가 있다는 것은 x만큼 지역변수나 함수를 선언했다는 의미임
4. call 위의 esp, esp+4, esp+8은 각각 함수의 첫번째, 두번째, 세번째 인자를 뜻함
5. for문의 전형적인 문장은
인자를 초기화하고 (mov ebp-8,0)
인자를 비교하며 (cmp ebp-8, 9)
쭉 명령어를 실행하다가 코드의 끝부분에서 인자에 대한 연산을 수행함(add ebp-8, 1)
'Reversing > 개념' 카테고리의 다른 글
[Reversing] Handray (0) | 2022.08.25 |
---|---|
PE 파일 & API & ELF 파일 (0) | 2021.06.25 |
[DreamHack] 5강 : hello-world.exe로 배우는 x64dbg 사용법 (0) | 2021.03.29 |
[DreamHack] 3강, 4강 : puts("hello world!\n"); → x86_64 asm (0) | 2021.03.28 |
[DreamHack] 2강 : x64 기초 (0) | 2021.03.28 |