43e9c8:	8d 4b 44             	lea    0x44(%ebx),%ecx
43e9cb:	e8 27 ee fc ff       	call   0x40d7f7
43e9d0:	8b c3                	mov    %ebx,%eax
43e9d2:	33 c9                	xor    %ecx,%ecx
43e9d4:	83 60 54 00          	andl   $0x0,0x54(%eax)
43e9d8:	66 89 48 20          	mov    %cx,0x20(%eax)
43e9dc:	68 00 dc 49 00       	push   $0x49dc00
43e9e1:	8d 4b 24             	lea    0x24(%ebx),%ecx
43e9e4:	e8 7a 80 fc ff       	call   0x406a63
43e9e9:	dd 05 10 6a 4b 00    	fldl   0x4b6a10
43e9ef:	8b f3                	mov    %ebx,%esi
43e9f1:	b8 00 00 00 80       	mov    $0x80000000,%eax
43e9f6:	83 0e ff             	orl    $0xffffffff,(%esi)
43e9f9:	dd 5e 18             	fstpl  0x18(%esi)
43e9fc:	83 4e 04 ff          	orl    $0xffffffff,0x4(%esi)
43ea00:	89 46 08             	mov    %eax,0x8(%esi)
43ea03:	89 46 0c             	mov    %eax,0xc(%esi)
43ea06:	33 c0                	xor    %eax,%eax
43ea08:	68 00 dc 49 00       	push   $0x49dc00
43ea0d:	8d 4b 34             	lea    0x34(%ebx),%ecx
43ea10:	89 46 58             	mov    %eax,0x58(%esi)
43ea13:	89 46 14             	mov    %eax,0x14(%esi)
43ea16:	89 46 10             	mov    %eax,0x10(%esi)
43ea19:	e8 45 80 fc ff       	call   0x406a63
43ea1e:	68 00 dc 49 00       	push   $0x49dc00
43ea23:	8d 4b 44             	lea    0x44(%ebx),%ecx
43ea26:	e8 38 80 fc ff       	call   0x406a63
43ea2b:	5f                   	pop    %edi
43ea2c:	8b c6                	mov    %esi,%eax
43ea2e:	5e                   	pop    %esi
43ea2f:	5b                   	pop    %ebx
43ea30:	c9                   	leave
43ea31:	c3                   	ret
43ea32:	55                   	push   %ebp
43ea33:	8b ec                	mov    %esp,%ebp
43ea35:	6a 00                	push   $0x0
43ea37:	68 d3 ee 43 00       	push   $0x43eed3
43ea3c:	ff 75 0c             	push   0xc(%ebp)
43ea3f:	89 0d fc 32 4c 00    	mov    %ecx,0x4c32fc
43ea45:	68 e8 03 00 00       	push   $0x3e8
43ea4a:	ff 35 b8 10 4c 00    	push   0x4c10b8
43ea50:	ff 15 f0 d5 48 00    	call   *0x48d5f0
43ea56:	83 25 fc 32 4c 00 00 	andl   $0x0,0x4c32fc
43ea5d:	5d                   	pop    %ebp
43ea5e:	c2 08 00             	ret    $0x8
43ea61:	8b 11                	mov    (%ecx),%edx
43ea63:	8b 41 08             	mov    0x8(%ecx),%eax
43ea66:	3b d0                	cmp    %eax,%edx
43ea68:	7e 05                	jle    0x43ea6f
43ea6a:	89 01                	mov    %eax,(%ecx)
43ea6c:	89 51 08             	mov    %edx,0x8(%ecx)
43ea6f:	8b 51 04             	mov    0x4(%ecx),%edx
43ea72:	8b 41 0c             	mov    0xc(%ecx),%eax
43ea75:	3b d0                	cmp    %eax,%edx
43ea77:	7e 06                	jle    0x43ea7f
43ea79:	89 41 04             	mov    %eax,0x4(%ecx)
43ea7c:	89 51 0c             	mov    %edx,0xc(%ecx)
43ea7f:	c3                   	ret
43ea80:	56                   	push   %esi
43ea81:	8b f1                	mov    %ecx,%esi
43ea83:	68 00 dc 49 00       	push   $0x49dc00
43ea88:	8d 4e 34             	lea    0x34(%esi),%ecx
43ea8b:	e8 d3 7f fc ff       	call   0x406a63
43ea90:	6a 02                	push   $0x2
43ea92:	ff 76 54             	push   0x54(%esi)
43ea95:	ff 15 f8 d5 48 00    	call   *0x48d5f8
43ea9b:	5e                   	pop    %esi
43ea9c:	c3                   	ret
43ea9d:	55                   	push   %ebp
43ea9e:	8b ec                	mov    %esp,%ebp
43eaa0:	83 ec 1c             	sub    $0x1c,%esp
43eaa3:	53                   	push   %ebx
43eaa4:	56                   	push   %esi
43eaa5:	57                   	push   %edi
43eaa6:	6a 63                	push   $0x63
43eaa8:	ff 35 b8 10 4c 00    	push   0x4c10b8
43eaae:	8b f1                	mov    %ecx,%esi
43eab0:	ff 15 10 d7 48 00    	call   *0x48d710
43eab6:	50                   	push   %eax
43eab7:	33 db                	xor    %ebx,%ebx
43eab9:	53                   	push   %ebx
43eaba:	68 80 00 00 00       	push   $0x80
43eabf:	ff 76 54             	push   0x54(%esi)
43eac2:	ff 15 70 d6 48 00    	call   *0x48d670
43eac8:	8b 3d 04 d6 48 00    	mov    0x48d604,%edi
43eace:	39 5e 28             	cmp    %ebx,0x28(%esi)
43ead1:	76 08                	jbe    0x43eadb
43ead3:	ff 76 24             	push   0x24(%esi)
43ead6:	ff 76 54             	push   0x54(%esi)
43ead9:	ff d7                	call   *%edi
43eadb:	39 5e 48             	cmp    %ebx,0x48(%esi)
43eade:	8b 1d 00 d6 48 00    	mov    0x48d600,%ebx
43eae4:	76 10                	jbe    0x43eaf6
43eae6:	68 ea 03 00 00       	push   $0x3ea
43eaeb:	ff 76 54             	push   0x54(%esi)
43eaee:	ff d3                	call   *%ebx
43eaf0:	ff 76 44             	push   0x44(%esi)
43eaf3:	50                   	push   %eax
43eaf4:	ff d7                	call   *%edi
43eaf6:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
43eafa:	76 10                	jbe    0x43eb0c
43eafc:	68 e9 03 00 00       	push   $0x3e9
43eb01:	ff 76 54             	push   0x54(%esi)
43eb04:	ff d3                	call   *%ebx
43eb06:	ff 76 34             	push   0x34(%esi)
43eb09:	50                   	push   %eax
43eb0a:	ff d7                	call   *%edi
43eb0c:	0f b7 46 20          	movzwl 0x20(%esi),%eax
43eb10:	8b 1d fc d5 48 00    	mov    0x48d5fc,%ebx
43eb16:	66 85 c0             	test   %ax,%ax
43eb19:	74 12                	je     0x43eb2d
43eb1b:	6a 00                	push   $0x0
43eb1d:	50                   	push   %eax
43eb1e:	68 cc 00 00 00       	push   $0xcc
43eb23:	68 e9 03 00 00       	push   $0x3e9
43eb28:	ff 76 54             	push   0x54(%esi)
43eb2b:	ff d3                	call   *%ebx
43eb2d:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
43eb31:	7e 14                	jle    0x43eb47
43eb33:	6a 00                	push   $0x0
43eb35:	ff 76 14             	push   0x14(%esi)
43eb38:	68 c5 00 00 00       	push   $0xc5
43eb3d:	68 e9 03 00 00       	push   $0x3e9
43eb42:	ff 76 54             	push   0x54(%esi)
43eb45:	ff d3                	call   *%ebx
43eb47:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43eb4a:	50                   	push   %eax
43eb4b:	ff 76 54             	push   0x54(%esi)
43eb4e:	ff 15 7c d6 48 00    	call   *0x48d67c
43eb54:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43eb57:	e8 05 ff ff ff       	call   0x43ea61
43eb5c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43eb5f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
43eb62:	8b 5d e8             	mov    -0x18(%ebp),%ebx
43eb65:	2b c8                	sub    %eax,%ecx
43eb67:	89 45 f4             	mov    %eax,-0xc(%ebp)
43eb6a:	8b 45 f0             	mov    -0x10(%ebp),%eax
43eb6d:	2b c3                	sub    %ebx,%eax
43eb6f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43eb72:	89 45 fc             	mov    %eax,-0x4(%ebp)
43eb75:	8b 46 08             	mov    0x8(%esi),%eax
43eb78:	b9 00 00 00 80       	mov    $0x80000000,%ecx
43eb7d:	3b c1                	cmp    %ecx,%eax
43eb7f:	74 03                	je     0x43eb84
43eb81:	89 45 f4             	mov    %eax,-0xc(%ebp)
43eb84:	39 4e 0c             	cmp    %ecx,0xc(%esi)
43eb87:	74 03                	je     0x43eb8c
43eb89:	8b 5e 0c             	mov    0xc(%esi),%ebx
43eb8c:	83 3e 00             	cmpl   $0x0,(%esi)
43eb8f:	7e 05                	jle    0x43eb96
43eb91:	8b 06                	mov    (%esi),%eax
43eb93:	89 45 f8             	mov    %eax,-0x8(%ebp)
43eb96:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
43eb9a:	7e 06                	jle    0x43eba2
43eb9c:	8b 46 04             	mov    0x4(%esi),%eax
43eb9f:	89 45 fc             	mov    %eax,-0x4(%ebp)
43eba2:	8d 4e 24             	lea    0x24(%esi),%ecx
43eba5:	ba 00 dc 49 00       	mov    $0x49dc00,%edx
43ebaa:	e8 6f dc ff ff       	call   0x43c81e
43ebaf:	84 c0                	test   %al,%al
43ebb1:	74 08                	je     0x43ebbb
43ebb3:	ff 76 24             	push   0x24(%esi)
43ebb6:	ff 76 54             	push   0x54(%esi)
43ebb9:	ff d7                	call   *%edi
43ebbb:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43ebbe:	50                   	push   %eax
43ebbf:	ff 15 2c d6 48 00    	call   *0x48d62c
43ebc5:	50                   	push   %eax
43ebc6:	ff 15 7c d6 48 00    	call   *0x48d67c
43ebcc:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43ebcf:	e8 8d fe ff ff       	call   0x43ea61
43ebd4:	f6 46 10 40          	testb  $0x40,0x10(%esi)
43ebd8:	74 12                	je     0x43ebec
43ebda:	8b 45 ec             	mov    -0x14(%ebp),%eax
43ebdd:	2b 45 f8             	sub    -0x8(%ebp),%eax
43ebe0:	2b 45 e4             	sub    -0x1c(%ebp),%eax
43ebe3:	99                   	cltd
43ebe4:	2b c2                	sub    %edx,%eax
43ebe6:	8b c8                	mov    %eax,%ecx
43ebe8:	d1 f9                	sar    $1,%ecx
43ebea:	eb 03                	jmp    0x43ebef
43ebec:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43ebef:	f6 46 10 80          	testb  $0x80,0x10(%esi)
43ebf3:	8b 7d fc             	mov    -0x4(%ebp),%edi
43ebf6:	74 0f                	je     0x43ec07
43ebf8:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ebfb:	2b c7                	sub    %edi,%eax
43ebfd:	2b 45 e8             	sub    -0x18(%ebp),%eax
43ec00:	99                   	cltd
43ec01:	2b c2                	sub    %edx,%eax
43ec03:	8b d8                	mov    %eax,%ebx
43ec05:	d1 fb                	sar    $1,%ebx
43ec07:	6a 00                	push   $0x0
43ec09:	57                   	push   %edi
43ec0a:	ff 75 f8             	push   -0x8(%ebp)
43ec0d:	53                   	push   %ebx
43ec0e:	51                   	push   %ecx
43ec0f:	ff 76 54             	push   0x54(%esi)
43ec12:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43ec18:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43ec1b:	50                   	push   %eax
43ec1c:	ff 76 54             	push   0x54(%esi)
43ec1f:	ff 15 1c d6 48 00    	call   *0x48d61c
43ec25:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43ec28:	e8 34 fe ff ff       	call   0x43ea61
43ec2d:	8b 45 f0             	mov    -0x10(%ebp),%eax
43ec30:	2b 45 e8             	sub    -0x18(%ebp),%eax
43ec33:	c1 e0 10             	shl    $0x10,%eax
43ec36:	2b 45 e4             	sub    -0x1c(%ebp),%eax
43ec39:	03 45 ec             	add    -0x14(%ebp),%eax
43ec3c:	50                   	push   %eax
43ec3d:	6a 00                	push   $0x0
43ec3f:	6a 05                	push   $0x5
43ec41:	ff 76 54             	push   0x54(%esi)
43ec44:	ff 15 78 d6 48 00    	call   *0x48d678
43ec4a:	d9 ee                	fldz
43ec4c:	dc 5e 18             	fcompl 0x18(%esi)
43ec4f:	df e0                	fnstsw %ax
43ec51:	f6 c4 05             	test   $0x5,%ah
43ec54:	7a 22                	jp     0x43ec78
43ec56:	dd 46 18             	fldl   0x18(%esi)
43ec59:	6a 00                	push   $0x0
43ec5b:	dc 0d 20 27 4b 00    	fmull  0x4b2720
43ec61:	e8 a0 2c 03 00       	call   0x471906
43ec66:	50                   	push   %eax
43ec67:	68 0a 04 00 00       	push   $0x40a
43ec6c:	ff 76 54             	push   0x54(%esi)
43ec6f:	ff 15 00 d7 48 00    	call   *0x48d700
43ec75:	89 46 58             	mov    %eax,0x58(%esi)
43ec78:	5f                   	pop    %edi
43ec79:	33 c0                	xor    %eax,%eax
43ec7b:	5e                   	pop    %esi
43ec7c:	40                   	inc    %eax
43ec7d:	5b                   	pop    %ebx
43ec7e:	c9                   	leave
43ec7f:	c3                   	ret
43ec80:	55                   	push   %ebp
43ec81:	8b ec                	mov    %esp,%ebp
43ec83:	81 ec 00 02 00 00    	sub    $0x200,%esp
43ec89:	56                   	push   %esi
43ec8a:	8b f1                	mov    %ecx,%esi
43ec8c:	68 e9 03 00 00       	push   $0x3e9
43ec91:	ff 76 54             	push   0x54(%esi)
43ec94:	ff 15 00 d6 48 00    	call   *0x48d600
43ec9a:	85 c0                	test   %eax,%eax
43ec9c:	74 61                	je     0x43ecff
43ec9e:	68 00 01 00 00       	push   $0x100
43eca3:	8d 8d 00 fe ff ff    	lea    -0x200(%ebp),%ecx
43eca9:	51                   	push   %ecx
43ecaa:	50                   	push   %eax
43ecab:	ff 15 30 d7 48 00    	call   *0x48d730
43ecb1:	f6 46 10 01          	testb  $0x1,0x10(%esi)
43ecb5:	74 14                	je     0x43eccb
43ecb7:	66 83 bd 00 fe ff ff 	cmpw   $0x0,-0x200(%ebp)
43ecbe:	00
43ecbf:	75 0a                	jne    0x43eccb
43ecc1:	6a 00                	push   $0x0
43ecc3:	ff 15 f4 d5 48 00    	call   *0x48d5f4
43ecc9:	eb 34                	jmp    0x43ecff
43eccb:	d9 ee                	fldz
43eccd:	dc 5e 18             	fcompl 0x18(%esi)
43ecd0:	df e0                	fnstsw %ax
43ecd2:	f6 c4 05             	test   $0x5,%ah
43ecd5:	7a 0e                	jp     0x43ece5
43ecd7:	68 0a 04 00 00       	push   $0x40a
43ecdc:	ff 76 54             	push   0x54(%esi)
43ecdf:	ff 15 f4 d6 48 00    	call   *0x48d6f4
43ece5:	8d 85 00 fe ff ff    	lea    -0x200(%ebp),%eax
43eceb:	50                   	push   %eax
43ecec:	8d 4e 34             	lea    0x34(%esi),%ecx
43ecef:	e8 6f 7d fc ff       	call   0x406a63
43ecf4:	6a 01                	push   $0x1
43ecf6:	ff 76 54             	push   0x54(%esi)
43ecf9:	ff 15 f8 d5 48 00    	call   *0x48d5f8
43ecff:	5e                   	pop    %esi
43ed00:	c9                   	leave
43ed01:	c3                   	ret
43ed02:	55                   	push   %ebp
43ed03:	8b ec                	mov    %esp,%ebp
43ed05:	83 ec 10             	sub    $0x10,%esp
43ed08:	56                   	push   %esi
43ed09:	57                   	push   %edi
43ed0a:	33 ff                	xor    %edi,%edi
43ed0c:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
43ed10:	8b f1                	mov    %ecx,%esi
43ed12:	0f 84 89 01 00 00    	je     0x43eea1
43ed18:	53                   	push   %ebx
43ed19:	6a 01                	push   $0x1
43ed1b:	ff 76 54             	push   0x54(%esi)
43ed1e:	ff 15 00 d6 48 00    	call   *0x48d600
43ed24:	89 45 08             	mov    %eax,0x8(%ebp)
43ed27:	85 c0                	test   %eax,%eax
43ed29:	74 69                	je     0x43ed94
43ed2b:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43ed2e:	51                   	push   %ecx
43ed2f:	50                   	push   %eax
43ed30:	ff 15 7c d6 48 00    	call   *0x48d67c
43ed36:	8b 7d f0             	mov    -0x10(%ebp),%edi
43ed39:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43ed3c:	3b f9                	cmp    %ecx,%edi
43ed3e:	7e 0c                	jle    0x43ed4c
43ed40:	8b c7                	mov    %edi,%eax
43ed42:	8b f9                	mov    %ecx,%edi
43ed44:	8b c8                	mov    %eax,%ecx
43ed46:	89 7d f0             	mov    %edi,-0x10(%ebp)
43ed49:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43ed4c:	8b 5d f4             	mov    -0xc(%ebp),%ebx
43ed4f:	8b 55 fc             	mov    -0x4(%ebp),%edx
43ed52:	3b da                	cmp    %edx,%ebx
43ed54:	7e 0c                	jle    0x43ed62
43ed56:	8b c3                	mov    %ebx,%eax
43ed58:	8b da                	mov    %edx,%ebx
43ed5a:	8b d0                	mov    %eax,%edx
43ed5c:	89 5d f4             	mov    %ebx,-0xc(%ebp)
43ed5f:	89 55 fc             	mov    %edx,-0x4(%ebp)
43ed62:	2b cf                	sub    %edi,%ecx
43ed64:	8b 7d 10             	mov    0x10(%ebp),%edi
43ed67:	6a 00                	push   $0x0
43ed69:	2b d3                	sub    %ebx,%edx
43ed6b:	52                   	push   %edx
43ed6c:	51                   	push   %ecx
43ed6d:	2b fa                	sub    %edx,%edi
43ed6f:	83 ef 0a             	sub    $0xa,%edi
43ed72:	57                   	push   %edi
43ed73:	6a 0a                	push   $0xa
43ed75:	58                   	pop    %eax
43ed76:	2b c1                	sub    %ecx,%eax
43ed78:	99                   	cltd
43ed79:	2b c2                	sub    %edx,%eax
43ed7b:	8b c8                	mov    %eax,%ecx
43ed7d:	8b 45 0c             	mov    0xc(%ebp),%eax
43ed80:	6a 04                	push   $0x4
43ed82:	5b                   	pop    %ebx
43ed83:	99                   	cltd
43ed84:	f7 fb                	idiv   %ebx
43ed86:	d1 f9                	sar    $1,%ecx
43ed88:	03 c8                	add    %eax,%ecx
43ed8a:	51                   	push   %ecx
43ed8b:	ff 75 08             	push   0x8(%ebp)
43ed8e:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43ed94:	6a 02                	push   $0x2
43ed96:	ff 76 54             	push   0x54(%esi)
43ed99:	ff 15 00 d6 48 00    	call   *0x48d600
43ed9f:	89 45 08             	mov    %eax,0x8(%ebp)
43eda2:	85 c0                	test   %eax,%eax
43eda4:	74 61                	je     0x43ee07
43eda6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43eda9:	51                   	push   %ecx
43edaa:	50                   	push   %eax
43edab:	ff 15 7c d6 48 00    	call   *0x48d67c