-
Notifications
You must be signed in to change notification settings - Fork 11
/
bufbomb_-d.s
1706 lines (1629 loc) · 81.3 KB
/
bufbomb_-d.s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
bufbomb: 文件格式 elf32-i386
Disassembly of section .init:
0804873c <_init>:
804873c: 53 push %ebx
804873d: 83 ec 08 sub $0x8,%esp
8048740: e8 6b 02 00 00 call 80489b0 <__x86.get_pc_thunk.bx>
8048745: 81 c3 bb 38 00 00 add $0x38bb,%ebx
804874b: 8b 83 fc ff ff ff mov -0x4(%ebx),%eax
8048751: 85 c0 test %eax,%eax
8048753: 74 05 je 804875a <_init+0x1e>
8048755: e8 e6 00 00 00 call 8048840 <__gmon_start__@plt>
804875a: 83 c4 08 add $0x8,%esp
804875d: 5b pop %ebx
804875e: c3 ret
Disassembly of section .plt:
08048760 <read@plt-0x10>:
8048760: ff 35 04 c0 04 08 pushl 0x804c004
8048766: ff 25 08 c0 04 08 jmp *0x804c008
804876c: 00 00 add %al,(%eax)
...
08048770 <read@plt>:
8048770: ff 25 0c c0 04 08 jmp *0x804c00c
8048776: 68 00 00 00 00 push $0x0
804877b: e9 e0 ff ff ff jmp 8048760 <_init+0x24>
08048780 <srandom@plt>:
8048780: ff 25 10 c0 04 08 jmp *0x804c010
8048786: 68 08 00 00 00 push $0x8
804878b: e9 d0 ff ff ff jmp 8048760 <_init+0x24>
08048790 <printf@plt>:
8048790: ff 25 14 c0 04 08 jmp *0x804c014
8048796: 68 10 00 00 00 push $0x10
804879b: e9 c0 ff ff ff jmp 8048760 <_init+0x24>
080487a0 <memcpy@plt>:
80487a0: ff 25 18 c0 04 08 jmp *0x804c018
80487a6: 68 18 00 00 00 push $0x18
80487ab: e9 b0 ff ff ff jmp 8048760 <_init+0x24>
080487b0 <signal@plt>:
80487b0: ff 25 1c c0 04 08 jmp *0x804c01c
80487b6: 68 20 00 00 00 push $0x20
80487bb: e9 a0 ff ff ff jmp 8048760 <_init+0x24>
080487c0 <alarm@plt>:
80487c0: ff 25 20 c0 04 08 jmp *0x804c020
80487c6: 68 28 00 00 00 push $0x28
80487cb: e9 90 ff ff ff jmp 8048760 <_init+0x24>
080487d0 <_IO_getc@plt>:
80487d0: ff 25 24 c0 04 08 jmp *0x804c024
80487d6: 68 30 00 00 00 push $0x30
80487db: e9 80 ff ff ff jmp 8048760 <_init+0x24>
080487e0 <fwrite@plt>:
80487e0: ff 25 28 c0 04 08 jmp *0x804c028
80487e6: 68 38 00 00 00 push $0x38
80487eb: e9 70 ff ff ff jmp 8048760 <_init+0x24>
080487f0 <bcopy@plt>:
80487f0: ff 25 2c c0 04 08 jmp *0x804c02c
80487f6: 68 40 00 00 00 push $0x40
80487fb: e9 60 ff ff ff jmp 8048760 <_init+0x24>
08048800 <strcpy@plt>:
8048800: ff 25 30 c0 04 08 jmp *0x804c030
8048806: 68 48 00 00 00 push $0x48
804880b: e9 50 ff ff ff jmp 8048760 <_init+0x24>
08048810 <getpid@plt>:
8048810: ff 25 34 c0 04 08 jmp *0x804c034
8048816: 68 50 00 00 00 push $0x50
804881b: e9 40 ff ff ff jmp 8048760 <_init+0x24>
08048820 <gethostname@plt>:
8048820: ff 25 38 c0 04 08 jmp *0x804c038
8048826: 68 58 00 00 00 push $0x58
804882b: e9 30 ff ff ff jmp 8048760 <_init+0x24>
08048830 <puts@plt>:
8048830: ff 25 3c c0 04 08 jmp *0x804c03c
8048836: 68 60 00 00 00 push $0x60
804883b: e9 20 ff ff ff jmp 8048760 <_init+0x24>
08048840 <__gmon_start__@plt>:
8048840: ff 25 40 c0 04 08 jmp *0x804c040
8048846: 68 68 00 00 00 push $0x68
804884b: e9 10 ff ff ff jmp 8048760 <_init+0x24>
08048850 <exit@plt>:
8048850: ff 25 44 c0 04 08 jmp *0x804c044
8048856: 68 70 00 00 00 push $0x70
804885b: e9 00 ff ff ff jmp 8048760 <_init+0x24>
08048860 <srand@plt>:
8048860: ff 25 48 c0 04 08 jmp *0x804c048
8048866: 68 78 00 00 00 push $0x78
804886b: e9 f0 fe ff ff jmp 8048760 <_init+0x24>
08048870 <mmap@plt>:
8048870: ff 25 4c c0 04 08 jmp *0x804c04c
8048876: 68 80 00 00 00 push $0x80
804887b: e9 e0 fe ff ff jmp 8048760 <_init+0x24>
08048880 <__libc_start_main@plt>:
8048880: ff 25 50 c0 04 08 jmp *0x804c050
8048886: 68 88 00 00 00 push $0x88
804888b: e9 d0 fe ff ff jmp 8048760 <_init+0x24>
08048890 <write@plt>:
8048890: ff 25 54 c0 04 08 jmp *0x804c054
8048896: 68 90 00 00 00 push $0x90
804889b: e9 c0 fe ff ff jmp 8048760 <_init+0x24>
080488a0 <getopt@plt>:
80488a0: ff 25 58 c0 04 08 jmp *0x804c058
80488a6: 68 98 00 00 00 push $0x98
80488ab: e9 b0 fe ff ff jmp 8048760 <_init+0x24>
080488b0 <__isoc99_sscanf@plt>:
80488b0: ff 25 5c c0 04 08 jmp *0x804c05c
80488b6: 68 a0 00 00 00 push $0xa0
80488bb: e9 a0 fe ff ff jmp 8048760 <_init+0x24>
080488c0 <memset@plt>:
80488c0: ff 25 60 c0 04 08 jmp *0x804c060
80488c6: 68 a8 00 00 00 push $0xa8
80488cb: e9 90 fe ff ff jmp 8048760 <_init+0x24>
080488d0 <__strdup@plt>:
80488d0: ff 25 64 c0 04 08 jmp *0x804c064
80488d6: 68 b0 00 00 00 push $0xb0
80488db: e9 80 fe ff ff jmp 8048760 <_init+0x24>
080488e0 <__errno_location@plt>:
80488e0: ff 25 68 c0 04 08 jmp *0x804c068
80488e6: 68 b8 00 00 00 push $0xb8
80488eb: e9 70 fe ff ff jmp 8048760 <_init+0x24>
080488f0 <rand@plt>:
80488f0: ff 25 6c c0 04 08 jmp *0x804c06c
80488f6: 68 c0 00 00 00 push $0xc0
80488fb: e9 60 fe ff ff jmp 8048760 <_init+0x24>
08048900 <munmap@plt>:
8048900: ff 25 70 c0 04 08 jmp *0x804c070
8048906: 68 c8 00 00 00 push $0xc8
804890b: e9 50 fe ff ff jmp 8048760 <_init+0x24>
08048910 <sprintf@plt>:
8048910: ff 25 74 c0 04 08 jmp *0x804c074
8048916: 68 d0 00 00 00 push $0xd0
804891b: e9 40 fe ff ff jmp 8048760 <_init+0x24>
08048920 <socket@plt>:
8048920: ff 25 78 c0 04 08 jmp *0x804c078
8048926: 68 d8 00 00 00 push $0xd8
804892b: e9 30 fe ff ff jmp 8048760 <_init+0x24>
08048930 <random@plt>:
8048930: ff 25 7c c0 04 08 jmp *0x804c07c
8048936: 68 e0 00 00 00 push $0xe0
804893b: e9 20 fe ff ff jmp 8048760 <_init+0x24>
08048940 <gethostbyname@plt>:
8048940: ff 25 80 c0 04 08 jmp *0x804c080
8048946: 68 e8 00 00 00 push $0xe8
804894b: e9 10 fe ff ff jmp 8048760 <_init+0x24>
08048950 <connect@plt>:
8048950: ff 25 84 c0 04 08 jmp *0x804c084
8048956: 68 f0 00 00 00 push $0xf0
804895b: e9 00 fe ff ff jmp 8048760 <_init+0x24>
08048960 <close@plt>:
8048960: ff 25 88 c0 04 08 jmp *0x804c088
8048966: 68 f8 00 00 00 push $0xf8
804896b: e9 f0 fd ff ff jmp 8048760 <_init+0x24>
08048970 <calloc@plt>:
8048970: ff 25 8c c0 04 08 jmp *0x804c08c
8048976: 68 00 01 00 00 push $0x100
804897b: e9 e0 fd ff ff jmp 8048760 <_init+0x24>
Disassembly of section .text:
08048980 <_start>:
8048980: 31 ed xor %ebp,%ebp
8048982: 5e pop %esi
8048983: 89 e1 mov %esp,%ecx
8048985: 83 e4 f0 and $0xfffffff0,%esp
8048988: 50 push %eax
8048989: 54 push %esp
804898a: 52 push %edx
804898b: 68 b0 9e 04 08 push $0x8049eb0
8048990: 68 40 9e 04 08 push $0x8049e40
8048995: 51 push %ecx
8048996: 56 push %esi
8048997: 68 da 8e 04 08 push $0x8048eda
804899c: e8 df fe ff ff call 8048880 <__libc_start_main@plt>
80489a1: f4 hlt
80489a2: 66 90 xchg %ax,%ax
80489a4: 66 90 xchg %ax,%ax
80489a6: 66 90 xchg %ax,%ax
80489a8: 66 90 xchg %ax,%ax
80489aa: 66 90 xchg %ax,%ax
80489ac: 66 90 xchg %ax,%ax
80489ae: 66 90 xchg %ax,%ax
080489b0 <__x86.get_pc_thunk.bx>:
80489b0: 8b 1c 24 mov (%esp),%ebx
80489b3: c3 ret
80489b4: 66 90 xchg %ax,%ax
80489b6: 66 90 xchg %ax,%ax
80489b8: 66 90 xchg %ax,%ax
80489ba: 66 90 xchg %ax,%ax
80489bc: 66 90 xchg %ax,%ax
80489be: 66 90 xchg %ax,%ax
080489c0 <deregister_tm_clones>:
80489c0: b8 e3 d0 04 08 mov $0x804d0e3,%eax
80489c5: 2d e0 d0 04 08 sub $0x804d0e0,%eax
80489ca: 83 f8 06 cmp $0x6,%eax
80489cd: 77 01 ja 80489d0 <deregister_tm_clones+0x10>
80489cf: c3 ret
80489d0: b8 00 00 00 00 mov $0x0,%eax
80489d5: 85 c0 test %eax,%eax
80489d7: 74 f6 je 80489cf <deregister_tm_clones+0xf>
80489d9: 55 push %ebp
80489da: 89 e5 mov %esp,%ebp
80489dc: 83 ec 18 sub $0x18,%esp
80489df: c7 04 24 e0 d0 04 08 movl $0x804d0e0,(%esp)
80489e6: ff d0 call *%eax
80489e8: c9 leave
80489e9: c3 ret
80489ea: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
080489f0 <register_tm_clones>:
80489f0: b8 e0 d0 04 08 mov $0x804d0e0,%eax
80489f5: 2d e0 d0 04 08 sub $0x804d0e0,%eax
80489fa: c1 f8 02 sar $0x2,%eax
80489fd: 89 c2 mov %eax,%edx
80489ff: c1 ea 1f shr $0x1f,%edx
8048a02: 01 d0 add %edx,%eax
8048a04: d1 f8 sar %eax
8048a06: 75 01 jne 8048a09 <register_tm_clones+0x19>
8048a08: c3 ret
8048a09: ba 00 00 00 00 mov $0x0,%edx
8048a0e: 85 d2 test %edx,%edx
8048a10: 74 f6 je 8048a08 <register_tm_clones+0x18>
8048a12: 55 push %ebp
8048a13: 89 e5 mov %esp,%ebp
8048a15: 83 ec 18 sub $0x18,%esp
8048a18: 89 44 24 04 mov %eax,0x4(%esp)
8048a1c: c7 04 24 e0 d0 04 08 movl $0x804d0e0,(%esp)
8048a23: ff d2 call *%edx
8048a25: c9 leave
8048a26: c3 ret
8048a27: 89 f6 mov %esi,%esi
8048a29: 8d bc 27 00 00 00 00 lea 0x0(%edi,%eiz,1),%edi
08048a30 <__do_global_dtors_aux>:
8048a30: 80 3d ec d0 04 08 00 cmpb $0x0,0x804d0ec
8048a37: 75 13 jne 8048a4c <__do_global_dtors_aux+0x1c>
8048a39: 55 push %ebp
8048a3a: 89 e5 mov %esp,%ebp
8048a3c: 83 ec 08 sub $0x8,%esp
8048a3f: e8 7c ff ff ff call 80489c0 <deregister_tm_clones>
8048a44: c6 05 ec d0 04 08 01 movb $0x1,0x804d0ec
8048a4b: c9 leave
8048a4c: f3 c3 repz ret
8048a4e: 66 90 xchg %ax,%ax
08048a50 <frame_dummy>:
8048a50: a1 10 bf 04 08 mov 0x804bf10,%eax
8048a55: 85 c0 test %eax,%eax
8048a57: 74 1f je 8048a78 <frame_dummy+0x28>
8048a59: b8 00 00 00 00 mov $0x0,%eax
8048a5e: 85 c0 test %eax,%eax
8048a60: 74 16 je 8048a78 <frame_dummy+0x28>
8048a62: 55 push %ebp
8048a63: 89 e5 mov %esp,%ebp
8048a65: 83 ec 18 sub $0x18,%esp
8048a68: c7 04 24 10 bf 04 08 movl $0x804bf10,(%esp)
8048a6f: ff d0 call *%eax
8048a71: c9 leave
8048a72: e9 79 ff ff ff jmp 80489f0 <register_tm_clones>
8048a77: 90 nop
8048a78: e9 73 ff ff ff jmp 80489f0 <register_tm_clones>
8048a7d: 66 90 xchg %ax,%ax
8048a7f: 90 nop
08048a80 <bushandler>:
8048a80: 55 push %ebp
8048a81: 89 e5 mov %esp,%ebp
8048a83: 83 ec 18 sub $0x18,%esp
8048a86: c7 04 24 d4 9e 04 08 movl $0x8049ed4,(%esp)
8048a8d: e8 9e fd ff ff call 8048830 <puts@plt>
8048a92: c7 04 24 b4 a0 04 08 movl $0x804a0b4,(%esp)
8048a99: e8 92 fd ff ff call 8048830 <puts@plt>
8048a9e: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048aa5: e8 a6 fd ff ff call 8048850 <exit@plt>
08048aaa <seghandler>:
8048aaa: 55 push %ebp
8048aab: 89 e5 mov %esp,%ebp
8048aad: 83 ec 18 sub $0x18,%esp
8048ab0: c7 04 24 f4 9e 04 08 movl $0x8049ef4,(%esp)
8048ab7: e8 74 fd ff ff call 8048830 <puts@plt>
8048abc: c7 04 24 b4 a0 04 08 movl $0x804a0b4,(%esp)
8048ac3: e8 68 fd ff ff call 8048830 <puts@plt>
8048ac8: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048acf: e8 7c fd ff ff call 8048850 <exit@plt>
08048ad4 <illegalhandler>:
8048ad4: 55 push %ebp
8048ad5: 89 e5 mov %esp,%ebp
8048ad7: 83 ec 18 sub $0x18,%esp
8048ada: c7 04 24 1c 9f 04 08 movl $0x8049f1c,(%esp)
8048ae1: e8 4a fd ff ff call 8048830 <puts@plt>
8048ae6: c7 04 24 b4 a0 04 08 movl $0x804a0b4,(%esp)
8048aed: e8 3e fd ff ff call 8048830 <puts@plt>
8048af2: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048af9: e8 52 fd ff ff call 8048850 <exit@plt>
08048afe <usage>:
8048afe: 55 push %ebp
8048aff: 89 e5 mov %esp,%ebp
8048b01: 83 ec 18 sub $0x18,%esp
8048b04: 89 44 24 04 mov %eax,0x4(%esp)
8048b08: c7 04 24 ca a0 04 08 movl $0x804a0ca,(%esp)
8048b0f: e8 7c fc ff ff call 8048790 <printf@plt>
8048b14: c7 04 24 e8 a0 04 08 movl $0x804a0e8,(%esp)
8048b1b: e8 10 fd ff ff call 8048830 <puts@plt>
8048b20: c7 04 24 fe a0 04 08 movl $0x804a0fe,(%esp)
8048b27: e8 04 fd ff ff call 8048830 <puts@plt>
8048b2c: c7 04 24 48 9f 04 08 movl $0x8049f48,(%esp)
8048b33: e8 f8 fc ff ff call 8048830 <puts@plt>
8048b38: c7 04 24 84 9f 04 08 movl $0x8049f84,(%esp)
8048b3f: e8 ec fc ff ff call 8048830 <puts@plt>
8048b44: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048b4b: e8 00 fd ff ff call 8048850 <exit@plt>
08048b50 <smoke>:
8048b50: 55 push %ebp
8048b51: 89 e5 mov %esp,%ebp
8048b53: 83 ec 18 sub $0x18,%esp
8048b56: c7 04 24 17 a1 04 08 movl $0x804a117,(%esp)
8048b5d: e8 ce fc ff ff call 8048830 <puts@plt>
8048b62: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048b69: e8 f4 05 00 00 call 8049162 <validate>
8048b6e: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048b75: e8 d6 fc ff ff call 8048850 <exit@plt>
08048b7a <fizz>:
8048b7a: 55 push %ebp
8048b7b: 89 e5 mov %esp,%ebp
8048b7d: 83 ec 18 sub $0x18,%esp
8048b80: 8b 45 08 mov 0x8(%ebp),%eax
8048b83: 3b 05 08 d1 04 08 cmp 0x804d108,%eax
8048b89: 75 1e jne 8048ba9 <fizz+0x2f>
8048b8b: 89 44 24 04 mov %eax,0x4(%esp)
8048b8f: c7 04 24 32 a1 04 08 movl $0x804a132,(%esp)
8048b96: e8 f5 fb ff ff call 8048790 <printf@plt>
8048b9b: c7 04 24 01 00 00 00 movl $0x1,(%esp)
8048ba2: e8 bb 05 00 00 call 8049162 <validate>
8048ba7: eb 10 jmp 8048bb9 <fizz+0x3f>
8048ba9: 89 44 24 04 mov %eax,0x4(%esp)
8048bad: c7 04 24 ac 9f 04 08 movl $0x8049fac,(%esp)
8048bb4: e8 d7 fb ff ff call 8048790 <printf@plt>
8048bb9: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048bc0: e8 8b fc ff ff call 8048850 <exit@plt>
08048bc5 <bang>:
8048bc5: 55 push %ebp
8048bc6: 89 e5 mov %esp,%ebp
8048bc8: 83 ec 18 sub $0x18,%esp
8048bcb: a1 00 d1 04 08 mov 0x804d100,%eax
8048bd0: 3b 05 08 d1 04 08 cmp 0x804d108,%eax
8048bd6: 75 1e jne 8048bf6 <bang+0x31>
8048bd8: 89 44 24 04 mov %eax,0x4(%esp)
8048bdc: c7 04 24 cc 9f 04 08 movl $0x8049fcc,(%esp)
8048be3: e8 a8 fb ff ff call 8048790 <printf@plt>
8048be8: c7 04 24 02 00 00 00 movl $0x2,(%esp)
8048bef: e8 6e 05 00 00 call 8049162 <validate>
8048bf4: eb 10 jmp 8048c06 <bang+0x41>
8048bf6: 89 44 24 04 mov %eax,0x4(%esp)
8048bfa: c7 04 24 50 a1 04 08 movl $0x804a150,(%esp)
8048c01: e8 8a fb ff ff call 8048790 <printf@plt>
8048c06: c7 04 24 00 00 00 00 movl $0x0,(%esp)
8048c0d: e8 3e fc ff ff call 8048850 <exit@plt>
08048c12 <Gets>:
8048c12: 55 push %ebp
8048c13: 89 e5 mov %esp,%ebp
8048c15: 57 push %edi
8048c16: 56 push %esi
8048c17: 53 push %ebx
8048c18: 83 ec 1c sub $0x1c,%esp
8048c1b: 8b 75 08 mov 0x8(%ebp),%esi
8048c1e: c7 05 fc d0 04 08 00 movl $0x0,0x804d0fc
8048c25: 00 00 00
8048c28: 89 f3 mov %esi,%ebx
8048c2a: eb 49 jmp 8048c75 <Gets+0x63>
8048c2c: 83 c3 01 add $0x1,%ebx
8048c2f: 88 53 ff mov %dl,-0x1(%ebx)
8048c32: a1 fc d0 04 08 mov 0x804d0fc,%eax
8048c37: 3d ff 03 00 00 cmp $0x3ff,%eax
8048c3c: 7f 37 jg 8048c75 <Gets+0x63>
8048c3e: 8d 3c 40 lea (%eax,%eax,2),%edi
8048c41: 89 d1 mov %edx,%ecx
8048c43: c0 e9 04 shr $0x4,%cl
8048c46: 0f be c9 movsbl %cl,%ecx
8048c49: 0f b6 89 2c a2 04 08 movzbl 0x804a22c(%ecx),%ecx
8048c50: 88 8f 40 d1 04 08 mov %cl,0x804d140(%edi)
8048c56: 83 e2 0f and $0xf,%edx
8048c59: 0f b6 92 2c a2 04 08 movzbl 0x804a22c(%edx),%edx
8048c60: 88 97 41 d1 04 08 mov %dl,0x804d141(%edi)
8048c66: c6 87 42 d1 04 08 20 movb $0x20,0x804d142(%edi)
8048c6d: 83 c0 01 add $0x1,%eax
8048c70: a3 fc d0 04 08 mov %eax,0x804d0fc
8048c75: a1 0c d1 04 08 mov 0x804d10c,%eax
8048c7a: 89 04 24 mov %eax,(%esp)
8048c7d: e8 4e fb ff ff call 80487d0 <_IO_getc@plt>
8048c82: 89 c2 mov %eax,%edx
8048c84: 83 f8 ff cmp $0xffffffff,%eax
8048c87: 74 05 je 8048c8e <Gets+0x7c>
8048c89: 83 f8 0a cmp $0xa,%eax
8048c8c: 75 9e jne 8048c2c <Gets+0x1a>
8048c8e: c6 03 00 movb $0x0,(%ebx)
8048c91: a1 fc d0 04 08 mov 0x804d0fc,%eax
8048c96: c6 84 40 40 d1 04 08 movb $0x0,0x804d140(%eax,%eax,2)
8048c9d: 00
8048c9e: 89 f0 mov %esi,%eax
8048ca0: 83 c4 1c add $0x1c,%esp
8048ca3: 5b pop %ebx
8048ca4: 5e pop %esi
8048ca5: 5f pop %edi
8048ca6: 5d pop %ebp
8048ca7: c3 ret
08048ca8 <uniqueval>:
8048ca8: 55 push %ebp
8048ca9: 89 e5 mov %esp,%ebp
8048cab: 83 ec 18 sub $0x18,%esp
8048cae: e8 5d fb ff ff call 8048810 <getpid@plt>
8048cb3: 89 04 24 mov %eax,(%esp)
8048cb6: e8 c5 fa ff ff call 8048780 <srandom@plt>
8048cbb: e8 70 fc ff ff call 8048930 <random@plt>
8048cc0: c9 leave
8048cc1: c3 ret
08048cc2 <test>:
8048cc2: 55 push %ebp
8048cc3: 89 e5 mov %esp,%ebp
8048cc5: 53 push %ebx
8048cc6: 83 ec 24 sub $0x24,%esp
8048cc9: e8 da ff ff ff call 8048ca8 <uniqueval>
8048cce: 89 45 f4 mov %eax,-0xc(%ebp)
8048cd1: e8 c7 03 00 00 call 804909d <getbuf>
8048cd6: 89 c3 mov %eax,%ebx
8048cd8: e8 cb ff ff ff call 8048ca8 <uniqueval>
8048cdd: 8b 55 f4 mov -0xc(%ebp),%edx
8048ce0: 39 d0 cmp %edx,%eax
8048ce2: 74 0e je 8048cf2 <test+0x30>
8048ce4: c7 04 24 f4 9f 04 08 movl $0x8049ff4,(%esp)
8048ceb: e8 40 fb ff ff call 8048830 <puts@plt>
8048cf0: eb 36 jmp 8048d28 <test+0x66>
8048cf2: 3b 1d 08 d1 04 08 cmp 0x804d108,%ebx
8048cf8: 75 1e jne 8048d18 <test+0x56>
8048cfa: 89 5c 24 04 mov %ebx,0x4(%esp)
8048cfe: c7 04 24 6e a1 04 08 movl $0x804a16e,(%esp)
8048d05: e8 86 fa ff ff call 8048790 <printf@plt>
8048d0a: c7 04 24 03 00 00 00 movl $0x3,(%esp)
8048d11: e8 4c 04 00 00 call 8049162 <validate>
8048d16: eb 10 jmp 8048d28 <test+0x66>
8048d18: 89 5c 24 04 mov %ebx,0x4(%esp)
8048d1c: c7 04 24 8b a1 04 08 movl $0x804a18b,(%esp)
8048d23: e8 68 fa ff ff call 8048790 <printf@plt>
8048d28: 83 c4 24 add $0x24,%esp
8048d2b: 5b pop %ebx
8048d2c: 5d pop %ebp
8048d2d: c3 ret
08048d2e <testn>:
8048d2e: 55 push %ebp
8048d2f: 89 e5 mov %esp,%ebp
8048d31: 53 push %ebx
8048d32: 83 ec 24 sub $0x24,%esp
8048d35: e8 6e ff ff ff call 8048ca8 <uniqueval>
8048d3a: 89 45 f4 mov %eax,-0xc(%ebp)
8048d3d: e8 73 03 00 00 call 80490b5 <getbufn>
8048d42: 89 c3 mov %eax,%ebx
8048d44: e8 5f ff ff ff call 8048ca8 <uniqueval>
8048d49: 8b 55 f4 mov -0xc(%ebp),%edx
8048d4c: 39 d0 cmp %edx,%eax
8048d4e: 74 0e je 8048d5e <testn+0x30>
8048d50: c7 04 24 f4 9f 04 08 movl $0x8049ff4,(%esp)
8048d57: e8 d4 fa ff ff call 8048830 <puts@plt>
8048d5c: eb 36 jmp 8048d94 <testn+0x66>
8048d5e: 3b 1d 08 d1 04 08 cmp 0x804d108,%ebx
8048d64: 75 1e jne 8048d84 <testn+0x56>
8048d66: 89 5c 24 04 mov %ebx,0x4(%esp)
8048d6a: c7 04 24 20 a0 04 08 movl $0x804a020,(%esp)
8048d71: e8 1a fa ff ff call 8048790 <printf@plt>
8048d76: c7 04 24 04 00 00 00 movl $0x4,(%esp)
8048d7d: e8 e0 03 00 00 call 8049162 <validate>
8048d82: eb 10 jmp 8048d94 <testn+0x66>
8048d84: 89 5c 24 04 mov %ebx,0x4(%esp)
8048d88: c7 04 24 a6 a1 04 08 movl $0x804a1a6,(%esp)
8048d8f: e8 fc f9 ff ff call 8048790 <printf@plt>
8048d94: 83 c4 24 add $0x24,%esp
8048d97: 5b pop %ebx
8048d98: 5d pop %ebp
8048d99: c3 ret
08048d9a <launch>:
8048d9a: 55 push %ebp
8048d9b: 89 e5 mov %esp,%ebp
8048d9d: 53 push %ebx
8048d9e: 83 ec 54 sub $0x54,%esp
8048da1: 89 c3 mov %eax,%ebx
8048da3: 8d 4d b8 lea -0x48(%ebp),%ecx
8048da6: 81 e1 f0 3f 00 00 and $0x3ff0,%ecx
8048dac: 8d 44 11 1e lea 0x1e(%ecx,%edx,1),%eax
8048db0: 83 e0 f0 and $0xfffffff0,%eax
8048db3: 29 c4 sub %eax,%esp
8048db5: 8d 44 24 1b lea 0x1b(%esp),%eax
8048db9: 83 e0 f0 and $0xfffffff0,%eax
8048dbc: 89 4c 24 08 mov %ecx,0x8(%esp)
8048dc0: c7 44 24 04 f4 00 00 movl $0xf4,0x4(%esp)
8048dc7: 00
8048dc8: 89 04 24 mov %eax,(%esp)
8048dcb: e8 f0 fa ff ff call 80488c0 <memset@plt>
8048dd0: c7 04 24 c2 a1 04 08 movl $0x804a1c2,(%esp)
8048dd7: e8 b4 f9 ff ff call 8048790 <printf@plt>
8048ddc: 85 db test %ebx,%ebx
8048dde: 74 07 je 8048de7 <launch+0x4d>
8048de0: e8 49 ff ff ff call 8048d2e <testn>
8048de5: eb 05 jmp 8048dec <launch+0x52>
8048de7: e8 d6 fe ff ff call 8048cc2 <test>
8048dec: 83 3d 04 d1 04 08 00 cmpl $0x0,0x804d104
8048df3: 75 16 jne 8048e0b <launch+0x71>
8048df5: c7 04 24 b4 a0 04 08 movl $0x804a0b4,(%esp)
8048dfc: e8 2f fa ff ff call 8048830 <puts@plt>
8048e01: c7 05 04 d1 04 08 00 movl $0x0,0x804d104
8048e08: 00 00 00
8048e0b: 8b 5d fc mov -0x4(%ebp),%ebx
8048e0e: c9 leave
8048e0f: c3 ret
08048e10 <launcher>:
8048e10: 55 push %ebp
8048e11: 89 e5 mov %esp,%ebp
8048e13: 83 ec 28 sub $0x28,%esp
8048e16: 8b 45 08 mov 0x8(%ebp),%eax
8048e19: a3 f8 d0 04 08 mov %eax,0x804d0f8
8048e1e: 8b 45 0c mov 0xc(%ebp),%eax
8048e21: a3 f4 d0 04 08 mov %eax,0x804d0f4
8048e26: c7 44 24 14 00 00 00 movl $0x0,0x14(%esp)
8048e2d: 00
8048e2e: c7 44 24 10 00 00 00 movl $0x0,0x10(%esp)
8048e35: 00
8048e36: c7 44 24 0c 32 01 00 movl $0x132,0xc(%esp)
8048e3d: 00
8048e3e: c7 44 24 08 07 00 00 movl $0x7,0x8(%esp)
8048e45: 00
8048e46: c7 44 24 04 00 00 10 movl $0x100000,0x4(%esp)
8048e4d: 00
8048e4e: c7 04 24 00 60 58 55 movl $0x55586000,(%esp)
8048e55: e8 16 fa ff ff call 8048870 <mmap@plt>
8048e5a: 3d 00 60 58 55 cmp $0x55586000,%eax
8048e5f: 74 31 je 8048e92 <launcher+0x82>
8048e61: a1 e0 d0 04 08 mov 0x804d0e0,%eax
8048e66: 89 44 24 0c mov %eax,0xc(%esp)
8048e6a: c7 44 24 08 47 00 00 movl $0x47,0x8(%esp)
8048e71: 00
8048e72: c7 44 24 04 01 00 00 movl $0x1,0x4(%esp)
8048e79: 00
8048e7a: c7 04 24 40 a0 04 08 movl $0x804a040,(%esp)
8048e81: e8 5a f9 ff ff call 80487e0 <fwrite@plt>
8048e86: c7 04 24 01 00 00 00 movl $0x1,(%esp)
8048e8d: e8 be f9 ff ff call 8048850 <exit@plt>
8048e92: c7 05 20 d1 04 08 f8 movl $0x55685ff8,0x804d120
8048e99: 5f 68 55
8048e9c: ba f8 5f 68 55 mov $0x55685ff8,%edx
8048ea1: 89 e0 mov %esp,%eax
8048ea3: 89 d4 mov %edx,%esp
8048ea5: 89 c2 mov %eax,%edx
8048ea7: 89 15 f0 d0 04 08 mov %edx,0x804d0f0
8048ead: 8b 15 f4 d0 04 08 mov 0x804d0f4,%edx
8048eb3: a1 f8 d0 04 08 mov 0x804d0f8,%eax
8048eb8: e8 dd fe ff ff call 8048d9a <launch>
8048ebd: a1 f0 d0 04 08 mov 0x804d0f0,%eax
8048ec2: 89 c4 mov %eax,%esp
8048ec4: c7 44 24 04 00 00 10 movl $0x100000,0x4(%esp)
8048ecb: 00
8048ecc: c7 04 24 00 60 58 55 movl $0x55586000,(%esp)
8048ed3: e8 28 fa ff ff call 8048900 <munmap@plt>
8048ed8: c9 leave
8048ed9: c3 ret
08048eda <main>:
8048eda: 55 push %ebp
8048edb: 89 e5 mov %esp,%ebp
8048edd: 57 push %edi
8048ede: 56 push %esi
8048edf: 53 push %ebx
8048ee0: 83 e4 f0 and $0xfffffff0,%esp
8048ee3: 83 ec 20 sub $0x20,%esp
8048ee6: 8b 75 08 mov 0x8(%ebp),%esi
8048ee9: 8b 5d 0c mov 0xc(%ebp),%ebx
8048eec: c7 44 24 04 aa 8a 04 movl $0x8048aaa,0x4(%esp)
8048ef3: 08
8048ef4: c7 04 24 0b 00 00 00 movl $0xb,(%esp)
8048efb: e8 b0 f8 ff ff call 80487b0 <signal@plt>
8048f00: c7 44 24 04 80 8a 04 movl $0x8048a80,0x4(%esp)
8048f07: 08
8048f08: c7 04 24 07 00 00 00 movl $0x7,(%esp)
8048f0f: e8 9c f8 ff ff call 80487b0 <signal@plt>
8048f14: c7 44 24 04 d4 8a 04 movl $0x8048ad4,0x4(%esp)
8048f1b: 08
8048f1c: c7 04 24 04 00 00 00 movl $0x4,(%esp)
8048f23: e8 88 f8 ff ff call 80487b0 <signal@plt>
8048f28: a1 e4 d0 04 08 mov 0x804d0e4,%eax
8048f2d: a3 0c d1 04 08 mov %eax,0x804d10c
8048f32: bf 01 00 00 00 mov $0x1,%edi
8048f37: c7 44 24 1c 00 00 00 movl $0x0,0x1c(%esp)
8048f3e: 00
8048f3f: eb 67 jmp 8048fa8 <main+0xce>
8048f41: 83 e8 67 sub $0x67,%eax
8048f44: 3c 0e cmp $0xe,%al
8048f46: 77 59 ja 8048fa1 <main+0xc7>
8048f48: 0f b6 c0 movzbl %al,%eax
8048f4b: ff 24 85 f0 a1 04 08 jmp *0x804a1f0(,%eax,4)
8048f52: c7 44 24 1c 01 00 00 movl $0x1,0x1c(%esp)
8048f59: 00
8048f5a: bf 05 00 00 00 mov $0x5,%edi
8048f5f: eb 47 jmp 8048fa8 <main+0xce>
8048f61: 8b 03 mov (%ebx),%eax
8048f63: e8 96 fb ff ff call 8048afe <usage>
8048f68: a1 e8 d0 04 08 mov 0x804d0e8,%eax
8048f6d: 89 04 24 mov %eax,(%esp)
8048f70: e8 5b f9 ff ff call 80488d0 <__strdup@plt>
8048f75: a3 18 d1 04 08 mov %eax,0x804d118
8048f7a: 89 04 24 mov %eax,(%esp)
8048f7d: e8 7c 0e 00 00 call 8049dfe <gencookie>
8048f82: a3 08 d1 04 08 mov %eax,0x804d108
8048f87: eb 1f jmp 8048fa8 <main+0xce>
8048f89: c7 05 14 d1 04 08 01 movl $0x1,0x804d114
8048f90: 00 00 00
8048f93: eb 13 jmp 8048fa8 <main+0xce>
8048f95: c7 05 10 d1 04 08 01 movl $0x1,0x804d110
8048f9c: 00 00 00
8048f9f: eb 07 jmp 8048fa8 <main+0xce>
8048fa1: 8b 03 mov (%ebx),%eax
8048fa3: e8 56 fb ff ff call 8048afe <usage>
8048fa8: c7 44 24 08 cf a1 04 movl $0x804a1cf,0x8(%esp)
8048faf: 08
8048fb0: 89 5c 24 04 mov %ebx,0x4(%esp)
8048fb4: 89 34 24 mov %esi,(%esp)
8048fb7: e8 e4 f8 ff ff call 80488a0 <getopt@plt>
8048fbc: 3c ff cmp $0xff,%al
8048fbe: 75 81 jne 8048f41 <main+0x67>
8048fc0: 83 3d 18 d1 04 08 00 cmpl $0x0,0x804d118
8048fc7: 75 19 jne 8048fe2 <main+0x108>
8048fc9: 8b 03 mov (%ebx),%eax
8048fcb: 89 44 24 04 mov %eax,0x4(%esp)
8048fcf: c7 04 24 88 a0 04 08 movl $0x804a088,(%esp)
8048fd6: e8 b5 f7 ff ff call 8048790 <printf@plt>
8048fdb: 8b 03 mov (%ebx),%eax
8048fdd: e8 1c fb ff ff call 8048afe <usage>
8048fe2: e8 ec 00 00 00 call 80490d3 <initialize_bomb>
8048fe7: a1 18 d1 04 08 mov 0x804d118,%eax
8048fec: 89 44 24 04 mov %eax,0x4(%esp)
8048ff0: c7 04 24 d6 a1 04 08 movl $0x804a1d6,(%esp)
8048ff7: e8 94 f7 ff ff call 8048790 <printf@plt>
8048ffc: a1 08 d1 04 08 mov 0x804d108,%eax
8049001: 89 44 24 04 mov %eax,0x4(%esp)
8049005: c7 04 24 e2 a1 04 08 movl $0x804a1e2,(%esp)
804900c: e8 7f f7 ff ff call 8048790 <printf@plt>
8049011: a1 08 d1 04 08 mov 0x804d108,%eax
8049016: 89 04 24 mov %eax,(%esp)
8049019: e8 62 f7 ff ff call 8048780 <srandom@plt>
804901e: e8 0d f9 ff ff call 8048930 <random@plt>
8049023: 25 f0 0f 00 00 and $0xff0,%eax
8049028: 05 00 01 00 00 add $0x100,%eax
804902d: 89 44 24 18 mov %eax,0x18(%esp)
8049031: c7 44 24 04 04 00 00 movl $0x4,0x4(%esp)
8049038: 00
8049039: 89 3c 24 mov %edi,(%esp)
804903c: e8 2f f9 ff ff call 8048970 <calloc@plt>
8049041: 89 c6 mov %eax,%esi
8049043: c7 00 00 00 00 00 movl $0x0,(%eax)
8049049: bb 01 00 00 00 mov $0x1,%ebx
804904e: eb 17 jmp 8049067 <main+0x18d>
8049050: e8 db f8 ff ff call 8048930 <random@plt>
8049055: 25 f0 00 00 00 and $0xf0,%eax
804905a: ba 80 00 00 00 mov $0x80,%edx
804905f: 29 c2 sub %eax,%edx
8049061: 89 14 9e mov %edx,(%esi,%ebx,4)
8049064: 83 c3 01 add $0x1,%ebx
8049067: 39 fb cmp %edi,%ebx
8049069: 7c e5 jl 8049050 <main+0x176>
804906b: bb 00 00 00 00 mov $0x0,%ebx
8049070: eb 1a jmp 804908c <main+0x1b2>
8049072: 8b 44 24 18 mov 0x18(%esp),%eax
8049076: 03 04 9e add (%esi,%ebx,4),%eax
8049079: 89 44 24 04 mov %eax,0x4(%esp)
804907d: 8b 44 24 1c mov 0x1c(%esp),%eax
8049081: 89 04 24 mov %eax,(%esp)
8049084: e8 87 fd ff ff call 8048e10 <launcher>
8049089: 83 c3 01 add $0x1,%ebx
804908c: 39 fb cmp %edi,%ebx
804908e: 7c e2 jl 8049072 <main+0x198>
8049090: b8 00 00 00 00 mov $0x0,%eax
8049095: 8d 65 f4 lea -0xc(%ebp),%esp
8049098: 5b pop %ebx
8049099: 5e pop %esi
804909a: 5f pop %edi
804909b: 5d pop %ebp
804909c: c3 ret
0804909d <getbuf>:
804909d: 55 push %ebp
804909e: 89 e5 mov %esp,%ebp
80490a0: 83 ec 38 sub $0x38,%esp
80490a3: 8d 45 d8 lea -0x28(%ebp),%eax
80490a6: 89 04 24 mov %eax,(%esp)
80490a9: e8 64 fb ff ff call 8048c12 <Gets>
80490ae: b8 01 00 00 00 mov $0x1,%eax
80490b3: c9 leave
80490b4: c3 ret
080490b5 <getbufn>:
80490b5: 55 push %ebp
80490b6: 89 e5 mov %esp,%ebp
80490b8: 81 ec 18 02 00 00 sub $0x218,%esp
80490be: 8d 85 f8 fd ff ff lea -0x208(%ebp),%eax
80490c4: 89 04 24 mov %eax,(%esp)
80490c7: e8 46 fb ff ff call 8048c12 <Gets>
80490cc: b8 01 00 00 00 mov $0x1,%eax
80490d1: c9 leave
80490d2: c3 ret
080490d3 <initialize_bomb>:
80490d3: 55 push %ebp
80490d4: 89 e5 mov %esp,%ebp
80490d6: 81 ec 18 24 00 00 sub $0x2418,%esp
80490dc: 83 3d 10 d1 04 08 00 cmpl $0x0,0x804d110
80490e3: 74 0c je 80490f1 <initialize_bomb+0x1e>
80490e5: c7 04 24 ff ff ff ff movl $0xffffffff,(%esp)
80490ec: e8 3c 0a 00 00 call 8049b2d <init_timeout>
80490f1: 83 3d 14 d1 04 08 00 cmpl $0x0,0x804d114
80490f8: 74 66 je 8049160 <initialize_bomb+0x8d>
80490fa: c7 44 24 04 00 04 00 movl $0x400,0x4(%esp)
8049101: 00
8049102: 8d 85 f8 fb ff ff lea -0x408(%ebp),%eax
8049108: 89 04 24 mov %eax,(%esp)
804910b: e8 10 f7 ff ff call 8048820 <gethostname@plt>
8049110: 85 c0 test %eax,%eax
8049112: 74 18 je 804912c <initialize_bomb+0x59>
8049114: c7 04 24 3c a2 04 08 movl $0x804a23c,(%esp)
804911b: e8 10 f7 ff ff call 8048830 <puts@plt>
8049120: c7 04 24 08 00 00 00 movl $0x8,(%esp)
8049127: e8 24 f7 ff ff call 8048850 <exit@plt>
804912c: 8d 85 f8 db ff ff lea -0x2408(%ebp),%eax
8049132: 89 04 24 mov %eax,(%esp)
8049135: e8 2d 0a 00 00 call 8049b67 <init_driver>
804913a: 85 c0 test %eax,%eax
804913c: 79 22 jns 8049160 <initialize_bomb+0x8d>
804913e: 8d 85 f8 db ff ff lea -0x2408(%ebp),%eax
8049144: 89 44 24 04 mov %eax,0x4(%esp)
8049148: c7 04 24 6e a3 04 08 movl $0x804a36e,(%esp)
804914f: e8 3c f6 ff ff call 8048790 <printf@plt>
8049154: c7 04 24 08 00 00 00 movl $0x8,(%esp)
804915b: e8 f0 f6 ff ff call 8048850 <exit@plt>
8049160: c9 leave
8049161: c3 ret
08049162 <validate>:
8049162: 55 push %ebp
8049163: 89 e5 mov %esp,%ebp
8049165: 57 push %edi
8049166: 53 push %ebx
8049167: 81 ec 20 40 00 00 sub $0x4020,%esp
804916d: 8b 5d 08 mov 0x8(%ebp),%ebx
8049170: 83 3d 18 d1 04 08 00 cmpl $0x0,0x804d118
8049177: 75 11 jne 804918a <validate+0x28>
8049179: c7 04 24 74 a2 04 08 movl $0x804a274,(%esp)
8049180: e8 ab f6 ff ff call 8048830 <puts@plt>
8049185: e9 14 01 00 00 jmp 804929e <validate+0x13c>
804918a: 83 fb 04 cmp $0x4,%ebx
804918d: 76 11 jbe 80491a0 <validate+0x3e>
804918f: c7 04 24 a0 a2 04 08 movl $0x804a2a0,(%esp)
8049196: e8 95 f6 ff ff call 8048830 <puts@plt>
804919b: e9 fe 00 00 00 jmp 804929e <validate+0x13c>
80491a0: c7 05 04 d1 04 08 01 movl $0x1,0x804d104
80491a7: 00 00 00
80491aa: 8b 04 9d c0 c0 04 08 mov 0x804c0c0(,%ebx,4),%eax
80491b1: 83 e8 01 sub $0x1,%eax
80491b4: 89 04 9d c0 c0 04 08 mov %eax,0x804c0c0(,%ebx,4)
80491bb: 85 c0 test %eax,%eax
80491bd: 7e 11 jle 80491d0 <validate+0x6e>
80491bf: c7 04 24 83 a3 04 08 movl $0x804a383,(%esp)
80491c6: e8 65 f6 ff ff call 8048830 <puts@plt>
80491cb: e9 ce 00 00 00 jmp 804929e <validate+0x13c>
80491d0: c7 04 24 8e a3 04 08 movl $0x804a38e,(%esp)
80491d7: e8 54 f6 ff ff call 8048830 <puts@plt>
80491dc: 83 3d 14 d1 04 08 00 cmpl $0x0,0x804d114
80491e3: 0f 84 a9 00 00 00 je 8049292 <validate+0x130>
80491e9: bf 40 d1 04 08 mov $0x804d140,%edi
80491ee: b8 00 00 00 00 mov $0x0,%eax
80491f3: b9 ff ff ff ff mov $0xffffffff,%ecx
80491f8: f2 ae repnz scas %es:(%edi),%al
80491fa: 89 ca mov %ecx,%edx
80491fc: f7 d2 not %edx
80491fe: 89 d1 mov %edx,%ecx
8049200: 83 c1 1f add $0x1f,%ecx
8049203: 81 f9 00 20 00 00 cmp $0x2000,%ecx
8049209: 76 11 jbe 804921c <validate+0xba>
804920b: c7 04 24 c8 a2 04 08 movl $0x804a2c8,(%esp)
8049212: e8 19 f6 ff ff call 8048830 <puts@plt>
8049217: e9 82 00 00 00 jmp 804929e <validate+0x13c>
804921c: c7 44 24 10 40 d1 04 movl $0x804d140,0x10(%esp)
8049223: 08
8049224: a1 08 d1 04 08 mov 0x804d108,%eax
8049229: 89 44 24 0c mov %eax,0xc(%esp)
804922d: 89 5c 24 08 mov %ebx,0x8(%esp)
8049231: c7 44 24 04 94 a3 04 movl $0x804a394,0x4(%esp)
8049238: 08
8049239: 8d 9d f8 df ff ff lea -0x2008(%ebp),%ebx
804923f: 89 1c 24 mov %ebx,(%esp)
8049242: e8 c9 f6 ff ff call 8048910 <sprintf@plt>
8049247: 8d 85 f8 bf ff ff lea -0x4008(%ebp),%eax
804924d: 89 44 24 0c mov %eax,0xc(%esp)
8049251: c7 44 24 08 00 00 00 movl $0x0,0x8(%esp)
8049258: 00
8049259: 89 5c 24 04 mov %ebx,0x4(%esp)
804925d: a1 18 d1 04 08 mov 0x804d118,%eax
8049262: 89 04 24 mov %eax,(%esp)
8049265: e8 9a 0a 00 00 call 8049d04 <driver_post>
804926a: 85 c0 test %eax,%eax
804926c: 75 0e jne 804927c <validate+0x11a>
804926e: c7 04 24 00 a3 04 08 movl $0x804a300,(%esp)
8049275: e8 b6 f5 ff ff call 8048830 <puts@plt>
804927a: eb 16 jmp 8049292 <validate+0x130>
804927c: 8d 85 f8 bf ff ff lea -0x4008(%ebp),%eax
8049282: 89 44 24 04 mov %eax,0x4(%esp)
8049286: c7 04 24 30 a3 04 08 movl $0x804a330,(%esp)
804928d: e8 fe f4 ff ff call 8048790 <printf@plt>
8049292: c7 04 24 9d a3 04 08 movl $0x804a39d,(%esp)
8049299: e8 92 f5 ff ff call 8048830 <puts@plt>
804929e: 81 c4 20 40 00 00 add $0x4020,%esp
80492a4: 5b pop %ebx
80492a5: 5f pop %edi
80492a6: 5d pop %ebp
80492a7: c3 ret
80492a8: 66 90 xchg %ax,%ax
80492aa: 66 90 xchg %ax,%ax
80492ac: 66 90 xchg %ax,%ax
80492ae: 66 90 xchg %ax,%ax
080492b0 <sigalrm_handler>:
80492b0: 55 push %ebp
80492b1: 89 e5 mov %esp,%ebp
80492b3: 83 ec 18 sub $0x18,%esp
80492b6: c7 44 24 04 02 00 00 movl $0x2,0x4(%esp)
80492bd: 00
80492be: c7 04 24 b4 a3 04 08 movl $0x804a3b4,(%esp)
80492c5: e8 c6 f4 ff ff call 8048790 <printf@plt>
80492ca: c7 04 24 01 00 00 00 movl $0x1,(%esp)
80492d1: e8 7a f5 ff ff call 8048850 <exit@plt>
080492d6 <rio_readlineb>:
80492d6: 55 push %ebp
80492d7: 89 e5 mov %esp,%ebp
80492d9: 57 push %edi
80492da: 56 push %esi
80492db: 53 push %ebx
80492dc: 83 ec 3c sub $0x3c,%esp
80492df: 89 55 d0 mov %edx,-0x30(%ebp)
80492e2: 83 f9 01 cmp $0x1,%ecx
80492e5: 0f 86 c1 00 00 00 jbe 80493ac <rio_readlineb+0xd6>
80492eb: 89 c3 mov %eax,%ebx
80492ed: 89 4d c4 mov %ecx,-0x3c(%ebp)
80492f0: c7 45 d4 01 00 00 00 movl $0x1,-0x2c(%ebp)
80492f7: 8d 78 0c lea 0xc(%eax),%edi
80492fa: eb 39 jmp 8049335 <rio_readlineb+0x5f>
80492fc: c7 44 24 08 00 20 00 movl $0x2000,0x8(%esp)
8049303: 00
8049304: 89 7c 24 04 mov %edi,0x4(%esp)
8049308: 8b 03 mov (%ebx),%eax
804930a: 89 04 24 mov %eax,(%esp)
804930d: e8 5e f4 ff ff call 8048770 <read@plt>
8049312: 89 43 04 mov %eax,0x4(%ebx)
8049315: 85 c0 test %eax,%eax
8049317: 79 0f jns 8049328 <rio_readlineb+0x52>
8049319: e8 c2 f5 ff ff call 80488e0 <__errno_location@plt>
804931e: 83 38 04 cmpl $0x4,(%eax)
8049321: 74 12 je 8049335 <rio_readlineb+0x5f>
8049323: e9 96 00 00 00 jmp 80493be <rio_readlineb+0xe8>
8049328: 85 c0 test %eax,%eax
804932a: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
8049330: 74 62 je 8049394 <rio_readlineb+0xbe>
8049332: 89 7b 08 mov %edi,0x8(%ebx)
8049335: 8b 73 04 mov 0x4(%ebx),%esi
8049338: 85 f6 test %esi,%esi
804933a: 7e c0 jle 80492fc <rio_readlineb+0x26>
804933c: 85 f6 test %esi,%esi
804933e: 0f 95 c0 setne %al
8049341: 0f b6 c0 movzbl %al,%eax
8049344: 89 45 cc mov %eax,-0x34(%ebp)
8049347: 8b 4b 08 mov 0x8(%ebx),%ecx
804934a: 89 44 24 08 mov %eax,0x8(%esp)
804934e: 89 4d c8 mov %ecx,-0x38(%ebp)
8049351: 89 4c 24 04 mov %ecx,0x4(%esp)
8049355: 8d 55 e7 lea -0x19(%ebp),%edx
8049358: 89 14 24 mov %edx,(%esp)
804935b: e8 40 f4 ff ff call 80487a0 <memcpy@plt>
8049360: 8b 4d c8 mov -0x38(%ebp),%ecx
8049363: 8b 55 cc mov -0x34(%ebp),%edx
8049366: 01 d1 add %edx,%ecx
8049368: 89 4b 08 mov %ecx,0x8(%ebx)
804936b: 29 d6 sub %edx,%esi
804936d: 89 73 04 mov %esi,0x4(%ebx)
8049370: 83 fa 01 cmp $0x1,%edx
8049373: 75 14 jne 8049389 <rio_readlineb+0xb3>
8049375: 83 45 d0 01 addl $0x1,-0x30(%ebp)
8049379: 0f b6 45 e7 movzbl -0x19(%ebp),%eax
804937d: 8b 55 d0 mov -0x30(%ebp),%edx
8049380: 88 42 ff mov %al,-0x1(%edx)
8049383: 3c 0a cmp $0xa,%al
8049385: 75 17 jne 804939e <rio_readlineb+0xc8>
8049387: eb 2a jmp 80493b3 <rio_readlineb+0xdd>
8049389: 83 7d cc 00 cmpl $0x0,-0x34(%ebp)
804938d: 75 36 jne 80493c5 <rio_readlineb+0xef>
804938f: 8b 45 d4 mov -0x2c(%ebp),%eax
8049392: eb 03 jmp 8049397 <rio_readlineb+0xc1>
8049394: 8b 45 d4 mov -0x2c(%ebp),%eax
8049397: 83 f8 01 cmp $0x1,%eax
804939a: 75 17 jne 80493b3 <rio_readlineb+0xdd>
804939c: eb 2e jmp 80493cc <rio_readlineb+0xf6>
804939e: 83 45 d4 01 addl $0x1,-0x2c(%ebp)
80493a2: 8b 45 c4 mov -0x3c(%ebp),%eax
80493a5: 39 45 d4 cmp %eax,-0x2c(%ebp)
80493a8: 74 09 je 80493b3 <rio_readlineb+0xdd>
80493aa: eb 89 jmp 8049335 <rio_readlineb+0x5f>
80493ac: c7 45 d4 01 00 00 00 movl $0x1,-0x2c(%ebp)
80493b3: 8b 45 d0 mov -0x30(%ebp),%eax
80493b6: c6 00 00 movb $0x0,(%eax)
80493b9: 8b 45 d4 mov -0x2c(%ebp),%eax
80493bc: eb 13 jmp 80493d1 <rio_readlineb+0xfb>
80493be: b8 ff ff ff ff mov $0xffffffff,%eax
80493c3: eb 0c jmp 80493d1 <rio_readlineb+0xfb>
80493c5: b8 ff ff ff ff mov $0xffffffff,%eax
80493ca: eb 05 jmp 80493d1 <rio_readlineb+0xfb>
80493cc: b8 00 00 00 00 mov $0x0,%eax
80493d1: 83 c4 3c add $0x3c,%esp
80493d4: 5b pop %ebx
80493d5: 5e pop %esi
80493d6: 5f pop %edi
80493d7: 5d pop %ebp
80493d8: c3 ret
080493d9 <submitr>:
80493d9: 55 push %ebp
80493da: 89 e5 mov %esp,%ebp
80493dc: 57 push %edi
80493dd: 56 push %esi
80493de: 53 push %ebx
80493df: 81 ec 6c a0 00 00 sub $0xa06c,%esp
80493e5: 8b 7d 08 mov 0x8(%ebp),%edi
80493e8: 8b 5d 1c mov 0x1c(%ebp),%ebx
80493eb: c7 85 c8 7f ff ff 00 movl $0x0,-0x8038(%ebp)
80493f2: 00 00 00
80493f5: c7 44 24 08 00 00 00 movl $0x0,0x8(%esp)
80493fc: 00
80493fd: c7 44 24 04 01 00 00 movl $0x1,0x4(%esp)
8049404: 00
8049405: c7 04 24 02 00 00 00 movl $0x2,(%esp)
804940c: e8 0f f5 ff ff call 8048920 <socket@plt>
8049411: 89 85 b4 5f ff ff mov %eax,-0xa04c(%ebp)
8049417: 85 c0 test %eax,%eax
8049419: 79 51 jns 804946c <submitr+0x93>
804941b: 8b 45 20 mov 0x20(%ebp),%eax
804941e: c7 00 45 72 72 6f movl $0x6f727245,(%eax)
8049424: c7 40 04 72 3a 20 43 movl $0x43203a72,0x4(%eax)
804942b: c7 40 08 6c 69 65 6e movl $0x6e65696c,0x8(%eax)
8049432: c7 40 0c 74 20 75 6e movl $0x6e752074,0xc(%eax)
8049439: c7 40 10 61 62 6c 65 movl $0x656c6261,0x10(%eax)
8049440: c7 40 14 20 74 6f 20 movl $0x206f7420,0x14(%eax)