Write-Up/Reversing

disassembly 실습_190925

NONE_31D 2019. 9. 25. 02:41
190925.c 소스
intel 문법 disass 결과
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    

'Write-Up > Reversing' 카테고리의 다른 글

[disass] structure.c  (0) 2019.10.02
Abexcm3.exe  (0) 2019.03.23
Abexcm1.exe  (0) 2019.03.23