C300_051
C300_소스코드
1 2 3 4 5 6 7 8 9 10 11 12 13 | #include <stdio.h> #define KOREA "대한민국" #define SUMMER "여름" void main(void) { const char* winter = "겨울"; puts(KOREA); puts(SUMMER); puts(winter); } | cs |
IDA - Layout Graph
\
IDA - Text View
매크로 함수는 전처리 단계에서 처리되기 때문에 디스어셈블 하면 보이지 않는다.
따라서 매크로 함수를 사용하지 않은 winter의 처리 과정만 디스어셈블리단에서 보인다.
pseudo code - 최종 의사 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 | #include <stdio.h> void main(void) { int *winter; winter = offset unk_403034; puts(offset Str); puts(byte_403020); puts(winter); return 0; } | cs |
offset unk_403034 = "겨울"
offset Str = "대한민국"
byte_403020 = "여름"
'Reversing > ASM to C' 카테고리의 다른 글
ASM to C with IDA - 053 (0) | 2018.07.12 |
---|---|
ASM to C with IDA - 052 (strcpy) (0) | 2018.07.11 |
ASM to C with IDA - 050 (0) | 2018.07.11 |
ASM to C with IDA - 049 (0) | 2018.07.10 |
ASM to C with IDA - 048 (0) | 2018.07.10 |