45c593:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45c596:	89 45 fc             	mov    %eax,-0x4(%ebp)
45c599:	b9 00 00 00 80       	mov    $0x80000000,%ecx
45c59e:	8b 46 08             	mov    0x8(%esi),%eax
45c5a1:	3b c1                	cmp    %ecx,%eax
45c5a3:	74 03                	je     0x45c5a8
45c5a5:	89 45 f4             	mov    %eax,-0xc(%ebp)
45c5a8:	39 4e 0c             	cmp    %ecx,0xc(%esi)
45c5ab:	74 03                	je     0x45c5b0
45c5ad:	8b 5e 0c             	mov    0xc(%esi),%ebx
45c5b0:	83 3e 00             	cmpl   $0x0,(%esi)
45c5b3:	7e 05                	jle    0x45c5ba
45c5b5:	8b 06                	mov    (%esi),%eax
45c5b7:	89 45 f8             	mov    %eax,-0x8(%ebp)
45c5ba:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
45c5be:	7e 06                	jle    0x45c5c6
45c5c0:	8b 46 04             	mov    0x4(%esi),%eax
45c5c3:	89 45 fc             	mov    %eax,-0x4(%ebp)
45c5c6:	8d 4e 24             	lea    0x24(%esi),%ecx
45c5c9:	ba 10 f9 48 00       	mov    $0x48f910,%edx
45c5ce:	e8 9a dd ff ff       	call   0x45a36d
45c5d3:	84 c0                	test   %al,%al
45c5d5:	74 08                	je     0x45c5df
45c5d7:	ff 76 24             	push   0x24(%esi)
45c5da:	ff 76 54             	push   0x54(%esi)
45c5dd:	ff d7                	call   *%edi
45c5df:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45c5e2:	50                   	push   %eax
45c5e3:	ff 15 44 f6 48 00    	call   *0x48f644
45c5e9:	50                   	push   %eax
45c5ea:	ff 15 94 f6 48 00    	call   *0x48f694
45c5f0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45c5f3:	e8 87 fe ff ff       	call   0x45c47f
45c5f8:	f6 46 10 40          	testb  $0x40,0x10(%esi)
45c5fc:	74 12                	je     0x45c610
45c5fe:	8b 45 ec             	mov    -0x14(%ebp),%eax
45c601:	2b 45 f8             	sub    -0x8(%ebp),%eax
45c604:	2b 45 e4             	sub    -0x1c(%ebp),%eax
45c607:	99                   	cltd
45c608:	2b c2                	sub    %edx,%eax
45c60a:	8b c8                	mov    %eax,%ecx
45c60c:	d1 f9                	sar    $1,%ecx
45c60e:	eb 03                	jmp    0x45c613
45c610:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45c613:	f6 46 10 80          	testb  $0x80,0x10(%esi)
45c617:	8b 7d fc             	mov    -0x4(%ebp),%edi
45c61a:	74 0f                	je     0x45c62b
45c61c:	8b 45 f0             	mov    -0x10(%ebp),%eax
45c61f:	2b c7                	sub    %edi,%eax
45c621:	2b 45 e8             	sub    -0x18(%ebp),%eax
45c624:	99                   	cltd
45c625:	2b c2                	sub    %edx,%eax
45c627:	8b d8                	mov    %eax,%ebx
45c629:	d1 fb                	sar    $1,%ebx
45c62b:	6a 00                	push   $0x0
45c62d:	57                   	push   %edi
45c62e:	ff 75 f8             	push   -0x8(%ebp)
45c631:	53                   	push   %ebx
45c632:	51                   	push   %ecx
45c633:	ff 76 54             	push   0x54(%esi)
45c636:	ff 15 00 f7 48 00    	call   *0x48f700
45c63c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45c63f:	50                   	push   %eax
45c640:	ff 76 54             	push   0x54(%esi)
45c643:	ff 15 34 f6 48 00    	call   *0x48f634
45c649:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45c64c:	e8 2e fe ff ff       	call   0x45c47f
45c651:	8b 45 f0             	mov    -0x10(%ebp),%eax
45c654:	2b 45 e8             	sub    -0x18(%ebp),%eax
45c657:	c1 e0 10             	shl    $0x10,%eax
45c65a:	2b 45 e4             	sub    -0x1c(%ebp),%eax
45c65d:	03 45 ec             	add    -0x14(%ebp),%eax
45c660:	50                   	push   %eax
45c661:	6a 00                	push   $0x0
45c663:	6a 05                	push   $0x5
45c665:	ff 76 54             	push   0x54(%esi)
45c668:	ff 15 90 f6 48 00    	call   *0x48f690
45c66e:	d9 ee                	fldz
45c670:	dc 5e 18             	fcompl 0x18(%esi)
45c673:	df e0                	fnstsw %ax
45c675:	f6 c4 05             	test   $0x5,%ah
45c678:	7a 22                	jp     0x45c69c
45c67a:	dd 46 18             	fldl   0x18(%esi)
45c67d:	dc 0d e0 4b 4a 00    	fmull  0x4a4be0
45c683:	6a 00                	push   $0x0
45c685:	e8 7c ef fd ff       	call   0x43b606
45c68a:	50                   	push   %eax
45c68b:	68 0a 04 00 00       	push   $0x40a
45c690:	ff 76 54             	push   0x54(%esi)
45c693:	ff 15 18 f7 48 00    	call   *0x48f718
45c699:	89 46 58             	mov    %eax,0x58(%esi)
45c69c:	5f                   	pop    %edi
45c69d:	33 c0                	xor    %eax,%eax
45c69f:	5e                   	pop    %esi
45c6a0:	40                   	inc    %eax
45c6a1:	5b                   	pop    %ebx
45c6a2:	8b e5                	mov    %ebp,%esp
45c6a4:	5d                   	pop    %ebp
45c6a5:	c3                   	ret
45c6a6:	55                   	push   %ebp
45c6a7:	8b ec                	mov    %esp,%ebp
45c6a9:	81 ec 00 02 00 00    	sub    $0x200,%esp
45c6af:	56                   	push   %esi
45c6b0:	8b f1                	mov    %ecx,%esi
45c6b2:	68 e9 03 00 00       	push   $0x3e9
45c6b7:	ff 76 54             	push   0x54(%esi)
45c6ba:	ff 15 18 f6 48 00    	call   *0x48f618
45c6c0:	85 c0                	test   %eax,%eax
45c6c2:	74 61                	je     0x45c725
45c6c4:	68 00 01 00 00       	push   $0x100
45c6c9:	8d 8d 00 fe ff ff    	lea    -0x200(%ebp),%ecx
45c6cf:	51                   	push   %ecx
45c6d0:	50                   	push   %eax
45c6d1:	ff 15 6c f6 48 00    	call   *0x48f66c
45c6d7:	f6 46 10 01          	testb  $0x1,0x10(%esi)
45c6db:	74 14                	je     0x45c6f1
45c6dd:	66 83 bd 00 fe ff ff 	cmpw   $0x0,-0x200(%ebp)
45c6e4:	00
45c6e5:	75 0a                	jne    0x45c6f1
45c6e7:	6a 00                	push   $0x0
45c6e9:	ff 15 0c f6 48 00    	call   *0x48f60c
45c6ef:	eb 34                	jmp    0x45c725
45c6f1:	d9 ee                	fldz
45c6f3:	dc 5e 18             	fcompl 0x18(%esi)
45c6f6:	df e0                	fnstsw %ax
45c6f8:	f6 c4 05             	test   $0x5,%ah
45c6fb:	7a 0e                	jp     0x45c70b
45c6fd:	68 0a 04 00 00       	push   $0x40a
45c702:	ff 76 54             	push   0x54(%esi)
45c705:	ff 15 0c f7 48 00    	call   *0x48f70c
45c70b:	8d 85 00 fe ff ff    	lea    -0x200(%ebp),%eax
45c711:	50                   	push   %eax
45c712:	8d 4e 34             	lea    0x34(%esi),%ecx
45c715:	e8 12 b6 fa ff       	call   0x407d2c
45c71a:	6a 01                	push   $0x1
45c71c:	ff 76 54             	push   0x54(%esi)
45c71f:	ff 15 10 f6 48 00    	call   *0x48f610
45c725:	5e                   	pop    %esi
45c726:	8b e5                	mov    %ebp,%esp
45c728:	5d                   	pop    %ebp
45c729:	c3                   	ret
45c72a:	55                   	push   %ebp
45c72b:	8b ec                	mov    %esp,%ebp
45c72d:	83 ec 10             	sub    $0x10,%esp
45c730:	56                   	push   %esi
45c731:	57                   	push   %edi
45c732:	33 ff                	xor    %edi,%edi
45c734:	8b f1                	mov    %ecx,%esi
45c736:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
45c73a:	0f 84 87 01 00 00    	je     0x45c8c7
45c740:	53                   	push   %ebx
45c741:	6a 01                	push   $0x1
45c743:	ff 76 54             	push   0x54(%esi)
45c746:	ff 15 18 f6 48 00    	call   *0x48f618
45c74c:	89 45 08             	mov    %eax,0x8(%ebp)
45c74f:	85 c0                	test   %eax,%eax
45c751:	74 69                	je     0x45c7bc
45c753:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45c756:	51                   	push   %ecx
45c757:	50                   	push   %eax
45c758:	ff 15 94 f6 48 00    	call   *0x48f694
45c75e:	8b 7d f0             	mov    -0x10(%ebp),%edi
45c761:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45c764:	3b f9                	cmp    %ecx,%edi
45c766:	7e 0c                	jle    0x45c774
45c768:	8b c7                	mov    %edi,%eax
45c76a:	8b f9                	mov    %ecx,%edi
45c76c:	8b c8                	mov    %eax,%ecx
45c76e:	89 7d f0             	mov    %edi,-0x10(%ebp)
45c771:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45c774:	8b 5d f4             	mov    -0xc(%ebp),%ebx
45c777:	8b 55 fc             	mov    -0x4(%ebp),%edx
45c77a:	3b da                	cmp    %edx,%ebx
45c77c:	7e 0c                	jle    0x45c78a
45c77e:	8b c3                	mov    %ebx,%eax
45c780:	8b da                	mov    %edx,%ebx
45c782:	8b d0                	mov    %eax,%edx
45c784:	89 5d f4             	mov    %ebx,-0xc(%ebp)
45c787:	89 55 fc             	mov    %edx,-0x4(%ebp)
45c78a:	2b cf                	sub    %edi,%ecx
45c78c:	2b d3                	sub    %ebx,%edx
45c78e:	8b 7d 10             	mov    0x10(%ebp),%edi
45c791:	6a 00                	push   $0x0
45c793:	52                   	push   %edx
45c794:	51                   	push   %ecx
45c795:	2b fa                	sub    %edx,%edi
45c797:	83 ef 0a             	sub    $0xa,%edi
45c79a:	57                   	push   %edi
45c79b:	6a 0a                	push   $0xa
45c79d:	58                   	pop    %eax
45c79e:	2b c1                	sub    %ecx,%eax
45c7a0:	99                   	cltd
45c7a1:	2b c2                	sub    %edx,%eax
45c7a3:	8b c8                	mov    %eax,%ecx
45c7a5:	8b 45 0c             	mov    0xc(%ebp),%eax
45c7a8:	6a 04                	push   $0x4
45c7aa:	5b                   	pop    %ebx
45c7ab:	99                   	cltd
45c7ac:	f7 fb                	idiv   %ebx
45c7ae:	d1 f9                	sar    $1,%ecx
45c7b0:	03 c8                	add    %eax,%ecx
45c7b2:	51                   	push   %ecx
45c7b3:	ff 75 08             	push   0x8(%ebp)
45c7b6:	ff 15 00 f7 48 00    	call   *0x48f700
45c7bc:	6a 02                	push   $0x2
45c7be:	ff 76 54             	push   0x54(%esi)
45c7c1:	ff 15 18 f6 48 00    	call   *0x48f618
45c7c7:	89 45 08             	mov    %eax,0x8(%ebp)
45c7ca:	85 c0                	test   %eax,%eax
45c7cc:	74 5f                	je     0x45c82d
45c7ce:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45c7d1:	51                   	push   %ecx
45c7d2:	50                   	push   %eax
45c7d3:	ff 15 94 f6 48 00    	call   *0x48f694
45c7d9:	8b 5d f0             	mov    -0x10(%ebp),%ebx
45c7dc:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45c7df:	3b d9                	cmp    %ecx,%ebx
45c7e1:	7e 0c                	jle    0x45c7ef
45c7e3:	8b c3                	mov    %ebx,%eax
45c7e5:	8b d9                	mov    %ecx,%ebx
45c7e7:	8b c8                	mov    %eax,%ecx
45c7e9:	89 5d f0             	mov    %ebx,-0x10(%ebp)
45c7ec:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45c7ef:	8b 55 fc             	mov    -0x4(%ebp),%edx
45c7f2:	8b 45 f4             	mov    -0xc(%ebp),%eax
45c7f5:	3b c2                	cmp    %edx,%eax
45c7f7:	7e 0b                	jle    0x45c804
45c7f9:	89 55 f4             	mov    %edx,-0xc(%ebp)
45c7fc:	8b d0                	mov    %eax,%edx
45c7fe:	8b 45 f4             	mov    -0xc(%ebp),%eax
45c801:	89 55 fc             	mov    %edx,-0x4(%ebp)
45c804:	2b cb                	sub    %ebx,%ecx
45c806:	2b d0                	sub    %eax,%edx
45c808:	6a 00                	push   $0x0
45c80a:	52                   	push   %edx
45c80b:	51                   	push   %ecx
45c80c:	8d 41 0a             	lea    0xa(%ecx),%eax
45c80f:	99                   	cltd
45c810:	2b c2                	sub    %edx,%eax
45c812:	8b c8                	mov    %eax,%ecx
45c814:	6b 45 0c 03          	imul   $0x3,0xc(%ebp),%eax
45c818:	57                   	push   %edi
45c819:	6a 04                	push   $0x4
45c81b:	5b                   	pop    %ebx
45c81c:	d1 f9                	sar    $1,%ecx
45c81e:	99                   	cltd
45c81f:	f7 fb                	idiv   %ebx
45c821:	2b c1                	sub    %ecx,%eax
45c823:	50                   	push   %eax
45c824:	ff 75 08             	push   0x8(%ebp)
45c827:	ff 15 00 f7 48 00    	call   *0x48f700
45c82d:	68 e9 03 00 00       	push   $0x3e9
45c832:	ff 76 54             	push   0x54(%esi)
45c835:	ff 15 18 f6 48 00    	call   *0x48f618
45c83b:	8b d8                	mov    %eax,%ebx
45c83d:	85 db                	test   %ebx,%ebx
45c83f:	74 4e                	je     0x45c88f
45c841:	8d 45 f0             	lea    -0x10(%ebp),%eax
45c844:	50                   	push   %eax
45c845:	53                   	push   %ebx
45c846:	ff 15 94 f6 48 00    	call   *0x48f694
45c84c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45c84f:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c852:	3b c8                	cmp    %eax,%ecx
45c854:	7e 06                	jle    0x45c85c
45c856:	89 45 f0             	mov    %eax,-0x10(%ebp)
45c859:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45c85c:	8b 55 f4             	mov    -0xc(%ebp),%edx
45c85f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45c862:	3b d1                	cmp    %ecx,%edx
45c864:	7e 0c                	jle    0x45c872
45c866:	8b c2                	mov    %edx,%eax
45c868:	8b d1                	mov    %ecx,%edx
45c86a:	8b c8                	mov    %eax,%ecx
45c86c:	89 55 f4             	mov    %edx,-0xc(%ebp)
45c86f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
45c872:	6a fb                	push   $0xfffffffb
45c874:	58                   	pop    %eax
45c875:	2b ca                	sub    %edx,%ecx
45c877:	2b c1                	sub    %ecx,%eax
45c879:	6a 00                	push   $0x0
45c87b:	03 f8                	add    %eax,%edi
45c87d:	8b 45 0c             	mov    0xc(%ebp),%eax
45c880:	51                   	push   %ecx
45c881:	83 c0 ec             	add    $0xffffffec,%eax
45c884:	50                   	push   %eax
45c885:	57                   	push   %edi
45c886:	6a 0a                	push   $0xa
45c888:	53                   	push   %ebx
45c889:	ff 15 00 f7 48 00    	call   *0x48f700
45c88f:	68 ea 03 00 00       	push   $0x3ea
45c894:	ff 76 54             	push   0x54(%esi)
45c897:	ff 15 18 f6 48 00    	call   *0x48f618
45c89d:	5b                   	pop    %ebx
45c89e:	85 c0                	test   %eax,%eax
45c8a0:	74 18                	je     0x45c8ba
45c8a2:	6a 00                	push   $0x0
45c8a4:	8d 4f fb             	lea    -0x5(%edi),%ecx
45c8a7:	51                   	push   %ecx
45c8a8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45c8ab:	83 c1 ec             	add    $0xffffffec,%ecx
45c8ae:	51                   	push   %ecx
45c8af:	6a 0a                	push   $0xa
45c8b1:	6a 0a                	push   $0xa
45c8b3:	50                   	push   %eax
45c8b4:	ff 15 00 f7 48 00    	call   *0x48f700
45c8ba:	6a 01                	push   $0x1
45c8bc:	6a 00                	push   $0x0
45c8be:	ff 76 54             	push   0x54(%esi)
45c8c1:	ff 15 58 f6 48 00    	call   *0x48f658
45c8c7:	5f                   	pop    %edi
45c8c8:	5e                   	pop    %esi
45c8c9:	8b e5                	mov    %ebp,%esp
45c8cb:	5d                   	pop    %ebp
45c8cc:	c2 0c 00             	ret    $0xc
45c8cf:	55                   	push   %ebp
45c8d0:	8b ec                	mov    %esp,%ebp
45c8d2:	81 7d 08 0a 04 00 00 	cmpl   $0x40a,0x8(%ebp)
45c8d9:	56                   	push   %esi
45c8da:	8b f1                	mov    %ecx,%esi
45c8dc:	75 18                	jne    0x45c8f6
45c8de:	68 10 f9 48 00       	push   $0x48f910
45c8e3:	8d 4e 34             	lea    0x34(%esi),%ecx
45c8e6:	e8 41 b4 fa ff       	call   0x407d2c
45c8eb:	6a 03                	push   $0x3
45c8ed:	ff 76 54             	push   0x54(%esi)
45c8f0:	ff 15 10 f6 48 00    	call   *0x48f610
45c8f6:	5e                   	pop    %esi
45c8f7:	5d                   	pop    %ebp
45c8f8:	c2 04 00             	ret    $0x4
45c8fb:	55                   	push   %ebp
45c8fc:	8b ec                	mov    %esp,%ebp
45c8fe:	83 3d 00 75 4c 00 00 	cmpl   $0x0,0x4c7500
45c905:	75 06                	jne    0x45c90d
45c907:	33 c0                	xor    %eax,%eax
45c909:	5d                   	pop    %ebp
45c90a:	c2 10 00             	ret    $0x10
45c90d:	5d                   	pop    %ebp
45c90e:	e9 00 00 00 00       	jmp    0x45c913
45c913:	55                   	push   %ebp
45c914:	8b ec                	mov    %esp,%ebp
45c916:	51                   	push   %ecx
45c917:	8b 45 0c             	mov    0xc(%ebp),%eax
45c91a:	8b 15 00 75 4c 00    	mov    0x4c7500,%edx
45c920:	83 e8 05             	sub    $0x5,%eax
45c923:	74 69                	je     0x45c98e
45c925:	83 e8 1f             	sub    $0x1f,%eax
45c928:	74 51                	je     0x45c97b
45c92a:	2d ec 00 00 00       	sub    $0xec,%eax
45c92f:	74 35                	je     0x45c966