4219b6:	0f b7 03             	movzwl (%ebx),%eax
4219b9:	50                   	push   %eax
4219ba:	e8 6b 14 00 00       	call   0x422e2a
4219bf:	0f b7 f0             	movzwl %ax,%esi
4219c2:	8d 45 ec             	lea    -0x14(%ebp),%eax
4219c5:	50                   	push   %eax
4219c6:	0f b7 07             	movzwl (%edi),%eax
4219c9:	50                   	push   %eax
4219ca:	e8 5b 14 00 00       	call   0x422e2a
4219cf:	83 c4 10             	add    $0x10,%esp
4219d2:	ff 4d 10             	decl   0x10(%ebp)
4219d5:	0f b7 c0             	movzwl %ax,%eax
4219d8:	8d 5b 02             	lea    0x2(%ebx),%ebx
4219db:	8d 7f 02             	lea    0x2(%edi),%edi
4219de:	74 0a                	je     0x4219ea
4219e0:	66 85 f6             	test   %si,%si
4219e3:	74 05                	je     0x4219ea
4219e5:	66 3b f0             	cmp    %ax,%si
4219e8:	74 c8                	je     0x4219b2
4219ea:	0f b7 c0             	movzwl %ax,%eax
4219ed:	0f b7 f6             	movzwl %si,%esi
4219f0:	2b f0                	sub    %eax,%esi
4219f2:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
4219f6:	74 07                	je     0x4219ff
4219f8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4219fb:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
4219ff:	8b c6                	mov    %esi,%eax
421a01:	5f                   	pop    %edi
421a02:	5e                   	pop    %esi
421a03:	5b                   	pop    %ebx
421a04:	c9                   	leave
421a05:	c3                   	ret
421a06:	53                   	push   %ebx
421a07:	8b dc                	mov    %esp,%ebx
421a09:	51                   	push   %ecx
421a0a:	51                   	push   %ecx
421a0b:	83 e4 f0             	and    $0xfffffff0,%esp
421a0e:	83 c4 04             	add    $0x4,%esp
421a11:	55                   	push   %ebp
421a12:	8b 6b 04             	mov    0x4(%ebx),%ebp
421a15:	89 6c 24 04          	mov    %ebp,0x4(%esp)
421a19:	8b ec                	mov    %esp,%ebp
421a1b:	83 ec 28             	sub    $0x28,%esp
421a1e:	56                   	push   %esi
421a1f:	57                   	push   %edi
421a20:	8b 7b 0c             	mov    0xc(%ebx),%edi
421a23:	33 c0                	xor    %eax,%eax
421a25:	0f b7 0f             	movzwl (%edi),%ecx
421a28:	89 4d f8             	mov    %ecx,-0x8(%ebp)
421a2b:	66 3b c1             	cmp    %cx,%ax
421a2e:	75 08                	jne    0x421a38
421a30:	8b 43 08             	mov    0x8(%ebx),%eax
421a33:	e9 5c 02 00 00       	jmp    0x421c94
421a38:	a1 54 01 4c 00       	mov    0x4c0154,%eax
421a3d:	83 f8 01             	cmp    $0x1,%eax
421a40:	0f 8e f5 00 00 00    	jle    0x421b3b
421a46:	8b c7                	mov    %edi,%eax
421a48:	25 ff 0f 00 00       	and    $0xfff,%eax
421a4d:	6a 02                	push   $0x2
421a4f:	5e                   	pop    %esi
421a50:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421a55:	77 06                	ja     0x421a5d
421a57:	f3 0f 6f 07          	movdqu (%edi),%xmm0
421a5b:	eb 29                	jmp    0x421a86
421a5d:	6a 08                	push   $0x8
421a5f:	66 0f ef c0          	pxor   %xmm0,%xmm0
421a63:	0f b7 c9             	movzwl %cx,%ecx
421a66:	5a                   	pop    %edx
421a67:	0f b7 c1             	movzwl %cx,%eax
421a6a:	66 0f 73 d8 02       	psrldq $0x2,%xmm0
421a6f:	66 0f c4 c0 07       	pinsrw $0x7,%eax,%xmm0
421a74:	33 c0                	xor    %eax,%eax
421a76:	66 3b c1             	cmp    %cx,%ax
421a79:	74 05                	je     0x421a80
421a7b:	03 fe                	add    %esi,%edi
421a7d:	0f b7 0f             	movzwl (%edi),%ecx
421a80:	4a                   	dec    %edx
421a81:	75 e4                	jne    0x421a67
421a83:	8b 4d f8             	mov    -0x8(%ebp),%ecx
421a86:	8b 53 08             	mov    0x8(%ebx),%edx
421a89:	8b c2                	mov    %edx,%eax
421a8b:	25 ff 0f 00 00       	and    $0xfff,%eax
421a90:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421a95:	77 64                	ja     0x421afb
421a97:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
421a9b:	66 0f 3a 63 c1 0d    	pcmpistri $0xd,%xmm1,%xmm0
421aa1:	76 08                	jbe    0x421aab
421aa3:	83 c2 10             	add    $0x10,%edx
421aa6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
421aa9:	eb de                	jmp    0x421a89
421aab:	0f 83 e1 01 00 00    	jae    0x421c92
421ab1:	66 0f 3a 63 c1 0d    	pcmpistri $0xd,%xmm1,%xmm0
421ab7:	8d 14 4a             	lea    (%edx,%ecx,2),%edx
421aba:	8b 4b 0c             	mov    0xc(%ebx),%ecx
421abd:	8b fa                	mov    %edx,%edi
421abf:	8b c7                	mov    %edi,%eax
421ac1:	25 ff 0f 00 00       	and    $0xfff,%eax
421ac6:	89 4d fc             	mov    %ecx,-0x4(%ebp)
421ac9:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421ace:	77 45                	ja     0x421b15
421ad0:	8b c1                	mov    %ecx,%eax
421ad2:	25 ff 0f 00 00       	and    $0xfff,%eax
421ad7:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421adc:	77 37                	ja     0x421b15
421ade:	f3 0f 6f 0f          	movdqu (%edi),%xmm1
421ae2:	f3 0f 6f 11          	movdqu (%ecx),%xmm2
421ae6:	66 0f 3a 63 d1 0d    	pcmpistri $0xd,%xmm1,%xmm2
421aec:	71 3f                	jno    0x421b2d
421aee:	78 44                	js     0x421b34
421af0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
421af3:	83 c7 10             	add    $0x10,%edi
421af6:	83 c1 10             	add    $0x10,%ecx
421af9:	eb c4                	jmp    0x421abf
421afb:	0f b7 02             	movzwl (%edx),%eax
421afe:	33 ff                	xor    %edi,%edi
421b00:	66 3b f8             	cmp    %ax,%di
421b03:	0f 84 89 01 00 00    	je     0x421c92
421b09:	66 3b c1             	cmp    %cx,%ax
421b0c:	74 ac                	je     0x421aba
421b0e:	03 d6                	add    %esi,%edx
421b10:	e9 74 ff ff ff       	jmp    0x421a89
421b15:	0f b7 01             	movzwl (%ecx),%eax
421b18:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
421b1c:	66 39 45 fc          	cmp    %ax,-0x4(%ebp)
421b20:	74 12                	je     0x421b34
421b22:	66 39 07             	cmp    %ax,(%edi)
421b25:	75 06                	jne    0x421b2d
421b27:	03 fe                	add    %esi,%edi
421b29:	03 ce                	add    %esi,%ecx
421b2b:	eb 92                	jmp    0x421abf
421b2d:	03 d6                	add    %esi,%edx
421b2f:	e9 72 ff ff ff       	jmp    0x421aa6
421b34:	8b c2                	mov    %edx,%eax
421b36:	e9 59 01 00 00       	jmp    0x421c94
421b3b:	0f 85 ec 00 00 00    	jne    0x421c2d
421b41:	0f b7 c1             	movzwl %cx,%eax
421b44:	8b 4b 08             	mov    0x8(%ebx),%ecx
421b47:	66 0f 6e c0          	movd   %eax,%xmm0
421b4b:	f2 0f 70 c0 00       	pshuflw $0x0,%xmm0,%xmm0
421b50:	6a 02                	push   $0x2
421b52:	66 0f 70 e0 00       	pshufd $0x0,%xmm0,%xmm4
421b57:	66 0f ef db          	pxor   %xmm3,%xmm3
421b5b:	5e                   	pop    %esi
421b5c:	8b c1                	mov    %ecx,%eax
421b5e:	25 ff 0f 00 00       	and    $0xfff,%eax
421b63:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421b68:	77 2c                	ja     0x421b96
421b6a:	f3 0f 6f 09          	movdqu (%ecx),%xmm1
421b6e:	66 0f 6f c3          	movdqa %xmm3,%xmm0
421b72:	66 0f 75 c1          	pcmpeqw %xmm1,%xmm0
421b76:	66 0f 75 cc          	pcmpeqw %xmm4,%xmm1
421b7a:	66 0f eb c1          	por    %xmm1,%xmm0
421b7e:	66 0f d7 c0          	pmovmskb %xmm0,%eax
421b82:	85 c0                	test   %eax,%eax
421b84:	75 05                	jne    0x421b8b
421b86:	83 c1 10             	add    $0x10,%ecx
421b89:	eb d1                	jmp    0x421b5c
421b8b:	0f bc c0             	bsf    %eax,%eax
421b8e:	89 45 f8             	mov    %eax,-0x8(%ebp)
421b91:	d1 e8                	shr    $1,%eax
421b93:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
421b96:	0f b7 01             	movzwl (%ecx),%eax
421b99:	33 d2                	xor    %edx,%edx
421b9b:	66 3b d0             	cmp    %ax,%dx
421b9e:	0f 84 ee 00 00 00    	je     0x421c92
421ba4:	0f b7 17             	movzwl (%edi),%edx
421ba7:	66 3b d0             	cmp    %ax,%dx
421baa:	75 76                	jne    0x421c22
421bac:	8b d1                	mov    %ecx,%edx
421bae:	8b c7                	mov    %edi,%eax
421bb0:	25 ff 0f 00 00       	and    $0xfff,%eax
421bb5:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421bba:	77 4b                	ja     0x421c07
421bbc:	8b c2                	mov    %edx,%eax
421bbe:	25 ff 0f 00 00       	and    $0xfff,%eax
421bc3:	3d f0 0f 00 00       	cmp    $0xff0,%eax
421bc8:	77 3d                	ja     0x421c07
421bca:	f3 0f 6f 07          	movdqu (%edi),%xmm0
421bce:	f3 0f 6f 12          	movdqu (%edx),%xmm2
421bd2:	66 0f 6f cb          	movdqa %xmm3,%xmm1
421bd6:	66 0f 75 c8          	pcmpeqw %xmm0,%xmm1
421bda:	66 0f 75 d0          	pcmpeqw %xmm0,%xmm2
421bde:	66 0f 6f c3          	movdqa %xmm3,%xmm0
421be2:	66 0f 75 c2          	pcmpeqw %xmm2,%xmm0
421be6:	66 0f eb c8          	por    %xmm0,%xmm1
421bea:	66 0f d7 c1          	pmovmskb %xmm1,%eax
421bee:	85 c0                	test   %eax,%eax
421bf0:	75 08                	jne    0x421bfa
421bf2:	83 c2 10             	add    $0x10,%edx
421bf5:	83 c7 10             	add    $0x10,%edi
421bf8:	eb b4                	jmp    0x421bae
421bfa:	0f bc c0             	bsf    %eax,%eax
421bfd:	89 45 f8             	mov    %eax,-0x8(%ebp)
421c00:	83 e0 fe             	and    $0xfffffffe,%eax
421c03:	03 d0                	add    %eax,%edx
421c05:	03 f8                	add    %eax,%edi
421c07:	0f b7 07             	movzwl (%edi),%eax
421c0a:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
421c0e:	66 39 45 f8          	cmp    %ax,-0x8(%ebp)
421c12:	74 15                	je     0x421c29
421c14:	66 39 02             	cmp    %ax,(%edx)
421c17:	75 06                	jne    0x421c1f
421c19:	03 d6                	add    %esi,%edx
421c1b:	03 fe                	add    %esi,%edi
421c1d:	eb 8f                	jmp    0x421bae
421c1f:	8b 7b 0c             	mov    0xc(%ebx),%edi
421c22:	03 ce                	add    %esi,%ecx
421c24:	e9 33 ff ff ff       	jmp    0x421b5c
421c29:	8b c1                	mov    %ecx,%eax
421c2b:	eb 67                	jmp    0x421c94
421c2d:	8b 53 08             	mov    0x8(%ebx),%edx
421c30:	0f b7 02             	movzwl (%edx),%eax
421c33:	66 85 c0             	test   %ax,%ax
421c36:	74 5a                	je     0x421c92
421c38:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
421c3c:	8b c8                	mov    %eax,%ecx
421c3e:	8b c2                	mov    %edx,%eax
421c40:	2b c7                	sub    %edi,%eax
421c42:	6a 02                	push   $0x2
421c44:	89 45 fc             	mov    %eax,-0x4(%ebp)
421c47:	5e                   	pop    %esi
421c48:	66 85 c9             	test   %cx,%cx
421c4b:	74 27                	je     0x421c74
421c4d:	0f b7 0f             	movzwl (%edi),%ecx
421c50:	66 85 c9             	test   %cx,%cx
421c53:	0f 84 db fe ff ff    	je     0x421b34
421c59:	0f b7 0c 38          	movzwl (%eax,%edi,1),%ecx
421c5d:	0f b7 07             	movzwl (%edi),%eax
421c60:	2b c8                	sub    %eax,%ecx
421c62:	8b 45 fc             	mov    -0x4(%ebp),%eax
421c65:	8b 4d f8             	mov    -0x8(%ebp),%ecx
421c68:	75 0d                	jne    0x421c77
421c6a:	03 fe                	add    %esi,%edi
421c6c:	66 39 0c 38          	cmp    %cx,(%eax,%edi,1)
421c70:	75 db                	jne    0x421c4d
421c72:	eb 03                	jmp    0x421c77
421c74:	8b 4d f8             	mov    -0x8(%ebp),%ecx
421c77:	66 39 0f             	cmp    %cx,(%edi)
421c7a:	0f 84 b4 fe ff ff    	je     0x421b34
421c80:	8b 7b 0c             	mov    0xc(%ebx),%edi
421c83:	03 d6                	add    %esi,%edx
421c85:	03 c6                	add    %esi,%eax
421c87:	0f b7 0a             	movzwl (%edx),%ecx
421c8a:	89 45 fc             	mov    %eax,-0x4(%ebp)
421c8d:	66 85 c9             	test   %cx,%cx
421c90:	75 bb                	jne    0x421c4d
421c92:	33 c0                	xor    %eax,%eax
421c94:	5f                   	pop    %edi
421c95:	5e                   	pop    %esi
421c96:	8b e5                	mov    %ebp,%esp
421c98:	5d                   	pop    %ebp
421c99:	8b e3                	mov    %ebx,%esp
421c9b:	5b                   	pop    %ebx
421c9c:	c3                   	ret
421c9d:	55                   	push   %ebp
421c9e:	8b ec                	mov    %esp,%ebp
421ca0:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
421ca4:	74 2d                	je     0x421cd3
421ca6:	ff 75 08             	push   0x8(%ebp)
421ca9:	6a 00                	push   $0x0
421cab:	ff 35 34 09 4c 00    	push   0x4c0934
421cb1:	ff 15 6c d1 48 00    	call   *0x48d16c
421cb7:	85 c0                	test   %eax,%eax
421cb9:	75 18                	jne    0x421cd3
421cbb:	56                   	push   %esi
421cbc:	e8 4d 5f 00 00       	call   0x427c0e
421cc1:	8b f0                	mov    %eax,%esi
421cc3:	ff 15 10 d3 48 00    	call   *0x48d310
421cc9:	50                   	push   %eax
421cca:	e8 52 5f 00 00       	call   0x427c21
421ccf:	59                   	pop    %ecx
421cd0:	89 06                	mov    %eax,(%esi)
421cd2:	5e                   	pop    %esi
421cd3:	5d                   	pop    %ebp
421cd4:	c3                   	ret
421cd5:	55                   	push   %ebp
421cd6:	8b ec                	mov    %esp,%ebp
421cd8:	83 ec 10             	sub    $0x10,%esp
421cdb:	ff 75 0c             	push   0xc(%ebp)
421cde:	8d 4d f0             	lea    -0x10(%ebp),%ecx
421ce1:	e8 39 f2 ff ff       	call   0x420f1f
421ce6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
421ce9:	83 79 74 01          	cmpl   $0x1,0x74(%ecx)
421ced:	7e 15                	jle    0x421d04
421cef:	8d 45 f0             	lea    -0x10(%ebp),%eax
421cf2:	50                   	push   %eax
421cf3:	6a 04                	push   $0x4
421cf5:	ff 75 08             	push   0x8(%ebp)
421cf8:	e8 bf 7f 00 00       	call   0x429cbc
421cfd:	83 c4 0c             	add    $0xc,%esp
421d00:	8b c8                	mov    %eax,%ecx
421d02:	eb 10                	jmp    0x421d14
421d04:	8b 89 90 00 00 00    	mov    0x90(%ecx),%ecx
421d0a:	8b 45 08             	mov    0x8(%ebp),%eax
421d0d:	0f b7 0c 41          	movzwl (%ecx,%eax,2),%ecx
421d11:	83 e1 04             	and    $0x4,%ecx
421d14:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
421d18:	74 07                	je     0x421d21
421d1a:	8b 45 f8             	mov    -0x8(%ebp),%eax
421d1d:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
421d21:	8b c1                	mov    %ecx,%eax
421d23:	c9                   	leave
421d24:	c3                   	ret
421d25:	55                   	push   %ebp
421d26:	8b ec                	mov    %esp,%ebp
421d28:	83 3d 80 01 4c 00 00 	cmpl   $0x0,0x4c0180
421d2f:	75 11                	jne    0x421d42
421d31:	8b 4d 08             	mov    0x8(%ebp),%ecx
421d34:	a1 28 ac 4b 00       	mov    0x4bac28,%eax
421d39:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
421d3d:	83 e0 04             	and    $0x4,%eax
421d40:	5d                   	pop    %ebp
421d41:	c3                   	ret
421d42:	6a 00                	push   $0x0
421d44:	ff 75 08             	push   0x8(%ebp)
421d47:	e8 89 ff ff ff       	call   0x421cd5
421d4c:	59                   	pop    %ecx
421d4d:	59                   	pop    %ecx
421d4e:	5d                   	pop    %ebp
421d4f:	c3                   	ret
421d50:	6a 0c                	push   $0xc
421d52:	68 c8 6a 4b 00       	push   $0x4b6ac8
421d57:	e8 64 4d 00 00       	call   0x426ac0
421d5c:	33 c0                	xor    %eax,%eax
421d5e:	39 45 08             	cmp    %eax,0x8(%ebp)
421d61:	0f 95 c0             	setne  %al
421d64:	85 c0                	test   %eax,%eax
421d66:	75 15                	jne    0x421d7d
421d68:	e8 a1 5e 00 00       	call   0x427c0e
421d6d:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
421d73:	e8 98 50 00 00       	call   0x426e10
421d78:	83 c8 ff             	or     $0xffffffff,%eax
421d7b:	eb 63                	jmp    0x421de0
421d7d:	e8 94 30 00 00       	call   0x424e16
421d82:	83 c0 20             	add    $0x20,%eax
421d85:	50                   	push   %eax
421d86:	6a 01                	push   $0x1
421d88:	e8 ce 30 00 00       	call   0x424e5b
421d8d:	59                   	pop    %ecx
421d8e:	59                   	pop    %ecx
421d8f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
421d93:	e8 7e 30 00 00       	call   0x424e16
421d98:	83 c0 20             	add    $0x20,%eax
421d9b:	50                   	push   %eax
421d9c:	e8 49 6a 00 00       	call   0x4287ea
421da1:	59                   	pop    %ecx
421da2:	8b f0                	mov    %eax,%esi
421da4:	8d 45 0c             	lea    0xc(%ebp),%eax
421da7:	50                   	push   %eax
421da8:	6a 00                	push   $0x0