41d558:	e8 c3 71 fe ff       	call   0x404720
41d55d:	c3                   	ret
41d55e:	e9 25 6b fe ff       	jmp    0x404088
41d563:	eb e0                	jmp    0x41d545
41d565:	5b                   	pop    %ebx
41d566:	8b e5                	mov    %ebp,%esp
41d568:	5d                   	pop    %ebp
41d569:	c3                   	ret
41d56a:	8b c0                	mov    %eax,%eax
41d56c:	56                   	push   %esi
41d56d:	57                   	push   %edi
41d56e:	53                   	push   %ebx
41d56f:	89 d6                	mov    %edx,%esi
41d571:	89 cb                	mov    %ecx,%ebx
41d573:	89 c7                	mov    %eax,%edi
41d575:	eb 36                	jmp    0x41d5ad
41d577:	8b 4f 0c             	mov    0xc(%edi),%ecx
41d57a:	2b 4f 10             	sub    0x10(%edi),%ecx
41d57d:	77 0a                	ja     0x41d589
41d57f:	89 f8                	mov    %edi,%eax
41d581:	e8 32 00 00 00       	call   0x41d5b8
41d586:	8b 4f 0c             	mov    0xc(%edi),%ecx
41d589:	39 d9                	cmp    %ebx,%ecx
41d58b:	72 02                	jb     0x41d58f
41d58d:	89 d9                	mov    %ebx,%ecx
41d58f:	29 cb                	sub    %ecx,%ebx
41d591:	57                   	push   %edi
41d592:	8b 47 08             	mov    0x8(%edi),%eax
41d595:	03 47 10             	add    0x10(%edi),%eax
41d598:	01 4f 10             	add    %ecx,0x10(%edi)
41d59b:	89 c7                	mov    %eax,%edi
41d59d:	89 ca                	mov    %ecx,%edx
41d59f:	c1 e9 02             	shr    $0x2,%ecx
41d5a2:	fc                   	cld
41d5a3:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41d5a5:	89 d1                	mov    %edx,%ecx
41d5a7:	83 e1 03             	and    $0x3,%ecx
41d5aa:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
41d5ac:	5f                   	pop    %edi
41d5ad:	09 db                	or     %ebx,%ebx
41d5af:	75 c6                	jne    0x41d577
41d5b1:	5b                   	pop    %ebx
41d5b2:	5f                   	pop    %edi
41d5b3:	5e                   	pop    %esi
41d5b4:	c3                   	ret
41d5b5:	8d 40 00             	lea    0x0(%eax),%eax
41d5b8:	53                   	push   %ebx
41d5b9:	8b d8                	mov    %eax,%ebx
41d5bb:	8b 53 08             	mov    0x8(%ebx),%edx
41d5be:	8b 4b 10             	mov    0x10(%ebx),%ecx
41d5c1:	8b 43 04             	mov    0x4(%ebx),%eax
41d5c4:	e8 87 c6 ff ff       	call   0x419c50
41d5c9:	33 c0                	xor    %eax,%eax
41d5cb:	89 43 10             	mov    %eax,0x10(%ebx)
41d5ce:	5b                   	pop    %ebx
41d5cf:	c3                   	ret
41d5d0:	84 d2                	test   %dl,%dl
41d5d2:	74 08                	je     0x41d5dc
41d5d4:	b2 09                	mov    $0x9,%dl
41d5d6:	e8 8d 01 00 00       	call   0x41d768
41d5db:	c3                   	ret
41d5dc:	b2 08                	mov    $0x8,%dl
41d5de:	e8 85 01 00 00       	call   0x41d768
41d5e3:	c3                   	ret
41d5e4:	53                   	push   %ebx
41d5e5:	51                   	push   %ecx
41d5e6:	89 14 24             	mov    %edx,(%esp)
41d5e9:	8b d8                	mov    %eax,%ebx
41d5eb:	83 3c 24 80          	cmpl   $0xffffff80,(%esp)
41d5ef:	7c 20                	jl     0x41d611
41d5f1:	83 3c 24 7f          	cmpl   $0x7f,(%esp)
41d5f5:	7f 1a                	jg     0x41d611
41d5f7:	b2 02                	mov    $0x2,%dl
41d5f9:	8b c3                	mov    %ebx,%eax
41d5fb:	e8 68 01 00 00       	call   0x41d768
41d600:	8b d4                	mov    %esp,%edx
41d602:	b9 01 00 00 00       	mov    $0x1,%ecx
41d607:	8b c3                	mov    %ebx,%eax
41d609:	e8 5e ff ff ff       	call   0x41d56c
41d60e:	5a                   	pop    %edx
41d60f:	5b                   	pop    %ebx
41d610:	c3                   	ret
41d611:	81 3c 24 00 80 ff ff 	cmpl   $0xffff8000,(%esp)
41d618:	7c 22                	jl     0x41d63c
41d61a:	81 3c 24 ff 7f 00 00 	cmpl   $0x7fff,(%esp)
41d621:	7f 19                	jg     0x41d63c
41d623:	b2 03                	mov    $0x3,%dl
41d625:	8b c3                	mov    %ebx,%eax
41d627:	e8 3c 01 00 00       	call   0x41d768
41d62c:	8b d4                	mov    %esp,%edx
41d62e:	b9 02 00 00 00       	mov    $0x2,%ecx
41d633:	8b c3                	mov    %ebx,%eax
41d635:	e8 32 ff ff ff       	call   0x41d56c
41d63a:	eb 17                	jmp    0x41d653
41d63c:	b2 04                	mov    $0x4,%dl
41d63e:	8b c3                	mov    %ebx,%eax
41d640:	e8 23 01 00 00       	call   0x41d768
41d645:	8b d4                	mov    %esp,%edx
41d647:	b9 04 00 00 00       	mov    $0x4,%ecx
41d64c:	8b c3                	mov    %ebx,%eax
41d64e:	e8 19 ff ff ff       	call   0x41d56c
41d653:	5a                   	pop    %edx
41d654:	5b                   	pop    %ebx
41d655:	c3                   	ret
41d656:	8b c0                	mov    %eax,%eax
41d658:	b2 01                	mov    $0x1,%dl
41d65a:	e8 09 01 00 00       	call   0x41d768
41d65f:	c3                   	ret
41d660:	33 d2                	xor    %edx,%edx
41d662:	e8 01 01 00 00       	call   0x41d768
41d667:	c3                   	ret
41d668:	53                   	push   %ebx
41d669:	56                   	push   %esi
41d66a:	57                   	push   %edi
41d66b:	83 c4 f8             	add    $0xfffffff8,%esp
41d66e:	8b f9                	mov    %ecx,%edi
41d670:	8b f2                	mov    %edx,%esi
41d672:	8b d8                	mov    %eax,%ebx
41d674:	8b c6                	mov    %esi,%eax
41d676:	8b d7                	mov    %edi,%edx
41d678:	e8 b3 74 fe ff       	call   0x404b30
41d67d:	74 39                	je     0x41d6b8
41d67f:	89 7c 24 04          	mov    %edi,0x4(%esp)
41d683:	8b 44 24 04          	mov    0x4(%esp),%eax
41d687:	85 c0                	test   %eax,%eax
41d689:	74 05                	je     0x41d690
41d68b:	83 e8 04             	sub    $0x4,%eax
41d68e:	8b 00                	mov    (%eax),%eax
41d690:	89 04 24             	mov    %eax,(%esp)
41d693:	b2 14                	mov    $0x14,%dl
41d695:	8b c3                	mov    %ebx,%eax
41d697:	e8 cc 00 00 00       	call   0x41d768
41d69c:	8b d4                	mov    %esp,%edx
41d69e:	b9 04 00 00 00       	mov    $0x4,%ecx
41d6a3:	8b c3                	mov    %ebx,%eax
41d6a5:	e8 c2 fe ff ff       	call   0x41d56c
41d6aa:	8b d7                	mov    %edi,%edx
41d6ac:	8b 0c 24             	mov    (%esp),%ecx
41d6af:	8b c3                	mov    %ebx,%eax
41d6b1:	e8 b6 fe ff ff       	call   0x41d56c
41d6b6:	eb 53                	jmp    0x41d70b
41d6b8:	8b c6                	mov    %esi,%eax
41d6ba:	85 c0                	test   %eax,%eax
41d6bc:	74 05                	je     0x41d6c3
41d6be:	83 e8 04             	sub    $0x4,%eax
41d6c1:	8b 00                	mov    (%eax),%eax
41d6c3:	89 04 24             	mov    %eax,(%esp)
41d6c6:	81 3c 24 ff 00 00 00 	cmpl   $0xff,(%esp)
41d6cd:	7f 19                	jg     0x41d6e8
41d6cf:	b2 06                	mov    $0x6,%dl
41d6d1:	8b c3                	mov    %ebx,%eax
41d6d3:	e8 90 00 00 00       	call   0x41d768
41d6d8:	8b d4                	mov    %esp,%edx
41d6da:	b9 01 00 00 00       	mov    $0x1,%ecx
41d6df:	8b c3                	mov    %ebx,%eax
41d6e1:	e8 86 fe ff ff       	call   0x41d56c
41d6e6:	eb 17                	jmp    0x41d6ff
41d6e8:	b2 0c                	mov    $0xc,%dl
41d6ea:	8b c3                	mov    %ebx,%eax
41d6ec:	e8 77 00 00 00       	call   0x41d768
41d6f1:	8b d4                	mov    %esp,%edx
41d6f3:	b9 04 00 00 00       	mov    $0x4,%ecx
41d6f8:	8b c3                	mov    %ebx,%eax
41d6fa:	e8 6d fe ff ff       	call   0x41d56c
41d6ff:	8b d6                	mov    %esi,%edx
41d701:	8b 0c 24             	mov    (%esp),%ecx
41d704:	8b c3                	mov    %ebx,%eax
41d706:	e8 61 fe ff ff       	call   0x41d56c
41d70b:	59                   	pop    %ecx
41d70c:	5a                   	pop    %edx
41d70d:	5f                   	pop    %edi
41d70e:	5e                   	pop    %esi
41d70f:	5b                   	pop    %ebx
41d710:	c3                   	ret
41d711:	8d 40 00             	lea    0x0(%eax),%eax
41d714:	55                   	push   %ebp
41d715:	8b ec                	mov    %esp,%ebp
41d717:	6a 00                	push   $0x0
41d719:	53                   	push   %ebx
41d71a:	56                   	push   %esi
41d71b:	8b f2                	mov    %edx,%esi
41d71d:	8b d8                	mov    %eax,%ebx
41d71f:	33 c0                	xor    %eax,%eax
41d721:	55                   	push   %ebp
41d722:	68 59 d7 41 00       	push   $0x41d759
41d727:	64 ff 30             	push   %fs:(%eax)
41d72a:	64 89 20             	mov    %esp,%fs:(%eax)
41d72d:	8d 55 fc             	lea    -0x4(%ebp),%edx
41d730:	8b c6                	mov    %esi,%eax
41d732:	e8 7d 8e fe ff       	call   0x4065b4
41d737:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41d73a:	8b d6                	mov    %esi,%edx
41d73c:	8b c3                	mov    %ebx,%eax
41d73e:	e8 25 ff ff ff       	call   0x41d668
41d743:	33 c0                	xor    %eax,%eax
41d745:	5a                   	pop    %edx
41d746:	59                   	pop    %ecx
41d747:	59                   	pop    %ecx
41d748:	64 89 10             	mov    %edx,%fs:(%eax)
41d74b:	68 60 d7 41 00       	push   $0x41d760
41d750:	8d 45 fc             	lea    -0x4(%ebp),%eax
41d753:	e8 c8 6f fe ff       	call   0x404720
41d758:	c3                   	ret
41d759:	e9 2a 69 fe ff       	jmp    0x404088
41d75e:	eb f0                	jmp    0x41d750
41d760:	5e                   	pop    %esi
41d761:	5b                   	pop    %ebx
41d762:	59                   	pop    %ecx
41d763:	5d                   	pop    %ebp
41d764:	c3                   	ret
41d765:	8d 40 00             	lea    0x0(%eax),%eax
41d768:	51                   	push   %ecx
41d769:	88 14 24             	mov    %dl,(%esp)
41d76c:	8b d4                	mov    %esp,%edx
41d76e:	b9 01 00 00 00       	mov    $0x1,%ecx
41d773:	e8 f4 fd ff ff       	call   0x41d56c
41d778:	5a                   	pop    %edx
41d779:	c3                   	ret
41d77a:	8b c0                	mov    %eax,%eax
41d77c:	68 e8 12 47 00       	push   $0x4712e8
41d781:	e8 c2 92 fe ff       	call   0x406a48
41d786:	68 ac d7 41 00       	push   $0x41d7ac
41d78b:	6a 00                	push   $0x0
41d78d:	6a ff                	push   $0xffffffff
41d78f:	6a 00                	push   $0x0
41d791:	e8 8a 91 fe ff       	call   0x406920
41d796:	a3 d0 12 47 00       	mov    %eax,0x4712d0
41d79b:	83 3d d0 12 47 00 00 	cmpl   $0x0,0x4712d0
41d7a2:	75 05                	jne    0x41d7a9
41d7a4:	e8 13 00 ff ff       	call   0x40d7bc
41d7a9:	c3                   	ret
41d7aa:	00 00                	add    %al,(%eax)
41d7ac:	00 00                	add    %al,(%eax)
41d7ae:	00 00                	add    %al,(%eax)
41d7b0:	68 e8 12 47 00       	push   $0x4712e8
41d7b5:	e8 7e 91 fe ff       	call   0x406938
41d7ba:	a1 d0 12 47 00       	mov    0x4712d0,%eax
41d7bf:	50                   	push   %eax
41d7c0:	e8 4b 91 fe ff       	call   0x406910
41d7c5:	c3                   	ret
41d7c6:	8b c0                	mov    %eax,%eax
41d7c8:	a1 d0 12 47 00       	mov    0x4712d0,%eax
41d7cd:	50                   	push   %eax
41d7ce:	e8 b5 92 fe ff       	call   0x406a88
41d7d3:	c3                   	ret
41d7d4:	53                   	push   %ebx
41d7d5:	8b d8                	mov    %eax,%ebx
41d7d7:	53                   	push   %ebx
41d7d8:	a1 d0 12 47 00       	mov    0x4712d0,%eax
41d7dd:	50                   	push   %eax
41d7de:	e8 f5 92 fe ff       	call   0x406ad8
41d7e3:	85 c0                	test   %eax,%eax
41d7e5:	75 05                	jne    0x41d7ec
41d7e7:	e8 dc ff ff ff       	call   0x41d7c8
41d7ec:	5b                   	pop    %ebx
41d7ed:	c3                   	ret
41d7ee:	8b c0                	mov    %eax,%eax
41d7f0:	55                   	push   %ebp
41d7f1:	8b ec                	mov    %esp,%ebp
41d7f3:	83 c4 ec             	add    $0xffffffec,%esp
41d7f6:	53                   	push   %ebx
41d7f7:	56                   	push   %esi
41d7f8:	57                   	push   %edi
41d7f9:	8b d8                	mov    %eax,%ebx
41d7fb:	e8 88 91 fe ff       	call   0x406988
41d800:	8b 15 08 d8 46 00    	mov    0x46d808,%edx
41d806:	3b 02                	cmp    (%edx),%eax
41d808:	74 29                	je     0x41d833
41d80a:	e8 79 91 fe ff       	call   0x406988
41d80f:	89 45 ec             	mov    %eax,-0x14(%ebp)
41d812:	c6 45 f0 00          	movb   $0x0,-0x10(%ebp)
41d816:	8d 45 ec             	lea    -0x14(%ebp),%eax
41d819:	50                   	push   %eax
41d81a:	6a 00                	push   $0x0
41d81c:	8b 0d 78 d6 46 00    	mov    0x46d678,%ecx
41d822:	b2 01                	mov    $0x1,%dl
41d824:	a1 d0 62 41 00       	mov    0x4162d0,%eax
41d829:	e8 06 eb fe ff       	call   0x40c334
41d82e:	e8 35 69 fe ff       	call   0x404168
41d833:	85 db                	test   %ebx,%ebx
41d835:	7e 09                	jle    0x41d840
41d837:	8b c3                	mov    %ebx,%eax
41d839:	e8 96 ff ff ff       	call   0x41d7d4
41d83e:	eb 05                	jmp    0x41d845
41d840:	e8 83 ff ff ff       	call   0x41d7c8
41d845:	33 c0                	xor    %eax,%eax
41d847:	89 45 f4             	mov    %eax,-0xc(%ebp)
41d84a:	68 e8 12 47 00       	push   $0x4712e8
41d84f:	e8 ec 90 fe ff       	call   0x406940
41d854:	33 c0                	xor    %eax,%eax
41d856:	55                   	push   %ebp
41d857:	68 b5 d9 41 00       	push   $0x41d9b5
41d85c:	64 ff 30             	push   %fs:(%eax)
41d85f:	64 89 20             	mov    %esp,%fs:(%eax)
41d862:	8b 45 f4             	mov    -0xc(%ebp),%eax
41d865:	50                   	push   %eax
41d866:	68 e8 0a 46 00       	push   $0x460ae8
41d86b:	e8 f8 90 fe ff       	call   0x406968
41d870:	89 45 f4             	mov    %eax,-0xc(%ebp)
41d873:	33 c0                	xor    %eax,%eax
41d875:	55                   	push   %ebp
41d876:	68 96 d9 41 00       	push   $0x41d996
41d87b:	64 ff 30             	push   %fs:(%eax)
41d87e:	64 89 20             	mov    %esp,%fs:(%eax)
41d881:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41d885:	74 09                	je     0x41d890
41d887:	8b 45 f4             	mov    -0xc(%ebp),%eax
41d88a:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
41d88e:	7f 04                	jg     0x41d894
41d890:	33 c0                	xor    %eax,%eax
41d892:	eb 02                	jmp    0x41d896
41d894:	b0 01                	mov    $0x1,%al
41d896:	88 45 ff             	mov    %al,-0x1(%ebp)
41d899:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
41d89d:	0f 84 dd 00 00 00    	je     0x41d980
41d8a3:	e9 cb 00 00 00       	jmp    0x41d973
41d8a8:	33 d2                	xor    %edx,%edx
41d8aa:	8b 45 f4             	mov    -0xc(%ebp),%eax
41d8ad:	e8 be a2 ff ff       	call   0x417b70
41d8b2:	89 45 f8             	mov    %eax,-0x8(%ebp)
41d8b5:	33 d2                	xor    %edx,%edx
41d8b7:	8b 45 f4             	mov    -0xc(%ebp),%eax
41d8ba:	e8 9d a1 ff ff       	call   0x417a5c
41d8bf:	68 e8 12 47 00       	push   $0x4712e8
41d8c4:	e8 87 91 fe ff       	call   0x406a50
41d8c9:	33 c0                	xor    %eax,%eax
41d8cb:	55                   	push   %ebp
41d8cc:	68 39 d9 41 00       	push   $0x41d939
41d8d1:	64 ff 30             	push   %fs:(%eax)
41d8d4:	64 89 20             	mov    %esp,%fs:(%eax)
41d8d7:	33 c0                	xor    %eax,%eax
41d8d9:	55                   	push   %ebp
41d8da:	68 fa d8 41 00       	push   $0x41d8fa
41d8df:	64 ff 30             	push   %fs:(%eax)
41d8e2:	64 89 20             	mov    %esp,%fs:(%eax)
41d8e5:	8b 45 f8             	mov    -0x8(%ebp),%eax
41d8e8:	8b 18                	mov    (%eax),%ebx
41d8ea:	8b 43 0c             	mov    0xc(%ebx),%eax
41d8ed:	ff 53 08             	call   *0x8(%ebx)
41d8f0:	33 c0                	xor    %eax,%eax
41d8f2:	5a                   	pop    %edx
41d8f3:	59                   	pop    %ecx
41d8f4:	59                   	pop    %ecx
41d8f5:	64 89 10             	mov    %edx,%fs:(%eax)
41d8f8:	eb 27                	jmp    0x41d921
41d8fa:	e9 d5 64 fe ff       	jmp    0x403dd4
41d8ff:	8b 45 f8             	mov    -0x8(%ebp),%eax
41d902:	80 78 04 00          	cmpb   $0x0,0x4(%eax)
41d906:	75 0f                	jne    0x41d917
41d908:	e8 a3 54 fe ff       	call   0x402db0