612999:	dd 46 10             	fldl   0x10(%esi)
61299c:	83 e0 e3             	and    $0xffffffe3,%eax
61299f:	83 c8 03             	or     $0x3,%eax
6129a2:	dd 5d b0             	fstpl  -0x50(%ebp)
6129a5:	89 45 c0             	mov    %eax,-0x40(%ebp)
6129a8:	8d 46 18             	lea    0x18(%esi),%eax
6129ab:	50                   	push   %eax
6129ac:	8d 46 08             	lea    0x8(%esi),%eax
6129af:	50                   	push   %eax
6129b0:	51                   	push   %ecx
6129b1:	57                   	push   %edi
6129b2:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
6129b8:	50                   	push   %eax
6129b9:	8d 45 80             	lea    -0x80(%ebp),%eax
6129bc:	50                   	push   %eax
6129bd:	e8 1a fa fe ff       	call   0x6023dc
6129c2:	83 c4 18             	add    $0x18,%esp
6129c5:	68 ff ff 00 00       	push   $0xffff
6129ca:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
6129d0:	e8 c5 43 ff ff       	call   0x606d9a
6129d5:	83 3e 08             	cmpl   $0x8,(%esi)
6129d8:	59                   	pop    %ecx
6129d9:	59                   	pop    %ecx
6129da:	74 14                	je     0x6129f0
6129dc:	e8 f8 fd fe ff       	call   0x6027d9
6129e1:	84 c0                	test   %al,%al
6129e3:	74 0b                	je     0x6129f0
6129e5:	56                   	push   %esi
6129e6:	e8 15 fe fe ff       	call   0x602800
6129eb:	59                   	pop    %ecx
6129ec:	85 c0                	test   %eax,%eax
6129ee:	75 08                	jne    0x6129f8
6129f0:	ff 36                	push   (%esi)
6129f2:	e8 fe fc fe ff       	call   0x6026f5
6129f7:	59                   	pop    %ecx
6129f8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
6129fb:	5f                   	pop    %edi
6129fc:	33 cd                	xor    %ebp,%ecx
6129fe:	5e                   	pop    %esi
6129ff:	e8 d6 ea fc ff       	call   0x5e14da
612a04:	8b e5                	mov    %ebp,%esp
612a06:	5d                   	pop    %ebp
612a07:	8b e3                	mov    %ebx,%esp
612a09:	5b                   	pop    %ebx
612a0a:	c3                   	ret
612a0b:	cc                   	int3
612a0c:	cc                   	int3
612a0d:	cc                   	int3
612a0e:	cc                   	int3
612a0f:	cc                   	int3
612a10:	e8 0b ad ff ff       	call   0x60d720
612a15:	33 c9                	xor    %ecx,%ecx
612a17:	84 c0                	test   %al,%al
612a19:	0f 94 c1             	sete   %cl
612a1c:	8b c1                	mov    %ecx,%eax
612a1e:	c3                   	ret
612a1f:	8b ff                	mov    %edi,%edi
612a21:	55                   	push   %ebp
612a22:	8b ec                	mov    %esp,%ebp
612a24:	83 ec 30             	sub    $0x30,%esp
612a27:	53                   	push   %ebx
612a28:	33 db                	xor    %ebx,%ebx
612a2a:	56                   	push   %esi
612a2b:	8b f3                	mov    %ebx,%esi
612a2d:	89 5d d0             	mov    %ebx,-0x30(%ebp)
612a30:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
612a33:	89 5d d8             	mov    %ebx,-0x28(%ebp)
612a36:	89 5d dc             	mov    %ebx,-0x24(%ebp)
612a39:	89 5d e0             	mov    %ebx,-0x20(%ebp)
612a3c:	88 5d e4             	mov    %bl,-0x1c(%ebp)
612a3f:	89 5d e8             	mov    %ebx,-0x18(%ebp)
612a42:	89 5d ec             	mov    %ebx,-0x14(%ebp)
612a45:	89 75 f0             	mov    %esi,-0x10(%ebp)
612a48:	89 5d f4             	mov    %ebx,-0xc(%ebp)
612a4b:	89 5d f8             	mov    %ebx,-0x8(%ebp)
612a4e:	88 5d fc             	mov    %bl,-0x4(%ebp)
612a51:	e8 1f 41 fe ff       	call   0x5f6b75
612a56:	50                   	push   %eax
612a57:	8d 45 d0             	lea    -0x30(%ebp),%eax
612a5a:	50                   	push   %eax
612a5b:	ff 75 08             	push   0x8(%ebp)
612a5e:	e8 f5 40 fe ff       	call   0x5f6b58
612a63:	83 c4 0c             	add    $0xc,%esp
612a66:	85 c0                	test   %eax,%eax
612a68:	75 28                	jne    0x612a92
612a6a:	e8 06 41 fe ff       	call   0x5f6b75
612a6f:	50                   	push   %eax
612a70:	8d 45 e8             	lea    -0x18(%ebp),%eax
612a73:	50                   	push   %eax
612a74:	ff 75 0c             	push   0xc(%ebp)
612a77:	e8 dc 40 fe ff       	call   0x5f6b58
612a7c:	8b 75 f0             	mov    -0x10(%ebp),%esi
612a7f:	83 c4 0c             	add    $0xc,%esp
612a82:	85 c0                	test   %eax,%eax
612a84:	75 0c                	jne    0x612a92
612a86:	56                   	push   %esi
612a87:	ff 75 d8             	push   -0x28(%ebp)
612a8a:	ff 15 ac 21 68 00    	call   *0x6821ac
612a90:	8b d8                	mov    %eax,%ebx
612a92:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
612a96:	74 07                	je     0x612a9f
612a98:	56                   	push   %esi
612a99:	e8 8a 1d ff ff       	call   0x604828
612a9e:	59                   	pop    %ecx
612a9f:	80 7d e4 00          	cmpb   $0x0,-0x1c(%ebp)
612aa3:	74 09                	je     0x612aae
612aa5:	ff 75 d8             	push   -0x28(%ebp)
612aa8:	e8 7b 1d ff ff       	call   0x604828
612aad:	59                   	pop    %ecx
612aae:	5e                   	pop    %esi
612aaf:	8b c3                	mov    %ebx,%eax
612ab1:	5b                   	pop    %ebx
612ab2:	c9                   	leave
612ab3:	c3                   	ret
612ab4:	8b ff                	mov    %edi,%edi
612ab6:	55                   	push   %ebp
612ab7:	8b ec                	mov    %esp,%ebp
612ab9:	56                   	push   %esi
612aba:	e8 46 f3 ff ff       	call   0x611e05
612abf:	8b 75 08             	mov    0x8(%ebp),%esi
612ac2:	89 06                	mov    %eax,(%esi)
612ac4:	e8 bc f3 ff ff       	call   0x611e85
612ac9:	89 46 04             	mov    %eax,0x4(%esi)
612acc:	33 c0                	xor    %eax,%eax
612ace:	5e                   	pop    %esi
612acf:	5d                   	pop    %ebp
612ad0:	c3                   	ret
612ad1:	8b ff                	mov    %edi,%edi
612ad3:	55                   	push   %ebp
612ad4:	8b ec                	mov    %esp,%ebp
612ad6:	51                   	push   %ecx
612ad7:	51                   	push   %ecx
612ad8:	56                   	push   %esi
612ad9:	8b 75 08             	mov    0x8(%ebp),%esi
612adc:	ff 36                	push   (%esi)
612ade:	e8 5a f4 ff ff       	call   0x611f3d
612ae3:	ff 76 04             	push   0x4(%esi)
612ae6:	e8 ba f4 ff ff       	call   0x611fa5
612aeb:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
612aef:	8d 45 f8             	lea    -0x8(%ebp),%eax
612af2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
612af6:	50                   	push   %eax
612af7:	e8 b8 ff ff ff       	call   0x612ab4
612afc:	83 c4 0c             	add    $0xc,%esp
612aff:	85 c0                	test   %eax,%eax
612b01:	75 13                	jne    0x612b16
612b03:	8b 06                	mov    (%esi),%eax
612b05:	3b 45 f8             	cmp    -0x8(%ebp),%eax
612b08:	75 0c                	jne    0x612b16
612b0a:	8b 46 04             	mov    0x4(%esi),%eax
612b0d:	3b 45 fc             	cmp    -0x4(%ebp),%eax
612b10:	75 04                	jne    0x612b16
612b12:	33 c0                	xor    %eax,%eax
612b14:	eb 03                	jmp    0x612b19
612b16:	33 c0                	xor    %eax,%eax
612b18:	40                   	inc    %eax
612b19:	5e                   	pop    %esi
612b1a:	c9                   	leave
612b1b:	c3                   	ret
612b1c:	8b ff                	mov    %edi,%edi
612b1e:	55                   	push   %ebp
612b1f:	8b ec                	mov    %esp,%ebp
612b21:	51                   	push   %ecx
612b22:	51                   	push   %ecx
612b23:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
612b27:	8d 45 f8             	lea    -0x8(%ebp),%eax
612b2a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
612b2e:	50                   	push   %eax
612b2f:	e8 80 ff ff ff       	call   0x612ab4
612b34:	59                   	pop    %ecx
612b35:	85 c0                	test   %eax,%eax
612b37:	75 2b                	jne    0x612b64
612b39:	8b 4d 08             	mov    0x8(%ebp),%ecx
612b3c:	8b 55 f8             	mov    -0x8(%ebp),%edx
612b3f:	8b 45 fc             	mov    -0x4(%ebp),%eax
612b42:	89 41 04             	mov    %eax,0x4(%ecx)
612b45:	8d 45 f8             	lea    -0x8(%ebp),%eax
612b48:	89 11                	mov    %edx,(%ecx)
612b4a:	83 ca 1f             	or     $0x1f,%edx
612b4d:	50                   	push   %eax
612b4e:	89 55 f8             	mov    %edx,-0x8(%ebp)
612b51:	e8 7b ff ff ff       	call   0x612ad1
612b56:	59                   	pop    %ecx
612b57:	85 c0                	test   %eax,%eax
612b59:	75 09                	jne    0x612b64
612b5b:	e8 97 d5 ff ff       	call   0x6100f7
612b60:	33 c0                	xor    %eax,%eax
612b62:	c9                   	leave
612b63:	c3                   	ret
612b64:	33 c0                	xor    %eax,%eax
612b66:	40                   	inc    %eax
612b67:	c9                   	leave
612b68:	c3                   	ret
612b69:	cc                   	int3
612b6a:	cc                   	int3
612b6b:	cc                   	int3
612b6c:	cc                   	int3
612b6d:	cc                   	int3
612b6e:	cc                   	int3
612b6f:	cc                   	int3
612b70:	83 3d 9c 26 73 00 00 	cmpl   $0x0,0x73269c
612b77:	74 32                	je     0x612bab
612b79:	83 ec 08             	sub    $0x8,%esp
612b7c:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
612b81:	8b 44 24 04          	mov    0x4(%esp),%eax
612b85:	25 80 7f 00 00       	and    $0x7f80,%eax
612b8a:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
612b8f:	75 0f                	jne    0x612ba0
612b91:	d9 3c 24             	fnstcw (%esp)
612b94:	66 8b 04 24          	mov    (%esp),%ax
612b98:	66 83 e0 7f          	and    $0x7f,%ax
612b9c:	66 83 f8 7f          	cmp    $0x7f,%ax
612ba0:	8d 64 24 08          	lea    0x8(%esp),%esp
612ba4:	75 05                	jne    0x612bab
612ba6:	e9 85 01 00 00       	jmp    0x612d30
612bab:	83 ec 0c             	sub    $0xc,%esp
612bae:	dd 14 24             	fstl   (%esp)
612bb1:	e8 92 9e ff ff       	call   0x60ca48
612bb6:	e8 0d 00 00 00       	call   0x612bc8
612bbb:	83 c4 0c             	add    $0xc,%esp
612bbe:	c3                   	ret
612bbf:	8d 54 24 04          	lea    0x4(%esp),%edx
612bc3:	e8 3d 9e ff ff       	call   0x60ca05
612bc8:	52                   	push   %edx
612bc9:	9b d9 3c 24          	fstcw  (%esp)
612bcd:	74 4c                	je     0x612c1b
612bcf:	8b 44 24 0c          	mov    0xc(%esp),%eax
612bd3:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
612bd9:	74 06                	je     0x612be1
612bdb:	d9 2d 18 8c 6d 00    	fldcw  0x6d8c18
612be1:	a9 00 00 f0 7f       	test   $0x7ff00000,%eax
612be6:	74 5e                	je     0x612c46
612be8:	a9 00 00 00 80       	test   $0x80000000,%eax
612bed:	75 41                	jne    0x612c30
612bef:	d9 ec                	fldlg2
612bf1:	d9 c9                	fxch   %st(1)
612bf3:	d9 f1                	fyl2x
612bf5:	83 3d 8c 14 73 00 00 	cmpl   $0x0,0x73148c
612bfc:	0f 85 5c 9e ff ff    	jne    0x60ca5e
612c02:	8d 0d 30 a9 6d 00    	lea    0x6da930,%ecx
612c08:	ba 1b 00 00 00       	mov    $0x1b,%edx
612c0d:	e9 59 9e ff ff       	jmp    0x60ca6b
612c12:	a9 00 00 00 80       	test   $0x80000000,%eax
612c17:	75 17                	jne    0x612c30
612c19:	eb d4                	jmp    0x612bef
612c1b:	a9 ff ff 0f 00       	test   $0xfffff,%eax
612c20:	75 1d                	jne    0x612c3f
612c22:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
612c27:	75 16                	jne    0x612c3f
612c29:	25 00 00 00 80       	and    $0x80000000,%eax
612c2e:	74 c5                	je     0x612bf5
612c30:	dd d8                	fstp   %st(0)
612c32:	db 2d d0 8b 6d 00    	fldt   0x6d8bd0
612c38:	b8 01 00 00 00       	mov    $0x1,%eax
612c3d:	eb 22                	jmp    0x612c61
612c3f:	e8 a8 9d ff ff       	call   0x60c9ec
612c44:	eb 1b                	jmp    0x612c61
612c46:	a9 ff ff 0f 00       	test   $0xfffff,%eax
612c4b:	75 c5                	jne    0x612c12
612c4d:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
612c52:	75 be                	jne    0x612c12
612c54:	dd d8                	fstp   %st(0)
612c56:	db 2d 7a 8b 6d 00    	fldt   0x6d8b7a
612c5c:	b8 02 00 00 00       	mov    $0x2,%eax
612c61:	83 3d 8c 14 73 00 00 	cmpl   $0x0,0x73148c
612c68:	0f 85 f0 9d ff ff    	jne    0x60ca5e
612c6e:	8d 0d 30 a9 6d 00    	lea    0x6da930,%ecx
612c74:	ba 1b 00 00 00       	mov    $0x1b,%edx
612c79:	e8 f9 9c ff ff       	call   0x60c977
612c7e:	5a                   	pop    %edx
612c7f:	c3                   	ret
612c80:	33 c0                	xor    %eax,%eax
612c82:	50                   	push   %eax
612c83:	50                   	push   %eax
612c84:	6a 03                	push   $0x3
612c86:	50                   	push   %eax
612c87:	6a 03                	push   $0x3
612c89:	68 00 00 00 40       	push   $0x40000000
612c8e:	68 38 a9 6d 00       	push   $0x6da938
612c93:	ff 15 f0 21 68 00    	call   *0x6821f0
612c99:	a3 60 93 72 00       	mov    %eax,0x729360
612c9e:	c3                   	ret
612c9f:	8b 0d 60 93 72 00    	mov    0x729360,%ecx
612ca5:	83 f9 fe             	cmp    $0xfffffffe,%ecx
612ca8:	75 0b                	jne    0x612cb5
612caa:	e8 d1 ff ff ff       	call   0x612c80
612caf:	8b 0d 60 93 72 00    	mov    0x729360,%ecx
612cb5:	33 c0                	xor    %eax,%eax
612cb7:	83 f9 ff             	cmp    $0xffffffff,%ecx
612cba:	0f 95 c0             	setne  %al
612cbd:	c3                   	ret
612cbe:	cc                   	int3
612cbf:	cc                   	int3
612cc0:	a1 60 93 72 00       	mov    0x729360,%eax
612cc5:	83 f8 ff             	cmp    $0xffffffff,%eax
612cc8:	74 0c                	je     0x612cd6
612cca:	83 f8 fe             	cmp    $0xfffffffe,%eax
612ccd:	74 07                	je     0x612cd6
612ccf:	50                   	push   %eax
612cd0:	ff 15 e4 21 68 00    	call   *0x6821e4
612cd6:	c3                   	ret
612cd7:	8b ff                	mov    %edi,%edi
612cd9:	55                   	push   %ebp
612cda:	8b ec                	mov    %esp,%ebp
612cdc:	56                   	push   %esi
612cdd:	6a 00                	push   $0x0
612cdf:	ff 75 10             	push   0x10(%ebp)
612ce2:	ff 75 0c             	push   0xc(%ebp)
612ce5:	ff 75 08             	push   0x8(%ebp)
612ce8:	ff 35 60 93 72 00    	push   0x729360
612cee:	ff 15 24 22 68 00    	call   *0x682224
612cf4:	8b f0                	mov    %eax,%esi
612cf6:	85 f6                	test   %esi,%esi
612cf8:	75 2d                	jne    0x612d27
612cfa:	ff 15 e0 21 68 00    	call   *0x6821e0
612d00:	83 f8 06             	cmp    $0x6,%eax
612d03:	75 22                	jne    0x612d27
612d05:	e8 b6 ff ff ff       	call   0x612cc0
612d0a:	e8 71 ff ff ff       	call   0x612c80
612d0f:	56                   	push   %esi
612d10:	ff 75 10             	push   0x10(%ebp)
612d13:	ff 75 0c             	push   0xc(%ebp)
612d16:	ff 75 08             	push   0x8(%ebp)
612d19:	ff 35 60 93 72 00    	push   0x729360
612d1f:	ff 15 24 22 68 00    	call   *0x682224
612d25:	8b f0                	mov    %eax,%esi
612d27:	8b c6                	mov    %esi,%eax
612d29:	5e                   	pop    %esi
612d2a:	5d                   	pop    %ebp
612d2b:	c3                   	ret
612d2c:	cc                   	int3
612d2d:	cc                   	int3
612d2e:	cc                   	int3
612d2f:	cc                   	int3
612d30:	55                   	push   %ebp
612d31:	8b ec                	mov    %esp,%ebp
612d33:	83 ec 08             	sub    $0x8,%esp
612d36:	83 e4 f0             	and    $0xfffffff0,%esp
612d39:	dd 1c 24             	fstpl  (%esp)
612d3c:	f3 0f 7e 04 24       	movq   (%esp),%xmm0
612d41:	e8 08 00 00 00       	call   0x612d4e
612d46:	c9                   	leave
612d47:	c3                   	ret
612d48:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
612d4e:	ba 00 00 00 00       	mov    $0x0,%edx
612d53:	66 0f 28 e8          	movapd %xmm0,%xmm5
612d57:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
612d5b:	66 0f 73 d5 34       	psrlq  $0x34,%xmm5
612d60:	66 0f c5 cd 00       	pextrw $0x0,%xmm5,%ecx
612d65:	66 0f 28 0d 50 a9 6d 	movapd 0x6da950,%xmm1