2020301918-os/kern.asm
2022-10-30 00:18:22 +08:00

6165 lines
295 KiB
NASM

obj/kern/kernel.dbg: file format elf32-i386
obj/kern/kernel.dbg
Disassembly of section .text:
c0200000 <_start>:
_start():
c0200000: bc c0 89 20 c0 mov $0xc02089c0,%esp
c0200005: e8 a3 17 00 00 call c02017ad <cstart>
c020000a: 0f 01 15 00 de 20 c0 lgdtl 0xc020de00
c0200011: 66 b8 1b 00 mov $0x1b,%ax
c0200015: 8e e8 mov %eax,%gs
c0200017: 66 b8 28 00 mov $0x28,%ax
c020001b: 0f 00 d0 lldt %ax
c020001e: 66 b8 20 00 mov $0x20,%ax
c0200022: 0f 00 d8 ltr %ax
c0200025: 0f 01 1d 08 de 20 c0 lidtl 0xc020de08
c020002c: ea f7 0a 20 c0 08 00 ljmp $0x8,$0xc0200af7
c0200033: 66 90 xchg %ax,%ax
c0200035: 66 90 xchg %ax,%ax
c0200037: 66 90 xchg %ax,%ax
c0200039: 66 90 xchg %ax,%ax
c020003b: 66 90 xchg %ax,%ax
c020003d: 66 90 xchg %ax,%ax
c020003f: 90 nop
c0200040 <save>:
save():
c0200040: 60 pusha
c0200041: 1e push %ds
c0200042: 06 push %es
c0200043: 0f a0 push %fs
c0200045: 0f a8 push %gs
c0200047: 66 8c d2 mov %ss,%dx
c020004a: 8e da mov %edx,%ds
c020004c: 8e c2 mov %edx,%es
c020004e: 89 e0 mov %esp,%eax
c0200050: f7 40 38 03 00 00 00 testl $0x3,0x38(%eax)
c0200057: 74 0c je c0200065 <save.1>
c0200059: bc c0 89 20 c0 mov $0xc02089c0,%esp
c020005e: 50 push %eax
c020005f: e8 ab 0f 00 00 call c020100f <to_kern_stack>
c0200064: 58 pop %eax
c0200065 <save.1>:
save.1():
c0200065: 50 push %eax
c0200066: 68 6e 00 20 c0 push $0xc020006e
c020006b: ff 60 30 jmp *0x30(%eax)
c020006e <restart>:
restart():
c020006e: 5c pop %esp
c020006f: 0f a9 pop %gs
c0200071: 0f a1 pop %fs
c0200073: 07 pop %es
c0200074: 1f pop %ds
c0200075: 61 popa
c0200076: 83 c4 04 add $0x4,%esp
c0200079: cf iret
c020007a <int_syscall>:
int_syscall():
c020007a: e8 c1 ff ff ff call c0200040 <save>
c020007f: fb sti
c0200080: e8 f5 1c 00 00 call c0201d7a <syscall_handler>
c0200085: fa cli
c0200086: c3 ret
c0200087: 90 nop
c0200088: 90 nop
c0200089: 90 nop
c020008a: 90 nop
c020008b: 90 nop
c020008c: 90 nop
c020008d: 90 nop
c020008e: 90 nop
c020008f: 90 nop
c0200090 <hwint00>:
hwint00():
c0200090: e8 ab ff ff ff call c0200040 <save>
c0200095: b0 20 mov $0x20,%al
c0200097: e6 20 out %al,$0x20
c0200099: 6a 00 push $0x0
c020009b: ff 15 60 74 20 c0 call *0xc0207460
c02000a1: 59 pop %ecx
c02000a2: c3 ret
c02000a3: 90 nop
c02000a4: 90 nop
c02000a5: 90 nop
c02000a6: 90 nop
c02000a7: 90 nop
c02000a8: 90 nop
c02000a9: 90 nop
c02000aa: 90 nop
c02000ab: 90 nop
c02000ac: 90 nop
c02000ad: 90 nop
c02000ae: 90 nop
c02000af: 90 nop
c02000b0 <hwint01>:
hwint01():
c02000b0: e8 8b ff ff ff call c0200040 <save>
c02000b5: e4 21 in $0x21,%al
c02000b7: 0c 02 or $0x2,%al
c02000b9: e6 21 out %al,$0x21
c02000bb: b0 20 mov $0x20,%al
c02000bd: e6 20 out %al,$0x20
c02000bf: fb sti
c02000c0: 6a 01 push $0x1
c02000c2: ff 15 64 74 20 c0 call *0xc0207464
c02000c8: 59 pop %ecx
c02000c9: fa cli
c02000ca: e4 21 in $0x21,%al
c02000cc: 24 fd and $0xfd,%al
c02000ce: e6 21 out %al,$0x21
c02000d0: c3 ret
c02000d1: 90 nop
c02000d2: 90 nop
c02000d3: 90 nop
c02000d4: 90 nop
c02000d5: 90 nop
c02000d6: 90 nop
c02000d7: 90 nop
c02000d8: 90 nop
c02000d9: 90 nop
c02000da: 90 nop
c02000db: 90 nop
c02000dc: 90 nop
c02000dd: 90 nop
c02000de: 90 nop
c02000df: 90 nop
c02000e0 <hwint02>:
hwint02():
c02000e0: e8 5b ff ff ff call c0200040 <save>
c02000e5: e4 21 in $0x21,%al
c02000e7: 0c 04 or $0x4,%al
c02000e9: e6 21 out %al,$0x21
c02000eb: b0 20 mov $0x20,%al
c02000ed: e6 20 out %al,$0x20
c02000ef: fb sti
c02000f0: 6a 02 push $0x2
c02000f2: ff 15 68 74 20 c0 call *0xc0207468
c02000f8: 59 pop %ecx
c02000f9: fa cli
c02000fa: e4 21 in $0x21,%al
c02000fc: 24 fb and $0xfb,%al
c02000fe: e6 21 out %al,$0x21
c0200100: c3 ret
c0200101: 90 nop
c0200102: 90 nop
c0200103: 90 nop
c0200104: 90 nop
c0200105: 90 nop
c0200106: 90 nop
c0200107: 90 nop
c0200108: 90 nop
c0200109: 90 nop
c020010a: 90 nop
c020010b: 90 nop
c020010c: 90 nop
c020010d: 90 nop
c020010e: 90 nop
c020010f: 90 nop
c0200110 <hwint03>:
hwint03():
c0200110: e8 2b ff ff ff call c0200040 <save>
c0200115: e4 21 in $0x21,%al
c0200117: 0c 08 or $0x8,%al
c0200119: e6 21 out %al,$0x21
c020011b: b0 20 mov $0x20,%al
c020011d: e6 20 out %al,$0x20
c020011f: fb sti
c0200120: 6a 03 push $0x3
c0200122: ff 15 6c 74 20 c0 call *0xc020746c
c0200128: 59 pop %ecx
c0200129: fa cli
c020012a: e4 21 in $0x21,%al
c020012c: 24 f7 and $0xf7,%al
c020012e: e6 21 out %al,$0x21
c0200130: c3 ret
c0200131: 90 nop
c0200132: 90 nop
c0200133: 90 nop
c0200134: 90 nop
c0200135: 90 nop
c0200136: 90 nop
c0200137: 90 nop
c0200138: 90 nop
c0200139: 90 nop
c020013a: 90 nop
c020013b: 90 nop
c020013c: 90 nop
c020013d: 90 nop
c020013e: 90 nop
c020013f: 90 nop
c0200140 <hwint04>:
hwint04():
c0200140: e8 fb fe ff ff call c0200040 <save>
c0200145: e4 21 in $0x21,%al
c0200147: 0c 10 or $0x10,%al
c0200149: e6 21 out %al,$0x21
c020014b: b0 20 mov $0x20,%al
c020014d: e6 20 out %al,$0x20
c020014f: fb sti
c0200150: 6a 04 push $0x4
c0200152: ff 15 70 74 20 c0 call *0xc0207470
c0200158: 59 pop %ecx
c0200159: fa cli
c020015a: e4 21 in $0x21,%al
c020015c: 24 ef and $0xef,%al
c020015e: e6 21 out %al,$0x21
c0200160: c3 ret
c0200161: 90 nop
c0200162: 90 nop
c0200163: 90 nop
c0200164: 90 nop
c0200165: 90 nop
c0200166: 90 nop
c0200167: 90 nop
c0200168: 90 nop
c0200169: 90 nop
c020016a: 90 nop
c020016b: 90 nop
c020016c: 90 nop
c020016d: 90 nop
c020016e: 90 nop
c020016f: 90 nop
c0200170 <hwint05>:
hwint05():
c0200170: e8 cb fe ff ff call c0200040 <save>
c0200175: e4 21 in $0x21,%al
c0200177: 0c 20 or $0x20,%al
c0200179: e6 21 out %al,$0x21
c020017b: b0 20 mov $0x20,%al
c020017d: e6 20 out %al,$0x20
c020017f: fb sti
c0200180: 6a 05 push $0x5
c0200182: ff 15 74 74 20 c0 call *0xc0207474
c0200188: 59 pop %ecx
c0200189: fa cli
c020018a: e4 21 in $0x21,%al
c020018c: 24 df and $0xdf,%al
c020018e: e6 21 out %al,$0x21
c0200190: c3 ret
c0200191: 90 nop
c0200192: 90 nop
c0200193: 90 nop
c0200194: 90 nop
c0200195: 90 nop
c0200196: 90 nop
c0200197: 90 nop
c0200198: 90 nop
c0200199: 90 nop
c020019a: 90 nop
c020019b: 90 nop
c020019c: 90 nop
c020019d: 90 nop
c020019e: 90 nop
c020019f: 90 nop
c02001a0 <hwint06>:
hwint06():
c02001a0: e8 9b fe ff ff call c0200040 <save>
c02001a5: e4 21 in $0x21,%al
c02001a7: 0c 40 or $0x40,%al
c02001a9: e6 21 out %al,$0x21
c02001ab: b0 20 mov $0x20,%al
c02001ad: e6 20 out %al,$0x20
c02001af: fb sti
c02001b0: 6a 06 push $0x6
c02001b2: ff 15 78 74 20 c0 call *0xc0207478
c02001b8: 59 pop %ecx
c02001b9: fa cli
c02001ba: e4 21 in $0x21,%al
c02001bc: 24 bf and $0xbf,%al
c02001be: e6 21 out %al,$0x21
c02001c0: c3 ret
c02001c1: 90 nop
c02001c2: 90 nop
c02001c3: 90 nop
c02001c4: 90 nop
c02001c5: 90 nop
c02001c6: 90 nop
c02001c7: 90 nop
c02001c8: 90 nop
c02001c9: 90 nop
c02001ca: 90 nop
c02001cb: 90 nop
c02001cc: 90 nop
c02001cd: 90 nop
c02001ce: 90 nop
c02001cf: 90 nop
c02001d0 <hwint07>:
hwint07():
c02001d0: e8 6b fe ff ff call c0200040 <save>
c02001d5: e4 21 in $0x21,%al
c02001d7: 0c 80 or $0x80,%al
c02001d9: e6 21 out %al,$0x21
c02001db: b0 20 mov $0x20,%al
c02001dd: e6 20 out %al,$0x20
c02001df: fb sti
c02001e0: 6a 07 push $0x7
c02001e2: ff 15 7c 74 20 c0 call *0xc020747c
c02001e8: 59 pop %ecx
c02001e9: fa cli
c02001ea: e4 21 in $0x21,%al
c02001ec: 24 7f and $0x7f,%al
c02001ee: e6 21 out %al,$0x21
c02001f0: c3 ret
c02001f1: 90 nop
c02001f2: 90 nop
c02001f3: 90 nop
c02001f4: 90 nop
c02001f5: 90 nop
c02001f6: 90 nop
c02001f7: 90 nop
c02001f8: 90 nop
c02001f9: 90 nop
c02001fa: 90 nop
c02001fb: 90 nop
c02001fc: 90 nop
c02001fd: 90 nop
c02001fe: 90 nop
c02001ff: 90 nop
c0200200 <hwint08>:
hwint08():
c0200200: f4 hlt
c0200201: 90 nop
c0200202: 90 nop
c0200203: 90 nop
c0200204: 90 nop
c0200205: 90 nop
c0200206: 90 nop
c0200207: 90 nop
c0200208: 90 nop
c0200209: 90 nop
c020020a: 90 nop
c020020b: 90 nop
c020020c: 90 nop
c020020d: 90 nop
c020020e: 90 nop
c020020f: 90 nop
c0200210 <hwint09>:
hwint09():
c0200210: f4 hlt
c0200211: 90 nop
c0200212: 90 nop
c0200213: 90 nop
c0200214: 90 nop
c0200215: 90 nop
c0200216: 90 nop
c0200217: 90 nop
c0200218: 90 nop
c0200219: 90 nop
c020021a: 90 nop
c020021b: 90 nop
c020021c: 90 nop
c020021d: 90 nop
c020021e: 90 nop
c020021f: 90 nop
c0200220 <hwint10>:
hwint10():
c0200220: f4 hlt
c0200221: 90 nop
c0200222: 90 nop
c0200223: 90 nop
c0200224: 90 nop
c0200225: 90 nop
c0200226: 90 nop
c0200227: 90 nop
c0200228: 90 nop
c0200229: 90 nop
c020022a: 90 nop
c020022b: 90 nop
c020022c: 90 nop
c020022d: 90 nop
c020022e: 90 nop
c020022f: 90 nop
c0200230 <hwint11>:
hwint11():
c0200230: f4 hlt
c0200231: 90 nop
c0200232: 90 nop
c0200233: 90 nop
c0200234: 90 nop
c0200235: 90 nop
c0200236: 90 nop
c0200237: 90 nop
c0200238: 90 nop
c0200239: 90 nop
c020023a: 90 nop
c020023b: 90 nop
c020023c: 90 nop
c020023d: 90 nop
c020023e: 90 nop
c020023f: 90 nop
c0200240 <hwint12>:
hwint12():
c0200240: f4 hlt
c0200241: 90 nop
c0200242: 90 nop
c0200243: 90 nop
c0200244: 90 nop
c0200245: 90 nop
c0200246: 90 nop
c0200247: 90 nop
c0200248: 90 nop
c0200249: 90 nop
c020024a: 90 nop
c020024b: 90 nop
c020024c: 90 nop
c020024d: 90 nop
c020024e: 90 nop
c020024f: 90 nop
c0200250 <hwint13>:
hwint13():
c0200250: f4 hlt
c0200251: 90 nop
c0200252: 90 nop
c0200253: 90 nop
c0200254: 90 nop
c0200255: 90 nop
c0200256: 90 nop
c0200257: 90 nop
c0200258: 90 nop
c0200259: 90 nop
c020025a: 90 nop
c020025b: 90 nop
c020025c: 90 nop
c020025d: 90 nop
c020025e: 90 nop
c020025f: 90 nop
c0200260 <hwint14>:
hwint14():
c0200260: f4 hlt
c0200261: 90 nop
c0200262: 90 nop
c0200263: 90 nop
c0200264: 90 nop
c0200265: 90 nop
c0200266: 90 nop
c0200267: 90 nop
c0200268: 90 nop
c0200269: 90 nop
c020026a: 90 nop
c020026b: 90 nop
c020026c: 90 nop
c020026d: 90 nop
c020026e: 90 nop
c020026f: 90 nop
c0200270 <hwint15>:
hwint15():
c0200270: f4 hlt
c0200271 <divide_error>:
divide_error():
c0200271: 6a ff push $0xffffffff
c0200273: 6a 00 push $0x0
c0200275: eb 4e jmp c02002c5 <exception>
c0200277 <single_step_exception>:
single_step_exception():
c0200277: 6a ff push $0xffffffff
c0200279: 6a 01 push $0x1
c020027b: eb 48 jmp c02002c5 <exception>
c020027d <nmi>:
nmi():
c020027d: 6a ff push $0xffffffff
c020027f: 6a 02 push $0x2
c0200281: eb 42 jmp c02002c5 <exception>
c0200283 <breakpoint_exception>:
breakpoint_exception():
c0200283: 6a ff push $0xffffffff
c0200285: 6a 03 push $0x3
c0200287: eb 3c jmp c02002c5 <exception>
c0200289 <overflow>:
overflow():
c0200289: 6a ff push $0xffffffff
c020028b: 6a 04 push $0x4
c020028d: eb 36 jmp c02002c5 <exception>
c020028f <bounds_check>:
bounds_check():
c020028f: 6a ff push $0xffffffff
c0200291: 6a 05 push $0x5
c0200293: eb 30 jmp c02002c5 <exception>
c0200295 <inval_opcode>:
inval_opcode():
c0200295: 6a ff push $0xffffffff
c0200297: 6a 06 push $0x6
c0200299: eb 2a jmp c02002c5 <exception>
c020029b <copr_not_available>:
copr_not_available():
c020029b: 6a ff push $0xffffffff
c020029d: 6a 07 push $0x7
c020029f: eb 24 jmp c02002c5 <exception>
c02002a1 <double_fault>:
double_fault():
c02002a1: 6a 08 push $0x8
c02002a3: eb 20 jmp c02002c5 <exception>
c02002a5 <copr_seg_overrun>:
copr_seg_overrun():
c02002a5: 6a ff push $0xffffffff
c02002a7: 6a 09 push $0x9
c02002a9: eb 1a jmp c02002c5 <exception>
c02002ab <inval_tss>:
inval_tss():
c02002ab: 6a 0a push $0xa
c02002ad: eb 16 jmp c02002c5 <exception>
c02002af <segment_not_present>:
segment_not_present():
c02002af: 6a 0b push $0xb
c02002b1: eb 12 jmp c02002c5 <exception>
c02002b3 <stack_exception>:
stack_exception():
c02002b3: 6a 0c push $0xc
c02002b5: eb 0e jmp c02002c5 <exception>
c02002b7 <general_protection>:
general_protection():
c02002b7: 6a 0d push $0xd
c02002b9: eb 0a jmp c02002c5 <exception>
c02002bb <page_fault>:
page_fault():
c02002bb: 6a 0e push $0xe
c02002bd: eb 06 jmp c02002c5 <exception>
c02002bf <copr_error>:
copr_error():
c02002bf: 6a ff push $0xffffffff
c02002c1: 6a 10 push $0x10
c02002c3: eb 00 jmp c02002c5 <exception>
c02002c5 <exception>:
exception():
c02002c5: e8 9d 18 00 00 call c0201b67 <exception_handler>
c02002ca: 83 c4 08 add $0x8,%esp
c02002cd: f4 hlt
c02002ce: 66 90 xchg %ax,%ax
c02002d0 <switch_kern_context>:
switch_kern_context():
c02002d0: 55 push %ebp
c02002d1: 89 e5 mov %esp,%ebp
c02002d3: 50 push %eax
c02002d4: 53 push %ebx
c02002d5: 8b 45 08 mov 0x8(%ebp),%eax
c02002d8: 8b 5d 0c mov 0xc(%ebp),%ebx
c02002db: e8 04 00 00 00 call c02002e4 <switch_kern_context.inner_switch>
c02002e0: 5b pop %ebx
c02002e1: 58 pop %eax
c02002e2: 5d pop %ebp
c02002e3: c3 ret
c02002e4 <switch_kern_context.inner_switch>:
switch_kern_context.inner_switch():
c02002e4: 89 60 20 mov %esp,0x20(%eax)
c02002e7: 8d 60 20 lea 0x20(%eax),%esp
c02002ea: 50 push %eax
c02002eb: 51 push %ecx
c02002ec: 52 push %edx
c02002ed: 53 push %ebx
c02002ee: 55 push %ebp
c02002ef: 56 push %esi
c02002f0: 57 push %edi
c02002f1: 9c pushf
c02002f2: 89 dc mov %ebx,%esp
c02002f4: 9d popf
c02002f5: 5f pop %edi
c02002f6: 5e pop %esi
c02002f7: 5d pop %ebp
c02002f8: 5b pop %ebx
c02002f9: 5a pop %edx
c02002fa: 59 pop %ecx
c02002fb: 58 pop %eax
c02002fc: 5c pop %esp
c02002fd: c3 ret
c02002fe <inb>:
inb():
/media/unix/Data/Code/2020301918-os/inc/x86.h:8
c02002fe: 55 push %ebp
c02002ff: 89 e5 mov %esp,%ebp
c0200301: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:10
c0200304: 8b 45 08 mov 0x8(%ebp),%eax
c0200307: 89 c2 mov %eax,%edx
c0200309: ec in (%dx),%al
c020030a: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:11
c020030d: 0f b6 45 ff movzbl -0x1(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:12
c0200311: c9 leave
c0200312: c3 ret
c0200313 <insl>:
insl():
/media/unix/Data/Code/2020301918-os/inc/x86.h:50
c0200313: 55 push %ebp
c0200314: 89 e5 mov %esp,%ebp
c0200316: 57 push %edi
c0200317: 53 push %ebx
/media/unix/Data/Code/2020301918-os/inc/x86.h:51
c0200318: 8b 55 08 mov 0x8(%ebp),%edx
c020031b: 8b 4d 0c mov 0xc(%ebp),%ecx
c020031e: 8b 45 10 mov 0x10(%ebp),%eax
c0200321: 89 cb mov %ecx,%ebx
c0200323: 89 df mov %ebx,%edi
c0200325: 89 c1 mov %eax,%ecx
c0200327: fc cld
c0200328: f2 6d repnz insl (%dx),%es:(%edi)
c020032a: 89 c8 mov %ecx,%eax
c020032c: 89 fb mov %edi,%ebx
c020032e: 89 5d 0c mov %ebx,0xc(%ebp)
c0200331: 89 45 10 mov %eax,0x10(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:55
c0200334: 90 nop
c0200335: 5b pop %ebx
c0200336: 5f pop %edi
c0200337: 5d pop %ebp
c0200338: c3 ret
c0200339 <outb>:
outb():
/media/unix/Data/Code/2020301918-os/inc/x86.h:59
c0200339: 55 push %ebp
c020033a: 89 e5 mov %esp,%ebp
c020033c: 83 ec 04 sub $0x4,%esp
c020033f: 8b 45 0c mov 0xc(%ebp),%eax
c0200342: 88 45 fc mov %al,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:60
c0200345: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c0200349: 8b 55 08 mov 0x8(%ebp),%edx
c020034c: ee out %al,(%dx)
/media/unix/Data/Code/2020301918-os/inc/x86.h:61
c020034d: 90 nop
c020034e: c9 leave
c020034f: c3 ret
c0200350 <kern_read>:
kern_read():
/media/unix/Data/Code/2020301918-os/kern/fs.c:19
c0200350: 55 push %ebp
c0200351: 89 e5 mov %esp,%ebp
c0200353: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:20
c0200356: 83 7d 08 00 cmpl $0x0,0x8(%ebp)
c020035a: 74 16 je c0200372 <kern_read+0x22>
/media/unix/Data/Code/2020301918-os/kern/fs.c:20 (discriminator 1)
c020035c: 68 00 40 20 c0 push $0xc0204000
c0200361: 68 08 40 20 c0 push $0xc0204008
c0200366: 6a 14 push $0x14
c0200368: 68 1d 40 20 c0 push $0xc020401d
c020036d: e8 47 0e 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:22
c0200372: 8b 45 0c mov 0xc(%ebp),%eax
c0200375: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:24
c0200378: c7 45 f0 00 00 00 00 movl $0x0,-0x10(%ebp)
c020037f: eb 26 jmp c02003a7 <kern_read+0x57>
/media/unix/Data/Code/2020301918-os/kern/fs.c:25
c0200381: e8 28 05 00 00 call c02008ae <read_keyboard_buf>
c0200386: 88 45 ef mov %al,-0x11(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:26
c0200389: 80 7d ef ff cmpb $0xff,-0x11(%ebp)
c020038d: 75 05 jne c0200394 <kern_read+0x44>
/media/unix/Data/Code/2020301918-os/kern/fs.c:27
c020038f: 8b 45 f0 mov -0x10(%ebp),%eax
c0200392: eb 1e jmp c02003b2 <kern_read+0x62>
/media/unix/Data/Code/2020301918-os/kern/fs.c:28 (discriminator 2)
c0200394: 8b 45 f4 mov -0xc(%ebp),%eax
c0200397: 8d 50 01 lea 0x1(%eax),%edx
c020039a: 89 55 f4 mov %edx,-0xc(%ebp)
c020039d: 0f b6 55 ef movzbl -0x11(%ebp),%edx
c02003a1: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/kern/fs.c:24 (discriminator 2)
c02003a3: 83 45 f0 01 addl $0x1,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:24 (discriminator 1)
c02003a7: 8b 45 f0 mov -0x10(%ebp),%eax
c02003aa: 3b 45 10 cmp 0x10(%ebp),%eax
c02003ad: 72 d2 jb c0200381 <kern_read+0x31>
/media/unix/Data/Code/2020301918-os/kern/fs.c:31
c02003af: 8b 45 10 mov 0x10(%ebp),%eax
/media/unix/Data/Code/2020301918-os/kern/fs.c:32
c02003b2: c9 leave
c02003b3: c3 ret
c02003b4 <do_read>:
do_read():
/media/unix/Data/Code/2020301918-os/kern/fs.c:36
c02003b4: 55 push %ebp
c02003b5: 89 e5 mov %esp,%ebp
c02003b7: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:37
c02003ba: 81 7d 0c ff ff ff bf cmpl $0xbfffffff,0xc(%ebp)
c02003c1: 76 16 jbe c02003d9 <do_read+0x25>
/media/unix/Data/Code/2020301918-os/kern/fs.c:37 (discriminator 1)
c02003c3: 68 27 40 20 c0 push $0xc0204027
c02003c8: 68 08 40 20 c0 push $0xc0204008
c02003cd: 6a 25 push $0x25
c02003cf: 68 1d 40 20 c0 push $0xc020401d
c02003d4: e8 e0 0d 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:38
c02003d9: 8b 55 0c mov 0xc(%ebp),%edx
c02003dc: 8b 45 10 mov 0x10(%ebp),%eax
c02003df: 01 d0 add %edx,%eax
c02003e1: 3d ff ff ff bf cmp $0xbfffffff,%eax
c02003e6: 76 16 jbe c02003fe <do_read+0x4a>
/media/unix/Data/Code/2020301918-os/kern/fs.c:38 (discriminator 1)
c02003e8: 68 40 40 20 c0 push $0xc0204040
c02003ed: 68 08 40 20 c0 push $0xc0204008
c02003f2: 6a 26 push $0x26
c02003f4: 68 1d 40 20 c0 push $0xc020401d
c02003f9: e8 bb 0d 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:39
c02003fe: 83 ec 04 sub $0x4,%esp
c0200401: ff 75 10 push 0x10(%ebp)
c0200404: ff 75 0c push 0xc(%ebp)
c0200407: ff 75 08 push 0x8(%ebp)
c020040a: e8 41 ff ff ff call c0200350 <kern_read>
c020040f: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:40
c0200412: c9 leave
c0200413: c3 ret
c0200414 <kern_write>:
kern_write():
/media/unix/Data/Code/2020301918-os/kern/fs.c:49
c0200414: 55 push %ebp
c0200415: 89 e5 mov %esp,%ebp
c0200417: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:50
c020041a: 83 7d 08 01 cmpl $0x1,0x8(%ebp)
c020041e: 74 16 je c0200436 <kern_write+0x22>
/media/unix/Data/Code/2020301918-os/kern/fs.c:50 (discriminator 1)
c0200420: 68 5f 40 20 c0 push $0xc020405f
c0200425: 68 08 40 20 c0 push $0xc0204008
c020042a: 6a 32 push $0x32
c020042c: 68 1d 40 20 c0 push $0xc020401d
c0200431: e8 83 0d 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:52
c0200436: 8b 45 0c mov 0xc(%ebp),%eax
c0200439: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:53
c020043c: c7 45 f0 00 00 00 00 movl $0x0,-0x10(%ebp)
c0200443: eb 24 jmp c0200469 <kern_write+0x55>
/media/unix/Data/Code/2020301918-os/kern/fs.c:54 (discriminator 3)
c0200445: 8b 45 f4 mov -0xc(%ebp),%eax
c0200448: 8d 50 01 lea 0x1(%eax),%edx
c020044b: 89 55 f4 mov %edx,-0xc(%ebp)
c020044e: 0f b6 00 movzbl (%eax),%eax
c0200451: 0f be c0 movsbl %al,%eax
c0200454: 83 ec 08 sub $0x8,%esp
c0200457: 50 push %eax
c0200458: 68 67 40 20 c0 push $0xc0204067
c020045d: e8 75 26 00 00 call c0202ad7 <kprintf>
c0200462: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:53 (discriminator 3)
c0200465: 83 45 f0 01 addl $0x1,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:53 (discriminator 1)
c0200469: 8b 45 f0 mov -0x10(%ebp),%eax
c020046c: 3b 45 10 cmp 0x10(%ebp),%eax
c020046f: 72 d4 jb c0200445 <kern_write+0x31>
/media/unix/Data/Code/2020301918-os/kern/fs.c:56
c0200471: 8b 45 10 mov 0x10(%ebp),%eax
/media/unix/Data/Code/2020301918-os/kern/fs.c:57
c0200474: c9 leave
c0200475: c3 ret
c0200476 <do_write>:
do_write():
/media/unix/Data/Code/2020301918-os/kern/fs.c:61
c0200476: 55 push %ebp
c0200477: 89 e5 mov %esp,%ebp
c0200479: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:62
c020047c: 81 7d 0c ff ff ff bf cmpl $0xbfffffff,0xc(%ebp)
c0200483: 76 16 jbe c020049b <do_write+0x25>
/media/unix/Data/Code/2020301918-os/kern/fs.c:62 (discriminator 1)
c0200485: 68 27 40 20 c0 push $0xc0204027
c020048a: 68 08 40 20 c0 push $0xc0204008
c020048f: 6a 3e push $0x3e
c0200491: 68 1d 40 20 c0 push $0xc020401d
c0200496: e8 1e 0d 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:63
c020049b: 8b 55 0c mov 0xc(%ebp),%edx
c020049e: 8b 45 10 mov 0x10(%ebp),%eax
c02004a1: 01 d0 add %edx,%eax
c02004a3: 3d ff ff ff bf cmp $0xbfffffff,%eax
c02004a8: 76 16 jbe c02004c0 <do_write+0x4a>
/media/unix/Data/Code/2020301918-os/kern/fs.c:63 (discriminator 1)
c02004aa: 68 40 40 20 c0 push $0xc0204040
c02004af: 68 08 40 20 c0 push $0xc0204008
c02004b4: 6a 3f push $0x3f
c02004b6: 68 1d 40 20 c0 push $0xc020401d
c02004bb: e8 f9 0c 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:64
c02004c0: 83 ec 04 sub $0x4,%esp
c02004c3: ff 75 10 push 0x10(%ebp)
c02004c6: ff 75 0c push 0xc(%ebp)
c02004c9: ff 75 08 push 0x8(%ebp)
c02004cc: e8 43 ff ff ff call c0200414 <kern_write>
c02004d1: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:65
c02004d4: c9 leave
c02004d5: c3 ret
c02004d6 <waitdisk>:
waitdisk():
/media/unix/Data/Code/2020301918-os/kern/fs.c:71
c02004d6: 55 push %ebp
c02004d7: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/fs.c:73
c02004d9: 90 nop
/media/unix/Data/Code/2020301918-os/kern/fs.c:73 (discriminator 1)
c02004da: 68 f7 01 00 00 push $0x1f7
c02004df: e8 1a fe ff ff call c02002fe <inb>
c02004e4: 83 c4 04 add $0x4,%esp
c02004e7: 0f b6 c0 movzbl %al,%eax
c02004ea: 25 c0 00 00 00 and $0xc0,%eax
c02004ef: 83 f8 40 cmp $0x40,%eax
c02004f2: 75 e6 jne c02004da <waitdisk+0x4>
/media/unix/Data/Code/2020301918-os/kern/fs.c:75
c02004f4: 90 nop
c02004f5: 90 nop
c02004f6: c9 leave
c02004f7: c3 ret
c02004f8 <readsect>:
readsect():
/media/unix/Data/Code/2020301918-os/kern/fs.c:79
c02004f8: 55 push %ebp
c02004f9: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/fs.c:81
c02004fb: e8 d6 ff ff ff call c02004d6 <waitdisk>
/media/unix/Data/Code/2020301918-os/kern/fs.c:83
c0200500: 6a 01 push $0x1
c0200502: 68 f2 01 00 00 push $0x1f2
c0200507: e8 2d fe ff ff call c0200339 <outb>
c020050c: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:84
c020050f: 8b 45 0c mov 0xc(%ebp),%eax
c0200512: 0f b6 c0 movzbl %al,%eax
c0200515: 50 push %eax
c0200516: 68 f3 01 00 00 push $0x1f3
c020051b: e8 19 fe ff ff call c0200339 <outb>
c0200520: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:85
c0200523: 8b 45 0c mov 0xc(%ebp),%eax
c0200526: c1 e8 08 shr $0x8,%eax
c0200529: 0f b6 c0 movzbl %al,%eax
c020052c: 50 push %eax
c020052d: 68 f4 01 00 00 push $0x1f4
c0200532: e8 02 fe ff ff call c0200339 <outb>
c0200537: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:86
c020053a: 8b 45 0c mov 0xc(%ebp),%eax
c020053d: c1 e8 10 shr $0x10,%eax
c0200540: 0f b6 c0 movzbl %al,%eax
c0200543: 50 push %eax
c0200544: 68 f5 01 00 00 push $0x1f5
c0200549: e8 eb fd ff ff call c0200339 <outb>
c020054e: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:87
c0200551: 8b 45 0c mov 0xc(%ebp),%eax
c0200554: c1 e8 18 shr $0x18,%eax
c0200557: 83 c8 e0 or $0xffffffe0,%eax
c020055a: 0f b6 c0 movzbl %al,%eax
c020055d: 50 push %eax
c020055e: 68 f6 01 00 00 push $0x1f6
c0200563: e8 d1 fd ff ff call c0200339 <outb>
c0200568: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:88
c020056b: 6a 20 push $0x20
c020056d: 68 f7 01 00 00 push $0x1f7
c0200572: e8 c2 fd ff ff call c0200339 <outb>
c0200577: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:91
c020057a: e8 57 ff ff ff call c02004d6 <waitdisk>
/media/unix/Data/Code/2020301918-os/kern/fs.c:94
c020057f: 68 80 00 00 00 push $0x80
c0200584: ff 75 08 push 0x8(%ebp)
c0200587: 68 f0 01 00 00 push $0x1f0
c020058c: e8 82 fd ff ff call c0200313 <insl>
c0200591: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:95
c0200594: 90 nop
c0200595: c9 leave
c0200596: c3 ret
c0200597 <get_next_clus>:
get_next_clus():
/media/unix/Data/Code/2020301918-os/kern/fs.c:107
c0200597: 55 push %ebp
c0200598: 89 e5 mov %esp,%ebp
c020059a: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:108
c020059d: 8b 45 08 mov 0x8(%ebp),%eax
c02005a0: c1 e0 02 shl $0x2,%eax
c02005a3: c1 e8 09 shr $0x9,%eax
c02005a6: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:109
c02005a9: 8b 45 08 mov 0x8(%ebp),%eax
c02005ac: c1 e0 02 shl $0x2,%eax
c02005af: 25 fc 01 00 00 and $0x1fc,%eax
c02005b4: 89 45 f8 mov %eax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:112
c02005b7: 8b 15 c0 89 20 c0 mov 0xc02089c0,%edx
c02005bd: 8b 45 fc mov -0x4(%ebp),%eax
c02005c0: 01 c2 add %eax,%edx
c02005c2: a1 c8 89 20 c0 mov 0xc02089c8,%eax
c02005c7: 39 c2 cmp %eax,%edx
c02005c9: 74 29 je c02005f4 <get_next_clus+0x5d>
/media/unix/Data/Code/2020301918-os/kern/fs.c:113
c02005cb: 8b 15 c0 89 20 c0 mov 0xc02089c0,%edx
c02005d1: 8b 45 fc mov -0x4(%ebp),%eax
c02005d4: 01 d0 add %edx,%eax
c02005d6: 50 push %eax
c02005d7: 68 e0 8b 20 c0 push $0xc0208be0
c02005dc: e8 17 ff ff ff call c02004f8 <readsect>
c02005e1: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:114
c02005e4: 8b 15 c0 89 20 c0 mov 0xc02089c0,%edx
c02005ea: 8b 45 fc mov -0x4(%ebp),%eax
c02005ed: 01 d0 add %edx,%eax
c02005ef: a3 c8 89 20 c0 mov %eax,0xc02089c8
/media/unix/Data/Code/2020301918-os/kern/fs.c:116
c02005f4: 8b 45 f8 mov -0x8(%ebp),%eax
c02005f7: c1 e8 02 shr $0x2,%eax
c02005fa: 8b 04 85 e0 8b 20 c0 mov -0x3fdf7420(,%eax,4),%eax
/media/unix/Data/Code/2020301918-os/kern/fs.c:117
c0200601: c9 leave
c0200602: c3 ret
c0200603 <read_data_sec>:
read_data_sec():
/media/unix/Data/Code/2020301918-os/kern/fs.c:125
c0200603: 55 push %ebp
c0200604: 89 e5 mov %esp,%ebp
c0200606: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:126
c0200609: 83 6d 0c 02 subl $0x2,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:127
c020060d: 0f b6 05 ed 89 20 c0 movzbl 0xc02089ed,%eax
c0200614: 0f b6 c0 movzbl %al,%eax
c0200617: 8b 55 0c mov 0xc(%ebp),%edx
c020061a: 0f af c2 imul %edx,%eax
c020061d: 89 45 0c mov %eax,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:128
c0200620: a1 c4 89 20 c0 mov 0xc02089c4,%eax
c0200625: 01 45 0c add %eax,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:130
c0200628: c7 45 fc 00 00 00 00 movl $0x0,-0x4(%ebp)
c020062f: eb 1f jmp c0200650 <read_data_sec+0x4d>
/media/unix/Data/Code/2020301918-os/kern/fs.c:131 (discriminator 3)
c0200631: 8b 55 fc mov -0x4(%ebp),%edx
c0200634: 8b 45 0c mov 0xc(%ebp),%eax
c0200637: 01 d0 add %edx,%eax
c0200639: 50 push %eax
c020063a: ff 75 08 push 0x8(%ebp)
c020063d: e8 b6 fe ff ff call c02004f8 <readsect>
c0200642: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:130 (discriminator 3)
c0200645: 83 45 fc 01 addl $0x1,-0x4(%ebp)
c0200649: 81 45 08 00 02 00 00 addl $0x200,0x8(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:130 (discriminator 1)
c0200650: 0f b6 05 ed 89 20 c0 movzbl 0xc02089ed,%eax
c0200657: 0f b6 c0 movzbl %al,%eax
c020065a: 39 45 fc cmp %eax,-0x4(%ebp)
c020065d: 7c d2 jl c0200631 <read_data_sec+0x2e>
/media/unix/Data/Code/2020301918-os/kern/fs.c:132
c020065f: 8b 45 08 mov 0x8(%ebp),%eax
/media/unix/Data/Code/2020301918-os/kern/fs.c:133
c0200662: c9 leave
c0200663: c3 ret
c0200664 <read_file>:
read_file():
/media/unix/Data/Code/2020301918-os/kern/fs.c:142
c0200664: 55 push %ebp
c0200665: 89 e5 mov %esp,%ebp
c0200667: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:143
c020066a: 83 ec 0c sub $0xc,%esp
c020066d: ff 75 08 push 0x8(%ebp)
c0200670: e8 12 2a 00 00 call c0203087 <strlen>
c0200675: 83 c4 10 add $0x10,%esp
c0200678: 83 f8 0b cmp $0xb,%eax
c020067b: 74 19 je c0200696 <read_file+0x32>
/media/unix/Data/Code/2020301918-os/kern/fs.c:143 (discriminator 1)
c020067d: 68 6a 40 20 c0 push $0xc020406a
c0200682: 68 08 40 20 c0 push $0xc0204008
c0200687: 68 8f 00 00 00 push $0x8f
c020068c: 68 1d 40 20 c0 push $0xc020401d
c0200691: e8 23 0b 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:145
c0200696: 83 ec 08 sub $0x8,%esp
c0200699: 6a 00 push $0x0
c020069b: 68 e0 89 20 c0 push $0xc02089e0
c02006a0: e8 53 fe ff ff call c02004f8 <readsect>
c02006a5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/fs.c:147
c02006a8: 0f b7 05 ee 89 20 c0 movzwl 0xc02089ee,%eax
c02006af: 0f b7 c0 movzwl %ax,%eax
c02006b2: a3 c0 89 20 c0 mov %eax,0xc02089c0
/media/unix/Data/Code/2020301918-os/kern/fs.c:148
c02006b7: 8b 15 04 8a 20 c0 mov 0xc0208a04,%edx
c02006bd: 0f b6 05 f0 89 20 c0 movzbl 0xc02089f0,%eax
c02006c4: 0f b6 c0 movzbl %al,%eax
c02006c7: 0f af d0 imul %eax,%edx
c02006ca: a1 c0 89 20 c0 mov 0xc02089c0,%eax
c02006cf: 01 d0 add %edx,%eax
c02006d1: a3 c4 89 20 c0 mov %eax,0xc02089c4
/media/unix/Data/Code/2020301918-os/kern/fs.c:150
c02006d6: a1 0c 8a 20 c0 mov 0xc0208a0c,%eax
c02006db: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:151
c02006de: c7 45 f0 00 00 00 00 movl $0x0,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:153
c02006e5: 0f b7 05 eb 89 20 c0 movzwl 0xc02089eb,%eax
c02006ec: 66 3d 00 02 cmp $0x200,%ax
c02006f0: 75 0f jne c0200701 <read_file+0x9d>
/media/unix/Data/Code/2020301918-os/kern/fs.c:153 (discriminator 2)
c02006f2: 0f b6 05 ed 89 20 c0 movzbl 0xc02089ed,%eax
c02006f9: 3c 08 cmp $0x8,%al
c02006fb: 0f 84 b9 00 00 00 je c02007ba <read_file+0x156>
/media/unix/Data/Code/2020301918-os/kern/fs.c:153 (discriminator 3)
c0200701: 68 84 40 20 c0 push $0xc0204084
c0200706: 68 08 40 20 c0 push $0xc0204008
c020070b: 68 99 00 00 00 push $0x99
c0200710: 68 1d 40 20 c0 push $0xc020401d
c0200715: e8 9f 0a 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:158
c020071a: 83 ec 08 sub $0x8,%esp
c020071d: ff 75 f4 push -0xc(%ebp)
c0200720: 68 e0 8d 20 c0 push $0xc0208de0
c0200725: e8 d9 fe ff ff call c0200603 <read_data_sec>
c020072a: 83 c4 10 add $0x10,%esp
c020072d: 89 45 e8 mov %eax,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:159
c0200730: c7 45 ec e0 8d 20 c0 movl $0xc0208de0,-0x14(%ebp)
c0200737: eb 62 jmp c020079b <read_file+0x137>
/media/unix/Data/Code/2020301918-os/kern/fs.c:161
c0200739: 8b 45 ec mov -0x14(%ebp),%eax
c020073c: 83 ec 04 sub $0x4,%esp
c020073f: 6a 0b push $0xb
c0200741: ff 75 08 push 0x8(%ebp)
c0200744: 50 push %eax
c0200745: e8 74 2a 00 00 call c02031be <strncmp>
c020074a: 83 c4 10 add $0x10,%esp
c020074d: 85 c0 test %eax,%eax
c020074f: 75 46 jne c0200797 <read_file+0x133>
/media/unix/Data/Code/2020301918-os/kern/fs.c:162
c0200751: 8b 45 ec mov -0x14(%ebp),%eax
c0200754: 8b 40 1c mov 0x1c(%eax),%eax
c0200757: 3d 00 00 00 01 cmp $0x1000000,%eax
c020075c: 76 19 jbe c0200777 <read_file+0x113>
/media/unix/Data/Code/2020301918-os/kern/fs.c:162 (discriminator 1)
c020075e: 68 be 40 20 c0 push $0xc02040be
c0200763: 68 08 40 20 c0 push $0xc0204008
c0200768: 68 a2 00 00 00 push $0xa2
c020076d: 68 1d 40 20 c0 push $0xc020401d
c0200772: e8 42 0a 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:163
c0200777: 8b 45 ec mov -0x14(%ebp),%eax
c020077a: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020077e: 0f b7 c0 movzwl %ax,%eax
c0200781: c1 e0 10 shl $0x10,%eax
c0200784: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/fs.c:164
c0200786: 8b 45 ec mov -0x14(%ebp),%eax
c0200789: 0f b7 40 1a movzwl 0x1a(%eax),%eax
c020078d: 0f b7 c0 movzwl %ax,%eax
/media/unix/Data/Code/2020301918-os/kern/fs.c:163
c0200790: 09 d0 or %edx,%eax
c0200792: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:165
c0200795: eb 0c jmp c02007a3 <read_file+0x13f>
/media/unix/Data/Code/2020301918-os/kern/fs.c:160
c0200797: 83 45 ec 20 addl $0x20,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:160 (discriminator 1)
c020079b: 8b 45 ec mov -0x14(%ebp),%eax
c020079e: 3b 45 e8 cmp -0x18(%ebp),%eax
c02007a1: 72 96 jb c0200739 <read_file+0xd5>
/media/unix/Data/Code/2020301918-os/kern/fs.c:168
c02007a3: 83 7d f0 00 cmpl $0x0,-0x10(%ebp)
c02007a7: 75 20 jne c02007c9 <read_file+0x165>
/media/unix/Data/Code/2020301918-os/kern/fs.c:170
c02007a9: 83 ec 0c sub $0xc,%esp
c02007ac: ff 75 f4 push -0xc(%ebp)
c02007af: e8 e3 fd ff ff call c0200597 <get_next_clus>
c02007b4: 83 c4 10 add $0x10,%esp
c02007b7: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:157
c02007ba: 81 7d f4 f7 ff ff 0f cmpl $0xffffff7,-0xc(%ebp)
c02007c1: 0f 86 53 ff ff ff jbe c020071a <read_file+0xb6>
c02007c7: eb 01 jmp c02007ca <read_file+0x166>
/media/unix/Data/Code/2020301918-os/kern/fs.c:169
c02007c9: 90 nop
/media/unix/Data/Code/2020301918-os/kern/fs.c:173
c02007ca: 83 7d f0 00 cmpl $0x0,-0x10(%ebp)
c02007ce: 75 3c jne c020080c <read_file+0x1a8>
/media/unix/Data/Code/2020301918-os/kern/fs.c:174
c02007d0: ff 75 08 push 0x8(%ebp)
c02007d3: 68 dc 40 20 c0 push $0xc02040dc
c02007d8: 68 ae 00 00 00 push $0xae
c02007dd: 68 1d 40 20 c0 push $0xc020401d
c02007e2: e8 d2 09 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/fs.c:177
c02007e7: 83 ec 08 sub $0x8,%esp
c02007ea: ff 75 f0 push -0x10(%ebp)
c02007ed: ff 75 0c push 0xc(%ebp)
c02007f0: e8 0e fe ff ff call c0200603 <read_data_sec>
c02007f5: 83 c4 10 add $0x10,%esp
c02007f8: 89 45 0c mov %eax,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:178
c02007fb: 83 ec 0c sub $0xc,%esp
c02007fe: ff 75 f0 push -0x10(%ebp)
c0200801: e8 91 fd ff ff call c0200597 <get_next_clus>
c0200806: 83 c4 10 add $0x10,%esp
c0200809: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/fs.c:176
c020080c: 81 7d f0 f7 ff ff 0f cmpl $0xffffff7,-0x10(%ebp)
c0200813: 76 d2 jbe c02007e7 <read_file+0x183>
/media/unix/Data/Code/2020301918-os/kern/fs.c:180
c0200815: 90 nop
c0200816: 90 nop
c0200817: c9 leave
c0200818: c3 ret
c0200819 <xchg>:
xchg():
/media/unix/Data/Code/2020301918-os/inc/x86.h:200
c0200819: 55 push %ebp
c020081a: 89 e5 mov %esp,%ebp
c020081c: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:204
c020081f: 8b 55 08 mov 0x8(%ebp),%edx
c0200822: 8b 45 0c mov 0xc(%ebp),%eax
c0200825: 8b 4d 08 mov 0x8(%ebp),%ecx
c0200828: f0 87 02 lock xchg %eax,(%edx)
c020082b: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:208
c020082e: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:209
c0200831: c9 leave
c0200832: c3 ret
c0200833 <add_keyboard_buf>:
add_keyboard_buf():
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:27
c0200833: 55 push %ebp
c0200834: 89 e5 mov %esp,%ebp
c0200836: 83 ec 04 sub $0x4,%esp
c0200839: 8b 45 08 mov 0x8(%ebp),%eax
c020083c: 88 45 fc mov %al,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:29
c020083f: 90 nop
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:29 (discriminator 1)
c0200840: 6a 01 push $0x1
c0200842: 68 00 70 20 c0 push $0xc0207000
c0200847: e8 cd ff ff ff call c0200819 <xchg>
c020084c: 83 c4 08 add $0x8,%esp
c020084f: 83 f8 01 cmp $0x1,%eax
c0200852: 74 ec je c0200840 <add_keyboard_buf+0xd>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:31
c0200854: a1 0c 70 20 c0 mov 0xc020700c,%eax
c0200859: 3d 00 04 00 00 cmp $0x400,%eax
c020085e: 74 3b je c020089b <add_keyboard_buf+0x68>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:34
c0200860: a1 08 70 20 c0 mov 0xc0207008,%eax
c0200865: 8d 50 01 lea 0x1(%eax),%edx
c0200868: 89 15 08 70 20 c0 mov %edx,0xc0207008
c020086e: 0f b6 55 fc movzbl -0x4(%ebp),%edx
c0200872: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:35
c0200874: a1 08 70 20 c0 mov 0xc0207008,%eax
c0200879: ba 10 74 20 c0 mov $0xc0207410,%edx
c020087e: 39 d0 cmp %edx,%eax
c0200880: 75 0a jne c020088c <add_keyboard_buf+0x59>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:36
c0200882: c7 05 08 70 20 c0 10 movl $0xc0207010,0xc0207008
c0200889: 70 20 c0
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:37
c020088c: a1 0c 70 20 c0 mov 0xc020700c,%eax
c0200891: 83 c0 01 add $0x1,%eax
c0200894: a3 0c 70 20 c0 mov %eax,0xc020700c
c0200899: eb 01 jmp c020089c <add_keyboard_buf+0x69>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:32
c020089b: 90 nop
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:40
c020089c: 6a 00 push $0x0
c020089e: 68 00 70 20 c0 push $0xc0207000
c02008a3: e8 71 ff ff ff call c0200819 <xchg>
c02008a8: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:41
c02008ab: 90 nop
c02008ac: c9 leave
c02008ad: c3 ret
c02008ae <read_keyboard_buf>:
read_keyboard_buf():
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:49
c02008ae: 55 push %ebp
c02008af: 89 e5 mov %esp,%ebp
c02008b1: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:53
c02008b4: 90 nop
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:53 (discriminator 1)
c02008b5: 6a 01 push $0x1
c02008b7: 68 00 70 20 c0 push $0xc0207000
c02008bc: e8 58 ff ff ff call c0200819 <xchg>
c02008c1: 83 c4 08 add $0x8,%esp
c02008c4: 83 f8 01 cmp $0x1,%eax
c02008c7: 74 ec je c02008b5 <read_keyboard_buf+0x7>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:55
c02008c9: a1 0c 70 20 c0 mov 0xc020700c,%eax
c02008ce: 85 c0 test %eax,%eax
c02008d0: 75 06 jne c02008d8 <read_keyboard_buf+0x2a>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:56
c02008d2: c6 45 ff ff movb $0xff,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:57
c02008d6: eb 39 jmp c0200911 <read_keyboard_buf+0x63>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:60
c02008d8: a1 04 70 20 c0 mov 0xc0207004,%eax
c02008dd: 8d 50 01 lea 0x1(%eax),%edx
c02008e0: 89 15 04 70 20 c0 mov %edx,0xc0207004
c02008e6: 0f b6 00 movzbl (%eax),%eax
c02008e9: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:61
c02008ec: a1 04 70 20 c0 mov 0xc0207004,%eax
c02008f1: ba 10 74 20 c0 mov $0xc0207410,%edx
c02008f6: 39 d0 cmp %edx,%eax
c02008f8: 75 0a jne c0200904 <read_keyboard_buf+0x56>
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:62
c02008fa: c7 05 04 70 20 c0 10 movl $0xc0207010,0xc0207004
c0200901: 70 20 c0
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:63
c0200904: a1 0c 70 20 c0 mov 0xc020700c,%eax
c0200909: 83 e8 01 sub $0x1,%eax
c020090c: a3 0c 70 20 c0 mov %eax,0xc020700c
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:66
c0200911: 6a 00 push $0x0
c0200913: 68 00 70 20 c0 push $0xc0207000
c0200918: e8 fc fe ff ff call c0200819 <xchg>
c020091d: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:67
c0200920: 0f b6 45 ff movzbl -0x1(%ebp),%eax
/media/unix/Data/Code/2020301918-os/kern/keyboard.c:68
c0200924: c9 leave
c0200925: c3 ret
c0200926 <phy_malloc_4k>:
phy_malloc_4k():
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:15
c0200926: 55 push %ebp
c0200927: 89 e5 mov %esp,%ebp
c0200929: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:16
c020092c: a1 10 74 20 c0 mov 0xc0207410,%eax
c0200931: 3d ff ff ff 07 cmp $0x7ffffff,%eax
c0200936: 76 16 jbe c020094e <phy_malloc_4k+0x28>
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:16 (discriminator 1)
c0200938: 68 00 43 20 c0 push $0xc0204300
c020093d: 68 17 43 20 c0 push $0xc0204317
c0200942: 6a 10 push $0x10
c0200944: 68 2c 43 20 c0 push $0xc020432c
c0200949: e8 6b 08 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:18
c020094e: a1 10 74 20 c0 mov 0xc0207410,%eax
c0200953: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:19
c0200956: a1 10 74 20 c0 mov 0xc0207410,%eax
c020095b: 05 00 10 00 00 add $0x1000,%eax
c0200960: a3 10 74 20 c0 mov %eax,0xc0207410
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:21
c0200965: 8b 45 f4 mov -0xc(%ebp),%eax
/media/unix/Data/Code/2020301918-os/kern/kmalloc.c:22
c0200968: c9 leave
c0200969: c3 ret
c020096a <lcr3>:
lcr3():
/media/unix/Data/Code/2020301918-os/inc/x86.h:126
c020096a: 55 push %ebp
c020096b: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/inc/x86.h:127
c020096d: 8b 45 08 mov 0x8(%ebp),%eax
c0200970: 0f 22 d8 mov %eax,%cr3
/media/unix/Data/Code/2020301918-os/inc/x86.h:128
c0200973: 90 nop
c0200974: 5d pop %ebp
c0200975: c3 ret
c0200976 <init_segment>:
init_segment():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:107
c0200976: 55 push %ebp
c0200977: 89 e5 mov %esp,%ebp
c0200979: 83 ec 04 sub $0x4,%esp
c020097c: 8b 45 14 mov 0x14(%ebp),%eax
c020097f: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:108
c0200983: 8b 45 10 mov 0x10(%ebp),%eax
c0200986: 89 c2 mov %eax,%edx
c0200988: 8b 45 08 mov 0x8(%ebp),%eax
c020098b: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:109
c020098e: 8b 45 0c mov 0xc(%ebp),%eax
c0200991: 89 c2 mov %eax,%edx
c0200993: 8b 45 08 mov 0x8(%ebp),%eax
c0200996: 66 89 50 02 mov %dx,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:110
c020099a: 8b 45 0c mov 0xc(%ebp),%eax
c020099d: c1 e8 10 shr $0x10,%eax
c02009a0: 89 c2 mov %eax,%edx
c02009a2: 8b 45 08 mov 0x8(%ebp),%eax
c02009a5: 88 50 04 mov %dl,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:111
c02009a8: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c02009ac: 89 c2 mov %eax,%edx
c02009ae: 8b 45 08 mov 0x8(%ebp),%eax
c02009b1: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c02009b4: 8b 45 10 mov 0x10(%ebp),%eax
c02009b7: c1 e8 10 shr $0x10,%eax
c02009ba: 83 e0 0f and $0xf,%eax
c02009bd: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:113
c02009bf: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c02009c3: 66 c1 e8 08 shr $0x8,%ax
c02009c7: 83 e0 f0 and $0xfffffff0,%eax
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c02009ca: 09 c2 or %eax,%edx
c02009cc: 8b 45 08 mov 0x8(%ebp),%eax
c02009cf: 88 50 06 mov %dl,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:114
c02009d2: 8b 45 0c mov 0xc(%ebp),%eax
c02009d5: c1 e8 18 shr $0x18,%eax
c02009d8: 89 c2 mov %eax,%edx
c02009da: 8b 45 08 mov 0x8(%ebp),%eax
c02009dd: 88 50 07 mov %dl,0x7(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:115
c02009e0: 90 nop
c02009e1: c9 leave
c02009e2: c3 ret
c02009e3 <init_gate>:
init_gate():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:119
c02009e3: 55 push %ebp
c02009e4: 89 e5 mov %esp,%ebp
c02009e6: 83 ec 08 sub $0x8,%esp
c02009e9: 8b 55 0c mov 0xc(%ebp),%edx
c02009ec: 8b 45 14 mov 0x14(%ebp),%eax
c02009ef: 88 55 fc mov %dl,-0x4(%ebp)
c02009f2: 88 45 f8 mov %al,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:120
c02009f5: 8b 45 10 mov 0x10(%ebp),%eax
c02009f8: 89 c2 mov %eax,%edx
c02009fa: 8b 45 08 mov 0x8(%ebp),%eax
c02009fd: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:121
c0200a00: 8b 45 08 mov 0x8(%ebp),%eax
c0200a03: 66 c7 40 02 08 00 movw $0x8,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:122
c0200a09: 8b 45 08 mov 0x8(%ebp),%eax
c0200a0c: c6 40 04 00 movb $0x0,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:123
c0200a10: 0f b6 45 f8 movzbl -0x8(%ebp),%eax
c0200a14: c1 e0 05 shl $0x5,%eax
c0200a17: 89 c2 mov %eax,%edx
c0200a19: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c0200a1d: 09 d0 or %edx,%eax
c0200a1f: 89 c2 mov %eax,%edx
c0200a21: 8b 45 08 mov 0x8(%ebp),%eax
c0200a24: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:124
c0200a27: 8b 45 10 mov 0x10(%ebp),%eax
c0200a2a: c1 e8 10 shr $0x10,%eax
c0200a2d: 89 c2 mov %eax,%edx
c0200a2f: 8b 45 08 mov 0x8(%ebp),%eax
c0200a32: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:125
c0200a36: 90 nop
c0200a37: c9 leave
c0200a38: c3 ret
c0200a39 <init_segment_regs>:
init_segment_regs():
/media/unix/Data/Code/2020301918-os/kern/main.c:26
c0200a39: 55 push %ebp
c0200a3a: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/main.c:27
c0200a3c: 8b 45 08 mov 0x8(%ebp),%eax
c0200a3f: c7 40 38 0f 00 00 00 movl $0xf,0x38(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:29
c0200a46: 8b 45 08 mov 0x8(%ebp),%eax
c0200a49: c7 40 0c 17 00 00 00 movl $0x17,0xc(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:31
c0200a50: 8b 45 08 mov 0x8(%ebp),%eax
c0200a53: c7 40 08 17 00 00 00 movl $0x17,0x8(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:33
c0200a5a: 8b 45 08 mov 0x8(%ebp),%eax
c0200a5d: c7 40 04 17 00 00 00 movl $0x17,0x4(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:35
c0200a64: 8b 45 08 mov 0x8(%ebp),%eax
c0200a67: c7 40 44 17 00 00 00 movl $0x17,0x44(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:37
c0200a6e: 8b 45 08 mov 0x8(%ebp),%eax
c0200a71: c7 00 1b 00 00 00 movl $0x1b,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:39
c0200a77: 90 nop
c0200a78: 5d pop %ebp
c0200a79: c3 ret
c0200a7a <lml_map>:
lml_map():
/media/unix/Data/Code/2020301918-os/kern/main.c:42
c0200a7a: 55 push %ebp
c0200a7b: 89 e5 mov %esp,%ebp
c0200a7d: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:43
c0200a80: 8b 45 08 mov 0x8(%ebp),%eax
c0200a83: 2d 00 00 00 40 sub $0x40000000,%eax
c0200a88: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:44
c0200a8b: 81 45 f4 00 0c 00 00 addl $0xc00,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:46
c0200a92: 8b 45 0c mov 0xc(%ebp),%eax
c0200a95: c1 e8 16 shr $0x16,%eax
c0200a98: c1 e0 02 shl $0x2,%eax
c0200a9b: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:47
c0200a9e: 8b 45 f4 mov -0xc(%ebp),%eax
c0200aa1: 8b 00 mov (%eax),%eax
c0200aa3: 83 e0 01 and $0x1,%eax
c0200aa6: 85 c0 test %eax,%eax
c0200aa8: 75 12 jne c0200abc <lml_map+0x42>
/media/unix/Data/Code/2020301918-os/kern/main.c:49
c0200aaa: e8 77 fe ff ff call c0200926 <phy_malloc_4k>
c0200aaf: 0b 45 14 or 0x14(%ebp),%eax
c0200ab2: 83 c8 01 or $0x1,%eax
c0200ab5: 89 c2 mov %eax,%edx
c0200ab7: 8b 45 f4 mov -0xc(%ebp),%eax
c0200aba: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:51
c0200abc: 8b 45 f4 mov -0xc(%ebp),%eax
c0200abf: 8b 00 mov (%eax),%eax
c0200ac1: 25 00 f0 ff ff and $0xfffff000,%eax
c0200ac6: 2d 00 00 00 40 sub $0x40000000,%eax
c0200acb: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:53
c0200ace: 8b 45 0c mov 0xc(%ebp),%eax
c0200ad1: c1 e8 0c shr $0xc,%eax
c0200ad4: 25 ff 03 00 00 and $0x3ff,%eax
c0200ad9: c1 e0 02 shl $0x2,%eax
c0200adc: 01 45 f0 add %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:55
c0200adf: 8b 45 10 mov 0x10(%ebp),%eax
c0200ae2: 25 00 f0 ff ff and $0xfffff000,%eax
c0200ae7: 0b 45 14 or 0x14(%ebp),%eax
c0200aea: 83 c8 01 or $0x1,%eax
c0200aed: 89 c2 mov %eax,%edx
c0200aef: 8b 45 f0 mov -0x10(%ebp),%eax
c0200af2: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:56
c0200af4: 90 nop
c0200af5: c9 leave
c0200af6: c3 ret
c0200af7 <kernel_main>:
kernel_main():
/media/unix/Data/Code/2020301918-os/kern/main.c:63
c0200af7: 55 push %ebp
c0200af8: 89 e5 mov %esp,%ebp
c0200afa: 53 push %ebx
c0200afb: 83 ec 74 sub $0x74,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:64
c0200afe: 83 ec 0c sub $0xc,%esp
c0200b01: 68 3b 43 20 c0 push $0xc020433b
c0200b06: e8 cc 1f 00 00 call c0202ad7 <kprintf>
c0200b0b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:66
c0200b0e: c7 45 f4 00 9e 20 c0 movl $0xc0209e00,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:68
c0200b15: c7 45 f0 00 00 00 00 movl $0x0,-0x10(%ebp)
c0200b1c: e9 ba 02 00 00 jmp c0200ddb <kernel_main+0x2e4>
/media/unix/Data/Code/2020301918-os/kern/main.c:70
c0200b21: 83 ec 0c sub $0xc,%esp
c0200b24: ff 75 f4 push -0xc(%ebp)
c0200b27: e8 0d ff ff ff call c0200a39 <init_segment_regs>
c0200b2c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:72
c0200b2f: e8 f2 fd ff ff call c0200926 <phy_malloc_4k>
c0200b34: 8b 55 f4 mov -0xc(%ebp),%edx
c0200b37: 89 42 70 mov %eax,0x70(%edx)
/media/unix/Data/Code/2020301918-os/kern/main.c:74
c0200b3a: 8b 45 f4 mov -0xc(%ebp),%eax
c0200b3d: 8b 40 70 mov 0x70(%eax),%eax
c0200b40: 83 ec 0c sub $0xc,%esp
c0200b43: 50 push %eax
c0200b44: e8 ff 02 00 00 call c0200e48 <map_kern>
c0200b49: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:88
c0200b4c: 8b 55 f0 mov -0x10(%ebp),%edx
c0200b4f: 89 d0 mov %edx,%eax
c0200b51: 01 c0 add %eax,%eax
c0200b53: 01 d0 add %edx,%eax
c0200b55: c1 e0 02 shl $0x2,%eax
c0200b58: 05 14 74 20 c0 add $0xc0207414,%eax
c0200b5d: 83 ec 08 sub $0x8,%esp
c0200b60: 68 00 00 00 c3 push $0xc3000000
c0200b65: 50 push %eax
c0200b66: e8 f9 fa ff ff call c0200664 <read_file>
c0200b6b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:92
c0200b6e: c7 45 d8 00 00 00 c3 movl $0xc3000000,-0x28(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:93
c0200b75: 8b 45 d8 mov -0x28(%ebp),%eax
c0200b78: 8b 00 mov (%eax),%eax
c0200b7a: 3d 7f 45 4c 46 cmp $0x464c457f,%eax
c0200b7f: 74 16 je c0200b97 <kernel_main+0xa0>
/media/unix/Data/Code/2020301918-os/kern/main.c:93 (discriminator 1)
c0200b81: 68 54 43 20 c0 push $0xc0204354
c0200b86: 68 72 43 20 c0 push $0xc0204372
c0200b8b: 6a 5d push $0x5d
c0200b8d: 68 87 43 20 c0 push $0xc0204387
c0200b92: e8 22 06 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/main.c:94
c0200b97: 8b 45 d8 mov -0x28(%ebp),%eax
c0200b9a: 89 45 d4 mov %eax,-0x2c(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:95
c0200b9d: c7 45 ec 00 00 00 00 movl $0x0,-0x14(%ebp)
c0200ba4: e9 16 01 00 00 jmp c0200cbf <kernel_main+0x1c8>
/media/unix/Data/Code/2020301918-os/kern/main.c:96
c0200ba9: 8b 45 d4 mov -0x2c(%ebp),%eax
c0200bac: 0f b7 40 2a movzwl 0x2a(%eax),%eax
c0200bb0: 0f b7 c0 movzwl %ax,%eax
c0200bb3: 0f af 45 ec imul -0x14(%ebp),%eax
c0200bb7: 89 c2 mov %eax,%edx
c0200bb9: 8b 45 d4 mov -0x2c(%ebp),%eax
c0200bbc: 8b 40 1c mov 0x1c(%eax),%eax
c0200bbf: 01 c2 add %eax,%edx
c0200bc1: 8b 45 d8 mov -0x28(%ebp),%eax
c0200bc4: 01 d0 add %edx,%eax
c0200bc6: 89 45 c4 mov %eax,-0x3c(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:97
c0200bc9: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200bcc: 8b 00 mov (%eax),%eax
c0200bce: 83 f8 01 cmp $0x1,%eax
c0200bd1: 0f 85 e4 00 00 00 jne c0200cbb <kernel_main+0x1c4>
/media/unix/Data/Code/2020301918-os/kern/main.c:98
c0200bd7: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200bda: 8b 40 08 mov 0x8(%eax),%eax
c0200bdd: 25 00 f0 ff ff and $0xfffff000,%eax
c0200be2: 89 45 c0 mov %eax,-0x40(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:99
c0200be5: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200be8: 8b 50 08 mov 0x8(%eax),%edx
c0200beb: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200bee: 8b 40 14 mov 0x14(%eax),%eax
c0200bf1: 01 d0 add %edx,%eax
c0200bf3: 83 e8 01 sub $0x1,%eax
c0200bf6: 25 00 f0 ff ff and $0xfffff000,%eax
c0200bfb: 89 45 bc mov %eax,-0x44(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:101
c0200bfe: 8b 45 bc mov -0x44(%ebp),%eax
c0200c01: 2b 45 c0 sub -0x40(%ebp),%eax
c0200c04: c1 e8 0c shr $0xc,%eax
c0200c07: 83 c0 01 add $0x1,%eax
c0200c0a: 89 45 b8 mov %eax,-0x48(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:102
c0200c0d: c7 45 e8 00 00 00 00 movl $0x0,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:103
c0200c14: c7 45 e4 00 00 00 00 movl $0x0,-0x1c(%ebp)
c0200c1b: eb 2e jmp c0200c4b <kernel_main+0x154>
/media/unix/Data/Code/2020301918-os/kern/main.c:104 (discriminator 3)
c0200c1d: e8 04 fd ff ff call c0200926 <phy_malloc_4k>
c0200c22: 89 45 e8 mov %eax,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:105 (discriminator 3)
c0200c25: 8b 45 e4 mov -0x1c(%ebp),%eax
c0200c28: c1 e0 0c shl $0xc,%eax
c0200c2b: 89 c2 mov %eax,%edx
c0200c2d: 8b 45 c0 mov -0x40(%ebp),%eax
c0200c30: 01 c2 add %eax,%edx
c0200c32: 8b 45 f4 mov -0xc(%ebp),%eax
c0200c35: 8b 40 70 mov 0x70(%eax),%eax
c0200c38: 6a 07 push $0x7
c0200c3a: ff 75 e8 push -0x18(%ebp)
c0200c3d: 52 push %edx
c0200c3e: 50 push %eax
c0200c3f: e8 36 fe ff ff call c0200a7a <lml_map>
c0200c44: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:103 (discriminator 3)
c0200c47: 83 45 e4 01 addl $0x1,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:103 (discriminator 1)
c0200c4b: 8b 45 e4 mov -0x1c(%ebp),%eax
c0200c4e: 39 45 b8 cmp %eax,-0x48(%ebp)
c0200c51: 77 ca ja c0200c1d <kernel_main+0x126>
/media/unix/Data/Code/2020301918-os/kern/main.c:107
c0200c53: 8b 45 b8 mov -0x48(%ebp),%eax
c0200c56: 83 e8 01 sub $0x1,%eax
c0200c59: c1 e0 0c shl $0xc,%eax
c0200c5c: 89 c2 mov %eax,%edx
c0200c5e: 8b 45 e8 mov -0x18(%ebp),%eax
c0200c61: 29 d0 sub %edx,%eax
c0200c63: 89 45 b4 mov %eax,-0x4c(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:108
c0200c66: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200c69: 8b 40 10 mov 0x10(%eax),%eax
c0200c6c: 8b 55 c4 mov -0x3c(%ebp),%edx
c0200c6f: 8b 4a 04 mov 0x4(%edx),%ecx
c0200c72: 8b 55 d8 mov -0x28(%ebp),%edx
c0200c75: 01 ca add %ecx,%edx
c0200c77: 8b 4d b4 mov -0x4c(%ebp),%ecx
c0200c7a: 81 e9 00 00 00 40 sub $0x40000000,%ecx
c0200c80: 83 ec 04 sub $0x4,%esp
c0200c83: 50 push %eax
c0200c84: 52 push %edx
c0200c85: 51 push %ecx
c0200c86: e8 ba 25 00 00 call c0203245 <memcpy>
c0200c8b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:109
c0200c8e: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200c91: 8b 50 14 mov 0x14(%eax),%edx
c0200c94: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200c97: 8b 40 10 mov 0x10(%eax),%eax
c0200c9a: 29 c2 sub %eax,%edx
c0200c9c: 8b 45 c4 mov -0x3c(%ebp),%eax
c0200c9f: 8b 48 10 mov 0x10(%eax),%ecx
c0200ca2: 8b 45 b4 mov -0x4c(%ebp),%eax
c0200ca5: 01 c8 add %ecx,%eax
c0200ca7: 2d 00 00 00 40 sub $0x40000000,%eax
c0200cac: 83 ec 04 sub $0x4,%esp
c0200caf: 52 push %edx
c0200cb0: 6a 00 push $0x0
c0200cb2: 50 push %eax
c0200cb3: e8 5c 25 00 00 call c0203214 <memset>
c0200cb8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:95 (discriminator 2)
c0200cbb: 83 45 ec 01 addl $0x1,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:95 (discriminator 1)
c0200cbf: 8b 45 d4 mov -0x2c(%ebp),%eax
c0200cc2: 0f b7 40 2c movzwl 0x2c(%eax),%eax
c0200cc6: 0f b7 c0 movzwl %ax,%eax
c0200cc9: 39 45 ec cmp %eax,-0x14(%ebp)
c0200ccc: 0f 8c d7 fe ff ff jl c0200ba9 <kernel_main+0xb2>
/media/unix/Data/Code/2020301918-os/kern/main.c:117
c0200cd2: e8 4f fc ff ff call c0200926 <phy_malloc_4k>
c0200cd7: 89 45 d0 mov %eax,-0x30(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:118
c0200cda: c7 45 e0 00 00 00 00 movl $0x0,-0x20(%ebp)
c0200ce1: eb 09 jmp c0200cec <kernel_main+0x1f5>
/media/unix/Data/Code/2020301918-os/kern/main.c:118 (discriminator 3)
c0200ce3: e8 3e fc ff ff call c0200926 <phy_malloc_4k>
c0200ce8: 83 45 e0 01 addl $0x1,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:118 (discriminator 1)
c0200cec: 83 7d e0 05 cmpl $0x5,-0x20(%ebp)
c0200cf0: 7e f1 jle c0200ce3 <kernel_main+0x1ec>
/media/unix/Data/Code/2020301918-os/kern/main.c:119
c0200cf2: e8 2f fc ff ff call c0200926 <phy_malloc_4k>
c0200cf7: 89 45 cc mov %eax,-0x34(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:120
c0200cfa: c7 45 dc 00 00 00 00 movl $0x0,-0x24(%ebp)
c0200d01: eb 3b jmp c0200d3e <kernel_main+0x247>
/media/unix/Data/Code/2020301918-os/kern/main.c:121 (discriminator 3)
c0200d03: 8b 45 dc mov -0x24(%ebp),%eax
c0200d06: c1 e0 0c shl $0xc,%eax
c0200d09: 89 c2 mov %eax,%edx
c0200d0b: 8b 45 d0 mov -0x30(%ebp),%eax
c0200d0e: 8d 0c 02 lea (%edx,%eax,1),%ecx
c0200d11: b8 08 00 00 00 mov $0x8,%eax
c0200d16: 2b 45 dc sub -0x24(%ebp),%eax
c0200d19: c1 e0 0c shl $0xc,%eax
c0200d1c: 89 c3 mov %eax,%ebx
c0200d1e: b8 00 00 00 c0 mov $0xc0000000,%eax
c0200d23: 29 d8 sub %ebx,%eax
c0200d25: 89 c2 mov %eax,%edx
c0200d27: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d2a: 8b 40 70 mov 0x70(%eax),%eax
c0200d2d: 6a 07 push $0x7
c0200d2f: 51 push %ecx
c0200d30: 52 push %edx
c0200d31: 50 push %eax
c0200d32: e8 43 fd ff ff call c0200a7a <lml_map>
c0200d37: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:120 (discriminator 3)
c0200d3a: 83 45 dc 01 addl $0x1,-0x24(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:120 (discriminator 1)
c0200d3e: 83 7d dc 07 cmpl $0x7,-0x24(%ebp)
c0200d42: 7e bf jle c0200d03 <kernel_main+0x20c>
/media/unix/Data/Code/2020301918-os/kern/main.c:123 (discriminator 2)
c0200d44: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d47: c7 40 40 00 00 00 c0 movl $0xc0000000,0x40(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:124 (discriminator 2)
c0200d4e: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d51: 8b 40 40 mov 0x40(%eax),%eax
c0200d54: 8d 50 fc lea -0x4(%eax),%edx
c0200d57: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d5a: 89 50 40 mov %edx,0x40(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:125 (discriminator 2)
c0200d5d: 8b 45 cc mov -0x34(%ebp),%eax
c0200d60: 2d 00 f0 ff 3f sub $0x3ffff000,%eax
c0200d65: 89 45 c8 mov %eax,-0x38(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:126 (discriminator 2)
c0200d68: 83 6d c8 04 subl $0x4,-0x38(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:127 (discriminator 2)
c0200d6c: 8b 45 d4 mov -0x2c(%ebp),%eax
c0200d6f: 8b 50 18 mov 0x18(%eax),%edx
c0200d72: 8b 45 c8 mov -0x38(%ebp),%eax
c0200d75: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:129 (discriminator 2)
c0200d77: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d7a: c7 40 3c 02 12 00 00 movl $0x1202,0x3c(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:141 (discriminator 2)
c0200d81: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d84: 8d 90 f8 1f 00 00 lea 0x1ff8(%eax),%edx
c0200d8a: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d8d: 89 50 68 mov %edx,0x68(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:143 (discriminator 2)
c0200d90: 8b 45 f4 mov -0xc(%ebp),%eax
c0200d93: 8b 40 68 mov 0x68(%eax),%eax
c0200d96: ba 6e 00 20 c0 mov $0xc020006e,%edx
c0200d9b: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:145 (discriminator 2)
c0200d9d: 8b 55 f4 mov -0xc(%ebp),%edx
c0200da0: 8b 45 f4 mov -0xc(%ebp),%eax
c0200da3: 8b 40 68 mov 0x68(%eax),%eax
c0200da6: 83 c0 04 add $0x4,%eax
c0200da9: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:148 (discriminator 2)
c0200dab: 8b 55 f0 mov -0x10(%ebp),%edx
c0200dae: 8b 45 f4 mov -0xc(%ebp),%eax
c0200db1: 89 50 6c mov %edx,0x6c(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:152 (discriminator 2)
c0200db4: 8b 45 f0 mov -0x10(%ebp),%eax
c0200db7: 8b 14 85 2c 74 20 c0 mov -0x3fdf8bd4(,%eax,4),%edx
c0200dbe: 8b 45 f4 mov -0xc(%ebp),%eax
c0200dc1: 89 50 78 mov %edx,0x78(%eax)
c0200dc4: 8b 45 f4 mov -0xc(%ebp),%eax
c0200dc7: 8b 50 78 mov 0x78(%eax),%edx
c0200dca: 8b 45 f4 mov -0xc(%ebp),%eax
c0200dcd: 89 50 74 mov %edx,0x74(%eax)
/media/unix/Data/Code/2020301918-os/kern/main.c:68 (discriminator 2)
c0200dd0: 83 45 f0 01 addl $0x1,-0x10(%ebp)
c0200dd4: 81 45 f4 00 20 00 00 addl $0x2000,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/main.c:68 (discriminator 1)
c0200ddb: 83 7d f0 01 cmpl $0x1,-0x10(%ebp)
c0200ddf: 0f 8e 3c fd ff ff jle c0200b21 <kernel_main+0x2a>
/media/unix/Data/Code/2020301918-os/kern/main.c:155
c0200de5: c7 05 e4 9d 20 c0 00 movl $0xc0209e00,0xc0209de4
c0200dec: 9e 20 c0
/media/unix/Data/Code/2020301918-os/kern/main.c:157
c0200def: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0200df4: 8b 40 70 mov 0x70(%eax),%eax
c0200df7: 83 ec 0c sub $0xc,%esp
c0200dfa: 50 push %eax
c0200dfb: e8 6a fb ff ff call c020096a <lcr3>
c0200e00: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:158
c0200e03: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0200e08: 83 c0 48 add $0x48,%eax
c0200e0b: a3 24 ee 20 c0 mov %eax,0xc020ee24
/media/unix/Data/Code/2020301918-os/kern/main.c:160
c0200e10: c6 05 e0 9d 20 c0 01 movb $0x1,0xc0209de0
/media/unix/Data/Code/2020301918-os/kern/main.c:164
c0200e17: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0200e1c: 83 c0 48 add $0x48,%eax
c0200e1f: 83 ec 08 sub $0x8,%esp
c0200e22: 50 push %eax
c0200e23: 8d 45 90 lea -0x70(%ebp),%eax
c0200e26: 50 push %eax
c0200e27: e8 a4 f4 ff ff call c02002d0 <switch_kern_context>
c0200e2c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/main.c:165
c0200e2f: 68 93 43 20 c0 push $0xc0204393
c0200e34: 68 72 43 20 c0 push $0xc0204372
c0200e39: 68 a5 00 00 00 push $0xa5
c0200e3e: 68 87 43 20 c0 push $0xc0204387
c0200e43: e8 71 03 00 00 call c02011b9 <_panic>
c0200e48 <map_kern>:
map_kern():
/media/unix/Data/Code/2020301918-os/kern/pmap.c:13
c0200e48: 55 push %ebp
c0200e49: 89 e5 mov %esp,%ebp
c0200e4b: 83 ec 28 sub $0x28,%esp
/media/unix/Data/Code/2020301918-os/kern/pmap.c:16
c0200e4e: 8b 45 08 mov 0x8(%ebp),%eax
c0200e51: 2d 00 00 00 40 sub $0x40000000,%eax
c0200e56: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:18
c0200e59: 81 45 f4 00 0c 00 00 addl $0xc00,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:20
c0200e60: c7 45 f0 20 00 00 00 movl $0x20,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:22
c0200e67: c7 45 ec 00 00 00 00 movl $0x0,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:23
c0200e6e: eb 74 jmp c0200ee4 <map_kern+0x9c>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:25
c0200e70: e8 b1 fa ff ff call c0200926 <phy_malloc_4k>
c0200e75: 89 45 e0 mov %eax,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:27
c0200e78: 8b 45 e0 mov -0x20(%ebp),%eax
c0200e7b: 25 ff 0f 00 00 and $0xfff,%eax
c0200e80: 85 c0 test %eax,%eax
c0200e82: 74 16 je c0200e9a <map_kern+0x52>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:27 (discriminator 1)
c0200e84: 68 95 43 20 c0 push $0xc0204395
c0200e89: 68 a9 43 20 c0 push $0xc02043a9
c0200e8e: 6a 1b push $0x1b
c0200e90: 68 be 43 20 c0 push $0xc02043be
c0200e95: e8 1f 03 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:29
c0200e9a: 8b 45 f4 mov -0xc(%ebp),%eax
c0200e9d: 8d 50 04 lea 0x4(%eax),%edx
c0200ea0: 89 55 f4 mov %edx,-0xc(%ebp)
c0200ea3: 8b 55 e0 mov -0x20(%ebp),%edx
c0200ea6: 83 ca 07 or $0x7,%edx
c0200ea9: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:33
c0200eab: 8b 45 e0 mov -0x20(%ebp),%eax
c0200eae: 2d 00 00 00 40 sub $0x40000000,%eax
c0200eb3: 89 45 e8 mov %eax,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:35
c0200eb6: c7 45 e4 00 04 00 00 movl $0x400,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:36
c0200ebd: eb 18 jmp c0200ed7 <map_kern+0x8f>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:39
c0200ebf: 8b 45 e8 mov -0x18(%ebp),%eax
c0200ec2: 8d 50 04 lea 0x4(%eax),%edx
c0200ec5: 89 55 e8 mov %edx,-0x18(%ebp)
c0200ec8: 8b 55 ec mov -0x14(%ebp),%edx
c0200ecb: 83 ca 03 or $0x3,%edx
c0200ece: 89 10 mov %edx,(%eax)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:41
c0200ed0: 81 45 ec 00 10 00 00 addl $0x1000,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/kern/pmap.c:36
c0200ed7: 8b 45 e4 mov -0x1c(%ebp),%eax
c0200eda: 8d 50 ff lea -0x1(%eax),%edx
c0200edd: 89 55 e4 mov %edx,-0x1c(%ebp)
c0200ee0: 85 c0 test %eax,%eax
c0200ee2: 75 db jne c0200ebf <map_kern+0x77>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:23
c0200ee4: 8b 45 f0 mov -0x10(%ebp),%eax
c0200ee7: 8d 50 ff lea -0x1(%eax),%edx
c0200eea: 89 55 f0 mov %edx,-0x10(%ebp)
c0200eed: 85 c0 test %eax,%eax
c0200eef: 0f 85 7b ff ff ff jne c0200e70 <map_kern+0x28>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:45
c0200ef5: 81 7d ec 00 00 00 08 cmpl $0x8000000,-0x14(%ebp)
c0200efc: 74 16 je c0200f14 <map_kern+0xcc>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:45 (discriminator 1)
c0200efe: 68 ca 43 20 c0 push $0xc02043ca
c0200f03: 68 a9 43 20 c0 push $0xc02043a9
c0200f08: 6a 2d push $0x2d
c0200f0a: 68 be 43 20 c0 push $0xc02043be
c0200f0f: e8 a5 02 00 00 call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/pmap.c:46
c0200f14: 90 nop
c0200f15: c9 leave
c0200f16: c3 ret
c0200f17 <lcr3>:
lcr3():
/media/unix/Data/Code/2020301918-os/inc/x86.h:126
c0200f17: 55 push %ebp
c0200f18: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/inc/x86.h:127
c0200f1a: 8b 45 08 mov 0x8(%ebp),%eax
c0200f1d: 0f 22 d8 mov %eax,%cr3
/media/unix/Data/Code/2020301918-os/inc/x86.h:128
c0200f20: 90 nop
c0200f21: 5d pop %ebp
c0200f22: c3 ret
c0200f23 <read_eflags>:
read_eflags():
/media/unix/Data/Code/2020301918-os/inc/x86.h:162
c0200f23: 55 push %ebp
c0200f24: 89 e5 mov %esp,%ebp
c0200f26: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:164
c0200f29: 9c pushf
c0200f2a: 58 pop %eax
c0200f2b: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:165
c0200f2e: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:166
c0200f31: c9 leave
c0200f32: c3 ret
c0200f33 <disable_int>:
disable_int():
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:73
c0200f33: 55 push %ebp
c0200f34: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:74
c0200f36: fa cli
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:75
c0200f37: 90 nop
c0200f38: 5d pop %ebp
c0200f39: c3 ret
c0200f3a <enable_int>:
enable_int():
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:79
c0200f3a: 55 push %ebp
c0200f3b: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:80
c0200f3d: 0f b6 05 e0 9d 20 c0 movzbl 0xc0209de0,%eax
c0200f44: 84 c0 test %al,%al
c0200f46: 74 01 je c0200f49 <enable_int+0xf>
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:81
c0200f48: fb sti
/media/unix/Data/Code/2020301918-os/inc/kern/trap.h:82
c0200f49: 90 nop
c0200f4a: 5d pop %ebp
c0200f4b: c3 ret
c0200f4c <init_segment>:
init_segment():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:107
c0200f4c: 55 push %ebp
c0200f4d: 89 e5 mov %esp,%ebp
c0200f4f: 83 ec 04 sub $0x4,%esp
c0200f52: 8b 45 14 mov 0x14(%ebp),%eax
c0200f55: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:108
c0200f59: 8b 45 10 mov 0x10(%ebp),%eax
c0200f5c: 89 c2 mov %eax,%edx
c0200f5e: 8b 45 08 mov 0x8(%ebp),%eax
c0200f61: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:109
c0200f64: 8b 45 0c mov 0xc(%ebp),%eax
c0200f67: 89 c2 mov %eax,%edx
c0200f69: 8b 45 08 mov 0x8(%ebp),%eax
c0200f6c: 66 89 50 02 mov %dx,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:110
c0200f70: 8b 45 0c mov 0xc(%ebp),%eax
c0200f73: c1 e8 10 shr $0x10,%eax
c0200f76: 89 c2 mov %eax,%edx
c0200f78: 8b 45 08 mov 0x8(%ebp),%eax
c0200f7b: 88 50 04 mov %dl,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:111
c0200f7e: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0200f82: 89 c2 mov %eax,%edx
c0200f84: 8b 45 08 mov 0x8(%ebp),%eax
c0200f87: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c0200f8a: 8b 45 10 mov 0x10(%ebp),%eax
c0200f8d: c1 e8 10 shr $0x10,%eax
c0200f90: 83 e0 0f and $0xf,%eax
c0200f93: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:113
c0200f95: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0200f99: 66 c1 e8 08 shr $0x8,%ax
c0200f9d: 83 e0 f0 and $0xfffffff0,%eax
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c0200fa0: 09 c2 or %eax,%edx
c0200fa2: 8b 45 08 mov 0x8(%ebp),%eax
c0200fa5: 88 50 06 mov %dl,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:114
c0200fa8: 8b 45 0c mov 0xc(%ebp),%eax
c0200fab: c1 e8 18 shr $0x18,%eax
c0200fae: 89 c2 mov %eax,%edx
c0200fb0: 8b 45 08 mov 0x8(%ebp),%eax
c0200fb3: 88 50 07 mov %dl,0x7(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:115
c0200fb6: 90 nop
c0200fb7: c9 leave
c0200fb8: c3 ret
c0200fb9 <init_gate>:
init_gate():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:119
c0200fb9: 55 push %ebp
c0200fba: 89 e5 mov %esp,%ebp
c0200fbc: 83 ec 08 sub $0x8,%esp
c0200fbf: 8b 55 0c mov 0xc(%ebp),%edx
c0200fc2: 8b 45 14 mov 0x14(%ebp),%eax
c0200fc5: 88 55 fc mov %dl,-0x4(%ebp)
c0200fc8: 88 45 f8 mov %al,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:120
c0200fcb: 8b 45 10 mov 0x10(%ebp),%eax
c0200fce: 89 c2 mov %eax,%edx
c0200fd0: 8b 45 08 mov 0x8(%ebp),%eax
c0200fd3: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:121
c0200fd6: 8b 45 08 mov 0x8(%ebp),%eax
c0200fd9: 66 c7 40 02 08 00 movw $0x8,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:122
c0200fdf: 8b 45 08 mov 0x8(%ebp),%eax
c0200fe2: c6 40 04 00 movb $0x0,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:123
c0200fe6: 0f b6 45 f8 movzbl -0x8(%ebp),%eax
c0200fea: c1 e0 05 shl $0x5,%eax
c0200fed: 89 c2 mov %eax,%edx
c0200fef: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c0200ff3: 09 d0 or %edx,%eax
c0200ff5: 89 c2 mov %eax,%edx
c0200ff7: 8b 45 08 mov 0x8(%ebp),%eax
c0200ffa: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:124
c0200ffd: 8b 45 10 mov 0x10(%ebp),%eax
c0201000: c1 e8 10 shr $0x10,%eax
c0201003: 89 c2 mov %eax,%edx
c0201005: 8b 45 08 mov 0x8(%ebp),%eax
c0201008: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:125
c020100c: 90 nop
c020100d: c9 leave
c020100e: c3 ret
c020100f <to_kern_stack>:
to_kern_stack():
/media/unix/Data/Code/2020301918-os/kern/process.c:24
c020100f: 55 push %ebp
c0201010: 89 e5 mov %esp,%ebp
c0201012: 53 push %ebx
/media/unix/Data/Code/2020301918-os/kern/process.c:30
c0201013: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
/media/unix/Data/Code/2020301918-os/kern/process.c:25
c0201018: bb 00 20 00 00 mov $0x2000,%ebx
c020101d: 8b 55 08 mov 0x8(%ebp),%edx
c0201020: 89 d1 mov %edx,%ecx
c0201022: 01 d8 add %ebx,%eax
c0201024: 89 c4 mov %eax,%esp
c0201026: 51 push %ecx
c0201027: ff 65 04 jmp *0x4(%ebp)
/media/unix/Data/Code/2020301918-os/kern/process.c:34
c020102a: 90 nop
c020102b: 8b 5d fc mov -0x4(%ebp),%ebx
c020102e: c9 leave
c020102f: c3 ret
c0201030 <schedule>:
schedule():
/media/unix/Data/Code/2020301918-os/kern/process.c:41
c0201030: 55 push %ebp
c0201031: 89 e5 mov %esp,%ebp
c0201033: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/process.c:43
c0201036: e8 e8 fe ff ff call c0200f23 <read_eflags>
c020103b: 25 00 02 00 00 and $0x200,%eax
c0201040: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/process.c:45
c0201043: 83 7d f0 00 cmpl $0x0,-0x10(%ebp)
c0201047: 74 05 je c020104e <schedule+0x1e>
/media/unix/Data/Code/2020301918-os/kern/process.c:46
c0201049: e8 e5 fe ff ff call c0200f33 <disable_int>
/media/unix/Data/Code/2020301918-os/kern/process.c:48
c020104e: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201053: 89 45 ec mov %eax,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/kern/process.c:49
c0201056: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c020105b: 05 00 20 00 00 add $0x2000,%eax
c0201060: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/process.c:50
c0201063: b8 00 de 20 c0 mov $0xc020de00,%eax
c0201068: 39 45 f4 cmp %eax,-0xc(%ebp)
c020106b: 72 07 jb c0201074 <schedule+0x44>
/media/unix/Data/Code/2020301918-os/kern/process.c:51
c020106d: c7 45 f4 00 9e 20 c0 movl $0xc0209e00,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/process.c:54
c0201074: 8b 45 f4 mov -0xc(%ebp),%eax
c0201077: a3 e4 9d 20 c0 mov %eax,0xc0209de4
/media/unix/Data/Code/2020301918-os/kern/process.c:56
c020107c: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201081: 8b 40 70 mov 0x70(%eax),%eax
c0201084: 50 push %eax
c0201085: e8 8d fe ff ff call c0200f17 <lcr3>
c020108a: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/kern/process.c:57
c020108d: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201092: 83 c0 48 add $0x48,%eax
c0201095: a3 24 ee 20 c0 mov %eax,0xc020ee24
/media/unix/Data/Code/2020301918-os/kern/process.c:69
c020109a: 8b 45 f4 mov -0xc(%ebp),%eax
c020109d: 8d 50 48 lea 0x48(%eax),%edx
c02010a0: 8b 45 ec mov -0x14(%ebp),%eax
c02010a3: 83 c0 48 add $0x48,%eax
c02010a6: 83 ec 08 sub $0x8,%esp
c02010a9: 52 push %edx
c02010aa: 50 push %eax
c02010ab: e8 20 f2 ff ff call c02002d0 <switch_kern_context>
c02010b0: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/process.c:90
c02010b3: 83 7d f0 00 cmpl $0x0,-0x10(%ebp)
c02010b7: 74 05 je c02010be <schedule+0x8e>
/media/unix/Data/Code/2020301918-os/kern/process.c:91
c02010b9: e8 7c fe ff ff call c0200f3a <enable_int>
/media/unix/Data/Code/2020301918-os/kern/process.c:92
c02010be: 90 nop
c02010bf: c9 leave
c02010c0: c3 ret
c02010c1 <kern_get_pid>:
kern_get_pid():
/media/unix/Data/Code/2020301918-os/kern/process.c:96
c02010c1: 55 push %ebp
c02010c2: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/process.c:97
c02010c4: 8b 45 08 mov 0x8(%ebp),%eax
c02010c7: 8b 40 6c mov 0x6c(%eax),%eax
/media/unix/Data/Code/2020301918-os/kern/process.c:98
c02010ca: 5d pop %ebp
c02010cb: c3 ret
c02010cc <do_get_pid>:
do_get_pid():
/media/unix/Data/Code/2020301918-os/kern/process.c:102
c02010cc: 55 push %ebp
c02010cd: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/process.c:103
c02010cf: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c02010d4: 50 push %eax
c02010d5: e8 e7 ff ff ff call c02010c1 <kern_get_pid>
c02010da: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/kern/process.c:104
c02010dd: c9 leave
c02010de: c3 ret
c02010df <outb>:
outb():
/media/unix/Data/Code/2020301918-os/inc/x86.h:59
c02010df: 55 push %ebp
c02010e0: 89 e5 mov %esp,%ebp
c02010e2: 83 ec 04 sub $0x4,%esp
c02010e5: 8b 45 0c mov 0xc(%ebp),%eax
c02010e8: 88 45 fc mov %al,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:60
c02010eb: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c02010ef: 8b 55 08 mov 0x8(%ebp),%edx
c02010f2: ee out %al,(%dx)
/media/unix/Data/Code/2020301918-os/inc/x86.h:61
c02010f3: 90 nop
c02010f4: c9 leave
c02010f5: c3 ret
c02010f6 <init_segment>:
init_segment():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:107
c02010f6: 55 push %ebp
c02010f7: 89 e5 mov %esp,%ebp
c02010f9: 83 ec 04 sub $0x4,%esp
c02010fc: 8b 45 14 mov 0x14(%ebp),%eax
c02010ff: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:108
c0201103: 8b 45 10 mov 0x10(%ebp),%eax
c0201106: 89 c2 mov %eax,%edx
c0201108: 8b 45 08 mov 0x8(%ebp),%eax
c020110b: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:109
c020110e: 8b 45 0c mov 0xc(%ebp),%eax
c0201111: 89 c2 mov %eax,%edx
c0201113: 8b 45 08 mov 0x8(%ebp),%eax
c0201116: 66 89 50 02 mov %dx,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:110
c020111a: 8b 45 0c mov 0xc(%ebp),%eax
c020111d: c1 e8 10 shr $0x10,%eax
c0201120: 89 c2 mov %eax,%edx
c0201122: 8b 45 08 mov 0x8(%ebp),%eax
c0201125: 88 50 04 mov %dl,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:111
c0201128: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c020112c: 89 c2 mov %eax,%edx
c020112e: 8b 45 08 mov 0x8(%ebp),%eax
c0201131: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c0201134: 8b 45 10 mov 0x10(%ebp),%eax
c0201137: c1 e8 10 shr $0x10,%eax
c020113a: 83 e0 0f and $0xf,%eax
c020113d: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:113
c020113f: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201143: 66 c1 e8 08 shr $0x8,%ax
c0201147: 83 e0 f0 and $0xfffffff0,%eax
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c020114a: 09 c2 or %eax,%edx
c020114c: 8b 45 08 mov 0x8(%ebp),%eax
c020114f: 88 50 06 mov %dl,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:114
c0201152: 8b 45 0c mov 0xc(%ebp),%eax
c0201155: c1 e8 18 shr $0x18,%eax
c0201158: 89 c2 mov %eax,%edx
c020115a: 8b 45 08 mov 0x8(%ebp),%eax
c020115d: 88 50 07 mov %dl,0x7(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:115
c0201160: 90 nop
c0201161: c9 leave
c0201162: c3 ret
c0201163 <init_gate>:
init_gate():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:119
c0201163: 55 push %ebp
c0201164: 89 e5 mov %esp,%ebp
c0201166: 83 ec 08 sub $0x8,%esp
c0201169: 8b 55 0c mov 0xc(%ebp),%edx
c020116c: 8b 45 14 mov 0x14(%ebp),%eax
c020116f: 88 55 fc mov %dl,-0x4(%ebp)
c0201172: 88 45 f8 mov %al,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:120
c0201175: 8b 45 10 mov 0x10(%ebp),%eax
c0201178: 89 c2 mov %eax,%edx
c020117a: 8b 45 08 mov 0x8(%ebp),%eax
c020117d: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:121
c0201180: 8b 45 08 mov 0x8(%ebp),%eax
c0201183: 66 c7 40 02 08 00 movw $0x8,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:122
c0201189: 8b 45 08 mov 0x8(%ebp),%eax
c020118c: c6 40 04 00 movb $0x0,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:123
c0201190: 0f b6 45 f8 movzbl -0x8(%ebp),%eax
c0201194: c1 e0 05 shl $0x5,%eax
c0201197: 89 c2 mov %eax,%edx
c0201199: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c020119d: 09 d0 or %edx,%eax
c020119f: 89 c2 mov %eax,%edx
c02011a1: 8b 45 08 mov 0x8(%ebp),%eax
c02011a4: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:124
c02011a7: 8b 45 10 mov 0x10(%ebp),%eax
c02011aa: c1 e8 10 shr $0x10,%eax
c02011ad: 89 c2 mov %eax,%edx
c02011af: 8b 45 08 mov 0x8(%ebp),%eax
c02011b2: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:125
c02011b6: 90 nop
c02011b7: c9 leave
c02011b8: c3 ret
c02011b9 <_panic>:
_panic():
/media/unix/Data/Code/2020301918-os/kern/start.c:21
c02011b9: 55 push %ebp
c02011ba: 89 e5 mov %esp,%ebp
c02011bc: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:25
c02011bf: fa cli
/media/unix/Data/Code/2020301918-os/kern/start.c:26
c02011c0: fc cld
/media/unix/Data/Code/2020301918-os/kern/start.c:28
c02011c1: 8d 45 14 lea 0x14(%ebp),%eax
c02011c4: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/start.c:29
c02011c7: 83 ec 04 sub $0x4,%esp
c02011ca: ff 75 0c push 0xc(%ebp)
c02011cd: ff 75 08 push 0x8(%ebp)
c02011d0: 68 e0 43 20 c0 push $0xc02043e0
c02011d5: e8 fd 18 00 00 call c0202ad7 <kprintf>
c02011da: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:30
c02011dd: 8b 45 f4 mov -0xc(%ebp),%eax
c02011e0: 83 ec 08 sub $0x8,%esp
c02011e3: 50 push %eax
c02011e4: ff 75 10 push 0x10(%ebp)
c02011e7: e8 8f 18 00 00 call c0202a7b <vkprintf>
c02011ec: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:31
c02011ef: 83 ec 0c sub $0xc,%esp
c02011f2: 68 01 44 20 c0 push $0xc0204401
c02011f7: e8 db 18 00 00 call c0202ad7 <kprintf>
c02011fc: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:35 (discriminator 1)
c02011ff: f4 hlt
c0201200: eb fd jmp c02011ff <_panic+0x46>
c0201202 <_warn>:
_warn():
/media/unix/Data/Code/2020301918-os/kern/start.c:43
c0201202: 55 push %ebp
c0201203: 89 e5 mov %esp,%ebp
c0201205: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:46
c0201208: 8d 45 14 lea 0x14(%ebp),%eax
c020120b: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/start.c:47
c020120e: 83 ec 04 sub $0x4,%esp
c0201211: ff 75 0c push 0xc(%ebp)
c0201214: ff 75 08 push 0x8(%ebp)
c0201217: 68 08 44 20 c0 push $0xc0204408
c020121c: e8 b6 18 00 00 call c0202ad7 <kprintf>
c0201221: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:48
c0201224: 8b 45 f4 mov -0xc(%ebp),%eax
c0201227: 83 ec 08 sub $0x8,%esp
c020122a: 50 push %eax
c020122b: ff 75 10 push 0x10(%ebp)
c020122e: e8 48 18 00 00 call c0202a7b <vkprintf>
c0201233: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:49
c0201236: 83 ec 0c sub $0xc,%esp
c0201239: 68 01 44 20 c0 push $0xc0204401
c020123e: e8 94 18 00 00 call c0202ad7 <kprintf>
c0201243: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:51
c0201246: 90 nop
c0201247: c9 leave
c0201248: c3 ret
c0201249 <init_gdt>:
init_gdt():
/media/unix/Data/Code/2020301918-os/kern/start.c:59
c0201249: 55 push %ebp
c020124a: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/start.c:60
c020124c: 6a 00 push $0x0
c020124e: 6a 00 push $0x0
c0201250: 6a 00 push $0x0
c0201252: 68 20 de 20 c0 push $0xc020de20
c0201257: e8 9a fe ff ff call c02010f6 <init_segment>
c020125c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:62
c020125f: 68 9a c0 00 00 push $0xc09a
c0201264: 68 ff ff 0f 00 push $0xfffff
c0201269: 6a 00 push $0x0
c020126b: 68 28 de 20 c0 push $0xc020de28
c0201270: e8 81 fe ff ff call c02010f6 <init_segment>
c0201275: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:64
c0201278: 68 92 c0 00 00 push $0xc092
c020127d: 68 ff ff 0f 00 push $0xfffff
c0201282: 6a 00 push $0x0
c0201284: 68 30 de 20 c0 push $0xc020de30
c0201289: e8 68 fe ff ff call c02010f6 <init_segment>
c020128e: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:66
c0201291: 68 f2 c0 00 00 push $0xc0f2
c0201296: 6a 08 push $0x8
c0201298: 68 00 80 0b c0 push $0xc00b8000
c020129d: 68 38 de 20 c0 push $0xc020de38
c02012a2: e8 4f fe ff ff call c02010f6 <init_segment>
c02012a7: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:68
c02012aa: c7 05 28 ee 20 c0 10 movl $0x10,0xc020ee28
c02012b1: 00 00 00
/media/unix/Data/Code/2020301918-os/kern/start.c:69
c02012b4: 66 c7 05 86 ee 20 c0 movw $0x68,0xc020ee86
c02012bb: 68 00
/media/unix/Data/Code/2020301918-os/kern/start.c:71
c02012bd: b8 20 ee 20 c0 mov $0xc020ee20,%eax
c02012c2: 68 89 00 00 00 push $0x89
c02012c7: 6a 67 push $0x67
c02012c9: 50 push %eax
c02012ca: 68 40 de 20 c0 push $0xc020de40
c02012cf: e8 22 fe ff ff call c02010f6 <init_segment>
c02012d4: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:73
c02012d7: b8 20 e2 20 c0 mov $0xc020e220,%eax
c02012dc: 68 82 00 00 00 push $0x82
c02012e1: 68 ff 03 00 00 push $0x3ff
c02012e6: 50 push %eax
c02012e7: 68 48 de 20 c0 push $0xc020de48
c02012ec: e8 05 fe ff ff call c02010f6 <init_segment>
c02012f1: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:75
c02012f4: b8 20 de 20 c0 mov $0xc020de20,%eax
c02012f9: a3 02 de 20 c0 mov %eax,0xc020de02
/media/unix/Data/Code/2020301918-os/kern/start.c:76
c02012fe: 66 c7 05 00 de 20 c0 movw $0x3ff,0xc020de00
c0201305: ff 03
/media/unix/Data/Code/2020301918-os/kern/start.c:77
c0201307: 90 nop
c0201308: c9 leave
c0201309: c3 ret
c020130a <init_ldt>:
init_ldt():
/media/unix/Data/Code/2020301918-os/kern/start.c:84
c020130a: 55 push %ebp
c020130b: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/start.c:85
c020130d: 6a 00 push $0x0
c020130f: 6a 00 push $0x0
c0201311: 6a 00 push $0x0
c0201313: 68 20 e2 20 c0 push $0xc020e220
c0201318: e8 d9 fd ff ff call c02010f6 <init_segment>
c020131d: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:87
c0201320: 68 fa c0 00 00 push $0xc0fa
c0201325: 68 ff ff 0f 00 push $0xfffff
c020132a: 6a 00 push $0x0
c020132c: 68 28 e2 20 c0 push $0xc020e228
c0201331: e8 c0 fd ff ff call c02010f6 <init_segment>
c0201336: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:90
c0201339: 68 f2 c0 00 00 push $0xc0f2
c020133e: 68 ff ff 0f 00 push $0xfffff
c0201343: 6a 00 push $0x0
c0201345: 68 30 e2 20 c0 push $0xc020e230
c020134a: e8 a7 fd ff ff call c02010f6 <init_segment>
c020134f: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:93
c0201352: 90 nop
c0201353: c9 leave
c0201354: c3 ret
c0201355 <init_idt>:
init_idt():
/media/unix/Data/Code/2020301918-os/kern/start.c:100
c0201355: 55 push %ebp
c0201356: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/start.c:102
c0201358: 6a 00 push $0x0
c020135a: 68 71 02 20 c0 push $0xc0200271
c020135f: 68 8e 00 00 00 push $0x8e
c0201364: 68 20 e6 20 c0 push $0xc020e620
c0201369: e8 f5 fd ff ff call c0201163 <init_gate>
c020136e: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:104
c0201371: b8 28 e6 20 c0 mov $0xc020e628,%eax
c0201376: 6a 00 push $0x0
c0201378: 68 77 02 20 c0 push $0xc0200277
c020137d: 68 8e 00 00 00 push $0x8e
c0201382: 50 push %eax
c0201383: e8 db fd ff ff call c0201163 <init_gate>
c0201388: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:106
c020138b: b8 30 e6 20 c0 mov $0xc020e630,%eax
c0201390: 6a 00 push $0x0
c0201392: 68 7d 02 20 c0 push $0xc020027d
c0201397: 68 8e 00 00 00 push $0x8e
c020139c: 50 push %eax
c020139d: e8 c1 fd ff ff call c0201163 <init_gate>
c02013a2: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:108
c02013a5: b8 38 e6 20 c0 mov $0xc020e638,%eax
c02013aa: 6a 03 push $0x3
c02013ac: 68 83 02 20 c0 push $0xc0200283
c02013b1: 68 8e 00 00 00 push $0x8e
c02013b6: 50 push %eax
c02013b7: e8 a7 fd ff ff call c0201163 <init_gate>
c02013bc: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:110
c02013bf: b8 40 e6 20 c0 mov $0xc020e640,%eax
c02013c4: 6a 03 push $0x3
c02013c6: 68 89 02 20 c0 push $0xc0200289
c02013cb: 68 8e 00 00 00 push $0x8e
c02013d0: 50 push %eax
c02013d1: e8 8d fd ff ff call c0201163 <init_gate>
c02013d6: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:112
c02013d9: b8 48 e6 20 c0 mov $0xc020e648,%eax
c02013de: 6a 00 push $0x0
c02013e0: 68 8f 02 20 c0 push $0xc020028f
c02013e5: 68 8e 00 00 00 push $0x8e
c02013ea: 50 push %eax
c02013eb: e8 73 fd ff ff call c0201163 <init_gate>
c02013f0: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:114
c02013f3: b8 50 e6 20 c0 mov $0xc020e650,%eax
c02013f8: 6a 00 push $0x0
c02013fa: 68 95 02 20 c0 push $0xc0200295
c02013ff: 68 8e 00 00 00 push $0x8e
c0201404: 50 push %eax
c0201405: e8 59 fd ff ff call c0201163 <init_gate>
c020140a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:116
c020140d: b8 58 e6 20 c0 mov $0xc020e658,%eax
c0201412: 6a 00 push $0x0
c0201414: 68 9b 02 20 c0 push $0xc020029b
c0201419: 68 8e 00 00 00 push $0x8e
c020141e: 50 push %eax
c020141f: e8 3f fd ff ff call c0201163 <init_gate>
c0201424: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:118
c0201427: b8 60 e6 20 c0 mov $0xc020e660,%eax
c020142c: 6a 00 push $0x0
c020142e: 68 a1 02 20 c0 push $0xc02002a1
c0201433: 68 8e 00 00 00 push $0x8e
c0201438: 50 push %eax
c0201439: e8 25 fd ff ff call c0201163 <init_gate>
c020143e: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:120
c0201441: b8 68 e6 20 c0 mov $0xc020e668,%eax
c0201446: 6a 00 push $0x0
c0201448: 68 a5 02 20 c0 push $0xc02002a5
c020144d: 68 8e 00 00 00 push $0x8e
c0201452: 50 push %eax
c0201453: e8 0b fd ff ff call c0201163 <init_gate>
c0201458: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:122
c020145b: b8 70 e6 20 c0 mov $0xc020e670,%eax
c0201460: 6a 00 push $0x0
c0201462: 68 ab 02 20 c0 push $0xc02002ab
c0201467: 68 8e 00 00 00 push $0x8e
c020146c: 50 push %eax
c020146d: e8 f1 fc ff ff call c0201163 <init_gate>
c0201472: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:124
c0201475: b8 78 e6 20 c0 mov $0xc020e678,%eax
c020147a: 6a 00 push $0x0
c020147c: 68 af 02 20 c0 push $0xc02002af
c0201481: 68 8e 00 00 00 push $0x8e
c0201486: 50 push %eax
c0201487: e8 d7 fc ff ff call c0201163 <init_gate>
c020148c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:126
c020148f: b8 80 e6 20 c0 mov $0xc020e680,%eax
c0201494: 6a 00 push $0x0
c0201496: 68 b3 02 20 c0 push $0xc02002b3
c020149b: 68 8e 00 00 00 push $0x8e
c02014a0: 50 push %eax
c02014a1: e8 bd fc ff ff call c0201163 <init_gate>
c02014a6: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:128
c02014a9: b8 88 e6 20 c0 mov $0xc020e688,%eax
c02014ae: 6a 00 push $0x0
c02014b0: 68 b7 02 20 c0 push $0xc02002b7
c02014b5: 68 8e 00 00 00 push $0x8e
c02014ba: 50 push %eax
c02014bb: e8 a3 fc ff ff call c0201163 <init_gate>
c02014c0: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:130
c02014c3: b8 90 e6 20 c0 mov $0xc020e690,%eax
c02014c8: 6a 00 push $0x0
c02014ca: 68 bb 02 20 c0 push $0xc02002bb
c02014cf: 68 8e 00 00 00 push $0x8e
c02014d4: 50 push %eax
c02014d5: e8 89 fc ff ff call c0201163 <init_gate>
c02014da: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:132
c02014dd: b8 a0 e6 20 c0 mov $0xc020e6a0,%eax
c02014e2: 6a 00 push $0x0
c02014e4: 68 bf 02 20 c0 push $0xc02002bf
c02014e9: 68 8e 00 00 00 push $0x8e
c02014ee: 50 push %eax
c02014ef: e8 6f fc ff ff call c0201163 <init_gate>
c02014f4: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:135
c02014f7: b8 20 e7 20 c0 mov $0xc020e720,%eax
c02014fc: 6a 00 push $0x0
c02014fe: 68 90 00 20 c0 push $0xc0200090
c0201503: 68 8e 00 00 00 push $0x8e
c0201508: 50 push %eax
c0201509: e8 55 fc ff ff call c0201163 <init_gate>
c020150e: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:137
c0201511: b8 28 e7 20 c0 mov $0xc020e728,%eax
c0201516: 6a 00 push $0x0
c0201518: 68 b0 00 20 c0 push $0xc02000b0
c020151d: 68 8e 00 00 00 push $0x8e
c0201522: 50 push %eax
c0201523: e8 3b fc ff ff call c0201163 <init_gate>
c0201528: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:139
c020152b: b8 30 e7 20 c0 mov $0xc020e730,%eax
c0201530: 6a 00 push $0x0
c0201532: 68 e0 00 20 c0 push $0xc02000e0
c0201537: 68 8e 00 00 00 push $0x8e
c020153c: 50 push %eax
c020153d: e8 21 fc ff ff call c0201163 <init_gate>
c0201542: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:141
c0201545: b8 38 e7 20 c0 mov $0xc020e738,%eax
c020154a: 6a 00 push $0x0
c020154c: 68 10 01 20 c0 push $0xc0200110
c0201551: 68 8e 00 00 00 push $0x8e
c0201556: 50 push %eax
c0201557: e8 07 fc ff ff call c0201163 <init_gate>
c020155c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:143
c020155f: b8 40 e7 20 c0 mov $0xc020e740,%eax
c0201564: 6a 00 push $0x0
c0201566: 68 40 01 20 c0 push $0xc0200140
c020156b: 68 8e 00 00 00 push $0x8e
c0201570: 50 push %eax
c0201571: e8 ed fb ff ff call c0201163 <init_gate>
c0201576: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:145
c0201579: b8 48 e7 20 c0 mov $0xc020e748,%eax
c020157e: 6a 00 push $0x0
c0201580: 68 70 01 20 c0 push $0xc0200170
c0201585: 68 8e 00 00 00 push $0x8e
c020158a: 50 push %eax
c020158b: e8 d3 fb ff ff call c0201163 <init_gate>
c0201590: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:147
c0201593: b8 50 e7 20 c0 mov $0xc020e750,%eax
c0201598: 6a 00 push $0x0
c020159a: 68 a0 01 20 c0 push $0xc02001a0
c020159f: 68 8e 00 00 00 push $0x8e
c02015a4: 50 push %eax
c02015a5: e8 b9 fb ff ff call c0201163 <init_gate>
c02015aa: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:149
c02015ad: b8 58 e7 20 c0 mov $0xc020e758,%eax
c02015b2: 6a 00 push $0x0
c02015b4: 68 d0 01 20 c0 push $0xc02001d0
c02015b9: 68 8e 00 00 00 push $0x8e
c02015be: 50 push %eax
c02015bf: e8 9f fb ff ff call c0201163 <init_gate>
c02015c4: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:151
c02015c7: b8 60 e7 20 c0 mov $0xc020e760,%eax
c02015cc: 6a 00 push $0x0
c02015ce: 68 00 02 20 c0 push $0xc0200200
c02015d3: 68 8e 00 00 00 push $0x8e
c02015d8: 50 push %eax
c02015d9: e8 85 fb ff ff call c0201163 <init_gate>
c02015de: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:153
c02015e1: b8 68 e7 20 c0 mov $0xc020e768,%eax
c02015e6: 6a 00 push $0x0
c02015e8: 68 10 02 20 c0 push $0xc0200210
c02015ed: 68 8e 00 00 00 push $0x8e
c02015f2: 50 push %eax
c02015f3: e8 6b fb ff ff call c0201163 <init_gate>
c02015f8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:155
c02015fb: b8 70 e7 20 c0 mov $0xc020e770,%eax
c0201600: 6a 00 push $0x0
c0201602: 68 20 02 20 c0 push $0xc0200220
c0201607: 68 8e 00 00 00 push $0x8e
c020160c: 50 push %eax
c020160d: e8 51 fb ff ff call c0201163 <init_gate>
c0201612: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:157
c0201615: b8 78 e7 20 c0 mov $0xc020e778,%eax
c020161a: 6a 00 push $0x0
c020161c: 68 30 02 20 c0 push $0xc0200230
c0201621: 68 8e 00 00 00 push $0x8e
c0201626: 50 push %eax
c0201627: e8 37 fb ff ff call c0201163 <init_gate>
c020162c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:159
c020162f: b8 80 e7 20 c0 mov $0xc020e780,%eax
c0201634: 6a 00 push $0x0
c0201636: 68 40 02 20 c0 push $0xc0200240
c020163b: 68 8e 00 00 00 push $0x8e
c0201640: 50 push %eax
c0201641: e8 1d fb ff ff call c0201163 <init_gate>
c0201646: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:161
c0201649: b8 88 e7 20 c0 mov $0xc020e788,%eax
c020164e: 6a 00 push $0x0
c0201650: 68 50 02 20 c0 push $0xc0200250
c0201655: 68 8e 00 00 00 push $0x8e
c020165a: 50 push %eax
c020165b: e8 03 fb ff ff call c0201163 <init_gate>
c0201660: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:163
c0201663: b8 90 e7 20 c0 mov $0xc020e790,%eax
c0201668: 6a 00 push $0x0
c020166a: 68 60 02 20 c0 push $0xc0200260
c020166f: 68 8e 00 00 00 push $0x8e
c0201674: 50 push %eax
c0201675: e8 e9 fa ff ff call c0201163 <init_gate>
c020167a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:165
c020167d: b8 98 e7 20 c0 mov $0xc020e798,%eax
c0201682: 6a 00 push $0x0
c0201684: 68 70 02 20 c0 push $0xc0200270
c0201689: 68 8e 00 00 00 push $0x8e
c020168e: 50 push %eax
c020168f: e8 cf fa ff ff call c0201163 <init_gate>
c0201694: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:168
c0201697: b8 20 ea 20 c0 mov $0xc020ea20,%eax
c020169c: 6a 03 push $0x3
c020169e: 68 7a 00 20 c0 push $0xc020007a
c02016a3: 68 8e 00 00 00 push $0x8e
c02016a8: 50 push %eax
c02016a9: e8 b5 fa ff ff call c0201163 <init_gate>
c02016ae: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:171
c02016b1: b8 20 e6 20 c0 mov $0xc020e620,%eax
c02016b6: a3 0a de 20 c0 mov %eax,0xc020de0a
/media/unix/Data/Code/2020301918-os/kern/start.c:172
c02016bb: 66 c7 05 08 de 20 c0 movw $0x7ff,0xc020de08
c02016c2: ff 07
/media/unix/Data/Code/2020301918-os/kern/start.c:173
c02016c4: 90 nop
c02016c5: c9 leave
c02016c6: c3 ret
c02016c7 <init_8259A>:
init_8259A():
/media/unix/Data/Code/2020301918-os/kern/start.c:180
c02016c7: 55 push %ebp
c02016c8: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/start.c:181
c02016ca: 6a 11 push $0x11
c02016cc: 6a 20 push $0x20
c02016ce: e8 0c fa ff ff call c02010df <outb>
c02016d3: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:182
c02016d6: 6a 11 push $0x11
c02016d8: 68 a0 00 00 00 push $0xa0
c02016dd: e8 fd f9 ff ff call c02010df <outb>
c02016e2: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:185
c02016e5: 6a 20 push $0x20
c02016e7: 6a 21 push $0x21
c02016e9: e8 f1 f9 ff ff call c02010df <outb>
c02016ee: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:187
c02016f1: 6a 28 push $0x28
c02016f3: 68 a1 00 00 00 push $0xa1
c02016f8: e8 e2 f9 ff ff call c02010df <outb>
c02016fd: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:189
c0201700: 6a 04 push $0x4
c0201702: 6a 21 push $0x21
c0201704: e8 d6 f9 ff ff call c02010df <outb>
c0201709: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:191
c020170c: 6a 02 push $0x2
c020170e: 68 a1 00 00 00 push $0xa1
c0201713: e8 c7 f9 ff ff call c02010df <outb>
c0201718: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:193
c020171b: 6a 01 push $0x1
c020171d: 6a 21 push $0x21
c020171f: e8 bb f9 ff ff call c02010df <outb>
c0201724: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:194
c0201727: 6a 01 push $0x1
c0201729: 68 a1 00 00 00 push $0xa1
c020172e: e8 ac f9 ff ff call c02010df <outb>
c0201733: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:196
c0201736: 68 ff 00 00 00 push $0xff
c020173b: 6a 21 push $0x21
c020173d: e8 9d f9 ff ff call c02010df <outb>
c0201742: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:197
c0201745: 68 ff 00 00 00 push $0xff
c020174a: 68 a1 00 00 00 push $0xa1
c020174f: e8 8b f9 ff ff call c02010df <outb>
c0201754: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:198
c0201757: 90 nop
c0201758: c9 leave
c0201759: c3 ret
c020175a <init_irq>:
init_irq():
/media/unix/Data/Code/2020301918-os/kern/start.c:202
c020175a: 55 push %ebp
c020175b: 89 e5 mov %esp,%ebp
c020175d: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:204
c0201760: 83 ec 0c sub $0xc,%esp
c0201763: 6a 00 push $0x0
c0201765: e8 0d 03 00 00 call c0201a77 <enable_irq>
c020176a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:206
c020176d: 83 ec 08 sub $0x8,%esp
c0201770: 6a 34 push $0x34
c0201772: 6a 43 push $0x43
c0201774: e8 66 f9 ff ff call c02010df <outb>
c0201779: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:207
c020177c: 83 ec 08 sub $0x8,%esp
c020177f: 68 a9 00 00 00 push $0xa9
c0201784: 6a 40 push $0x40
c0201786: e8 54 f9 ff ff call c02010df <outb>
c020178b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:208
c020178e: 83 ec 08 sub $0x8,%esp
c0201791: 6a 04 push $0x4
c0201793: 6a 40 push $0x40
c0201795: e8 45 f9 ff ff call c02010df <outb>
c020179a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:210
c020179d: 83 ec 0c sub $0xc,%esp
c02017a0: 6a 01 push $0x1
c02017a2: e8 d0 02 00 00 call c0201a77 <enable_irq>
c02017a7: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:211
c02017aa: 90 nop
c02017ab: c9 leave
c02017ac: c3 ret
c02017ad <cstart>:
cstart():
/media/unix/Data/Code/2020301918-os/kern/start.c:217
c02017ad: 55 push %ebp
c02017ae: 89 e5 mov %esp,%ebp
c02017b0: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:224
c02017b3: 83 ec 0c sub $0xc,%esp
c02017b6: 68 2b 44 20 c0 push $0xc020442b
c02017bb: e8 17 13 00 00 call c0202ad7 <kprintf>
c02017c0: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:226
c02017c3: 83 ec 0c sub $0xc,%esp
c02017c6: 68 33 44 20 c0 push $0xc0204433
c02017cb: e8 07 13 00 00 call c0202ad7 <kprintf>
c02017d0: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:227
c02017d3: e8 71 fa ff ff call c0201249 <init_gdt>
/media/unix/Data/Code/2020301918-os/kern/start.c:228
c02017d8: 83 ec 0c sub $0xc,%esp
c02017db: 68 43 44 20 c0 push $0xc0204443
c02017e0: e8 f2 12 00 00 call c0202ad7 <kprintf>
c02017e5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:229
c02017e8: e8 1d fb ff ff call c020130a <init_ldt>
/media/unix/Data/Code/2020301918-os/kern/start.c:230
c02017ed: 83 ec 0c sub $0xc,%esp
c02017f0: 68 48 44 20 c0 push $0xc0204448
c02017f5: e8 dd 12 00 00 call c0202ad7 <kprintf>
c02017fa: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:231
c02017fd: e8 c5 fe ff ff call c02016c7 <init_8259A>
/media/unix/Data/Code/2020301918-os/kern/start.c:232
c0201802: 83 ec 0c sub $0xc,%esp
c0201805: 68 4f 44 20 c0 push $0xc020444f
c020180a: e8 c8 12 00 00 call c0202ad7 <kprintf>
c020180f: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:233
c0201812: e8 3e fb ff ff call c0201355 <init_idt>
/media/unix/Data/Code/2020301918-os/kern/start.c:234
c0201817: 83 ec 0c sub $0xc,%esp
c020181a: 68 54 44 20 c0 push $0xc0204454
c020181f: e8 b3 12 00 00 call c0202ad7 <kprintf>
c0201824: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:235
c0201827: e8 2e ff ff ff call c020175a <init_irq>
/media/unix/Data/Code/2020301918-os/kern/start.c:236
c020182c: 83 ec 0c sub $0xc,%esp
c020182f: 68 58 44 20 c0 push $0xc0204458
c0201834: e8 9e 12 00 00 call c0202ad7 <kprintf>
c0201839: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/start.c:237
c020183c: 90 nop
c020183d: c9 leave
c020183e: c3 ret
c020183f <get_arg>:
get_arg():
/media/unix/Data/Code/2020301918-os/kern/syscall.c:28
c020183f: 55 push %ebp
c0201840: 89 e5 mov %esp,%ebp
c0201842: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/syscall.c:29
c0201845: 83 7d 08 05 cmpl $0x5,0x8(%ebp)
c0201849: 77 4b ja c0201896 <get_arg+0x57>
c020184b: 8b 45 08 mov 0x8(%ebp),%eax
c020184e: c1 e0 02 shl $0x2,%eax
c0201851: 05 88 44 20 c0 add $0xc0204488,%eax
c0201856: 8b 00 mov (%eax),%eax
c0201858: ff e0 jmp *%eax
/media/unix/Data/Code/2020301918-os/kern/syscall.c:31
c020185a: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c020185f: 8b 40 20 mov 0x20(%eax),%eax
c0201862: eb 46 jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:33
c0201864: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201869: 8b 40 28 mov 0x28(%eax),%eax
c020186c: eb 3c jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:35
c020186e: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201873: 8b 40 24 mov 0x24(%eax),%eax
c0201876: eb 32 jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:37
c0201878: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c020187d: 8b 40 14 mov 0x14(%eax),%eax
c0201880: eb 28 jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:39
c0201882: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201887: 8b 40 10 mov 0x10(%eax),%eax
c020188a: eb 1e jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:41
c020188c: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201891: 8b 40 18 mov 0x18(%eax),%eax
c0201894: eb 14 jmp c02018aa <get_arg+0x6b>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:43
c0201896: ff 75 08 push 0x8(%ebp)
c0201899: 68 60 44 20 c0 push $0xc0204460
c020189e: 6a 2b push $0x2b
c02018a0: 68 79 44 20 c0 push $0xc0204479
c02018a5: e8 0f f9 ff ff call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:45
c02018aa: c9 leave
c02018ab: c3 ret
c02018ac <sys_get_ticks>:
sys_get_ticks():
/media/unix/Data/Code/2020301918-os/kern/syscall.c:52
c02018ac: 55 push %ebp
c02018ad: 89 e5 mov %esp,%ebp
c02018af: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/syscall.c:53
c02018b2: e8 b6 00 00 00 call c020196d <do_get_ticks>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:54
c02018b7: c9 leave
c02018b8: c3 ret
c02018b9 <sys_get_pid>:
sys_get_pid():
/media/unix/Data/Code/2020301918-os/kern/syscall.c:62
c02018b9: 55 push %ebp
c02018ba: 89 e5 mov %esp,%ebp
c02018bc: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/syscall.c:63
c02018bf: e8 08 f8 ff ff call c02010cc <do_get_pid>
/media/unix/Data/Code/2020301918-os/kern/syscall.c:64
c02018c4: c9 leave
c02018c5: c3 ret
c02018c6 <sys_read>:
sys_read():
/media/unix/Data/Code/2020301918-os/kern/syscall.c:73
c02018c6: 55 push %ebp
c02018c7: 89 e5 mov %esp,%ebp
c02018c9: 56 push %esi
c02018ca: 53 push %ebx
/media/unix/Data/Code/2020301918-os/kern/syscall.c:74
c02018cb: 83 ec 0c sub $0xc,%esp
c02018ce: 6a 02 push $0x2
c02018d0: e8 6a ff ff ff call c020183f <get_arg>
c02018d5: 83 c4 10 add $0x10,%esp
c02018d8: 89 c3 mov %eax,%ebx
c02018da: 83 ec 0c sub $0xc,%esp
c02018dd: 6a 01 push $0x1
c02018df: e8 5b ff ff ff call c020183f <get_arg>
c02018e4: 83 c4 10 add $0x10,%esp
c02018e7: 89 c6 mov %eax,%esi
c02018e9: 83 ec 0c sub $0xc,%esp
c02018ec: 6a 00 push $0x0
c02018ee: e8 4c ff ff ff call c020183f <get_arg>
c02018f3: 83 c4 10 add $0x10,%esp
c02018f6: 83 ec 04 sub $0x4,%esp
c02018f9: 53 push %ebx
c02018fa: 56 push %esi
c02018fb: 50 push %eax
c02018fc: e8 b3 ea ff ff call c02003b4 <do_read>
c0201901: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/syscall.c:75
c0201904: 8d 65 f8 lea -0x8(%ebp),%esp
c0201907: 5b pop %ebx
c0201908: 5e pop %esi
c0201909: 5d pop %ebp
c020190a: c3 ret
c020190b <sys_write>:
sys_write():
/media/unix/Data/Code/2020301918-os/kern/syscall.c:84
c020190b: 55 push %ebp
c020190c: 89 e5 mov %esp,%ebp
c020190e: 56 push %esi
c020190f: 53 push %ebx
/media/unix/Data/Code/2020301918-os/kern/syscall.c:85
c0201910: 83 ec 0c sub $0xc,%esp
c0201913: 6a 02 push $0x2
c0201915: e8 25 ff ff ff call c020183f <get_arg>
c020191a: 83 c4 10 add $0x10,%esp
c020191d: 89 c3 mov %eax,%ebx
c020191f: 83 ec 0c sub $0xc,%esp
c0201922: 6a 01 push $0x1
c0201924: e8 16 ff ff ff call c020183f <get_arg>
c0201929: 83 c4 10 add $0x10,%esp
c020192c: 89 c6 mov %eax,%esi
c020192e: 83 ec 0c sub $0xc,%esp
c0201931: 6a 00 push $0x0
c0201933: e8 07 ff ff ff call c020183f <get_arg>
c0201938: 83 c4 10 add $0x10,%esp
c020193b: 83 ec 04 sub $0x4,%esp
c020193e: 53 push %ebx
c020193f: 56 push %esi
c0201940: 50 push %eax
c0201941: e8 30 eb ff ff call c0200476 <do_write>
c0201946: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/syscall.c:86
c0201949: 8d 65 f8 lea -0x8(%ebp),%esp
c020194c: 5b pop %ebx
c020194d: 5e pop %esi
c020194e: 5d pop %ebp
c020194f: c3 ret
c0201950 <timecounter_inc>:
timecounter_inc():
/media/unix/Data/Code/2020301918-os/kern/time.c:13
c0201950: 55 push %ebp
c0201951: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/time.c:14
c0201953: a1 88 ee 20 c0 mov 0xc020ee88,%eax
c0201958: 83 c0 01 add $0x1,%eax
c020195b: a3 88 ee 20 c0 mov %eax,0xc020ee88
/media/unix/Data/Code/2020301918-os/kern/time.c:15
c0201960: 90 nop
c0201961: 5d pop %ebp
c0201962: c3 ret
c0201963 <kern_get_ticks>:
kern_get_ticks():
/media/unix/Data/Code/2020301918-os/kern/time.c:22
c0201963: 55 push %ebp
c0201964: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/time.c:23
c0201966: a1 88 ee 20 c0 mov 0xc020ee88,%eax
/media/unix/Data/Code/2020301918-os/kern/time.c:24
c020196b: 5d pop %ebp
c020196c: c3 ret
c020196d <do_get_ticks>:
do_get_ticks():
/media/unix/Data/Code/2020301918-os/kern/time.c:28
c020196d: 55 push %ebp
c020196e: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/kern/time.c:29
c0201970: e8 ee ff ff ff call c0201963 <kern_get_ticks>
/media/unix/Data/Code/2020301918-os/kern/time.c:30
c0201975: 5d pop %ebp
c0201976: c3 ret
c0201977 <inb>:
inb():
/media/unix/Data/Code/2020301918-os/inc/x86.h:8
c0201977: 55 push %ebp
c0201978: 89 e5 mov %esp,%ebp
c020197a: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:10
c020197d: 8b 45 08 mov 0x8(%ebp),%eax
c0201980: 89 c2 mov %eax,%edx
c0201982: ec in (%dx),%al
c0201983: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:11
c0201986: 0f b6 45 ff movzbl -0x1(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:12
c020198a: c9 leave
c020198b: c3 ret
c020198c <outb>:
outb():
/media/unix/Data/Code/2020301918-os/inc/x86.h:59
c020198c: 55 push %ebp
c020198d: 89 e5 mov %esp,%ebp
c020198f: 83 ec 04 sub $0x4,%esp
c0201992: 8b 45 0c mov 0xc(%ebp),%eax
c0201995: 88 45 fc mov %al,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:60
c0201998: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c020199c: 8b 55 08 mov 0x8(%ebp),%edx
c020199f: ee out %al,(%dx)
/media/unix/Data/Code/2020301918-os/inc/x86.h:61
c02019a0: 90 nop
c02019a1: c9 leave
c02019a2: c3 ret
c02019a3 <rcr2>:
rcr2():
/media/unix/Data/Code/2020301918-os/inc/x86.h:118
c02019a3: 55 push %ebp
c02019a4: 89 e5 mov %esp,%ebp
c02019a6: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:120
c02019a9: 0f 20 d0 mov %cr2,%eax
c02019ac: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:121
c02019af: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:122
c02019b2: c9 leave
c02019b3: c3 ret
c02019b4 <init_segment>:
init_segment():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:107
c02019b4: 55 push %ebp
c02019b5: 89 e5 mov %esp,%ebp
c02019b7: 83 ec 04 sub $0x4,%esp
c02019ba: 8b 45 14 mov 0x14(%ebp),%eax
c02019bd: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:108
c02019c1: 8b 45 10 mov 0x10(%ebp),%eax
c02019c4: 89 c2 mov %eax,%edx
c02019c6: 8b 45 08 mov 0x8(%ebp),%eax
c02019c9: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:109
c02019cc: 8b 45 0c mov 0xc(%ebp),%eax
c02019cf: 89 c2 mov %eax,%edx
c02019d1: 8b 45 08 mov 0x8(%ebp),%eax
c02019d4: 66 89 50 02 mov %dx,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:110
c02019d8: 8b 45 0c mov 0xc(%ebp),%eax
c02019db: c1 e8 10 shr $0x10,%eax
c02019de: 89 c2 mov %eax,%edx
c02019e0: 8b 45 08 mov 0x8(%ebp),%eax
c02019e3: 88 50 04 mov %dl,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:111
c02019e6: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c02019ea: 89 c2 mov %eax,%edx
c02019ec: 8b 45 08 mov 0x8(%ebp),%eax
c02019ef: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c02019f2: 8b 45 10 mov 0x10(%ebp),%eax
c02019f5: c1 e8 10 shr $0x10,%eax
c02019f8: 83 e0 0f and $0xf,%eax
c02019fb: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:113
c02019fd: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201a01: 66 c1 e8 08 shr $0x8,%ax
c0201a05: 83 e0 f0 and $0xfffffff0,%eax
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:112
c0201a08: 09 c2 or %eax,%edx
c0201a0a: 8b 45 08 mov 0x8(%ebp),%eax
c0201a0d: 88 50 06 mov %dl,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:114
c0201a10: 8b 45 0c mov 0xc(%ebp),%eax
c0201a13: c1 e8 18 shr $0x18,%eax
c0201a16: 89 c2 mov %eax,%edx
c0201a18: 8b 45 08 mov 0x8(%ebp),%eax
c0201a1b: 88 50 07 mov %dl,0x7(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:115
c0201a1e: 90 nop
c0201a1f: c9 leave
c0201a20: c3 ret
c0201a21 <init_gate>:
init_gate():
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:119
c0201a21: 55 push %ebp
c0201a22: 89 e5 mov %esp,%ebp
c0201a24: 83 ec 08 sub $0x8,%esp
c0201a27: 8b 55 0c mov 0xc(%ebp),%edx
c0201a2a: 8b 45 14 mov 0x14(%ebp),%eax
c0201a2d: 88 55 fc mov %dl,-0x4(%ebp)
c0201a30: 88 45 f8 mov %al,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:120
c0201a33: 8b 45 10 mov 0x10(%ebp),%eax
c0201a36: 89 c2 mov %eax,%edx
c0201a38: 8b 45 08 mov 0x8(%ebp),%eax
c0201a3b: 66 89 10 mov %dx,(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:121
c0201a3e: 8b 45 08 mov 0x8(%ebp),%eax
c0201a41: 66 c7 40 02 08 00 movw $0x8,0x2(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:122
c0201a47: 8b 45 08 mov 0x8(%ebp),%eax
c0201a4a: c6 40 04 00 movb $0x0,0x4(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:123
c0201a4e: 0f b6 45 f8 movzbl -0x8(%ebp),%eax
c0201a52: c1 e0 05 shl $0x5,%eax
c0201a55: 89 c2 mov %eax,%edx
c0201a57: 0f b6 45 fc movzbl -0x4(%ebp),%eax
c0201a5b: 09 d0 or %edx,%eax
c0201a5d: 89 c2 mov %eax,%edx
c0201a5f: 8b 45 08 mov 0x8(%ebp),%eax
c0201a62: 88 50 05 mov %dl,0x5(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:124
c0201a65: 8b 45 10 mov 0x10(%ebp),%eax
c0201a68: c1 e8 10 shr $0x10,%eax
c0201a6b: 89 c2 mov %eax,%edx
c0201a6d: 8b 45 08 mov 0x8(%ebp),%eax
c0201a70: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/inc/kern/protect.h:125
c0201a74: 90 nop
c0201a75: c9 leave
c0201a76: c3 ret
c0201a77 <enable_irq>:
enable_irq():
/media/unix/Data/Code/2020301918-os/kern/trap.c:43
c0201a77: 55 push %ebp
c0201a78: 89 e5 mov %esp,%ebp
c0201a7a: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:44
c0201a7d: 8b 45 08 mov 0x8(%ebp),%eax
c0201a80: 83 e0 07 and $0x7,%eax
c0201a83: ba 01 00 00 00 mov $0x1,%edx
c0201a88: 89 c1 mov %eax,%ecx
c0201a8a: d3 e2 shl %cl,%edx
c0201a8c: 89 d0 mov %edx,%eax
c0201a8e: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:45
c0201a91: 83 7d 08 07 cmpl $0x7,0x8(%ebp)
c0201a95: 7f 24 jg c0201abb <enable_irq+0x44>
/media/unix/Data/Code/2020301918-os/kern/trap.c:46
c0201a97: 6a 21 push $0x21
c0201a99: e8 d9 fe ff ff call c0201977 <inb>
c0201a9e: 83 c4 04 add $0x4,%esp
c0201aa1: 89 c2 mov %eax,%edx
c0201aa3: 0f b6 45 ff movzbl -0x1(%ebp),%eax
c0201aa7: f7 d0 not %eax
c0201aa9: 21 d0 and %edx,%eax
c0201aab: 0f b6 c0 movzbl %al,%eax
c0201aae: 50 push %eax
c0201aaf: 6a 21 push $0x21
c0201ab1: e8 d6 fe ff ff call c020198c <outb>
c0201ab6: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:49
c0201ab9: eb 28 jmp c0201ae3 <enable_irq+0x6c>
/media/unix/Data/Code/2020301918-os/kern/trap.c:48
c0201abb: 68 a1 00 00 00 push $0xa1
c0201ac0: e8 b2 fe ff ff call c0201977 <inb>
c0201ac5: 83 c4 04 add $0x4,%esp
c0201ac8: 89 c2 mov %eax,%edx
c0201aca: 0f b6 45 ff movzbl -0x1(%ebp),%eax
c0201ace: f7 d0 not %eax
c0201ad0: 21 d0 and %edx,%eax
c0201ad2: 0f b6 c0 movzbl %al,%eax
c0201ad5: 50 push %eax
c0201ad6: 68 a1 00 00 00 push $0xa1
c0201adb: e8 ac fe ff ff call c020198c <outb>
c0201ae0: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:49
c0201ae3: 90 nop
c0201ae4: c9 leave
c0201ae5: c3 ret
c0201ae6 <disable_irq>:
disable_irq():
/media/unix/Data/Code/2020301918-os/kern/trap.c:56
c0201ae6: 55 push %ebp
c0201ae7: 89 e5 mov %esp,%ebp
c0201ae9: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:57
c0201aec: 8b 45 08 mov 0x8(%ebp),%eax
c0201aef: 83 e0 07 and $0x7,%eax
c0201af2: ba 01 00 00 00 mov $0x1,%edx
c0201af7: 89 c1 mov %eax,%ecx
c0201af9: d3 e2 shl %cl,%edx
c0201afb: 89 d0 mov %edx,%eax
c0201afd: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:58
c0201b00: 83 7d 08 07 cmpl $0x7,0x8(%ebp)
c0201b04: 7f 1d jg c0201b23 <disable_irq+0x3d>
/media/unix/Data/Code/2020301918-os/kern/trap.c:59
c0201b06: 6a 21 push $0x21
c0201b08: e8 6a fe ff ff call c0201977 <inb>
c0201b0d: 83 c4 04 add $0x4,%esp
c0201b10: 0a 45 ff or -0x1(%ebp),%al
c0201b13: 0f b6 c0 movzbl %al,%eax
c0201b16: 50 push %eax
c0201b17: 6a 21 push $0x21
c0201b19: e8 6e fe ff ff call c020198c <outb>
c0201b1e: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:62
c0201b21: eb 21 jmp c0201b44 <disable_irq+0x5e>
/media/unix/Data/Code/2020301918-os/kern/trap.c:61
c0201b23: 68 a1 00 00 00 push $0xa1
c0201b28: e8 4a fe ff ff call c0201977 <inb>
c0201b2d: 83 c4 04 add $0x4,%esp
c0201b30: 0a 45 ff or -0x1(%ebp),%al
c0201b33: 0f b6 c0 movzbl %al,%eax
c0201b36: 50 push %eax
c0201b37: 68 a1 00 00 00 push $0xa1
c0201b3c: e8 4b fe ff ff call c020198c <outb>
c0201b41: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:62
c0201b44: 90 nop
c0201b45: c9 leave
c0201b46: c3 ret
c0201b47 <default_interrupt_handler>:
default_interrupt_handler():
/media/unix/Data/Code/2020301918-os/kern/trap.c:69
c0201b47: 55 push %ebp
c0201b48: 89 e5 mov %esp,%ebp
c0201b4a: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:70
c0201b4d: ff 75 08 push 0x8(%ebp)
c0201b50: 68 a0 46 20 c0 push $0xc02046a0
c0201b55: 6a 46 push $0x46
c0201b57: 68 be 46 20 c0 push $0xc02046be
c0201b5c: e8 a1 f6 ff ff call c0201202 <_warn>
c0201b61: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:71
c0201b64: 90 nop
c0201b65: c9 leave
c0201b66: c3 ret
c0201b67 <exception_handler>:
exception_handler():
/media/unix/Data/Code/2020301918-os/kern/trap.c:79
c0201b67: 55 push %ebp
c0201b68: 89 e5 mov %esp,%ebp
c0201b6a: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:105
c0201b6d: 83 7d 08 0e cmpl $0xe,0x8(%ebp)
c0201b71: 0f 85 3a 01 00 00 jne c0201cb1 <exception_handler+0x14a>
/media/unix/Data/Code/2020301918-os/kern/trap.c:106
c0201b77: c7 45 f4 c0 ee 20 c0 movl $0xc020eec0,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:108
c0201b7e: 8b 45 f4 mov -0xc(%ebp),%eax
c0201b81: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201b86: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:107
c0201b88: b8 ff 00 00 00 mov $0xff,%eax
c0201b8d: 29 d0 sub %edx,%eax
c0201b8f: 83 ec 04 sub $0x4,%esp
c0201b92: 68 cc 46 20 c0 push $0xc02046cc
c0201b97: 50 push %eax
c0201b98: ff 75 f4 push -0xc(%ebp)
c0201b9b: e8 be 14 00 00 call c020305e <snprintf>
c0201ba0: 83 c4 10 add $0x10,%esp
c0201ba3: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:111
c0201ba6: 8b 45 f4 mov -0xc(%ebp),%eax
c0201ba9: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201bae: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:110
c0201bb0: b8 ff 00 00 00 mov $0xff,%eax
c0201bb5: 29 d0 sub %edx,%eax
c0201bb7: 83 ec 04 sub $0x4,%esp
c0201bba: 68 f4 46 20 c0 push $0xc02046f4
c0201bbf: 50 push %eax
c0201bc0: ff 75 f4 push -0xc(%ebp)
c0201bc3: e8 96 14 00 00 call c020305e <snprintf>
c0201bc8: 83 c4 10 add $0x10,%esp
c0201bcb: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:113
c0201bce: 8b 45 0c mov 0xc(%ebp),%eax
c0201bd1: 83 e0 01 and $0x1,%eax
c0201bd4: 85 c0 test %eax,%eax
c0201bd6: 75 28 jne c0201c00 <exception_handler+0x99>
/media/unix/Data/Code/2020301918-os/kern/trap.c:115
c0201bd8: 8b 45 f4 mov -0xc(%ebp),%eax
c0201bdb: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201be0: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:114
c0201be2: b8 ff 00 00 00 mov $0xff,%eax
c0201be7: 29 d0 sub %edx,%eax
c0201be9: 83 ec 04 sub $0x4,%esp
c0201bec: 68 2c 47 20 c0 push $0xc020472c
c0201bf1: 50 push %eax
c0201bf2: ff 75 f4 push -0xc(%ebp)
c0201bf5: e8 64 14 00 00 call c020305e <snprintf>
c0201bfa: 83 c4 10 add $0x10,%esp
c0201bfd: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:118
c0201c00: 8b 45 0c mov 0xc(%ebp),%eax
c0201c03: 83 e0 02 and $0x2,%eax
c0201c06: 85 c0 test %eax,%eax
c0201c08: 74 2a je c0201c34 <exception_handler+0xcd>
/media/unix/Data/Code/2020301918-os/kern/trap.c:120
c0201c0a: 8b 45 f4 mov -0xc(%ebp),%eax
c0201c0d: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201c12: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:119
c0201c14: b8 ff 00 00 00 mov $0xff,%eax
c0201c19: 29 d0 sub %edx,%eax
c0201c1b: 83 ec 04 sub $0x4,%esp
c0201c1e: 68 58 47 20 c0 push $0xc0204758
c0201c23: 50 push %eax
c0201c24: ff 75 f4 push -0xc(%ebp)
c0201c27: e8 32 14 00 00 call c020305e <snprintf>
c0201c2c: 83 c4 10 add $0x10,%esp
c0201c2f: 01 45 f4 add %eax,-0xc(%ebp)
c0201c32: eb 28 jmp c0201c5c <exception_handler+0xf5>
/media/unix/Data/Code/2020301918-os/kern/trap.c:124
c0201c34: 8b 45 f4 mov -0xc(%ebp),%eax
c0201c37: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201c3c: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:123
c0201c3e: b8 ff 00 00 00 mov $0xff,%eax
c0201c43: 29 d0 sub %edx,%eax
c0201c45: 83 ec 04 sub $0x4,%esp
c0201c48: 68 7c 47 20 c0 push $0xc020477c
c0201c4d: 50 push %eax
c0201c4e: ff 75 f4 push -0xc(%ebp)
c0201c51: e8 08 14 00 00 call c020305e <snprintf>
c0201c56: 83 c4 10 add $0x10,%esp
c0201c59: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:127
c0201c5c: 8b 45 0c mov 0xc(%ebp),%eax
c0201c5f: 83 e0 04 and $0x4,%eax
c0201c62: 85 c0 test %eax,%eax
c0201c64: 74 28 je c0201c8e <exception_handler+0x127>
/media/unix/Data/Code/2020301918-os/kern/trap.c:129
c0201c66: 8b 45 f4 mov -0xc(%ebp),%eax
c0201c69: 2d c0 ee 20 c0 sub $0xc020eec0,%eax
c0201c6e: 89 c2 mov %eax,%edx
/media/unix/Data/Code/2020301918-os/kern/trap.c:128
c0201c70: b8 ff 00 00 00 mov $0xff,%eax
c0201c75: 29 d0 sub %edx,%eax
c0201c77: 83 ec 04 sub $0x4,%esp
c0201c7a: 68 a0 47 20 c0 push $0xc02047a0
c0201c7f: 50 push %eax
c0201c80: ff 75 f4 push -0xc(%ebp)
c0201c83: e8 d6 13 00 00 call c020305e <snprintf>
c0201c88: 83 c4 10 add $0x10,%esp
c0201c8b: 01 45 f4 add %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:132
c0201c8e: e8 10 fd ff ff call c02019a3 <rcr2>
c0201c93: 83 ec 08 sub $0x8,%esp
c0201c96: 50 push %eax
c0201c97: ff 75 10 push 0x10(%ebp)
c0201c9a: ff 75 14 push 0x14(%ebp)
c0201c9d: 68 c0 ee 20 c0 push $0xc020eec0
c0201ca2: 68 84 00 00 00 push $0x84
c0201ca7: 68 be 46 20 c0 push $0xc02046be
c0201cac: e8 08 f5 ff ff call c02011b9 <_panic>
/media/unix/Data/Code/2020301918-os/kern/trap.c:134
c0201cb1: 83 ec 04 sub $0x4,%esp
c0201cb4: 68 cc 47 20 c0 push $0xc02047cc
c0201cb9: 68 ff 00 00 00 push $0xff
c0201cbe: 68 c0 ee 20 c0 push $0xc020eec0
c0201cc3: e8 96 13 00 00 call c020305e <snprintf>
c0201cc8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:137
c0201ccb: 8b 45 08 mov 0x8(%ebp),%eax
c0201cce: c1 e0 06 shl $0x6,%eax
c0201cd1: 05 a0 74 20 c0 add $0xc02074a0,%eax
c0201cd6: ff 75 0c push 0xc(%ebp)
c0201cd9: ff 75 10 push 0x10(%ebp)
c0201cdc: ff 75 14 push 0x14(%ebp)
c0201cdf: ff 75 18 push 0x18(%ebp)
c0201ce2: 50 push %eax
c0201ce3: 68 c0 ee 20 c0 push $0xc020eec0
c0201ce8: 68 89 00 00 00 push $0x89
c0201ced: 68 be 46 20 c0 push $0xc02046be
c0201cf2: e8 c2 f4 ff ff call c02011b9 <_panic>
c0201cf7 <clock_interrupt_handler>:
clock_interrupt_handler():
/media/unix/Data/Code/2020301918-os/kern/trap.c:151
c0201cf7: 55 push %ebp
c0201cf8: 89 e5 mov %esp,%ebp
c0201cfa: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:152
c0201cfd: e8 4e fc ff ff call c0201950 <timecounter_inc>
/media/unix/Data/Code/2020301918-os/kern/trap.c:154
c0201d02: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201d07: 8b 50 78 mov 0x78(%eax),%edx
c0201d0a: 83 ea 01 sub $0x1,%edx
c0201d0d: 89 50 78 mov %edx,0x78(%eax)
c0201d10: 8b 40 78 mov 0x78(%eax),%eax
c0201d13: 85 c0 test %eax,%eax
c0201d15: 75 16 jne c0201d2d <clock_interrupt_handler+0x36>
/media/unix/Data/Code/2020301918-os/kern/trap.c:155
c0201d17: 8b 15 e4 9d 20 c0 mov 0xc0209de4,%edx
c0201d1d: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201d22: 8b 52 74 mov 0x74(%edx),%edx
c0201d25: 89 50 78 mov %edx,0x78(%eax)
/media/unix/Data/Code/2020301918-os/kern/trap.c:156
c0201d28: e8 03 f3 ff ff call c0201030 <schedule>
/media/unix/Data/Code/2020301918-os/kern/trap.c:158
c0201d2d: 90 nop
c0201d2e: c9 leave
c0201d2f: c3 ret
c0201d30 <kb_interrupt_handler>:
kb_interrupt_handler():
/media/unix/Data/Code/2020301918-os/kern/trap.c:165
c0201d30: 55 push %ebp
c0201d31: 89 e5 mov %esp,%ebp
c0201d33: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:166
c0201d36: 6a 60 push $0x60
c0201d38: e8 3a fc ff ff call c0201977 <inb>
c0201d3d: 83 c4 04 add $0x4,%esp
c0201d40: 88 45 f7 mov %al,-0x9(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:167
c0201d43: 0f b6 45 f7 movzbl -0x9(%ebp),%eax
c0201d47: 84 c0 test %al,%al
c0201d49: 78 2c js c0201d77 <kb_interrupt_handler+0x47>
/media/unix/Data/Code/2020301918-os/kern/trap.c:169
c0201d4b: 0f b6 45 f7 movzbl -0x9(%ebp),%eax
c0201d4f: 8b 04 85 a0 44 20 c0 mov -0x3fdfbb60(,%eax,4),%eax
c0201d56: 88 45 f7 mov %al,-0x9(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:170
c0201d59: 80 7d f7 60 cmpb $0x60,-0x9(%ebp)
c0201d5d: 76 19 jbe c0201d78 <kb_interrupt_handler+0x48>
/media/unix/Data/Code/2020301918-os/kern/trap.c:170 (discriminator 1)
c0201d5f: 80 7d f7 7a cmpb $0x7a,-0x9(%ebp)
c0201d63: 77 13 ja c0201d78 <kb_interrupt_handler+0x48>
/media/unix/Data/Code/2020301918-os/kern/trap.c:171
c0201d65: 0f b6 45 f7 movzbl -0x9(%ebp),%eax
c0201d69: 83 ec 0c sub $0xc,%esp
c0201d6c: 50 push %eax
c0201d6d: e8 c1 ea ff ff call c0200833 <add_keyboard_buf>
c0201d72: 83 c4 10 add $0x10,%esp
c0201d75: eb 01 jmp c0201d78 <kb_interrupt_handler+0x48>
/media/unix/Data/Code/2020301918-os/kern/trap.c:168
c0201d77: 90 nop
/media/unix/Data/Code/2020301918-os/kern/trap.c:172
c0201d78: c9 leave
c0201d79: c3 ret
c0201d7a <syscall_handler>:
syscall_handler():
/media/unix/Data/Code/2020301918-os/kern/trap.c:179
c0201d7a: 55 push %ebp
c0201d7b: 89 e5 mov %esp,%ebp
c0201d7d: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/kern/trap.c:180
c0201d80: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201d85: 8b 40 2c mov 0x2c(%eax),%eax
c0201d88: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:181
c0201d8b: 8b 45 f4 mov -0xc(%ebp),%eax
c0201d8e: 8b 04 85 34 74 20 c0 mov -0x3fdf8bcc(,%eax,4),%eax
c0201d95: ff d0 call *%eax
c0201d97: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/kern/trap.c:182
c0201d9a: a1 e4 9d 20 c0 mov 0xc0209de4,%eax
c0201d9f: 8b 55 f0 mov -0x10(%ebp),%edx
c0201da2: 89 50 2c mov %edx,0x2c(%eax)
/media/unix/Data/Code/2020301918-os/kern/trap.c:183
c0201da5: 90 nop
c0201da6: c9 leave
c0201da7: c3 ret
c0201da8 <xchg>:
xchg():
/media/unix/Data/Code/2020301918-os/inc/x86.h:200
c0201da8: 55 push %ebp
c0201da9: 89 e5 mov %esp,%ebp
c0201dab: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/inc/x86.h:204
c0201dae: 8b 55 08 mov 0x8(%ebp),%edx
c0201db1: 8b 45 0c mov 0xc(%ebp),%eax
c0201db4: 8b 4d 08 mov 0x8(%ebp),%ecx
c0201db7: f0 87 02 lock xchg %eax,(%edx)
c0201dba: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/inc/x86.h:208
c0201dbd: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/inc/x86.h:209
c0201dc0: c9 leave
c0201dc1: c3 ret
c0201dc2 <write_to_terminal>:
write_to_terminal():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:13
c0201dc2: 55 push %ebp
c0201dc3: 89 e5 mov %esp,%ebp
c0201dc5: 83 ec 08 sub $0x8,%esp
c0201dc8: 8b 55 08 mov 0x8(%ebp),%edx
c0201dcb: 8b 45 0c mov 0xc(%ebp),%eax
c0201dce: 66 89 55 fc mov %dx,-0x4(%ebp)
c0201dd2: 66 89 45 f8 mov %ax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:15
c0201dd6: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201dda: 8d 14 00 lea (%eax,%eax,1),%edx
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:14
c0201ddd: 0f b7 45 f8 movzwl -0x8(%ebp),%eax
c0201de1: 65 66 89 02 mov %ax,%gs:(%edx)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:17
c0201de5: 90 nop
c0201de6: c9 leave
c0201de7: c3 ret
c0201de8 <cursor_pos>:
cursor_pos():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:46
c0201de8: 55 push %ebp
c0201de9: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:47
c0201deb: 8b 45 08 mov 0x8(%ebp),%eax
c0201dee: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201df2: 89 c2 mov %eax,%edx
c0201df4: 89 d0 mov %edx,%eax
c0201df6: c1 e0 02 shl $0x2,%eax
c0201df9: 01 d0 add %edx,%eax
c0201dfb: c1 e0 04 shl $0x4,%eax
c0201dfe: 89 c2 mov %eax,%edx
c0201e00: 8b 45 08 mov 0x8(%ebp),%eax
c0201e03: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201e07: 01 d0 add %edx,%eax
c0201e09: 83 e8 51 sub $0x51,%eax
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:48
c0201e0c: 5d pop %ebp
c0201e0d: c3 ret
c0201e0e <cursor_move>:
cursor_move():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:52
c0201e0e: 55 push %ebp
c0201e0f: 89 e5 mov %esp,%ebp
c0201e11: 83 ec 08 sub $0x8,%esp
c0201e14: 8b 55 08 mov 0x8(%ebp),%edx
c0201e17: 8b 45 0c mov 0xc(%ebp),%eax
c0201e1a: 66 89 55 fc mov %dx,-0x4(%ebp)
c0201e1e: 66 89 45 f8 mov %ax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:53
c0201e22: 8b 45 10 mov 0x10(%ebp),%eax
c0201e25: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201e29: 89 c2 mov %eax,%edx
c0201e2b: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201e2f: 01 d0 add %edx,%eax
c0201e31: 89 c2 mov %eax,%edx
c0201e33: 8b 45 10 mov 0x10(%ebp),%eax
c0201e36: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:54
c0201e3a: 8b 45 10 mov 0x10(%ebp),%eax
c0201e3d: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201e41: 66 85 c0 test %ax,%ax
c0201e44: 7f 09 jg c0201e4f <cursor_move+0x41>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:55
c0201e46: 8b 45 10 mov 0x10(%ebp),%eax
c0201e49: 66 c7 40 06 01 00 movw $0x1,0x6(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:56
c0201e4f: 8b 45 10 mov 0x10(%ebp),%eax
c0201e52: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201e56: 66 83 f8 19 cmp $0x19,%ax
c0201e5a: 7e 09 jle c0201e65 <cursor_move+0x57>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:57
c0201e5c: 8b 45 10 mov 0x10(%ebp),%eax
c0201e5f: 66 c7 40 06 19 00 movw $0x19,0x6(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:59
c0201e65: 8b 45 10 mov 0x10(%ebp),%eax
c0201e68: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201e6c: 89 c2 mov %eax,%edx
c0201e6e: 0f b7 45 f8 movzwl -0x8(%ebp),%eax
c0201e72: 01 d0 add %edx,%eax
c0201e74: 89 c2 mov %eax,%edx
c0201e76: 8b 45 10 mov 0x10(%ebp),%eax
c0201e79: 66 89 50 08 mov %dx,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:60
c0201e7d: 8b 45 10 mov 0x10(%ebp),%eax
c0201e80: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201e84: 66 85 c0 test %ax,%ax
c0201e87: 7f 09 jg c0201e92 <cursor_move+0x84>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:61
c0201e89: 8b 45 10 mov 0x10(%ebp),%eax
c0201e8c: 66 c7 40 08 01 00 movw $0x1,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:62
c0201e92: 8b 45 10 mov 0x10(%ebp),%eax
c0201e95: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201e99: 66 83 f8 50 cmp $0x50,%ax
c0201e9d: 7e 09 jle c0201ea8 <cursor_move+0x9a>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:63
c0201e9f: 8b 45 10 mov 0x10(%ebp),%eax
c0201ea2: 66 c7 40 08 50 00 movw $0x50,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:64
c0201ea8: 90 nop
c0201ea9: c9 leave
c0201eaa: c3 ret
c0201eab <cursor_move_pre>:
cursor_move_pre():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:68
c0201eab: 55 push %ebp
c0201eac: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:69
c0201eae: 8b 45 08 mov 0x8(%ebp),%eax
c0201eb1: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201eb5: 66 83 f8 01 cmp $0x1,%ax
c0201eb9: 75 2b jne c0201ee6 <cursor_move_pre+0x3b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:70
c0201ebb: 8b 45 08 mov 0x8(%ebp),%eax
c0201ebe: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201ec2: 66 83 f8 01 cmp $0x1,%ax
c0201ec6: 7e 31 jle c0201ef9 <cursor_move_pre+0x4e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:71
c0201ec8: 8b 45 08 mov 0x8(%ebp),%eax
c0201ecb: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201ecf: 83 e8 01 sub $0x1,%eax
c0201ed2: 89 c2 mov %eax,%edx
c0201ed4: 8b 45 08 mov 0x8(%ebp),%eax
c0201ed7: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:72
c0201edb: 8b 45 08 mov 0x8(%ebp),%eax
c0201ede: 66 c7 40 08 50 00 movw $0x50,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:77
c0201ee4: eb 13 jmp c0201ef9 <cursor_move_pre+0x4e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:75
c0201ee6: 8b 45 08 mov 0x8(%ebp),%eax
c0201ee9: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201eed: 83 e8 01 sub $0x1,%eax
c0201ef0: 89 c2 mov %eax,%edx
c0201ef2: 8b 45 08 mov 0x8(%ebp),%eax
c0201ef5: 66 89 50 08 mov %dx,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:77
c0201ef9: 90 nop
c0201efa: 5d pop %ebp
c0201efb: c3 ret
c0201efc <cursor_move_nxt>:
cursor_move_nxt():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:81
c0201efc: 55 push %ebp
c0201efd: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:82
c0201eff: 8b 45 08 mov 0x8(%ebp),%eax
c0201f02: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201f06: 66 83 f8 50 cmp $0x50,%ax
c0201f0a: 75 2b jne c0201f37 <cursor_move_nxt+0x3b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:83
c0201f0c: 8b 45 08 mov 0x8(%ebp),%eax
c0201f0f: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201f13: 66 83 f8 18 cmp $0x18,%ax
c0201f17: 7f 31 jg c0201f4a <cursor_move_nxt+0x4e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:84
c0201f19: 8b 45 08 mov 0x8(%ebp),%eax
c0201f1c: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0201f20: 83 c0 01 add $0x1,%eax
c0201f23: 89 c2 mov %eax,%edx
c0201f25: 8b 45 08 mov 0x8(%ebp),%eax
c0201f28: 66 89 50 06 mov %dx,0x6(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:85
c0201f2c: 8b 45 08 mov 0x8(%ebp),%eax
c0201f2f: 66 c7 40 08 01 00 movw $0x1,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:90
c0201f35: eb 13 jmp c0201f4a <cursor_move_nxt+0x4e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:88
c0201f37: 8b 45 08 mov 0x8(%ebp),%eax
c0201f3a: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0201f3e: 83 c0 01 add $0x1,%eax
c0201f41: 89 c2 mov %eax,%edx
c0201f43: 8b 45 08 mov 0x8(%ebp),%eax
c0201f46: 66 89 50 08 mov %dx,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:90
c0201f4a: 90 nop
c0201f4b: 5d pop %ebp
c0201f4c: c3 ret
c0201f4d <clear_screen>:
clear_screen():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:98
c0201f4d: 55 push %ebp
c0201f4e: 89 e5 mov %esp,%ebp
c0201f50: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:99
c0201f53: 66 c7 45 f8 20 0f movw $0xf20,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:100
c0201f59: 8b 45 08 mov 0x8(%ebp),%eax
c0201f5c: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0201f60: 66 85 c0 test %ax,%ax
c0201f63: 75 3a jne c0201f9f <clear_screen+0x52>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:101
c0201f65: ff 75 08 push 0x8(%ebp)
c0201f68: e8 7b fe ff ff call c0201de8 <cursor_pos>
c0201f6d: 83 c4 04 add $0x4,%esp
c0201f70: 66 89 45 fe mov %ax,-0x2(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:102
c0201f74: eb 1c jmp c0201f92 <clear_screen+0x45>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:103
c0201f76: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c0201f7a: 0f b7 45 fe movzwl -0x2(%ebp),%eax
c0201f7e: 8d 48 01 lea 0x1(%eax),%ecx
c0201f81: 66 89 4d fe mov %cx,-0x2(%ebp)
c0201f85: 0f b7 c0 movzwl %ax,%eax
c0201f88: 52 push %edx
c0201f89: 50 push %eax
c0201f8a: e8 33 fe ff ff call c0201dc2 <write_to_terminal>
c0201f8f: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:102
c0201f92: 66 81 7d fe cf 07 cmpw $0x7cf,-0x2(%ebp)
c0201f98: 76 dc jbe c0201f76 <clear_screen+0x29>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:114
c0201f9a: e9 8e 00 00 00 jmp c020202d <clear_screen+0xe0>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:104
c0201f9f: 8b 45 08 mov 0x8(%ebp),%eax
c0201fa2: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0201fa6: 66 83 f8 01 cmp $0x1,%ax
c0201faa: 75 48 jne c0201ff4 <clear_screen+0xa7>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:105
c0201fac: ff 75 08 push 0x8(%ebp)
c0201faf: e8 34 fe ff ff call c0201de8 <cursor_pos>
c0201fb4: 83 c4 04 add $0x4,%esp
c0201fb7: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:106
c0201fbb: eb 1c jmp c0201fd9 <clear_screen+0x8c>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:107
c0201fbd: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c0201fc1: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201fc5: 8d 48 ff lea -0x1(%eax),%ecx
c0201fc8: 66 89 4d fc mov %cx,-0x4(%ebp)
c0201fcc: 0f b7 c0 movzwl %ax,%eax
c0201fcf: 52 push %edx
c0201fd0: 50 push %eax
c0201fd1: e8 ec fd ff ff call c0201dc2 <write_to_terminal>
c0201fd6: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:106
c0201fd9: 66 83 7d fc 00 cmpw $0x0,-0x4(%ebp)
c0201fde: 75 dd jne c0201fbd <clear_screen+0x70>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:108
c0201fe0: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c0201fe4: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c0201fe8: 52 push %edx
c0201fe9: 50 push %eax
c0201fea: e8 d3 fd ff ff call c0201dc2 <write_to_terminal>
c0201fef: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:114
c0201ff2: eb 39 jmp c020202d <clear_screen+0xe0>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:109
c0201ff4: 8b 45 08 mov 0x8(%ebp),%eax
c0201ff7: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0201ffb: 66 83 f8 02 cmp $0x2,%ax
c0201fff: 75 2c jne c020202d <clear_screen+0xe0>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:110
c0202001: 66 c7 45 fa 00 00 movw $0x0,-0x6(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:111
c0202007: eb 1c jmp c0202025 <clear_screen+0xd8>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:112
c0202009: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c020200d: 0f b7 45 fa movzwl -0x6(%ebp),%eax
c0202011: 8d 48 01 lea 0x1(%eax),%ecx
c0202014: 66 89 4d fa mov %cx,-0x6(%ebp)
c0202018: 0f b7 c0 movzwl %ax,%eax
c020201b: 52 push %edx
c020201c: 50 push %eax
c020201d: e8 a0 fd ff ff call c0201dc2 <write_to_terminal>
c0202022: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:111
c0202025: 66 81 7d fa cf 07 cmpw $0x7cf,-0x6(%ebp)
c020202b: 76 dc jbe c0202009 <clear_screen+0xbc>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:114
c020202d: 90 nop
c020202e: c9 leave
c020202f: c3 ret
c0202030 <clear_line>:
clear_line():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:118
c0202030: 55 push %ebp
c0202031: 89 e5 mov %esp,%ebp
c0202033: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:119
c0202036: 66 c7 45 f8 20 0f movw $0xf20,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:120
c020203c: 8b 45 08 mov 0x8(%ebp),%eax
c020203f: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202043: 66 85 c0 test %ax,%ax
c0202046: 75 5b jne c02020a3 <clear_line+0x73>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:121
c0202048: ff 75 08 push 0x8(%ebp)
c020204b: e8 98 fd ff ff call c0201de8 <cursor_pos>
c0202050: 83 c4 04 add $0x4,%esp
c0202053: 66 89 45 fe mov %ax,-0x2(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:122
c0202057: eb 1c jmp c0202075 <clear_line+0x45>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:123
c0202059: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c020205d: 0f b7 45 fe movzwl -0x2(%ebp),%eax
c0202061: 8d 48 01 lea 0x1(%eax),%ecx
c0202064: 66 89 4d fe mov %cx,-0x2(%ebp)
c0202068: 0f b7 c0 movzwl %ax,%eax
c020206b: 52 push %edx
c020206c: 50 push %eax
c020206d: e8 50 fd ff ff call c0201dc2 <write_to_terminal>
c0202072: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:122
c0202075: 0f b7 4d fe movzwl -0x2(%ebp),%ecx
c0202079: 0f b7 c1 movzwl %cx,%eax
c020207c: 69 c0 cd cc 00 00 imul $0xcccd,%eax,%eax
c0202082: c1 e8 10 shr $0x10,%eax
c0202085: 89 c2 mov %eax,%edx
c0202087: 66 c1 ea 06 shr $0x6,%dx
c020208b: 89 d0 mov %edx,%eax
c020208d: c1 e0 02 shl $0x2,%eax
c0202090: 01 d0 add %edx,%eax
c0202092: c1 e0 04 shl $0x4,%eax
c0202095: 29 c1 sub %eax,%ecx
c0202097: 89 ca mov %ecx,%edx
c0202099: 66 85 d2 test %dx,%dx
c020209c: 75 bb jne c0202059 <clear_line+0x29>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:135
c020209e: e9 e3 00 00 00 jmp c0202186 <clear_line+0x156>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:124
c02020a3: 8b 45 08 mov 0x8(%ebp),%eax
c02020a6: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02020aa: 66 83 f8 01 cmp $0x1,%ax
c02020ae: 75 6a jne c020211a <clear_line+0xea>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:125
c02020b0: ff 75 08 push 0x8(%ebp)
c02020b3: e8 30 fd ff ff call c0201de8 <cursor_pos>
c02020b8: 83 c4 04 add $0x4,%esp
c02020bb: 66 89 45 fc mov %ax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:126
c02020bf: eb 1c jmp c02020dd <clear_line+0xad>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:127
c02020c1: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c02020c5: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c02020c9: 8d 48 ff lea -0x1(%eax),%ecx
c02020cc: 66 89 4d fc mov %cx,-0x4(%ebp)
c02020d0: 0f b7 c0 movzwl %ax,%eax
c02020d3: 52 push %edx
c02020d4: 50 push %eax
c02020d5: e8 e8 fc ff ff call c0201dc2 <write_to_terminal>
c02020da: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:126
c02020dd: 0f b7 4d fc movzwl -0x4(%ebp),%ecx
c02020e1: 0f b7 c1 movzwl %cx,%eax
c02020e4: 69 c0 cd cc 00 00 imul $0xcccd,%eax,%eax
c02020ea: c1 e8 10 shr $0x10,%eax
c02020ed: 89 c2 mov %eax,%edx
c02020ef: 66 c1 ea 06 shr $0x6,%dx
c02020f3: 89 d0 mov %edx,%eax
c02020f5: c1 e0 02 shl $0x2,%eax
c02020f8: 01 d0 add %edx,%eax
c02020fa: c1 e0 04 shl $0x4,%eax
c02020fd: 29 c1 sub %eax,%ecx
c02020ff: 89 ca mov %ecx,%edx
c0202101: 66 85 d2 test %dx,%dx
c0202104: 75 bb jne c02020c1 <clear_line+0x91>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:128
c0202106: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c020210a: 0f b7 45 fc movzwl -0x4(%ebp),%eax
c020210e: 52 push %edx
c020210f: 50 push %eax
c0202110: e8 ad fc ff ff call c0201dc2 <write_to_terminal>
c0202115: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:135
c0202118: eb 6c jmp c0202186 <clear_line+0x156>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:129
c020211a: 8b 45 08 mov 0x8(%ebp),%eax
c020211d: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202121: 66 83 f8 02 cmp $0x2,%ax
c0202125: 75 5f jne c0202186 <clear_line+0x156>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:130
c0202127: 8b 45 08 mov 0x8(%ebp),%eax
c020212a: 0f b7 40 06 movzwl 0x6(%eax),%eax
c020212e: 89 c2 mov %eax,%edx
c0202130: 89 d0 mov %edx,%eax
c0202132: c1 e0 02 shl $0x2,%eax
c0202135: 01 d0 add %edx,%eax
c0202137: c1 e0 04 shl $0x4,%eax
c020213a: 83 e8 50 sub $0x50,%eax
c020213d: 66 89 45 fa mov %ax,-0x6(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:132 (discriminator 1)
c0202141: 0f b7 55 f8 movzwl -0x8(%ebp),%edx
c0202145: 0f b7 45 fa movzwl -0x6(%ebp),%eax
c0202149: 8d 48 01 lea 0x1(%eax),%ecx
c020214c: 66 89 4d fa mov %cx,-0x6(%ebp)
c0202150: 0f b7 c0 movzwl %ax,%eax
c0202153: 52 push %edx
c0202154: 50 push %eax
c0202155: e8 68 fc ff ff call c0201dc2 <write_to_terminal>
c020215a: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:133 (discriminator 1)
c020215d: 0f b7 4d fa movzwl -0x6(%ebp),%ecx
c0202161: 0f b7 c1 movzwl %cx,%eax
c0202164: 69 c0 cd cc 00 00 imul $0xcccd,%eax,%eax
c020216a: c1 e8 10 shr $0x10,%eax
c020216d: 89 c2 mov %eax,%edx
c020216f: 66 c1 ea 06 shr $0x6,%dx
c0202173: 89 d0 mov %edx,%eax
c0202175: c1 e0 02 shl $0x2,%eax
c0202178: 01 d0 add %edx,%eax
c020217a: c1 e0 04 shl $0x4,%eax
c020217d: 29 c1 sub %eax,%ecx
c020217f: 89 ca mov %ecx,%edx
c0202181: 66 85 d2 test %dx,%dx
c0202184: 75 bb jne c0202141 <clear_line+0x111>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:135
c0202186: 90 nop
c0202187: c9 leave
c0202188: c3 ret
c0202189 <scroll>:
scroll():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:139
c0202189: 55 push %ebp
c020218a: 89 e5 mov %esp,%ebp
c020218c: 83 ec 58 sub $0x58,%esp
c020218f: 8b 45 08 mov 0x8(%ebp),%eax
c0202192: 66 89 45 b4 mov %ax,-0x4c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:140
c0202196: 0f b7 45 b4 movzwl -0x4c(%ebp),%eax
c020219a: 66 89 45 f6 mov %ax,-0xa(%ebp)
c020219e: c7 45 f0 19 00 00 00 movl $0x19,-0x10(%ebp)
c02021a5: 0f bf 55 f6 movswl -0xa(%ebp),%edx
c02021a9: 8b 45 f0 mov -0x10(%ebp),%eax
c02021ac: 39 c2 cmp %eax,%edx
c02021ae: 0f 4e c2 cmovle %edx,%eax
c02021b1: 66 89 45 b4 mov %ax,-0x4c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:141
c02021b5: 0f b7 45 b4 movzwl -0x4c(%ebp),%eax
c02021b9: 66 89 45 ee mov %ax,-0x12(%ebp)
c02021bd: c7 45 e8 e7 ff ff ff movl $0xffffffe7,-0x18(%ebp)
c02021c4: 0f bf 55 ee movswl -0x12(%ebp),%edx
c02021c8: 8b 45 e8 mov -0x18(%ebp),%eax
c02021cb: 39 c2 cmp %eax,%edx
c02021cd: 0f 4d c2 cmovge %edx,%eax
c02021d0: 66 89 45 b4 mov %ax,-0x4c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:143
c02021d4: 66 83 7d b4 00 cmpw $0x0,-0x4c(%ebp)
c02021d9: 7e 7c jle c0202257 <scroll+0xce>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:144
c02021db: c7 45 cc 00 00 00 00 movl $0x0,-0x34(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:145
c02021e2: 81 45 cc 00 80 0b 0c addl $0xc0b8000,-0x34(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:146
c02021e9: 0f b7 45 b4 movzwl -0x4c(%ebp),%eax
c02021ed: 0f b7 d0 movzwl %ax,%edx
c02021f0: 89 d0 mov %edx,%eax
c02021f2: c1 e0 02 shl $0x2,%eax
c02021f5: 01 d0 add %edx,%eax
c02021f7: c1 e0 05 shl $0x5,%eax
c02021fa: 89 45 c8 mov %eax,-0x38(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:147
c02021fd: 81 45 c8 00 80 0b 0c addl $0xc0b8000,-0x38(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:148
c0202204: 0f bf 55 b4 movswl -0x4c(%ebp),%edx
c0202208: 89 d0 mov %edx,%eax
c020220a: c1 e0 02 shl $0x2,%eax
c020220d: 01 d0 add %edx,%eax
c020220f: c1 e0 05 shl $0x5,%eax
c0202212: 89 45 c4 mov %eax,-0x3c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:149
c0202215: b8 a0 0f 00 00 mov $0xfa0,%eax
c020221a: 2b 45 c4 sub -0x3c(%ebp),%eax
c020221d: 89 45 c0 mov %eax,-0x40(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:151
c0202220: 83 ec 04 sub $0x4,%esp
c0202223: ff 75 c0 push -0x40(%ebp)
c0202226: ff 75 c8 push -0x38(%ebp)
c0202229: ff 75 cc push -0x34(%ebp)
c020222c: e8 14 10 00 00 call c0203245 <memcpy>
c0202231: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:153
c0202234: 8b 55 cc mov -0x34(%ebp),%edx
c0202237: 8b 45 c0 mov -0x40(%ebp),%eax
c020223a: 01 d0 add %edx,%eax
c020223c: 89 45 bc mov %eax,-0x44(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:154
c020223f: 83 ec 04 sub $0x4,%esp
c0202242: ff 75 c4 push -0x3c(%ebp)
c0202245: 6a 00 push $0x0
c0202247: ff 75 bc push -0x44(%ebp)
c020224a: e8 c5 0f 00 00 call c0203214 <memset>
c020224f: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:169
c0202252: e9 83 00 00 00 jmp c02022da <scroll+0x151>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:155
c0202257: 66 83 7d b4 00 cmpw $0x0,-0x4c(%ebp)
c020225c: 79 7c jns c02022da <scroll+0x151>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:156
c020225e: 0f b7 45 b4 movzwl -0x4c(%ebp),%eax
c0202262: f7 d8 neg %eax
c0202264: 66 89 45 e6 mov %ax,-0x1a(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:157
c0202268: 0f b7 45 e6 movzwl -0x1a(%ebp),%eax
c020226c: 0f b7 d0 movzwl %ax,%edx
c020226f: 89 d0 mov %edx,%eax
c0202271: c1 e0 02 shl $0x2,%eax
c0202274: 01 d0 add %edx,%eax
c0202276: c1 e0 05 shl $0x5,%eax
c0202279: 89 45 e0 mov %eax,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:158
c020227c: 81 45 e0 00 80 0b 0c addl $0xc0b8000,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:159
c0202283: c7 45 dc 00 00 00 00 movl $0x0,-0x24(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:160
c020228a: 81 45 dc 00 80 0b 0c addl $0xc0b8000,-0x24(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:161
c0202291: 0f bf 55 e6 movswl -0x1a(%ebp),%edx
c0202295: 89 d0 mov %edx,%eax
c0202297: c1 e0 02 shl $0x2,%eax
c020229a: 01 d0 add %edx,%eax
c020229c: c1 e0 05 shl $0x5,%eax
c020229f: 89 45 d8 mov %eax,-0x28(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:162
c02022a2: b8 a0 0f 00 00 mov $0xfa0,%eax
c02022a7: 2b 45 d8 sub -0x28(%ebp),%eax
c02022aa: 89 45 d4 mov %eax,-0x2c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:164
c02022ad: 83 ec 04 sub $0x4,%esp
c02022b0: ff 75 d4 push -0x2c(%ebp)
c02022b3: ff 75 dc push -0x24(%ebp)
c02022b6: ff 75 e0 push -0x20(%ebp)
c02022b9: e8 87 0f 00 00 call c0203245 <memcpy>
c02022be: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:166
c02022c1: 8b 45 dc mov -0x24(%ebp),%eax
c02022c4: 89 45 d0 mov %eax,-0x30(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:167
c02022c7: 83 ec 04 sub $0x4,%esp
c02022ca: ff 75 d8 push -0x28(%ebp)
c02022cd: 6a 00 push $0x0
c02022cf: ff 75 d0 push -0x30(%ebp)
c02022d2: e8 3d 0f 00 00 call c0203214 <memset>
c02022d7: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:169
c02022da: 90 nop
c02022db: c9 leave
c02022dc: c3 ret
c02022dd <param12vga_color>:
param12vga_color():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:173
c02022dd: 55 push %ebp
c02022de: 89 e5 mov %esp,%ebp
c02022e0: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:174
c02022e3: 8b 45 08 mov 0x8(%ebp),%eax
c02022e6: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02022ea: 83 e0 01 and $0x1,%eax
c02022ed: 88 45 ff mov %al,-0x1(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:175
c02022f0: 8b 45 08 mov 0x8(%ebp),%eax
c02022f3: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02022f7: 83 e0 06 and $0x6,%eax
c02022fa: 89 c2 mov %eax,%edx
c02022fc: 8b 45 08 mov 0x8(%ebp),%eax
c02022ff: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:176
c0202303: 8b 45 08 mov 0x8(%ebp),%eax
c0202306: 0f b7 50 14 movzwl 0x14(%eax),%edx
c020230a: 8b 45 08 mov 0x8(%ebp),%eax
c020230d: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202311: 66 c1 f8 02 sar $0x2,%ax
c0202315: 09 c2 or %eax,%edx
c0202317: 8b 45 08 mov 0x8(%ebp),%eax
c020231a: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:177
c020231e: 8b 45 08 mov 0x8(%ebp),%eax
c0202321: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202325: 83 e0 03 and $0x3,%eax
c0202328: 89 c2 mov %eax,%edx
c020232a: 8b 45 08 mov 0x8(%ebp),%eax
c020232d: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:178
c0202331: 8b 45 08 mov 0x8(%ebp),%eax
c0202334: 0f b7 50 14 movzwl 0x14(%eax),%edx
c0202338: 0f b6 45 ff movzbl -0x1(%ebp),%eax
c020233c: c1 e0 02 shl $0x2,%eax
c020233f: 09 c2 or %eax,%edx
c0202341: 8b 45 08 mov 0x8(%ebp),%eax
c0202344: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:179
c0202348: 90 nop
c0202349: c9 leave
c020234a: c3 ret
c020234b <set_color>:
set_color():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:183
c020234b: 55 push %ebp
c020234c: 89 e5 mov %esp,%ebp
c020234e: 83 ec 08 sub $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:184
c0202351: 8b 45 08 mov 0x8(%ebp),%eax
c0202354: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202358: 66 85 c0 test %ax,%ax
c020235b: 75 0e jne c020236b <set_color+0x20>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:185
c020235d: 8b 45 08 mov 0x8(%ebp),%eax
c0202360: 66 c7 40 04 00 0f movw $0xf00,0x4(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:211
c0202366: e9 1e 02 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:186
c020236b: 8b 45 08 mov 0x8(%ebp),%eax
c020236e: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202372: 66 83 f8 01 cmp $0x1,%ax
c0202376: 75 19 jne c0202391 <set_color+0x46>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:187
c0202378: 8b 45 08 mov 0x8(%ebp),%eax
c020237b: 0f b7 40 04 movzwl 0x4(%eax),%eax
c020237f: 66 0d 00 88 or $0x8800,%ax
c0202383: 89 c2 mov %eax,%edx
c0202385: 8b 45 08 mov 0x8(%ebp),%eax
c0202388: 66 89 50 04 mov %dx,0x4(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:211
c020238c: e9 f8 01 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:188
c0202391: 8b 45 08 mov 0x8(%ebp),%eax
c0202394: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202398: 66 83 f8 02 cmp $0x2,%ax
c020239c: 75 19 jne c02023b7 <set_color+0x6c>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:189
c020239e: 8b 45 08 mov 0x8(%ebp),%eax
c02023a1: 0f b7 40 04 movzwl 0x4(%eax),%eax
c02023a5: 66 25 00 77 and $0x7700,%ax
c02023a9: 89 c2 mov %eax,%edx
c02023ab: 8b 45 08 mov 0x8(%ebp),%eax
c02023ae: 66 89 50 04 mov %dx,0x4(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:211
c02023b2: e9 d2 01 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:190
c02023b7: 8b 45 08 mov 0x8(%ebp),%eax
c02023ba: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02023be: 66 83 f8 1d cmp $0x1d,%ax
c02023c2: 7e 58 jle c020241c <set_color+0xd1>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:190 (discriminator 1)
c02023c4: 8b 45 08 mov 0x8(%ebp),%eax
c02023c7: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02023cb: 66 83 f8 25 cmp $0x25,%ax
c02023cf: 7f 4b jg c020241c <set_color+0xd1>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:191
c02023d1: 8b 45 08 mov 0x8(%ebp),%eax
c02023d4: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02023d8: 83 e8 1e sub $0x1e,%eax
c02023db: 89 c2 mov %eax,%edx
c02023dd: 8b 45 08 mov 0x8(%ebp),%eax
c02023e0: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:192
c02023e4: ff 75 08 push 0x8(%ebp)
c02023e7: e8 f1 fe ff ff call c02022dd <param12vga_color>
c02023ec: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:193
c02023ef: 8b 45 08 mov 0x8(%ebp),%eax
c02023f2: 0f b7 40 04 movzwl 0x4(%eax),%eax
c02023f6: 80 e4 f8 and $0xf8,%ah
c02023f9: 89 c2 mov %eax,%edx
c02023fb: 8b 45 08 mov 0x8(%ebp),%eax
c02023fe: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202402: 0f b7 c0 movzwl %ax,%eax
c0202405: c1 e0 08 shl $0x8,%eax
c0202408: 66 25 00 0f and $0xf00,%ax
c020240c: 09 d0 or %edx,%eax
c020240e: 89 c2 mov %eax,%edx
c0202410: 8b 45 08 mov 0x8(%ebp),%eax
c0202413: 66 89 50 04 mov %dx,0x4(%eax)
c0202417: e9 6d 01 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:194
c020241c: 8b 45 08 mov 0x8(%ebp),%eax
c020241f: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202423: 66 83 f8 27 cmp $0x27,%ax
c0202427: 7e 54 jle c020247d <set_color+0x132>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:194 (discriminator 1)
c0202429: 8b 45 08 mov 0x8(%ebp),%eax
c020242c: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202430: 66 83 f8 2f cmp $0x2f,%ax
c0202434: 7f 47 jg c020247d <set_color+0x132>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:195
c0202436: 8b 45 08 mov 0x8(%ebp),%eax
c0202439: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020243d: 83 e8 28 sub $0x28,%eax
c0202440: 89 c2 mov %eax,%edx
c0202442: 8b 45 08 mov 0x8(%ebp),%eax
c0202445: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:196
c0202449: ff 75 08 push 0x8(%ebp)
c020244c: e8 8c fe ff ff call c02022dd <param12vga_color>
c0202451: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:197
c0202454: 8b 45 08 mov 0x8(%ebp),%eax
c0202457: 0f b7 40 04 movzwl 0x4(%eax),%eax
c020245b: 80 e4 8f and $0x8f,%ah
c020245e: 89 c2 mov %eax,%edx
c0202460: 8b 45 08 mov 0x8(%ebp),%eax
c0202463: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202467: 0f b7 c0 movzwl %ax,%eax
c020246a: c1 e0 0c shl $0xc,%eax
c020246d: 09 d0 or %edx,%eax
c020246f: 89 c2 mov %eax,%edx
c0202471: 8b 45 08 mov 0x8(%ebp),%eax
c0202474: 66 89 50 04 mov %dx,0x4(%eax)
c0202478: e9 0c 01 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:198
c020247d: 8b 45 08 mov 0x8(%ebp),%eax
c0202480: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202484: 66 83 f8 59 cmp $0x59,%ax
c0202488: 7e 6b jle c02024f5 <set_color+0x1aa>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:198 (discriminator 1)
c020248a: 8b 45 08 mov 0x8(%ebp),%eax
c020248d: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202491: 66 83 f8 61 cmp $0x61,%ax
c0202495: 7f 5e jg c02024f5 <set_color+0x1aa>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:199
c0202497: 8b 45 08 mov 0x8(%ebp),%eax
c020249a: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020249e: 83 e8 5a sub $0x5a,%eax
c02024a1: 89 c2 mov %eax,%edx
c02024a3: 8b 45 08 mov 0x8(%ebp),%eax
c02024a6: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:200
c02024aa: ff 75 08 push 0x8(%ebp)
c02024ad: e8 2b fe ff ff call c02022dd <param12vga_color>
c02024b2: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:201
c02024b5: 8b 45 08 mov 0x8(%ebp),%eax
c02024b8: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02024bc: 83 c8 08 or $0x8,%eax
c02024bf: 89 c2 mov %eax,%edx
c02024c1: 8b 45 08 mov 0x8(%ebp),%eax
c02024c4: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:202
c02024c8: 8b 45 08 mov 0x8(%ebp),%eax
c02024cb: 0f b7 40 04 movzwl 0x4(%eax),%eax
c02024cf: 80 e4 f0 and $0xf0,%ah
c02024d2: 89 c2 mov %eax,%edx
c02024d4: 8b 45 08 mov 0x8(%ebp),%eax
c02024d7: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02024db: 0f b7 c0 movzwl %ax,%eax
c02024de: c1 e0 08 shl $0x8,%eax
c02024e1: 66 25 00 0f and $0xf00,%ax
c02024e5: 09 d0 or %edx,%eax
c02024e7: 89 c2 mov %eax,%edx
c02024e9: 8b 45 08 mov 0x8(%ebp),%eax
c02024ec: 66 89 50 04 mov %dx,0x4(%eax)
c02024f0: e9 94 00 00 00 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:203
c02024f5: 8b 45 08 mov 0x8(%ebp),%eax
c02024f8: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02024fc: 66 83 f8 63 cmp $0x63,%ax
c0202500: 7e 65 jle c0202567 <set_color+0x21c>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:203 (discriminator 1)
c0202502: 8b 45 08 mov 0x8(%ebp),%eax
c0202505: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202509: 66 83 f8 6b cmp $0x6b,%ax
c020250d: 7f 58 jg c0202567 <set_color+0x21c>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:204
c020250f: 8b 45 08 mov 0x8(%ebp),%eax
c0202512: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202516: 83 e8 64 sub $0x64,%eax
c0202519: 89 c2 mov %eax,%edx
c020251b: 8b 45 08 mov 0x8(%ebp),%eax
c020251e: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:205
c0202522: ff 75 08 push 0x8(%ebp)
c0202525: e8 b3 fd ff ff call c02022dd <param12vga_color>
c020252a: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:206
c020252d: 8b 45 08 mov 0x8(%ebp),%eax
c0202530: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202534: 83 c8 08 or $0x8,%eax
c0202537: 89 c2 mov %eax,%edx
c0202539: 8b 45 08 mov 0x8(%ebp),%eax
c020253c: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:207
c0202540: 8b 45 08 mov 0x8(%ebp),%eax
c0202543: 0f b7 40 04 movzwl 0x4(%eax),%eax
c0202547: 66 25 ff 0f and $0xfff,%ax
c020254b: 89 c2 mov %eax,%edx
c020254d: 8b 45 08 mov 0x8(%ebp),%eax
c0202550: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202554: 0f b7 c0 movzwl %ax,%eax
c0202557: c1 e0 0c shl $0xc,%eax
c020255a: 09 d0 or %edx,%eax
c020255c: 89 c2 mov %eax,%edx
c020255e: 8b 45 08 mov 0x8(%ebp),%eax
c0202561: 66 89 50 04 mov %dx,0x4(%eax)
c0202565: eb 22 jmp c0202589 <set_color+0x23e>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:209
c0202567: 8b 45 08 mov 0x8(%ebp),%eax
c020256a: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020256e: 98 cwtl
c020256f: 50 push %eax
c0202570: 68 14 48 20 c0 push $0xc0204814
c0202575: 68 d1 00 00 00 push $0xd1
c020257a: 68 27 48 20 c0 push $0xc0204827
c020257f: e8 7e ec ff ff call c0201202 <_warn>
c0202584: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:211
c0202587: eb 00 jmp c0202589 <set_color+0x23e>
c0202589: 90 nop
c020258a: c9 leave
c020258b: c3 ret
c020258c <CSI_handler>:
CSI_handler():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:215
c020258c: 55 push %ebp
c020258d: 89 e5 mov %esp,%ebp
c020258f: 53 push %ebx
c0202590: 83 ec 14 sub $0x14,%esp
c0202593: 8b 45 08 mov 0x8(%ebp),%eax
c0202596: 88 45 f4 mov %al,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:216
c0202599: 8b 45 0c mov 0xc(%ebp),%eax
c020259c: c7 40 10 00 00 00 00 movl $0x0,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:218
c02025a3: 0f b6 45 f4 movzbl -0xc(%ebp),%eax
c02025a7: 83 e8 41 sub $0x41,%eax
c02025aa: 83 f8 2c cmp $0x2c,%eax
c02025ad: 0f 87 47 02 00 00 ja c02027fa <CSI_handler+0x26e>
c02025b3: 8b 04 85 50 48 20 c0 mov -0x3fdfb7b0(,%eax,4),%eax
c02025ba: ff e0 jmp *%eax
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:220
c02025bc: 8b 45 0c mov 0xc(%ebp),%eax
c02025bf: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02025c3: 66 85 c0 test %ax,%ax
c02025c6: 75 09 jne c02025d1 <CSI_handler+0x45>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:221
c02025c8: 8b 45 0c mov 0xc(%ebp),%eax
c02025cb: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:222
c02025d1: 8b 45 0c mov 0xc(%ebp),%eax
c02025d4: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02025d8: f7 d8 neg %eax
c02025da: 98 cwtl
c02025db: ff 75 0c push 0xc(%ebp)
c02025de: 6a 00 push $0x0
c02025e0: 50 push %eax
c02025e1: e8 28 f8 ff ff call c0201e0e <cursor_move>
c02025e6: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:223
c02025e9: e9 29 02 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:225
c02025ee: 8b 45 0c mov 0xc(%ebp),%eax
c02025f1: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02025f5: 66 85 c0 test %ax,%ax
c02025f8: 75 09 jne c0202603 <CSI_handler+0x77>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:226
c02025fa: 8b 45 0c mov 0xc(%ebp),%eax
c02025fd: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:227
c0202603: 8b 45 0c mov 0xc(%ebp),%eax
c0202606: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020260a: 98 cwtl
c020260b: ff 75 0c push 0xc(%ebp)
c020260e: 6a 00 push $0x0
c0202610: 50 push %eax
c0202611: e8 f8 f7 ff ff call c0201e0e <cursor_move>
c0202616: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:228
c0202619: e9 f9 01 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:230
c020261e: 8b 45 0c mov 0xc(%ebp),%eax
c0202621: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202625: 66 85 c0 test %ax,%ax
c0202628: 75 09 jne c0202633 <CSI_handler+0xa7>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:231
c020262a: 8b 45 0c mov 0xc(%ebp),%eax
c020262d: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:232
c0202633: 8b 45 0c mov 0xc(%ebp),%eax
c0202636: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020263a: 98 cwtl
c020263b: ff 75 0c push 0xc(%ebp)
c020263e: 50 push %eax
c020263f: 6a 00 push $0x0
c0202641: e8 c8 f7 ff ff call c0201e0e <cursor_move>
c0202646: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:233
c0202649: e9 c9 01 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:235
c020264e: 8b 45 0c mov 0xc(%ebp),%eax
c0202651: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202655: 66 85 c0 test %ax,%ax
c0202658: 75 09 jne c0202663 <CSI_handler+0xd7>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:236
c020265a: 8b 45 0c mov 0xc(%ebp),%eax
c020265d: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:237
c0202663: 8b 45 0c mov 0xc(%ebp),%eax
c0202666: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020266a: f7 d8 neg %eax
c020266c: 98 cwtl
c020266d: ff 75 0c push 0xc(%ebp)
c0202670: 50 push %eax
c0202671: 6a 00 push $0x0
c0202673: e8 96 f7 ff ff call c0201e0e <cursor_move>
c0202678: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:238
c020267b: e9 97 01 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:240
c0202680: 8b 45 0c mov 0xc(%ebp),%eax
c0202683: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202687: 66 85 c0 test %ax,%ax
c020268a: 75 09 jne c0202695 <CSI_handler+0x109>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:241
c020268c: 8b 45 0c mov 0xc(%ebp),%eax
c020268f: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:242
c0202695: 8b 45 0c mov 0xc(%ebp),%eax
c0202698: 0f b7 40 08 movzwl 0x8(%eax),%eax
c020269c: 89 c2 mov %eax,%edx
c020269e: b8 01 00 00 00 mov $0x1,%eax
c02026a3: 29 d0 sub %edx,%eax
c02026a5: 0f bf d0 movswl %ax,%edx
c02026a8: 8b 45 0c mov 0xc(%ebp),%eax
c02026ab: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02026af: 98 cwtl
c02026b0: ff 75 0c push 0xc(%ebp)
c02026b3: 52 push %edx
c02026b4: 50 push %eax
c02026b5: e8 54 f7 ff ff call c0201e0e <cursor_move>
c02026ba: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:243
c02026bd: e9 55 01 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:245
c02026c2: 8b 45 0c mov 0xc(%ebp),%eax
c02026c5: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02026c9: 66 85 c0 test %ax,%ax
c02026cc: 75 09 jne c02026d7 <CSI_handler+0x14b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:246
c02026ce: 8b 45 0c mov 0xc(%ebp),%eax
c02026d1: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:247
c02026d7: 8b 45 0c mov 0xc(%ebp),%eax
c02026da: 0f b7 40 08 movzwl 0x8(%eax),%eax
c02026de: 89 c2 mov %eax,%edx
c02026e0: b8 01 00 00 00 mov $0x1,%eax
c02026e5: 29 d0 sub %edx,%eax
c02026e7: 0f bf d0 movswl %ax,%edx
c02026ea: 8b 45 0c mov 0xc(%ebp),%eax
c02026ed: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02026f1: f7 d8 neg %eax
c02026f3: 98 cwtl
c02026f4: ff 75 0c push 0xc(%ebp)
c02026f7: 52 push %edx
c02026f8: 50 push %eax
c02026f9: e8 10 f7 ff ff call c0201e0e <cursor_move>
c02026fe: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:248
c0202701: e9 11 01 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:250
c0202706: 8b 45 0c mov 0xc(%ebp),%eax
c0202709: 0f b7 40 14 movzwl 0x14(%eax),%eax
c020270d: 66 85 c0 test %ax,%ax
c0202710: 75 09 jne c020271b <CSI_handler+0x18f>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:251
c0202712: 8b 45 0c mov 0xc(%ebp),%eax
c0202715: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:252
c020271b: 8b 45 0c mov 0xc(%ebp),%eax
c020271e: 0f b7 40 16 movzwl 0x16(%eax),%eax
c0202722: 66 85 c0 test %ax,%ax
c0202725: 75 09 jne c0202730 <CSI_handler+0x1a4>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:253
c0202727: 8b 45 0c mov 0xc(%ebp),%eax
c020272a: 66 c7 40 16 01 00 movw $0x1,0x16(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:255
c0202730: 8b 45 0c mov 0xc(%ebp),%eax
c0202733: 0f b7 40 16 movzwl 0x16(%eax),%eax
c0202737: 89 c2 mov %eax,%edx
c0202739: 8b 45 0c mov 0xc(%ebp),%eax
c020273c: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0202740: 89 c1 mov %eax,%ecx
c0202742: 89 d0 mov %edx,%eax
c0202744: 29 c8 sub %ecx,%eax
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:254
c0202746: 0f bf d0 movswl %ax,%edx
c0202749: 8b 45 0c mov 0xc(%ebp),%eax
c020274c: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202750: 89 c1 mov %eax,%ecx
c0202752: 8b 45 0c mov 0xc(%ebp),%eax
c0202755: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0202759: 89 c3 mov %eax,%ebx
c020275b: 89 c8 mov %ecx,%eax
c020275d: 29 d8 sub %ebx,%eax
c020275f: 98 cwtl
c0202760: ff 75 0c push 0xc(%ebp)
c0202763: 52 push %edx
c0202764: 50 push %eax
c0202765: e8 a4 f6 ff ff call c0201e0e <cursor_move>
c020276a: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:256
c020276d: e9 a5 00 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:258
c0202772: ff 75 0c push 0xc(%ebp)
c0202775: e8 d3 f7 ff ff call c0201f4d <clear_screen>
c020277a: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:259
c020277d: e9 95 00 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:261
c0202782: ff 75 0c push 0xc(%ebp)
c0202785: e8 a6 f8 ff ff call c0202030 <clear_line>
c020278a: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:262
c020278d: e9 85 00 00 00 jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:264
c0202792: 8b 45 0c mov 0xc(%ebp),%eax
c0202795: 0f b7 40 14 movzwl 0x14(%eax),%eax
c0202799: 66 85 c0 test %ax,%ax
c020279c: 75 09 jne c02027a7 <CSI_handler+0x21b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:265
c020279e: 8b 45 0c mov 0xc(%ebp),%eax
c02027a1: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:266
c02027a7: 8b 45 0c mov 0xc(%ebp),%eax
c02027aa: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02027ae: 98 cwtl
c02027af: 83 ec 0c sub $0xc,%esp
c02027b2: 50 push %eax
c02027b3: e8 d1 f9 ff ff call c0202189 <scroll>
c02027b8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:267
c02027bb: eb 5a jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:269
c02027bd: 8b 45 0c mov 0xc(%ebp),%eax
c02027c0: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02027c4: 66 85 c0 test %ax,%ax
c02027c7: 75 09 jne c02027d2 <CSI_handler+0x246>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:270
c02027c9: 8b 45 0c mov 0xc(%ebp),%eax
c02027cc: 66 c7 40 14 01 00 movw $0x1,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:271
c02027d2: 8b 45 0c mov 0xc(%ebp),%eax
c02027d5: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02027d9: f7 d8 neg %eax
c02027db: 98 cwtl
c02027dc: 83 ec 0c sub $0xc,%esp
c02027df: 50 push %eax
c02027e0: e8 a4 f9 ff ff call c0202189 <scroll>
c02027e5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:272
c02027e8: eb 2d jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:274
c02027ea: 83 ec 0c sub $0xc,%esp
c02027ed: ff 75 0c push 0xc(%ebp)
c02027f0: e8 56 fb ff ff call c020234b <set_color>
c02027f5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:275
c02027f8: eb 1d jmp c0202817 <CSI_handler+0x28b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:277
c02027fa: 0f b6 45 f4 movzbl -0xc(%ebp),%eax
c02027fe: 50 push %eax
c02027ff: 68 3b 48 20 c0 push $0xc020483b
c0202804: 68 15 01 00 00 push $0x115
c0202809: 68 27 48 20 c0 push $0xc0204827
c020280e: e8 ef e9 ff ff call c0201202 <_warn>
c0202813: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:278
c0202816: 90 nop
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:280
c0202817: 90 nop
c0202818: 8b 5d fc mov -0x4(%ebp),%ebx
c020281b: c9 leave
c020281c: c3 ret
c020281d <kprintfputch>:
kprintfputch():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:284
c020281d: 55 push %ebp
c020281e: 89 e5 mov %esp,%ebp
c0202820: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:285
c0202823: 81 65 08 ff 00 00 00 andl $0xff,0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:286
c020282a: 8b 45 0c mov 0xc(%ebp),%eax
c020282d: 8b 40 0c mov 0xc(%eax),%eax
c0202830: 8d 50 01 lea 0x1(%eax),%edx
c0202833: 8b 45 0c mov 0xc(%ebp),%eax
c0202836: 89 50 0c mov %edx,0xc(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:289
c0202839: 8b 45 0c mov 0xc(%ebp),%eax
c020283c: 8b 40 10 mov 0x10(%eax),%eax
c020283f: 85 c0 test %eax,%eax
c0202841: 0f 85 1b 01 00 00 jne c0202962 <kprintfputch+0x145>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:290
c0202847: 83 7d 08 1b cmpl $0x1b,0x8(%ebp)
c020284b: 0f 84 a4 00 00 00 je c02028f5 <kprintfputch+0xd8>
c0202851: 83 7d 08 1b cmpl $0x1b,0x8(%ebp)
c0202855: 0f 8f ae 00 00 00 jg c0202909 <kprintfputch+0xec>
c020285b: 83 7d 08 0a cmpl $0xa,0x8(%ebp)
c020285f: 74 70 je c02028d1 <kprintfputch+0xb4>
c0202861: 83 7d 08 0a cmpl $0xa,0x8(%ebp)
c0202865: 0f 8f 9e 00 00 00 jg c0202909 <kprintfputch+0xec>
c020286b: 83 7d 08 08 cmpl $0x8,0x8(%ebp)
c020286f: 74 0b je c020287c <kprintfputch+0x5f>
c0202871: 83 7d 08 09 cmpl $0x9,0x8(%ebp)
c0202875: 74 15 je c020288c <kprintfputch+0x6f>
c0202877: e9 8d 00 00 00 jmp c0202909 <kprintfputch+0xec>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:292
c020287c: ff 75 0c push 0xc(%ebp)
c020287f: e8 27 f6 ff ff call c0201eab <cursor_move_pre>
c0202884: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:293
c0202887: e9 ec 01 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:295
c020288c: ff 75 0c push 0xc(%ebp)
c020288f: e8 54 f5 ff ff call c0201de8 <cursor_pos>
c0202894: 83 c4 04 add $0x4,%esp
c0202897: 66 3d cf 07 cmp $0x7cf,%ax
c020289b: 0f 84 d0 01 00 00 je c0202a71 <kprintfputch+0x254>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:297
c02028a1: eb 0b jmp c02028ae <kprintfputch+0x91>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:298
c02028a3: ff 75 0c push 0xc(%ebp)
c02028a6: e8 51 f6 ff ff call c0201efc <cursor_move_nxt>
c02028ab: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:297
c02028ae: 8b 45 0c mov 0xc(%ebp),%eax
c02028b1: 0f b7 40 08 movzwl 0x8(%eax),%eax
c02028b5: 89 c2 mov %eax,%edx
c02028b7: 66 c1 fa 0f sar $0xf,%dx
c02028bb: 66 c1 ea 0e shr $0xe,%dx
c02028bf: 01 d0 add %edx,%eax
c02028c1: 83 e0 03 and $0x3,%eax
c02028c4: 29 d0 sub %edx,%eax
c02028c6: 66 83 f8 01 cmp $0x1,%ax
c02028ca: 75 d7 jne c02028a3 <kprintfputch+0x86>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:299
c02028cc: e9 a7 01 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:301
c02028d1: 8b 45 0c mov 0xc(%ebp),%eax
c02028d4: 0f b7 40 08 movzwl 0x8(%eax),%eax
c02028d8: 89 c2 mov %eax,%edx
c02028da: b8 01 00 00 00 mov $0x1,%eax
c02028df: 29 d0 sub %edx,%eax
c02028e1: 98 cwtl
c02028e2: ff 75 0c push 0xc(%ebp)
c02028e5: 50 push %eax
c02028e6: 6a 01 push $0x1
c02028e8: e8 21 f5 ff ff call c0201e0e <cursor_move>
c02028ed: 83 c4 0c add $0xc,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:302
c02028f0: e9 83 01 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:304
c02028f5: 8b 45 0c mov 0xc(%ebp),%eax
c02028f8: 8b 40 10 mov 0x10(%eax),%eax
c02028fb: 8d 50 01 lea 0x1(%eax),%edx
c02028fe: 8b 45 0c mov 0xc(%ebp),%eax
c0202901: 89 50 10 mov %edx,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:305
c0202904: e9 6f 01 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:308
c0202909: 8b 45 0c mov 0xc(%ebp),%eax
c020290c: 0f b7 40 06 movzwl 0x6(%eax),%eax
c0202910: 89 c2 mov %eax,%edx
c0202912: 89 d0 mov %edx,%eax
c0202914: c1 e0 02 shl $0x2,%eax
c0202917: 01 d0 add %edx,%eax
c0202919: c1 e0 04 shl $0x4,%eax
c020291c: 89 c2 mov %eax,%edx
c020291e: 8b 45 0c mov 0xc(%ebp),%eax
c0202921: 0f b7 40 08 movzwl 0x8(%eax),%eax
c0202925: 01 d0 add %edx,%eax
c0202927: 83 e8 51 sub $0x51,%eax
c020292a: 66 89 45 f6 mov %ax,-0xa(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:309
c020292e: 8b 45 0c mov 0xc(%ebp),%eax
c0202931: 0f b7 40 04 movzwl 0x4(%eax),%eax
c0202935: 89 c2 mov %eax,%edx
c0202937: 8b 45 08 mov 0x8(%ebp),%eax
c020293a: 09 d0 or %edx,%eax
c020293c: 66 89 45 f4 mov %ax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:310
c0202940: 0f b7 55 f4 movzwl -0xc(%ebp),%edx
c0202944: 0f b7 45 f6 movzwl -0xa(%ebp),%eax
c0202948: 52 push %edx
c0202949: 50 push %eax
c020294a: e8 73 f4 ff ff call c0201dc2 <write_to_terminal>
c020294f: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:311
c0202952: ff 75 0c push 0xc(%ebp)
c0202955: e8 a2 f5 ff ff call c0201efc <cursor_move_nxt>
c020295a: 83 c4 04 add $0x4,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:312
c020295d: e9 16 01 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:315
c0202962: 8b 45 0c mov 0xc(%ebp),%eax
c0202965: 8b 40 10 mov 0x10(%eax),%eax
c0202968: 83 f8 01 cmp $0x1,%eax
c020296b: 75 40 jne c02029ad <kprintfputch+0x190>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:316
c020296d: 83 7d 08 5b cmpl $0x5b,0x8(%ebp)
c0202971: 75 2b jne c020299e <kprintfputch+0x181>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:318
c0202973: 8b 45 0c mov 0xc(%ebp),%eax
c0202976: 8b 40 10 mov 0x10(%eax),%eax
c0202979: 8d 50 01 lea 0x1(%eax),%edx
c020297c: 8b 45 0c mov 0xc(%ebp),%eax
c020297f: 89 50 10 mov %edx,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:319
c0202982: 8b 45 0c mov 0xc(%ebp),%eax
c0202985: 66 c7 40 16 00 00 movw $0x0,0x16(%eax)
c020298b: 8b 45 0c mov 0xc(%ebp),%eax
c020298e: 0f b7 50 16 movzwl 0x16(%eax),%edx
c0202992: 8b 45 0c mov 0xc(%ebp),%eax
c0202995: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:320
c0202999: e9 da 00 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:322
c020299e: 8b 45 0c mov 0xc(%ebp),%eax
c02029a1: c7 40 10 00 00 00 00 movl $0x0,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:323
c02029a8: e9 cb 00 00 00 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:326
c02029ad: 83 7d 08 39 cmpl $0x39,0x8(%ebp)
c02029b1: 7f 08 jg c02029bb <kprintfputch+0x19e>
c02029b3: 83 7d 08 30 cmpl $0x30,0x8(%ebp)
c02029b7: 7d 0a jge c02029c3 <kprintfputch+0x1a6>
c02029b9: eb 7d jmp c0202a38 <kprintfputch+0x21b>
c02029bb: 83 7d 08 3b cmpl $0x3b,0x8(%ebp)
c02029bf: 74 66 je c0202a27 <kprintfputch+0x20a>
c02029c1: eb 75 jmp c0202a38 <kprintfputch+0x21b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:337
c02029c3: 8b 45 0c mov 0xc(%ebp),%eax
c02029c6: 8b 40 10 mov 0x10(%eax),%eax
c02029c9: 83 f8 02 cmp $0x2,%eax
c02029cc: 75 27 jne c02029f5 <kprintfputch+0x1d8>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:338
c02029ce: 8b 45 0c mov 0xc(%ebp),%eax
c02029d1: 0f b7 40 14 movzwl 0x14(%eax),%eax
c02029d5: 89 c2 mov %eax,%edx
c02029d7: 89 d0 mov %edx,%eax
c02029d9: c1 e0 02 shl $0x2,%eax
c02029dc: 01 d0 add %edx,%eax
c02029de: 01 c0 add %eax,%eax
c02029e0: 89 c2 mov %eax,%edx
c02029e2: 8b 45 08 mov 0x8(%ebp),%eax
c02029e5: 01 d0 add %edx,%eax
c02029e7: 83 e8 30 sub $0x30,%eax
c02029ea: 89 c2 mov %eax,%edx
c02029ec: 8b 45 0c mov 0xc(%ebp),%eax
c02029ef: 66 89 50 14 mov %dx,0x14(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:343
c02029f3: eb 7f jmp c0202a74 <kprintfputch+0x257>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:339
c02029f5: 8b 45 0c mov 0xc(%ebp),%eax
c02029f8: 8b 40 10 mov 0x10(%eax),%eax
c02029fb: 83 f8 03 cmp $0x3,%eax
c02029fe: 75 74 jne c0202a74 <kprintfputch+0x257>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:340
c0202a00: 8b 45 0c mov 0xc(%ebp),%eax
c0202a03: 0f b7 40 16 movzwl 0x16(%eax),%eax
c0202a07: 89 c2 mov %eax,%edx
c0202a09: 89 d0 mov %edx,%eax
c0202a0b: c1 e0 02 shl $0x2,%eax
c0202a0e: 01 d0 add %edx,%eax
c0202a10: 01 c0 add %eax,%eax
c0202a12: 89 c2 mov %eax,%edx
c0202a14: 8b 45 08 mov 0x8(%ebp),%eax
c0202a17: 01 d0 add %edx,%eax
c0202a19: 83 e8 30 sub $0x30,%eax
c0202a1c: 89 c2 mov %eax,%edx
c0202a1e: 8b 45 0c mov 0xc(%ebp),%eax
c0202a21: 66 89 50 16 mov %dx,0x16(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:343
c0202a25: eb 4d jmp c0202a74 <kprintfputch+0x257>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:345
c0202a27: 8b 45 0c mov 0xc(%ebp),%eax
c0202a2a: 8b 40 10 mov 0x10(%eax),%eax
c0202a2d: 8d 50 01 lea 0x1(%eax),%edx
c0202a30: 8b 45 0c mov 0xc(%ebp),%eax
c0202a33: 89 50 10 mov %edx,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:346
c0202a36: eb 40 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:348
c0202a38: 83 7d 08 1f cmpl $0x1f,0x8(%ebp)
c0202a3c: 7e 06 jle c0202a44 <kprintfputch+0x227>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:348 (discriminator 1)
c0202a3e: 83 7d 08 7e cmpl $0x7e,0x8(%ebp)
c0202a42: 7e 0a jle c0202a4e <kprintfputch+0x231>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:349
c0202a44: 8b 45 0c mov 0xc(%ebp),%eax
c0202a47: c7 40 10 00 00 00 00 movl $0x0,0x10(%eax)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:350
c0202a4e: 83 7d 08 3f cmpl $0x3f,0x8(%ebp)
c0202a52: 7e 23 jle c0202a77 <kprintfputch+0x25a>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:350 (discriminator 1)
c0202a54: 83 7d 08 7e cmpl $0x7e,0x8(%ebp)
c0202a58: 7f 1d jg c0202a77 <kprintfputch+0x25a>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:351
c0202a5a: 8b 45 08 mov 0x8(%ebp),%eax
c0202a5d: 0f b6 c0 movzbl %al,%eax
c0202a60: 83 ec 08 sub $0x8,%esp
c0202a63: ff 75 0c push 0xc(%ebp)
c0202a66: 50 push %eax
c0202a67: e8 20 fb ff ff call c020258c <CSI_handler>
c0202a6c: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:352
c0202a6f: eb 06 jmp c0202a77 <kprintfputch+0x25a>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:296
c0202a71: 90 nop
c0202a72: eb 04 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:343
c0202a74: 90 nop
c0202a75: eb 01 jmp c0202a78 <kprintfputch+0x25b>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:352
c0202a77: 90 nop
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:355
c0202a78: 90 nop
c0202a79: c9 leave
c0202a7a: c3 ret
c0202a7b <vkprintf>:
vkprintf():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:359
c0202a7b: 55 push %ebp
c0202a7c: 89 e5 mov %esp,%ebp
c0202a7e: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:360
c0202a81: 90 nop
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:360 (discriminator 1)
c0202a82: 6a 01 push $0x1
c0202a84: 68 a0 79 20 c0 push $0xc02079a0
c0202a89: e8 1a f3 ff ff call c0201da8 <xchg>
c0202a8e: 83 c4 08 add $0x8,%esp
c0202a91: 83 f8 01 cmp $0x1,%eax
c0202a94: 74 ec je c0202a82 <vkprintf+0x7>
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:362
c0202a96: c7 05 ac 79 20 c0 00 movl $0x0,0xc02079ac
c0202a9d: 00 00 00
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:363
c0202aa0: ff 75 0c push 0xc(%ebp)
c0202aa3: ff 75 08 push 0x8(%ebp)
c0202aa6: 68 a0 79 20 c0 push $0xc02079a0
c0202aab: 68 1d 28 20 c0 push $0xc020281d
c0202ab0: e8 92 01 00 00 call c0202c47 <vprintfmt>
c0202ab5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:365
c0202ab8: a1 ac 79 20 c0 mov 0xc02079ac,%eax
c0202abd: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:366
c0202ac0: 83 ec 08 sub $0x8,%esp
c0202ac3: 6a 00 push $0x0
c0202ac5: 68 a0 79 20 c0 push $0xc02079a0
c0202aca: e8 d9 f2 ff ff call c0201da8 <xchg>
c0202acf: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:368
c0202ad2: 8b 45 f4 mov -0xc(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:369
c0202ad5: c9 leave
c0202ad6: c3 ret
c0202ad7 <kprintf>:
kprintf():
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:420
c0202ad7: 55 push %ebp
c0202ad8: 89 e5 mov %esp,%ebp
c0202ada: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:424
c0202add: 8d 45 0c lea 0xc(%ebp),%eax
c0202ae0: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:425
c0202ae3: 8b 45 f0 mov -0x10(%ebp),%eax
c0202ae6: 83 ec 08 sub $0x8,%esp
c0202ae9: 50 push %eax
c0202aea: ff 75 08 push 0x8(%ebp)
c0202aed: e8 89 ff ff ff call c0202a7b <vkprintf>
c0202af2: 83 c4 10 add $0x10,%esp
c0202af5: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:428
c0202af8: 8b 45 f4 mov -0xc(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/kern/terminal.c:429
c0202afb: c9 leave
c0202afc: c3 ret
c0202afd <printnum>:
printnum():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:19
c0202afd: 55 push %ebp
c0202afe: 89 e5 mov %esp,%ebp
c0202b00: 53 push %ebx
c0202b01: 83 ec 14 sub $0x14,%esp
c0202b04: 8b 45 10 mov 0x10(%ebp),%eax
c0202b07: 89 45 f0 mov %eax,-0x10(%ebp)
c0202b0a: 8b 45 14 mov 0x14(%ebp),%eax
c0202b0d: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:21
c0202b10: 8b 45 18 mov 0x18(%ebp),%eax
c0202b13: ba 00 00 00 00 mov $0x0,%edx
c0202b18: 8b 4d f4 mov -0xc(%ebp),%ecx
c0202b1b: 39 45 f0 cmp %eax,-0x10(%ebp)
c0202b1e: 19 d1 sbb %edx,%ecx
c0202b20: 72 4b jb c0202b6d <printnum+0x70>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:22
c0202b22: 8b 45 1c mov 0x1c(%ebp),%eax
c0202b25: 8d 58 ff lea -0x1(%eax),%ebx
c0202b28: 8b 45 18 mov 0x18(%ebp),%eax
c0202b2b: ba 00 00 00 00 mov $0x0,%edx
c0202b30: 52 push %edx
c0202b31: 50 push %eax
c0202b32: ff 75 f4 push -0xc(%ebp)
c0202b35: ff 75 f0 push -0x10(%ebp)
c0202b38: e8 93 07 00 00 call c02032d0 <__udivdi3>
c0202b3d: 83 c4 10 add $0x10,%esp
c0202b40: 83 ec 04 sub $0x4,%esp
c0202b43: ff 75 20 push 0x20(%ebp)
c0202b46: 53 push %ebx
c0202b47: ff 75 18 push 0x18(%ebp)
c0202b4a: 52 push %edx
c0202b4b: 50 push %eax
c0202b4c: ff 75 0c push 0xc(%ebp)
c0202b4f: ff 75 08 push 0x8(%ebp)
c0202b52: e8 a6 ff ff ff call c0202afd <printnum>
c0202b57: 83 c4 20 add $0x20,%esp
c0202b5a: eb 1b jmp c0202b77 <printnum+0x7a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:26
c0202b5c: 83 ec 08 sub $0x8,%esp
c0202b5f: ff 75 0c push 0xc(%ebp)
c0202b62: ff 75 20 push 0x20(%ebp)
c0202b65: 8b 45 08 mov 0x8(%ebp),%eax
c0202b68: ff d0 call *%eax
c0202b6a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:25
c0202b6d: 83 6d 1c 01 subl $0x1,0x1c(%ebp)
c0202b71: 83 7d 1c 00 cmpl $0x0,0x1c(%ebp)
c0202b75: 7f e5 jg c0202b5c <printnum+0x5f>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:30
c0202b77: 8b 4d 18 mov 0x18(%ebp),%ecx
c0202b7a: bb 00 00 00 00 mov $0x0,%ebx
c0202b7f: 8b 45 f0 mov -0x10(%ebp),%eax
c0202b82: 8b 55 f4 mov -0xc(%ebp),%edx
c0202b85: 53 push %ebx
c0202b86: 51 push %ecx
c0202b87: 52 push %edx
c0202b88: 50 push %eax
c0202b89: e8 62 08 00 00 call c02033f0 <__umoddi3>
c0202b8e: 83 c4 10 add $0x10,%esp
c0202b91: 05 04 49 20 c0 add $0xc0204904,%eax
c0202b96: 0f b6 00 movzbl (%eax),%eax
c0202b99: 0f be c0 movsbl %al,%eax
c0202b9c: 83 ec 08 sub $0x8,%esp
c0202b9f: ff 75 0c push 0xc(%ebp)
c0202ba2: 50 push %eax
c0202ba3: 8b 45 08 mov 0x8(%ebp),%eax
c0202ba6: ff d0 call *%eax
c0202ba8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:31
c0202bab: 90 nop
c0202bac: 8b 5d fc mov -0x4(%ebp),%ebx
c0202baf: c9 leave
c0202bb0: c3 ret
c0202bb1 <getuint>:
getuint():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:37
c0202bb1: 55 push %ebp
c0202bb2: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:38
c0202bb4: 83 7d 0c 01 cmpl $0x1,0xc(%ebp)
c0202bb8: 7e 14 jle c0202bce <getuint+0x1d>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:39
c0202bba: 8b 45 08 mov 0x8(%ebp),%eax
c0202bbd: 8b 00 mov (%eax),%eax
c0202bbf: 8d 48 08 lea 0x8(%eax),%ecx
c0202bc2: 8b 55 08 mov 0x8(%ebp),%edx
c0202bc5: 89 0a mov %ecx,(%edx)
c0202bc7: 8b 50 04 mov 0x4(%eax),%edx
c0202bca: 8b 00 mov (%eax),%eax
c0202bcc: eb 30 jmp c0202bfe <getuint+0x4d>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:40
c0202bce: 83 7d 0c 00 cmpl $0x0,0xc(%ebp)
c0202bd2: 74 16 je c0202bea <getuint+0x39>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:41
c0202bd4: 8b 45 08 mov 0x8(%ebp),%eax
c0202bd7: 8b 00 mov (%eax),%eax
c0202bd9: 8d 48 04 lea 0x4(%eax),%ecx
c0202bdc: 8b 55 08 mov 0x8(%ebp),%edx
c0202bdf: 89 0a mov %ecx,(%edx)
c0202be1: 8b 00 mov (%eax),%eax
c0202be3: ba 00 00 00 00 mov $0x0,%edx
c0202be8: eb 14 jmp c0202bfe <getuint+0x4d>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:43
c0202bea: 8b 45 08 mov 0x8(%ebp),%eax
c0202bed: 8b 00 mov (%eax),%eax
c0202bef: 8d 48 04 lea 0x4(%eax),%ecx
c0202bf2: 8b 55 08 mov 0x8(%ebp),%edx
c0202bf5: 89 0a mov %ecx,(%edx)
c0202bf7: 8b 00 mov (%eax),%eax
c0202bf9: ba 00 00 00 00 mov $0x0,%edx
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:44
c0202bfe: 5d pop %ebp
c0202bff: c3 ret
c0202c00 <getint>:
getint():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:50
c0202c00: 55 push %ebp
c0202c01: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:51
c0202c03: 83 7d 0c 01 cmpl $0x1,0xc(%ebp)
c0202c07: 7e 14 jle c0202c1d <getint+0x1d>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:52
c0202c09: 8b 45 08 mov 0x8(%ebp),%eax
c0202c0c: 8b 00 mov (%eax),%eax
c0202c0e: 8d 48 08 lea 0x8(%eax),%ecx
c0202c11: 8b 55 08 mov 0x8(%ebp),%edx
c0202c14: 89 0a mov %ecx,(%edx)
c0202c16: 8b 50 04 mov 0x4(%eax),%edx
c0202c19: 8b 00 mov (%eax),%eax
c0202c1b: eb 28 jmp c0202c45 <getint+0x45>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:53
c0202c1d: 83 7d 0c 00 cmpl $0x0,0xc(%ebp)
c0202c21: 74 12 je c0202c35 <getint+0x35>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:54
c0202c23: 8b 45 08 mov 0x8(%ebp),%eax
c0202c26: 8b 00 mov (%eax),%eax
c0202c28: 8d 48 04 lea 0x4(%eax),%ecx
c0202c2b: 8b 55 08 mov 0x8(%ebp),%edx
c0202c2e: 89 0a mov %ecx,(%edx)
c0202c30: 8b 00 mov (%eax),%eax
c0202c32: 99 cltd
c0202c33: eb 10 jmp c0202c45 <getint+0x45>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:56
c0202c35: 8b 45 08 mov 0x8(%ebp),%eax
c0202c38: 8b 00 mov (%eax),%eax
c0202c3a: 8d 48 04 lea 0x4(%eax),%ecx
c0202c3d: 8b 55 08 mov 0x8(%ebp),%edx
c0202c40: 89 0a mov %ecx,(%edx)
c0202c42: 8b 00 mov (%eax),%eax
c0202c44: 99 cltd
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:57
c0202c45: 5d pop %ebp
c0202c46: c3 ret
c0202c47 <vprintfmt>:
vprintfmt():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:64
c0202c47: 55 push %ebp
c0202c48: 89 e5 mov %esp,%ebp
c0202c4a: 56 push %esi
c0202c4b: 53 push %ebx
c0202c4c: 83 ec 20 sub $0x20,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:72
c0202c4f: eb 17 jmp c0202c68 <vprintfmt+0x21>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:73
c0202c51: 85 db test %ebx,%ebx
c0202c53: 0f 84 4d 03 00 00 je c0202fa6 <vprintfmt+0x35f>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:75
c0202c59: 83 ec 08 sub $0x8,%esp
c0202c5c: ff 75 0c push 0xc(%ebp)
c0202c5f: 53 push %ebx
c0202c60: 8b 45 08 mov 0x8(%ebp),%eax
c0202c63: ff d0 call *%eax
c0202c65: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:72
c0202c68: 8b 45 10 mov 0x10(%ebp),%eax
c0202c6b: 8d 50 01 lea 0x1(%eax),%edx
c0202c6e: 89 55 10 mov %edx,0x10(%ebp)
c0202c71: 0f b6 00 movzbl (%eax),%eax
c0202c74: 0f b6 d8 movzbl %al,%ebx
c0202c77: 83 fb 25 cmp $0x25,%ebx
c0202c7a: 75 d5 jne c0202c51 <vprintfmt+0xa>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:79
c0202c7c: c6 45 db 20 movb $0x20,-0x25(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:80
c0202c80: c7 45 e4 ff ff ff ff movl $0xffffffff,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:81
c0202c87: c7 45 e0 ff ff ff ff movl $0xffffffff,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:82
c0202c8e: c7 45 e8 00 00 00 00 movl $0x0,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:83
c0202c95: c7 45 dc 00 00 00 00 movl $0x0,-0x24(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:85
c0202c9c: 8b 45 10 mov 0x10(%ebp),%eax
c0202c9f: 8d 50 01 lea 0x1(%eax),%edx
c0202ca2: 89 55 10 mov %edx,0x10(%ebp)
c0202ca5: 0f b6 00 movzbl (%eax),%eax
c0202ca8: 0f b6 d8 movzbl %al,%ebx
c0202cab: 8d 43 dd lea -0x23(%ebx),%eax
c0202cae: 83 f8 55 cmp $0x55,%eax
c0202cb1: 0f 87 c2 02 00 00 ja c0202f79 <vprintfmt+0x332>
c0202cb7: 8b 04 85 1c 49 20 c0 mov -0x3fdfb6e4(,%eax,4),%eax
c0202cbe: ff e0 jmp *%eax
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:89
c0202cc0: c6 45 db 2d movb $0x2d,-0x25(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:90
c0202cc4: eb d6 jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:94
c0202cc6: c6 45 db 30 movb $0x30,-0x25(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:95
c0202cca: eb d0 jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:107
c0202ccc: c7 45 e0 00 00 00 00 movl $0x0,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:108
c0202cd3: 8b 55 e0 mov -0x20(%ebp),%edx
c0202cd6: 89 d0 mov %edx,%eax
c0202cd8: c1 e0 02 shl $0x2,%eax
c0202cdb: 01 d0 add %edx,%eax
c0202cdd: 01 c0 add %eax,%eax
c0202cdf: 01 d8 add %ebx,%eax
c0202ce1: 83 e8 30 sub $0x30,%eax
c0202ce4: 89 45 e0 mov %eax,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:109
c0202ce7: 8b 45 10 mov 0x10(%ebp),%eax
c0202cea: 0f b6 00 movzbl (%eax),%eax
c0202ced: 0f be d8 movsbl %al,%ebx
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:110
c0202cf0: 83 fb 2f cmp $0x2f,%ebx
c0202cf3: 7e 39 jle c0202d2e <vprintfmt+0xe7>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:110 (discriminator 1)
c0202cf5: 83 fb 39 cmp $0x39,%ebx
c0202cf8: 7f 34 jg c0202d2e <vprintfmt+0xe7>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:107
c0202cfa: 83 45 10 01 addl $0x1,0x10(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:108
c0202cfe: eb d3 jmp c0202cd3 <vprintfmt+0x8c>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:116
c0202d00: 8b 45 14 mov 0x14(%ebp),%eax
c0202d03: 8d 50 04 lea 0x4(%eax),%edx
c0202d06: 89 55 14 mov %edx,0x14(%ebp)
c0202d09: 8b 00 mov (%eax),%eax
c0202d0b: 89 45 e0 mov %eax,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:117
c0202d0e: eb 1f jmp c0202d2f <vprintfmt+0xe8>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:120
c0202d10: 83 7d e4 00 cmpl $0x0,-0x1c(%ebp)
c0202d14: 79 86 jns c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:121
c0202d16: c7 45 e4 00 00 00 00 movl $0x0,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:122
c0202d1d: e9 7a ff ff ff jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:125
c0202d22: c7 45 dc 01 00 00 00 movl $0x1,-0x24(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:126
c0202d29: e9 6e ff ff ff jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:113
c0202d2e: 90 nop
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:129
c0202d2f: 83 7d e4 00 cmpl $0x0,-0x1c(%ebp)
c0202d33: 0f 89 63 ff ff ff jns c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:130
c0202d39: 8b 45 e0 mov -0x20(%ebp),%eax
c0202d3c: 89 45 e4 mov %eax,-0x1c(%ebp)
c0202d3f: c7 45 e0 ff ff ff ff movl $0xffffffff,-0x20(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:131
c0202d46: e9 51 ff ff ff jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:135
c0202d4b: 83 45 e8 01 addl $0x1,-0x18(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:136
c0202d4f: e9 48 ff ff ff jmp c0202c9c <vprintfmt+0x55>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:140
c0202d54: 8b 45 14 mov 0x14(%ebp),%eax
c0202d57: 8d 50 04 lea 0x4(%eax),%edx
c0202d5a: 89 55 14 mov %edx,0x14(%ebp)
c0202d5d: 8b 00 mov (%eax),%eax
c0202d5f: 83 ec 08 sub $0x8,%esp
c0202d62: ff 75 0c push 0xc(%ebp)
c0202d65: 50 push %eax
c0202d66: 8b 45 08 mov 0x8(%ebp),%eax
c0202d69: ff d0 call *%eax
c0202d6b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:141
c0202d6e: e9 2e 02 00 00 jmp c0202fa1 <vprintfmt+0x35a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:145
c0202d73: 8b 45 14 mov 0x14(%ebp),%eax
c0202d76: 8d 50 04 lea 0x4(%eax),%edx
c0202d79: 89 55 14 mov %edx,0x14(%ebp)
c0202d7c: 8b 30 mov (%eax),%esi
c0202d7e: 85 f6 test %esi,%esi
c0202d80: 75 05 jne c0202d87 <vprintfmt+0x140>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:146
c0202d82: be 15 49 20 c0 mov $0xc0204915,%esi
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:147
c0202d87: 83 7d e4 00 cmpl $0x0,-0x1c(%ebp)
c0202d8b: 7e 6f jle c0202dfc <vprintfmt+0x1b5>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:147 (discriminator 1)
c0202d8d: 80 7d db 2d cmpb $0x2d,-0x25(%ebp)
c0202d91: 74 69 je c0202dfc <vprintfmt+0x1b5>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:148
c0202d93: 8b 45 e0 mov -0x20(%ebp),%eax
c0202d96: 83 ec 08 sub $0x8,%esp
c0202d99: 50 push %eax
c0202d9a: 56 push %esi
c0202d9b: e8 0d 03 00 00 call c02030ad <strnlen>
c0202da0: 83 c4 10 add $0x10,%esp
c0202da3: 29 45 e4 sub %eax,-0x1c(%ebp)
c0202da6: eb 17 jmp c0202dbf <vprintfmt+0x178>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:149 (discriminator 3)
c0202da8: 0f be 45 db movsbl -0x25(%ebp),%eax
c0202dac: 83 ec 08 sub $0x8,%esp
c0202daf: ff 75 0c push 0xc(%ebp)
c0202db2: 50 push %eax
c0202db3: 8b 45 08 mov 0x8(%ebp),%eax
c0202db6: ff d0 call *%eax
c0202db8: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:148 (discriminator 3)
c0202dbb: 83 6d e4 01 subl $0x1,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:148 (discriminator 1)
c0202dbf: 83 7d e4 00 cmpl $0x0,-0x1c(%ebp)
c0202dc3: 7f e3 jg c0202da8 <vprintfmt+0x161>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:150
c0202dc5: eb 35 jmp c0202dfc <vprintfmt+0x1b5>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:151
c0202dc7: 83 7d dc 00 cmpl $0x0,-0x24(%ebp)
c0202dcb: 74 1c je c0202de9 <vprintfmt+0x1a2>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:151 (discriminator 1)
c0202dcd: 83 fb 1f cmp $0x1f,%ebx
c0202dd0: 7e 05 jle c0202dd7 <vprintfmt+0x190>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:151 (discriminator 2)
c0202dd2: 83 fb 7e cmp $0x7e,%ebx
c0202dd5: 7e 12 jle c0202de9 <vprintfmt+0x1a2>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:152
c0202dd7: 83 ec 08 sub $0x8,%esp
c0202dda: ff 75 0c push 0xc(%ebp)
c0202ddd: 6a 3f push $0x3f
c0202ddf: 8b 45 08 mov 0x8(%ebp),%eax
c0202de2: ff d0 call *%eax
c0202de4: 83 c4 10 add $0x10,%esp
c0202de7: eb 0f jmp c0202df8 <vprintfmt+0x1b1>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:154
c0202de9: 83 ec 08 sub $0x8,%esp
c0202dec: ff 75 0c push 0xc(%ebp)
c0202def: 53 push %ebx
c0202df0: 8b 45 08 mov 0x8(%ebp),%eax
c0202df3: ff d0 call *%eax
c0202df5: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:150
c0202df8: 83 6d e4 01 subl $0x1,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:150 (discriminator 1)
c0202dfc: 89 f0 mov %esi,%eax
c0202dfe: 8d 70 01 lea 0x1(%eax),%esi
c0202e01: 0f b6 00 movzbl (%eax),%eax
c0202e04: 0f be d8 movsbl %al,%ebx
c0202e07: 85 db test %ebx,%ebx
c0202e09: 74 26 je c0202e31 <vprintfmt+0x1ea>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:150 (discriminator 2)
c0202e0b: 83 7d e0 00 cmpl $0x0,-0x20(%ebp)
c0202e0f: 78 b6 js c0202dc7 <vprintfmt+0x180>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:150 (discriminator 3)
c0202e11: 83 6d e0 01 subl $0x1,-0x20(%ebp)
c0202e15: 83 7d e0 00 cmpl $0x0,-0x20(%ebp)
c0202e19: 79 ac jns c0202dc7 <vprintfmt+0x180>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:155
c0202e1b: eb 14 jmp c0202e31 <vprintfmt+0x1ea>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:156 (discriminator 2)
c0202e1d: 83 ec 08 sub $0x8,%esp
c0202e20: ff 75 0c push 0xc(%ebp)
c0202e23: 6a 20 push $0x20
c0202e25: 8b 45 08 mov 0x8(%ebp),%eax
c0202e28: ff d0 call *%eax
c0202e2a: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:155 (discriminator 2)
c0202e2d: 83 6d e4 01 subl $0x1,-0x1c(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:155 (discriminator 1)
c0202e31: 83 7d e4 00 cmpl $0x0,-0x1c(%ebp)
c0202e35: 7f e6 jg c0202e1d <vprintfmt+0x1d6>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:157
c0202e37: e9 65 01 00 00 jmp c0202fa1 <vprintfmt+0x35a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:161
c0202e3c: 83 ec 08 sub $0x8,%esp
c0202e3f: ff 75 e8 push -0x18(%ebp)
c0202e42: 8d 45 14 lea 0x14(%ebp),%eax
c0202e45: 50 push %eax
c0202e46: e8 b5 fd ff ff call c0202c00 <getint>
c0202e4b: 83 c4 10 add $0x10,%esp
c0202e4e: 89 45 f0 mov %eax,-0x10(%ebp)
c0202e51: 89 55 f4 mov %edx,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:162
c0202e54: 8b 45 f0 mov -0x10(%ebp),%eax
c0202e57: 8b 55 f4 mov -0xc(%ebp),%edx
c0202e5a: 85 d2 test %edx,%edx
c0202e5c: 79 23 jns c0202e81 <vprintfmt+0x23a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:163
c0202e5e: 83 ec 08 sub $0x8,%esp
c0202e61: ff 75 0c push 0xc(%ebp)
c0202e64: 6a 2d push $0x2d
c0202e66: 8b 45 08 mov 0x8(%ebp),%eax
c0202e69: ff d0 call *%eax
c0202e6b: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:164
c0202e6e: 8b 45 f0 mov -0x10(%ebp),%eax
c0202e71: 8b 55 f4 mov -0xc(%ebp),%edx
c0202e74: f7 d8 neg %eax
c0202e76: 83 d2 00 adc $0x0,%edx
c0202e79: f7 da neg %edx
c0202e7b: 89 45 f0 mov %eax,-0x10(%ebp)
c0202e7e: 89 55 f4 mov %edx,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:166
c0202e81: c7 45 ec 0a 00 00 00 movl $0xa,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:167
c0202e88: e9 b6 00 00 00 jmp c0202f43 <vprintfmt+0x2fc>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:171
c0202e8d: 83 ec 08 sub $0x8,%esp
c0202e90: ff 75 e8 push -0x18(%ebp)
c0202e93: 8d 45 14 lea 0x14(%ebp),%eax
c0202e96: 50 push %eax
c0202e97: e8 15 fd ff ff call c0202bb1 <getuint>
c0202e9c: 83 c4 10 add $0x10,%esp
c0202e9f: 89 45 f0 mov %eax,-0x10(%ebp)
c0202ea2: 89 55 f4 mov %edx,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:172
c0202ea5: c7 45 ec 0a 00 00 00 movl $0xa,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:173
c0202eac: e9 92 00 00 00 jmp c0202f43 <vprintfmt+0x2fc>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:178
c0202eb1: 83 ec 08 sub $0x8,%esp
c0202eb4: ff 75 0c push 0xc(%ebp)
c0202eb7: 6a 58 push $0x58
c0202eb9: 8b 45 08 mov 0x8(%ebp),%eax
c0202ebc: ff d0 call *%eax
c0202ebe: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:179
c0202ec1: 83 ec 08 sub $0x8,%esp
c0202ec4: ff 75 0c push 0xc(%ebp)
c0202ec7: 6a 58 push $0x58
c0202ec9: 8b 45 08 mov 0x8(%ebp),%eax
c0202ecc: ff d0 call *%eax
c0202ece: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:180
c0202ed1: 83 ec 08 sub $0x8,%esp
c0202ed4: ff 75 0c push 0xc(%ebp)
c0202ed7: 6a 58 push $0x58
c0202ed9: 8b 45 08 mov 0x8(%ebp),%eax
c0202edc: ff d0 call *%eax
c0202ede: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:181
c0202ee1: e9 bb 00 00 00 jmp c0202fa1 <vprintfmt+0x35a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:185
c0202ee6: 83 ec 08 sub $0x8,%esp
c0202ee9: ff 75 0c push 0xc(%ebp)
c0202eec: 6a 30 push $0x30
c0202eee: 8b 45 08 mov 0x8(%ebp),%eax
c0202ef1: ff d0 call *%eax
c0202ef3: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:186
c0202ef6: 83 ec 08 sub $0x8,%esp
c0202ef9: ff 75 0c push 0xc(%ebp)
c0202efc: 6a 78 push $0x78
c0202efe: 8b 45 08 mov 0x8(%ebp),%eax
c0202f01: ff d0 call *%eax
c0202f03: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:188
c0202f06: 8b 45 14 mov 0x14(%ebp),%eax
c0202f09: 8d 50 04 lea 0x4(%eax),%edx
c0202f0c: 89 55 14 mov %edx,0x14(%ebp)
c0202f0f: 8b 00 mov (%eax),%eax
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:187
c0202f11: 89 45 f0 mov %eax,-0x10(%ebp)
c0202f14: c7 45 f4 00 00 00 00 movl $0x0,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:189
c0202f1b: c7 45 ec 10 00 00 00 movl $0x10,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:190
c0202f22: eb 1f jmp c0202f43 <vprintfmt+0x2fc>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:194
c0202f24: 83 ec 08 sub $0x8,%esp
c0202f27: ff 75 e8 push -0x18(%ebp)
c0202f2a: 8d 45 14 lea 0x14(%ebp),%eax
c0202f2d: 50 push %eax
c0202f2e: e8 7e fc ff ff call c0202bb1 <getuint>
c0202f33: 83 c4 10 add $0x10,%esp
c0202f36: 89 45 f0 mov %eax,-0x10(%ebp)
c0202f39: 89 55 f4 mov %edx,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:195
c0202f3c: c7 45 ec 10 00 00 00 movl $0x10,-0x14(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:197
c0202f43: 0f be 55 db movsbl -0x25(%ebp),%edx
c0202f47: 8b 45 ec mov -0x14(%ebp),%eax
c0202f4a: 83 ec 04 sub $0x4,%esp
c0202f4d: 52 push %edx
c0202f4e: ff 75 e4 push -0x1c(%ebp)
c0202f51: 50 push %eax
c0202f52: ff 75 f4 push -0xc(%ebp)
c0202f55: ff 75 f0 push -0x10(%ebp)
c0202f58: ff 75 0c push 0xc(%ebp)
c0202f5b: ff 75 08 push 0x8(%ebp)
c0202f5e: e8 9a fb ff ff call c0202afd <printnum>
c0202f63: 83 c4 20 add $0x20,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:198
c0202f66: eb 39 jmp c0202fa1 <vprintfmt+0x35a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:202
c0202f68: 83 ec 08 sub $0x8,%esp
c0202f6b: ff 75 0c push 0xc(%ebp)
c0202f6e: 53 push %ebx
c0202f6f: 8b 45 08 mov 0x8(%ebp),%eax
c0202f72: ff d0 call *%eax
c0202f74: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:203
c0202f77: eb 28 jmp c0202fa1 <vprintfmt+0x35a>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:207
c0202f79: 83 ec 08 sub $0x8,%esp
c0202f7c: ff 75 0c push 0xc(%ebp)
c0202f7f: 6a 25 push $0x25
c0202f81: 8b 45 08 mov 0x8(%ebp),%eax
c0202f84: ff d0 call *%eax
c0202f86: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:208
c0202f89: 83 6d 10 01 subl $0x1,0x10(%ebp)
c0202f8d: eb 04 jmp c0202f93 <vprintfmt+0x34c>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:208 (discriminator 3)
c0202f8f: 83 6d 10 01 subl $0x1,0x10(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:208 (discriminator 1)
c0202f93: 8b 45 10 mov 0x10(%ebp),%eax
c0202f96: 83 e8 01 sub $0x1,%eax
c0202f99: 0f b6 00 movzbl (%eax),%eax
c0202f9c: 3c 25 cmp $0x25,%al
c0202f9e: 75 ef jne c0202f8f <vprintfmt+0x348>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:210
c0202fa0: 90 nop
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:72 (discriminator 1)
c0202fa1: e9 c2 fc ff ff jmp c0202c68 <vprintfmt+0x21>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:74
c0202fa6: 90 nop
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:213
c0202fa7: 8d 65 f8 lea -0x8(%ebp),%esp
c0202faa: 5b pop %ebx
c0202fab: 5e pop %esi
c0202fac: 5d pop %ebp
c0202fad: c3 ret
c0202fae <printfmt>:
printfmt():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:217
c0202fae: 55 push %ebp
c0202faf: 89 e5 mov %esp,%ebp
c0202fb1: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:220
c0202fb4: 8d 45 14 lea 0x14(%ebp),%eax
c0202fb7: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:221
c0202fba: 8b 45 f4 mov -0xc(%ebp),%eax
c0202fbd: 50 push %eax
c0202fbe: ff 75 10 push 0x10(%ebp)
c0202fc1: ff 75 0c push 0xc(%ebp)
c0202fc4: ff 75 08 push 0x8(%ebp)
c0202fc7: e8 7b fc ff ff call c0202c47 <vprintfmt>
c0202fcc: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:223
c0202fcf: 90 nop
c0202fd0: c9 leave
c0202fd1: c3 ret
c0202fd2 <sprintputch>:
sprintputch():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:233
c0202fd2: 55 push %ebp
c0202fd3: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:234
c0202fd5: 8b 45 0c mov 0xc(%ebp),%eax
c0202fd8: 8b 40 08 mov 0x8(%eax),%eax
c0202fdb: 8d 50 01 lea 0x1(%eax),%edx
c0202fde: 8b 45 0c mov 0xc(%ebp),%eax
c0202fe1: 89 50 08 mov %edx,0x8(%eax)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:235
c0202fe4: 8b 45 0c mov 0xc(%ebp),%eax
c0202fe7: 8b 10 mov (%eax),%edx
c0202fe9: 8b 45 0c mov 0xc(%ebp),%eax
c0202fec: 8b 40 04 mov 0x4(%eax),%eax
c0202fef: 39 c2 cmp %eax,%edx
c0202ff1: 73 12 jae c0203005 <sprintputch+0x33>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:236
c0202ff3: 8b 45 0c mov 0xc(%ebp),%eax
c0202ff6: 8b 00 mov (%eax),%eax
c0202ff8: 8d 48 01 lea 0x1(%eax),%ecx
c0202ffb: 8b 55 0c mov 0xc(%ebp),%edx
c0202ffe: 89 0a mov %ecx,(%edx)
c0203000: 8b 55 08 mov 0x8(%ebp),%edx
c0203003: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:237
c0203005: 90 nop
c0203006: 5d pop %ebp
c0203007: c3 ret
c0203008 <vsnprintf>:
vsnprintf():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:241
c0203008: 55 push %ebp
c0203009: 89 e5 mov %esp,%ebp
c020300b: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:242
c020300e: 8b 45 08 mov 0x8(%ebp),%eax
c0203011: 89 45 ec mov %eax,-0x14(%ebp)
c0203014: 8b 45 0c mov 0xc(%ebp),%eax
c0203017: 8d 50 ff lea -0x1(%eax),%edx
c020301a: 8b 45 08 mov 0x8(%ebp),%eax
c020301d: 01 d0 add %edx,%eax
c020301f: 89 45 f0 mov %eax,-0x10(%ebp)
c0203022: c7 45 f4 00 00 00 00 movl $0x0,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:244
c0203029: 83 7d 08 00 cmpl $0x0,0x8(%ebp)
c020302d: 74 06 je c0203035 <vsnprintf+0x2d>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:244 (discriminator 1)
c020302f: 83 7d 0c 00 cmpl $0x0,0xc(%ebp)
c0203033: 7f 07 jg c020303c <vsnprintf+0x34>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:245
c0203035: b8 ff ff ff ff mov $0xffffffff,%eax
c020303a: eb 20 jmp c020305c <vsnprintf+0x54>
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:248
c020303c: ff 75 14 push 0x14(%ebp)
c020303f: ff 75 10 push 0x10(%ebp)
c0203042: 8d 45 ec lea -0x14(%ebp),%eax
c0203045: 50 push %eax
c0203046: 68 d2 2f 20 c0 push $0xc0202fd2
c020304b: e8 f7 fb ff ff call c0202c47 <vprintfmt>
c0203050: 83 c4 10 add $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:251
c0203053: 8b 45 ec mov -0x14(%ebp),%eax
c0203056: c6 00 00 movb $0x0,(%eax)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:253
c0203059: 8b 45 f4 mov -0xc(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:254 (discriminator 1)
c020305c: c9 leave
c020305d: c3 ret
c020305e <snprintf>:
snprintf():
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:258
c020305e: 55 push %ebp
c020305f: 89 e5 mov %esp,%ebp
c0203061: 83 ec 18 sub $0x18,%esp
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:262
c0203064: 8d 45 14 lea 0x14(%ebp),%eax
c0203067: 89 45 f0 mov %eax,-0x10(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:263
c020306a: 8b 45 f0 mov -0x10(%ebp),%eax
c020306d: 50 push %eax
c020306e: ff 75 10 push 0x10(%ebp)
c0203071: ff 75 0c push 0xc(%ebp)
c0203074: ff 75 08 push 0x8(%ebp)
c0203077: e8 8c ff ff ff call c0203008 <vsnprintf>
c020307c: 83 c4 10 add $0x10,%esp
c020307f: 89 45 f4 mov %eax,-0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:266
c0203082: 8b 45 f4 mov -0xc(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/printfmt.c:267
c0203085: c9 leave
c0203086: c3 ret
c0203087 <strlen>:
strlen():
/media/unix/Data/Code/2020301918-os/lib/string.c:5
c0203087: 55 push %ebp
c0203088: 89 e5 mov %esp,%ebp
c020308a: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:8
c020308d: c7 45 fc 00 00 00 00 movl $0x0,-0x4(%ebp)
c0203094: eb 08 jmp c020309e <strlen+0x17>
/media/unix/Data/Code/2020301918-os/lib/string.c:9 (discriminator 3)
c0203096: 83 45 fc 01 addl $0x1,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:8 (discriminator 3)
c020309a: 83 45 08 01 addl $0x1,0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:8 (discriminator 1)
c020309e: 8b 45 08 mov 0x8(%ebp),%eax
c02030a1: 0f b6 00 movzbl (%eax),%eax
c02030a4: 84 c0 test %al,%al
c02030a6: 75 ee jne c0203096 <strlen+0xf>
/media/unix/Data/Code/2020301918-os/lib/string.c:10
c02030a8: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:11
c02030ab: c9 leave
c02030ac: c3 ret
c02030ad <strnlen>:
strnlen():
/media/unix/Data/Code/2020301918-os/lib/string.c:15
c02030ad: 55 push %ebp
c02030ae: 89 e5 mov %esp,%ebp
c02030b0: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:18
c02030b3: c7 45 fc 00 00 00 00 movl $0x0,-0x4(%ebp)
c02030ba: eb 0c jmp c02030c8 <strnlen+0x1b>
/media/unix/Data/Code/2020301918-os/lib/string.c:19 (discriminator 4)
c02030bc: 83 45 fc 01 addl $0x1,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:18 (discriminator 4)
c02030c0: 83 45 08 01 addl $0x1,0x8(%ebp)
c02030c4: 83 6d 0c 01 subl $0x1,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:18 (discriminator 1)
c02030c8: 83 7d 0c 00 cmpl $0x0,0xc(%ebp)
c02030cc: 74 0a je c02030d8 <strnlen+0x2b>
/media/unix/Data/Code/2020301918-os/lib/string.c:18 (discriminator 3)
c02030ce: 8b 45 08 mov 0x8(%ebp),%eax
c02030d1: 0f b6 00 movzbl (%eax),%eax
c02030d4: 84 c0 test %al,%al
c02030d6: 75 e4 jne c02030bc <strnlen+0xf>
/media/unix/Data/Code/2020301918-os/lib/string.c:20
c02030d8: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:21
c02030db: c9 leave
c02030dc: c3 ret
c02030dd <strcpy>:
strcpy():
/media/unix/Data/Code/2020301918-os/lib/string.c:25
c02030dd: 55 push %ebp
c02030de: 89 e5 mov %esp,%ebp
c02030e0: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:28
c02030e3: 8b 45 08 mov 0x8(%ebp),%eax
c02030e6: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:29
c02030e9: 90 nop
/media/unix/Data/Code/2020301918-os/lib/string.c:29 (discriminator 1)
c02030ea: 8b 55 0c mov 0xc(%ebp),%edx
c02030ed: 8d 42 01 lea 0x1(%edx),%eax
c02030f0: 89 45 0c mov %eax,0xc(%ebp)
c02030f3: 8b 45 08 mov 0x8(%ebp),%eax
c02030f6: 8d 48 01 lea 0x1(%eax),%ecx
c02030f9: 89 4d 08 mov %ecx,0x8(%ebp)
c02030fc: 0f b6 12 movzbl (%edx),%edx
c02030ff: 88 10 mov %dl,(%eax)
c0203101: 0f b6 00 movzbl (%eax),%eax
c0203104: 84 c0 test %al,%al
c0203106: 75 e2 jne c02030ea <strcpy+0xd>
/media/unix/Data/Code/2020301918-os/lib/string.c:31
c0203108: 8b 45 fc mov -0x4(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:32
c020310b: c9 leave
c020310c: c3 ret
c020310d <strcat>:
strcat():
/media/unix/Data/Code/2020301918-os/lib/string.c:36
c020310d: 55 push %ebp
c020310e: 89 e5 mov %esp,%ebp
c0203110: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:37
c0203113: ff 75 08 push 0x8(%ebp)
c0203116: e8 6c ff ff ff call c0203087 <strlen>
c020311b: 83 c4 04 add $0x4,%esp
c020311e: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:38
c0203121: 8b 55 fc mov -0x4(%ebp),%edx
c0203124: 8b 45 08 mov 0x8(%ebp),%eax
c0203127: 01 d0 add %edx,%eax
c0203129: ff 75 0c push 0xc(%ebp)
c020312c: 50 push %eax
c020312d: e8 ab ff ff ff call c02030dd <strcpy>
c0203132: 83 c4 08 add $0x8,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:39
c0203135: 8b 45 08 mov 0x8(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:40
c0203138: c9 leave
c0203139: c3 ret
c020313a <strncpy>:
strncpy():
/media/unix/Data/Code/2020301918-os/lib/string.c:43
c020313a: 55 push %ebp
c020313b: 89 e5 mov %esp,%ebp
c020313d: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:47
c0203140: 8b 45 08 mov 0x8(%ebp),%eax
c0203143: 89 45 f8 mov %eax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:48
c0203146: c7 45 fc 00 00 00 00 movl $0x0,-0x4(%ebp)
c020314d: eb 23 jmp c0203172 <strncpy+0x38>
/media/unix/Data/Code/2020301918-os/lib/string.c:49
c020314f: 8b 45 08 mov 0x8(%ebp),%eax
c0203152: 8d 50 01 lea 0x1(%eax),%edx
c0203155: 89 55 08 mov %edx,0x8(%ebp)
c0203158: 8b 55 0c mov 0xc(%ebp),%edx
c020315b: 0f b6 12 movzbl (%edx),%edx
c020315e: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/lib/string.c:51
c0203160: 8b 45 0c mov 0xc(%ebp),%eax
c0203163: 0f b6 00 movzbl (%eax),%eax
c0203166: 84 c0 test %al,%al
c0203168: 74 04 je c020316e <strncpy+0x34>
/media/unix/Data/Code/2020301918-os/lib/string.c:52
c020316a: 83 45 0c 01 addl $0x1,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:48 (discriminator 2)
c020316e: 83 45 fc 01 addl $0x1,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:48 (discriminator 1)
c0203172: 8b 45 fc mov -0x4(%ebp),%eax
c0203175: 3b 45 10 cmp 0x10(%ebp),%eax
c0203178: 72 d5 jb c020314f <strncpy+0x15>
/media/unix/Data/Code/2020301918-os/lib/string.c:54
c020317a: 8b 45 f8 mov -0x8(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:55
c020317d: c9 leave
c020317e: c3 ret
c020317f <strcmp>:
strcmp():
/media/unix/Data/Code/2020301918-os/lib/string.c:59
c020317f: 55 push %ebp
c0203180: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/string.c:60
c0203182: eb 08 jmp c020318c <strcmp+0xd>
/media/unix/Data/Code/2020301918-os/lib/string.c:61
c0203184: 83 45 08 01 addl $0x1,0x8(%ebp)
c0203188: 83 45 0c 01 addl $0x1,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:60
c020318c: 8b 45 08 mov 0x8(%ebp),%eax
c020318f: 0f b6 00 movzbl (%eax),%eax
c0203192: 84 c0 test %al,%al
c0203194: 74 10 je c02031a6 <strcmp+0x27>
/media/unix/Data/Code/2020301918-os/lib/string.c:60 (discriminator 1)
c0203196: 8b 45 08 mov 0x8(%ebp),%eax
c0203199: 0f b6 10 movzbl (%eax),%edx
c020319c: 8b 45 0c mov 0xc(%ebp),%eax
c020319f: 0f b6 00 movzbl (%eax),%eax
c02031a2: 38 c2 cmp %al,%dl
c02031a4: 74 de je c0203184 <strcmp+0x5>
/media/unix/Data/Code/2020301918-os/lib/string.c:62
c02031a6: 8b 45 08 mov 0x8(%ebp),%eax
c02031a9: 0f b6 00 movzbl (%eax),%eax
c02031ac: 0f b6 d0 movzbl %al,%edx
c02031af: 8b 45 0c mov 0xc(%ebp),%eax
c02031b2: 0f b6 00 movzbl (%eax),%eax
c02031b5: 0f b6 c8 movzbl %al,%ecx
c02031b8: 89 d0 mov %edx,%eax
c02031ba: 29 c8 sub %ecx,%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:63
c02031bc: 5d pop %ebp
c02031bd: c3 ret
c02031be <strncmp>:
strncmp():
/media/unix/Data/Code/2020301918-os/lib/string.c:67
c02031be: 55 push %ebp
c02031bf: 89 e5 mov %esp,%ebp
/media/unix/Data/Code/2020301918-os/lib/string.c:68
c02031c1: eb 0c jmp c02031cf <strncmp+0x11>
/media/unix/Data/Code/2020301918-os/lib/string.c:69
c02031c3: 83 6d 10 01 subl $0x1,0x10(%ebp)
c02031c7: 83 45 08 01 addl $0x1,0x8(%ebp)
c02031cb: 83 45 0c 01 addl $0x1,0xc(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:68
c02031cf: 83 7d 10 00 cmpl $0x0,0x10(%ebp)
c02031d3: 74 1a je c02031ef <strncmp+0x31>
/media/unix/Data/Code/2020301918-os/lib/string.c:68 (discriminator 1)
c02031d5: 8b 45 08 mov 0x8(%ebp),%eax
c02031d8: 0f b6 00 movzbl (%eax),%eax
c02031db: 84 c0 test %al,%al
c02031dd: 74 10 je c02031ef <strncmp+0x31>
/media/unix/Data/Code/2020301918-os/lib/string.c:68 (discriminator 2)
c02031df: 8b 45 08 mov 0x8(%ebp),%eax
c02031e2: 0f b6 10 movzbl (%eax),%edx
c02031e5: 8b 45 0c mov 0xc(%ebp),%eax
c02031e8: 0f b6 00 movzbl (%eax),%eax
c02031eb: 38 c2 cmp %al,%dl
c02031ed: 74 d4 je c02031c3 <strncmp+0x5>
/media/unix/Data/Code/2020301918-os/lib/string.c:70
c02031ef: 83 7d 10 00 cmpl $0x0,0x10(%ebp)
c02031f3: 75 07 jne c02031fc <strncmp+0x3e>
/media/unix/Data/Code/2020301918-os/lib/string.c:71
c02031f5: b8 00 00 00 00 mov $0x0,%eax
c02031fa: eb 16 jmp c0203212 <strncmp+0x54>
/media/unix/Data/Code/2020301918-os/lib/string.c:73
c02031fc: 8b 45 08 mov 0x8(%ebp),%eax
c02031ff: 0f b6 00 movzbl (%eax),%eax
c0203202: 0f b6 d0 movzbl %al,%edx
c0203205: 8b 45 0c mov 0xc(%ebp),%eax
c0203208: 0f b6 00 movzbl (%eax),%eax
c020320b: 0f b6 c8 movzbl %al,%ecx
c020320e: 89 d0 mov %edx,%eax
c0203210: 29 c8 sub %ecx,%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:74
c0203212: 5d pop %ebp
c0203213: c3 ret
c0203214 <memset>:
memset():
/media/unix/Data/Code/2020301918-os/lib/string.c:78
c0203214: 55 push %ebp
c0203215: 89 e5 mov %esp,%ebp
c0203217: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:82
c020321a: 8b 45 08 mov 0x8(%ebp),%eax
c020321d: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:83
c0203220: 8b 45 10 mov 0x10(%ebp),%eax
c0203223: 89 45 f8 mov %eax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:84
c0203226: eb 0e jmp c0203236 <memset+0x22>
/media/unix/Data/Code/2020301918-os/lib/string.c:85
c0203228: 8b 45 fc mov -0x4(%ebp),%eax
c020322b: 8d 50 01 lea 0x1(%eax),%edx
c020322e: 89 55 fc mov %edx,-0x4(%ebp)
c0203231: 8b 55 0c mov 0xc(%ebp),%edx
c0203234: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/lib/string.c:84
c0203236: 83 6d f8 01 subl $0x1,-0x8(%ebp)
c020323a: 83 7d f8 00 cmpl $0x0,-0x8(%ebp)
c020323e: 79 e8 jns c0203228 <memset+0x14>
/media/unix/Data/Code/2020301918-os/lib/string.c:87
c0203240: 8b 45 08 mov 0x8(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:88
c0203243: c9 leave
c0203244: c3 ret
c0203245 <memcpy>:
memcpy():
/media/unix/Data/Code/2020301918-os/lib/string.c:92
c0203245: 55 push %ebp
c0203246: 89 e5 mov %esp,%ebp
c0203248: 83 ec 10 sub $0x10,%esp
/media/unix/Data/Code/2020301918-os/lib/string.c:96
c020324b: 8b 45 0c mov 0xc(%ebp),%eax
c020324e: 89 45 fc mov %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:97
c0203251: 8b 45 08 mov 0x8(%ebp),%eax
c0203254: 89 45 f8 mov %eax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:99
c0203257: 8b 45 fc mov -0x4(%ebp),%eax
c020325a: 3b 45 f8 cmp -0x8(%ebp),%eax
c020325d: 73 54 jae c02032b3 <memcpy+0x6e>
/media/unix/Data/Code/2020301918-os/lib/string.c:99 (discriminator 1)
c020325f: 8b 55 fc mov -0x4(%ebp),%edx
c0203262: 8b 45 10 mov 0x10(%ebp),%eax
c0203265: 01 d0 add %edx,%eax
c0203267: 39 45 f8 cmp %eax,-0x8(%ebp)
c020326a: 73 47 jae c02032b3 <memcpy+0x6e>
/media/unix/Data/Code/2020301918-os/lib/string.c:100
c020326c: 8b 45 10 mov 0x10(%ebp),%eax
c020326f: 01 45 fc add %eax,-0x4(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:101
c0203272: 8b 45 10 mov 0x10(%ebp),%eax
c0203275: 01 45 f8 add %eax,-0x8(%ebp)
/media/unix/Data/Code/2020301918-os/lib/string.c:102
c0203278: eb 13 jmp c020328d <memcpy+0x48>
/media/unix/Data/Code/2020301918-os/lib/string.c:103
c020327a: 83 6d fc 01 subl $0x1,-0x4(%ebp)
c020327e: 83 6d f8 01 subl $0x1,-0x8(%ebp)
c0203282: 8b 45 fc mov -0x4(%ebp),%eax
c0203285: 0f b6 10 movzbl (%eax),%edx
c0203288: 8b 45 f8 mov -0x8(%ebp),%eax
c020328b: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/lib/string.c:102
c020328d: 8b 45 10 mov 0x10(%ebp),%eax
c0203290: 8d 50 ff lea -0x1(%eax),%edx
c0203293: 89 55 10 mov %edx,0x10(%ebp)
c0203296: 85 c0 test %eax,%eax
c0203298: 75 e0 jne c020327a <memcpy+0x35>
/media/unix/Data/Code/2020301918-os/lib/string.c:99
c020329a: eb 24 jmp c02032c0 <memcpy+0x7b>
/media/unix/Data/Code/2020301918-os/lib/string.c:106
c020329c: 8b 55 fc mov -0x4(%ebp),%edx
c020329f: 8d 42 01 lea 0x1(%edx),%eax
c02032a2: 89 45 fc mov %eax,-0x4(%ebp)
c02032a5: 8b 45 f8 mov -0x8(%ebp),%eax
c02032a8: 8d 48 01 lea 0x1(%eax),%ecx
c02032ab: 89 4d f8 mov %ecx,-0x8(%ebp)
c02032ae: 0f b6 12 movzbl (%edx),%edx
c02032b1: 88 10 mov %dl,(%eax)
/media/unix/Data/Code/2020301918-os/lib/string.c:105
c02032b3: 8b 45 10 mov 0x10(%ebp),%eax
c02032b6: 8d 50 ff lea -0x1(%eax),%edx
c02032b9: 89 55 10 mov %edx,0x10(%ebp)
c02032bc: 85 c0 test %eax,%eax
c02032be: 75 dc jne c020329c <memcpy+0x57>
/media/unix/Data/Code/2020301918-os/lib/string.c:109
c02032c0: 8b 45 08 mov 0x8(%ebp),%eax
/media/unix/Data/Code/2020301918-os/lib/string.c:110
c02032c3: c9 leave
c02032c4: c3 ret
c02032c5: 66 90 xchg %ax,%ax
c02032c7: 66 90 xchg %ax,%ax
c02032c9: 66 90 xchg %ax,%ax
c02032cb: 66 90 xchg %ax,%ax
c02032cd: 66 90 xchg %ax,%ax
c02032cf: 90 nop
c02032d0 <__udivdi3>:
__udivdi3():
c02032d0: f3 0f 1e fb endbr32
c02032d4: 55 push %ebp
c02032d5: 57 push %edi
c02032d6: 56 push %esi
c02032d7: 53 push %ebx
c02032d8: 83 ec 1c sub $0x1c,%esp
c02032db: 8b 44 24 3c mov 0x3c(%esp),%eax
c02032df: 8b 6c 24 30 mov 0x30(%esp),%ebp
c02032e3: 8b 74 24 34 mov 0x34(%esp),%esi
c02032e7: 8b 5c 24 38 mov 0x38(%esp),%ebx
c02032eb: 85 c0 test %eax,%eax
c02032ed: 75 19 jne c0203308 <__udivdi3+0x38>
c02032ef: 39 f3 cmp %esi,%ebx
c02032f1: 76 4d jbe c0203340 <__udivdi3+0x70>
c02032f3: 31 ff xor %edi,%edi
c02032f5: 89 e8 mov %ebp,%eax
c02032f7: 89 f2 mov %esi,%edx
c02032f9: f7 f3 div %ebx
c02032fb: 89 fa mov %edi,%edx
c02032fd: 83 c4 1c add $0x1c,%esp
c0203300: 5b pop %ebx
c0203301: 5e pop %esi
c0203302: 5f pop %edi
c0203303: 5d pop %ebp
c0203304: c3 ret
c0203305: 8d 76 00 lea 0x0(%esi),%esi
c0203308: 39 f0 cmp %esi,%eax
c020330a: 76 14 jbe c0203320 <__udivdi3+0x50>
c020330c: 31 ff xor %edi,%edi
c020330e: 31 c0 xor %eax,%eax
c0203310: 89 fa mov %edi,%edx
c0203312: 83 c4 1c add $0x1c,%esp
c0203315: 5b pop %ebx
c0203316: 5e pop %esi
c0203317: 5f pop %edi
c0203318: 5d pop %ebp
c0203319: c3 ret
c020331a: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
c0203320: 0f bd f8 bsr %eax,%edi
c0203323: 83 f7 1f xor $0x1f,%edi
c0203326: 75 48 jne c0203370 <__udivdi3+0xa0>
c0203328: 39 f0 cmp %esi,%eax
c020332a: 72 06 jb c0203332 <__udivdi3+0x62>
c020332c: 31 c0 xor %eax,%eax
c020332e: 39 eb cmp %ebp,%ebx
c0203330: 77 de ja c0203310 <__udivdi3+0x40>
c0203332: b8 01 00 00 00 mov $0x1,%eax
c0203337: eb d7 jmp c0203310 <__udivdi3+0x40>
c0203339: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
c0203340: 89 d9 mov %ebx,%ecx
c0203342: 85 db test %ebx,%ebx
c0203344: 75 0b jne c0203351 <__udivdi3+0x81>
c0203346: b8 01 00 00 00 mov $0x1,%eax
c020334b: 31 d2 xor %edx,%edx
c020334d: f7 f3 div %ebx
c020334f: 89 c1 mov %eax,%ecx
c0203351: 31 d2 xor %edx,%edx
c0203353: 89 f0 mov %esi,%eax
c0203355: f7 f1 div %ecx
c0203357: 89 c6 mov %eax,%esi
c0203359: 89 e8 mov %ebp,%eax
c020335b: 89 f7 mov %esi,%edi
c020335d: f7 f1 div %ecx
c020335f: 89 fa mov %edi,%edx
c0203361: 83 c4 1c add $0x1c,%esp
c0203364: 5b pop %ebx
c0203365: 5e pop %esi
c0203366: 5f pop %edi
c0203367: 5d pop %ebp
c0203368: c3 ret
c0203369: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
c0203370: 89 f9 mov %edi,%ecx
c0203372: ba 20 00 00 00 mov $0x20,%edx
c0203377: 29 fa sub %edi,%edx
c0203379: d3 e0 shl %cl,%eax
c020337b: 89 44 24 08 mov %eax,0x8(%esp)
c020337f: 89 d1 mov %edx,%ecx
c0203381: 89 d8 mov %ebx,%eax
c0203383: d3 e8 shr %cl,%eax
c0203385: 8b 4c 24 08 mov 0x8(%esp),%ecx
c0203389: 09 c1 or %eax,%ecx
c020338b: 89 f0 mov %esi,%eax
c020338d: 89 4c 24 08 mov %ecx,0x8(%esp)
c0203391: 89 f9 mov %edi,%ecx
c0203393: d3 e3 shl %cl,%ebx
c0203395: 89 d1 mov %edx,%ecx
c0203397: d3 e8 shr %cl,%eax
c0203399: 89 f9 mov %edi,%ecx
c020339b: 89 5c 24 0c mov %ebx,0xc(%esp)
c020339f: 89 eb mov %ebp,%ebx
c02033a1: d3 e6 shl %cl,%esi
c02033a3: 89 d1 mov %edx,%ecx
c02033a5: d3 eb shr %cl,%ebx
c02033a7: 09 f3 or %esi,%ebx
c02033a9: 89 c6 mov %eax,%esi
c02033ab: 89 f2 mov %esi,%edx
c02033ad: 89 d8 mov %ebx,%eax
c02033af: f7 74 24 08 divl 0x8(%esp)
c02033b3: 89 d6 mov %edx,%esi
c02033b5: 89 c3 mov %eax,%ebx
c02033b7: f7 64 24 0c mull 0xc(%esp)
c02033bb: 39 d6 cmp %edx,%esi
c02033bd: 72 19 jb c02033d8 <__udivdi3+0x108>
c02033bf: 89 f9 mov %edi,%ecx
c02033c1: d3 e5 shl %cl,%ebp
c02033c3: 39 c5 cmp %eax,%ebp
c02033c5: 73 04 jae c02033cb <__udivdi3+0xfb>
c02033c7: 39 d6 cmp %edx,%esi
c02033c9: 74 0d je c02033d8 <__udivdi3+0x108>
c02033cb: 89 d8 mov %ebx,%eax
c02033cd: 31 ff xor %edi,%edi
c02033cf: e9 3c ff ff ff jmp c0203310 <__udivdi3+0x40>
c02033d4: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
c02033d8: 8d 43 ff lea -0x1(%ebx),%eax
c02033db: 31 ff xor %edi,%edi
c02033dd: e9 2e ff ff ff jmp c0203310 <__udivdi3+0x40>
c02033e2: 66 90 xchg %ax,%ax
c02033e4: 66 90 xchg %ax,%ax
c02033e6: 66 90 xchg %ax,%ax
c02033e8: 66 90 xchg %ax,%ax
c02033ea: 66 90 xchg %ax,%ax
c02033ec: 66 90 xchg %ax,%ax
c02033ee: 66 90 xchg %ax,%ax
c02033f0 <__umoddi3>:
__umoddi3():
c02033f0: f3 0f 1e fb endbr32
c02033f4: 55 push %ebp
c02033f5: 57 push %edi
c02033f6: 56 push %esi
c02033f7: 53 push %ebx
c02033f8: 83 ec 1c sub $0x1c,%esp
c02033fb: 8b 74 24 30 mov 0x30(%esp),%esi
c02033ff: 8b 5c 24 34 mov 0x34(%esp),%ebx
c0203403: 8b 7c 24 3c mov 0x3c(%esp),%edi
c0203407: 8b 6c 24 38 mov 0x38(%esp),%ebp
c020340b: 89 f0 mov %esi,%eax
c020340d: 89 da mov %ebx,%edx
c020340f: 85 ff test %edi,%edi
c0203411: 75 15 jne c0203428 <__umoddi3+0x38>
c0203413: 39 dd cmp %ebx,%ebp
c0203415: 76 39 jbe c0203450 <__umoddi3+0x60>
c0203417: f7 f5 div %ebp
c0203419: 89 d0 mov %edx,%eax
c020341b: 31 d2 xor %edx,%edx
c020341d: 83 c4 1c add $0x1c,%esp
c0203420: 5b pop %ebx
c0203421: 5e pop %esi
c0203422: 5f pop %edi
c0203423: 5d pop %ebp
c0203424: c3 ret
c0203425: 8d 76 00 lea 0x0(%esi),%esi
c0203428: 39 df cmp %ebx,%edi
c020342a: 77 f1 ja c020341d <__umoddi3+0x2d>
c020342c: 0f bd cf bsr %edi,%ecx
c020342f: 83 f1 1f xor $0x1f,%ecx
c0203432: 89 4c 24 04 mov %ecx,0x4(%esp)
c0203436: 75 40 jne c0203478 <__umoddi3+0x88>
c0203438: 39 df cmp %ebx,%edi
c020343a: 72 04 jb c0203440 <__umoddi3+0x50>
c020343c: 39 f5 cmp %esi,%ebp
c020343e: 77 dd ja c020341d <__umoddi3+0x2d>
c0203440: 89 da mov %ebx,%edx
c0203442: 89 f0 mov %esi,%eax
c0203444: 29 e8 sub %ebp,%eax
c0203446: 19 fa sbb %edi,%edx
c0203448: eb d3 jmp c020341d <__umoddi3+0x2d>
c020344a: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
c0203450: 89 e9 mov %ebp,%ecx
c0203452: 85 ed test %ebp,%ebp
c0203454: 75 0b jne c0203461 <__umoddi3+0x71>
c0203456: b8 01 00 00 00 mov $0x1,%eax
c020345b: 31 d2 xor %edx,%edx
c020345d: f7 f5 div %ebp
c020345f: 89 c1 mov %eax,%ecx
c0203461: 89 d8 mov %ebx,%eax
c0203463: 31 d2 xor %edx,%edx
c0203465: f7 f1 div %ecx
c0203467: 89 f0 mov %esi,%eax
c0203469: f7 f1 div %ecx
c020346b: 89 d0 mov %edx,%eax
c020346d: 31 d2 xor %edx,%edx
c020346f: eb ac jmp c020341d <__umoddi3+0x2d>
c0203471: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
c0203478: 8b 44 24 04 mov 0x4(%esp),%eax
c020347c: ba 20 00 00 00 mov $0x20,%edx
c0203481: 29 c2 sub %eax,%edx
c0203483: 89 c1 mov %eax,%ecx
c0203485: 89 e8 mov %ebp,%eax
c0203487: d3 e7 shl %cl,%edi
c0203489: 89 d1 mov %edx,%ecx
c020348b: 89 54 24 0c mov %edx,0xc(%esp)
c020348f: d3 e8 shr %cl,%eax
c0203491: 89 c1 mov %eax,%ecx
c0203493: 8b 44 24 04 mov 0x4(%esp),%eax
c0203497: 09 f9 or %edi,%ecx
c0203499: 89 df mov %ebx,%edi
c020349b: 89 4c 24 08 mov %ecx,0x8(%esp)
c020349f: 89 c1 mov %eax,%ecx
c02034a1: d3 e5 shl %cl,%ebp
c02034a3: 89 d1 mov %edx,%ecx
c02034a5: d3 ef shr %cl,%edi
c02034a7: 89 c1 mov %eax,%ecx
c02034a9: 89 f0 mov %esi,%eax
c02034ab: d3 e3 shl %cl,%ebx
c02034ad: 89 d1 mov %edx,%ecx
c02034af: 89 fa mov %edi,%edx
c02034b1: d3 e8 shr %cl,%eax
c02034b3: 0f b6 4c 24 04 movzbl 0x4(%esp),%ecx
c02034b8: 09 d8 or %ebx,%eax
c02034ba: f7 74 24 08 divl 0x8(%esp)
c02034be: 89 d3 mov %edx,%ebx
c02034c0: d3 e6 shl %cl,%esi
c02034c2: f7 e5 mul %ebp
c02034c4: 89 c7 mov %eax,%edi
c02034c6: 89 d1 mov %edx,%ecx
c02034c8: 39 d3 cmp %edx,%ebx
c02034ca: 72 06 jb c02034d2 <__umoddi3+0xe2>
c02034cc: 75 0e jne c02034dc <__umoddi3+0xec>
c02034ce: 39 c6 cmp %eax,%esi
c02034d0: 73 0a jae c02034dc <__umoddi3+0xec>
c02034d2: 29 e8 sub %ebp,%eax
c02034d4: 1b 54 24 08 sbb 0x8(%esp),%edx
c02034d8: 89 d1 mov %edx,%ecx
c02034da: 89 c7 mov %eax,%edi
c02034dc: 89 f5 mov %esi,%ebp
c02034de: 8b 74 24 04 mov 0x4(%esp),%esi
c02034e2: 29 fd sub %edi,%ebp
c02034e4: 19 cb sbb %ecx,%ebx
c02034e6: 0f b6 4c 24 0c movzbl 0xc(%esp),%ecx
c02034eb: 89 d8 mov %ebx,%eax
c02034ed: d3 e0 shl %cl,%eax
c02034ef: 89 f1 mov %esi,%ecx
c02034f1: d3 ed shr %cl,%ebp
c02034f3: d3 eb shr %cl,%ebx
c02034f5: 09 e8 or %ebp,%eax
c02034f7: 89 da mov %ebx,%edx
c02034f9: 83 c4 1c add $0x1c,%esp
c02034fc: 5b pop %ebx
c02034fd: 5e pop %esi
c02034fe: 5f pop %edi
c02034ff: 5d pop %ebp
c0203500: c3 ret