5d34bf:	0b d0                	or     %eax,%edx
5d34c1:	66 0f 6e da          	movd   %edx,%xmm3
5d34c5:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
5d34ca:	0f 16 db             	movlhps %xmm3,%xmm3
5d34cd:	b9 0f 00 00 00       	mov    $0xf,%ecx
5d34d2:	23 cf                	and    %edi,%ecx
5d34d4:	83 c8 ff             	or     $0xffffffff,%eax
5d34d7:	d3 e0                	shl    %cl,%eax
5d34d9:	2b f9                	sub    %ecx,%edi
5d34db:	33 d2                	xor    %edx,%edx
5d34dd:	f3 0f 6f 0f          	movdqu (%edi),%xmm1
5d34e1:	66 0f ef d2          	pxor   %xmm2,%xmm2
5d34e5:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
5d34e9:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
5d34ed:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
5d34f1:	23 c8                	and    %eax,%ecx
5d34f3:	75 18                	jne    0x5d350d
5d34f5:	66 0f d7 c9          	pmovmskb %xmm1,%ecx
5d34f9:	23 c8                	and    %eax,%ecx
5d34fb:	0f bd c1             	bsr    %ecx,%eax
5d34fe:	03 c7                	add    %edi,%eax
5d3500:	85 c9                	test   %ecx,%ecx
5d3502:	0f 45 d0             	cmovne %eax,%edx
5d3505:	83 c8 ff             	or     $0xffffffff,%eax
5d3508:	83 c7 10             	add    $0x10,%edi
5d350b:	eb d0                	jmp    0x5d34dd
5d350d:	53                   	push   %ebx
5d350e:	66 0f d7 d9          	pmovmskb %xmm1,%ebx
5d3512:	23 d8                	and    %eax,%ebx
5d3514:	d1 e1                	shl    $1,%ecx
5d3516:	33 c0                	xor    %eax,%eax
5d3518:	2b c1                	sub    %ecx,%eax
5d351a:	23 c8                	and    %eax,%ecx
5d351c:	49                   	dec    %ecx
5d351d:	23 cb                	and    %ebx,%ecx
5d351f:	5b                   	pop    %ebx
5d3520:	0f bd c1             	bsr    %ecx,%eax
5d3523:	03 c7                	add    %edi,%eax
5d3525:	85 c9                	test   %ecx,%ecx
5d3527:	0f 44 c2             	cmove  %edx,%eax
5d352a:	5f                   	pop    %edi
5d352b:	c9                   	leave
5d352c:	c3                   	ret
5d352d:	0f b6 55 0c          	movzbl 0xc(%ebp),%edx
5d3531:	85 d2                	test   %edx,%edx
5d3533:	74 39                	je     0x5d356e
5d3535:	33 c0                	xor    %eax,%eax
5d3537:	f7 c7 0f 00 00 00    	test   $0xf,%edi
5d353d:	74 15                	je     0x5d3554
5d353f:	0f b6 0f             	movzbl (%edi),%ecx
5d3542:	3b ca                	cmp    %edx,%ecx
5d3544:	0f 44 c7             	cmove  %edi,%eax
5d3547:	85 c9                	test   %ecx,%ecx
5d3549:	74 20                	je     0x5d356b
5d354b:	47                   	inc    %edi
5d354c:	f7 c7 0f 00 00 00    	test   $0xf,%edi
5d3552:	75 eb                	jne    0x5d353f
5d3554:	66 0f 6e c2          	movd   %edx,%xmm0
5d3558:	83 c7 10             	add    $0x10,%edi
5d355b:	66 0f 3a 63 47 f0 40 	pcmpistri $0x40,-0x10(%edi),%xmm0
5d3562:	8d 4c 39 f0          	lea    -0x10(%ecx,%edi,1),%ecx
5d3566:	0f 42 c1             	cmovb  %ecx,%eax
5d3569:	75 ed                	jne    0x5d3558
5d356b:	5f                   	pop    %edi
5d356c:	c9                   	leave
5d356d:	c3                   	ret
5d356e:	b8 f0 ff ff ff       	mov    $0xfffffff0,%eax
5d3573:	23 c7                	and    %edi,%eax
5d3575:	66 0f ef c0          	pxor   %xmm0,%xmm0
5d3579:	66 0f 74 00          	pcmpeqb (%eax),%xmm0
5d357d:	b9 0f 00 00 00       	mov    $0xf,%ecx
5d3582:	23 cf                	and    %edi,%ecx
5d3584:	ba ff ff ff ff       	mov    $0xffffffff,%edx
5d3589:	d3 e2                	shl    %cl,%edx
5d358b:	66 0f d7 f8          	pmovmskb %xmm0,%edi
5d358f:	23 fa                	and    %edx,%edi
5d3591:	75 14                	jne    0x5d35a7
5d3593:	66 0f ef c0          	pxor   %xmm0,%xmm0
5d3597:	66 0f 74 40 10       	pcmpeqb 0x10(%eax),%xmm0
5d359c:	83 c0 10             	add    $0x10,%eax
5d359f:	66 0f d7 f8          	pmovmskb %xmm0,%edi
5d35a3:	85 ff                	test   %edi,%edi
5d35a5:	74 ec                	je     0x5d3593
5d35a7:	0f bc d7             	bsf    %edi,%edx
5d35aa:	03 c2                	add    %edx,%eax
5d35ac:	eb bd                	jmp    0x5d356b
5d35ae:	8b 7d 08             	mov    0x8(%ebp),%edi
5d35b1:	33 c0                	xor    %eax,%eax
5d35b3:	83 c9 ff             	or     $0xffffffff,%ecx
5d35b6:	f2 ae                	repnz scas %es:(%edi),%al
5d35b8:	83 c1 01             	add    $0x1,%ecx
5d35bb:	f7 d9                	neg    %ecx
5d35bd:	83 ef 01             	sub    $0x1,%edi
5d35c0:	8a 45 0c             	mov    0xc(%ebp),%al
5d35c3:	fd                   	std
5d35c4:	f2 ae                	repnz scas %es:(%edi),%al
5d35c6:	83 c7 01             	add    $0x1,%edi
5d35c9:	38 07                	cmp    %al,(%edi)
5d35cb:	74 04                	je     0x5d35d1
5d35cd:	33 c0                	xor    %eax,%eax
5d35cf:	eb 02                	jmp    0x5d35d3
5d35d1:	8b c7                	mov    %edi,%eax
5d35d3:	fc                   	cld
5d35d4:	5f                   	pop    %edi
5d35d5:	c9                   	leave
5d35d6:	c3                   	ret
5d35d7:	cc                   	int3
5d35d8:	cc                   	int3
5d35d9:	cc                   	int3
5d35da:	cc                   	int3
5d35db:	cc                   	int3
5d35dc:	cc                   	int3
5d35dd:	cc                   	int3
5d35de:	cc                   	int3
5d35df:	cc                   	int3
5d35e0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5d35e4:	8b 44 24 04          	mov    0x4(%esp),%eax
5d35e8:	57                   	push   %edi
5d35e9:	53                   	push   %ebx
5d35ea:	56                   	push   %esi
5d35eb:	83 3d 58 6b 71 00 01 	cmpl   $0x1,0x716b58
5d35f2:	0f 82 d2 01 00 00    	jb     0x5d37ca
5d35f8:	0f 87 01 01 00 00    	ja     0x5d36ff
5d35fe:	0f b6 11             	movzbl (%ecx),%edx
5d3601:	8b da                	mov    %edx,%ebx
5d3603:	c1 e2 08             	shl    $0x8,%edx
5d3606:	0b d3                	or     %ebx,%edx
5d3608:	0f 84 ed 00 00 00    	je     0x5d36fb
5d360e:	66 0f 6e da          	movd   %edx,%xmm3
5d3612:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
5d3617:	0f 16 db             	movlhps %xmm3,%xmm3
5d361a:	66 0f ef c0          	pxor   %xmm0,%xmm0
5d361e:	8b f1                	mov    %ecx,%esi
5d3620:	83 cf ff             	or     $0xffffffff,%edi
5d3623:	0f b6 19             	movzbl (%ecx),%ebx
5d3626:	83 c1 01             	add    $0x1,%ecx
5d3629:	85 db                	test   %ebx,%ebx
5d362b:	74 1d                	je     0x5d364a
5d362d:	f7 c1 0f 00 00 00    	test   $0xf,%ecx
5d3633:	75 ee                	jne    0x5d3623
5d3635:	66 0f 6f 11          	movdqa (%ecx),%xmm2
5d3639:	66 0f 74 d0          	pcmpeqb %xmm0,%xmm2
5d363d:	66 0f d7 da          	pmovmskb %xmm2,%ebx
5d3641:	85 db                	test   %ebx,%ebx
5d3643:	75 05                	jne    0x5d364a
5d3645:	bf 0f 00 00 00       	mov    $0xf,%edi
5d364a:	66 0f 7e da          	movd   %xmm3,%edx
5d364e:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d3653:	23 d8                	and    %eax,%ebx
5d3655:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d365b:	77 27                	ja     0x5d3684
5d365d:	f3 0f 6f 08          	movdqu (%eax),%xmm1
5d3661:	66 0f ef d2          	pxor   %xmm2,%xmm2
5d3665:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
5d3669:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
5d366d:	66 0f eb ca          	por    %xmm2,%xmm1
5d3671:	66 0f d7 d9          	pmovmskb %xmm1,%ebx
5d3675:	83 c0 10             	add    $0x10,%eax
5d3678:	85 db                	test   %ebx,%ebx
5d367a:	74 d2                	je     0x5d364e
5d367c:	0f bc db             	bsf    %ebx,%ebx
5d367f:	83 e8 10             	sub    $0x10,%eax
5d3682:	03 c3                	add    %ebx,%eax
5d3684:	0f b6 18             	movzbl (%eax),%ebx
5d3687:	85 db                	test   %ebx,%ebx
5d3689:	0f 84 6a 00 00 00    	je     0x5d36f9
5d368f:	83 c0 01             	add    $0x1,%eax
5d3692:	3a d3                	cmp    %bl,%dl
5d3694:	75 b8                	jne    0x5d364e
5d3696:	8b d0                	mov    %eax,%edx
5d3698:	8d 4e 01             	lea    0x1(%esi),%ecx
5d369b:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d36a0:	85 cf                	test   %ecx,%edi
5d36a2:	75 39                	jne    0x5d36dd
5d36a4:	23 da                	and    %edx,%ebx
5d36a6:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d36ac:	77 2f                	ja     0x5d36dd
5d36ae:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
5d36b2:	66 0f 6f 11          	movdqa (%ecx),%xmm2
5d36b6:	66 0f 74 ca          	pcmpeqb %xmm2,%xmm1
5d36ba:	66 0f 74 d0          	pcmpeqb %xmm0,%xmm2
5d36be:	66 0f 74 c8          	pcmpeqb %xmm0,%xmm1
5d36c2:	66 0f eb d1          	por    %xmm1,%xmm2
5d36c6:	66 0f d7 da          	pmovmskb %xmm2,%ebx
5d36ca:	85 db                	test   %ebx,%ebx
5d36cc:	75 08                	jne    0x5d36d6
5d36ce:	83 c2 10             	add    $0x10,%edx
5d36d1:	83 c1 10             	add    $0x10,%ecx
5d36d4:	eb c5                	jmp    0x5d369b
5d36d6:	0f bc db             	bsf    %ebx,%ebx
5d36d9:	03 d3                	add    %ebx,%edx
5d36db:	03 cb                	add    %ebx,%ecx
5d36dd:	0f b6 19             	movzbl (%ecx),%ebx
5d36e0:	85 db                	test   %ebx,%ebx
5d36e2:	74 10                	je     0x5d36f4
5d36e4:	3a 1a                	cmp    (%edx),%bl
5d36e6:	0f 85 5e ff ff ff    	jne    0x5d364a
5d36ec:	83 c2 01             	add    $0x1,%edx
5d36ef:	83 c1 01             	add    $0x1,%ecx
5d36f2:	eb a7                	jmp    0x5d369b
5d36f4:	48                   	dec    %eax
5d36f5:	5e                   	pop    %esi
5d36f6:	5b                   	pop    %ebx
5d36f7:	5f                   	pop    %edi
5d36f8:	c3                   	ret
5d36f9:	33 c0                	xor    %eax,%eax
5d36fb:	5e                   	pop    %esi
5d36fc:	5b                   	pop    %ebx
5d36fd:	5f                   	pop    %edi
5d36fe:	c3                   	ret
5d36ff:	80 39 00             	cmpb   $0x0,(%ecx)
5d3702:	74 f7                	je     0x5d36fb
5d3704:	8b f9                	mov    %ecx,%edi
5d3706:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d370b:	23 d9                	and    %ecx,%ebx
5d370d:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d3713:	77 06                	ja     0x5d371b
5d3715:	f3 0f 6f 01          	movdqu (%ecx),%xmm0
5d3719:	eb 22                	jmp    0x5d373d
5d371b:	bb 0f 00 00 00       	mov    $0xf,%ebx
5d3720:	0f b6 31             	movzbl (%ecx),%esi
5d3723:	83 c1 01             	add    $0x1,%ecx
5d3726:	66 0f 3a 20 c6 0f    	pinsrb $0xf,%esi,%xmm0
5d372c:	66 0f 73 d8 01       	psrldq $0x1,%xmm0
5d3731:	4b                   	dec    %ebx
5d3732:	74 09                	je     0x5d373d
5d3734:	85 f6                	test   %esi,%esi
5d3736:	74 ee                	je     0x5d3726
5d3738:	eb e6                	jmp    0x5d3720
5d373a:	83 c0 01             	add    $0x1,%eax
5d373d:	66 0f 7e c2          	movd   %xmm0,%edx
5d3741:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d3746:	23 d8                	and    %eax,%ebx
5d3748:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d374e:	76 10                	jbe    0x5d3760
5d3750:	0f b6 18             	movzbl (%eax),%ebx
5d3753:	85 db                	test   %ebx,%ebx
5d3755:	74 a2                	je     0x5d36f9
5d3757:	3a d3                	cmp    %bl,%dl
5d3759:	74 18                	je     0x5d3773
5d375b:	83 c0 01             	add    $0x1,%eax
5d375e:	eb e1                	jmp    0x5d3741
5d3760:	83 c0 10             	add    $0x10,%eax
5d3763:	66 0f 3a 63 40 f0 0c 	pcmpistri $0xc,-0x10(%eax),%xmm0
5d376a:	77 d5                	ja     0x5d3741
5d376c:	73 8b                	jae    0x5d36f9
5d376e:	83 e8 10             	sub    $0x10,%eax
5d3771:	03 c1                	add    %ecx,%eax
5d3773:	8b d7                	mov    %edi,%edx
5d3775:	8b f0                	mov    %eax,%esi
5d3777:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d377c:	23 de                	and    %esi,%ebx
5d377e:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d3784:	77 29                	ja     0x5d37af
5d3786:	bb ff 0f 00 00       	mov    $0xfff,%ebx
5d378b:	23 da                	and    %edx,%ebx
5d378d:	81 fb f0 0f 00 00    	cmp    $0xff0,%ebx
5d3793:	77 1a                	ja     0x5d37af
5d3795:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
5d3799:	83 c6 10             	add    $0x10,%esi
5d379c:	83 c2 10             	add    $0x10,%edx
5d379f:	66 0f 3a 63 4e f0 0c 	pcmpistri $0xc,-0x10(%esi),%xmm1
5d37a6:	71 92                	jno    0x5d373a
5d37a8:	79 cd                	jns    0x5d3777
5d37aa:	e9 4c ff ff ff       	jmp    0x5d36fb
5d37af:	0f b6 1a             	movzbl (%edx),%ebx
5d37b2:	85 db                	test   %ebx,%ebx
5d37b4:	0f 84 41 ff ff ff    	je     0x5d36fb
5d37ba:	3a 1e                	cmp    (%esi),%bl
5d37bc:	0f 85 78 ff ff ff    	jne    0x5d373a
5d37c2:	83 c6 01             	add    $0x1,%esi
5d37c5:	83 c2 01             	add    $0x1,%edx
5d37c8:	eb ad                	jmp    0x5d3777
5d37ca:	8a 11                	mov    (%ecx),%dl
5d37cc:	8b f8                	mov    %eax,%edi
5d37ce:	84 d2                	test   %dl,%dl
5d37d0:	0f 84 6f 00 00 00    	je     0x5d3845
5d37d6:	8a 71 01             	mov    0x1(%ecx),%dh
5d37d9:	84 f6                	test   %dh,%dh
5d37db:	74 55                	je     0x5d3832
5d37dd:	8b f7                	mov    %edi,%esi
5d37df:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5d37e3:	8a 07                	mov    (%edi),%al
5d37e5:	83 c6 01             	add    $0x1,%esi
5d37e8:	3a c2                	cmp    %dl,%al
5d37ea:	74 17                	je     0x5d3803
5d37ec:	84 c0                	test   %al,%al
5d37ee:	74 0d                	je     0x5d37fd
5d37f0:	8a 06                	mov    (%esi),%al
5d37f2:	83 c6 01             	add    $0x1,%esi
5d37f5:	3a c2                	cmp    %dl,%al
5d37f7:	74 0a                	je     0x5d3803
5d37f9:	84 c0                	test   %al,%al
5d37fb:	75 f3                	jne    0x5d37f0
5d37fd:	5e                   	pop    %esi
5d37fe:	5b                   	pop    %ebx
5d37ff:	5f                   	pop    %edi
5d3800:	33 c0                	xor    %eax,%eax
5d3802:	c3                   	ret
5d3803:	8a 06                	mov    (%esi),%al
5d3805:	83 c6 01             	add    $0x1,%esi
5d3808:	3a c6                	cmp    %dh,%al
5d380a:	75 e9                	jne    0x5d37f5
5d380c:	8d 7e ff             	lea    -0x1(%esi),%edi
5d380f:	8a 61 02             	mov    0x2(%ecx),%ah
5d3812:	84 e4                	test   %ah,%ah
5d3814:	74 28                	je     0x5d383e
5d3816:	8a 06                	mov    (%esi),%al
5d3818:	83 c6 02             	add    $0x2,%esi
5d381b:	3a c4                	cmp    %ah,%al
5d381d:	75 be                	jne    0x5d37dd
5d381f:	8a 41 03             	mov    0x3(%ecx),%al
5d3822:	84 c0                	test   %al,%al
5d3824:	74 18                	je     0x5d383e
5d3826:	8a 66 ff             	mov    -0x1(%esi),%ah
5d3829:	83 c1 02             	add    $0x2,%ecx
5d382c:	3a c4                	cmp    %ah,%al
5d382e:	74 df                	je     0x5d380f
5d3830:	eb ab                	jmp    0x5d37dd
5d3832:	33 c0                	xor    %eax,%eax
5d3834:	5e                   	pop    %esi
5d3835:	5b                   	pop    %ebx
5d3836:	5f                   	pop    %edi
5d3837:	8a c2                	mov    %dl,%al
5d3839:	e9 a0 fb ff ff       	jmp    0x5d33de
5d383e:	8d 47 ff             	lea    -0x1(%edi),%eax
5d3841:	5e                   	pop    %esi
5d3842:	5b                   	pop    %ebx
5d3843:	5f                   	pop    %edi
5d3844:	c3                   	ret
5d3845:	8b c7                	mov    %edi,%eax
5d3847:	5e                   	pop    %esi
5d3848:	5b                   	pop    %ebx
5d3849:	5f                   	pop    %edi
5d384a:	c3                   	ret
5d384b:	55                   	push   %ebp
5d384c:	8b ec                	mov    %esp,%ebp
5d384e:	83 ec 0c             	sub    $0xc,%esp
5d3851:	57                   	push   %edi
5d3852:	8b 7d 0c             	mov    0xc(%ebp),%edi
5d3855:	33 c0                	xor    %eax,%eax
5d3857:	0f b7 0f             	movzwl (%edi),%ecx
5d385a:	0f b7 d1             	movzwl %cx,%edx
5d385d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5d3860:	89 55 fc             	mov    %edx,-0x4(%ebp)
5d3863:	66 3b c1             	cmp    %cx,%ax
5d3866:	75 08                	jne    0x5d3870
5d3868:	8b 45 08             	mov    0x8(%ebp),%eax
5d386b:	e9 46 02 00 00       	jmp    0x5d3ab6
5d3870:	83 3d 58 6b 71 00 01 	cmpl   $0x1,0x716b58