488556:	66 0b c1             	or     %cx,%ax
488559:	dd d8                	fstp   %st(0)
48855b:	b9 ff ff 00 00       	mov    $0xffff,%ecx
488560:	eb 17                	jmp    0x488579
488562:	66 85 f6             	test   %si,%si
488565:	75 1f                	jne    0x488586
488567:	de d9                	fcompp
488569:	df e0                	fnstsw %ax
48856b:	f6 c4 05             	test   $0x5,%ah
48856e:	7a 04                	jp     0x488574
488570:	33 c0                	xor    %eax,%eax
488572:	eb 05                	jmp    0x488579
488574:	b8 00 80 00 00       	mov    $0x8000,%eax
488579:	66 89 45 0e          	mov    %ax,0xe(%ebp)
48857d:	66 89 4d 08          	mov    %cx,0x8(%ebp)
488581:	e9 a9 00 00 00       	jmp    0x48862f
488586:	d8 d1                	fcom   %st(1)
488588:	df e0                	fnstsw %ax
48858a:	d9 ee                	fldz
48858c:	f6 c4 05             	test   $0x5,%ah
48858f:	7a 09                	jp     0x48859a
488591:	d8 d1                	fcom   %st(1)
488593:	df e0                	fnstsw %ax
488595:	f6 c4 05             	test   $0x5,%ah
488598:	7b 16                	jnp    0x4885b0
48859a:	d9 ca                	fxch   %st(2)
48859c:	d8 d9                	fcomp  %st(1)
48859e:	df e0                	fnstsw %ax
4885a0:	f6 c4 05             	test   $0x5,%ah
4885a3:	7a 46                	jp     0x4885eb
4885a5:	de d9                	fcompp
4885a7:	df e0                	fnstsw %ax
4885a9:	f6 c4 05             	test   $0x5,%ah
4885ac:	7a 41                	jp     0x4885ef
4885ae:	eb 06                	jmp    0x4885b6
4885b0:	dd d9                	fstp   %st(1)
4885b2:	dd d9                	fstp   %st(1)
4885b4:	dd d8                	fstp   %st(0)
4885b6:	66 83 45 08 01       	addw   $0x1,0x8(%ebp)
4885bb:	75 72                	jne    0x48862f
4885bd:	66 83 45 0a 01       	addw   $0x1,0xa(%ebp)
4885c2:	75 6b                	jne    0x48862f
4885c4:	66 83 45 0c 01       	addw   $0x1,0xc(%ebp)
4885c9:	75 64                	jne    0x48862f
4885cb:	66 8b 45 0e          	mov    0xe(%ebp),%ax
4885cf:	66 40                	inc    %ax
4885d1:	66 89 45 0e          	mov    %ax,0xe(%ebp)
4885d5:	0f b7 c0             	movzwl %ax,%eax
4885d8:	25 ff 7f ff ff       	and    $0xffff7fff,%eax
4885dd:	3b c3                	cmp    %ebx,%eax
4885df:	75 4e                	jne    0x48862f
4885e1:	6a 08                	push   $0x8
4885e3:	e8 cc b4 fc ff       	call   0x453ab4
4885e8:	59                   	pop    %ecx
4885e9:	eb 44                	jmp    0x48862f
4885eb:	dd d8                	fstp   %st(0)
4885ed:	dd d8                	fstp   %st(0)
4885ef:	66 8b 45 08          	mov    0x8(%ebp),%ax
4885f3:	b9 ff ff 00 00       	mov    $0xffff,%ecx
4885f8:	66 03 c1             	add    %cx,%ax
4885fb:	66 89 45 08          	mov    %ax,0x8(%ebp)
4885ff:	66 3b c1             	cmp    %cx,%ax
488602:	75 2b                	jne    0x48862f
488604:	66 8b 45 0a          	mov    0xa(%ebp),%ax
488608:	66 03 c1             	add    %cx,%ax
48860b:	66 89 45 0a          	mov    %ax,0xa(%ebp)
48860f:	66 3b c1             	cmp    %cx,%ax
488612:	75 1b                	jne    0x48862f
488614:	66 8b 45 0c          	mov    0xc(%ebp),%ax
488618:	66 03 c1             	add    %cx,%ax
48861b:	66 89 45 0c          	mov    %ax,0xc(%ebp)
48861f:	66 3b c1             	cmp    %cx,%ax
488622:	75 0b                	jne    0x48862f
488624:	66 01 4d 0e          	add    %cx,0xe(%ebp)
488628:	eb 05                	jmp    0x48862f
48862a:	dd d8                	fstp   %st(0)
48862c:	dd 5d 08             	fstpl  0x8(%ebp)
48862f:	66 85 5d 0e          	test   %bx,0xe(%ebp)
488633:	5f                   	pop    %edi
488634:	5e                   	pop    %esi
488635:	5b                   	pop    %ebx
488636:	75 08                	jne    0x488640
488638:	6a 10                	push   $0x10
48863a:	e8 75 b4 fc ff       	call   0x453ab4
48863f:	59                   	pop    %ecx
488640:	dd 45 08             	fldl   0x8(%ebp)
488643:	5d                   	pop    %ebp
488644:	c3                   	ret
488645:	cc                   	int3
488646:	cc                   	int3
488647:	cc                   	int3
488648:	cc                   	int3
488649:	cc                   	int3
48864a:	cc                   	int3
48864b:	cc                   	int3
48864c:	cc                   	int3
48864d:	cc                   	int3
48864e:	cc                   	int3
48864f:	cc                   	int3
488650:	55                   	push   %ebp
488651:	8b ec                	mov    %esp,%ebp
488653:	57                   	push   %edi
488654:	56                   	push   %esi
488655:	53                   	push   %ebx
488656:	8b 4d 10             	mov    0x10(%ebp),%ecx
488659:	0b c9                	or     %ecx,%ecx
48865b:	74 4d                	je     0x4886aa
48865d:	8b 75 08             	mov    0x8(%ebp),%esi
488660:	8b 7d 0c             	mov    0xc(%ebp),%edi
488663:	b7 41                	mov    $0x41,%bh
488665:	b3 5a                	mov    $0x5a,%bl
488667:	b6 20                	mov    $0x20,%dh
488669:	8d 49 00             	lea    0x0(%ecx),%ecx
48866c:	8a 26                	mov    (%esi),%ah
48866e:	0a e4                	or     %ah,%ah
488670:	8a 07                	mov    (%edi),%al
488672:	74 27                	je     0x48869b
488674:	0a c0                	or     %al,%al
488676:	74 23                	je     0x48869b
488678:	83 c6 01             	add    $0x1,%esi
48867b:	83 c7 01             	add    $0x1,%edi
48867e:	3a e7                	cmp    %bh,%ah
488680:	72 06                	jb     0x488688
488682:	3a e3                	cmp    %bl,%ah
488684:	77 02                	ja     0x488688
488686:	02 e6                	add    %dh,%ah
488688:	3a c7                	cmp    %bh,%al
48868a:	72 06                	jb     0x488692
48868c:	3a c3                	cmp    %bl,%al
48868e:	77 02                	ja     0x488692
488690:	02 c6                	add    %dh,%al
488692:	3a e0                	cmp    %al,%ah
488694:	75 0b                	jne    0x4886a1
488696:	83 e9 01             	sub    $0x1,%ecx
488699:	75 d1                	jne    0x48866c
48869b:	33 c9                	xor    %ecx,%ecx
48869d:	3a e0                	cmp    %al,%ah
48869f:	74 09                	je     0x4886aa
4886a1:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
4886a6:	72 02                	jb     0x4886aa
4886a8:	f7 d9                	neg    %ecx
4886aa:	8b c1                	mov    %ecx,%eax
4886ac:	5b                   	pop    %ebx
4886ad:	5e                   	pop    %esi
4886ae:	5f                   	pop    %edi
4886af:	c9                   	leave
4886b0:	c3                   	ret
4886b1:	8b ff                	mov    %edi,%edi
4886b3:	55                   	push   %ebp
4886b4:	8b ec                	mov    %esp,%ebp
4886b6:	51                   	push   %ecx
4886b7:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4886bb:	75 17                	jne    0x4886d4
4886bd:	e8 6d 47 fc ff       	call   0x44ce2f
4886c2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4886c8:	e8 09 46 fc ff       	call   0x44ccd6
4886cd:	33 c0                	xor    %eax,%eax
4886cf:	e9 a0 00 00 00       	jmp    0x488774
4886d4:	56                   	push   %esi
4886d5:	8b 75 0c             	mov    0xc(%ebp),%esi
4886d8:	85 f6                	test   %esi,%esi
4886da:	75 17                	jne    0x4886f3
4886dc:	e8 4e 47 fc ff       	call   0x44ce2f
4886e1:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4886e7:	e8 ea 45 fc ff       	call   0x44ccd6
4886ec:	33 c0                	xor    %eax,%eax
4886ee:	e9 80 00 00 00       	jmp    0x488773
4886f3:	53                   	push   %ebx
4886f4:	57                   	push   %edi
4886f5:	e8 39 c7 fe ff       	call   0x474e33
4886fa:	f7 d8                	neg    %eax
4886fc:	1b db                	sbb    %ebx,%ebx
4886fe:	33 ff                	xor    %edi,%edi
488700:	57                   	push   %edi
488701:	57                   	push   %edi
488702:	6a ff                	push   $0xffffffff
488704:	ff 75 08             	push   0x8(%ebp)
488707:	43                   	inc    %ebx
488708:	89 3e                	mov    %edi,(%esi)
48870a:	57                   	push   %edi
48870b:	53                   	push   %ebx
48870c:	ff 15 74 41 49 00    	call   *0x494174
488712:	89 45 fc             	mov    %eax,-0x4(%ebp)
488715:	85 c0                	test   %eax,%eax
488717:	75 10                	jne    0x488729
488719:	ff 15 24 41 49 00    	call   *0x494124
48871f:	50                   	push   %eax
488720:	e8 d4 46 fc ff       	call   0x44cdf9
488725:	33 c0                	xor    %eax,%eax
488727:	eb 47                	jmp    0x488770
488729:	03 c0                	add    %eax,%eax
48872b:	50                   	push   %eax
48872c:	e8 f9 e5 fe ff       	call   0x476d2a
488731:	8b f0                	mov    %eax,%esi
488733:	59                   	pop    %ecx
488734:	85 f6                	test   %esi,%esi
488736:	74 30                	je     0x488768
488738:	ff 75 fc             	push   -0x4(%ebp)
48873b:	56                   	push   %esi
48873c:	6a ff                	push   $0xffffffff
48873e:	ff 75 08             	push   0x8(%ebp)
488741:	57                   	push   %edi
488742:	53                   	push   %ebx
488743:	ff 15 74 41 49 00    	call   *0x494174
488749:	85 c0                	test   %eax,%eax
48874b:	75 0f                	jne    0x48875c
48874d:	ff 15 24 41 49 00    	call   *0x494124
488753:	50                   	push   %eax
488754:	e8 a0 46 fc ff       	call   0x44cdf9
488759:	59                   	pop    %ecx
48875a:	eb 0c                	jmp    0x488768
48875c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48875f:	8b c6                	mov    %esi,%eax
488761:	8b f7                	mov    %edi,%esi
488763:	33 ff                	xor    %edi,%edi
488765:	47                   	inc    %edi
488766:	89 01                	mov    %eax,(%ecx)
488768:	56                   	push   %esi
488769:	e8 cb 9b fe ff       	call   0x472339
48876e:	8b c7                	mov    %edi,%eax
488770:	59                   	pop    %ecx
488771:	5f                   	pop    %edi
488772:	5b                   	pop    %ebx
488773:	5e                   	pop    %esi
488774:	8b e5                	mov    %ebp,%esp
488776:	5d                   	pop    %ebp
488777:	c3                   	ret
488778:	8b ff                	mov    %edi,%edi
48877a:	55                   	push   %ebp
48877b:	8b ec                	mov    %esp,%ebp
48877d:	51                   	push   %ecx
48877e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
488782:	75 17                	jne    0x48879b
488784:	e8 a6 46 fc ff       	call   0x44ce2f
488789:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
48878f:	e8 42 45 fc ff       	call   0x44ccd6
488794:	33 c0                	xor    %eax,%eax
488796:	e9 87 00 00 00       	jmp    0x488822
48879b:	56                   	push   %esi
48879c:	8b 75 0c             	mov    0xc(%ebp),%esi
48879f:	85 f6                	test   %esi,%esi
4887a1:	75 14                	jne    0x4887b7
4887a3:	e8 87 46 fc ff       	call   0x44ce2f
4887a8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4887ae:	e8 23 45 fc ff       	call   0x44ccd6
4887b3:	33 c0                	xor    %eax,%eax
4887b5:	eb 6a                	jmp    0x488821
4887b7:	57                   	push   %edi
4887b8:	e8 76 c6 fe ff       	call   0x474e33
4887bd:	ff 75 08             	push   0x8(%ebp)
4887c0:	f7 d8                	neg    %eax
4887c2:	1b ff                	sbb    %edi,%edi
4887c4:	83 26 00             	andl   $0x0,(%esi)
4887c7:	47                   	inc    %edi
4887c8:	57                   	push   %edi
4887c9:	e8 cc 49 fe ff       	call   0x46d19a
4887ce:	89 45 fc             	mov    %eax,-0x4(%ebp)
4887d1:	59                   	pop    %ecx
4887d2:	59                   	pop    %ecx
4887d3:	85 c0                	test   %eax,%eax
4887d5:	75 10                	jne    0x4887e7
4887d7:	ff 15 24 41 49 00    	call   *0x494124
4887dd:	50                   	push   %eax
4887de:	e8 16 46 fc ff       	call   0x44cdf9
4887e3:	33 c0                	xor    %eax,%eax
4887e5:	eb 38                	jmp    0x48881f
4887e7:	50                   	push   %eax
4887e8:	e8 3d e5 fe ff       	call   0x476d2a
4887ed:	8b f0                	mov    %eax,%esi
4887ef:	59                   	pop    %ecx
4887f0:	85 f6                	test   %esi,%esi
4887f2:	74 21                	je     0x488815
4887f4:	ff 75 fc             	push   -0x4(%ebp)
4887f7:	56                   	push   %esi
4887f8:	ff 75 08             	push   0x8(%ebp)
4887fb:	57                   	push   %edi
4887fc:	e8 d2 49 fe ff       	call   0x46d1d3
488801:	83 c4 10             	add    $0x10,%esp
488804:	85 c0                	test   %eax,%eax
488806:	75 1e                	jne    0x488826
488808:	ff 15 24 41 49 00    	call   *0x494124
48880e:	50                   	push   %eax
48880f:	e8 e5 45 fc ff       	call   0x44cdf9
488814:	59                   	pop    %ecx
488815:	33 ff                	xor    %edi,%edi
488817:	56                   	push   %esi
488818:	e8 1c 9b fe ff       	call   0x472339
48881d:	8b c7                	mov    %edi,%eax
48881f:	59                   	pop    %ecx
488820:	5f                   	pop    %edi
488821:	5e                   	pop    %esi
488822:	8b e5                	mov    %ebp,%esp
488824:	5d                   	pop    %ebp
488825:	c3                   	ret
488826:	8b 4d 0c             	mov    0xc(%ebp),%ecx
488829:	33 ff                	xor    %edi,%edi
48882b:	8b c6                	mov    %esi,%eax
48882d:	8b f7                	mov    %edi,%esi
48882f:	47                   	inc    %edi
488830:	89 01                	mov    %eax,(%ecx)
488832:	eb e3                	jmp    0x488817
488834:	6a 0c                	push   $0xc
488836:	68 60 52 4b 00       	push   $0x4b5260
48883b:	e8 20 81 fb ff       	call   0x440960
488840:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
488844:	8b 45 08             	mov    0x8(%ebp),%eax
488847:	ff 30                	push   (%eax)
488849:	e8 f7 6a ff ff       	call   0x47f345
48884e:	59                   	pop    %ecx
48884f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
488853:	8b 7d 0c             	mov    0xc(%ebp),%edi
488856:	8b 07                	mov    (%edi),%eax
488858:	8b 30                	mov    (%eax),%esi
48885a:	8b d6                	mov    %esi,%edx
48885c:	c1 fa 06             	sar    $0x6,%edx
48885f:	8b c6                	mov    %esi,%eax
488861:	83 e0 3f             	and    $0x3f,%eax
488864:	6b c8 30             	imul   $0x30,%eax,%ecx
488867:	8b 04 95 00 c0 4b 00 	mov    0x4bc000(,%edx,4),%eax
48886e:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
488873:	74 15                	je     0x48888a
488875:	8b 47 04             	mov    0x4(%edi),%eax
488878:	ff 70 04             	push   0x4(%eax)
48887b:	ff 30                	push   (%eax)
48887d:	56                   	push   %esi
48887e:	e8 0c 01 00 00       	call   0x48898f
488883:	83 c4 0c             	add    $0xc,%esp
488886:	8b f0                	mov    %eax,%esi
488888:	eb 0a                	jmp    0x488894
48888a:	e8 a0 45 fc ff       	call   0x44ce2f
48888f:	6a 09                	push   $0x9
488891:	5e                   	pop    %esi
488892:	89 30                	mov    %esi,(%eax)
488894:	89 75 e4             	mov    %esi,-0x1c(%ebp)
488897:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
48889e:	e8 0d 00 00 00       	call   0x4888b0
4888a3:	8b c6                	mov    %esi,%eax
4888a5:	e8 fc 80 fb ff       	call   0x4409a6
4888aa:	c2 0c 00             	ret    $0xc
4888ad:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4888b0:	8b 45 10             	mov    0x10(%ebp),%eax
4888b3:	ff 30                	push   (%eax)
4888b5:	e8 42 6b ff ff       	call   0x47f3fc
4888ba:	59                   	pop    %ecx
4888bb:	c3                   	ret
4888bc:	8b ff                	mov    %edi,%edi
4888be:	55                   	push   %ebp
4888bf:	8b ec                	mov    %esp,%ebp
4888c1:	83 ec 0c             	sub    $0xc,%esp
4888c4:	8b 45 08             	mov    0x8(%ebp),%eax