64비트에선 편리하던 inline assembly의 사용이 불가능하다.
따라서, MASM을 사용하여 assembly를 작성해야한다.
콘솔 프로젝트 생성이후,
Build Dependencies -> Build Customizations ->
Build Customization을 클릭하면 다음과 같은 윈도우가 나온다.
masm을 선택한다.
선택한이후,
Source Files -> New Item
그리고 FILENAME.asm 을 입력하면 성공적으로 asm파일이 추가된다.
이제 컴파일옵션에서 asm파일을 링크해주어야한다.
FILENAME.asm을 클릭하면 Properties가 나온다.
Alt + Enter 입력하면 다음과 같은 윈도우가 나온다.
Excluted From Build -> NO
Item Type -> Microsoft Macro Assembler
이제, 코딩을 시작하면된다.
이번 예시로는 PEB의 주소를 리턴하는 어셈블리 함수를 만들것이다.
컴파일 이후 실행해보면 PEB의 주소가 나온다
'코딩' 카테고리의 다른 글
memcpy, memset 구현 (0) | 2020.07.06 |
---|---|
파일 버퍼링 구현 (C/CPP) (0) | 2019.09.16 |