417dc5:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
417dca:	0f 16 db             	movlhps %xmm3,%xmm3
417dcd:	b9 0f 00 00 00       	mov    $0xf,%ecx
417dd2:	23 cf                	and    %edi,%ecx
417dd4:	83 c8 ff             	or     $0xffffffff,%eax
417dd7:	d3 e0                	shl    %cl,%eax
417dd9:	2b f9                	sub    %ecx,%edi
417ddb:	33 d2                	xor    %edx,%edx
417ddd:	f3 0f 6f 0f          	movdqu (%edi),%xmm1
417de1:	66 0f ef d2          	pxor   %xmm2,%xmm2
417de5:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
417de9:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
417ded:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
417df1:	23 c8                	and    %eax,%ecx
417df3:	75 18                	jne    0x417e0d
417df5:	66 0f d7 c9          	pmovmskb %xmm1,%ecx
417df9:	23 c8                	and    %eax,%ecx
417dfb:	0f bd c1             	bsr    %ecx,%eax
417dfe:	03 c7                	add    %edi,%eax
417e00:	85 c9                	test   %ecx,%ecx
417e02:	0f 45 d0             	cmovne %eax,%edx
417e05:	83 c8 ff             	or     $0xffffffff,%eax
417e08:	83 c7 10             	add    $0x10,%edi
417e0b:	eb d0                	jmp    0x417ddd
417e0d:	53                   	push   %ebx
417e0e:	66 0f d7 d9          	pmovmskb %xmm1,%ebx
417e12:	23 d8                	and    %eax,%ebx
417e14:	d1 e1                	shl    $1,%ecx
417e16:	33 c0                	xor    %eax,%eax
417e18:	2b c1                	sub    %ecx,%eax
417e1a:	23 c8                	and    %eax,%ecx
417e1c:	49                   	dec    %ecx
417e1d:	23 cb                	and    %ebx,%ecx
417e1f:	5b                   	pop    %ebx
417e20:	0f bd c1             	bsr    %ecx,%eax
417e23:	03 c7                	add    %edi,%eax
417e25:	85 c9                	test   %ecx,%ecx
417e27:	0f 44 c2             	cmove  %edx,%eax
417e2a:	5f                   	pop    %edi
417e2b:	c9                   	leave
417e2c:	c3                   	ret
417e2d:	0f b6 55 0c          	movzbl 0xc(%ebp),%edx
417e31:	85 d2                	test   %edx,%edx
417e33:	74 39                	je     0x417e6e
417e35:	33 c0                	xor    %eax,%eax
417e37:	f7 c7 0f 00 00 00    	test   $0xf,%edi
417e3d:	74 15                	je     0x417e54
417e3f:	0f b6 0f             	movzbl (%edi),%ecx
417e42:	3b ca                	cmp    %edx,%ecx
417e44:	0f 44 c7             	cmove  %edi,%eax
417e47:	85 c9                	test   %ecx,%ecx
417e49:	74 20                	je     0x417e6b
417e4b:	47                   	inc    %edi
417e4c:	f7 c7 0f 00 00 00    	test   $0xf,%edi
417e52:	75 eb                	jne    0x417e3f
417e54:	66 0f 6e c2          	movd   %edx,%xmm0
417e58:	83 c7 10             	add    $0x10,%edi
417e5b:	66 0f 3a 63 47 f0 40 	pcmpistri $0x40,-0x10(%edi),%xmm0
417e62:	8d 4c 39 f0          	lea    -0x10(%ecx,%edi,1),%ecx
417e66:	0f 42 c1             	cmovb  %ecx,%eax
417e69:	75 ed                	jne    0x417e58
417e6b:	5f                   	pop    %edi
417e6c:	c9                   	leave
417e6d:	c3                   	ret
417e6e:	b8 f0 ff ff ff       	mov    $0xfffffff0,%eax
417e73:	23 c7                	and    %edi,%eax
417e75:	66 0f ef c0          	pxor   %xmm0,%xmm0
417e79:	66 0f 74 00          	pcmpeqb (%eax),%xmm0
417e7d:	b9 0f 00 00 00       	mov    $0xf,%ecx
417e82:	23 cf                	and    %edi,%ecx
417e84:	ba ff ff ff ff       	mov    $0xffffffff,%edx
417e89:	d3 e2                	shl    %cl,%edx
417e8b:	66 0f d7 f8          	pmovmskb %xmm0,%edi
417e8f:	23 fa                	and    %edx,%edi
417e91:	75 14                	jne    0x417ea7
417e93:	66 0f ef c0          	pxor   %xmm0,%xmm0
417e97:	66 0f 74 40 10       	pcmpeqb 0x10(%eax),%xmm0
417e9c:	83 c0 10             	add    $0x10,%eax
417e9f:	66 0f d7 f8          	pmovmskb %xmm0,%edi
417ea3:	85 ff                	test   %edi,%edi
417ea5:	74 ec                	je     0x417e93
417ea7:	0f bc d7             	bsf    %edi,%edx
417eaa:	03 c2                	add    %edx,%eax
417eac:	eb bd                	jmp    0x417e6b
417eae:	8b 7d 08             	mov    0x8(%ebp),%edi
417eb1:	33 c0                	xor    %eax,%eax
417eb3:	83 c9 ff             	or     $0xffffffff,%ecx
417eb6:	f2 ae                	repnz scas %es:(%edi),%al
417eb8:	83 c1 01             	add    $0x1,%ecx
417ebb:	f7 d9                	neg    %ecx
417ebd:	83 ef 01             	sub    $0x1,%edi
417ec0:	8a 45 0c             	mov    0xc(%ebp),%al
417ec3:	fd                   	std
417ec4:	f2 ae                	repnz scas %es:(%edi),%al
417ec6:	83 c7 01             	add    $0x1,%edi
417ec9:	38 07                	cmp    %al,(%edi)
417ecb:	74 04                	je     0x417ed1
417ecd:	33 c0                	xor    %eax,%eax
417ecf:	eb 02                	jmp    0x417ed3
417ed1:	8b c7                	mov    %edi,%eax
417ed3:	fc                   	cld
417ed4:	5f                   	pop    %edi
417ed5:	c9                   	leave
417ed6:	c3                   	ret
417ed7:	cc                   	int3
417ed8:	cc                   	int3
417ed9:	cc                   	int3
417eda:	cc                   	int3
417edb:	cc                   	int3
417edc:	cc                   	int3
417edd:	cc                   	int3
417ede:	cc                   	int3
417edf:	cc                   	int3
417ee0:	55                   	push   %ebp
417ee1:	8b ec                	mov    %esp,%ebp
417ee3:	83 3d 6c 1a 42 00 01 	cmpl   $0x1,0x421a6c
417eea:	8b 4d 08             	mov    0x8(%ebp),%ecx
417eed:	7d 34                	jge    0x417f23
417eef:	0f b7 01             	movzwl (%ecx),%eax
417ef2:	8b d0                	mov    %eax,%edx
417ef4:	66 85 c0             	test   %ax,%ax
417ef7:	74 1c                	je     0x417f15
417ef9:	56                   	push   %esi
417efa:	8b f0                	mov    %eax,%esi
417efc:	0f b7 d6             	movzwl %si,%edx
417eff:	66 3b 75 0c          	cmp    0xc(%ebp),%si
417f03:	74 0f                	je     0x417f14
417f05:	83 c1 02             	add    $0x2,%ecx
417f08:	0f b7 01             	movzwl (%ecx),%eax
417f0b:	8b f0                	mov    %eax,%esi
417f0d:	8b d0                	mov    %eax,%edx
417f0f:	66 85 c0             	test   %ax,%ax
417f12:	75 e8                	jne    0x417efc
417f14:	5e                   	pop    %esi
417f15:	33 c0                	xor    %eax,%eax
417f17:	66 3b 55 0c          	cmp    0xc(%ebp),%dx
417f1b:	0f 95 c0             	setne  %al
417f1e:	48                   	dec    %eax
417f1f:	23 c1                	and    %ecx,%eax
417f21:	5d                   	pop    %ebp
417f22:	c3                   	ret
417f23:	66 8b 55 0c          	mov    0xc(%ebp),%dx
417f27:	0f b7 c2             	movzwl %dx,%eax
417f2a:	66 0f 6e c0          	movd   %eax,%xmm0
417f2e:	f2 0f 70 c0 00       	pshuflw $0x0,%xmm0,%xmm0
417f33:	66 0f 70 d0 00       	pshufd $0x0,%xmm0,%xmm2
417f38:	8b c1                	mov    %ecx,%eax
417f3a:	25 ff 0f 00 00       	and    $0xfff,%eax
417f3f:	3d f0 0f 00 00       	cmp    $0xff0,%eax
417f44:	77 21                	ja     0x417f67
417f46:	0f 10 09             	movups (%ecx),%xmm1
417f49:	0f 28 05 b0 91 41 00 	movaps 0x4191b0,%xmm0
417f50:	66 0f 75 c1          	pcmpeqw %xmm1,%xmm0
417f54:	66 0f 75 ca          	pcmpeqw %xmm2,%xmm1
417f58:	0f 56 c1             	orps   %xmm1,%xmm0
417f5b:	66 0f d7 c0          	pmovmskb %xmm0,%eax
417f5f:	85 c0                	test   %eax,%eax
417f61:	75 18                	jne    0x417f7b
417f63:	6a 10                	push   $0x10
417f65:	eb 0f                	jmp    0x417f76
417f67:	0f b7 01             	movzwl (%ecx),%eax
417f6a:	66 3b c2             	cmp    %dx,%ax
417f6d:	74 1c                	je     0x417f8b
417f6f:	66 85 c0             	test   %ax,%ax
417f72:	74 13                	je     0x417f87
417f74:	6a 02                	push   $0x2
417f76:	58                   	pop    %eax
417f77:	03 c8                	add    %eax,%ecx
417f79:	eb bd                	jmp    0x417f38
417f7b:	0f bc c0             	bsf    %eax,%eax
417f7e:	03 c8                	add    %eax,%ecx
417f80:	33 c0                	xor    %eax,%eax
417f82:	66 39 11             	cmp    %dx,(%ecx)
417f85:	eb 94                	jmp    0x417f1b
417f87:	33 c0                	xor    %eax,%eax
417f89:	5d                   	pop    %ebp
417f8a:	c3                   	ret
417f8b:	8b c1                	mov    %ecx,%eax
417f8d:	5d                   	pop    %ebp
417f8e:	c3                   	ret
417f8f:	55                   	push   %ebp
417f90:	8b ec                	mov    %esp,%ebp
417f92:	51                   	push   %ecx
417f93:	83 3d 6c 1a 42 00 01 	cmpl   $0x1,0x421a6c
417f9a:	7c 66                	jl     0x418002
417f9c:	81 7d 08 b4 02 00 c0 	cmpl   $0xc00002b4,0x8(%ebp)
417fa3:	74 09                	je     0x417fae
417fa5:	81 7d 08 b5 02 00 c0 	cmpl   $0xc00002b5,0x8(%ebp)
417fac:	75 54                	jne    0x418002
417fae:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
417fb2:	8b 45 fc             	mov    -0x4(%ebp),%eax
417fb5:	83 f0 3f             	xor    $0x3f,%eax
417fb8:	a8 81                	test   $0x81,%al
417fba:	74 3f                	je     0x417ffb
417fbc:	a9 04 02 00 00       	test   $0x204,%eax
417fc1:	75 07                	jne    0x417fca
417fc3:	b8 8e 00 00 c0       	mov    $0xc000008e,%eax
417fc8:	c9                   	leave
417fc9:	c3                   	ret
417fca:	a9 02 01 00 00       	test   $0x102,%eax
417fcf:	74 2a                	je     0x417ffb
417fd1:	a9 08 04 00 00       	test   $0x408,%eax
417fd6:	75 07                	jne    0x417fdf
417fd8:	b8 91 00 00 c0       	mov    $0xc0000091,%eax
417fdd:	c9                   	leave
417fde:	c3                   	ret
417fdf:	a9 10 08 00 00       	test   $0x810,%eax
417fe4:	75 07                	jne    0x417fed
417fe6:	b8 93 00 00 c0       	mov    $0xc0000093,%eax
417feb:	c9                   	leave
417fec:	c3                   	ret
417fed:	a9 20 10 00 00       	test   $0x1020,%eax
417ff2:	75 0e                	jne    0x418002
417ff4:	b8 8f 00 00 c0       	mov    $0xc000008f,%eax
417ff9:	c9                   	leave
417ffa:	c3                   	ret
417ffb:	b8 90 00 00 c0       	mov    $0xc0000090,%eax
418000:	c9                   	leave
418001:	c3                   	ret
418002:	8b 45 08             	mov    0x8(%ebp),%eax
418005:	c9                   	leave
418006:	c3                   	ret
418007:	90                   	nop
418008:	90                   	nop
418009:	8b 54 24 08          	mov    0x8(%esp),%edx
41800d:	8d 42 0c             	lea    0xc(%edx),%eax
418010:	8b 4a ec             	mov    -0x14(%edx),%ecx
418013:	33 c8                	xor    %eax,%ecx
418015:	e8 ae c0 fe ff       	call   0x4040c8
41801a:	b8 84 fd 41 00       	mov    $0x41fd84,%eax
41801f:	e9 0d d0 fe ff       	jmp    0x405031
418024:	90                   	nop
418025:	90                   	nop
418026:	8b 54 24 08          	mov    0x8(%esp),%edx
41802a:	8d 42 0c             	lea    0xc(%edx),%eax
41802d:	8b 4a f0             	mov    -0x10(%edx),%ecx
418030:	33 c8                	xor    %eax,%ecx
418032:	e8 91 c0 fe ff       	call   0x4040c8
418037:	b8 ec fe 41 00       	mov    $0x41feec,%eax
41803c:	e9 f0 cf fe ff       	jmp    0x405031
418041:	90                   	nop
418042:	90                   	nop
418043:	8b 54 24 08          	mov    0x8(%esp),%edx
418047:	8d 42 0c             	lea    0xc(%edx),%eax
41804a:	8b 4a e4             	mov    -0x1c(%edx),%ecx
41804d:	33 c8                	xor    %eax,%ecx
41804f:	e8 74 c0 fe ff       	call   0x4040c8
418054:	b8 3c ff 41 00       	mov    $0x41ff3c,%eax
418059:	e9 d3 cf fe ff       	jmp    0x405031
41805e:	90                   	nop
41805f:	90                   	nop
418060:	8b 54 24 08          	mov    0x8(%esp),%edx
418064:	8d 42 0c             	lea    0xc(%edx),%eax
418067:	8b 4a f4             	mov    -0xc(%edx),%ecx
41806a:	33 c8                	xor    %eax,%ecx
41806c:	e8 57 c0 fe ff       	call   0x4040c8
418071:	b8 10 ff 41 00       	mov    $0x41ff10,%eax
418076:	e9 b6 cf fe ff       	jmp    0x405031
41807b:	90                   	nop
41807c:	90                   	nop
41807d:	8b 54 24 08          	mov    0x8(%esp),%edx
418081:	8d 42 0c             	lea    0xc(%edx),%eax
418084:	8b 4a e0             	mov    -0x20(%edx),%ecx
418087:	33 c8                	xor    %eax,%ecx
418089:	e8 3a c0 fe ff       	call   0x4040c8
41808e:	b8 c4 ff 41 00       	mov    $0x41ffc4,%eax
418093:	e9 99 cf fe ff       	jmp    0x405031
418098:	90                   	nop
418099:	90                   	nop
41809a:	8b 54 24 08          	mov    0x8(%esp),%edx
41809e:	8d 42 0c             	lea    0xc(%edx),%eax
4180a1:	8b 8a 7c ff ff ff    	mov    -0x84(%edx),%ecx
4180a7:	33 c8                	xor    %eax,%ecx
4180a9:	e8 1a c0 fe ff       	call   0x4040c8
4180ae:	8b 4a fc             	mov    -0x4(%edx),%ecx
4180b1:	33 c8                	xor    %eax,%ecx
4180b3:	e8 10 c0 fe ff       	call   0x4040c8
4180b8:	b8 10 ff 41 00       	mov    $0x41ff10,%eax
4180bd:	e9 6f cf fe ff       	jmp    0x405031