4ac479:	83 f9 01             	cmp    $0x1,%ecx
4ac47c:	75 08                	jne    0x4ac486
4ac47e:	dd 05 a0 a4 50 00    	fldl   0x50a4a0
4ac484:	eb 02                	jmp    0x4ac488
4ac486:	d9 ee                	fldz
4ac488:	dd 5d 10             	fstpl  0x10(%ebp)
4ac48b:	dd 45 10             	fldl   0x10(%ebp)
4ac48e:	eb 02                	jmp    0x4ac492
4ac490:	d9 e8                	fld1
4ac492:	8b 45 18             	mov    0x18(%ebp),%eax
4ac495:	dd 18                	fstpl  (%eax)
4ac497:	8b c6                	mov    %esi,%eax
4ac499:	5e                   	pop    %esi
4ac49a:	c9                   	leave
4ac49b:	c3                   	ret
4ac49c:	55                   	push   %ebp
4ac49d:	8b ec                	mov    %esp,%ebp
4ac49f:	51                   	push   %ecx
4ac4a0:	51                   	push   %ecx
4ac4a1:	dd 45 08             	fldl   0x8(%ebp)
4ac4a4:	51                   	push   %ecx
4ac4a5:	51                   	push   %ecx
4ac4a6:	dd 1c 24             	fstpl  (%esp)
4ac4a9:	e8 a5 e7 ff ff       	call   0x4aac53
4ac4ae:	59                   	pop    %ecx
4ac4af:	a8 90                	test   $0x90,%al
4ac4b1:	59                   	pop    %ecx
4ac4b2:	75 49                	jne    0x4ac4fd
4ac4b4:	dd 45 08             	fldl   0x8(%ebp)
4ac4b7:	51                   	push   %ecx
4ac4b8:	51                   	push   %ecx
4ac4b9:	dd 1c 24             	fstpl  (%esp)
4ac4bc:	e8 a7 e0 ff ff       	call   0x4aa568
4ac4c1:	dd 5d f8             	fstpl  -0x8(%ebp)
4ac4c4:	dd 45 f8             	fldl   -0x8(%ebp)
4ac4c7:	dc 5d 08             	fcompl 0x8(%ebp)
4ac4ca:	59                   	pop    %ecx
4ac4cb:	59                   	pop    %ecx
4ac4cc:	df e0                	fnstsw %ax
4ac4ce:	9e                   	sahf
4ac4cf:	75 2c                	jne    0x4ac4fd
4ac4d1:	dd 45 08             	fldl   0x8(%ebp)
4ac4d4:	dc 35 f8 3a 4b 00    	fdivl  0x4b3af8
4ac4da:	51                   	push   %ecx
4ac4db:	51                   	push   %ecx
4ac4dc:	dd 5d 08             	fstpl  0x8(%ebp)
4ac4df:	dd 45 08             	fldl   0x8(%ebp)
4ac4e2:	dd 1c 24             	fstpl  (%esp)
4ac4e5:	e8 7e e0 ff ff       	call   0x4aa568
4ac4ea:	dc 5d 08             	fcompl 0x8(%ebp)
4ac4ed:	59                   	pop    %ecx
4ac4ee:	59                   	pop    %ecx
4ac4ef:	df e0                	fnstsw %ax
4ac4f1:	9e                   	sahf
4ac4f2:	75 04                	jne    0x4ac4f8
4ac4f4:	6a 02                	push   $0x2
4ac4f6:	eb 02                	jmp    0x4ac4fa
4ac4f8:	6a 01                	push   $0x1
4ac4fa:	58                   	pop    %eax
4ac4fb:	c9                   	leave
4ac4fc:	c3                   	ret
4ac4fd:	33 c0                	xor    %eax,%eax
4ac4ff:	c9                   	leave
4ac500:	c3                   	ret
4ac501:	68 40 01 00 00       	push   $0x140
4ac506:	6a 00                	push   $0x0
4ac508:	ff 35 60 df 51 00    	push   0x51df60
4ac50e:	ff 15 88 30 4b 00    	call   *0x4b3088
4ac514:	85 c0                	test   %eax,%eax
4ac516:	a3 58 df 51 00       	mov    %eax,0x51df58
4ac51b:	75 01                	jne    0x4ac51e
4ac51d:	c3                   	ret
4ac51e:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4ac522:	83 25 50 df 51 00 00 	andl   $0x0,0x51df50
4ac529:	83 25 54 df 51 00 00 	andl   $0x0,0x51df54
4ac530:	6a 01                	push   $0x1
4ac532:	a3 4c df 51 00       	mov    %eax,0x51df4c
4ac537:	89 0d 5c df 51 00    	mov    %ecx,0x51df5c
4ac53d:	c7 05 44 df 51 00 10 	movl   $0x10,0x51df44
4ac544:	00 00 00
4ac547:	58                   	pop    %eax
4ac548:	c3                   	ret
4ac549:	a1 54 df 51 00       	mov    0x51df54,%eax
4ac54e:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
4ac551:	a1 58 df 51 00       	mov    0x51df58,%eax
4ac556:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
4ac559:	3b c1                	cmp    %ecx,%eax
4ac55b:	73 14                	jae    0x4ac571
4ac55d:	8b 54 24 04          	mov    0x4(%esp),%edx
4ac561:	2b 50 0c             	sub    0xc(%eax),%edx
4ac564:	81 fa 00 00 10 00    	cmp    $0x100000,%edx
4ac56a:	72 07                	jb     0x4ac573
4ac56c:	83 c0 14             	add    $0x14,%eax
4ac56f:	eb e8                	jmp    0x4ac559
4ac571:	33 c0                	xor    %eax,%eax
4ac573:	c3                   	ret
4ac574:	55                   	push   %ebp
4ac575:	8b ec                	mov    %esp,%ebp
4ac577:	83 ec 10             	sub    $0x10,%esp
4ac57a:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac57d:	53                   	push   %ebx
4ac57e:	56                   	push   %esi
4ac57f:	8b 75 0c             	mov    0xc(%ebp),%esi
4ac582:	8b 41 10             	mov    0x10(%ecx),%eax
4ac585:	57                   	push   %edi
4ac586:	8b fe                	mov    %esi,%edi
4ac588:	83 c6 fc             	add    $0xfffffffc,%esi
4ac58b:	2b 79 0c             	sub    0xc(%ecx),%edi
4ac58e:	c1 ef 0f             	shr    $0xf,%edi
4ac591:	8b cf                	mov    %edi,%ecx
4ac593:	69 c9 04 02 00 00    	imul   $0x204,%ecx,%ecx
4ac599:	8d 8c 01 44 01 00 00 	lea    0x144(%ecx,%eax,1),%ecx
4ac5a0:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4ac5a3:	8b 0e                	mov    (%esi),%ecx
4ac5a5:	49                   	dec    %ecx
4ac5a6:	f6 c1 01             	test   $0x1,%cl
4ac5a9:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ac5ac:	0f 85 e6 02 00 00    	jne    0x4ac898
4ac5b2:	8b 14 31             	mov    (%ecx,%esi,1),%edx
4ac5b5:	8d 1c 31             	lea    (%ecx,%esi,1),%ebx
4ac5b8:	89 55 f4             	mov    %edx,-0xc(%ebp)
4ac5bb:	8b 56 fc             	mov    -0x4(%esi),%edx
4ac5be:	89 55 f8             	mov    %edx,-0x8(%ebp)
4ac5c1:	8b 55 f4             	mov    -0xc(%ebp),%edx
4ac5c4:	f6 c2 01             	test   $0x1,%dl
4ac5c7:	89 5d 0c             	mov    %ebx,0xc(%ebp)
4ac5ca:	75 7e                	jne    0x4ac64a
4ac5cc:	c1 fa 04             	sar    $0x4,%edx
4ac5cf:	4a                   	dec    %edx
4ac5d0:	83 fa 3f             	cmp    $0x3f,%edx
4ac5d3:	76 03                	jbe    0x4ac5d8
4ac5d5:	6a 3f                	push   $0x3f
4ac5d7:	5a                   	pop    %edx
4ac5d8:	8b 4b 04             	mov    0x4(%ebx),%ecx
4ac5db:	3b 4b 08             	cmp    0x8(%ebx),%ecx
4ac5de:	75 4c                	jne    0x4ac62c
4ac5e0:	83 fa 20             	cmp    $0x20,%edx
4ac5e3:	73 1e                	jae    0x4ac603
4ac5e5:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ac5ea:	8b ca                	mov    %edx,%ecx
4ac5ec:	d3 eb                	shr    %cl,%ebx
4ac5ee:	8d 4c 02 04          	lea    0x4(%edx,%eax,1),%ecx
4ac5f2:	f7 d3                	not    %ebx
4ac5f4:	21 5c b8 44          	and    %ebx,0x44(%eax,%edi,4)
4ac5f8:	fe 09                	decb   (%ecx)
4ac5fa:	75 28                	jne    0x4ac624
4ac5fc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac5ff:	21 19                	and    %ebx,(%ecx)
4ac601:	eb 21                	jmp    0x4ac624
4ac603:	8d 4a e0             	lea    -0x20(%edx),%ecx
4ac606:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ac60b:	d3 eb                	shr    %cl,%ebx
4ac60d:	8d 4c 02 04          	lea    0x4(%edx,%eax,1),%ecx
4ac611:	f7 d3                	not    %ebx
4ac613:	21 9c b8 c4 00 00 00 	and    %ebx,0xc4(%eax,%edi,4)
4ac61a:	fe 09                	decb   (%ecx)
4ac61c:	75 06                	jne    0x4ac624
4ac61e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac621:	21 59 04             	and    %ebx,0x4(%ecx)
4ac624:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ac627:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4ac62a:	eb 03                	jmp    0x4ac62f
4ac62c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ac62f:	8b 53 08             	mov    0x8(%ebx),%edx
4ac632:	8b 5b 04             	mov    0x4(%ebx),%ebx
4ac635:	03 4d f4             	add    -0xc(%ebp),%ecx
4ac638:	89 5a 04             	mov    %ebx,0x4(%edx)
4ac63b:	8b 55 0c             	mov    0xc(%ebp),%edx
4ac63e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ac641:	8b 5a 04             	mov    0x4(%edx),%ebx
4ac644:	8b 52 08             	mov    0x8(%edx),%edx
4ac647:	89 53 08             	mov    %edx,0x8(%ebx)
4ac64a:	8b d1                	mov    %ecx,%edx
4ac64c:	c1 fa 04             	sar    $0x4,%edx
4ac64f:	4a                   	dec    %edx
4ac650:	83 fa 3f             	cmp    $0x3f,%edx
4ac653:	76 03                	jbe    0x4ac658
4ac655:	6a 3f                	push   $0x3f
4ac657:	5a                   	pop    %edx
4ac658:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4ac65b:	83 e3 01             	and    $0x1,%ebx
4ac65e:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4ac661:	0f 85 94 00 00 00    	jne    0x4ac6fb
4ac667:	2b 75 f8             	sub    -0x8(%ebp),%esi
4ac66a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4ac66d:	c1 fb 04             	sar    $0x4,%ebx
4ac670:	6a 3f                	push   $0x3f
4ac672:	89 75 0c             	mov    %esi,0xc(%ebp)
4ac675:	4b                   	dec    %ebx
4ac676:	5e                   	pop    %esi
4ac677:	3b de                	cmp    %esi,%ebx
4ac679:	76 02                	jbe    0x4ac67d
4ac67b:	8b de                	mov    %esi,%ebx
4ac67d:	03 4d f8             	add    -0x8(%ebp),%ecx
4ac680:	8b d1                	mov    %ecx,%edx
4ac682:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ac685:	c1 fa 04             	sar    $0x4,%edx
4ac688:	4a                   	dec    %edx
4ac689:	3b d6                	cmp    %esi,%edx
4ac68b:	76 02                	jbe    0x4ac68f
4ac68d:	8b d6                	mov    %esi,%edx
4ac68f:	3b da                	cmp    %edx,%ebx
4ac691:	74 63                	je     0x4ac6f6
4ac693:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4ac696:	8b 71 04             	mov    0x4(%ecx),%esi
4ac699:	3b 71 08             	cmp    0x8(%ecx),%esi
4ac69c:	75 40                	jne    0x4ac6de
4ac69e:	83 fb 20             	cmp    $0x20,%ebx
4ac6a1:	73 1c                	jae    0x4ac6bf
4ac6a3:	be 00 00 00 80       	mov    $0x80000000,%esi
4ac6a8:	8b cb                	mov    %ebx,%ecx
4ac6aa:	d3 ee                	shr    %cl,%esi
4ac6ac:	f7 d6                	not    %esi
4ac6ae:	21 74 b8 44          	and    %esi,0x44(%eax,%edi,4)
4ac6b2:	fe 4c 03 04          	decb   0x4(%ebx,%eax,1)
4ac6b6:	75 26                	jne    0x4ac6de
4ac6b8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac6bb:	21 31                	and    %esi,(%ecx)
4ac6bd:	eb 1f                	jmp    0x4ac6de
4ac6bf:	8d 4b e0             	lea    -0x20(%ebx),%ecx
4ac6c2:	be 00 00 00 80       	mov    $0x80000000,%esi
4ac6c7:	d3 ee                	shr    %cl,%esi
4ac6c9:	f7 d6                	not    %esi
4ac6cb:	21 b4 b8 c4 00 00 00 	and    %esi,0xc4(%eax,%edi,4)
4ac6d2:	fe 4c 03 04          	decb   0x4(%ebx,%eax,1)
4ac6d6:	75 06                	jne    0x4ac6de
4ac6d8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac6db:	21 71 04             	and    %esi,0x4(%ecx)
4ac6de:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4ac6e1:	8b 71 08             	mov    0x8(%ecx),%esi
4ac6e4:	8b 49 04             	mov    0x4(%ecx),%ecx
4ac6e7:	89 4e 04             	mov    %ecx,0x4(%esi)
4ac6ea:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4ac6ed:	8b 71 04             	mov    0x4(%ecx),%esi
4ac6f0:	8b 49 08             	mov    0x8(%ecx),%ecx
4ac6f3:	89 4e 08             	mov    %ecx,0x8(%esi)
4ac6f6:	8b 75 0c             	mov    0xc(%ebp),%esi
4ac6f9:	eb 03                	jmp    0x4ac6fe
4ac6fb:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ac6fe:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4ac702:	75 08                	jne    0x4ac70c
4ac704:	3b da                	cmp    %edx,%ebx
4ac706:	0f 84 81 00 00 00    	je     0x4ac78d
4ac70c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4ac70f:	8b 5c d1 04          	mov    0x4(%ecx,%edx,8),%ebx
4ac713:	8d 0c d1             	lea    (%ecx,%edx,8),%ecx
4ac716:	89 5e 04             	mov    %ebx,0x4(%esi)
4ac719:	89 4e 08             	mov    %ecx,0x8(%esi)
4ac71c:	89 71 04             	mov    %esi,0x4(%ecx)
4ac71f:	8b 4e 04             	mov    0x4(%esi),%ecx
4ac722:	89 71 08             	mov    %esi,0x8(%ecx)
4ac725:	8b 4e 04             	mov    0x4(%esi),%ecx
4ac728:	3b 4e 08             	cmp    0x8(%esi),%ecx
4ac72b:	75 60                	jne    0x4ac78d
4ac72d:	8a 4c 02 04          	mov    0x4(%edx,%eax,1),%cl
4ac731:	83 fa 20             	cmp    $0x20,%edx
4ac734:	88 4d 0f             	mov    %cl,0xf(%ebp)
4ac737:	fe c1                	inc    %cl
4ac739:	88 4c 02 04          	mov    %cl,0x4(%edx,%eax,1)
4ac73d:	73 25                	jae    0x4ac764
4ac73f:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
4ac743:	75 0e                	jne    0x4ac753
4ac745:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ac74a:	8b ca                	mov    %edx,%ecx
4ac74c:	d3 eb                	shr    %cl,%ebx
4ac74e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac751:	09 19                	or     %ebx,(%ecx)
4ac753:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ac758:	8b ca                	mov    %edx,%ecx
4ac75a:	d3 eb                	shr    %cl,%ebx
4ac75c:	8d 44 b8 44          	lea    0x44(%eax,%edi,4),%eax
4ac760:	09 18                	or     %ebx,(%eax)
4ac762:	eb 29                	jmp    0x4ac78d
4ac764:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
4ac768:	75 10                	jne    0x4ac77a
4ac76a:	8d 4a e0             	lea    -0x20(%edx),%ecx
4ac76d:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ac772:	d3 eb                	shr    %cl,%ebx
4ac774:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ac777:	09 59 04             	or     %ebx,0x4(%ecx)
4ac77a:	8d 4a e0             	lea    -0x20(%edx),%ecx
4ac77d:	ba 00 00 00 80       	mov    $0x80000000,%edx
4ac782:	d3 ea                	shr    %cl,%edx
4ac784:	8d 84 b8 c4 00 00 00 	lea    0xc4(%eax,%edi,4),%eax
4ac78b:	09 10                	or     %edx,(%eax)
4ac78d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ac790:	89 06                	mov    %eax,(%esi)
4ac792:	89 44 30 fc          	mov    %eax,-0x4(%eax,%esi,1)
4ac796:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ac799:	ff 08                	decl   (%eax)
4ac79b:	0f 85 f7 00 00 00    	jne    0x4ac898
4ac7a1:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac7a6:	85 c0                	test   %eax,%eax
4ac7a8:	0f 84 dc 00 00 00    	je     0x4ac88a
4ac7ae:	8b 0d 48 df 51 00    	mov    0x51df48,%ecx
4ac7b4:	8b 35 b0 31 4b 00    	mov    0x4b31b0,%esi
4ac7ba:	c1 e1 0f             	shl    $0xf,%ecx
4ac7bd:	03 48 0c             	add    0xc(%eax),%ecx
4ac7c0:	bb 00 80 00 00       	mov    $0x8000,%ebx
4ac7c5:	68 00 40 00 00       	push   $0x4000
4ac7ca:	53                   	push   %ebx
4ac7cb:	51                   	push   %ecx
4ac7cc:	ff d6                	call   *%esi
4ac7ce:	8b 0d 48 df 51 00    	mov    0x51df48,%ecx
4ac7d4:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac7d9:	ba 00 00 00 80       	mov    $0x80000000,%edx
4ac7de:	d3 ea                	shr    %cl,%edx
4ac7e0:	09 50 08             	or     %edx,0x8(%eax)
4ac7e3:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac7e8:	8b 0d 48 df 51 00    	mov    0x51df48,%ecx
4ac7ee:	8b 40 10             	mov    0x10(%eax),%eax
4ac7f1:	83 a4 88 c4 00 00 00 	andl   $0x0,0xc4(%eax,%ecx,4)
4ac7f8:	00
4ac7f9:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac7fe:	8b 40 10             	mov    0x10(%eax),%eax
4ac801:	fe 48 43             	decb   0x43(%eax)
4ac804:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac809:	8b 48 10             	mov    0x10(%eax),%ecx
4ac80c:	80 79 43 00          	cmpb   $0x0,0x43(%ecx)
4ac810:	75 09                	jne    0x4ac81b
4ac812:	83 60 04 fe          	andl   $0xfffffffe,0x4(%eax)
4ac816:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac81b:	83 78 08 ff          	cmpl   $0xffffffff,0x8(%eax)
4ac81f:	75 69                	jne    0x4ac88a
4ac821:	53                   	push   %ebx
4ac822:	6a 00                	push   $0x0
4ac824:	ff 70 0c             	push   0xc(%eax)
4ac827:	ff d6                	call   *%esi
4ac829:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac82e:	ff 70 10             	push   0x10(%eax)
4ac831:	6a 00                	push   $0x0
4ac833:	ff 35 60 df 51 00    	push   0x51df60
4ac839:	ff 15 90 31 4b 00    	call   *0x4b3190
4ac83f:	a1 54 df 51 00       	mov    0x51df54,%eax
4ac844:	8b 15 58 df 51 00    	mov    0x51df58,%edx
4ac84a:	8d 04 80             	lea    (%eax,%eax,4),%eax
4ac84d:	c1 e0 02             	shl    $0x2,%eax
4ac850:	8b c8                	mov    %eax,%ecx
4ac852:	a1 50 df 51 00       	mov    0x51df50,%eax
4ac857:	2b c8                	sub    %eax,%ecx
4ac859:	8d 4c 11 ec          	lea    -0x14(%ecx,%edx,1),%ecx
4ac85d:	51                   	push   %ecx
4ac85e:	8d 48 14             	lea    0x14(%eax),%ecx
4ac861:	51                   	push   %ecx
4ac862:	50                   	push   %eax
4ac863:	e8 e8 c8 ff ff       	call   0x4a9150
4ac868:	8b 45 08             	mov    0x8(%ebp),%eax
4ac86b:	83 c4 0c             	add    $0xc,%esp
4ac86e:	ff 0d 54 df 51 00    	decl   0x51df54
4ac874:	3b 05 50 df 51 00    	cmp    0x51df50,%eax