5af0e5:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
5af0eb:	8b 45 f4             	mov    -0xc(%ebp),%eax
5af0ee:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
5af0f4:	8b 45 08             	mov    0x8(%ebp),%eax
5af0f7:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5af0fd:	8b 45 0c             	mov    0xc(%ebp),%eax
5af100:	89 85 0c ff ff ff    	mov    %eax,-0xf4(%ebp)
5af106:	80 7d 12 00          	cmpb   $0x0,0x12(%ebp)
5af10a:	74 27                	je     0x5af133
5af10c:	80 7d 11 00          	cmpb   $0x0,0x11(%ebp)
5af110:	74 21                	je     0x5af133
5af112:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
5af116:	74 1b                	je     0x5af133
5af118:	ff 75 18             	push   0x18(%ebp)
5af11b:	ff 75 14             	push   0x14(%ebp)
5af11e:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
5af124:	ba 01 00 00 00       	mov    $0x1,%edx
5af129:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af12c:	e8 1b 0a 00 00       	call   0x5afb4c
5af131:	eb 16                	jmp    0x5af149
5af133:	ff 75 18             	push   0x18(%ebp)
5af136:	ff 75 14             	push   0x14(%ebp)
5af139:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
5af13f:	33 d2                	xor    %edx,%edx
5af141:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af144:	e8 03 0a 00 00       	call   0x5afb4c
5af149:	5f                   	pop    %edi
5af14a:	5e                   	pop    %esi
5af14b:	5b                   	pop    %ebx
5af14c:	8b e5                	mov    %ebp,%esp
5af14e:	5d                   	pop    %ebp
5af14f:	c2 14 00             	ret    $0x14
5af15a:	7a 44                	jp     0x5af1a0
5af15c:	00 00                	add    %al,(%eax)
5af15e:	34 c2                	xor    $0xc2,%al
5af160:	00 00                	add    %al,(%eax)
5af162:	34 42                	xor    $0x42,%al
5af164:	00 00                	add    %al,(%eax)
5af166:	b4 42                	mov    $0x42,%ah
5af168:	35 c2 68 21 a2       	xor    $0xa22168c2,%eax
5af16d:	da 0f                	fimull (%edi)
5af16f:	c9                   	leave
5af170:	00 40 00             	add    %al,0x0(%eax)
5af173:	00 00                	add    %al,(%eax)
5af175:	00 34 43             	add    %dh,(%ebx,%eax,2)
5af178:	00 00                	add    %al,(%eax)
5af17a:	00 40 00             	add    %al,0x0(%eax)
5af17d:	00 80 3f 00 00 c8    	add    %al,-0x37ffffc1(%eax)
5af183:	42                   	inc    %edx
5af184:	00 00                	add    %al,(%eax)
5af186:	80 45 55 8b          	addb   $0x8b,0x55(%ebp)
5af18a:	ec                   	in     (%dx),%al
5af18b:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
5af191:	53                   	push   %ebx
5af192:	56                   	push   %esi
5af193:	57                   	push   %edi
5af194:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5af197:	88 55 fb             	mov    %dl,-0x5(%ebp)
5af19a:	89 45 fc             	mov    %eax,-0x4(%ebp)
5af19d:	dd 45 14             	fldl   0x14(%ebp)
5af1a0:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af1a6:	df e0                	fnstsw %ax
5af1a8:	9e                   	sahf
5af1a9:	0f 84 bb 08 00 00    	je     0x5afa6a
5af1af:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af1b2:	8b 10                	mov    (%eax),%edx
5af1b4:	ff 52 10             	call   *0x10(%edx)
5af1b7:	3c 03                	cmp    $0x3,%al
5af1b9:	74 10                	je     0x5af1cb
5af1bb:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af1be:	8b 10                	mov    (%eax),%edx
5af1c0:	ff 52 10             	call   *0x10(%edx)
5af1c3:	3c 02                	cmp    $0x2,%al
5af1c5:	0f 85 9f 08 00 00    	jne    0x5afa6a
5af1cb:	dd 45 14             	fldl   0x14(%ebp)
5af1ce:	d8 0d 78 fa 5a 00    	fmuls  0x5afa78
5af1d4:	e8 f3 3a e5 ff       	call   0x402ccc
5af1d9:	89 45 84             	mov    %eax,-0x7c(%ebp)
5af1dc:	8b 45 84             	mov    -0x7c(%ebp),%eax
5af1df:	b9 40 7e 05 00       	mov    $0x57e40,%ecx
5af1e4:	99                   	cltd
5af1e5:	f7 f9                	idiv   %ecx
5af1e7:	89 55 84             	mov    %edx,-0x7c(%ebp)
5af1ea:	db 45 84             	fildl  -0x7c(%ebp)
5af1ed:	d8 35 78 fa 5a 00    	fdivs  0x5afa78
5af1f3:	dd 5d 14             	fstpl  0x14(%ebp)
5af1f6:	9b                   	fwait
5af1f7:	b2 01                	mov    $0x1,%dl
5af1f9:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5af1fe:	e8 a1 83 04 00       	call   0x5f75a4
5af203:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5af206:	dd 45 14             	fldl   0x14(%ebp)
5af209:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af20f:	df e0                	fnstsw %ax
5af211:	9e                   	sahf
5af212:	72 4c                	jb     0x5af260
5af214:	dd 45 14             	fldl   0x14(%ebp)
5af217:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af21d:	df e0                	fnstsw %ax
5af21f:	9e                   	sahf
5af220:	77 3e                	ja     0x5af260
5af222:	8b 55 fc             	mov    -0x4(%ebp),%edx
5af225:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af228:	e8 93 97 04 00       	call   0x5f89c0
5af22d:	eb 31                	jmp    0x5af260
5af22f:	dd 45 14             	fldl   0x14(%ebp)
5af232:	d8 25 84 fa 5a 00    	fsubs  0x5afa84
5af238:	dd 5d 14             	fstpl  0x14(%ebp)
5af23b:	9b                   	fwait
5af23c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af23f:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af242:	e8 ed b1 ff ff       	call   0x5aa434
5af247:	dd 45 14             	fldl   0x14(%ebp)
5af24a:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af250:	df e0                	fnstsw %ax
5af252:	9e                   	sahf
5af253:	76 4c                	jbe    0x5af2a1
5af255:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af258:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af25b:	8b 08                	mov    (%eax),%ecx
5af25d:	ff 51 28             	call   *0x28(%ecx)
5af260:	dd 45 14             	fldl   0x14(%ebp)
5af263:	d8 1d 80 fa 5a 00    	fcomps 0x5afa80
5af269:	df e0                	fnstsw %ax
5af26b:	9e                   	sahf
5af26c:	77 c1                	ja     0x5af22f
5af26e:	eb 31                	jmp    0x5af2a1
5af270:	dd 45 14             	fldl   0x14(%ebp)
5af273:	d8 05 84 fa 5a 00    	fadds  0x5afa84
5af279:	dd 5d 14             	fstpl  0x14(%ebp)
5af27c:	9b                   	fwait
5af27d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af280:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af283:	e8 6c b0 ff ff       	call   0x5aa2f4
5af288:	dd 45 14             	fldl   0x14(%ebp)
5af28b:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af291:	df e0                	fnstsw %ax
5af293:	9e                   	sahf
5af294:	73 19                	jae    0x5af2af
5af296:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af299:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af29c:	8b 08                	mov    (%eax),%ecx
5af29e:	ff 51 28             	call   *0x28(%ecx)
5af2a1:	dd 45 14             	fldl   0x14(%ebp)
5af2a4:	d8 1d 7c fa 5a 00    	fcomps 0x5afa7c
5af2aa:	df e0                	fnstsw %ax
5af2ac:	9e                   	sahf
5af2ad:	72 c1                	jb     0x5af270
5af2af:	dd 45 14             	fldl   0x14(%ebp)
5af2b2:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af2b8:	df e0                	fnstsw %ax
5af2ba:	9e                   	sahf
5af2bb:	75 18                	jne    0x5af2d5
5af2bd:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5af2c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
5af2c3:	8b 08                	mov    (%eax),%ecx
5af2c5:	ff 51 28             	call   *0x28(%ecx)
5af2c8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2cb:	e8 a8 47 e5 ff       	call   0x403a78
5af2d0:	e9 95 07 00 00       	jmp    0x5afa6a
5af2d5:	db 2d 88 fa 5a 00    	fldt   0x5afa88
5af2db:	dc 4d 14             	fmull  0x14(%ebp)
5af2de:	d8 35 94 fa 5a 00    	fdivs  0x5afa94
5af2e4:	dd 5d e8             	fstpl  -0x18(%ebp)
5af2e7:	9b                   	fwait
5af2e8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2eb:	8b 10                	mov    (%eax),%edx
5af2ed:	ff 52 0c             	call   *0xc(%edx)
5af2f0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
5af2f3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af2f6:	8b 10                	mov    (%eax),%edx
5af2f8:	ff 52 08             	call   *0x8(%edx)
5af2fb:	89 45 c0             	mov    %eax,-0x40(%ebp)
5af2fe:	dd 45 e8             	fldl   -0x18(%ebp)
5af301:	d8 35 98 fa 5a 00    	fdivs  0x5afa98
5af307:	e8 80 39 e5 ff       	call   0x402c8c
5af30c:	db bd 04 ff ff ff    	fstpt  -0xfc(%ebp)
5af312:	9b dd 45 e8          	fldl   -0x18(%ebp)
5af316:	d8 35 98 fa 5a 00    	fdivs  0x5afa98
5af31c:	e8 23 39 e5 ff       	call   0x402c44
5af321:	db ad 04 ff ff ff    	fldt   -0xfc(%ebp)
5af327:	de f1                	fdivp  %st,%st(1)
5af329:	d9 e1                	fabs
5af32b:	dd 5d d8             	fstpl  -0x28(%ebp)
5af32e:	9b dd 45 e8          	fldl   -0x18(%ebp)
5af332:	e8 55 39 e5 ff       	call   0x402c8c
5af337:	d9 e1                	fabs
5af339:	dd 5d d0             	fstpl  -0x30(%ebp)
5af33c:	9b db 45 c0          	fildl  -0x40(%ebp)
5af340:	dc 4d d8             	fmull  -0x28(%ebp)
5af343:	db 45 c4             	fildl  -0x3c(%ebp)
5af346:	de c1                	faddp  %st,%st(1)
5af348:	d8 05 9c fa 5a 00    	fadds  0x5afa9c
5af34e:	e8 6d 39 e5 ff       	call   0x402cc0
5af353:	89 45 bc             	mov    %eax,-0x44(%ebp)
5af356:	8b 45 bc             	mov    -0x44(%ebp),%eax
5af359:	2b 45 c4             	sub    -0x3c(%ebp),%eax
5af35c:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af362:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af368:	dc 4d d0             	fmull  -0x30(%ebp)
5af36b:	e8 50 39 e5 ff       	call   0x402cc0
5af370:	89 45 b8             	mov    %eax,-0x48(%ebp)
5af373:	db 45 bc             	fildl  -0x44(%ebp)
5af376:	dc 4d d0             	fmull  -0x30(%ebp)
5af379:	db 45 c0             	fildl  -0x40(%ebp)
5af37c:	de c1                	faddp  %st,%st(1)
5af37e:	d8 05 9c fa 5a 00    	fadds  0x5afa9c
5af384:	e8 37 39 e5 ff       	call   0x402cc0
5af389:	89 45 b4             	mov    %eax,-0x4c(%ebp)
5af38c:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5af38f:	2b 45 c0             	sub    -0x40(%ebp),%eax
5af392:	2b 45 b8             	sub    -0x48(%ebp),%eax
5af395:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af39b:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af3a1:	dc 4d d8             	fmull  -0x28(%ebp)
5af3a4:	e8 17 39 e5 ff       	call   0x402cc0
5af3a9:	89 45 b0             	mov    %eax,-0x50(%ebp)
5af3ac:	8b 45 b8             	mov    -0x48(%ebp),%eax
5af3af:	03 c0                	add    %eax,%eax
5af3b1:	8b 55 b4             	mov    -0x4c(%ebp),%edx
5af3b4:	2b d0                	sub    %eax,%edx
5af3b6:	89 95 00 ff ff ff    	mov    %edx,-0x100(%ebp)
5af3bc:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af3c2:	e8 f9 38 e5 ff       	call   0x402cc0
5af3c7:	89 45 b4             	mov    %eax,-0x4c(%ebp)
5af3ca:	db 45 b4             	fildl  -0x4c(%ebp)
5af3cd:	dc 4d d8             	fmull  -0x28(%ebp)
5af3d0:	db 45 bc             	fildl  -0x44(%ebp)
5af3d3:	de c1                	faddp  %st,%st(1)
5af3d5:	d8 05 9c fa 5a 00    	fadds  0x5afa9c
5af3db:	8b 45 b0             	mov    -0x50(%ebp),%eax
5af3de:	03 c0                	add    %eax,%eax
5af3e0:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af3e6:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af3ec:	de e9                	fsubrp %st,%st(1)
5af3ee:	e8 cd 38 e5 ff       	call   0x402cc0
5af3f3:	89 45 ac             	mov    %eax,-0x54(%ebp)
5af3f6:	8b 45 c0             	mov    -0x40(%ebp),%eax
5af3f9:	03 45 bc             	add    -0x44(%ebp),%eax
5af3fc:	03 45 b4             	add    -0x4c(%ebp),%eax
5af3ff:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af405:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af40b:	d8 3d a0 fa 5a 00    	fdivrs 0x5afaa0
5af411:	dd 9d 78 ff ff ff    	fstpl  -0x88(%ebp)
5af417:	9b                   	fwait
5af418:	8a 45 f4             	mov    -0xc(%ebp),%al
5af41b:	88 45 9b             	mov    %al,-0x65(%ebp)
5af41e:	8b 45 bc             	mov    -0x44(%ebp),%eax
5af421:	f7 6d c0             	imull  -0x40(%ebp)
5af424:	e8 83 33 e5 ff       	call   0x4027ac
5af429:	89 45 94             	mov    %eax,-0x6c(%ebp)
5af42c:	8b 45 c0             	mov    -0x40(%ebp),%eax
5af42f:	48                   	dec    %eax
5af430:	85 c0                	test   %eax,%eax
5af432:	0f 8c e9 01 00 00    	jl     0x5af621
5af438:	40                   	inc    %eax
5af439:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5af43f:	33 f6                	xor    %esi,%esi
5af441:	dd 45 e8             	fldl   -0x18(%ebp)
5af444:	d8 1d 74 fa 5a 00    	fcomps 0x5afa74
5af44a:	df e0                	fnstsw %ax
5af44c:	9e                   	sahf
5af44d:	76 15                	jbe    0x5af464
5af44f:	89 b5 00 ff ff ff    	mov    %esi,-0x100(%ebp)
5af455:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af45b:	dc 4d d8             	fmull  -0x28(%ebp)
5af45e:	dd 5d c8             	fstpl  -0x38(%ebp)
5af461:	9b                   	fwait
5af462:	eb 18                	jmp    0x5af47c
5af464:	8b 45 c0             	mov    -0x40(%ebp),%eax
5af467:	2b c6                	sub    %esi,%eax
5af469:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af46f:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af475:	dc 4d d8             	fmull  -0x28(%ebp)
5af478:	dd 5d c8             	fstpl  -0x38(%ebp)
5af47b:	9b dd 45 c8          	fldl   -0x38(%ebp)
5af47f:	e8 3c 38 e5 ff       	call   0x402cc0
5af484:	89 45 a8             	mov    %eax,-0x58(%ebp)
5af487:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
5af48b:	0f 84 0d 01 00 00    	je     0x5af59e
5af491:	db 45 a8             	fildl  -0x58(%ebp)
5af494:	dc 6d c8             	fsubrl -0x38(%ebp)
5af497:	d8 0d a4 fa 5a 00    	fmuls  0x5afaa4
5af49d:	e8 2a 38 e5 ff       	call   0x402ccc
5af4a2:	89 45 a0             	mov    %eax,-0x60(%ebp)
5af4a5:	b8 00 10 00 00       	mov    $0x1000,%eax
5af4aa:	2b 45 a0             	sub    -0x60(%ebp),%eax
5af4ad:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af4b3:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af4b9:	e8 0e 38 e5 ff       	call   0x402ccc
5af4be:	89 45 9c             	mov    %eax,-0x64(%ebp)
5af4c1:	8b c6                	mov    %esi,%eax
5af4c3:	f7 6d bc             	imull  -0x44(%ebp)
5af4c6:	8b 55 94             	mov    -0x6c(%ebp),%edx
5af4c9:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5af4cc:	8b 7d bc             	mov    -0x44(%ebp),%edi
5af4cf:	4f                   	dec    %edi
5af4d0:	85 ff                	test   %edi,%edi
5af4d2:	7c 0a                	jl     0x5af4de
5af4d4:	47                   	inc    %edi
5af4d5:	8a 45 9b             	mov    -0x65(%ebp),%al
5af4d8:	88 03                	mov    %al,(%ebx)
5af4da:	43                   	inc    %ebx
5af4db:	4f                   	dec    %edi
5af4dc:	75 f7                	jne    0x5af4d5
5af4de:	8a 45 9b             	mov    -0x65(%ebp),%al
5af4e1:	88 45 9a             	mov    %al,-0x66(%ebp)
5af4e4:	8b c6                	mov    %esi,%eax
5af4e6:	f7 6d bc             	imull  -0x44(%ebp)
5af4e9:	03 45 a8             	add    -0x58(%ebp),%eax
5af4ec:	8b 55 94             	mov    -0x6c(%ebp),%edx
5af4ef:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
5af4f2:	8b d6                	mov    %esi,%edx
5af4f4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5af4f7:	8b 08                	mov    (%eax),%ecx
5af4f9:	ff 11                	call   *(%ecx)
5af4fb:	89 45 8c             	mov    %eax,-0x74(%ebp)
5af4fe:	8b 7d c4             	mov    -0x3c(%ebp),%edi
5af501:	4f                   	dec    %edi
5af502:	85 ff                	test   %edi,%edi
5af504:	7c 47                	jl     0x5af54d
5af506:	47                   	inc    %edi
5af507:	33 c0                	xor    %eax,%eax
5af509:	8a 45 9a             	mov    -0x66(%ebp),%al
5af50c:	f7 6d a0             	imull  -0x60(%ebp)
5af50f:	8b 55 8c             	mov    -0x74(%ebp),%edx
5af512:	0f b6 12             	movzbl (%edx),%edx
5af515:	0f af 55 9c          	imul   -0x64(%ebp),%edx
5af519:	03 c2                	add    %edx,%eax
5af51b:	05 00 08 00 00       	add    $0x800,%eax
5af520:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
5af526:	db 85 00 ff ff ff    	fildl  -0x100(%ebp)
5af52c:	d8 35 a4 fa 5a 00    	fdivs  0x5afaa4
5af532:	e8 89 37 e5 ff       	call   0x402cc0
5af537:	e8 f8 9e ff ff       	call   0x5a9434
5af53c:	88 03                	mov    %al,(%ebx)
5af53e:	8b 45 8c             	mov    -0x74(%ebp),%eax
5af541:	8a 00                	mov    (%eax),%al
5af543:	88 45 9a             	mov    %al,-0x66(%ebp)
5af546:	43                   	inc    %ebx
5af547:	ff 45 8c             	incl   -0x74(%ebp)
5af54a:	4f                   	dec    %edi
5af54b:	75 ba                	jne    0x5af507
5af54d:	83 7d a0 00          	cmpl   $0x0,-0x60(%ebp)
5af551:	0f 8e 94 00 00 00    	jle    0x5af5eb
5af557:	8b 45 a8             	mov    -0x58(%ebp),%eax
5af55a:	03 45 c4             	add    -0x3c(%ebp),%eax
5af55d:	3b 45 bc             	cmp    -0x44(%ebp),%eax
5af560:	0f 8d 85 00 00 00    	jge    0x5af5eb
5af566:	33 c0                	xor    %eax,%eax