Assembly

Disassembly 함수 호출 및 재귀 분석: C++ → 어셈블리 흐름 정복

C++에서 함수 호출과 재귀 함수는 어셈블리에서 어떻게 나타날까요? 이 포스트에서는 call, ret, ecx, eax, rsp를 통해 함수 호출과 재귀 구조가 어떻게 구현되는지를 디스어셈블리로 명확히 분석합니다. 스택 프레임의 변화를 이해하면 리버싱 실력이 한층 더 올라갑니다.

Disassembly 실전 분석편: if문과 for문 C++ → Assembly 흐름 이해

C++의 조건문과 반복문이 디스어셈블리에서 어떻게 구현되는지 궁금하신가요? 이 포스트에서는 Visual Studio 디버거를 활용해 if문, for문을 실제 실행파일 수준에서 분석하고, cmp, jmp, jge, add 등의 핵심 명령어 패턴을 정확히 짚어드립니다.

Disassembly란? 실행파일을 Assembly로 분석하는 방법

실행파일을 어셈블리 코드로 분석하고 싶다면 이 포스트를 참고하세요. Disassembly 기본 개념, C++ → Assembly 흐름, Visual Studio로 디스어셈블리 실습, 스택/레지스터 동작 구조까지 예제를 통해 쉽게 정리합니다.

Assembly 기본 명령어 - Windows NASM 실습 가이드

NASM 기반 어셈블리를 처음 접하는 사용자라면, 가장 먼저 익혀야 할 것은 기본 명령어의 역할과 사용법입니다. 이 글에서는 mov, add, sub, cmp, jmp, push, pop, call, ret 같은 필수 명령어들을 Windows 64bit 기준 실습 코드와 함께 정리...

Assembly 실습 환경 설정 - SASM 기반 NASM 디버깅 입문

Windows 환경에서 NASM 어셈블리를 실습하려면 가장 쉬운 도구는 SASM입니다. 이 글에서는 SASM 설치 → Hello, world 예제 → 디버깅 방법 → 메모리/레지스터 분석까지 어셈블리 학습의 첫 실습 환경을 완벽하게 세팅하는 방법을 정리합니다.