목록보안/리버싱, 어셈블리 (13)
Jiyong's STUDY
[기초] 기본 구조
냉장고에서 물을 꺼내서 마신다는 경우에, C/C++ 코드로 작성한다면 void 물마심(){ bool b0pen = 냉장고문오픈(); if (b0pen){ 물을꺼냄(); 마심(); } } 이런식이 된다. 하지만 이것을 어셈블리어로 표현한다면? _asm{ 냉장고앞으로간다 냉장고문을잡는다 냉장고문을연다 오픈성공: 냉장고안을본다 손을든다 냉장고안에넣는다 물병을잡는다 물병을꺼낸다 뚜껑을연다 물을컵에따른다 컵을손에든다 컵에든것을마신다 이런식이다. 차이점은 간단하게는 "한 가지 동작"을 한다는 것이다. 어셈블리어는 한 번에 한 가지 동작밖에 하지 못한다. 즉 짧은 코드도 어셈블리어로 바꾸면 엄청나게 길어진다는 점이 있는데, 이를 해석하는 방법을 알아야 한다.
보안/리버싱, 어셈블리
2020. 7. 16. 11:21