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
421daa:	ff 75 08             	push   0x8(%ebp)
421dad:	e8 64 30 00 00       	call   0x424e16
421db2:	83 c0 20             	add    $0x20,%eax
421db5:	50                   	push   %eax
421db6:	e8 f5 71 00 00       	call   0x428fb0
421dbb:	8b f8                	mov    %eax,%edi
421dbd:	89 7d e4             	mov    %edi,-0x1c(%ebp)
421dc0:	e8 51 30 00 00       	call   0x424e16
421dc5:	83 c0 20             	add    $0x20,%eax
421dc8:	50                   	push   %eax
421dc9:	56                   	push   %esi
421dca:	e8 ea 69 00 00       	call   0x4287b9
421dcf:	83 c4 18             	add    $0x18,%esp
421dd2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
421dd9:	e8 0b 00 00 00       	call   0x421de9
421dde:	8b c7                	mov    %edi,%eax
421de0:	e8 20 4d 00 00       	call   0x426b05
421de5:	c3                   	ret
421de6:	8b 7d e4             	mov    -0x1c(%ebp),%edi
421de9:	e8 28 30 00 00       	call   0x424e16
421dee:	83 c0 20             	add    $0x20,%eax
421df1:	50                   	push   %eax
421df2:	6a 01                	push   $0x1
421df4:	e8 cc 30 00 00       	call   0x424ec5
421df9:	59                   	pop    %ecx
421dfa:	59                   	pop    %ecx
421dfb:	c3                   	ret
421dfc:	55                   	push   %ebp
421dfd:	8b ec                	mov    %esp,%ebp
421dff:	8b 45 18             	mov    0x18(%ebp),%eax
421e02:	f7 d8                	neg    %eax
421e04:	1b c0                	sbb    %eax,%eax
421e06:	b9 00 01 00 00       	mov    $0x100,%ecx
421e0b:	23 c1                	and    %ecx,%eax
421e0d:	50                   	push   %eax
421e0e:	ff 75 18             	push   0x18(%ebp)
421e11:	8b 45 14             	mov    0x14(%ebp),%eax
421e14:	f7 d8                	neg    %eax
421e16:	1b c0                	sbb    %eax,%eax
421e18:	23 c1                	and    %ecx,%eax
421e1a:	50                   	push   %eax
421e1b:	8b 45 10             	mov    0x10(%ebp),%eax
421e1e:	ff 75 14             	push   0x14(%ebp)
421e21:	f7 d8                	neg    %eax
421e23:	1b c0                	sbb    %eax,%eax
421e25:	23 c1                	and    %ecx,%eax
421e27:	50                   	push   %eax
421e28:	8b 45 0c             	mov    0xc(%ebp),%eax
421e2b:	ff 75 10             	push   0x10(%ebp)
421e2e:	f7 d8                	neg    %eax
421e30:	1b c0                	sbb    %eax,%eax
421e32:	83 e0 03             	and    $0x3,%eax
421e35:	50                   	push   %eax
421e36:	ff 75 0c             	push   0xc(%ebp)
421e39:	ff 75 08             	push   0x8(%ebp)
421e3c:	e8 05 00 00 00       	call   0x421e46
421e41:	83 c4 24             	add    $0x24,%esp
421e44:	5d                   	pop    %ebp
421e45:	c3                   	ret
421e46:	55                   	push   %ebp
421e47:	8b ec                	mov    %esp,%ebp
421e49:	53                   	push   %ebx
421e4a:	56                   	push   %esi
421e4b:	57                   	push   %edi
421e4c:	8b 7d 08             	mov    0x8(%ebp),%edi
421e4f:	33 db                	xor    %ebx,%ebx
421e51:	85 ff                	test   %edi,%edi
421e53:	74 0c                	je     0x421e61
421e55:	8b 4d 0c             	mov    0xc(%ebp),%ecx
421e58:	85 c9                	test   %ecx,%ecx
421e5a:	75 13                	jne    0x421e6f
421e5c:	39 5d 10             	cmp    %ebx,0x10(%ebp)
421e5f:	74 13                	je     0x421e74
421e61:	8b 55 1c             	mov    0x1c(%ebp),%edx
421e64:	33 db                	xor    %ebx,%ebx
421e66:	43                   	inc    %ebx
421e67:	8b 45 24             	mov    0x24(%ebp),%eax
421e6a:	e9 63 01 00 00       	jmp    0x421fd2
421e6f:	39 5d 10             	cmp    %ebx,0x10(%ebp)
421e72:	74 ed                	je     0x421e61
421e74:	39 5d 14             	cmp    %ebx,0x14(%ebp)
421e77:	75 07                	jne    0x421e80
421e79:	39 5d 18             	cmp    %ebx,0x18(%ebp)
421e7c:	75 e3                	jne    0x421e61
421e7e:	eb 05                	jmp    0x421e85
421e80:	39 5d 18             	cmp    %ebx,0x18(%ebp)
421e83:	74 dc                	je     0x421e61
421e85:	8b 55 1c             	mov    0x1c(%ebp),%edx
421e88:	85 d2                	test   %edx,%edx
421e8a:	75 07                	jne    0x421e93
421e8c:	39 5d 20             	cmp    %ebx,0x20(%ebp)
421e8f:	75 d3                	jne    0x421e64
421e91:	eb 05                	jmp    0x421e98
421e93:	39 5d 20             	cmp    %ebx,0x20(%ebp)
421e96:	74 cc                	je     0x421e64
421e98:	39 5d 24             	cmp    %ebx,0x24(%ebp)
421e9b:	75 07                	jne    0x421ea4
421e9d:	39 5d 28             	cmp    %ebx,0x28(%ebp)
421ea0:	75 c2                	jne    0x421e64
421ea2:	eb 05                	jmp    0x421ea9
421ea4:	39 5d 28             	cmp    %ebx,0x28(%ebp)
421ea7:	74 bb                	je     0x421e64
421ea9:	33 c0                	xor    %eax,%eax
421eab:	40                   	inc    %eax
421eac:	8b f7                	mov    %edi,%esi
421eae:	66 39 1e             	cmp    %bx,(%esi)
421eb1:	74 06                	je     0x421eb9
421eb3:	83 c6 02             	add    $0x2,%esi
421eb6:	48                   	dec    %eax
421eb7:	75 f5                	jne    0x421eae
421eb9:	66 83 3e 3a          	cmpw   $0x3a,(%esi)
421ebd:	75 20                	jne    0x421edf
421ebf:	85 c9                	test   %ecx,%ecx
421ec1:	74 17                	je     0x421eda
421ec3:	83 7d 10 03          	cmpl   $0x3,0x10(%ebp)
421ec7:	72 9e                	jb     0x421e67
421ec9:	6a 02                	push   $0x2
421ecb:	57                   	push   %edi
421ecc:	6a ff                	push   $0xffffffff
421ece:	51                   	push   %ecx
421ecf:	e8 97 7e 00 00       	call   0x429d6b
421ed4:	8b 55 1c             	mov    0x1c(%ebp),%edx
421ed7:	83 c4 10             	add    $0x10,%esp
421eda:	8d 7e 02             	lea    0x2(%esi),%edi
421edd:	eb 09                	jmp    0x421ee8
421edf:	85 c9                	test   %ecx,%ecx
421ee1:	74 05                	je     0x421ee8
421ee3:	33 c0                	xor    %eax,%eax
421ee5:	66 89 01             	mov    %ax,(%ecx)
421ee8:	0f b7 07             	movzwl (%edi),%eax
421eeb:	8b cb                	mov    %ebx,%ecx
421eed:	8b f7                	mov    %edi,%esi
421eef:	66 85 c0             	test   %ax,%ax
421ef2:	74 57                	je     0x421f4b
421ef4:	66 83 f8 2f          	cmp    $0x2f,%ax
421ef8:	74 10                	je     0x421f0a
421efa:	66 83 f8 5c          	cmp    $0x5c,%ax
421efe:	74 0a                	je     0x421f0a
421f00:	66 83 f8 2e          	cmp    $0x2e,%ax
421f04:	75 07                	jne    0x421f0d
421f06:	8b de                	mov    %esi,%ebx
421f08:	eb 03                	jmp    0x421f0d
421f0a:	8d 4e 02             	lea    0x2(%esi),%ecx
421f0d:	83 c6 02             	add    $0x2,%esi
421f10:	0f b7 06             	movzwl (%esi),%eax
421f13:	66 85 c0             	test   %ax,%ax
421f16:	75 dc                	jne    0x421ef4
421f18:	89 4d 08             	mov    %ecx,0x8(%ebp)
421f1b:	85 c9                	test   %ecx,%ecx
421f1d:	74 2c                	je     0x421f4b
421f1f:	8b 45 14             	mov    0x14(%ebp),%eax
421f22:	85 c0                	test   %eax,%eax
421f24:	74 21                	je     0x421f47
421f26:	8b c1                	mov    %ecx,%eax
421f28:	2b c7                	sub    %edi,%eax
421f2a:	d1 f8                	sar    $1,%eax
421f2c:	39 45 18             	cmp    %eax,0x18(%ebp)
421f2f:	0f 86 98 00 00 00    	jbe    0x421fcd
421f35:	50                   	push   %eax
421f36:	57                   	push   %edi
421f37:	6a ff                	push   $0xffffffff
421f39:	ff 75 14             	push   0x14(%ebp)
421f3c:	e8 2a 7e 00 00       	call   0x429d6b
421f41:	8b 4d 08             	mov    0x8(%ebp),%ecx
421f44:	83 c4 10             	add    $0x10,%esp
421f47:	8b f9                	mov    %ecx,%edi
421f49:	eb 0c                	jmp    0x421f57
421f4b:	8b 45 14             	mov    0x14(%ebp),%eax
421f4e:	85 c0                	test   %eax,%eax
421f50:	74 05                	je     0x421f57
421f52:	33 c9                	xor    %ecx,%ecx
421f54:	66 89 08             	mov    %cx,(%eax)
421f57:	85 db                	test   %ebx,%ebx
421f59:	74 45                	je     0x421fa0
421f5b:	3b df                	cmp    %edi,%ebx