5af568:	8a 45 9a             	mov    -0x66(%ebp),%al
5af56b:	f7 6d a0             	imull  -0x60(%ebp)
5af56e:	33 d2                	xor    %edx,%edx
5af570:	8a 55 9b             	mov    -0x65(%ebp),%dl
5af573:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af577:	03 c2                	add    %edx,%eax
5af579:	05 00 08 00 00       	add    $0x800,%eax
5af57e:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af584:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af58a:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af590:	e8 2b 37 e5 ff       	call   0x402cc0
5af595:	e8 9a 9e ff ff       	call   0x5a9434
5af59a:	88 03                	mov    %al,(%ebx)
5af59c:	eb 4d                	jmp    0x5af5eb
5af59e:	8b c6                	mov    %esi,%eax
5af5a0:	f7 6d bc             	imull  -0x44(%ebp)
5af5a3:	8b 55 94             	mov    -0x6c(%ebp),%edx
5af5a6:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5af5a9:	8b 7d a8             	mov    -0x58(%ebp),%edi
5af5ac:	4f                   	dec    %edi
5af5ad:	85 ff                	test   %edi,%edi
5af5af:	7c 0a                	jl     0x5af5bb
5af5b1:	47                   	inc    %edi
5af5b2:	8a 45 9b             	mov    -0x65(%ebp),%al
5af5b5:	88 03                	mov    %al,(%ebx)
5af5b7:	43                   	inc    %ebx
5af5b8:	4f                   	dec    %edi
5af5b9:	75 f7                	jne    0x5af5b2
5af5bb:	8b d6                	mov    %esi,%edx
5af5bd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af5c0:	8b 08                	mov    (%eax),%ecx
5af5c2:	ff 11                	call   *(%ecx)
5af5c4:	8b d0                	mov    %eax,%edx
5af5c6:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
5af5c9:	8b c3                	mov    %ebx,%eax
5af5cb:	e8 f0 88 e5 ff       	call   0x407ec0
5af5d0:	03 5d c4             	add    -0x3c(%ebp),%ebx
5af5d3:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af5d6:	03 45 c4             	add    -0x3c(%ebp),%eax
5af5d9:	8b 7d bc             	mov    -0x44(%ebp),%edi
5af5dc:	4f                   	dec    %edi
5af5dd:	2b f8                	sub    %eax,%edi
5af5df:	7c 0a                	jl     0x5af5eb
5af5e1:	47                   	inc    %edi
5af5e2:	8a 45 9b             	mov    -0x65(%ebp),%al
5af5e5:	88 03                	mov    %al,(%ebx)
5af5e7:	43                   	inc    %ebx
5af5e8:	4f                   	dec    %edi
5af5e9:	75 f7                	jne    0x5af5e2
5af5eb:	66 83 7d 0e 00       	cmpw   $0x0,0xe(%ebp)
5af5f0:	74 22                	je     0x5af614
5af5f2:	89 b5 00 ff ff ff    	mov    %esi,-0x100(%ebp)
5af5f8:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af5fe:	dc 8d 78 ff ff ff    	fmull  -0x88(%ebp)
5af604:	e8 c3 36 e5 ff       	call   0x402ccc
5af609:	8b c8                	mov    %eax,%ecx
5af60b:	8b 55 08             	mov    0x8(%ebp),%edx
5af60e:	8b 45 10             	mov    0x10(%ebp),%eax
5af611:	ff 55 0c             	call   *0xc(%ebp)
5af614:	46                   	inc    %esi
5af615:	ff 8d 74 ff ff ff    	decl   -0x8c(%ebp)
5af61b:	0f 85 20 fe ff ff    	jne    0x5af441
5af621:	8b 45 bc             	mov    -0x44(%ebp),%eax
5af624:	f7 6d b4             	imull  -0x4c(%ebp)
5af627:	e8 80 31 e5 ff       	call   0x4027ac
5af62c:	89 45 90             	mov    %eax,-0x70(%ebp)
5af62f:	8b 45 bc             	mov    -0x44(%ebp),%eax
5af632:	48                   	dec    %eax
5af633:	85 c0                	test   %eax,%eax
5af635:	0f 8c f1 01 00 00    	jl     0x5af82c
5af63b:	40                   	inc    %eax
5af63c:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5af642:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
5af649:	dd 45 e8             	fldl   -0x18(%ebp)
5af64c:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af652:	df e0                	fnstsw %ax
5af654:	9e                   	sahf
5af655:	76 1b                	jbe    0x5af672
5af657:	8b 45 bc             	mov    -0x44(%ebp),%eax
5af65a:	2b 45 a4             	sub    -0x5c(%ebp),%eax
5af65d:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af663:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af669:	dc 4d d0             	fmull  -0x30(%ebp)
5af66c:	dd 5d c8             	fstpl  -0x38(%ebp)
5af66f:	9b                   	fwait
5af670:	eb 0a                	jmp    0x5af67c
5af672:	db 45 a4             	fildl  -0x5c(%ebp)
5af675:	dc 4d d0             	fmull  -0x30(%ebp)
5af678:	dd 5d c8             	fstpl  -0x38(%ebp)
5af67b:	9b dd 45 c8          	fldl   -0x38(%ebp)
5af67f:	e8 3c 36 e5 ff       	call   0x402cc0
5af684:	89 45 a8             	mov    %eax,-0x58(%ebp)
5af687:	db 45 a8             	fildl  -0x58(%ebp)
5af68a:	dc 6d c8             	fsubrl -0x38(%ebp)
5af68d:	d8 0d a4 fa 5a 00    	fmuls  0x5afaa4
5af693:	e8 28 36 e5 ff       	call   0x402cc0
5af698:	89 45 a0             	mov    %eax,-0x60(%ebp)
5af69b:	b8 00 10 00 00       	mov    $0x1000,%eax
5af6a0:	2b 45 a0             	sub    -0x60(%ebp),%eax
5af6a3:	89 45 9c             	mov    %eax,-0x64(%ebp)
5af6a6:	8b 45 b8             	mov    -0x48(%ebp),%eax
5af6a9:	29 45 a8             	sub    %eax,-0x58(%ebp)
5af6ac:	8b 7d b4             	mov    -0x4c(%ebp),%edi
5af6af:	4f                   	dec    %edi
5af6b0:	85 ff                	test   %edi,%edi
5af6b2:	7c 18                	jl     0x5af6cc
5af6b4:	47                   	inc    %edi
5af6b5:	33 f6                	xor    %esi,%esi
5af6b7:	8b c6                	mov    %esi,%eax
5af6b9:	f7 6d bc             	imull  -0x44(%ebp)
5af6bc:	03 45 a4             	add    -0x5c(%ebp),%eax
5af6bf:	8b 55 90             	mov    -0x70(%ebp),%edx
5af6c2:	8a 4d 9b             	mov    -0x65(%ebp),%cl
5af6c5:	88 0c 02             	mov    %cl,(%edx,%eax,1)
5af6c8:	46                   	inc    %esi
5af6c9:	4f                   	dec    %edi
5af6ca:	75 eb                	jne    0x5af6b7
5af6cc:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
5af6d0:	0f 84 df 00 00 00    	je     0x5af7b5
5af6d6:	8a 45 9b             	mov    -0x65(%ebp),%al
5af6d9:	88 45 9a             	mov    %al,-0x66(%ebp)
5af6dc:	8b 7d c0             	mov    -0x40(%ebp),%edi
5af6df:	4f                   	dec    %edi
5af6e0:	85 ff                	test   %edi,%edi
5af6e2:	7c 6e                	jl     0x5af752
5af6e4:	47                   	inc    %edi
5af6e5:	33 f6                	xor    %esi,%esi
5af6e7:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af6ea:	03 c6                	add    %esi,%eax
5af6ec:	85 c0                	test   %eax,%eax
5af6ee:	7c 5e                	jl     0x5af74e
5af6f0:	3b 45 b4             	cmp    -0x4c(%ebp),%eax
5af6f3:	7d 59                	jge    0x5af74e
5af6f5:	f7 6d bc             	imull  -0x44(%ebp)
5af6f8:	03 45 a4             	add    -0x5c(%ebp),%eax
5af6fb:	8b 55 90             	mov    -0x70(%ebp),%edx
5af6fe:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5af701:	8b c6                	mov    %esi,%eax
5af703:	f7 6d bc             	imull  -0x44(%ebp)
5af706:	03 45 a4             	add    -0x5c(%ebp),%eax
5af709:	8b 55 94             	mov    -0x6c(%ebp),%edx
5af70c:	8a 04 02             	mov    (%edx,%eax,1),%al
5af70f:	88 45 99             	mov    %al,-0x67(%ebp)
5af712:	33 c0                	xor    %eax,%eax
5af714:	8a 45 9a             	mov    -0x66(%ebp),%al
5af717:	f7 6d a0             	imull  -0x60(%ebp)
5af71a:	33 d2                	xor    %edx,%edx
5af71c:	8a 55 99             	mov    -0x67(%ebp),%dl
5af71f:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af723:	03 c2                	add    %edx,%eax
5af725:	05 00 08 00 00       	add    $0x800,%eax
5af72a:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af730:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af736:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af73c:	e8 7f 35 e5 ff       	call   0x402cc0
5af741:	e8 ee 9c ff ff       	call   0x5a9434
5af746:	88 03                	mov    %al,(%ebx)
5af748:	8a 45 99             	mov    -0x67(%ebp),%al
5af74b:	88 45 9a             	mov    %al,-0x66(%ebp)
5af74e:	46                   	inc    %esi
5af74f:	4f                   	dec    %edi
5af750:	75 95                	jne    0x5af6e7
5af752:	83 7d a0 00          	cmpl   $0x0,-0x60(%ebp)
5af756:	0f 8e 92 00 00 00    	jle    0x5af7ee
5af75c:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af75f:	03 45 c0             	add    -0x40(%ebp),%eax
5af762:	3b 45 b4             	cmp    -0x4c(%ebp),%eax
5af765:	0f 8d 83 00 00 00    	jge    0x5af7ee
5af76b:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af76e:	03 45 c0             	add    -0x40(%ebp),%eax
5af771:	f7 6d bc             	imull  -0x44(%ebp)
5af774:	03 45 a4             	add    -0x5c(%ebp),%eax
5af777:	8b 55 90             	mov    -0x70(%ebp),%edx
5af77a:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5af77d:	33 c0                	xor    %eax,%eax
5af77f:	8a 45 9a             	mov    -0x66(%ebp),%al
5af782:	f7 6d a0             	imull  -0x60(%ebp)
5af785:	33 d2                	xor    %edx,%edx
5af787:	8a 55 9b             	mov    -0x65(%ebp),%dl
5af78a:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af78e:	03 c2                	add    %edx,%eax
5af790:	05 00 08 00 00       	add    $0x800,%eax
5af795:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af79b:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af7a1:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af7a7:	e8 14 35 e5 ff       	call   0x402cc0
5af7ac:	e8 83 9c ff ff       	call   0x5a9434
5af7b1:	88 03                	mov    %al,(%ebx)
5af7b3:	eb 39                	jmp    0x5af7ee
5af7b5:	8b 7d c0             	mov    -0x40(%ebp),%edi
5af7b8:	4f                   	dec    %edi
5af7b9:	85 ff                	test   %edi,%edi
5af7bb:	7c 31                	jl     0x5af7ee
5af7bd:	47                   	inc    %edi
5af7be:	33 f6                	xor    %esi,%esi
5af7c0:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af7c3:	03 c6                	add    %esi,%eax
5af7c5:	85 c0                	test   %eax,%eax
5af7c7:	7c 21                	jl     0x5af7ea
5af7c9:	3b 45 b4             	cmp    -0x4c(%ebp),%eax
5af7cc:	7d 1c                	jge    0x5af7ea
5af7ce:	8b d6                	mov    %esi,%edx
5af7d0:	0f af 55 bc          	imul   -0x44(%ebp),%edx
5af7d4:	03 55 a4             	add    -0x5c(%ebp),%edx
5af7d7:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
5af7da:	8a 14 11             	mov    (%ecx,%edx,1),%dl
5af7dd:	0f af 45 bc          	imul   -0x44(%ebp),%eax
5af7e1:	03 45 a4             	add    -0x5c(%ebp),%eax
5af7e4:	8b 4d 90             	mov    -0x70(%ebp),%ecx
5af7e7:	88 14 01             	mov    %dl,(%ecx,%eax,1)
5af7ea:	46                   	inc    %esi
5af7eb:	4f                   	dec    %edi
5af7ec:	75 d2                	jne    0x5af7c0
5af7ee:	66 83 7d 0e 00       	cmpw   $0x0,0xe(%ebp)
5af7f3:	74 28                	je     0x5af81d
5af7f5:	8b 45 c0             	mov    -0x40(%ebp),%eax
5af7f8:	03 45 a4             	add    -0x5c(%ebp),%eax
5af7fb:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af801:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af807:	dc 8d 78 ff ff ff    	fmull  -0x88(%ebp)
5af80d:	e8 ba 34 e5 ff       	call   0x402ccc
5af812:	8b c8                	mov    %eax,%ecx
5af814:	8b 55 08             	mov    0x8(%ebp),%edx
5af817:	8b 45 10             	mov    0x10(%ebp),%eax
5af81a:	ff 55 0c             	call   *0xc(%ebp)
5af81d:	ff 45 a4             	incl   -0x5c(%ebp)
5af820:	ff 8d 74 ff ff ff    	decl   -0x8c(%ebp)
5af826:	0f 85 1d fe ff ff    	jne    0x5af649
5af82c:	8b 45 94             	mov    -0x6c(%ebp),%eax
5af82f:	e8 98 2f e5 ff       	call   0x4027cc
5af834:	8b 55 b4             	mov    -0x4c(%ebp),%edx
5af837:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af83a:	e8 29 84 04 00       	call   0x5f7c68
5af83f:	8b 55 ac             	mov    -0x54(%ebp),%edx
5af842:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af845:	e8 7a 82 04 00       	call   0x5f7ac4
5af84a:	db 45 f4             	fildl  -0xc(%ebp)
5af84d:	83 c4 f8             	add    $0xfffffff8,%esp
5af850:	dd 1c 24             	fstpl  (%esp)
5af853:	9b                   	fwait
5af854:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af857:	e8 6c c7 04 00       	call   0x5fbfc8
5af85c:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5af85f:	48                   	dec    %eax
5af860:	85 c0                	test   %eax,%eax
5af862:	0f 8c f2 01 00 00    	jl     0x5afa5a
5af868:	40                   	inc    %eax
5af869:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5af86f:	33 f6                	xor    %esi,%esi
5af871:	dd 45 e8             	fldl   -0x18(%ebp)
5af874:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af87a:	df e0                	fnstsw %ax
5af87c:	9e                   	sahf
5af87d:	76 15                	jbe    0x5af894
5af87f:	89 b5 00 ff ff ff    	mov    %esi,-0x100(%ebp)
5af885:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af88b:	dc 4d d8             	fmull  -0x28(%ebp)
5af88e:	dd 5d c8             	fstpl  -0x38(%ebp)
5af891:	9b                   	fwait
5af892:	eb 18                	jmp    0x5af8ac
5af894:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5af897:	2b c6                	sub    %esi,%eax
5af899:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af89f:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af8a5:	dc 4d d8             	fmull  -0x28(%ebp)
5af8a8:	dd 5d c8             	fstpl  -0x38(%ebp)
5af8ab:	9b dd 45 c8          	fldl   -0x38(%ebp)
5af8af:	e8 0c 34 e5 ff       	call   0x402cc0
5af8b4:	89 45 a8             	mov    %eax,-0x58(%ebp)
5af8b7:	db 45 a8             	fildl  -0x58(%ebp)
5af8ba:	dc 6d c8             	fsubrl -0x38(%ebp)
5af8bd:	d8 0d a4 fa 5a 00    	fmuls  0x5afaa4
5af8c3:	e8 f8 33 e5 ff       	call   0x402cc0
5af8c8:	89 45 a0             	mov    %eax,-0x60(%ebp)
5af8cb:	b8 00 10 00 00       	mov    $0x1000,%eax
5af8d0:	2b 45 a0             	sub    -0x60(%ebp),%eax
5af8d3:	89 45 9c             	mov    %eax,-0x64(%ebp)
5af8d6:	8b 45 b0             	mov    -0x50(%ebp),%eax
5af8d9:	29 45 a8             	sub    %eax,-0x58(%ebp)
5af8dc:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
5af8e0:	0f 84 e8 00 00 00    	je     0x5af9ce
5af8e6:	8a 45 9b             	mov    -0x65(%ebp),%al
5af8e9:	88 45 9a             	mov    %al,-0x66(%ebp)
5af8ec:	8b c6                	mov    %esi,%eax
5af8ee:	f7 6d bc             	imull  -0x44(%ebp)
5af8f1:	8b 55 90             	mov    -0x70(%ebp),%edx
5af8f4:	8d 04 02             	lea    (%edx,%eax,1),%eax
5af8f7:	89 45 8c             	mov    %eax,-0x74(%ebp)
5af8fa:	8b d6                	mov    %esi,%edx
5af8fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af8ff:	8b 08                	mov    (%eax),%ecx
5af901:	ff 11                	call   *(%ecx)
5af903:	89 45 88             	mov    %eax,-0x78(%ebp)
5af906:	8b 7d bc             	mov    -0x44(%ebp),%edi
5af909:	4f                   	dec    %edi
5af90a:	85 ff                	test   %edi,%edi
5af90c:	7c 64                	jl     0x5af972
5af90e:	47                   	inc    %edi
5af90f:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
5af916:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af919:	03 45 a4             	add    -0x5c(%ebp),%eax
5af91c:	85 c0                	test   %eax,%eax
5af91e:	7c 49                	jl     0x5af969
5af920:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5af923:	7d 44                	jge    0x5af969
5af925:	8b 5d 88             	mov    -0x78(%ebp),%ebx
5af928:	03 d8                	add    %eax,%ebx
5af92a:	33 c0                	xor    %eax,%eax
5af92c:	8a 45 9a             	mov    -0x66(%ebp),%al
5af92f:	f7 6d a0             	imull  -0x60(%ebp)
5af932:	8b 55 8c             	mov    -0x74(%ebp),%edx
5af935:	0f b6 12             	movzbl (%edx),%edx
5af938:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af93c:	03 c2                	add    %edx,%eax
5af93e:	05 00 08 00 00       	add    $0x800,%eax
5af943:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af949:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af94f:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af955:	e8 66 33 e5 ff       	call   0x402cc0
5af95a:	e8 d5 9a ff ff       	call   0x5a9434
5af95f:	88 03                	mov    %al,(%ebx)
5af961:	8b 45 8c             	mov    -0x74(%ebp),%eax
5af964:	8a 00                	mov    (%eax),%al
5af966:	88 45 9a             	mov    %al,-0x66(%ebp)
5af969:	ff 45 8c             	incl   -0x74(%ebp)
5af96c:	ff 45 a4             	incl   -0x5c(%ebp)
5af96f:	4f                   	dec    %edi
5af970:	75 a4                	jne    0x5af916
5af972:	83 7d a0 00          	cmpl   $0x0,-0x60(%ebp)
5af976:	0f 8e a0 00 00 00    	jle    0x5afa1c
5af97c:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af97f:	03 45 bc             	add    -0x44(%ebp),%eax
5af982:	3b 45 ac             	cmp    -0x54(%ebp),%eax
5af985:	0f 8d 91 00 00 00    	jge    0x5afa1c
5af98b:	8b 5d 88             	mov    -0x78(%ebp),%ebx
5af98e:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af991:	03 45 bc             	add    -0x44(%ebp),%eax
5af994:	03 d8                	add    %eax,%ebx
5af996:	33 c0                	xor    %eax,%eax
5af998:	8a 45 9a             	mov    -0x66(%ebp),%al
5af99b:	f7 6d a0             	imull  -0x60(%ebp)
5af99e:	33 d2                	xor    %edx,%edx
5af9a0:	8a 55 9b             	mov    -0x65(%ebp),%dl
5af9a3:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af9a7:	03 c2                	add    %edx,%eax
5af9a9:	05 00 08 00 00       	add    $0x800,%eax
5af9ae:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af9b4:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af9ba:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af9c0:	e8 fb 32 e5 ff       	call   0x402cc0