From 823a255e1ac809d51d085a15e51a6bd6a715e303 Mon Sep 17 00:00:00 2001 From: pjht Date: Sat, 27 Jul 2019 11:11:28 -0500 Subject: [PATCH] Fix vfs saying the message was sent from init's stdio mailbox. Unfortunately, this breaks the VFS, so the rest of this commit attempts (and fails) to fix it. --- .gdbinit | 6 +- bochsrc.txt | 46 +- bochsrc.txt.old | 57 + fsdrv/log | 1502 ++++++++++++ kernel/cpu/i386/isr.c | 11 +- kernel/log | 5012 +++++++++++++++++++++++++++++++++++++++++ vfs/main.c | 18 +- 7 files changed, 6595 insertions(+), 57 deletions(-) create mode 100644 bochsrc.txt.old create mode 100644 fsdrv/log create mode 100644 kernel/log diff --git a/.gdbinit b/.gdbinit index 2a04306..13efdc5 100644 --- a/.gdbinit +++ b/.gdbinit @@ -1,15 +1,15 @@ set pagination off target remote localhost:1234 symbol-file kernel/kernel.elf -add-symbol-file init/init +add-symbol-file fsdrv/fsdrv b tasking.c:123 commands silent disable breakpoints symbol-file kernel/kernel.elf p task->pid - if task->pid==1 - add-symbol-file init/init + if task->pid==3 + add-symbol-file fsdrv/fsdrv enable breakpoints else enable breakpoints 1 diff --git a/bochsrc.txt b/bochsrc.txt index 2c06d9e..b0b83c0 100644 --- a/bochsrc.txt +++ b/bochsrc.txt @@ -1,57 +1,17 @@ # configuration file generated by Bochs -plugin_ctrl: unmapped=1, biosdev=1, speaker=1, extfpuirq=1, parallel=1, serial=1, iodebug=1 -config_interface: textconfig -display_library: sdl2 memory: host=32, guest=32 -romimage: file="/usr/local/Cellar/bochs/2.6.9_2/share/bochs/BIOS-bochs-latest", address=0x0, options=none -vgaromimage: file="/usr/local/Cellar/bochs/2.6.9_2/share/bochs/VGABIOS-lgpl-latest" boot: cdrom -floppy_bootsig_check: disabled=0 -# no floppya -# no floppyb ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14 ata0-master: type=none, path=ext2.img, mode=flat, cylinders=65, heads=16, spt=63, model="Generic 1234", biosdetect=auto, translation=auto ata0-slave: type=cdrom, path=os.iso, status=inserted, model="Generic 1234", biosdetect=auto -ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15 -ata1-master: type=none -ata1-slave: type=none -ata2: enabled=0 -ata3: enabled=0 -optromimage1: file=none -optromimage2: file=none -optromimage3: file=none -optromimage4: file=none -optramimage1: file=none -optramimage2: file=none -optramimage3: file=none -optramimage4: file=none -pci: enabled=1, chipset=i440fx -vga: extension=vbe, update_freq=5, realtime=1 -cpu: count=1:1:1, ips=640000000, quantum=16, model=bx_generic, reset_on_triple_fault=0, cpuid_limit_winnt=0, ignore_bad_msrs=1, mwait_is_nop=0 -cpuid: level=6, stepping=3, model=3, family=6, vendor_string="GenuineIntel", brand_string=" Intel(R) Pentium(R) 4 CPU " -cpuid: mmx=1, apic=xapic, simd=sse2, sse4a=0, misaligned_sse=0, sep=1, movbe=0, adx=0 -cpuid: aes=0, sha=0, xsave=0, xsaveopt=0, avx_f16c=0, avx_fma=0, bmi=0, xop=0, fma4=0 -cpuid: tbm=0, x86_64=1, 1g_pages=0, pcid=0, fsgsbase=0, smep=0, smap=0, mwait=1, vmx=1 -print_timestamps: enabled=0 -debugger_log: - magic_break: enabled=1 port_e9_hack: enabled=0 -private_colormap: enabled=0 -clock: sync=none, time0=local, rtc_sync=0 -# no cmosimage -# no loader log: bochsout.txt logprefix: %t%e%d -debug: action=ignore, pci=report, pci2isa=report, pci_ide=report +debug: action=ignore info: action=report error: action=report panic: action=ask -keyboard: type=mf, serial_delay=250, paste_delay=100000, user_shortcut=none -mouse: type=ps2, enabled=1, toggle=ctrl+mbutton +mouse: type=ps2, enabled=0, toggle=ctrl+mbutton speaker: enabled=1, mode=gui -parport1: enabled=1, file=none -parport2: enabled=0 -com1: enabled=0 -com2: enabled=0 -com3: enabled=0 -com4: enabled=0 +cpu: count=1 ips=200000000, reset_on_triple_fault=0 diff --git a/bochsrc.txt.old b/bochsrc.txt.old new file mode 100644 index 0000000..2c06d9e --- /dev/null +++ b/bochsrc.txt.old @@ -0,0 +1,57 @@ +# configuration file generated by Bochs +plugin_ctrl: unmapped=1, biosdev=1, speaker=1, extfpuirq=1, parallel=1, serial=1, iodebug=1 +config_interface: textconfig +display_library: sdl2 +memory: host=32, guest=32 +romimage: file="/usr/local/Cellar/bochs/2.6.9_2/share/bochs/BIOS-bochs-latest", address=0x0, options=none +vgaromimage: file="/usr/local/Cellar/bochs/2.6.9_2/share/bochs/VGABIOS-lgpl-latest" +boot: cdrom +floppy_bootsig_check: disabled=0 +# no floppya +# no floppyb +ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14 +ata0-master: type=none, path=ext2.img, mode=flat, cylinders=65, heads=16, spt=63, model="Generic 1234", biosdetect=auto, translation=auto +ata0-slave: type=cdrom, path=os.iso, status=inserted, model="Generic 1234", biosdetect=auto +ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15 +ata1-master: type=none +ata1-slave: type=none +ata2: enabled=0 +ata3: enabled=0 +optromimage1: file=none +optromimage2: file=none +optromimage3: file=none +optromimage4: file=none +optramimage1: file=none +optramimage2: file=none +optramimage3: file=none +optramimage4: file=none +pci: enabled=1, chipset=i440fx +vga: extension=vbe, update_freq=5, realtime=1 +cpu: count=1:1:1, ips=640000000, quantum=16, model=bx_generic, reset_on_triple_fault=0, cpuid_limit_winnt=0, ignore_bad_msrs=1, mwait_is_nop=0 +cpuid: level=6, stepping=3, model=3, family=6, vendor_string="GenuineIntel", brand_string=" Intel(R) Pentium(R) 4 CPU " +cpuid: mmx=1, apic=xapic, simd=sse2, sse4a=0, misaligned_sse=0, sep=1, movbe=0, adx=0 +cpuid: aes=0, sha=0, xsave=0, xsaveopt=0, avx_f16c=0, avx_fma=0, bmi=0, xop=0, fma4=0 +cpuid: tbm=0, x86_64=1, 1g_pages=0, pcid=0, fsgsbase=0, smep=0, smap=0, mwait=1, vmx=1 +print_timestamps: enabled=0 +debugger_log: - +magic_break: enabled=1 +port_e9_hack: enabled=0 +private_colormap: enabled=0 +clock: sync=none, time0=local, rtc_sync=0 +# no cmosimage +# no loader +log: bochsout.txt +logprefix: %t%e%d +debug: action=ignore, pci=report, pci2isa=report, pci_ide=report +info: action=report +error: action=report +panic: action=ask +keyboard: type=mf, serial_delay=250, paste_delay=100000, user_shortcut=none +mouse: type=ps2, enabled=1, toggle=ctrl+mbutton +speaker: enabled=1, mode=gui +parport1: enabled=1, file=none +parport2: enabled=0 +com1: enabled=0 +com2: enabled=0 +com3: enabled=0 +com4: enabled=0 diff --git a/fsdrv/log b/fsdrv/log new file mode 100644 index 0000000..6a0cecc --- /dev/null +++ b/fsdrv/log @@ -0,0 +1,1502 @@ + +fsdrv/fsdrv: file format ELF32-i386 + +Disassembly of section .text: +main: + 8048080: 8d 4c 24 04 leal 4(%esp), %ecx + 8048084: 83 e4 f0 andl $-16, %esp + 8048087: ff 71 fc pushl -4(%ecx) + 804808a: 55 pushl %ebp + 804808b: 89 e5 movl %esp, %ebp + 804808d: 51 pushl %ecx + 804808e: 83 ec 24 subl $36, %esp + 8048091: 83 ec 0c subl $12, %esp + 8048094: 6a 10 pushl $16 + 8048096: e8 90 00 00 00 calll 144 + 804809b: 83 c4 10 addl $16, %esp + 804809e: 89 45 f4 movl %eax, -12(%ebp) + 80480a1: e8 a1 0d 00 00 calll 3489 + 80480a6: 83 ec 0c subl $12, %esp + 80480a9: 68 24 10 00 00 pushl $4132 + 80480ae: e8 ec 05 00 00 calll 1516 + 80480b3: 83 c4 10 addl $16, %esp + 80480b6: 89 45 e0 movl %eax, -32(%ebp) + 80480b9: 83 ec 04 subl $4, %esp + 80480bc: 68 24 10 00 00 pushl $4132 + 80480c1: 8d 45 e0 leal -32(%ebp), %eax + 80480c4: 50 pushl %eax + 80480c5: ff 75 f4 pushl -12(%ebp) + 80480c8: e8 9a 00 00 00 calll 154 + 80480cd: 83 c4 10 addl $16, %esp + 80480d0: 8b 45 e4 movl -28(%ebp), %eax + 80480d3: 85 c0 testl %eax, %eax + 80480d5: 75 07 jne 7 + 80480d7: e8 6b 0d 00 00 calll 3435 + 80480dc: eb 30 jmp 48 + 80480de: 8b 45 e0 movl -32(%ebp), %eax + 80480e1: 89 45 f0 movl %eax, -16(%ebp) + 80480e4: 8b 45 e4 movl -28(%ebp), %eax + 80480e7: 89 45 e8 movl %eax, -24(%ebp) + 80480ea: 8b 45 f4 movl -12(%ebp), %eax + 80480ed: 89 45 e4 movl %eax, -28(%ebp) + 80480f0: 8b 45 f0 movl -16(%ebp), %eax + 80480f3: c6 80 1c 10 00 00 00 movb $0, 4124(%eax) + 80480fa: 83 ec 0c subl $12, %esp + 80480fd: 8d 45 e0 leal -32(%ebp), %eax + 8048100: 50 pushl %eax + 8048101: e8 4d 00 00 00 calll 77 + 8048106: 83 c4 10 addl $16, %esp + 8048109: e8 39 0d 00 00 calll 3385 + 804810e: 8b 45 e0 movl -32(%ebp), %eax + 8048111: 83 ec 0c subl $12, %esp + 8048114: 50 pushl %eax + 8048115: e8 f2 07 00 00 calll 2034 + 804811a: 83 c4 10 addl $16, %esp + 804811d: eb 82 jmp -126 + 804811f: 90 nop + +_start: + 8048120: e8 5c 00 00 00 calll 92 <__stdio_init> + 8048125: e8 56 ff ff ff calll -170
+ 804812a: c3 retl + +mailbox_new: + 804812b: 55 pushl %ebp + 804812c: 89 e5 movl %esp, %ebp + 804812e: 53 pushl %ebx + 804812f: 83 ec 14 subl $20, %esp + 8048132: 8b 45 08 movl 8(%ebp), %eax + 8048135: 66 89 45 e8 movw %ax, -24(%ebp) + 8048139: 8b 45 e8 movl -24(%ebp), %eax + 804813c: 89 c3 movl %eax, %ebx + 804813e: b8 0e 00 00 00 movl $14, %eax + 8048143: cd 50 int $80 + 8048145: 89 d8 movl %ebx, %eax + 8048147: 89 45 f8 movl %eax, -8(%ebp) + 804814a: 8b 45 f8 movl -8(%ebp), %eax + 804814d: 83 c4 14 addl $20, %esp + 8048150: 5b popl %ebx + 8048151: 5d popl %ebp + 8048152: c3 retl + +mailbox_send_msg: + 8048153: 55 pushl %ebp + 8048154: 89 e5 movl %esp, %ebp + 8048156: 53 pushl %ebx + 8048157: 8b 45 08 movl 8(%ebp), %eax + 804815a: 89 c3 movl %eax, %ebx + 804815c: b8 07 00 00 00 movl $7, %eax + 8048161: cd 50 int $80 + 8048163: 90 nop + 8048164: 5b popl %ebx + 8048165: 5d popl %ebp + 8048166: c3 retl + +mailbox_get_msg: + 8048167: 55 pushl %ebp + 8048168: 89 e5 movl %esp, %ebp + 804816a: 53 pushl %ebx + 804816b: 8b 45 08 movl 8(%ebp), %eax + 804816e: 8b 4d 0c movl 12(%ebp), %ecx + 8048171: 8b 55 10 movl 16(%ebp), %edx + 8048174: 89 c3 movl %eax, %ebx + 8048176: b8 06 00 00 00 movl $6, %eax + 804817b: cd 50 int $80 + 804817d: 90 nop + 804817e: 5b popl %ebx + 804817f: 5d popl %ebp + 8048180: c3 retl + +__stdio_init: + 8048181: 55 pushl %ebp + 8048182: 89 e5 movl %esp, %ebp + 8048184: 83 ec 08 subl $8, %esp + 8048187: 83 ec 0c subl $12, %esp + 804818a: 6a 10 pushl $16 + 804818c: e8 9a ff ff ff calll -102 + 8048191: 83 c4 10 addl $16, %esp + 8048194: a3 80 a5 04 08 movl %eax, 134522240 + 8048199: 90 nop + 804819a: c9 leave + 804819b: c3 retl + +make_msg: + 804819c: 55 pushl %ebp + 804819d: 89 e5 movl %esp, %ebp + 804819f: 83 ec 18 subl $24, %esp + 80481a2: 83 ec 0c subl $12, %esp + 80481a5: 68 24 10 00 00 pushl $4132 + 80481aa: e8 f0 04 00 00 calll 1264 + 80481af: 83 c4 10 addl $16, %esp + 80481b2: 89 45 f4 movl %eax, -12(%ebp) + 80481b5: 8b 45 f4 movl -12(%ebp), %eax + 80481b8: 8b 55 08 movl 8(%ebp), %edx + 80481bb: 89 10 movl %edx, (%eax) + 80481bd: 8b 15 84 a5 04 08 movl 134522244, %edx + 80481c3: 8b 45 f4 movl -12(%ebp), %eax + 80481c6: 89 50 04 movl %edx, 4(%eax) + 80481c9: 8b 45 f4 movl -12(%ebp), %eax + 80481cc: 8b 55 14 movl 20(%ebp), %edx + 80481cf: 89 50 14 movl %edx, 20(%eax) + 80481d2: 8b 45 f4 movl -12(%ebp), %eax + 80481d5: 8b 55 18 movl 24(%ebp), %edx + 80481d8: 89 90 20 10 00 00 movl %edx, 4128(%eax) + 80481de: a1 84 a5 04 08 movl 134522244, %eax + 80481e3: 40 incl %eax + 80481e4: a3 84 a5 04 08 movl %eax, 134522244 + 80481e9: 83 7d 0c 00 cmpl $0, 12(%ebp) + 80481ed: 74 15 je 21 + 80481ef: 8b 45 f4 movl -12(%ebp), %eax + 80481f2: 83 c0 08 addl $8, %eax + 80481f5: 83 ec 08 subl $8, %esp + 80481f8: ff 75 0c pushl 12(%ebp) + 80481fb: 50 pushl %eax + 80481fc: e8 94 08 00 00 calll 2196 + 8048201: 83 c4 10 addl $16, %esp + 8048204: 83 7d 10 00 cmpl $0, 16(%ebp) + 8048208: 74 15 je 21 + 804820a: 8b 45 f4 movl -12(%ebp), %eax + 804820d: 83 c0 18 addl $24, %eax + 8048210: 83 ec 08 subl $8, %esp + 8048213: ff 75 10 pushl 16(%ebp) + 8048216: 50 pushl %eax + 8048217: e8 79 08 00 00 calll 2169 + 804821c: 83 c4 10 addl $16, %esp + 804821f: 8b 45 f4 movl -12(%ebp), %eax + 8048222: c9 leave + 8048223: c3 retl + +fopen: + 8048224: 55 pushl %ebp + 8048225: 89 e5 movl %esp, %ebp + 8048227: 83 ec 28 subl $40, %esp + 804822a: 83 ec 0c subl $12, %esp + 804822d: ff 75 08 pushl 8(%ebp) + 8048230: e8 3b 08 00 00 calll 2107 + 8048235: 83 c4 10 addl $16, %esp + 8048238: 3d 00 10 00 00 cmpl $4096, %eax + 804823d: 77 13 ja 19 + 804823f: 83 ec 0c subl $12, %esp + 8048242: ff 75 0c pushl 12(%ebp) + 8048245: e8 26 08 00 00 calll 2086 + 804824a: 83 c4 10 addl $16, %esp + 804824d: 83 f8 0a cmpl $10, %eax + 8048250: 76 0a jbe 10 + 8048252: b8 00 00 00 00 movl $0, %eax + 8048257: e9 09 01 00 00 jmp 265 + 804825c: 83 ec 0c subl $12, %esp + 804825f: 6a 00 pushl $0 + 8048261: 6a 00 pushl $0 + 8048263: ff 75 08 pushl 8(%ebp) + 8048266: ff 75 0c pushl 12(%ebp) + 8048269: 6a 00 pushl $0 + 804826b: e8 2c ff ff ff calll -212 + 8048270: 83 c4 20 addl $32, %esp + 8048273: 89 45 f4 movl %eax, -12(%ebp) + 8048276: a1 80 a5 04 08 movl 134522240, %eax + 804827b: 89 45 e0 movl %eax, -32(%ebp) + 804827e: c7 45 e4 03 00 00 00 movl $3, -28(%ebp) + 8048285: 8b 45 f4 movl -12(%ebp), %eax + 8048288: 89 45 dc movl %eax, -36(%ebp) + 804828b: c7 45 e8 24 10 00 00 movl $4132, -24(%ebp) + 8048292: 83 ec 0c subl $12, %esp + 8048295: 8d 45 dc leal -36(%ebp), %eax + 8048298: 50 pushl %eax + 8048299: e8 b5 fe ff ff calll -331 + 804829e: 83 c4 10 addl $16, %esp + 80482a1: 8b 45 dc movl -36(%ebp), %eax + 80482a4: 83 ec 0c subl $12, %esp + 80482a7: 50 pushl %eax + 80482a8: e8 5f 06 00 00 calll 1631 + 80482ad: 83 c4 10 addl $16, %esp + 80482b0: e8 92 0b 00 00 calll 2962 + 80482b5: 83 ec 0c subl $12, %esp + 80482b8: 68 24 10 00 00 pushl $4132 + 80482bd: e8 dd 03 00 00 calll 989 + 80482c2: 83 c4 10 addl $16, %esp + 80482c5: 89 45 dc movl %eax, -36(%ebp) + 80482c8: e8 7a 0b 00 00 calll 2938 + 80482cd: a1 80 a5 04 08 movl 134522240, %eax + 80482d2: 83 ec 04 subl $4, %esp + 80482d5: 68 24 10 00 00 pushl $4132 + 80482da: 8d 55 dc leal -36(%ebp), %edx + 80482dd: 52 pushl %edx + 80482de: 50 pushl %eax + 80482df: e8 83 fe ff ff calll -381 + 80482e4: 83 c4 10 addl $16, %esp + 80482e7: eb 1f jmp 31 + 80482e9: e8 59 0b 00 00 calll 2905 + 80482ee: a1 80 a5 04 08 movl 134522240, %eax + 80482f3: 83 ec 04 subl $4, %esp + 80482f6: 68 24 10 00 00 pushl $4132 + 80482fb: 8d 55 dc leal -36(%ebp), %edx + 80482fe: 52 pushl %edx + 80482ff: 50 pushl %eax + 8048300: e8 62 fe ff ff calll -414 + 8048305: 83 c4 10 addl $16, %esp + 8048308: 8b 45 e0 movl -32(%ebp), %eax + 804830b: 85 c0 testl %eax, %eax + 804830d: 74 da je -38 + 804830f: 8b 45 dc movl -36(%ebp), %eax + 8048312: 89 45 f0 movl %eax, -16(%ebp) + 8048315: 8b 45 f0 movl -16(%ebp), %eax + 8048318: 8a 80 1c 10 00 00 movb 4124(%eax), %al + 804831e: 84 c0 testb %al, %al + 8048320: 74 16 je 22 + 8048322: 8b 45 dc movl -36(%ebp), %eax + 8048325: 83 ec 0c subl $12, %esp + 8048328: 50 pushl %eax + 8048329: e8 de 05 00 00 calll 1502 + 804832e: 83 c4 10 addl $16, %esp + 8048331: b8 00 00 00 00 movl $0, %eax + 8048336: eb 2d jmp 45 + 8048338: 83 ec 0c subl $12, %esp + 804833b: 6a 04 pushl $4 + 804833d: e8 5d 03 00 00 calll 861 + 8048342: 83 c4 10 addl $16, %esp + 8048345: 89 45 ec movl %eax, -20(%ebp) + 8048348: 8b 45 f0 movl -16(%ebp), %eax + 804834b: 8b 50 14 movl 20(%eax), %edx + 804834e: 8b 45 ec movl -20(%ebp), %eax + 8048351: 89 10 movl %edx, (%eax) + 8048353: 8b 45 dc movl -36(%ebp), %eax + 8048356: 83 ec 0c subl $12, %esp + 8048359: 50 pushl %eax + 804835a: e8 ad 05 00 00 calll 1453 + 804835f: 83 c4 10 addl $16, %esp + 8048362: 8b 45 ec movl -20(%ebp), %eax + 8048365: c9 leave + 8048366: c3 retl + +fputc: + 8048367: 55 pushl %ebp + 8048368: 89 e5 movl %esp, %ebp + 804836a: 83 ec 28 subl $40, %esp + 804836d: 8b 45 0c movl 12(%ebp), %eax + 8048370: 8b 00 movl (%eax), %eax + 8048372: 83 ec 0c subl $12, %esp + 8048375: ff 75 08 pushl 8(%ebp) + 8048378: 50 pushl %eax + 8048379: 6a 00 pushl $0 + 804837b: 6a 00 pushl $0 + 804837d: 6a 01 pushl $1 + 804837f: e8 18 fe ff ff calll -488 + 8048384: 83 c4 20 addl $32, %esp + 8048387: 89 45 f4 movl %eax, -12(%ebp) + 804838a: a1 80 a5 04 08 movl 134522240, %eax + 804838f: 89 45 e4 movl %eax, -28(%ebp) + 8048392: c7 45 e8 03 00 00 00 movl $3, -24(%ebp) + 8048399: 8b 45 f4 movl -12(%ebp), %eax + 804839c: 89 45 e0 movl %eax, -32(%ebp) + 804839f: c7 45 ec 24 10 00 00 movl $4132, -20(%ebp) + 80483a6: 83 ec 0c subl $12, %esp + 80483a9: 8d 45 e0 leal -32(%ebp), %eax + 80483ac: 50 pushl %eax + 80483ad: e8 a1 fd ff ff calll -607 + 80483b2: 83 c4 10 addl $16, %esp + 80483b5: 8b 45 e0 movl -32(%ebp), %eax + 80483b8: 83 ec 0c subl $12, %esp + 80483bb: 50 pushl %eax + 80483bc: e8 4b 05 00 00 calll 1355 + 80483c1: 83 c4 10 addl $16, %esp + 80483c4: e8 7e 0a 00 00 calll 2686 + 80483c9: 83 ec 0c subl $12, %esp + 80483cc: 68 24 10 00 00 pushl $4132 + 80483d1: e8 c9 02 00 00 calll 713 + 80483d6: 83 c4 10 addl $16, %esp + 80483d9: 89 45 e0 movl %eax, -32(%ebp) + 80483dc: e8 66 0a 00 00 calll 2662 + 80483e1: a1 80 a5 04 08 movl 134522240, %eax + 80483e6: 83 ec 04 subl $4, %esp + 80483e9: 68 24 10 00 00 pushl $4132 + 80483ee: 8d 55 e0 leal -32(%ebp), %edx + 80483f1: 52 pushl %edx + 80483f2: 50 pushl %eax + 80483f3: e8 6f fd ff ff calll -657 + 80483f8: 83 c4 10 addl $16, %esp + 80483fb: eb 1f jmp 31 + 80483fd: e8 45 0a 00 00 calll 2629 + 8048402: a1 80 a5 04 08 movl 134522240, %eax + 8048407: 83 ec 04 subl $4, %esp + 804840a: 68 24 10 00 00 pushl $4132 + 804840f: 8d 55 e0 leal -32(%ebp), %edx + 8048412: 52 pushl %edx + 8048413: 50 pushl %eax + 8048414: e8 4e fd ff ff calll -690 + 8048419: 83 c4 10 addl $16, %esp + 804841c: 8b 45 e4 movl -28(%ebp), %eax + 804841f: 85 c0 testl %eax, %eax + 8048421: 74 da je -38 + 8048423: 8b 45 e0 movl -32(%ebp), %eax + 8048426: 89 45 f0 movl %eax, -16(%ebp) + 8048429: 8b 45 f0 movl -16(%ebp), %eax + 804842c: 8a 80 1c 10 00 00 movb 4124(%eax), %al + 8048432: 84 c0 testb %al, %al + 8048434: 74 16 je 22 + 8048436: 8b 45 e0 movl -32(%ebp), %eax + 8048439: 83 ec 0c subl $12, %esp + 804843c: 50 pushl %eax + 804843d: e8 ca 04 00 00 calll 1226 + 8048442: 83 c4 10 addl $16, %esp + 8048445: b8 ff ff ff ff movl $4294967295, %eax + 804844a: eb 12 jmp 18 + 804844c: 8b 45 e0 movl -32(%ebp), %eax + 804844f: 83 ec 0c subl $12, %esp + 8048452: 50 pushl %eax + 8048453: e8 b4 04 00 00 calll 1204 + 8048458: 83 c4 10 addl $16, %esp + 804845b: 8b 45 08 movl 8(%ebp), %eax + 804845e: c9 leave + 804845f: c3 retl + +get_bmap_bit: + 8048460: 55 pushl %ebp + 8048461: 89 e5 movl %esp, %ebp + 8048463: 53 pushl %ebx + 8048464: 83 ec 10 subl $16, %esp + 8048467: 8b 45 0c movl 12(%ebp), %eax + 804846a: c1 e8 03 shrl $3, %eax + 804846d: 89 45 f8 movl %eax, -8(%ebp) + 8048470: 8b 45 0c movl 12(%ebp), %eax + 8048473: 83 e0 07 andl $7, %eax + 8048476: 89 45 f4 movl %eax, -12(%ebp) + 8048479: 8b 55 08 movl 8(%ebp), %edx + 804847c: 8b 45 f8 movl -8(%ebp), %eax + 804847f: 01 d0 addl %edx, %eax + 8048481: 8a 00 movb (%eax), %al + 8048483: 88 45 f3 movb %al, -13(%ebp) + 8048486: 0f be 55 f3 movsbl -13(%ebp), %edx + 804848a: 8b 45 f4 movl -12(%ebp), %eax + 804848d: bb 01 00 00 00 movl $1, %ebx + 8048492: 88 c1 movb %al, %cl + 8048494: d3 e3 shll %cl, %ebx + 8048496: 89 d8 movl %ebx, %eax + 8048498: 21 d0 andl %edx, %eax + 804849a: 85 c0 testl %eax, %eax + 804849c: 0f 9f c0 setg %al + 804849f: 83 c4 10 addl $16, %esp + 80484a2: 5b popl %ebx + 80484a3: 5d popl %ebp + 80484a4: c3 retl + +set_bmap_bit: + 80484a5: 55 pushl %ebp + 80484a6: 89 e5 movl %esp, %ebp + 80484a8: 53 pushl %ebx + 80484a9: 83 ec 10 subl $16, %esp + 80484ac: 8b 45 0c movl 12(%ebp), %eax + 80484af: c1 e8 03 shrl $3, %eax + 80484b2: 89 45 f8 movl %eax, -8(%ebp) + 80484b5: 8b 45 0c movl 12(%ebp), %eax + 80484b8: 83 e0 07 andl $7, %eax + 80484bb: 89 45 f4 movl %eax, -12(%ebp) + 80484be: 8b 55 08 movl 8(%ebp), %edx + 80484c1: 8b 45 f8 movl -8(%ebp), %eax + 80484c4: 01 d0 addl %edx, %eax + 80484c6: 8a 10 movb (%eax), %dl + 80484c8: 8b 45 f4 movl -12(%ebp), %eax + 80484cb: bb 01 00 00 00 movl $1, %ebx + 80484d0: 88 c1 movb %al, %cl + 80484d2: d3 e3 shll %cl, %ebx + 80484d4: 89 d8 movl %ebx, %eax + 80484d6: 88 c3 movb %al, %bl + 80484d8: 8b 4d 08 movl 8(%ebp), %ecx + 80484db: 8b 45 f8 movl -8(%ebp), %eax + 80484de: 01 c8 addl %ecx, %eax + 80484e0: 09 da orl %ebx, %edx + 80484e2: 88 10 movb %dl, (%eax) + 80484e4: 90 nop + 80484e5: 83 c4 10 addl $16, %esp + 80484e8: 5b popl %ebx + 80484e9: 5d popl %ebp + 80484ea: c3 retl + +clear_bmap_bit: + 80484eb: 55 pushl %ebp + 80484ec: 89 e5 movl %esp, %ebp + 80484ee: 53 pushl %ebx + 80484ef: 83 ec 10 subl $16, %esp + 80484f2: 8b 45 0c movl 12(%ebp), %eax + 80484f5: c1 e8 03 shrl $3, %eax + 80484f8: 89 45 f8 movl %eax, -8(%ebp) + 80484fb: 8b 45 0c movl 12(%ebp), %eax + 80484fe: 83 e0 07 andl $7, %eax + 8048501: 89 45 f4 movl %eax, -12(%ebp) + 8048504: 8b 55 08 movl 8(%ebp), %edx + 8048507: 8b 45 f8 movl -8(%ebp), %eax + 804850a: 01 d0 addl %edx, %eax + 804850c: 8a 10 movb (%eax), %dl + 804850e: 8b 45 f4 movl -12(%ebp), %eax + 8048511: bb 01 00 00 00 movl $1, %ebx + 8048516: 88 c1 movb %al, %cl + 8048518: d3 e3 shll %cl, %ebx + 804851a: 89 d8 movl %ebx, %eax + 804851c: f7 d0 notl %eax + 804851e: 88 c3 movb %al, %bl + 8048520: 8b 4d 08 movl 8(%ebp), %ecx + 8048523: 8b 45 f8 movl -8(%ebp), %eax + 8048526: 01 c8 addl %ecx, %eax + 8048528: 21 da andl %ebx, %edx + 804852a: 88 10 movb %dl, (%eax) + 804852c: 90 nop + 804852d: 83 c4 10 addl $16, %esp + 8048530: 5b popl %ebx + 8048531: 5d popl %ebp + 8048532: c3 retl + +reserve_block: + 8048533: 55 pushl %ebp + 8048534: 89 e5 movl %esp, %ebp + 8048536: 53 pushl %ebx + 8048537: 83 ec 34 subl $52, %esp + 804853a: 8b 45 08 movl 8(%ebp), %eax + 804853d: c1 e0 0c shll $12, %eax + 8048540: c1 e8 05 shrl $5, %eax + 8048543: 89 45 f0 movl %eax, -16(%ebp) + 8048546: 8b 45 f0 movl -16(%ebp), %eax + 8048549: ba 00 00 00 00 movl $0, %edx + 804854e: 89 45 c8 movl %eax, -56(%ebp) + 8048551: 89 55 cc movl %edx, -52(%ebp) + 8048554: df 6d c8 fildll -56(%ebp) + 8048557: dd 5d e0 fstpl -32(%ebp) + 804855a: dd 45 e0 fldl -32(%ebp) + 804855d: dd 05 f8 8f 04 08 fldl 134516728 + 8048563: de f9 fdivrp %st(1) + 8048565: d9 5d dc fstps -36(%ebp) + 8048568: 8b 45 dc movl -36(%ebp), %eax + 804856b: 83 ec 0c subl $12, %esp + 804856e: 50 pushl %eax + 804856f: e8 2c 09 00 00 calll 2348 + 8048574: 83 c4 10 addl $16, %esp + 8048577: d9 7d da fnstcw -38(%ebp) + 804857a: 66 8b 45 da movw -38(%ebp), %ax + 804857e: 80 cc 0c orb $12, %ah + 8048581: 66 89 45 d8 movw %ax, -40(%ebp) + 8048585: d9 6d d8 fldcw -40(%ebp) + 8048588: df 7d d0 fistpll -48(%ebp) + 804858b: d9 6d da fldcw -38(%ebp) + 804858e: 8b 45 d0 movl -48(%ebp), %eax + 8048591: 8b 55 d4 movl -44(%ebp), %edx + 8048594: 8b 1d a0 cd 04 08 movl 134532512, %ebx + 804859a: 83 ec 0c subl $12, %esp + 804859d: 50 pushl %eax + 804859e: e8 8f 09 00 00 calll 2447 + 80485a3: 83 c4 10 addl $16, %esp + 80485a6: 89 c2 movl %eax, %edx + 80485a8: 89 d8 movl %ebx, %eax + 80485aa: c1 e0 02 shll $2, %eax + 80485ad: 01 d8 addl %ebx, %eax + 80485af: c1 e0 02 shll $2, %eax + 80485b2: 05 a0 a5 04 08 addl $134522272, %eax + 80485b7: 89 10 movl %edx, (%eax) + 80485b9: 8b 15 a0 cd 04 08 movl 134532512, %edx + 80485bf: 89 d0 movl %edx, %eax + 80485c1: c1 e0 02 shll $2, %eax + 80485c4: 01 d0 addl %edx, %eax + 80485c6: c1 e0 02 shll $2, %eax + 80485c9: 8d 90 a4 a5 04 08 leal 134522276(%eax), %edx + 80485cf: 8b 45 f0 movl -16(%ebp), %eax + 80485d2: 89 02 movl %eax, (%edx) + 80485d4: 8b 15 a0 cd 04 08 movl 134532512, %edx + 80485da: 8b 45 f0 movl -16(%ebp), %eax + 80485dd: 8d 0c c5 00 00 00 00 leal (,%eax,8), %ecx + 80485e4: 89 d0 movl %edx, %eax + 80485e6: c1 e0 02 shll $2, %eax + 80485e9: 01 d0 addl %edx, %eax + 80485eb: c1 e0 02 shll $2, %eax + 80485ee: 05 a8 a5 04 08 addl $134522280, %eax + 80485f3: 89 08 movl %ecx, (%eax) + 80485f5: 8b 15 a0 cd 04 08 movl 134532512, %edx + 80485fb: 89 d0 movl %edx, %eax + 80485fd: c1 e0 02 shll $2, %eax + 8048600: 01 d0 addl %edx, %eax + 8048602: c1 e0 02 shll $2, %eax + 8048605: 05 a0 a5 04 08 addl $134522272, %eax + 804860a: 8b 00 movl (%eax), %eax + 804860c: 89 45 ec movl %eax, -20(%ebp) + 804860f: 8b 15 a0 cd 04 08 movl 134532512, %edx + 8048615: 89 d0 movl %edx, %eax + 8048617: c1 e0 02 shll $2, %eax + 804861a: 01 d0 addl %edx, %eax + 804861c: c1 e0 02 shll $2, %eax + 804861f: 05 a4 a5 04 08 addl $134522276, %eax + 8048624: 8b 00 movl (%eax), %eax + 8048626: 89 45 e8 movl %eax, -24(%ebp) + 8048629: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) + 8048630: eb 0e jmp 14 + 8048632: 8b 55 ec movl -20(%ebp), %edx + 8048635: 8b 45 f4 movl -12(%ebp), %eax + 8048638: 01 d0 addl %edx, %eax + 804863a: c6 00 00 movb $0, (%eax) + 804863d: ff 45 f4 incl -12(%ebp) + 8048640: 8b 45 f4 movl -12(%ebp), %eax + 8048643: 3b 45 e8 cmpl -24(%ebp), %eax + 8048646: 72 ea jb -22 + 8048648: 8b 15 a0 cd 04 08 movl 134532512, %edx + 804864e: 8b 45 08 movl 8(%ebp), %eax + 8048651: c1 e0 0c shll $12, %eax + 8048654: 89 c1 movl %eax, %ecx + 8048656: 89 d0 movl %edx, %eax + 8048658: c1 e0 02 shll $2, %eax + 804865b: 01 d0 addl %edx, %eax + 804865d: c1 e0 02 shll $2, %eax + 8048660: 05 ac a5 04 08 addl $134522284, %eax + 8048665: 89 08 movl %ecx, (%eax) + 8048667: 8b 1d a0 cd 04 08 movl 134532512, %ebx + 804866d: 83 ec 0c subl $12, %esp + 8048670: ff 75 08 pushl 8(%ebp) + 8048673: e8 ba 08 00 00 calll 2234 + 8048678: 83 c4 10 addl $16, %esp + 804867b: 89 c2 movl %eax, %edx + 804867d: 89 d8 movl %ebx, %eax + 804867f: c1 e0 02 shll $2, %eax + 8048682: 01 d8 addl %ebx, %eax + 8048684: c1 e0 02 shll $2, %eax + 8048687: 05 b0 a5 04 08 addl $134522288, %eax + 804868c: 89 10 movl %edx, (%eax) + 804868e: a1 a0 cd 04 08 movl 134532512, %eax + 8048693: 40 incl %eax + 8048694: a3 a0 cd 04 08 movl %eax, 134532512 + 8048699: 90 nop + 804869a: 8b 5d fc movl -4(%ebp), %ebx + 804869d: c9 leave + 804869e: c3 retl + +malloc: + 804869f: 55 pushl %ebp + 80486a0: 89 e5 movl %esp, %ebp + 80486a2: 57 pushl %edi + 80486a3: 56 pushl %esi + 80486a4: 53 pushl %ebx + 80486a5: 83 ec 7c subl $124, %esp + 80486a8: 8b 45 08 movl 8(%ebp), %eax + 80486ab: ba 00 00 00 00 movl $0, %edx + 80486b0: 89 45 80 movl %eax, -128(%ebp) + 80486b3: 89 55 84 movl %edx, -124(%ebp) + 80486b6: df 6d 80 fildll -128(%ebp) + 80486b9: d9 5d 94 fstps -108(%ebp) + 80486bc: d9 45 94 flds -108(%ebp) + 80486bf: d9 05 00 90 04 08 flds 134516736 + 80486c5: de f9 fdivrp %st(1) + 80486c7: 83 ec 0c subl $12, %esp + 80486ca: 8d 64 24 fc leal -4(%esp), %esp + 80486ce: d9 1c 24 fstps (%esp) + 80486d1: e8 ca 07 00 00 calll 1994 + 80486d6: 83 c4 10 addl $16, %esp + 80486d9: d9 7d 92 fnstcw -110(%ebp) + 80486dc: 66 8b 45 92 movw -110(%ebp), %ax + 80486e0: 80 cc 0c orb $12, %ah + 80486e3: 66 89 45 90 movw %ax, -112(%ebp) + 80486e7: d9 6d 90 fldcw -112(%ebp) + 80486ea: df 7d 88 fistpll -120(%ebp) + 80486ed: d9 6d 92 fldcw -110(%ebp) + 80486f0: 8b 45 88 movl -120(%ebp), %eax + 80486f3: 8b 55 8c movl -116(%ebp), %edx + 80486f6: 89 45 c0 movl %eax, -64(%ebp) + 80486f9: 83 45 c0 03 addl $3, -64(%ebp) + 80486fd: c7 45 e4 ff ff ff ff movl $4294967295, -28(%ebp) + 8048704: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) + 804870b: e9 ec 00 00 00 jmp 236 + 8048710: 8b 55 dc movl -36(%ebp), %edx + 8048713: 89 d0 movl %edx, %eax + 8048715: c1 e0 02 shll $2, %eax + 8048718: 01 d0 addl %edx, %eax + 804871a: c1 e0 02 shll $2, %eax + 804871d: 8d 90 a0 a5 04 08 leal 134522272(%eax), %edx + 8048723: 8d 45 98 leal -104(%ebp), %eax + 8048726: 89 d3 movl %edx, %ebx + 8048728: ba 05 00 00 00 movl $5, %edx + 804872d: 89 c7 movl %eax, %edi + 804872f: 89 de movl %ebx, %esi + 8048731: 89 d1 movl %edx, %ecx + 8048733: f3 a5 rep movsl (%esi), %es:(%edi) + 8048735: 8b 45 a4 movl -92(%ebp), %eax + 8048738: 39 45 08 cmpl %eax, 8(%ebp) + 804873b: 0f 87 aa 00 00 00 ja 170 + 8048741: 8b 45 98 movl -104(%ebp), %eax + 8048744: 89 45 bc movl %eax, -68(%ebp) + 8048747: 8b 45 9c movl -100(%ebp), %eax + 804874a: 89 45 b8 movl %eax, -72(%ebp) + 804874d: c7 45 d4 00 00 00 00 movl $0, -44(%ebp) + 8048754: e9 83 00 00 00 jmp 131 + 8048759: c6 45 d3 00 movb $0, -45(%ebp) + 804875d: 8b 45 c0 movl -64(%ebp), %eax + 8048760: 89 45 d8 movl %eax, -40(%ebp) + 8048763: 8b 45 d4 movl -44(%ebp), %eax + 8048766: c1 e0 03 shll $3, %eax + 8048769: 89 45 c8 movl %eax, -56(%ebp) + 804876c: 83 ec 08 subl $8, %esp + 804876f: ff 75 c8 pushl -56(%ebp) + 8048772: ff 75 bc pushl -68(%ebp) + 8048775: e8 e6 fc ff ff calll -794 + 804877a: 83 c4 10 addl $16, %esp + 804877d: 88 45 b7 movb %al, -73(%ebp) + 8048780: 80 7d d3 00 cmpb $0, -45(%ebp) + 8048784: 74 27 je 39 + 8048786: 80 7d b7 00 cmpb $0, -73(%ebp) + 804878a: 74 1c je 28 + 804878c: 83 7d d8 00 cmpl $0, -40(%ebp) + 8048790: 75 08 jne 8 + 8048792: 8b 45 cc movl -52(%ebp), %eax + 8048795: 89 45 e0 movl %eax, -32(%ebp) + 8048798: eb 39 jmp 57 + 804879a: 8b 45 c8 movl -56(%ebp), %eax + 804879d: c1 e8 03 shrl $3, %eax + 80487a0: 01 45 d4 addl %eax, -44(%ebp) + 80487a3: ff 4d d4 decl -44(%ebp) + 80487a6: eb 2b jmp 43 + 80487a8: ff 4d d8 decl -40(%ebp) + 80487ab: eb 13 jmp 19 + 80487ad: 80 7d b7 00 cmpb $0, -73(%ebp) + 80487b1: 75 0d jne 13 + 80487b3: c6 45 d3 01 movb $1, -45(%ebp) + 80487b7: 8b 45 c8 movl -56(%ebp), %eax + 80487ba: 89 45 cc movl %eax, -52(%ebp) + 80487bd: ff 4d d8 decl -40(%ebp) + 80487c0: 83 7d d8 00 cmpl $0, -40(%ebp) + 80487c4: 75 08 jne 8 + 80487c6: 8b 45 cc movl -52(%ebp), %eax + 80487c9: 89 45 e0 movl %eax, -32(%ebp) + 80487cc: eb 05 jmp 5 + 80487ce: ff 45 c8 incl -56(%ebp) + 80487d1: eb 99 jmp -103 + 80487d3: 83 7d d8 00 cmpl $0, -40(%ebp) + 80487d7: 74 11 je 17 + 80487d9: ff 45 d4 incl -44(%ebp) + 80487dc: 8b 45 d4 movl -44(%ebp), %eax + 80487df: 3b 45 b8 cmpl -72(%ebp), %eax + 80487e2: 0f 82 71 ff ff ff jb -143 + 80487e8: eb 01 jmp 1 + 80487ea: 90 nop + 80487eb: 83 7d d8 00 cmpl $0, -40(%ebp) + 80487ef: 75 08 jne 8 + 80487f1: 8b 45 dc movl -36(%ebp), %eax + 80487f4: 89 45 e4 movl %eax, -28(%ebp) + 80487f7: eb 11 jmp 17 + 80487f9: ff 45 dc incl -36(%ebp) + 80487fc: a1 a0 cd 04 08 movl 134532512, %eax + 8048801: 39 45 dc cmpl %eax, -36(%ebp) + 8048804: 0f 82 06 ff ff ff jb -250 + 804880a: 83 7d e4 ff cmpl $-1, -28(%ebp) + 804880e: 75 20 jne 32 + 8048810: 83 ec 0c subl $12, %esp + 8048813: 68 00 01 00 00 pushl $256 + 8048818: e8 16 fd ff ff calll -746 + 804881d: 83 c4 10 addl $16, %esp + 8048820: 83 ec 0c subl $12, %esp + 8048823: ff 75 08 pushl 8(%ebp) + 8048826: e8 74 fe ff ff calll -396 + 804882b: 83 c4 10 addl $16, %esp + 804882e: eb 78 jmp 120 + 8048830: c7 45 c4 00 00 00 00 movl $0, -60(%ebp) + 8048837: eb 1b jmp 27 + 8048839: 8b 55 e0 movl -32(%ebp), %edx + 804883c: 8b 45 c4 movl -60(%ebp), %eax + 804883f: 01 c2 addl %eax, %edx + 8048841: 8b 45 98 movl -104(%ebp), %eax + 8048844: 83 ec 08 subl $8, %esp + 8048847: 52 pushl %edx + 8048848: 50 pushl %eax + 8048849: e8 57 fc ff ff calll -937 + 804884e: 83 c4 10 addl $16, %esp + 8048851: ff 45 c4 incl -60(%ebp) + 8048854: 8b 45 c4 movl -60(%ebp), %eax + 8048857: 3b 45 c0 cmpl -64(%ebp), %eax + 804885a: 72 dd jb -35 + 804885c: 8b 45 e0 movl -32(%ebp), %eax + 804885f: c1 e0 03 shll $3, %eax + 8048862: 83 c0 0c addl $12, %eax + 8048865: 89 45 b0 movl %eax, -80(%ebp) + 8048868: 8b 45 a8 movl -88(%ebp), %eax + 804886b: 8b 55 b0 movl -80(%ebp), %edx + 804886e: 83 ea 0c subl $12, %edx + 8048871: 01 d0 addl %edx, %eax + 8048873: 89 45 ac movl %eax, -84(%ebp) + 8048876: 8b 45 ac movl -84(%ebp), %eax + 8048879: 8b 55 c0 movl -64(%ebp), %edx + 804887c: 89 10 movl %edx, (%eax) + 804887e: 8b 45 ac movl -84(%ebp), %eax + 8048881: 8d 50 04 leal 4(%eax), %edx + 8048884: 8b 45 e0 movl -32(%ebp), %eax + 8048887: 89 02 movl %eax, (%edx) + 8048889: 8b 45 ac movl -84(%ebp), %eax + 804888c: 8d 50 08 leal 8(%eax), %edx + 804888f: 8b 45 e4 movl -28(%ebp), %eax + 8048892: 89 02 movl %eax, (%edx) + 8048894: 8b 45 a4 movl -92(%ebp), %eax + 8048897: 2b 45 08 subl 8(%ebp), %eax + 804889a: 83 e8 0c subl $12, %eax + 804889d: 89 45 a4 movl %eax, -92(%ebp) + 80488a0: 8b 55 a8 movl -88(%ebp), %edx + 80488a3: 8b 45 b0 movl -80(%ebp), %eax + 80488a6: 01 d0 addl %edx, %eax + 80488a8: 8d 65 f4 leal -12(%ebp), %esp + 80488ab: 5b popl %ebx + 80488ac: 5e popl %esi + 80488ad: 5f popl %edi + 80488ae: 5d popl %ebp + 80488af: c3 retl + +realloc: + 80488b0: 55 pushl %ebp + 80488b1: 89 e5 movl %esp, %ebp + 80488b3: 83 ec 18 subl $24, %esp + 80488b6: 83 ec 0c subl $12, %esp + 80488b9: ff 75 0c pushl 12(%ebp) + 80488bc: e8 de fd ff ff calll -546 + 80488c1: 83 c4 10 addl $16, %esp + 80488c4: 89 45 f4 movl %eax, -12(%ebp) + 80488c7: 83 7d 08 00 cmpl $0, 8(%ebp) + 80488cb: 75 05 jne 5 + 80488cd: 8b 45 f4 movl -12(%ebp), %eax + 80488d0: eb 38 jmp 56 + 80488d2: 8b 45 08 movl 8(%ebp), %eax + 80488d5: 8b 40 f4 movl -12(%eax), %eax + 80488d8: 89 45 f0 movl %eax, -16(%ebp) + 80488db: 8b 45 f0 movl -16(%ebp), %eax + 80488de: c1 e0 02 shll $2, %eax + 80488e1: 83 ec 04 subl $4, %esp + 80488e4: 50 pushl %eax + 80488e5: ff 75 08 pushl 8(%ebp) + 80488e8: ff 75 f4 pushl -12(%ebp) + 80488eb: e8 b0 00 00 00 calll 176 + 80488f0: 83 c4 10 addl $16, %esp + 80488f3: 83 ec 0c subl $12, %esp + 80488f6: ff 75 08 pushl 8(%ebp) + 80488f9: e8 0e 00 00 00 calll 14 + 80488fe: 83 c4 10 addl $16, %esp + 8048901: 8b 45 f4 movl -12(%ebp), %eax + 8048904: 89 45 08 movl %eax, 8(%ebp) + 8048907: 8b 45 f4 movl -12(%ebp), %eax + 804890a: c9 leave + 804890b: c3 retl + +free: + 804890c: 55 pushl %ebp + 804890d: 89 e5 movl %esp, %ebp + 804890f: 57 pushl %edi + 8048910: 56 pushl %esi + 8048911: 53 pushl %ebx + 8048912: 83 ec 30 subl $48, %esp + 8048915: 8b 45 08 movl 8(%ebp), %eax + 8048918: 83 e8 0c subl $12, %eax + 804891b: 89 45 ec movl %eax, -20(%ebp) + 804891e: 8b 45 ec movl -20(%ebp), %eax + 8048921: 8b 00 movl (%eax), %eax + 8048923: 89 45 e8 movl %eax, -24(%ebp) + 8048926: 8b 45 ec movl -20(%ebp), %eax + 8048929: 8b 40 04 movl 4(%eax), %eax + 804892c: 89 45 e4 movl %eax, -28(%ebp) + 804892f: 8b 45 ec movl -20(%ebp), %eax + 8048932: 8b 40 08 movl 8(%eax), %eax + 8048935: 89 45 e0 movl %eax, -32(%ebp) + 8048938: 8b 55 e0 movl -32(%ebp), %edx + 804893b: 89 d0 movl %edx, %eax + 804893d: c1 e0 02 shll $2, %eax + 8048940: 01 d0 addl %edx, %eax + 8048942: c1 e0 02 shll $2, %eax + 8048945: 8d 90 a0 a5 04 08 leal 134522272(%eax), %edx + 804894b: 8d 45 cc leal -52(%ebp), %eax + 804894e: 89 d3 movl %edx, %ebx + 8048950: ba 05 00 00 00 movl $5, %edx + 8048955: 89 c7 movl %eax, %edi + 8048957: 89 de movl %ebx, %esi + 8048959: 89 d1 movl %edx, %ecx + 804895b: f3 a5 rep movsl (%esi), %es:(%edi) + 804895d: c7 45 f0 00 00 00 00 movl $0, -16(%ebp) + 8048964: eb 18 jmp 24 + 8048966: 8b 55 e4 movl -28(%ebp), %edx + 8048969: 8b 45 f0 movl -16(%ebp), %eax + 804896c: 01 c2 addl %eax, %edx + 804896e: 8b 45 cc movl -52(%ebp), %eax + 8048971: 52 pushl %edx + 8048972: 50 pushl %eax + 8048973: e8 73 fb ff ff calll -1165 + 8048978: 83 c4 08 addl $8, %esp + 804897b: ff 45 f0 incl -16(%ebp) + 804897e: 8b 45 f0 movl -16(%ebp), %eax + 8048981: 3b 45 e8 cmpl -24(%ebp), %eax + 8048984: 72 e0 jb -32 + 8048986: 8b 45 d8 movl -40(%ebp), %eax + 8048989: 8b 55 e8 movl -24(%ebp), %edx + 804898c: 83 c2 03 addl $3, %edx + 804898f: c1 e2 02 shll $2, %edx + 8048992: 01 d0 addl %edx, %eax + 8048994: 89 45 d8 movl %eax, -40(%ebp) + 8048997: 90 nop + 8048998: 8d 65 f4 leal -12(%ebp), %esp + 804899b: 5b popl %ebx + 804899c: 5e popl %esi + 804899d: 5f popl %edi + 804899e: 5d popl %ebp + 804899f: c3 retl + +memcpy: + 80489a0: 55 pushl %ebp + 80489a1: 89 e5 movl %esp, %ebp + 80489a3: 83 ec 10 subl $16, %esp + 80489a6: 8b 45 0c movl 12(%ebp), %eax + 80489a9: 89 45 f8 movl %eax, -8(%ebp) + 80489ac: 8b 45 08 movl 8(%ebp), %eax + 80489af: 89 45 f4 movl %eax, -12(%ebp) + 80489b2: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 80489b9: eb 17 jmp 23 + 80489bb: 8b 55 f8 movl -8(%ebp), %edx + 80489be: 8b 45 fc movl -4(%ebp), %eax + 80489c1: 01 d0 addl %edx, %eax + 80489c3: 8b 4d f4 movl -12(%ebp), %ecx + 80489c6: 8b 55 fc movl -4(%ebp), %edx + 80489c9: 01 ca addl %ecx, %edx + 80489cb: 8a 00 movb (%eax), %al + 80489cd: 88 02 movb %al, (%edx) + 80489cf: ff 45 fc incl -4(%ebp) + 80489d2: 8b 45 fc movl -4(%ebp), %eax + 80489d5: 3b 45 10 cmpl 16(%ebp), %eax + 80489d8: 72 e1 jb -31 + 80489da: 8b 45 08 movl 8(%ebp), %eax + 80489dd: c9 leave + 80489de: c3 retl + +memset: + 80489df: 55 pushl %ebp + 80489e0: 89 e5 movl %esp, %ebp + 80489e2: 83 ec 10 subl $16, %esp + 80489e5: 8b 45 08 movl 8(%ebp), %eax + 80489e8: 89 45 f8 movl %eax, -8(%ebp) + 80489eb: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 80489f2: eb 10 jmp 16 + 80489f4: 8b 55 f8 movl -8(%ebp), %edx + 80489f7: 8b 45 fc movl -4(%ebp), %eax + 80489fa: 01 d0 addl %edx, %eax + 80489fc: 8b 55 0c movl 12(%ebp), %edx + 80489ff: 88 10 movb %dl, (%eax) + 8048a01: ff 45 fc incl -4(%ebp) + 8048a04: 8b 45 fc movl -4(%ebp), %eax + 8048a07: 3b 45 10 cmpl 16(%ebp), %eax + 8048a0a: 72 e8 jb -24 + 8048a0c: 8b 45 08 movl 8(%ebp), %eax + 8048a0f: c9 leave + 8048a10: c3 retl + +strcmp: + 8048a11: 55 pushl %ebp + 8048a12: 89 e5 movl %esp, %ebp + 8048a14: 83 ec 10 subl $16, %esp + 8048a17: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048a1e: eb 18 jmp 24 + 8048a20: 8b 55 fc movl -4(%ebp), %edx + 8048a23: 8b 45 08 movl 8(%ebp), %eax + 8048a26: 01 d0 addl %edx, %eax + 8048a28: 8a 00 movb (%eax), %al + 8048a2a: 84 c0 testb %al, %al + 8048a2c: 75 07 jne 7 + 8048a2e: b8 00 00 00 00 movl $0, %eax + 8048a33: eb 39 jmp 57 + 8048a35: ff 45 fc incl -4(%ebp) + 8048a38: 8b 55 fc movl -4(%ebp), %edx + 8048a3b: 8b 45 08 movl 8(%ebp), %eax + 8048a3e: 01 d0 addl %edx, %eax + 8048a40: 8a 10 movb (%eax), %dl + 8048a42: 8b 4d fc movl -4(%ebp), %ecx + 8048a45: 8b 45 0c movl 12(%ebp), %eax + 8048a48: 01 c8 addl %ecx, %eax + 8048a4a: 8a 00 movb (%eax), %al + 8048a4c: 38 c2 cmpb %al, %dl + 8048a4e: 74 d0 je -48 + 8048a50: 8b 55 fc movl -4(%ebp), %edx + 8048a53: 8b 45 08 movl 8(%ebp), %eax + 8048a56: 01 d0 addl %edx, %eax + 8048a58: 8a 00 movb (%eax), %al + 8048a5a: 0f be d0 movsbl %al, %edx + 8048a5d: 8b 4d fc movl -4(%ebp), %ecx + 8048a60: 8b 45 0c movl 12(%ebp), %eax + 8048a63: 01 c8 addl %ecx, %eax + 8048a65: 8a 00 movb (%eax), %al + 8048a67: 0f be c0 movsbl %al, %eax + 8048a6a: 29 c2 subl %eax, %edx + 8048a6c: 89 d0 movl %edx, %eax + 8048a6e: c9 leave + 8048a6f: c3 retl + +strlen: + 8048a70: 55 pushl %ebp + 8048a71: 89 e5 movl %esp, %ebp + 8048a73: 83 ec 10 subl $16, %esp + 8048a76: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048a7d: eb 03 jmp 3 + 8048a7f: ff 45 fc incl -4(%ebp) + 8048a82: 8b 55 08 movl 8(%ebp), %edx + 8048a85: 8b 45 fc movl -4(%ebp), %eax + 8048a88: 01 d0 addl %edx, %eax + 8048a8a: 8a 00 movb (%eax), %al + 8048a8c: 84 c0 testb %al, %al + 8048a8e: 75 ef jne -17 + 8048a90: 8b 45 fc movl -4(%ebp), %eax + 8048a93: c9 leave + 8048a94: c3 retl + +strcpy: + 8048a95: 55 pushl %ebp + 8048a96: 89 e5 movl %esp, %ebp + 8048a98: 83 ec 10 subl $16, %esp + 8048a9b: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048aa2: eb 17 jmp 23 + 8048aa4: 8b 55 0c movl 12(%ebp), %edx + 8048aa7: 8b 45 fc movl -4(%ebp), %eax + 8048aaa: 01 d0 addl %edx, %eax + 8048aac: 8b 4d 08 movl 8(%ebp), %ecx + 8048aaf: 8b 55 fc movl -4(%ebp), %edx + 8048ab2: 01 ca addl %ecx, %edx + 8048ab4: 8a 00 movb (%eax), %al + 8048ab6: 88 02 movb %al, (%edx) + 8048ab8: ff 45 fc incl -4(%ebp) + 8048abb: ff 75 0c pushl 12(%ebp) + 8048abe: e8 ad ff ff ff calll -83 + 8048ac3: 83 c4 04 addl $4, %esp + 8048ac6: 39 45 fc cmpl %eax, -4(%ebp) + 8048ac9: 72 d9 jb -39 + 8048acb: 8b 55 08 movl 8(%ebp), %edx + 8048ace: 8b 45 fc movl -4(%ebp), %eax + 8048ad1: 01 d0 addl %edx, %eax + 8048ad3: c6 00 00 movb $0, (%eax) + 8048ad6: 8b 45 08 movl 8(%ebp), %eax + 8048ad9: c9 leave + 8048ada: c3 retl + +strrev: + 8048adb: 55 pushl %ebp + 8048adc: 89 e5 movl %esp, %ebp + 8048ade: 83 ec 10 subl $16, %esp + 8048ae1: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048ae8: ff 75 08 pushl 8(%ebp) + 8048aeb: e8 80 ff ff ff calll -128 + 8048af0: 83 c4 04 addl $4, %esp + 8048af3: 48 decl %eax + 8048af4: 89 45 f8 movl %eax, -8(%ebp) + 8048af7: eb 34 jmp 52 + 8048af9: 8b 55 fc movl -4(%ebp), %edx + 8048afc: 8b 45 08 movl 8(%ebp), %eax + 8048aff: 01 d0 addl %edx, %eax + 8048b01: 8a 00 movb (%eax), %al + 8048b03: 88 45 f7 movb %al, -9(%ebp) + 8048b06: 8b 55 f8 movl -8(%ebp), %edx + 8048b09: 8b 45 08 movl 8(%ebp), %eax + 8048b0c: 01 d0 addl %edx, %eax + 8048b0e: 8b 4d fc movl -4(%ebp), %ecx + 8048b11: 8b 55 08 movl 8(%ebp), %edx + 8048b14: 01 ca addl %ecx, %edx + 8048b16: 8a 00 movb (%eax), %al + 8048b18: 88 02 movb %al, (%edx) + 8048b1a: 8b 55 f8 movl -8(%ebp), %edx + 8048b1d: 8b 45 08 movl 8(%ebp), %eax + 8048b20: 01 c2 addl %eax, %edx + 8048b22: 8a 45 f7 movb -9(%ebp), %al + 8048b25: 88 02 movb %al, (%edx) + 8048b27: ff 45 fc incl -4(%ebp) + 8048b2a: ff 4d f8 decl -8(%ebp) + 8048b2d: 8b 45 fc movl -4(%ebp), %eax + 8048b30: 3b 45 f8 cmpl -8(%ebp), %eax + 8048b33: 7c c4 jl -60 + 8048b35: 8b 45 08 movl 8(%ebp), %eax + 8048b38: c9 leave + 8048b39: c3 retl + +int_to_ascii: + 8048b3a: 55 pushl %ebp + 8048b3b: 89 e5 movl %esp, %ebp + 8048b3d: 83 ec 10 subl $16, %esp + 8048b40: 8b 45 08 movl 8(%ebp), %eax + 8048b43: 89 45 f8 movl %eax, -8(%ebp) + 8048b46: 83 7d f8 00 cmpl $0, -8(%ebp) + 8048b4a: 79 03 jns 3 + 8048b4c: f7 5d 08 negl 8(%ebp) + 8048b4f: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048b56: 8b 45 08 movl 8(%ebp), %eax + 8048b59: b9 0a 00 00 00 movl $10, %ecx + 8048b5e: 99 cltd + 8048b5f: f7 f9 idivl %ecx + 8048b61: 89 d0 movl %edx, %eax + 8048b63: 8d 48 30 leal 48(%eax), %ecx + 8048b66: 8b 45 fc movl -4(%ebp), %eax + 8048b69: 8d 50 01 leal 1(%eax), %edx + 8048b6c: 89 55 fc movl %edx, -4(%ebp) + 8048b6f: 89 c2 movl %eax, %edx + 8048b71: 8b 45 0c movl 12(%ebp), %eax + 8048b74: 01 d0 addl %edx, %eax + 8048b76: 88 ca movb %cl, %dl + 8048b78: 88 10 movb %dl, (%eax) + 8048b7a: 8b 4d 08 movl 8(%ebp), %ecx + 8048b7d: b8 67 66 66 66 movl $1717986919, %eax + 8048b82: f7 e9 imull %ecx + 8048b84: c1 fa 02 sarl $2, %edx + 8048b87: 89 c8 movl %ecx, %eax + 8048b89: c1 f8 1f sarl $31, %eax + 8048b8c: 29 c2 subl %eax, %edx + 8048b8e: 89 d0 movl %edx, %eax + 8048b90: 89 45 08 movl %eax, 8(%ebp) + 8048b93: 83 7d 08 00 cmpl $0, 8(%ebp) + 8048b97: 7f bd jg -67 + 8048b99: 83 7d f8 00 cmpl $0, -8(%ebp) + 8048b9d: 79 13 jns 19 + 8048b9f: 8b 45 fc movl -4(%ebp), %eax + 8048ba2: 8d 50 01 leal 1(%eax), %edx + 8048ba5: 89 55 fc movl %edx, -4(%ebp) + 8048ba8: 89 c2 movl %eax, %edx + 8048baa: 8b 45 0c movl 12(%ebp), %eax + 8048bad: 01 d0 addl %edx, %eax + 8048baf: c6 00 2d movb $45, (%eax) + 8048bb2: 8b 55 fc movl -4(%ebp), %edx + 8048bb5: 8b 45 0c movl 12(%ebp), %eax + 8048bb8: 01 d0 addl %edx, %eax + 8048bba: c6 00 00 movb $0, (%eax) + 8048bbd: ff 75 0c pushl 12(%ebp) + 8048bc0: e8 16 ff ff ff calll -234 + 8048bc5: 83 c4 04 addl $4, %esp + 8048bc8: 90 nop + 8048bc9: c9 leave + 8048bca: c3 retl + +hex_to_ascii: + 8048bcb: 55 pushl %ebp + 8048bcc: 89 e5 movl %esp, %ebp + 8048bce: 83 ec 18 subl $24, %esp + 8048bd1: 83 ec 08 subl $8, %esp + 8048bd4: 6a 30 pushl $48 + 8048bd6: ff 75 0c pushl 12(%ebp) + 8048bd9: e8 cb 00 00 00 calll 203 + 8048bde: 83 c4 10 addl $16, %esp + 8048be1: 83 ec 08 subl $8, %esp + 8048be4: 6a 78 pushl $120 + 8048be6: ff 75 0c pushl 12(%ebp) + 8048be9: e8 bb 00 00 00 calll 187 + 8048bee: 83 c4 10 addl $16, %esp + 8048bf1: c6 45 f7 00 movb $0, -9(%ebp) + 8048bf5: c7 45 f0 1c 00 00 00 movl $28, -16(%ebp) + 8048bfc: eb 61 jmp 97 + 8048bfe: 8b 45 f0 movl -16(%ebp), %eax + 8048c01: 8b 55 08 movl 8(%ebp), %edx + 8048c04: 88 c1 movb %al, %cl + 8048c06: d3 fa sarl %cl, %edx + 8048c08: 89 d0 movl %edx, %eax + 8048c0a: 83 e0 0f andl $15, %eax + 8048c0d: 89 45 ec movl %eax, -20(%ebp) + 8048c10: 83 7d ec 00 cmpl $0, -20(%ebp) + 8048c14: 75 06 jne 6 + 8048c16: 80 7d f7 00 cmpb $0, -9(%ebp) + 8048c1a: 74 3e je 62 + 8048c1c: c6 45 f7 01 movb $1, -9(%ebp) + 8048c20: 83 7d ec 0a cmpl $10, -20(%ebp) + 8048c24: 76 1a jbe 26 + 8048c26: 8b 45 ec movl -20(%ebp), %eax + 8048c29: 83 c0 57 addl $87, %eax + 8048c2c: 0f be c0 movsbl %al, %eax + 8048c2f: 83 ec 08 subl $8, %esp + 8048c32: 50 pushl %eax + 8048c33: ff 75 0c pushl 12(%ebp) + 8048c36: e8 6e 00 00 00 calll 110 + 8048c3b: 83 c4 10 addl $16, %esp + 8048c3e: eb 1b jmp 27 + 8048c40: 8b 45 ec movl -20(%ebp), %eax + 8048c43: 83 c0 30 addl $48, %eax + 8048c46: 0f be c0 movsbl %al, %eax + 8048c49: 83 ec 08 subl $8, %esp + 8048c4c: 50 pushl %eax + 8048c4d: ff 75 0c pushl 12(%ebp) + 8048c50: e8 54 00 00 00 calll 84 + 8048c55: 83 c4 10 addl $16, %esp + 8048c58: eb 01 jmp 1 + 8048c5a: 90 nop + 8048c5b: 83 6d f0 04 subl $4, -16(%ebp) + 8048c5f: 83 7d f0 00 cmpl $0, -16(%ebp) + 8048c63: 7f 99 jg -103 + 8048c65: 8b 45 08 movl 8(%ebp), %eax + 8048c68: 83 e0 0f andl $15, %eax + 8048c6b: 89 45 ec movl %eax, -20(%ebp) + 8048c6e: 83 7d ec 09 cmpl $9, -20(%ebp) + 8048c72: 76 1a jbe 26 + 8048c74: 8b 45 ec movl -20(%ebp), %eax + 8048c77: 83 c0 57 addl $87, %eax + 8048c7a: 0f be c0 movsbl %al, %eax + 8048c7d: 83 ec 08 subl $8, %esp + 8048c80: 50 pushl %eax + 8048c81: ff 75 0c pushl 12(%ebp) + 8048c84: e8 20 00 00 00 calll 32 + 8048c89: 83 c4 10 addl $16, %esp + 8048c8c: eb 18 jmp 24 + 8048c8e: 8b 45 ec movl -20(%ebp), %eax + 8048c91: 83 c0 30 addl $48, %eax + 8048c94: 0f be c0 movsbl %al, %eax + 8048c97: 83 ec 08 subl $8, %esp + 8048c9a: 50 pushl %eax + 8048c9b: ff 75 0c pushl 12(%ebp) + 8048c9e: e8 06 00 00 00 calll 6 + 8048ca3: 83 c4 10 addl $16, %esp + 8048ca6: 90 nop + 8048ca7: c9 leave + 8048ca8: c3 retl + +append: + 8048ca9: 55 pushl %ebp + 8048caa: 89 e5 movl %esp, %ebp + 8048cac: 83 ec 14 subl $20, %esp + 8048caf: 8b 45 0c movl 12(%ebp), %eax + 8048cb2: 88 45 ec movb %al, -20(%ebp) + 8048cb5: ff 75 08 pushl 8(%ebp) + 8048cb8: e8 b3 fd ff ff calll -589 + 8048cbd: 83 c4 04 addl $4, %esp + 8048cc0: 89 45 fc movl %eax, -4(%ebp) + 8048cc3: 8b 55 fc movl -4(%ebp), %edx + 8048cc6: 8b 45 08 movl 8(%ebp), %eax + 8048cc9: 01 c2 addl %eax, %edx + 8048ccb: 8a 45 ec movb -20(%ebp), %al + 8048cce: 88 02 movb %al, (%edx) + 8048cd0: 8b 45 fc movl -4(%ebp), %eax + 8048cd3: 8d 50 01 leal 1(%eax), %edx + 8048cd6: 8b 45 08 movl 8(%ebp), %eax + 8048cd9: 01 d0 addl %edx, %eax + 8048cdb: c6 00 00 movb $0, (%eax) + 8048cde: 90 nop + 8048cdf: c9 leave + 8048ce0: c3 retl + +backspace: + 8048ce1: 55 pushl %ebp + 8048ce2: 89 e5 movl %esp, %ebp + 8048ce4: 83 ec 10 subl $16, %esp + 8048ce7: ff 75 08 pushl 8(%ebp) + 8048cea: e8 81 fd ff ff calll -639 + 8048cef: 83 c4 04 addl $4, %esp + 8048cf2: 89 45 fc movl %eax, -4(%ebp) + 8048cf5: 8b 45 fc movl -4(%ebp), %eax + 8048cf8: 8d 50 ff leal -1(%eax), %edx + 8048cfb: 8b 45 08 movl 8(%ebp), %eax + 8048cfe: 01 d0 addl %edx, %eax + 8048d00: c6 00 00 movb $0, (%eax) + 8048d03: 90 nop + 8048d04: c9 leave + 8048d05: c3 retl + +strtok_delim_check: + 8048d06: 55 pushl %ebp + 8048d07: 89 e5 movl %esp, %ebp + 8048d09: 83 ec 10 subl $16, %esp + 8048d0c: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) + 8048d13: eb 37 jmp 55 + 8048d15: 8b 15 a4 cd 04 08 movl 134532516, %edx + 8048d1b: a1 a8 cd 04 08 movl 134532520, %eax + 8048d20: 01 d0 addl %edx, %eax + 8048d22: 8a 10 movb (%eax), %dl + 8048d24: 8b 4d 08 movl 8(%ebp), %ecx + 8048d27: 8b 45 fc movl -4(%ebp), %eax + 8048d2a: 01 c8 addl %ecx, %eax + 8048d2c: 8a 00 movb (%eax), %al + 8048d2e: 38 c2 cmpb %al, %dl + 8048d30: 74 13 je 19 + 8048d32: 8b 15 a4 cd 04 08 movl 134532516, %edx + 8048d38: a1 a8 cd 04 08 movl 134532520, %eax + 8048d3d: 01 d0 addl %edx, %eax + 8048d3f: 8a 00 movb (%eax), %al + 8048d41: 84 c0 testb %al, %al + 8048d43: 75 04 jne 4 + 8048d45: b0 00 movb $0, %al + 8048d47: eb 15 jmp 21 + 8048d49: ff 45 fc incl -4(%ebp) + 8048d4c: ff 75 08 pushl 8(%ebp) + 8048d4f: e8 1c fd ff ff calll -740 + 8048d54: 83 c4 04 addl $4, %esp + 8048d57: 39 45 fc cmpl %eax, -4(%ebp) + 8048d5a: 72 b9 jb -71 + 8048d5c: b0 01 movb $1, %al + 8048d5e: c9 leave + 8048d5f: c3 retl + +strtok: + 8048d60: 55 pushl %ebp + 8048d61: 89 e5 movl %esp, %ebp + 8048d63: 83 ec 18 subl $24, %esp + 8048d66: 83 7d 08 00 cmpl $0, 8(%ebp) + 8048d6a: 74 12 je 18 + 8048d6c: 8b 45 08 movl 8(%ebp), %eax + 8048d6f: a3 a4 cd 04 08 movl %eax, 134532516 + 8048d74: c7 05 a8 cd 04 08 00 00 00 00 movl $0, 134532520 + 8048d7e: a1 a4 cd 04 08 movl 134532516, %eax + 8048d83: 85 c0 testl %eax, %eax + 8048d85: 74 19 je 25 + 8048d87: a1 a4 cd 04 08 movl 134532516, %eax + 8048d8c: 50 pushl %eax + 8048d8d: e8 de fc ff ff calll -802 + 8048d92: 83 c4 04 addl $4, %esp + 8048d95: 89 c2 movl %eax, %edx + 8048d97: a1 a8 cd 04 08 movl 134532520, %eax + 8048d9c: 39 c2 cmpl %eax, %edx + 8048d9e: 73 0a jae 10 + 8048da0: b8 00 00 00 00 movl $0, %eax + 8048da5: e9 9b 00 00 00 jmp 155 + 8048daa: 83 ec 0c subl $12, %esp + 8048dad: 6a 20 pushl $32 + 8048daf: e8 eb f8 ff ff calll -1813 + 8048db4: 83 c4 10 addl $16, %esp + 8048db7: 89 45 f4 movl %eax, -12(%ebp) + 8048dba: 8b 45 f4 movl -12(%ebp), %eax + 8048dbd: c6 00 00 movb $0, (%eax) + 8048dc0: c7 45 f0 20 00 00 00 movl $32, -16(%ebp) + 8048dc7: eb 5c jmp 92 + 8048dc9: 83 ec 0c subl $12, %esp + 8048dcc: ff 75 f4 pushl -12(%ebp) + 8048dcf: e8 9c fc ff ff calll -868 + 8048dd4: 83 c4 10 addl $16, %esp + 8048dd7: 40 incl %eax + 8048dd8: 39 45 f0 cmpl %eax, -16(%ebp) + 8048ddb: 75 1c jne 28 + 8048ddd: 8b 45 f0 movl -16(%ebp), %eax + 8048de0: 83 c0 20 addl $32, %eax + 8048de3: 83 ec 08 subl $8, %esp + 8048de6: 50 pushl %eax + 8048de7: ff 75 f4 pushl -12(%ebp) + 8048dea: e8 c1 fa ff ff calll -1343 + 8048def: 83 c4 10 addl $16, %esp + 8048df2: 89 45 f4 movl %eax, -12(%ebp) + 8048df5: 83 45 f0 20 addl $32, -16(%ebp) + 8048df9: 8b 15 a4 cd 04 08 movl 134532516, %edx + 8048dff: a1 a8 cd 04 08 movl 134532520, %eax + 8048e04: 01 d0 addl %edx, %eax + 8048e06: 8a 00 movb (%eax), %al + 8048e08: 0f be c0 movsbl %al, %eax + 8048e0b: 83 ec 08 subl $8, %esp + 8048e0e: 50 pushl %eax + 8048e0f: ff 75 f4 pushl -12(%ebp) + 8048e12: e8 92 fe ff ff calll -366 + 8048e17: 83 c4 10 addl $16, %esp + 8048e1a: a1 a8 cd 04 08 movl 134532520, %eax + 8048e1f: 40 incl %eax + 8048e20: a3 a8 cd 04 08 movl %eax, 134532520 + 8048e25: 83 ec 0c subl $12, %esp + 8048e28: ff 75 0c pushl 12(%ebp) + 8048e2b: e8 d6 fe ff ff calll -298 + 8048e30: 83 c4 10 addl $16, %esp + 8048e33: 84 c0 testb %al, %al + 8048e35: 75 92 jne -110 + 8048e37: a1 a8 cd 04 08 movl 134532520, %eax + 8048e3c: 40 incl %eax + 8048e3d: a3 a8 cd 04 08 movl %eax, 134532520 + 8048e42: 8b 45 f4 movl -12(%ebp), %eax + 8048e45: c9 leave + 8048e46: c3 retl + +yield: + 8048e47: 55 pushl %ebp + 8048e48: 89 e5 movl %esp, %ebp + 8048e4a: b8 01 00 00 00 movl $1, %eax + 8048e4f: cd 50 int $80 + 8048e51: 90 nop + 8048e52: 5d popl %ebp + 8048e53: c3 retl + +createTask: + 8048e54: 55 pushl %ebp + 8048e55: 89 e5 movl %esp, %ebp + 8048e57: 53 pushl %ebx + 8048e58: 8b 45 08 movl 8(%ebp), %eax + 8048e5b: 89 c3 movl %eax, %ebx + 8048e5d: b8 02 00 00 00 movl $2, %eax + 8048e62: cd 50 int $80 + 8048e64: 90 nop + 8048e65: 5b popl %ebx + 8048e66: 5d popl %ebp + 8048e67: c3 retl + +createTaskCr3: + 8048e68: 55 pushl %ebp + 8048e69: 89 e5 movl %esp, %ebp + 8048e6b: 53 pushl %ebx + 8048e6c: 8b 45 08 movl 8(%ebp), %eax + 8048e6f: 8b 55 0c movl 12(%ebp), %edx + 8048e72: 89 c3 movl %eax, %ebx + 8048e74: 89 d1 movl %edx, %ecx + 8048e76: b8 09 00 00 00 movl $9, %eax + 8048e7b: cd 50 int $80 + 8048e7d: 90 nop + 8048e7e: 5b popl %ebx + 8048e7f: 5d popl %ebp + 8048e80: c3 retl + +createTaskCr3Param: + 8048e81: 55 pushl %ebp + 8048e82: 89 e5 movl %esp, %ebp + 8048e84: 56 pushl %esi + 8048e85: 53 pushl %ebx + 8048e86: 8b 45 08 movl 8(%ebp), %eax + 8048e89: 8b 4d 0c movl 12(%ebp), %ecx + 8048e8c: 8b 55 10 movl 16(%ebp), %edx + 8048e8f: 8b 75 14 movl 20(%ebp), %esi + 8048e92: 89 c3 movl %eax, %ebx + 8048e94: b8 0c 00 00 00 movl $12, %eax + 8048e99: cd 50 int $80 + 8048e9b: 90 nop + 8048e9c: 5b popl %ebx + 8048e9d: 5e popl %esi + 8048e9e: 5d popl %ebp + 8048e9f: c3 retl + +ceilf: + 8048ea0: 55 pushl %ebp + 8048ea1: 89 e5 movl %esp, %ebp + 8048ea3: 83 ec 18 subl $24, %esp + 8048ea6: d9 45 08 flds 8(%ebp) + 8048ea9: d9 7d ee fnstcw -18(%ebp) + 8048eac: 66 8b 45 ee movw -18(%ebp), %ax + 8048eb0: 80 cc 0c orb $12, %ah + 8048eb3: 66 89 45 ec movw %ax, -20(%ebp) + 8048eb7: d9 6d ec fldcw -20(%ebp) + 8048eba: db 5d fc fistpl -4(%ebp) + 8048ebd: d9 6d ee fldcw -18(%ebp) + 8048ec0: db 45 fc fildl -4(%ebp) + 8048ec3: d9 45 08 flds 8(%ebp) + 8048ec6: da e9 fucompp + 8048ec8: df e0 fnstsw %ax + 8048eca: 80 e4 45 andb $69, %ah + 8048ecd: 80 f4 40 xorb $64, %ah + 8048ed0: 75 05 jne 5 + 8048ed2: db 45 fc fildl -4(%ebp) + 8048ed5: eb 0a jmp 10 + 8048ed7: 8b 45 fc movl -4(%ebp), %eax + 8048eda: 40 incl %eax + 8048edb: 89 45 e8 movl %eax, -24(%ebp) + 8048ede: db 45 e8 fildl -24(%ebp) + 8048ee1: c9 leave + 8048ee2: c3 retl + +ceil: + 8048ee3: 55 pushl %ebp + 8048ee4: 89 e5 movl %esp, %ebp + 8048ee6: 83 ec 20 subl $32, %esp + 8048ee9: 8b 45 08 movl 8(%ebp), %eax + 8048eec: 89 45 e8 movl %eax, -24(%ebp) + 8048eef: 8b 45 0c movl 12(%ebp), %eax + 8048ef2: 89 45 ec movl %eax, -20(%ebp) + 8048ef5: dd 45 e8 fldl -24(%ebp) + 8048ef8: d9 7d e6 fnstcw -26(%ebp) + 8048efb: 66 8b 45 e6 movw -26(%ebp), %ax + 8048eff: 80 cc 0c orb $12, %ah + 8048f02: 66 89 45 e4 movw %ax, -28(%ebp) + 8048f06: d9 6d e4 fldcw -28(%ebp) + 8048f09: db 5d fc fistpl -4(%ebp) + 8048f0c: d9 6d e6 fldcw -26(%ebp) + 8048f0f: db 45 fc fildl -4(%ebp) + 8048f12: dd 45 e8 fldl -24(%ebp) + 8048f15: da e9 fucompp + 8048f17: df e0 fnstsw %ax + 8048f19: 80 e4 45 andb $69, %ah + 8048f1c: 80 f4 40 xorb $64, %ah + 8048f1f: 75 05 jne 5 + 8048f21: db 45 fc fildl -4(%ebp) + 8048f24: eb 0a jmp 10 + 8048f26: 8b 45 fc movl -4(%ebp), %eax + 8048f29: 40 incl %eax + 8048f2a: 89 45 e0 movl %eax, -32(%ebp) + 8048f2d: db 45 e0 fildl -32(%ebp) + 8048f30: c9 leave + 8048f31: c3 retl + +alloc_memory: + 8048f32: 55 pushl %ebp + 8048f33: 89 e5 movl %esp, %ebp + 8048f35: 53 pushl %ebx + 8048f36: 83 ec 10 subl $16, %esp + 8048f39: 8b 45 08 movl 8(%ebp), %eax + 8048f3c: 89 c3 movl %eax, %ebx + 8048f3e: b8 03 00 00 00 movl $3, %eax + 8048f43: cd 50 int $80 + 8048f45: 89 d8 movl %ebx, %eax + 8048f47: 89 45 f8 movl %eax, -8(%ebp) + 8048f4a: 8b 45 f8 movl -8(%ebp), %eax + 8048f4d: 83 c4 10 addl $16, %esp + 8048f50: 5b popl %ebx + 8048f51: 5d popl %ebp + 8048f52: c3 retl + +alloc_memory_virt: + 8048f53: 55 pushl %ebp + 8048f54: 89 e5 movl %esp, %ebp + 8048f56: 53 pushl %ebx + 8048f57: 8b 45 08 movl 8(%ebp), %eax + 8048f5a: 8b 55 0c movl 12(%ebp), %edx + 8048f5d: 89 c3 movl %eax, %ebx + 8048f5f: 89 d1 movl %edx, %ecx + 8048f61: b8 04 00 00 00 movl $4, %eax + 8048f66: cd 50 int $80 + 8048f68: 90 nop + 8048f69: 5b popl %ebx + 8048f6a: 5d popl %ebp + 8048f6b: c3 retl + +new_address_space: + 8048f6c: 55 pushl %ebp + 8048f6d: 89 e5 movl %esp, %ebp + 8048f6f: 53 pushl %ebx + 8048f70: 83 ec 10 subl $16, %esp + 8048f73: b8 08 00 00 00 movl $8, %eax + 8048f78: cd 50 int $80 + 8048f7a: 89 d8 movl %ebx, %eax + 8048f7c: 89 45 f8 movl %eax, -8(%ebp) + 8048f7f: 8b 45 f8 movl -8(%ebp), %eax + 8048f82: 83 c4 10 addl $16, %esp + 8048f85: 5b popl %ebx + 8048f86: 5d popl %ebp + 8048f87: c3 retl + +copy_data: + 8048f88: 55 pushl %ebp + 8048f89: 89 e5 movl %esp, %ebp + 8048f8b: 56 pushl %esi + 8048f8c: 53 pushl %ebx + 8048f8d: 8b 45 08 movl 8(%ebp), %eax + 8048f90: 8b 4d 0c movl 12(%ebp), %ecx + 8048f93: 8b 55 10 movl 16(%ebp), %edx + 8048f96: 8b 75 14 movl 20(%ebp), %esi + 8048f99: 89 c3 movl %eax, %ebx + 8048f9b: b8 0a 00 00 00 movl $10, %eax + 8048fa0: cd 50 int $80 + 8048fa2: 90 nop + 8048fa3: 5b popl %ebx + 8048fa4: 5e popl %esi + 8048fa5: 5d popl %ebp + 8048fa6: c3 retl + +put_data: + 8048fa7: 55 pushl %ebp + 8048fa8: 89 e5 movl %esp, %ebp + 8048faa: 53 pushl %ebx + 8048fab: 83 ec 10 subl $16, %esp + 8048fae: 8b 45 08 movl 8(%ebp), %eax + 8048fb1: 8b 4d 0c movl 12(%ebp), %ecx + 8048fb4: 8b 55 10 movl 16(%ebp), %edx + 8048fb7: 89 c3 movl %eax, %ebx + 8048fb9: b8 0d 00 00 00 movl $13, %eax + 8048fbe: cd 50 int $80 + 8048fc0: 89 d8 movl %ebx, %eax + 8048fc2: 89 45 f8 movl %eax, -8(%ebp) + 8048fc5: 8b 45 f8 movl -8(%ebp), %eax + 8048fc8: 83 c4 10 addl $16, %esp + 8048fcb: 5b popl %ebx + 8048fcc: 5d popl %ebp + 8048fcd: c3 retl + +map_phys: + 8048fce: 55 pushl %ebp + 8048fcf: 89 e5 movl %esp, %ebp + 8048fd1: 53 pushl %ebx + 8048fd2: 83 ec 10 subl $16, %esp + 8048fd5: 8b 45 08 movl 8(%ebp), %eax + 8048fd8: 8b 55 0c movl 12(%ebp), %edx + 8048fdb: 89 c3 movl %eax, %ebx + 8048fdd: 89 d1 movl %edx, %ecx + 8048fdf: b8 0b 00 00 00 movl $11, %eax + 8048fe4: cd 50 int $80 + 8048fe6: 89 d8 movl %ebx, %eax + 8048fe8: 89 45 f8 movl %eax, -8(%ebp) + 8048feb: 8b 45 f8 movl -8(%ebp), %eax + 8048fee: 83 c4 10 addl $16, %esp + 8048ff1: 5b popl %ebx + 8048ff2: 5d popl %ebp + 8048ff3: c3 retl diff --git a/kernel/cpu/i386/isr.c b/kernel/cpu/i386/isr.c index 199ed16..220e040 100644 --- a/kernel/cpu/i386/isr.c +++ b/kernel/cpu/i386/isr.c @@ -136,6 +136,10 @@ void isr_handler(registers_t r) { char str[11]; int_to_ascii(getPID(),str); vga_write_string(str); + vga_write_string(" and address "); + str[0]='\0'; + hex_to_ascii(r.eip,str); + vga_write_string(str); if (r.err_code==0) { vga_write_string(", kernel process tried to read a non-present page entry at address "); } else if (r.err_code==1) { @@ -156,7 +160,12 @@ void isr_handler(registers_t r) { str[0]='\0'; hex_to_ascii(addr,str); vga_write_string(str); - vga_write_string("\n"); + vga_write_string("."); + vga_write_string(" Stack is at "); + str[0]='\0'; + hex_to_ascii(r.useresp,str); + vga_write_string(str); + vga_write_string(".\n"); // if ((r.err_code&1)==0) { // // int dir_entry=(addr&0xFFC00000)>>22; // // int table_entry=(addr&0x3FF000)>12; diff --git a/kernel/log b/kernel/log new file mode 100644 index 0000000..8aedf0b --- /dev/null +++ b/kernel/log @@ -0,0 +1,5012 @@ + +kernel/kernel.elf: file format ELF32-i386 + +Disassembly of section .text: +header_start: +c0100000: d6 salc +c0100001: 50 pushl %eax +c0100002: 52 pushl %edx +c0100003: e8 00 00 00 00 calll 0 +c0100008: 40 incl %eax +c0100009: 00 00 addb %al, (%eax) +c010000b: 00 ea addb %ch, %dl +c010000d: ae scasb %es:(%edi), %al +c010000e: ad lodsl (%esi), %eax +c010000f: 17 popl %ss + +info_tag_start: +c0100010: 01 00 addl %eax, (%eax) +c0100012: 00 00 addb %al, (%eax) +c0100014: 10 00 adcb %al, (%eax) +c0100016: 00 00 addb %al, (%eax) +c0100018: 04 00 addb $0, %al +c010001a: 00 00 addb %al, (%eax) +c010001c: 06 pushl %es +c010001d: 00 00 addb %al, (%eax) +c010001f: 00 03 addb %al, (%ebx) + +info_tag_end: +c0100020: 03 00 addl (%eax), %eax +c0100022: 00 00 addb %al, (%eax) +c0100024: 0c 00 orb $0, %al +c0100026: 00 00 addb %al, (%eax) +c0100028: e8 03 10 00 00 calll 4099 +c010002d: 00 00 addb %al, (%eax) +c010002f: 00 06 addb %al, (%esi) +c0100031: 00 00 addb %al, (%eax) +c0100033: 00 08 addb %cl, (%eax) +c0100035: 00 00 addb %al, (%eax) +c0100037: 00 00 addb %al, (%eax) +c0100039: 00 00 addb %al, (%eax) +c010003b: 00 08 addb %cl, (%eax) +c010003d: 00 00 addb %al, (%eax) +c010003f: 00 55 89 addb %dl, -119(%ebp) + +read_initrd: +c0100040: 55 pushl %ebp +c0100041: 89 e5 movl %esp, %ebp +c0100043: 83 ec 18 subl $24, %esp +c0100046: 8b 45 08 movl 8(%ebp), %eax +c0100049: 83 c0 08 addl $8, %eax +c010004c: 89 45 f4 movl %eax, -12(%ebp) +c010004f: e9 85 00 00 00 jmp 133 +c0100054: 8b 45 f4 movl -12(%ebp), %eax +c0100057: 8b 00 movl (%eax), %eax +c0100059: 83 f8 03 cmpl $3, %eax +c010005c: 75 6c jne 108 +c010005e: 8b 45 f4 movl -12(%ebp), %eax +c0100061: 89 45 f0 movl %eax, -16(%ebp) +c0100064: 8b 45 f0 movl -16(%ebp), %eax +c0100067: 8b 50 0c movl 12(%eax), %edx +c010006a: 8b 45 f0 movl -16(%ebp), %eax +c010006d: 8b 40 08 movl 8(%eax), %eax +c0100070: 29 c2 subl %eax, %edx +c0100072: 89 d0 movl %edx, %eax +c0100074: 83 ec 0c subl $12, %esp +c0100077: 50 pushl %eax +c0100078: e8 19 2d 00 00 calll 11545 +c010007d: 83 c4 10 addl $16, %esp +c0100080: a3 78 90 10 c0 movl %eax, 3222311032 +c0100085: 8b 45 f0 movl -16(%ebp), %eax +c0100088: 8b 50 0c movl 12(%eax), %edx +c010008b: 8b 45 f0 movl -16(%ebp), %eax +c010008e: 8b 40 08 movl 8(%eax), %eax +c0100091: 29 c2 subl %eax, %edx +c0100093: 89 d0 movl %edx, %eax +c0100095: a3 74 90 10 c0 movl %eax, 3222311028 +c010009a: 8b 45 f0 movl -16(%ebp), %eax +c010009d: 8b 50 0c movl 12(%eax), %edx +c01000a0: 8b 45 f0 movl -16(%ebp), %eax +c01000a3: 8b 40 08 movl 8(%eax), %eax +c01000a6: 89 d1 movl %edx, %ecx +c01000a8: 29 c1 subl %eax, %ecx +c01000aa: 8b 45 f0 movl -16(%ebp), %eax +c01000ad: 8b 40 08 movl 8(%eax), %eax +c01000b0: 2d 00 00 00 40 subl $1073741824, %eax +c01000b5: 89 c2 movl %eax, %edx +c01000b7: a1 78 90 10 c0 movl 3222311032, %eax +c01000bc: 83 ec 04 subl $4, %esp +c01000bf: 51 pushl %ecx +c01000c0: 52 pushl %edx +c01000c1: 50 pushl %eax +c01000c2: e8 d0 2f 00 00 calll 12240 +c01000c7: 83 c4 10 addl $16, %esp +c01000ca: 8b 45 f4 movl -12(%ebp), %eax +c01000cd: 8b 40 04 movl 4(%eax), %eax +c01000d0: 83 c0 07 addl $7, %eax +c01000d3: 83 e0 f8 andl $-8, %eax +c01000d6: 01 45 f4 addl %eax, -12(%ebp) +c01000d9: 8b 45 f4 movl -12(%ebp), %eax +c01000dc: 8b 00 movl (%eax), %eax +c01000de: 85 c0 testl %eax, %eax +c01000e0: 0f 85 6e ff ff ff jne -146 +c01000e6: 90 nop +c01000e7: c9 leave +c01000e8: c3 retl + +getsize: +c01000e9: 55 pushl %ebp +c01000ea: 89 e5 movl %esp, %ebp +c01000ec: 83 ec 10 subl $16, %esp +c01000ef: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01000f6: c7 45 f4 01 00 00 00 movl $1, -12(%ebp) +c01000fd: c7 45 f8 0b 00 00 00 movl $11, -8(%ebp) +c0100104: eb 21 jmp 33 +c0100106: 8b 45 f8 movl -8(%ebp), %eax +c0100109: 8d 50 ff leal -1(%eax), %edx +c010010c: 8b 45 08 movl 8(%ebp), %eax +c010010f: 01 d0 addl %edx, %eax +c0100111: 8a 00 movb (%eax), %al +c0100113: 0f be c0 movsbl %al, %eax +c0100116: 83 e8 30 subl $48, %eax +c0100119: 0f af 45 f4 imull -12(%ebp), %eax +c010011d: 01 45 fc addl %eax, -4(%ebp) +c0100120: ff 4d f8 decl -8(%ebp) +c0100123: c1 65 f4 03 shll $3, -12(%ebp) +c0100127: 83 7d f8 00 cmpl $0, -8(%ebp) +c010012b: 75 d9 jne -39 +c010012d: 8b 45 fc movl -4(%ebp), %eax +c0100130: c9 leave +c0100131: c3 retl + +kmain: +c0100132: 55 pushl %ebp +c0100133: 89 e5 movl %esp, %ebp +c0100135: 81 ec 98 00 00 00 subl $152, %esp +c010013b: 8b 45 08 movl 8(%ebp), %eax +c010013e: a3 7c 90 10 c0 movl %eax, 3222311036 +c0100143: a1 7c 90 10 c0 movl 3222311036, %eax +c0100148: 83 ec 0c subl $12, %esp +c010014b: 50 pushl %eax +c010014c: e8 9a 04 00 00 calll 1178 +c0100151: 83 c4 10 addl $16, %esp +c0100154: 83 ec 0c subl $12, %esp +c0100157: 68 00 80 0b c0 pushl $3221979136 +c010015c: e8 4b 03 00 00 calll 843 +c0100161: 83 c4 10 addl $16, %esp +c0100164: a1 7c 90 10 c0 movl 3222311036, %eax +c0100169: 83 ec 0c subl $12, %esp +c010016c: 50 pushl %eax +c010016d: e8 ce fe ff ff calll -306 +c0100172: 83 c4 10 addl $16, %esp +c0100175: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c010017c: c7 45 ec 00 00 00 00 movl $0, -20(%ebp) +c0100183: 8b 15 78 90 10 c0 movl -1072656264, %edx +c0100189: 8b 45 f4 movl -12(%ebp), %eax +c010018c: 01 d0 addl %edx, %eax +c010018e: 89 45 d8 movl %eax, -40(%ebp) +c0100191: 8b 45 d8 movl -40(%ebp), %eax +c0100194: 8a 00 movb (%eax), %al +c0100196: 84 c0 testb %al, %al +c0100198: 74 7a je 122 +c010019a: 8b 45 d8 movl -40(%ebp), %eax +c010019d: 83 c0 7c addl $124, %eax +c01001a0: 83 ec 0c subl $12, %esp +c01001a3: 50 pushl %eax +c01001a4: e8 40 ff ff ff calll -192 +c01001a9: 83 c4 10 addl $16, %esp +c01001ac: 89 45 d4 movl %eax, -44(%ebp) +c01001af: 81 45 f4 00 02 00 00 addl $512, -12(%ebp) +c01001b6: 8b 45 d8 movl -40(%ebp), %eax +c01001b9: 83 ec 08 subl $8, %esp +c01001bc: 68 00 40 10 c0 pushl $3222290432 +c01001c1: 50 pushl %eax +c01001c2: e8 41 2f 00 00 calll 12097 +c01001c7: 83 c4 10 addl $16, %esp +c01001ca: 85 c0 testl %eax, %eax +c01001cc: 75 08 jne 8 +c01001ce: 8b 45 f4 movl -12(%ebp), %eax +c01001d1: 89 45 f0 movl %eax, -16(%ebp) +c01001d4: eb 3f jmp 63 +c01001d6: 8b 55 f4 movl -12(%ebp), %edx +c01001d9: 8b 45 d4 movl -44(%ebp), %eax +c01001dc: 01 d0 addl %edx, %eax +c01001de: 89 45 f4 movl %eax, -12(%ebp) +c01001e1: 8b 45 f4 movl -12(%ebp), %eax +c01001e4: 25 ff 01 00 00 andl $511, %eax +c01001e9: 85 c0 testl %eax, %eax +c01001eb: 74 1f je 31 +c01001ed: 8b 45 f4 movl -12(%ebp), %eax +c01001f0: 25 ff 01 00 80 andl $2147484159, %eax +c01001f5: 85 c0 testl %eax, %eax +c01001f7: 79 07 jns 7 +c01001f9: 48 decl %eax +c01001fa: 0d 00 fe ff ff orl $4294966784, %eax +c01001ff: 40 incl %eax +c0100200: ba 00 02 00 00 movl $512, %edx +c0100205: 29 c2 subl %eax, %edx +c0100207: 89 d0 movl %edx, %eax +c0100209: 01 45 f4 addl %eax, -12(%ebp) +c010020c: ff 45 ec incl -20(%ebp) +c010020f: e9 6f ff ff ff jmp -145 +c0100214: 90 nop +c0100215: 8b 45 f0 movl -16(%ebp), %eax +c0100218: 89 45 f4 movl %eax, -12(%ebp) +c010021b: 8d 45 8c leal -116(%ebp), %eax +c010021e: 89 45 d0 movl %eax, -48(%ebp) +c0100221: c7 45 e8 00 00 00 00 movl $0, -24(%ebp) +c0100228: eb 1d jmp 29 +c010022a: 8b 15 78 90 10 c0 movl -1072656264, %edx +c0100230: 8b 45 f4 movl -12(%ebp), %eax +c0100233: 01 d0 addl %edx, %eax +c0100235: 8b 4d d0 movl -48(%ebp), %ecx +c0100238: 8b 55 e8 movl -24(%ebp), %edx +c010023b: 01 ca addl %ecx, %edx +c010023d: 8a 00 movb (%eax), %al +c010023f: 88 02 movb %al, (%edx) +c0100241: ff 45 f4 incl -12(%ebp) +c0100244: ff 45 e8 incl -24(%ebp) +c0100247: 83 7d e8 33 cmpl $51, -24(%ebp) +c010024b: 76 dd jbe -35 +c010024d: 8b 45 8c movl -116(%ebp), %eax +c0100250: 3d 7f 45 4c 46 cmpl $1179403647, %eax +c0100255: 74 15 je 21 +c0100257: 83 ec 0c subl $12, %esp +c010025a: 68 08 40 10 c0 pushl $3222290440 +c010025f: e8 56 02 00 00 calll 598 +c0100264: 83 c4 10 addl $16, %esp +c0100267: e9 7a 01 00 00 jmp 378 +c010026c: e8 5e 28 00 00 calll 10334 +c0100271: 89 45 cc movl %eax, -52(%ebp) +c0100274: c7 45 e4 00 00 00 00 movl $0, -28(%ebp) +c010027b: e9 de 00 00 00 jmp 222 +c0100280: 8b 55 a8 movl -88(%ebp), %edx +c0100283: 66 8b 45 b6 movw -74(%ebp), %ax +c0100287: 0f b7 c0 movzwl %ax, %eax +c010028a: 0f af 45 e4 imull -28(%ebp), %eax +c010028e: 01 c2 addl %eax, %edx +c0100290: 8b 45 f0 movl -16(%ebp), %eax +c0100293: 01 d0 addl %edx, %eax +c0100295: 89 45 f4 movl %eax, -12(%ebp) +c0100298: 8d 85 6c ff ff ff leal -148(%ebp), %eax +c010029e: 89 45 c8 movl %eax, -56(%ebp) +c01002a1: c7 45 e0 00 00 00 00 movl $0, -32(%ebp) +c01002a8: eb 1d jmp 29 +c01002aa: 8b 15 78 90 10 c0 movl -1072656264, %edx +c01002b0: 8b 45 f4 movl -12(%ebp), %eax +c01002b3: 01 d0 addl %edx, %eax +c01002b5: 8b 4d c8 movl -56(%ebp), %ecx +c01002b8: 8b 55 e0 movl -32(%ebp), %edx +c01002bb: 01 ca addl %ecx, %edx +c01002bd: 8a 00 movb (%eax), %al +c01002bf: 88 02 movb %al, (%edx) +c01002c1: ff 45 f4 incl -12(%ebp) +c01002c4: ff 45 e0 incl -32(%ebp) +c01002c7: 83 7d e0 1f cmpl $31, -32(%ebp) +c01002cb: 76 dd jbe -35 +c01002cd: 8b 45 80 movl -128(%ebp), %eax +c01002d0: c1 e8 0c shrl $12, %eax +c01002d3: 40 incl %eax +c01002d4: 83 ec 0c subl $12, %esp +c01002d7: 50 pushl %eax +c01002d8: e8 b8 27 00 00 calll 10168 +c01002dd: 83 c4 10 addl $16, %esp +c01002e0: 89 45 c4 movl %eax, -60(%ebp) +c01002e3: 8b 45 80 movl -128(%ebp), %eax +c01002e6: 83 ec 04 subl $4, %esp +c01002e9: 50 pushl %eax +c01002ea: 6a 00 pushl $0 +c01002ec: ff 75 c4 pushl -60(%ebp) +c01002ef: e8 e2 2d 00 00 calll 11746 +c01002f4: 83 c4 10 addl $16, %esp +c01002f7: 8b 85 7c ff ff ff movl -132(%ebp), %eax +c01002fd: 85 c0 testl %eax, %eax +c01002ff: 74 3f je 63 +c0100301: 8b 95 70 ff ff ff movl -144(%ebp), %edx +c0100307: 8b 45 f0 movl -16(%ebp), %eax +c010030a: 01 d0 addl %edx, %eax +c010030c: 89 45 f4 movl %eax, -12(%ebp) +c010030f: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) +c0100316: eb 1d jmp 29 +c0100318: 8b 15 78 90 10 c0 movl -1072656264, %edx +c010031e: 8b 45 f4 movl -12(%ebp), %eax +c0100321: 01 d0 addl %edx, %eax +c0100323: 8b 4d c4 movl -60(%ebp), %ecx +c0100326: 8b 55 dc movl -36(%ebp), %edx +c0100329: 01 ca addl %ecx, %edx +c010032b: 8a 00 movb (%eax), %al +c010032d: 88 02 movb %al, (%edx) +c010032f: ff 45 f4 incl -12(%ebp) +c0100332: ff 45 dc incl -36(%ebp) +c0100335: 8b 85 7c ff ff ff movl -132(%ebp), %eax +c010033b: 39 45 dc cmpl %eax, -36(%ebp) +c010033e: 72 d8 jb -40 +c0100340: 8b 85 74 ff ff ff movl -140(%ebp), %eax +c0100346: 89 c2 movl %eax, %edx +c0100348: 8b 45 80 movl -128(%ebp), %eax +c010034b: 52 pushl %edx +c010034c: 50 pushl %eax +c010034d: ff 75 c4 pushl -60(%ebp) +c0100350: ff 75 cc pushl -52(%ebp) +c0100353: e8 93 27 00 00 calll 10131 +c0100358: 83 c4 10 addl $16, %esp +c010035b: ff 45 e4 incl -28(%ebp) +c010035e: 8b 45 b8 movl -72(%ebp), %eax +c0100361: 0f b7 c0 movzwl %ax, %eax +c0100364: 39 45 e4 cmpl %eax, -28(%ebp) +c0100367: 0f 8c 13 ff ff ff jl -237 +c010036d: a1 74 90 10 c0 movl 3222311028, %eax +c0100372: 85 c0 testl %eax, %eax +c0100374: 79 05 jns 5 +c0100376: 05 ff 0f 00 00 addl $4095, %eax +c010037b: c1 f8 0c sarl $12, %eax +c010037e: 40 incl %eax +c010037f: 83 ec 0c subl $12, %esp +c0100382: 50 pushl %eax +c0100383: e8 0d 27 00 00 calll 9997 +c0100388: 83 c4 10 addl $16, %esp +c010038b: 89 45 c0 movl %eax, -64(%ebp) +c010038e: a1 74 90 10 c0 movl 3222311028, %eax +c0100393: 89 c2 movl %eax, %edx +c0100395: a1 78 90 10 c0 movl 3222311032, %eax +c010039a: 83 ec 04 subl $4, %esp +c010039d: 52 pushl %edx +c010039e: 50 pushl %eax +c010039f: ff 75 c0 pushl -64(%ebp) +c01003a2: e8 f0 2c 00 00 calll 11504 +c01003a7: 83 c4 10 addl $16, %esp +c01003aa: a1 74 90 10 c0 movl 3222311028, %eax +c01003af: 83 ec 04 subl $4, %esp +c01003b2: 50 pushl %eax +c01003b3: ff 75 c0 pushl -64(%ebp) +c01003b6: ff 75 cc pushl -52(%ebp) +c01003b9: e8 4c 27 00 00 calll 10060 +c01003be: 83 c4 10 addl $16, %esp +c01003c1: 89 45 c0 movl %eax, -64(%ebp) +c01003c4: a1 74 90 10 c0 movl 3222311028, %eax +c01003c9: 89 c1 movl %eax, %ecx +c01003cb: 8b 45 c0 movl -64(%ebp), %eax +c01003ce: 8b 55 a4 movl -92(%ebp), %edx +c01003d1: 51 pushl %ecx +c01003d2: 50 pushl %eax +c01003d3: ff 75 cc pushl -52(%ebp) +c01003d6: 52 pushl %edx +c01003d7: e8 9c 31 00 00 calll 12700 +c01003dc: 83 c4 10 addl $16, %esp +c01003df: e8 5a 31 00 00 calll 12634 +c01003e4: eb f9 jmp -7 +c01003e6: c9 leave +c01003e7: c3 retl + +_start: +c01003e8: 3d 89 62 d7 36 cmpl $920085129, %eax +c01003ed: 0f 85 85 00 00 00 jne 133 +c01003f3: bf 00 b0 10 00 movl $1093632, %edi +c01003f8: be 00 00 00 00 movl $0, %esi +c01003fd: b9 00 08 00 00 movl $2048, %ecx +c0100402: 89 f2 movl %esi, %edx +c0100404: 83 ca 07 orl $7, %edx +c0100407: 89 17 movl %edx, (%edi) +c0100409: 81 c6 00 10 00 00 addl $4096, %esi +c010040f: 83 c7 04 addl $4, %edi +c0100412: e2 ee loop -18 +c0100414: c7 05 00 a0 10 00 07 b0 10 00 movl $1093639, 1089536 +c010041e: c7 05 00 ac 10 00 07 b0 10 00 movl $1093639, 1092608 +c0100428: c7 05 04 ac 10 00 07 c0 10 00 movl $1097735, 1092612 +c0100432: b9 00 a0 10 00 movl $1089536, %ecx +c0100437: 0f 22 d9 movl %ecx, %cr3 +c010043a: 0f 20 c1 movl %cr0, %ecx +c010043d: 81 c9 00 00 01 80 orl $2147549184, %ecx +c0100443: 0f 22 c1 movl %ecx, %cr0 +c0100446: 0f 20 e1 movl %cr4, %ecx +c0100449: 83 c9 10 orl $16, %ecx +c010044c: 0f 22 e1 movl %ecx, %cr4 +c010044f: 8d 0d 57 04 10 c0 leal -1072692137, %ecx +c0100455: ff e1 jmpl *%ecx +c0100457: c7 05 00 a0 10 c0 00 00 00 00 movl $0, -1072652288 +c0100461: 0f 20 d9 movl %cr3, %ecx +c0100464: 0f 22 d9 movl %ecx, %cr3 +c0100467: bc 2c c8 35 c0 movl $3224750124, %esp +c010046c: 81 c3 00 00 00 c0 addl $3221225472, %ebx +c0100472: 53 pushl %ebx +c0100473: e8 ba fc ff ff calll -838 + +no_multiboot: +c0100478: eb fe jmp -2 + +set_char: +c010047a: 55 pushl %ebp +c010047b: 89 e5 movl %esp, %ebp +c010047d: 83 ec 04 subl $4, %esp +c0100480: 8b 45 0c movl 12(%ebp), %eax +c0100483: 88 45 fc movb %al, -4(%ebp) +c0100486: 8b 15 00 d0 10 c0 movl -1072640000, %edx +c010048c: 8b 45 08 movl 8(%ebp), %eax +c010048f: 01 c0 addl %eax, %eax +c0100491: 01 c2 addl %eax, %edx +c0100493: 8a 45 fc movb -4(%ebp), %al +c0100496: 88 02 movb %al, (%edx) +c0100498: 8b 15 00 d0 10 c0 movl -1072640000, %edx +c010049e: 8b 45 08 movl 8(%ebp), %eax +c01004a1: 01 c0 addl %eax, %eax +c01004a3: 40 incl %eax +c01004a4: 01 d0 addl %edx, %eax +c01004a6: c6 00 0f movb $15, (%eax) +c01004a9: 90 nop +c01004aa: c9 leave +c01004ab: c3 retl + +vga_init: +c01004ac: 55 pushl %ebp +c01004ad: 89 e5 movl %esp, %ebp +c01004af: 8b 45 08 movl 8(%ebp), %eax +c01004b2: a3 00 d0 10 c0 movl %eax, 3222327296 +c01004b7: 90 nop +c01004b8: 5d popl %ebp +c01004b9: c3 retl + +vga_write_string: +c01004ba: 55 pushl %ebp +c01004bb: 89 e5 movl %esp, %ebp +c01004bd: 83 ec 18 subl $24, %esp +c01004c0: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c01004c7: eb 3b jmp 59 +c01004c9: 8b 55 08 movl 8(%ebp), %edx +c01004cc: 8b 45 f4 movl -12(%ebp), %eax +c01004cf: 01 d0 addl %edx, %eax +c01004d1: 8a 00 movb (%eax), %al +c01004d3: 3c 0a cmpb $10, %al +c01004d5: 74 29 je 41 +c01004d7: 8b 55 08 movl 8(%ebp), %edx +c01004da: 8b 45 f4 movl -12(%ebp), %eax +c01004dd: 01 d0 addl %edx, %eax +c01004df: 8a 00 movb (%eax), %al +c01004e1: 0f be d0 movsbl %al, %edx +c01004e4: a1 04 d0 10 c0 movl 3222327300, %eax +c01004e9: 52 pushl %edx +c01004ea: 50 pushl %eax +c01004eb: e8 8a ff ff ff calll -118 +c01004f0: 83 c4 08 addl $8, %esp +c01004f3: a1 04 d0 10 c0 movl 3222327300, %eax +c01004f8: 40 incl %eax +c01004f9: a3 04 d0 10 c0 movl %eax, 3222327300 +c01004fe: eb 01 jmp 1 +c0100500: 90 nop +c0100501: ff 45 f4 incl -12(%ebp) +c0100504: 83 ec 0c subl $12, %esp +c0100507: ff 75 08 pushl 8(%ebp) +c010050a: e8 58 2c 00 00 calll 11352 +c010050f: 83 c4 10 addl $16, %esp +c0100512: 39 45 f4 cmpl %eax, -12(%ebp) +c0100515: 72 b2 jb -78 +c0100517: 90 nop +c0100518: c9 leave +c0100519: c3 retl + +address_spaces_copy_data: +c010051a: 55 pushl %ebp +c010051b: 89 e5 movl %esp, %ebp +c010051d: 83 ec 18 subl $24, %esp +c0100520: 0f 20 d8 movl %cr3, %eax +c0100523: 89 45 f0 movl %eax, -16(%ebp) +c0100526: 83 ec 0c subl $12, %esp +c0100529: ff 75 0c pushl 12(%ebp) +c010052c: e8 95 15 00 00 calll 5525 +c0100531: 83 c4 10 addl $16, %esp +c0100534: 89 45 f4 movl %eax, -12(%ebp) +c0100537: 8b 45 08 movl 8(%ebp), %eax +c010053a: 83 ec 0c subl $12, %esp +c010053d: 50 pushl %eax +c010053e: e8 26 17 00 00 calll 5926 +c0100543: 83 c4 10 addl $16, %esp +c0100546: 8b 45 10 movl 16(%ebp), %eax +c0100549: c1 e8 0c shrl $12, %eax +c010054c: 40 incl %eax +c010054d: 83 ec 0c subl $12, %esp +c0100550: 6a 01 pushl $1 +c0100552: 6a 01 pushl $1 +c0100554: 50 pushl %eax +c0100555: ff 75 f4 pushl -12(%ebp) +c0100558: ff 75 14 pushl 20(%ebp) +c010055b: e8 fe 12 00 00 calll 4862 +c0100560: 83 c4 20 addl $32, %esp +c0100563: 8b 45 f0 movl -16(%ebp), %eax +c0100566: 83 ec 0c subl $12, %esp +c0100569: 50 pushl %eax +c010056a: e8 fa 16 00 00 calll 5882 +c010056f: 83 c4 10 addl $16, %esp +c0100572: 90 nop +c0100573: c9 leave +c0100574: c3 retl + +address_spaces_put_data: +c0100575: 55 pushl %ebp +c0100576: 89 e5 movl %esp, %ebp +c0100578: 83 ec 18 subl $24, %esp +c010057b: 0f 20 d8 movl %cr3, %eax +c010057e: 89 45 ec movl %eax, -20(%ebp) +c0100581: 83 ec 0c subl $12, %esp +c0100584: ff 75 0c pushl 12(%ebp) +c0100587: e8 3a 15 00 00 calll 5434 +c010058c: 83 c4 10 addl $16, %esp +c010058f: 89 45 f4 movl %eax, -12(%ebp) +c0100592: 8b 45 08 movl 8(%ebp), %eax +c0100595: 83 ec 0c subl $12, %esp +c0100598: 50 pushl %eax +c0100599: e8 cb 16 00 00 calll 5835 +c010059e: 83 c4 10 addl $16, %esp +c01005a1: 8b 45 10 movl 16(%ebp), %eax +c01005a4: c1 e8 0c shrl $12, %eax +c01005a7: 40 incl %eax +c01005a8: 83 ec 0c subl $12, %esp +c01005ab: 50 pushl %eax +c01005ac: e8 15 14 00 00 calll 5141 +c01005b1: 83 c4 10 addl $16, %esp +c01005b4: c1 e0 0c shll $12, %eax +c01005b7: 89 45 f0 movl %eax, -16(%ebp) +c01005ba: 8b 45 10 movl 16(%ebp), %eax +c01005bd: c1 e8 0c shrl $12, %eax +c01005c0: 40 incl %eax +c01005c1: 83 ec 0c subl $12, %esp +c01005c4: 6a 01 pushl $1 +c01005c6: 6a 01 pushl $1 +c01005c8: 50 pushl %eax +c01005c9: ff 75 f4 pushl -12(%ebp) +c01005cc: ff 75 f0 pushl -16(%ebp) +c01005cf: e8 8a 12 00 00 calll 4746 +c01005d4: 83 c4 20 addl $32, %esp +c01005d7: 8b 45 ec movl -20(%ebp), %eax +c01005da: 83 ec 0c subl $12, %esp +c01005dd: 50 pushl %eax +c01005de: e8 86 16 00 00 calll 5766 +c01005e3: 83 c4 10 addl $16, %esp +c01005e6: 8b 45 f0 movl -16(%ebp), %eax +c01005e9: c9 leave +c01005ea: c3 retl + +cpu_init: +c01005eb: 55 pushl %ebp +c01005ec: 89 e5 movl %esp, %ebp +c01005ee: 83 ec 08 subl $8, %esp +c01005f1: e8 f8 01 00 00 calll 504 +c01005f6: e8 18 03 00 00 calll 792 +c01005fb: fb sti +c01005fc: 83 ec 0c subl $12, %esp +c01005ff: ff 75 08 pushl 8(%ebp) +c0100602: e8 6b 1a 00 00 calll 6763 +c0100607: 83 c4 10 addl $16, %esp +c010060a: e8 7a 17 00 00 calll 6010 +c010060f: e8 50 1d 00 00 calll 7504 +c0100614: 90 nop +c0100615: c9 leave +c0100616: c3 retl + +tss_stack_reset: +c0100617: 55 pushl %ebp +c0100618: 89 e5 movl %esp, %ebp +c010061a: a1 2c 08 36 c0 movl 3224766508, %eax +c010061f: 2d 00 00 00 40 subl $1073741824, %eax +c0100624: a3 04 70 10 c0 movl %eax, 3222302724 +c0100629: 90 nop +c010062a: 5d popl %ebp +c010062b: c3 retl + +set_entry: +c010062c: 55 pushl %ebp +c010062d: 89 e5 movl %esp, %ebp +c010062f: 83 ec 14 subl $20, %esp +c0100632: 8b 45 14 movl 20(%ebp), %eax +c0100635: 88 45 ec movb %al, -20(%ebp) +c0100638: 8b 45 10 movl 16(%ebp), %eax +c010063b: 8b 55 08 movl 8(%ebp), %edx +c010063e: 66 89 04 d5 20 d0 10 c0 movw %ax, -1072639968(,%edx,8) +c0100646: 8b 45 0c movl 12(%ebp), %eax +c0100649: 8b 55 08 movl 8(%ebp), %edx +c010064c: 66 89 04 d5 22 d0 10 c0 movw %ax, -1072639966(,%edx,8) +c0100654: 8b 45 0c movl 12(%ebp), %eax +c0100657: c1 e8 10 shrl $16, %eax +c010065a: 88 c2 movb %al, %dl +c010065c: 8b 45 08 movl 8(%ebp), %eax +c010065f: 88 14 c5 24 d0 10 c0 movb %dl, -1072639964(,%eax,8) +c0100666: 8b 45 08 movl 8(%ebp), %eax +c0100669: 8a 55 ec movb -20(%ebp), %dl +c010066c: 88 14 c5 25 d0 10 c0 movb %dl, -1072639963(,%eax,8) +c0100673: 8b 45 10 movl 16(%ebp), %eax +c0100676: c1 e8 10 shrl $16, %eax +c0100679: 83 e0 0f andl $15, %eax +c010067c: 88 45 ff movb %al, -1(%ebp) +c010067f: 8a 45 ff movb -1(%ebp), %al +c0100682: 83 c8 c0 orl $-64, %eax +c0100685: 88 c2 movb %al, %dl +c0100687: 8b 45 08 movl 8(%ebp), %eax +c010068a: 88 14 c5 26 d0 10 c0 movb %dl, -1072639962(,%eax,8) +c0100691: 8b 45 0c movl 12(%ebp), %eax +c0100694: c1 e8 18 shrl $24, %eax +c0100697: 88 c2 movb %al, %dl +c0100699: 8b 45 08 movl 8(%ebp), %eax +c010069c: 88 14 c5 27 d0 10 c0 movb %dl, -1072639961(,%eax,8) +c01006a3: 90 nop +c01006a4: c9 leave +c01006a5: c3 retl + +write_tss: +c01006a6: 55 pushl %ebp +c01006a7: 89 e5 movl %esp, %ebp +c01006a9: 83 ec 28 subl $40, %esp +c01006ac: 8b 45 0c movl 12(%ebp), %eax +c01006af: 66 89 45 e4 movw %ax, -28(%ebp) +c01006b3: c7 45 f4 00 70 10 c0 movl $3222302720, -12(%ebp) +c01006ba: 8b 45 f4 movl -12(%ebp), %eax +c01006bd: 05 69 20 00 00 addl $8297, %eax +c01006c2: 89 45 f0 movl %eax, -16(%ebp) +c01006c5: 8b 45 f0 movl -16(%ebp), %eax +c01006c8: 8b 55 08 movl 8(%ebp), %edx +c01006cb: 66 89 04 d5 20 d0 10 c0 movw %ax, -1072639968(,%edx,8) +c01006d3: 8b 45 f4 movl -12(%ebp), %eax +c01006d6: 8b 55 08 movl 8(%ebp), %edx +c01006d9: 66 89 04 d5 22 d0 10 c0 movw %ax, -1072639966(,%edx,8) +c01006e1: 8b 45 f4 movl -12(%ebp), %eax +c01006e4: c1 e8 10 shrl $16, %eax +c01006e7: 88 c2 movb %al, %dl +c01006e9: 8b 45 08 movl 8(%ebp), %eax +c01006ec: 88 14 c5 24 d0 10 c0 movb %dl, -1072639964(,%eax,8) +c01006f3: 8b 45 08 movl 8(%ebp), %eax +c01006f6: c6 04 c5 25 d0 10 c0 e9 movb $-23, -1072639963(,%eax,8) +c01006fe: 8b 45 f0 movl -16(%ebp), %eax +c0100701: c1 e8 10 shrl $16, %eax +c0100704: 83 e0 0f andl $15, %eax +c0100707: 88 c2 movb %al, %dl +c0100709: 8b 45 08 movl 8(%ebp), %eax +c010070c: 88 14 c5 26 d0 10 c0 movb %dl, -1072639962(,%eax,8) +c0100713: 8b 45 f4 movl -12(%ebp), %eax +c0100716: c1 e8 18 shrl $24, %eax +c0100719: 88 c2 movb %al, %dl +c010071b: 8b 45 08 movl 8(%ebp), %eax +c010071e: 88 14 c5 27 d0 10 c0 movb %dl, -1072639961(,%eax,8) +c0100725: 83 ec 04 subl $4, %esp +c0100728: 68 69 20 00 00 pushl $8297 +c010072d: 6a 00 pushl $0 +c010072f: 68 00 70 10 c0 pushl $3222302720 +c0100734: e8 9d 29 00 00 calll 10653 +c0100739: 83 c4 10 addl $16, %esp +c010073c: 0f b7 45 e4 movzwl -28(%ebp), %eax +c0100740: a3 08 70 10 c0 movl %eax, 3222302728 +c0100745: 8b 45 10 movl 16(%ebp), %eax +c0100748: a3 04 70 10 c0 movl %eax, 3222302724 +c010074d: c6 05 68 90 10 c0 ff movb $-1, -1072656280 +c0100754: 66 c7 05 66 70 10 c0 68 00 movw $104, -1072664474 +c010075d: c7 05 4c 70 10 c0 0b 00 00 00 movl $11, -1072664500 +c0100767: c7 05 5c 70 10 c0 13 00 00 00 movl $19, -1072664484 +c0100771: a1 5c 70 10 c0 movl 3222302812, %eax +c0100776: a3 58 70 10 c0 movl %eax, 3222302808 +c010077b: a1 58 70 10 c0 movl 3222302808, %eax +c0100780: a3 48 70 10 c0 movl %eax, 3222302792 +c0100785: a1 48 70 10 c0 movl 3222302792, %eax +c010078a: a3 54 70 10 c0 movl %eax, 3222302804 +c010078f: a1 54 70 10 c0 movl 3222302804, %eax +c0100794: a3 50 70 10 c0 movl %eax, 3222302800 +c0100799: 90 nop +c010079a: c9 leave +c010079b: c3 retl + +allow_all_ports: +c010079c: 55 pushl %ebp +c010079d: 89 e5 movl %esp, %ebp +c010079f: 83 ec 10 subl $16, %esp +c01007a2: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01007a9: eb 0e jmp 14 +c01007ab: 8b 45 fc movl -4(%ebp), %eax +c01007ae: 05 68 70 10 c0 addl $3222302824, %eax +c01007b3: c6 00 00 movb $0, (%eax) +c01007b6: ff 45 fc incl -4(%ebp) +c01007b9: 81 7d fc ff 1f 00 00 cmpl $8191, -4(%ebp) +c01007c0: 7e e9 jle -23 +c01007c2: 90 nop +c01007c3: c9 leave +c01007c4: c3 retl + +block_all_ports: +c01007c5: 55 pushl %ebp +c01007c6: 89 e5 movl %esp, %ebp +c01007c8: 83 ec 10 subl $16, %esp +c01007cb: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01007d2: eb 0e jmp 14 +c01007d4: 8b 45 fc movl -4(%ebp), %eax +c01007d7: 05 68 70 10 c0 addl $3222302824, %eax +c01007dc: c6 00 ff movb $-1, (%eax) +c01007df: ff 45 fc incl -4(%ebp) +c01007e2: 81 7d fc ff 1f 00 00 cmpl $8191, -4(%ebp) +c01007e9: 7e e9 jle -23 +c01007eb: 90 nop +c01007ec: c9 leave +c01007ed: c3 retl + +gdt_init: +c01007ee: 55 pushl %ebp +c01007ef: 89 e5 movl %esp, %ebp +c01007f1: 83 ec 08 subl $8, %esp +c01007f4: 6a 00 pushl $0 +c01007f6: 6a 00 pushl $0 +c01007f8: 6a 00 pushl $0 +c01007fa: 6a 00 pushl $0 +c01007fc: e8 2b fe ff ff calll -469 +c0100801: 83 c4 10 addl $16, %esp +c0100804: 68 9a 00 00 00 pushl $154 +c0100809: 68 ff ff 0f 00 pushl $1048575 +c010080e: 6a 00 pushl $0 +c0100810: 6a 01 pushl $1 +c0100812: e8 15 fe ff ff calll -491 +c0100817: 83 c4 10 addl $16, %esp +c010081a: 68 92 00 00 00 pushl $146 +c010081f: 68 ff ff 0f 00 pushl $1048575 +c0100824: 6a 00 pushl $0 +c0100826: 6a 02 pushl $2 +c0100828: e8 ff fd ff ff calll -513 +c010082d: 83 c4 10 addl $16, %esp +c0100830: 68 fa 00 00 00 pushl $250 +c0100835: 68 ff ff 0f 00 pushl $1048575 +c010083a: 6a 00 pushl $0 +c010083c: 6a 03 pushl $3 +c010083e: e8 e9 fd ff ff calll -535 +c0100843: 83 c4 10 addl $16, %esp +c0100846: 68 f2 00 00 00 pushl $242 +c010084b: 68 ff ff 0f 00 pushl $1048575 +c0100850: 6a 00 pushl $0 +c0100852: 6a 04 pushl $4 +c0100854: e8 d3 fd ff ff calll -557 +c0100859: 83 c4 10 addl $16, %esp +c010085c: a1 2c 08 36 c0 movl 3224766508, %eax +c0100861: 2d 00 00 00 40 subl $1073741824, %eax +c0100866: 83 ec 04 subl $4, %esp +c0100869: 50 pushl %eax +c010086a: 6a 10 pushl $16 +c010086c: 6a 05 pushl $5 +c010086e: e8 33 fe ff ff calll -461 +c0100873: 83 c4 10 addl $16, %esp +c0100876: 66 c7 05 50 d0 10 c0 2f 00 movw $47, -1072639920 +c010087f: c7 05 52 d0 10 c0 20 d0 10 c0 movl $3222327328, -1072639918 +c0100889: b8 50 d0 10 c0 movl $3222327376, %eax +c010088e: 0f 01 10 lgdtl (%eax) +c0100891: e8 fa 20 00 00 calll 8442 +c0100896: 66 b8 2b 00 movw $43, %ax +c010089a: 0f 00 d8 ltrw %ax +c010089d: 90 nop +c010089e: c9 leave +c010089f: c3 retl + +halt: +c01008a0: 55 pushl %ebp +c01008a1: 89 e5 movl %esp, %ebp +c01008a3: fa cli + +hltlabel: +c01008a4: f4 hlt +c01008a5: eb fd jmp -3 +c01008a7: 90 nop +c01008a8: 5d popl %ebp +c01008a9: c3 retl + +idt_set_gate: +c01008aa: 55 pushl %ebp +c01008ab: 89 e5 movl %esp, %ebp +c01008ad: 8b 45 0c movl 12(%ebp), %eax +c01008b0: 8b 55 08 movl 8(%ebp), %edx +c01008b3: 66 89 04 d5 60 d0 10 c0 movw %ax, -1072639904(,%edx,8) +c01008bb: 8b 45 08 movl 8(%ebp), %eax +c01008be: 66 c7 04 c5 62 d0 10 c0 08 00 movw $8, -1072639902(,%eax,8) +c01008c8: 8b 45 08 movl 8(%ebp), %eax +c01008cb: c6 04 c5 64 d0 10 c0 00 movb $0, -1072639900(,%eax,8) +c01008d3: 8b 45 08 movl 8(%ebp), %eax +c01008d6: c6 04 c5 65 d0 10 c0 ee movb $-18, -1072639899(,%eax,8) +c01008de: 8b 45 0c movl 12(%ebp), %eax +c01008e1: c1 e8 10 shrl $16, %eax +c01008e4: 8b 55 08 movl 8(%ebp), %edx +c01008e7: 66 89 04 d5 66 d0 10 c0 movw %ax, -1072639898(,%edx,8) +c01008ef: 90 nop +c01008f0: 5d popl %ebp +c01008f1: c3 retl + +load_idt: +c01008f2: 55 pushl %ebp +c01008f3: 89 e5 movl %esp, %ebp +c01008f5: b8 60 d0 10 c0 movl $3222327392, %eax +c01008fa: a3 62 d8 10 c0 movl %eax, 3222329442 +c01008ff: 66 c7 05 60 d8 10 c0 ff 07 movw $2047, -1072637856 +c0100908: b8 60 d8 10 c0 movl $3222329440, %eax +c010090d: 0f 01 18 lidtl (%eax) +c0100910: 90 nop +c0100911: 5d popl %ebp +c0100912: c3 retl + +isr_install: +c0100913: 55 pushl %ebp +c0100914: 89 e5 movl %esp, %ebp +c0100916: 83 ec 08 subl $8, %esp +c0100919: b8 a9 27 10 c0 movl $3222284201, %eax +c010091e: 83 ec 08 subl $8, %esp +c0100921: 50 pushl %eax +c0100922: 6a 00 pushl $0 +c0100924: e8 81 ff ff ff calll -127 +c0100929: 83 c4 10 addl $16, %esp +c010092c: b8 b0 27 10 c0 movl $3222284208, %eax +c0100931: 83 ec 08 subl $8, %esp +c0100934: 50 pushl %eax +c0100935: 6a 01 pushl $1 +c0100937: e8 6e ff ff ff calll -146 +c010093c: 83 c4 10 addl $16, %esp +c010093f: b8 b7 27 10 c0 movl $3222284215, %eax +c0100944: 83 ec 08 subl $8, %esp +c0100947: 50 pushl %eax +c0100948: 6a 02 pushl $2 +c010094a: e8 5b ff ff ff calll -165 +c010094f: 83 c4 10 addl $16, %esp +c0100952: b8 be 27 10 c0 movl $3222284222, %eax +c0100957: 83 ec 08 subl $8, %esp +c010095a: 50 pushl %eax +c010095b: 6a 03 pushl $3 +c010095d: e8 48 ff ff ff calll -184 +c0100962: 83 c4 10 addl $16, %esp +c0100965: b8 c5 27 10 c0 movl $3222284229, %eax +c010096a: 83 ec 08 subl $8, %esp +c010096d: 50 pushl %eax +c010096e: 6a 04 pushl $4 +c0100970: e8 35 ff ff ff calll -203 +c0100975: 83 c4 10 addl $16, %esp +c0100978: b8 cc 27 10 c0 movl $3222284236, %eax +c010097d: 83 ec 08 subl $8, %esp +c0100980: 50 pushl %eax +c0100981: 6a 05 pushl $5 +c0100983: e8 22 ff ff ff calll -222 +c0100988: 83 c4 10 addl $16, %esp +c010098b: b8 d3 27 10 c0 movl $3222284243, %eax +c0100990: 83 ec 08 subl $8, %esp +c0100993: 50 pushl %eax +c0100994: 6a 06 pushl $6 +c0100996: e8 0f ff ff ff calll -241 +c010099b: 83 c4 10 addl $16, %esp +c010099e: b8 da 27 10 c0 movl $3222284250, %eax +c01009a3: 83 ec 08 subl $8, %esp +c01009a6: 50 pushl %eax +c01009a7: 6a 07 pushl $7 +c01009a9: e8 fc fe ff ff calll -260 +c01009ae: 83 c4 10 addl $16, %esp +c01009b1: b8 e4 27 10 c0 movl $3222284260, %eax +c01009b6: 83 ec 08 subl $8, %esp +c01009b9: 50 pushl %eax +c01009ba: 6a 08 pushl $8 +c01009bc: e8 e9 fe ff ff calll -279 +c01009c1: 83 c4 10 addl $16, %esp +c01009c4: b8 ec 27 10 c0 movl $3222284268, %eax +c01009c9: 83 ec 08 subl $8, %esp +c01009cc: 50 pushl %eax +c01009cd: 6a 09 pushl $9 +c01009cf: e8 d6 fe ff ff calll -298 +c01009d4: 83 c4 10 addl $16, %esp +c01009d7: b8 f6 27 10 c0 movl $3222284278, %eax +c01009dc: 83 ec 08 subl $8, %esp +c01009df: 50 pushl %eax +c01009e0: 6a 0a pushl $10 +c01009e2: e8 c3 fe ff ff calll -317 +c01009e7: 83 c4 10 addl $16, %esp +c01009ea: b8 fe 27 10 c0 movl $3222284286, %eax +c01009ef: 83 ec 08 subl $8, %esp +c01009f2: 50 pushl %eax +c01009f3: 6a 0b pushl $11 +c01009f5: e8 b0 fe ff ff calll -336 +c01009fa: 83 c4 10 addl $16, %esp +c01009fd: b8 06 28 10 c0 movl $3222284294, %eax +c0100a02: 83 ec 08 subl $8, %esp +c0100a05: 50 pushl %eax +c0100a06: 6a 0c pushl $12 +c0100a08: e8 9d fe ff ff calll -355 +c0100a0d: 83 c4 10 addl $16, %esp +c0100a10: b8 0e 28 10 c0 movl $3222284302, %eax +c0100a15: 83 ec 08 subl $8, %esp +c0100a18: 50 pushl %eax +c0100a19: 6a 0d pushl $13 +c0100a1b: e8 8a fe ff ff calll -374 +c0100a20: 83 c4 10 addl $16, %esp +c0100a23: b8 16 28 10 c0 movl $3222284310, %eax +c0100a28: 83 ec 08 subl $8, %esp +c0100a2b: 50 pushl %eax +c0100a2c: 6a 0e pushl $14 +c0100a2e: e8 77 fe ff ff calll -393 +c0100a33: 83 c4 10 addl $16, %esp +c0100a36: b8 1e 28 10 c0 movl $3222284318, %eax +c0100a3b: 83 ec 08 subl $8, %esp +c0100a3e: 50 pushl %eax +c0100a3f: 6a 0f pushl $15 +c0100a41: e8 64 fe ff ff calll -412 +c0100a46: 83 c4 10 addl $16, %esp +c0100a49: b8 28 28 10 c0 movl $3222284328, %eax +c0100a4e: 83 ec 08 subl $8, %esp +c0100a51: 50 pushl %eax +c0100a52: 6a 10 pushl $16 +c0100a54: e8 51 fe ff ff calll -431 +c0100a59: 83 c4 10 addl $16, %esp +c0100a5c: b8 32 28 10 c0 movl $3222284338, %eax +c0100a61: 83 ec 08 subl $8, %esp +c0100a64: 50 pushl %eax +c0100a65: 6a 11 pushl $17 +c0100a67: e8 3e fe ff ff calll -450 +c0100a6c: 83 c4 10 addl $16, %esp +c0100a6f: b8 3c 28 10 c0 movl $3222284348, %eax +c0100a74: 83 ec 08 subl $8, %esp +c0100a77: 50 pushl %eax +c0100a78: 6a 12 pushl $18 +c0100a7a: e8 2b fe ff ff calll -469 +c0100a7f: 83 c4 10 addl $16, %esp +c0100a82: b8 46 28 10 c0 movl $3222284358, %eax +c0100a87: 83 ec 08 subl $8, %esp +c0100a8a: 50 pushl %eax +c0100a8b: 6a 13 pushl $19 +c0100a8d: e8 18 fe ff ff calll -488 +c0100a92: 83 c4 10 addl $16, %esp +c0100a95: b8 50 28 10 c0 movl $3222284368, %eax +c0100a9a: 83 ec 08 subl $8, %esp +c0100a9d: 50 pushl %eax +c0100a9e: 6a 14 pushl $20 +c0100aa0: e8 05 fe ff ff calll -507 +c0100aa5: 83 c4 10 addl $16, %esp +c0100aa8: b8 5a 28 10 c0 movl $3222284378, %eax +c0100aad: 83 ec 08 subl $8, %esp +c0100ab0: 50 pushl %eax +c0100ab1: 6a 15 pushl $21 +c0100ab3: e8 f2 fd ff ff calll -526 +c0100ab8: 83 c4 10 addl $16, %esp +c0100abb: b8 64 28 10 c0 movl $3222284388, %eax +c0100ac0: 83 ec 08 subl $8, %esp +c0100ac3: 50 pushl %eax +c0100ac4: 6a 16 pushl $22 +c0100ac6: e8 df fd ff ff calll -545 +c0100acb: 83 c4 10 addl $16, %esp +c0100ace: b8 6e 28 10 c0 movl $3222284398, %eax +c0100ad3: 83 ec 08 subl $8, %esp +c0100ad6: 50 pushl %eax +c0100ad7: 6a 17 pushl $23 +c0100ad9: e8 cc fd ff ff calll -564 +c0100ade: 83 c4 10 addl $16, %esp +c0100ae1: b8 78 28 10 c0 movl $3222284408, %eax +c0100ae6: 83 ec 08 subl $8, %esp +c0100ae9: 50 pushl %eax +c0100aea: 6a 18 pushl $24 +c0100aec: e8 b9 fd ff ff calll -583 +c0100af1: 83 c4 10 addl $16, %esp +c0100af4: b8 82 28 10 c0 movl $3222284418, %eax +c0100af9: 83 ec 08 subl $8, %esp +c0100afc: 50 pushl %eax +c0100afd: 6a 19 pushl $25 +c0100aff: e8 a6 fd ff ff calll -602 +c0100b04: 83 c4 10 addl $16, %esp +c0100b07: b8 8c 28 10 c0 movl $3222284428, %eax +c0100b0c: 83 ec 08 subl $8, %esp +c0100b0f: 50 pushl %eax +c0100b10: 6a 1a pushl $26 +c0100b12: e8 93 fd ff ff calll -621 +c0100b17: 83 c4 10 addl $16, %esp +c0100b1a: b8 96 28 10 c0 movl $3222284438, %eax +c0100b1f: 83 ec 08 subl $8, %esp +c0100b22: 50 pushl %eax +c0100b23: 6a 1b pushl $27 +c0100b25: e8 80 fd ff ff calll -640 +c0100b2a: 83 c4 10 addl $16, %esp +c0100b2d: b8 a0 28 10 c0 movl $3222284448, %eax +c0100b32: 83 ec 08 subl $8, %esp +c0100b35: 50 pushl %eax +c0100b36: 6a 1c pushl $28 +c0100b38: e8 6d fd ff ff calll -659 +c0100b3d: 83 c4 10 addl $16, %esp +c0100b40: b8 aa 28 10 c0 movl $3222284458, %eax +c0100b45: 83 ec 08 subl $8, %esp +c0100b48: 50 pushl %eax +c0100b49: 6a 1d pushl $29 +c0100b4b: e8 5a fd ff ff calll -678 +c0100b50: 83 c4 10 addl $16, %esp +c0100b53: b8 b4 28 10 c0 movl $3222284468, %eax +c0100b58: 83 ec 08 subl $8, %esp +c0100b5b: 50 pushl %eax +c0100b5c: 6a 1e pushl $30 +c0100b5e: e8 47 fd ff ff calll -697 +c0100b63: 83 c4 10 addl $16, %esp +c0100b66: b8 be 28 10 c0 movl $3222284478, %eax +c0100b6b: 83 ec 08 subl $8, %esp +c0100b6e: 50 pushl %eax +c0100b6f: 6a 1f pushl $31 +c0100b71: e8 34 fd ff ff calll -716 +c0100b76: 83 c4 10 addl $16, %esp +c0100b79: b8 c8 28 10 c0 movl $3222284488, %eax +c0100b7e: 83 ec 08 subl $8, %esp +c0100b81: 50 pushl %eax +c0100b82: 6a 50 pushl $80 +c0100b84: e8 21 fd ff ff calll -735 +c0100b89: 83 c4 10 addl $16, %esp +c0100b8c: 83 ec 08 subl $8, %esp +c0100b8f: 6a 11 pushl $17 +c0100b91: 6a 20 pushl $32 +c0100b93: e8 3e 17 00 00 calll 5950 +c0100b98: 83 c4 10 addl $16, %esp +c0100b9b: 83 ec 08 subl $8, %esp +c0100b9e: 6a 11 pushl $17 +c0100ba0: 68 a0 00 00 00 pushl $160 +c0100ba5: e8 2c 17 00 00 calll 5932 +c0100baa: 83 c4 10 addl $16, %esp +c0100bad: 83 ec 08 subl $8, %esp +c0100bb0: 6a 20 pushl $32 +c0100bb2: 6a 21 pushl $33 +c0100bb4: e8 1d 17 00 00 calll 5917 +c0100bb9: 83 c4 10 addl $16, %esp +c0100bbc: 83 ec 08 subl $8, %esp +c0100bbf: 6a 28 pushl $40 +c0100bc1: 68 a1 00 00 00 pushl $161 +c0100bc6: e8 0b 17 00 00 calll 5899 +c0100bcb: 83 c4 10 addl $16, %esp +c0100bce: 83 ec 08 subl $8, %esp +c0100bd1: 6a 04 pushl $4 +c0100bd3: 6a 21 pushl $33 +c0100bd5: e8 fc 16 00 00 calll 5884 +c0100bda: 83 c4 10 addl $16, %esp +c0100bdd: 83 ec 08 subl $8, %esp +c0100be0: 6a 02 pushl $2 +c0100be2: 68 a1 00 00 00 pushl $161 +c0100be7: e8 ea 16 00 00 calll 5866 +c0100bec: 83 c4 10 addl $16, %esp +c0100bef: 83 ec 08 subl $8, %esp +c0100bf2: 6a 01 pushl $1 +c0100bf4: 6a 21 pushl $33 +c0100bf6: e8 db 16 00 00 calll 5851 +c0100bfb: 83 c4 10 addl $16, %esp +c0100bfe: 83 ec 08 subl $8, %esp +c0100c01: 6a 01 pushl $1 +c0100c03: 68 a1 00 00 00 pushl $161 +c0100c08: e8 c9 16 00 00 calll 5833 +c0100c0d: 83 c4 10 addl $16, %esp +c0100c10: 83 ec 08 subl $8, %esp +c0100c13: 6a 00 pushl $0 +c0100c15: 6a 21 pushl $33 +c0100c17: e8 ba 16 00 00 calll 5818 +c0100c1c: 83 c4 10 addl $16, %esp +c0100c1f: 83 ec 08 subl $8, %esp +c0100c22: 6a 00 pushl $0 +c0100c24: 68 a1 00 00 00 pushl $161 +c0100c29: e8 a8 16 00 00 calll 5800 +c0100c2e: 83 c4 10 addl $16, %esp +c0100c31: b8 d2 28 10 c0 movl $3222284498, %eax +c0100c36: 83 ec 08 subl $8, %esp +c0100c39: 50 pushl %eax +c0100c3a: 6a 20 pushl $32 +c0100c3c: e8 69 fc ff ff calll -919 +c0100c41: 83 c4 10 addl $16, %esp +c0100c44: b8 dc 28 10 c0 movl $3222284508, %eax +c0100c49: 83 ec 08 subl $8, %esp +c0100c4c: 50 pushl %eax +c0100c4d: 6a 21 pushl $33 +c0100c4f: e8 56 fc ff ff calll -938 +c0100c54: 83 c4 10 addl $16, %esp +c0100c57: b8 e6 28 10 c0 movl $3222284518, %eax +c0100c5c: 83 ec 08 subl $8, %esp +c0100c5f: 50 pushl %eax +c0100c60: 6a 22 pushl $34 +c0100c62: e8 43 fc ff ff calll -957 +c0100c67: 83 c4 10 addl $16, %esp +c0100c6a: b8 f0 28 10 c0 movl $3222284528, %eax +c0100c6f: 83 ec 08 subl $8, %esp +c0100c72: 50 pushl %eax +c0100c73: 6a 23 pushl $35 +c0100c75: e8 30 fc ff ff calll -976 +c0100c7a: 83 c4 10 addl $16, %esp +c0100c7d: b8 fa 28 10 c0 movl $3222284538, %eax +c0100c82: 83 ec 08 subl $8, %esp +c0100c85: 50 pushl %eax +c0100c86: 6a 24 pushl $36 +c0100c88: e8 1d fc ff ff calll -995 +c0100c8d: 83 c4 10 addl $16, %esp +c0100c90: b8 04 29 10 c0 movl $3222284548, %eax +c0100c95: 83 ec 08 subl $8, %esp +c0100c98: 50 pushl %eax +c0100c99: 6a 25 pushl $37 +c0100c9b: e8 0a fc ff ff calll -1014 +c0100ca0: 83 c4 10 addl $16, %esp +c0100ca3: b8 0e 29 10 c0 movl $3222284558, %eax +c0100ca8: 83 ec 08 subl $8, %esp +c0100cab: 50 pushl %eax +c0100cac: 6a 26 pushl $38 +c0100cae: e8 f7 fb ff ff calll -1033 +c0100cb3: 83 c4 10 addl $16, %esp +c0100cb6: b8 18 29 10 c0 movl $3222284568, %eax +c0100cbb: 83 ec 08 subl $8, %esp +c0100cbe: 50 pushl %eax +c0100cbf: 6a 27 pushl $39 +c0100cc1: e8 e4 fb ff ff calll -1052 +c0100cc6: 83 c4 10 addl $16, %esp +c0100cc9: b8 22 29 10 c0 movl $3222284578, %eax +c0100cce: 83 ec 08 subl $8, %esp +c0100cd1: 50 pushl %eax +c0100cd2: 6a 28 pushl $40 +c0100cd4: e8 d1 fb ff ff calll -1071 +c0100cd9: 83 c4 10 addl $16, %esp +c0100cdc: b8 2c 29 10 c0 movl $3222284588, %eax +c0100ce1: 83 ec 08 subl $8, %esp +c0100ce4: 50 pushl %eax +c0100ce5: 6a 29 pushl $41 +c0100ce7: e8 be fb ff ff calll -1090 +c0100cec: 83 c4 10 addl $16, %esp +c0100cef: b8 36 29 10 c0 movl $3222284598, %eax +c0100cf4: 83 ec 08 subl $8, %esp +c0100cf7: 50 pushl %eax +c0100cf8: 6a 2a pushl $42 +c0100cfa: e8 ab fb ff ff calll -1109 +c0100cff: 83 c4 10 addl $16, %esp +c0100d02: b8 40 29 10 c0 movl $3222284608, %eax +c0100d07: 83 ec 08 subl $8, %esp +c0100d0a: 50 pushl %eax +c0100d0b: 6a 2b pushl $43 +c0100d0d: e8 98 fb ff ff calll -1128 +c0100d12: 83 c4 10 addl $16, %esp +c0100d15: b8 4a 29 10 c0 movl $3222284618, %eax +c0100d1a: 83 ec 08 subl $8, %esp +c0100d1d: 50 pushl %eax +c0100d1e: 6a 2c pushl $44 +c0100d20: e8 85 fb ff ff calll -1147 +c0100d25: 83 c4 10 addl $16, %esp +c0100d28: b8 54 29 10 c0 movl $3222284628, %eax +c0100d2d: 83 ec 08 subl $8, %esp +c0100d30: 50 pushl %eax +c0100d31: 6a 2d pushl $45 +c0100d33: e8 72 fb ff ff calll -1166 +c0100d38: 83 c4 10 addl $16, %esp +c0100d3b: b8 5e 29 10 c0 movl $3222284638, %eax +c0100d40: 83 ec 08 subl $8, %esp +c0100d43: 50 pushl %eax +c0100d44: 6a 2e pushl $46 +c0100d46: e8 5f fb ff ff calll -1185 +c0100d4b: 83 c4 10 addl $16, %esp +c0100d4e: b8 68 29 10 c0 movl $3222284648, %eax +c0100d53: 83 ec 08 subl $8, %esp +c0100d56: 50 pushl %eax +c0100d57: 6a 2f pushl $47 +c0100d59: e8 4c fb ff ff calll -1204 +c0100d5e: 83 c4 10 addl $16, %esp +c0100d61: e8 8c fb ff ff calll -1140 +c0100d66: 90 nop +c0100d67: c9 leave +c0100d68: c3 retl + +isr_handler: +c0100d69: 55 pushl %ebp +c0100d6a: 89 e5 movl %esp, %ebp +c0100d6c: 57 pushl %edi +c0100d6d: 56 pushl %esi +c0100d6e: 53 pushl %ebx +c0100d6f: 83 ec 2c subl $44, %esp +c0100d72: 8b 45 2c movl 44(%ebp), %eax +c0100d75: 83 f8 0e cmpl $14, %eax +c0100d78: 74 0e je 14 +c0100d7a: 83 f8 50 cmpl $80, %eax +c0100d7d: 0f 84 d2 01 00 00 je 466 +c0100d83: e9 eb 03 00 00 jmp 1003 +c0100d88: 0f 20 d0 movl %cr2, %eax +c0100d8b: 89 45 e4 movl %eax, -28(%ebp) +c0100d8e: 83 ec 0c subl $12, %esp +c0100d91: 68 70 41 10 c0 pushl $3222290800 +c0100d96: e8 1f f7 ff ff calll -2273 +c0100d9b: 83 c4 10 addl $16, %esp +c0100d9e: e8 a6 19 00 00 calll 6566 +c0100da3: 89 c2 movl %eax, %edx +c0100da5: 83 ec 08 subl $8, %esp +c0100da8: 8d 45 d1 leal -47(%ebp), %eax +c0100dab: 50 pushl %eax +c0100dac: 52 pushl %edx +c0100dad: e8 7f 24 00 00 calll 9343 +c0100db2: 83 c4 10 addl $16, %esp +c0100db5: 83 ec 0c subl $12, %esp +c0100db8: 8d 45 d1 leal -47(%ebp), %eax +c0100dbb: 50 pushl %eax +c0100dbc: e8 f9 f6 ff ff calll -2311 +c0100dc1: 83 c4 10 addl $16, %esp +c0100dc4: 83 ec 0c subl $12, %esp +c0100dc7: 68 78 41 10 c0 pushl $3222290808 +c0100dcc: e8 e9 f6 ff ff calll -2327 +c0100dd1: 83 c4 10 addl $16, %esp +c0100dd4: c6 45 d1 00 movb $0, -47(%ebp) +c0100dd8: 8b 45 34 movl 52(%ebp), %eax +c0100ddb: 89 c2 movl %eax, %edx +c0100ddd: 83 ec 08 subl $8, %esp +c0100de0: 8d 45 d1 leal -47(%ebp), %eax +c0100de3: 50 pushl %eax +c0100de4: 52 pushl %edx +c0100de5: e8 d8 24 00 00 calll 9432 +c0100dea: 83 c4 10 addl $16, %esp +c0100ded: 83 ec 0c subl $12, %esp +c0100df0: 8d 45 d1 leal -47(%ebp), %eax +c0100df3: 50 pushl %eax +c0100df4: e8 c1 f6 ff ff calll -2367 +c0100df9: 83 c4 10 addl $16, %esp +c0100dfc: 8b 45 30 movl 48(%ebp), %eax +c0100dff: 85 c0 testl %eax, %eax +c0100e01: 75 15 jne 21 +c0100e03: 83 ec 0c subl $12, %esp +c0100e06: 68 88 41 10 c0 pushl $3222290824 +c0100e0b: e8 aa f6 ff ff calll -2390 +c0100e10: 83 c4 10 addl $16, %esp +c0100e13: e9 ba 00 00 00 jmp 186 +c0100e18: 8b 45 30 movl 48(%ebp), %eax +c0100e1b: 83 f8 01 cmpl $1, %eax +c0100e1e: 75 15 jne 21 +c0100e20: 83 ec 0c subl $12, %esp +c0100e23: 68 cc 41 10 c0 pushl $3222290892 +c0100e28: e8 8d f6 ff ff calll -2419 +c0100e2d: 83 c4 10 addl $16, %esp +c0100e30: e9 9d 00 00 00 jmp 157 +c0100e35: 8b 45 30 movl 48(%ebp), %eax +c0100e38: 83 f8 02 cmpl $2, %eax +c0100e3b: 75 15 jne 21 +c0100e3d: 83 ec 0c subl $12, %esp +c0100e40: 68 1c 42 10 c0 pushl $3222290972 +c0100e45: e8 70 f6 ff ff calll -2448 +c0100e4a: 83 c4 10 addl $16, %esp +c0100e4d: e9 80 00 00 00 jmp 128 +c0100e52: 8b 45 30 movl 48(%ebp), %eax +c0100e55: 83 f8 03 cmpl $3, %eax +c0100e58: 75 12 jne 18 +c0100e5a: 83 ec 0c subl $12, %esp +c0100e5d: 68 64 42 10 c0 pushl $3222291044 +c0100e62: e8 53 f6 ff ff calll -2477 +c0100e67: 83 c4 10 addl $16, %esp +c0100e6a: eb 66 jmp 102 +c0100e6c: 8b 45 30 movl 48(%ebp), %eax +c0100e6f: 83 f8 04 cmpl $4, %eax +c0100e72: 75 12 jne 18 +c0100e74: 83 ec 0c subl $12, %esp +c0100e77: 68 b8 42 10 c0 pushl $3222291128 +c0100e7c: e8 39 f6 ff ff calll -2503 +c0100e81: 83 c4 10 addl $16, %esp +c0100e84: eb 4c jmp 76 +c0100e86: 8b 45 30 movl 48(%ebp), %eax +c0100e89: 83 f8 05 cmpl $5, %eax +c0100e8c: 75 12 jne 18 +c0100e8e: 83 ec 0c subl $12, %esp +c0100e91: 68 fc 42 10 c0 pushl $3222291196 +c0100e96: e8 1f f6 ff ff calll -2529 +c0100e9b: 83 c4 10 addl $16, %esp +c0100e9e: eb 32 jmp 50 +c0100ea0: 8b 45 30 movl 48(%ebp), %eax +c0100ea3: 83 f8 06 cmpl $6, %eax +c0100ea6: 75 12 jne 18 +c0100ea8: 83 ec 0c subl $12, %esp +c0100eab: 68 4c 43 10 c0 pushl $3222291276 +c0100eb0: e8 05 f6 ff ff calll -2555 +c0100eb5: 83 c4 10 addl $16, %esp +c0100eb8: eb 18 jmp 24 +c0100eba: 8b 45 30 movl 48(%ebp), %eax +c0100ebd: 83 f8 07 cmpl $7, %eax +c0100ec0: 75 10 jne 16 +c0100ec2: 83 ec 0c subl $12, %esp +c0100ec5: 68 94 43 10 c0 pushl $3222291348 +c0100eca: e8 eb f5 ff ff calll -2581 +c0100ecf: 83 c4 10 addl $16, %esp +c0100ed2: c6 45 d1 00 movb $0, -47(%ebp) +c0100ed6: 8b 45 e4 movl -28(%ebp), %eax +c0100ed9: 83 ec 08 subl $8, %esp +c0100edc: 8d 55 d1 leal -47(%ebp), %edx +c0100edf: 52 pushl %edx +c0100ee0: 50 pushl %eax +c0100ee1: e8 dc 23 00 00 calll 9180 +c0100ee6: 83 c4 10 addl $16, %esp +c0100ee9: 83 ec 0c subl $12, %esp +c0100eec: 8d 45 d1 leal -47(%ebp), %eax +c0100eef: 50 pushl %eax +c0100ef0: e8 c5 f5 ff ff calll -2619 +c0100ef5: 83 c4 10 addl $16, %esp +c0100ef8: 83 ec 0c subl $12, %esp +c0100efb: 68 e3 43 10 c0 pushl $3222291427 +c0100f00: e8 b5 f5 ff ff calll -2635 +c0100f05: 83 c4 10 addl $16, %esp +c0100f08: 83 ec 0c subl $12, %esp +c0100f0b: 68 e5 43 10 c0 pushl $3222291429 +c0100f10: e8 a5 f5 ff ff calll -2651 +c0100f15: 83 c4 10 addl $16, %esp +c0100f18: c6 45 d1 00 movb $0, -47(%ebp) +c0100f1c: 8b 45 40 movl 64(%ebp), %eax +c0100f1f: 89 c2 movl %eax, %edx +c0100f21: 83 ec 08 subl $8, %esp +c0100f24: 8d 45 d1 leal -47(%ebp), %eax +c0100f27: 50 pushl %eax +c0100f28: 52 pushl %edx +c0100f29: e8 94 23 00 00 calll 9108 +c0100f2e: 83 c4 10 addl $16, %esp +c0100f31: 83 ec 0c subl $12, %esp +c0100f34: 8d 45 d1 leal -47(%ebp), %eax +c0100f37: 50 pushl %eax +c0100f38: e8 7d f5 ff ff calll -2691 +c0100f3d: 83 c4 10 addl $16, %esp +c0100f40: 83 ec 0c subl $12, %esp +c0100f43: 68 f3 43 10 c0 pushl $3222291443 +c0100f48: e8 6d f5 ff ff calll -2707 +c0100f4d: 83 c4 10 addl $16, %esp +c0100f50: e8 4b f9 ff ff calll -1717 +c0100f55: 8b 45 28 movl 40(%ebp), %eax +c0100f58: 83 f8 01 cmpl $1, %eax +c0100f5b: 75 29 jne 41 +c0100f5d: e8 b5 f6 ff ff calll -2379 +c0100f62: 83 ec 40 subl $64, %esp +c0100f65: 89 e0 movl %esp, %eax +c0100f67: 89 c2 movl %eax, %edx +c0100f69: 8d 5d 08 leal 8(%ebp), %ebx +c0100f6c: b8 10 00 00 00 movl $16, %eax +c0100f71: 89 d7 movl %edx, %edi +c0100f73: 89 de movl %ebx, %esi +c0100f75: 89 c1 movl %eax, %ecx +c0100f77: f3 a5 rep movsl (%esi), %es:(%edi) +c0100f79: e8 89 17 00 00 calll 6025 +c0100f7e: 83 c4 40 addl $64, %esp +c0100f81: e9 ed 01 00 00 jmp 493 +c0100f86: 8b 45 28 movl 40(%ebp), %eax +c0100f89: 83 f8 02 cmpl $2, %eax +c0100f8c: 75 14 jne 20 +c0100f8e: 8b 45 1c movl 28(%ebp), %eax +c0100f91: 83 ec 0c subl $12, %esp +c0100f94: 50 pushl %eax +c0100f95: e8 47 17 00 00 calll 5959 +c0100f9a: 83 c4 10 addl $16, %esp +c0100f9d: e9 d1 01 00 00 jmp 465 +c0100fa2: 8b 45 28 movl 40(%ebp), %eax +c0100fa5: 83 f8 03 cmpl $3, %eax +c0100fa8: 75 17 jne 23 +c0100faa: 8b 45 1c movl 28(%ebp), %eax +c0100fad: 83 ec 0c subl $12, %esp +c0100fb0: 50 pushl %eax +c0100fb1: e8 c8 0a 00 00 calll 2760 +c0100fb6: 83 c4 10 addl $16, %esp +c0100fb9: 89 45 1c movl %eax, 28(%ebp) +c0100fbc: e9 b2 01 00 00 jmp 434 +c0100fc1: 8b 45 28 movl 40(%ebp), %eax +c0100fc4: 83 f8 04 cmpl $4, %eax +c0100fc7: 75 1a jne 26 +c0100fc9: 8b 45 24 movl 36(%ebp), %eax +c0100fcc: 89 c2 movl %eax, %edx +c0100fce: 8b 45 1c movl 28(%ebp), %eax +c0100fd1: 83 ec 08 subl $8, %esp +c0100fd4: 52 pushl %edx +c0100fd5: 50 pushl %eax +c0100fd6: e8 a3 0b 00 00 calll 2979 +c0100fdb: 83 c4 10 addl $16, %esp +c0100fde: e9 90 01 00 00 jmp 400 +c0100fe3: 8b 45 28 movl 40(%ebp), %eax +c0100fe6: 83 f8 05 cmpl $5, %eax +c0100fe9: 75 0d jne 13 +c0100feb: e8 ae 16 00 00 calll 5806 +c0100ff0: 89 45 1c movl %eax, 28(%ebp) +c0100ff3: e9 7b 01 00 00 jmp 379 +c0100ff8: 8b 45 28 movl 40(%ebp), %eax +c0100ffb: 83 f8 06 cmpl $6, %eax +c0100ffe: 75 1e jne 30 +c0101000: 8b 55 20 movl 32(%ebp), %edx +c0101003: 8b 45 24 movl 36(%ebp), %eax +c0101006: 89 c1 movl %eax, %ecx +c0101008: 8b 45 1c movl 28(%ebp), %eax +c010100b: 83 ec 04 subl $4, %esp +c010100e: 52 pushl %edx +c010100f: 51 pushl %ecx +c0101010: 50 pushl %eax +c0101011: e8 2b 06 00 00 calll 1579 +c0101016: 83 c4 10 addl $16, %esp +c0101019: e9 55 01 00 00 jmp 341 +c010101e: 8b 45 28 movl 40(%ebp), %eax +c0101021: 83 f8 07 cmpl $7, %eax +c0101024: 75 14 jne 20 +c0101026: 8b 45 1c movl 28(%ebp), %eax +c0101029: 83 ec 0c subl $12, %esp +c010102c: 50 pushl %eax +c010102d: e8 20 05 00 00 calll 1312 +c0101032: 83 c4 10 addl $16, %esp +c0101035: e9 39 01 00 00 jmp 313 +c010103a: 8b 45 28 movl 40(%ebp), %eax +c010103d: 83 f8 08 cmpl $8, %eax +c0101040: 75 0d jne 13 +c0101042: e8 75 0b 00 00 calll 2933 +c0101047: 89 45 1c movl %eax, 28(%ebp) +c010104a: e9 24 01 00 00 jmp 292 +c010104f: 8b 45 28 movl 40(%ebp), %eax +c0101052: 83 f8 09 cmpl $9, %eax +c0101055: 75 24 jne 36 +c0101057: 8b 45 24 movl 36(%ebp), %eax +c010105a: 89 c2 movl %eax, %edx +c010105c: 8b 45 1c movl 28(%ebp), %eax +c010105f: 83 ec 04 subl $4, %esp +c0101062: 6a 00 pushl $0 +c0101064: 6a 00 pushl $0 +c0101066: 6a 00 pushl $0 +c0101068: 6a 00 pushl $0 +c010106a: 6a 00 pushl $0 +c010106c: 52 pushl %edx +c010106d: 50 pushl %eax +c010106e: e8 44 13 00 00 calll 4932 +c0101073: 83 c4 20 addl $32, %esp +c0101076: e9 f8 00 00 00 jmp 248 +c010107b: 8b 45 28 movl 40(%ebp), %eax +c010107e: 83 f8 0a cmpl $10, %eax +c0101081: 75 21 jne 33 +c0101083: 8b 45 10 movl 16(%ebp), %eax +c0101086: 89 c3 movl %eax, %ebx +c0101088: 8b 45 20 movl 32(%ebp), %eax +c010108b: 8b 55 24 movl 36(%ebp), %edx +c010108e: 89 d1 movl %edx, %ecx +c0101090: 8b 55 1c movl 28(%ebp), %edx +c0101093: 53 pushl %ebx +c0101094: 50 pushl %eax +c0101095: 51 pushl %ecx +c0101096: 52 pushl %edx +c0101097: e8 7e f4 ff ff calll -2946 +c010109c: 83 c4 10 addl $16, %esp +c010109f: e9 cf 00 00 00 jmp 207 +c01010a4: 8b 45 28 movl 40(%ebp), %eax +c01010a7: 83 f8 0b cmpl $11, %eax +c01010aa: 75 57 jne 87 +c01010ac: a1 6c 90 10 c0 movl 3222311020, %eax +c01010b1: 8a 40 10 movb 16(%eax), %al +c01010b4: 84 c0 testb %al, %al +c01010b6: 75 0c jne 12 +c01010b8: c7 45 1c 00 00 00 00 movl $0, 28(%ebp) +c01010bf: e9 af 00 00 00 jmp 175 +c01010c4: 8b 45 24 movl 36(%ebp), %eax +c01010c7: 83 ec 0c subl $12, %esp +c01010ca: 50 pushl %eax +c01010cb: e8 f6 08 00 00 calll 2294 +c01010d0: 83 c4 10 addl $16, %esp +c01010d3: 89 45 e0 movl %eax, -32(%ebp) +c01010d6: 8b 45 e0 movl -32(%ebp), %eax +c01010d9: c1 e0 0c shll $12, %eax +c01010dc: 89 45 dc movl %eax, -36(%ebp) +c01010df: 8b 45 24 movl 36(%ebp), %eax +c01010e2: 89 c2 movl %eax, %edx +c01010e4: 8b 45 1c movl 28(%ebp), %eax +c01010e7: 83 ec 0c subl $12, %esp +c01010ea: 6a 01 pushl $1 +c01010ec: 6a 01 pushl $1 +c01010ee: 52 pushl %edx +c01010ef: 50 pushl %eax +c01010f0: ff 75 dc pushl -36(%ebp) +c01010f3: e8 66 07 00 00 calll 1894 +c01010f8: 83 c4 20 addl $32, %esp +c01010fb: 8b 45 dc movl -36(%ebp), %eax +c01010fe: 89 45 1c movl %eax, 28(%ebp) +c0101101: eb 70 jmp 112 +c0101103: 8b 45 28 movl 40(%ebp), %eax +c0101106: 83 f8 0c cmpl $12, %eax +c0101109: 75 25 jne 37 +c010110b: 8b 55 10 movl 16(%ebp), %edx +c010110e: 8b 45 20 movl 32(%ebp), %eax +c0101111: 8b 4d 24 movl 36(%ebp), %ecx +c0101114: 89 cb movl %ecx, %ebx +c0101116: 8b 4d 1c movl 28(%ebp), %ecx +c0101119: 83 ec 04 subl $4, %esp +c010111c: 52 pushl %edx +c010111d: 6a 01 pushl $1 +c010111f: 50 pushl %eax +c0101120: 6a 01 pushl $1 +c0101122: 6a 00 pushl $0 +c0101124: 53 pushl %ebx +c0101125: 51 pushl %ecx +c0101126: e8 8c 12 00 00 calll 4748 +c010112b: 83 c4 20 addl $32, %esp +c010112e: eb 43 jmp 67 +c0101130: 8b 45 28 movl 40(%ebp), %eax +c0101133: 83 f8 0d cmpl $13, %eax +c0101136: 75 1e jne 30 +c0101138: 8b 45 20 movl 32(%ebp), %eax +c010113b: 8b 55 24 movl 36(%ebp), %edx +c010113e: 89 d1 movl %edx, %ecx +c0101140: 8b 55 1c movl 28(%ebp), %edx +c0101143: 83 ec 04 subl $4, %esp +c0101146: 50 pushl %eax +c0101147: 51 pushl %ecx +c0101148: 52 pushl %edx +c0101149: e8 27 f4 ff ff calll -3033 +c010114e: 83 c4 10 addl $16, %esp +c0101151: 89 45 1c movl %eax, 28(%ebp) +c0101154: eb 1d jmp 29 +c0101156: 8b 45 28 movl 40(%ebp), %eax +c0101159: 83 f8 0e cmpl $14, %eax +c010115c: 75 15 jne 21 +c010115e: 8b 45 1c movl 28(%ebp), %eax +c0101161: 0f b7 c0 movzwl %ax, %eax +c0101164: 83 ec 0c subl $12, %esp +c0101167: 50 pushl %eax +c0101168: e8 1d 03 00 00 calll 797 +c010116d: 83 c4 10 addl $16, %esp +c0101170: 89 45 1c movl %eax, 28(%ebp) +c0101173: 8d 65 f4 leal -12(%ebp), %esp +c0101176: 5b popl %ebx +c0101177: 5e popl %esi +c0101178: 5f popl %edi +c0101179: 5d popl %ebp +c010117a: c3 retl + +isr_register_handler: +c010117b: 55 pushl %ebp +c010117c: 89 e5 movl %esp, %ebp +c010117e: 83 ec 04 subl $4, %esp +c0101181: 8b 45 08 movl 8(%ebp), %eax +c0101184: 88 45 fc movb %al, -4(%ebp) +c0101187: 0f b6 45 fc movzbl -4(%ebp), %eax +c010118b: 8b 55 0c movl 12(%ebp), %edx +c010118e: 89 14 85 80 d8 10 c0 movl %edx, -1072637824(,%eax,4) +c0101195: 90 nop +c0101196: c9 leave +c0101197: c3 retl + +irq_handler: +c0101198: 55 pushl %ebp +c0101199: 89 e5 movl %esp, %ebp +c010119b: 57 pushl %edi +c010119c: 56 pushl %esi +c010119d: 53 pushl %ebx +c010119e: 83 ec 1c subl $28, %esp +c01011a1: 8b 45 2c movl 44(%ebp), %eax +c01011a4: 83 f8 27 cmpl $39, %eax +c01011a7: 76 12 jbe 18 +c01011a9: 83 ec 08 subl $8, %esp +c01011ac: 6a 20 pushl $32 +c01011ae: 68 a0 00 00 00 pushl $160 +c01011b3: e8 1e 11 00 00 calll 4382 +c01011b8: 83 c4 10 addl $16, %esp +c01011bb: 83 ec 08 subl $8, %esp +c01011be: 6a 20 pushl $32 +c01011c0: 6a 20 pushl $32 +c01011c2: e8 0f 11 00 00 calll 4367 +c01011c7: 83 c4 10 addl $16, %esp +c01011ca: 8b 45 2c movl 44(%ebp), %eax +c01011cd: 8b 04 85 80 d8 10 c0 movl -1072637824(,%eax,4), %eax +c01011d4: 85 c0 testl %eax, %eax +c01011d6: 74 2c je 44 +c01011d8: 8b 45 2c movl 44(%ebp), %eax +c01011db: 8b 04 85 80 d8 10 c0 movl -1072637824(,%eax,4), %eax +c01011e2: 89 45 e4 movl %eax, -28(%ebp) +c01011e5: 83 ec 40 subl $64, %esp +c01011e8: 89 e0 movl %esp, %eax +c01011ea: 89 c2 movl %eax, %edx +c01011ec: 8d 5d 08 leal 8(%ebp), %ebx +c01011ef: b8 10 00 00 00 movl $16, %eax +c01011f4: 89 d7 movl %edx, %edi +c01011f6: 89 de movl %ebx, %esi +c01011f8: 89 c1 movl %eax, %ecx +c01011fa: f3 a5 rep movsl (%esi), %es:(%edi) +c01011fc: 8b 45 e4 movl -28(%ebp), %eax +c01011ff: ff d0 calll *%eax +c0101201: 83 c4 40 addl $64, %esp +c0101204: 90 nop +c0101205: 8d 65 f4 leal -12(%ebp), %esp +c0101208: 5b popl %ebx +c0101209: 5e popl %esi +c010120a: 5f popl %edi +c010120b: 5d popl %ebp +c010120c: c3 retl + +get_bmap_bit: +c010120d: 55 pushl %ebp +c010120e: 89 e5 movl %esp, %ebp +c0101210: 53 pushl %ebx +c0101211: 83 ec 10 subl $16, %esp +c0101214: 8b 45 08 movl 8(%ebp), %eax +c0101217: c1 e8 03 shrl $3, %eax +c010121a: 89 45 f8 movl %eax, -8(%ebp) +c010121d: 8b 45 08 movl 8(%ebp), %eax +c0101220: 83 e0 07 andl $7, %eax +c0101223: 89 45 f4 movl %eax, -12(%ebp) +c0101226: 8b 45 f8 movl -8(%ebp), %eax +c0101229: 05 80 dc 10 c0 addl $3222330496, %eax +c010122e: 8a 00 movb (%eax), %al +c0101230: 88 45 f3 movb %al, -13(%ebp) +c0101233: 0f be 55 f3 movsbl -13(%ebp), %edx +c0101237: 8b 45 f4 movl -12(%ebp), %eax +c010123a: bb 01 00 00 00 movl $1, %ebx +c010123f: 88 c1 movb %al, %cl +c0101241: d3 e3 shll %cl, %ebx +c0101243: 89 d8 movl %ebx, %eax +c0101245: 21 d0 andl %edx, %eax +c0101247: 85 c0 testl %eax, %eax +c0101249: 0f 9f c0 setg %al +c010124c: 83 c4 10 addl $16, %esp +c010124f: 5b popl %ebx +c0101250: 5d popl %ebp +c0101251: c3 retl + +set_bmap_bit: +c0101252: 55 pushl %ebp +c0101253: 89 e5 movl %esp, %ebp +c0101255: 53 pushl %ebx +c0101256: 83 ec 10 subl $16, %esp +c0101259: 8b 45 08 movl 8(%ebp), %eax +c010125c: c1 e8 03 shrl $3, %eax +c010125f: 89 45 f8 movl %eax, -8(%ebp) +c0101262: 8b 45 08 movl 8(%ebp), %eax +c0101265: 83 e0 07 andl $7, %eax +c0101268: 89 45 f4 movl %eax, -12(%ebp) +c010126b: 8b 45 f8 movl -8(%ebp), %eax +c010126e: 05 80 dc 10 c0 addl $3222330496, %eax +c0101273: 8a 10 movb (%eax), %dl +c0101275: 8b 45 f4 movl -12(%ebp), %eax +c0101278: bb 01 00 00 00 movl $1, %ebx +c010127d: 88 c1 movb %al, %cl +c010127f: d3 e3 shll %cl, %ebx +c0101281: 89 d8 movl %ebx, %eax +c0101283: 09 c2 orl %eax, %edx +c0101285: 8b 45 f8 movl -8(%ebp), %eax +c0101288: 05 80 dc 10 c0 addl $3222330496, %eax +c010128d: 88 10 movb %dl, (%eax) +c010128f: 90 nop +c0101290: 83 c4 10 addl $16, %esp +c0101293: 5b popl %ebx +c0101294: 5d popl %ebp +c0101295: c3 retl + +clear_bmap_bit: +c0101296: 55 pushl %ebp +c0101297: 89 e5 movl %esp, %ebp +c0101299: 53 pushl %ebx +c010129a: 83 ec 10 subl $16, %esp +c010129d: 8b 45 08 movl 8(%ebp), %eax +c01012a0: c1 e8 03 shrl $3, %eax +c01012a3: 89 45 f8 movl %eax, -8(%ebp) +c01012a6: 8b 45 08 movl 8(%ebp), %eax +c01012a9: 83 e0 07 andl $7, %eax +c01012ac: 89 45 f4 movl %eax, -12(%ebp) +c01012af: 8b 45 f8 movl -8(%ebp), %eax +c01012b2: 05 80 dc 10 c0 addl $3222330496, %eax +c01012b7: 8a 10 movb (%eax), %dl +c01012b9: 8b 45 f4 movl -12(%ebp), %eax +c01012bc: bb 01 00 00 00 movl $1, %ebx +c01012c1: 88 c1 movb %al, %cl +c01012c3: d3 e3 shll %cl, %ebx +c01012c5: 89 d8 movl %ebx, %eax +c01012c7: f7 d0 notl %eax +c01012c9: 21 c2 andl %eax, %edx +c01012cb: 8b 45 f8 movl -8(%ebp), %eax +c01012ce: 05 80 dc 10 c0 addl $3222330496, %eax +c01012d3: 88 10 movb %dl, (%eax) +c01012d5: 90 nop +c01012d6: 83 c4 10 addl $16, %esp +c01012d9: 5b popl %ebx +c01012da: 5d popl %ebp +c01012db: c3 retl + +kmalloc: +c01012dc: 55 pushl %ebp +c01012dd: 89 e5 movl %esp, %ebp +c01012df: 83 ec 58 subl $88, %esp +c01012e2: 8b 45 08 movl 8(%ebp), %eax +c01012e5: ba 00 00 00 00 movl $0, %edx +c01012ea: 89 45 b0 movl %eax, -80(%ebp) +c01012ed: 89 55 b4 movl %edx, -76(%ebp) +c01012f0: df 6d b0 fildll -80(%ebp) +c01012f3: d9 5d c4 fstps -60(%ebp) +c01012f6: d9 45 c4 flds -60(%ebp) +c01012f9: d9 05 f8 43 10 c0 flds -1072675848 +c01012ff: de f9 fdivrp %st(1) +c0101301: 83 ec 0c subl $12, %esp +c0101304: 8d 64 24 fc leal -4(%esp), %esp +c0101308: d9 1c 24 fstps (%esp) +c010130b: e8 f3 16 00 00 calll 5875 +c0101310: 83 c4 10 addl $16, %esp +c0101313: d9 7d c2 fnstcw -62(%ebp) +c0101316: 66 8b 45 c2 movw -62(%ebp), %ax +c010131a: 80 cc 0c orb $12, %ah +c010131d: 66 89 45 c0 movw %ax, -64(%ebp) +c0101321: d9 6d c0 fldcw -64(%ebp) +c0101324: df 7d b8 fistpll -72(%ebp) +c0101327: d9 6d c2 fldcw -62(%ebp) +c010132a: 8b 45 b8 movl -72(%ebp), %eax +c010132d: 8b 55 bc movl -68(%ebp), %edx +c0101330: 89 45 d8 movl %eax, -40(%ebp) +c0101333: 83 45 d8 02 addl $2, -40(%ebp) +c0101337: c7 45 ec 00 00 00 00 movl $0, -20(%ebp) +c010133e: e9 80 00 00 00 jmp 128 +c0101343: c6 45 eb 00 movb $0, -21(%ebp) +c0101347: 8b 45 d8 movl -40(%ebp), %eax +c010134a: 89 45 f0 movl %eax, -16(%ebp) +c010134d: 8b 45 ec movl -20(%ebp), %eax +c0101350: c1 e0 03 shll $3, %eax +c0101353: 89 45 e0 movl %eax, -32(%ebp) +c0101356: 83 ec 0c subl $12, %esp +c0101359: ff 75 e0 pushl -32(%ebp) +c010135c: e8 ac fe ff ff calll -340 +c0101361: 83 c4 10 addl $16, %esp +c0101364: 88 45 d7 movb %al, -41(%ebp) +c0101367: 80 7d eb 00 cmpb $0, -21(%ebp) +c010136b: 74 27 je 39 +c010136d: 80 7d d7 00 cmpb $0, -41(%ebp) +c0101371: 74 1c je 28 +c0101373: 83 7d f0 00 cmpl $0, -16(%ebp) +c0101377: 75 08 jne 8 +c0101379: 8b 45 e4 movl -28(%ebp), %eax +c010137c: 89 45 f4 movl %eax, -12(%ebp) +c010137f: eb 39 jmp 57 +c0101381: 8b 45 e0 movl -32(%ebp), %eax +c0101384: c1 e8 03 shrl $3, %eax +c0101387: 01 45 ec addl %eax, -20(%ebp) +c010138a: ff 4d ec decl -20(%ebp) +c010138d: eb 2b jmp 43 +c010138f: ff 4d f0 decl -16(%ebp) +c0101392: eb 13 jmp 19 +c0101394: 80 7d d7 00 cmpb $0, -41(%ebp) +c0101398: 75 0d jne 13 +c010139a: c6 45 eb 01 movb $1, -21(%ebp) +c010139e: 8b 45 e0 movl -32(%ebp), %eax +c01013a1: 89 45 e4 movl %eax, -28(%ebp) +c01013a4: ff 4d f0 decl -16(%ebp) +c01013a7: 83 7d f0 00 cmpl $0, -16(%ebp) +c01013ab: 75 08 jne 8 +c01013ad: 8b 45 e4 movl -28(%ebp), %eax +c01013b0: 89 45 f4 movl %eax, -12(%ebp) +c01013b3: eb 05 jmp 5 +c01013b5: ff 45 e0 incl -32(%ebp) +c01013b8: eb 9c jmp -100 +c01013ba: 83 7d f0 00 cmpl $0, -16(%ebp) +c01013be: 74 12 je 18 +c01013c0: ff 45 ec incl -20(%ebp) +c01013c3: 81 7d ec ff ff 1f 00 cmpl $2097151, -20(%ebp) +c01013ca: 0f 86 73 ff ff ff jbe -141 +c01013d0: eb 01 jmp 1 +c01013d2: 90 nop +c01013d3: 83 7d f0 00 cmpl $0, -16(%ebp) +c01013d7: 74 07 je 7 +c01013d9: b8 00 00 00 00 movl $0, %eax +c01013de: eb 60 jmp 96 +c01013e0: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) +c01013e7: eb 17 jmp 23 +c01013e9: 8b 55 f4 movl -12(%ebp), %edx +c01013ec: 8b 45 dc movl -36(%ebp), %eax +c01013ef: 01 d0 addl %edx, %eax +c01013f1: 83 ec 0c subl $12, %esp +c01013f4: 50 pushl %eax +c01013f5: e8 58 fe ff ff calll -424 +c01013fa: 83 c4 10 addl $16, %esp +c01013fd: ff 45 dc incl -36(%ebp) +c0101400: 8b 45 dc movl -36(%ebp), %eax +c0101403: 3b 45 d8 cmpl -40(%ebp), %eax +c0101406: 72 e1 jb -31 +c0101408: 8b 45 f4 movl -12(%ebp), %eax +c010140b: 40 incl %eax +c010140c: c1 e0 03 shll $3, %eax +c010140f: 89 45 d0 movl %eax, -48(%ebp) +c0101412: a1 80 60 10 c0 movl 3222298752, %eax +c0101417: 8b 55 d0 movl -48(%ebp), %edx +c010141a: 83 ea 08 subl $8, %edx +c010141d: 01 d0 addl %edx, %eax +c010141f: 89 45 cc movl %eax, -52(%ebp) +c0101422: 8b 45 cc movl -52(%ebp), %eax +c0101425: 8b 55 d8 movl -40(%ebp), %edx +c0101428: 89 10 movl %edx, (%eax) +c010142a: 8b 45 cc movl -52(%ebp), %eax +c010142d: 8d 50 04 leal 4(%eax), %edx +c0101430: 8b 45 f4 movl -12(%ebp), %eax +c0101433: 89 02 movl %eax, (%edx) +c0101435: 8b 15 80 60 10 c0 movl -1072668544, %edx +c010143b: 8b 45 d0 movl -48(%ebp), %eax +c010143e: 01 d0 addl %edx, %eax +c0101440: c9 leave +c0101441: c3 retl + +kfree: +c0101442: 55 pushl %ebp +c0101443: 89 e5 movl %esp, %ebp +c0101445: 83 ec 10 subl $16, %esp +c0101448: 8b 45 08 movl 8(%ebp), %eax +c010144b: 83 e8 0c subl $12, %eax +c010144e: 89 45 f8 movl %eax, -8(%ebp) +c0101451: 8b 45 f8 movl -8(%ebp), %eax +c0101454: 8b 00 movl (%eax), %eax +c0101456: 89 45 f4 movl %eax, -12(%ebp) +c0101459: 8b 45 f8 movl -8(%ebp), %eax +c010145c: 8b 40 04 movl 4(%eax), %eax +c010145f: 89 45 f0 movl %eax, -16(%ebp) +c0101462: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c0101469: eb 14 jmp 20 +c010146b: 8b 55 f0 movl -16(%ebp), %edx +c010146e: 8b 45 fc movl -4(%ebp), %eax +c0101471: 01 d0 addl %edx, %eax +c0101473: 50 pushl %eax +c0101474: e8 1d fe ff ff calll -483 +c0101479: 83 c4 04 addl $4, %esp +c010147c: ff 45 fc incl -4(%ebp) +c010147f: 8b 45 fc movl -4(%ebp), %eax +c0101482: 3b 45 f4 cmpl -12(%ebp), %eax +c0101485: 72 e4 jb -28 +c0101487: 90 nop +c0101488: c9 leave +c0101489: c3 retl + +kernel_mailbox_new: +c010148a: 55 pushl %ebp +c010148b: 89 e5 movl %esp, %ebp +c010148d: 53 pushl %ebx +c010148e: 83 ec 14 subl $20, %esp +c0101491: 8b 45 08 movl 8(%ebp), %eax +c0101494: 66 89 45 f4 movw %ax, -12(%ebp) +c0101498: a1 88 60 10 c0 movl 3222298760, %eax +c010149d: 3d 00 00 04 00 cmpl $262144, %eax +c01014a2: 75 07 jne 7 +c01014a4: b8 ff ff ff ff movl $4294967295, %eax +c01014a9: eb 7d jmp 125 +c01014ab: a1 84 60 10 c0 movl 3222298756, %eax +c01014b0: 8b 15 88 60 10 c0 movl -1072668536, %edx +c01014b6: c1 e2 04 shll $4, %edx +c01014b9: 01 d0 addl %edx, %eax +c01014bb: c7 00 00 00 00 00 movl $0, (%eax) +c01014c1: a1 84 60 10 c0 movl 3222298756, %eax +c01014c6: 8b 15 88 60 10 c0 movl -1072668536, %edx +c01014cc: c1 e2 04 shll $4, %edx +c01014cf: 01 d0 addl %edx, %eax +c01014d1: c7 40 04 00 00 00 00 movl $0, 4(%eax) +c01014d8: a1 84 60 10 c0 movl 3222298756, %eax +c01014dd: 8b 15 88 60 10 c0 movl -1072668536, %edx +c01014e3: c1 e2 04 shll $4, %edx +c01014e6: 01 c2 addl %eax, %edx +c01014e8: 8b 45 f4 movl -12(%ebp), %eax +c01014eb: 66 89 42 08 movw %ax, 8(%edx) +c01014ef: 0f b7 45 f4 movzwl -12(%ebp), %eax +c01014f3: c1 e0 04 shll $4, %eax +c01014f6: 8b 15 84 60 10 c0 movl -1072668540, %edx +c01014fc: 8b 0d 88 60 10 c0 movl -1072668536, %ecx +c0101502: c1 e1 04 shll $4, %ecx +c0101505: 8d 1c 0a leal (%edx,%ecx), %ebx +c0101508: 83 ec 0c subl $12, %esp +c010150b: 50 pushl %eax +c010150c: e8 cb fd ff ff calll -565 +c0101511: 83 c4 10 addl $16, %esp +c0101514: 89 43 0c movl %eax, 12(%ebx) +c0101517: a1 88 60 10 c0 movl 3222298760, %eax +c010151c: 40 incl %eax +c010151d: a3 88 60 10 c0 movl %eax, 3222298760 +c0101522: a1 88 60 10 c0 movl 3222298760, %eax +c0101527: 48 decl %eax +c0101528: 8b 5d fc movl -4(%ebp), %ebx +c010152b: c9 leave +c010152c: c3 retl + +kernel_mailbox_free: +c010152d: 55 pushl %ebp +c010152e: 89 e5 movl %esp, %ebp +c0101530: 83 ec 08 subl $8, %esp +c0101533: a1 84 60 10 c0 movl 3222298756, %eax +c0101538: 8b 55 08 movl 8(%ebp), %edx +c010153b: c1 e2 04 shll $4, %edx +c010153e: 01 d0 addl %edx, %eax +c0101540: 8b 40 0c movl 12(%eax), %eax +c0101543: 83 ec 0c subl $12, %esp +c0101546: 50 pushl %eax +c0101547: e8 f6 fe ff ff calll -266 +c010154c: 83 c4 10 addl $16, %esp +c010154f: 90 nop +c0101550: c9 leave +c0101551: c3 retl + +kernel_mailbox_send_msg: +c0101552: 55 pushl %ebp +c0101553: 89 e5 movl %esp, %ebp +c0101555: 57 pushl %edi +c0101556: 56 pushl %esi +c0101557: 53 pushl %ebx +c0101558: 83 ec 2c subl $44, %esp +c010155b: 8b 15 84 60 10 c0 movl -1072668540, %edx +c0101561: 8b 45 08 movl 8(%ebp), %eax +c0101564: 8b 40 08 movl 8(%eax), %eax +c0101567: c1 e0 04 shll $4, %eax +c010156a: 01 c2 addl %eax, %edx +c010156c: 8d 45 d4 leal -44(%ebp), %eax +c010156f: 89 d3 movl %edx, %ebx +c0101571: ba 04 00 00 00 movl $4, %edx +c0101576: 89 c7 movl %eax, %edi +c0101578: 89 de movl %ebx, %esi +c010157a: 89 d1 movl %edx, %ecx +c010157c: f3 a5 rep movsl (%esi), %es:(%edi) +c010157e: 8b 45 08 movl 8(%ebp), %eax +c0101581: 8b 40 0c movl 12(%eax), %eax +c0101584: 83 ec 0c subl $12, %esp +c0101587: 50 pushl %eax +c0101588: e8 4f fd ff ff calll -689 +c010158d: 83 c4 10 addl $16, %esp +c0101590: 89 45 e4 movl %eax, -28(%ebp) +c0101593: 8b 45 08 movl 8(%ebp), %eax +c0101596: 8b 50 0c movl 12(%eax), %edx +c0101599: 8b 45 08 movl 8(%ebp), %eax +c010159c: 8b 00 movl (%eax), %eax +c010159e: 83 ec 04 subl $4, %esp +c01015a1: 52 pushl %edx +c01015a2: 50 pushl %eax +c01015a3: ff 75 e4 pushl -28(%ebp) +c01015a6: e8 ec 1a 00 00 calll 6892 +c01015ab: 83 c4 10 addl $16, %esp +c01015ae: 8b 45 e0 movl -32(%ebp), %eax +c01015b1: 8b 55 d8 movl -40(%ebp), %edx +c01015b4: c1 e2 04 shll $4, %edx +c01015b7: 01 c2 addl %eax, %edx +c01015b9: 8b 45 e4 movl -28(%ebp), %eax +c01015bc: 89 02 movl %eax, (%edx) +c01015be: 8b 45 e0 movl -32(%ebp), %eax +c01015c1: 8b 55 d8 movl -40(%ebp), %edx +c01015c4: c1 e2 04 shll $4, %edx +c01015c7: 01 c2 addl %eax, %edx +c01015c9: 8b 45 08 movl 8(%ebp), %eax +c01015cc: 8b 40 04 movl 4(%eax), %eax +c01015cf: 89 42 04 movl %eax, 4(%edx) +c01015d2: 8b 45 e0 movl -32(%ebp), %eax +c01015d5: 8b 55 d8 movl -40(%ebp), %edx +c01015d8: c1 e2 04 shll $4, %edx +c01015db: 01 c2 addl %eax, %edx +c01015dd: 8b 45 08 movl 8(%ebp), %eax +c01015e0: 8b 40 08 movl 8(%eax), %eax +c01015e3: 89 42 08 movl %eax, 8(%edx) +c01015e6: 8b 45 e0 movl -32(%ebp), %eax +c01015e9: 8b 55 d8 movl -40(%ebp), %edx +c01015ec: c1 e2 04 shll $4, %edx +c01015ef: 01 c2 addl %eax, %edx +c01015f1: 8b 45 08 movl 8(%ebp), %eax +c01015f4: 8b 40 0c movl 12(%eax), %eax +c01015f7: 89 42 0c movl %eax, 12(%edx) +c01015fa: 8b 45 d8 movl -40(%ebp), %eax +c01015fd: 40 incl %eax +c01015fe: 89 45 d8 movl %eax, -40(%ebp) +c0101601: 8b 55 d8 movl -40(%ebp), %edx +c0101604: 8b 45 dc movl -36(%ebp), %eax +c0101607: 0f b7 c0 movzwl %ax, %eax +c010160a: 39 c2 cmpl %eax, %edx +c010160c: 75 07 jne 7 +c010160e: c7 45 d8 00 00 00 00 movl $0, -40(%ebp) +c0101615: 8b 55 d8 movl -40(%ebp), %edx +c0101618: 8b 45 d4 movl -44(%ebp), %eax +c010161b: 39 c2 cmpl %eax, %edx +c010161d: 75 19 jne 25 +c010161f: 8b 45 d8 movl -40(%ebp), %eax +c0101622: 48 decl %eax +c0101623: 89 45 d8 movl %eax, -40(%ebp) +c0101626: 8b 45 d8 movl -40(%ebp), %eax +c0101629: 83 f8 21 cmpl $33, %eax +c010162c: 75 0a jne 10 +c010162e: 8b 45 dc movl -36(%ebp), %eax +c0101631: 0f b7 c0 movzwl %ax, %eax +c0101634: 48 decl %eax +c0101635: 89 45 d8 movl %eax, -40(%ebp) +c0101638: 90 nop +c0101639: 8d 65 f4 leal -12(%ebp), %esp +c010163c: 5b popl %ebx +c010163d: 5e popl %esi +c010163e: 5f popl %edi +c010163f: 5d popl %ebp +c0101640: c3 retl + +kernel_mailbox_get_msg: +c0101641: 55 pushl %ebp +c0101642: 89 e5 movl %esp, %ebp +c0101644: 57 pushl %edi +c0101645: 56 pushl %esi +c0101646: 53 pushl %ebx +c0101647: 83 ec 1c subl $28, %esp +c010164a: a1 84 60 10 c0 movl 3222298756, %eax +c010164f: 8b 55 08 movl 8(%ebp), %edx +c0101652: c1 e2 04 shll $4, %edx +c0101655: 01 c2 addl %eax, %edx +c0101657: 8d 45 d8 leal -40(%ebp), %eax +c010165a: 89 d3 movl %edx, %ebx +c010165c: ba 04 00 00 00 movl $4, %edx +c0101661: 89 c7 movl %eax, %edi +c0101663: 89 de movl %ebx, %esi +c0101665: 89 d1 movl %edx, %ecx +c0101667: f3 a5 rep movsl (%esi), %es:(%edi) +c0101669: 8b 45 e4 movl -28(%ebp), %eax +c010166c: 8b 55 d8 movl -40(%ebp), %edx +c010166f: c1 e2 04 shll $4, %edx +c0101672: 01 d0 addl %edx, %eax +c0101674: 8b 40 0c movl 12(%eax), %eax +c0101677: 85 c0 testl %eax, %eax +c0101679: 75 5f jne 95 +c010167b: 8b 45 d8 movl -40(%ebp), %eax +c010167e: 40 incl %eax +c010167f: 89 45 d8 movl %eax, -40(%ebp) +c0101682: 8b 55 d8 movl -40(%ebp), %edx +c0101685: 8b 45 e0 movl -32(%ebp), %eax +c0101688: 0f b7 c0 movzwl %ax, %eax +c010168b: 39 c2 cmpl %eax, %edx +c010168d: 75 07 jne 7 +c010168f: c7 45 d8 00 00 00 00 movl $0, -40(%ebp) +c0101696: 8b 45 e4 movl -28(%ebp), %eax +c0101699: 8b 55 d8 movl -40(%ebp), %edx +c010169c: c1 e2 04 shll $4, %edx +c010169f: 01 d0 addl %edx, %eax +c01016a1: 8b 40 0c movl 12(%eax), %eax +c01016a4: 85 c0 testl %eax, %eax +c01016a6: 75 32 jne 50 +c01016a8: 8b 45 d8 movl -40(%ebp), %eax +c01016ab: 48 decl %eax +c01016ac: 89 45 d8 movl %eax, -40(%ebp) +c01016af: 8b 45 d8 movl -40(%ebp), %eax +c01016b2: 83 f8 21 cmpl $33, %eax +c01016b5: 75 0a jne 10 +c01016b7: 8b 45 e0 movl -32(%ebp), %eax +c01016ba: 0f b7 c0 movzwl %ax, %eax +c01016bd: 48 decl %eax +c01016be: 89 45 d8 movl %eax, -40(%ebp) +c01016c1: 8b 45 0c movl 12(%ebp), %eax +c01016c4: c7 40 0c 00 00 00 00 movl $0, 12(%eax) +c01016cb: 8b 45 0c movl 12(%ebp), %eax +c01016ce: c7 40 04 00 00 00 00 movl $0, 4(%eax) +c01016d5: e9 09 01 00 00 jmp 265 +c01016da: 8b 45 e4 movl -28(%ebp), %eax +c01016dd: 8b 55 d8 movl -40(%ebp), %edx +c01016e0: c1 e2 04 shll $4, %edx +c01016e3: 01 d0 addl %edx, %eax +c01016e5: 8b 50 04 movl 4(%eax), %edx +c01016e8: 8b 45 0c movl 12(%ebp), %eax +c01016eb: 89 50 04 movl %edx, 4(%eax) +c01016ee: 8b 45 e4 movl -28(%ebp), %eax +c01016f1: 8b 55 d8 movl -40(%ebp), %edx +c01016f4: c1 e2 04 shll $4, %edx +c01016f7: 01 d0 addl %edx, %eax +c01016f9: 8b 50 08 movl 8(%eax), %edx +c01016fc: 8b 45 0c movl 12(%ebp), %eax +c01016ff: 89 50 08 movl %edx, 8(%eax) +c0101702: 8b 45 e4 movl -28(%ebp), %eax +c0101705: 8b 55 d8 movl -40(%ebp), %edx +c0101708: c1 e2 04 shll $4, %edx +c010170b: 01 d0 addl %edx, %eax +c010170d: 8b 50 0c movl 12(%eax), %edx +c0101710: 8b 45 0c movl 12(%ebp), %eax +c0101713: 89 50 0c movl %edx, 12(%eax) +c0101716: 8b 45 e4 movl -28(%ebp), %eax +c0101719: 8b 55 d8 movl -40(%ebp), %edx +c010171c: c1 e2 04 shll $4, %edx +c010171f: 01 d0 addl %edx, %eax +c0101721: 8b 40 0c movl 12(%eax), %eax +c0101724: 39 45 10 cmpl %eax, 16(%ebp) +c0101727: 76 23 jbe 35 +c0101729: 8b 45 e4 movl -28(%ebp), %eax +c010172c: 8b 55 d8 movl -40(%ebp), %edx +c010172f: c1 e2 04 shll $4, %edx +c0101732: 01 d0 addl %edx, %eax +c0101734: 8b 50 0c movl 12(%eax), %edx +c0101737: 8b 45 0c movl 12(%ebp), %eax +c010173a: 89 50 0c movl %edx, 12(%eax) +c010173d: 8b 45 0c movl 12(%ebp), %eax +c0101740: c7 40 04 00 00 00 00 movl $0, 4(%eax) +c0101747: e9 97 00 00 00 jmp 151 +c010174c: 8b 45 e4 movl -28(%ebp), %eax +c010174f: 8b 55 d8 movl -40(%ebp), %edx +c0101752: c1 e2 04 shll $4, %edx +c0101755: 01 d0 addl %edx, %eax +c0101757: 8b 48 0c movl 12(%eax), %ecx +c010175a: 8b 45 e4 movl -28(%ebp), %eax +c010175d: 8b 55 d8 movl -40(%ebp), %edx +c0101760: c1 e2 04 shll $4, %edx +c0101763: 01 d0 addl %edx, %eax +c0101765: 8b 10 movl (%eax), %edx +c0101767: 8b 45 0c movl 12(%ebp), %eax +c010176a: 8b 00 movl (%eax), %eax +c010176c: 83 ec 04 subl $4, %esp +c010176f: 51 pushl %ecx +c0101770: 52 pushl %edx +c0101771: 50 pushl %eax +c0101772: e8 20 19 00 00 calll 6432 +c0101777: 83 c4 10 addl $16, %esp +c010177a: 8b 45 e4 movl -28(%ebp), %eax +c010177d: 8b 55 d8 movl -40(%ebp), %edx +c0101780: c1 e2 04 shll $4, %edx +c0101783: 01 d0 addl %edx, %eax +c0101785: 8b 00 movl (%eax), %eax +c0101787: 83 ec 0c subl $12, %esp +c010178a: 50 pushl %eax +c010178b: e8 b2 fc ff ff calll -846 +c0101790: 83 c4 10 addl $16, %esp +c0101793: 8b 45 e4 movl -28(%ebp), %eax +c0101796: 8b 55 d8 movl -40(%ebp), %edx +c0101799: c1 e2 04 shll $4, %edx +c010179c: 01 d0 addl %edx, %eax +c010179e: c7 40 0c 00 00 00 00 movl $0, 12(%eax) +c01017a5: 8b 45 d8 movl -40(%ebp), %eax +c01017a8: 40 incl %eax +c01017a9: 89 45 d8 movl %eax, -40(%ebp) +c01017ac: 8b 55 d8 movl -40(%ebp), %edx +c01017af: 8b 45 e0 movl -32(%ebp), %eax +c01017b2: 0f b7 c0 movzwl %ax, %eax +c01017b5: 39 c2 cmpl %eax, %edx +c01017b7: 75 07 jne 7 +c01017b9: c7 45 d8 00 00 00 00 movl $0, -40(%ebp) +c01017c0: 8b 55 d8 movl -40(%ebp), %edx +c01017c3: 8b 45 dc movl -36(%ebp), %eax +c01017c6: 39 c2 cmpl %eax, %edx +c01017c8: 76 19 jbe 25 +c01017ca: 8b 45 dc movl -36(%ebp), %eax +c01017cd: 48 decl %eax +c01017ce: 89 45 d8 movl %eax, -40(%ebp) +c01017d1: 8b 45 d8 movl -40(%ebp), %eax +c01017d4: 83 f8 21 cmpl $33, %eax +c01017d7: 75 0a jne 10 +c01017d9: 8b 45 e0 movl -32(%ebp), %eax +c01017dc: 0f b7 c0 movzwl %ax, %eax +c01017df: 48 decl %eax +c01017e0: 89 45 d8 movl %eax, -40(%ebp) +c01017e3: 8d 65 f4 leal -12(%ebp), %esp +c01017e6: 5b popl %ebx +c01017e7: 5e popl %esi +c01017e8: 5f popl %edi +c01017e9: 5d popl %ebp +c01017ea: c3 retl + +is_page_present: +c01017eb: 55 pushl %ebp +c01017ec: 89 e5 movl %esp, %ebp +c01017ee: 83 ec 10 subl $16, %esp +c01017f1: 8b 45 08 movl 8(%ebp), %eax +c01017f4: c1 f8 0a sarl $10, %eax +c01017f7: 89 45 fc movl %eax, -4(%ebp) +c01017fa: 81 65 08 ff 03 00 00 andl $1023, 8(%ebp) +c0101801: a1 8c 60 10 c0 movl 3222298764, %eax +c0101806: 8b 55 fc movl -4(%ebp), %edx +c0101809: c1 e2 02 shll $2, %edx +c010180c: 01 d0 addl %edx, %eax +c010180e: 8b 00 movl (%eax), %eax +c0101810: 83 e0 01 andl $1, %eax +c0101813: 85 c0 testl %eax, %eax +c0101815: 75 04 jne 4 +c0101817: b0 00 movb $0, %al +c0101819: eb 41 jmp 65 +c010181b: a1 8c 60 10 c0 movl 3222298764, %eax +c0101820: 8b 55 fc movl -4(%ebp), %edx +c0101823: c1 e2 02 shll $2, %edx +c0101826: 01 d0 addl %edx, %eax +c0101828: 8b 00 movl (%eax), %eax +c010182a: 25 00 fc ff ff andl $4294966272, %eax +c010182f: 89 c2 movl %eax, %edx +c0101831: 8b 45 fc movl -4(%ebp), %eax +c0101834: 40 incl %eax +c0101835: 83 ca 03 orl $3, %edx +c0101838: 89 14 85 00 40 33 c0 movl %edx, -1070383104(,%eax,4) +c010183f: a1 8c 60 10 c0 movl 3222298764, %eax +c0101844: 8b 55 fc movl -4(%ebp), %edx +c0101847: 42 incl %edx +c0101848: 89 d1 movl %edx, %ecx +c010184a: c1 e1 0a shll $10, %ecx +c010184d: 8b 55 08 movl 8(%ebp), %edx +c0101850: 01 ca addl %ecx, %edx +c0101852: c1 e2 02 shll $2, %edx +c0101855: 01 d0 addl %edx, %eax +c0101857: 8b 00 movl (%eax), %eax +c0101859: 83 e0 01 andl $1, %eax +c010185c: c9 leave +c010185d: c3 retl + +map_pages: +c010185e: 55 pushl %ebp +c010185f: 89 e5 movl %esp, %ebp +c0101861: 53 pushl %ebx +c0101862: 83 ec 34 subl $52, %esp +c0101865: 8b 55 14 movl 20(%ebp), %edx +c0101868: 8b 45 18 movl 24(%ebp), %eax +c010186b: 88 55 d4 movb %dl, -44(%ebp) +c010186e: 88 45 d0 movb %al, -48(%ebp) +c0101871: 8b 45 08 movl 8(%ebp), %eax +c0101874: 89 45 e4 movl %eax, -28(%ebp) +c0101877: 8b 45 0c movl 12(%ebp), %eax +c010187a: 89 45 f4 movl %eax, -12(%ebp) +c010187d: 8b 45 e4 movl -28(%ebp), %eax +c0101880: c1 e8 16 shrl $22, %eax +c0101883: 89 45 f0 movl %eax, -16(%ebp) +c0101886: 8b 45 e4 movl -28(%ebp), %eax +c0101889: c1 e8 0c shrl $12, %eax +c010188c: 25 ff 03 00 00 andl $1023, %eax +c0101891: 89 45 ec movl %eax, -20(%ebp) +c0101894: c7 45 e8 00 00 00 00 movl $0, -24(%ebp) +c010189b: e9 de 00 00 00 jmp 222 +c01018a0: a1 8c 60 10 c0 movl 3222298764, %eax +c01018a5: 8b 55 f0 movl -16(%ebp), %edx +c01018a8: c1 e2 02 shll $2, %edx +c01018ab: 01 d0 addl %edx, %eax +c01018ad: 8b 00 movl (%eax), %eax +c01018af: 83 e0 01 andl $1, %eax +c01018b2: 85 c0 testl %eax, %eax +c01018b4: 75 43 jne 67 +c01018b6: c7 45 e0 01 00 00 00 movl $1, -32(%ebp) +c01018bd: 0f be 45 d0 movsbl -48(%ebp), %eax +c01018c1: 01 c0 addl %eax, %eax +c01018c3: 83 e0 02 andl $2, %eax +c01018c6: 09 45 e0 orl %eax, -32(%ebp) +c01018c9: 0f be 45 d4 movsbl -44(%ebp), %eax +c01018cd: c1 e0 02 shll $2, %eax +c01018d0: 83 e0 04 andl $4, %eax +c01018d3: 09 45 e0 orl %eax, -32(%ebp) +c01018d6: 83 ec 0c subl $12, %esp +c01018d9: 6a 01 pushl $1 +c01018db: e8 d7 08 00 00 calll 2263 +c01018e0: 83 c4 10 addl $16, %esp +c01018e3: 89 c3 movl %eax, %ebx +c01018e5: 8b 55 e0 movl -32(%ebp), %edx +c01018e8: a1 8c 60 10 c0 movl 3222298764, %eax +c01018ed: 8b 4d f0 movl -16(%ebp), %ecx +c01018f0: c1 e1 02 shll $2, %ecx +c01018f3: 01 c8 addl %ecx, %eax +c01018f5: 09 da orl %ebx, %edx +c01018f7: 89 10 movl %edx, (%eax) +c01018f9: a1 8c 60 10 c0 movl 3222298764, %eax +c01018fe: 8b 55 f0 movl -16(%ebp), %edx +c0101901: c1 e2 02 shll $2, %edx +c0101904: 01 d0 addl %edx, %eax +c0101906: 8b 00 movl (%eax), %eax +c0101908: 25 00 fc ff ff andl $4294966272, %eax +c010190d: 89 c2 movl %eax, %edx +c010190f: 8b 45 f0 movl -16(%ebp), %eax +c0101912: 40 incl %eax +c0101913: 83 ca 03 orl $3, %edx +c0101916: 89 14 85 00 40 33 c0 movl %edx, -1070383104(,%eax,4) +c010191d: c7 45 dc 01 00 00 00 movl $1, -36(%ebp) +c0101924: 0f be 45 d0 movsbl -48(%ebp), %eax +c0101928: 01 c0 addl %eax, %eax +c010192a: 83 e0 02 andl $2, %eax +c010192d: 09 45 dc orl %eax, -36(%ebp) +c0101930: 0f be 45 d4 movsbl -44(%ebp), %eax +c0101934: c1 e0 02 shll $2, %eax +c0101937: 83 e0 04 andl $4, %eax +c010193a: 09 45 dc orl %eax, -36(%ebp) +c010193d: 8b 45 dc movl -36(%ebp), %eax +c0101940: 8b 15 8c 60 10 c0 movl -1072668532, %edx +c0101946: 8b 4d f0 movl -16(%ebp), %ecx +c0101949: 41 incl %ecx +c010194a: 89 cb movl %ecx, %ebx +c010194c: c1 e3 0a shll $10, %ebx +c010194f: 8b 4d ec movl -20(%ebp), %ecx +c0101952: 01 d9 addl %ebx, %ecx +c0101954: c1 e1 02 shll $2, %ecx +c0101957: 01 ca addl %ecx, %edx +c0101959: 0b 45 f4 orl -12(%ebp), %eax +c010195c: 89 02 movl %eax, (%edx) +c010195e: ff 45 ec incl -20(%ebp) +c0101961: 81 7d ec 00 04 00 00 cmpl $1024, -20(%ebp) +c0101968: 75 0a jne 10 +c010196a: c7 45 ec 00 00 00 00 movl $0, -20(%ebp) +c0101971: ff 45 f0 incl -16(%ebp) +c0101974: 81 45 f4 00 10 00 00 addl $4096, -12(%ebp) +c010197b: ff 45 e8 incl -24(%ebp) +c010197e: 8b 45 e8 movl -24(%ebp), %eax +c0101981: 3b 45 10 cmpl 16(%ebp), %eax +c0101984: 0f 8e 16 ff ff ff jle -234 +c010198a: 90 nop +c010198b: 8b 5d fc movl -4(%ebp), %ebx +c010198e: c9 leave +c010198f: c3 retl + +map_kstack: +c0101990: 55 pushl %ebp +c0101991: 89 e5 movl %esp, %ebp +c0101993: 83 ec 08 subl $8, %esp +c0101996: 8b 45 08 movl 8(%ebp), %eax +c0101999: 8b 04 85 00 00 31 c0 movl -1070530560(,%eax,4), %eax +c01019a0: 83 e0 01 andl $1, %eax +c01019a3: 85 c0 testl %eax, %eax +c01019a5: 75 1c jne 28 +c01019a7: 83 ec 0c subl $12, %esp +c01019aa: 6a 01 pushl $1 +c01019ac: e8 06 08 00 00 calll 2054 +c01019b1: 83 c4 10 addl $16, %esp +c01019b4: 83 c8 03 orl $3, %eax +c01019b7: 89 c2 movl %eax, %edx +c01019b9: 8b 45 08 movl 8(%ebp), %eax +c01019bc: 89 14 85 00 00 31 c0 movl %edx, -1070530560(,%eax,4) +c01019c3: 90 nop +c01019c4: c9 leave +c01019c5: c3 retl + +find_free_pages: +c01019c6: 55 pushl %ebp +c01019c7: 89 e5 movl %esp, %ebp +c01019c9: 83 ec 28 subl $40, %esp +c01019cc: c7 45 ec 01 00 00 00 movl $1, -20(%ebp) +c01019d3: eb 7e jmp 126 +c01019d5: c6 45 eb 00 movb $0, -21(%ebp) +c01019d9: 8b 45 08 movl 8(%ebp), %eax +c01019dc: 89 45 f0 movl %eax, -16(%ebp) +c01019df: 8b 45 ec movl -20(%ebp), %eax +c01019e2: c1 e0 03 shll $3, %eax +c01019e5: 89 45 e0 movl %eax, -32(%ebp) +c01019e8: 8b 45 e0 movl -32(%ebp), %eax +c01019eb: 50 pushl %eax +c01019ec: e8 fa fd ff ff calll -518 +c01019f1: 83 c4 04 addl $4, %esp +c01019f4: 88 45 df movb %al, -33(%ebp) +c01019f7: 80 7d eb 00 cmpb $0, -21(%ebp) +c01019fb: 74 27 je 39 +c01019fd: 80 7d df 00 cmpb $0, -33(%ebp) +c0101a01: 74 1c je 28 +c0101a03: 83 7d f0 00 cmpl $0, -16(%ebp) +c0101a07: 75 08 jne 8 +c0101a09: 8b 45 e4 movl -28(%ebp), %eax +c0101a0c: 89 45 f4 movl %eax, -12(%ebp) +c0101a0f: eb 39 jmp 57 +c0101a11: 8b 45 e0 movl -32(%ebp), %eax +c0101a14: c1 e8 03 shrl $3, %eax +c0101a17: 01 45 ec addl %eax, -20(%ebp) +c0101a1a: ff 4d ec decl -20(%ebp) +c0101a1d: eb 2b jmp 43 +c0101a1f: ff 4d f0 decl -16(%ebp) +c0101a22: eb 13 jmp 19 +c0101a24: 80 7d df 00 cmpb $0, -33(%ebp) +c0101a28: 75 0d jne 13 +c0101a2a: c6 45 eb 01 movb $1, -21(%ebp) +c0101a2e: 8b 45 e0 movl -32(%ebp), %eax +c0101a31: 89 45 e4 movl %eax, -28(%ebp) +c0101a34: ff 4d f0 decl -16(%ebp) +c0101a37: 83 7d f0 00 cmpl $0, -16(%ebp) +c0101a3b: 75 08 jne 8 +c0101a3d: 8b 45 e4 movl -28(%ebp), %eax +c0101a40: 89 45 f4 movl %eax, -12(%ebp) +c0101a43: eb 05 jmp 5 +c0101a45: ff 45 e0 incl -32(%ebp) +c0101a48: eb 9e jmp -98 +c0101a4a: 83 7d f0 00 cmpl $0, -16(%ebp) +c0101a4e: 74 12 je 18 +c0101a50: ff 45 ec incl -20(%ebp) +c0101a53: 81 7d ec ff ff 01 00 cmpl $131071, -20(%ebp) +c0101a5a: 0f 86 75 ff ff ff jbe -139 +c0101a60: eb 01 jmp 1 +c0101a62: 90 nop +c0101a63: 83 7d f0 00 cmpl $0, -16(%ebp) +c0101a67: 74 10 je 16 +c0101a69: 83 ec 0c subl $12, %esp +c0101a6c: 68 fc 43 10 c0 pushl $3222291452 +c0101a71: e8 44 ea ff ff calll -5564 +c0101a76: 83 c4 10 addl $16, %esp +c0101a79: 8b 45 f4 movl -12(%ebp), %eax +c0101a7c: c9 leave +c0101a7d: c3 retl + +alloc_pages: +c0101a7e: 55 pushl %ebp +c0101a7f: 89 e5 movl %esp, %ebp +c0101a81: 83 ec 18 subl $24, %esp +c0101a84: 83 ec 0c subl $12, %esp +c0101a87: ff 75 08 pushl 8(%ebp) +c0101a8a: e8 28 07 00 00 calll 1832 +c0101a8f: 83 c4 10 addl $16, %esp +c0101a92: 89 45 f4 movl %eax, -12(%ebp) +c0101a95: 83 ec 0c subl $12, %esp +c0101a98: ff 75 08 pushl 8(%ebp) +c0101a9b: e8 26 ff ff ff calll -218 +c0101aa0: 83 c4 10 addl $16, %esp +c0101aa3: c1 e0 0c shll $12, %eax +c0101aa6: 89 45 f0 movl %eax, -16(%ebp) +c0101aa9: 83 ec 0c subl $12, %esp +c0101aac: 6a 01 pushl $1 +c0101aae: 6a 01 pushl $1 +c0101ab0: ff 75 08 pushl 8(%ebp) +c0101ab3: ff 75 f4 pushl -12(%ebp) +c0101ab6: ff 75 f0 pushl -16(%ebp) +c0101ab9: e8 a0 fd ff ff calll -608 +c0101abe: 83 c4 20 addl $32, %esp +c0101ac1: 8b 45 f0 movl -16(%ebp), %eax +c0101ac4: c9 leave +c0101ac5: c3 retl + +virt_to_phys: +c0101ac6: 55 pushl %ebp +c0101ac7: 89 e5 movl %esp, %ebp +c0101ac9: 83 ec 10 subl $16, %esp +c0101acc: 8b 45 08 movl 8(%ebp), %eax +c0101acf: 89 45 fc movl %eax, -4(%ebp) +c0101ad2: 8b 45 fc movl -4(%ebp), %eax +c0101ad5: 25 ff 03 00 00 andl $1023, %eax +c0101ada: 89 45 f8 movl %eax, -8(%ebp) +c0101add: 81 65 fc 00 fc ff ff andl $4294966272, -4(%ebp) +c0101ae4: 8b 45 fc movl -4(%ebp), %eax +c0101ae7: c1 e8 0c shrl $12, %eax +c0101aea: 50 pushl %eax +c0101aeb: e8 fb fc ff ff calll -773 +c0101af0: 83 c4 04 addl $4, %esp +c0101af3: 84 c0 testb %al, %al +c0101af5: 75 07 jne 7 +c0101af7: b8 00 00 00 00 movl $0, %eax +c0101afc: eb 7e jmp 126 +c0101afe: 8b 45 fc movl -4(%ebp), %eax +c0101b01: c1 e8 16 shrl $22, %eax +c0101b04: 89 45 f4 movl %eax, -12(%ebp) +c0101b07: 8b 45 fc movl -4(%ebp), %eax +c0101b0a: c1 e8 0c shrl $12, %eax +c0101b0d: 25 ff 03 00 00 andl $1023, %eax +c0101b12: 89 45 f0 movl %eax, -16(%ebp) +c0101b15: a1 8c 60 10 c0 movl 3222298764, %eax +c0101b1a: 8b 55 f4 movl -12(%ebp), %edx +c0101b1d: c1 e2 02 shll $2, %edx +c0101b20: 01 d0 addl %edx, %eax +c0101b22: 8b 00 movl (%eax), %eax +c0101b24: 83 e0 01 andl $1, %eax +c0101b27: 85 c0 testl %eax, %eax +c0101b29: 75 07 jne 7 +c0101b2b: b8 00 00 00 00 movl $0, %eax +c0101b30: eb 4a jmp 74 +c0101b32: a1 8c 60 10 c0 movl 3222298764, %eax +c0101b37: 8b 55 f4 movl -12(%ebp), %edx +c0101b3a: c1 e2 02 shll $2, %edx +c0101b3d: 01 d0 addl %edx, %eax +c0101b3f: 8b 00 movl (%eax), %eax +c0101b41: 25 00 fc ff ff andl $4294966272, %eax +c0101b46: 89 c2 movl %eax, %edx +c0101b48: 8b 45 f4 movl -12(%ebp), %eax +c0101b4b: 40 incl %eax +c0101b4c: 83 ca 03 orl $3, %edx +c0101b4f: 89 14 85 00 40 33 c0 movl %edx, -1070383104(,%eax,4) +c0101b56: a1 8c 60 10 c0 movl 3222298764, %eax +c0101b5b: 8b 55 f4 movl -12(%ebp), %edx +c0101b5e: 42 incl %edx +c0101b5f: 89 d1 movl %edx, %ecx +c0101b61: c1 e1 0a shll $10, %ecx +c0101b64: 8b 55 f0 movl -16(%ebp), %edx +c0101b67: 01 ca addl %ecx, %edx +c0101b69: c1 e2 02 shll $2, %edx +c0101b6c: 01 d0 addl %edx, %eax +c0101b6e: 8b 00 movl (%eax), %eax +c0101b70: 25 00 fc ff ff andl $4294966272, %eax +c0101b75: 89 c2 movl %eax, %edx +c0101b77: 8b 45 f8 movl -8(%ebp), %eax +c0101b7a: 01 d0 addl %edx, %eax +c0101b7c: c9 leave +c0101b7d: c3 retl + +alloc_pages_virt: +c0101b7e: 55 pushl %ebp +c0101b7f: 89 e5 movl %esp, %ebp +c0101b81: 83 ec 18 subl $24, %esp +c0101b84: 83 ec 0c subl $12, %esp +c0101b87: ff 75 08 pushl 8(%ebp) +c0101b8a: e8 28 06 00 00 calll 1576 +c0101b8f: 83 c4 10 addl $16, %esp +c0101b92: 89 45 f4 movl %eax, -12(%ebp) +c0101b95: 83 ec 0c subl $12, %esp +c0101b98: 6a 01 pushl $1 +c0101b9a: 6a 01 pushl $1 +c0101b9c: ff 75 08 pushl 8(%ebp) +c0101b9f: ff 75 f4 pushl -12(%ebp) +c0101ba2: ff 75 0c pushl 12(%ebp) +c0101ba5: e8 b4 fc ff ff calll -844 +c0101baa: 83 c4 20 addl $32, %esp +c0101bad: 90 nop +c0101bae: c9 leave +c0101baf: c3 retl + +invl_page: +c0101bb0: 55 pushl %ebp +c0101bb1: 89 e5 movl %esp, %ebp +c0101bb3: 8b 45 08 movl 8(%ebp), %eax +c0101bb6: 0f 01 38 invlpg (%eax) +c0101bb9: 90 nop +c0101bba: 5d popl %ebp +c0101bbb: c3 retl + +paging_new_address_space: +c0101bbc: 55 pushl %ebp +c0101bbd: 89 e5 movl %esp, %ebp +c0101bbf: 83 ec 18 subl $24, %esp +c0101bc2: 0f 20 d8 movl %cr3, %eax +c0101bc5: 89 45 ec movl %eax, -20(%ebp) +c0101bc8: 83 ec 0c subl $12, %esp +c0101bcb: 6a 01 pushl $1 +c0101bcd: e8 e5 05 00 00 calll 1509 +c0101bd2: 83 c4 10 addl $16, %esp +c0101bd5: 89 45 f0 movl %eax, -16(%ebp) +c0101bd8: 8b 45 f0 movl -16(%ebp), %eax +c0101bdb: 83 c8 03 orl $3, %eax +c0101bde: a3 00 40 33 c0 movl %eax, 3224584192 +c0101be3: a1 8c 60 10 c0 movl 3222298764, %eax +c0101be8: 83 ec 0c subl $12, %esp +c0101beb: 50 pushl %eax +c0101bec: e8 bf ff ff ff calll -65 +c0101bf1: 83 c4 10 addl $16, %esp +c0101bf4: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c0101bfb: eb 1c jmp 28 +c0101bfd: a1 8c 60 10 c0 movl 3222298764, %eax +c0101c02: 8b 55 f4 movl -12(%ebp), %edx +c0101c05: c1 e2 02 shll $2, %edx +c0101c08: 01 c2 addl %eax, %edx +c0101c0a: 8b 45 f4 movl -12(%ebp), %eax +c0101c0d: 8b 04 85 00 e0 30 c0 movl -1070538752(,%eax,4), %eax +c0101c14: 89 02 movl %eax, (%edx) +c0101c16: ff 45 f4 incl -12(%ebp) +c0101c19: 81 7d f4 ff 03 00 00 cmpl $1023, -12(%ebp) +c0101c20: 76 db jbe -37 +c0101c22: 8b 45 ec movl -20(%ebp), %eax +c0101c25: 83 c8 03 orl $3, %eax +c0101c28: a3 00 40 33 c0 movl %eax, 3224584192 +c0101c2d: a1 8c 60 10 c0 movl 3222298764, %eax +c0101c32: 83 ec 0c subl $12, %esp +c0101c35: 50 pushl %eax +c0101c36: e8 75 ff ff ff calll -139 +c0101c3b: 83 c4 10 addl $16, %esp +c0101c3e: 8b 45 f0 movl -16(%ebp), %eax +c0101c41: c9 leave +c0101c42: c3 retl + +load_address_space: +c0101c43: 55 pushl %ebp +c0101c44: 89 e5 movl %esp, %ebp +c0101c46: 83 ec 08 subl $8, %esp +c0101c49: 83 ec 0c subl $12, %esp +c0101c4c: ff 75 08 pushl 8(%ebp) +c0101c4f: e8 15 00 00 00 calll 21 +c0101c54: 83 c4 10 addl $16, %esp +c0101c57: 8b 45 08 movl 8(%ebp), %eax +c0101c5a: 83 ec 0c subl $12, %esp +c0101c5d: 50 pushl %eax +c0101c5e: e8 1d 0d 00 00 calll 3357 +c0101c63: 83 c4 10 addl $16, %esp +c0101c66: 90 nop +c0101c67: c9 leave +c0101c68: c3 retl + +load_smap: +c0101c69: 55 pushl %ebp +c0101c6a: 89 e5 movl %esp, %ebp +c0101c6c: 83 ec 10 subl $16, %esp +c0101c6f: 8b 45 08 movl 8(%ebp), %eax +c0101c72: 83 c8 03 orl $3, %eax +c0101c75: a3 00 40 33 c0 movl %eax, 3224584192 +c0101c7a: a1 8c 60 10 c0 movl 3222298764, %eax +c0101c7f: 50 pushl %eax +c0101c80: e8 2b ff ff ff calll -213 +c0101c85: 83 c4 04 addl $4, %esp +c0101c88: c7 45 fc 01 00 00 00 movl $1, -4(%ebp) +c0101c8f: eb 27 jmp 39 +c0101c91: a1 8c 60 10 c0 movl 3222298764, %eax +c0101c96: 8b 55 fc movl -4(%ebp), %edx +c0101c99: c1 e2 0c shll $12, %edx +c0101c9c: 01 d0 addl %edx, %eax +c0101c9e: 50 pushl %eax +c0101c9f: e8 0c ff ff ff calll -244 +c0101ca4: 83 c4 04 addl $4, %esp +c0101ca7: 8b 45 fc movl -4(%ebp), %eax +c0101caa: c7 04 85 00 40 33 c0 00 00 00 00 movl $0, -1070383104(,%eax,4) +c0101cb5: ff 45 fc incl -4(%ebp) +c0101cb8: 81 7d fc ff 07 00 00 cmpl $2047, -4(%ebp) +c0101cbf: 76 d0 jbe -48 +c0101cc1: 90 nop +c0101cc2: c9 leave +c0101cc3: c3 retl + +unmap_pages: +c0101cc4: 55 pushl %ebp +c0101cc5: 89 e5 movl %esp, %ebp +c0101cc7: 83 ec 10 subl $16, %esp +c0101cca: 8b 45 08 movl 8(%ebp), %eax +c0101ccd: 89 45 f0 movl %eax, -16(%ebp) +c0101cd0: 8b 45 f0 movl -16(%ebp), %eax +c0101cd3: c1 e8 16 shrl $22, %eax +c0101cd6: 89 45 fc movl %eax, -4(%ebp) +c0101cd9: 8b 45 f0 movl -16(%ebp), %eax +c0101cdc: c1 e8 0c shrl $12, %eax +c0101cdf: 25 ff 03 00 00 andl $1023, %eax +c0101ce4: 89 45 f8 movl %eax, -8(%ebp) +c0101ce7: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c0101cee: e9 87 00 00 00 jmp 135 +c0101cf3: a1 8c 60 10 c0 movl 3222298764, %eax +c0101cf8: 8b 55 fc movl -4(%ebp), %edx +c0101cfb: c1 e2 02 shll $2, %edx +c0101cfe: 01 d0 addl %edx, %eax +c0101d00: 8b 00 movl (%eax), %eax +c0101d02: 83 e0 01 andl $1, %eax +c0101d05: 85 c0 testl %eax, %eax +c0101d07: 74 6e je 110 +c0101d09: a1 8c 60 10 c0 movl 3222298764, %eax +c0101d0e: 8b 55 fc movl -4(%ebp), %edx +c0101d11: c1 e2 02 shll $2, %edx +c0101d14: 01 d0 addl %edx, %eax +c0101d16: 8b 00 movl (%eax), %eax +c0101d18: 25 00 fc ff ff andl $4294966272, %eax +c0101d1d: 89 c2 movl %eax, %edx +c0101d1f: 8b 45 fc movl -4(%ebp), %eax +c0101d22: 40 incl %eax +c0101d23: 83 ca 03 orl $3, %edx +c0101d26: 89 14 85 00 40 33 c0 movl %edx, -1070383104(,%eax,4) +c0101d2d: a1 8c 60 10 c0 movl 3222298764, %eax +c0101d32: 8b 55 fc movl -4(%ebp), %edx +c0101d35: 42 incl %edx +c0101d36: 89 d1 movl %edx, %ecx +c0101d38: c1 e1 0a shll $10, %ecx +c0101d3b: 8b 55 f8 movl -8(%ebp), %edx +c0101d3e: 01 ca addl %ecx, %edx +c0101d40: c1 e2 02 shll $2, %edx +c0101d43: 01 d0 addl %edx, %eax +c0101d45: c7 00 00 00 00 00 movl $0, (%eax) +c0101d4b: 8b 45 f4 movl -12(%ebp), %eax +c0101d4e: c1 e0 0a shll $10, %eax +c0101d51: 89 c2 movl %eax, %edx +c0101d53: 8b 45 08 movl 8(%ebp), %eax +c0101d56: 01 d0 addl %edx, %eax +c0101d58: 50 pushl %eax +c0101d59: e8 52 fe ff ff calll -430 +c0101d5e: 83 c4 04 addl $4, %esp +c0101d61: ff 45 f8 incl -8(%ebp) +c0101d64: 81 7d f8 00 04 00 00 cmpl $1024, -8(%ebp) +c0101d6b: 75 0a jne 10 +c0101d6d: ff 45 fc incl -4(%ebp) +c0101d70: c7 45 f8 00 00 00 00 movl $0, -8(%ebp) +c0101d77: ff 45 f4 incl -12(%ebp) +c0101d7a: 8b 45 f4 movl -12(%ebp), %eax +c0101d7d: 3b 45 0c cmpl 12(%ebp), %eax +c0101d80: 0f 86 6d ff ff ff jbe -147 +c0101d86: 90 nop +c0101d87: c9 leave +c0101d88: c3 retl + +paging_init: +c0101d89: 55 pushl %ebp +c0101d8a: 89 e5 movl %esp, %ebp +c0101d8c: 83 ec 38 subl $56, %esp +c0101d8f: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c0101d96: eb 18 jmp 24 +c0101d98: 8b 45 f4 movl -12(%ebp), %eax +c0101d9b: c1 e0 0c shll $12, %eax +c0101d9e: 83 c8 03 orl $3, %eax +c0101da1: 89 c2 movl %eax, %edx +c0101da3: 8b 45 f4 movl -12(%ebp), %eax +c0101da6: 89 14 85 00 f0 30 c0 movl %edx, -1070534656(,%eax,4) +c0101dad: ff 45 f4 incl -12(%ebp) +c0101db0: 81 7d f4 ff 03 00 00 cmpl $1023, -12(%ebp) +c0101db7: 76 df jbe -33 +c0101db9: c7 45 f0 00 00 00 00 movl $0, -16(%ebp) +c0101dc0: eb 11 jmp 17 +c0101dc2: 8b 45 f0 movl -16(%ebp), %eax +c0101dc5: c7 04 85 00 00 31 c0 00 00 00 00 movl $0, -1070530560(,%eax,4) +c0101dd0: ff 45 f0 incl -16(%ebp) +c0101dd3: 81 7d f0 ff 7f 00 00 cmpl $32767, -16(%ebp) +c0101dda: 76 e6 jbe -26 +c0101ddc: c7 45 ec 00 00 00 00 movl $0, -20(%ebp) +c0101de3: eb 1f jmp 31 +c0101de5: 83 ec 0c subl $12, %esp +c0101de8: 6a 01 pushl $1 +c0101dea: e8 c8 03 00 00 calll 968 +c0101def: 83 c4 10 addl $16, %esp +c0101df2: 83 c8 03 orl $3, %eax +c0101df5: 89 c2 movl %eax, %edx +c0101df7: 8b 45 ec movl -20(%ebp), %eax +c0101dfa: 89 14 85 00 00 33 c0 movl %edx, -1070399488(,%eax,4) +c0101e01: ff 45 ec incl -20(%ebp) +c0101e04: 81 7d ec ff 0f 00 00 cmpl $4095, -20(%ebp) +c0101e0b: 76 d8 jbe -40 +c0101e0d: b8 00 e0 30 c0 movl $3224428544, %eax +c0101e12: 05 00 00 00 40 addl $1073741824, %eax +c0101e17: 83 c8 03 orl $3, %eax +c0101e1a: a3 00 40 33 c0 movl %eax, 3224584192 +c0101e1f: c7 45 e8 01 00 00 00 movl $1, -24(%ebp) +c0101e26: eb 11 jmp 17 +c0101e28: 8b 45 e8 movl -24(%ebp), %eax +c0101e2b: c7 04 85 00 40 33 c0 00 00 00 00 movl $0, -1070383104(,%eax,4) +c0101e36: ff 45 e8 incl -24(%ebp) +c0101e39: 81 7d e8 ff 07 00 00 cmpl $2047, -24(%ebp) +c0101e40: 76 e6 jbe -26 +c0101e42: c7 45 e4 00 00 00 00 movl $0, -28(%ebp) +c0101e49: eb 2f jmp 47 +c0101e4b: 8b 45 e4 movl -28(%ebp), %eax +c0101e4e: c1 e0 0a shll $10, %eax +c0101e51: c1 e0 02 shll $2, %eax +c0101e54: 05 00 f0 30 c0 addl $3224432640, %eax +c0101e59: 89 45 d4 movl %eax, -44(%ebp) +c0101e5c: 8b 45 d4 movl -44(%ebp), %eax +c0101e5f: 8d 90 00 00 00 40 leal 1073741824(%eax), %edx +c0101e65: 8b 45 e4 movl -28(%ebp), %eax +c0101e68: 05 00 03 00 00 addl $768, %eax +c0101e6d: 83 ca 03 orl $3, %edx +c0101e70: 89 14 85 00 e0 30 c0 movl %edx, -1070538752(,%eax,4) +c0101e77: ff 45 e4 incl -28(%ebp) +c0101e7a: 83 7d e4 00 cmpl $0, -28(%ebp) +c0101e7e: 74 cb je -53 +c0101e80: 83 ec 0c subl $12, %esp +c0101e83: 68 00 04 00 00 pushl $1024 +c0101e88: e8 2a 03 00 00 calll 810 +c0101e8d: 83 c4 10 addl $16, %esp +c0101e90: 0c 83 orb $-125, %al +c0101e92: a3 64 ef 30 c0 movl %eax, 3224432484 +c0101e97: c7 45 e0 00 00 00 00 movl $0, -32(%ebp) +c0101e9e: eb 2f jmp 47 +c0101ea0: 8b 45 e0 movl -32(%ebp), %eax +c0101ea3: c1 e0 0a shll $10, %eax +c0101ea6: c1 e0 02 shll $2, %eax +c0101ea9: 05 00 00 31 c0 addl $3224436736, %eax +c0101eae: 89 45 d0 movl %eax, -48(%ebp) +c0101eb1: 8b 45 d0 movl -48(%ebp), %eax +c0101eb4: 8d 90 00 00 00 40 leal 1073741824(%eax), %edx +c0101eba: 8b 45 e0 movl -32(%ebp), %eax +c0101ebd: 05 da 03 00 00 addl $986, %eax +c0101ec2: 83 ca 03 orl $3, %edx +c0101ec5: 89 14 85 00 e0 30 c0 movl %edx, -1070538752(,%eax,4) +c0101ecc: ff 45 e0 incl -32(%ebp) +c0101ecf: 83 7d e0 1f cmpl $31, -32(%ebp) +c0101ed3: 76 cb jbe -53 +c0101ed5: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) +c0101edc: eb 2f jmp 47 +c0101ede: 8b 45 dc movl -36(%ebp), %eax +c0101ee1: c1 e0 0a shll $10, %eax +c0101ee4: c1 e0 02 shll $2, %eax +c0101ee7: 05 00 00 33 c0 addl $3224567808, %eax +c0101eec: 89 45 cc movl %eax, -52(%ebp) +c0101eef: 8b 45 cc movl -52(%ebp), %eax +c0101ef2: 8d 90 00 00 00 40 leal 1073741824(%eax), %edx +c0101ef8: 8b 45 dc movl -36(%ebp), %eax +c0101efb: 05 fa 03 00 00 addl $1018, %eax +c0101f00: 83 ca 03 orl $3, %edx +c0101f03: 89 14 85 00 e0 30 c0 movl %edx, -1070538752(,%eax,4) +c0101f0a: ff 45 dc incl -36(%ebp) +c0101f0d: 83 7d dc 03 cmpl $3, -36(%ebp) +c0101f11: 76 cb jbe -53 +c0101f13: c7 45 d8 00 00 00 00 movl $0, -40(%ebp) +c0101f1a: eb 2f jmp 47 +c0101f1c: 8b 45 d8 movl -40(%ebp), %eax +c0101f1f: c1 e0 0a shll $10, %eax +c0101f22: c1 e0 02 shll $2, %eax +c0101f25: 05 00 40 33 c0 addl $3224584192, %eax +c0101f2a: 89 45 c8 movl %eax, -56(%ebp) +c0101f2d: 8b 45 c8 movl -56(%ebp), %eax +c0101f30: 8d 90 00 00 00 40 leal 1073741824(%eax), %edx +c0101f36: 8b 45 d8 movl -40(%ebp), %eax +c0101f39: 05 fe 03 00 00 addl $1022, %eax +c0101f3e: 83 ca 03 orl $3, %edx +c0101f41: 89 14 85 00 e0 30 c0 movl %edx, -1070538752(,%eax,4) +c0101f48: ff 45 d8 incl -40(%ebp) +c0101f4b: 83 7d d8 01 cmpl $1, -40(%ebp) +c0101f4f: 76 cb jbe -53 +c0101f51: b8 00 e0 30 c0 movl $3224428544, %eax +c0101f56: 05 00 00 00 40 addl $1073741824, %eax +c0101f5b: 83 ec 0c subl $12, %esp +c0101f5e: 50 pushl %eax +c0101f5f: e8 1c 0a 00 00 calll 2588 +c0101f64: 83 c4 10 addl $16, %esp +c0101f67: 66 87 db xchgw %bx, %bx +c0101f6a: 90 nop +c0101f6b: c9 leave +c0101f6c: c3 retl + +get_bmap_bit: +c0101f6d: 55 pushl %ebp +c0101f6e: 89 e5 movl %esp, %ebp +c0101f70: 53 pushl %ebx +c0101f71: 83 ec 10 subl $16, %esp +c0101f74: 8b 45 08 movl 8(%ebp), %eax +c0101f77: 85 c0 testl %eax, %eax +c0101f79: 79 03 jns 3 +c0101f7b: 83 c0 07 addl $7, %eax +c0101f7e: c1 f8 03 sarl $3, %eax +c0101f81: 89 45 f8 movl %eax, -8(%ebp) +c0101f84: 8b 45 08 movl 8(%ebp), %eax +c0101f87: 25 07 00 00 80 andl $2147483655, %eax +c0101f8c: 85 c0 testl %eax, %eax +c0101f8e: 79 05 jns 5 +c0101f90: 48 decl %eax +c0101f91: 83 c8 f8 orl $-8, %eax +c0101f94: 40 incl %eax +c0101f95: 89 45 f4 movl %eax, -12(%ebp) +c0101f98: 8b 45 f8 movl -8(%ebp), %eax +c0101f9b: 05 00 60 33 c0 addl $3224592384, %eax +c0101fa0: 8a 00 movb (%eax), %al +c0101fa2: 88 45 f3 movb %al, -13(%ebp) +c0101fa5: 0f be 55 f3 movsbl -13(%ebp), %edx +c0101fa9: 8b 45 f4 movl -12(%ebp), %eax +c0101fac: bb 01 00 00 00 movl $1, %ebx +c0101fb1: 88 c1 movb %al, %cl +c0101fb3: d3 e3 shll %cl, %ebx +c0101fb5: 89 d8 movl %ebx, %eax +c0101fb7: 21 d0 andl %edx, %eax +c0101fb9: 85 c0 testl %eax, %eax +c0101fbb: 0f 9f c0 setg %al +c0101fbe: 83 c4 10 addl $16, %esp +c0101fc1: 5b popl %ebx +c0101fc2: 5d popl %ebp +c0101fc3: c3 retl + +set_bmap_bit: +c0101fc4: 55 pushl %ebp +c0101fc5: 89 e5 movl %esp, %ebp +c0101fc7: 53 pushl %ebx +c0101fc8: 83 ec 10 subl $16, %esp +c0101fcb: 8b 45 08 movl 8(%ebp), %eax +c0101fce: 85 c0 testl %eax, %eax +c0101fd0: 79 03 jns 3 +c0101fd2: 83 c0 07 addl $7, %eax +c0101fd5: c1 f8 03 sarl $3, %eax +c0101fd8: 89 45 f8 movl %eax, -8(%ebp) +c0101fdb: 8b 45 08 movl 8(%ebp), %eax +c0101fde: 25 07 00 00 80 andl $2147483655, %eax +c0101fe3: 85 c0 testl %eax, %eax +c0101fe5: 79 05 jns 5 +c0101fe7: 48 decl %eax +c0101fe8: 83 c8 f8 orl $-8, %eax +c0101feb: 40 incl %eax +c0101fec: 89 45 f4 movl %eax, -12(%ebp) +c0101fef: 8b 45 f8 movl -8(%ebp), %eax +c0101ff2: 05 00 60 33 c0 addl $3224592384, %eax +c0101ff7: 8a 10 movb (%eax), %dl +c0101ff9: 8b 45 f4 movl -12(%ebp), %eax +c0101ffc: bb 01 00 00 00 movl $1, %ebx +c0102001: 88 c1 movb %al, %cl +c0102003: d3 e3 shll %cl, %ebx +c0102005: 89 d8 movl %ebx, %eax +c0102007: 09 c2 orl %eax, %edx +c0102009: 8b 45 f8 movl -8(%ebp), %eax +c010200c: 05 00 60 33 c0 addl $3224592384, %eax +c0102011: 88 10 movb %dl, (%eax) +c0102013: 90 nop +c0102014: 83 c4 10 addl $16, %esp +c0102017: 5b popl %ebx +c0102018: 5d popl %ebp +c0102019: c3 retl + +clear_bmap_bit: +c010201a: 55 pushl %ebp +c010201b: 89 e5 movl %esp, %ebp +c010201d: 53 pushl %ebx +c010201e: 83 ec 10 subl $16, %esp +c0102021: 8b 45 08 movl 8(%ebp), %eax +c0102024: 85 c0 testl %eax, %eax +c0102026: 79 03 jns 3 +c0102028: 83 c0 07 addl $7, %eax +c010202b: c1 f8 03 sarl $3, %eax +c010202e: 89 45 f8 movl %eax, -8(%ebp) +c0102031: 8b 45 08 movl 8(%ebp), %eax +c0102034: 25 07 00 00 80 andl $2147483655, %eax +c0102039: 85 c0 testl %eax, %eax +c010203b: 79 05 jns 5 +c010203d: 48 decl %eax +c010203e: 83 c8 f8 orl $-8, %eax +c0102041: 40 incl %eax +c0102042: 89 45 f4 movl %eax, -12(%ebp) +c0102045: 8b 45 f8 movl -8(%ebp), %eax +c0102048: 05 00 60 33 c0 addl $3224592384, %eax +c010204d: 8a 10 movb (%eax), %dl +c010204f: 8b 45 f4 movl -12(%ebp), %eax +c0102052: bb 01 00 00 00 movl $1, %ebx +c0102057: 88 c1 movb %al, %cl +c0102059: d3 e3 shll %cl, %ebx +c010205b: 89 d8 movl %ebx, %eax +c010205d: f7 d0 notl %eax +c010205f: 21 c2 andl %eax, %edx +c0102061: 8b 45 f8 movl -8(%ebp), %eax +c0102064: 05 00 60 33 c0 addl $3224592384, %eax +c0102069: 88 10 movb %dl, (%eax) +c010206b: 90 nop +c010206c: 83 c4 10 addl $16, %esp +c010206f: 5b popl %ebx +c0102070: 5d popl %ebp +c0102071: c3 retl + +pmem_init: +c0102072: 55 pushl %ebp +c0102073: 89 e5 movl %esp, %ebp +c0102075: 83 ec 38 subl $56, %esp +c0102078: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c010207f: eb 0e jmp 14 +c0102081: 8b 45 f4 movl -12(%ebp), %eax +c0102084: 05 00 60 33 c0 addl $3224592384, %eax +c0102089: c6 00 ff movb $-1, (%eax) +c010208c: ff 45 f4 incl -12(%ebp) +c010208f: 81 7d f4 ff ff 01 00 cmpl $131071, -12(%ebp) +c0102096: 7e e9 jle -23 +c0102098: c6 45 f3 00 movb $0, -13(%ebp) +c010209c: 8b 45 08 movl 8(%ebp), %eax +c010209f: 83 c0 08 addl $8, %eax +c01020a2: 89 45 ec movl %eax, -20(%ebp) +c01020a5: e9 be 00 00 00 jmp 190 +c01020aa: 8b 45 ec movl -20(%ebp), %eax +c01020ad: 8b 00 movl (%eax), %eax +c01020af: 83 f8 06 cmpl $6, %eax +c01020b2: 0f 85 a1 00 00 00 jne 161 +c01020b8: c6 45 f3 01 movb $1, -13(%ebp) +c01020bc: 8b 45 ec movl -20(%ebp), %eax +c01020bf: 83 c0 10 addl $16, %eax +c01020c2: 89 45 d8 movl %eax, -40(%ebp) +c01020c5: 8b 45 d8 movl -40(%ebp), %eax +c01020c8: 89 45 e8 movl %eax, -24(%ebp) +c01020cb: eb 77 jmp 119 +c01020cd: 8b 45 e8 movl -24(%ebp), %eax +c01020d0: 8b 40 10 movl 16(%eax), %eax +c01020d3: 83 f8 01 cmpl $1, %eax +c01020d6: 75 64 jne 100 +c01020d8: 8b 45 e8 movl -24(%ebp), %eax +c01020db: 8b 50 04 movl 4(%eax), %edx +c01020de: 8b 00 movl (%eax), %eax +c01020e0: 89 45 e4 movl %eax, -28(%ebp) +c01020e3: 81 7d e4 ff ff 0f 00 cmpl $1048575, -28(%ebp) +c01020ea: 76 53 jbe 83 +c01020ec: 8b 45 e8 movl -24(%ebp), %eax +c01020ef: 8b 50 0c movl 12(%eax), %edx +c01020f2: 8b 40 08 movl 8(%eax), %eax +c01020f5: 89 c2 movl %eax, %edx +c01020f7: 8b 45 e4 movl -28(%ebp), %eax +c01020fa: 01 d0 addl %edx, %eax +c01020fc: 48 decl %eax +c01020fd: 89 45 d4 movl %eax, -44(%ebp) +c0102100: 8b 45 e4 movl -28(%ebp), %eax +c0102103: 25 ff 0f 00 00 andl $4095, %eax +c0102108: 85 c0 testl %eax, %eax +c010210a: 74 07 je 7 +c010210c: 81 45 e4 00 10 00 00 addl $4096, -28(%ebp) +c0102113: c1 6d e4 0c shrl $12, -28(%ebp) +c0102117: c1 6d d4 0c shrl $12, -44(%ebp) +c010211b: 8b 45 e4 movl -28(%ebp), %eax +c010211e: 89 45 e0 movl %eax, -32(%ebp) +c0102121: eb 0f jmp 15 +c0102123: 8b 45 e0 movl -32(%ebp), %eax +c0102126: 50 pushl %eax +c0102127: e8 ee fe ff ff calll -274 +c010212c: 83 c4 04 addl $4, %esp +c010212f: ff 45 e0 incl -32(%ebp) +c0102132: 8b 45 e0 movl -32(%ebp), %eax +c0102135: 3b 45 d4 cmpl -44(%ebp), %eax +c0102138: 72 e9 jb -23 +c010213a: eb 04 jmp 4 +c010213c: 90 nop +c010213d: eb 01 jmp 1 +c010213f: 90 nop +c0102140: 83 45 e8 18 addl $24, -24(%ebp) +c0102144: 8b 45 ec movl -20(%ebp), %eax +c0102147: 8b 50 04 movl 4(%eax), %edx +c010214a: 8b 45 d8 movl -40(%ebp), %eax +c010214d: 01 d0 addl %edx, %eax +c010214f: 39 45 e8 cmpl %eax, -24(%ebp) +c0102152: 0f 82 75 ff ff ff jb -139 +c0102158: 90 nop +c0102159: 8b 45 ec movl -20(%ebp), %eax +c010215c: 8b 40 04 movl 4(%eax), %eax +c010215f: 83 c0 07 addl $7, %eax +c0102162: 83 e0 f8 andl $-8, %eax +c0102165: 01 45 ec addl %eax, -20(%ebp) +c0102168: 8b 45 ec movl -20(%ebp), %eax +c010216b: 8b 00 movl (%eax), %eax +c010216d: 85 c0 testl %eax, %eax +c010216f: 0f 85 35 ff ff ff jne -203 +c0102175: 80 7d f3 00 cmpb $0, -13(%ebp) +c0102179: 75 15 jne 21 +c010217b: 83 ec 0c subl $12, %esp +c010217e: 68 14 44 10 c0 pushl $3222291476 +c0102183: e8 32 e3 ff ff calll -7374 +c0102188: 83 c4 10 addl $16, %esp +c010218b: e8 10 e7 ff ff calll -6384 +c0102190: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) +c0102197: eb 12 jmp 18 +c0102199: 8b 45 dc movl -36(%ebp), %eax +c010219c: 83 ec 0c subl $12, %esp +c010219f: 50 pushl %eax +c01021a0: e8 1f fe ff ff calll -481 +c01021a5: 83 c4 10 addl $16, %esp +c01021a8: ff 45 dc incl -36(%ebp) +c01021ab: 81 7d dc ff 07 00 00 cmpl $2047, -36(%ebp) +c01021b2: 76 e5 jbe -27 +c01021b4: 90 nop +c01021b5: c9 leave +c01021b6: c3 retl + +pmem_alloc: +c01021b7: 55 pushl %ebp +c01021b8: 89 e5 movl %esp, %ebp +c01021ba: 83 ec 30 subl $48, %esp +c01021bd: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c01021c4: eb 7e jmp 126 +c01021c6: c6 45 f3 00 movb $0, -13(%ebp) +c01021ca: 8b 45 08 movl 8(%ebp), %eax +c01021cd: 89 45 f8 movl %eax, -8(%ebp) +c01021d0: 8b 45 f4 movl -12(%ebp), %eax +c01021d3: c1 e0 03 shll $3, %eax +c01021d6: 89 45 e8 movl %eax, -24(%ebp) +c01021d9: 8b 45 e8 movl -24(%ebp), %eax +c01021dc: 50 pushl %eax +c01021dd: e8 8b fd ff ff calll -629 +c01021e2: 83 c4 04 addl $4, %esp +c01021e5: 88 45 e3 movb %al, -29(%ebp) +c01021e8: 80 7d f3 00 cmpb $0, -13(%ebp) +c01021ec: 74 27 je 39 +c01021ee: 80 7d e3 00 cmpb $0, -29(%ebp) +c01021f2: 74 1c je 28 +c01021f4: 83 7d f8 00 cmpl $0, -8(%ebp) +c01021f8: 75 08 jne 8 +c01021fa: 8b 45 ec movl -20(%ebp), %eax +c01021fd: 89 45 fc movl %eax, -4(%ebp) +c0102200: eb 39 jmp 57 +c0102202: 8b 45 e8 movl -24(%ebp), %eax +c0102205: c1 e8 03 shrl $3, %eax +c0102208: 01 45 f4 addl %eax, -12(%ebp) +c010220b: ff 4d f4 decl -12(%ebp) +c010220e: eb 2b jmp 43 +c0102210: ff 4d f8 decl -8(%ebp) +c0102213: eb 13 jmp 19 +c0102215: 80 7d e3 00 cmpb $0, -29(%ebp) +c0102219: 75 0d jne 13 +c010221b: c6 45 f3 01 movb $1, -13(%ebp) +c010221f: 8b 45 e8 movl -24(%ebp), %eax +c0102222: 89 45 ec movl %eax, -20(%ebp) +c0102225: ff 4d f8 decl -8(%ebp) +c0102228: 83 7d f8 00 cmpl $0, -8(%ebp) +c010222c: 75 08 jne 8 +c010222e: 8b 45 ec movl -20(%ebp), %eax +c0102231: 89 45 fc movl %eax, -4(%ebp) +c0102234: eb 05 jmp 5 +c0102236: ff 45 e8 incl -24(%ebp) +c0102239: eb 9e jmp -98 +c010223b: 83 7d f8 00 cmpl $0, -8(%ebp) +c010223f: 74 12 je 18 +c0102241: ff 45 f4 incl -12(%ebp) +c0102244: 81 7d f4 ff ff 01 00 cmpl $131071, -12(%ebp) +c010224b: 0f 86 75 ff ff ff jbe -139 +c0102251: eb 01 jmp 1 +c0102253: 90 nop +c0102254: 83 7d f8 00 cmpl $0, -8(%ebp) +c0102258: 74 07 je 7 +c010225a: b8 00 00 00 00 movl $0, %eax +c010225f: eb 31 jmp 49 +c0102261: c7 45 e4 00 00 00 00 movl $0, -28(%ebp) +c0102268: eb 14 jmp 20 +c010226a: 8b 55 e4 movl -28(%ebp), %edx +c010226d: 8b 45 fc movl -4(%ebp), %eax +c0102270: 01 d0 addl %edx, %eax +c0102272: 50 pushl %eax +c0102273: e8 4c fd ff ff calll -692 +c0102278: 83 c4 04 addl $4, %esp +c010227b: ff 45 e4 incl -28(%ebp) +c010227e: 8b 45 e4 movl -28(%ebp), %eax +c0102281: 3b 45 08 cmpl 8(%ebp), %eax +c0102284: 7c e4 jl -28 +c0102286: 8b 45 fc movl -4(%ebp), %eax +c0102289: c1 e0 0c shll $12, %eax +c010228c: 89 45 dc movl %eax, -36(%ebp) +c010228f: 8b 45 dc movl -36(%ebp), %eax +c0102292: c9 leave +c0102293: c3 retl + +pmem_free: +c0102294: 55 pushl %ebp +c0102295: 89 e5 movl %esp, %ebp +c0102297: 83 ec 10 subl $16, %esp +c010229a: 8b 45 08 movl 8(%ebp), %eax +c010229d: 89 45 fc movl %eax, -4(%ebp) +c01022a0: eb 0e jmp 14 +c01022a2: ff 75 fc pushl -4(%ebp) +c01022a5: e8 1a fd ff ff calll -742 +c01022aa: 83 c4 04 addl $4, %esp +c01022ad: ff 45 fc incl -4(%ebp) +c01022b0: 8b 45 fc movl -4(%ebp), %eax +c01022b3: 3b 45 0c cmpl 12(%ebp), %eax +c01022b6: 7c ea jl -22 +c01022b8: 90 nop +c01022b9: c9 leave +c01022ba: c3 retl + +port_byte_in: +c01022bb: 55 pushl %ebp +c01022bc: 89 e5 movl %esp, %ebp +c01022be: 83 ec 14 subl $20, %esp +c01022c1: 8b 45 08 movl 8(%ebp), %eax +c01022c4: 66 89 45 ec movw %ax, -20(%ebp) +c01022c8: 8b 45 ec movl -20(%ebp), %eax +c01022cb: 89 c2 movl %eax, %edx +c01022cd: ec inb %dx, %al +c01022ce: 88 45 ff movb %al, -1(%ebp) +c01022d1: 8a 45 ff movb -1(%ebp), %al +c01022d4: c9 leave +c01022d5: c3 retl + +port_byte_out: +c01022d6: 55 pushl %ebp +c01022d7: 89 e5 movl %esp, %ebp +c01022d9: 83 ec 08 subl $8, %esp +c01022dc: 8b 45 08 movl 8(%ebp), %eax +c01022df: 8b 55 0c movl 12(%ebp), %edx +c01022e2: 66 89 45 fc movw %ax, -4(%ebp) +c01022e6: 88 d0 movb %dl, %al +c01022e8: 88 45 f8 movb %al, -8(%ebp) +c01022eb: 8a 45 f8 movb -8(%ebp), %al +c01022ee: 8b 55 fc movl -4(%ebp), %edx +c01022f1: ee outb %al, %dx +c01022f2: 90 nop +c01022f3: c9 leave +c01022f4: c3 retl + +port_word_in: +c01022f5: 55 pushl %ebp +c01022f6: 89 e5 movl %esp, %ebp +c01022f8: 83 ec 14 subl $20, %esp +c01022fb: 8b 45 08 movl 8(%ebp), %eax +c01022fe: 66 89 45 ec movw %ax, -20(%ebp) +c0102302: 8b 45 ec movl -20(%ebp), %eax +c0102305: 89 c2 movl %eax, %edx +c0102307: 66 ed inw %dx, %ax +c0102309: 66 89 45 fe movw %ax, -2(%ebp) +c010230d: 66 8b 45 fe movw -2(%ebp), %ax +c0102311: c9 leave +c0102312: c3 retl + +port_word_out: +c0102313: 55 pushl %ebp +c0102314: 89 e5 movl %esp, %ebp +c0102316: 83 ec 08 subl $8, %esp +c0102319: 8b 55 08 movl 8(%ebp), %edx +c010231c: 8b 45 0c movl 12(%ebp), %eax +c010231f: 66 89 55 fc movw %dx, -4(%ebp) +c0102323: 66 89 45 f8 movw %ax, -8(%ebp) +c0102327: 8b 45 f8 movl -8(%ebp), %eax +c010232a: 8b 55 fc movl -4(%ebp), %edx +c010232d: 66 ef outw %ax, %dx +c010232f: 90 nop +c0102330: c9 leave +c0102331: c3 retl + +port_long_in: +c0102332: 55 pushl %ebp +c0102333: 89 e5 movl %esp, %ebp +c0102335: 83 ec 14 subl $20, %esp +c0102338: 8b 45 08 movl 8(%ebp), %eax +c010233b: 66 89 45 ec movw %ax, -20(%ebp) +c010233f: 8b 45 ec movl -20(%ebp), %eax +c0102342: 89 c2 movl %eax, %edx +c0102344: ed inl %dx, %eax +c0102345: 89 45 fc movl %eax, -4(%ebp) +c0102348: 8b 45 fc movl -4(%ebp), %eax +c010234b: c9 leave +c010234c: c3 retl + +port_long_out: +c010234d: 55 pushl %ebp +c010234e: 89 e5 movl %esp, %ebp +c0102350: 83 ec 04 subl $4, %esp +c0102353: 8b 45 08 movl 8(%ebp), %eax +c0102356: 66 89 45 fc movw %ax, -4(%ebp) +c010235a: 8b 45 0c movl 12(%ebp), %eax +c010235d: 8b 55 fc movl -4(%ebp), %edx +c0102360: ef outl %eax, %dx +c0102361: 90 nop +c0102362: c9 leave +c0102363: c3 retl + +tasking_init: +c0102364: 55 pushl %ebp +c0102365: 89 e5 movl %esp, %ebp +c0102367: 83 ec 08 subl $8, %esp +c010236a: c7 05 6c 90 10 c0 00 00 00 00 movl $0, -1072656276 +c0102374: c7 05 70 90 10 c0 00 00 00 00 movl $0, -1072656272 +c010237e: e8 39 f8 ff ff calll -1991 +c0102383: 83 ec 04 subl $4, %esp +c0102386: 6a 00 pushl $0 +c0102388: 6a 00 pushl $0 +c010238a: 6a 00 pushl $0 +c010238c: 6a 00 pushl $0 +c010238e: 6a 01 pushl $1 +c0102390: 50 pushl %eax +c0102391: 6a 00 pushl $0 +c0102393: e8 1f 00 00 00 calll 31 +c0102398: 83 c4 20 addl $32, %esp +c010239b: a3 00 60 35 c0 movl %eax, 3224723456 +c01023a0: a1 00 60 35 c0 movl 3224723456, %eax +c01023a5: a3 6c 90 10 c0 movl %eax, 3222311020 +c01023aa: a1 00 60 35 c0 movl 3224723456, %eax +c01023af: a3 04 60 35 c0 movl %eax, 3224723460 +c01023b4: 90 nop +c01023b5: c9 leave +c01023b6: c3 retl + +tasking_createTaskCr3KmodeParam: +c01023b7: 55 pushl %ebp +c01023b8: 89 e5 movl %esp, %ebp +c01023ba: 83 ec 38 subl $56, %esp +c01023bd: 8b 4d 10 movl 16(%ebp), %ecx +c01023c0: 8b 55 14 movl 20(%ebp), %edx +c01023c3: 8b 45 1c movl 28(%ebp), %eax +c01023c6: 88 4d d4 movb %cl, -44(%ebp) +c01023c9: 88 55 d0 movb %dl, -48(%ebp) +c01023cc: 88 45 cc movb %al, -52(%ebp) +c01023cf: 83 ec 0c subl $12, %esp +c01023d2: 6a 20 pushl $32 +c01023d4: e8 03 ef ff ff calll -4349 +c01023d9: 83 c4 10 addl $16, %esp +c01023dc: 89 45 ec movl %eax, -20(%ebp) +c01023df: a1 70 90 10 c0 movl 3222311024, %eax +c01023e4: 83 ec 0c subl $12, %esp +c01023e7: 50 pushl %eax +c01023e8: e8 a3 f5 ff ff calll -2653 +c01023ed: 83 c4 10 addl $16, %esp +c01023f0: 80 7d d0 00 cmpb $0, -48(%ebp) +c01023f4: 74 08 je 8 +c01023f6: 8b 45 18 movl 24(%ebp), %eax +c01023f9: 89 45 f4 movl %eax, -12(%ebp) +c01023fc: eb 07 jmp 7 +c01023fe: c7 45 f4 01 00 00 00 movl $1, -12(%ebp) +c0102405: 80 7d cc 00 cmpb $0, -52(%ebp) +c0102409: 74 08 je 8 +c010240b: 8b 45 20 movl 32(%ebp), %eax +c010240e: 89 45 f0 movl %eax, -16(%ebp) +c0102411: eb 07 jmp 7 +c0102413: c7 45 f0 02 00 00 00 movl $2, -16(%ebp) +c010241a: 8b 55 0c movl 12(%ebp), %edx +c010241d: 8b 45 ec movl -20(%ebp), %eax +c0102420: 89 50 08 movl %edx, 8(%eax) +c0102423: 0f 20 d8 movl %cr3, %eax +c0102426: 89 45 dc movl %eax, -36(%ebp) +c0102429: 8b 45 ec movl -20(%ebp), %eax +c010242c: 8b 40 08 movl 8(%eax), %eax +c010242f: 83 ec 0c subl $12, %esp +c0102432: 50 pushl %eax +c0102433: e8 0b f8 ff ff calll -2037 +c0102438: 83 c4 10 addl $16, %esp +c010243b: 80 7d d4 00 cmpb $0, -44(%ebp) +c010243f: 0f 84 b2 00 00 00 je 178 +c0102445: a1 70 90 10 c0 movl 3222311024, %eax +c010244a: 40 incl %eax +c010244b: c1 e0 0a shll $10, %eax +c010244e: 89 45 e8 movl %eax, -24(%ebp) +c0102451: a1 90 60 10 c0 movl 3222298768, %eax +c0102456: 8b 55 e8 movl -24(%ebp), %edx +c0102459: 81 c2 fb ff ff 3f addl $1073741819, %edx +c010245f: c1 e2 02 shll $2, %edx +c0102462: 01 d0 addl %edx, %eax +c0102464: 89 c2 movl %eax, %edx +c0102466: 8b 45 ec movl -20(%ebp), %eax +c0102469: 89 10 movl %edx, (%eax) +c010246b: 8b 45 ec movl -20(%ebp), %eax +c010246e: 8b 10 movl (%eax), %edx +c0102470: 8b 45 ec movl -20(%ebp), %eax +c0102473: 89 50 04 movl %edx, 4(%eax) +c0102476: a1 90 60 10 c0 movl 3222298768, %eax +c010247b: 8b 55 e8 movl -24(%ebp), %edx +c010247e: 81 c2 fb ff ff 3f addl $1073741819, %edx +c0102484: c1 e2 02 shll $2, %edx +c0102487: 01 d0 addl %edx, %eax +c0102489: c7 00 00 00 00 00 movl $0, (%eax) +c010248f: a1 90 60 10 c0 movl 3222298768, %eax +c0102494: 8b 55 e8 movl -24(%ebp), %edx +c0102497: 81 c2 fc ff ff 3f addl $1073741820, %edx +c010249d: c1 e2 02 shll $2, %edx +c01024a0: 01 d0 addl %edx, %eax +c01024a2: c7 00 00 00 00 00 movl $0, (%eax) +c01024a8: a1 90 60 10 c0 movl 3222298768, %eax +c01024ad: 8b 55 e8 movl -24(%ebp), %edx +c01024b0: 81 c2 fd ff ff 3f addl $1073741821, %edx +c01024b6: c1 e2 02 shll $2, %edx +c01024b9: 01 d0 addl %edx, %eax +c01024bb: c7 00 00 00 00 00 movl $0, (%eax) +c01024c1: a1 90 60 10 c0 movl 3222298768, %eax +c01024c6: 8b 55 e8 movl -24(%ebp), %edx +c01024c9: 81 c2 fe ff ff 3f addl $1073741822, %edx +c01024cf: c1 e2 02 shll $2, %edx +c01024d2: 01 d0 addl %edx, %eax +c01024d4: c7 00 00 00 00 00 movl $0, (%eax) +c01024da: a1 90 60 10 c0 movl 3222298768, %eax +c01024df: 8b 55 e8 movl -24(%ebp), %edx +c01024e2: 81 c2 ff ff ff 3f addl $1073741823, %edx +c01024e8: c1 e2 02 shll $2, %edx +c01024eb: 01 c2 addl %eax, %edx +c01024ed: 8b 45 08 movl 8(%ebp), %eax +c01024f0: 89 02 movl %eax, (%edx) +c01024f2: e9 0b 01 00 00 jmp 267 +c01024f7: a1 70 90 10 c0 movl 3222311024, %eax +c01024fc: 40 incl %eax +c01024fd: c1 e0 0a shll $10, %eax +c0102500: 89 45 e4 movl %eax, -28(%ebp) +c0102503: a1 90 60 10 c0 movl 3222298768, %eax +c0102508: 8b 55 e4 movl -28(%ebp), %edx +c010250b: 81 c2 f9 ff ff 3f addl $1073741817, %edx +c0102511: c1 e2 02 shll $2, %edx +c0102514: 01 d0 addl %edx, %eax +c0102516: 89 c2 movl %eax, %edx +c0102518: 8b 45 ec movl -20(%ebp), %eax +c010251b: 89 10 movl %edx, (%eax) +c010251d: 8b 45 ec movl -20(%ebp), %eax +c0102520: 8b 10 movl (%eax), %edx +c0102522: 8b 45 ec movl -20(%ebp), %eax +c0102525: 89 50 04 movl %edx, 4(%eax) +c0102528: a1 90 60 10 c0 movl 3222298768, %eax +c010252d: 8b 55 e4 movl -28(%ebp), %edx +c0102530: 81 c2 f9 ff ff 3f addl $1073741817, %edx +c0102536: c1 e2 02 shll $2, %edx +c0102539: 01 d0 addl %edx, %eax +c010253b: c7 00 00 00 00 00 movl $0, (%eax) +c0102541: a1 90 60 10 c0 movl 3222298768, %eax +c0102546: 8b 55 e4 movl -28(%ebp), %edx +c0102549: 81 c2 fa ff ff 3f addl $1073741818, %edx +c010254f: c1 e2 02 shll $2, %edx +c0102552: 01 d0 addl %edx, %eax +c0102554: c7 00 00 00 00 00 movl $0, (%eax) +c010255a: a1 90 60 10 c0 movl 3222298768, %eax +c010255f: 8b 55 e4 movl -28(%ebp), %edx +c0102562: 81 c2 fb ff ff 3f addl $1073741819, %edx +c0102568: c1 e2 02 shll $2, %edx +c010256b: 01 d0 addl %edx, %eax +c010256d: c7 00 00 00 00 00 movl $0, (%eax) +c0102573: a1 90 60 10 c0 movl 3222298768, %eax +c0102578: 8b 55 e4 movl -28(%ebp), %edx +c010257b: 81 c2 fc ff ff 3f addl $1073741820, %edx +c0102581: c1 e2 02 shll $2, %edx +c0102584: 01 d0 addl %edx, %eax +c0102586: c7 00 00 00 00 00 movl $0, (%eax) +c010258c: a1 90 60 10 c0 movl 3222298768, %eax +c0102591: 8b 55 e4 movl -28(%ebp), %edx +c0102594: 81 c2 fd ff ff 3f addl $1073741821, %edx +c010259a: c1 e2 02 shll $2, %edx +c010259d: 01 d0 addl %edx, %eax +c010259f: ba e3 29 10 c0 movl $3222284771, %edx +c01025a4: 89 10 movl %edx, (%eax) +c01025a6: 83 ec 0c subl $12, %esp +c01025a9: 6a 01 pushl $1 +c01025ab: e8 ce f4 ff ff calll -2866 +c01025b0: 83 c4 10 addl $16, %esp +c01025b3: 05 00 10 00 00 addl $4096, %eax +c01025b8: 89 45 e0 movl %eax, -32(%ebp) +c01025bb: 83 6d e0 08 subl $8, -32(%ebp) +c01025bf: 8b 45 e0 movl -32(%ebp), %eax +c01025c2: 8b 55 f4 movl -12(%ebp), %edx +c01025c5: 89 10 movl %edx, (%eax) +c01025c7: 8b 45 e0 movl -32(%ebp), %eax +c01025ca: 8d 50 04 leal 4(%eax), %edx +c01025cd: 8b 45 f0 movl -16(%ebp), %eax +c01025d0: 89 02 movl %eax, (%edx) +c01025d2: a1 90 60 10 c0 movl 3222298768, %eax +c01025d7: 8b 55 e4 movl -28(%ebp), %edx +c01025da: 81 c2 fe ff ff 3f addl $1073741822, %edx +c01025e0: c1 e2 02 shll $2, %edx +c01025e3: 01 c2 addl %eax, %edx +c01025e5: 8b 45 e0 movl -32(%ebp), %eax +c01025e8: 89 02 movl %eax, (%edx) +c01025ea: a1 90 60 10 c0 movl 3222298768, %eax +c01025ef: 8b 55 e4 movl -28(%ebp), %edx +c01025f2: 81 c2 ff ff ff 3f addl $1073741823, %edx +c01025f8: c1 e2 02 shll $2, %edx +c01025fb: 01 c2 addl %eax, %edx +c01025fd: 8b 45 08 movl 8(%ebp), %eax +c0102600: 89 02 movl %eax, (%edx) +c0102602: 8b 45 dc movl -36(%ebp), %eax +c0102605: 83 ec 0c subl $12, %esp +c0102608: 50 pushl %eax +c0102609: e8 35 f6 ff ff calll -2507 +c010260e: 83 c4 10 addl $16, %esp +c0102611: 8b 45 ec movl -20(%ebp), %eax +c0102614: c7 40 1c 00 00 00 00 movl $0, 28(%eax) +c010261b: 8b 15 70 90 10 c0 movl -1072656272, %edx +c0102621: 8b 45 ec movl -20(%ebp), %eax +c0102624: 89 50 18 movl %edx, 24(%eax) +c0102627: 8b 45 ec movl -20(%ebp), %eax +c010262a: c6 40 10 00 movb $0, 16(%eax) +c010262e: 8b 45 ec movl -20(%ebp), %eax +c0102631: c7 40 14 00 00 00 00 movl $0, 20(%eax) +c0102638: a1 6c 90 10 c0 movl 3222311020, %eax +c010263d: 85 c0 testl %eax, %eax +c010263f: 74 0e je 14 +c0102641: a1 6c 90 10 c0 movl 3222311020, %eax +c0102646: 8a 50 10 movb 16(%eax), %dl +c0102649: 8b 45 ec movl -20(%ebp), %eax +c010264c: 88 50 10 movb %dl, 16(%eax) +c010264f: 8b 45 ec movl -20(%ebp), %eax +c0102652: 8b 40 18 movl 24(%eax), %eax +c0102655: 83 f8 01 cmpl $1, %eax +c0102658: 75 07 jne 7 +c010265a: 8b 45 ec movl -20(%ebp), %eax +c010265d: c6 40 10 01 movb $1, 16(%eax) +c0102661: a1 70 90 10 c0 movl 3222311024, %eax +c0102666: 40 incl %eax +c0102667: a3 70 90 10 c0 movl %eax, 3222311024 +c010266c: a1 70 90 10 c0 movl 3222311024, %eax +c0102671: 3d 00 80 00 00 cmpl $32768, %eax +c0102676: 76 05 jbe 5 +c0102678: e8 23 e2 ff ff calll -7645 +c010267d: a1 04 60 35 c0 movl 3224723460, %eax +c0102682: 85 c0 testl %eax, %eax +c0102684: 74 13 je 19 +c0102686: a1 04 60 35 c0 movl 3224723460, %eax +c010268b: 8b 55 ec movl -20(%ebp), %edx +c010268e: 89 50 1c movl %edx, 28(%eax) +c0102691: 8b 45 ec movl -20(%ebp), %eax +c0102694: a3 04 60 35 c0 movl %eax, 3224723460 +c0102699: 8b 45 ec movl -20(%ebp), %eax +c010269c: c9 leave +c010269d: c3 retl + +tasking_get_errno_address: +c010269e: 55 pushl %ebp +c010269f: 89 e5 movl %esp, %ebp +c01026a1: a1 6c 90 10 c0 movl 3222311020, %eax +c01026a6: 83 c0 14 addl $20, %eax +c01026a9: 5d popl %ebp +c01026aa: c3 retl + +isPrivleged: +c01026ab: 55 pushl %ebp +c01026ac: 89 e5 movl %esp, %ebp +c01026ae: 83 ec 10 subl $16, %esp +c01026b1: a1 00 60 35 c0 movl 3224723456, %eax +c01026b6: 89 45 fc movl %eax, -4(%ebp) +c01026b9: eb 1c jmp 28 +c01026bb: 8b 45 fc movl -4(%ebp), %eax +c01026be: 8b 40 18 movl 24(%eax), %eax +c01026c1: 39 45 08 cmpl %eax, 8(%ebp) +c01026c4: 75 08 jne 8 +c01026c6: 8b 45 fc movl -4(%ebp), %eax +c01026c9: 8a 40 10 movb 16(%eax), %al +c01026cc: eb 11 jmp 17 +c01026ce: 8b 45 fc movl -4(%ebp), %eax +c01026d1: 8b 40 1c movl 28(%eax), %eax +c01026d4: 89 45 fc movl %eax, -4(%ebp) +c01026d7: 83 7d fc 00 cmpl $0, -4(%ebp) +c01026db: 75 de jne -34 +c01026dd: b0 00 movb $0, %al +c01026df: c9 leave +c01026e0: c3 retl + +tasking_createTask: +c01026e1: 55 pushl %ebp +c01026e2: 89 e5 movl %esp, %ebp +c01026e4: 83 ec 08 subl $8, %esp +c01026e7: e8 d0 f4 ff ff calll -2864 +c01026ec: 83 ec 04 subl $4, %esp +c01026ef: 6a 00 pushl $0 +c01026f1: 6a 00 pushl $0 +c01026f3: 6a 00 pushl $0 +c01026f5: 6a 00 pushl $0 +c01026f7: 6a 00 pushl $0 +c01026f9: 50 pushl %eax +c01026fa: ff 75 08 pushl 8(%ebp) +c01026fd: e8 b5 fc ff ff calll -843 +c0102702: 83 c4 20 addl $32, %esp +c0102705: c9 leave +c0102706: c3 retl + +tasking_yield: +c0102707: 55 pushl %ebp +c0102708: 89 e5 movl %esp, %ebp +c010270a: 83 ec 18 subl $24, %esp +c010270d: a1 6c 90 10 c0 movl 3222311020, %eax +c0102712: 8b 40 1c movl 28(%eax), %eax +c0102715: 89 45 f4 movl %eax, -12(%ebp) +c0102718: 83 7d f4 00 cmpl $0, -12(%ebp) +c010271c: 75 08 jne 8 +c010271e: a1 00 60 35 c0 movl 3224723456, %eax +c0102723: 89 45 f4 movl %eax, -12(%ebp) +c0102726: 8b 45 f4 movl -12(%ebp), %eax +c0102729: 8b 40 08 movl 8(%eax), %eax +c010272c: 83 ec 0c subl $12, %esp +c010272f: 50 pushl %eax +c0102730: e8 34 f5 ff ff calll -2764 +c0102735: 83 c4 10 addl $16, %esp +c0102738: 83 ec 0c subl $12, %esp +c010273b: ff 75 f4 pushl -12(%ebp) +c010273e: e8 6d 02 00 00 calll 621 +c0102743: 83 c4 10 addl $16, %esp +c0102746: 90 nop +c0102747: c9 leave +c0102748: c3 retl + +getPID: +c0102749: 55 pushl %ebp +c010274a: 89 e5 movl %esp, %ebp +c010274c: a1 6c 90 10 c0 movl 3222311020, %eax +c0102751: 8b 40 18 movl 24(%eax), %eax +c0102754: 5d popl %ebp +c0102755: c3 retl +c0102756: 66 90 nop +c0102758: 66 90 nop +c010275a: 66 90 nop +c010275c: 66 90 nop +c010275e: 66 90 nop + +isr_common_stub: +c0102760: 60 pushal +c0102761: 66 8c d8 movw %ds, %ax +c0102764: 50 pushl %eax +c0102765: 66 b8 10 00 movw $16, %ax +c0102769: 8e d8 movl %eax, %ds +c010276b: 8e c0 movl %eax, %es +c010276d: 8e e0 movl %eax, %fs +c010276f: 8e e8 movl %eax, %gs +c0102771: e8 f3 e5 ff ff calll -6669 +c0102776: 58 popl %eax +c0102777: 8e d8 movl %eax, %ds +c0102779: 8e c0 movl %eax, %es +c010277b: 8e e0 movl %eax, %fs +c010277d: 8e e8 movl %eax, %gs +c010277f: 61 popal +c0102780: 83 c4 08 addl $8, %esp +c0102783: cf iretl + +irq_common_stub: +c0102784: 60 pushal +c0102785: 66 8c d8 movw %ds, %ax +c0102788: 50 pushl %eax +c0102789: 66 b8 10 00 movw $16, %ax +c010278d: 8e d8 movl %eax, %ds +c010278f: 8e c0 movl %eax, %es +c0102791: 8e e0 movl %eax, %fs +c0102793: 8e e8 movl %eax, %gs +c0102795: e8 fe e9 ff ff calll -5634 +c010279a: 5b popl %ebx +c010279b: 8e db movl %ebx, %ds +c010279d: 8e c3 movl %ebx, %es +c010279f: 8e e3 movl %ebx, %fs +c01027a1: 8e eb movl %ebx, %gs +c01027a3: 61 popal +c01027a4: 83 c4 08 addl $8, %esp +c01027a7: fb sti +c01027a8: cf iretl + +isr0: +c01027a9: fa cli +c01027aa: 6a 00 pushl $0 +c01027ac: 6a 00 pushl $0 +c01027ae: eb b0 jmp -80 + +isr1: +c01027b0: fa cli +c01027b1: 6a 00 pushl $0 +c01027b3: 6a 01 pushl $1 +c01027b5: eb a9 jmp -87 + +isr2: +c01027b7: fa cli +c01027b8: 6a 00 pushl $0 +c01027ba: 6a 02 pushl $2 +c01027bc: eb a2 jmp -94 + +isr3: +c01027be: fa cli +c01027bf: 6a 00 pushl $0 +c01027c1: 6a 03 pushl $3 +c01027c3: eb 9b jmp -101 + +isr4: +c01027c5: fa cli +c01027c6: 6a 00 pushl $0 +c01027c8: 6a 04 pushl $4 +c01027ca: eb 94 jmp -108 + +isr5: +c01027cc: fa cli +c01027cd: 6a 00 pushl $0 +c01027cf: 6a 05 pushl $5 +c01027d1: eb 8d jmp -115 + +isr6: +c01027d3: fa cli +c01027d4: 6a 00 pushl $0 +c01027d6: 6a 06 pushl $6 +c01027d8: eb 86 jmp -122 + +isr7: +c01027da: fa cli +c01027db: 6a 00 pushl $0 +c01027dd: 6a 07 pushl $7 +c01027df: e9 7c ff ff ff jmp -132 + +isr8: +c01027e4: fa cli +c01027e5: 6a 08 pushl $8 +c01027e7: e9 74 ff ff ff jmp -140 + +isr9: +c01027ec: fa cli +c01027ed: 6a 00 pushl $0 +c01027ef: 6a 09 pushl $9 +c01027f1: e9 6a ff ff ff jmp -150 + +isr10: +c01027f6: fa cli +c01027f7: 6a 0a pushl $10 +c01027f9: e9 62 ff ff ff jmp -158 + +isr11: +c01027fe: fa cli +c01027ff: 6a 0b pushl $11 +c0102801: e9 5a ff ff ff jmp -166 + +isr12: +c0102806: fa cli +c0102807: 6a 0c pushl $12 +c0102809: e9 52 ff ff ff jmp -174 + +isr13: +c010280e: fa cli +c010280f: 6a 0d pushl $13 +c0102811: e9 4a ff ff ff jmp -182 + +isr14: +c0102816: fa cli +c0102817: 6a 0e pushl $14 +c0102819: e9 42 ff ff ff jmp -190 + +isr15: +c010281e: fa cli +c010281f: 6a 00 pushl $0 +c0102821: 6a 0f pushl $15 +c0102823: e9 38 ff ff ff jmp -200 + +isr16: +c0102828: fa cli +c0102829: 6a 00 pushl $0 +c010282b: 6a 10 pushl $16 +c010282d: e9 2e ff ff ff jmp -210 + +isr17: +c0102832: fa cli +c0102833: 6a 00 pushl $0 +c0102835: 6a 11 pushl $17 +c0102837: e9 24 ff ff ff jmp -220 + +isr18: +c010283c: fa cli +c010283d: 6a 00 pushl $0 +c010283f: 6a 12 pushl $18 +c0102841: e9 1a ff ff ff jmp -230 + +isr19: +c0102846: fa cli +c0102847: 6a 00 pushl $0 +c0102849: 6a 13 pushl $19 +c010284b: e9 10 ff ff ff jmp -240 + +isr20: +c0102850: fa cli +c0102851: 6a 00 pushl $0 +c0102853: 6a 14 pushl $20 +c0102855: e9 06 ff ff ff jmp -250 + +isr21: +c010285a: fa cli +c010285b: 6a 00 pushl $0 +c010285d: 6a 15 pushl $21 +c010285f: e9 fc fe ff ff jmp -260 + +isr22: +c0102864: fa cli +c0102865: 6a 00 pushl $0 +c0102867: 6a 16 pushl $22 +c0102869: e9 f2 fe ff ff jmp -270 + +isr23: +c010286e: fa cli +c010286f: 6a 00 pushl $0 +c0102871: 6a 17 pushl $23 +c0102873: e9 e8 fe ff ff jmp -280 + +isr24: +c0102878: fa cli +c0102879: 6a 00 pushl $0 +c010287b: 6a 18 pushl $24 +c010287d: e9 de fe ff ff jmp -290 + +isr25: +c0102882: fa cli +c0102883: 6a 00 pushl $0 +c0102885: 6a 19 pushl $25 +c0102887: e9 d4 fe ff ff jmp -300 + +isr26: +c010288c: fa cli +c010288d: 6a 00 pushl $0 +c010288f: 6a 1a pushl $26 +c0102891: e9 ca fe ff ff jmp -310 + +isr27: +c0102896: fa cli +c0102897: 6a 00 pushl $0 +c0102899: 6a 1b pushl $27 +c010289b: e9 c0 fe ff ff jmp -320 + +isr28: +c01028a0: fa cli +c01028a1: 6a 00 pushl $0 +c01028a3: 6a 1c pushl $28 +c01028a5: e9 b6 fe ff ff jmp -330 + +isr29: +c01028aa: fa cli +c01028ab: 6a 00 pushl $0 +c01028ad: 6a 1d pushl $29 +c01028af: e9 ac fe ff ff jmp -340 + +isr30: +c01028b4: fa cli +c01028b5: 6a 00 pushl $0 +c01028b7: 6a 1e pushl $30 +c01028b9: e9 a2 fe ff ff jmp -350 + +isr31: +c01028be: fa cli +c01028bf: 6a 00 pushl $0 +c01028c1: 6a 1f pushl $31 +c01028c3: e9 98 fe ff ff jmp -360 + +isr80: +c01028c8: fa cli +c01028c9: 6a 00 pushl $0 +c01028cb: 6a 50 pushl $80 +c01028cd: e9 8e fe ff ff jmp -370 + +irq0: +c01028d2: fa cli +c01028d3: 6a 00 pushl $0 +c01028d5: 6a 20 pushl $32 +c01028d7: e9 a8 fe ff ff jmp -344 + +irq1: +c01028dc: fa cli +c01028dd: 6a 01 pushl $1 +c01028df: 6a 21 pushl $33 +c01028e1: e9 9e fe ff ff jmp -354 + +irq2: +c01028e6: fa cli +c01028e7: 6a 02 pushl $2 +c01028e9: 6a 22 pushl $34 +c01028eb: e9 94 fe ff ff jmp -364 + +irq3: +c01028f0: fa cli +c01028f1: 6a 03 pushl $3 +c01028f3: 6a 23 pushl $35 +c01028f5: e9 8a fe ff ff jmp -374 + +irq4: +c01028fa: fa cli +c01028fb: 6a 04 pushl $4 +c01028fd: 6a 24 pushl $36 +c01028ff: e9 80 fe ff ff jmp -384 + +irq5: +c0102904: fa cli +c0102905: 6a 05 pushl $5 +c0102907: 6a 25 pushl $37 +c0102909: e9 76 fe ff ff jmp -394 + +irq6: +c010290e: fa cli +c010290f: 6a 06 pushl $6 +c0102911: 6a 26 pushl $38 +c0102913: e9 6c fe ff ff jmp -404 + +irq7: +c0102918: fa cli +c0102919: 6a 07 pushl $7 +c010291b: 6a 27 pushl $39 +c010291d: e9 62 fe ff ff jmp -414 + +irq8: +c0102922: fa cli +c0102923: 6a 08 pushl $8 +c0102925: 6a 28 pushl $40 +c0102927: e9 58 fe ff ff jmp -424 + +irq9: +c010292c: fa cli +c010292d: 6a 09 pushl $9 +c010292f: 6a 29 pushl $41 +c0102931: e9 4e fe ff ff jmp -434 + +irq10: +c0102936: fa cli +c0102937: 6a 0a pushl $10 +c0102939: 6a 2a pushl $42 +c010293b: e9 44 fe ff ff jmp -444 + +irq11: +c0102940: fa cli +c0102941: 6a 0b pushl $11 +c0102943: 6a 2b pushl $43 +c0102945: e9 3a fe ff ff jmp -454 + +irq12: +c010294a: fa cli +c010294b: 6a 0c pushl $12 +c010294d: 6a 2c pushl $44 +c010294f: e9 30 fe ff ff jmp -464 + +irq13: +c0102954: fa cli +c0102955: 6a 0d pushl $13 +c0102957: 6a 2d pushl $45 +c0102959: e9 26 fe ff ff jmp -474 + +irq14: +c010295e: fa cli +c010295f: 6a 0e pushl $14 +c0102961: 6a 2e pushl $46 +c0102963: e9 1c fe ff ff jmp -484 + +irq15: +c0102968: fa cli +c0102969: 6a 0f pushl $15 +c010296b: 6a 2f pushl $47 +c010296d: e9 12 fe ff ff jmp -494 +c0102972: 66 90 nop +c0102974: 66 90 nop +c0102976: 66 90 nop +c0102978: 66 90 nop +c010297a: 66 90 nop +c010297c: 66 90 nop +c010297e: 66 90 nop + +load_page_directory: +c0102980: 55 pushl %ebp +c0102981: 89 e5 movl %esp, %ebp +c0102983: 8b 44 24 08 movl 8(%esp), %eax +c0102987: 0f 22 d8 movl %eax, %cr3 +c010298a: 89 ec movl %ebp, %esp +c010298c: 5d popl %ebp +c010298d: c3 retl +c010298e: 66 90 nop + +seg_upd: +c0102990: ea 97 29 10 c0 08 00 ljmpl $8, $3222284695 + +code_upd: +c0102997: 66 b8 10 00 movw $16, %ax +c010299b: 8e d8 movl %eax, %ds +c010299d: 8e d0 movl %eax, %ss +c010299f: 8e c0 movl %eax, %es +c01029a1: 8e e0 movl %eax, %fs +c01029a3: 8e e8 movl %eax, %gs +c01029a5: c3 retl +c01029a6: 66 90 nop +c01029a8: 66 90 nop +c01029aa: 66 90 nop +c01029ac: 66 90 nop +c01029ae: 66 90 nop + +switch_to_task: +c01029b0: 53 pushl %ebx +c01029b1: 56 pushl %esi +c01029b2: 57 pushl %edi +c01029b3: 55 pushl %ebp +c01029b4: 8b 3d 6c 90 10 c0 movl -1072656276, %edi +c01029ba: 89 27 movl %esp, (%edi) +c01029bc: 8b 74 24 14 movl 20(%esp), %esi +c01029c0: 89 35 6c 90 10 c0 movl %esi, -1072656276 +c01029c6: 8b 26 movl (%esi), %esp +c01029c8: 8b 46 08 movl 8(%esi), %eax +c01029cb: 8b 5e 04 movl 4(%esi), %ebx +c01029ce: 89 1d 04 70 10 c0 movl %ebx, -1072664572 +c01029d4: 0f 20 d9 movl %cr3, %ecx +c01029d7: 39 c8 cmpl %ecx, %eax +c01029d9: 74 03 je 3 +c01029db: 0f 22 d8 movl %eax, %cr3 + +switch_to_task.doneVAS: +c01029de: 5d popl %ebp +c01029df: 5f popl %edi +c01029e0: 5e popl %esi +c01029e1: 5b popl %ebx +c01029e2: c3 retl + +task_init: +c01029e3: 59 popl %ecx +c01029e4: 5b popl %ebx +c01029e5: fa cli +c01029e6: 66 b8 23 00 movw $35, %ax +c01029ea: 8e d8 movl %eax, %ds +c01029ec: 8e c0 movl %eax, %es +c01029ee: 8e e0 movl %eax, %fs +c01029f0: 8e e8 movl %eax, %gs +c01029f2: 89 c8 movl %ecx, %eax +c01029f4: 6a 23 pushl $35 +c01029f6: 50 pushl %eax +c01029f7: 9c pushfl +c01029f8: 58 popl %eax +c01029f9: 0d 00 02 00 00 orl $512, %eax +c01029fe: 50 pushl %eax +c01029ff: 6a 1b pushl $27 +c0102a01: 53 pushl %ebx +c0102a02: cf iretl + +ceilf: +c0102a03: 55 pushl %ebp +c0102a04: 89 e5 movl %esp, %ebp +c0102a06: 83 ec 18 subl $24, %esp +c0102a09: d9 45 08 flds 8(%ebp) +c0102a0c: d9 7d ee fnstcw -18(%ebp) +c0102a0f: 66 8b 45 ee movw -18(%ebp), %ax +c0102a13: 80 cc 0c orb $12, %ah +c0102a16: 66 89 45 ec movw %ax, -20(%ebp) +c0102a1a: d9 6d ec fldcw -20(%ebp) +c0102a1d: db 5d fc fistpl -4(%ebp) +c0102a20: d9 6d ee fldcw -18(%ebp) +c0102a23: db 45 fc fildl -4(%ebp) +c0102a26: d9 45 08 flds 8(%ebp) +c0102a29: da e9 fucompp +c0102a2b: df e0 fnstsw %ax +c0102a2d: 80 e4 45 andb $69, %ah +c0102a30: 80 f4 40 xorb $64, %ah +c0102a33: 75 05 jne 5 +c0102a35: db 45 fc fildl -4(%ebp) +c0102a38: eb 0a jmp 10 +c0102a3a: 8b 45 fc movl -4(%ebp), %eax +c0102a3d: 40 incl %eax +c0102a3e: 89 45 e8 movl %eax, -24(%ebp) +c0102a41: db 45 e8 fildl -24(%ebp) +c0102a44: c9 leave +c0102a45: c3 retl + +ceil: +c0102a46: 55 pushl %ebp +c0102a47: 89 e5 movl %esp, %ebp +c0102a49: 83 ec 20 subl $32, %esp +c0102a4c: 8b 45 08 movl 8(%ebp), %eax +c0102a4f: 89 45 e8 movl %eax, -24(%ebp) +c0102a52: 8b 45 0c movl 12(%ebp), %eax +c0102a55: 89 45 ec movl %eax, -20(%ebp) +c0102a58: dd 45 e8 fldl -24(%ebp) +c0102a5b: d9 7d e6 fnstcw -26(%ebp) +c0102a5e: 66 8b 45 e6 movw -26(%ebp), %ax +c0102a62: 80 cc 0c orb $12, %ah +c0102a65: 66 89 45 e4 movw %ax, -28(%ebp) +c0102a69: d9 6d e4 fldcw -28(%ebp) +c0102a6c: db 5d fc fistpl -4(%ebp) +c0102a6f: d9 6d e6 fldcw -26(%ebp) +c0102a72: db 45 fc fildl -4(%ebp) +c0102a75: dd 45 e8 fldl -24(%ebp) +c0102a78: da e9 fucompp +c0102a7a: df e0 fnstsw %ax +c0102a7c: 80 e4 45 andb $69, %ah +c0102a7f: 80 f4 40 xorb $64, %ah +c0102a82: 75 05 jne 5 +c0102a84: db 45 fc fildl -4(%ebp) +c0102a87: eb 0a jmp 10 +c0102a89: 8b 45 fc movl -4(%ebp), %eax +c0102a8c: 40 incl %eax +c0102a8d: 89 45 e0 movl %eax, -32(%ebp) +c0102a90: db 45 e0 fildl -32(%ebp) +c0102a93: c9 leave +c0102a94: c3 retl + +alloc_memory: +c0102a95: 55 pushl %ebp +c0102a96: 89 e5 movl %esp, %ebp +c0102a98: 53 pushl %ebx +c0102a99: 83 ec 10 subl $16, %esp +c0102a9c: 8b 45 08 movl 8(%ebp), %eax +c0102a9f: 89 c3 movl %eax, %ebx +c0102aa1: b8 03 00 00 00 movl $3, %eax +c0102aa6: cd 50 int $80 +c0102aa8: 89 d8 movl %ebx, %eax +c0102aaa: 89 45 f8 movl %eax, -8(%ebp) +c0102aad: 8b 45 f8 movl -8(%ebp), %eax +c0102ab0: 83 c4 10 addl $16, %esp +c0102ab3: 5b popl %ebx +c0102ab4: 5d popl %ebp +c0102ab5: c3 retl + +alloc_memory_virt: +c0102ab6: 55 pushl %ebp +c0102ab7: 89 e5 movl %esp, %ebp +c0102ab9: 53 pushl %ebx +c0102aba: 8b 45 08 movl 8(%ebp), %eax +c0102abd: 8b 55 0c movl 12(%ebp), %edx +c0102ac0: 89 c3 movl %eax, %ebx +c0102ac2: 89 d1 movl %edx, %ecx +c0102ac4: b8 04 00 00 00 movl $4, %eax +c0102ac9: cd 50 int $80 +c0102acb: 90 nop +c0102acc: 5b popl %ebx +c0102acd: 5d popl %ebp +c0102ace: c3 retl + +new_address_space: +c0102acf: 55 pushl %ebp +c0102ad0: 89 e5 movl %esp, %ebp +c0102ad2: 53 pushl %ebx +c0102ad3: 83 ec 10 subl $16, %esp +c0102ad6: b8 08 00 00 00 movl $8, %eax +c0102adb: cd 50 int $80 +c0102add: 89 d8 movl %ebx, %eax +c0102adf: 89 45 f8 movl %eax, -8(%ebp) +c0102ae2: 8b 45 f8 movl -8(%ebp), %eax +c0102ae5: 83 c4 10 addl $16, %esp +c0102ae8: 5b popl %ebx +c0102ae9: 5d popl %ebp +c0102aea: c3 retl + +copy_data: +c0102aeb: 55 pushl %ebp +c0102aec: 89 e5 movl %esp, %ebp +c0102aee: 56 pushl %esi +c0102aef: 53 pushl %ebx +c0102af0: 8b 45 08 movl 8(%ebp), %eax +c0102af3: 8b 4d 0c movl 12(%ebp), %ecx +c0102af6: 8b 55 10 movl 16(%ebp), %edx +c0102af9: 8b 75 14 movl 20(%ebp), %esi +c0102afc: 89 c3 movl %eax, %ebx +c0102afe: b8 0a 00 00 00 movl $10, %eax +c0102b03: cd 50 int $80 +c0102b05: 90 nop +c0102b06: 5b popl %ebx +c0102b07: 5e popl %esi +c0102b08: 5d popl %ebp +c0102b09: c3 retl + +put_data: +c0102b0a: 55 pushl %ebp +c0102b0b: 89 e5 movl %esp, %ebp +c0102b0d: 53 pushl %ebx +c0102b0e: 83 ec 10 subl $16, %esp +c0102b11: 8b 45 08 movl 8(%ebp), %eax +c0102b14: 8b 4d 0c movl 12(%ebp), %ecx +c0102b17: 8b 55 10 movl 16(%ebp), %edx +c0102b1a: 89 c3 movl %eax, %ebx +c0102b1c: b8 0d 00 00 00 movl $13, %eax +c0102b21: cd 50 int $80 +c0102b23: 89 d8 movl %ebx, %eax +c0102b25: 89 45 f8 movl %eax, -8(%ebp) +c0102b28: 8b 45 f8 movl -8(%ebp), %eax +c0102b2b: 83 c4 10 addl $16, %esp +c0102b2e: 5b popl %ebx +c0102b2f: 5d popl %ebp +c0102b30: c3 retl + +map_phys: +c0102b31: 55 pushl %ebp +c0102b32: 89 e5 movl %esp, %ebp +c0102b34: 53 pushl %ebx +c0102b35: 83 ec 10 subl $16, %esp +c0102b38: 8b 45 08 movl 8(%ebp), %eax +c0102b3b: 8b 55 0c movl 12(%ebp), %edx +c0102b3e: 89 c3 movl %eax, %ebx +c0102b40: 89 d1 movl %edx, %ecx +c0102b42: b8 0b 00 00 00 movl $11, %eax +c0102b47: cd 50 int $80 +c0102b49: 89 d8 movl %ebx, %eax +c0102b4b: 89 45 f8 movl %eax, -8(%ebp) +c0102b4e: 8b 45 f8 movl -8(%ebp), %eax +c0102b51: 83 c4 10 addl $16, %esp +c0102b54: 5b popl %ebx +c0102b55: 5d popl %ebp +c0102b56: c3 retl + +get_bmap_bit: +c0102b57: 55 pushl %ebp +c0102b58: 89 e5 movl %esp, %ebp +c0102b5a: 53 pushl %ebx +c0102b5b: 83 ec 10 subl $16, %esp +c0102b5e: 8b 45 0c movl 12(%ebp), %eax +c0102b61: c1 e8 03 shrl $3, %eax +c0102b64: 89 45 f8 movl %eax, -8(%ebp) +c0102b67: 8b 45 0c movl 12(%ebp), %eax +c0102b6a: 83 e0 07 andl $7, %eax +c0102b6d: 89 45 f4 movl %eax, -12(%ebp) +c0102b70: 8b 55 08 movl 8(%ebp), %edx +c0102b73: 8b 45 f8 movl -8(%ebp), %eax +c0102b76: 01 d0 addl %edx, %eax +c0102b78: 8a 00 movb (%eax), %al +c0102b7a: 88 45 f3 movb %al, -13(%ebp) +c0102b7d: 0f be 55 f3 movsbl -13(%ebp), %edx +c0102b81: 8b 45 f4 movl -12(%ebp), %eax +c0102b84: bb 01 00 00 00 movl $1, %ebx +c0102b89: 88 c1 movb %al, %cl +c0102b8b: d3 e3 shll %cl, %ebx +c0102b8d: 89 d8 movl %ebx, %eax +c0102b8f: 21 d0 andl %edx, %eax +c0102b91: 85 c0 testl %eax, %eax +c0102b93: 0f 9f c0 setg %al +c0102b96: 83 c4 10 addl $16, %esp +c0102b99: 5b popl %ebx +c0102b9a: 5d popl %ebp +c0102b9b: c3 retl + +set_bmap_bit: +c0102b9c: 55 pushl %ebp +c0102b9d: 89 e5 movl %esp, %ebp +c0102b9f: 53 pushl %ebx +c0102ba0: 83 ec 10 subl $16, %esp +c0102ba3: 8b 45 0c movl 12(%ebp), %eax +c0102ba6: c1 e8 03 shrl $3, %eax +c0102ba9: 89 45 f8 movl %eax, -8(%ebp) +c0102bac: 8b 45 0c movl 12(%ebp), %eax +c0102baf: 83 e0 07 andl $7, %eax +c0102bb2: 89 45 f4 movl %eax, -12(%ebp) +c0102bb5: 8b 55 08 movl 8(%ebp), %edx +c0102bb8: 8b 45 f8 movl -8(%ebp), %eax +c0102bbb: 01 d0 addl %edx, %eax +c0102bbd: 8a 10 movb (%eax), %dl +c0102bbf: 8b 45 f4 movl -12(%ebp), %eax +c0102bc2: bb 01 00 00 00 movl $1, %ebx +c0102bc7: 88 c1 movb %al, %cl +c0102bc9: d3 e3 shll %cl, %ebx +c0102bcb: 89 d8 movl %ebx, %eax +c0102bcd: 88 c3 movb %al, %bl +c0102bcf: 8b 4d 08 movl 8(%ebp), %ecx +c0102bd2: 8b 45 f8 movl -8(%ebp), %eax +c0102bd5: 01 c8 addl %ecx, %eax +c0102bd7: 09 da orl %ebx, %edx +c0102bd9: 88 10 movb %dl, (%eax) +c0102bdb: 90 nop +c0102bdc: 83 c4 10 addl $16, %esp +c0102bdf: 5b popl %ebx +c0102be0: 5d popl %ebp +c0102be1: c3 retl + +clear_bmap_bit: +c0102be2: 55 pushl %ebp +c0102be3: 89 e5 movl %esp, %ebp +c0102be5: 53 pushl %ebx +c0102be6: 83 ec 10 subl $16, %esp +c0102be9: 8b 45 0c movl 12(%ebp), %eax +c0102bec: c1 e8 03 shrl $3, %eax +c0102bef: 89 45 f8 movl %eax, -8(%ebp) +c0102bf2: 8b 45 0c movl 12(%ebp), %eax +c0102bf5: 83 e0 07 andl $7, %eax +c0102bf8: 89 45 f4 movl %eax, -12(%ebp) +c0102bfb: 8b 55 08 movl 8(%ebp), %edx +c0102bfe: 8b 45 f8 movl -8(%ebp), %eax +c0102c01: 01 d0 addl %edx, %eax +c0102c03: 8a 10 movb (%eax), %dl +c0102c05: 8b 45 f4 movl -12(%ebp), %eax +c0102c08: bb 01 00 00 00 movl $1, %ebx +c0102c0d: 88 c1 movb %al, %cl +c0102c0f: d3 e3 shll %cl, %ebx +c0102c11: 89 d8 movl %ebx, %eax +c0102c13: f7 d0 notl %eax +c0102c15: 88 c3 movb %al, %bl +c0102c17: 8b 4d 08 movl 8(%ebp), %ecx +c0102c1a: 8b 45 f8 movl -8(%ebp), %eax +c0102c1d: 01 c8 addl %ecx, %eax +c0102c1f: 21 da andl %ebx, %edx +c0102c21: 88 10 movb %dl, (%eax) +c0102c23: 90 nop +c0102c24: 83 c4 10 addl $16, %esp +c0102c27: 5b popl %ebx +c0102c28: 5d popl %ebp +c0102c29: c3 retl + +reserve_block: +c0102c2a: 55 pushl %ebp +c0102c2b: 89 e5 movl %esp, %ebp +c0102c2d: 53 pushl %ebx +c0102c2e: 83 ec 34 subl $52, %esp +c0102c31: 8b 45 08 movl 8(%ebp), %eax +c0102c34: c1 e0 0c shll $12, %eax +c0102c37: c1 e8 05 shrl $5, %eax +c0102c3a: 89 45 f0 movl %eax, -16(%ebp) +c0102c3d: 8b 45 f0 movl -16(%ebp), %eax +c0102c40: ba 00 00 00 00 movl $0, %edx +c0102c45: 89 45 c8 movl %eax, -56(%ebp) +c0102c48: 89 55 cc movl %edx, -52(%ebp) +c0102c4b: df 6d c8 fildll -56(%ebp) +c0102c4e: dd 5d e0 fstpl -32(%ebp) +c0102c51: dd 45 e0 fldl -32(%ebp) +c0102c54: dd 05 48 44 10 c0 fldl -1072675768 +c0102c5a: de f9 fdivrp %st(1) +c0102c5c: d9 5d dc fstps -36(%ebp) +c0102c5f: 8b 45 dc movl -36(%ebp), %eax +c0102c62: 83 ec 0c subl $12, %esp +c0102c65: 50 pushl %eax +c0102c66: e8 98 fd ff ff calll -616 +c0102c6b: 83 c4 10 addl $16, %esp +c0102c6e: d9 7d da fnstcw -38(%ebp) +c0102c71: 66 8b 45 da movw -38(%ebp), %ax +c0102c75: 80 cc 0c orb $12, %ah +c0102c78: 66 89 45 d8 movw %ax, -40(%ebp) +c0102c7c: d9 6d d8 fldcw -40(%ebp) +c0102c7f: df 7d d0 fistpll -48(%ebp) +c0102c82: d9 6d da fldcw -38(%ebp) +c0102c85: 8b 45 d0 movl -48(%ebp), %eax +c0102c88: 8b 55 d4 movl -44(%ebp), %edx +c0102c8b: 8b 1d 20 88 35 c0 movl -1070233568, %ebx +c0102c91: 83 ec 0c subl $12, %esp +c0102c94: 50 pushl %eax +c0102c95: e8 fb fd ff ff calll -517 +c0102c9a: 83 c4 10 addl $16, %esp +c0102c9d: 89 c2 movl %eax, %edx +c0102c9f: 89 d8 movl %ebx, %eax +c0102ca1: c1 e0 02 shll $2, %eax +c0102ca4: 01 d8 addl %ebx, %eax +c0102ca6: c1 e0 02 shll $2, %eax +c0102ca9: 05 20 60 35 c0 addl $3224723488, %eax +c0102cae: 89 10 movl %edx, (%eax) +c0102cb0: 8b 15 20 88 35 c0 movl -1070233568, %edx +c0102cb6: 89 d0 movl %edx, %eax +c0102cb8: c1 e0 02 shll $2, %eax +c0102cbb: 01 d0 addl %edx, %eax +c0102cbd: c1 e0 02 shll $2, %eax +c0102cc0: 8d 90 24 60 35 c0 leal -1070243804(%eax), %edx +c0102cc6: 8b 45 f0 movl -16(%ebp), %eax +c0102cc9: 89 02 movl %eax, (%edx) +c0102ccb: 8b 15 20 88 35 c0 movl -1070233568, %edx +c0102cd1: 8b 45 f0 movl -16(%ebp), %eax +c0102cd4: 8d 0c c5 00 00 00 00 leal (,%eax,8), %ecx +c0102cdb: 89 d0 movl %edx, %eax +c0102cdd: c1 e0 02 shll $2, %eax +c0102ce0: 01 d0 addl %edx, %eax +c0102ce2: c1 e0 02 shll $2, %eax +c0102ce5: 05 28 60 35 c0 addl $3224723496, %eax +c0102cea: 89 08 movl %ecx, (%eax) +c0102cec: 8b 15 20 88 35 c0 movl -1070233568, %edx +c0102cf2: 89 d0 movl %edx, %eax +c0102cf4: c1 e0 02 shll $2, %eax +c0102cf7: 01 d0 addl %edx, %eax +c0102cf9: c1 e0 02 shll $2, %eax +c0102cfc: 05 20 60 35 c0 addl $3224723488, %eax +c0102d01: 8b 00 movl (%eax), %eax +c0102d03: 89 45 ec movl %eax, -20(%ebp) +c0102d06: 8b 15 20 88 35 c0 movl -1070233568, %edx +c0102d0c: 89 d0 movl %edx, %eax +c0102d0e: c1 e0 02 shll $2, %eax +c0102d11: 01 d0 addl %edx, %eax +c0102d13: c1 e0 02 shll $2, %eax +c0102d16: 05 24 60 35 c0 addl $3224723492, %eax +c0102d1b: 8b 00 movl (%eax), %eax +c0102d1d: 89 45 e8 movl %eax, -24(%ebp) +c0102d20: c7 45 f4 00 00 00 00 movl $0, -12(%ebp) +c0102d27: eb 0e jmp 14 +c0102d29: 8b 55 ec movl -20(%ebp), %edx +c0102d2c: 8b 45 f4 movl -12(%ebp), %eax +c0102d2f: 01 d0 addl %edx, %eax +c0102d31: c6 00 00 movb $0, (%eax) +c0102d34: ff 45 f4 incl -12(%ebp) +c0102d37: 8b 45 f4 movl -12(%ebp), %eax +c0102d3a: 3b 45 e8 cmpl -24(%ebp), %eax +c0102d3d: 72 ea jb -22 +c0102d3f: 8b 15 20 88 35 c0 movl -1070233568, %edx +c0102d45: 8b 45 08 movl 8(%ebp), %eax +c0102d48: c1 e0 0c shll $12, %eax +c0102d4b: 89 c1 movl %eax, %ecx +c0102d4d: 89 d0 movl %edx, %eax +c0102d4f: c1 e0 02 shll $2, %eax +c0102d52: 01 d0 addl %edx, %eax +c0102d54: c1 e0 02 shll $2, %eax +c0102d57: 05 2c 60 35 c0 addl $3224723500, %eax +c0102d5c: 89 08 movl %ecx, (%eax) +c0102d5e: 8b 1d 20 88 35 c0 movl -1070233568, %ebx +c0102d64: 83 ec 0c subl $12, %esp +c0102d67: ff 75 08 pushl 8(%ebp) +c0102d6a: e8 26 fd ff ff calll -730 +c0102d6f: 83 c4 10 addl $16, %esp +c0102d72: 89 c2 movl %eax, %edx +c0102d74: 89 d8 movl %ebx, %eax +c0102d76: c1 e0 02 shll $2, %eax +c0102d79: 01 d8 addl %ebx, %eax +c0102d7b: c1 e0 02 shll $2, %eax +c0102d7e: 05 30 60 35 c0 addl $3224723504, %eax +c0102d83: 89 10 movl %edx, (%eax) +c0102d85: a1 20 88 35 c0 movl 3224733728, %eax +c0102d8a: 40 incl %eax +c0102d8b: a3 20 88 35 c0 movl %eax, 3224733728 +c0102d90: 90 nop +c0102d91: 8b 5d fc movl -4(%ebp), %ebx +c0102d94: c9 leave +c0102d95: c3 retl + +malloc: +c0102d96: 55 pushl %ebp +c0102d97: 89 e5 movl %esp, %ebp +c0102d99: 57 pushl %edi +c0102d9a: 56 pushl %esi +c0102d9b: 53 pushl %ebx +c0102d9c: 83 ec 7c subl $124, %esp +c0102d9f: 8b 45 08 movl 8(%ebp), %eax +c0102da2: ba 00 00 00 00 movl $0, %edx +c0102da7: 89 45 80 movl %eax, -128(%ebp) +c0102daa: 89 55 84 movl %edx, -124(%ebp) +c0102dad: df 6d 80 fildll -128(%ebp) +c0102db0: d9 5d 94 fstps -108(%ebp) +c0102db3: d9 45 94 flds -108(%ebp) +c0102db6: d9 05 50 44 10 c0 flds -1072675760 +c0102dbc: de f9 fdivrp %st(1) +c0102dbe: 83 ec 0c subl $12, %esp +c0102dc1: 8d 64 24 fc leal -4(%esp), %esp +c0102dc5: d9 1c 24 fstps (%esp) +c0102dc8: e8 36 fc ff ff calll -970 +c0102dcd: 83 c4 10 addl $16, %esp +c0102dd0: d9 7d 92 fnstcw -110(%ebp) +c0102dd3: 66 8b 45 92 movw -110(%ebp), %ax +c0102dd7: 80 cc 0c orb $12, %ah +c0102dda: 66 89 45 90 movw %ax, -112(%ebp) +c0102dde: d9 6d 90 fldcw -112(%ebp) +c0102de1: df 7d 88 fistpll -120(%ebp) +c0102de4: d9 6d 92 fldcw -110(%ebp) +c0102de7: 8b 45 88 movl -120(%ebp), %eax +c0102dea: 8b 55 8c movl -116(%ebp), %edx +c0102ded: 89 45 c0 movl %eax, -64(%ebp) +c0102df0: 83 45 c0 03 addl $3, -64(%ebp) +c0102df4: c7 45 e4 ff ff ff ff movl $4294967295, -28(%ebp) +c0102dfb: c7 45 dc 00 00 00 00 movl $0, -36(%ebp) +c0102e02: e9 ec 00 00 00 jmp 236 +c0102e07: 8b 55 dc movl -36(%ebp), %edx +c0102e0a: 89 d0 movl %edx, %eax +c0102e0c: c1 e0 02 shll $2, %eax +c0102e0f: 01 d0 addl %edx, %eax +c0102e11: c1 e0 02 shll $2, %eax +c0102e14: 8d 90 20 60 35 c0 leal -1070243808(%eax), %edx +c0102e1a: 8d 45 98 leal -104(%ebp), %eax +c0102e1d: 89 d3 movl %edx, %ebx +c0102e1f: ba 05 00 00 00 movl $5, %edx +c0102e24: 89 c7 movl %eax, %edi +c0102e26: 89 de movl %ebx, %esi +c0102e28: 89 d1 movl %edx, %ecx +c0102e2a: f3 a5 rep movsl (%esi), %es:(%edi) +c0102e2c: 8b 45 a4 movl -92(%ebp), %eax +c0102e2f: 39 45 08 cmpl %eax, 8(%ebp) +c0102e32: 0f 87 aa 00 00 00 ja 170 +c0102e38: 8b 45 98 movl -104(%ebp), %eax +c0102e3b: 89 45 bc movl %eax, -68(%ebp) +c0102e3e: 8b 45 9c movl -100(%ebp), %eax +c0102e41: 89 45 b8 movl %eax, -72(%ebp) +c0102e44: c7 45 d4 00 00 00 00 movl $0, -44(%ebp) +c0102e4b: e9 83 00 00 00 jmp 131 +c0102e50: c6 45 d3 00 movb $0, -45(%ebp) +c0102e54: 8b 45 c0 movl -64(%ebp), %eax +c0102e57: 89 45 d8 movl %eax, -40(%ebp) +c0102e5a: 8b 45 d4 movl -44(%ebp), %eax +c0102e5d: c1 e0 03 shll $3, %eax +c0102e60: 89 45 c8 movl %eax, -56(%ebp) +c0102e63: 83 ec 08 subl $8, %esp +c0102e66: ff 75 c8 pushl -56(%ebp) +c0102e69: ff 75 bc pushl -68(%ebp) +c0102e6c: e8 e6 fc ff ff calll -794 +c0102e71: 83 c4 10 addl $16, %esp +c0102e74: 88 45 b7 movb %al, -73(%ebp) +c0102e77: 80 7d d3 00 cmpb $0, -45(%ebp) +c0102e7b: 74 27 je 39 +c0102e7d: 80 7d b7 00 cmpb $0, -73(%ebp) +c0102e81: 74 1c je 28 +c0102e83: 83 7d d8 00 cmpl $0, -40(%ebp) +c0102e87: 75 08 jne 8 +c0102e89: 8b 45 cc movl -52(%ebp), %eax +c0102e8c: 89 45 e0 movl %eax, -32(%ebp) +c0102e8f: eb 39 jmp 57 +c0102e91: 8b 45 c8 movl -56(%ebp), %eax +c0102e94: c1 e8 03 shrl $3, %eax +c0102e97: 01 45 d4 addl %eax, -44(%ebp) +c0102e9a: ff 4d d4 decl -44(%ebp) +c0102e9d: eb 2b jmp 43 +c0102e9f: ff 4d d8 decl -40(%ebp) +c0102ea2: eb 13 jmp 19 +c0102ea4: 80 7d b7 00 cmpb $0, -73(%ebp) +c0102ea8: 75 0d jne 13 +c0102eaa: c6 45 d3 01 movb $1, -45(%ebp) +c0102eae: 8b 45 c8 movl -56(%ebp), %eax +c0102eb1: 89 45 cc movl %eax, -52(%ebp) +c0102eb4: ff 4d d8 decl -40(%ebp) +c0102eb7: 83 7d d8 00 cmpl $0, -40(%ebp) +c0102ebb: 75 08 jne 8 +c0102ebd: 8b 45 cc movl -52(%ebp), %eax +c0102ec0: 89 45 e0 movl %eax, -32(%ebp) +c0102ec3: eb 05 jmp 5 +c0102ec5: ff 45 c8 incl -56(%ebp) +c0102ec8: eb 99 jmp -103 +c0102eca: 83 7d d8 00 cmpl $0, -40(%ebp) +c0102ece: 74 11 je 17 +c0102ed0: ff 45 d4 incl -44(%ebp) +c0102ed3: 8b 45 d4 movl -44(%ebp), %eax +c0102ed6: 3b 45 b8 cmpl -72(%ebp), %eax +c0102ed9: 0f 82 71 ff ff ff jb -143 +c0102edf: eb 01 jmp 1 +c0102ee1: 90 nop +c0102ee2: 83 7d d8 00 cmpl $0, -40(%ebp) +c0102ee6: 75 08 jne 8 +c0102ee8: 8b 45 dc movl -36(%ebp), %eax +c0102eeb: 89 45 e4 movl %eax, -28(%ebp) +c0102eee: eb 11 jmp 17 +c0102ef0: ff 45 dc incl -36(%ebp) +c0102ef3: a1 20 88 35 c0 movl 3224733728, %eax +c0102ef8: 39 45 dc cmpl %eax, -36(%ebp) +c0102efb: 0f 82 06 ff ff ff jb -250 +c0102f01: 83 7d e4 ff cmpl $-1, -28(%ebp) +c0102f05: 75 20 jne 32 +c0102f07: 83 ec 0c subl $12, %esp +c0102f0a: 68 00 01 00 00 pushl $256 +c0102f0f: e8 16 fd ff ff calll -746 +c0102f14: 83 c4 10 addl $16, %esp +c0102f17: 83 ec 0c subl $12, %esp +c0102f1a: ff 75 08 pushl 8(%ebp) +c0102f1d: e8 74 fe ff ff calll -396 +c0102f22: 83 c4 10 addl $16, %esp +c0102f25: eb 78 jmp 120 +c0102f27: c7 45 c4 00 00 00 00 movl $0, -60(%ebp) +c0102f2e: eb 1b jmp 27 +c0102f30: 8b 55 e0 movl -32(%ebp), %edx +c0102f33: 8b 45 c4 movl -60(%ebp), %eax +c0102f36: 01 c2 addl %eax, %edx +c0102f38: 8b 45 98 movl -104(%ebp), %eax +c0102f3b: 83 ec 08 subl $8, %esp +c0102f3e: 52 pushl %edx +c0102f3f: 50 pushl %eax +c0102f40: e8 57 fc ff ff calll -937 +c0102f45: 83 c4 10 addl $16, %esp +c0102f48: ff 45 c4 incl -60(%ebp) +c0102f4b: 8b 45 c4 movl -60(%ebp), %eax +c0102f4e: 3b 45 c0 cmpl -64(%ebp), %eax +c0102f51: 72 dd jb -35 +c0102f53: 8b 45 e0 movl -32(%ebp), %eax +c0102f56: c1 e0 03 shll $3, %eax +c0102f59: 83 c0 0c addl $12, %eax +c0102f5c: 89 45 b0 movl %eax, -80(%ebp) +c0102f5f: 8b 45 a8 movl -88(%ebp), %eax +c0102f62: 8b 55 b0 movl -80(%ebp), %edx +c0102f65: 83 ea 0c subl $12, %edx +c0102f68: 01 d0 addl %edx, %eax +c0102f6a: 89 45 ac movl %eax, -84(%ebp) +c0102f6d: 8b 45 ac movl -84(%ebp), %eax +c0102f70: 8b 55 c0 movl -64(%ebp), %edx +c0102f73: 89 10 movl %edx, (%eax) +c0102f75: 8b 45 ac movl -84(%ebp), %eax +c0102f78: 8d 50 04 leal 4(%eax), %edx +c0102f7b: 8b 45 e0 movl -32(%ebp), %eax +c0102f7e: 89 02 movl %eax, (%edx) +c0102f80: 8b 45 ac movl -84(%ebp), %eax +c0102f83: 8d 50 08 leal 8(%eax), %edx +c0102f86: 8b 45 e4 movl -28(%ebp), %eax +c0102f89: 89 02 movl %eax, (%edx) +c0102f8b: 8b 45 a4 movl -92(%ebp), %eax +c0102f8e: 2b 45 08 subl 8(%ebp), %eax +c0102f91: 83 e8 0c subl $12, %eax +c0102f94: 89 45 a4 movl %eax, -92(%ebp) +c0102f97: 8b 55 a8 movl -88(%ebp), %edx +c0102f9a: 8b 45 b0 movl -80(%ebp), %eax +c0102f9d: 01 d0 addl %edx, %eax +c0102f9f: 8d 65 f4 leal -12(%ebp), %esp +c0102fa2: 5b popl %ebx +c0102fa3: 5e popl %esi +c0102fa4: 5f popl %edi +c0102fa5: 5d popl %ebp +c0102fa6: c3 retl + +realloc: +c0102fa7: 55 pushl %ebp +c0102fa8: 89 e5 movl %esp, %ebp +c0102faa: 83 ec 18 subl $24, %esp +c0102fad: 83 ec 0c subl $12, %esp +c0102fb0: ff 75 0c pushl 12(%ebp) +c0102fb3: e8 de fd ff ff calll -546 +c0102fb8: 83 c4 10 addl $16, %esp +c0102fbb: 89 45 f4 movl %eax, -12(%ebp) +c0102fbe: 83 7d 08 00 cmpl $0, 8(%ebp) +c0102fc2: 75 05 jne 5 +c0102fc4: 8b 45 f4 movl -12(%ebp), %eax +c0102fc7: eb 38 jmp 56 +c0102fc9: 8b 45 08 movl 8(%ebp), %eax +c0102fcc: 8b 40 f4 movl -12(%eax), %eax +c0102fcf: 89 45 f0 movl %eax, -16(%ebp) +c0102fd2: 8b 45 f0 movl -16(%ebp), %eax +c0102fd5: c1 e0 02 shll $2, %eax +c0102fd8: 83 ec 04 subl $4, %esp +c0102fdb: 50 pushl %eax +c0102fdc: ff 75 08 pushl 8(%ebp) +c0102fdf: ff 75 f4 pushl -12(%ebp) +c0102fe2: e8 b0 00 00 00 calll 176 +c0102fe7: 83 c4 10 addl $16, %esp +c0102fea: 83 ec 0c subl $12, %esp +c0102fed: ff 75 08 pushl 8(%ebp) +c0102ff0: e8 0e 00 00 00 calll 14 +c0102ff5: 83 c4 10 addl $16, %esp +c0102ff8: 8b 45 f4 movl -12(%ebp), %eax +c0102ffb: 89 45 08 movl %eax, 8(%ebp) +c0102ffe: 8b 45 f4 movl -12(%ebp), %eax +c0103001: c9 leave +c0103002: c3 retl + +free: +c0103003: 55 pushl %ebp +c0103004: 89 e5 movl %esp, %ebp +c0103006: 57 pushl %edi +c0103007: 56 pushl %esi +c0103008: 53 pushl %ebx +c0103009: 83 ec 30 subl $48, %esp +c010300c: 8b 45 08 movl 8(%ebp), %eax +c010300f: 83 e8 0c subl $12, %eax +c0103012: 89 45 ec movl %eax, -20(%ebp) +c0103015: 8b 45 ec movl -20(%ebp), %eax +c0103018: 8b 00 movl (%eax), %eax +c010301a: 89 45 e8 movl %eax, -24(%ebp) +c010301d: 8b 45 ec movl -20(%ebp), %eax +c0103020: 8b 40 04 movl 4(%eax), %eax +c0103023: 89 45 e4 movl %eax, -28(%ebp) +c0103026: 8b 45 ec movl -20(%ebp), %eax +c0103029: 8b 40 08 movl 8(%eax), %eax +c010302c: 89 45 e0 movl %eax, -32(%ebp) +c010302f: 8b 55 e0 movl -32(%ebp), %edx +c0103032: 89 d0 movl %edx, %eax +c0103034: c1 e0 02 shll $2, %eax +c0103037: 01 d0 addl %edx, %eax +c0103039: c1 e0 02 shll $2, %eax +c010303c: 8d 90 20 60 35 c0 leal -1070243808(%eax), %edx +c0103042: 8d 45 cc leal -52(%ebp), %eax +c0103045: 89 d3 movl %edx, %ebx +c0103047: ba 05 00 00 00 movl $5, %edx +c010304c: 89 c7 movl %eax, %edi +c010304e: 89 de movl %ebx, %esi +c0103050: 89 d1 movl %edx, %ecx +c0103052: f3 a5 rep movsl (%esi), %es:(%edi) +c0103054: c7 45 f0 00 00 00 00 movl $0, -16(%ebp) +c010305b: eb 18 jmp 24 +c010305d: 8b 55 e4 movl -28(%ebp), %edx +c0103060: 8b 45 f0 movl -16(%ebp), %eax +c0103063: 01 c2 addl %eax, %edx +c0103065: 8b 45 cc movl -52(%ebp), %eax +c0103068: 52 pushl %edx +c0103069: 50 pushl %eax +c010306a: e8 73 fb ff ff calll -1165 +c010306f: 83 c4 08 addl $8, %esp +c0103072: ff 45 f0 incl -16(%ebp) +c0103075: 8b 45 f0 movl -16(%ebp), %eax +c0103078: 3b 45 e8 cmpl -24(%ebp), %eax +c010307b: 72 e0 jb -32 +c010307d: 8b 45 d8 movl -40(%ebp), %eax +c0103080: 8b 55 e8 movl -24(%ebp), %edx +c0103083: 83 c2 03 addl $3, %edx +c0103086: c1 e2 02 shll $2, %edx +c0103089: 01 d0 addl %edx, %eax +c010308b: 89 45 d8 movl %eax, -40(%ebp) +c010308e: 90 nop +c010308f: 8d 65 f4 leal -12(%ebp), %esp +c0103092: 5b popl %ebx +c0103093: 5e popl %esi +c0103094: 5f popl %edi +c0103095: 5d popl %ebp +c0103096: c3 retl + +memcpy: +c0103097: 55 pushl %ebp +c0103098: 89 e5 movl %esp, %ebp +c010309a: 83 ec 10 subl $16, %esp +c010309d: 8b 45 0c movl 12(%ebp), %eax +c01030a0: 89 45 f8 movl %eax, -8(%ebp) +c01030a3: 8b 45 08 movl 8(%ebp), %eax +c01030a6: 89 45 f4 movl %eax, -12(%ebp) +c01030a9: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01030b0: eb 17 jmp 23 +c01030b2: 8b 55 f8 movl -8(%ebp), %edx +c01030b5: 8b 45 fc movl -4(%ebp), %eax +c01030b8: 01 d0 addl %edx, %eax +c01030ba: 8b 4d f4 movl -12(%ebp), %ecx +c01030bd: 8b 55 fc movl -4(%ebp), %edx +c01030c0: 01 ca addl %ecx, %edx +c01030c2: 8a 00 movb (%eax), %al +c01030c4: 88 02 movb %al, (%edx) +c01030c6: ff 45 fc incl -4(%ebp) +c01030c9: 8b 45 fc movl -4(%ebp), %eax +c01030cc: 3b 45 10 cmpl 16(%ebp), %eax +c01030cf: 72 e1 jb -31 +c01030d1: 8b 45 08 movl 8(%ebp), %eax +c01030d4: c9 leave +c01030d5: c3 retl + +memset: +c01030d6: 55 pushl %ebp +c01030d7: 89 e5 movl %esp, %ebp +c01030d9: 83 ec 10 subl $16, %esp +c01030dc: 8b 45 08 movl 8(%ebp), %eax +c01030df: 89 45 f8 movl %eax, -8(%ebp) +c01030e2: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01030e9: eb 10 jmp 16 +c01030eb: 8b 55 f8 movl -8(%ebp), %edx +c01030ee: 8b 45 fc movl -4(%ebp), %eax +c01030f1: 01 d0 addl %edx, %eax +c01030f3: 8b 55 0c movl 12(%ebp), %edx +c01030f6: 88 10 movb %dl, (%eax) +c01030f8: ff 45 fc incl -4(%ebp) +c01030fb: 8b 45 fc movl -4(%ebp), %eax +c01030fe: 3b 45 10 cmpl 16(%ebp), %eax +c0103101: 72 e8 jb -24 +c0103103: 8b 45 08 movl 8(%ebp), %eax +c0103106: c9 leave +c0103107: c3 retl + +strcmp: +c0103108: 55 pushl %ebp +c0103109: 89 e5 movl %esp, %ebp +c010310b: 83 ec 10 subl $16, %esp +c010310e: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c0103115: eb 18 jmp 24 +c0103117: 8b 55 fc movl -4(%ebp), %edx +c010311a: 8b 45 08 movl 8(%ebp), %eax +c010311d: 01 d0 addl %edx, %eax +c010311f: 8a 00 movb (%eax), %al +c0103121: 84 c0 testb %al, %al +c0103123: 75 07 jne 7 +c0103125: b8 00 00 00 00 movl $0, %eax +c010312a: eb 39 jmp 57 +c010312c: ff 45 fc incl -4(%ebp) +c010312f: 8b 55 fc movl -4(%ebp), %edx +c0103132: 8b 45 08 movl 8(%ebp), %eax +c0103135: 01 d0 addl %edx, %eax +c0103137: 8a 10 movb (%eax), %dl +c0103139: 8b 4d fc movl -4(%ebp), %ecx +c010313c: 8b 45 0c movl 12(%ebp), %eax +c010313f: 01 c8 addl %ecx, %eax +c0103141: 8a 00 movb (%eax), %al +c0103143: 38 c2 cmpb %al, %dl +c0103145: 74 d0 je -48 +c0103147: 8b 55 fc movl -4(%ebp), %edx +c010314a: 8b 45 08 movl 8(%ebp), %eax +c010314d: 01 d0 addl %edx, %eax +c010314f: 8a 00 movb (%eax), %al +c0103151: 0f be d0 movsbl %al, %edx +c0103154: 8b 4d fc movl -4(%ebp), %ecx +c0103157: 8b 45 0c movl 12(%ebp), %eax +c010315a: 01 c8 addl %ecx, %eax +c010315c: 8a 00 movb (%eax), %al +c010315e: 0f be c0 movsbl %al, %eax +c0103161: 29 c2 subl %eax, %edx +c0103163: 89 d0 movl %edx, %eax +c0103165: c9 leave +c0103166: c3 retl + +strlen: +c0103167: 55 pushl %ebp +c0103168: 89 e5 movl %esp, %ebp +c010316a: 83 ec 10 subl $16, %esp +c010316d: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c0103174: eb 03 jmp 3 +c0103176: ff 45 fc incl -4(%ebp) +c0103179: 8b 55 08 movl 8(%ebp), %edx +c010317c: 8b 45 fc movl -4(%ebp), %eax +c010317f: 01 d0 addl %edx, %eax +c0103181: 8a 00 movb (%eax), %al +c0103183: 84 c0 testb %al, %al +c0103185: 75 ef jne -17 +c0103187: 8b 45 fc movl -4(%ebp), %eax +c010318a: c9 leave +c010318b: c3 retl + +strcpy: +c010318c: 55 pushl %ebp +c010318d: 89 e5 movl %esp, %ebp +c010318f: 83 ec 10 subl $16, %esp +c0103192: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c0103199: eb 17 jmp 23 +c010319b: 8b 55 0c movl 12(%ebp), %edx +c010319e: 8b 45 fc movl -4(%ebp), %eax +c01031a1: 01 d0 addl %edx, %eax +c01031a3: 8b 4d 08 movl 8(%ebp), %ecx +c01031a6: 8b 55 fc movl -4(%ebp), %edx +c01031a9: 01 ca addl %ecx, %edx +c01031ab: 8a 00 movb (%eax), %al +c01031ad: 88 02 movb %al, (%edx) +c01031af: ff 45 fc incl -4(%ebp) +c01031b2: ff 75 0c pushl 12(%ebp) +c01031b5: e8 ad ff ff ff calll -83 +c01031ba: 83 c4 04 addl $4, %esp +c01031bd: 39 45 fc cmpl %eax, -4(%ebp) +c01031c0: 72 d9 jb -39 +c01031c2: 8b 55 08 movl 8(%ebp), %edx +c01031c5: 8b 45 fc movl -4(%ebp), %eax +c01031c8: 01 d0 addl %edx, %eax +c01031ca: c6 00 00 movb $0, (%eax) +c01031cd: 8b 45 08 movl 8(%ebp), %eax +c01031d0: c9 leave +c01031d1: c3 retl + +strrev: +c01031d2: 55 pushl %ebp +c01031d3: 89 e5 movl %esp, %ebp +c01031d5: 83 ec 10 subl $16, %esp +c01031d8: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c01031df: ff 75 08 pushl 8(%ebp) +c01031e2: e8 80 ff ff ff calll -128 +c01031e7: 83 c4 04 addl $4, %esp +c01031ea: 48 decl %eax +c01031eb: 89 45 f8 movl %eax, -8(%ebp) +c01031ee: eb 34 jmp 52 +c01031f0: 8b 55 fc movl -4(%ebp), %edx +c01031f3: 8b 45 08 movl 8(%ebp), %eax +c01031f6: 01 d0 addl %edx, %eax +c01031f8: 8a 00 movb (%eax), %al +c01031fa: 88 45 f7 movb %al, -9(%ebp) +c01031fd: 8b 55 f8 movl -8(%ebp), %edx +c0103200: 8b 45 08 movl 8(%ebp), %eax +c0103203: 01 d0 addl %edx, %eax +c0103205: 8b 4d fc movl -4(%ebp), %ecx +c0103208: 8b 55 08 movl 8(%ebp), %edx +c010320b: 01 ca addl %ecx, %edx +c010320d: 8a 00 movb (%eax), %al +c010320f: 88 02 movb %al, (%edx) +c0103211: 8b 55 f8 movl -8(%ebp), %edx +c0103214: 8b 45 08 movl 8(%ebp), %eax +c0103217: 01 c2 addl %eax, %edx +c0103219: 8a 45 f7 movb -9(%ebp), %al +c010321c: 88 02 movb %al, (%edx) +c010321e: ff 45 fc incl -4(%ebp) +c0103221: ff 4d f8 decl -8(%ebp) +c0103224: 8b 45 fc movl -4(%ebp), %eax +c0103227: 3b 45 f8 cmpl -8(%ebp), %eax +c010322a: 7c c4 jl -60 +c010322c: 8b 45 08 movl 8(%ebp), %eax +c010322f: c9 leave +c0103230: c3 retl + +int_to_ascii: +c0103231: 55 pushl %ebp +c0103232: 89 e5 movl %esp, %ebp +c0103234: 83 ec 10 subl $16, %esp +c0103237: 8b 45 08 movl 8(%ebp), %eax +c010323a: 89 45 f8 movl %eax, -8(%ebp) +c010323d: 83 7d f8 00 cmpl $0, -8(%ebp) +c0103241: 79 03 jns 3 +c0103243: f7 5d 08 negl 8(%ebp) +c0103246: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c010324d: 8b 45 08 movl 8(%ebp), %eax +c0103250: b9 0a 00 00 00 movl $10, %ecx +c0103255: 99 cltd +c0103256: f7 f9 idivl %ecx +c0103258: 89 d0 movl %edx, %eax +c010325a: 8d 48 30 leal 48(%eax), %ecx +c010325d: 8b 45 fc movl -4(%ebp), %eax +c0103260: 8d 50 01 leal 1(%eax), %edx +c0103263: 89 55 fc movl %edx, -4(%ebp) +c0103266: 89 c2 movl %eax, %edx +c0103268: 8b 45 0c movl 12(%ebp), %eax +c010326b: 01 d0 addl %edx, %eax +c010326d: 88 ca movb %cl, %dl +c010326f: 88 10 movb %dl, (%eax) +c0103271: 8b 4d 08 movl 8(%ebp), %ecx +c0103274: b8 67 66 66 66 movl $1717986919, %eax +c0103279: f7 e9 imull %ecx +c010327b: c1 fa 02 sarl $2, %edx +c010327e: 89 c8 movl %ecx, %eax +c0103280: c1 f8 1f sarl $31, %eax +c0103283: 29 c2 subl %eax, %edx +c0103285: 89 d0 movl %edx, %eax +c0103287: 89 45 08 movl %eax, 8(%ebp) +c010328a: 83 7d 08 00 cmpl $0, 8(%ebp) +c010328e: 7f bd jg -67 +c0103290: 83 7d f8 00 cmpl $0, -8(%ebp) +c0103294: 79 13 jns 19 +c0103296: 8b 45 fc movl -4(%ebp), %eax +c0103299: 8d 50 01 leal 1(%eax), %edx +c010329c: 89 55 fc movl %edx, -4(%ebp) +c010329f: 89 c2 movl %eax, %edx +c01032a1: 8b 45 0c movl 12(%ebp), %eax +c01032a4: 01 d0 addl %edx, %eax +c01032a6: c6 00 2d movb $45, (%eax) +c01032a9: 8b 55 fc movl -4(%ebp), %edx +c01032ac: 8b 45 0c movl 12(%ebp), %eax +c01032af: 01 d0 addl %edx, %eax +c01032b1: c6 00 00 movb $0, (%eax) +c01032b4: ff 75 0c pushl 12(%ebp) +c01032b7: e8 16 ff ff ff calll -234 +c01032bc: 83 c4 04 addl $4, %esp +c01032bf: 90 nop +c01032c0: c9 leave +c01032c1: c3 retl + +hex_to_ascii: +c01032c2: 55 pushl %ebp +c01032c3: 89 e5 movl %esp, %ebp +c01032c5: 83 ec 18 subl $24, %esp +c01032c8: 83 ec 08 subl $8, %esp +c01032cb: 6a 30 pushl $48 +c01032cd: ff 75 0c pushl 12(%ebp) +c01032d0: e8 cb 00 00 00 calll 203 +c01032d5: 83 c4 10 addl $16, %esp +c01032d8: 83 ec 08 subl $8, %esp +c01032db: 6a 78 pushl $120 +c01032dd: ff 75 0c pushl 12(%ebp) +c01032e0: e8 bb 00 00 00 calll 187 +c01032e5: 83 c4 10 addl $16, %esp +c01032e8: c6 45 f7 00 movb $0, -9(%ebp) +c01032ec: c7 45 f0 1c 00 00 00 movl $28, -16(%ebp) +c01032f3: eb 61 jmp 97 +c01032f5: 8b 45 f0 movl -16(%ebp), %eax +c01032f8: 8b 55 08 movl 8(%ebp), %edx +c01032fb: 88 c1 movb %al, %cl +c01032fd: d3 fa sarl %cl, %edx +c01032ff: 89 d0 movl %edx, %eax +c0103301: 83 e0 0f andl $15, %eax +c0103304: 89 45 ec movl %eax, -20(%ebp) +c0103307: 83 7d ec 00 cmpl $0, -20(%ebp) +c010330b: 75 06 jne 6 +c010330d: 80 7d f7 00 cmpb $0, -9(%ebp) +c0103311: 74 3e je 62 +c0103313: c6 45 f7 01 movb $1, -9(%ebp) +c0103317: 83 7d ec 0a cmpl $10, -20(%ebp) +c010331b: 76 1a jbe 26 +c010331d: 8b 45 ec movl -20(%ebp), %eax +c0103320: 83 c0 57 addl $87, %eax +c0103323: 0f be c0 movsbl %al, %eax +c0103326: 83 ec 08 subl $8, %esp +c0103329: 50 pushl %eax +c010332a: ff 75 0c pushl 12(%ebp) +c010332d: e8 6e 00 00 00 calll 110 +c0103332: 83 c4 10 addl $16, %esp +c0103335: eb 1b jmp 27 +c0103337: 8b 45 ec movl -20(%ebp), %eax +c010333a: 83 c0 30 addl $48, %eax +c010333d: 0f be c0 movsbl %al, %eax +c0103340: 83 ec 08 subl $8, %esp +c0103343: 50 pushl %eax +c0103344: ff 75 0c pushl 12(%ebp) +c0103347: e8 54 00 00 00 calll 84 +c010334c: 83 c4 10 addl $16, %esp +c010334f: eb 01 jmp 1 +c0103351: 90 nop +c0103352: 83 6d f0 04 subl $4, -16(%ebp) +c0103356: 83 7d f0 00 cmpl $0, -16(%ebp) +c010335a: 7f 99 jg -103 +c010335c: 8b 45 08 movl 8(%ebp), %eax +c010335f: 83 e0 0f andl $15, %eax +c0103362: 89 45 ec movl %eax, -20(%ebp) +c0103365: 83 7d ec 09 cmpl $9, -20(%ebp) +c0103369: 76 1a jbe 26 +c010336b: 8b 45 ec movl -20(%ebp), %eax +c010336e: 83 c0 57 addl $87, %eax +c0103371: 0f be c0 movsbl %al, %eax +c0103374: 83 ec 08 subl $8, %esp +c0103377: 50 pushl %eax +c0103378: ff 75 0c pushl 12(%ebp) +c010337b: e8 20 00 00 00 calll 32 +c0103380: 83 c4 10 addl $16, %esp +c0103383: eb 18 jmp 24 +c0103385: 8b 45 ec movl -20(%ebp), %eax +c0103388: 83 c0 30 addl $48, %eax +c010338b: 0f be c0 movsbl %al, %eax +c010338e: 83 ec 08 subl $8, %esp +c0103391: 50 pushl %eax +c0103392: ff 75 0c pushl 12(%ebp) +c0103395: e8 06 00 00 00 calll 6 +c010339a: 83 c4 10 addl $16, %esp +c010339d: 90 nop +c010339e: c9 leave +c010339f: c3 retl + +append: +c01033a0: 55 pushl %ebp +c01033a1: 89 e5 movl %esp, %ebp +c01033a3: 83 ec 14 subl $20, %esp +c01033a6: 8b 45 0c movl 12(%ebp), %eax +c01033a9: 88 45 ec movb %al, -20(%ebp) +c01033ac: ff 75 08 pushl 8(%ebp) +c01033af: e8 b3 fd ff ff calll -589 +c01033b4: 83 c4 04 addl $4, %esp +c01033b7: 89 45 fc movl %eax, -4(%ebp) +c01033ba: 8b 55 fc movl -4(%ebp), %edx +c01033bd: 8b 45 08 movl 8(%ebp), %eax +c01033c0: 01 c2 addl %eax, %edx +c01033c2: 8a 45 ec movb -20(%ebp), %al +c01033c5: 88 02 movb %al, (%edx) +c01033c7: 8b 45 fc movl -4(%ebp), %eax +c01033ca: 8d 50 01 leal 1(%eax), %edx +c01033cd: 8b 45 08 movl 8(%ebp), %eax +c01033d0: 01 d0 addl %edx, %eax +c01033d2: c6 00 00 movb $0, (%eax) +c01033d5: 90 nop +c01033d6: c9 leave +c01033d7: c3 retl + +backspace: +c01033d8: 55 pushl %ebp +c01033d9: 89 e5 movl %esp, %ebp +c01033db: 83 ec 10 subl $16, %esp +c01033de: ff 75 08 pushl 8(%ebp) +c01033e1: e8 81 fd ff ff calll -639 +c01033e6: 83 c4 04 addl $4, %esp +c01033e9: 89 45 fc movl %eax, -4(%ebp) +c01033ec: 8b 45 fc movl -4(%ebp), %eax +c01033ef: 8d 50 ff leal -1(%eax), %edx +c01033f2: 8b 45 08 movl 8(%ebp), %eax +c01033f5: 01 d0 addl %edx, %eax +c01033f7: c6 00 00 movb $0, (%eax) +c01033fa: 90 nop +c01033fb: c9 leave +c01033fc: c3 retl + +strtok_delim_check: +c01033fd: 55 pushl %ebp +c01033fe: 89 e5 movl %esp, %ebp +c0103400: 83 ec 10 subl $16, %esp +c0103403: c7 45 fc 00 00 00 00 movl $0, -4(%ebp) +c010340a: eb 37 jmp 55 +c010340c: 8b 15 24 88 35 c0 movl -1070233564, %edx +c0103412: a1 28 88 35 c0 movl 3224733736, %eax +c0103417: 01 d0 addl %edx, %eax +c0103419: 8a 10 movb (%eax), %dl +c010341b: 8b 4d 08 movl 8(%ebp), %ecx +c010341e: 8b 45 fc movl -4(%ebp), %eax +c0103421: 01 c8 addl %ecx, %eax +c0103423: 8a 00 movb (%eax), %al +c0103425: 38 c2 cmpb %al, %dl +c0103427: 74 13 je 19 +c0103429: 8b 15 24 88 35 c0 movl -1070233564, %edx +c010342f: a1 28 88 35 c0 movl 3224733736, %eax +c0103434: 01 d0 addl %edx, %eax +c0103436: 8a 00 movb (%eax), %al +c0103438: 84 c0 testb %al, %al +c010343a: 75 04 jne 4 +c010343c: b0 00 movb $0, %al +c010343e: eb 15 jmp 21 +c0103440: ff 45 fc incl -4(%ebp) +c0103443: ff 75 08 pushl 8(%ebp) +c0103446: e8 1c fd ff ff calll -740 +c010344b: 83 c4 04 addl $4, %esp +c010344e: 39 45 fc cmpl %eax, -4(%ebp) +c0103451: 72 b9 jb -71 +c0103453: b0 01 movb $1, %al +c0103455: c9 leave +c0103456: c3 retl + +strtok: +c0103457: 55 pushl %ebp +c0103458: 89 e5 movl %esp, %ebp +c010345a: 83 ec 18 subl $24, %esp +c010345d: 83 7d 08 00 cmpl $0, 8(%ebp) +c0103461: 74 12 je 18 +c0103463: 8b 45 08 movl 8(%ebp), %eax +c0103466: a3 24 88 35 c0 movl %eax, 3224733732 +c010346b: c7 05 28 88 35 c0 00 00 00 00 movl $0, -1070233560 +c0103475: a1 24 88 35 c0 movl 3224733732, %eax +c010347a: 85 c0 testl %eax, %eax +c010347c: 74 19 je 25 +c010347e: a1 24 88 35 c0 movl 3224733732, %eax +c0103483: 50 pushl %eax +c0103484: e8 de fc ff ff calll -802 +c0103489: 83 c4 04 addl $4, %esp +c010348c: 89 c2 movl %eax, %edx +c010348e: a1 28 88 35 c0 movl 3224733736, %eax +c0103493: 39 c2 cmpl %eax, %edx +c0103495: 73 0a jae 10 +c0103497: b8 00 00 00 00 movl $0, %eax +c010349c: e9 9b 00 00 00 jmp 155 +c01034a1: 83 ec 0c subl $12, %esp +c01034a4: 6a 20 pushl $32 +c01034a6: e8 eb f8 ff ff calll -1813 +c01034ab: 83 c4 10 addl $16, %esp +c01034ae: 89 45 f4 movl %eax, -12(%ebp) +c01034b1: 8b 45 f4 movl -12(%ebp), %eax +c01034b4: c6 00 00 movb $0, (%eax) +c01034b7: c7 45 f0 20 00 00 00 movl $32, -16(%ebp) +c01034be: eb 5c jmp 92 +c01034c0: 83 ec 0c subl $12, %esp +c01034c3: ff 75 f4 pushl -12(%ebp) +c01034c6: e8 9c fc ff ff calll -868 +c01034cb: 83 c4 10 addl $16, %esp +c01034ce: 40 incl %eax +c01034cf: 39 45 f0 cmpl %eax, -16(%ebp) +c01034d2: 75 1c jne 28 +c01034d4: 8b 45 f0 movl -16(%ebp), %eax +c01034d7: 83 c0 20 addl $32, %eax +c01034da: 83 ec 08 subl $8, %esp +c01034dd: 50 pushl %eax +c01034de: ff 75 f4 pushl -12(%ebp) +c01034e1: e8 c1 fa ff ff calll -1343 +c01034e6: 83 c4 10 addl $16, %esp +c01034e9: 89 45 f4 movl %eax, -12(%ebp) +c01034ec: 83 45 f0 20 addl $32, -16(%ebp) +c01034f0: 8b 15 24 88 35 c0 movl -1070233564, %edx +c01034f6: a1 28 88 35 c0 movl 3224733736, %eax +c01034fb: 01 d0 addl %edx, %eax +c01034fd: 8a 00 movb (%eax), %al +c01034ff: 0f be c0 movsbl %al, %eax +c0103502: 83 ec 08 subl $8, %esp +c0103505: 50 pushl %eax +c0103506: ff 75 f4 pushl -12(%ebp) +c0103509: e8 92 fe ff ff calll -366 +c010350e: 83 c4 10 addl $16, %esp +c0103511: a1 28 88 35 c0 movl 3224733736, %eax +c0103516: 40 incl %eax +c0103517: a3 28 88 35 c0 movl %eax, 3224733736 +c010351c: 83 ec 0c subl $12, %esp +c010351f: ff 75 0c pushl 12(%ebp) +c0103522: e8 d6 fe ff ff calll -298 +c0103527: 83 c4 10 addl $16, %esp +c010352a: 84 c0 testb %al, %al +c010352c: 75 92 jne -110 +c010352e: a1 28 88 35 c0 movl 3224733736, %eax +c0103533: 40 incl %eax +c0103534: a3 28 88 35 c0 movl %eax, 3224733736 +c0103539: 8b 45 f4 movl -12(%ebp), %eax +c010353c: c9 leave +c010353d: c3 retl + +yield: +c010353e: 55 pushl %ebp +c010353f: 89 e5 movl %esp, %ebp +c0103541: b8 01 00 00 00 movl $1, %eax +c0103546: cd 50 int $80 +c0103548: 90 nop +c0103549: 5d popl %ebp +c010354a: c3 retl + +createTask: +c010354b: 55 pushl %ebp +c010354c: 89 e5 movl %esp, %ebp +c010354e: 53 pushl %ebx +c010354f: 8b 45 08 movl 8(%ebp), %eax +c0103552: 89 c3 movl %eax, %ebx +c0103554: b8 02 00 00 00 movl $2, %eax +c0103559: cd 50 int $80 +c010355b: 90 nop +c010355c: 5b popl %ebx +c010355d: 5d popl %ebp +c010355e: c3 retl + +createTaskCr3: +c010355f: 55 pushl %ebp +c0103560: 89 e5 movl %esp, %ebp +c0103562: 53 pushl %ebx +c0103563: 8b 45 08 movl 8(%ebp), %eax +c0103566: 8b 55 0c movl 12(%ebp), %edx +c0103569: 89 c3 movl %eax, %ebx +c010356b: 89 d1 movl %edx, %ecx +c010356d: b8 09 00 00 00 movl $9, %eax +c0103572: cd 50 int $80 +c0103574: 90 nop +c0103575: 5b popl %ebx +c0103576: 5d popl %ebp +c0103577: c3 retl + +createTaskCr3Param: +c0103578: 55 pushl %ebp +c0103579: 89 e5 movl %esp, %ebp +c010357b: 56 pushl %esi +c010357c: 53 pushl %ebx +c010357d: 8b 45 08 movl 8(%ebp), %eax +c0103580: 8b 4d 0c movl 12(%ebp), %ecx +c0103583: 8b 55 10 movl 16(%ebp), %edx +c0103586: 8b 75 14 movl 20(%ebp), %esi +c0103589: 89 c3 movl %eax, %ebx +c010358b: b8 0c 00 00 00 movl $12, %eax +c0103590: cd 50 int $80 +c0103592: 90 nop +c0103593: 5b popl %ebx +c0103594: 5e popl %esi +c0103595: 5d popl %ebp +c0103596: c3 retl diff --git a/vfs/main.c b/vfs/main.c index a9681c1..dc5bef2 100644 --- a/vfs/main.c +++ b/vfs/main.c @@ -28,8 +28,8 @@ static vfs_mapping* head_mapping; static vfs_mapping* tail_mapping; vfs_file* fd_tables[32768]; uint16_t open_fds[32768]; - -vfs_message* get_message(Message* msg,uint32_t box) { +uint32_t box; +vfs_message* get_message(Message* msg) { msg->msg=malloc(sizeof(vfs_message)); mailbox_get_msg(box,msg,sizeof(vfs_message)); while (msg->from==0 && msg->size==0) { @@ -37,8 +37,6 @@ vfs_message* get_message(Message* msg,uint32_t box) { yield(); } vfs_message* vfs_msg=(vfs_message*)msg->msg; - msg->to=msg->from; - msg->from=box; return vfs_msg; } @@ -98,13 +96,13 @@ char vfs_fopen(vfs_message* vfs_msg,uint32_t from) { vfs_msg->path[i]=path_buf[i+mntpnt_len]; } free(path_buf); - msg.from=1; + msg.from=box; msg.to=drvs[mntpnt->type]; msg.size=sizeof(vfs_message); msg.msg=vfs_msg; mailbox_send_msg(&msg); yield(); - vfs_message* vfs_msg=get_message(&msg,1); + vfs_message* vfs_msg=get_message(&msg); if (vfs_msg->flags!=0) { return vfs_msg->flags; } @@ -138,13 +136,13 @@ char vfs_putc(vfs_message* vfs_msg,uint32_t from) { strcpy(&vfs_msg->mode[0],file_info.mode); vfs_msg->pos=file_info.pos; Message msg; - msg.from=1; + msg.from=box; msg.to=file_info.mntpnt->type; msg.size=sizeof(vfs_message); msg.msg=vfs_msg; mailbox_send_msg(&msg); yield(); - vfs_msg=get_message(&msg,1); + vfs_msg=get_message(&msg); if (vfs_msg->flags!=0) { return vfs_msg->flags; } @@ -154,11 +152,11 @@ char vfs_putc(vfs_message* vfs_msg,uint32_t from) { int main() { init_vfs(); - uint32_t box=mailbox_new(16); + box=mailbox_new(16); yield(); while (1) { Message msg; - vfs_message* vfs_msg=get_message(&msg,box); + vfs_message* vfs_msg=get_message(&msg); switch (vfs_msg->type) { case VFS_OPEN: vfs_msg->flags=vfs_fopen(vfs_msg,msg.from);