|
|
0x0804835c <main+0>: push ebp
0x0804835d <main+1>: mov ebp,esp ;함수 프롤로그
0x0804835f <main+3>: push edi
0x08048360 <main+4>: push esi
0x08048361 <main+5>: sub esp,0x20
0x08048364 <main+8>: and esp,0xfffffff0
0x08048367 <main+11>: mov eax,0x0
0x0804836c <main+16>: sub esp,eax
0x0804836e <main+18>: lea edi,[ebp-24] ;edi의 주소값을 ebp-24에 저장
0x08048371 <main+21>: mov esi,0x804845c
0x08048376 <main+26>: cld
0x08048377 <main+27>: mov ecx,0xe
0x0804837c <main+32>: repz movs es:[edi],ds:[esi]
0x0804837e <main+34>: sub esp,0xc
0x08048381 <main+37>: push 0xe
0x08048383 <main+39>: call 0x804827c <malloc> ;ptr 변수를 위한 동적할당 진행
0x08048388 <main+44>: add esp,0x10 ;"Hello, World" 문자열을 위한 메모리 할당
0x0804838b <main+47>: mov DWORD PTR [ebp-28],eax
0x0804838e <main+50>: sub esp,0x8
0x08048391 <main+53>: lea eax,[ebp-24]
0x08048394 <main+56>: push eax
0x08048395 <main+57>: push 0x804846a
0x0804839a <main+62>: call 0x804829c <printf> ;printf 함수 호출
0x0804839f <main+67>: add esp,0x10
0x080483a2 <main+70>: mov eax,ds:0x8049480
0x080483a7 <main+75>: lea esp,[ebp-8] ; main 내에 선언된 string과 ptr 변수 메모리 해제
0x080483aa <main+78>: pop esi
0x080483ab <main+79>: pop edi
0x080483ac <main+80>: leave ;함수 에필로그1
0x080483ad <main+81>: ret ;함수 에필로그2
0x080483ae <main+82>: nop
0x080483af <main+83>: nop