40a3fa:	50                   	push   %eax
40a3fb:	75 62                	jne    0x40a45f
40a3fd:	6c                   	insb   (%dx),%es:(%edi)
40a3fe:	69 63 5f 4c 69 63 65 	imul   $0x6563694c,0x5f(%ebx),%esp
40a405:	6e                   	outsb  %ds:(%esi),(%dx)
40a406:	73 65                	jae    0x40a46d
40a408:	2e 53                	cs push %ebx
40a40a:	41                   	inc    %ecx
40a40b:	53                   	push   %ebx
40a40c:	2e 72 65             	jb,pn  0x40a474
40a40f:	73 6f                	jae    0x40a480
40a411:	75 72                	jne    0x40a485
40a413:	63 65 73             	arpl   %esp,0x73(%ebp)
40a416:	00 47 4e             	add    %al,0x4e(%edi)
40a419:	55                   	push   %ebp
40a41a:	5f                   	pop    %edi
40a41b:	47                   	inc    %edi
40a41c:	65 6e                	outsb  %gs:(%esi),(%dx)
40a41e:	65 72 61             	gs jb  0x40a482
40a421:	6c                   	insb   (%dx),%es:(%edi)
40a422:	5f                   	pop    %edi
40a423:	50                   	push   %eax
40a424:	75 62                	jne    0x40a488
40a426:	6c                   	insb   (%dx),%es:(%edi)
40a427:	69 63 5f 4c 69 63 65 	imul   $0x6563694c,0x5f(%ebx),%esp
40a42e:	6e                   	outsb  %ds:(%esi),(%dx)
40a42f:	73 65                	jae    0x40a496
40a431:	2e 50                	cs push %eax
40a433:	72 6f                	jb     0x40a4a4
40a435:	70 65                	jo     0x40a49c
40a437:	72 74                	jb     0x40a4ad
40a439:	69 65 73 2e 52 65 73 	imul   $0x7365522e,0x73(%ebp),%esp
40a440:	6f                   	outsl  %ds:(%esi),(%dx)
40a441:	75 72                	jne    0x40a4b5
40a443:	63 65 73             	arpl   %esp,0x73(%ebp)
40a446:	2e 72 65             	jb,pn  0x40a4ae
40a449:	73 6f                	jae    0x40a4ba
40a44b:	75 72                	jne    0x40a4bf
40a44d:	63 65 73             	arpl   %esp,0x73(%ebp)
40a450:	00 44 65 62          	add    %al,0x62(%ebp,%eiz,2)
40a454:	75 67                	jne    0x40a4bd
40a456:	67 69 6e 67 4d 6f 64 	imul   $0x65646f4d,0x67(%bp),%ebp
40a45d:	65
40a45e:	73 00                	jae    0x40a460
40a460:	47                   	inc    %edi
40a461:	4e                   	dec    %esi
40a462:	55                   	push   %ebp
40a463:	5f                   	pop    %edi
40a464:	47                   	inc    %edi
40a465:	65 6e                	outsb  %gs:(%esi),(%dx)
40a467:	65 72 61             	gs jb  0x40a4cb
40a46a:	6c                   	insb   (%dx),%es:(%edi)
40a46b:	5f                   	pop    %edi
40a46c:	50                   	push   %eax
40a46d:	75 62                	jne    0x40a4d1
40a46f:	6c                   	insb   (%dx),%es:(%edi)
40a470:	69 63 5f 4c 69 63 65 	imul   $0x6563694c,0x5f(%ebx),%esp
40a477:	6e                   	outsb  %ds:(%esi),(%dx)
40a478:	73 65                	jae    0x40a4df
40a47a:	2e 50                	cs push %eax
40a47c:	72 6f                	jb     0x40a4ed
40a47e:	70 65                	jo     0x40a4e5
40a480:	72 74                	jb     0x40a4f6
40a482:	69 65 73 00 67 65 74 	imul   $0x74656700,0x73(%ebp),%esp
40a489:	5f                   	pop    %edi
40a48a:	43                   	inc    %ebx
40a48b:	6f                   	outsl  %ds:(%esi),(%dx)
40a48c:	6c                   	insb   (%dx),%es:(%edi)
40a48d:	75 6d                	jne    0x40a4fc
40a48f:	6e                   	outsb  %ds:(%esi),(%dx)
40a490:	53                   	push   %ebx
40a491:	74 79                	je     0x40a50c
40a493:	6c                   	insb   (%dx),%es:(%edi)
40a494:	65 73 00             	gs jae 0x40a497
40a497:	41                   	inc    %ecx
40a498:	6e                   	outsb  %ds:(%esi),(%dx)
40a499:	63 68 6f             	arpl   %ebp,0x6f(%eax)
40a49c:	72 53                	jb     0x40a4f1
40a49e:	74 79                	je     0x40a519
40a4a0:	6c                   	insb   (%dx),%es:(%edi)
40a4a1:	65 73 00             	gs jae 0x40a4a4
40a4a4:	67 65 74 5f          	addr16 gs je 0x40a507
40a4a8:	52                   	push   %edx
40a4a9:	6f                   	outsl  %ds:(%esi),(%dx)
40a4aa:	77 53                	ja     0x40a4ff
40a4ac:	74 79                	je     0x40a527
40a4ae:	6c                   	insb   (%dx),%es:(%edi)
40a4af:	65 73 00             	gs jae 0x40a4b2
40a4b2:	70 6f                	jo     0x40a523
40a4b4:	6e                   	outsb  %ds:(%esi),(%dx)
40a4b5:	74 75                	je     0x40a52c
40a4b7:	61                   	popa
40a4b8:	63 6f 65             	arpl   %ebp,0x65(%edi)
40a4bb:	73 00                	jae    0x40a4bd
40a4bd:	74 79                	je     0x40a538
40a4bf:	70 65                	jo     0x40a526
40a4c1:	73 00                	jae    0x40a4c3
40a4c3:	47                   	inc    %edi
40a4c4:	65 74 43             	gs je  0x40a50a
40a4c7:	75 73                	jne    0x40a53c
40a4c9:	74 6f                	je     0x40a53a
40a4cb:	6d                   	insl   (%dx),%es:(%edi)
40a4cc:	41                   	inc    %ecx
40a4cd:	74 74                	je     0x40a543
40a4cf:	72 69                	jb     0x40a53a
40a4d1:	62 75 74             	bound  %esi,0x74(%ebp)
40a4d4:	65 73 00             	gs jae 0x40a4d7
40a4d7:	47                   	inc    %edi
40a4d8:	65 74 42             	gs je  0x40a51d
40a4db:	79 74                	jns    0x40a551
40a4dd:	65 73 00             	gs jae 0x40a4e0
40a4e0:	67 65 74 5f          	addr16 gs je 0x40a543
40a4e4:	56                   	push   %esi
40a4e5:	61                   	popa
40a4e6:	6c                   	insb   (%dx),%es:(%edi)
40a4e7:	75 65                	jne    0x40a54e
40a4e9:	73 00                	jae    0x40a4eb
40a4eb:	42                   	inc    %edx
40a4ec:	69 6e 64 69 6e 67 46 	imul   $0x46676e69,0x64(%esi),%ebp
40a4f3:	6c                   	insb   (%dx),%es:(%edi)
40a4f4:	61                   	popa
40a4f5:	67 73 00             	addr16 jae 0x40a4f8
40a4f8:	45                   	inc    %ebp
40a4f9:	76 65                	jbe    0x40a560
40a4fb:	6e                   	outsb  %ds:(%esi),(%dx)
40a4fc:	74 41                	je     0x40a53f
40a4fe:	72 67                	jb     0x40a567
40a500:	73 00                	jae    0x40a502
40a502:	61                   	popa
40a503:	72 67                	jb     0x40a56c
40a505:	73 00                	jae    0x40a507
40a507:	45                   	inc    %ebp
40a508:	71 75                	jno    0x40a57f
40a50a:	61                   	popa
40a50b:	6c                   	insb   (%dx),%es:(%edi)
40a50c:	73 00                	jae    0x40a50e
40a50e:	67 65 74 5f          	addr16 gs je 0x40a571
40a512:	43                   	inc    %ebx
40a513:	6f                   	outsl  %ds:(%esi),(%dx)
40a514:	6e                   	outsb  %ds:(%esi),(%dx)
40a515:	74 72                	je     0x40a589
40a517:	6f                   	outsl  %ds:(%esi),(%dx)
40a518:	6c                   	insb   (%dx),%es:(%edi)
40a519:	73 00                	jae    0x40a51b
40a51b:	53                   	push   %ebx
40a51c:	79 73                	jns    0x40a591
40a51e:	74 65                	je     0x40a585
40a520:	6d                   	insl   (%dx),%es:(%edi)
40a521:	2e 57                	cs push %edi
40a523:	69 6e 64 6f 77 73 2e 	imul   $0x2e73776f,0x64(%esi),%ebp
40a52a:	46                   	inc    %esi
40a52b:	6f                   	outsl  %ds:(%esi),(%dx)
40a52c:	72 6d                	jb     0x40a59b
40a52e:	73 00                	jae    0x40a530
40a530:	73 65                	jae    0x40a597
40a532:	74 5f                	je     0x40a593
40a534:	41                   	inc    %ecx
40a535:	75 74                	jne    0x40a5ab
40a537:	6f                   	outsl  %ds:(%esi),(%dx)
40a538:	53                   	push   %ebx
40a539:	63 61 6c             	arpl   %esp,0x6c(%ecx)
40a53c:	65 44                	gs inc %esp
40a53e:	69 6d 65 6e 73 69 6f 	imul   $0x6f69736e,0x65(%ebp),%ebp
40a545:	6e                   	outsb  %ds:(%esi),(%dx)
40a546:	73 00                	jae    0x40a548
40a548:	52                   	push   %edx
40a549:	61                   	popa
40a54a:	77 45                	ja     0x40a591
40a54c:	6e                   	outsb  %ds:(%esi),(%dx)
40a54d:	67 69 6e 65 2e 45 78 	imul   $0x7478452e,0x65(%bp),%ebp
40a554:	74
40a555:	65 6e                	outsb  %gs:(%esi),(%dx)
40a557:	73 69                	jae    0x40a5c2
40a559:	6f                   	outsl  %ds:(%esi),(%dx)
40a55a:	6e                   	outsb  %ds:(%esi),(%dx)
40a55b:	73 00                	jae    0x40a55d
40a55d:	54                   	push   %esp
40a55e:	79 70                	jns    0x40a5d0
40a560:	65 45                	gs inc %ebp
40a562:	78 74                	js     0x40a5d8
40a564:	65 6e                	outsb  %gs:(%esi),(%dx)
40a566:	73 69                	jae    0x40a5d1
40a568:	6f                   	outsl  %ds:(%esi),(%dx)
40a569:	6e                   	outsb  %ds:(%esi),(%dx)
40a56a:	73 00                	jae    0x40a56c
40a56c:	4c                   	dec    %esp
40a56d:	69 73 74 45 78 74 65 	imul   $0x65747845,0x74(%ebx),%esi
40a574:	6e                   	outsb  %ds:(%esi),(%dx)
40a575:	73 69                	jae    0x40a5e0
40a577:	6f                   	outsl  %ds:(%esi),(%dx)
40a578:	6e                   	outsb  %ds:(%esi),(%dx)
40a579:	73 00                	jae    0x40a57b
40a57b:	47                   	inc    %edi
40a57c:	65 74 49             	gs je  0x40a5c8
40a57f:	6d                   	insl   (%dx),%es:(%edi)
40a580:	70 6c                	jo     0x40a5ee
40a582:	65 6d                	gs insl (%dx),%es:(%edi)
40a584:	65 6e                	outsb  %gs:(%esi),(%dx)
40a586:	74 61                	je     0x40a5e9
40a588:	74 69                	je     0x40a5f3
40a58a:	6f                   	outsl  %ds:(%esi),(%dx)
40a58b:	6e                   	outsb  %ds:(%esi),(%dx)
40a58c:	73 00                	jae    0x40a58e
40a58e:	67 65 74 5f          	addr16 gs je 0x40a5f1
40a592:	56                   	push   %esi
40a593:	65 72 74             	gs jb  0x40a60a
40a596:	65 78 50             	gs js  0x40a5e9
40a599:	6f                   	outsl  %ds:(%esi),(%dx)
40a59a:	73 69                	jae    0x40a605
40a59c:	74 69                	je     0x40a607
40a59e:	6f                   	outsl  %ds:(%esi),(%dx)
40a59f:	6e                   	outsb  %ds:(%esi),(%dx)
40a5a0:	73 00                	jae    0x40a5a2
40a5a2:	73 65                	jae    0x40a609
40a5a4:	74 5f                	je     0x40a605
40a5a6:	56                   	push   %esi
40a5a7:	65 72 74             	gs jb  0x40a61e
40a5aa:	65 78 50             	gs js  0x40a5fd
40a5ad:	6f                   	outsl  %ds:(%esi),(%dx)
40a5ae:	73 69                	jae    0x40a619
40a5b0:	74 69                	je     0x40a61b
40a5b2:	6f                   	outsl  %ds:(%esi),(%dx)
40a5b3:	6e                   	outsb  %ds:(%esi),(%dx)
40a5b4:	73 00                	jae    0x40a5b6
40a5b6:	49                   	dec    %ecx
40a5b7:	6e                   	outsb  %ds:(%esi),(%dx)
40a5b8:	69 74 56 65 72 74 65 	imul   $0x78657472,0x65(%esi,%edx,2),%esi
40a5bf:	78
40a5c0:	50                   	push   %eax
40a5c1:	6f                   	outsl  %ds:(%esi),(%dx)
40a5c2:	73 69                	jae    0x40a62d
40a5c4:	74 69                	je     0x40a62f
40a5c6:	6f                   	outsl  %ds:(%esi),(%dx)
40a5c7:	6e                   	outsb  %ds:(%esi),(%dx)
40a5c8:	73 00                	jae    0x40a5ca
40a5ca:	41                   	inc    %ecx
40a5cb:	63 6f 73             	arpl   %ebp,0x73(%edi)
40a5ce:	00 62 61             	add    %ah,0x61(%edx)
40a5d1:	73 65                	jae    0x40a638
40a5d3:	44                   	inc    %esp
40a5d4:	61                   	popa
40a5d5:	64 6f                	outsl  %fs:(%esi),(%dx)
40a5d7:	73 00                	jae    0x40a5d9
40a5d9:	47                   	inc    %edi
40a5da:	61                   	popa
40a5db:	6d                   	insl   (%dx),%es:(%edi)
40a5dc:	65 2e 4f             	gs cs dec %edi
40a5df:	62 6a 65             	bound  %ebp,0x65(%edx)
40a5e2:	74 6f                	je     0x40a653
40a5e4:	73 00                	jae    0x40a5e6
40a5e6:	67 65 74 5f          	addr16 gs je 0x40a649
40a5ea:	50                   	push   %eax
40a5eb:	6f                   	outsl  %ds:(%esi),(%dx)
40a5ec:	6e                   	outsb  %ds:(%esi),(%dx)
40a5ed:	74 6f                	je     0x40a65e
40a5ef:	73 00                	jae    0x40a5f1
40a5f1:	73 65                	jae    0x40a658
40a5f3:	74 5f                	je     0x40a654
40a5f5:	50                   	push   %eax
40a5f6:	6f                   	outsl  %ds:(%esi),(%dx)
40a5f7:	6e                   	outsb  %ds:(%esi),(%dx)
40a5f8:	74 6f                	je     0x40a669
40a5fa:	73 00                	jae    0x40a5fc
40a5fc:	70 6f                	jo     0x40a66d
40a5fe:	6e                   	outsb  %ds:(%esi),(%dx)
40a5ff:	74 6f                	je     0x40a670
40a601:	73 00                	jae    0x40a603
40a603:	73 65                	jae    0x40a66a
40a605:	74 5f                	je     0x40a666
40a607:	53                   	push   %ebx
40a608:	63 72 6f             	arpl   %esi,0x6f(%edx)
40a60b:	6c                   	insb   (%dx),%es:(%edi)
40a60c:	6c                   	insb   (%dx),%es:(%edi)
40a60d:	42                   	inc    %edx
40a60e:	61                   	popa
40a60f:	72 73                	jb     0x40a684
40a611:	00 67 65             	add    %ah,0x65(%edi)
40a614:	74 5f                	je     0x40a675
40a616:	56                   	push   %esi
40a617:	65 72 74             	gs jb  0x40a68e
40a61a:	65 78 43             	gs js  0x40a660
40a61d:	6f                   	outsl  %ds:(%esi),(%dx)
40a61e:	6c                   	insb   (%dx),%es:(%edi)
40a61f:	6f                   	outsl  %ds:(%esi),(%dx)
40a620:	72 73                	jb     0x40a695
40a622:	00 73 65             	add    %dh,0x65(%ebx)
40a625:	74 5f                	je     0x40a686
40a627:	56                   	push   %esi
40a628:	65 72 74             	gs jb  0x40a69f
40a62b:	65 78 43             	gs js  0x40a671
40a62e:	6f                   	outsl  %ds:(%esi),(%dx)
40a62f:	6c                   	insb   (%dx),%es:(%edi)
40a630:	6f                   	outsl  %ds:(%esi),(%dx)
40a631:	72 73                	jb     0x40a6a6
40a633:	00 4c 6f 63          	add    %cl,0x63(%edi,%ebp,2)
40a637:	6b 42 69 74          	imul   $0x74,0x69(%edx),%eax
40a63b:	73 00                	jae    0x40a63d
40a63d:	55                   	push   %ebp
40a63e:	6e                   	outsb  %ds:(%esi),(%dx)
40a63f:	6c                   	insb   (%dx),%es:(%edi)
40a640:	6f                   	outsl  %ds:(%esi),(%dx)
40a641:	63 6b 42             	arpl   %ebp,0x42(%ebx)
40a644:	69 74 73 00 47 65 74 	imul   $0x52746547,0x0(%ebx,%esi,2),%esi
40a64b:	52
40a64c:	61                   	popa
40a64d:	77 45                	ja     0x40a694
40a64f:	6c                   	insb   (%dx),%es:(%edi)
40a650:	65 6d                	gs insl (%dx),%es:(%edi)
40a652:	65 6e                	outsb  %gs:(%esi),(%dx)
40a654:	74 73                	je     0x40a6c9
40a656:	00 41 64             	add    %al,0x64(%ecx)
40a659:	64 43                	fs inc %ebx
40a65b:	6f                   	outsl  %ds:(%esi),(%dx)
40a65c:	6d                   	insl   (%dx),%es:(%edi)
40a65d:	70 6f                	jo     0x40a6ce
40a65f:	6e                   	outsb  %ds:(%esi),(%dx)
40a660:	65 6e                	outsb  %gs:(%esi),(%dx)
40a662:	74 73                	je     0x40a6d7
40a664:	00 52 65             	add    %dl,0x65(%edx)
40a667:	6d                   	insl   (%dx),%es:(%edi)
40a668:	6f                   	outsl  %ds:(%esi),(%dx)
40a669:	76 65                	jbe    0x40a6d0
40a66b:	43                   	inc    %ebx
40a66c:	6f                   	outsl  %ds:(%esi),(%dx)
40a66d:	6d                   	insl   (%dx),%es:(%edi)
40a66e:	70 6f                	jo     0x40a6df
40a670:	6e                   	outsb  %ds:(%esi),(%dx)
40a671:	65 6e                	outsb  %gs:(%esi),(%dx)
40a673:	74 73                	je     0x40a6e8
40a675:	00 43 6f             	add    %al,0x6f(%ebx)
40a678:	6e                   	outsb  %ds:(%esi),(%dx)
40a679:	74 61                	je     0x40a6dc
40a67b:	69 6e 73 43 6f 6d 70 	imul   $0x706d6f43,0x73(%esi),%ebp
40a682:	6f                   	outsl  %ds:(%esi),(%dx)
40a683:	6e                   	outsb  %ds:(%esi),(%dx)
40a684:	65 6e                	outsb  %gs:(%esi),(%dx)
40a686:	74 73                	je     0x40a6fb
40a688:	00 47 65             	add    %al,0x65(%edi)
40a68b:	74 43                	je     0x40a6d0
40a68d:	6f                   	outsl  %ds:(%esi),(%dx)
40a68e:	6d                   	insl   (%dx),%es:(%edi)
40a68f:	70 6f                	jo     0x40a700
40a691:	6e                   	outsb  %ds:(%esi),(%dx)
40a692:	65 6e                	outsb  %gs:(%esi),(%dx)
40a694:	74 73                	je     0x40a709
40a696:	00 67 65             	add    %ah,0x65(%edi)
40a699:	74 5f                	je     0x40a6fa
40a69b:	43                   	inc    %ebx
40a69c:	6f                   	outsl  %ds:(%esi),(%dx)
40a69d:	75 6e                	jne    0x40a70d