4a5bb9:	8b 44 24 58          	mov    0x58(%esp),%eax
4a5bbd:	8b 54 24 50          	mov    0x50(%esp),%edx
4a5bc1:	53                   	push   %ebx
4a5bc2:	8b 5c 24 60          	mov    0x60(%esp),%ebx
4a5bc6:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a5bca:	89 44 24 08          	mov    %eax,0x8(%esp)
4a5bce:	83 fb 10             	cmp    $0x10,%ebx
4a5bd1:	73 13                	jae    0x4a5be6
4a5bd3:	83 c8 ff             	or     $0xffffffff,%eax
4a5bd6:	5b                   	pop    %ebx
4a5bd7:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4a5bdb:	33 cc                	xor    %esp,%ecx
4a5bdd:	e8 f8 b8 13 00       	call   0x5e14da
4a5be2:	83 c4 48             	add    $0x48,%esp
4a5be5:	c3                   	ret
4a5be6:	ff 71 04             	push   0x4(%ecx)
4a5be9:	0f 10 02             	movups (%edx),%xmm0
4a5bec:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4a5bf0:	50                   	push   %eax
4a5bf1:	50                   	push   %eax
4a5bf2:	8b 41 0c             	mov    0xc(%ecx),%eax
4a5bf5:	0f 11 44 24 34       	movups %xmm0,0x34(%esp)
4a5bfa:	ff d0                	call   *%eax
4a5bfc:	8b 44 24 70          	mov    0x70(%esp),%eax
4a5c00:	83 c4 0c             	add    $0xc,%esp
4a5c03:	85 c0                	test   %eax,%eax
4a5c05:	75 08                	jne    0x4a5c0f
4a5c07:	f6 c3 0f             	test   $0xf,%bl
4a5c0a:	74 03                	je     0x4a5c0f
4a5c0c:	83 eb 10             	sub    $0x10,%ebx
4a5c0f:	8b 54 24 28          	mov    0x28(%esp),%edx
4a5c13:	55                   	push   %ebp
4a5c14:	8b 6c 24 34          	mov    0x34(%esp),%ebp
4a5c18:	56                   	push   %esi
4a5c19:	8b 74 24 3c          	mov    0x3c(%esp),%esi
4a5c1d:	57                   	push   %edi
4a5c1e:	8b 7c 24 64          	mov    0x64(%esp),%edi
4a5c22:	83 fb 10             	cmp    $0x10,%ebx
4a5c25:	0f 82 00 01 00 00    	jb     0x4a5d2b
4a5c2b:	8b 44 24 38          	mov    0x38(%esp),%eax
4a5c2f:	89 44 24 10          	mov    %eax,0x10(%esp)
4a5c33:	8b 47 04             	mov    0x4(%edi),%eax
4a5c36:	33 44 24 10          	xor    0x10(%esp),%eax
4a5c3a:	8b 0f                	mov    (%edi),%ecx
4a5c3c:	89 44 24 28          	mov    %eax,0x28(%esp)
4a5c40:	33 ca                	xor    %edx,%ecx
4a5c42:	8b 47 0c             	mov    0xc(%edi),%eax
4a5c45:	33 c6                	xor    %esi,%eax
4a5c47:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4a5c4b:	8b 4f 08             	mov    0x8(%edi),%ecx
4a5c4e:	89 44 24 30          	mov    %eax,0x30(%esp)
4a5c52:	33 cd                	xor    %ebp,%ecx
4a5c54:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a5c58:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4a5c5c:	8d 4c 24 24          	lea    0x24(%esp),%ecx
4a5c60:	ff 30                	push   (%eax)
4a5c62:	8b 40 08             	mov    0x8(%eax),%eax
4a5c65:	51                   	push   %ecx
4a5c66:	51                   	push   %ecx
4a5c67:	ff d0                	call   *%eax
4a5c69:	8b 44 24 40          	mov    0x40(%esp),%eax
4a5c6d:	83 c7 10             	add    $0x10,%edi
4a5c70:	8b 4c 24 30          	mov    0x30(%esp),%ecx
4a5c74:	83 c4 0c             	add    $0xc,%esp
4a5c77:	8b 54 24 38          	mov    0x38(%esp),%edx
4a5c7b:	33 c8                	xor    %eax,%ecx
4a5c7d:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
4a5c81:	8b 74 24 40          	mov    0x40(%esp),%esi
4a5c85:	89 44 24 18          	mov    %eax,0x18(%esp)
4a5c89:	8b 44 24 28          	mov    0x28(%esp),%eax
4a5c8d:	33 c2                	xor    %edx,%eax
4a5c8f:	89 54 24 10          	mov    %edx,0x10(%esp)
4a5c93:	8b 54 24 14          	mov    0x14(%esp),%edx
4a5c97:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4a5c9b:	89 44 24 28          	mov    %eax,0x28(%esp)
4a5c9f:	89 7c 24 20          	mov    %edi,0x20(%esp)
4a5ca3:	89 0a                	mov    %ecx,(%edx)
4a5ca5:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4a5ca9:	89 42 04             	mov    %eax,0x4(%edx)
4a5cac:	33 cd                	xor    %ebp,%ecx
4a5cae:	8b 44 24 30          	mov    0x30(%esp),%eax
4a5cb2:	33 c6                	xor    %esi,%eax
4a5cb4:	89 4a 08             	mov    %ecx,0x8(%edx)
4a5cb7:	89 42 0c             	mov    %eax,0xc(%edx)
4a5cba:	83 c2 10             	add    $0x10,%edx
4a5cbd:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4a5cc1:	89 44 24 30          	mov    %eax,0x30(%esp)
4a5cc5:	89 54 24 14          	mov    %edx,0x14(%esp)
4a5cc9:	83 eb 10             	sub    $0x10,%ebx
4a5ccc:	0f 84 fa 01 00 00    	je     0x4a5ecc
4a5cd2:	8b 44 24 10          	mov    0x10(%esp),%eax
4a5cd6:	8b d6                	mov    %esi,%edx
4a5cd8:	8b 7c 24 18          	mov    0x18(%esp),%edi
4a5cdc:	33 c9                	xor    %ecx,%ecx
4a5cde:	0f a4 7c 24 10 01    	shld   $0x1,%edi,0x10(%esp)
4a5ce4:	33 4c 24 10          	xor    0x10(%esp),%ecx
4a5ce8:	0f a4 ee 01          	shld   $0x1,%ebp,%esi
4a5cec:	c1 fa 1f             	sar    $0x1f,%edx
4a5cef:	03 ff                	add    %edi,%edi
4a5cf1:	c1 e8 1f             	shr    $0x1f,%eax
4a5cf4:	81 e2 87 00 00 00    	and    $0x87,%edx
4a5cfa:	03 ed                	add    %ebp,%ebp
4a5cfc:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a5d00:	33 d7                	xor    %edi,%edx
4a5d02:	89 4c 24 38          	mov    %ecx,0x38(%esp)
4a5d06:	8b 7c 24 20          	mov    0x20(%esp),%edi
4a5d0a:	0b e8                	or     %eax,%ebp
4a5d0c:	89 54 24 34          	mov    %edx,0x34(%esp)
4a5d10:	89 74 24 18          	mov    %esi,0x18(%esp)
4a5d14:	89 6c 24 3c          	mov    %ebp,0x3c(%esp)
4a5d18:	89 74 24 40          	mov    %esi,0x40(%esp)
4a5d1c:	83 fb 10             	cmp    $0x10,%ebx
4a5d1f:	0f 83 0e ff ff ff    	jae    0x4a5c33
4a5d25:	8b 44 24 70          	mov    0x70(%esp),%eax
4a5d29:	eb 0c                	jmp    0x4a5d37
4a5d2b:	8b 4c 24 38          	mov    0x38(%esp),%ecx
4a5d2f:	89 7c 24 20          	mov    %edi,0x20(%esp)
4a5d33:	89 74 24 18          	mov    %esi,0x18(%esp)
4a5d37:	85 c0                	test   %eax,%eax
4a5d39:	0f 84 83 00 00 00    	je     0x4a5dc2
4a5d3f:	33 ed                	xor    %ebp,%ebp
4a5d41:	85 db                	test   %ebx,%ebx
4a5d43:	74 2b                	je     0x4a5d70
4a5d45:	8b 44 24 14          	mov    0x14(%esp),%eax
4a5d49:	8d 4c 24 24          	lea    0x24(%esp),%ecx
4a5d4d:	2b f8                	sub    %eax,%edi
4a5d4f:	2b c1                	sub    %ecx,%eax
4a5d51:	89 44 24 18          	mov    %eax,0x18(%esp)
4a5d55:	8d 74 24 24          	lea    0x24(%esp),%esi
4a5d59:	03 f5                	add    %ebp,%esi
4a5d5b:	45                   	inc    %ebp
4a5d5c:	8d 0c 06             	lea    (%esi,%eax,1),%ecx
4a5d5f:	8a 14 39             	mov    (%ecx,%edi,1),%dl
4a5d62:	8a 06                	mov    (%esi),%al
4a5d64:	88 01                	mov    %al,(%ecx)
4a5d66:	8b 44 24 18          	mov    0x18(%esp),%eax
4a5d6a:	88 16                	mov    %dl,(%esi)
4a5d6c:	3b eb                	cmp    %ebx,%ebp
4a5d6e:	72 e5                	jb     0x4a5d55
4a5d70:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a5d74:	8d 4c 24 24          	lea    0x24(%esp),%ecx
4a5d78:	0f 10 4c 24 24       	movups 0x24(%esp),%xmm1
4a5d7d:	0f 10 44 24 34       	movups 0x34(%esp),%xmm0
4a5d82:	ff 30                	push   (%eax)
4a5d84:	8b 40 08             	mov    0x8(%eax),%eax
4a5d87:	66 0f ef c8          	pxor   %xmm0,%xmm1
4a5d8b:	51                   	push   %ecx
4a5d8c:	51                   	push   %ecx
4a5d8d:	0f 11 4c 24 30       	movups %xmm1,0x30(%esp)
4a5d92:	ff d0                	call   *%eax
4a5d94:	0f 10 4c 24 30       	movups 0x30(%esp),%xmm1
4a5d99:	8b 44 24 20          	mov    0x20(%esp),%eax
4a5d9d:	83 c4 0c             	add    $0xc,%esp
4a5da0:	0f 10 44 24 34       	movups 0x34(%esp),%xmm0
4a5da5:	5f                   	pop    %edi
4a5da6:	5e                   	pop    %esi
4a5da7:	66 0f ef c8          	pxor   %xmm0,%xmm1
4a5dab:	5d                   	pop    %ebp
4a5dac:	0f 11 48 f0          	movups %xmm1,-0x10(%eax)
4a5db0:	33 c0                	xor    %eax,%eax
4a5db2:	5b                   	pop    %ebx
4a5db3:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4a5db7:	33 cc                	xor    %esp,%ecx
4a5db9:	e8 1c b7 13 00       	call   0x5e14da
4a5dbe:	83 c4 48             	add    $0x48,%esp
4a5dc1:	c3                   	ret
4a5dc2:	8b c1                	mov    %ecx,%eax
4a5dc4:	8b fe                	mov    %esi,%edi
4a5dc6:	0f a4 d0 01          	shld   $0x1,%edx,%eax
4a5dca:	33 f6                	xor    %esi,%esi
4a5dcc:	c1 e9 1f             	shr    $0x1f,%ecx
4a5dcf:	33 f0                	xor    %eax,%esi
4a5dd1:	c1 ff 1f             	sar    $0x1f,%edi
4a5dd4:	8b 44 24 18          	mov    0x18(%esp),%eax
4a5dd8:	03 d2                	add    %edx,%edx
4a5dda:	0f a4 e8 01          	shld   $0x1,%ebp,%eax
4a5dde:	81 e7 87 00 00 00    	and    $0x87,%edi
4a5de4:	89 74 24 48          	mov    %esi,0x48(%esp)
4a5de8:	03 ed                	add    %ebp,%ebp
4a5dea:	33 fa                	xor    %edx,%edi
4a5dec:	0b cd                	or     %ebp,%ecx
4a5dee:	89 7c 24 44          	mov    %edi,0x44(%esp)
4a5df2:	8b 6c 24 20          	mov    0x20(%esp),%ebp
4a5df6:	33 d2                	xor    %edx,%edx
4a5df8:	0b d0                	or     %eax,%edx
4a5dfa:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a5dfe:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
4a5e02:	89 54 24 50          	mov    %edx,0x50(%esp)
4a5e06:	8b 45 04             	mov    0x4(%ebp),%eax
4a5e09:	8b 4d 00             	mov    0x0(%ebp),%ecx
4a5e0c:	33 c6                	xor    %esi,%eax
4a5e0e:	8b 74 24 1c          	mov    0x1c(%esp),%esi
4a5e12:	33 cf                	xor    %edi,%ecx
4a5e14:	89 44 24 28          	mov    %eax,0x28(%esp)
4a5e18:	8b 45 0c             	mov    0xc(%ebp),%eax
4a5e1b:	33 c2                	xor    %edx,%eax
4a5e1d:	89 4c 24 24          	mov    %ecx,0x24(%esp)
4a5e21:	ff 36                	push   (%esi)
4a5e23:	8b 4d 08             	mov    0x8(%ebp),%ecx
4a5e26:	33 4c 24 14          	xor    0x14(%esp),%ecx
4a5e2a:	89 44 24 34          	mov    %eax,0x34(%esp)
4a5e2e:	8d 44 24 28          	lea    0x28(%esp),%eax
4a5e32:	50                   	push   %eax
4a5e33:	50                   	push   %eax
4a5e34:	8b 46 08             	mov    0x8(%esi),%eax
4a5e37:	89 4c 24 38          	mov    %ecx,0x38(%esp)
4a5e3b:	ff d0                	call   *%eax
4a5e3d:	0f 10 44 24 30       	movups 0x30(%esp),%xmm0
4a5e42:	8b 7c 24 20          	mov    0x20(%esp),%edi
4a5e46:	83 c4 0c             	add    $0xc,%esp
4a5e49:	0f 10 4c 24 44       	movups 0x44(%esp),%xmm1
4a5e4e:	66 0f ef c8          	pxor   %xmm0,%xmm1
4a5e52:	0f 11 4c 24 24       	movups %xmm1,0x24(%esp)
4a5e57:	85 db                	test   %ebx,%ebx
4a5e59:	74 28                	je     0x4a5e83
4a5e5b:	8d 54 24 24          	lea    0x24(%esp),%edx
4a5e5f:	2b ef                	sub    %edi,%ebp
4a5e61:	8d 77 10             	lea    0x10(%edi),%esi
4a5e64:	8a 0c 2e             	mov    (%esi,%ebp,1),%cl
4a5e67:	8d 76 01             	lea    0x1(%esi),%esi
4a5e6a:	8a 02                	mov    (%edx),%al
4a5e6c:	8d 52 01             	lea    0x1(%edx),%edx
4a5e6f:	88 46 ff             	mov    %al,-0x1(%esi)
4a5e72:	88 4a ff             	mov    %cl,-0x1(%edx)
4a5e75:	83 eb 01             	sub    $0x1,%ebx
4a5e78:	75 ea                	jne    0x4a5e64
4a5e7a:	0f 10 4c 24 24       	movups 0x24(%esp),%xmm1
4a5e7f:	8b 74 24 1c          	mov    0x1c(%esp),%esi
4a5e83:	ff 36                	push   (%esi)
4a5e85:	0f 10 44 24 38       	movups 0x38(%esp),%xmm0
4a5e8a:	8d 44 24 28          	lea    0x28(%esp),%eax
4a5e8e:	50                   	push   %eax
4a5e8f:	66 0f ef c8          	pxor   %xmm0,%xmm1
4a5e93:	50                   	push   %eax
4a5e94:	8b 46 08             	mov    0x8(%esi),%eax
4a5e97:	0f 11 4c 24 30       	movups %xmm1,0x30(%esp)
4a5e9c:	ff d0                	call   *%eax
4a5e9e:	8b 4c 24 40          	mov    0x40(%esp),%ecx
4a5ea2:	83 c4 0c             	add    $0xc,%esp
4a5ea5:	33 4c 24 24          	xor    0x24(%esp),%ecx
4a5ea9:	8b 44 24 38          	mov    0x38(%esp),%eax
4a5ead:	33 44 24 28          	xor    0x28(%esp),%eax
4a5eb1:	89 0f                	mov    %ecx,(%edi)
4a5eb3:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
4a5eb7:	33 4c 24 2c          	xor    0x2c(%esp),%ecx
4a5ebb:	89 47 04             	mov    %eax,0x4(%edi)
4a5ebe:	8b 44 24 40          	mov    0x40(%esp),%eax
4a5ec2:	33 44 24 30          	xor    0x30(%esp),%eax
4a5ec6:	89 4f 08             	mov    %ecx,0x8(%edi)
4a5ec9:	89 47 0c             	mov    %eax,0xc(%edi)
4a5ecc:	8b 4c 24 54          	mov    0x54(%esp),%ecx
4a5ed0:	33 c0                	xor    %eax,%eax
4a5ed2:	5f                   	pop    %edi
4a5ed3:	5e                   	pop    %esi
4a5ed4:	5d                   	pop    %ebp
4a5ed5:	5b                   	pop    %ebx
4a5ed6:	33 cc                	xor    %esp,%ecx
4a5ed8:	e8 fd b5 13 00       	call   0x5e14da
4a5edd:	83 c4 48             	add    $0x48,%esp
4a5ee0:	c3                   	ret
4a5ee1:	cc                   	int3
4a5ee2:	cc                   	int3
4a5ee3:	cc                   	int3
4a5ee4:	cc                   	int3
4a5ee5:	cc                   	int3
4a5ee6:	cc                   	int3
4a5ee7:	cc                   	int3
4a5ee8:	cc                   	int3
4a5ee9:	cc                   	int3
4a5eea:	cc                   	int3
4a5eeb:	cc                   	int3
4a5eec:	cc                   	int3
4a5eed:	cc                   	int3
4a5eee:	cc                   	int3
4a5eef:	cc                   	int3
4a5ef0:	b8 28 00 00 00       	mov    $0x28,%eax
4a5ef5:	e8 f6 b5 13 00       	call   0x5e14f0
4a5efa:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4a5eff:	33 c4                	xor    %esp,%eax
4a5f01:	89 44 24 24          	mov    %eax,0x24(%esp)
4a5f05:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
4a5f09:	8b 44 24 40          	mov    0x40(%esp),%eax
4a5f0d:	83 e9 08             	sub    $0x8,%ecx
4a5f10:	8b 54 24 38          	mov    0x38(%esp),%edx
4a5f14:	89 44 24 08          	mov    %eax,0x8(%esp)
4a5f18:	89 0c 24             	mov    %ecx,(%esp)
4a5f1b:	55                   	push   %ebp
4a5f1c:	8b 6c 24 30          	mov    0x30(%esp),%ebp
4a5f20:	56                   	push   %esi
4a5f21:	8b 74 24 3c          	mov    0x3c(%esp),%esi
4a5f25:	89 74 24 18          	mov    %esi,0x18(%esp)
4a5f29:	f6 c1 07             	test   $0x7,%cl
4a5f2c:	0f 85 0d 01 00 00    	jne    0x4a603f
4a5f32:	8d 41 f0             	lea    -0x10(%ecx),%eax
4a5f35:	3d f0 ff ff 7f       	cmp    $0x7ffffff0,%eax
4a5f3a:	0f 87 ff 00 00 00    	ja     0x4a603f
4a5f40:	8b c1                	mov    %ecx,%eax
4a5f42:	c1 e8 03             	shr    $0x3,%eax
4a5f45:	53                   	push   %ebx
4a5f46:	57                   	push   %edi
4a5f47:	51                   	push   %ecx
4a5f48:	8d 1c 40             	lea    (%eax,%eax,2),%ebx
4a5f4b:	8b 02                	mov    (%edx),%eax
4a5f4d:	89 44 24 28          	mov    %eax,0x28(%esp)
4a5f51:	03 db                	add    %ebx,%ebx
4a5f53:	8b 42 04             	mov    0x4(%edx),%eax
4a5f56:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4a5f5a:	8d 42 08             	lea    0x8(%edx),%eax
4a5f5d:	50                   	push   %eax
4a5f5e:	56                   	push   %esi
4a5f5f:	e8 1c d5 13 00       	call   0x5e3480
4a5f64:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4a5f68:	8d 4e f8             	lea    -0x8(%esi),%ecx
4a5f6b:	83 c4 0c             	add    $0xc,%esp
4a5f6e:	b8 06 00 00 00       	mov    $0x6,%eax
4a5f73:	03 ca                	add    %edx,%ecx
4a5f75:	89 44 24 14          	mov    %eax,0x14(%esp)
4a5f79:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4a5f7d:	0f 1f 00             	nopl   (%eax)
4a5f80:	8b f1                	mov    %ecx,%esi
4a5f82:	85 d2                	test   %edx,%edx
4a5f84:	74 6e                	je     0x4a5ff4
4a5f86:	8d 7a ff             	lea    -0x1(%edx),%edi
4a5f89:	c1 ef 03             	shr    $0x3,%edi
4a5f8c:	47                   	inc    %edi
4a5f8d:	0f 1f 00             	nopl   (%eax)
4a5f90:	30 5c 24 2b          	xor    %bl,0x2b(%esp)
4a5f94:	81 fb ff 00 00 00    	cmp    $0xff,%ebx
4a5f9a:	76 1b                	jbe    0x4a5fb7
4a5f9c:	8b c3                	mov    %ebx,%eax
4a5f9e:	c1 e8 08             	shr    $0x8,%eax
4a5fa1:	30 44 24 2a          	xor    %al,0x2a(%esp)
4a5fa5:	8b c3                	mov    %ebx,%eax
4a5fa7:	c1 e8 10             	shr    $0x10,%eax
4a5faa:	30 44 24 29          	xor    %al,0x29(%esp)
4a5fae:	8b c3                	mov    %ebx,%eax
4a5fb0:	c1 e8 18             	shr    $0x18,%eax
4a5fb3:	30 44 24 28          	xor    %al,0x28(%esp)
4a5fb7:	8b 06                	mov    (%esi),%eax
4a5fb9:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4a5fbd:	8b 46 04             	mov    0x4(%esi),%eax
4a5fc0:	89 44 24 30          	mov    %eax,0x30(%esp)
4a5fc4:	8d 44 24 24          	lea    0x24(%esp),%eax
4a5fc8:	55                   	push   %ebp
4a5fc9:	50                   	push   %eax
4a5fca:	50                   	push   %eax
4a5fcb:	ff 54 24 24          	call   *0x24(%esp)
4a5fcf:	8b 44 24 38          	mov    0x38(%esp),%eax
4a5fd3:	83 c4 0c             	add    $0xc,%esp
4a5fd6:	89 06                	mov    %eax,(%esi)