4813ed:	50                   	push   %eax
4813ee:	8d 85 70 fc ff ff    	lea    -0x390(%ebp),%eax
4813f4:	50                   	push   %eax
4813f5:	8d 8d 3c fc ff ff    	lea    -0x3c4(%ebp),%ecx
4813fb:	e8 50 a4 ff ff       	call   0x47b850
481400:	8b bd 7c fc ff ff    	mov    -0x384(%ebp),%edi
481406:	33 f6                	xor    %esi,%esi
481408:	8b cf                	mov    %edi,%ecx
48140a:	c7 45 fc 10 00 00 00 	movl   $0x10,-0x4(%ebp)
481411:	89 b5 74 fc ff ff    	mov    %esi,-0x38c(%ebp)
481417:	e8 a4 cb fd ff       	call   0x45dfc0
48141c:	85 c0                	test   %eax,%eax
48141e:	0f 8e c8 03 00 00    	jle    0x4817ec
481424:	56                   	push   %esi
481425:	8b cf                	mov    %edi,%ecx
481427:	e8 b4 be fd ff       	call   0x45d2e0
48142c:	8b f0                	mov    %eax,%esi
48142e:	89 b5 78 fc ff ff    	mov    %esi,-0x388(%ebp)
481434:	89 b5 8c fc ff ff    	mov    %esi,-0x374(%ebp)
48143a:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
48143e:	72 08                	jb     0x481448
481440:	8b 06                	mov    (%esi),%eax
481442:	89 85 8c fc ff ff    	mov    %eax,-0x374(%ebp)
481448:	8b 7e 10             	mov    0x10(%esi),%edi
48144b:	33 c9                	xor    %ecx,%ecx
48144d:	ba c5 9d 1c 81       	mov    $0x811c9dc5,%edx
481452:	85 ff                	test   %edi,%edi
481454:	74 21                	je     0x481477
481456:	8b b5 8c fc ff ff    	mov    -0x374(%ebp),%esi
48145c:	0f 1f 40 00          	nopl   0x0(%eax)
481460:	0f b6 04 31          	movzbl (%ecx,%esi,1),%eax
481464:	41                   	inc    %ecx
481465:	33 c2                	xor    %edx,%eax
481467:	69 d0 93 01 00 01    	imul   $0x1000193,%eax,%edx
48146d:	3b cf                	cmp    %edi,%ecx
48146f:	72 ef                	jb     0x481460
481471:	8b b5 78 fc ff ff    	mov    -0x388(%ebp),%esi
481477:	52                   	push   %edx
481478:	56                   	push   %esi
481479:	8d 85 34 fc ff ff    	lea    -0x3cc(%ebp),%eax
48147f:	50                   	push   %eax
481480:	8d 8d 3c fc ff ff    	lea    -0x3c4(%ebp),%ecx
481486:	e8 e5 86 ff ff       	call   0x479b70
48148b:	8b 40 04             	mov    0x4(%eax),%eax
48148e:	85 c0                	test   %eax,%eax
481490:	0f 84 89 01 00 00    	je     0x48161f
481496:	3b 85 40 fc ff ff    	cmp    -0x3c0(%ebp),%eax
48149c:	0f 84 7d 01 00 00    	je     0x48161f
4814a2:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4814a6:	8b ce                	mov    %esi,%ecx
4814a8:	72 02                	jb     0x4814ac
4814aa:	8b 0e                	mov    (%esi),%ecx
4814ac:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
4814b2:	89 8d 20 fe ff ff    	mov    %ecx,-0x1e0(%ebp)
4814b8:	50                   	push   %eax
4814b9:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
4814bf:	89 bd 24 fe ff ff    	mov    %edi,-0x1dc(%ebp)
4814c5:	50                   	push   %eax
4814c6:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
4814cc:	c7 85 10 ff ff ff 00 	movl   $0x0,-0xf0(%ebp)
4814d3:	00 00 00
4814d6:	50                   	push   %eax
4814d7:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4814dd:	c7 85 14 ff ff ff ff 	movl   $0xffffffff,-0xec(%ebp)
4814e4:	ff ff ff
4814e7:	50                   	push   %eax
4814e8:	8d 85 70 fe ff ff    	lea    -0x190(%ebp),%eax
4814ee:	c7 85 e8 fe ff ff 00 	movl   $0x0,-0x118(%ebp)
4814f5:	00 00 00
4814f8:	50                   	push   %eax
4814f9:	8d 85 48 fe ff ff    	lea    -0x1b8(%ebp),%eax
4814ff:	c7 85 ec fe ff ff ff 	movl   $0xffffffff,-0x114(%ebp)
481506:	ff ff ff
481509:	50                   	push   %eax
48150a:	8d 45 88             	lea    -0x78(%ebp),%eax
48150d:	c7 85 c0 fe ff ff 00 	movl   $0x0,-0x140(%ebp)
481514:	00 00 00
481517:	50                   	push   %eax
481518:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
48151e:	c7 85 c4 fe ff ff ff 	movl   $0xffffffff,-0x13c(%ebp)
481525:	ff ff ff
481528:	50                   	push   %eax
481529:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
48152f:	c7 85 98 fe ff ff 00 	movl   $0x0,-0x168(%ebp)
481536:	00 00 00
481539:	50                   	push   %eax
48153a:	8d 85 20 fe ff ff    	lea    -0x1e0(%ebp),%eax
481540:	c7 85 9c fe ff ff ff 	movl   $0xffffffff,-0x164(%ebp)
481547:	ff ff ff
48154a:	50                   	push   %eax
48154b:	8d 45 d8             	lea    -0x28(%ebp),%eax
48154e:	c7 85 70 fe ff ff 00 	movl   $0x0,-0x190(%ebp)
481555:	00 00 00
481558:	68 00 8e 60 00       	push   $0x608e00
48155d:	50                   	push   %eax
48155e:	c7 85 74 fe ff ff ff 	movl   $0xffffffff,-0x18c(%ebp)
481565:	ff ff ff
481568:	c7 85 48 fe ff ff 00 	movl   $0x0,-0x1b8(%ebp)
48156f:	00 00 00
481572:	c7 85 4c fe ff ff ff 	movl   $0xffffffff,-0x1b4(%ebp)
481579:	ff ff ff
48157c:	c7 45 88 00 00 00 00 	movl   $0x0,-0x78(%ebp)
481583:	c7 45 8c ff ff ff ff 	movl   $0xffffffff,-0x74(%ebp)
48158a:	c7 85 60 ff ff ff 00 	movl   $0x0,-0xa0(%ebp)
481591:	00 00 00
481594:	c7 85 64 ff ff ff ff 	movl   $0xffffffff,-0x9c(%ebp)
48159b:	ff ff ff
48159e:	c7 85 38 ff ff ff 00 	movl   $0x0,-0xc8(%ebp)
4815a5:	00 00 00
4815a8:	c7 85 3c ff ff ff ff 	movl   $0xffffffff,-0xc4(%ebp)
4815af:	ff ff ff
4815b2:	e8 19 42 05 00       	call   0x4d57d0
4815b7:	83 c4 30             	add    $0x30,%esp
4815ba:	8b 8d 88 fc ff ff    	mov    -0x378(%ebp),%ecx
4815c0:	50                   	push   %eax
4815c1:	6a 00                	push   $0x0
4815c3:	ff b5 80 fc ff ff    	push   -0x380(%ebp)
4815c9:	c6 45 fc 13          	movb   $0x13,-0x4(%ebp)
4815cd:	56                   	push   %esi
4815ce:	e8 dd d1 ff ff       	call   0x47e7b0
4815d3:	8b 55 ec             	mov    -0x14(%ebp),%edx
4815d6:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
4815da:	83 fa 10             	cmp    $0x10,%edx
4815dd:	0f 82 e7 01 00 00    	jb     0x4817ca
4815e3:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4815e6:	42                   	inc    %edx
4815e7:	8b c1                	mov    %ecx,%eax
4815e9:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4815ef:	72 14                	jb     0x481605
4815f1:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4815f4:	83 c2 23             	add    $0x23,%edx
4815f7:	2b c1                	sub    %ecx,%eax
4815f9:	83 c0 fc             	add    $0xfffffffc,%eax
4815fc:	83 f8 1f             	cmp    $0x1f,%eax
4815ff:	0f 87 9a 05 00 00    	ja     0x481b9f
481605:	52                   	push   %edx
481606:	51                   	push   %ecx
481607:	e8 49 fc 14 00       	call   0x5d1255
48160c:	83 c4 08             	add    $0x8,%esp
48160f:	e9 b6 01 00 00       	jmp    0x4817ca
481614:	8b b5 80 fc ff ff    	mov    -0x380(%ebp),%esi
48161a:	e9 8e fd ff ff       	jmp    0x4813ad
48161f:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
481623:	89 b5 8c fc ff ff    	mov    %esi,-0x374(%ebp)
481629:	72 08                	jb     0x481633
48162b:	8b 06                	mov    (%esi),%eax
48162d:	89 85 8c fc ff ff    	mov    %eax,-0x374(%ebp)
481633:	8b 56 10             	mov    0x10(%esi),%edx
481636:	33 c9                	xor    %ecx,%ecx
481638:	bf c5 9d 1c 81       	mov    $0x811c9dc5,%edi
48163d:	85 d2                	test   %edx,%edx
48163f:	74 1d                	je     0x48165e
481641:	8b b5 8c fc ff ff    	mov    -0x374(%ebp),%esi
481647:	0f b6 04 31          	movzbl (%ecx,%esi,1),%eax
48164b:	41                   	inc    %ecx
48164c:	33 c7                	xor    %edi,%eax
48164e:	69 f8 93 01 00 01    	imul   $0x1000193,%eax,%edi
481654:	3b ca                	cmp    %edx,%ecx
481656:	72 ef                	jb     0x481647
481658:	8b b5 78 fc ff ff    	mov    -0x388(%ebp),%esi
48165e:	57                   	push   %edi
48165f:	56                   	push   %esi
481660:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
481666:	50                   	push   %eax
481667:	8d 8d 3c fc ff ff    	lea    -0x3c4(%ebp),%ecx
48166d:	e8 fe 84 ff ff       	call   0x479b70
481672:	83 bd 60 fc ff ff 00 	cmpl   $0x0,-0x3a0(%ebp)
481679:	0f 85 4b 01 00 00    	jne    0x4817ca
48167f:	81 bd 44 fc ff ff ff 	cmpl   $0x7ffffff,-0x3bc(%ebp)
481686:	ff ff 07
481689:	0f 84 06 05 00 00    	je     0x481b95
48168f:	8d 85 40 fc ff ff    	lea    -0x3c0(%ebp),%eax
481695:	89 85 64 fc ff ff    	mov    %eax,-0x39c(%ebp)
48169b:	6a 20                	push   $0x20
48169d:	c6 45 fc 11          	movb   $0x11,-0x4(%ebp)
4816a1:	c7 85 68 fc ff ff 00 	movl   $0x0,-0x398(%ebp)
4816a8:	00 00 00
4816ab:	e8 75 fb 14 00       	call   0x5d1225
4816b0:	83 c4 04             	add    $0x4,%esp
4816b3:	89 85 8c fc ff ff    	mov    %eax,-0x374(%ebp)
4816b9:	89 85 68 fc ff ff    	mov    %eax,-0x398(%ebp)
4816bf:	83 c0 08             	add    $0x8,%eax
4816c2:	8b c8                	mov    %eax,%ecx
4816c4:	89 85 70 fc ff ff    	mov    %eax,-0x390(%ebp)
4816ca:	56                   	push   %esi
4816cb:	e8 50 50 fd ff       	call   0x456720
4816d0:	8b 8d 44 fc ff ff    	mov    -0x3bc(%ebp),%ecx
4816d6:	c6 45 fc 12          	movb   $0x12,-0x4(%ebp)
4816da:	8d 41 01             	lea    0x1(%ecx),%eax
4816dd:	66 0f 6e c0          	movd   %eax,%xmm0
4816e1:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
4816e5:	c1 e8 1f             	shr    $0x1f,%eax
4816e8:	f2 0f 58 04 c5 60 64 	addsd  0x606460(,%eax,8),%xmm0
4816ef:	60 00
4816f1:	8b 85 58 fc ff ff    	mov    -0x3a8(%ebp),%eax
4816f7:	66 0f 5a c8          	cvtpd2ps %xmm0,%xmm1
4816fb:	66 0f 6e c0          	movd   %eax,%xmm0
4816ff:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
481703:	c1 e8 1f             	shr    $0x1f,%eax
481706:	f2 0f 58 04 c5 60 64 	addsd  0x606460(,%eax,8),%xmm0
48170d:	60 00
48170f:	66 0f 5a c0          	cvtpd2ps %xmm0,%xmm0
481713:	f3 0f 5e c8          	divss  %xmm0,%xmm1
481717:	0f 2f 8d 3c fc ff ff 	comiss -0x3c4(%ebp),%xmm1
48171e:	0f 97 c0             	seta   %al
481721:	84 c0                	test   %al,%al
481723:	74 3a                	je     0x48175f
481725:	8d 8d 3c fc ff ff    	lea    -0x3c4(%ebp),%ecx
48172b:	e8 a0 ba 01 00       	call   0x49d1d0
481730:	57                   	push   %edi
481731:	ff b5 70 fc ff ff    	push   -0x390(%ebp)
481737:	8d 45 d0             	lea    -0x30(%ebp),%eax
48173a:	50                   	push   %eax
48173b:	8d 8d 3c fc ff ff    	lea    -0x3c4(%ebp),%ecx
481741:	e8 2a 84 ff ff       	call   0x479b70
481746:	8b 8d 44 fc ff ff    	mov    -0x3bc(%ebp),%ecx
48174c:	8b 30                	mov    (%eax),%esi
48174e:	8b 40 04             	mov    0x4(%eax),%eax
481751:	89 b5 5c fc ff ff    	mov    %esi,-0x3a4(%ebp)
481757:	89 85 60 fc ff ff    	mov    %eax,-0x3a0(%ebp)
48175d:	eb 06                	jmp    0x481765
48175f:	8b b5 5c fc ff ff    	mov    -0x3a4(%ebp),%esi
481765:	8b 46 04             	mov    0x4(%esi),%eax
481768:	41                   	inc    %ecx
481769:	89 8d 44 fc ff ff    	mov    %ecx,-0x3bc(%ebp)
48176f:	8b 8d 8c fc ff ff    	mov    -0x374(%ebp),%ecx
481775:	89 85 70 fc ff ff    	mov    %eax,-0x390(%ebp)
48177b:	c7 85 68 fc ff ff 00 	movl   $0x0,-0x398(%ebp)
481782:	00 00 00
481785:	89 41 04             	mov    %eax,0x4(%ecx)
481788:	89 31                	mov    %esi,(%ecx)
48178a:	89 08                	mov    %ecx,(%eax)
48178c:	89 4e 04             	mov    %ecx,0x4(%esi)
48178f:	8b 85 54 fc ff ff    	mov    -0x3ac(%ebp),%eax
481795:	8b 95 48 fc ff ff    	mov    -0x3b8(%ebp),%edx
48179b:	23 c7                	and    %edi,%eax
48179d:	8b 3c c2             	mov    (%edx,%eax,8),%edi
4817a0:	3b bd 40 fc ff ff    	cmp    -0x3c0(%ebp),%edi
4817a6:	75 05                	jne    0x4817ad
4817a8:	89 0c c2             	mov    %ecx,(%edx,%eax,8)
4817ab:	eb 15                	jmp    0x4817c2
4817ad:	3b fe                	cmp    %esi,%edi
4817af:	75 05                	jne    0x4817b6
4817b1:	89 0c c2             	mov    %ecx,(%edx,%eax,8)
4817b4:	eb 10                	jmp    0x4817c6
4817b6:	8b b5 70 fc ff ff    	mov    -0x390(%ebp),%esi
4817bc:	39 74 c2 04          	cmp    %esi,0x4(%edx,%eax,8)
4817c0:	75 04                	jne    0x4817c6
4817c2:	89 4c c2 04          	mov    %ecx,0x4(%edx,%eax,8)
4817c6:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
4817ca:	8b b5 74 fc ff ff    	mov    -0x38c(%ebp),%esi
4817d0:	8b bd 7c fc ff ff    	mov    -0x384(%ebp),%edi
4817d6:	46                   	inc    %esi
4817d7:	8b cf                	mov    %edi,%ecx
4817d9:	89 b5 74 fc ff ff    	mov    %esi,-0x38c(%ebp)
4817df:	e8 dc c7 fd ff       	call   0x45dfc0
4817e4:	3b f0                	cmp    %eax,%esi
4817e6:	0f 8c 38 fc ff ff    	jl     0x481424
4817ec:	8b 85 84 fc ff ff    	mov    -0x37c(%ebp),%eax
4817f2:	c7 85 7c fc ff ff 00 	movl   $0x0,-0x384(%ebp)
4817f9:	00 00 00
4817fc:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
481800:	0f 8e 67 03 00 00    	jle    0x481b6d
481806:	33 c9                	xor    %ecx,%ecx
481808:	89 8d 8c fc ff ff    	mov    %ecx,-0x374(%ebp)
48180e:	66 90                	xchg   %ax,%ax
481810:	8b 78 1c             	mov    0x1c(%eax),%edi
481813:	33 f6                	xor    %esi,%esi
481815:	03 f9                	add    %ecx,%edi
481817:	39 70 20             	cmp    %esi,0x20(%eax)
48181a:	0f 8e 89 01 00 00    	jle    0x4819a9
481820:	8b 48 28             	mov    0x28(%eax),%ecx
481823:	8b 47 08             	mov    0x8(%edi),%eax
481826:	39 04 f1             	cmp    %eax,(%ecx,%esi,8)
481829:	0f 8f 6a 01 00 00    	jg     0x481999
48182f:	3b 44 f1 04          	cmp    0x4(%ecx,%esi,8),%eax
481833:	0f 8f 60 01 00 00    	jg     0x481999
481839:	8d 4d 90             	lea    -0x70(%ebp),%ecx
48183c:	51                   	push   %ecx
48183d:	50                   	push   %eax
48183e:	e8 fd de 01 00       	call   0x49f740
481843:	8b c8                	mov    %eax,%ecx
481845:	83 c4 08             	add    $0x8,%esp
481848:	89 4d 88             	mov    %ecx,-0x78(%ebp)
48184b:	8d 51 01             	lea    0x1(%ecx),%edx
48184e:	66 90                	xchg   %ax,%ax
481850:	8a 01                	mov    (%ecx),%al
481852:	41                   	inc    %ecx
481853:	84 c0                	test   %al,%al
481855:	75 f9                	jne    0x481850
481857:	8b 07                	mov    (%edi),%eax
481859:	2b ca                	sub    %edx,%ecx
48185b:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
48185e:	8b c8                	mov    %eax,%ecx
481860:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
481864:	72 02                	jb     0x481868
481866:	8b 08                	mov    (%eax),%ecx
481868:	89 8d 20 fe ff ff    	mov    %ecx,-0x1e0(%ebp)
48186e:	8b 40 10             	mov    0x10(%eax),%eax
481871:	89 85 24 fe ff ff    	mov    %eax,-0x1dc(%ebp)
481877:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
48187d:	50                   	push   %eax
48187e:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
481884:	c7 85 10 ff ff ff 00 	movl   $0x0,-0xf0(%ebp)
48188b:	00 00 00
48188e:	50                   	push   %eax
48188f:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
481895:	c7 85 14 ff ff ff ff 	movl   $0xffffffff,-0xec(%ebp)
48189c:	ff ff ff
48189f:	50                   	push   %eax
4818a0:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
4818a6:	c7 85 e8 fe ff ff 00 	movl   $0x0,-0x118(%ebp)
4818ad:	00 00 00
4818b0:	50                   	push   %eax
4818b1:	8d 85 70 fe ff ff    	lea    -0x190(%ebp),%eax
4818b7:	c7 85 ec fe ff ff ff 	movl   $0xffffffff,-0x114(%ebp)
4818be:	ff ff ff
4818c1:	50                   	push   %eax
4818c2:	8d 85 48 fe ff ff    	lea    -0x1b8(%ebp),%eax
4818c8:	c7 85 c0 fe ff ff 00 	movl   $0x0,-0x140(%ebp)
4818cf:	00 00 00
4818d2:	50                   	push   %eax
4818d3:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
4818d9:	c7 85 c4 fe ff ff ff 	movl   $0xffffffff,-0x13c(%ebp)
4818e0:	ff ff ff
4818e3:	50                   	push   %eax
4818e4:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
4818ea:	c7 85 98 fe ff ff 00 	movl   $0x0,-0x168(%ebp)
4818f1:	00 00 00
4818f4:	50                   	push   %eax
4818f5:	8d 45 88             	lea    -0x78(%ebp),%eax
4818f8:	c7 85 9c fe ff ff ff 	movl   $0xffffffff,-0x164(%ebp)
4818ff:	ff ff ff
481902:	50                   	push   %eax
481903:	8d 85 20 fe ff ff    	lea    -0x1e0(%ebp),%eax
481909:	c7 85 70 fe ff ff 00 	movl   $0x0,-0x190(%ebp)
481910:	00 00 00
481913:	50                   	push   %eax
481914:	8d 45 d8             	lea    -0x28(%ebp),%eax
481917:	c7 85 74 fe ff ff ff 	movl   $0xffffffff,-0x18c(%ebp)
48191e:	ff ff ff
481921:	68 2c 8e 60 00       	push   $0x608e2c
481926:	50                   	push   %eax
481927:	c7 85 48 fe ff ff 00 	movl   $0x0,-0x1b8(%ebp)
48192e:	00 00 00
481931:	c7 85 4c fe ff ff ff 	movl   $0xffffffff,-0x1b4(%ebp)
481938:	ff ff ff
48193b:	c7 85 60 ff ff ff 00 	movl   $0x0,-0xa0(%ebp)
481942:	00 00 00
481945:	c7 85 64 ff ff ff ff 	movl   $0xffffffff,-0x9c(%ebp)