47fbe1:	e8 c1 a3 00 00       	call   0x489fa7
47fbe6:	57                   	push   %edi
47fbe7:	56                   	push   %esi
47fbe8:	dd 5d f4             	fstpl  -0xc(%ebp)
47fbeb:	e8 3a a8 00 00       	call   0x48a42a
47fbf0:	83 c4 18             	add    $0x18,%esp
47fbf3:	dd 45 f4             	fldl   -0xc(%ebp)
47fbf6:	e9 47 01 00 00       	jmp    0x47fd42
47fbfb:	d9 ee                	fldz
47fbfd:	dd e9                	fucomp %st(1)
47fbff:	df e0                	fnstsw %ax
47fc01:	f6 c4 44             	test   $0x44,%ah
47fc04:	7a 13                	jp     0x47fc19
47fc06:	dd d8                	fstp   %st(0)
47fc08:	57                   	push   %edi
47fc09:	56                   	push   %esi
47fc0a:	e8 1b a8 00 00       	call   0x48a42a
47fc0f:	dd 45 08             	fldl   0x8(%ebp)
47fc12:	59                   	pop    %ecx
47fc13:	59                   	pop    %ecx
47fc14:	e9 29 01 00 00       	jmp    0x47fd42
47fc19:	8d 45 fc             	lea    -0x4(%ebp),%eax
47fc1c:	50                   	push   %eax
47fc1d:	51                   	push   %ecx
47fc1e:	51                   	push   %ecx
47fc1f:	dd 1c 24             	fstpl  (%esp)
47fc22:	e8 ba 9d 00 00       	call   0x4899e1
47fc27:	8b 4d 10             	mov    0x10(%ebp),%ecx
47fc2a:	83 c4 0c             	add    $0xc,%esp
47fc2d:	8b 55 fc             	mov    -0x4(%ebp),%edx
47fc30:	85 c9                	test   %ecx,%ecx
47fc32:	79 0d                	jns    0x47fc41
47fc34:	b8 00 00 00 80       	mov    $0x80000000,%eax
47fc39:	2b c1                	sub    %ecx,%eax
47fc3b:	3b d0                	cmp    %eax,%edx
47fc3d:	7c 5a                	jl     0x47fc99
47fc3f:	eb 0f                	jmp    0x47fc50
47fc41:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
47fc46:	2b c1                	sub    %ecx,%eax
47fc48:	3b d0                	cmp    %eax,%edx
47fc4a:	0f 8f b8 00 00 00    	jg     0x47fd08
47fc50:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
47fc53:	3d 00 0a 00 00       	cmp    $0xa00,%eax
47fc58:	0f 8f aa 00 00 00    	jg     0x47fd08
47fc5e:	3d 00 04 00 00       	cmp    $0x400,%eax
47fc63:	7e 2d                	jle    0x47fc92
47fc65:	05 00 fa ff ff       	add    $0xfffffa00,%eax
47fc6a:	50                   	push   %eax
47fc6b:	51                   	push   %ecx
47fc6c:	51                   	push   %ecx
47fc6d:	dd 1c 24             	fstpl  (%esp)
47fc70:	e8 3e 9e 00 00       	call   0x489ab3
47fc75:	83 c4 0c             	add    $0xc,%esp
47fc78:	56                   	push   %esi
47fc79:	83 ec 18             	sub    $0x18,%esp
47fc7c:	dd 5c 24 10          	fstpl  0x10(%esp)
47fc80:	db 45 10             	fildl  0x10(%ebp)
47fc83:	dd 5d f4             	fstpl  -0xc(%ebp)
47fc86:	dd 45 f4             	fldl   -0xc(%ebp)
47fc89:	dd 5c 24 08          	fstpl  0x8(%esp)
47fc8d:	e9 9e 00 00 00       	jmp    0x47fd30
47fc92:	3d 03 f6 ff ff       	cmp    $0xfffff603,%eax
47fc97:	7d 25                	jge    0x47fcbe
47fc99:	d9 ee                	fldz
47fc9b:	de c9                	fmulp  %st,%st(1)
47fc9d:	56                   	push   %esi
47fc9e:	83 ec 18             	sub    $0x18,%esp
47fca1:	dd 5c 24 10          	fstpl  0x10(%esp)
47fca5:	db 45 10             	fildl  0x10(%ebp)
47fca8:	dd 5d f4             	fstpl  -0xc(%ebp)
47fcab:	dd 45 f4             	fldl   -0xc(%ebp)
47fcae:	dd 5c 24 08          	fstpl  0x8(%esp)
47fcb2:	dd 45 08             	fldl   0x8(%ebp)
47fcb5:	dd 1c 24             	fstpl  (%esp)
47fcb8:	6a 19                	push   $0x19
47fcba:	6a 12                	push   $0x12
47fcbc:	eb 7c                	jmp    0x47fd3a
47fcbe:	3d 03 fc ff ff       	cmp    $0xfffffc03,%eax
47fcc3:	7d 26                	jge    0x47fceb
47fcc5:	05 00 06 00 00       	add    $0x600,%eax
47fcca:	50                   	push   %eax
47fccb:	51                   	push   %ecx
47fccc:	51                   	push   %ecx
47fccd:	dd 1c 24             	fstpl  (%esp)
47fcd0:	e8 de 9d 00 00       	call   0x489ab3
47fcd5:	83 c4 0c             	add    $0xc,%esp
47fcd8:	56                   	push   %esi
47fcd9:	83 ec 18             	sub    $0x18,%esp
47fcdc:	dd 5c 24 10          	fstpl  0x10(%esp)
47fce0:	db 45 10             	fildl  0x10(%ebp)
47fce3:	dd 5d f4             	fstpl  -0xc(%ebp)
47fce6:	dd 45 f4             	fldl   -0xc(%ebp)
47fce9:	eb c3                	jmp    0x47fcae
47fceb:	50                   	push   %eax
47fcec:	51                   	push   %ecx
47fced:	51                   	push   %ecx
47fcee:	dd 1c 24             	fstpl  (%esp)
47fcf1:	e8 bd 9d 00 00       	call   0x489ab3
47fcf6:	57                   	push   %edi
47fcf7:	56                   	push   %esi
47fcf8:	dd 5d f4             	fstpl  -0xc(%ebp)
47fcfb:	e8 2a a7 00 00       	call   0x48a42a
47fd00:	83 c4 14             	add    $0x14,%esp
47fd03:	e9 eb fe ff ff       	jmp    0x47fbf3
47fd08:	56                   	push   %esi
47fd09:	83 ec 10             	sub    $0x10,%esp
47fd0c:	dd 5c 24 08          	fstpl  0x8(%esp)
47fd10:	dd 05 10 3f 4a 00    	fldl   0x4a3f10
47fd16:	dd 1c 24             	fstpl  (%esp)
47fd19:	e8 7a 18 00 00       	call   0x481598
47fd1e:	dd 5c 24 08          	fstpl  0x8(%esp)
47fd22:	db 45 10             	fildl  0x10(%ebp)
47fd25:	dd 5d f4             	fstpl  -0xc(%ebp)
47fd28:	dd 45 f4             	fldl   -0xc(%ebp)
47fd2b:	dd 1c 24             	fstpl  (%esp)
47fd2e:	51                   	push   %ecx
47fd2f:	51                   	push   %ecx
47fd30:	dd 45 08             	fldl   0x8(%ebp)
47fd33:	dd 1c 24             	fstpl  (%esp)
47fd36:	6a 19                	push   $0x19
47fd38:	6a 11                	push   $0x11
47fd3a:	e8 06 9f 00 00       	call   0x489c45
47fd3f:	83 c4 24             	add    $0x24,%esp
47fd42:	5f                   	pop    %edi
47fd43:	5e                   	pop    %esi
47fd44:	c9                   	leave
47fd45:	c3                   	ret
47fd46:	8b ff                	mov    %edi,%edi
47fd48:	55                   	push   %ebp
47fd49:	8b ec                	mov    %esp,%ebp
47fd4b:	51                   	push   %ecx
47fd4c:	51                   	push   %ecx
47fd4d:	56                   	push   %esi
47fd4e:	8b 75 10             	mov    0x10(%ebp),%esi
47fd51:	85 f6                	test   %esi,%esi
47fd53:	75 17                	jne    0x47fd6c
47fd55:	e8 db a1 ff ff       	call   0x479f35
47fd5a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
47fd60:	e8 bc 98 ff ff       	call   0x479621
47fd65:	d9 ee                	fldz
47fd67:	e9 d1 00 00 00       	jmp    0x47fe3d
47fd6c:	53                   	push   %ebx
47fd6d:	57                   	push   %edi
47fd6e:	bb ff ff 00 00       	mov    $0xffff,%ebx
47fd73:	53                   	push   %ebx
47fd74:	68 3f 13 00 00       	push   $0x133f
47fd79:	e8 ac a6 00 00       	call   0x48a42a
47fd7e:	dd 45 08             	fldl   0x8(%ebp)
47fd81:	8b f8                	mov    %eax,%edi
47fd83:	59                   	pop    %ecx
47fd84:	59                   	pop    %ecx
47fd85:	0f b7 4d 0e          	movzwl 0xe(%ebp),%ecx
47fd89:	b8 f0 7f 00 00       	mov    $0x7ff0,%eax
47fd8e:	23 c8                	and    %eax,%ecx
47fd90:	66 3b c8             	cmp    %ax,%cx
47fd93:	75 48                	jne    0x47fddd
47fd95:	83 0e ff             	orl    $0xffffffff,(%esi)
47fd98:	51                   	push   %ecx
47fd99:	51                   	push   %ecx
47fd9a:	dd 1c 24             	fstpl  (%esp)
47fd9d:	e8 3e 9d 00 00       	call   0x489ae0
47fda2:	59                   	pop    %ecx
47fda3:	59                   	pop    %ecx
47fda4:	83 e8 01             	sub    $0x1,%eax
47fda7:	74 26                	je     0x47fdcf
47fda9:	83 e8 01             	sub    $0x1,%eax
47fdac:	74 21                	je     0x47fdcf
47fdae:	83 e8 01             	sub    $0x1,%eax
47fdb1:	74 1c                	je     0x47fdcf
47fdb3:	dd 45 08             	fldl   0x8(%ebp)
47fdb6:	dd 05 68 73 4b 00    	fldl   0x4b7368
47fdbc:	57                   	push   %edi
47fdbd:	83 ec 10             	sub    $0x10,%esp
47fdc0:	d8 c1                	fadd   %st(1),%st
47fdc2:	dd 5c 24 08          	fstpl  0x8(%esp)
47fdc6:	dd 1c 24             	fstpl  (%esp)
47fdc9:	6a 17                	push   $0x17
47fdcb:	6a 08                	push   $0x8
47fdcd:	eb 44                	jmp    0x47fe13
47fdcf:	53                   	push   %ebx
47fdd0:	57                   	push   %edi
47fdd1:	e8 54 a6 00 00       	call   0x48a42a
47fdd6:	dd 45 08             	fldl   0x8(%ebp)
47fdd9:	59                   	pop    %ecx
47fdda:	59                   	pop    %ecx
47fddb:	eb 5e                	jmp    0x47fe3b
47fddd:	d9 ee                	fldz
47fddf:	dd e9                	fucomp %st(1)
47fde1:	df e0                	fnstsw %ax
47fde3:	f6 c4 44             	test   $0x44,%ah
47fde6:	7a 38                	jp     0x47fe20
47fde8:	51                   	push   %ecx
47fde9:	51                   	push   %ecx
47fdea:	dd 1c 24             	fstpl  (%esp)
47fded:	e8 cb a6 00 00       	call   0x48a4bd
47fdf2:	59                   	pop    %ecx
47fdf3:	59                   	pop    %ecx
47fdf4:	85 c0                	test   %eax,%eax
47fdf6:	74 25                	je     0x47fe1d
47fdf8:	83 26 00             	andl   $0x0,(%esi)
47fdfb:	dd 05 30 28 4a 00    	fldl   0x4a2830
47fe01:	57                   	push   %edi
47fe02:	83 ec 10             	sub    $0x10,%esp
47fe05:	dd 5c 24 08          	fstpl  0x8(%esp)
47fe09:	dd 45 08             	fldl   0x8(%ebp)
47fe0c:	dd 1c 24             	fstpl  (%esp)
47fe0f:	6a 17                	push   $0x17
47fe11:	6a 00                	push   $0x0
47fe13:	e8 5f 9d 00 00       	call   0x489b77
47fe18:	83 c4 1c             	add    $0x1c,%esp
47fe1b:	eb 1e                	jmp    0x47fe3b
47fe1d:	dd 45 08             	fldl   0x8(%ebp)
47fe20:	56                   	push   %esi
47fe21:	51                   	push   %ecx
47fe22:	51                   	push   %ecx
47fe23:	dd 1c 24             	fstpl  (%esp)
47fe26:	e8 b6 9b 00 00       	call   0x4899e1
47fe2b:	53                   	push   %ebx
47fe2c:	57                   	push   %edi
47fe2d:	dd 5d f8             	fstpl  -0x8(%ebp)
47fe30:	e8 f5 a5 00 00       	call   0x48a42a
47fe35:	dd 45 f8             	fldl   -0x8(%ebp)
47fe38:	83 c4 14             	add    $0x14,%esp
47fe3b:	5f                   	pop    %edi
47fe3c:	5b                   	pop    %ebx
47fe3d:	5e                   	pop    %esi
47fe3e:	c9                   	leave
47fe3f:	c3                   	ret
47fe40:	8b ff                	mov    %edi,%edi
47fe42:	55                   	push   %ebp
47fe43:	8b ec                	mov    %esp,%ebp
47fe45:	51                   	push   %ecx
47fe46:	8b 4d 08             	mov    0x8(%ebp),%ecx
47fe49:	53                   	push   %ebx
47fe4a:	8b 5d 10             	mov    0x10(%ebp),%ebx
47fe4d:	56                   	push   %esi
47fe4e:	8b 75 14             	mov    0x14(%ebp),%esi
47fe51:	57                   	push   %edi
47fe52:	85 f6                	test   %esi,%esi
47fe54:	75 1f                	jne    0x47fe75
47fe56:	85 c9                	test   %ecx,%ecx
47fe58:	75 1f                	jne    0x47fe79
47fe5a:	39 75 0c             	cmp    %esi,0xc(%ebp)
47fe5d:	74 2a                	je     0x47fe89
47fe5f:	e8 d1 a0 ff ff       	call   0x479f35
47fe64:	6a 16                	push   $0x16
47fe66:	5e                   	pop    %esi
47fe67:	89 30                	mov    %esi,(%eax)
47fe69:	e8 b3 97 ff ff       	call   0x479621
47fe6e:	8b c6                	mov    %esi,%eax
47fe70:	5f                   	pop    %edi
47fe71:	5e                   	pop    %esi
47fe72:	5b                   	pop    %ebx
47fe73:	c9                   	leave
47fe74:	c3                   	ret
47fe75:	85 c9                	test   %ecx,%ecx
47fe77:	74 e6                	je     0x47fe5f
47fe79:	8b 45 0c             	mov    0xc(%ebp),%eax
47fe7c:	85 c0                	test   %eax,%eax
47fe7e:	74 df                	je     0x47fe5f
47fe80:	85 f6                	test   %esi,%esi
47fe82:	75 09                	jne    0x47fe8d
47fe84:	33 c0                	xor    %eax,%eax
47fe86:	66 89 01             	mov    %ax,(%ecx)
47fe89:	33 c0                	xor    %eax,%eax
47fe8b:	eb e3                	jmp    0x47fe70
47fe8d:	85 db                	test   %ebx,%ebx
47fe8f:	75 07                	jne    0x47fe98
47fe91:	33 c0                	xor    %eax,%eax
47fe93:	66 89 01             	mov    %ax,(%ecx)
47fe96:	eb c7                	jmp    0x47fe5f
47fe98:	2b d9                	sub    %ecx,%ebx
47fe9a:	89 75 fc             	mov    %esi,-0x4(%ebp)
47fe9d:	8b d1                	mov    %ecx,%edx
47fe9f:	8b f8                	mov    %eax,%edi
47fea1:	83 fe ff             	cmp    $0xffffffff,%esi
47fea4:	75 16                	jne    0x47febc
47fea6:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
47feaa:	66 89 02             	mov    %ax,(%edx)
47fead:	8d 52 02             	lea    0x2(%edx),%edx
47feb0:	66 85 c0             	test   %ax,%ax
47feb3:	74 d4                	je     0x47fe89
47feb5:	83 ef 01             	sub    $0x1,%edi
47feb8:	75 ec                	jne    0x47fea6
47feba:	eb 26                	jmp    0x47fee2
47febc:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
47fec0:	66 89 02             	mov    %ax,(%edx)
47fec3:	8d 52 02             	lea    0x2(%edx),%edx
47fec6:	66 85 c0             	test   %ax,%ax
47fec9:	74 be                	je     0x47fe89
47fecb:	8b 45 fc             	mov    -0x4(%ebp),%eax
47fece:	83 ef 01             	sub    $0x1,%edi
47fed1:	74 08                	je     0x47fedb
47fed3:	83 e8 01             	sub    $0x1,%eax
47fed6:	89 45 fc             	mov    %eax,-0x4(%ebp)
47fed9:	75 e1                	jne    0x47febc
47fedb:	85 c0                	test   %eax,%eax
47fedd:	75 03                	jne    0x47fee2
47fedf:	66 89 02             	mov    %ax,(%edx)
47fee2:	85 ff                	test   %edi,%edi
47fee4:	75 a3                	jne    0x47fe89
47fee6:	83 fe ff             	cmp    $0xffffffff,%esi
47fee9:	75 12                	jne    0x47fefd
47feeb:	8b 45 0c             	mov    0xc(%ebp),%eax
47feee:	33 d2                	xor    %edx,%edx
47fef0:	6a 50                	push   $0x50
47fef2:	66 89 54 41 fe       	mov    %dx,-0x2(%ecx,%eax,2)
47fef7:	58                   	pop    %eax
47fef8:	e9 73 ff ff ff       	jmp    0x47fe70
47fefd:	33 c0                	xor    %eax,%eax
47feff:	66 89 01             	mov    %ax,(%ecx)
47ff02:	e8 2e a0 ff ff       	call   0x479f35
47ff07:	6a 22                	push   $0x22
47ff09:	e9 58 ff ff ff       	jmp    0x47fe66
47ff0e:	8b ff                	mov    %edi,%edi
47ff10:	55                   	push   %ebp
47ff11:	8b ec                	mov    %esp,%ebp
47ff13:	5d                   	pop    %ebp
47ff14:	e9 27 ff ff ff       	jmp    0x47fe40
47ff19:	8b ff                	mov    %edi,%edi
47ff1b:	55                   	push   %ebp
47ff1c:	8b ec                	mov    %esp,%ebp
47ff1e:	83 ec 14             	sub    $0x14,%esp
47ff21:	56                   	push   %esi
47ff22:	8b 75 08             	mov    0x8(%ebp),%esi
47ff25:	85 f6                	test   %esi,%esi
47ff27:	75 13                	jne    0x47ff3c
47ff29:	e8 07 a0 ff ff       	call   0x479f35
47ff2e:	6a 16                	push   $0x16
47ff30:	5e                   	pop    %esi
47ff31:	89 30                	mov    %esi,(%eax)
47ff33:	e8 e9 96 ff ff       	call   0x479621
47ff38:	8b c6                	mov    %esi,%eax
47ff3a:	eb 53                	jmp    0x47ff8f
47ff3c:	57                   	push   %edi
47ff3d:	6a 09                	push   $0x9
47ff3f:	83 c8 ff             	or     $0xffffffff,%eax
47ff42:	8b fe                	mov    %esi,%edi
47ff44:	59                   	pop    %ecx
47ff45:	f3 ab                	rep stos %eax,%es:(%edi)
47ff47:	8b 7d 0c             	mov    0xc(%ebp),%edi
47ff4a:	85 ff                	test   %edi,%edi
47ff4c:	75 13                	jne    0x47ff61
47ff4e:	e8 e2 9f ff ff       	call   0x479f35
47ff53:	6a 16                	push   $0x16
47ff55:	5e                   	pop    %esi
47ff56:	89 30                	mov    %esi,(%eax)
47ff58:	e8 c4 96 ff ff       	call   0x479621
47ff5d:	8b c6                	mov    %esi,%eax
47ff5f:	eb 2d                	jmp    0x47ff8e