426670:	85 c9                	test   %ecx,%ecx
426672:	0f 45 d0             	cmovne %eax,%edx
426675:	83 c8 ff             	or     $0xffffffff,%eax
426678:	83 c7 10             	add    $0x10,%edi
42667b:	eb d0                	jmp    0x42664d
42667d:	53                   	push   %ebx
42667e:	66 0f d7 d9          	pmovmskb %xmm1,%ebx
426682:	23 d8                	and    %eax,%ebx
426684:	d1 e1                	shl    $1,%ecx
426686:	33 c0                	xor    %eax,%eax
426688:	2b c1                	sub    %ecx,%eax
42668a:	23 c8                	and    %eax,%ecx
42668c:	49                   	dec    %ecx
42668d:	23 cb                	and    %ebx,%ecx
42668f:	5b                   	pop    %ebx
426690:	0f bd c1             	bsr    %ecx,%eax
426693:	03 c7                	add    %edi,%eax
426695:	85 c9                	test   %ecx,%ecx
426697:	0f 44 c2             	cmove  %edx,%eax
42669a:	5f                   	pop    %edi
42669b:	c9                   	leave
42669c:	c3                   	ret
42669d:	0f b6 55 0c          	movzbl 0xc(%ebp),%edx
4266a1:	85 d2                	test   %edx,%edx
4266a3:	74 39                	je     0x4266de
4266a5:	33 c0                	xor    %eax,%eax
4266a7:	f7 c7 0f 00 00 00    	test   $0xf,%edi
4266ad:	74 15                	je     0x4266c4
4266af:	0f b6 0f             	movzbl (%edi),%ecx
4266b2:	3b ca                	cmp    %edx,%ecx
4266b4:	0f 44 c7             	cmove  %edi,%eax
4266b7:	85 c9                	test   %ecx,%ecx
4266b9:	74 20                	je     0x4266db
4266bb:	47                   	inc    %edi
4266bc:	f7 c7 0f 00 00 00    	test   $0xf,%edi
4266c2:	75 eb                	jne    0x4266af
4266c4:	66 0f 6e c2          	movd   %edx,%xmm0
4266c8:	83 c7 10             	add    $0x10,%edi
4266cb:	66 0f 3a 63 47 f0 40 	pcmpistri $0x40,-0x10(%edi),%xmm0
4266d2:	8d 4c 0f f0          	lea    -0x10(%edi,%ecx,1),%ecx
4266d6:	0f 42 c1             	cmovb  %ecx,%eax
4266d9:	75 ed                	jne    0x4266c8
4266db:	5f                   	pop    %edi
4266dc:	c9                   	leave
4266dd:	c3                   	ret
4266de:	b8 f0 ff ff ff       	mov    $0xfffffff0,%eax
4266e3:	23 c7                	and    %edi,%eax
4266e5:	66 0f ef c0          	pxor   %xmm0,%xmm0
4266e9:	66 0f 74 00          	pcmpeqb (%eax),%xmm0
4266ed:	b9 0f 00 00 00       	mov    $0xf,%ecx
4266f2:	23 cf                	and    %edi,%ecx
4266f4:	ba ff ff ff ff       	mov    $0xffffffff,%edx
4266f9:	d3 e2                	shl    %cl,%edx
4266fb:	66 0f d7 f8          	pmovmskb %xmm0,%edi
4266ff:	23 fa                	and    %edx,%edi
426701:	75 14                	jne    0x426717
426703:	66 0f ef c0          	pxor   %xmm0,%xmm0
426707:	66 0f 74 40 10       	pcmpeqb 0x10(%eax),%xmm0
42670c:	83 c0 10             	add    $0x10,%eax
42670f:	66 0f d7 f8          	pmovmskb %xmm0,%edi
426713:	85 ff                	test   %edi,%edi
426715:	74 ec                	je     0x426703
426717:	0f bc d7             	bsf    %edi,%edx
42671a:	03 c2                	add    %edx,%eax
42671c:	eb bd                	jmp    0x4266db
42671e:	8b 7d 08             	mov    0x8(%ebp),%edi
426721:	33 c0                	xor    %eax,%eax
426723:	83 c9 ff             	or     $0xffffffff,%ecx
426726:	f2 ae                	repnz scas %es:(%edi),%al
426728:	83 c1 01             	add    $0x1,%ecx
42672b:	f7 d9                	neg    %ecx
42672d:	83 ef 01             	sub    $0x1,%edi
426730:	8a 45 0c             	mov    0xc(%ebp),%al
426733:	fd                   	std
426734:	f2 ae                	repnz scas %es:(%edi),%al
426736:	83 c7 01             	add    $0x1,%edi
426739:	38 07                	cmp    %al,(%edi)
42673b:	74 04                	je     0x426741
42673d:	33 c0                	xor    %eax,%eax
42673f:	eb 02                	jmp    0x426743
426741:	8b c7                	mov    %edi,%eax
426743:	fc                   	cld
426744:	5f                   	pop    %edi
426745:	c9                   	leave
426746:	c3                   	ret
426747:	cc                   	int3
426748:	cc                   	int3
426749:	cc                   	int3
42674a:	cc                   	int3
42674b:	cc                   	int3
42674c:	cc                   	int3
42674d:	cc                   	int3
42674e:	cc                   	int3
42674f:	cc                   	int3
426750:	83 3d 48 96 83 02 01 	cmpl   $0x1,0x2839648
426757:	72 5f                	jb     0x4267b8
426759:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
42675e:	8b d0                	mov    %eax,%edx
426760:	c1 e0 08             	shl    $0x8,%eax
426763:	0b d0                	or     %eax,%edx
426765:	66 0f 6e da          	movd   %edx,%xmm3
426769:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
42676e:	0f 16 db             	movlhps %xmm3,%xmm3
426771:	8b 54 24 04          	mov    0x4(%esp),%edx
426775:	b9 0f 00 00 00       	mov    $0xf,%ecx
42677a:	83 c8 ff             	or     $0xffffffff,%eax
42677d:	23 ca                	and    %edx,%ecx
42677f:	d3 e0                	shl    %cl,%eax
426781:	2b d1                	sub    %ecx,%edx
426783:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
426787:	66 0f ef d2          	pxor   %xmm2,%xmm2
42678b:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
42678f:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
426793:	66 0f eb d1          	por    %xmm1,%xmm2
426797:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
42679b:	23 c8                	and    %eax,%ecx
42679d:	75 08                	jne    0x4267a7
42679f:	83 c8 ff             	or     $0xffffffff,%eax
4267a2:	83 c2 10             	add    $0x10,%edx
4267a5:	eb dc                	jmp    0x426783
4267a7:	0f bc c1             	bsf    %ecx,%eax
4267aa:	03 c2                	add    %edx,%eax
4267ac:	66 0f 7e da          	movd   %xmm3,%edx
4267b0:	33 c9                	xor    %ecx,%ecx
4267b2:	3a 10                	cmp    (%eax),%dl
4267b4:	0f 45 c1             	cmovne %ecx,%eax
4267b7:	c3                   	ret
4267b8:	33 c0                	xor    %eax,%eax
4267ba:	8a 44 24 08          	mov    0x8(%esp),%al
4267be:	53                   	push   %ebx
4267bf:	8b d8                	mov    %eax,%ebx
4267c1:	c1 e0 08             	shl    $0x8,%eax
4267c4:	8b 54 24 08          	mov    0x8(%esp),%edx
4267c8:	f7 c2 03 00 00 00    	test   $0x3,%edx
4267ce:	74 15                	je     0x4267e5
4267d0:	8a 0a                	mov    (%edx),%cl
4267d2:	83 c2 01             	add    $0x1,%edx
4267d5:	3a cb                	cmp    %bl,%cl
4267d7:	74 59                	je     0x426832
4267d9:	84 c9                	test   %cl,%cl
4267db:	74 51                	je     0x42682e
4267dd:	f7 c2 03 00 00 00    	test   $0x3,%edx
4267e3:	75 eb                	jne    0x4267d0
4267e5:	0b d8                	or     %eax,%ebx
4267e7:	57                   	push   %edi
4267e8:	8b c3                	mov    %ebx,%eax
4267ea:	c1 e3 10             	shl    $0x10,%ebx
4267ed:	56                   	push   %esi
4267ee:	0b d8                	or     %eax,%ebx
4267f0:	8b 0a                	mov    (%edx),%ecx
4267f2:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
4267f7:	8b c1                	mov    %ecx,%eax
4267f9:	8b f7                	mov    %edi,%esi
4267fb:	33 cb                	xor    %ebx,%ecx
4267fd:	03 f0                	add    %eax,%esi
4267ff:	03 f9                	add    %ecx,%edi
426801:	83 f1 ff             	xor    $0xffffffff,%ecx
426804:	83 f0 ff             	xor    $0xffffffff,%eax
426807:	33 cf                	xor    %edi,%ecx
426809:	33 c6                	xor    %esi,%eax
42680b:	83 c2 04             	add    $0x4,%edx
42680e:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
426814:	75 21                	jne    0x426837
426816:	25 00 01 01 81       	and    $0x81010100,%eax
42681b:	74 d3                	je     0x4267f0
42681d:	25 00 01 01 01       	and    $0x1010100,%eax
426822:	75 08                	jne    0x42682c
426824:	81 e6 00 00 00 80    	and    $0x80000000,%esi
42682a:	75 c4                	jne    0x4267f0
42682c:	5e                   	pop    %esi
42682d:	5f                   	pop    %edi
42682e:	5b                   	pop    %ebx
42682f:	33 c0                	xor    %eax,%eax
426831:	c3                   	ret
426832:	8d 42 ff             	lea    -0x1(%edx),%eax
426835:	5b                   	pop    %ebx
426836:	c3                   	ret
426837:	8b 42 fc             	mov    -0x4(%edx),%eax
42683a:	3a c3                	cmp    %bl,%al
42683c:	74 36                	je     0x426874
42683e:	84 c0                	test   %al,%al
426840:	74 ea                	je     0x42682c
426842:	3a e3                	cmp    %bl,%ah
426844:	74 27                	je     0x42686d
426846:	84 e4                	test   %ah,%ah
426848:	74 e2                	je     0x42682c
42684a:	c1 e8 10             	shr    $0x10,%eax
42684d:	3a c3                	cmp    %bl,%al
42684f:	74 15                	je     0x426866
426851:	84 c0                	test   %al,%al
426853:	74 d7                	je     0x42682c
426855:	3a e3                	cmp    %bl,%ah
426857:	74 06                	je     0x42685f
426859:	84 e4                	test   %ah,%ah
42685b:	74 cf                	je     0x42682c
42685d:	eb 91                	jmp    0x4267f0
42685f:	5e                   	pop    %esi
426860:	5f                   	pop    %edi
426861:	8d 42 ff             	lea    -0x1(%edx),%eax
426864:	5b                   	pop    %ebx
426865:	c3                   	ret
426866:	8d 42 fe             	lea    -0x2(%edx),%eax
426869:	5e                   	pop    %esi
42686a:	5f                   	pop    %edi
42686b:	5b                   	pop    %ebx
42686c:	c3                   	ret
42686d:	8d 42 fd             	lea    -0x3(%edx),%eax
426870:	5e                   	pop    %esi
426871:	5f                   	pop    %edi
426872:	5b                   	pop    %ebx
426873:	c3                   	ret
426874:	8d 42 fc             	lea    -0x4(%edx),%eax
426877:	5e                   	pop    %esi
426878:	5f                   	pop    %edi
426879:	5b                   	pop    %ebx
42687a:	c3                   	ret
42687b:	53                   	push   %ebx
42687c:	8b dc                	mov    %esp,%ebx
42687e:	51                   	push   %ecx
42687f:	51                   	push   %ecx
426880:	83 e4 f0             	and    $0xfffffff0,%esp
426883:	83 c4 04             	add    $0x4,%esp
426886:	55                   	push   %ebp
426887:	8b 6b 04             	mov    0x4(%ebx),%ebp
42688a:	89 6c 24 04          	mov    %ebp,0x4(%esp)
42688e:	8b ec                	mov    %esp,%ebp
426890:	8b 4b 08             	mov    0x8(%ebx),%ecx
426893:	83 ec 20             	sub    $0x20,%esp
426896:	83 3d 48 96 83 02 01 	cmpl   $0x1,0x2839648
42689d:	66 8b 53 0c          	mov    0xc(%ebx),%dx
4268a1:	7c 46                	jl     0x4268e9
4268a3:	0f b7 c2             	movzwl %dx,%eax
4268a6:	66 0f 6e c0          	movd   %eax,%xmm0
4268aa:	f2 0f 70 c0 00       	pshuflw $0x0,%xmm0,%xmm0
4268af:	66 0f 70 d0 00       	pshufd $0x0,%xmm0,%xmm2
4268b4:	8b c1                	mov    %ecx,%eax
4268b6:	25 ff 0f 00 00       	and    $0xfff,%eax
4268bb:	3d f0 0f 00 00       	cmp    $0xff0,%eax
4268c0:	77 3c                	ja     0x4268fe
4268c2:	0f 10 01             	movups (%ecx),%xmm0
4268c5:	66 0f ef c9          	pxor   %xmm1,%xmm1
4268c9:	66 0f 75 c8          	pcmpeqw %xmm0,%xmm1
4268cd:	66 0f 75 c2          	pcmpeqw %xmm2,%xmm0
4268d1:	66 0f eb c8          	por    %xmm0,%xmm1
4268d5:	66 0f d7 c1          	pmovmskb %xmm1,%eax
4268d9:	85 c0                	test   %eax,%eax
4268db:	75 35                	jne    0x426912
4268dd:	6a 10                	push   $0x10
4268df:	eb 2c                	jmp    0x42690d
4268e1:	66 3b c2             	cmp    %dx,%ax
4268e4:	74 0b                	je     0x4268f1
4268e6:	83 c1 02             	add    $0x2,%ecx
4268e9:	0f b7 01             	movzwl (%ecx),%eax
4268ec:	66 85 c0             	test   %ax,%ax
4268ef:	75 f0                	jne    0x4268e1
4268f1:	33 c0                	xor    %eax,%eax
4268f3:	66 39 11             	cmp    %dx,(%ecx)
4268f6:	0f 95 c0             	setne  %al
4268f9:	48                   	dec    %eax
4268fa:	23 c1                	and    %ecx,%eax
4268fc:	eb 24                	jmp    0x426922
4268fe:	0f b7 01             	movzwl (%ecx),%eax
426901:	66 3b c2             	cmp    %dx,%ax
426904:	74 1a                	je     0x426920
426906:	66 85 c0             	test   %ax,%ax
426909:	74 11                	je     0x42691c
42690b:	6a 02                	push   $0x2
42690d:	58                   	pop    %eax
42690e:	03 c8                	add    %eax,%ecx
426910:	eb a2                	jmp    0x4268b4
426912:	0f bc c0             	bsf    %eax,%eax
426915:	89 45 fc             	mov    %eax,-0x4(%ebp)
426918:	03 c8                	add    %eax,%ecx
42691a:	eb d5                	jmp    0x4268f1
42691c:	33 c0                	xor    %eax,%eax
42691e:	eb 02                	jmp    0x426922
426920:	8b c1                	mov    %ecx,%eax
426922:	8b e5                	mov    %ebp,%esp
426924:	5d                   	pop    %ebp
426925:	8b e3                	mov    %ebx,%esp
426927:	5b                   	pop    %ebx
426928:	c3                   	ret
426929:	8d 4d bc             	lea    -0x44(%ebp),%ecx
42692c:	e9 04 c8 fd ff       	jmp    0x403135
426931:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
426934:	e9 b9 c7 fd ff       	jmp    0x4030f2
426939:	b8 48 7a 43 00       	mov    $0x437a48,%eax
42693e:	e9 e1 1a fe ff       	jmp    0x408424
426943:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
426946:	e9 ea c7 fd ff       	jmp    0x403135
42694b:	b8 a8 7a 43 00       	mov    $0x437aa8,%eax
426950:	e9 cf 1a fe ff       	jmp    0x408424
426955:	8d 4d ec             	lea    -0x14(%ebp),%ecx
426958:	e9 0e ee fd ff       	jmp    0x40576b
42695d:	b8 d4 7a 43 00       	mov    $0x437ad4,%eax
426962:	e9 bd 1a fe ff       	jmp    0x408424
426967:	8b 45 f0             	mov    -0x10(%ebp),%eax
42696a:	83 e0 01             	and    $0x1,%eax
42696d:	0f 84 0f 00 00 00    	je     0x426982
426973:	83 65 f0 fe          	andl   $0xfffffffe,-0x10(%ebp)
426977:	8b 4d ec             	mov    -0x14(%ebp),%ecx
42697a:	83 c1 20             	add    $0x20,%ecx
42697d:	e9 2f c5 fd ff       	jmp    0x402eb1
426982:	c3                   	ret
426983:	8b 4d ec             	mov    -0x14(%ebp),%ecx
426986:	83 c1 18             	add    $0x18,%ecx
426989:	e9 5c c5 fd ff       	jmp    0x402eea
42698e:	b8 80 79 43 00       	mov    $0x437980,%eax
426993:	e9 8c 1a fe ff       	jmp    0x408424
426998:	8b 45 f0             	mov    -0x10(%ebp),%eax
42699b:	83 e0 01             	and    $0x1,%eax
42699e:	0f 84 0f 00 00 00    	je     0x4269b3
4269a4:	83 65 f0 fe          	andl   $0xfffffffe,-0x10(%ebp)
4269a8:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4269ab:	83 c1 18             	add    $0x18,%ecx
4269ae:	e9 fe c4 fd ff       	jmp    0x402eb1
4269b3:	c3                   	ret
4269b4:	b8 9c 78 43 00       	mov    $0x43789c,%eax
4269b9:	e9 66 1a fe ff       	jmp    0x408424
4269be:	8b 45 f0             	mov    -0x10(%ebp),%eax
4269c1:	83 e0 01             	and    $0x1,%eax
4269c4:	0f 84 0f 00 00 00    	je     0x4269d9
4269ca:	83 65 f0 fe          	andl   $0xfffffffe,-0x10(%ebp)
4269ce:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4269d1:	83 c1 08             	add    $0x8,%ecx
4269d4:	e9 d8 c4 fd ff       	jmp    0x402eb1
4269d9:	c3                   	ret
4269da:	b8 c8 78 43 00       	mov    $0x4378c8,%eax
4269df:	e9 40 1a fe ff       	jmp    0x408424
4269e4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4269e7:	e9 b1 c4 fd ff       	jmp    0x402e9d
4269ec:	b8 f0 75 43 00       	mov    $0x4375f0,%eax
4269f1:	e9 2e 1a fe ff       	jmp    0x408424
4269f6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4269f9:	e9 9f c4 fd ff       	jmp    0x402e9d
4269fe:	b8 1c 76 43 00       	mov    $0x43761c,%eax
426a03:	e9 1c 1a fe ff       	jmp    0x408424
426a08:	8b 4d f0             	mov    -0x10(%ebp),%ecx
426a0b:	e9 12 c5 fd ff       	jmp    0x402f22
426a10:	b8 e0 79 43 00       	mov    $0x4379e0,%eax
426a15:	e9 0a 1a fe ff       	jmp    0x408424
426a1a:	8b 45 f0             	mov    -0x10(%ebp),%eax
426a1d:	83 e0 01             	and    $0x1,%eax
426a20:	0f 84 0f 00 00 00    	je     0x426a35
426a26:	83 65 f0 fe          	andl   $0xfffffffe,-0x10(%ebp)
426a2a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
426a2d:	83 c1 68             	add    $0x68,%ecx
426a30:	e9 7c c4 fd ff       	jmp    0x402eb1
426a35:	c3                   	ret
426a36:	8b 4d ec             	mov    -0x14(%ebp),%ecx