537871:	c2 14 00             	ret    $0x14
537874:	55                   	push   %ebp
537875:	8b ec                	mov    %esp,%ebp
537877:	83 c4 88             	add    $0xffffff88,%esp
53787a:	53                   	push   %ebx
53787b:	56                   	push   %esi
53787c:	57                   	push   %edi
53787d:	33 db                	xor    %ebx,%ebx
53787f:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
537882:	8b f2                	mov    %edx,%esi
537884:	8d 7d cc             	lea    -0x34(%ebp),%edi
537887:	a5                   	movsl  %ds:(%esi),%es:(%edi)
537888:	a5                   	movsl  %ds:(%esi),%es:(%edi)
537889:	a5                   	movsl  %ds:(%esi),%es:(%edi)
53788a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
53788b:	88 4d ff             	mov    %cl,-0x1(%ebp)
53788e:	8b f0                	mov    %eax,%esi
537890:	8b 7d 08             	mov    0x8(%ebp),%edi
537893:	8b 55 0c             	mov    0xc(%ebp),%edx
537896:	33 c0                	xor    %eax,%eax
537898:	55                   	push   %ebp
537899:	68 63 7a 53 00       	push   $0x537a63
53789e:	64 ff 30             	push   %fs:(%eax)
5378a1:	64 89 20             	mov    %esp,%fs:(%eax)
5378a4:	dd 45 28             	fldl   0x28(%ebp)
5378a7:	dc 5d 18             	fcompl 0x18(%ebp)
5378aa:	df e0                	fnstsw %ax
5378ac:	9e                   	sahf
5378ad:	0f 97 c1             	seta   %cl
5378b0:	dd 45 18             	fldl   0x18(%ebp)
5378b3:	dc 65 28             	fsubl  0x28(%ebp)
5378b6:	dd 5d 18             	fstpl  0x18(%ebp)
5378b9:	9b dd 45 10          	fldl   0x10(%ebp)
5378bd:	dc 65 20             	fsubl  0x20(%ebp)
5378c0:	dd 5d 10             	fstpl  0x10(%ebp)
5378c3:	9b                   	fwait
5378c4:	83 fa f6             	cmp    $0xfffffff6,%edx
5378c7:	0f 85 8c 00 00 00    	jne    0x537959
5378cd:	db 2d 74 7a 53 00    	fldt   0x537a74
5378d3:	dc 5d 18             	fcompl 0x18(%ebp)
5378d6:	df e0                	fnstsw %ax
5378d8:	9e                   	sahf
5378d9:	76 2a                	jbe    0x537905
5378db:	db 2d 80 7a 53 00    	fldt   0x537a80
5378e1:	dc 5d 18             	fcompl 0x18(%ebp)
5378e4:	df e0                	fnstsw %ax
5378e6:	9e                   	sahf
5378e7:	73 1c                	jae    0x537905
5378e9:	dd 45 10             	fldl   0x10(%ebp)
5378ec:	d8 1d 8c 7a 53 00    	fcomps 0x537a8c
5378f2:	df e0                	fnstsw %ax
5378f4:	9e                   	sahf
5378f5:	76 07                	jbe    0x5378fe
5378f7:	bb 8c 0a 00 00       	mov    $0xa8c,%ebx
5378fc:	eb 5d                	jmp    0x53795b
5378fe:	bb 84 03 00 00       	mov    $0x384,%ebx
537903:	eb 56                	jmp    0x53795b
537905:	84 c9                	test   %cl,%cl
537907:	74 1a                	je     0x537923
537909:	dd 45 10             	fldl   0x10(%ebp)
53790c:	d9 e0                	fchs
53790e:	dc 75 18             	fdivl  0x18(%ebp)
537911:	d9 e8                	fld1
537913:	d9 f3                	fpatan
537915:	db 2d 90 7a 53 00    	fldt   0x537a90
53791b:	de c1                	faddp  %st,%st(1)
53791d:	dd 5d e0             	fstpl  -0x20(%ebp)
537920:	9b                   	fwait
537921:	eb 10                	jmp    0x537933
537923:	dd 45 10             	fldl   0x10(%ebp)
537926:	d9 e0                	fchs
537928:	dc 75 18             	fdivl  0x18(%ebp)
53792b:	d9 e8                	fld1
53792d:	d9 f3                	fpatan
53792f:	dd 5d e0             	fstpl  -0x20(%ebp)
537932:	9b dd 45 e0          	fldl   -0x20(%ebp)
537936:	d8 0d 9c 7a 53 00    	fmuls  0x537a9c
53793c:	db 2d 90 7a 53 00    	fldt   0x537a90
537942:	de f9                	fdivrp %st,%st(1)
537944:	d8 0d a0 7a 53 00    	fmuls  0x537aa0
53794a:	d8 05 a4 7a 53 00    	fadds  0x537aa4
537950:	e8 77 b3 ec ff       	call   0x402ccc
537955:	8b d8                	mov    %eax,%ebx
537957:	eb 02                	jmp    0x53795b
537959:	8b da                	mov    %edx,%ebx
53795b:	8d 45 90             	lea    -0x70(%ebp),%eax
53795e:	50                   	push   %eax
53795f:	6a 3c                	push   $0x3c
537961:	6a 06                	push   $0x6
537963:	8b c6                	mov    %esi,%eax
537965:	e8 56 13 ef ff       	call   0x428cc0
53796a:	50                   	push   %eax
53796b:	e8 20 fc ec ff       	call   0x407590
537970:	50                   	push   %eax
537971:	e8 7a fc ec ff       	call   0x4075f0
537976:	3b 5d 98             	cmp    -0x68(%ebp),%ebx
537979:	74 30                	je     0x5379ab
53797b:	89 5d 98             	mov    %ebx,-0x68(%ebp)
53797e:	8d 45 90             	lea    -0x70(%ebp),%eax
537981:	50                   	push   %eax
537982:	e8 19 fb ec ff       	call   0x4074a0
537987:	89 45 dc             	mov    %eax,-0x24(%ebp)
53798a:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
53798e:	0f 84 b9 00 00 00    	je     0x537a4d
537994:	8b 45 dc             	mov    -0x24(%ebp),%eax
537997:	50                   	push   %eax
537998:	8b c6                	mov    %esi,%eax
53799a:	e8 21 13 ef ff       	call   0x428cc0
53799f:	50                   	push   %eax
5379a0:	e8 5b fd ec ff       	call   0x407700
5379a5:	50                   	push   %eax
5379a6:	e8 65 fb ec ff       	call   0x407510
5379ab:	dd 45 28             	fldl   0x28(%ebp)
5379ae:	e8 19 b3 ec ff       	call   0x402ccc
5379b3:	03 45 cc             	add    -0x34(%ebp),%eax
5379b6:	89 45 f8             	mov    %eax,-0x8(%ebp)
5379b9:	dd 45 20             	fldl   0x20(%ebp)
5379bc:	e8 0b b3 ec ff       	call   0x402ccc
5379c1:	03 45 d0             	add    -0x30(%ebp),%eax
5379c4:	89 45 f4             	mov    %eax,-0xc(%ebp)
5379c7:	8d 45 8c             	lea    -0x74(%ebp),%eax
5379ca:	8a 55 ff             	mov    -0x1(%ebp),%dl
5379cd:	e8 76 d0 ec ff       	call   0x404a48
5379d2:	8b 45 8c             	mov    -0x74(%ebp),%eax
5379d5:	50                   	push   %eax
5379d6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5379d9:	8b 55 f8             	mov    -0x8(%ebp),%edx
5379dc:	8b c6                	mov    %esi,%eax
5379de:	e8 a9 0f ef ff       	call   0x42898c
5379e3:	89 5d 88             	mov    %ebx,-0x78(%ebp)
5379e6:	db 45 88             	fildl  -0x78(%ebp)
5379e9:	d8 35 a0 7a 53 00    	fdivs  0x537aa0
5379ef:	db 2d a8 7a 53 00    	fldt   0x537aa8
5379f5:	de f9                	fdivrp %st,%st(1)
5379f7:	dd 5d e0             	fstpl  -0x20(%ebp)
5379fa:	9b                   	fwait
5379fb:	ff 75 e4             	push   -0x1c(%ebp)
5379fe:	ff 75 e0             	push   -0x20(%ebp)
537a01:	8d 45 f4             	lea    -0xc(%ebp),%eax
537a04:	50                   	push   %eax
537a05:	8d 45 f0             	lea    -0x10(%ebp),%eax
537a08:	50                   	push   %eax
537a09:	8d 45 ec             	lea    -0x14(%ebp),%eax
537a0c:	50                   	push   %eax
537a0d:	8d 4d f8             	lea    -0x8(%ebp),%ecx
537a10:	8a 55 ff             	mov    -0x1(%ebp),%dl
537a13:	8b c6                	mov    %esi,%eax
537a15:	e8 e6 fd ff ff       	call   0x537800
537a1a:	8b c7                	mov    %edi,%eax
537a1c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
537a1f:	8b 55 f8             	mov    -0x8(%ebp),%edx
537a22:	e8 81 9e 0c 00       	call   0x6018a8
537a27:	8b 4d f4             	mov    -0xc(%ebp),%ecx
537a2a:	2b 4d ec             	sub    -0x14(%ebp),%ecx
537a2d:	8b 55 f8             	mov    -0x8(%ebp),%edx
537a30:	2b 55 f0             	sub    -0x10(%ebp),%edx
537a33:	8b c7                	mov    %edi,%eax
537a35:	e8 6e 9e 0c 00       	call   0x6018a8
537a3a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
537a3d:	03 4d ec             	add    -0x14(%ebp),%ecx
537a40:	8b 55 f8             	mov    -0x8(%ebp),%edx
537a43:	03 55 f0             	add    -0x10(%ebp),%edx
537a46:	8b c7                	mov    %edi,%eax
537a48:	e8 5b 9e 0c 00       	call   0x6018a8
537a4d:	33 c0                	xor    %eax,%eax
537a4f:	5a                   	pop    %edx
537a50:	59                   	pop    %ecx
537a51:	59                   	pop    %ecx
537a52:	64 89 10             	mov    %edx,%fs:(%eax)
537a55:	68 6a 7a 53 00       	push   $0x537a6a
537a5a:	8d 45 8c             	lea    -0x74(%ebp),%eax
537a5d:	e8 06 ce ec ff       	call   0x404868
537a62:	c3                   	ret
537a63:	e9 a4 c7 ec ff       	jmp    0x40420c
537a68:	eb f0                	jmp    0x537a5a
537a6a:	5f                   	pop    %edi
537a6b:	5e                   	pop    %esi
537a6c:	5b                   	pop    %ebx
537a6d:	8b e5                	mov    %ebp,%esp
537a6f:	5d                   	pop    %ebp
537a70:	c2 28 00             	ret    $0x28
537a73:	00 0a                	add    %cl,(%edx)
537a75:	d7                   	xlat   %ds:(%ebx)
537a76:	a3 70 3d 0a d7       	mov    %eax,0xd70a3d70
537a7b:	a3 f8 3f 00 00       	mov    %eax,0x3ff8
537a80:	0a d7                	or     %bh,%dl
537a82:	a3 70 3d 0a d7       	mov    %eax,0xd70a3d70
537a87:	a3 f8 bf 00 00       	mov    %eax,0xbff8
537a8c:	00 00                	add    %al,(%eax)
537a8e:	00 00                	add    %al,(%eax)
537a90:	35 c2 68 21 a2       	xor    $0xa22168c2,%eax
537a95:	da 0f                	fimull (%edi)
537a97:	c9                   	leave
537a98:	00 40 00             	add    %al,0x0(%eax)
537a9b:	00 00                	add    %al,(%eax)
537a9d:	00 34 43             	add    %dh,(%ebx,%eax,2)
537aa0:	00 00                	add    %al,(%eax)
537aa2:	20 41 00             	and    %al,0x0(%ecx)
537aa5:	00 00                	add    %al,(%eax)
537aa7:	3f                   	aas
537aa8:	c3                   	ret
537aa9:	bd 0f 1e d3 e0       	mov    $0xe0d31e0f,%ebp
537aae:	2e e5 04             	cs in  $0x4,%eax
537ab1:	40                   	inc    %eax
537ab2:	00 00                	add    %al,(%eax)
537ab4:	55                   	push   %ebp
537ab5:	8b ec                	mov    %esp,%ebp
537ab7:	81 c4 40 ff ff ff    	add    $0xffffff40,%esp
537abd:	53                   	push   %ebx
537abe:	56                   	push   %esi
537abf:	57                   	push   %edi
537ac0:	33 db                	xor    %ebx,%ebx
537ac2:	89 9d 40 ff ff ff    	mov    %ebx,-0xc0(%ebp)
537ac8:	89 9d 44 ff ff ff    	mov    %ebx,-0xbc(%ebp)
537ace:	89 9d 58 ff ff ff    	mov    %ebx,-0xa8(%ebp)
537ad4:	89 9d 68 ff ff ff    	mov    %ebx,-0x98(%ebp)
537ada:	89 9d 6c ff ff ff    	mov    %ebx,-0x94(%ebp)
537ae0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
537ae3:	89 55 fc             	mov    %edx,-0x4(%ebp)
537ae6:	8b f8                	mov    %eax,%edi
537ae8:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
537aeb:	33 c0                	xor    %eax,%eax
537aed:	55                   	push   %ebp
537aee:	68 45 83 53 00       	push   $0x538345
537af3:	64 ff 30             	push   %fs:(%eax)
537af6:	64 89 20             	mov    %esp,%fs:(%eax)
537af9:	80 7b 10 06          	cmpb   $0x6,0x10(%ebx)
537afd:	0f 85 fa 05 00 00    	jne    0x5380fd
537b03:	83 7b 58 00          	cmpl   $0x0,0x58(%ebx)
537b07:	0f 84 ff 07 00 00    	je     0x53830c
537b0d:	8b 97 34 07 00 00    	mov    0x734(%edi),%edx
537b13:	8b c7                	mov    %edi,%eax
537b15:	e8 de 73 ff ff       	call   0x52eef8
537b1a:	3b c3                	cmp    %ebx,%eax
537b1c:	75 2c                	jne    0x537b4a
537b1e:	8b 45 fc             	mov    -0x4(%ebp),%eax
537b21:	8b 40 14             	mov    0x14(%eax),%eax
537b24:	b2 01                	mov    $0x1,%dl
537b26:	e8 75 08 ef ff       	call   0x4283a0
537b2b:	8b 45 24             	mov    0x24(%ebp),%eax
537b2e:	40                   	inc    %eax
537b2f:	50                   	push   %eax
537b30:	8b 45 20             	mov    0x20(%ebp),%eax
537b33:	40                   	inc    %eax
537b34:	50                   	push   %eax
537b35:	8b 4d 28             	mov    0x28(%ebp),%ecx
537b38:	49                   	dec    %ecx
537b39:	8b 55 f8             	mov    -0x8(%ebp),%edx
537b3c:	4a                   	dec    %edx
537b3d:	8b 45 fc             	mov    -0x4(%ebp),%eax
537b40:	e8 2b 0d ef ff       	call   0x428870
537b45:	e9 c2 07 00 00       	jmp    0x53830c
537b4a:	83 7b 68 00          	cmpl   $0x0,0x68(%ebx)
537b4e:	0f 85 44 02 00 00    	jne    0x537d98
537b54:	8b 73 5c             	mov    0x5c(%ebx),%esi
537b57:	c6 46 1a 04          	movb   $0x4,0x1a(%esi)
537b5b:	8b 3e                	mov    (%esi),%edi
537b5d:	83 3e 00             	cmpl   $0x0,(%esi)
537b60:	75 0a                	jne    0x537b6c
537b62:	8b 45 20             	mov    0x20(%ebp),%eax
537b65:	2b 45 28             	sub    0x28(%ebp),%eax
537b68:	89 06                	mov    %eax,(%esi)
537b6a:	eb 16                	jmp    0x537b82
537b6c:	89 bd 70 ff ff ff    	mov    %edi,-0x90(%ebp)
537b72:	db 85 70 ff ff ff    	fildl  -0x90(%ebp)
537b78:	dc 4d 10             	fmull  0x10(%ebp)
537b7b:	e8 4c b1 ec ff       	call   0x402ccc
537b80:	89 06                	mov    %eax,(%esi)
537b82:	8b 43 5c             	mov    0x5c(%ebx),%eax
537b85:	50                   	push   %eax
537b86:	e8 15 f9 ec ff       	call   0x4074a0
537b8b:	89 45 f4             	mov    %eax,-0xc(%ebp)
537b8e:	89 3e                	mov    %edi,(%esi)
537b90:	8b 53 2c             	mov    0x2c(%ebx),%edx
537b93:	8b 45 fc             	mov    -0x4(%ebp),%eax
537b96:	8b 40 0c             	mov    0xc(%eax),%eax
537b99:	e8 fa fe ee ff       	call   0x427a98
537b9e:	8b 45 f4             	mov    -0xc(%ebp),%eax
537ba1:	50                   	push   %eax
537ba2:	8b 45 fc             	mov    -0x4(%ebp),%eax
537ba5:	e8 16 11 ef ff       	call   0x428cc0
537baa:	50                   	push   %eax
537bab:	e8 50 fb ec ff       	call   0x407700
537bb0:	89 45 f0             	mov    %eax,-0x10(%ebp)
537bb3:	8b 43 5c             	mov    0x5c(%ebx),%eax
537bb6:	db 40 08             	fildl  0x8(%eax)
537bb9:	d8 35 58 83 53 00    	fdivs  0x538358
537bbf:	db 2d 5c 83 53 00    	fldt   0x53835c
537bc5:	de c9                	fmulp  %st,%st(1)
537bc7:	d8 35 68 83 53 00    	fdivs  0x538368
537bcd:	dd 5d d0             	fstpl  -0x30(%ebp)
537bd0:	9b                   	fwait
537bd1:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
537bd7:	8b 53 58             	mov    0x58(%ebx),%edx
537bda:	e8 79 ce ec ff       	call   0x404a58
537bdf:	8b 95 6c ff ff ff    	mov    -0x94(%ebp),%edx
537be5:	8b 45 fc             	mov    -0x4(%ebp),%eax
537be8:	e8 0f 0f ef ff       	call   0x428afc
537bed:	89 45 e0             	mov    %eax,-0x20(%ebp)
537bf0:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
537bf6:	8b 53 58             	mov    0x58(%ebx),%edx
537bf9:	e8 5a ce ec ff       	call   0x404a58
537bfe:	8b 95 68 ff ff ff    	mov    -0x98(%ebp),%edx
537c04:	8b 45 fc             	mov    -0x4(%ebp),%eax
537c07:	e8 0c 0f ef ff       	call   0x428b18
537c0c:	89 45 dc             	mov    %eax,-0x24(%ebp)
537c0f:	33 c0                	xor    %eax,%eax
537c11:	89 45 e8             	mov    %eax,-0x18(%ebp)
537c14:	dd 45 d0             	fldl   -0x30(%ebp)
537c17:	e8 28 b0 ec ff       	call   0x402c44
537c1c:	db 45 dc             	fildl  -0x24(%ebp)
537c1f:	de c9                	fmulp  %st,%st(1)
537c21:	8b 45 20             	mov    0x20(%ebp),%eax
537c24:	2b 45 28             	sub    0x28(%ebp),%eax
537c27:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
537c2d:	db 85 70 ff ff ff    	fildl  -0x90(%ebp)
537c33:	de e1                	fsubp  %st,%st(1)
537c35:	db bd 5c ff ff ff    	fstpt  -0xa4(%ebp)
537c3b:	9b dd 45 d0          	fldl   -0x30(%ebp)
537c3f:	e8 48 b0 ec ff       	call   0x402c8c
537c44:	db 45 e0             	fildl  -0x20(%ebp)
537c47:	de c9                	fmulp  %st,%st(1)
537c49:	db ad 5c ff ff ff    	fldt   -0xa4(%ebp)
537c4f:	de c1                	faddp  %st,%st(1)
537c51:	e8 76 b0 ec ff       	call   0x402ccc
537c56:	0f ac d0 01          	shrd   $0x1,%edx,%eax
537c5a:	d1 ea                	shr    $1,%edx
537c5c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
537c5f:	8a 43 60             	mov    0x60(%ebx),%al
537c62:	2c 01                	sub    $0x1,%al
537c64:	72 0c                	jb     0x537c72
537c66:	74 2c                	je     0x537c94
537c68:	48                   	dec    %eax
537c69:	2c 02                	sub    $0x2,%al
537c6b:	72 52                	jb     0x537cbf
537c6d:	e9 98 00 00 00       	jmp    0x537d0a
537c72:	dd 45 d0             	fldl   -0x30(%ebp)
537c75:	e8 12 b0 ec ff       	call   0x402c8c
537c7a:	db 45 dc             	fildl  -0x24(%ebp)
537c7d:	de c9                	fmulp  %st,%st(1)
537c7f:	e8 48 b0 ec ff       	call   0x402ccc
537c84:	85 d2                	test   %edx,%edx
537c86:	7d 07                	jge    0x537c8f
537c88:	f7 d8                	neg    %eax
537c8a:	83 d2 00             	adc    $0x0,%edx
537c8d:	f7 da                	neg    %edx
537c8f:	89 45 e8             	mov    %eax,-0x18(%ebp)
537c92:	eb 76                	jmp    0x537d0a
537c94:	dd 45 d0             	fldl   -0x30(%ebp)
537c97:	e8 a8 af ec ff       	call   0x402c44