604344:	33 c9                	xor    %ecx,%ecx
604346:	33 d2                	xor    %edx,%edx
604348:	8b c6                	mov    %esi,%eax
60434a:	e8 a5 81 f7 ff       	call   0x57c4f4
60434f:	89 43 0c             	mov    %eax,0xc(%ebx)
604352:	5e                   	pop    %esi
604353:	5b                   	pop    %ebx
604354:	c3                   	ret
604355:	8d 40 00             	lea    0x0(%eax),%eax
604358:	53                   	push   %ebx
604359:	8b d8                	mov    %eax,%ebx
60435b:	8b c3                	mov    %ebx,%eax
60435d:	e8 42 00 00 00       	call   0x6043a4
604362:	8b 43 0c             	mov    0xc(%ebx),%eax
604365:	85 c0                	test   %eax,%eax
604367:	74 05                	je     0x60436e
604369:	e8 22 fb f7 ff       	call   0x583e90
60436e:	8b 43 10             	mov    0x10(%ebx),%eax
604371:	85 c0                	test   %eax,%eax
604373:	74 05                	je     0x60437a
604375:	e8 fe f6 df ff       	call   0x403a78
60437a:	33 c0                	xor    %eax,%eax
60437c:	89 43 14             	mov    %eax,0x14(%ebx)
60437f:	33 c0                	xor    %eax,%eax
604381:	89 43 0c             	mov    %eax,0xc(%ebx)
604384:	33 c0                	xor    %eax,%eax
604386:	89 43 10             	mov    %eax,0x10(%ebx)
604389:	33 c0                	xor    %eax,%eax
60438b:	89 43 20             	mov    %eax,0x20(%ebx)
60438e:	33 c0                	xor    %eax,%eax
604390:	89 43 24             	mov    %eax,0x24(%ebx)
604393:	33 c0                	xor    %eax,%eax
604395:	89 43 28             	mov    %eax,0x28(%ebx)
604398:	33 c0                	xor    %eax,%eax
60439a:	89 43 2c             	mov    %eax,0x2c(%ebx)
60439d:	33 c0                	xor    %eax,%eax
60439f:	89 43 30             	mov    %eax,0x30(%ebx)
6043a2:	5b                   	pop    %ebx
6043a3:	c3                   	ret
6043a4:	53                   	push   %ebx
6043a5:	8b d8                	mov    %eax,%ebx
6043a7:	8b 43 1c             	mov    0x1c(%ebx),%eax
6043aa:	85 c0                	test   %eax,%eax
6043ac:	74 05                	je     0x6043b3
6043ae:	e8 05 b0 f7 ff       	call   0x57f3b8
6043b3:	33 c0                	xor    %eax,%eax
6043b5:	89 43 34             	mov    %eax,0x34(%ebx)
6043b8:	33 c0                	xor    %eax,%eax
6043ba:	89 43 1c             	mov    %eax,0x1c(%ebx)
6043bd:	5b                   	pop    %ebx
6043be:	c3                   	ret
6043bf:	90                   	nop
6043c0:	55                   	push   %ebp
6043c1:	8b ec                	mov    %esp,%ebp
6043c3:	51                   	push   %ecx
6043c4:	53                   	push   %ebx
6043c5:	56                   	push   %esi
6043c6:	57                   	push   %edi
6043c7:	8b f1                	mov    %ecx,%esi
6043c9:	89 55 fc             	mov    %edx,-0x4(%ebp)
6043cc:	8b d8                	mov    %eax,%ebx
6043ce:	8b 7d 1c             	mov    0x1c(%ebp),%edi
6043d1:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
6043d5:	74 1a                	je     0x6043f1
6043d7:	3b 73 20             	cmp    0x20(%ebx),%esi
6043da:	75 15                	jne    0x6043f1
6043dc:	3b 7b 24             	cmp    0x24(%ebx),%edi
6043df:	75 10                	jne    0x6043f1
6043e1:	8b 43 2c             	mov    0x2c(%ebx),%eax
6043e4:	3b 45 18             	cmp    0x18(%ebp),%eax
6043e7:	75 08                	jne    0x6043f1
6043e9:	8b 43 30             	mov    0x30(%ebx),%eax
6043ec:	3b 45 14             	cmp    0x14(%ebp),%eax
6043ef:	74 35                	je     0x604426
6043f1:	8b c3                	mov    %ebx,%eax
6043f3:	e8 ac ff ff ff       	call   0x6043a4
6043f8:	57                   	push   %edi
6043f9:	8b 45 18             	mov    0x18(%ebp),%eax
6043fc:	50                   	push   %eax
6043fd:	8b 45 14             	mov    0x14(%ebp),%eax
604400:	50                   	push   %eax
604401:	8b 45 fc             	mov    -0x4(%ebp),%eax
604404:	8b 48 0c             	mov    0xc(%eax),%ecx
604407:	8b d6                	mov    %esi,%edx
604409:	8b 43 0c             	mov    0xc(%ebx),%eax
60440c:	e8 0f 42 f8 ff       	call   0x588620
604411:	89 43 1c             	mov    %eax,0x1c(%ebx)
604414:	89 73 20             	mov    %esi,0x20(%ebx)
604417:	89 7b 24             	mov    %edi,0x24(%ebx)
60441a:	8b 45 18             	mov    0x18(%ebp),%eax
60441d:	89 43 2c             	mov    %eax,0x2c(%ebx)
604420:	8b 45 14             	mov    0x14(%ebp),%eax
604423:	89 43 30             	mov    %eax,0x30(%ebx)
604426:	8b 43 1c             	mov    0x1c(%ebx),%eax
604429:	85 c0                	test   %eax,%eax
60442b:	74 13                	je     0x604440
60442d:	8b 55 08             	mov    0x8(%ebp),%edx
604430:	52                   	push   %edx
604431:	8b 4d 0c             	mov    0xc(%ebp),%ecx
604434:	8b 55 10             	mov    0x10(%ebp),%edx
604437:	e8 70 03 f8 ff       	call   0x5847ac
60443c:	c6 43 18 01          	movb   $0x1,0x18(%ebx)
604440:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
604444:	75 0a                	jne    0x604450
604446:	83 7b 34 00          	cmpl   $0x0,0x34(%ebx)
60444a:	75 04                	jne    0x604450
60444c:	33 c0                	xor    %eax,%eax
60444e:	eb 02                	jmp    0x604452
604450:	b0 01                	mov    $0x1,%al
604452:	5f                   	pop    %edi
604453:	5e                   	pop    %esi
604454:	5b                   	pop    %ebx
604455:	59                   	pop    %ecx
604456:	5d                   	pop    %ebp
604457:	c2 18 00             	ret    $0x18
60445a:	8b c0                	mov    %eax,%eax
60445c:	53                   	push   %ebx
60445d:	8b d8                	mov    %eax,%ebx
60445f:	8b c3                	mov    %ebx,%eax
604461:	e8 4a fe ff ff       	call   0x6042b0
604466:	e8 1d 44 f8 ff       	call   0x588888
60446b:	89 43 0c             	mov    %eax,0xc(%ebx)
60446e:	5b                   	pop    %ebx
60446f:	c3                   	ret
604470:	68 00 10 00 00       	push   $0x1000
604475:	e8 a6 36 e0 ff       	call   0x407b20
60447a:	85 c0                	test   %eax,%eax
60447c:	0f 95 c0             	setne  %al
60447f:	c3                   	ret
604480:	53                   	push   %ebx
604481:	56                   	push   %esi
604482:	51                   	push   %ecx
604483:	33 f6                	xor    %esi,%esi
604485:	bb 20 60 6b 00       	mov    $0x6b6020,%ebx
60448a:	89 34 24             	mov    %esi,(%esp)
60448d:	db 04 24             	fildl  (%esp)
604490:	db 2d c8 44 60 00    	fldt   0x6044c8
604496:	de c9                	fmulp  %st,%st(1)
604498:	d8 35 d4 44 60 00    	fdivs  0x6044d4
60449e:	e8 a1 e7 df ff       	call   0x402c44
6044a3:	d8 0d d8 44 60 00    	fmuls  0x6044d8
6044a9:	d8 2d d8 44 60 00    	fsubrs 0x6044d8
6044af:	e8 0c e8 df ff       	call   0x402cc0
6044b4:	89 03                	mov    %eax,(%ebx)
6044b6:	46                   	inc    %esi
6044b7:	83 c3 04             	add    $0x4,%ebx
6044ba:	81 fe 00 01 00 00    	cmp    $0x100,%esi
6044c0:	75 c8                	jne    0x60448a
6044c2:	5a                   	pop    %edx
6044c3:	5e                   	pop    %esi
6044c4:	5b                   	pop    %ebx
6044c5:	c3                   	ret
6044c6:	00 00                	add    %al,(%eax)
6044c8:	35 c2 68 21 a2       	xor    $0xa22168c2,%eax
6044cd:	da 0f                	fimull (%edi)
6044cf:	c9                   	leave
6044d0:	00 40 00             	add    %al,0x0(%eax)
6044d3:	00 00                	add    %al,(%eax)
6044d5:	00 7f 43             	add    %bh,0x43(%edi)
6044d8:	00 00                	add    %al,(%eax)
6044da:	80 42 55 8b          	addb   $0x8b,0x55(%edx)
6044de:	ec                   	in     (%dx),%al
6044df:	83 c4 9c             	add    $0xffffff9c,%esp
6044e2:	53                   	push   %ebx
6044e3:	56                   	push   %esi
6044e4:	57                   	push   %edi
6044e5:	8b 75 10             	mov    0x10(%ebp),%esi
6044e8:	8d 7d e0             	lea    -0x20(%ebp),%edi
6044eb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044ed:	8b f1                	mov    %ecx,%esi
6044ef:	8d 7d e8             	lea    -0x18(%ebp),%edi
6044f2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044f3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044f4:	8b f2                	mov    %edx,%esi
6044f6:	8d 7d f0             	lea    -0x10(%ebp),%edi
6044f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6044fb:	8b f0                	mov    %eax,%esi
6044fd:	8d 7d f8             	lea    -0x8(%ebp),%edi
604500:	a5                   	movsl  %ds:(%esi),%es:(%edi)
604501:	a5                   	movsl  %ds:(%esi),%es:(%edi)
604502:	8b 45 08             	mov    0x8(%ebp),%eax
604505:	8b 7d 0c             	mov    0xc(%ebp),%edi
604508:	89 45 9c             	mov    %eax,-0x64(%ebp)
60450b:	db 45 9c             	fildl  -0x64(%ebp)
60450e:	d8 3d 18 46 60 00    	fdivrs 0x604618
604514:	dd 5d c0             	fstpl  -0x40(%ebp)
604517:	9b                   	fwait
604518:	8b 55 c0             	mov    -0x40(%ebp),%edx
60451b:	89 55 d8             	mov    %edx,-0x28(%ebp)
60451e:	8b 55 c4             	mov    -0x3c(%ebp),%edx
604521:	89 55 dc             	mov    %edx,-0x24(%ebp)
604524:	8b f0                	mov    %eax,%esi
604526:	4e                   	dec    %esi
604527:	85 f6                	test   %esi,%esi
604529:	0f 8c de 00 00 00    	jl     0x60460d
60452f:	46                   	inc    %esi
604530:	33 db                	xor    %ebx,%ebx
604532:	dd 45 d8             	fldl   -0x28(%ebp)
604535:	dc 4d d8             	fmull  -0x28(%ebp)
604538:	dd 5d d0             	fstpl  -0x30(%ebp)
60453b:	9b dd 45 d8          	fldl   -0x28(%ebp)
60453f:	dc 4d d0             	fmull  -0x30(%ebp)
604542:	dd 5d c8             	fstpl  -0x38(%ebp)
604545:	9b d9 05 1c 46 60 00 	flds   0x60461c
60454c:	dc 4d d8             	fmull  -0x28(%ebp)
60454f:	d8 2d 18 46 60 00    	fsubrs 0x604618
604555:	d9 05 1c 46 60 00    	flds   0x60461c
60455b:	dc 4d d0             	fmull  -0x30(%ebp)
60455e:	de c1                	faddp  %st,%st(1)
604560:	dc 65 c8             	fsubl  -0x38(%ebp)
604563:	dd 5d b8             	fstpl  -0x48(%ebp)
604566:	9b d9 05 1c 46 60 00 	flds   0x60461c
60456d:	dc 4d d8             	fmull  -0x28(%ebp)
604570:	d9 05 20 46 60 00    	flds   0x604620
604576:	dc 4d d0             	fmull  -0x30(%ebp)
604579:	de e9                	fsubrp %st,%st(1)
60457b:	d9 05 1c 46 60 00    	flds   0x60461c
604581:	dc 4d c8             	fmull  -0x38(%ebp)
604584:	de c1                	faddp  %st,%st(1)
604586:	dd 5d b0             	fstpl  -0x50(%ebp)
604589:	9b d9 05 1c 46 60 00 	flds   0x60461c
604590:	dc 4d d0             	fmull  -0x30(%ebp)
604593:	d9 05 1c 46 60 00    	flds   0x60461c
604599:	dc 4d c8             	fmull  -0x38(%ebp)
60459c:	de e9                	fsubrp %st,%st(1)
60459e:	dd 5d a8             	fstpl  -0x58(%ebp)
6045a1:	9b                   	fwait
6045a2:	8b 45 c8             	mov    -0x38(%ebp),%eax
6045a5:	89 45 a0             	mov    %eax,-0x60(%ebp)
6045a8:	8b 45 cc             	mov    -0x34(%ebp),%eax
6045ab:	89 45 a4             	mov    %eax,-0x5c(%ebp)
6045ae:	db 45 f8             	fildl  -0x8(%ebp)
6045b1:	dc 4d b8             	fmull  -0x48(%ebp)
6045b4:	db 45 f0             	fildl  -0x10(%ebp)
6045b7:	dc 4d b0             	fmull  -0x50(%ebp)
6045ba:	de c1                	faddp  %st,%st(1)
6045bc:	db 45 e8             	fildl  -0x18(%ebp)
6045bf:	dc 4d a8             	fmull  -0x58(%ebp)
6045c2:	de c1                	faddp  %st,%st(1)
6045c4:	db 45 e0             	fildl  -0x20(%ebp)
6045c7:	dc 4d a0             	fmull  -0x60(%ebp)
6045ca:	de c1                	faddp  %st,%st(1)
6045cc:	e8 ef e6 df ff       	call   0x402cc0
6045d1:	89 04 df             	mov    %eax,(%edi,%ebx,8)
6045d4:	db 45 fc             	fildl  -0x4(%ebp)
6045d7:	dc 4d b8             	fmull  -0x48(%ebp)
6045da:	db 45 f4             	fildl  -0xc(%ebp)
6045dd:	dc 4d b0             	fmull  -0x50(%ebp)
6045e0:	de c1                	faddp  %st,%st(1)
6045e2:	db 45 ec             	fildl  -0x14(%ebp)
6045e5:	dc 4d a8             	fmull  -0x58(%ebp)
6045e8:	de c1                	faddp  %st,%st(1)
6045ea:	db 45 e4             	fildl  -0x1c(%ebp)
6045ed:	dc 4d a0             	fmull  -0x60(%ebp)
6045f0:	de c1                	faddp  %st,%st(1)
6045f2:	e8 c9 e6 df ff       	call   0x402cc0
6045f7:	89 44 df 04          	mov    %eax,0x4(%edi,%ebx,8)
6045fb:	dd 45 d8             	fldl   -0x28(%ebp)
6045fe:	dc 45 c0             	faddl  -0x40(%ebp)
604601:	dd 5d d8             	fstpl  -0x28(%ebp)
604604:	9b                   	fwait
604605:	43                   	inc    %ebx
604606:	4e                   	dec    %esi
604607:	0f 85 25 ff ff ff    	jne    0x604532
60460d:	5f                   	pop    %edi
60460e:	5e                   	pop    %esi
60460f:	5b                   	pop    %ebx
604610:	8b e5                	mov    %ebp,%esp
604612:	5d                   	pop    %ebp
604613:	c2 0c 00             	ret    $0xc
604616:	00 00                	add    %al,(%eax)
604618:	00 00                	add    %al,(%eax)
60461a:	80 3f 00             	cmpb   $0x0,(%edi)
60461d:	00 40 40             	add    %al,0x40(%eax)
604620:	00 00                	add    %al,(%eax)
604622:	c0 40 84 c0          	rolb   $0xc0,-0x7c(%eax)
604626:	74 03                	je     0x60462b
604628:	8b c2                	mov    %edx,%eax
60462a:	c3                   	ret
60462b:	8b c1                	mov    %ecx,%eax
60462d:	c3                   	ret
60462e:	8b c0                	mov    %eax,%eax
604630:	53                   	push   %ebx
604631:	56                   	push   %esi
604632:	57                   	push   %edi
604633:	8b f9                	mov    %ecx,%edi
604635:	8b f2                	mov    %edx,%esi
604637:	8b d8                	mov    %eax,%ebx
604639:	33 c0                	xor    %eax,%eax
60463b:	8a 03                	mov    (%ebx),%al
60463d:	c1 e8 02             	shr    $0x2,%eax
604640:	8a 80 3c 56 6a 00    	mov    0x6a563c(%eax),%al
604646:	88 06                	mov    %al,(%esi)
604648:	8a 03                	mov    (%ebx),%al
60464a:	24 03                	and    $0x3,%al
60464c:	25 ff 00 00 00       	and    $0xff,%eax
604651:	c1 e0 04             	shl    $0x4,%eax
604654:	8a 53 01             	mov    0x1(%ebx),%dl
604657:	80 e2 f0             	and    $0xf0,%dl
60465a:	81 e2 ff 00 00 00    	and    $0xff,%edx
604660:	c1 ea 04             	shr    $0x4,%edx
604663:	0b c2                	or     %edx,%eax
604665:	8a 80 3c 56 6a 00    	mov    0x6a563c(%eax),%al
60466b:	88 46 01             	mov    %al,0x1(%esi)
60466e:	8a 43 01             	mov    0x1(%ebx),%al
604671:	24 0f                	and    $0xf,%al
604673:	25 ff 00 00 00       	and    $0xff,%eax
604678:	c1 e0 02             	shl    $0x2,%eax
60467b:	8a 53 02             	mov    0x2(%ebx),%dl
60467e:	80 e2 c0             	and    $0xc0,%dl
604681:	81 e2 ff 00 00 00    	and    $0xff,%edx
604687:	c1 ea 06             	shr    $0x6,%edx
60468a:	0b c2                	or     %edx,%eax
60468c:	8a 90 3c 56 6a 00    	mov    0x6a563c(%eax),%dl
604692:	83 ff 01             	cmp    $0x1,%edi
604695:	0f 9f c0             	setg   %al
604698:	b1 3d                	mov    $0x3d,%cl
60469a:	e8 85 ff ff ff       	call   0x604624
60469f:	88 46 02             	mov    %al,0x2(%esi)
6046a2:	8a 43 02             	mov    0x2(%ebx),%al
6046a5:	24 3f                	and    $0x3f,%al
6046a7:	25 ff 00 00 00       	and    $0xff,%eax
6046ac:	8a 90 3c 56 6a 00    	mov    0x6a563c(%eax),%dl
6046b2:	83 ff 02             	cmp    $0x2,%edi
6046b5:	0f 9f c0             	setg   %al
6046b8:	b1 3d                	mov    $0x3d,%cl
6046ba:	e8 65 ff ff ff       	call   0x604624
6046bf:	88 46 03             	mov    %al,0x3(%esi)
6046c2:	5f                   	pop    %edi
6046c3:	5e                   	pop    %esi
6046c4:	5b                   	pop    %ebx
6046c5:	c3                   	ret
6046c6:	8b c0                	mov    %eax,%eax
6046c8:	53                   	push   %ebx
6046c9:	56                   	push   %esi
6046ca:	57                   	push   %edi
6046cb:	55                   	push   %ebp
6046cc:	83 c4 e8             	add    $0xffffffe8,%esp
6046cf:	89 4c 24 04          	mov    %ecx,0x4(%esp)
6046d3:	89 14 24             	mov    %edx,(%esp)
6046d6:	8b f0                	mov    %eax,%esi
6046d8:	33 c0                	xor    %eax,%eax
6046da:	89 44 24 14          	mov    %eax,0x14(%esp)
6046de:	e9 e3 00 00 00       	jmp    0x6047c6
6046e3:	33 c0                	xor    %eax,%eax
6046e5:	89 44 24 10          	mov    %eax,0x10(%esp)
6046e9:	bf 03 00 00 00       	mov    $0x3,%edi
6046ee:	8d 5c 24 08          	lea    0x8(%esp),%ebx