둘둘리둘둘리둘둘리둘둘리둘둘리둘
[Windows] 함수호출 규약 (Calling Convention) (x86) 본문
cdecl
- C에서 default로 사용
- Caller가 스택 정리(ex: ADD ESP,8)
- 가변 갯수의 Parameter전달 가능
stdcall
- Win32API에서 사용 -> 호환성을 위해
- Callee가 스택 정리(ex: RETN 8)
- 코드 크기 줄어듬
fastcall
- stdcall과 동일하나 parameter 전달시 ECX,EDX 레지스터를 이용
- parameter가 2개이상일경우 스택이용
- 메모리(스택)이 아닌 레지스터(CPU)를 이용하여 빠른속도
- ECX, EDX 레지스터 필요시 백업 -> 코드 크기 늘어남
'Windows > Reversing' 카테고리의 다른 글
디버깅 이벤트(Debugging Events)관련 상수들 (0) | 2015.12.19 |
---|---|
메모리 브레이크 포인트, 동작방식 (0) | 2015.12.03 |
하드웨어 브레이크포인트, 동작방식 (0) | 2015.12.02 |
[ Linux ] 심볼없는 파일 메인함수 찾기 (0) | 2015.08.26 |
어셈블리어 연산자 (0) | 2015.07.15 |
Comments