449454:	33 c9                	xor    %ecx,%ecx
449456:	33 db                	xor    %ebx,%ebx
449458:	8a 5d ff             	mov    -0x1(%ebp),%bl
44945b:	83 fb 06             	cmp    $0x6,%ebx
44945e:	77 72                	ja     0x4494d2
449460:	ff 24 9d 67 94 44 00 	jmp    *0x449467(,%ebx,4)
449467:	d2 94 44 00 83 94 44 	rclb   %cl,0x44948300(%esp,%eax,2)
44946e:	00 8e 94 44 00 a1    	add    %cl,-0x5effbb6c(%esi)
449474:	94                   	xchg   %eax,%esp
449475:	44                   	inc    %esp
449476:	00 ac 94 44 00 d2 94 	add    %ch,-0x6b2dffbc(%esp,%edx,4)
44947d:	44                   	inc    %esp
44947e:	00 bf 94 44 00 8b    	add    %bh,-0x74ffbb6c(%edi)
449484:	52                   	push   %edx
449485:	44                   	inc    %esp
449486:	3b 50 44             	cmp    0x44(%eax),%edx
449489:	0f 9f c1             	setg   %cl
44948c:	eb 44                	jmp    0x4494d2
44948e:	8b 4a 44             	mov    0x44(%edx),%ecx
449491:	03 4a 4c             	add    0x4c(%edx),%ecx
449494:	8b 50 44             	mov    0x44(%eax),%edx
449497:	03 50 4c             	add    0x4c(%eax),%edx
44949a:	3b ca                	cmp    %edx,%ecx
44949c:	0f 9e c1             	setle  %cl
44949f:	eb 31                	jmp    0x4494d2
4494a1:	8b 52 40             	mov    0x40(%edx),%edx
4494a4:	3b 50 40             	cmp    0x40(%eax),%edx
4494a7:	0f 9f c1             	setg   %cl
4494aa:	eb 26                	jmp    0x4494d2
4494ac:	8b 4a 40             	mov    0x40(%edx),%ecx
4494af:	03 4a 48             	add    0x48(%edx),%ecx
4494b2:	8b 50 40             	mov    0x40(%eax),%edx
4494b5:	03 50 48             	add    0x48(%eax),%edx
4494b8:	3b ca                	cmp    %edx,%ecx
4494ba:	0f 9e c1             	setle  %cl
4494bd:	eb 13                	jmp    0x4494d2
4494bf:	8b 4d 08             	mov    0x8(%ebp),%ecx
4494c2:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4494c5:	91                   	xchg   %eax,%ecx
4494c6:	87 d1                	xchg   %edx,%ecx
4494c8:	8b 18                	mov    (%eax),%ebx
4494ca:	ff 93 a4 00 00 00    	call   *0xa4(%ebx)
4494d0:	8b c8                	mov    %eax,%ecx
4494d2:	8b c1                	mov    %ecx,%eax
4494d4:	5b                   	pop    %ebx
4494d5:	59                   	pop    %ecx
4494d6:	5d                   	pop    %ebp
4494d7:	c3                   	ret
4494d8:	55                   	push   %ebp
4494d9:	8b ec                	mov    %esp,%ebp
4494db:	83 c4 c0             	add    $0xffffffc0,%esp
4494de:	53                   	push   %ebx
4494df:	56                   	push   %esi
4494e0:	57                   	push   %edi
4494e1:	8b f1                	mov    %ecx,%esi
4494e3:	8d 7d d0             	lea    -0x30(%ebp),%edi
4494e6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4494e7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4494e8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4494e9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4494ea:	88 55 fb             	mov    %dl,-0x5(%ebp)
4494ed:	89 45 fc             	mov    %eax,-0x4(%ebp)
4494f0:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
4494f4:	74 17                	je     0x44950d
4494f6:	33 c0                	xor    %eax,%eax
4494f8:	8a 45 fb             	mov    -0x5(%ebp),%al
4494fb:	8a 80 78 9b 46 00    	mov    0x469b78(%eax),%al
449501:	8b 55 fc             	mov    -0x4(%ebp),%edx
449504:	3a 42 61             	cmp    0x61(%edx),%al
449507:	0f 84 d5 01 00 00    	je     0x4496e2
44950d:	8b 45 fc             	mov    -0x4(%ebp),%eax
449510:	83 b8 90 00 00 00 00 	cmpl   $0x0,0x90(%eax)
449517:	0f 84 bb 01 00 00    	je     0x4496d8
44951d:	8b 45 fc             	mov    -0x4(%ebp),%eax
449520:	83 b8 94 00 00 00 00 	cmpl   $0x0,0x94(%eax)
449527:	0f 84 ab 01 00 00    	je     0x4496d8
44952d:	8b 45 fc             	mov    -0x4(%ebp),%eax
449530:	8b 40 40             	mov    0x40(%eax),%eax
449533:	89 45 f4             	mov    %eax,-0xc(%ebp)
449536:	8b 45 fc             	mov    -0x4(%ebp),%eax
449539:	8b 40 44             	mov    0x44(%eax),%eax
44953c:	89 45 f0             	mov    %eax,-0x10(%ebp)
44953f:	8b 45 fc             	mov    -0x4(%ebp),%eax
449542:	8b 40 48             	mov    0x48(%eax),%eax
449545:	89 45 ec             	mov    %eax,-0x14(%ebp)
449548:	8b 45 fc             	mov    -0x4(%ebp),%eax
44954b:	8b 40 4c             	mov    0x4c(%eax),%eax
44954e:	89 45 e8             	mov    %eax,-0x18(%ebp)
449551:	8b 45 fc             	mov    -0x4(%ebp),%eax
449554:	8b 40 30             	mov    0x30(%eax),%eax
449557:	e8 84 41 00 00       	call   0x44d6e0
44955c:	84 c0                	test   %al,%al
44955e:	74 1c                	je     0x44957c
449560:	8d 55 c0             	lea    -0x40(%ebp),%edx
449563:	8b 45 fc             	mov    -0x4(%ebp),%eax
449566:	8b 40 30             	mov    0x30(%eax),%eax
449569:	8b 08                	mov    (%eax),%ecx
44956b:	ff 51 44             	call   *0x44(%ecx)
44956e:	8b 45 c8             	mov    -0x38(%ebp),%eax
449571:	89 45 e0             	mov    %eax,-0x20(%ebp)
449574:	8b 45 cc             	mov    -0x34(%ebp),%eax
449577:	89 45 e4             	mov    %eax,-0x1c(%ebp)
44957a:	eb 14                	jmp    0x449590
44957c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44957f:	8b 45 fc             	mov    -0x4(%ebp),%eax
449582:	8b 58 30             	mov    0x30(%eax),%ebx
449585:	8b 53 4c             	mov    0x4c(%ebx),%edx
449588:	8b 43 48             	mov    0x48(%ebx),%eax
44958b:	e8 5c db fc ff       	call   0x4170ec
449590:	8b 45 fc             	mov    -0x4(%ebp),%eax
449593:	f6 40 61 04          	testb  $0x4,0x61(%eax)
449597:	74 41                	je     0x4495da
449599:	8b 45 fc             	mov    -0x4(%ebp),%eax
44959c:	f6 40 61 01          	testb  $0x1,0x61(%eax)
4495a0:	74 1c                	je     0x4495be
4495a2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495a5:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
4495ab:	8b 55 fc             	mov    -0x4(%ebp),%edx
4495ae:	2b 82 88 00 00 00    	sub    0x88(%edx),%eax
4495b4:	8b 55 e0             	mov    -0x20(%ebp),%edx
4495b7:	2b d0                	sub    %eax,%edx
4495b9:	89 55 ec             	mov    %edx,-0x14(%ebp)
4495bc:	eb 51                	jmp    0x44960f
4495be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495c1:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
4495c7:	8b 55 fc             	mov    -0x4(%ebp),%edx
4495ca:	2b 82 88 00 00 00    	sub    0x88(%edx),%eax
4495d0:	8b 55 e0             	mov    -0x20(%ebp),%edx
4495d3:	2b d0                	sub    %eax,%edx
4495d5:	89 55 f4             	mov    %edx,-0xc(%ebp)
4495d8:	eb 35                	jmp    0x44960f
4495da:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495dd:	f6 40 61 01          	testb  $0x1,0x61(%eax)
4495e1:	75 2c                	jne    0x44960f
4495e3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495e6:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
4495ec:	50                   	push   %eax
4495ed:	8b 45 e0             	mov    -0x20(%ebp),%eax
4495f0:	50                   	push   %eax
4495f1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495f4:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
4495fa:	50                   	push   %eax
4495fb:	e8 2c ce fb ff       	call   0x40642c
449600:	8b 55 ec             	mov    -0x14(%ebp),%edx
449603:	d1 fa                	sar    $1,%edx
449605:	79 03                	jns    0x44960a
449607:	83 d2 00             	adc    $0x0,%edx
44960a:	2b c2                	sub    %edx,%eax
44960c:	89 45 f4             	mov    %eax,-0xc(%ebp)
44960f:	8b 45 fc             	mov    -0x4(%ebp),%eax
449612:	f6 40 61 08          	testb  $0x8,0x61(%eax)
449616:	74 41                	je     0x449659
449618:	8b 45 fc             	mov    -0x4(%ebp),%eax
44961b:	f6 40 61 02          	testb  $0x2,0x61(%eax)
44961f:	74 1c                	je     0x44963d
449621:	8b 45 fc             	mov    -0x4(%ebp),%eax
449624:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
44962a:	8b 55 fc             	mov    -0x4(%ebp),%edx
44962d:	2b 82 8c 00 00 00    	sub    0x8c(%edx),%eax
449633:	8b 55 e4             	mov    -0x1c(%ebp),%edx
449636:	2b d0                	sub    %eax,%edx
449638:	89 55 e8             	mov    %edx,-0x18(%ebp)
44963b:	eb 51                	jmp    0x44968e
44963d:	8b 45 fc             	mov    -0x4(%ebp),%eax
449640:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
449646:	8b 55 fc             	mov    -0x4(%ebp),%edx
449649:	2b 82 8c 00 00 00    	sub    0x8c(%edx),%eax
44964f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
449652:	2b d0                	sub    %eax,%edx
449654:	89 55 f0             	mov    %edx,-0x10(%ebp)
449657:	eb 35                	jmp    0x44968e
449659:	8b 45 fc             	mov    -0x4(%ebp),%eax
44965c:	f6 40 61 02          	testb  $0x2,0x61(%eax)
449660:	75 2c                	jne    0x44968e
449662:	8b 45 fc             	mov    -0x4(%ebp),%eax
449665:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
44966b:	50                   	push   %eax
44966c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44966f:	50                   	push   %eax
449670:	8b 45 fc             	mov    -0x4(%ebp),%eax
449673:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
449679:	50                   	push   %eax
44967a:	e8 ad cd fb ff       	call   0x40642c
44967f:	8b 55 e8             	mov    -0x18(%ebp),%edx
449682:	d1 fa                	sar    $1,%edx
449684:	79 03                	jns    0x449689
449686:	83 d2 00             	adc    $0x0,%edx
449689:	2b c2                	sub    %edx,%eax
44968b:	89 45 f0             	mov    %eax,-0x10(%ebp)
44968e:	8b 45 fc             	mov    -0x4(%ebp),%eax
449691:	c6 40 62 01          	movb   $0x1,0x62(%eax)
449695:	33 c0                	xor    %eax,%eax
449697:	55                   	push   %ebp
449698:	68 d1 96 44 00       	push   $0x4496d1
44969d:	64 ff 30             	push   %fs:(%eax)
4496a0:	64 89 20             	mov    %esp,%fs:(%eax)
4496a3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4496a6:	50                   	push   %eax
4496a7:	8b 45 e8             	mov    -0x18(%ebp),%eax
4496aa:	50                   	push   %eax
4496ab:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4496ae:	8b 55 f4             	mov    -0xc(%ebp),%edx
4496b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496b4:	8b 18                	mov    (%eax),%ebx
4496b6:	ff 93 84 00 00 00    	call   *0x84(%ebx)
4496bc:	33 c0                	xor    %eax,%eax
4496be:	5a                   	pop    %edx
4496bf:	59                   	pop    %ecx
4496c0:	59                   	pop    %ecx
4496c1:	64 89 10             	mov    %edx,%fs:(%eax)
4496c4:	68 d8 96 44 00       	push   $0x4496d8
4496c9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496cc:	c6 40 62 00          	movb   $0x0,0x62(%eax)
4496d0:	c3                   	ret
4496d1:	e9 7e a3 fb ff       	jmp    0x403a54
4496d6:	eb f1                	jmp    0x4496c9
4496d8:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
4496dc:	0f 84 2c 02 00 00    	je     0x44990e
4496e2:	8b 45 08             	mov    0x8(%ebp),%eax
4496e5:	8b 40 f8             	mov    -0x8(%eax),%eax
4496e8:	8b 40 08             	mov    0x8(%eax),%eax
4496eb:	8b 55 08             	mov    0x8(%ebp),%edx
4496ee:	8b 52 f8             	mov    -0x8(%edx),%edx
4496f1:	2b 02                	sub    (%edx),%eax
4496f3:	89 45 ec             	mov    %eax,-0x14(%ebp)
4496f6:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4496fa:	7c 0d                	jl     0x449709
4496fc:	8a 45 fb             	mov    -0x5(%ebp),%al
4496ff:	04 fd                	add    $0xfd,%al
449701:	2c 02                	sub    $0x2,%al
449703:	72 04                	jb     0x449709
449705:	2c 01                	sub    $0x1,%al
449707:	75 09                	jne    0x449712
449709:	8b 45 fc             	mov    -0x4(%ebp),%eax
44970c:	8b 40 48             	mov    0x48(%eax),%eax
44970f:	89 45 ec             	mov    %eax,-0x14(%ebp)
449712:	8b 45 08             	mov    0x8(%ebp),%eax
449715:	8b 40 f8             	mov    -0x8(%eax),%eax
449718:	8b 40 0c             	mov    0xc(%eax),%eax
44971b:	8b 55 08             	mov    0x8(%ebp),%edx
44971e:	8b 52 f8             	mov    -0x8(%edx),%edx
449721:	2b 42 04             	sub    0x4(%edx),%eax
449724:	89 45 e8             	mov    %eax,-0x18(%ebp)
449727:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
44972b:	7c 0c                	jl     0x449739
44972d:	8a 45 fb             	mov    -0x5(%ebp),%al
449730:	48                   	dec    %eax
449731:	2c 02                	sub    $0x2,%al
449733:	72 04                	jb     0x449739
449735:	2c 03                	sub    $0x3,%al
449737:	75 09                	jne    0x449742
449739:	8b 45 fc             	mov    -0x4(%ebp),%eax
44973c:	8b 40 4c             	mov    0x4c(%eax),%eax
44973f:	89 45 e8             	mov    %eax,-0x18(%ebp)
449742:	8b 45 08             	mov    0x8(%ebp),%eax
449745:	8b 40 f8             	mov    -0x8(%eax),%eax
449748:	8b 00                	mov    (%eax),%eax
44974a:	89 45 f4             	mov    %eax,-0xc(%ebp)
44974d:	8b 45 08             	mov    0x8(%ebp),%eax
449750:	8b 40 f8             	mov    -0x8(%eax),%eax
449753:	8b 40 04             	mov    0x4(%eax),%eax
449756:	89 45 f0             	mov    %eax,-0x10(%ebp)
449759:	33 c0                	xor    %eax,%eax
44975b:	8a 45 fb             	mov    -0x5(%ebp),%al
44975e:	83 f8 06             	cmp    $0x6,%eax
449761:	0f 87 af 00 00 00    	ja     0x449816
449767:	ff 24 85 6e 97 44 00 	jmp    *0x44976e(,%eax,4)
44976e:	16                   	push   %ss
44976f:	98                   	cwtl
449770:	44                   	inc    %esp
449771:	00 8a 97 44 00 98    	add    %cl,-0x67ffbb69(%edx)
449777:	97                   	xchg   %eax,%edi
449778:	44                   	inc    %esp
449779:	00 b2 97 44 00 bf    	add    %dh,-0x40ffbb69(%edx)
44977f:	97                   	xchg   %eax,%edi
449780:	44                   	inc    %esp
449781:	00 16                	add    %dl,(%esi)
449783:	98                   	cwtl
449784:	44                   	inc    %esp
449785:	00 d9                	add    %bl,%cl
449787:	97                   	xchg   %eax,%edi
449788:	44                   	inc    %esp
449789:	00 8b 45 08 8b 40    	add    %cl,0x408b0845(%ebx)
44978f:	f8                   	clc
449790:	8b 55 e8             	mov    -0x18(%ebp),%edx
449793:	01 50 04             	add    %edx,0x4(%eax)
449796:	eb 7e                	jmp    0x449816
449798:	8b 45 08             	mov    0x8(%ebp),%eax
44979b:	8b 40 f8             	mov    -0x8(%eax),%eax
44979e:	8b 55 e8             	mov    -0x18(%ebp),%edx
4497a1:	29 50 0c             	sub    %edx,0xc(%eax)
4497a4:	8b 45 08             	mov    0x8(%ebp),%eax
4497a7:	8b 40 f8             	mov    -0x8(%eax),%eax
4497aa:	8b 40 0c             	mov    0xc(%eax),%eax
4497ad:	89 45 f0             	mov    %eax,-0x10(%ebp)
4497b0:	eb 64                	jmp    0x449816
4497b2:	8b 45 08             	mov    0x8(%ebp),%eax
4497b5:	8b 40 f8             	mov    -0x8(%eax),%eax
4497b8:	8b 55 ec             	mov    -0x14(%ebp),%edx
4497bb:	01 10                	add    %edx,(%eax)
4497bd:	eb 57                	jmp    0x449816
4497bf:	8b 45 08             	mov    0x8(%ebp),%eax
4497c2:	8b 40 f8             	mov    -0x8(%eax),%eax
4497c5:	8b 55 ec             	mov    -0x14(%ebp),%edx
4497c8:	29 50 08             	sub    %edx,0x8(%eax)
4497cb:	8b 45 08             	mov    0x8(%ebp),%eax
4497ce:	8b 40 f8             	mov    -0x8(%eax),%eax
4497d1:	8b 40 08             	mov    0x8(%eax),%eax
4497d4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4497d7:	eb 3d                	jmp    0x449816
4497d9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4497dc:	8b 40 40             	mov    0x40(%eax),%eax
4497df:	89 45 f4             	mov    %eax,-0xc(%ebp)
4497e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4497e5:	8b 40 44             	mov    0x44(%eax),%eax
4497e8:	89 45 f0             	mov    %eax,-0x10(%ebp)
4497eb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4497ee:	50                   	push   %eax
4497ef:	8d 45 ec             	lea    -0x14(%ebp),%eax
4497f2:	50                   	push   %eax
4497f3:	8d 45 e8             	lea    -0x18(%ebp),%eax
4497f6:	50                   	push   %eax
4497f7:	8b 45 08             	mov    0x8(%ebp),%eax
4497fa:	8b 40 f8             	mov    -0x8(%eax),%eax
4497fd:	50                   	push   %eax
4497fe:	8d 45 d0             	lea    -0x30(%ebp),%eax
449801:	50                   	push   %eax
449802:	8d 4d f4             	lea    -0xc(%ebp),%ecx
449805:	8b 45 08             	mov    0x8(%ebp),%eax
449808:	8b 40 fc             	mov    -0x4(%eax),%eax
44980b:	8b 55 fc             	mov    -0x4(%ebp),%edx
44980e:	8b 18                	mov    (%eax),%ebx
449810:	ff 93 a8 00 00 00    	call   *0xa8(%ebx)
449816:	8b 45 fc             	mov    -0x4(%ebp),%eax
449819:	c6 40 62 01          	movb   $0x1,0x62(%eax)
44981d:	33 c0                	xor    %eax,%eax
44981f:	55                   	push   %ebp
449820:	68 59 98 44 00       	push   $0x449859
449825:	64 ff 30             	push   %fs:(%eax)
449828:	64 89 20             	mov    %esp,%fs:(%eax)
44982b:	8b 45 ec             	mov    -0x14(%ebp),%eax
44982e:	50                   	push   %eax
44982f:	8b 45 e8             	mov    -0x18(%ebp),%eax
449832:	50                   	push   %eax
449833:	8b 4d f0             	mov    -0x10(%ebp),%ecx
449836:	8b 55 f4             	mov    -0xc(%ebp),%edx
449839:	8b 45 fc             	mov    -0x4(%ebp),%eax
44983c:	8b 18                	mov    (%eax),%ebx
44983e:	ff 93 84 00 00 00    	call   *0x84(%ebx)
449844:	33 c0                	xor    %eax,%eax