40f561:	43                   	inc    %ebx
40f562:	50                   	push   %eax
40f563:	33 4c 33 3b          	xor    0x3b(%ebx,%esi,1),%ecx
40f567:	31 50 33             	xor    %edx,0x33(%eax)
40f56a:	4c                   	dec    %esp
40f56b:	44                   	inc    %esp
40f56c:	42                   	inc    %edx
40f56d:	35 3f 46 4e 43       	xor    $0x434e463f,%eax
40f572:	51                   	push   %ecx
40f573:	31 44 36 3d          	xor    %eax,0x3d(%esi,%esi,1)
40f577:	35 40 34 3c 33       	xor    $0x333c3440,%eax
40f57c:	4f                   	dec    %edi
40f57d:	41                   	inc    %ecx
40f57e:	3c 41                	cmp    $0x41,%al
40f580:	41                   	inc    %ecx
40f581:	46                   	inc    %esi
40f582:	0b 43 4f             	or     0x4f(%ebx),%eax
40f585:	33 41 42             	xor    0x42(%ecx),%eax
40f588:	4f                   	dec    %edi
40f589:	35 4c 44 44 32       	xor    $0x3244444c,%eax
40f58e:	44                   	inc    %esp
40f58f:	46                   	inc    %esi
40f590:	3d 36 51 30 4e       	cmp    $0x4e305136,%eax
40f595:	31 4d 39             	xor    %ecx,0x39(%ebp)
40f598:	4d                   	dec    %ebp
40f599:	46                   	inc    %esi
40f59a:	3d 37 4d 34 4c       	cmp    $0x4c344d37,%eax
40f59f:	38 3e                	cmp    %bh,(%esi)
40f5a1:	36 51                	ss push %ecx
40f5a3:	35 50 41 40 39       	xor    $0x39404150,%eax
40f5a8:	43                   	inc    %ebx
40f5a9:	31 3f                	xor    %edi,(%edi)
40f5ab:	35 43 46 3c 46       	xor    $0x463c4643,%eax
40f5b0:	3e 30 3e             	xor    %bh,%ds:(%esi)
40f5b3:	33 42 44             	xor    0x44(%edx),%eax
40f5b6:	4d                   	dec    %ebp
40f5b7:	45                   	inc    %ebp
40f5b8:	50                   	push   %eax
40f5b9:	30 3e                	xor    %bh,(%esi)
40f5bb:	36 4d                	ss dec %ebp
40f5bd:	32 4d 41             	xor    0x41(%ebp),%cl
40f5c0:	41                   	inc    %ecx
40f5c1:	39 3d 00 70 00 7e    	cmp    %edi,0x7e007000
40f5c7:	63 0b                	arpl   %ecx,(%ebx)
40f5c9:	64 0b 74 85 34       	or     %fs:0x34(%ebp,%eax,4),%esi
40f5ce:	48                   	dec    %eax
40f5cf:	00 80 44 3f 3d 0b    	add    %al,0xb3d3f44(%eax)
40f5d5:	2e 6e                	outsb  %cs:(%esi),(%dx)
40f5d7:	63 7f 6f             	arpl   %edi,0x6f(%edi)
40f5da:	7d 00                	jge    0x40f5dc
40f5dc:	73 00                	jae    0x40f5de
40f5de:	74 00                	je     0x40f5e0
40f5e0:	75 00                	jne    0x40f5e2
40f5e2:	76 00                	jbe    0x40f5e4
40f5e4:	77 00                	ja     0x40f5e6
40f5e6:	78 00                	js     0x40f5e8
40f5e8:	7a 00                	jp     0x40f5ea
40f5ea:	39 63 7f             	cmp    %esp,0x7f(%ebx)
40f5ed:	6f                   	outsl  %ds:(%esi),(%dx)
40f5ee:	7d 00                	jge    0x40f5f0
40f5f0:	7c 00                	jl     0x40f5f2
40f5f2:	7e 00                	jle    0x40f5f4
40f5f4:	4c                   	dec    %esp
40f5f5:	00 4d 00             	add    %cl,0x0(%ebp)
40f5f8:	4e                   	dec    %esi
40f5f9:	00 4f 00             	add    %cl,0x0(%edi)
40f5fc:	50                   	push   %eax
40f5fd:	00 51 00             	add    %dl,0x0(%ecx)
40f600:	52                   	push   %edx
40f601:	00 53 00             	add    %dl,0x0(%ebx)
40f604:	54                   	push   %esp
40f605:	00 55 00             	add    %dl,0x0(%ebp)
40f608:	56                   	push   %esi
40f609:	00 58 00             	add    %bl,0x0(%eax)
40f60c:	5b                   	pop    %ebx
40f60d:	00 5d 00             	add    %bl,0x0(%ebp)
40f610:	5f                   	pop    %edi
40f611:	00 61 00             	add    %ah,0x0(%ecx)
40f614:	64 00 65 00          	add    %ah,%fs:0x0(%ebp)
40f618:	6c                   	insb   (%dx),%es:(%edi)
40f619:	6a 0b                	push   $0xb
40f61b:	61                   	popa
40f61c:	77 00                	ja     0x40f61e
40f61e:	6c                   	insb   (%dx),%es:(%edi)
40f61f:	6e                   	outsb  %ds:(%esi),(%dx)
40f620:	0b 61 7a             	or     0x7a(%ecx),%esp
40f623:	00 6c 71 0b          	add    %ch,0xb(%ecx,%esi,2)
40f627:	61                   	popa
40f628:	7d 00                	jge    0x40f62a
40f62a:	6c                   	insb   (%dx),%es:(%edi)
40f62b:	73 0b                	jae    0x40f638
40f62d:	61                   	popa
40f62e:	83 00 6c             	addl   $0x6c,(%eax)
40f631:	7a 0b                	jp     0x40f63e
40f633:	61                   	popa
40f634:	4c                   	dec    %esp
40f635:	00 72 65             	add    %dh,0x65(%edx)
40f638:	7f 5f                	jg     0x40f699
40f63a:	4f                   	dec    %edi
40f63b:	65 71 61             	gs jno 0x40f69f
40f63e:	80 6c 7f 00 6c       	subb   $0x6c,0x0(%edi,%edi,2)
40f643:	45                   	inc    %ebp
40f644:	0b 61 51             	or     0x51(%ecx),%esp
40f647:	00 6c 47 0b          	add    %ch,0xb(%edi,%eax,2)
40f64b:	72 7d                	jb     0x40f6ca
40f64d:	72 0b                	jb     0x40f65a
40f64f:	75 5f                	jne    0x40f6b0
40f651:	34 48                	xor    $0x48,%al
40f653:	00 80 6a 3f 3d 0b    	add    %al,0xb3d3f6a(%eax)
40f659:	69 79 73 7f 61 77 6c 	imul   $0x6c77617f,0x73(%ecx),%edi
40f660:	51                   	push   %ecx
40f661:	6f                   	outsl  %ds:(%esi),(%dx)
40f662:	77 64                	ja     0x40f6c8
40f664:	70 72                	jo     0x40f6d8
40f666:	0b 66 7a             	or     0x7a(%esi),%esp
40f669:	6c                   	insb   (%dx),%es:(%edi)
40f66a:	6f                   	outsl  %ds:(%esi),(%dx)
40f66b:	65 7d 00             	gs jge 0x40f66e
40f66e:	7b 61                	jnp    0x40f6d1
40f670:	6e                   	outsb  %ds:(%esi),(%dx)
40f671:	6b 6c 67 70 43       	imul   $0x43,0x70(%edi,%eiz,2),%ebp
40f676:	7a 75                	jp     0x40f6ed
40f678:	79 74                	jns    0x40f6ee
40f67a:	0b 64 74 63          	or     0x63(%esp,%esi,2),%esp
40f67e:	0b 6f 7b             	or     0x7b(%edi),%ebp
40f681:	74 74                	je     0x40f6f7
40f683:	6f                   	outsl  %ds:(%esi),(%dx)
40f684:	79 73                	jns    0x40f6f9
40f686:	4e                   	dec    %esi
40f687:	6f                   	outsl  %ds:(%esi),(%dx)
40f688:	78 70                	js     0x40f6fa
40f68a:	7d 65                	jge    0x40f6f1
40f68c:	7e 73                	jle    0x40f701
40f68e:	0b 66 74             	or     0x74(%esi),%esp
40f691:	6c                   	insb   (%dx),%es:(%edi)
40f692:	70 6e                	jo     0x40f702
40f694:	6c                   	insb   (%dx),%es:(%edi)
40f695:	6d                   	insl   (%dx),%es:(%edi)
40f696:	70 00                	jo     0x40f698
40f698:	7b 61                	jnp    0x40f6fb
40f69a:	7f 68                	jg     0x40f704
40f69c:	0b 64 6c 74          	or     0x74(%esp,%ebp,2),%esp
40f6a0:	6c                   	insb   (%dx),%es:(%edi)
40f6a1:	00 6d 61             	add    %ch,0x61(%ebp)
40f6a4:	0b 64 77 6c          	or     0x6c(%edi,%esi,2),%esp
40f6a8:	0b 66 80             	or     -0x80(%esi),%esp
40f6ab:	6e                   	outsb  %ds:(%esi),(%dx)
40f6ac:	6e                   	outsb  %ds:(%esi),(%dx)
40f6ad:	74 74                	je     0x40f723
40f6af:	6f                   	outsl  %ds:(%esi),(%dx)
40f6b0:	79 4e                	jns    0x40f700
40f6b2:	6c                   	insb   (%dx),%es:(%edi)
40f6b3:	6d                   	insl   (%dx),%es:(%edi)
40f6b4:	70 00                	jo     0x40f6b6
40f6b6:	7b 61                	jnp    0x40f719
40f6b8:	7d 61                	jge    0x40f71b
40f6ba:	78 00                	js     0x40f6bc
40f6bc:	7d 65                	jge    0x40f723
40f6be:	7f 00                	jg     0x40f6c0
40f6c0:	6c                   	insb   (%dx),%es:(%edi)
40f6c1:	72 7d                	jb     0x40f740
40f6c3:	00 7e 74             	add    %bh,0x74(%esi)
40f6c6:	6c                   	insb   (%dx),%es:(%edi)
40f6c7:	72 7f                	jb     0x40f748
40f6c9:	00 77 65             	add    %dh,0x65(%edi)
40f6cc:	79 67                	jns    0x40f735
40f6ce:	7f 68                	jg     0x40f738
40f6d0:	0b 6b 70             	or     0x70(%ebx),%ebp
40f6d3:	79 59                	jns    0x40f72e
40f6d5:	61                   	popa
40f6d6:	78 65                	js     0x40f73d
40f6d8:	0b 76 6c             	or     0x6c(%esi),%esi
40f6db:	6c                   	insb   (%dx),%es:(%edi)
40f6dc:	80 65 59 61          	andb   $0x61,0x59(%ebp)
40f6e0:	78 65                	js     0x40f747
40f6e2:	0b 76 6c             	or     0x6c(%esi),%esi
40f6e5:	6c                   	insb   (%dx),%es:(%edi)
40f6e6:	80 65 0b 70          	andb   $0x70,0xb(%ebp)
40f6ea:	6c                   	insb   (%dx),%es:(%edi)
40f6eb:	72 6c                	jb     0x40f759
40f6ed:	6d                   	insl   (%dx),%es:(%edi)
40f6ee:	70 74                	jo     0x40f764
40f6f0:	70 72                	jo     0x40f764
40f6f2:	7e 00                	jle    0x40f6f4
40f6f4:	74 6e                	je     0x40f764
40f6f6:	6f                   	outsl  %ds:(%esi),(%dx)
40f6f7:	65 83 00 6f          	addl   $0x6f,%gs:(%eax)
40f6fb:	65 71 61             	gs jno 0x40f75f
40f6fe:	80 6c 7f 50 6c       	subb   $0x6c,0x50(%edi,%edi,2)
40f703:	74 73                	je     0x40f778
40f705:	00 79 61             	add    %bh,0x61(%ecx)
40f708:	78 65                	js     0x40f76f
40f70a:	0b 69 79             	or     0x79(%ecx),%ebp
40f70d:	70 80                	jo     0x40f68f
40f70f:	74 0b                	je     0x40f71c
40f711:	6e                   	outsb  %ds:(%esi),(%dx)
40f712:	70 77                	jo     0x40f78b
40f714:	7b 61                	jnp    0x40f777
40f716:	7f 68                	jg     0x40f780
40f718:	0b 62 84             	or     -0x7c(%edx),%esp
40f71b:	74 70                	je     0x40f78d
40f71d:	61                   	popa
40f71e:	7d 72                	jge    0x40f792
40f720:	6c                   	insb   (%dx),%es:(%edi)
40f721:	79 4d                	jns    0x40f770
40f723:	79 7f                	jns    0x40f7a4
40f725:	65 7e 00             	gs jle 0x40f728
40f728:	71 69                	jno    0x40f793
40f72a:	7d 73                	jge    0x40f79f
40f72c:	7f 00                	jg     0x40f72e
40f72e:	7e 65                	jle    0x40f795
40f730:	6e                   	outsb  %ds:(%esi),(%dx)
40f731:	6f                   	outsl  %ds:(%esi),(%dx)
40f732:	79 64                	jns    0x40f798
40f734:	0b 6f 77             	or     0x77(%edi),%ebp
40f737:	64 7e 74             	fs jle 0x40f7ae
40f73a:	7d 69                	jge    0x40f7a5
40f73c:	79 67                	jns    0x40f7a5
40f73e:	0b 6e 70             	or     0x70(%esi),%ebp
40f741:	77 7e                	ja     0x40f7c1
40f743:	74 7d                	je     0x40f7c2
40f745:	69 79 67 0b 69 79 70 	imul   $0x7079690b,0x67(%ecx),%edi
40f74c:	80 74 4f 61 7f       	xorb   $0x7f,0x61(%edi,%ecx,2)
40f751:	61                   	popa
40f752:	0b 65 83             	or     -0x7d(%ebp),%esp
40f755:	65 6e                	outsb  %gs:(%esi),(%dx)
40f757:	50                   	push   %eax
40f758:	6c                   	insb   (%dx),%es:(%edi)
40f759:	74 73                	je     0x40f7ce
40f75b:	00 74 6e 7e          	add    %dh,0x7e(%esi,%ebp,2)
40f75f:	74 6c                	je     0x40f7cd
40f761:	6c                   	insb   (%dx),%es:(%edi)
40f762:	77 50                	ja     0x40f7b4
40f764:	6c                   	insb   (%dx),%es:(%edi)
40f765:	74 73                	je     0x40f7da
40f767:	00 7e 74             	add    %bh,0x74(%esi)
40f76a:	6c                   	insb   (%dx),%es:(%edi)
40f76b:	72 7f                	jb     0x40f7ec
40f76d:	75 7b                	jne    0x40f7ea
40f76f:	46                   	inc    %esi
40f770:	7a 6c                	jp     0x40f7de
40f772:	6f                   	outsl  %ds:(%esi),(%dx)
40f773:	65 7d 00             	gs jge 0x40f776
40f776:	71 69                	jno    0x40f7e1
40f778:	77 65                	ja     0x40f7df
40f77a:	59                   	pop    %ecx
40f77b:	61                   	popa
40f77c:	78 65                	js     0x40f7e3
40f77e:	0b 61 7d             	or     0x7d(%ecx),%esp
40f781:	67 7e 00             	addr16 jle 0x40f784
40f784:	6c                   	insb   (%dx),%es:(%edi)
40f785:	72 72                	jb     0x40f7f9
40f787:	75 78                	jne    0x40f801
40f789:	65 79 74             	gs jns 0x40f800
40f78c:	7e 00                	jle    0x40f78e
40f78e:	59                   	pop    %ecx
40f78f:	61                   	popa
40f790:	78 65                	js     0x40f7f7
40f792:	0b 73 70             	or     0x70(%ebx),%esi
40f795:	6e                   	outsb  %ds:(%esi),(%dx)
40f796:	6f                   	outsl  %ds:(%esi),(%dx)
40f797:	65 7d 00             	gs jge 0x40f79a
40f79a:	7d 65                	jge    0x40f801
40f79c:	7e 6f                	jle    0x40f80d
40f79e:	80 72 6e 65          	xorb   $0x65,0x6e(%edx)
40f7a2:	5e                   	pop    %esi
40f7a3:	74 7d                	je     0x40f822
40f7a5:	65 6c                	gs insb (%dx),%es:(%edi)
40f7a7:	6d                   	insl   (%dx),%es:(%edi)
40f7a8:	0b 54 7a 53          	or     0x53(%edx,%edi,2),%edx
40f7ac:	7f 72                	jg     0x40f820
40f7ae:	74 6e                	je     0x40f81e
40f7b0:	72 00                	jb     0x40f7b2
40f7b2:	52                   	push   %edx
40f7b3:	65 7f 54             	gs jg  0x40f80a
40f7b6:	84 70 70             	test   %dh,0x70(%eax)
40f7b9:	00 52 65             	add    %dl,0x65(%edx)
40f7bc:	7f 46                	jg     0x40f804
40f7be:	7a 6c                	jp     0x40f82c
40f7c0:	6f                   	outsl  %ds:(%esi),(%dx)
40f7c1:	65 7d 50             	gs jge 0x40f814
40f7c4:	6c                   	insb   (%dx),%es:(%edi)
40f7c5:	74 73                	je     0x40f83a
40f7c7:	00 72 65             	add    %dh,0x65(%edx)
40f7ca:	7f 5f                	jg     0x40f82b
40f7cc:	54                   	push   %esp
40f7cd:	73 41                	jae    0x40f810
40f7cf:	34 4d                	xor    $0x4d,%al
40f7d1:	69 7f 4f 7b 65 7d 61 	imul   $0x617d657b,0x4f(%edi),%edi
40f7d8:	7f 69                	jg     0x40f843
40f7da:	79 67                	jns    0x40f843
40f7dc:	5e                   	pop    %esi
40f7dd:	79 7e                	jns    0x40f85d
40f7df:	74 70                	je     0x40f851
40f7e1:	6d                   	insl   (%dx),%es:(%edi)
40f7e2:	0b 45 83             	or     -0x7d(%ebp),%eax
40f7e5:	70 6c                	jo     0x40f853
40f7e7:	6e                   	outsb  %ds:(%esi),(%dx)
40f7e8:	6f                   	outsl  %ds:(%esi),(%dx)
40f7e9:	45                   	inc    %ebp
40f7ea:	79 76                	jns    0x40f862
40f7ec:	74 72                	je     0x40f860
40f7ee:	7a 6e                	jp     0x40f85e
40f7f0:	78 65                	js     0x40f857
40f7f2:	79 74                	jns    0x40f868
40f7f4:	61                   	popa
40f7f5:	61                   	popa
40f7f6:	7d 69                	jge    0x40f861
40f7f8:	6c                   	insb   (%dx),%es:(%edi)
40f7f9:	62 77 65             	bound  %esi,0x65(%edi)
40f7fc:	7e 00                	jle    0x40f7fe
40f7fe:	51                   	push   %ecx
40f7ff:	61                   	popa
40f800:	74 6c                	je     0x40f86e
40f802:	51                   	push   %ecx
40f803:	61                   	popa
40f804:	7e 74                	jle    0x40f87a
40f806:	0b 67 70             	or     0x70(%edi),%esp
40f809:	74 6a                	je     0x40f875
40f80b:	4e                   	dec    %esi
40f80c:	70 77                	jo     0x40f885
40f80e:	57                   	push   %edi
40f80f:	69 79 65 0b 45 83 69 	imul   $0x6983450b,0x65(%ecx),%edi
40f816:	7f 00                	jg     0x40f818
40f818:	72 65                	jb     0x40f87f
40f81a:	7f 5f                	jg     0x40f87b
40f81c:	50                   	push   %eax
40f81d:	78 74                	js     0x40f893
40f81f:	74 4e                	je     0x40f86f
40f821:	6f                   	outsl  %ds:(%esi),(%dx)
40f822:	6f                   	outsl  %ds:(%esi),(%dx)
40f823:	65 0b 41 7b          	or     %gs:0x7b(%ecx),%eax
40f827:	70 70                	jo     0x40f899
40f829:	6e                   	outsb  %ds:(%esi),(%dx)
40f82a:	6f                   	outsl  %ds:(%esi),(%dx)
40f82b:	46                   	inc    %esi
40f82c:	7a 72                	jp     0x40f8a0
40f82e:	78 61                	js     0x40f891
40f830:	7f 00                	jg     0x40f832
40f832:	4c                   	dec    %esp
40f833:	70 7b                	jo     0x40f8b0
40f835:	65 79 64             	gs jns 0x40f89c
40f838:	0b 43 7a             	or     0x7a(%ebx),%eax
40f83b:	6d                   	insl   (%dx),%es:(%edi)
40f83c:	7b 75                	jnp    0x40f8b3
40f83e:	7f 65                	jg     0x40f8a5
40f840:	53                   	push   %ebx
40f841:	61                   	popa
40f842:	7e 68                	jle    0x40f8ac
40f844:	0b 54 7a 41          	or     0x41(%edx,%edi,2),%edx