4168a2:	83 fa 1d             	cmp    $0x1d,%edx
4168a5:	74 07                	je     0x4168ae
4168a7:	e8 7b 00 00 00       	call   0x416927
4168ac:	5a                   	pop    %edx
4168ad:	c3                   	ret
4168ae:	e8 5d 00 00 00       	call   0x416910
4168b3:	5a                   	pop    %edx
4168b4:	c3                   	ret
4168b5:	d9 2c 24             	fldcw  (%esp)
4168b8:	5a                   	pop    %edx
4168b9:	c3                   	ret
4168ba:	dd 05 ac e4 41 00    	fldl   0x41e4ac
4168c0:	d9 c9                	fxch   %st(1)
4168c2:	d9 fd                	fscale
4168c4:	dd d9                	fstp   %st(1)
4168c6:	d9 c0                	fld    %st(0)
4168c8:	d9 e1                	fabs
4168ca:	dc 1d 9c e4 41 00    	fcompl 0x41e49c
4168d0:	9b df e0             	fstsw  %ax
4168d3:	9e                   	sahf
4168d4:	b8 04 00 00 00       	mov    $0x4,%eax
4168d9:	73 c7                	jae    0x4168a2
4168db:	dc 0d bc e4 41 00    	fmull  0x41e4bc
4168e1:	eb bf                	jmp    0x4168a2
4168e3:	dd 05 a4 e4 41 00    	fldl   0x41e4a4
4168e9:	d9 c9                	fxch   %st(1)
4168eb:	d9 fd                	fscale
4168ed:	dd d9                	fstp   %st(1)
4168ef:	d9 c0                	fld    %st(0)
4168f1:	d9 e1                	fabs
4168f3:	dc 1d 94 e4 41 00    	fcompl 0x41e494
4168f9:	9b df e0             	fstsw  %ax
4168fc:	9e                   	sahf
4168fd:	b8 03 00 00 00       	mov    $0x3,%eax
416902:	76 9e                	jbe    0x4168a2
416904:	dc 0d b4 e4 41 00    	fmull  0x41e4b4
41690a:	eb 96                	jmp    0x4168a2
41690c:	cc                   	int3
41690d:	cc                   	int3
41690e:	cc                   	int3
41690f:	cc                   	int3
416910:	55                   	push   %ebp
416911:	8b ec                	mov    %esp,%ebp
416913:	83 c4 e0             	add    $0xffffffe0,%esp
416916:	89 45 e0             	mov    %eax,-0x20(%ebp)
416919:	8b 45 18             	mov    0x18(%ebp),%eax
41691c:	89 45 f0             	mov    %eax,-0x10(%ebp)
41691f:	8b 45 1c             	mov    0x1c(%ebp),%eax
416922:	89 45 f4             	mov    %eax,-0xc(%ebp)
416925:	eb 09                	jmp    0x416930
416927:	55                   	push   %ebp
416928:	8b ec                	mov    %esp,%ebp
41692a:	83 c4 e0             	add    $0xffffffe0,%esp
41692d:	89 45 e0             	mov    %eax,-0x20(%ebp)
416930:	dd 5d f8             	fstpl  -0x8(%ebp)
416933:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
416936:	8b 45 10             	mov    0x10(%ebp),%eax
416939:	8b 4d 14             	mov    0x14(%ebp),%ecx
41693c:	89 45 e8             	mov    %eax,-0x18(%ebp)
41693f:	89 4d ec             	mov    %ecx,-0x14(%ebp)
416942:	8d 45 08             	lea    0x8(%ebp),%eax
416945:	8d 4d e0             	lea    -0x20(%ebp),%ecx
416948:	50                   	push   %eax
416949:	51                   	push   %ecx
41694a:	52                   	push   %edx
41694b:	e8 58 04 00 00       	call   0x416da8
416950:	83 c4 0c             	add    $0xc,%esp
416953:	dd 45 f8             	fldl   -0x8(%ebp)
416956:	66 81 7d 08 7f 02    	cmpw   $0x27f,0x8(%ebp)
41695c:	74 03                	je     0x416961
41695e:	d9 6d 08             	fldcw  0x8(%ebp)
416961:	c9                   	leave
416962:	c3                   	ret
416963:	8b ff                	mov    %edi,%edi
416965:	55                   	push   %ebp
416966:	8b ec                	mov    %esp,%ebp
416968:	83 ec 20             	sub    $0x20,%esp
41696b:	83 3d 60 25 42 00 00 	cmpl   $0x0,0x422560
416972:	56                   	push   %esi
416973:	57                   	push   %edi
416974:	74 10                	je     0x416986
416976:	ff 35 70 25 42 00    	push   0x422570
41697c:	ff 15 b8 90 41 00    	call   *0x4190b8
416982:	8b f8                	mov    %eax,%edi
416984:	eb 05                	jmp    0x41698b
416986:	bf 94 93 40 00       	mov    $0x409394,%edi
41698b:	8b 45 14             	mov    0x14(%ebp),%eax
41698e:	83 f8 1a             	cmp    $0x1a,%eax
416991:	0f 8f de 00 00 00    	jg     0x416a75
416997:	0f 84 cc 00 00 00    	je     0x416a69
41699d:	83 f8 0e             	cmp    $0xe,%eax
4169a0:	7f 65                	jg     0x416a07
4169a2:	74 50                	je     0x4169f4
4169a4:	6a 02                	push   $0x2
4169a6:	59                   	pop    %ecx
4169a7:	2b c1                	sub    %ecx,%eax
4169a9:	74 3a                	je     0x4169e5
4169ab:	83 e8 01             	sub    $0x1,%eax
4169ae:	74 29                	je     0x4169d9
4169b0:	83 e8 05             	sub    $0x5,%eax
4169b3:	74 15                	je     0x4169ca
4169b5:	83 e8 01             	sub    $0x1,%eax
4169b8:	0f 85 95 01 00 00    	jne    0x416b53
4169be:	c7 45 e4 c8 e4 41 00 	movl   $0x41e4c8,-0x1c(%ebp)
4169c5:	e9 01 01 00 00       	jmp    0x416acb
4169ca:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4169cd:	c7 45 e4 c8 e4 41 00 	movl   $0x41e4c8,-0x1c(%ebp)
4169d4:	e9 3f 01 00 00       	jmp    0x416b18
4169d9:	c7 45 e4 c4 e4 41 00 	movl   $0x41e4c4,-0x1c(%ebp)
4169e0:	e9 e6 00 00 00       	jmp    0x416acb
4169e5:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4169e8:	c7 45 e4 c4 e4 41 00 	movl   $0x41e4c4,-0x1c(%ebp)
4169ef:	e9 24 01 00 00       	jmp    0x416b18
4169f4:	c7 45 e0 03 00 00 00 	movl   $0x3,-0x20(%ebp)
4169fb:	c7 45 e4 d0 e4 41 00 	movl   $0x41e4d0,-0x1c(%ebp)
416a02:	e9 11 01 00 00       	jmp    0x416b18
416a07:	83 e8 0f             	sub    $0xf,%eax
416a0a:	74 54                	je     0x416a60
416a0c:	83 e8 09             	sub    $0x9,%eax
416a0f:	74 43                	je     0x416a54
416a11:	83 e8 01             	sub    $0x1,%eax
416a14:	0f 85 39 01 00 00    	jne    0x416b53
416a1a:	c7 45 e4 d4 e4 41 00 	movl   $0x41e4d4,-0x1c(%ebp)
416a21:	8b 45 08             	mov    0x8(%ebp),%eax
416a24:	8b cf                	mov    %edi,%ecx
416a26:	8b 75 10             	mov    0x10(%ebp),%esi
416a29:	c7 45 e0 04 00 00 00 	movl   $0x4,-0x20(%ebp)
416a30:	dd 00                	fldl   (%eax)
416a32:	8b 45 0c             	mov    0xc(%ebp),%eax
416a35:	dd 5d e8             	fstpl  -0x18(%ebp)
416a38:	dd 00                	fldl   (%eax)
416a3a:	8d 45 e0             	lea    -0x20(%ebp),%eax
416a3d:	dd 5d f0             	fstpl  -0x10(%ebp)
416a40:	dd 06                	fldl   (%esi)
416a42:	50                   	push   %eax
416a43:	dd 5d f8             	fstpl  -0x8(%ebp)
416a46:	ff 15 54 91 41 00    	call   *0x419154
416a4c:	ff d7                	call   *%edi
416a4e:	59                   	pop    %ecx
416a4f:	e9 fa 00 00 00       	jmp    0x416b4e
416a54:	c7 45 e0 03 00 00 00 	movl   $0x3,-0x20(%ebp)
416a5b:	e9 b1 00 00 00       	jmp    0x416b11
416a60:	c7 45 e4 d0 e4 41 00 	movl   $0x41e4d0,-0x1c(%ebp)
416a67:	eb b8                	jmp    0x416a21
416a69:	d9 e8                	fld1
416a6b:	8b 45 10             	mov    0x10(%ebp),%eax
416a6e:	dd 18                	fstpl  (%eax)
416a70:	e9 de 00 00 00       	jmp    0x416b53
416a75:	83 e8 1b             	sub    $0x1b,%eax
416a78:	0f 84 8c 00 00 00    	je     0x416b0a
416a7e:	83 e8 01             	sub    $0x1,%eax
416a81:	74 41                	je     0x416ac4
416a83:	83 e8 15             	sub    $0x15,%eax
416a86:	74 33                	je     0x416abb
416a88:	83 e8 09             	sub    $0x9,%eax
416a8b:	74 25                	je     0x416ab2
416a8d:	83 e8 03             	sub    $0x3,%eax
416a90:	74 17                	je     0x416aa9
416a92:	2d ab 03 00 00       	sub    $0x3ab,%eax
416a97:	74 09                	je     0x416aa2
416a99:	83 e8 01             	sub    $0x1,%eax
416a9c:	0f 85 b1 00 00 00    	jne    0x416b53
416aa2:	8b 45 08             	mov    0x8(%ebp),%eax
416aa5:	dd 00                	fldl   (%eax)
416aa7:	eb c2                	jmp    0x416a6b
416aa9:	c7 45 e4 d8 e4 41 00 	movl   $0x41e4d8,-0x1c(%ebp)
416ab0:	eb 19                	jmp    0x416acb
416ab2:	c7 45 e4 e0 e4 41 00 	movl   $0x41e4e0,-0x1c(%ebp)
416ab9:	eb 10                	jmp    0x416acb
416abb:	c7 45 e4 e8 e4 41 00 	movl   $0x41e4e8,-0x1c(%ebp)
416ac2:	eb 07                	jmp    0x416acb
416ac4:	c7 45 e4 d4 e4 41 00 	movl   $0x41e4d4,-0x1c(%ebp)
416acb:	8b 45 08             	mov    0x8(%ebp),%eax
416ace:	8b cf                	mov    %edi,%ecx
416ad0:	8b 75 10             	mov    0x10(%ebp),%esi
416ad3:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
416ada:	dd 00                	fldl   (%eax)
416adc:	8b 45 0c             	mov    0xc(%ebp),%eax
416adf:	dd 5d e8             	fstpl  -0x18(%ebp)
416ae2:	dd 00                	fldl   (%eax)
416ae4:	8d 45 e0             	lea    -0x20(%ebp),%eax
416ae7:	dd 5d f0             	fstpl  -0x10(%ebp)
416aea:	dd 06                	fldl   (%esi)
416aec:	50                   	push   %eax
416aed:	dd 5d f8             	fstpl  -0x8(%ebp)
416af0:	ff 15 54 91 41 00    	call   *0x419154
416af6:	ff d7                	call   *%edi
416af8:	59                   	pop    %ecx
416af9:	85 c0                	test   %eax,%eax
416afb:	75 51                	jne    0x416b4e
416afd:	e8 2d 3c ff ff       	call   0x40a72f
416b02:	c7 00 21 00 00 00    	movl   $0x21,(%eax)
416b08:	eb 44                	jmp    0x416b4e
416b0a:	c7 45 e0 02 00 00 00 	movl   $0x2,-0x20(%ebp)
416b11:	c7 45 e4 d4 e4 41 00 	movl   $0x41e4d4,-0x1c(%ebp)
416b18:	8b 45 08             	mov    0x8(%ebp),%eax
416b1b:	8b cf                	mov    %edi,%ecx
416b1d:	8b 75 10             	mov    0x10(%ebp),%esi
416b20:	dd 00                	fldl   (%eax)
416b22:	8b 45 0c             	mov    0xc(%ebp),%eax
416b25:	dd 5d e8             	fstpl  -0x18(%ebp)
416b28:	dd 00                	fldl   (%eax)
416b2a:	8d 45 e0             	lea    -0x20(%ebp),%eax
416b2d:	dd 5d f0             	fstpl  -0x10(%ebp)
416b30:	dd 06                	fldl   (%esi)
416b32:	50                   	push   %eax
416b33:	dd 5d f8             	fstpl  -0x8(%ebp)
416b36:	ff 15 54 91 41 00    	call   *0x419154
416b3c:	ff d7                	call   *%edi
416b3e:	59                   	pop    %ecx
416b3f:	85 c0                	test   %eax,%eax
416b41:	75 0b                	jne    0x416b4e
416b43:	e8 e7 3b ff ff       	call   0x40a72f
416b48:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
416b4e:	dd 45 f8             	fldl   -0x8(%ebp)
416b51:	dd 1e                	fstpl  (%esi)
416b53:	5f                   	pop    %edi
416b54:	5e                   	pop    %esi
416b55:	c9                   	leave
416b56:	c3                   	ret
416b57:	8b ff                	mov    %edi,%edi
416b59:	55                   	push   %ebp
416b5a:	8b ec                	mov    %esp,%ebp
416b5c:	51                   	push   %ecx
416b5d:	51                   	push   %ecx
416b5e:	53                   	push   %ebx
416b5f:	56                   	push   %esi
416b60:	be ff ff 00 00       	mov    $0xffff,%esi
416b65:	56                   	push   %esi
416b66:	68 3f 1b 00 00       	push   $0x1b3f
416b6b:	e8 41 e5 ff ff       	call   0x4150b1
416b70:	dd 45 08             	fldl   0x8(%ebp)
416b73:	8b d8                	mov    %eax,%ebx
416b75:	59                   	pop    %ecx
416b76:	59                   	pop    %ecx
416b77:	0f b7 4d 0e          	movzwl 0xe(%ebp),%ecx
416b7b:	b8 f0 7f 00 00       	mov    $0x7ff0,%eax
416b80:	23 c8                	and    %eax,%ecx
416b82:	51                   	push   %ecx
416b83:	51                   	push   %ecx
416b84:	dd 1c 24             	fstpl  (%esp)
416b87:	66 3b c8             	cmp    %ax,%cx
416b8a:	75 46                	jne    0x416bd2
416b8c:	e8 a1 0b 00 00       	call   0x417732
416b91:	59                   	pop    %ecx
416b92:	59                   	pop    %ecx
416b93:	83 e8 01             	sub    $0x1,%eax
416b96:	74 2e                	je     0x416bc6
416b98:	83 e8 01             	sub    $0x1,%eax
416b9b:	74 29                	je     0x416bc6
416b9d:	83 e8 01             	sub    $0x1,%eax
416ba0:	74 24                	je     0x416bc6
416ba2:	dd 45 08             	fldl   0x8(%ebp)
416ba5:	dd 05 f0 e4 41 00    	fldl   0x41e4f0
416bab:	53                   	push   %ebx
416bac:	83 ec 10             	sub    $0x10,%esp
416baf:	d8 c1                	fadd   %st(1),%st
416bb1:	dd 5c 24 08          	fstpl  0x8(%esp)
416bb5:	dd 1c 24             	fstpl  (%esp)
416bb8:	6a 0c                	push   $0xc
416bba:	6a 08                	push   $0x8
416bbc:	e8 3f 03 00 00       	call   0x416f00
416bc1:	83 c4 1c             	add    $0x1c,%esp
416bc4:	eb 4b                	jmp    0x416c11
416bc6:	56                   	push   %esi
416bc7:	53                   	push   %ebx
416bc8:	e8 e4 e4 ff ff       	call   0x4150b1
416bcd:	dd 45 08             	fldl   0x8(%ebp)
416bd0:	eb 3d                	jmp    0x416c0f
416bd2:	e8 e1 02 00 00       	call   0x416eb8
416bd7:	dd 55 f8             	fstl   -0x8(%ebp)
416bda:	dd 45 08             	fldl   0x8(%ebp)
416bdd:	83 c4 08             	add    $0x8,%esp
416be0:	dd e1                	fucom  %st(1)
416be2:	df e0                	fnstsw %ax
416be4:	f6 c4 44             	test   $0x44,%ah
416be7:	7b 18                	jnp    0x416c01
416be9:	f6 c3 20             	test   $0x20,%bl
416bec:	75 13                	jne    0x416c01
416bee:	53                   	push   %ebx
416bef:	83 ec 10             	sub    $0x10,%esp
416bf2:	d9 c9                	fxch   %st(1)
416bf4:	dd 5c 24 08          	fstpl  0x8(%esp)
416bf8:	dd 1c 24             	fstpl  (%esp)
416bfb:	6a 0c                	push   $0xc
416bfd:	6a 10                	push   $0x10
416bff:	eb bb                	jmp    0x416bbc
416c01:	56                   	push   %esi
416c02:	dd d9                	fstp   %st(1)
416c04:	53                   	push   %ebx
416c05:	dd d8                	fstp   %st(0)
416c07:	e8 a5 e4 ff ff       	call   0x4150b1
416c0c:	dd 45 f8             	fldl   -0x8(%ebp)
416c0f:	59                   	pop    %ecx
416c10:	59                   	pop    %ecx
416c11:	5e                   	pop    %esi
416c12:	5b                   	pop    %ebx
416c13:	c9                   	leave
416c14:	c3                   	ret
416c15:	8b ff                	mov    %edi,%edi
416c17:	55                   	push   %ebp
416c18:	8b ec                	mov    %esp,%ebp
416c1a:	51                   	push   %ecx
416c1b:	51                   	push   %ecx
416c1c:	dd 45 08             	fldl   0x8(%ebp)
416c1f:	51                   	push   %ecx
416c20:	51                   	push   %ecx
416c21:	dd 1c 24             	fstpl  (%esp)
416c24:	e8 6c 0b 00 00       	call   0x417795
416c29:	59                   	pop    %ecx
416c2a:	59                   	pop    %ecx
416c2b:	a8 90                	test   $0x90,%al
416c2d:	75 4a                	jne    0x416c79
416c2f:	dd 45 08             	fldl   0x8(%ebp)
416c32:	51                   	push   %ecx
416c33:	51                   	push   %ecx
416c34:	dd 1c 24             	fstpl  (%esp)
416c37:	e8 7c 02 00 00       	call   0x416eb8
416c3c:	dd 45 08             	fldl   0x8(%ebp)
416c3f:	dd e1                	fucom  %st(1)
416c41:	df e0                	fnstsw %ax
416c43:	59                   	pop    %ecx
416c44:	59                   	pop    %ecx
416c45:	dd d9                	fstp   %st(1)
416c47:	f6 c4 44             	test   $0x44,%ah
416c4a:	7a 2b                	jp     0x416c77
416c4c:	dc 0d 20 ed 41 00    	fmull  0x41ed20
416c52:	51                   	push   %ecx
416c53:	51                   	push   %ecx
416c54:	dd 55 f8             	fstl   -0x8(%ebp)
416c57:	dd 1c 24             	fstpl  (%esp)
416c5a:	e8 59 02 00 00       	call   0x416eb8
416c5f:	dd 45 f8             	fldl   -0x8(%ebp)
416c62:	da e9                	fucompp
416c64:	df e0                	fnstsw %ax
416c66:	59                   	pop    %ecx
416c67:	59                   	pop    %ecx
416c68:	f6 c4 44             	test   $0x44,%ah
416c6b:	7a 05                	jp     0x416c72
416c6d:	6a 02                	push   $0x2
416c6f:	58                   	pop    %eax
416c70:	c9                   	leave
416c71:	c3                   	ret
416c72:	33 c0                	xor    %eax,%eax
416c74:	40                   	inc    %eax
416c75:	c9                   	leave
416c76:	c3                   	ret
416c77:	dd d8                	fstp   %st(0)
416c79:	33 c0                	xor    %eax,%eax
416c7b:	c9                   	leave