520458:	75 12                	jne    0x52046c
52045a:	33 db                	xor    %ebx,%ebx
52045c:	33 d2                	xor    %edx,%edx
52045e:	8b 86 50 05 00 00    	mov    0x550(%esi),%eax
520464:	8b 08                	mov    (%eax),%ecx
520466:	ff 91 cc 00 00 00    	call   *0xcc(%ecx)
52046c:	83 ff 10             	cmp    $0x10,%edi
52046f:	75 0a                	jne    0x52047b
520471:	83 fd 01             	cmp    $0x1,%ebp
520474:	75 05                	jne    0x52047b
520476:	c6 44 24 04 01       	movb   $0x1,0x4(%esp)
52047b:	3a 9e 0c 06 00 00    	cmp    0x60c(%esi),%bl
520481:	75 1c                	jne    0x52049f
520483:	8a 44 24 04          	mov    0x4(%esp),%al
520487:	3a 86 14 06 00 00    	cmp    0x614(%esi),%al
52048d:	75 10                	jne    0x52049f
52048f:	3b be 34 06 00 00    	cmp    0x634(%esi),%edi
520495:	75 08                	jne    0x52049f
520497:	3b ae 38 06 00 00    	cmp    0x638(%esi),%ebp
52049d:	74 43                	je     0x5204e2
52049f:	88 9e 0c 06 00 00    	mov    %bl,0x60c(%esi)
5204a5:	8a 44 24 04          	mov    0x4(%esp),%al
5204a9:	88 86 14 06 00 00    	mov    %al,0x614(%esi)
5204af:	89 ae 38 06 00 00    	mov    %ebp,0x638(%esi)
5204b5:	89 be 34 06 00 00    	mov    %edi,0x634(%esi)
5204bb:	8b 86 78 05 00 00    	mov    0x578(%esi),%eax
5204c1:	8b 10                	mov    (%eax),%edx
5204c3:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
5204c9:	84 c0                	test   %al,%al
5204cb:	74 15                	je     0x5204e2
5204cd:	8b c6                	mov    %esi,%eax
5204cf:	e8 e4 c1 ff ff       	call   0x51c6b8
5204d4:	8b 86 b8 05 00 00    	mov    0x5b8(%esi),%eax
5204da:	8b 10                	mov    (%eax),%edx
5204dc:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
5204e2:	b2 01                	mov    $0x1,%dl
5204e4:	8b 86 ec 04 00 00    	mov    0x4ec(%esi),%eax
5204ea:	8b 08                	mov    (%eax),%ecx
5204ec:	ff 51 64             	call   *0x64(%ecx)
5204ef:	b2 01                	mov    $0x1,%dl
5204f1:	8b 86 3c 03 00 00    	mov    0x33c(%esi),%eax
5204f7:	8b 08                	mov    (%eax),%ecx
5204f9:	ff 51 64             	call   *0x64(%ecx)
5204fc:	59                   	pop    %ecx
5204fd:	5a                   	pop    %edx
5204fe:	5d                   	pop    %ebp
5204ff:	5f                   	pop    %edi
520500:	5e                   	pop    %esi
520501:	5b                   	pop    %ebx
520502:	c3                   	ret
520503:	90                   	nop
520504:	53                   	push   %ebx
520505:	8b d8                	mov    %eax,%ebx
520507:	80 bb d8 05 00 00 00 	cmpb   $0x0,0x5d8(%ebx)
52050e:	74 5e                	je     0x52056e
520510:	8b 83 74 05 00 00    	mov    0x574(%ebx),%eax
520516:	8b 10                	mov    (%eax),%edx
520518:	ff 92 c8 00 00 00    	call   *0xc8(%edx)
52051e:	40                   	inc    %eax
52051f:	3b 83 5c 06 00 00    	cmp    0x65c(%ebx),%eax
520525:	74 2d                	je     0x520554
520527:	89 83 5c 06 00 00    	mov    %eax,0x65c(%ebx)
52052d:	8b 83 78 05 00 00    	mov    0x578(%ebx),%eax
520533:	8b 10                	mov    (%eax),%edx
520535:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
52053b:	84 c0                	test   %al,%al
52053d:	74 15                	je     0x520554
52053f:	8b c3                	mov    %ebx,%eax
520541:	e8 72 c1 ff ff       	call   0x51c6b8
520546:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
52054c:	8b 10                	mov    (%eax),%edx
52054e:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
520554:	b2 01                	mov    $0x1,%dl
520556:	8b 83 ec 04 00 00    	mov    0x4ec(%ebx),%eax
52055c:	8b 08                	mov    (%eax),%ecx
52055e:	ff 51 64             	call   *0x64(%ecx)
520561:	b2 01                	mov    $0x1,%dl
520563:	8b 83 3c 03 00 00    	mov    0x33c(%ebx),%eax
520569:	8b 08                	mov    (%eax),%ecx
52056b:	ff 51 64             	call   *0x64(%ecx)
52056e:	5b                   	pop    %ebx
52056f:	c3                   	ret
520570:	53                   	push   %ebx
520571:	56                   	push   %esi
520572:	51                   	push   %ecx
520573:	8b f1                	mov    %ecx,%esi
520575:	8b d8                	mov    %eax,%ebx
520577:	89 34 24             	mov    %esi,(%esp)
52057a:	db 04 24             	fildl  (%esp)
52057d:	db 83 a8 06 00 00    	fildl  0x6a8(%ebx)
520583:	de f9                	fdivrp %st,%st(1)
520585:	e8 42 27 ee ff       	call   0x402ccc
52058a:	8b d0                	mov    %eax,%edx
52058c:	03 93 a4 06 00 00    	add    0x6a4(%ebx),%edx
520592:	8b 83 58 04 00 00    	mov    0x458(%ebx),%eax
520598:	e8 9f 5b f8 ff       	call   0x4a613c
52059d:	5a                   	pop    %edx
52059e:	5e                   	pop    %esi
52059f:	5b                   	pop    %ebx
5205a0:	c3                   	ret
5205a1:	8d 40 00             	lea    0x0(%eax),%eax
5205a4:	55                   	push   %ebp
5205a5:	8b ec                	mov    %esp,%ebp
5205a7:	6a 00                	push   $0x0
5205a9:	6a 00                	push   $0x0
5205ab:	6a 00                	push   $0x0
5205ad:	53                   	push   %ebx
5205ae:	56                   	push   %esi
5205af:	57                   	push   %edi
5205b0:	8b d8                	mov    %eax,%ebx
5205b2:	33 c0                	xor    %eax,%eax
5205b4:	55                   	push   %ebp
5205b5:	68 67 06 52 00       	push   $0x520667
5205ba:	64 ff 30             	push   %fs:(%eax)
5205bd:	64 89 20             	mov    %esp,%fs:(%eax)
5205c0:	33 c0                	xor    %eax,%eax
5205c2:	55                   	push   %ebp
5205c3:	68 3a 06 52 00       	push   $0x52063a
5205c8:	64 ff 30             	push   %fs:(%eax)
5205cb:	64 89 20             	mov    %esp,%fs:(%eax)
5205ce:	8b 83 f8 02 00 00    	mov    0x2f8(%ebx),%eax
5205d4:	e8 ff 04 f8 ff       	call   0x4a0ad8
5205d9:	85 c0                	test   %eax,%eax
5205db:	7d 0a                	jge    0x5205e7
5205dd:	33 c0                	xor    %eax,%eax
5205df:	5a                   	pop    %edx
5205e0:	59                   	pop    %ecx
5205e1:	59                   	pop    %ecx
5205e2:	64 89 10             	mov    %edx,%fs:(%eax)
5205e5:	eb 5d                	jmp    0x520644
5205e7:	8b b3 f8 02 00 00    	mov    0x2f8(%ebx),%esi
5205ed:	8b c6                	mov    %esi,%eax
5205ef:	e8 e4 04 f8 ff       	call   0x4a0ad8
5205f4:	8b d0                	mov    %eax,%edx
5205f6:	8b c6                	mov    %esi,%eax
5205f8:	e8 df fd f7 ff       	call   0x4a03dc
5205fd:	8d 55 f4             	lea    -0xc(%ebp),%edx
520600:	e8 c7 81 f2 ff       	call   0x4487cc
520605:	8b 45 f4             	mov    -0xc(%ebp),%eax
520608:	8d 55 f8             	lea    -0x8(%ebp),%edx
52060b:	e8 98 8d ee ff       	call   0x4093a8
520610:	8b 45 f8             	mov    -0x8(%ebp),%eax
520613:	8d 55 fc             	lea    -0x4(%ebp),%edx
520616:	e8 1d 8b ee ff       	call   0x409138
52061b:	8b c3                	mov    %ebx,%eax
52061d:	e8 6e a2 ff ff       	call   0x51a890
520622:	8b c3                	mov    %ebx,%eax
520624:	e8 7b a7 ff ff       	call   0x51ada4
520629:	8b c3                	mov    %ebx,%eax
52062b:	e8 88 c0 ff ff       	call   0x51c6b8
520630:	33 c0                	xor    %eax,%eax
520632:	5a                   	pop    %edx
520633:	59                   	pop    %ecx
520634:	59                   	pop    %ecx
520635:	64 89 10             	mov    %edx,%fs:(%eax)
520638:	eb 0a                	jmp    0x520644
52063a:	e9 19 39 ee ff       	jmp    0x403f58
52063f:	e8 7c 3c ee ff       	call   0x4042c0
520644:	33 c0                	xor    %eax,%eax
520646:	5a                   	pop    %edx
520647:	59                   	pop    %ecx
520648:	59                   	pop    %ecx
520649:	64 89 10             	mov    %edx,%fs:(%eax)
52064c:	68 6e 06 52 00       	push   $0x52066e
520651:	8d 45 f4             	lea    -0xc(%ebp),%eax
520654:	e8 0f 42 ee ff       	call   0x404868
520659:	8d 45 f8             	lea    -0x8(%ebp),%eax
52065c:	ba 02 00 00 00       	mov    $0x2,%edx
520661:	e8 26 42 ee ff       	call   0x40488c
520666:	c3                   	ret
520667:	e9 a0 3b ee ff       	jmp    0x40420c
52066c:	eb e3                	jmp    0x520651
52066e:	5f                   	pop    %edi
52066f:	5e                   	pop    %esi
520670:	5b                   	pop    %ebx
520671:	8b e5                	mov    %ebp,%esp
520673:	5d                   	pop    %ebp
520674:	c3                   	ret
520675:	8d 40 00             	lea    0x0(%eax),%eax
520678:	55                   	push   %ebp
520679:	8b ec                	mov    %esp,%ebp
52067b:	83 c4 f8             	add    $0xfffffff8,%esp
52067e:	53                   	push   %ebx
52067f:	56                   	push   %esi
520680:	57                   	push   %edi
520681:	8b d8                	mov    %eax,%ebx
520683:	33 c0                	xor    %eax,%eax
520685:	55                   	push   %ebp
520686:	68 7d 07 52 00       	push   $0x52077d
52068b:	64 ff 30             	push   %fs:(%eax)
52068e:	64 89 20             	mov    %esp,%fs:(%eax)
520691:	8b 83 b0 05 00 00    	mov    0x5b0(%ebx),%eax
520697:	8b 10                	mov    (%eax),%edx
520699:	ff 92 e0 00 00 00    	call   *0xe0(%edx)
52069f:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
5206a5:	8b 10                	mov    (%eax),%edx
5206a7:	ff 92 e0 00 00 00    	call   *0xe0(%edx)
5206ad:	8b b3 b0 05 00 00    	mov    0x5b0(%ebx),%esi
5206b3:	dd 86 a0 03 00 00    	fldl   0x3a0(%esi)
5206b9:	d8 1d 90 07 52 00    	fcomps 0x520790
5206bf:	df e0                	fnstsw %ax
5206c1:	9e                   	sahf
5206c2:	74 3e                	je     0x520702
5206c4:	68 00 00 59 40       	push   $0x40590000
5206c9:	6a 00                	push   $0x0
5206cb:	6a 01                	push   $0x1
5206cd:	8b 46 4c             	mov    0x4c(%esi),%eax
5206d0:	d1 f8                	sar    $1,%eax
5206d2:	79 03                	jns    0x5206d7
5206d4:	83 d0 00             	adc    $0x0,%eax
5206d7:	89 45 fc             	mov    %eax,-0x4(%ebp)
5206da:	db 45 fc             	fildl  -0x4(%ebp)
5206dd:	e8 de 25 ee ff       	call   0x402cc0
5206e2:	50                   	push   %eax
5206e3:	8b 46 48             	mov    0x48(%esi),%eax
5206e6:	d1 f8                	sar    $1,%eax
5206e8:	79 03                	jns    0x5206ed
5206ea:	83 d0 00             	adc    $0x0,%eax
5206ed:	89 45 f8             	mov    %eax,-0x8(%ebp)
5206f0:	db 45 f8             	fildl  -0x8(%ebp)
5206f3:	e8 c8 25 ee ff       	call   0x402cc0
5206f8:	8b d0                	mov    %eax,%edx
5206fa:	8b c6                	mov    %esi,%eax
5206fc:	59                   	pop    %ecx
5206fd:	e8 62 90 0b 00       	call   0x5d9764
520702:	8b b3 b8 05 00 00    	mov    0x5b8(%ebx),%esi
520708:	dd 86 a0 03 00 00    	fldl   0x3a0(%esi)
52070e:	d8 1d 90 07 52 00    	fcomps 0x520790
520714:	df e0                	fnstsw %ax
520716:	9e                   	sahf
520717:	74 3e                	je     0x520757
520719:	68 00 00 59 40       	push   $0x40590000
52071e:	6a 00                	push   $0x0
520720:	6a 01                	push   $0x1
520722:	8b 46 4c             	mov    0x4c(%esi),%eax
520725:	d1 f8                	sar    $1,%eax
520727:	79 03                	jns    0x52072c
520729:	83 d0 00             	adc    $0x0,%eax
52072c:	89 45 fc             	mov    %eax,-0x4(%ebp)
52072f:	db 45 fc             	fildl  -0x4(%ebp)
520732:	e8 89 25 ee ff       	call   0x402cc0
520737:	50                   	push   %eax
520738:	8b 46 48             	mov    0x48(%esi),%eax
52073b:	d1 f8                	sar    $1,%eax
52073d:	79 03                	jns    0x520742
52073f:	83 d0 00             	adc    $0x0,%eax
520742:	89 45 f8             	mov    %eax,-0x8(%ebp)
520745:	db 45 f8             	fildl  -0x8(%ebp)
520748:	e8 73 25 ee ff       	call   0x402cc0
52074d:	8b d0                	mov    %eax,%edx
52074f:	8b c6                	mov    %esi,%eax
520751:	59                   	pop    %ecx
520752:	e8 0d 90 0b 00       	call   0x5d9764
520757:	8b 83 b0 05 00 00    	mov    0x5b0(%ebx),%eax
52075d:	8b 10                	mov    (%eax),%edx
52075f:	ff 92 e4 00 00 00    	call   *0xe4(%edx)
520765:	8b 83 b8 05 00 00    	mov    0x5b8(%ebx),%eax
52076b:	8b 10                	mov    (%eax),%edx
52076d:	ff 92 e4 00 00 00    	call   *0xe4(%edx)
520773:	33 c0                	xor    %eax,%eax
520775:	5a                   	pop    %edx
520776:	59                   	pop    %ecx
520777:	59                   	pop    %ecx
520778:	64 89 10             	mov    %edx,%fs:(%eax)
52077b:	eb 0a                	jmp    0x520787
52077d:	e9 d6 37 ee ff       	jmp    0x403f58
520782:	e8 39 3b ee ff       	call   0x4042c0
520787:	5f                   	pop    %edi
520788:	5e                   	pop    %esi
520789:	5b                   	pop    %ebx
52078a:	59                   	pop    %ecx
52078b:	59                   	pop    %ecx
52078c:	5d                   	pop    %ebp
52078d:	c3                   	ret
52078e:	00 00                	add    %al,(%eax)
520790:	00 00                	add    %al,(%eax)
520792:	c8 42 55 8b          	enter  $0x5542,$0x8b
520796:	ec                   	in     (%dx),%al
520797:	53                   	push   %ebx
520798:	56                   	push   %esi
520799:	57                   	push   %edi
52079a:	8b d8                	mov    %eax,%ebx
52079c:	33 c0                	xor    %eax,%eax
52079e:	55                   	push   %ebp
52079f:	68 e4 07 52 00       	push   $0x5207e4
5207a4:	64 ff 30             	push   %fs:(%eax)
5207a7:	64 89 20             	mov    %esp,%fs:(%eax)
5207aa:	68 00 00 59 40       	push   $0x40590000
5207af:	6a 00                	push   $0x0
5207b1:	8b b3 b0 05 00 00    	mov    0x5b0(%ebx),%esi
5207b7:	8b d6                	mov    %esi,%edx
5207b9:	8b c3                	mov    %ebx,%eax
5207bb:	e8 34 0f 00 00       	call   0x5216f4
5207c0:	83 c4 f8             	add    $0xfffffff8,%esp
5207c3:	dd 1c 24             	fstpl  (%esp)
5207c6:	9b                   	fwait
5207c7:	e8 c8 f1 f0 ff       	call   0x42f994
5207cc:	83 c4 f8             	add    $0xfffffff8,%esp
5207cf:	dd 1c 24             	fstpl  (%esp)
5207d2:	9b                   	fwait
5207d3:	8b c6                	mov    %esi,%eax
5207d5:	e8 42 78 0b 00       	call   0x5d801c
5207da:	33 c0                	xor    %eax,%eax
5207dc:	5a                   	pop    %edx
5207dd:	59                   	pop    %ecx
5207de:	59                   	pop    %ecx
5207df:	64 89 10             	mov    %edx,%fs:(%eax)
5207e2:	eb 0a                	jmp    0x5207ee
5207e4:	e9 6f 37 ee ff       	jmp    0x403f58
5207e9:	e8 d2 3a ee ff       	call   0x4042c0
5207ee:	5f                   	pop    %edi
5207ef:	5e                   	pop    %esi
5207f0:	5b                   	pop    %ebx
5207f1:	5d                   	pop    %ebp
5207f2:	c3                   	ret
5207f3:	90                   	nop
5207f4:	55                   	push   %ebp
5207f5:	8b ec                	mov    %esp,%ebp
5207f7:	84 c9                	test   %cl,%cl
5207f9:	75 0b                	jne    0x520806
5207fb:	8b 90 b0 05 00 00    	mov    0x5b0(%eax),%edx
520801:	e8 ce 00 00 00       	call   0x5208d4
520806:	5d                   	pop    %ebp
520807:	c2 0c 00             	ret    $0xc
52080a:	8b c0                	mov    %eax,%eax
52080c:	55                   	push   %ebp
52080d:	8b ec                	mov    %esp,%ebp
52080f:	84 c9                	test   %cl,%cl
520811:	75 0b                	jne    0x52081e
520813:	8b 90 b0 05 00 00    	mov    0x5b0(%eax),%edx
520819:	e8 5e 01 00 00       	call   0x52097c
52081e:	5d                   	pop    %ebp
52081f:	c2 0c 00             	ret    $0xc
520822:	8b c0                	mov    %eax,%eax
520824:	55                   	push   %ebp
520825:	8b ec                	mov    %esp,%ebp
520827:	53                   	push   %ebx
520828:	56                   	push   %esi
520829:	57                   	push   %edi
52082a:	8b d8                	mov    %eax,%ebx
52082c:	33 d2                	xor    %edx,%edx
52082e:	55                   	push   %ebp
52082f:	68 68 08 52 00       	push   $0x520868
520834:	64 ff 32             	push   %fs:(%edx)
520837:	64 89 22             	mov    %esp,%fs:(%edx)
52083a:	8b 83 a0 05 00 00    	mov    0x5a0(%ebx),%eax
520840:	80 b8 99 00 00 00 00 	cmpb   $0x0,0x99(%eax)
520847:	75 07                	jne    0x520850
520849:	b2 01                	mov    $0x1,%dl
52084b:	e8 cc 80 f2 ff       	call   0x44891c