C300_001
** visual studio optimization 끄기 **
** release 모드로 디버깅 **
** 보안 검사 사용 안함 **
C001_소스코드
1 2 3 4 5 6 7 | #include <stido.h> int main() { printf("오늘부터 나는 C 프로그래머!"); } | cs |
IDA - Layout Graph
IDA - Text View
pseudo code (의사코드)
1 2 3 4 5 6 7 8 | #include <stido.h> int main() { printf(&_Format); } | cs |
IDA에서 Text View 혹은 Layout Graph에서 알고 싶은 변수에 마우스를 올리면 정보를 볼 수 있고
Ctrl+마우스 휠을 내리면 바이너리 데이터를 추가로 볼 수 있다.
String이 저장되어 있는 _Format을 더블 클릭하면 위와 같은 화면이 나오고 드래그 하면 String을 볼 수 있다.
자세히 살펴보면 _Format은 char type이고 data segment에 존재하니 문자열(String)임을 추측 가능하다.
또한 문자열의 마지막 문자는 NULL로 끝나는데 db 0이기 때문에 null이다.
db = data segment - byte
pseudo code(최종의사 코드)
1 2 3 4 5 6 7 8 | #include <stido.h> int main() { printf("오늘부터 나는 C프로그래머!"); } | cs |
'Reversing > ASM to C' 카테고리의 다른 글
ASM to C with IDA - 006 (0) | 2018.05.25 |
---|---|
ASM to C with IDA - 005 (0) | 2018.05.25 |
ASM to C with IDA - 004 (1) | 2018.05.25 |
ASM to C with IDA - 003 (0) | 2018.05.24 |
ASM to C with IDA - 002 (0) | 2018.05.24 |