40b4c9:	1f                   	pop    %ds
40b4ca:	7f 73                	jg     0x40b53f
40b4cc:	2b 00                	sub    (%eax),%eax
40b4ce:	00 0a                	add    %cl,(%edx)
40b4d0:	6f                   	outsl  %ds:(%esi),(%dx)
40b4d1:	2c 00                	sub    $0x0,%al
40b4d3:	00 0a                	add    %cl,(%edx)
40b4d5:	00 02                	add    %al,(%edx)
40b4d7:	7b dc                	jnp    0x40b4b5
40b4d9:	00 00                	add    %al,(%eax)
40b4db:	04 1a                	add    $0x1a,%al
40b4dd:	6f                   	outsl  %ds:(%esi),(%dx)
40b4de:	2e 00 00             	add    %al,%cs:(%eax)
40b4e1:	0a 00                	or     (%eax),%al
40b4e3:	02 7b dc             	add    -0x24(%ebx),%bh
40b4e6:	00 00                	add    %al,(%eax)
40b4e8:	04 16                	add    $0x16,%al
40b4ea:	6f                   	outsl  %ds:(%esi),(%dx)
40b4eb:	2f                   	das
40b4ec:	00 00                	add    %al,(%eax)
40b4ee:	0a 00                	or     (%eax),%al
40b4f0:	02 7b dc             	add    -0x24(%ebx),%bh
40b4f3:	00 00                	add    %al,(%eax)
40b4f5:	04 16                	add    $0x16,%al
40b4f7:	6f                   	outsl  %ds:(%esi),(%dx)
40b4f8:	30 00                	xor    %al,(%eax)
40b4fa:	00 0a                	add    %cl,(%edx)
40b4fc:	00 02                	add    %al,(%edx)
40b4fe:	7b dd                	jnp    0x40b4dd
40b500:	00 00                	add    %al,(%eax)
40b502:	04 17                	add    $0x17,%al
40b504:	6f                   	outsl  %ds:(%esi),(%dx)
40b505:	27                   	daa
40b506:	00 00                	add    %al,(%eax)
40b508:	0a 00                	or     (%eax),%al
40b50a:	02 7b dd             	add    -0x23(%ebx),%bh
40b50d:	00 00                	add    %al,(%eax)
40b50f:	04 20                	add    $0x20,%al
40b511:	30 01                	xor    %al,(%ecx)
40b513:	00 00                	add    %al,(%eax)
40b515:	1f                   	pop    %ds
40b516:	4a                   	dec    %edx
40b517:	73 28                	jae    0x40b541
40b519:	00 00                	add    %al,(%eax)
40b51b:	0a 6f 29             	or     0x29(%edi),%ch
40b51e:	00 00                	add    %al,(%eax)
40b520:	0a 00                	or     (%eax),%al
40b522:	02 7b dd             	add    -0x23(%ebx),%bh
40b525:	00 00                	add    %al,(%eax)
40b527:	04 72                	add    $0x72,%al
40b529:	cd 00                	int    $0x0
40b52b:	00 70 6f             	add    %dh,0x6f(%eax)
40b52e:	2a 00                	sub    (%eax),%al
40b530:	00 0a                	add    %cl,(%edx)
40b532:	00 02                	add    %al,(%edx)
40b534:	7b dd                	jnp    0x40b513
40b536:	00 00                	add    %al,(%eax)
40b538:	04 1f                	add    $0x1f,%al
40b53a:	23 1f                	and    (%edi),%ebx
40b53c:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b541:	0a 6f 2c             	or     0x2c(%edi),%ch
40b544:	00 00                	add    %al,(%eax)
40b546:	0a 00                	or     (%eax),%al
40b548:	02 7b dd             	add    -0x23(%ebx),%bh
40b54b:	00 00                	add    %al,(%eax)
40b54d:	04 17                	add    $0x17,%al
40b54f:	6f                   	outsl  %ds:(%esi),(%dx)
40b550:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b555:	02 7b dd             	add    -0x23(%ebx),%bh
40b558:	00 00                	add    %al,(%eax)
40b55a:	04 72                	add    $0x72,%al
40b55c:	cd 00                	int    $0x0
40b55e:	00 70 6f             	add    %dh,0x6f(%eax)
40b561:	1b 00                	sbb    (%eax),%eax
40b563:	00 0a                	add    %cl,(%edx)
40b565:	00 02                	add    %al,(%edx)
40b567:	7b de                	jnp    0x40b547
40b569:	00 00                	add    %al,(%eax)
40b56b:	04 17                	add    $0x17,%al
40b56d:	6f                   	outsl  %ds:(%esi),(%dx)
40b56e:	27                   	daa
40b56f:	00 00                	add    %al,(%eax)
40b571:	0a 00                	or     (%eax),%al
40b573:	02 7b de             	add    -0x22(%ebx),%bh
40b576:	00 00                	add    %al,(%eax)
40b578:	04 1f                	add    $0x1f,%al
40b57a:	23 20                	and    (%eax),%esp
40b57c:	c0 00 00             	rolb   $0x0,(%eax)
40b57f:	00 73 28             	add    %dh,0x28(%ebx)
40b582:	00 00                	add    %al,(%eax)
40b584:	0a 6f 29             	or     0x29(%edi),%ch
40b587:	00 00                	add    %al,(%eax)
40b589:	0a 00                	or     (%eax),%al
40b58b:	02 7b de             	add    -0x22(%ebx),%bh
40b58e:	00 00                	add    %al,(%eax)
40b590:	04 72                	add    $0x72,%al
40b592:	db 00                	fildl  (%eax)
40b594:	00 70 6f             	add    %dh,0x6f(%eax)
40b597:	2a 00                	sub    (%eax),%al
40b599:	00 0a                	add    %cl,(%edx)
40b59b:	00 02                	add    %al,(%edx)
40b59d:	7b de                	jnp    0x40b57d
40b59f:	00 00                	add    %al,(%eax)
40b5a1:	04 1f                	add    $0x1f,%al
40b5a3:	37                   	aaa
40b5a4:	1f                   	pop    %ds
40b5a5:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b5aa:	0a 6f 2c             	or     0x2c(%edi),%ch
40b5ad:	00 00                	add    %al,(%eax)
40b5af:	0a 00                	or     (%eax),%al
40b5b1:	02 7b de             	add    -0x22(%ebx),%bh
40b5b4:	00 00                	add    %al,(%eax)
40b5b6:	04 18                	add    $0x18,%al
40b5b8:	6f                   	outsl  %ds:(%esi),(%dx)
40b5b9:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b5be:	02 7b de             	add    -0x22(%ebx),%bh
40b5c1:	00 00                	add    %al,(%eax)
40b5c3:	04 72                	add    $0x72,%al
40b5c5:	a9 16 00 70 6f       	test   $0x6f700016,%eax
40b5ca:	1b 00                	sbb    (%eax),%eax
40b5cc:	00 0a                	add    %cl,(%edx)
40b5ce:	00 02                	add    %al,(%edx)
40b5d0:	7b df                	jnp    0x40b5b1
40b5d2:	00 00                	add    %al,(%eax)
40b5d4:	04 17                	add    $0x17,%al
40b5d6:	6f                   	outsl  %ds:(%esi),(%dx)
40b5d7:	27                   	daa
40b5d8:	00 00                	add    %al,(%eax)
40b5da:	0a 00                	or     (%eax),%al
40b5dc:	02 7b df             	add    -0x21(%ebx),%bh
40b5df:	00 00                	add    %al,(%eax)
40b5e1:	04 1f                	add    $0x1f,%al
40b5e3:	3b 20                	cmp    (%eax),%esp
40b5e5:	fb                   	sti
40b5e6:	00 00                	add    %al,(%eax)
40b5e8:	00 73 28             	add    %dh,0x28(%ebx)
40b5eb:	00 00                	add    %al,(%eax)
40b5ed:	0a 6f 29             	or     0x29(%edi),%ch
40b5f0:	00 00                	add    %al,(%eax)
40b5f2:	0a 00                	or     (%eax),%al
40b5f4:	02 7b df             	add    -0x21(%ebx),%bh
40b5f7:	00 00                	add    %al,(%eax)
40b5f9:	04 72                	add    $0x72,%al
40b5fb:	04 06                	add    $0x6,%al
40b5fd:	00 70 6f             	add    %dh,0x6f(%eax)
40b600:	2a 00                	sub    (%eax),%al
40b602:	00 0a                	add    %cl,(%edx)
40b604:	00 02                	add    %al,(%edx)
40b606:	7b df                	jnp    0x40b5e7
40b608:	00 00                	add    %al,(%eax)
40b60a:	04 1f                	add    $0x1f,%al
40b60c:	1f                   	pop    %ds
40b60d:	1f                   	pop    %ds
40b60e:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b613:	0a 6f 2c             	or     0x2c(%edi),%ch
40b616:	00 00                	add    %al,(%eax)
40b618:	0a 00                	or     (%eax),%al
40b61a:	02 7b df             	add    -0x21(%ebx),%bh
40b61d:	00 00                	add    %al,(%eax)
40b61f:	04 19                	add    $0x19,%al
40b621:	6f                   	outsl  %ds:(%esi),(%dx)
40b622:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b627:	02 7b df             	add    -0x21(%ebx),%bh
40b62a:	00 00                	add    %al,(%eax)
40b62c:	04 72                	add    $0x72,%al
40b62e:	b3 16                	mov    $0x16,%bl
40b630:	00 70 6f             	add    %dh,0x6f(%eax)
40b633:	1b 00                	sbb    (%eax),%eax
40b635:	00 0a                	add    %cl,(%edx)
40b637:	00 02                	add    %al,(%edx)
40b639:	7b e0                	jnp    0x40b61b
40b63b:	00 00                	add    %al,(%eax)
40b63d:	04 17                	add    $0x17,%al
40b63f:	6f                   	outsl  %ds:(%esi),(%dx)
40b640:	27                   	daa
40b641:	00 00                	add    %al,(%eax)
40b643:	0a 00                	or     (%eax),%al
40b645:	02 7b e0             	add    -0x20(%ebx),%bh
40b648:	00 00                	add    %al,(%eax)
40b64a:	04 1f                	add    $0x1f,%al
40b64c:	64 20 c0             	fs and %al,%al
40b64f:	00 00                	add    %al,(%eax)
40b651:	00 73 28             	add    %dh,0x28(%ebx)
40b654:	00 00                	add    %al,(%eax)
40b656:	0a 6f 29             	or     0x29(%edi),%ch
40b659:	00 00                	add    %al,(%eax)
40b65b:	0a 00                	or     (%eax),%al
40b65d:	02 7b e0             	add    -0x20(%ebx),%bh
40b660:	00 00                	add    %al,(%eax)
40b662:	04 72                	add    $0x72,%al
40b664:	b9 16 00 70 6f       	mov    $0x6f700016,%ecx
40b669:	2a 00                	sub    (%eax),%al
40b66b:	00 0a                	add    %cl,(%edx)
40b66d:	00 02                	add    %al,(%edx)
40b66f:	7b e0                	jnp    0x40b651
40b671:	00 00                	add    %al,(%eax)
40b673:	04 16                	add    $0x16,%al
40b675:	1f                   	pop    %ds
40b676:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b67b:	0a 6f 2c             	or     0x2c(%edi),%ch
40b67e:	00 00                	add    %al,(%eax)
40b680:	0a 00                	or     (%eax),%al
40b682:	02 7b e0             	add    -0x20(%ebx),%bh
40b685:	00 00                	add    %al,(%eax)
40b687:	04 1a                	add    $0x1a,%al
40b689:	6f                   	outsl  %ds:(%esi),(%dx)
40b68a:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b68f:	02 7b e1             	add    -0x1f(%ebx),%bh
40b692:	00 00                	add    %al,(%eax)
40b694:	04 17                	add    $0x17,%al
40b696:	6f                   	outsl  %ds:(%esi),(%dx)
40b697:	27                   	daa
40b698:	00 00                	add    %al,(%eax)
40b69a:	0a 00                	or     (%eax),%al
40b69c:	02 7b e1             	add    -0x1f(%ebx),%bh
40b69f:	00 00                	add    %al,(%eax)
40b6a1:	04 1f                	add    $0x1f,%al
40b6a3:	5e                   	pop    %esi
40b6a4:	20 fb                	and    %bh,%bl
40b6a6:	00 00                	add    %al,(%eax)
40b6a8:	00 73 28             	add    %dh,0x28(%ebx)
40b6ab:	00 00                	add    %al,(%eax)
40b6ad:	0a 6f 29             	or     0x29(%edi),%ch
40b6b0:	00 00                	add    %al,(%eax)
40b6b2:	0a 00                	or     (%eax),%al
40b6b4:	02 7b e1             	add    -0x1f(%ebx),%bh
40b6b7:	00 00                	add    %al,(%eax)
40b6b9:	04 72                	add    $0x72,%al
40b6bb:	d9 16                	fsts   (%esi)
40b6bd:	00 70 6f             	add    %dh,0x6f(%eax)
40b6c0:	2a 00                	sub    (%eax),%al
40b6c2:	00 0a                	add    %cl,(%edx)
40b6c4:	00 02                	add    %al,(%edx)
40b6c6:	7b e1                	jnp    0x40b6a9
40b6c8:	00 00                	add    %al,(%eax)
40b6ca:	04 16                	add    $0x16,%al
40b6cc:	1f                   	pop    %ds
40b6cd:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b6d2:	0a 6f 2c             	or     0x2c(%edi),%ch
40b6d5:	00 00                	add    %al,(%eax)
40b6d7:	0a 00                	or     (%eax),%al
40b6d9:	02 7b e1             	add    -0x1f(%ebx),%bh
40b6dc:	00 00                	add    %al,(%eax)
40b6de:	04 1b                	add    $0x1b,%al
40b6e0:	6f                   	outsl  %ds:(%esi),(%dx)
40b6e1:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b6e6:	02 7b e2             	add    -0x1e(%ebx),%bh
40b6e9:	00 00                	add    %al,(%eax)
40b6eb:	04 17                	add    $0x17,%al
40b6ed:	6f                   	outsl  %ds:(%esi),(%dx)
40b6ee:	27                   	daa
40b6ef:	00 00                	add    %al,(%eax)
40b6f1:	0a 00                	or     (%eax),%al
40b6f3:	02 7b e2             	add    -0x1e(%ebx),%bh
40b6f6:	00 00                	add    %al,(%eax)
40b6f8:	04 20                	add    $0x20,%al
40b6fa:	a2 01 00 00 20       	mov    %al,0x20000001
40b6ff:	c0 00 00             	rolb   $0x0,(%eax)
40b702:	00 73 28             	add    %dh,0x28(%ebx)
40b705:	00 00                	add    %al,(%eax)
40b707:	0a 6f 29             	or     0x29(%edi),%ch
40b70a:	00 00                	add    %al,(%eax)
40b70c:	0a 00                	or     (%eax),%al
40b70e:	02 7b e2             	add    -0x1e(%ebx),%bh
40b711:	00 00                	add    %al,(%eax)
40b713:	04 72                	add    $0x72,%al
40b715:	f3 16                	repz push %ss
40b717:	00 70 6f             	add    %dh,0x6f(%eax)
40b71a:	2a 00                	sub    (%eax),%al
40b71c:	00 0a                	add    %cl,(%edx)
40b71e:	00 02                	add    %al,(%edx)
40b720:	7b e2                	jnp    0x40b704
40b722:	00 00                	add    %al,(%eax)
40b724:	04 1f                	add    $0x1f,%al
40b726:	23 1f                	and    (%edi),%ebx
40b728:	0d 73 2b 00 00       	or     $0x2b73,%eax
40b72d:	0a 6f 2c             	or     0x2c(%edi),%ch
40b730:	00 00                	add    %al,(%eax)
40b732:	0a 00                	or     (%eax),%al
40b734:	02 7b e2             	add    -0x1e(%ebx),%bh
40b737:	00 00                	add    %al,(%eax)
40b739:	04 1c                	add    $0x1c,%al
40b73b:	6f                   	outsl  %ds:(%esi),(%dx)
40b73c:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b741:	02 7b e2             	add    -0x1e(%ebx),%bh
40b744:	00 00                	add    %al,(%eax)
40b746:	04 72                	add    $0x72,%al
40b748:	42                   	inc    %edx
40b749:	05 00 70 6f 1b       	add    $0x1b6f7000,%eax
40b74e:	00 00                	add    %al,(%eax)
40b750:	0a 00                	or     (%eax),%al
40b752:	02 7b e3             	add    -0x1d(%ebx),%bh
40b755:	00 00                	add    %al,(%eax)
40b757:	04 17                	add    $0x17,%al
40b759:	6f                   	outsl  %ds:(%esi),(%dx)
40b75a:	27                   	daa
40b75b:	00 00                	add    %al,(%eax)
40b75d:	0a 00                	or     (%eax),%al
40b75f:	02 7b e3             	add    -0x1d(%ebx),%bh
40b762:	00 00                	add    %al,(%eax)
40b764:	04 20                	add    $0x20,%al
40b766:	a2 01 00 00 20       	mov    %al,0x20000001
40b76b:	fb                   	sti
40b76c:	00 00                	add    %al,(%eax)
40b76e:	00 73 28             	add    %dh,0x28(%ebx)
40b771:	00 00                	add    %al,(%eax)
40b773:	0a 6f 29             	or     0x29(%edi),%ch
40b776:	00 00                	add    %al,(%eax)
40b778:	0a 00                	or     (%eax),%al
40b77a:	02 7b e3             	add    -0x1d(%ebx),%bh
40b77d:	00 00                	add    %al,(%eax)
40b77f:	04 72                	add    $0x72,%al
40b781:	34 05                	xor    $0x5,%al
40b783:	00 70 6f             	add    %dh,0x6f(%eax)
40b786:	2a 00                	sub    (%eax),%al
40b788:	00 0a                	add    %cl,(%edx)
40b78a:	00 02                	add    %al,(%edx)
40b78c:	7b e3                	jnp    0x40b771
40b78e:	00 00                	add    %al,(%eax)
40b790:	04 1f                	add    $0x1f,%al
40b792:	25 1f 0d 73 2b       	and    $0x2b730d1f,%eax
40b797:	00 00                	add    %al,(%eax)
40b799:	0a 6f 2c             	or     0x2c(%edi),%ch
40b79c:	00 00                	add    %al,(%eax)
40b79e:	0a 00                	or     (%eax),%al
40b7a0:	02 7b e3             	add    -0x1d(%ebx),%bh
40b7a3:	00 00                	add    %al,(%eax)
40b7a5:	04 1d                	add    $0x1d,%al
40b7a7:	6f                   	outsl  %ds:(%esi),(%dx)
40b7a8:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40b7ad:	02 7b e3             	add    -0x1d(%ebx),%bh
40b7b0:	00 00                	add    %al,(%eax)
40b7b2:	04 72                	add    $0x72,%al
40b7b4:	05 17 00 70 6f       	add    $0x6f700017,%eax
40b7b9:	1b 00                	sbb    (%eax),%eax
40b7bb:	00 0a                	add    %cl,(%edx)
40b7bd:	00 02                	add    %al,(%edx)
40b7bf:	7b e4                	jnp    0x40b7a5
40b7c1:	00 00                	add    %al,(%eax)
40b7c3:	04 1f                	add    $0x1f,%al
40b7c5:	7a 20                	jp     0x40b7e7
40b7c7:	32 01                	xor    (%ecx),%al
40b7c9:	00 00                	add    %al,(%eax)
40b7cb:	73 28                	jae    0x40b7f5
40b7cd:	00 00                	add    %al,(%eax)
40b7cf:	0a 6f 29             	or     0x29(%edi),%ch
40b7d2:	00 00                	add    %al,(%eax)
40b7d4:	0a 00                	or     (%eax),%al
40b7d6:	02 7b e4             	add    -0x1c(%ebx),%bh
40b7d9:	00 00                	add    %al,(%eax)