41a4f7:	64 ff 32             	push   %fs:(%edx)
41a4fa:	64 89 22             	mov    %esp,%fs:(%edx)
41a4fd:	e9 cf 00 00 00       	jmp    0x41a5d1
41a502:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41a506:	75 0b                	jne    0x41a513
41a508:	81 7d 10 ff ff ff 7f 	cmpl   $0x7fffffff,0x10(%ebp)
41a50f:	76 0b                	jbe    0x41a51c
41a511:	eb 02                	jmp    0x41a515
41a513:	7e 07                	jle    0x41a51c
41a515:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
41a51a:	eb 03                	jmp    0x41a51f
41a51c:	8b 75 10             	mov    0x10(%ebp),%esi
41a51f:	85 f6                	test   %esi,%esi
41a521:	0f 8e aa 00 00 00    	jle    0x41a5d1
41a527:	3b 75 f4             	cmp    -0xc(%ebp),%esi
41a52a:	7e 05                	jle    0x41a531
41a52c:	8b 45 f4             	mov    -0xc(%ebp),%eax
41a52f:	eb 02                	jmp    0x41a533
41a531:	8b c6                	mov    %esi,%eax
41a533:	8b 55 f8             	mov    -0x8(%ebp),%edx
41a536:	8b 4d 08             	mov    0x8(%ebp),%ecx
41a539:	8b 49 0c             	mov    0xc(%ecx),%ecx
41a53c:	91                   	xchg   %eax,%ecx
41a53d:	8b 18                	mov    (%eax),%ebx
41a53f:	ff 53 0c             	call   *0xc(%ebx)
41a542:	8b d8                	mov    %eax,%ebx
41a544:	85 db                	test   %ebx,%ebx
41a546:	75 12                	jne    0x41a55a
41a548:	e8 57 95 fe ff       	call   0x403aa4
41a54d:	33 c0                	xor    %eax,%eax
41a54f:	5a                   	pop    %edx
41a550:	59                   	pop    %ecx
41a551:	59                   	pop    %ecx
41a552:	64 89 10             	mov    %edx,%fs:(%eax)
41a555:	e9 f1 00 00 00       	jmp    0x41a64b
41a55a:	8b c3                	mov    %ebx,%eax
41a55c:	99                   	cltd
41a55d:	01 45 e8             	add    %eax,-0x18(%ebp)
41a560:	11 55 ec             	adc    %edx,-0x14(%ebp)
41a563:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
41a56a:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
41a571:	8d 45 d8             	lea    -0x28(%ebp),%eax
41a574:	50                   	push   %eax
41a575:	53                   	push   %ebx
41a576:	8b 45 f8             	mov    -0x8(%ebp),%eax
41a579:	50                   	push   %eax
41a57a:	8b 45 0c             	mov    0xc(%ebp),%eax
41a57d:	50                   	push   %eax
41a57e:	8b 00                	mov    (%eax),%eax
41a580:	ff 50 10             	call   *0x10(%eax)
41a583:	89 45 fc             	mov    %eax,-0x4(%ebp)
41a586:	8b 45 d8             	mov    -0x28(%ebp),%eax
41a589:	8b 55 dc             	mov    -0x24(%ebp),%edx
41a58c:	01 45 e0             	add    %eax,-0x20(%ebp)
41a58f:	11 55 e4             	adc    %edx,-0x1c(%ebp)
41a592:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41a596:	75 0e                	jne    0x41a5a6
41a598:	8b 45 d8             	mov    -0x28(%ebp),%eax
41a59b:	3b d8                	cmp    %eax,%ebx
41a59d:	74 07                	je     0x41a5a6
41a59f:	c7 45 fc 05 40 00 80 	movl   $0x80004005,-0x4(%ebp)
41a5a6:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41a5aa:	74 12                	je     0x41a5be
41a5ac:	e8 f3 94 fe ff       	call   0x403aa4
41a5b1:	33 c0                	xor    %eax,%eax
41a5b3:	5a                   	pop    %edx
41a5b4:	59                   	pop    %ecx
41a5b5:	59                   	pop    %ecx
41a5b6:	64 89 10             	mov    %edx,%fs:(%eax)
41a5b9:	e9 8d 00 00 00       	jmp    0x41a64b
41a5be:	2b f3                	sub    %ebx,%esi
41a5c0:	8b c3                	mov    %ebx,%eax
41a5c2:	99                   	cltd
41a5c3:	29 45 10             	sub    %eax,0x10(%ebp)
41a5c6:	19 55 14             	sbb    %edx,0x14(%ebp)
41a5c9:	85 f6                	test   %esi,%esi
41a5cb:	0f 8f 56 ff ff ff    	jg     0x41a527
41a5d1:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41a5d5:	75 0c                	jne    0x41a5e3
41a5d7:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
41a5db:	0f 87 21 ff ff ff    	ja     0x41a502
41a5e1:	eb 06                	jmp    0x41a5e9
41a5e3:	0f 8f 19 ff ff ff    	jg     0x41a502
41a5e9:	33 c0                	xor    %eax,%eax
41a5eb:	5a                   	pop    %edx
41a5ec:	59                   	pop    %ecx
41a5ed:	59                   	pop    %ecx
41a5ee:	64 89 10             	mov    %edx,%fs:(%eax)
41a5f1:	68 30 a6 41 00       	push   $0x41a630
41a5f6:	8b 45 f8             	mov    -0x8(%ebp),%eax
41a5f9:	e8 de 80 fe ff       	call   0x4026dc
41a5fe:	8b 45 1c             	mov    0x1c(%ebp),%eax
41a601:	85 c0                	test   %eax,%eax
41a603:	74 0e                	je     0x41a613
41a605:	8b 45 1c             	mov    0x1c(%ebp),%eax
41a608:	8b 55 e0             	mov    -0x20(%ebp),%edx
41a60b:	89 10                	mov    %edx,(%eax)
41a60d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
41a610:	89 50 04             	mov    %edx,0x4(%eax)
41a613:	8b 45 18             	mov    0x18(%ebp),%eax
41a616:	85 c0                	test   %eax,%eax
41a618:	74 0e                	je     0x41a628
41a61a:	8b 45 18             	mov    0x18(%ebp),%eax
41a61d:	8b 55 e8             	mov    -0x18(%ebp),%edx
41a620:	89 10                	mov    %edx,(%eax)
41a622:	8b 55 ec             	mov    -0x14(%ebp),%edx
41a625:	89 50 04             	mov    %edx,0x4(%eax)
41a628:	c3                   	ret
41a629:	e9 92 93 fe ff       	jmp    0x4039c0
41a62e:	eb c6                	jmp    0x41a5f6
41a630:	33 c0                	xor    %eax,%eax
41a632:	5a                   	pop    %edx
41a633:	59                   	pop    %ecx
41a634:	59                   	pop    %ecx
41a635:	64 89 10             	mov    %edx,%fs:(%eax)
41a638:	eb 11                	jmp    0x41a64b
41a63a:	e9 cd 90 fe ff       	jmp    0x40370c
41a63f:	c7 45 fc ff ff 00 80 	movl   $0x8000ffff,-0x4(%ebp)
41a646:	e8 29 94 fe ff       	call   0x403a74
41a64b:	33 c0                	xor    %eax,%eax
41a64d:	5a                   	pop    %edx
41a64e:	59                   	pop    %ecx
41a64f:	59                   	pop    %ecx
41a650:	64 89 10             	mov    %edx,%fs:(%eax)
41a653:	68 68 a6 41 00       	push   $0x41a668
41a658:	8d 45 0c             	lea    0xc(%ebp),%eax
41a65b:	e8 fc af fe ff       	call   0x40565c
41a660:	c3                   	ret
41a661:	e9 5a 93 fe ff       	jmp    0x4039c0
41a666:	eb f0                	jmp    0x41a658
41a668:	8b 45 fc             	mov    -0x4(%ebp),%eax
41a66b:	5f                   	pop    %edi
41a66c:	5e                   	pop    %esi
41a66d:	5b                   	pop    %ebx
41a66e:	8b e5                	mov    %ebp,%esp
41a670:	5d                   	pop    %ebp
41a671:	c2 18 00             	ret    $0x18
41a674:	55                   	push   %ebp
41a675:	8b ec                	mov    %esp,%ebp
41a677:	33 c0                	xor    %eax,%eax
41a679:	5d                   	pop    %ebp
41a67a:	c2 08 00             	ret    $0x8
41a67d:	8d 40 00             	lea    0x0(%eax),%eax
41a680:	55                   	push   %ebp
41a681:	8b ec                	mov    %esp,%ebp
41a683:	b8 02 01 03 80       	mov    $0x80030102,%eax
41a688:	5d                   	pop    %ebp
41a689:	c2 04 00             	ret    $0x4
41a68c:	55                   	push   %ebp
41a68d:	8b ec                	mov    %esp,%ebp
41a68f:	b8 01 00 03 80       	mov    $0x80030001,%eax
41a694:	5d                   	pop    %ebp
41a695:	c2 18 00             	ret    $0x18
41a698:	55                   	push   %ebp
41a699:	8b ec                	mov    %esp,%ebp
41a69b:	b8 01 00 03 80       	mov    $0x80030001,%eax
41a6a0:	5d                   	pop    %ebp
41a6a1:	c2 18 00             	ret    $0x18
41a6a4:	55                   	push   %ebp
41a6a5:	8b ec                	mov    %esp,%ebp
41a6a7:	53                   	push   %ebx
41a6a8:	56                   	push   %esi
41a6a9:	57                   	push   %edi
41a6aa:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41a6ad:	8b 7d 08             	mov    0x8(%ebp),%edi
41a6b0:	33 f6                	xor    %esi,%esi
41a6b2:	33 c0                	xor    %eax,%eax
41a6b4:	55                   	push   %ebp
41a6b5:	68 07 a7 41 00       	push   $0x41a707
41a6ba:	64 ff 30             	push   %fs:(%eax)
41a6bd:	64 89 20             	mov    %esp,%fs:(%eax)
41a6c0:	85 db                	test   %ebx,%ebx
41a6c2:	74 39                	je     0x41a6fd
41a6c4:	c7 43 04 02 00 00 00 	movl   $0x2,0x4(%ebx)
41a6cb:	8b 47 0c             	mov    0xc(%edi),%eax
41a6ce:	8b 10                	mov    (%eax),%edx
41a6d0:	ff 12                	call   *(%edx)
41a6d2:	89 43 08             	mov    %eax,0x8(%ebx)
41a6d5:	89 53 0c             	mov    %edx,0xc(%ebx)
41a6d8:	33 c0                	xor    %eax,%eax
41a6da:	89 43 10             	mov    %eax,0x10(%ebx)
41a6dd:	33 c0                	xor    %eax,%eax
41a6df:	89 43 14             	mov    %eax,0x14(%ebx)
41a6e2:	33 c0                	xor    %eax,%eax
41a6e4:	89 43 18             	mov    %eax,0x18(%ebx)
41a6e7:	33 c0                	xor    %eax,%eax
41a6e9:	89 43 1c             	mov    %eax,0x1c(%ebx)
41a6ec:	33 c0                	xor    %eax,%eax
41a6ee:	89 43 20             	mov    %eax,0x20(%ebx)
41a6f1:	33 c0                	xor    %eax,%eax
41a6f3:	89 43 24             	mov    %eax,0x24(%ebx)
41a6f6:	c7 43 2c 01 00 00 00 	movl   $0x1,0x2c(%ebx)
41a6fd:	33 c0                	xor    %eax,%eax
41a6ff:	5a                   	pop    %edx
41a700:	59                   	pop    %ecx
41a701:	59                   	pop    %ecx
41a702:	64 89 10             	mov    %edx,%fs:(%eax)
41a705:	eb 0f                	jmp    0x41a716
41a707:	e9 00 90 fe ff       	jmp    0x40370c
41a70c:	be ff ff 00 80       	mov    $0x8000ffff,%esi
41a711:	e8 5e 93 fe ff       	call   0x403a74
41a716:	8b c6                	mov    %esi,%eax
41a718:	5f                   	pop    %edi
41a719:	5e                   	pop    %esi
41a71a:	5b                   	pop    %ebx
41a71b:	5d                   	pop    %ebp
41a71c:	c2 0c 00             	ret    $0xc
41a71f:	90                   	nop
41a720:	55                   	push   %ebp
41a721:	8b ec                	mov    %esp,%ebp
41a723:	8b 45 0c             	mov    0xc(%ebp),%eax
41a726:	85 c0                	test   %eax,%eax
41a728:	74 04                	je     0x41a72e
41a72a:	33 d2                	xor    %edx,%edx
41a72c:	89 10                	mov    %edx,(%eax)
41a72e:	b8 01 40 00 80       	mov    $0x80004001,%eax
41a733:	5d                   	pop    %ebp
41a734:	c2 08 00             	ret    $0x8
41a737:	90                   	nop
41a738:	55                   	push   %ebp
41a739:	8b ec                	mov    %esp,%ebp
41a73b:	53                   	push   %ebx
41a73c:	56                   	push   %esi
41a73d:	57                   	push   %edi
41a73e:	a1 58 98 46 00       	mov    0x469858,%eax
41a743:	e8 b0 99 ff ff       	call   0x4140f8
41a748:	8b f8                	mov    %eax,%edi
41a74a:	33 c0                	xor    %eax,%eax
41a74c:	55                   	push   %ebp
41a74d:	68 8d a7 41 00       	push   $0x41a78d
41a752:	64 ff 30             	push   %fs:(%eax)
41a755:	64 89 20             	mov    %esp,%fs:(%eax)
41a758:	8b 5f 08             	mov    0x8(%edi),%ebx
41a75b:	4b                   	dec    %ebx
41a75c:	85 db                	test   %ebx,%ebx
41a75e:	7c 15                	jl     0x41a775
41a760:	43                   	inc    %ebx
41a761:	33 f6                	xor    %esi,%esi
41a763:	8b d6                	mov    %esi,%edx
41a765:	8b c7                	mov    %edi,%eax
41a767:	e8 20 96 ff ff       	call   0x413d8c
41a76c:	e8 fb 8a fe ff       	call   0x40326c
41a771:	46                   	inc    %esi
41a772:	4b                   	dec    %ebx
41a773:	75 ee                	jne    0x41a763
41a775:	33 c0                	xor    %eax,%eax
41a777:	5a                   	pop    %edx
41a778:	59                   	pop    %ecx
41a779:	59                   	pop    %ecx
41a77a:	64 89 10             	mov    %edx,%fs:(%eax)
41a77d:	68 94 a7 41 00       	push   $0x41a794
41a782:	a1 58 98 46 00       	mov    0x469858,%eax
41a787:	e8 d0 99 ff ff       	call   0x41415c
41a78c:	c3                   	ret
41a78d:	e9 2e 92 fe ff       	jmp    0x4039c0
41a792:	eb ee                	jmp    0x41a782
41a794:	a1 58 98 46 00       	mov    0x469858,%eax
41a799:	e8 ce 8a fe ff       	call   0x40326c
41a79e:	5f                   	pop    %edi
41a79f:	5e                   	pop    %esi
41a7a0:	5b                   	pop    %ebx
41a7a1:	5d                   	pop    %ebp
41a7a2:	c3                   	ret
41a7a3:	90                   	nop
41a7a4:	e8 d3 8d ff ff       	call   0x41357c
41a7a9:	c3                   	ret
41a7aa:	8b c0                	mov    %eax,%eax
41a7ac:	55                   	push   %ebp
41a7ad:	8b ec                	mov    %esp,%ebp
41a7af:	31 c0                	xor    %eax,%eax
41a7b1:	50                   	push   %eax
41a7b2:	ff 75 14             	push   0x14(%ebp)
41a7b5:	ff 75 10             	push   0x10(%ebp)
41a7b8:	ff 75 0c             	push   0xc(%ebp)
41a7bb:	89 e2                	mov    %esp,%edx
41a7bd:	8b 41 04             	mov    0x4(%ecx),%eax
41a7c0:	ff 11                	call   *(%ecx)
41a7c2:	83 c4 0c             	add    $0xc,%esp
41a7c5:	58                   	pop    %eax
41a7c6:	5d                   	pop    %ebp
41a7c7:	c2 10 00             	ret    $0x10
41a7ca:	8b c0                	mov    %eax,%eax
41a7cc:	83 c0 05             	add    $0x5,%eax
41a7cf:	2b d0                	sub    %eax,%edx
41a7d1:	8b c2                	mov    %edx,%eax
41a7d3:	c3                   	ret
41a7d4:	55                   	push   %ebp
41a7d5:	8b ec                	mov    %esp,%ebp
41a7d7:	53                   	push   %ebx
41a7d8:	56                   	push   %esi
41a7d9:	57                   	push   %edi
41a7da:	bf 84 98 46 00       	mov    $0x469884,%edi
41a7df:	83 3f 00             	cmpl   $0x0,(%edi)
41a7e2:	75 6c                	jne    0x41a850
41a7e4:	6a 40                	push   $0x40
41a7e6:	68 00 10 00 00       	push   $0x1000
41a7eb:	68 00 10 00 00       	push   $0x1000
41a7f0:	6a 00                	push   $0x0
41a7f2:	e8 c1 b9 fe ff       	call   0x4061b8
41a7f7:	8b f0                	mov    %eax,%esi
41a7f9:	a1 80 98 46 00       	mov    0x469880,%eax
41a7fe:	89 06                	mov    %eax,(%esi)
41a800:	8d 56 04             	lea    0x4(%esi),%edx
41a803:	b8 ec d3 45 00       	mov    $0x45d3ec,%eax
41a808:	b9 02 00 00 00       	mov    $0x2,%ecx
41a80d:	e8 a6 80 fe ff       	call   0x4028b8
41a812:	ba ac a7 41 00       	mov    $0x41a7ac,%edx
41a817:	8d 46 05             	lea    0x5(%esi),%eax
41a81a:	e8 ad ff ff ff       	call   0x41a7cc
41a81f:	89 46 06             	mov    %eax,0x6(%esi)
41a822:	8d 5e 0a             	lea    0xa(%esi),%ebx
41a825:	c6 03 e8             	movb   $0xe8,(%ebx)
41a828:	8d 56 04             	lea    0x4(%esi),%edx
41a82b:	8b c3                	mov    %ebx,%eax
41a82d:	e8 9a ff ff ff       	call   0x41a7cc
41a832:	89 43 01             	mov    %eax,0x1(%ebx)
41a835:	8b 07                	mov    (%edi),%eax
41a837:	89 43 05             	mov    %eax,0x5(%ebx)
41a83a:	89 1f                	mov    %ebx,(%edi)
41a83c:	83 c3 0d             	add    $0xd,%ebx
41a83f:	8b c3                	mov    %ebx,%eax
41a841:	2b c6                	sub    %esi,%eax
41a843:	3d fc 0f 00 00       	cmp    $0xffc,%eax
41a848:	7c db                	jl     0x41a825
41a84a:	89 35 80 98 46 00    	mov    %esi,0x469880
41a850:	8b 07                	mov    (%edi),%eax
41a852:	8b 1f                	mov    (%edi),%ebx
41a854:	8b 53 05             	mov    0x5(%ebx),%edx
41a857:	89 17                	mov    %edx,(%edi)
41a859:	8b 55 08             	mov    0x8(%ebp),%edx
41a85c:	89 53 05             	mov    %edx,0x5(%ebx)
41a85f:	8b 55 0c             	mov    0xc(%ebp),%edx
41a862:	89 53 09             	mov    %edx,0x9(%ebx)
41a865:	5f                   	pop    %edi
41a866:	5e                   	pop    %esi
41a867:	5b                   	pop    %ebx
41a868:	5d                   	pop    %ebp
41a869:	c2 08 00             	ret    $0x8
41a86c:	85 c0                	test   %eax,%eax
41a86e:	74 0e                	je     0x41a87e
41a870:	8b 15 84 98 46 00    	mov    0x469884,%edx
41a876:	89 50 05             	mov    %edx,0x5(%eax)
41a879:	a3 84 98 46 00       	mov    %eax,0x469884
41a87e:	c3                   	ret
41a87f:	90                   	nop
41a880:	54                   	push   %esp
41a881:	50                   	push   %eax
41a882:	55                   	push   %ebp
41a883:	74 69                	je     0x41a8ee
41a885:	6c                   	insb   (%dx),%es:(%edi)