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)
4a5fd8:	4b                   	dec    %ebx
4a5fd9:	8b 44 24 30          	mov    0x30(%esp),%eax
4a5fdd:	89 46 04             	mov    %eax,0x4(%esi)
4a5fe0:	83 ee 08             	sub    $0x8,%esi
4a5fe3:	83 ef 01             	sub    $0x1,%edi
4a5fe6:	75 a8                	jne    0x4a5f90
4a5fe8:	8b 54 24 10          	mov    0x10(%esp),%edx
4a5fec:	8b 44 24 14          	mov    0x14(%esp),%eax
4a5ff0:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4a5ff4:	83 e8 01             	sub    $0x1,%eax
4a5ff7:	89 44 24 14          	mov    %eax,0x14(%esp)
4a5ffb:	75 83                	jne    0x4a5f80
4a5ffd:	8b 44 24 40          	mov    0x40(%esp),%eax
4a6001:	be 10 8c 69 00       	mov    $0x698c10,%esi
4a6006:	85 c0                	test   %eax,%eax
4a6008:	5f                   	pop    %edi
4a6009:	0f 45 f0             	cmovne %eax,%esi
4a600c:	8d 44 24 20          	lea    0x20(%esp),%eax
4a6010:	8b 08                	mov    (%eax),%ecx
4a6012:	5b                   	pop    %ebx
4a6013:	3b 0e                	cmp    (%esi),%ecx
4a6015:	75 1b                	jne    0x4a6032
4a6017:	8b 48 04             	mov    0x4(%eax),%ecx
4a601a:	3b 4e 04             	cmp    0x4(%esi),%ecx
4a601d:	75 13                	jne    0x4a6032
4a601f:	5e                   	pop    %esi
4a6020:	8b c2                	mov    %edx,%eax
4a6022:	5d                   	pop    %ebp
4a6023:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a6027:	33 cc                	xor    %esp,%ecx
4a6029:	e8 ac b4 13 00       	call   0x5e14da
4a602e:	83 c4 28             	add    $0x28,%esp
4a6031:	c3                   	ret
4a6032:	52                   	push   %edx
4a6033:	ff 74 24 1c          	push   0x1c(%esp)
4a6037:	e8 14 a3 ff ff       	call   0x4a0350
4a603c:	83 c4 08             	add    $0x8,%esp
4a603f:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4a6043:	33 c0                	xor    %eax,%eax
4a6045:	5e                   	pop    %esi
4a6046:	5d                   	pop    %ebp
4a6047:	33 cc                	xor    %esp,%ecx
4a6049:	e8 8c b4 13 00       	call   0x5e14da
4a604e:	83 c4 28             	add    $0x28,%esp
4a6051:	c3                   	ret
4a6052:	cc                   	int3
4a6053:	cc                   	int3
4a6054:	cc                   	int3
4a6055:	cc                   	int3
4a6056:	cc                   	int3
4a6057:	cc                   	int3
4a6058:	cc                   	int3
4a6059:	cc                   	int3
4a605a:	cc                   	int3
4a605b:	cc                   	int3
4a605c:	cc                   	int3
4a605d:	cc                   	int3
4a605e:	cc                   	int3
4a605f:	cc                   	int3
4a6060:	b8 24 00 00 00       	mov    $0x24,%eax
4a6065:	e8 86 b4 13 00       	call   0x5e14f0
4a606a:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4a606f:	33 c4                	xor    %esp,%eax
4a6071:	89 44 24 20          	mov    %eax,0x20(%esp)
4a6075:	8b 4c 24 38          	mov    0x38(%esp),%ecx
4a6079:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4a607d:	8b 54 24 34          	mov    0x34(%esp),%edx
4a6081:	89 44 24 04          	mov    %eax,0x4(%esp)
4a6085:	55                   	push   %ebp
4a6086:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
4a608a:	56                   	push   %esi
4a608b:	8b 74 24 38          	mov    0x38(%esp),%esi
4a608f:	89 74 24 14          	mov    %esi,0x14(%esp)
4a6093:	f6 c1 07             	test   $0x7,%cl
4a6096:	0f 85 f8 00 00 00    	jne    0x4a6194
4a609c:	8d 41 f8             	lea    -0x8(%ecx),%eax
4a609f:	3d f8 ff ff 7f       	cmp    $0x7ffffff8,%eax
4a60a4:	0f 87 ea 00 00 00    	ja     0x4a6194
4a60aa:	53                   	push   %ebx
4a60ab:	57                   	push   %edi
4a60ac:	51                   	push   %ecx
4a60ad:	83 c6 08             	add    $0x8,%esi
4a60b0:	bb 01 00 00 00       	mov    $0x1,%ebx
4a60b5:	52                   	push   %edx
4a60b6:	56                   	push   %esi
4a60b7:	89 74 24 24          	mov    %esi,0x24(%esp)
4a60bb:	e8 c0 d3 13 00       	call   0x5e3480
4a60c0:	8b 44 24 48          	mov    0x48(%esp),%eax
4a60c4:	83 c4 0c             	add    $0xc,%esp
4a60c7:	85 c0                	test   %eax,%eax
4a60c9:	b9 10 8c 69 00       	mov    $0x698c10,%ecx
4a60ce:	0f 45 c8             	cmovne %eax,%ecx
4a60d1:	8b 01                	mov    (%ecx),%eax
4a60d3:	89 44 24 20          	mov    %eax,0x20(%esp)
4a60d7:	8b 41 04             	mov    0x4(%ecx),%eax
4a60da:	8b 4c 24 48          	mov    0x48(%esp),%ecx
4a60de:	89 44 24 24          	mov    %eax,0x24(%esp)
4a60e2:	b8 06 00 00 00       	mov    $0x6,%eax
4a60e7:	89 44 24 10          	mov    %eax,0x10(%esp)
4a60eb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4a60f0:	85 c9                	test   %ecx,%ecx
4a60f2:	74 6c                	je     0x4a6160
4a60f4:	8d 79 ff             	lea    -0x1(%ecx),%edi
4a60f7:	c1 ef 03             	shr    $0x3,%edi
4a60fa:	47                   	inc    %edi
4a60fb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4a6100:	8b 06                	mov    (%esi),%eax
4a6102:	89 44 24 28          	mov    %eax,0x28(%esp)
4a6106:	8b 46 04             	mov    0x4(%esi),%eax
4a6109:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4a610d:	8d 44 24 20          	lea    0x20(%esp),%eax
4a6111:	55                   	push   %ebp
4a6112:	50                   	push   %eax
4a6113:	50                   	push   %eax
4a6114:	ff 54 24 20          	call   *0x20(%esp)
4a6118:	30 5c 24 33          	xor    %bl,0x33(%esp)
4a611c:	83 c4 0c             	add    $0xc,%esp
4a611f:	81 fb ff 00 00 00    	cmp    $0xff,%ebx
4a6125:	76 1b                	jbe    0x4a6142
4a6127:	8b c3                	mov    %ebx,%eax
4a6129:	c1 e8 08             	shr    $0x8,%eax
4a612c:	30 44 24 26          	xor    %al,0x26(%esp)
4a6130:	8b c3                	mov    %ebx,%eax
4a6132:	c1 e8 10             	shr    $0x10,%eax
4a6135:	30 44 24 25          	xor    %al,0x25(%esp)
4a6139:	8b c3                	mov    %ebx,%eax
4a613b:	c1 e8 18             	shr    $0x18,%eax
4a613e:	30 44 24 24          	xor    %al,0x24(%esp)
4a6142:	8b 44 24 28          	mov    0x28(%esp),%eax
4a6146:	43                   	inc    %ebx
4a6147:	89 06                	mov    %eax,(%esi)
4a6149:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4a614d:	89 46 04             	mov    %eax,0x4(%esi)
4a6150:	83 c6 08             	add    $0x8,%esi
4a6153:	83 ef 01             	sub    $0x1,%edi
4a6156:	75 a8                	jne    0x4a6100
4a6158:	8b 4c 24 48          	mov    0x48(%esp),%ecx
4a615c:	8b 44 24 10          	mov    0x10(%esp),%eax
4a6160:	8b 74 24 18          	mov    0x18(%esp),%esi
4a6164:	83 e8 01             	sub    $0x1,%eax
4a6167:	89 44 24 10          	mov    %eax,0x10(%esp)
4a616b:	75 83                	jne    0x4a60f0
4a616d:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4a6171:	8b 44 24 20          	mov    0x20(%esp),%eax
4a6175:	5f                   	pop    %edi
4a6176:	5b                   	pop    %ebx
4a6177:	89 02                	mov    %eax,(%edx)
4a6179:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a617d:	5e                   	pop    %esi
4a617e:	89 42 04             	mov    %eax,0x4(%edx)
4a6181:	8d 41 08             	lea    0x8(%ecx),%eax
4a6184:	5d                   	pop    %ebp
4a6185:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4a6189:	33 cc                	xor    %esp,%ecx
4a618b:	e8 4a b3 13 00       	call   0x5e14da
4a6190:	83 c4 24             	add    $0x24,%esp
4a6193:	c3                   	ret
4a6194:	8b 4c 24 28          	mov    0x28(%esp),%ecx
4a6198:	33 c0                	xor    %eax,%eax
4a619a:	5e                   	pop    %esi
4a619b:	5d                   	pop    %ebp
4a619c:	33 cc                	xor    %esp,%ecx
4a619e:	e8 37 b3 13 00       	call   0x5e14da
4a61a3:	83 c4 24             	add    $0x24,%esp
4a61a6:	c3                   	ret
4a61a7:	cc                   	int3
4a61a8:	cc                   	int3
4a61a9:	cc                   	int3
4a61aa:	cc                   	int3
4a61ab:	cc                   	int3
4a61ac:	cc                   	int3
4a61ad:	cc                   	int3
4a61ae:	cc                   	int3
4a61af:	cc                   	int3
4a61b0:	68 13 04 00 00       	push   $0x413