489702:	59                   	pop    %ecx
489703:	59                   	pop    %ecx
489704:	eb cf                	jmp    0x4896d5
489706:	8b 45 f8             	mov    -0x8(%ebp),%eax
489709:	8b 55 fc             	mov    -0x4(%ebp),%edx
48970c:	23 c2                	and    %edx,%eax
48970e:	3b c7                	cmp    %edi,%eax
489710:	74 c3                	je     0x4896d5
489712:	8b 45 f8             	mov    -0x8(%ebp),%eax
489715:	8b ce                	mov    %esi,%ecx
489717:	83 e6 3f             	and    $0x3f,%esi
48971a:	c1 f9 06             	sar    $0x6,%ecx
48971d:	6b f6 38             	imul   $0x38,%esi,%esi
489720:	8b 0c 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%ecx
489727:	80 64 31 28 fd       	andb   $0xfd,0x28(%ecx,%esi,1)
48972c:	5f                   	pop    %edi
48972d:	5e                   	pop    %esi
48972e:	c9                   	leave
48972f:	c3                   	ret
489730:	8b ff                	mov    %edi,%edi
489732:	55                   	push   %ebp
489733:	8b ec                	mov    %esp,%ebp
489735:	83 ec 28             	sub    $0x28,%esp
489738:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48973b:	56                   	push   %esi
48973c:	57                   	push   %edi
48973d:	6a 00                	push   $0x0
48973f:	e8 9c db fe ff       	call   0x4772e0
489744:	8d 45 d8             	lea    -0x28(%ebp),%eax
489747:	50                   	push   %eax
489748:	ff 75 14             	push   0x14(%ebp)
48974b:	ff 75 10             	push   0x10(%ebp)
48974e:	ff 75 0c             	push   0xc(%ebp)
489751:	ff 75 08             	push   0x8(%ebp)
489754:	e8 54 ff ff ff       	call   0x4896ad
489759:	83 c4 14             	add    $0x14,%esp
48975c:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48975f:	8b f0                	mov    %eax,%esi
489761:	8b fa                	mov    %edx,%edi
489763:	e8 d8 db fe ff       	call   0x477340
489768:	8b d7                	mov    %edi,%edx
48976a:	8b c6                	mov    %esi,%eax
48976c:	5f                   	pop    %edi
48976d:	5e                   	pop    %esi
48976e:	c9                   	leave
48976f:	c3                   	ret
489770:	8b ff                	mov    %edi,%edi
489772:	55                   	push   %ebp
489773:	8b ec                	mov    %esp,%ebp
489775:	ff 75 18             	push   0x18(%ebp)
489778:	ff 75 14             	push   0x14(%ebp)
48977b:	ff 75 10             	push   0x10(%ebp)
48977e:	ff 75 0c             	push   0xc(%ebp)
489781:	ff 75 08             	push   0x8(%ebp)
489784:	e8 24 ff ff ff       	call   0x4896ad
489789:	83 c4 14             	add    $0x14,%esp
48978c:	5d                   	pop    %ebp
48978d:	c3                   	ret
48978e:	8b ff                	mov    %edi,%edi
489790:	55                   	push   %ebp
489791:	8b ec                	mov    %esp,%ebp
489793:	b8 ff ff 00 00       	mov    $0xffff,%eax
489798:	83 ec 14             	sub    $0x14,%esp
48979b:	66 39 45 08          	cmp    %ax,0x8(%ebp)
48979f:	0f 84 bb 00 00 00    	je     0x489860
4897a5:	56                   	push   %esi
4897a6:	ff 75 0c             	push   0xc(%ebp)
4897a9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4897ac:	e8 60 03 ff ff       	call   0x479b11
4897b1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4897b4:	be 00 01 00 00       	mov    $0x100,%esi
4897b9:	66 8b 45 08          	mov    0x8(%ebp),%ax
4897bd:	81 79 08 e9 fd 00 00 	cmpl   $0xfde9,0x8(%ecx)
4897c4:	75 29                	jne    0x4897ef
4897c6:	8d 56 80             	lea    -0x80(%esi),%edx
4897c9:	66 3b c2             	cmp    %dx,%ax
4897cc:	73 55                	jae    0x489823
4897ce:	0f b6 d0             	movzbl %al,%edx
4897d1:	f6 04 55 5a 2e 4a 00 	testb  $0x1,0x4a2e5a(,%edx,2)
4897d8:	01
4897d9:	74 0c                	je     0x4897e7
4897db:	8b 81 94 00 00 00    	mov    0x94(%ecx),%eax
4897e1:	0f b6 04 10          	movzbl (%eax,%edx,1),%eax
4897e5:	eb 03                	jmp    0x4897ea
4897e7:	0f b6 c0             	movzbl %al,%eax
4897ea:	0f b7 c0             	movzwl %ax,%eax
4897ed:	eb 2c                	jmp    0x48981b
4897ef:	66 3b c6             	cmp    %si,%ax
4897f2:	73 1e                	jae    0x489812
4897f4:	0f b6 d0             	movzbl %al,%edx
4897f7:	f6 04 55 5a 2e 4a 00 	testb  $0x1,0x4a2e5a(,%edx,2)
4897fe:	01
4897ff:	74 0c                	je     0x48980d
489801:	8b 81 94 00 00 00    	mov    0x94(%ecx),%eax
489807:	0f b6 04 10          	movzbl (%eax,%edx,1),%eax
48980b:	eb 0e                	jmp    0x48981b
48980d:	0f b6 c0             	movzbl %al,%eax
489810:	eb 09                	jmp    0x48981b
489812:	83 b9 a8 00 00 00 00 	cmpl   $0x0,0xa8(%ecx)
489819:	75 08                	jne    0x489823
48981b:	0f b7 c0             	movzwl %ax,%eax
48981e:	0f b7 c0             	movzwl %ax,%eax
489821:	eb 23                	jmp    0x489846
489823:	6a 01                	push   $0x1
489825:	8d 45 fc             	lea    -0x4(%ebp),%eax
489828:	50                   	push   %eax
489829:	6a 01                	push   $0x1
48982b:	8d 45 08             	lea    0x8(%ebp),%eax
48982e:	50                   	push   %eax
48982f:	56                   	push   %esi
489830:	ff b1 a8 00 00 00    	push   0xa8(%ecx)
489836:	e8 27 00 00 00       	call   0x489862
48983b:	83 c4 18             	add    $0x18,%esp
48983e:	85 c0                	test   %eax,%eax
489840:	75 09                	jne    0x48984b
489842:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
489846:	0f b7 c0             	movzwl %ax,%eax
489849:	eb 04                	jmp    0x48984f
48984b:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
48984f:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
489853:	5e                   	pop    %esi
489854:	74 0a                	je     0x489860
489856:	8b 4d ec             	mov    -0x14(%ebp),%ecx
489859:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
489860:	c9                   	leave
489861:	c3                   	ret
489862:	8b ff                	mov    %edi,%edi
489864:	55                   	push   %ebp
489865:	8b ec                	mov    %esp,%ebp
489867:	56                   	push   %esi
489868:	8b 75 14             	mov    0x14(%ebp),%esi
48986b:	85 f6                	test   %esi,%esi
48986d:	7e 14                	jle    0x489883
48986f:	56                   	push   %esi
489870:	ff 75 10             	push   0x10(%ebp)
489873:	e8 a3 92 ff ff       	call   0x482b1b
489878:	59                   	pop    %ecx
489879:	3b c6                	cmp    %esi,%eax
48987b:	59                   	pop    %ecx
48987c:	8d 70 01             	lea    0x1(%eax),%esi
48987f:	7c 02                	jl     0x489883
489881:	8b f0                	mov    %eax,%esi
489883:	33 c0                	xor    %eax,%eax
489885:	50                   	push   %eax
489886:	50                   	push   %eax
489887:	50                   	push   %eax
489888:	ff 75 1c             	push   0x1c(%ebp)
48988b:	ff 75 18             	push   0x18(%ebp)
48988e:	56                   	push   %esi
48988f:	ff 75 10             	push   0x10(%ebp)
489892:	ff 75 0c             	push   0xc(%ebp)
489895:	ff 75 08             	push   0x8(%ebp)
489898:	e8 54 f2 ff ff       	call   0x488af1
48989d:	5e                   	pop    %esi
48989e:	5d                   	pop    %ebp
48989f:	c3                   	ret
4898a0:	8b ff                	mov    %edi,%edi
4898a2:	55                   	push   %ebp
4898a3:	8b ec                	mov    %esp,%ebp
4898a5:	51                   	push   %ecx
4898a6:	51                   	push   %ecx
4898a7:	66 8b 45 08          	mov    0x8(%ebp),%ax
4898ab:	b9 ff ff 00 00       	mov    $0xffff,%ecx
4898b0:	56                   	push   %esi
4898b1:	66 8b 75 0c          	mov    0xc(%ebp),%si
4898b5:	0f b7 d6             	movzwl %si,%edx
4898b8:	66 3b c1             	cmp    %cx,%ax
4898bb:	74 47                	je     0x489904
4898bd:	b9 00 01 00 00       	mov    $0x100,%ecx
4898c2:	66 3b c1             	cmp    %cx,%ax
4898c5:	73 10                	jae    0x4898d7
4898c7:	0f b7 c8             	movzwl %ax,%ecx
4898ca:	a1 b4 41 4c 00       	mov    0x4c41b4,%eax
4898cf:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
4898d3:	23 c2                	and    %edx,%eax
4898d5:	eb 2f                	jmp    0x489906
4898d7:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
4898db:	33 c0                	xor    %eax,%eax
4898dd:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
4898e1:	8d 45 fc             	lea    -0x4(%ebp),%eax
4898e4:	50                   	push   %eax
4898e5:	6a 01                	push   $0x1
4898e7:	8d 45 f8             	lea    -0x8(%ebp),%eax
4898ea:	50                   	push   %eax
4898eb:	6a 01                	push   $0x1
4898ed:	e8 e6 96 00 00       	call   0x492fd8
4898f2:	83 c4 10             	add    $0x10,%esp
4898f5:	85 c0                	test   %eax,%eax
4898f7:	74 0b                	je     0x489904
4898f9:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
4898fd:	0f b7 ce             	movzwl %si,%ecx
489900:	23 c1                	and    %ecx,%eax
489902:	eb 02                	jmp    0x489906
489904:	33 c0                	xor    %eax,%eax
489906:	5e                   	pop    %esi
489907:	c9                   	leave
489908:	c3                   	ret
489909:	8b ff                	mov    %edi,%edi
48990b:	55                   	push   %ebp
48990c:	8b ec                	mov    %esp,%ebp
48990e:	83 ec 20             	sub    $0x20,%esp
489911:	a1 14 40 4c 00       	mov    0x4c4014,%eax
489916:	33 c5                	xor    %ebp,%eax
489918:	89 45 fc             	mov    %eax,-0x4(%ebp)
48991b:	ff 75 10             	push   0x10(%ebp)
48991e:	8d 4d e0             	lea    -0x20(%ebp),%ecx
489921:	e8 eb 01 ff ff       	call   0x479b11
489926:	8b 55 08             	mov    0x8(%ebp),%edx
489929:	83 fa ff             	cmp    $0xffffffff,%edx
48992c:	7c 13                	jl     0x489941
48992e:	81 fa ff 00 00 00    	cmp    $0xff,%edx
489934:	7f 0b                	jg     0x489941
489936:	8b 45 e4             	mov    -0x1c(%ebp),%eax
489939:	8b 00                	mov    (%eax),%eax
48993b:	0f b7 04 50          	movzwl (%eax,%edx,2),%eax
48993f:	eb 74                	jmp    0x4899b5
489941:	53                   	push   %ebx
489942:	56                   	push   %esi
489943:	8b 75 e4             	mov    -0x1c(%ebp),%esi
489946:	8b da                	mov    %edx,%ebx
489948:	c1 fb 08             	sar    $0x8,%ebx
48994b:	0f b6 cb             	movzbl %bl,%ecx
48994e:	57                   	push   %edi
48994f:	8b 06                	mov    (%esi),%eax
489951:	33 ff                	xor    %edi,%edi
489953:	66 39 3c 48          	cmp    %di,(%eax,%ecx,2)
489957:	7d 10                	jge    0x489969
489959:	33 c9                	xor    %ecx,%ecx
48995b:	88 5d f0             	mov    %bl,-0x10(%ebp)
48995e:	6a 02                	push   $0x2
489960:	88 55 f1             	mov    %dl,-0xf(%ebp)
489963:	88 4d f2             	mov    %cl,-0xe(%ebp)
489966:	58                   	pop    %eax
489967:	eb 0b                	jmp    0x489974
489969:	33 c9                	xor    %ecx,%ecx
48996b:	88 55 f0             	mov    %dl,-0x10(%ebp)
48996e:	33 c0                	xor    %eax,%eax
489970:	88 4d f1             	mov    %cl,-0xf(%ebp)
489973:	40                   	inc    %eax
489974:	6a 01                	push   $0x1
489976:	89 4d f4             	mov    %ecx,-0xc(%ebp)
489979:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
48997d:	8d 4d f4             	lea    -0xc(%ebp),%ecx
489980:	ff 76 08             	push   0x8(%esi)
489983:	51                   	push   %ecx
489984:	50                   	push   %eax
489985:	8d 45 f0             	lea    -0x10(%ebp),%eax
489988:	50                   	push   %eax
489989:	8d 45 e4             	lea    -0x1c(%ebp),%eax
48998c:	6a 01                	push   $0x1
48998e:	50                   	push   %eax
48998f:	e8 8b 3a 00 00       	call   0x48d41f
489994:	83 c4 1c             	add    $0x1c,%esp
489997:	5f                   	pop    %edi
489998:	5e                   	pop    %esi
489999:	5b                   	pop    %ebx
48999a:	85 c0                	test   %eax,%eax
48999c:	75 13                	jne    0x4899b1
48999e:	38 45 ec             	cmp    %al,-0x14(%ebp)
4899a1:	74 0a                	je     0x4899ad
4899a3:	8b 45 e0             	mov    -0x20(%ebp),%eax
4899a6:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
4899ad:	33 c0                	xor    %eax,%eax
4899af:	eb 17                	jmp    0x4899c8
4899b1:	0f b7 45 f4          	movzwl -0xc(%ebp),%eax
4899b5:	23 45 0c             	and    0xc(%ebp),%eax
4899b8:	80 7d ec 00          	cmpb   $0x0,-0x14(%ebp)
4899bc:	74 0a                	je     0x4899c8
4899be:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4899c1:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
4899c8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4899cb:	33 cd                	xor    %ebp,%ecx
4899cd:	e8 f8 ff fd ff       	call   0x4699ca
4899d2:	c9                   	leave
4899d3:	c3                   	ret
4899d4:	e8 03 99 00 00       	call   0x4932dc
4899d9:	50                   	push   %eax
4899da:	e8 db 98 00 00       	call   0x4932ba
4899df:	59                   	pop    %ecx
4899e0:	c3                   	ret
4899e1:	8b ff                	mov    %edi,%edi
4899e3:	55                   	push   %ebp
4899e4:	8b ec                	mov    %esp,%ebp
4899e6:	dd 45 08             	fldl   0x8(%ebp)
4899e9:	d9 ee                	fldz
4899eb:	dd e1                	fucom  %st(1)
4899ed:	df e0                	fnstsw %ax
4899ef:	56                   	push   %esi
4899f0:	f6 c4 44             	test   $0x44,%ah
4899f3:	7a 09                	jp     0x4899fe
4899f5:	dd d9                	fstp   %st(1)
4899f7:	33 f6                	xor    %esi,%esi
4899f9:	e9 ad 00 00 00       	jmp    0x489aab
4899fe:	57                   	push   %edi
4899ff:	66 8b 7d 0e          	mov    0xe(%ebp),%di
489a03:	0f b7 c7             	movzwl %di,%eax
489a06:	a9 f0 7f 00 00       	test   $0x7ff0,%eax
489a0b:	75 7a                	jne    0x489a87
489a0d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
489a10:	8b 55 08             	mov    0x8(%ebp),%edx
489a13:	f7 c1 ff ff 0f 00    	test   $0xfffff,%ecx
489a19:	75 04                	jne    0x489a1f
489a1b:	85 d2                	test   %edx,%edx
489a1d:	74 68                	je     0x489a87
489a1f:	de d9                	fcompp
489a21:	be 03 fc ff ff       	mov    $0xfffffc03,%esi
489a26:	df e0                	fnstsw %ax
489a28:	53                   	push   %ebx
489a29:	33 db                	xor    %ebx,%ebx
489a2b:	f6 c4 41             	test   $0x41,%ah
489a2e:	75 01                	jne    0x489a31
489a30:	43                   	inc    %ebx
489a31:	f6 45 0e 10          	testb  $0x10,0xe(%ebp)
489a35:	75 1f                	jne    0x489a56
489a37:	03 c9                	add    %ecx,%ecx
489a39:	89 4d 0c             	mov    %ecx,0xc(%ebp)
489a3c:	85 d2                	test   %edx,%edx
489a3e:	79 06                	jns    0x489a46
489a40:	83 c9 01             	or     $0x1,%ecx
489a43:	89 4d 0c             	mov    %ecx,0xc(%ebp)
489a46:	03 d2                	add    %edx,%edx
489a48:	4e                   	dec    %esi
489a49:	f6 45 0e 10          	testb  $0x10,0xe(%ebp)
489a4d:	74 e8                	je     0x489a37
489a4f:	66 8b 7d 0e          	mov    0xe(%ebp),%di
489a53:	89 55 08             	mov    %edx,0x8(%ebp)
489a56:	b8 ef ff 00 00       	mov    $0xffef,%eax
489a5b:	66 23 f8             	and    %ax,%di
489a5e:	85 db                	test   %ebx,%ebx
489a60:	0f b7 c7             	movzwl %di,%eax
489a63:	66 89 7d 0e          	mov    %di,0xe(%ebp)
489a67:	5b                   	pop    %ebx
489a68:	74 09                	je     0x489a73
489a6a:	0d 00 80 00 00       	or     $0x8000,%eax
489a6f:	66 89 45 0e          	mov    %ax,0xe(%ebp)
489a73:	dd 45 08             	fldl   0x8(%ebp)
489a76:	6a 00                	push   $0x0
489a78:	51                   	push   %ecx
489a79:	51                   	push   %ecx
489a7a:	dd 1c 24             	fstpl  (%esp)
489a7d:	e8 31 00 00 00       	call   0x489ab3
489a82:	83 c4 0c             	add    $0xc,%esp
489a85:	eb 23                	jmp    0x489aaa
489a87:	6a 00                	push   $0x0
489a89:	51                   	push   %ecx
489a8a:	dd d8                	fstp   %st(0)
489a8c:	51                   	push   %ecx
489a8d:	dd 1c 24             	fstpl  (%esp)
489a90:	e8 1e 00 00 00       	call   0x489ab3
489a95:	0f b7 f7             	movzwl %di,%esi