5843e3:	e8 08 0f 00 00       	call   0x5852f0
5843e8:	8a d8                	mov    %al,%bl
5843ea:	8b ce                	mov    %esi,%ecx
5843ec:	8d 45 c0             	lea    -0x40(%ebp),%eax
5843ef:	50                   	push   %eax
5843f0:	e8 7b 15 00 00       	call   0x585970
5843f5:	80 7e 70 00          	cmpb   $0x0,0x70(%esi)
5843f9:	74 13                	je     0x58440e
5843fb:	83 7e 64 00          	cmpl   $0x0,0x64(%esi)
5843ff:	74 0d                	je     0x58440e
584401:	6a 02                	push   $0x2
584403:	8d 46 54             	lea    0x54(%esi),%eax
584406:	8b cf                	mov    %edi,%ecx
584408:	50                   	push   %eax
584409:	e8 92 da ff ff       	call   0x581ea0
58440e:	80 7e 6d 00          	cmpb   $0x0,0x6d(%esi)
584412:	0f 84 9e 00 00 00    	je     0x5844b6
584418:	8b cf                	mov    %edi,%ecx
58441a:	e8 11 d4 ff ff       	call   0x581830
58441f:	84 c0                	test   %al,%al
584421:	0f 85 8f 00 00 00    	jne    0x5844b6
584427:	8b cf                	mov    %edi,%ecx
584429:	e8 72 d4 ff ff       	call   0x5818a0
58442e:	84 c0                	test   %al,%al
584430:	0f 85 80 00 00 00    	jne    0x5844b6
584436:	8b 45 d0             	mov    -0x30(%ebp),%eax
584439:	8d 4d d8             	lea    -0x28(%ebp),%ecx
58443c:	6a 41                	push   $0x41
58443e:	89 45 c4             	mov    %eax,-0x3c(%ebp)
584441:	8b 45 cc             	mov    -0x34(%ebp),%eax
584444:	68 80 34 6c 00       	push   $0x6c3480
584449:	c7 45 c0 0d 00 00 00 	movl   $0xd,-0x40(%ebp)
584450:	89 45 c8             	mov    %eax,-0x38(%ebp)
584453:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
58445a:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
584461:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
584465:	e8 d6 0d ec ff       	call   0x445240
58446a:	6a 00                	push   $0x0
58446c:	8d 45 c0             	lea    -0x40(%ebp),%eax
58446f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
584476:	50                   	push   %eax
584477:	8d 45 d8             	lea    -0x28(%ebp),%eax
58447a:	8b ce                	mov    %esi,%ecx
58447c:	50                   	push   %eax
58447d:	e8 0e eb ff ff       	call   0x582f90
584482:	8b 55 ec             	mov    -0x14(%ebp),%edx
584485:	83 fa 10             	cmp    $0x10,%edx
584488:	72 28                	jb     0x5844b2
58448a:	8b 4d d8             	mov    -0x28(%ebp),%ecx
58448d:	42                   	inc    %edx
58448e:	8b c1                	mov    %ecx,%eax
584490:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
584496:	72 10                	jb     0x5844a8
584498:	8b 49 fc             	mov    -0x4(%ecx),%ecx
58449b:	83 c2 23             	add    $0x23,%edx
58449e:	2b c1                	sub    %ecx,%eax
5844a0:	83 c0 fc             	add    $0xfffffffc,%eax
5844a3:	83 f8 1f             	cmp    $0x1f,%eax
5844a6:	77 2e                	ja     0x5844d6
5844a8:	52                   	push   %edx
5844a9:	51                   	push   %ecx
5844aa:	e8 c3 cb 05 00       	call   0x5e1072
5844af:	83 c4 08             	add    $0x8,%esp
5844b2:	32 c0                	xor    %al,%al
5844b4:	eb 02                	jmp    0x5844b8
5844b6:	8a c3                	mov    %bl,%al
5844b8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5844bb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5844c2:	59                   	pop    %ecx
5844c3:	5f                   	pop    %edi
5844c4:	5e                   	pop    %esi
5844c5:	5b                   	pop    %ebx
5844c6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5844c9:	33 cd                	xor    %ebp,%ecx
5844cb:	e8 0a d0 05 00       	call   0x5e14da
5844d0:	8b e5                	mov    %ebp,%esp
5844d2:	5d                   	pop    %ebp
5844d3:	c2 10 00             	ret    $0x10
5844d6:	e8 54 8a 06 00       	call   0x5ecf2f
5844db:	cc                   	int3
5844dc:	cc                   	int3
5844dd:	cc                   	int3
5844de:	cc                   	int3
5844df:	cc                   	int3
5844e0:	55                   	push   %ebp
5844e1:	8b ec                	mov    %esp,%ebp
5844e3:	53                   	push   %ebx
5844e4:	56                   	push   %esi
5844e5:	8b f1                	mov    %ecx,%esi
5844e7:	57                   	push   %edi
5844e8:	8b 4e 10             	mov    0x10(%esi),%ecx
5844eb:	8b f9                	mov    %ecx,%edi
5844ed:	8b 56 0c             	mov    0xc(%esi),%edx
5844f0:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
5844f3:	a8 03                	test   $0x3,%al
5844f5:	75 1a                	jne    0x584511
5844f7:	8d 41 04             	lea    0x4(%ecx),%eax
5844fa:	c1 e8 02             	shr    $0x2,%eax
5844fd:	39 46 08             	cmp    %eax,0x8(%esi)
584500:	77 0f                	ja     0x584511
584502:	6a 01                	push   $0x1
584504:	8b ce                	mov    %esi,%ecx
584506:	e8 f5 e5 ff ff       	call   0x582b00
58450b:	8b 56 0c             	mov    0xc(%esi),%edx
58450e:	8b 7e 10             	mov    0x10(%esi),%edi
584511:	8b 4e 08             	mov    0x8(%esi),%ecx
584514:	8d 04 8d ff ff ff ff 	lea    -0x1(,%ecx,4),%eax
58451b:	49                   	dec    %ecx
58451c:	23 c2                	and    %edx,%eax
58451e:	89 46 0c             	mov    %eax,0xc(%esi)
584521:	03 f8                	add    %eax,%edi
584523:	8b c7                	mov    %edi,%eax
584525:	c1 e8 02             	shr    $0x2,%eax
584528:	23 c8                	and    %eax,%ecx
58452a:	8d 1c 8d 00 00 00 00 	lea    0x0(,%ecx,4),%ebx
584531:	8b 4e 04             	mov    0x4(%esi),%ecx
584534:	83 3c 19 00          	cmpl   $0x0,(%ecx,%ebx,1)
584538:	75 13                	jne    0x58454d
58453a:	6a 10                	push   $0x10
58453c:	e8 01 cb 05 00       	call   0x5e1042
584541:	8b 4e 04             	mov    0x4(%esi),%ecx
584544:	83 c4 04             	add    $0x4,%esp
584547:	89 04 0b             	mov    %eax,(%ebx,%ecx,1)
58454a:	8b 4e 04             	mov    0x4(%esi),%ecx
58454d:	8b 0c 0b             	mov    (%ebx,%ecx,1),%ecx
584550:	83 e7 03             	and    $0x3,%edi
584553:	8b 45 08             	mov    0x8(%ebp),%eax
584556:	8b 00                	mov    (%eax),%eax
584558:	89 04 b9             	mov    %eax,(%ecx,%edi,4)
58455b:	ff 46 10             	incl   0x10(%esi)
58455e:	5f                   	pop    %edi
58455f:	5e                   	pop    %esi
584560:	5b                   	pop    %ebx
584561:	5d                   	pop    %ebp
584562:	c2 04 00             	ret    $0x4
584565:	cc                   	int3
584566:	cc                   	int3
584567:	cc                   	int3
584568:	cc                   	int3
584569:	cc                   	int3
58456a:	cc                   	int3
58456b:	cc                   	int3
58456c:	cc                   	int3
58456d:	cc                   	int3
58456e:	cc                   	int3
58456f:	cc                   	int3
584570:	55                   	push   %ebp
584571:	8b ec                	mov    %esp,%ebp
584573:	53                   	push   %ebx
584574:	8b d9                	mov    %ecx,%ebx
584576:	56                   	push   %esi
584577:	57                   	push   %edi
584578:	8b 4b 10             	mov    0x10(%ebx),%ecx
58457b:	8b 53 08             	mov    0x8(%ebx),%edx
58457e:	8d 41 01             	lea    0x1(%ecx),%eax
584581:	3b d0                	cmp    %eax,%edx
584583:	77 0f                	ja     0x584594
584585:	6a 01                	push   $0x1
584587:	8b cb                	mov    %ebx,%ecx
584589:	e8 12 e7 ff ff       	call   0x582ca0
58458e:	8b 53 08             	mov    0x8(%ebx),%edx
584591:	8b 4b 10             	mov    0x10(%ebx),%ecx
584594:	8d 42 ff             	lea    -0x1(%edx),%eax
584597:	21 43 0c             	and    %eax,0xc(%ebx)
58459a:	8d 42 ff             	lea    -0x1(%edx),%eax
58459d:	03 4b 0c             	add    0xc(%ebx),%ecx
5845a0:	23 c8                	and    %eax,%ecx
5845a2:	8b 43 04             	mov    0x4(%ebx),%eax
5845a5:	83 3c 88 00          	cmpl   $0x0,(%eax,%ecx,4)
5845a9:	8d 3c 8d 00 00 00 00 	lea    0x0(,%ecx,4),%edi
5845b0:	75 13                	jne    0x5845c5
5845b2:	6a 28                	push   $0x28
5845b4:	e8 89 ca 05 00       	call   0x5e1042
5845b9:	8b 4b 04             	mov    0x4(%ebx),%ecx
5845bc:	83 c4 04             	add    $0x4,%esp
5845bf:	89 04 0f             	mov    %eax,(%edi,%ecx,1)
5845c2:	8b 43 04             	mov    0x4(%ebx),%eax
5845c5:	8b 3c 07             	mov    (%edi,%eax,1),%edi
5845c8:	8b 75 08             	mov    0x8(%ebp),%esi
5845cb:	8d 4f 0c             	lea    0xc(%edi),%ecx
5845ce:	f3 0f 7e 06          	movq   (%esi),%xmm0
5845d2:	66 0f d6 07          	movq   %xmm0,(%edi)
5845d6:	8b 46 08             	mov    0x8(%esi),%eax
5845d9:	89 47 08             	mov    %eax,0x8(%edi)
5845dc:	8d 46 0c             	lea    0xc(%esi),%eax
5845df:	50                   	push   %eax
5845e0:	e8 bb 87 eb ff       	call   0x43cda0
5845e5:	8b 46 24             	mov    0x24(%esi),%eax
5845e8:	89 47 24             	mov    %eax,0x24(%edi)
5845eb:	ff 43 10             	incl   0x10(%ebx)
5845ee:	5f                   	pop    %edi
5845ef:	5e                   	pop    %esi
5845f0:	5b                   	pop    %ebx
5845f1:	5d                   	pop    %ebp
5845f2:	c2 04 00             	ret    $0x4
5845f5:	cc                   	int3
5845f6:	cc                   	int3
5845f7:	cc                   	int3
5845f8:	cc                   	int3
5845f9:	cc                   	int3
5845fa:	cc                   	int3
5845fb:	cc                   	int3
5845fc:	cc                   	int3
5845fd:	cc                   	int3
5845fe:	cc                   	int3
5845ff:	cc                   	int3
584600:	55                   	push   %ebp
584601:	8b ec                	mov    %esp,%ebp
584603:	6a ff                	push   $0xffffffff
584605:	68 10 d2 65 00       	push   $0x65d210
58460a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
584610:	50                   	push   %eax
584611:	83 ec 4c             	sub    $0x4c,%esp
584614:	a1 d4 89 72 00       	mov    0x7289d4,%eax
584619:	33 c5                	xor    %ebp,%eax
58461b:	89 45 f0             	mov    %eax,-0x10(%ebp)
58461e:	53                   	push   %ebx
58461f:	56                   	push   %esi
584620:	57                   	push   %edi
584621:	50                   	push   %eax
584622:	8d 45 f4             	lea    -0xc(%ebp),%eax
584625:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
58462b:	8b f9                	mov    %ecx,%edi
58462d:	8b 75 08             	mov    0x8(%ebp),%esi
584630:	8d 4d a8             	lea    -0x58(%ebp),%ecx
584633:	6a 06                	push   $0x6
584635:	e8 86 b7 ff ff       	call   0x57fdc0
58463a:	8b 47 0c             	mov    0xc(%edi),%eax
58463d:	03 47 10             	add    0x10(%edi),%eax
584640:	8b 4f 08             	mov    0x8(%edi),%ecx
584643:	89 45 d4             	mov    %eax,-0x2c(%ebp)
584646:	49                   	dec    %ecx
584647:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
58464e:	8d 50 ff             	lea    -0x1(%eax),%edx
584651:	8b c2                	mov    %edx,%eax
584653:	83 e2 03             	and    $0x3,%edx
584656:	c1 e8 02             	shr    $0x2,%eax
584659:	23 c8                	and    %eax,%ecx
58465b:	8b 47 04             	mov    0x4(%edi),%eax
58465e:	8b 04 88             	mov    (%eax,%ecx,4),%eax
584661:	8d 4d a8             	lea    -0x58(%ebp),%ecx
584664:	51                   	push   %ecx
584665:	8b 0c 90             	mov    (%eax,%edx,4),%ecx
584668:	e8 03 da ff ff       	call   0x582070
58466d:	8b 47 0c             	mov    0xc(%edi),%eax
584670:	03 47 10             	add    0x10(%edi),%eax
584673:	8b 4f 08             	mov    0x8(%edi),%ecx
584676:	89 45 d4             	mov    %eax,-0x2c(%ebp)
584679:	49                   	dec    %ecx
58467a:	8d 50 ff             	lea    -0x1(%eax),%edx
58467d:	8b c2                	mov    %edx,%eax
58467f:	83 e2 03             	and    $0x3,%edx
584682:	c1 e8 02             	shr    $0x2,%eax
584685:	23 c8                	and    %eax,%ecx
584687:	8b 47 04             	mov    0x4(%edi),%eax
58468a:	8b 04 88             	mov    (%eax,%ecx,4),%eax
58468d:	8b 0c 90             	mov    (%eax,%edx,4),%ecx
584690:	8b 46 04             	mov    0x4(%esi),%eax
584693:	2b 47 40             	sub    0x40(%edi),%eax
584696:	50                   	push   %eax
584697:	e8 d4 d8 ff ff       	call   0x581f70
58469c:	8b 47 48             	mov    0x48(%edi),%eax
58469f:	8b 77 44             	mov    0x44(%edi),%esi
5846a2:	3b c6                	cmp    %esi,%eax
5846a4:	74 3f                	je     0x5846e5
5846a6:	8b d0                	mov    %eax,%edx
5846a8:	8a 0a                	mov    (%edx),%cl
5846aa:	80 f9 20             	cmp    $0x20,%cl
5846ad:	74 0f                	je     0x5846be
5846af:	80 f9 09             	cmp    $0x9,%cl
5846b2:	74 0a                	je     0x5846be
5846b4:	80 f9 0d             	cmp    $0xd,%cl
5846b7:	74 05                	je     0x5846be
5846b9:	80 f9 0a             	cmp    $0xa,%cl
5846bc:	75 0c                	jne    0x5846ca
5846be:	8d 42 01             	lea    0x1(%edx),%eax
5846c1:	89 47 48             	mov    %eax,0x48(%edi)
5846c4:	8b d0                	mov    %eax,%edx
5846c6:	3b c6                	cmp    %esi,%eax
5846c8:	75 de                	jne    0x5846a8
5846ca:	3b c6                	cmp    %esi,%eax
5846cc:	74 17                	je     0x5846e5
5846ce:	80 38 5d             	cmpb   $0x5d,(%eax)
5846d1:	75 12                	jne    0x5846e5
5846d3:	8d 45 c0             	lea    -0x40(%ebp),%eax
5846d6:	8b cf                	mov    %edi,%ecx
5846d8:	50                   	push   %eax
5846d9:	e8 b2 08 00 00       	call   0x584f90
5846de:	b3 01                	mov    $0x1,%bl
5846e0:	e9 96 01 00 00       	jmp    0x58487b
5846e5:	33 db                	xor    %ebx,%ebx
5846e7:	8b 47 0c             	mov    0xc(%edi),%eax
5846ea:	03 47 10             	add    0x10(%edi),%eax
5846ed:	8b 4f 08             	mov    0x8(%edi),%ecx
5846f0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5846f3:	49                   	dec    %ecx
5846f4:	53                   	push   %ebx
5846f5:	8d 50 ff             	lea    -0x1(%eax),%edx
5846f8:	8b c2                	mov    %edx,%eax
5846fa:	83 e2 03             	and    $0x3,%edx
5846fd:	c1 e8 02             	shr    $0x2,%eax
584700:	23 c8                	and    %eax,%ecx
584702:	8b 47 04             	mov    0x4(%edi),%eax
584705:	8b 04 88             	mov    (%eax,%ecx,4),%eax
584708:	8b 0c 90             	mov    (%eax,%edx,4),%ecx
58470b:	e8 80 bb ff ff       	call   0x580290
584710:	8b 57 0c             	mov    0xc(%edi),%edx
584713:	43                   	inc    %ebx
584714:	89 45 cc             	mov    %eax,-0x34(%ebp)
584717:	8b 47 10             	mov    0x10(%edi),%eax
58471a:	8b f0                	mov    %eax,%esi
58471c:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
58471f:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
584722:	f6 c1 03             	test   $0x3,%cl
584725:	75 1a                	jne    0x584741
584727:	83 c0 04             	add    $0x4,%eax
58472a:	c1 e8 02             	shr    $0x2,%eax
58472d:	39 47 08             	cmp    %eax,0x8(%edi)
584730:	77 0f                	ja     0x584741
584732:	6a 01                	push   $0x1
584734:	8b cf                	mov    %edi,%ecx
584736:	e8 c5 e3 ff ff       	call   0x582b00
58473b:	8b 57 0c             	mov    0xc(%edi),%edx
58473e:	8b 77 10             	mov    0x10(%edi),%esi
584741:	8b 4f 08             	mov    0x8(%edi),%ecx
584744:	8d 04 8d ff ff ff ff 	lea    -0x1(,%ecx,4),%eax
58474b:	49                   	dec    %ecx
58474c:	23 c2                	and    %edx,%eax
58474e:	03 f0                	add    %eax,%esi
584750:	89 47 0c             	mov    %eax,0xc(%edi)
584753:	8b c6                	mov    %esi,%eax
584755:	c1 e8 02             	shr    $0x2,%eax
584758:	23 c8                	and    %eax,%ecx
58475a:	8b 47 04             	mov    0x4(%edi),%eax
58475d:	8d 1c 8d 00 00 00 00 	lea    0x0(,%ecx,4),%ebx
584764:	83 3c 03 00          	cmpl   $0x0,(%ebx,%eax,1)
584768:	75 13                	jne    0x58477d
58476a:	6a 10                	push   $0x10
58476c:	e8 d1 c8 05 00       	call   0x5e1042
584771:	8b 4f 04             	mov    0x4(%edi),%ecx
584774:	83 c4 04             	add    $0x4,%esp
584777:	89 04 0b             	mov    %eax,(%ebx,%ecx,1)
58477a:	8b 47 04             	mov    0x4(%edi),%eax
58477d:	8b 04 03             	mov    (%ebx,%eax,1),%eax
584780:	83 e6 03             	and    $0x3,%esi
584783:	8b 4d cc             	mov    -0x34(%ebp),%ecx
584786:	89 0c b0             	mov    %ecx,(%eax,%esi,4)
584789:	8b cf                	mov    %edi,%ecx
58478b:	ff 47 10             	incl   0x10(%edi)
58478e:	e8 5d 0b 00 00       	call   0x5852f0