5ba54c:	33 c5                	xor    %ebp,%eax
5ba54e:	89 45 f0             	mov    %eax,-0x10(%ebp)
5ba551:	56                   	push   %esi
5ba552:	57                   	push   %edi
5ba553:	50                   	push   %eax
5ba554:	8d 45 f4             	lea    -0xc(%ebp),%eax
5ba557:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
5ba55d:	8b 45 0c             	mov    0xc(%ebp),%eax
5ba560:	8d 4d 90             	lea    -0x70(%ebp),%ecx
5ba563:	8b 75 08             	mov    0x8(%ebp),%esi
5ba566:	6a 00                	push   $0x0
5ba568:	68 65 aa 68 00       	push   $0x68aa65
5ba56d:	89 45 8c             	mov    %eax,-0x74(%ebp)
5ba570:	c7 45 a0 00 00 00 00 	movl   $0x0,-0x60(%ebp)
5ba577:	c7 45 a4 0f 00 00 00 	movl   $0xf,-0x5c(%ebp)
5ba57e:	c6 45 90 00          	movb   $0x0,-0x70(%ebp)
5ba582:	e8 b9 ac e8 ff       	call   0x445240
5ba587:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5ba58e:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
5ba595:	c7 45 bc 0f 00 00 00 	movl   $0xf,-0x44(%ebp)
5ba59c:	c6 45 a8 00          	movb   $0x0,-0x58(%ebp)
5ba5a0:	56                   	push   %esi
5ba5a1:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5ba5a5:	33 ff                	xor    %edi,%edi
5ba5a7:	e8 04 b0 e8 ff       	call   0x4455b0
5ba5ac:	8b f0                	mov    %eax,%esi
5ba5ae:	83 c4 04             	add    $0x4,%esp
5ba5b1:	89 b5 70 ff ff ff    	mov    %esi,-0x90(%ebp)
5ba5b7:	85 f6                	test   %esi,%esi
5ba5b9:	0f 84 ab 0b 00 00    	je     0x5bb16a
5ba5bf:	8d 45 90             	lea    -0x70(%ebp),%eax
5ba5c2:	50                   	push   %eax
5ba5c3:	56                   	push   %esi
5ba5c4:	e8 57 c8 e8 ff       	call   0x446e20
5ba5c9:	83 c4 08             	add    $0x8,%esp
5ba5cc:	84 c0                	test   %al,%al
5ba5ce:	0f 84 8f 0b 00 00    	je     0x5bb163
5ba5d4:	8b 75 8c             	mov    -0x74(%ebp),%esi
5ba5d7:	0f b7 06             	movzwl (%esi),%eax
5ba5da:	50                   	push   %eax
5ba5db:	e8 29 5c 04 00       	call   0x600209
5ba5e0:	83 c4 04             	add    $0x4,%esp
5ba5e3:	85 c0                	test   %eax,%eax
5ba5e5:	74 0b                	je     0x5ba5f2
5ba5e7:	56                   	push   %esi
5ba5e8:	e8 c3 37 03 00       	call   0x5eddb0
5ba5ed:	83 c4 04             	add    $0x4,%esp
5ba5f0:	8b f8                	mov    %eax,%edi
5ba5f2:	8d 47 ff             	lea    -0x1(%edi),%eax
5ba5f5:	83 f8 04             	cmp    $0x4,%eax
5ba5f8:	0f 87 48 0b 00 00    	ja     0x5bb146
5ba5fe:	ff 24 85 08 b2 5b 00 	jmp    *0x5bb208(,%eax,4)
5ba605:	6a 24                	push   $0x24
5ba607:	e8 36 6a 02 00       	call   0x5e1042
5ba60c:	8b f0                	mov    %eax,%esi
5ba60e:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5ba614:	83 c4 04             	add    $0x4,%esp
5ba617:	85 f6                	test   %esi,%esi
5ba619:	74 28                	je     0x5ba643
5ba61b:	0f 57 c0             	xorps  %xmm0,%xmm0
5ba61e:	0f 11 06             	movups %xmm0,(%esi)
5ba621:	0f 11 46 10          	movups %xmm0,0x10(%esi)
5ba625:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
5ba62c:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
5ba633:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
5ba63a:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
5ba641:	eb 08                	jmp    0x5ba64b
5ba643:	33 f6                	xor    %esi,%esi
5ba645:	89 b5 74 ff ff ff    	mov    %esi,-0x8c(%ebp)
5ba64b:	56                   	push   %esi
5ba64c:	83 ec 18             	sub    $0x18,%esp
5ba64f:	8d 45 90             	lea    -0x70(%ebp),%eax
5ba652:	8b cc                	mov    %esp,%ecx
5ba654:	50                   	push   %eax
5ba655:	e8 46 27 e8 ff       	call   0x43cda0
5ba65a:	e8 91 c5 e8 ff       	call   0x446bf0
5ba65f:	6a 24                	push   $0x24
5ba661:	e8 dc 69 02 00       	call   0x5e1042
5ba666:	8b f8                	mov    %eax,%edi
5ba668:	83 c4 20             	add    $0x20,%esp
5ba66b:	85 ff                	test   %edi,%edi
5ba66d:	74 28                	je     0x5ba697
5ba66f:	0f 57 c0             	xorps  %xmm0,%xmm0
5ba672:	0f 11 07             	movups %xmm0,(%edi)
5ba675:	0f 11 47 10          	movups %xmm0,0x10(%edi)
5ba679:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%edi)
5ba680:	c7 47 14 0f 00 00 00 	movl   $0xf,0x14(%edi)
5ba687:	c7 47 1c 00 00 00 00 	movl   $0x0,0x1c(%edi)
5ba68e:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%edi)
5ba695:	eb 02                	jmp    0x5ba699
5ba697:	33 ff                	xor    %edi,%edi
5ba699:	8d 45 8c             	lea    -0x74(%ebp),%eax
5ba69c:	c7 45 84 00 00 00 00 	movl   $0x0,-0x7c(%ebp)
5ba6a3:	50                   	push   %eax
5ba6a4:	8d 45 84             	lea    -0x7c(%ebp),%eax
5ba6a7:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
5ba6ae:	50                   	push   %eax
5ba6af:	e8 ac 2e ea ff       	call   0x45d560
5ba6b4:	83 c4 08             	add    $0x8,%esp
5ba6b7:	84 c0                	test   %al,%al
5ba6b9:	0f 84 98 01 00 00    	je     0x5ba857
5ba6bf:	8d 45 ed             	lea    -0x13(%ebp),%eax
5ba6c2:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
5ba6c9:	6a 15                	push   $0x15
5ba6cb:	50                   	push   %eax
5ba6cc:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
5ba6d3:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
5ba6d7:	e8 04 a0 e8 ff       	call   0x4446e0
5ba6dc:	8d 4d ed             	lea    -0x13(%ebp),%ecx
5ba6df:	83 c4 08             	add    $0x8,%esp
5ba6e2:	3b c1                	cmp    %ecx,%eax
5ba6e4:	74 0c                	je     0x5ba6f2
5ba6e6:	2b c8                	sub    %eax,%ecx
5ba6e8:	51                   	push   %ecx
5ba6e9:	50                   	push   %eax
5ba6ea:	8d 4d c0             	lea    -0x40(%ebp),%ecx
5ba6ed:	e8 4e ab e8 ff       	call   0x445240
5ba6f2:	8d 45 c0             	lea    -0x40(%ebp),%eax
5ba6f5:	3b f8                	cmp    %eax,%edi
5ba6f7:	74 46                	je     0x5ba73f
5ba6f9:	8b 4f 14             	mov    0x14(%edi),%ecx
5ba6fc:	83 f9 10             	cmp    $0x10,%ecx
5ba6ff:	72 2b                	jb     0x5ba72c
5ba701:	8b 07                	mov    (%edi),%eax
5ba703:	41                   	inc    %ecx
5ba704:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba70a:	72 16                	jb     0x5ba722
5ba70c:	8b 50 fc             	mov    -0x4(%eax),%edx
5ba70f:	83 c1 23             	add    $0x23,%ecx
5ba712:	2b c2                	sub    %edx,%eax
5ba714:	83 c0 fc             	add    $0xfffffffc,%eax
5ba717:	83 f8 1f             	cmp    $0x1f,%eax
5ba71a:	0f 87 d9 0a 00 00    	ja     0x5bb1f9
5ba720:	8b c2                	mov    %edx,%eax
5ba722:	51                   	push   %ecx
5ba723:	50                   	push   %eax
5ba724:	e8 49 69 02 00       	call   0x5e1072
5ba729:	83 c4 08             	add    $0x8,%esp
5ba72c:	0f 10 45 c0          	movups -0x40(%ebp),%xmm0
5ba730:	0f 11 07             	movups %xmm0,(%edi)
5ba733:	f3 0f 7e 45 d0       	movq   -0x30(%ebp),%xmm0
5ba738:	66 0f d6 47 10       	movq   %xmm0,0x10(%edi)
5ba73d:	eb 36                	jmp    0x5ba775
5ba73f:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5ba742:	83 f8 10             	cmp    $0x10,%eax
5ba745:	72 2e                	jb     0x5ba775
5ba747:	8b 4d c0             	mov    -0x40(%ebp),%ecx
5ba74a:	8d 50 01             	lea    0x1(%eax),%edx
5ba74d:	8b c1                	mov    %ecx,%eax
5ba74f:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
5ba755:	72 14                	jb     0x5ba76b
5ba757:	8b 49 fc             	mov    -0x4(%ecx),%ecx
5ba75a:	83 c2 23             	add    $0x23,%edx
5ba75d:	2b c1                	sub    %ecx,%eax
5ba75f:	83 c0 fc             	add    $0xfffffffc,%eax
5ba762:	83 f8 1f             	cmp    $0x1f,%eax
5ba765:	0f 87 8e 0a 00 00    	ja     0x5bb1f9
5ba76b:	52                   	push   %edx
5ba76c:	51                   	push   %ecx
5ba76d:	e8 00 69 02 00       	call   0x5e1072
5ba772:	83 c4 08             	add    $0x8,%esp
5ba775:	8d 47 18             	lea    0x18(%edi),%eax
5ba778:	8d 4d e0             	lea    -0x20(%ebp),%ecx
5ba77b:	3b c1                	cmp    %ecx,%eax
5ba77d:	0f 84 ee 00 00 00    	je     0x5ba871
5ba783:	8b 30                	mov    (%eax),%esi
5ba785:	85 f6                	test   %esi,%esi
5ba787:	0f 84 ae 00 00 00    	je     0x5ba83b
5ba78d:	8b 48 04             	mov    0x4(%eax),%ecx
5ba790:	89 4d 88             	mov    %ecx,-0x78(%ebp)
5ba793:	3b f1                	cmp    %ecx,%esi
5ba795:	74 5d                	je     0x5ba7f4
5ba797:	8b c1                	mov    %ecx,%eax
5ba799:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
5ba7a0:	8b 4e 14             	mov    0x14(%esi),%ecx
5ba7a3:	83 f9 10             	cmp    $0x10,%ecx
5ba7a6:	72 2e                	jb     0x5ba7d6
5ba7a8:	8b 06                	mov    (%esi),%eax
5ba7aa:	41                   	inc    %ecx
5ba7ab:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba7b1:	72 16                	jb     0x5ba7c9
5ba7b3:	8b 50 fc             	mov    -0x4(%eax),%edx
5ba7b6:	83 c1 23             	add    $0x23,%ecx
5ba7b9:	2b c2                	sub    %edx,%eax
5ba7bb:	83 c0 fc             	add    $0xfffffffc,%eax
5ba7be:	83 f8 1f             	cmp    $0x1f,%eax
5ba7c1:	0f 87 32 0a 00 00    	ja     0x5bb1f9
5ba7c7:	8b c2                	mov    %edx,%eax
5ba7c9:	51                   	push   %ecx
5ba7ca:	50                   	push   %eax
5ba7cb:	e8 a2 68 02 00       	call   0x5e1072
5ba7d0:	8b 45 88             	mov    -0x78(%ebp),%eax
5ba7d3:	83 c4 08             	add    $0x8,%esp
5ba7d6:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5ba7dd:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
5ba7e4:	c6 06 00             	movb   $0x0,(%esi)
5ba7e7:	83 c6 18             	add    $0x18,%esi
5ba7ea:	3b f0                	cmp    %eax,%esi
5ba7ec:	75 b2                	jne    0x5ba7a0
5ba7ee:	8b 77 18             	mov    0x18(%edi),%esi
5ba7f1:	8d 47 18             	lea    0x18(%edi),%eax
5ba7f4:	8b 48 08             	mov    0x8(%eax),%ecx
5ba7f7:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
5ba7fc:	2b ce                	sub    %esi,%ecx
5ba7fe:	f7 e9                	imul   %ecx
5ba800:	c1 fa 02             	sar    $0x2,%edx
5ba803:	8b c2                	mov    %edx,%eax
5ba805:	c1 e8 1f             	shr    $0x1f,%eax
5ba808:	03 c2                	add    %edx,%eax
5ba80a:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
5ba80d:	c1 e1 03             	shl    $0x3,%ecx
5ba810:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba816:	72 16                	jb     0x5ba82e
5ba818:	8b 56 fc             	mov    -0x4(%esi),%edx
5ba81b:	83 c1 23             	add    $0x23,%ecx
5ba81e:	2b f2                	sub    %edx,%esi
5ba820:	8d 46 fc             	lea    -0x4(%esi),%eax
5ba823:	83 f8 1f             	cmp    $0x1f,%eax
5ba826:	0f 87 cd 09 00 00    	ja     0x5bb1f9
5ba82c:	8b f2                	mov    %edx,%esi
5ba82e:	51                   	push   %ecx
5ba82f:	56                   	push   %esi
5ba830:	e8 3d 68 02 00       	call   0x5e1072
5ba835:	83 c4 08             	add    $0x8,%esp
5ba838:	8d 47 18             	lea    0x18(%edi),%eax
5ba83b:	8b b5 74 ff ff ff    	mov    -0x8c(%ebp),%esi
5ba841:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
5ba847:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
5ba84e:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
5ba855:	eb 1a                	jmp    0x5ba871
5ba857:	57                   	push   %edi
5ba858:	56                   	push   %esi
5ba859:	e8 f2 d4 ff ff       	call   0x5b7d50
5ba85e:	ff 75 84             	push   -0x7c(%ebp)
5ba861:	e8 da 2a ea ff       	call   0x45d340
5ba866:	ff 75 8c             	push   -0x74(%ebp)
5ba869:	e8 d2 2a ea ff       	call   0x45d340
5ba86e:	83 c4 10             	add    $0x10,%esp
5ba871:	8d 45 a8             	lea    -0x58(%ebp),%eax
5ba874:	50                   	push   %eax
5ba875:	57                   	push   %edi
5ba876:	e8 15 b9 e8 ff       	call   0x446190
5ba87b:	83 c4 08             	add    $0x8,%esp
5ba87e:	85 f6                	test   %esi,%esi
5ba880:	0f 84 2a 01 00 00    	je     0x5ba9b0
5ba886:	8b 76 18             	mov    0x18(%esi),%esi
5ba889:	85 f6                	test   %esi,%esi
5ba88b:	0f 84 ca 00 00 00    	je     0x5ba95b
5ba891:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
5ba897:	8b 48 1c             	mov    0x1c(%eax),%ecx
5ba89a:	89 4d 88             	mov    %ecx,-0x78(%ebp)
5ba89d:	3b f1                	cmp    %ecx,%esi
5ba89f:	74 59                	je     0x5ba8fa
5ba8a1:	8b c1                	mov    %ecx,%eax
5ba8a3:	8b 4e 14             	mov    0x14(%esi),%ecx
5ba8a6:	83 f9 10             	cmp    $0x10,%ecx
5ba8a9:	72 2e                	jb     0x5ba8d9
5ba8ab:	8b 06                	mov    (%esi),%eax
5ba8ad:	41                   	inc    %ecx
5ba8ae:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba8b4:	72 16                	jb     0x5ba8cc
5ba8b6:	8b 50 fc             	mov    -0x4(%eax),%edx
5ba8b9:	83 c1 23             	add    $0x23,%ecx
5ba8bc:	2b c2                	sub    %edx,%eax
5ba8be:	83 c0 fc             	add    $0xfffffffc,%eax
5ba8c1:	83 f8 1f             	cmp    $0x1f,%eax
5ba8c4:	0f 87 2f 09 00 00    	ja     0x5bb1f9
5ba8ca:	8b c2                	mov    %edx,%eax
5ba8cc:	51                   	push   %ecx
5ba8cd:	50                   	push   %eax
5ba8ce:	e8 9f 67 02 00       	call   0x5e1072
5ba8d3:	8b 45 88             	mov    -0x78(%ebp),%eax
5ba8d6:	83 c4 08             	add    $0x8,%esp
5ba8d9:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5ba8e0:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
5ba8e7:	c6 06 00             	movb   $0x0,(%esi)
5ba8ea:	83 c6 18             	add    $0x18,%esi
5ba8ed:	3b f0                	cmp    %eax,%esi
5ba8ef:	75 b2                	jne    0x5ba8a3
5ba8f1:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
5ba8f7:	8b 70 18             	mov    0x18(%eax),%esi
5ba8fa:	8b 48 20             	mov    0x20(%eax),%ecx
5ba8fd:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
5ba902:	2b ce                	sub    %esi,%ecx
5ba904:	f7 e9                	imul   %ecx
5ba906:	c1 fa 02             	sar    $0x2,%edx
5ba909:	8b c2                	mov    %edx,%eax
5ba90b:	c1 e8 1f             	shr    $0x1f,%eax
5ba90e:	03 c2                	add    %edx,%eax
5ba910:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
5ba913:	c1 e1 03             	shl    $0x3,%ecx
5ba916:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba91c:	72 16                	jb     0x5ba934
5ba91e:	8b 56 fc             	mov    -0x4(%esi),%edx
5ba921:	83 c1 23             	add    $0x23,%ecx
5ba924:	2b f2                	sub    %edx,%esi
5ba926:	8d 46 fc             	lea    -0x4(%esi),%eax
5ba929:	83 f8 1f             	cmp    $0x1f,%eax
5ba92c:	0f 87 c7 08 00 00    	ja     0x5bb1f9
5ba932:	8b f2                	mov    %edx,%esi
5ba934:	51                   	push   %ecx
5ba935:	56                   	push   %esi
5ba936:	e8 37 67 02 00       	call   0x5e1072
5ba93b:	8b b5 74 ff ff ff    	mov    -0x8c(%ebp),%esi
5ba941:	83 c4 08             	add    $0x8,%esp
5ba944:	c7 46 18 00 00 00 00 	movl   $0x0,0x18(%esi)
5ba94b:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
5ba952:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
5ba959:	eb 06                	jmp    0x5ba961
5ba95b:	8b b5 74 ff ff ff    	mov    -0x8c(%ebp),%esi
5ba961:	8b 4e 14             	mov    0x14(%esi),%ecx
5ba964:	83 f9 10             	cmp    $0x10,%ecx
5ba967:	72 2b                	jb     0x5ba994
5ba969:	8b 06                	mov    (%esi),%eax
5ba96b:	41                   	inc    %ecx
5ba96c:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ba972:	72 16                	jb     0x5ba98a
5ba974:	8b 50 fc             	mov    -0x4(%eax),%edx
5ba977:	83 c1 23             	add    $0x23,%ecx
5ba97a:	2b c2                	sub    %edx,%eax
5ba97c:	83 c0 fc             	add    $0xfffffffc,%eax
5ba97f:	83 f8 1f             	cmp    $0x1f,%eax
5ba982:	0f 87 71 08 00 00    	ja     0x5bb1f9
5ba988:	8b c2                	mov    %edx,%eax
5ba98a:	51                   	push   %ecx
5ba98b:	50                   	push   %eax
5ba98c:	e8 e1 66 02 00       	call   0x5e1072
5ba991:	83 c4 08             	add    $0x8,%esp
5ba994:	6a 24                	push   $0x24
5ba996:	56                   	push   %esi
5ba997:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5ba99e:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
5ba9a5:	c6 06 00             	movb   $0x0,(%esi)
5ba9a8:	e8 c5 66 02 00       	call   0x5e1072
5ba9ad:	83 c4 08             	add    $0x8,%esp
5ba9b0:	85 ff                	test   %edi,%edi
5ba9b2:	0f 84 8e 07 00 00    	je     0x5bb146
5ba9b8:	8b 77 18             	mov    0x18(%edi),%esi
5ba9bb:	85 f6                	test   %esi,%esi
5ba9bd:	0f 84 b7 00 00 00    	je     0x5baa7a
5ba9c3:	8b 47 1c             	mov    0x1c(%edi),%eax
5ba9c6:	89 45 88             	mov    %eax,-0x78(%ebp)
5ba9c9:	3b f0                	cmp    %eax,%esi
5ba9cb:	74 54                	je     0x5baa21
5ba9cd:	0f 1f 00             	nopl   (%eax)
5ba9d0:	8b 4e 14             	mov    0x14(%esi),%ecx
5ba9d3:	83 f9 10             	cmp    $0x10,%ecx
5ba9d6:	72 2e                	jb     0x5baa06
5ba9d8:	8b 06                	mov    (%esi),%eax
5ba9da:	41                   	inc    %ecx