453ba0:	66 83 f8 7f          	cmp    $0x7f,%ax
453ba4:	8d 64 24 08          	lea    0x8(%esp),%esp
453ba8:	75 5a                	jne    0x453c04
453baa:	e9 8a f0 01 00       	jmp    0x472c39
453baf:	90                   	nop
453bb0:	83 3d 34 c3 4b 00 00 	cmpl   $0x0,0x4bc334
453bb7:	74 32                	je     0x453beb
453bb9:	83 ec 08             	sub    $0x8,%esp
453bbc:	0f ae 5c 24 04       	stmxcsr 0x4(%esp)
453bc1:	8b 44 24 04          	mov    0x4(%esp),%eax
453bc5:	25 80 7f 00 00       	and    $0x7f80,%eax
453bca:	3d 80 1f 00 00       	cmp    $0x1f80,%eax
453bcf:	75 0f                	jne    0x453be0
453bd1:	d9 3c 24             	fnstcw (%esp)
453bd4:	66 8b 04 24          	mov    (%esp),%ax
453bd8:	66 83 e0 7f          	and    $0x7f,%ax
453bdc:	66 83 f8 7f          	cmp    $0x7f,%ax
453be0:	8d 64 24 08          	lea    0x8(%esp),%esp
453be4:	75 05                	jne    0x453beb
453be6:	e9 35 f0 01 00       	jmp    0x472c20
453beb:	83 ec 14             	sub    $0x14,%esp
453bee:	d9 c9                	fxch   %st(1)
453bf0:	dd 1c 24             	fstpl  (%esp)
453bf3:	dd 54 24 08          	fstl   0x8(%esp)
453bf7:	8b 44 24 0c          	mov    0xc(%esp),%eax
453bfb:	e8 0d 00 00 00       	call   0x453c0d
453c00:	83 c4 14             	add    $0x14,%esp
453c03:	c3                   	ret
453c04:	8d 54 24 0c          	lea    0xc(%esp),%edx
453c08:	e8 e8 ff 01 00       	call   0x473bf5
453c0d:	8b c8                	mov    %eax,%ecx
453c0f:	50                   	push   %eax
453c10:	9b d9 3c 24          	fstcw  (%esp)
453c14:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
453c1a:	74 05                	je     0x453c21
453c1c:	e8 a4 ff 01 00       	call   0x473bc5
453c21:	81 e1 00 00 f0 7f    	and    $0x7ff00000,%ecx
453c27:	8d 54 24 08          	lea    0x8(%esp),%edx
453c2b:	81 f9 00 00 f0 7f    	cmp    $0x7ff00000,%ecx
453c31:	0f 84 9c 00 00 00    	je     0x453cd3
453c37:	e8 b9 ff 01 00       	call   0x473bf5
453c3c:	0f 84 8d 00 00 00    	je     0x453ccf
453c42:	a9 00 00 f0 7f       	test   $0x7ff00000,%eax
453c47:	0f 84 f5 00 00 00    	je     0x453d42
453c4d:	8a 4c 24 0f          	mov    0xf(%esp),%cl
453c51:	80 e1 80             	and    $0x80,%cl
453c54:	0f 85 52 01 00 00    	jne    0x453dac
453c5a:	d9 f1                	fyl2x
453c5c:	e8 4f ff 01 00       	call   0x473bb0
453c61:	80 f9 01             	cmp    $0x1,%cl
453c64:	75 02                	jne    0x453c68
453c66:	d9 e0                	fchs
453c68:	83 3d 18 bf 4b 00 00 	cmpl   $0x0,0x4bbf18
453c6f:	0f 85 d9 ff 01 00    	jne    0x473c4e
453c75:	8d 0d 40 ca 49 00    	lea    0x49ca40,%ecx
453c7b:	ba 1d 00 00 00       	mov    $0x1d,%edx
453c80:	e9 14 00 02 00       	jmp    0x473c99
453c85:	83 3d 18 bf 4b 00 00 	cmpl   $0x0,0x4bbf18
453c8c:	0f 85 bc ff 01 00    	jne    0x473c4e
453c92:	8d 0d 40 ca 49 00    	lea    0x49ca40,%ecx
453c98:	ba 1d 00 00 00       	mov    $0x1d,%edx
453c9d:	e8 ae fe 01 00       	call   0x473b50
453ca2:	5a                   	pop    %edx
453ca3:	c3                   	ret
453ca4:	8d 54 24 08          	lea    0x8(%esp),%edx
453ca8:	e8 48 ff 01 00       	call   0x473bf5
453cad:	d9 e8                	fld1
453caf:	df e9                	fucomip %st(1),%st
453cb1:	7a 05                	jp     0x453cb8
453cb3:	74 0e                	je     0x453cc3
453cb5:	41                   	inc    %ecx
453cb6:	eb 31                	jmp    0x453ce9
453cb8:	d9 c9                	fxch   %st(1)
453cba:	d9 e5                	fxam
453cbc:	9b df e0             	fstsw  %ax
453cbf:	9b                   	fwait
453cc0:	9e                   	sahf
453cc1:	75 08                	jne    0x453ccb
453cc3:	dd d8                	fstp   %st(0)
453cc5:	dd d8                	fstp   %st(0)
453cc7:	d9 e8                	fld1
453cc9:	5a                   	pop    %edx
453cca:	c3                   	ret
453ccb:	de c1                	faddp  %st,%st(1)
453ccd:	5a                   	pop    %edx
453cce:	c3                   	ret
453ccf:	33 c9                	xor    %ecx,%ecx
453cd1:	eb 16                	jmp    0x453ce9
453cd3:	33 c9                	xor    %ecx,%ecx
453cd5:	25 ff ff 0f 00       	and    $0xfffff,%eax
453cda:	0b 44 24 10          	or     0x10(%esp),%eax
453cde:	75 c4                	jne    0x453ca4
453ce0:	8d 54 24 08          	lea    0x8(%esp),%edx
453ce4:	e8 0c ff 01 00       	call   0x473bf5
453ce9:	8b 44 24 0c          	mov    0xc(%esp),%eax
453ced:	8b d0                	mov    %eax,%edx
453cef:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
453cf4:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
453cfa:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
453cff:	75 06                	jne    0x453d07
453d01:	0b 54 24 08          	or     0x8(%esp),%edx
453d05:	75 b1                	jne    0x453cb8
453d07:	85 c9                	test   %ecx,%ecx
453d09:	75 c0                	jne    0x453ccb
453d0b:	83 ec 74             	sub    $0x74,%esp
453d0e:	8b cc                	mov    %esp,%ecx
453d10:	51                   	push   %ecx
453d11:	83 ec 10             	sub    $0x10,%esp
453d14:	dd 1c 24             	fstpl  (%esp)
453d17:	dd 5c 24 08          	fstpl  0x8(%esp)
453d1b:	9b dd 71 08          	fsave  0x8(%ecx)
453d1f:	e8 82 00 02 00       	call   0x473da6
453d24:	83 c4 10             	add    $0x10,%esp
453d27:	59                   	pop    %ecx
453d28:	dd 61 08             	frstor 0x8(%ecx)
453d2b:	dd 01                	fldl   (%ecx)
453d2d:	83 c4 74             	add    $0x74,%esp
453d30:	85 c0                	test   %eax,%eax
453d32:	0f 84 16 ff 01 00    	je     0x473c4e
453d38:	b8 01 00 00 00       	mov    $0x1,%eax
453d3d:	e9 43 ff ff ff       	jmp    0x453c85
453d42:	8b 44 24 0c          	mov    0xc(%esp),%eax
453d46:	25 ff ff 0f 00       	and    $0xfffff,%eax
453d4b:	0b 44 24 08          	or     0x8(%esp),%eax
453d4f:	0f 85 f8 fe ff ff    	jne    0x453c4d
453d55:	dd d8                	fstp   %st(0)
453d57:	8b 44 24 14          	mov    0x14(%esp),%eax
453d5b:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
453d60:	0b 44 24 10          	or     0x10(%esp),%eax
453d64:	74 3d                	je     0x453da3
453d66:	e8 66 00 00 00       	call   0x453dd1
453d6b:	8a 6c 24 0f          	mov    0xf(%esp),%ch
453d6f:	c0 ed 07             	shr    $0x7,%ch
453d72:	f7 44 24 17 80 00 00 	testl  $0x80,0x17(%esp)
453d79:	00
453d7a:	74 16                	je     0x453d92
453d7c:	db 2d e0 df 49 00    	fldt   0x49dfe0
453d82:	84 cd                	test   %cl,%ch
453d84:	74 02                	je     0x453d88
453d86:	d9 e0                	fchs
453d88:	b8 02 00 00 00       	mov    $0x2,%eax
453d8d:	e9 f3 fe ff ff       	jmp    0x453c85
453d92:	d9 ee                	fldz
453d94:	84 cd                	test   %cl,%ch
453d96:	0f 84 b2 fe 01 00    	je     0x473c4e
453d9c:	d9 e0                	fchs
453d9e:	e9 ab fe 01 00       	jmp    0x473c4e
453da3:	dd d8                	fstp   %st(0)
453da5:	d9 e8                	fld1
453da7:	e9 a2 fe 01 00       	jmp    0x473c4e
453dac:	d9 c1                	fld    %st(1)
453dae:	e8 1e 00 00 00       	call   0x453dd1
453db3:	d9 e0                	fchs
453db5:	84 c9                	test   %cl,%cl
453db7:	0f 85 9d fe ff ff    	jne    0x453c5a
453dbd:	dd d8                	fstp   %st(0)
453dbf:	dd d8                	fstp   %st(0)
453dc1:	db 2d 40 e0 49 00    	fldt   0x49e040
453dc7:	b8 01 00 00 00       	mov    $0x1,%eax
453dcc:	e9 b4 fe ff ff       	jmp    0x453c85
453dd1:	d9 c0                	fld    %st(0)
453dd3:	d9 fc                	frndint
453dd5:	d8 d9                	fcomp  %st(1)
453dd7:	b1 00                	mov    $0x0,%cl
453dd9:	9b df e0             	fstsw  %ax
453ddc:	9e                   	sahf
453ddd:	75 17                	jne    0x453df6
453ddf:	dc 0d 44 ca 49 00    	fmull  0x49ca44
453de5:	fe c1                	inc    %cl
453de7:	d9 c0                	fld    %st(0)
453de9:	d9 fc                	frndint
453deb:	de d9                	fcompp
453ded:	9b df e0             	fstsw  %ax
453df0:	9e                   	sahf
453df1:	75 02                	jne    0x453df5
453df3:	fe c1                	inc    %cl
453df5:	c3                   	ret
453df6:	dd d8                	fstp   %st(0)
453df8:	c3                   	ret
453df9:	8b ff                	mov    %edi,%edi
453dfb:	55                   	push   %ebp
453dfc:	8b ec                	mov    %esp,%ebp
453dfe:	83 ec 0c             	sub    $0xc,%esp
453e01:	56                   	push   %esi
453e02:	57                   	push   %edi
453e03:	bf ff ff 00 00       	mov    $0xffff,%edi
453e08:	57                   	push   %edi
453e09:	68 3f 13 00 00       	push   $0x133f
453e0e:	e8 7a 06 02 00       	call   0x47448d
453e13:	dd 45 08             	fldl   0x8(%ebp)
453e16:	8b f0                	mov    %eax,%esi
453e18:	59                   	pop    %ecx
453e19:	59                   	pop    %ecx
453e1a:	0f b7 4d 0e          	movzwl 0xe(%ebp),%ecx
453e1e:	b8 f0 7f 00 00       	mov    $0x7ff0,%eax
453e23:	23 c8                	and    %eax,%ecx
453e25:	66 3b c8             	cmp    %ax,%cx
453e28:	75 69                	jne    0x453e93
453e2a:	51                   	push   %ecx
453e2b:	51                   	push   %ecx
453e2c:	dd 1c 24             	fstpl  (%esp)
453e2f:	e8 a9 04 02 00       	call   0x4742dd
453e34:	59                   	pop    %ecx
453e35:	59                   	pop    %ecx
453e36:	85 c0                	test   %eax,%eax
453e38:	7e 2d                	jle    0x453e67
453e3a:	83 f8 02             	cmp    $0x2,%eax
453e3d:	7e 61                	jle    0x453ea0
453e3f:	83 f8 03             	cmp    $0x3,%eax
453e42:	75 23                	jne    0x453e67
453e44:	db 45 10             	fildl  0x10(%ebp)
453e47:	83 ec 10             	sub    $0x10,%esp
453e4a:	dd 5d f4             	fstpl  -0xc(%ebp)
453e4d:	dd 45 f4             	fldl   -0xc(%ebp)
453e50:	dd 5c 24 08          	fstpl  0x8(%esp)
453e54:	dd 45 08             	fldl   0x8(%ebp)
453e57:	dd 1c 24             	fstpl  (%esp)
453e5a:	e8 71 9f 01 00       	call   0x46ddd0
453e5f:	83 c4 10             	add    $0x10,%esp
453e62:	e9 73 01 00 00       	jmp    0x453fda
453e67:	dd 45 08             	fldl   0x8(%ebp)
453e6a:	dd 05 50 ca 49 00    	fldl   0x49ca50
453e70:	d8 c1                	fadd   %st(1),%st
453e72:	56                   	push   %esi
453e73:	83 ec 18             	sub    $0x18,%esp
453e76:	dd 5c 24 10          	fstpl  0x10(%esp)
453e7a:	db 45 10             	fildl  0x10(%ebp)
453e7d:	dd 5d f4             	fstpl  -0xc(%ebp)
453e80:	dd 45 f4             	fldl   -0xc(%ebp)
453e83:	dd 5c 24 08          	fstpl  0x8(%esp)
453e87:	dd 1c 24             	fstpl  (%esp)
453e8a:	6a 19                	push   $0x19
453e8c:	6a 08                	push   $0x8
453e8e:	e9 3f 01 00 00       	jmp    0x453fd2
453e93:	d9 ee                	fldz
453e95:	dd e9                	fucomp %st(1)
453e97:	df e0                	fnstsw %ax
453e99:	f6 c4 44             	test   $0x44,%ah
453e9c:	7a 13                	jp     0x453eb1
453e9e:	dd d8                	fstp   %st(0)
453ea0:	57                   	push   %edi
453ea1:	56                   	push   %esi
453ea2:	e8 e6 05 02 00       	call   0x47448d
453ea7:	dd 45 08             	fldl   0x8(%ebp)
453eaa:	59                   	pop    %ecx
453eab:	59                   	pop    %ecx
453eac:	e9 29 01 00 00       	jmp    0x453fda
453eb1:	8d 45 fc             	lea    -0x4(%ebp),%eax
453eb4:	50                   	push   %eax
453eb5:	51                   	push   %ecx
453eb6:	51                   	push   %ecx
453eb7:	dd 1c 24             	fstpl  (%esp)
453eba:	e8 d9 02 02 00       	call   0x474198
453ebf:	8b 4d 10             	mov    0x10(%ebp),%ecx
453ec2:	83 c4 0c             	add    $0xc,%esp
453ec5:	8b 55 fc             	mov    -0x4(%ebp),%edx
453ec8:	85 c9                	test   %ecx,%ecx
453eca:	79 0d                	jns    0x453ed9
453ecc:	b8 00 00 00 80       	mov    $0x80000000,%eax
453ed1:	2b c1                	sub    %ecx,%eax
453ed3:	3b d0                	cmp    %eax,%edx
453ed5:	7c 5a                	jl     0x453f31
453ed7:	eb 0f                	jmp    0x453ee8
453ed9:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
453ede:	2b c1                	sub    %ecx,%eax
453ee0:	3b d0                	cmp    %eax,%edx
453ee2:	0f 8f b8 00 00 00    	jg     0x453fa0
453ee8:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
453eeb:	3d 00 0a 00 00       	cmp    $0xa00,%eax
453ef0:	0f 8f aa 00 00 00    	jg     0x453fa0
453ef6:	3d 00 04 00 00       	cmp    $0x400,%eax
453efb:	7e 2d                	jle    0x453f2a
453efd:	05 00 fa ff ff       	add    $0xfffffa00,%eax
453f02:	50                   	push   %eax
453f03:	51                   	push   %ecx
453f04:	51                   	push   %ecx
453f05:	dd 1c 24             	fstpl  (%esp)
453f08:	e8 a1 03 02 00       	call   0x4742ae
453f0d:	83 c4 0c             	add    $0xc,%esp
453f10:	56                   	push   %esi
453f11:	83 ec 18             	sub    $0x18,%esp
453f14:	dd 5c 24 10          	fstpl  0x10(%esp)
453f18:	db 45 10             	fildl  0x10(%ebp)
453f1b:	dd 5d f4             	fstpl  -0xc(%ebp)
453f1e:	dd 45 f4             	fldl   -0xc(%ebp)
453f21:	dd 5c 24 08          	fstpl  0x8(%esp)
453f25:	e9 9e 00 00 00       	jmp    0x453fc8
453f2a:	3d 03 f6 ff ff       	cmp    $0xfffff603,%eax
453f2f:	7d 25                	jge    0x453f56
453f31:	d9 ee                	fldz
453f33:	de c9                	fmulp  %st,%st(1)
453f35:	56                   	push   %esi
453f36:	83 ec 18             	sub    $0x18,%esp
453f39:	dd 5c 24 10          	fstpl  0x10(%esp)
453f3d:	db 45 10             	fildl  0x10(%ebp)
453f40:	dd 5d f4             	fstpl  -0xc(%ebp)
453f43:	dd 45 f4             	fldl   -0xc(%ebp)
453f46:	dd 5c 24 08          	fstpl  0x8(%esp)
453f4a:	dd 45 08             	fldl   0x8(%ebp)
453f4d:	dd 1c 24             	fstpl  (%esp)
453f50:	6a 19                	push   $0x19
453f52:	6a 12                	push   $0x12
453f54:	eb 7c                	jmp    0x453fd2
453f56:	3d 03 fc ff ff       	cmp    $0xfffffc03,%eax
453f5b:	7d 26                	jge    0x453f83
453f5d:	05 00 06 00 00       	add    $0x600,%eax
453f62:	50                   	push   %eax
453f63:	51                   	push   %ecx
453f64:	51                   	push   %ecx
453f65:	dd 1c 24             	fstpl  (%esp)
453f68:	e8 41 03 02 00       	call   0x4742ae
453f6d:	83 c4 0c             	add    $0xc,%esp
453f70:	56                   	push   %esi
453f71:	83 ec 18             	sub    $0x18,%esp
453f74:	dd 5c 24 10          	fstpl  0x10(%esp)
453f78:	db 45 10             	fildl  0x10(%ebp)
453f7b:	dd 5d f4             	fstpl  -0xc(%ebp)
453f7e:	dd 45 f4             	fldl   -0xc(%ebp)
453f81:	eb c3                	jmp    0x453f46
453f83:	50                   	push   %eax
453f84:	51                   	push   %ecx
453f85:	51                   	push   %ecx
453f86:	dd 1c 24             	fstpl  (%esp)
453f89:	e8 20 03 02 00       	call   0x4742ae
453f8e:	57                   	push   %edi
453f8f:	56                   	push   %esi
453f90:	dd 5d f4             	fstpl  -0xc(%ebp)
453f93:	e8 f5 04 02 00       	call   0x47448d
453f98:	dd 45 f4             	fldl   -0xc(%ebp)
453f9b:	83 c4 14             	add    $0x14,%esp
453f9e:	eb 3a                	jmp    0x453fda
453fa0:	56                   	push   %esi
453fa1:	83 ec 10             	sub    $0x10,%esp
453fa4:	dd 5c 24 08          	fstpl  0x8(%esp)
453fa8:	dd 05 d0 e0 49 00    	fldl   0x49e0d0
453fae:	dd 1c 24             	fstpl  (%esp)
453fb1:	e8 6d ff 01 00       	call   0x473f23
453fb6:	dd 5c 24 08          	fstpl  0x8(%esp)
453fba:	db 45 10             	fildl  0x10(%ebp)
453fbd:	dd 5d f4             	fstpl  -0xc(%ebp)
453fc0:	dd 45 f4             	fldl   -0xc(%ebp)
453fc3:	dd 1c 24             	fstpl  (%esp)
453fc6:	51                   	push   %ecx
453fc7:	51                   	push   %ecx
453fc8:	dd 45 08             	fldl   0x8(%ebp)
453fcb:	dd 1c 24             	fstpl  (%esp)
453fce:	6a 19                	push   $0x19
453fd0:	6a 11                	push   $0x11
453fd2:	e8 11 9b 01 00       	call   0x46dae8
453fd7:	83 c4 24             	add    $0x24,%esp