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
43edb1:	8b 5d f0             	mov    -0x10(%ebp),%ebx
43edb4:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43edb7:	3b d9                	cmp    %ecx,%ebx
43edb9:	7e 0c                	jle    0x43edc7
43edbb:	8b c3                	mov    %ebx,%eax
43edbd:	8b d9                	mov    %ecx,%ebx
43edbf:	8b c8                	mov    %eax,%ecx
43edc1:	89 5d f0             	mov    %ebx,-0x10(%ebp)
43edc4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43edc7:	8b 55 fc             	mov    -0x4(%ebp),%edx
43edca:	8b 45 f4             	mov    -0xc(%ebp),%eax
43edcd:	3b c2                	cmp    %edx,%eax
43edcf:	7e 0b                	jle    0x43eddc
43edd1:	89 55 f4             	mov    %edx,-0xc(%ebp)
43edd4:	8b d0                	mov    %eax,%edx
43edd6:	8b 45 f4             	mov    -0xc(%ebp),%eax
43edd9:	89 55 fc             	mov    %edx,-0x4(%ebp)
43eddc:	2b d0                	sub    %eax,%edx
43edde:	2b cb                	sub    %ebx,%ecx
43ede0:	6a 00                	push   $0x0
43ede2:	52                   	push   %edx
43ede3:	8d 41 0a             	lea    0xa(%ecx),%eax
43ede6:	99                   	cltd
43ede7:	51                   	push   %ecx
43ede8:	2b c2                	sub    %edx,%eax
43edea:	8b c8                	mov    %eax,%ecx
43edec:	8b 45 0c             	mov    0xc(%ebp),%eax
43edef:	6b c0 03             	imul   $0x3,%eax,%eax
43edf2:	57                   	push   %edi
43edf3:	6a 04                	push   $0x4
43edf5:	99                   	cltd
43edf6:	5b                   	pop    %ebx
43edf7:	f7 fb                	idiv   %ebx
43edf9:	d1 f9                	sar    $1,%ecx
43edfb:	2b c1                	sub    %ecx,%eax
43edfd:	50                   	push   %eax
43edfe:	ff 75 08             	push   0x8(%ebp)
43ee01:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43ee07:	68 e9 03 00 00       	push   $0x3e9
43ee0c:	ff 76 54             	push   0x54(%esi)
43ee0f:	ff 15 00 d6 48 00    	call   *0x48d600
43ee15:	8b d8                	mov    %eax,%ebx
43ee17:	85 db                	test   %ebx,%ebx
43ee19:	74 4e                	je     0x43ee69
43ee1b:	8d 45 f0             	lea    -0x10(%ebp),%eax
43ee1e:	50                   	push   %eax
43ee1f:	53                   	push   %ebx
43ee20:	ff 15 7c d6 48 00    	call   *0x48d67c
43ee26:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43ee29:	8b 45 f8             	mov    -0x8(%ebp),%eax
43ee2c:	3b c8                	cmp    %eax,%ecx
43ee2e:	7e 06                	jle    0x43ee36
43ee30:	89 45 f0             	mov    %eax,-0x10(%ebp)
43ee33:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43ee36:	8b 55 f4             	mov    -0xc(%ebp),%edx
43ee39:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43ee3c:	3b d1                	cmp    %ecx,%edx
43ee3e:	7e 0c                	jle    0x43ee4c
43ee40:	8b c2                	mov    %edx,%eax
43ee42:	8b d1                	mov    %ecx,%edx
43ee44:	8b c8                	mov    %eax,%ecx
43ee46:	89 55 f4             	mov    %edx,-0xc(%ebp)
43ee49:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43ee4c:	6a fb                	push   $0xfffffffb
43ee4e:	58                   	pop    %eax
43ee4f:	2b ca                	sub    %edx,%ecx
43ee51:	2b c1                	sub    %ecx,%eax
43ee53:	6a 00                	push   $0x0
43ee55:	03 f8                	add    %eax,%edi
43ee57:	8b 45 0c             	mov    0xc(%ebp),%eax
43ee5a:	51                   	push   %ecx
43ee5b:	83 c0 ec             	add    $0xffffffec,%eax
43ee5e:	50                   	push   %eax
43ee5f:	57                   	push   %edi
43ee60:	6a 0a                	push   $0xa
43ee62:	53                   	push   %ebx
43ee63:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43ee69:	68 ea 03 00 00       	push   $0x3ea
43ee6e:	ff 76 54             	push   0x54(%esi)
43ee71:	ff 15 00 d6 48 00    	call   *0x48d600
43ee77:	5b                   	pop    %ebx
43ee78:	85 c0                	test   %eax,%eax
43ee7a:	74 18                	je     0x43ee94
43ee7c:	6a 00                	push   $0x0
43ee7e:	8d 4f fb             	lea    -0x5(%edi),%ecx
43ee81:	51                   	push   %ecx
43ee82:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43ee85:	83 c1 ec             	add    $0xffffffec,%ecx
43ee88:	51                   	push   %ecx
43ee89:	6a 0a                	push   $0xa
43ee8b:	6a 0a                	push   $0xa
43ee8d:	50                   	push   %eax
43ee8e:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43ee94:	6a 01                	push   $0x1
43ee96:	6a 00                	push   $0x0
43ee98:	ff 76 54             	push   0x54(%esi)
43ee9b:	ff 15 40 d6 48 00    	call   *0x48d640
43eea1:	5f                   	pop    %edi
43eea2:	5e                   	pop    %esi
43eea3:	c9                   	leave
43eea4:	c2 0c 00             	ret    $0xc
43eea7:	55                   	push   %ebp
43eea8:	8b ec                	mov    %esp,%ebp
43eeaa:	81 7d 08 0a 04 00 00 	cmpl   $0x40a,0x8(%ebp)
43eeb1:	56                   	push   %esi
43eeb2:	8b f1                	mov    %ecx,%esi
43eeb4:	75 18                	jne    0x43eece
43eeb6:	68 00 dc 49 00       	push   $0x49dc00
43eebb:	8d 4e 34             	lea    0x34(%esi),%ecx
43eebe:	e8 a0 7b fc ff       	call   0x406a63
43eec3:	6a 03                	push   $0x3
43eec5:	ff 76 54             	push   0x54(%esi)
43eec8:	ff 15 f8 d5 48 00    	call   *0x48d5f8
43eece:	5e                   	pop    %esi
43eecf:	5d                   	pop    %ebp
43eed0:	c2 04 00             	ret    $0x4
43eed3:	55                   	push   %ebp
43eed4:	8b ec                	mov    %esp,%ebp
43eed6:	83 3d fc 32 4c 00 00 	cmpl   $0x0,0x4c32fc
43eedd:	75 06                	jne    0x43eee5
43eedf:	33 c0                	xor    %eax,%eax
43eee1:	5d                   	pop    %ebp
43eee2:	c2 10 00             	ret    $0x10
43eee5:	5d                   	pop    %ebp
43eee6:	e9 00 00 00 00       	jmp    0x43eeeb
43eeeb:	55                   	push   %ebp
43eeec:	8b ec                	mov    %esp,%ebp
43eeee:	51                   	push   %ecx
43eeef:	8b 45 0c             	mov    0xc(%ebp),%eax
43eef2:	8b 15 fc 32 4c 00    	mov    0x4c32fc,%edx
43eef8:	83 e8 05             	sub    $0x5,%eax
43eefb:	74 67                	je     0x43ef64
43eefd:	83 e8 1f             	sub    $0x1f,%eax
43ef00:	74 4f                	je     0x43ef51
43ef02:	2d ec 00 00 00       	sub    $0xec,%eax
43ef07:	74 33                	je     0x43ef3c
43ef09:	48                   	dec    %eax
43ef0a:	74 10                	je     0x43ef1c
43ef0c:	48                   	dec    %eax
43ef0d:	48                   	dec    %eax
43ef0e:	75 16                	jne    0x43ef26
43ef10:	ff 75 10             	push   0x10(%ebp)
43ef13:	8b ca                	mov    %edx,%ecx
43ef15:	e8 8d ff ff ff       	call   0x43eea7
43ef1a:	eb 5f                	jmp    0x43ef7b
43ef1c:	0f b7 45 10          	movzwl 0x10(%ebp),%eax
43ef20:	48                   	dec    %eax
43ef21:	74 10                	je     0x43ef33
43ef23:	48                   	dec    %eax
43ef24:	74 04                	je     0x43ef2a
43ef26:	33 c0                	xor    %eax,%eax
43ef28:	eb 54                	jmp    0x43ef7e
43ef2a:	8b ca                	mov    %edx,%ecx
43ef2c:	e8 4f fb ff ff       	call   0x43ea80
43ef31:	eb 48                	jmp    0x43ef7b
43ef33:	8b ca                	mov    %edx,%ecx
43ef35:	e8 46 fd ff ff       	call   0x43ec80
43ef3a:	eb 3f                	jmp    0x43ef7b
43ef3c:	83 7a 54 00          	cmpl   $0x0,0x54(%edx)
43ef40:	75 06                	jne    0x43ef48
43ef42:	8b 45 08             	mov    0x8(%ebp),%eax
43ef45:	89 42 54             	mov    %eax,0x54(%edx)
43ef48:	8b ca                	mov    %edx,%ecx
43ef4a:	e8 4e fb ff ff       	call   0x43ea9d
43ef4f:	eb 2d                	jmp    0x43ef7e
43ef51:	8b 45 14             	mov    0x14(%ebp),%eax
43ef54:	c7 40 18 be 00 00 00 	movl   $0xbe,0x18(%eax)
43ef5b:	c7 40 1c 72 00 00 00 	movl   $0x72,0x1c(%eax)
43ef62:	eb 17                	jmp    0x43ef7b
43ef64:	8b 4d 14             	mov    0x14(%ebp),%ecx
43ef67:	8b c1                	mov    %ecx,%eax
43ef69:	c1 e8 10             	shr    $0x10,%eax
43ef6c:	50                   	push   %eax
43ef6d:	0f b7 c1             	movzwl %cx,%eax
43ef70:	50                   	push   %eax