40f51d:	00 5f 5f             	add    %bl,0x5f(%edi)
40f520:	76 62                	jbe    0x40f584
40f522:	61                   	popa
40f523:	53                   	push   %ebx
40f524:	74 72                	je     0x40f598
40f526:	43                   	inc    %ebx
40f527:	6d                   	insl   (%dx),%es:(%edi)
40f528:	70 00                	jo     0x40f52a
40f52a:	00 00                	add    %al,(%eax)
40f52c:	5f                   	pop    %edi
40f52d:	5f                   	pop    %edi
40f52e:	76 62                	jbe    0x40f592
40f530:	61                   	popa
40f531:	41                   	inc    %ecx
40f532:	72 79                	jb     0x40f5ad
40f534:	43                   	inc    %ebx
40f535:	6f                   	outsl  %ds:(%esi),(%dx)
40f536:	6e                   	outsb  %ds:(%esi),(%dx)
40f537:	73 74                	jae    0x40f5ad
40f539:	72 75                	jb     0x40f5b0
40f53b:	63 74 32 00          	arpl   %esi,0x0(%edx,%esi,1)
40f53f:	00 00                	add    %al,(%eax)
40f541:	00 5f 5f             	add    %bl,0x5f(%edi)
40f544:	76 62                	jbe    0x40f5a8
40f546:	61                   	popa
40f547:	52                   	push   %edx
40f548:	34 53                	xor    $0x53,%al
40f54a:	74 72                	je     0x40f5be
40f54c:	00 00                	add    %al,(%eax)
40f54e:	00 00                	add    %al,(%eax)
40f550:	5f                   	pop    %edi
40f551:	5f                   	pop    %edi
40f552:	76 62                	jbe    0x40f5b6
40f554:	61                   	popa
40f555:	49                   	dec    %ecx
40f556:	32 49 34             	xor    0x34(%ecx),%cl
40f559:	00 00                	add    %al,(%eax)
40f55b:	00 5f 5f             	add    %bl,0x5f(%edi)
40f55e:	76 62                	jbe    0x40f5c2
40f560:	61                   	popa
40f561:	4f                   	dec    %edi
40f562:	62 6a 56             	bound  %ebp,0x56(%edx)
40f565:	61                   	popa
40f566:	72 00                	jb     0x40f568
40f568:	00 00                	add    %al,(%eax)
40f56a:	5f                   	pop    %edi
40f56b:	5f                   	pop    %edi
40f56c:	76 62                	jbe    0x40f5d0
40f56e:	61                   	popa
40f56f:	56                   	push   %esi
40f570:	61                   	popa
40f571:	72 4c                	jb     0x40f5bf
40f573:	61                   	popa
40f574:	74 65                	je     0x40f5db
40f576:	4d                   	dec    %ebp
40f577:	65 6d                	gs insl (%dx),%es:(%edi)
40f579:	53                   	push   %ebx
40f57a:	74 00                	je     0x40f57c
40f57c:	00 00                	add    %al,(%eax)
40f57e:	5f                   	pop    %edi
40f57f:	5f                   	pop    %edi
40f580:	76 62                	jbe    0x40f5e4
40f582:	61                   	popa
40f583:	43                   	inc    %ebx
40f584:	61                   	popa
40f585:	73 74                	jae    0x40f5fb
40f587:	4f                   	dec    %edi
40f588:	62 6a 56             	bound  %ebp,0x56(%edx)
40f58b:	61                   	popa
40f58c:	72 00                	jb     0x40f58e
40f58e:	00 00                	add    %al,(%eax)
40f590:	5f                   	pop    %edi
40f591:	61                   	popa
40f592:	64 6a 5f             	fs push $0x5f
40f595:	66 70 61             	data16 jo 0x40f5f9
40f598:	74 61                	je     0x40f5fb
40f59a:	6e                   	outsb  %ds:(%esi),(%dx)
40f59b:	00 00                	add    %al,(%eax)
40f59d:	00 45 56             	add    %al,0x56(%ebp)
40f5a0:	45                   	inc    %ebp
40f5a1:	4e                   	dec    %esi
40f5a2:	54                   	push   %esp
40f5a3:	5f                   	pop    %edi
40f5a4:	53                   	push   %ebx
40f5a5:	49                   	dec    %ecx
40f5a6:	4e                   	dec    %esi
40f5a7:	4b                   	dec    %ebx
40f5a8:	5f                   	pop    %edi
40f5a9:	52                   	push   %edx
40f5aa:	65 6c                	gs insb (%dx),%es:(%edi)
40f5ac:	65 61                	gs popa
40f5ae:	73 65                	jae    0x40f615
40f5b0:	00 00                	add    %al,(%eax)
40f5b2:	00 00                	add    %al,(%eax)
40f5b4:	5f                   	pop    %edi
40f5b5:	5f                   	pop    %edi
40f5b6:	76 62                	jbe    0x40f61a
40f5b8:	61                   	popa
40f5b9:	55                   	push   %ebp
40f5ba:	49                   	dec    %ecx
40f5bb:	31 49 32             	xor    %ecx,0x32(%ecx)
40f5be:	00 00                	add    %al,(%eax)
40f5c0:	00 00                	add    %al,(%eax)
40f5c2:	5f                   	pop    %edi
40f5c3:	43                   	inc    %ebx
40f5c4:	49                   	dec    %ecx
40f5c5:	73 71                	jae    0x40f638
40f5c7:	72 74                	jb     0x40f63d
40f5c9:	00 00                	add    %al,(%eax)
40f5cb:	00 45 56             	add    %al,0x56(%ebp)
40f5ce:	45                   	inc    %ebp
40f5cf:	4e                   	dec    %esi
40f5d0:	54                   	push   %esp
40f5d1:	5f                   	pop    %edi
40f5d2:	53                   	push   %ebx
40f5d3:	49                   	dec    %ecx
40f5d4:	4e                   	dec    %esi
40f5d5:	4b                   	dec    %ebx
40f5d6:	5f                   	pop    %edi
40f5d7:	51                   	push   %ecx
40f5d8:	75 65                	jne    0x40f63f
40f5da:	72 79                	jb     0x40f655
40f5dc:	49                   	dec    %ecx
40f5dd:	6e                   	outsb  %ds:(%esi),(%dx)
40f5de:	74 65                	je     0x40f645
40f5e0:	72 66                	jb     0x40f648
40f5e2:	61                   	popa
40f5e3:	63 65 00             	arpl   %esp,0x0(%ebp)
40f5e6:	00 00                	add    %al,(%eax)
40f5e8:	5f                   	pop    %edi
40f5e9:	5f                   	pop    %edi
40f5ea:	76 62                	jbe    0x40f64e
40f5ec:	61                   	popa
40f5ed:	46                   	inc    %esi
40f5ee:	70 43                	jo     0x40f633
40f5f0:	6d                   	insl   (%dx),%es:(%edi)
40f5f1:	70 43                	jo     0x40f636
40f5f3:	79 00                	jns    0x40f5f5
40f5f5:	00 00                	add    %al,(%eax)
40f5f7:	00 5f 5f             	add    %bl,0x5f(%edi)
40f5fa:	76 62                	jbe    0x40f65e
40f5fc:	61                   	popa
40f5fd:	45                   	inc    %ebp
40f5fe:	78 63                	js     0x40f663
40f600:	65 70 74             	gs jo  0x40f677
40f603:	48                   	dec    %eax
40f604:	61                   	popa
40f605:	6e                   	outsb  %ds:(%esi),(%dx)
40f606:	64 6c                	fs insb (%dx),%es:(%edi)
40f608:	65 72 00             	gs jb  0x40f60b
40f60b:	00 00                	add    %al,(%eax)
40f60d:	00 5f 61             	add    %bl,0x61(%edi)
40f610:	64 6a 5f             	fs push $0x5f
40f613:	66 70 72             	data16 jo 0x40f688
40f616:	65 6d                	gs insl (%dx),%es:(%edi)
40f618:	00 00                	add    %al,(%eax)
40f61a:	00 00                	add    %al,(%eax)
40f61c:	5f                   	pop    %edi
40f61d:	61                   	popa
40f61e:	64 6a 5f             	fs push $0x5f
40f621:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40f628:	36 34 00             	ss xor $0x0,%al
40f62b:	00 00                	add    %al,(%eax)
40f62d:	00 5f 5f             	add    %bl,0x5f(%edi)
40f630:	76 62                	jbe    0x40f694
40f632:	61                   	popa
40f633:	56                   	push   %esi
40f634:	61                   	popa
40f635:	72 45                	jb     0x40f67c
40f637:	72 72                	jb     0x40f6ab
40f639:	49                   	dec    %ecx
40f63a:	34 00                	xor    $0x0,%al
40f63c:	00 00                	add    %al,(%eax)
40f63e:	5f                   	pop    %edi
40f63f:	5f                   	pop    %edi
40f640:	76 62                	jbe    0x40f6a4
40f642:	61                   	popa
40f643:	49                   	dec    %ecx
40f644:	32 53 74             	xor    0x74(%ebx),%dl
40f647:	72 00                	jb     0x40f649
40f649:	00 00                	add    %al,(%eax)
40f64b:	00 5f 5f             	add    %bl,0x5f(%edi)
40f64e:	76 62                	jbe    0x40f6b2
40f650:	61                   	popa
40f651:	46                   	inc    %esi
40f652:	50                   	push   %eax
40f653:	45                   	inc    %ebp
40f654:	78 63                	js     0x40f6b9
40f656:	65 70 74             	gs jo  0x40f6cd
40f659:	69 6f 6e 00 00 00 00 	imul   $0x0,0x6e(%edi),%ebp
40f660:	5f                   	pop    %edi
40f661:	5f                   	pop    %edi
40f662:	76 62                	jbe    0x40f6c6
40f664:	61                   	popa
40f665:	53                   	push   %ebx
40f666:	74 72                	je     0x40f6da
40f668:	56                   	push   %esi
40f669:	61                   	popa
40f66a:	72 56                	jb     0x40f6c2
40f66c:	61                   	popa
40f66d:	6c                   	insb   (%dx),%es:(%edi)
40f66e:	00 00                	add    %al,(%eax)
40f670:	00 00                	add    %al,(%eax)
40f672:	5f                   	pop    %edi
40f673:	43                   	inc    %ebx
40f674:	49                   	dec    %ecx
40f675:	6c                   	insb   (%dx),%es:(%edi)
40f676:	6f                   	outsl  %ds:(%esi),(%dx)
40f677:	67 00 00             	add    %al,(%bx,%si)
40f67a:	00 00                	add    %al,(%eax)
40f67c:	5f                   	pop    %edi
40f67d:	5f                   	pop    %edi
40f67e:	76 62                	jbe    0x40f6e2
40f680:	61                   	popa
40f681:	4e                   	dec    %esi
40f682:	65 77 32             	gs ja  0x40f6b7
40f685:	00 00                	add    %al,(%eax)
40f687:	00 5f 5f             	add    %bl,0x5f(%edi)
40f68a:	76 62                	jbe    0x40f6ee
40f68c:	61                   	popa
40f68d:	52                   	push   %edx
40f68e:	38 53 74             	cmp    %dl,0x74(%ebx)
40f691:	72 00                	jb     0x40f693
40f693:	00 00                	add    %al,(%eax)
40f695:	00 5f 61             	add    %bl,0x61(%edi)
40f698:	64 6a 5f             	fs push $0x5f
40f69b:	66 64 69 76 5f 6d 33 	imul   $0x336d,%fs:0x5f(%esi),%si
40f6a2:	32 69 00             	xor    0x0(%ecx),%ch
40f6a5:	00 00                	add    %al,(%eax)
40f6a7:	00 5f 61             	add    %bl,0x61(%edi)
40f6aa:	64 6a 5f             	fs push $0x5f
40f6ad:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40f6b4:	33 32                	xor    (%edx),%esi
40f6b6:	69 00 00 00 5f 5f    	imul   $0x5f5f0000,(%eax),%eax
40f6bc:	76 62                	jbe    0x40f720
40f6be:	61                   	popa
40f6bf:	56                   	push   %esi
40f6c0:	61                   	popa
40f6c1:	72 53                	jb     0x40f716
40f6c3:	65 74 4f             	gs je  0x40f715
40f6c6:	62 6a 00             	bound  %ebp,0x0(%edx)
40f6c9:	00 00                	add    %al,(%eax)
40f6cb:	00 5f 5f             	add    %bl,0x5f(%edi)
40f6ce:	76 62                	jbe    0x40f732
40f6d0:	61                   	popa
40f6d1:	53                   	push   %ebx
40f6d2:	74 72                	je     0x40f746
40f6d4:	43                   	inc    %ebx
40f6d5:	6f                   	outsl  %ds:(%esi),(%dx)
40f6d6:	70 79                	jo     0x40f751
40f6d8:	00 00                	add    %al,(%eax)
40f6da:	00 00                	add    %al,(%eax)
40f6dc:	5f                   	pop    %edi
40f6dd:	5f                   	pop    %edi
40f6de:	76 62                	jbe    0x40f742
40f6e0:	61                   	popa
40f6e1:	49                   	dec    %ecx
40f6e2:	34 53                	xor    $0x53,%al
40f6e4:	74 72                	je     0x40f758
40f6e6:	00 00                	add    %al,(%eax)
40f6e8:	00 00                	add    %al,(%eax)
40f6ea:	5f                   	pop    %edi
40f6eb:	5f                   	pop    %edi
40f6ec:	76 62                	jbe    0x40f750
40f6ee:	61                   	popa
40f6ef:	46                   	inc    %esi
40f6f0:	72 65                	jb     0x40f757
40f6f2:	65 53                	gs push %ebx
40f6f4:	74 72                	je     0x40f768
40f6f6:	4c                   	dec    %esp
40f6f7:	69 73 74 00 00 00 00 	imul   $0x0,0x74(%ebx),%esi
40f6fe:	5f                   	pop    %edi
40f6ff:	61                   	popa
40f700:	64 6a 5f             	fs push $0x5f
40f703:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40f70a:	33 32                	xor    (%edx),%esi
40f70c:	00 00                	add    %al,(%eax)
40f70e:	00 00                	add    %al,(%eax)
40f710:	5f                   	pop    %edi
40f711:	61                   	popa
40f712:	64 6a 5f             	fs push $0x5f
40f715:	66 64 69 76 5f 72 00 	imul   $0x72,%fs:0x5f(%esi),%si
40f71c:	00 00                	add    %al,(%eax)
40f71e:	5f                   	pop    %edi
40f71f:	5f                   	pop    %edi
40f720:	76 62                	jbe    0x40f784
40f722:	61                   	popa
40f723:	56                   	push   %esi
40f724:	61                   	popa
40f725:	72 54                	jb     0x40f77b
40f727:	73 74                	jae    0x40f79d
40f729:	4e                   	dec    %esi
40f72a:	65 00 00             	add    %al,%gs:(%eax)
40f72d:	00 5f 5f             	add    %bl,0x5f(%edi)
40f730:	76 62                	jbe    0x40f794
40f732:	61                   	popa
40f733:	49                   	dec    %ecx
40f734:	34 56                	xor    $0x56,%al
40f736:	61                   	popa
40f737:	72 00                	jb     0x40f739
40f739:	00 00                	add    %al,(%eax)
40f73b:	00 5f 5f             	add    %bl,0x5f(%edi)
40f73e:	76 62                	jbe    0x40f7a2
40f740:	61                   	popa
40f741:	4c                   	dec    %esp
40f742:	61                   	popa
40f743:	74 65                	je     0x40f7aa
40f745:	4d                   	dec    %ebp
40f746:	65 6d                	gs insl (%dx),%es:(%edi)
40f748:	43                   	inc    %ebx
40f749:	61                   	popa
40f74a:	6c                   	insb   (%dx),%es:(%edi)
40f74b:	6c                   	insb   (%dx),%es:(%edi)
40f74c:	00 00                	add    %al,(%eax)
40f74e:	00 00                	add    %al,(%eax)
40f750:	5f                   	pop    %edi
40f751:	5f                   	pop    %edi
40f752:	76 62                	jbe    0x40f7b6
40f754:	61                   	popa
40f755:	56                   	push   %esi
40f756:	61                   	popa
40f757:	72 44                	jb     0x40f79d
40f759:	75 70                	jne    0x40f7cb
40f75b:	00 00                	add    %al,(%eax)
40f75d:	00 5f 5f             	add    %bl,0x5f(%edi)
40f760:	76 62                	jbe    0x40f7c4
40f762:	61                   	popa
40f763:	56                   	push   %esi
40f764:	61                   	popa
40f765:	72 4c                	jb     0x40f7b3
40f767:	61                   	popa
40f768:	74 65                	je     0x40f7cf
40f76a:	4d                   	dec    %ebp
40f76b:	65 6d                	gs insl (%dx),%es:(%edi)
40f76d:	43                   	inc    %ebx
40f76e:	61                   	popa
40f76f:	6c                   	insb   (%dx),%es:(%edi)
40f770:	6c                   	insb   (%dx),%es:(%edi)
40f771:	4c                   	dec    %esp
40f772:	64 00 00             	add    %al,%fs:(%eax)
40f775:	00 5f 43             	add    %bl,0x43(%edi)
40f778:	49                   	dec    %ecx
40f779:	61                   	popa
40f77a:	74 61                	je     0x40f7dd
40f77c:	6e                   	outsb  %ds:(%esi),(%dx)
40f77d:	00 00                	add    %al,(%eax)
40f77f:	00 5f 5f             	add    %bl,0x5f(%edi)
40f782:	76 62                	jbe    0x40f7e6
40f784:	61                   	popa
40f785:	53                   	push   %ebx