418c33:	75 eb                	jne    0x418c20
418c35:	0b d8                	or     %eax,%ebx
418c37:	57                   	push   %edi
418c38:	8b c3                	mov    %ebx,%eax
418c3a:	c1 e3 10             	shl    $0x10,%ebx
418c3d:	56                   	push   %esi
418c3e:	0b d8                	or     %eax,%ebx
418c40:	8b 0a                	mov    (%edx),%ecx
418c42:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
418c47:	8b c1                	mov    %ecx,%eax
418c49:	8b f7                	mov    %edi,%esi
418c4b:	33 cb                	xor    %ebx,%ecx
418c4d:	03 f0                	add    %eax,%esi
418c4f:	03 f9                	add    %ecx,%edi
418c51:	83 f1 ff             	xor    $0xffffffff,%ecx
418c54:	83 f0 ff             	xor    $0xffffffff,%eax
418c57:	33 cf                	xor    %edi,%ecx
418c59:	33 c6                	xor    %esi,%eax
418c5b:	83 c2 04             	add    $0x4,%edx
418c5e:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
418c64:	75 21                	jne    0x418c87
418c66:	25 00 01 01 81       	and    $0x81010100,%eax
418c6b:	74 d3                	je     0x418c40
418c6d:	25 00 01 01 01       	and    $0x1010100,%eax
418c72:	75 08                	jne    0x418c7c
418c74:	81 e6 00 00 00 80    	and    $0x80000000,%esi
418c7a:	75 c4                	jne    0x418c40
418c7c:	5e                   	pop    %esi
418c7d:	5f                   	pop    %edi
418c7e:	5b                   	pop    %ebx
418c7f:	33 c0                	xor    %eax,%eax
418c81:	c3                   	ret
418c82:	8d 42 ff             	lea    -0x1(%edx),%eax
418c85:	5b                   	pop    %ebx
418c86:	c3                   	ret
418c87:	8b 42 fc             	mov    -0x4(%edx),%eax
418c8a:	3a c3                	cmp    %bl,%al
418c8c:	74 36                	je     0x418cc4
418c8e:	84 c0                	test   %al,%al
418c90:	74 ea                	je     0x418c7c
418c92:	3a e3                	cmp    %bl,%ah
418c94:	74 27                	je     0x418cbd
418c96:	84 e4                	test   %ah,%ah
418c98:	74 e2                	je     0x418c7c
418c9a:	c1 e8 10             	shr    $0x10,%eax
418c9d:	3a c3                	cmp    %bl,%al
418c9f:	74 15                	je     0x418cb6
418ca1:	84 c0                	test   %al,%al
418ca3:	74 d7                	je     0x418c7c
418ca5:	3a e3                	cmp    %bl,%ah
418ca7:	74 06                	je     0x418caf
418ca9:	84 e4                	test   %ah,%ah
418cab:	74 cf                	je     0x418c7c
418cad:	eb 91                	jmp    0x418c40
418caf:	5e                   	pop    %esi
418cb0:	5f                   	pop    %edi
418cb1:	8d 42 ff             	lea    -0x1(%edx),%eax
418cb4:	5b                   	pop    %ebx
418cb5:	c3                   	ret
418cb6:	8d 42 fe             	lea    -0x2(%edx),%eax
418cb9:	5e                   	pop    %esi
418cba:	5f                   	pop    %edi
418cbb:	5b                   	pop    %ebx
418cbc:	c3                   	ret
418cbd:	8d 42 fd             	lea    -0x3(%edx),%eax
418cc0:	5e                   	pop    %esi
418cc1:	5f                   	pop    %edi
418cc2:	5b                   	pop    %ebx
418cc3:	c3                   	ret
418cc4:	8d 42 fc             	lea    -0x4(%edx),%eax
418cc7:	5e                   	pop    %esi
418cc8:	5f                   	pop    %edi
418cc9:	5b                   	pop    %ebx
418cca:	c3                   	ret
418ccb:	53                   	push   %ebx
418ccc:	8b dc                	mov    %esp,%ebx
418cce:	51                   	push   %ecx
418ccf:	51                   	push   %ecx
418cd0:	83 e4 f0             	and    $0xfffffff0,%esp
418cd3:	83 c4 04             	add    $0x4,%esp
418cd6:	55                   	push   %ebp
418cd7:	8b 6b 04             	mov    0x4(%ebx),%ebp
418cda:	89 6c 24 04          	mov    %ebp,0x4(%esp)
418cde:	8b ec                	mov    %esp,%ebp
418ce0:	8b 4b 08             	mov    0x8(%ebx),%ecx
418ce3:	83 ec 20             	sub    $0x20,%esp
418ce6:	83 3d 14 3e 42 00 01 	cmpl   $0x1,0x423e14
418ced:	66 8b 53 0c          	mov    0xc(%ebx),%dx
418cf1:	7c 46                	jl     0x418d39
418cf3:	0f b7 c2             	movzwl %dx,%eax
418cf6:	66 0f 6e c0          	movd   %eax,%xmm0
418cfa:	f2 0f 70 c0 00       	pshuflw $0x0,%xmm0,%xmm0
418cff:	66 0f 70 d0 00       	pshufd $0x0,%xmm0,%xmm2
418d04:	8b c1                	mov    %ecx,%eax
418d06:	25 ff 0f 00 00       	and    $0xfff,%eax
418d0b:	3d f0 0f 00 00       	cmp    $0xff0,%eax
418d10:	77 3c                	ja     0x418d4e
418d12:	0f 10 01             	movups (%ecx),%xmm0
418d15:	66 0f ef c9          	pxor   %xmm1,%xmm1
418d19:	66 0f 75 c8          	pcmpeqw %xmm0,%xmm1
418d1d:	66 0f 75 c2          	pcmpeqw %xmm2,%xmm0
418d21:	66 0f eb c8          	por    %xmm0,%xmm1
418d25:	66 0f d7 c1          	pmovmskb %xmm1,%eax
418d29:	85 c0                	test   %eax,%eax
418d2b:	75 35                	jne    0x418d62
418d2d:	6a 10                	push   $0x10
418d2f:	eb 2c                	jmp    0x418d5d
418d31:	66 3b c2             	cmp    %dx,%ax
418d34:	74 0b                	je     0x418d41
418d36:	83 c1 02             	add    $0x2,%ecx
418d39:	0f b7 01             	movzwl (%ecx),%eax
418d3c:	66 85 c0             	test   %ax,%ax
418d3f:	75 f0                	jne    0x418d31
418d41:	33 c0                	xor    %eax,%eax
418d43:	66 39 11             	cmp    %dx,(%ecx)
418d46:	0f 95 c0             	setne  %al
418d49:	48                   	dec    %eax
418d4a:	23 c1                	and    %ecx,%eax
418d4c:	eb 24                	jmp    0x418d72
418d4e:	0f b7 01             	movzwl (%ecx),%eax
418d51:	66 3b c2             	cmp    %dx,%ax
418d54:	74 1a                	je     0x418d70
418d56:	66 85 c0             	test   %ax,%ax
418d59:	74 11                	je     0x418d6c
418d5b:	6a 02                	push   $0x2
418d5d:	58                   	pop    %eax
418d5e:	03 c8                	add    %eax,%ecx
418d60:	eb a2                	jmp    0x418d04
418d62:	0f bc c0             	bsf    %eax,%eax
418d65:	89 45 fc             	mov    %eax,-0x4(%ebp)
418d68:	03 c8                	add    %eax,%ecx
418d6a:	eb d5                	jmp    0x418d41
418d6c:	33 c0                	xor    %eax,%eax
418d6e:	eb 02                	jmp    0x418d72
418d70:	8b c1                	mov    %ecx,%eax
418d72:	8b e5                	mov    %ebp,%esp
418d74:	5d                   	pop    %ebp
418d75:	8b e3                	mov    %ebx,%esp
418d77:	5b                   	pop    %ebx
418d78:	c3                   	ret
418d79:	55                   	push   %ebp
418d7a:	8b ec                	mov    %esp,%ebp
418d7c:	83 ec 18             	sub    $0x18,%esp
418d7f:	a1 0c 30 42 00       	mov    0x42300c,%eax
418d84:	8d 4d e8             	lea    -0x18(%ebp),%ecx
418d87:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
418d8b:	33 c1                	xor    %ecx,%eax
418d8d:	8b 4d 08             	mov    0x8(%ebp),%ecx
418d90:	89 45 f0             	mov    %eax,-0x10(%ebp)
418d93:	8b 45 0c             	mov    0xc(%ebp),%eax
418d96:	89 45 f4             	mov    %eax,-0xc(%ebp)
418d99:	8b 45 14             	mov    0x14(%ebp),%eax
418d9c:	40                   	inc    %eax
418d9d:	c7 45 ec b5 8f 41 00 	movl   $0x418fb5,-0x14(%ebp)
418da4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
418da7:	89 45 fc             	mov    %eax,-0x4(%ebp)
418daa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
418db0:	89 45 e8             	mov    %eax,-0x18(%ebp)
418db3:	8d 45 e8             	lea    -0x18(%ebp),%eax
418db6:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418dbc:	ff 75 18             	push   0x18(%ebp)
418dbf:	51                   	push   %ecx
418dc0:	ff 75 10             	push   0x10(%ebp)
418dc3:	e8 88 03 00 00       	call   0x419150
418dc8:	8b c8                	mov    %eax,%ecx
418dca:	8b 45 e8             	mov    -0x18(%ebp),%eax
418dcd:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418dd3:	8b c1                	mov    %ecx,%eax
418dd5:	8b e5                	mov    %ebp,%esp
418dd7:	5d                   	pop    %ebp
418dd8:	c3                   	ret
418dd9:	55                   	push   %ebp
418dda:	8b ec                	mov    %esp,%ebp
418ddc:	83 ec 38             	sub    $0x38,%esp
418ddf:	53                   	push   %ebx
418de0:	81 7d 08 23 01 00 00 	cmpl   $0x123,0x8(%ebp)
418de7:	75 12                	jne    0x418dfb
418de9:	b8 88 8e 41 00       	mov    $0x418e88,%eax
418dee:	8b 4d 0c             	mov    0xc(%ebp),%ecx
418df1:	89 01                	mov    %eax,(%ecx)
418df3:	33 c0                	xor    %eax,%eax
418df5:	40                   	inc    %eax
418df6:	e9 b6 00 00 00       	jmp    0x418eb1
418dfb:	83 65 c8 00          	andl   $0x0,-0x38(%ebp)
418dff:	c7 45 cc 7a 90 41 00 	movl   $0x41907a,-0x34(%ebp)
418e06:	a1 0c 30 42 00       	mov    0x42300c,%eax
418e0b:	8d 4d c8             	lea    -0x38(%ebp),%ecx
418e0e:	33 c1                	xor    %ecx,%eax
418e10:	89 45 d0             	mov    %eax,-0x30(%ebp)
418e13:	8b 45 18             	mov    0x18(%ebp),%eax
418e16:	89 45 d4             	mov    %eax,-0x2c(%ebp)
418e19:	8b 45 0c             	mov    0xc(%ebp),%eax
418e1c:	89 45 d8             	mov    %eax,-0x28(%ebp)
418e1f:	8b 45 1c             	mov    0x1c(%ebp),%eax
418e22:	89 45 dc             	mov    %eax,-0x24(%ebp)
418e25:	8b 45 20             	mov    0x20(%ebp),%eax
418e28:	89 45 e0             	mov    %eax,-0x20(%ebp)
418e2b:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
418e2f:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
418e33:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
418e37:	89 65 e4             	mov    %esp,-0x1c(%ebp)
418e3a:	89 6d e8             	mov    %ebp,-0x18(%ebp)
418e3d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
418e43:	89 45 c8             	mov    %eax,-0x38(%ebp)
418e46:	8d 45 c8             	lea    -0x38(%ebp),%eax
418e49:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418e4f:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
418e56:	8b 45 08             	mov    0x8(%ebp),%eax
418e59:	89 45 f0             	mov    %eax,-0x10(%ebp)
418e5c:	8b 45 10             	mov    0x10(%ebp),%eax
418e5f:	89 45 f4             	mov    %eax,-0xc(%ebp)
418e62:	e8 c8 bd fe ff       	call   0x404c2f
418e67:	8b 40 08             	mov    0x8(%eax),%eax
418e6a:	89 45 fc             	mov    %eax,-0x4(%ebp)
418e6d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
418e70:	ff 15 a8 b1 41 00    	call   *0x41b1a8
418e76:	8d 45 f0             	lea    -0x10(%ebp),%eax
418e79:	50                   	push   %eax
418e7a:	8b 45 08             	mov    0x8(%ebp),%eax
418e7d:	ff 30                	push   (%eax)
418e7f:	ff 55 fc             	call   *-0x4(%ebp)
418e82:	59                   	pop    %ecx
418e83:	59                   	pop    %ecx
418e84:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
418e88:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
418e8c:	74 17                	je     0x418ea5
418e8e:	64 8b 1d 00 00 00 00 	mov    %fs:0x0,%ebx
418e95:	8b 03                	mov    (%ebx),%eax
418e97:	8b 5d c8             	mov    -0x38(%ebp),%ebx
418e9a:	89 03                	mov    %eax,(%ebx)
418e9c:	64 89 1d 00 00 00 00 	mov    %ebx,%fs:0x0
418ea3:	eb 09                	jmp    0x418eae
418ea5:	8b 45 c8             	mov    -0x38(%ebp),%eax
418ea8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418eae:	8b 45 f8             	mov    -0x8(%ebp),%eax
418eb1:	5b                   	pop    %ebx
418eb2:	8b e5                	mov    %ebp,%esp
418eb4:	5d                   	pop    %ebp
418eb5:	c3                   	ret
418eb6:	55                   	push   %ebp
418eb7:	8b ec                	mov    %esp,%ebp
418eb9:	51                   	push   %ecx
418eba:	53                   	push   %ebx
418ebb:	56                   	push   %esi
418ebc:	8b 75 0c             	mov    0xc(%ebp),%esi
418ebf:	57                   	push   %edi
418ec0:	8b 7d 08             	mov    0x8(%ebp),%edi
418ec3:	8b 4f 0c             	mov    0xc(%edi),%ecx
418ec6:	8b d1                	mov    %ecx,%edx
418ec8:	8b 5f 10             	mov    0x10(%edi),%ebx
418ecb:	89 4d fc             	mov    %ecx,-0x4(%ebp)
418ece:	85 f6                	test   %esi,%esi
418ed0:	78 36                	js     0x418f08
418ed2:	6b c1 14             	imul   $0x14,%ecx,%eax
418ed5:	83 c0 08             	add    $0x8,%eax
418ed8:	03 c3                	add    %ebx,%eax
418eda:	83 f9 ff             	cmp    $0xffffffff,%ecx
418edd:	74 49                	je     0x418f28
418edf:	8b 7d 10             	mov    0x10(%ebp),%edi
418ee2:	83 e8 14             	sub    $0x14,%eax
418ee5:	49                   	dec    %ecx
418ee6:	39 78 fc             	cmp    %edi,-0x4(%eax)
418ee9:	8b 7d 08             	mov    0x8(%ebp),%edi
418eec:	7d 0a                	jge    0x418ef8
418eee:	8b 7d 10             	mov    0x10(%ebp),%edi
418ef1:	3b 38                	cmp    (%eax),%edi
418ef3:	8b 7d 08             	mov    0x8(%ebp),%edi
418ef6:	7e 05                	jle    0x418efd
418ef8:	83 f9 ff             	cmp    $0xffffffff,%ecx
418efb:	75 07                	jne    0x418f04
418efd:	8b 55 fc             	mov    -0x4(%ebp),%edx
418f00:	4e                   	dec    %esi
418f01:	89 4d fc             	mov    %ecx,-0x4(%ebp)
418f04:	85 f6                	test   %esi,%esi
418f06:	79 d2                	jns    0x418eda
418f08:	8b 45 14             	mov    0x14(%ebp),%eax
418f0b:	41                   	inc    %ecx
418f0c:	89 08                	mov    %ecx,(%eax)
418f0e:	8b 45 18             	mov    0x18(%ebp),%eax
418f11:	89 10                	mov    %edx,(%eax)
418f13:	3b 57 0c             	cmp    0xc(%edi),%edx
418f16:	77 10                	ja     0x418f28
418f18:	3b ca                	cmp    %edx,%ecx
418f1a:	77 0c                	ja     0x418f28
418f1c:	6b c1 14             	imul   $0x14,%ecx,%eax
418f1f:	5f                   	pop    %edi
418f20:	5e                   	pop    %esi
418f21:	03 c3                	add    %ebx,%eax
418f23:	5b                   	pop    %ebx
418f24:	8b e5                	mov    %ebp,%esp
418f26:	5d                   	pop    %ebp
418f27:	c3                   	ret
418f28:	e8 47 07 ff ff       	call   0x409674
418f2d:	cc                   	int3
418f2e:	55                   	push   %ebp
418f2f:	8b ec                	mov    %esp,%ebp
418f31:	51                   	push   %ecx
418f32:	53                   	push   %ebx
418f33:	8b 45 0c             	mov    0xc(%ebp),%eax
418f36:	83 c0 0c             	add    $0xc,%eax
418f39:	89 45 fc             	mov    %eax,-0x4(%ebp)
418f3c:	64 8b 1d 00 00 00 00 	mov    %fs:0x0,%ebx
418f43:	8b 03                	mov    (%ebx),%eax
418f45:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418f4b:	8b 45 08             	mov    0x8(%ebp),%eax
418f4e:	8b 5d 0c             	mov    0xc(%ebp),%ebx
418f51:	8b 6d fc             	mov    -0x4(%ebp),%ebp
418f54:	8b 63 fc             	mov    -0x4(%ebx),%esp
418f57:	ff e0                	jmp    *%eax
418f59:	5b                   	pop    %ebx
418f5a:	8b e5                	mov    %ebp,%esp
418f5c:	5d                   	pop    %ebp
418f5d:	c2 08 00             	ret    $0x8
418f60:	55                   	push   %ebp
418f61:	8b ec                	mov    %esp,%ebp
418f63:	51                   	push   %ecx
418f64:	51                   	push   %ecx
418f65:	53                   	push   %ebx
418f66:	56                   	push   %esi
418f67:	57                   	push   %edi
418f68:	64 8b 35 00 00 00 00 	mov    %fs:0x0,%esi
418f6f:	89 75 f8             	mov    %esi,-0x8(%ebp)
418f72:	c7 45 fc 8a 8f 41 00 	movl   $0x418f8a,-0x4(%ebp)
418f79:	6a 00                	push   $0x0
418f7b:	ff 75 0c             	push   0xc(%ebp)
418f7e:	ff 75 fc             	push   -0x4(%ebp)
418f81:	ff 75 08             	push   0x8(%ebp)
418f84:	ff 15 08 b1 41 00    	call   *0x41b108
418f8a:	8b 45 0c             	mov    0xc(%ebp),%eax
418f8d:	8b 40 04             	mov    0x4(%eax),%eax
418f90:	83 e0 fd             	and    $0xfffffffd,%eax
418f93:	8b 4d 0c             	mov    0xc(%ebp),%ecx
418f96:	89 41 04             	mov    %eax,0x4(%ecx)
418f99:	64 8b 3d 00 00 00 00 	mov    %fs:0x0,%edi
418fa0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
418fa3:	89 3b                	mov    %edi,(%ebx)
418fa5:	64 89 1d 00 00 00 00 	mov    %ebx,%fs:0x0
418fac:	5f                   	pop    %edi
418fad:	5e                   	pop    %esi
418fae:	5b                   	pop    %ebx
418faf:	8b e5                	mov    %ebp,%esp
418fb1:	5d                   	pop    %ebp
418fb2:	c2 08 00             	ret    $0x8
418fb5:	55                   	push   %ebp
418fb6:	8b ec                	mov    %esp,%ebp
418fb8:	56                   	push   %esi
418fb9:	fc                   	cld
418fba:	8b 75 0c             	mov    0xc(%ebp),%esi
418fbd:	8b 4e 08             	mov    0x8(%esi),%ecx
418fc0:	33 ce                	xor    %esi,%ecx