48e4b6:	8a 55 fe             	mov    -0x2(%ebp),%dl
48e4b9:	39 75 f4             	cmp    %esi,-0xc(%ebp)
48e4bc:	74 60                	je     0x48e51e
48e4be:	0f be 87 64 ef 40 00 	movsbl 0x40ef64(%edi),%eax
48e4c5:	8b ce                	mov    %esi,%ecx
48e4c7:	2b c8                	sub    %eax,%ecx
48e4c9:	2b 4d f0             	sub    -0x10(%ebp),%ecx
48e4cc:	78 3a                	js     0x48e508
48e4ce:	85 c9                	test   %ecx,%ecx
48e4d0:	7f 16                	jg     0x48e4e8
48e4d2:	0f be c2             	movsbl %dl,%eax
48e4d5:	8b cb                	mov    %ebx,%ecx
48e4d7:	2b c8                	sub    %eax,%ecx
48e4d9:	3b d9                	cmp    %ecx,%ebx
48e4db:	72 0b                	jb     0x48e4e8
48e4dd:	33 d2                	xor    %edx,%edx
48e4df:	8b c1                	mov    %ecx,%eax
48e4e1:	f7 f7                	div    %edi
48e4e3:	3b 45 f8             	cmp    -0x8(%ebp),%eax
48e4e6:	74 20                	je     0x48e508
48e4e8:	ff 15 58 80 4a 00    	call   *0x4a8058
48e4ee:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
48e4f4:	8b 45 14             	mov    0x14(%ebp),%eax
48e4f7:	85 c0                	test   %eax,%eax
48e4f9:	74 06                	je     0x48e501
48e4fb:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
48e501:	83 cb ff             	or     $0xffffffff,%ebx
48e504:	b0 2b                	mov    $0x2b,%al
48e506:	eb 03                	jmp    0x48e50b
48e508:	8a 45 ff             	mov    -0x1(%ebp),%al
48e50b:	3c 2d                	cmp    $0x2d,%al
48e50d:	75 02                	jne    0x48e511
48e50f:	f7 db                	neg    %ebx
48e511:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48e514:	85 c9                	test   %ecx,%ecx
48e516:	74 02                	je     0x48e51a
48e518:	89 31                	mov    %esi,(%ecx)
48e51a:	8b c3                	mov    %ebx,%eax
48e51c:	eb 0e                	jmp    0x48e52c
48e51e:	8b 45 0c             	mov    0xc(%ebp),%eax
48e521:	85 c0                	test   %eax,%eax
48e523:	74 05                	je     0x48e52a
48e525:	8b 4d 08             	mov    0x8(%ebp),%ecx
48e528:	89 08                	mov    %ecx,(%eax)
48e52a:	33 c0                	xor    %eax,%eax
48e52c:	5f                   	pop    %edi
48e52d:	5e                   	pop    %esi
48e52e:	5b                   	pop    %ebx
48e52f:	c9                   	leave
48e530:	c3                   	ret
48e531:	8b ff                	mov    %edi,%edi
48e533:	55                   	push   %ebp
48e534:	8b ec                	mov    %esp,%ebp
48e536:	83 ec 2c             	sub    $0x2c,%esp
48e539:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
48e53e:	33 c5                	xor    %ebp,%eax
48e540:	89 45 fc             	mov    %eax,-0x4(%ebp)
48e543:	53                   	push   %ebx
48e544:	8b 5d 0c             	mov    0xc(%ebp),%ebx
48e547:	8d 45 e4             	lea    -0x1c(%ebp),%eax
48e54a:	56                   	push   %esi
48e54b:	8b 75 14             	mov    0x14(%ebp),%esi
48e54e:	57                   	push   %edi
48e54f:	8b 7d 08             	mov    0x8(%ebp),%edi
48e552:	53                   	push   %ebx
48e553:	50                   	push   %eax
48e554:	89 7d e4             	mov    %edi,-0x1c(%ebp)
48e557:	89 75 e0             	mov    %esi,-0x20(%ebp)
48e55a:	e8 e0 04 00 00       	call   0x48ea3f
48e55f:	59                   	pop    %ecx
48e560:	59                   	pop    %ecx
48e561:	8b c8                	mov    %eax,%ecx
48e563:	83 e1 08             	and    $0x8,%ecx
48e566:	89 4d dc             	mov    %ecx,-0x24(%ebp)
48e569:	85 f6                	test   %esi,%esi
48e56b:	74 03                	je     0x48e570
48e56d:	83 26 00             	andl   $0x0,(%esi)
48e570:	33 f6                	xor    %esi,%esi
48e572:	83 e0 f7             	and    $0xfffffff7,%eax
48e575:	46                   	inc    %esi
48e576:	3b c6                	cmp    %esi,%eax
48e578:	75 62                	jne    0x48e5dc
48e57a:	6a 02                	push   $0x2
48e57c:	8d 45 f0             	lea    -0x10(%ebp),%eax
48e57f:	50                   	push   %eax
48e580:	53                   	push   %ebx
48e581:	ff 75 e4             	push   -0x1c(%ebp)
48e584:	57                   	push   %edi
48e585:	e8 bf 05 00 00       	call   0x48eb49
48e58a:	83 c4 14             	add    $0x14,%esp
48e58d:	85 c0                	test   %eax,%eax
48e58f:	74 38                	je     0x48e5c9
48e591:	83 f8 02             	cmp    $0x2,%eax
48e594:	7f 33                	jg     0x48e5c9
48e596:	db 45 f4             	fildl  -0xc(%ebp)
48e599:	dd 55 e8             	fstl   -0x18(%ebp)
48e59c:	3b c6                	cmp    %esi,%eax
48e59e:	7e 2e                	jle    0x48e5ce
48e5a0:	dd d8                	fstp   %st(0)
48e5a2:	dd 05 98 ef 40 00    	fldl   0x40ef98
48e5a8:	eb 02                	jmp    0x48e5ac
48e5aa:	dd d8                	fstp   %st(0)
48e5ac:	db 44 b5 f4          	fildl  -0xc(%ebp,%esi,4)
48e5b0:	46                   	inc    %esi
48e5b1:	dd 5d d4             	fstpl  -0x2c(%ebp)
48e5b4:	dd 45 d4             	fldl   -0x2c(%ebp)
48e5b7:	dd 45 e8             	fldl   -0x18(%ebp)
48e5ba:	d8 ca                	fmul   %st(2),%st
48e5bc:	de c1                	faddp  %st,%st(1)
48e5be:	dd 55 e8             	fstl   -0x18(%ebp)
48e5c1:	3b f0                	cmp    %eax,%esi
48e5c3:	7c e5                	jl     0x48e5aa
48e5c5:	dd d9                	fstp   %st(1)
48e5c7:	eb 05                	jmp    0x48e5ce
48e5c9:	d9 ee                	fldz
48e5cb:	dd 55 e8             	fstl   -0x18(%ebp)
48e5ce:	8b 45 f0             	mov    -0x10(%ebp),%eax
48e5d1:	ff 75 e0             	push   -0x20(%ebp)
48e5d4:	8b 4d 10             	mov    0x10(%ebp),%ecx
48e5d7:	03 c1                	add    %ecx,%eax
48e5d9:	50                   	push   %eax
48e5da:	eb 69                	jmp    0x48e645
48e5dc:	83 f8 02             	cmp    $0x2,%eax
48e5df:	75 76                	jne    0x48e657
48e5e1:	50                   	push   %eax
48e5e2:	8d 45 f0             	lea    -0x10(%ebp),%eax
48e5e5:	50                   	push   %eax
48e5e6:	53                   	push   %ebx
48e5e7:	ff 75 e4             	push   -0x1c(%ebp)
48e5ea:	57                   	push   %edi
48e5eb:	e8 99 07 00 00       	call   0x48ed89
48e5f0:	83 c4 14             	add    $0x14,%esp
48e5f3:	85 c0                	test   %eax,%eax
48e5f5:	74 32                	je     0x48e629
48e5f7:	83 f8 02             	cmp    $0x2,%eax
48e5fa:	7f 2d                	jg     0x48e629
48e5fc:	db 45 f4             	fildl  -0xc(%ebp)
48e5ff:	dd 5d e8             	fstpl  -0x18(%ebp)
48e602:	3b c6                	cmp    %esi,%eax
48e604:	7e 28                	jle    0x48e62e
48e606:	dd 05 90 ef 40 00    	fldl   0x40ef90
48e60c:	db 44 b5 f4          	fildl  -0xc(%ebp,%esi,4)
48e610:	46                   	inc    %esi
48e611:	dd 5d d4             	fstpl  -0x2c(%ebp)
48e614:	dd 45 d4             	fldl   -0x2c(%ebp)
48e617:	dd 45 e8             	fldl   -0x18(%ebp)
48e61a:	d8 ca                	fmul   %st(2),%st
48e61c:	de c1                	faddp  %st,%st(1)
48e61e:	dd 5d e8             	fstpl  -0x18(%ebp)
48e621:	3b f0                	cmp    %eax,%esi
48e623:	7c e7                	jl     0x48e60c
48e625:	dd d8                	fstp   %st(0)
48e627:	eb 05                	jmp    0x48e62e
48e629:	d9 ee                	fldz
48e62b:	dd 5d e8             	fstpl  -0x18(%ebp)
48e62e:	ff 75 f0             	push   -0x10(%ebp)
48e631:	8d 45 e8             	lea    -0x18(%ebp),%eax
48e634:	50                   	push   %eax
48e635:	e8 bf 09 00 00       	call   0x48eff9
48e63a:	dd 45 e8             	fldl   -0x18(%ebp)
48e63d:	59                   	pop    %ecx
48e63e:	59                   	pop    %ecx
48e63f:	ff 75 e0             	push   -0x20(%ebp)
48e642:	ff 75 10             	push   0x10(%ebp)
48e645:	51                   	push   %ecx
48e646:	51                   	push   %ecx
48e647:	dd 1c 24             	fstpl  (%esp)
48e64a:	e8 e1 09 00 00       	call   0x48f030
48e64f:	8b 4d dc             	mov    -0x24(%ebp),%ecx
48e652:	83 c4 10             	add    $0x10,%esp
48e655:	eb 1c                	jmp    0x48e673
48e657:	83 f8 03             	cmp    $0x3,%eax
48e65a:	75 08                	jne    0x48e664
48e65c:	dd 05 78 38 4a 00    	fldl   0x4a3878
48e662:	eb 0f                	jmp    0x48e673
48e664:	83 f8 04             	cmp    $0x4,%eax
48e667:	75 08                	jne    0x48e671
48e669:	dd 05 88 38 4a 00    	fldl   0x4a3888
48e66f:	eb 02                	jmp    0x48e673
48e671:	d9 ee                	fldz
48e673:	5f                   	pop    %edi
48e674:	5e                   	pop    %esi
48e675:	5b                   	pop    %ebx
48e676:	85 c9                	test   %ecx,%ecx
48e678:	74 02                	je     0x48e67c
48e67a:	d9 e0                	fchs
48e67c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48e67f:	33 cd                	xor    %ebp,%ecx
48e681:	e8 7a 18 00 00       	call   0x48ff00
48e686:	c9                   	leave
48e687:	c3                   	ret
48e688:	8b ff                	mov    %edi,%edi
48e68a:	55                   	push   %ebp
48e68b:	8b ec                	mov    %esp,%ebp
48e68d:	83 ec 2c             	sub    $0x2c,%esp
48e690:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
48e695:	33 c5                	xor    %ebp,%eax
48e697:	89 45 fc             	mov    %eax,-0x4(%ebp)
48e69a:	53                   	push   %ebx
48e69b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
48e69e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
48e6a1:	56                   	push   %esi
48e6a2:	8b 75 14             	mov    0x14(%ebp),%esi
48e6a5:	57                   	push   %edi
48e6a6:	8b 7d 08             	mov    0x8(%ebp),%edi
48e6a9:	53                   	push   %ebx
48e6aa:	50                   	push   %eax
48e6ab:	89 7d e4             	mov    %edi,-0x1c(%ebp)
48e6ae:	89 75 e0             	mov    %esi,-0x20(%ebp)
48e6b1:	e8 89 03 00 00       	call   0x48ea3f
48e6b6:	59                   	pop    %ecx
48e6b7:	59                   	pop    %ecx
48e6b8:	8b c8                	mov    %eax,%ecx
48e6ba:	83 e1 08             	and    $0x8,%ecx
48e6bd:	89 4d dc             	mov    %ecx,-0x24(%ebp)
48e6c0:	85 f6                	test   %esi,%esi
48e6c2:	74 03                	je     0x48e6c7
48e6c4:	83 26 00             	andl   $0x0,(%esi)
48e6c7:	33 f6                	xor    %esi,%esi
48e6c9:	83 e0 f7             	and    $0xfffffff7,%eax
48e6cc:	46                   	inc    %esi
48e6cd:	3b c6                	cmp    %esi,%eax
48e6cf:	75 62                	jne    0x48e733
48e6d1:	6a 02                	push   $0x2
48e6d3:	8d 45 f0             	lea    -0x10(%ebp),%eax
48e6d6:	50                   	push   %eax
48e6d7:	53                   	push   %ebx
48e6d8:	ff 75 e4             	push   -0x1c(%ebp)
48e6db:	57                   	push   %edi
48e6dc:	e8 68 04 00 00       	call   0x48eb49
48e6e1:	83 c4 14             	add    $0x14,%esp
48e6e4:	85 c0                	test   %eax,%eax
48e6e6:	74 38                	je     0x48e720
48e6e8:	83 f8 02             	cmp    $0x2,%eax
48e6eb:	7f 33                	jg     0x48e720
48e6ed:	db 45 f4             	fildl  -0xc(%ebp)
48e6f0:	dd 55 e8             	fstl   -0x18(%ebp)
48e6f3:	3b c6                	cmp    %esi,%eax
48e6f5:	7e 2e                	jle    0x48e725
48e6f7:	dd d8                	fstp   %st(0)
48e6f9:	dd 05 98 ef 40 00    	fldl   0x40ef98
48e6ff:	eb 02                	jmp    0x48e703
48e701:	dd d8                	fstp   %st(0)
48e703:	db 44 b5 f4          	fildl  -0xc(%ebp,%esi,4)
48e707:	46                   	inc    %esi
48e708:	dd 5d d4             	fstpl  -0x2c(%ebp)
48e70b:	dd 45 d4             	fldl   -0x2c(%ebp)
48e70e:	dd 45 e8             	fldl   -0x18(%ebp)
48e711:	d8 ca                	fmul   %st(2),%st
48e713:	de c1                	faddp  %st,%st(1)
48e715:	dd 55 e8             	fstl   -0x18(%ebp)
48e718:	3b f0                	cmp    %eax,%esi
48e71a:	7c e5                	jl     0x48e701
48e71c:	dd d9                	fstp   %st(1)
48e71e:	eb 05                	jmp    0x48e725
48e720:	d9 ee                	fldz
48e722:	dd 55 e8             	fstl   -0x18(%ebp)
48e725:	8b 45 f0             	mov    -0x10(%ebp),%eax
48e728:	ff 75 e0             	push   -0x20(%ebp)
48e72b:	8b 4d 10             	mov    0x10(%ebp),%ecx
48e72e:	03 c1                	add    %ecx,%eax
48e730:	50                   	push   %eax
48e731:	eb 69                	jmp    0x48e79c
48e733:	83 f8 02             	cmp    $0x2,%eax
48e736:	75 76                	jne    0x48e7ae
48e738:	50                   	push   %eax
48e739:	8d 45 f0             	lea    -0x10(%ebp),%eax
48e73c:	50                   	push   %eax
48e73d:	53                   	push   %ebx
48e73e:	ff 75 e4             	push   -0x1c(%ebp)
48e741:	57                   	push   %edi
48e742:	e8 42 06 00 00       	call   0x48ed89
48e747:	83 c4 14             	add    $0x14,%esp
48e74a:	85 c0                	test   %eax,%eax
48e74c:	74 32                	je     0x48e780
48e74e:	83 f8 02             	cmp    $0x2,%eax
48e751:	7f 2d                	jg     0x48e780
48e753:	db 45 f4             	fildl  -0xc(%ebp)
48e756:	dd 5d e8             	fstpl  -0x18(%ebp)
48e759:	3b c6                	cmp    %esi,%eax
48e75b:	7e 28                	jle    0x48e785
48e75d:	dd 05 90 ef 40 00    	fldl   0x40ef90
48e763:	db 44 b5 f4          	fildl  -0xc(%ebp,%esi,4)
48e767:	46                   	inc    %esi
48e768:	dd 5d d4             	fstpl  -0x2c(%ebp)
48e76b:	dd 45 d4             	fldl   -0x2c(%ebp)
48e76e:	dd 45 e8             	fldl   -0x18(%ebp)
48e771:	d8 ca                	fmul   %st(2),%st
48e773:	de c1                	faddp  %st,%st(1)
48e775:	dd 5d e8             	fstpl  -0x18(%ebp)
48e778:	3b f0                	cmp    %eax,%esi
48e77a:	7c e7                	jl     0x48e763
48e77c:	dd d8                	fstp   %st(0)
48e77e:	eb 05                	jmp    0x48e785
48e780:	d9 ee                	fldz
48e782:	dd 5d e8             	fstpl  -0x18(%ebp)
48e785:	ff 75 f0             	push   -0x10(%ebp)
48e788:	8d 45 e8             	lea    -0x18(%ebp),%eax
48e78b:	50                   	push   %eax
48e78c:	e8 d0 09 00 00       	call   0x48f161
48e791:	dd 45 e8             	fldl   -0x18(%ebp)
48e794:	59                   	pop    %ecx
48e795:	59                   	pop    %ecx
48e796:	ff 75 e0             	push   -0x20(%ebp)
48e799:	ff 75 10             	push   0x10(%ebp)
48e79c:	51                   	push   %ecx
48e79d:	51                   	push   %ecx
48e79e:	dd 1c 24             	fstpl  (%esp)
48e7a1:	e8 4e 0c 00 00       	call   0x48f3f4
48e7a6:	8b 4d dc             	mov    -0x24(%ebp),%ecx
48e7a9:	83 c4 10             	add    $0x10,%esp
48e7ac:	eb 1c                	jmp    0x48e7ca
48e7ae:	83 f8 03             	cmp    $0x3,%eax
48e7b1:	75 08                	jne    0x48e7bb
48e7b3:	dd 05 98 38 4a 00    	fldl   0x4a3898
48e7b9:	eb 0f                	jmp    0x48e7ca
48e7bb:	83 f8 04             	cmp    $0x4,%eax
48e7be:	75 08                	jne    0x48e7c8
48e7c0:	dd 05 a8 38 4a 00    	fldl   0x4a38a8
48e7c6:	eb 02                	jmp    0x48e7ca
48e7c8:	d9 ee                	fldz
48e7ca:	5f                   	pop    %edi
48e7cb:	5e                   	pop    %esi
48e7cc:	5b                   	pop    %ebx
48e7cd:	85 c9                	test   %ecx,%ecx
48e7cf:	74 02                	je     0x48e7d3
48e7d1:	d9 e0                	fchs
48e7d3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48e7d6:	33 cd                	xor    %ebp,%ecx
48e7d8:	e8 23 17 00 00       	call   0x48ff00
48e7dd:	c9                   	leave
48e7de:	c3                   	ret
48e7df:	8b ff                	mov    %edi,%edi
48e7e1:	55                   	push   %ebp
48e7e2:	8b ec                	mov    %esp,%ebp
48e7e4:	83 ec 0c             	sub    $0xc,%esp
48e7e7:	8d 45 08             	lea    0x8(%ebp),%eax
48e7ea:	53                   	push   %ebx
48e7eb:	8b 5d 08             	mov    0x8(%ebp),%ebx
48e7ee:	56                   	push   %esi
48e7ef:	57                   	push   %edi
48e7f0:	ff 75 0c             	push   0xc(%ebp)
48e7f3:	50                   	push   %eax
48e7f4:	e8 46 02 00 00       	call   0x48ea3f
48e7f9:	8b 75 14             	mov    0x14(%ebp),%esi
48e7fc:	8b f8                	mov    %eax,%edi
48e7fe:	59                   	pop    %ecx
48e7ff:	83 e7 08             	and    $0x8,%edi
48e802:	59                   	pop    %ecx
48e803:	85 f6                	test   %esi,%esi