CS25 - Lab 2
Part 1: Disassembled Code


lab2:     file format elf32-i386

Disassembly of section .init:

080482a4 <_init>:
 80482a4:	55                   	push   %ebp
 80482a5:	89 e5                	mov    %esp,%ebp
 80482a7:	83 ec 14             	sub    $0x14,%esp
 80482aa:	53                   	push   %ebx
 80482ab:	e8 00 00 00 00       	call   80482b0 <_init+0xc>
 80482b0:	5b                   	pop    %ebx
 80482b1:	81 c3 1c 13 00 00    	add    $0x131c,%ebx
 80482b7:	e8 88 00 00 00       	call   8048344 
 80482bc:	e8 07 01 00 00       	call   80483c8 
 80482c1:	e8 8a 01 00 00       	call   8048450 <__do_global_ctors_aux>
 80482c6:	5b                   	pop    %ebx
 80482c7:	c9                   	leave  
 80482c8:	c3                   	ret    
Disassembly of section .plt:

080482cc <.plt>:
 80482cc:	ff 35 d0 95 04 08    	pushl  0x80495d0
 80482d2:	ff 25 d4 95 04 08    	jmp    *0x80495d4
 80482d8:	00 00                	add    %al,(%eax)
 80482da:	00 00                	add    %al,(%eax)
 80482dc:	ff 25 d8 95 04 08    	jmp    *0x80495d8
 80482e2:	68 00 00 00 00       	push   $0x0
 80482e7:	e9 e0 ff ff ff       	jmp    80482cc <_init+0x28>
 80482ec:	ff 25 dc 95 04 08    	jmp    *0x80495dc
 80482f2:	68 08 00 00 00       	push   $0x8
 80482f7:	e9 d0 ff ff ff       	jmp    80482cc <_init+0x28>
 80482fc:	ff 25 e0 95 04 08    	jmp    *0x80495e0
 8048302:	68 10 00 00 00       	push   $0x10
 8048307:	e9 c0 ff ff ff       	jmp    80482cc <_init+0x28>
 804830c:	ff 25 e4 95 04 08    	jmp    *0x80495e4
 8048312:	68 18 00 00 00       	push   $0x18
 8048317:	e9 b0 ff ff ff       	jmp    80482cc <_init+0x28>
Disassembly of section .text:

08048320 <_start>:
 8048320:	31 ed                	xor    %ebp,%ebp
 8048322:	5e                   	pop    %esi
 8048323:	89 e1                	mov    %esp,%ecx
 8048325:	83 e4 f0             	and    $0xfffffff0,%esp
 8048328:	50                   	push   %eax
 8048329:	54                   	push   %esp
 804832a:	52                   	push   %edx
 804832b:	68 80 84 04 08       	push   $0x8048480
 8048330:	68 a4 82 04 08       	push   $0x80482a4
 8048335:	51                   	push   %ecx
 8048336:	56                   	push   %esi
 8048337:	68 00 84 04 08       	push   $0x8048400
 804833c:	e8 bb ff ff ff       	call   80482fc <_init+0x58>
 8048341:	f4                   	hlt    
 8048342:	89 f6                	mov    %esi,%esi

08048344 :
 8048344:	55                   	push   %ebp
 8048345:	89 e5                	mov    %esp,%ebp
 8048347:	83 ec 14             	sub    $0x14,%esp
 804834a:	53                   	push   %ebx
 804834b:	e8 00 00 00 00       	call   8048350 
 8048350:	5b                   	pop    %ebx
 8048351:	81 c3 7c 12 00 00    	add    $0x127c,%ebx
 8048357:	8b 83 1c 00 00 00    	mov    0x1c(%ebx),%eax
 804835d:	85 c0                	test   %eax,%eax
 804835f:	74 02                	je     8048363 
 8048361:	ff d0                	call   *%eax
 8048363:	5b                   	pop    %ebx
 8048364:	c9                   	leave  
 8048365:	c3                   	ret    
 8048366:	89 f6                	mov    %esi,%esi
 8048368:	90                   	nop    
 8048369:	90                   	nop    
 804836a:	90                   	nop    
 804836b:	90                   	nop    
 804836c:	90                   	nop    
 804836d:	90                   	nop    
 804836e:	90                   	nop    
 804836f:	90                   	nop    

08048370 <__do_global_dtors_aux>:
 8048370:	55                   	push   %ebp
 8048371:	89 e5                	mov    %esp,%ebp
 8048373:	83 ec 08             	sub    $0x8,%esp
 8048376:	83 3d e4 94 04 08 00 	cmpl   $0x0,0x80494e4
 804837d:	75 3e                	jne    80483bd <__do_global_dtors_aux+0x4d>
 804837f:	eb 12                	jmp    8048393 <__do_global_dtors_aux+0x23>
 8048381:	a1 e0 94 04 08       	mov    0x80494e0,%eax
 8048386:	8d 50 04             	lea    0x4(%eax),%edx
 8048389:	89 15 e0 94 04 08    	mov    %edx,0x80494e0
 804838f:	8b 00                	mov    (%eax),%eax
 8048391:	ff d0                	call   *%eax
 8048393:	a1 e0 94 04 08       	mov    0x80494e0,%eax
 8048398:	83 38 00             	cmpl   $0x0,(%eax)
 804839b:	75 e4                	jne    8048381 <__do_global_dtors_aux+0x11>
 804839d:	b8 ec 82 04 08       	mov    $0x80482ec,%eax
 80483a2:	85 c0                	test   %eax,%eax
 80483a4:	74 0d                	je     80483b3 <__do_global_dtors_aux+0x43>
 80483a6:	83 c4 f4             	add    $0xfffffff4,%esp
 80483a9:	68 e8 94 04 08       	push   $0x80494e8
 80483ae:	e8 39 ff ff ff       	call   80482ec <_init+0x48>
 80483b3:	c7 05 e4 94 04 08 01 	movl   $0x1,0x80494e4
 80483ba:	00 00 00 
 80483bd:	c9                   	leave  
 80483be:	c3                   	ret    
 80483bf:	90                   	nop    

080483c0 :
 80483c0:	55                   	push   %ebp
 80483c1:	89 e5                	mov    %esp,%ebp
 80483c3:	83 ec 08             	sub    $0x8,%esp
 80483c6:	c9                   	leave  
 80483c7:	c3                   	ret    

080483c8 :
 80483c8:	55                   	push   %ebp
 80483c9:	89 e5                	mov    %esp,%ebp
 80483cb:	83 ec 08             	sub    $0x8,%esp
 80483ce:	b8 dc 82 04 08       	mov    $0x80482dc,%eax
 80483d3:	85 c0                	test   %eax,%eax
 80483d5:	74 12                	je     80483e9 
 80483d7:	83 c4 f8             	add    $0xfffffff8,%esp
 80483da:	68 ec 95 04 08       	push   $0x80495ec
 80483df:	68 e8 94 04 08       	push   $0x80494e8
 80483e4:	e8 f3 fe ff ff       	call   80482dc <_init+0x38>
 80483e9:	c9                   	leave  
 80483ea:	c3                   	ret    
 80483eb:	90                   	nop    

080483ec :
 80483ec:	55                   	push   %ebp
 80483ed:	89 e5                	mov    %esp,%ebp
 80483ef:	83 ec 08             	sub    $0x8,%esp
 80483f2:	c9                   	leave  
 80483f3:	c3                   	ret    
 80483f4:	8d b6 00 00 00 00    	lea    0x0(%esi),%esi
 80483fa:	8d bf 00 00 00 00    	lea    0x0(%edi),%edi

08048400 
: 8048400: 55 push %ebp 8048401: 89 e5 mov %esp,%ebp 8048403: 83 ec 18 sub $0x18,%esp 8048406: c7 45 fc f0 f0 00 00 movl $0xf0f0,0xfffffffc(%ebp) 804840d: 80 7d fc 00 cmpb $0x0,0xfffffffc(%ebp) 8048411: 74 12 je 8048425 8048413: 83 c4 f4 add $0xfffffff4,%esp 8048416: 68 a4 84 04 08 push $0x80484a4 804841b: e8 ec fe ff ff call 804830c <_init+0x68> 8048420: 83 c4 10 add $0x10,%esp 8048423: eb 10 jmp 8048435 8048425: 83 c4 f4 add $0xfffffff4,%esp 8048428: 68 be 84 04 08 push $0x80484be 804842d: e8 da fe ff ff call 804830c <_init+0x68> 8048432: 83 c4 10 add $0x10,%esp 8048435: 31 c0 xor %eax,%eax 8048437: eb 07 jmp 8048440 8048439: 8d b4 26 00 00 00 00 lea 0x0(%esi,1),%esi 8048440: c9 leave 8048441: c3 ret 08048442 : 8048442: 8d b4 26 00 00 00 00 lea 0x0(%esi,1),%esi 8048449: 8d bc 27 00 00 00 00 lea 0x0(%edi,1),%edi 08048450 <__do_global_ctors_aux>: 8048450: 55 push %ebp 8048451: 89 e5 mov %esp,%ebp 8048453: 83 ec 14 sub $0x14,%esp 8048456: 53 push %ebx 8048457: bb bc 95 04 08 mov $0x80495bc,%ebx 804845c: 83 3d bc 95 04 08 ff cmpl $0xffffffff,0x80495bc 8048463: 74 0c je 8048471 <__do_global_ctors_aux+0x21> 8048465: 8b 03 mov (%ebx),%eax 8048467: ff d0 call *%eax 8048469: 83 c3 fc add $0xfffffffc,%ebx 804846c: 83 3b ff cmpl $0xffffffff,(%ebx) 804846f: 75 f4 jne 8048465 <__do_global_ctors_aux+0x15> 8048471: 5b pop %ebx 8048472: c9 leave 8048473: c3 ret 08048474 : 8048474: 55 push %ebp 8048475: 89 e5 mov %esp,%ebp 8048477: 83 ec 08 sub $0x8,%esp 804847a: c9 leave 804847b: c3 ret 804847c: 8d 74 26 00 lea 0x0(%esi,1),%esi Disassembly of section .fini: 08048480 <_fini>: 8048480: 55 push %ebp 8048481: 89 e5 mov %esp,%ebp 8048483: 83 ec 14 sub $0x14,%esp 8048486: 53 push %ebx 8048487: e8 00 00 00 00 call 804848c 804848c: 5b pop %ebx 804848d: 81 c3 40 11 00 00 add $0x1140,%ebx 8048493: 90 nop 8048494: e8 d7 fe ff ff call 8048370 <__do_global_dtors_aux> 8048499: 5b pop %ebx 804849a: c9 leave 804849b: c3 ret