4874f6:	56                   	push   %esi
4874f7:	e8 35 b9 00 00       	call   0x492e31
4874fc:	59                   	pop    %ecx
4874fd:	85 c0                	test   %eax,%eax
4874ff:	74 5f                	je     0x487560
487501:	8b fe                	mov    %esi,%edi
487503:	83 e6 3f             	and    $0x3f,%esi
487506:	c1 ff 06             	sar    $0x6,%edi
487509:	6b de 38             	imul   $0x38,%esi,%ebx
48750c:	8b 04 bd 00 88 4c 00 	mov    0x4c8800(,%edi,4),%eax
487513:	80 7c 18 28 00       	cmpb   $0x0,0x28(%eax,%ebx,1)
487518:	7d 46                	jge    0x487560
48751a:	8b 75 0c             	mov    0xc(%ebp),%esi
48751d:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
487521:	75 07                	jne    0x48752a
487523:	8b ce                	mov    %esi,%ecx
487525:	e8 e6 1b ff ff       	call   0x479110
48752a:	8b 46 0c             	mov    0xc(%esi),%eax
48752d:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
487534:	75 0e                	jne    0x487544
487536:	8b 04 bd 00 88 4c 00 	mov    0x4c8800(,%edi,4),%eax
48753d:	80 7c 18 29 00       	cmpb   $0x0,0x29(%eax,%ebx,1)
487542:	74 1c                	je     0x487560
487544:	8d 45 fc             	lea    -0x4(%ebp),%eax
487547:	50                   	push   %eax
487548:	8b 04 bd 00 88 4c 00 	mov    0x4c8800(,%edi,4),%eax
48754f:	ff 74 18 18          	push   0x18(%eax,%ebx,1)
487553:	ff 15 00 e1 49 00    	call   *0x49e100
487559:	85 c0                	test   %eax,%eax
48755b:	0f 95 c0             	setne  %al
48755e:	eb 02                	jmp    0x487562
487560:	32 c0                	xor    %al,%al
487562:	5f                   	pop    %edi
487563:	5e                   	pop    %esi
487564:	5b                   	pop    %ebx
487565:	c9                   	leave
487566:	c3                   	ret
487567:	8b ff                	mov    %edi,%edi
487569:	55                   	push   %ebp
48756a:	8b ec                	mov    %esp,%ebp
48756c:	b8 0c 14 00 00       	mov    $0x140c,%eax
487571:	e8 2a 32 fe ff       	call   0x46a7a0
487576:	a1 14 40 4c 00       	mov    0x4c4014,%eax
48757b:	33 c5                	xor    %ebp,%eax
48757d:	89 45 fc             	mov    %eax,-0x4(%ebp)
487580:	8b 4d 0c             	mov    0xc(%ebp),%ecx
487583:	8b c1                	mov    %ecx,%eax
487585:	8b 55 14             	mov    0x14(%ebp),%edx
487588:	83 e1 3f             	and    $0x3f,%ecx
48758b:	c1 f8 06             	sar    $0x6,%eax
48758e:	6b c9 38             	imul   $0x38,%ecx,%ecx
487591:	53                   	push   %ebx
487592:	8b 5d 08             	mov    0x8(%ebp),%ebx
487595:	8b 04 85 00 88 4c 00 	mov    0x4c8800(,%eax,4),%eax
48759c:	56                   	push   %esi
48759d:	57                   	push   %edi
48759e:	8b fb                	mov    %ebx,%edi
4875a0:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
4875a4:	8b 4d 10             	mov    0x10(%ebp),%ecx
4875a7:	03 d1                	add    %ecx,%edx
4875a9:	89 85 f8 eb ff ff    	mov    %eax,-0x1408(%ebp)
4875af:	33 c0                	xor    %eax,%eax
4875b1:	ab                   	stos   %eax,%es:(%edi)
4875b2:	89 95 f4 eb ff ff    	mov    %edx,-0x140c(%ebp)
4875b8:	ab                   	stos   %eax,%es:(%edi)
4875b9:	ab                   	stos   %eax,%es:(%edi)
4875ba:	3b ca                	cmp    %edx,%ecx
4875bc:	73 73                	jae    0x487631
4875be:	8b bd f8 eb ff ff    	mov    -0x1408(%ebp),%edi
4875c4:	8d b5 fc eb ff ff    	lea    -0x1404(%ebp),%esi
4875ca:	3b ca                	cmp    %edx,%ecx
4875cc:	73 18                	jae    0x4875e6
4875ce:	8a 01                	mov    (%ecx),%al
4875d0:	41                   	inc    %ecx
4875d1:	3c 0a                	cmp    $0xa,%al
4875d3:	75 07                	jne    0x4875dc
4875d5:	ff 43 08             	incl   0x8(%ebx)
4875d8:	c6 06 0d             	movb   $0xd,(%esi)
4875db:	46                   	inc    %esi
4875dc:	88 06                	mov    %al,(%esi)
4875de:	46                   	inc    %esi
4875df:	8d 45 fb             	lea    -0x5(%ebp),%eax
4875e2:	3b f0                	cmp    %eax,%esi
4875e4:	72 e4                	jb     0x4875ca
4875e6:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
4875ec:	89 4d 10             	mov    %ecx,0x10(%ebp)
4875ef:	2b f0                	sub    %eax,%esi
4875f1:	8d 85 f8 eb ff ff    	lea    -0x1408(%ebp),%eax
4875f7:	6a 00                	push   $0x0
4875f9:	50                   	push   %eax
4875fa:	56                   	push   %esi
4875fb:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
487601:	50                   	push   %eax
487602:	57                   	push   %edi
487603:	ff 15 9c e1 49 00    	call   *0x49e19c
487609:	85 c0                	test   %eax,%eax
48760b:	74 1c                	je     0x487629
48760d:	8b 85 f8 eb ff ff    	mov    -0x1408(%ebp),%eax
487613:	01 43 04             	add    %eax,0x4(%ebx)
487616:	3b c6                	cmp    %esi,%eax
487618:	72 17                	jb     0x487631
48761a:	8b 4d 10             	mov    0x10(%ebp),%ecx
48761d:	8b 95 f4 eb ff ff    	mov    -0x140c(%ebp),%edx
487623:	3b ca                	cmp    %edx,%ecx
487625:	72 9d                	jb     0x4875c4
487627:	eb 08                	jmp    0x487631
487629:	ff 15 30 e1 49 00    	call   *0x49e130
48762f:	89 03                	mov    %eax,(%ebx)
487631:	8b 4d fc             	mov    -0x4(%ebp),%ecx
487634:	8b c3                	mov    %ebx,%eax
487636:	5f                   	pop    %edi
487637:	5e                   	pop    %esi
487638:	33 cd                	xor    %ebp,%ecx
48763a:	5b                   	pop    %ebx
48763b:	e8 8a 23 fe ff       	call   0x4699ca
487640:	c9                   	leave
487641:	c3                   	ret
487642:	8b ff                	mov    %edi,%edi
487644:	55                   	push   %ebp
487645:	8b ec                	mov    %esp,%ebp
487647:	b8 10 14 00 00       	mov    $0x1410,%eax
48764c:	e8 4f 31 fe ff       	call   0x46a7a0
487651:	a1 14 40 4c 00       	mov    0x4c4014,%eax
487656:	33 c5                	xor    %ebp,%eax
487658:	89 45 fc             	mov    %eax,-0x4(%ebp)
48765b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48765e:	8b c1                	mov    %ecx,%eax
487660:	8b 55 14             	mov    0x14(%ebp),%edx
487663:	83 e1 3f             	and    $0x3f,%ecx
487666:	c1 f8 06             	sar    $0x6,%eax
487669:	6b c9 38             	imul   $0x38,%ecx,%ecx
48766c:	53                   	push   %ebx
48766d:	8b 5d 08             	mov    0x8(%ebp),%ebx
487670:	8b 04 85 00 88 4c 00 	mov    0x4c8800(,%eax,4),%eax
487677:	56                   	push   %esi
487678:	57                   	push   %edi
487679:	8b fb                	mov    %ebx,%edi
48767b:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
48767f:	8b 4d 10             	mov    0x10(%ebp),%ecx
487682:	03 d1                	add    %ecx,%edx
487684:	89 85 f8 eb ff ff    	mov    %eax,-0x1408(%ebp)
48768a:	33 c0                	xor    %eax,%eax
48768c:	ab                   	stos   %eax,%es:(%edi)
48768d:	89 95 f0 eb ff ff    	mov    %edx,-0x1410(%ebp)
487693:	ab                   	stos   %eax,%es:(%edi)
487694:	ab                   	stos   %eax,%es:(%edi)
487695:	eb 75                	jmp    0x48770c
487697:	8d b5 fc eb ff ff    	lea    -0x1404(%ebp),%esi
48769d:	3b ca                	cmp    %edx,%ecx
48769f:	73 25                	jae    0x4876c6
4876a1:	0f b7 01             	movzwl (%ecx),%eax
4876a4:	83 c1 02             	add    $0x2,%ecx
4876a7:	83 f8 0a             	cmp    $0xa,%eax
4876aa:	75 0d                	jne    0x4876b9
4876ac:	83 43 08 02          	addl   $0x2,0x8(%ebx)
4876b0:	6a 0d                	push   $0xd
4876b2:	5f                   	pop    %edi
4876b3:	66 89 3e             	mov    %di,(%esi)
4876b6:	83 c6 02             	add    $0x2,%esi
4876b9:	66 89 06             	mov    %ax,(%esi)
4876bc:	83 c6 02             	add    $0x2,%esi
4876bf:	8d 45 fa             	lea    -0x6(%ebp),%eax
4876c2:	3b f0                	cmp    %eax,%esi
4876c4:	72 d7                	jb     0x48769d
4876c6:	8b bd f8 eb ff ff    	mov    -0x1408(%ebp),%edi
4876cc:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
4876d2:	2b f0                	sub    %eax,%esi
4876d4:	89 4d 10             	mov    %ecx,0x10(%ebp)
4876d7:	6a 00                	push   $0x0
4876d9:	8d 85 f4 eb ff ff    	lea    -0x140c(%ebp),%eax
4876df:	83 e6 fe             	and    $0xfffffffe,%esi
4876e2:	50                   	push   %eax
4876e3:	56                   	push   %esi
4876e4:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
4876ea:	50                   	push   %eax
4876eb:	57                   	push   %edi
4876ec:	ff 15 9c e1 49 00    	call   *0x49e19c
4876f2:	85 c0                	test   %eax,%eax
4876f4:	74 1c                	je     0x487712
4876f6:	8b 85 f4 eb ff ff    	mov    -0x140c(%ebp),%eax
4876fc:	01 43 04             	add    %eax,0x4(%ebx)
4876ff:	3b c6                	cmp    %esi,%eax
487701:	72 17                	jb     0x48771a
487703:	8b 4d 10             	mov    0x10(%ebp),%ecx
487706:	8b 95 f0 eb ff ff    	mov    -0x1410(%ebp),%edx
48770c:	3b ca                	cmp    %edx,%ecx
48770e:	72 87                	jb     0x487697
487710:	eb 08                	jmp    0x48771a
487712:	ff 15 30 e1 49 00    	call   *0x49e130
487718:	89 03                	mov    %eax,(%ebx)
48771a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48771d:	8b c3                	mov    %ebx,%eax
48771f:	5f                   	pop    %edi
487720:	5e                   	pop    %esi
487721:	33 cd                	xor    %ebp,%ecx
487723:	5b                   	pop    %ebx
487724:	e8 a1 22 fe ff       	call   0x4699ca
487729:	c9                   	leave
48772a:	c3                   	ret
48772b:	8b ff                	mov    %edi,%edi
48772d:	55                   	push   %ebp
48772e:	8b ec                	mov    %esp,%ebp
487730:	b8 18 14 00 00       	mov    $0x1418,%eax
487735:	e8 66 30 fe ff       	call   0x46a7a0
48773a:	a1 14 40 4c 00       	mov    0x4c4014,%eax
48773f:	33 c5                	xor    %ebp,%eax
487741:	89 45 fc             	mov    %eax,-0x4(%ebp)
487744:	8b 4d 0c             	mov    0xc(%ebp),%ecx
487747:	8b c1                	mov    %ecx,%eax
487749:	8b 55 10             	mov    0x10(%ebp),%edx
48774c:	83 e1 3f             	and    $0x3f,%ecx
48774f:	c1 f8 06             	sar    $0x6,%eax
487752:	6b c9 38             	imul   $0x38,%ecx,%ecx
487755:	53                   	push   %ebx
487756:	56                   	push   %esi
487757:	8b 04 85 00 88 4c 00 	mov    0x4c8800(,%eax,4),%eax
48775e:	8b 75 08             	mov    0x8(%ebp),%esi
487761:	57                   	push   %edi
487762:	8b fe                	mov    %esi,%edi
487764:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
487768:	8b 4d 14             	mov    0x14(%ebp),%ecx
48776b:	89 85 f0 eb ff ff    	mov    %eax,-0x1410(%ebp)
487771:	03 ca                	add    %edx,%ecx
487773:	33 c0                	xor    %eax,%eax
487775:	89 8d f4 eb ff ff    	mov    %ecx,-0x140c(%ebp)
48777b:	ab                   	stos   %eax,%es:(%edi)
48777c:	ab                   	stos   %eax,%es:(%edi)
48777d:	ab                   	stos   %eax,%es:(%edi)
48777e:	8b fa                	mov    %edx,%edi
487780:	3b d1                	cmp    %ecx,%edx
487782:	0f 83 c4 00 00 00    	jae    0x48784c
487788:	8b b5 f4 eb ff ff    	mov    -0x140c(%ebp),%esi
48778e:	8d 85 50 f9 ff ff    	lea    -0x6b0(%ebp),%eax
487794:	3b fe                	cmp    %esi,%edi
487796:	73 21                	jae    0x4877b9
487798:	0f b7 0f             	movzwl (%edi),%ecx
48779b:	83 c7 02             	add    $0x2,%edi
48779e:	83 f9 0a             	cmp    $0xa,%ecx
4877a1:	75 09                	jne    0x4877ac
4877a3:	6a 0d                	push   $0xd
4877a5:	5a                   	pop    %edx
4877a6:	66 89 10             	mov    %dx,(%eax)
4877a9:	83 c0 02             	add    $0x2,%eax
4877ac:	66 89 08             	mov    %cx,(%eax)
4877af:	83 c0 02             	add    $0x2,%eax
4877b2:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4877b5:	3b c1                	cmp    %ecx,%eax
4877b7:	72 db                	jb     0x487794
4877b9:	6a 00                	push   $0x0
4877bb:	6a 00                	push   $0x0
4877bd:	68 55 0d 00 00       	push   $0xd55
4877c2:	8d 8d f8 eb ff ff    	lea    -0x1408(%ebp),%ecx
4877c8:	51                   	push   %ecx
4877c9:	8d 8d 50 f9 ff ff    	lea    -0x6b0(%ebp),%ecx
4877cf:	2b c1                	sub    %ecx,%eax
4877d1:	d1 f8                	sar    $1,%eax
4877d3:	50                   	push   %eax
4877d4:	8b c1                	mov    %ecx,%eax
4877d6:	50                   	push   %eax
4877d7:	6a 00                	push   $0x0
4877d9:	68 e9 fd 00 00       	push   $0xfde9
4877de:	e8 27 75 00 00       	call   0x48ed0a
4877e3:	8b 75 08             	mov    0x8(%ebp),%esi
4877e6:	83 c4 20             	add    $0x20,%esp
4877e9:	89 85 e8 eb ff ff    	mov    %eax,-0x1418(%ebp)
4877ef:	85 c0                	test   %eax,%eax
4877f1:	74 51                	je     0x487844
4877f3:	33 db                	xor    %ebx,%ebx
4877f5:	85 c0                	test   %eax,%eax
4877f7:	74 35                	je     0x48782e
4877f9:	6a 00                	push   $0x0
4877fb:	8d 8d ec eb ff ff    	lea    -0x1414(%ebp),%ecx
487801:	2b c3                	sub    %ebx,%eax
487803:	51                   	push   %ecx
487804:	50                   	push   %eax
487805:	8d 85 f8 eb ff ff    	lea    -0x1408(%ebp),%eax
48780b:	03 c3                	add    %ebx,%eax
48780d:	50                   	push   %eax
48780e:	ff b5 f0 eb ff ff    	push   -0x1410(%ebp)
487814:	ff 15 9c e1 49 00    	call   *0x49e19c
48781a:	85 c0                	test   %eax,%eax
48781c:	74 26                	je     0x487844
48781e:	03 9d ec eb ff ff    	add    -0x1414(%ebp),%ebx
487824:	8b 85 e8 eb ff ff    	mov    -0x1418(%ebp),%eax
48782a:	3b d8                	cmp    %eax,%ebx
48782c:	72 cb                	jb     0x4877f9
48782e:	8b c7                	mov    %edi,%eax
487830:	2b 45 10             	sub    0x10(%ebp),%eax
487833:	89 46 04             	mov    %eax,0x4(%esi)
487836:	3b bd f4 eb ff ff    	cmp    -0x140c(%ebp),%edi
48783c:	0f 82 46 ff ff ff    	jb     0x487788
487842:	eb 08                	jmp    0x48784c
487844:	ff 15 30 e1 49 00    	call   *0x49e130
48784a:	89 06                	mov    %eax,(%esi)
48784c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48784f:	8b c6                	mov    %esi,%eax
487851:	5f                   	pop    %edi
487852:	5e                   	pop    %esi
487853:	33 cd                	xor    %ebp,%ecx
487855:	5b                   	pop    %ebx
487856:	e8 6f 21 fe ff       	call   0x4699ca
48785b:	c9                   	leave
48785c:	c3                   	ret
48785d:	8b ff                	mov    %edi,%edi
48785f:	55                   	push   %ebp
487860:	8b ec                	mov    %esp,%ebp
487862:	83 ec 28             	sub    $0x28,%esp
487865:	8d 4d d8             	lea    -0x28(%ebp),%ecx
487868:	56                   	push   %esi
487869:	6a 00                	push   $0x0
48786b:	e8 70 fa fe ff       	call   0x4772e0
487870:	8d 45 d8             	lea    -0x28(%ebp),%eax
487873:	50                   	push   %eax
487874:	ff 75 10             	push   0x10(%ebp)
487877:	ff 75 0c             	push   0xc(%ebp)
48787a:	ff 75 08             	push   0x8(%ebp)
48787d:	e8 12 00 00 00       	call   0x487894
487882:	83 c4 10             	add    $0x10,%esp
487885:	8d 4d d8             	lea    -0x28(%ebp),%ecx
487888:	8b f0                	mov    %eax,%esi
48788a:	e8 b1 fa fe ff       	call   0x477340
48788f:	8b c6                	mov    %esi,%eax
487891:	5e                   	pop    %esi
487892:	c9                   	leave
487893:	c3                   	ret
487894:	6a 14                	push   $0x14
487896:	68 d0 19 4c 00       	push   $0x4c19d0
48789b:	e8 a0 2e fe ff       	call   0x46a740
4878a0:	8b 7d 08             	mov    0x8(%ebp),%edi
4878a3:	83 ff fe             	cmp    $0xfffffffe,%edi
4878a6:	75 1e                	jne    0x4878c6
4878a8:	8b 45 14             	mov    0x14(%ebp),%eax
4878ab:	c6 40 24 01          	movb   $0x1,0x24(%eax)
4878af:	83 60 20 00          	andl   $0x0,0x20(%eax)
4878b3:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
4878b7:	c7 40 18 09 00 00 00 	movl   $0x9,0x18(%eax)
4878be:	83 c8 ff             	or     $0xffffffff,%eax
4878c1:	e9 c1 00 00 00       	jmp    0x487987
4878c6:	85 ff                	test   %edi,%edi
4878c8:	78 0f                	js     0x4878d9
4878ca:	3b 3d 00 8a 4c 00    	cmp    0x4c8a00,%edi
4878d0:	73 07                	jae    0x4878d9
4878d2:	33 c0                	xor    %eax,%eax
4878d4:	40                   	inc    %eax
4878d5:	33 f6                	xor    %esi,%esi
4878d7:	eb 04                	jmp    0x4878dd
4878d9:	33 f6                	xor    %esi,%esi
4878db:	8b c6                	mov    %esi,%eax
4878dd:	85 c0                	test   %eax,%eax
4878df:	75 25                	jne    0x487906