반응형
1부터 100까지 더하고 최종값을 EAX에 저장하는 코드를 작성
반복문(LOOP 코드라인지정), 반복 횟수(CX레지스터) 사용
#include <stdio.h>
int main(){
int sum = 0;
i = 0;
for(int i = 1; i<101; i++){
sum = sum + i;
}
printf("%d", sum);
return 0;
}
MOV EAX, 0
MOV EBX, 0 //0으로 초기화
MOV ECX, 64 //16진수 64는 100과 같음
INC EBX //i++
ADD EAX, EBX //sum = sum + i;
LOOP 0040128F //INC EBX로 돌아감. for 반복문
실행 시작
중간
마지막
16진수 13BA = 5050
반응형
'Study > 윈도우즈 보안과 운영 실습' 카테고리의 다른 글
쉘코드 작성 - calc (0) | 2024.03.19 |
---|---|
쉘코드 작성 - Notepad (0) | 2024.03.19 |
윈도우 실행 파일 구조 분석 (0) | 2024.03.19 |
디셈블러와 디버거 실습 (0) | 2024.03.19 |
sum.exe 분석 (0) | 2024.03.19 |