5cac7f:	83 e1 f8             	and    $0xfffffff8,%ecx
5cac82:	57                   	push   %edi
5cac83:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5cac86:	8b 53 08             	mov    0x8(%ebx),%edx
5cac89:	8b 3a                	mov    (%edx),%edi
5cac8b:	8b 72 04             	mov    0x4(%edx),%esi
5cac8e:	89 38                	mov    %edi,(%eax)
5cac90:	90                   	nop
5cac91:	56                   	push   %esi
5cac92:	57                   	push   %edi
5cac93:	8d 86 01 00 01 00    	lea    0x10001(%esi),%eax
5cac99:	50                   	push   %eax
5cac9a:	51                   	push   %ecx
5cac9b:	52                   	push   %edx
5cac9c:	e8 0f d6 ff ff       	call   0x5c82b0
5caca1:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5caca4:	83 c4 14             	add    $0x14,%esp
5caca7:	3b c7                	cmp    %edi,%eax
5caca9:	8b 43 0c             	mov    0xc(%ebx),%eax
5cacac:	75 d8                	jne    0x5cac86
5cacae:	3b d6                	cmp    %esi,%edx
5cacb0:	75 d4                	jne    0x5cac86
5cacb2:	5f                   	pop    %edi
5cacb3:	5e                   	pop    %esi
5cacb4:	8b e5                	mov    %ebp,%esp
5cacb6:	5d                   	pop    %ebp
5cacb7:	8b e3                	mov    %ebx,%esp
5cacb9:	5b                   	pop    %ebx
5cacba:	c3                   	ret
5cacbb:	cc                   	int3
5cacbc:	cc                   	int3
5cacbd:	cc                   	int3
5cacbe:	cc                   	int3
5cacbf:	cc                   	int3
5cacc0:	55                   	push   %ebp
5cacc1:	8b ec                	mov    %esp,%ebp
5cacc3:	6a ff                	push   $0xffffffff
5cacc5:	68 00 0b 60 00       	push   $0x600b00
5cacca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5cacd0:	50                   	push   %eax
5cacd1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5cacd8:	83 ec 1c             	sub    $0x1c,%esp
5cacdb:	53                   	push   %ebx
5cacdc:	56                   	push   %esi
5cacdd:	57                   	push   %edi
5cacde:	89 65 f0             	mov    %esp,-0x10(%ebp)
5cace1:	8b f9                	mov    %ecx,%edi
5cace3:	89 7d e0             	mov    %edi,-0x20(%ebp)
5cace6:	8b 75 08             	mov    0x8(%ebp),%esi
5cace9:	2b 37                	sub    (%edi),%esi
5caceb:	b8 93 24 49 92       	mov    $0x92492493,%eax
5cacf0:	f7 ee                	imul   %esi
5cacf2:	03 d6                	add    %esi,%edx
5cacf4:	c1 fa 04             	sar    $0x4,%edx
5cacf7:	8b f2                	mov    %edx,%esi
5cacf9:	c1 ee 1f             	shr    $0x1f,%esi
5cacfc:	03 f2                	add    %edx,%esi
5cacfe:	8b 4f 04             	mov    0x4(%edi),%ecx
5cad01:	2b 0f                	sub    (%edi),%ecx
5cad03:	b8 93 24 49 92       	mov    $0x92492493,%eax
5cad08:	f7 e9                	imul   %ecx
5cad0a:	03 d1                	add    %ecx,%edx
5cad0c:	c1 fa 04             	sar    $0x4,%edx
5cad0f:	8b c2                	mov    %edx,%eax
5cad11:	c1 e8 1f             	shr    $0x1f,%eax
5cad14:	03 c2                	add    %edx,%eax
5cad16:	89 45 dc             	mov    %eax,-0x24(%ebp)
5cad19:	3d 49 92 24 09       	cmp    $0x9249249,%eax
5cad1e:	0f 84 88 01 00 00    	je     0x5caeac
5cad24:	8d 58 01             	lea    0x1(%eax),%ebx
5cad27:	8b 4f 08             	mov    0x8(%edi),%ecx
5cad2a:	2b 0f                	sub    (%edi),%ecx
5cad2c:	b8 93 24 49 92       	mov    $0x92492493,%eax
5cad31:	f7 e9                	imul   %ecx
5cad33:	03 d1                	add    %ecx,%edx
5cad35:	c1 fa 04             	sar    $0x4,%edx
5cad38:	8b ca                	mov    %edx,%ecx
5cad3a:	c1 e9 1f             	shr    $0x1f,%ecx
5cad3d:	03 ca                	add    %edx,%ecx
5cad3f:	8b d1                	mov    %ecx,%edx
5cad41:	d1 ea                	shr    $1,%edx
5cad43:	b8 49 92 24 09       	mov    $0x9249249,%eax
5cad48:	2b c2                	sub    %edx,%eax
5cad4a:	3b c8                	cmp    %eax,%ecx
5cad4c:	0f 87 55 01 00 00    	ja     0x5caea7
5cad52:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
5cad55:	8b cb                	mov    %ebx,%ecx
5cad57:	3b c3                	cmp    %ebx,%eax
5cad59:	0f 43 c8             	cmovae %eax,%ecx
5cad5c:	81 f9 49 92 24 09    	cmp    $0x9249249,%ecx
5cad62:	0f 87 3f 01 00 00    	ja     0x5caea7
5cad68:	8d 04 cd 00 00 00 00 	lea    0x0(,%ecx,8),%eax
5cad6f:	2b c1                	sub    %ecx,%eax
5cad71:	c1 e0 02             	shl    $0x2,%eax
5cad74:	89 45 d8             	mov    %eax,-0x28(%ebp)
5cad77:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5cad7a:	85 c0                	test   %eax,%eax
5cad7c:	75 0a                	jne    0x5cad88
5cad7e:	33 db                	xor    %ebx,%ebx
5cad80:	89 5d ec             	mov    %ebx,-0x14(%ebp)
5cad83:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5cad86:	eb 3f                	jmp    0x5cadc7
5cad88:	3d 00 10 00 00       	cmp    $0x1000,%eax
5cad8d:	72 2a                	jb     0x5cadb9
5cad8f:	8d 48 23             	lea    0x23(%eax),%ecx
5cad92:	3b c8                	cmp    %eax,%ecx
5cad94:	0f 86 0d 01 00 00    	jbe    0x5caea7
5cad9a:	51                   	push   %ecx
5cad9b:	e8 85 64 00 00       	call   0x5d1225
5cada0:	83 c4 04             	add    $0x4,%esp
5cada3:	85 c0                	test   %eax,%eax
5cada5:	0f 84 06 01 00 00    	je     0x5caeb1
5cadab:	8d 58 23             	lea    0x23(%eax),%ebx
5cadae:	83 e3 e0             	and    $0xffffffe0,%ebx
5cadb1:	89 43 fc             	mov    %eax,-0x4(%ebx)
5cadb4:	89 5d ec             	mov    %ebx,-0x14(%ebp)
5cadb7:	eb 0e                	jmp    0x5cadc7
5cadb9:	50                   	push   %eax
5cadba:	e8 66 64 00 00       	call   0x5d1225
5cadbf:	83 c4 04             	add    $0x4,%esp
5cadc2:	8b d8                	mov    %eax,%ebx
5cadc4:	89 45 ec             	mov    %eax,-0x14(%ebp)
5cadc7:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5cadce:	8d 04 f5 00 00 00 00 	lea    0x0(,%esi,8),%eax
5cadd5:	2b c6                	sub    %esi,%eax
5cadd7:	8d 04 83             	lea    (%ebx,%eax,4),%eax
5cadda:	89 45 e8             	mov    %eax,-0x18(%ebp)
5caddd:	b9 07 00 00 00       	mov    $0x7,%ecx
5cade2:	8b 75 0c             	mov    0xc(%ebp),%esi
5cade5:	8b f8                	mov    %eax,%edi
5cade7:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
5cade9:	8b 7d e0             	mov    -0x20(%ebp),%edi
5cadec:	8b 57 04             	mov    0x4(%edi),%edx
5cadef:	8b 07                	mov    (%edi),%eax
5cadf1:	8b 75 08             	mov    0x8(%ebp),%esi
5cadf4:	3b f2                	cmp    %edx,%esi
5cadf6:	75 04                	jne    0x5cadfc
5cadf8:	8b cb                	mov    %ebx,%ecx
5cadfa:	eb 17                	jmp    0x5cae13
5cadfc:	57                   	push   %edi
5cadfd:	53                   	push   %ebx
5cadfe:	56                   	push   %esi
5cadff:	50                   	push   %eax
5cae00:	e8 db 00 00 00       	call   0x5caee0
5cae05:	83 c4 10             	add    $0x10,%esp
5cae08:	8b c6                	mov    %esi,%eax
5cae0a:	8b 57 04             	mov    0x4(%edi),%edx
5cae0d:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5cae10:	83 c1 1c             	add    $0x1c,%ecx
5cae13:	57                   	push   %edi
5cae14:	51                   	push   %ecx
5cae15:	52                   	push   %edx
5cae16:	50                   	push   %eax
5cae17:	e8 c4 00 00 00       	call   0x5caee0
5cae1c:	83 c4 10             	add    $0x10,%esp
5cae1f:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5cae26:	8b 37                	mov    (%edi),%esi
5cae28:	85 f6                	test   %esi,%esi
5cae2a:	74 48                	je     0x5cae74
5cae2c:	8b 4f 08             	mov    0x8(%edi),%ecx
5cae2f:	2b ce                	sub    %esi,%ecx
5cae31:	b8 93 24 49 92       	mov    $0x92492493,%eax
5cae36:	f7 e9                	imul   %ecx
5cae38:	03 d1                	add    %ecx,%edx
5cae3a:	c1 fa 04             	sar    $0x4,%edx
5cae3d:	8b c2                	mov    %edx,%eax
5cae3f:	c1 e8 1f             	shr    $0x1f,%eax
5cae42:	03 c2                	add    %edx,%eax
5cae44:	8d 0c c5 00 00 00 00 	lea    0x0(,%eax,8),%ecx
5cae4b:	2b c8                	sub    %eax,%ecx
5cae4d:	c1 e1 02             	shl    $0x2,%ecx
5cae50:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5cae56:	72 12                	jb     0x5cae6a
5cae58:	83 c1 23             	add    $0x23,%ecx
5cae5b:	8b 56 fc             	mov    -0x4(%esi),%edx
5cae5e:	2b f2                	sub    %edx,%esi
5cae60:	8d 46 fc             	lea    -0x4(%esi),%eax
5cae63:	83 f8 1f             	cmp    $0x1f,%eax
5cae66:	77 49                	ja     0x5caeb1
5cae68:	8b f2                	mov    %edx,%esi
5cae6a:	51                   	push   %ecx
5cae6b:	56                   	push   %esi
5cae6c:	e8 e4 63 00 00       	call   0x5d1255
5cae71:	83 c4 08             	add    $0x8,%esp
5cae74:	89 1f                	mov    %ebx,(%edi)
5cae76:	8b 45 dc             	mov    -0x24(%ebp),%eax
5cae79:	40                   	inc    %eax
5cae7a:	8d 0c c5 00 00 00 00 	lea    0x0(,%eax,8),%ecx
5cae81:	2b c8                	sub    %eax,%ecx
5cae83:	8d 0c 8b             	lea    (%ebx,%ecx,4),%ecx
5cae86:	89 4f 04             	mov    %ecx,0x4(%edi)
5cae89:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5cae8c:	03 cb                	add    %ebx,%ecx
5cae8e:	89 4f 08             	mov    %ecx,0x8(%edi)
5cae91:	8b 45 e8             	mov    -0x18(%ebp),%eax
5cae94:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5cae97:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5cae9e:	5f                   	pop    %edi
5cae9f:	5e                   	pop    %esi
5caea0:	5b                   	pop    %ebx
5caea1:	8b e5                	mov    %ebp,%esp
5caea3:	5d                   	pop    %ebp
5caea4:	c2 08 00             	ret    $0x8
5caea7:	e8 44 c7 e7 ff       	call   0x4475f0
5caeac:	e8 ef 18 e9 ff       	call   0x45c7a0
5caeb1:	e8 3a b3 00 00       	call   0x5d61f0
5caeb6:	ff 75 e4             	push   -0x1c(%ebp)
5caeb9:	ff 75 ec             	push   -0x14(%ebp)
5caebc:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5caebf:	e8 3c 09 00 00       	call   0x5cb800
5caec4:	6a 00                	push   $0x0
5caec6:	6a 00                	push   $0x0
5caec8:	e8 72 8c 00 00       	call   0x5d3b3f
5caecd:	cc                   	int3
5caece:	cc                   	int3
5caecf:	cc                   	int3
5caed0:	cc                   	int3
5caed1:	cc                   	int3
5caed2:	cc                   	int3
5caed3:	cc                   	int3
5caed4:	cc                   	int3
5caed5:	cc                   	int3
5caed6:	cc                   	int3
5caed7:	cc                   	int3
5caed8:	cc                   	int3
5caed9:	cc                   	int3
5caeda:	cc                   	int3
5caedb:	cc                   	int3
5caedc:	cc                   	int3
5caedd:	cc                   	int3
5caede:	cc                   	int3
5caedf:	cc                   	int3
5caee0:	55                   	push   %ebp
5caee1:	8b ec                	mov    %esp,%ebp
5caee3:	8b 45 08             	mov    0x8(%ebp),%eax
5caee6:	56                   	push   %esi
5caee7:	8b 75 0c             	mov    0xc(%ebp),%esi
5caeea:	57                   	push   %edi
5caeeb:	8b 7d 10             	mov    0x10(%ebp),%edi
5caeee:	2b f0                	sub    %eax,%esi
5caef0:	56                   	push   %esi
5caef1:	50                   	push   %eax
5caef2:	57                   	push   %edi
5caef3:	e8 d8 7e 00 00       	call   0x5d2dd0
5caef8:	b8 93 24 49 92       	mov    $0x92492493,%eax
5caefd:	83 c4 0c             	add    $0xc,%esp
5caf00:	f7 ee                	imul   %esi
5caf02:	03 d6                	add    %esi,%edx
5caf04:	c1 fa 04             	sar    $0x4,%edx
5caf07:	8b ca                	mov    %edx,%ecx
5caf09:	c1 e9 1f             	shr    $0x1f,%ecx
5caf0c:	03 ca                	add    %edx,%ecx
5caf0e:	8d 04 cd 00 00 00 00 	lea    0x0(,%ecx,8),%eax
5caf15:	2b c1                	sub    %ecx,%eax
5caf17:	8d 04 87             	lea    (%edi,%eax,4),%eax
5caf1a:	5f                   	pop    %edi
5caf1b:	5e                   	pop    %esi
5caf1c:	5d                   	pop    %ebp
5caf1d:	c3                   	ret
5caf1e:	cc                   	int3
5caf1f:	cc                   	int3
5caf20:	55                   	push   %ebp
5caf21:	8b ec                	mov    %esp,%ebp
5caf23:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5caf29:	6a ff                	push   $0xffffffff
5caf2b:	68 20 fc 5f 00       	push   $0x5ffc20
5caf30:	50                   	push   %eax
5caf31:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5caf38:	56                   	push   %esi
5caf39:	57                   	push   %edi
5caf3a:	8b f9                	mov    %ecx,%edi
5caf3c:	8b 37                	mov    (%edi),%esi
5caf3e:	85 f6                	test   %esi,%esi
5caf40:	74 5c                	je     0x5caf9e
5caf42:	8b 4f 08             	mov    0x8(%edi),%ecx
5caf45:	b8 93 24 49 92       	mov    $0x92492493,%eax
5caf4a:	2b ce                	sub    %esi,%ecx
5caf4c:	f7 e9                	imul   %ecx
5caf4e:	03 d1                	add    %ecx,%edx
5caf50:	c1 fa 04             	sar    $0x4,%edx
5caf53:	8b c2                	mov    %edx,%eax
5caf55:	c1 e8 1f             	shr    $0x1f,%eax
5caf58:	03 c2                	add    %edx,%eax
5caf5a:	8d 0c c5 00 00 00 00 	lea    0x0(,%eax,8),%ecx
5caf61:	2b c8                	sub    %eax,%ecx
5caf63:	c1 e1 02             	shl    $0x2,%ecx
5caf66:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5caf6c:	72 12                	jb     0x5caf80
5caf6e:	8b 56 fc             	mov    -0x4(%esi),%edx
5caf71:	83 c1 23             	add    $0x23,%ecx
5caf74:	2b f2                	sub    %edx,%esi
5caf76:	8d 46 fc             	lea    -0x4(%esi),%eax
5caf79:	83 f8 1f             	cmp    $0x1f,%eax
5caf7c:	77 30                	ja     0x5cafae
5caf7e:	8b f2                	mov    %edx,%esi
5caf80:	51                   	push   %ecx
5caf81:	56                   	push   %esi
5caf82:	e8 ce 62 00 00       	call   0x5d1255
5caf87:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5caf8d:	83 c4 08             	add    $0x8,%esp
5caf90:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
5caf97:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
5caf9e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5cafa1:	5f                   	pop    %edi
5cafa2:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5cafa9:	5e                   	pop    %esi
5cafaa:	8b e5                	mov    %ebp,%esp
5cafac:	5d                   	pop    %ebp
5cafad:	c3                   	ret
5cafae:	e8 3d b2 00 00       	call   0x5d61f0
5cafb3:	cc                   	int3
5cafb4:	cc                   	int3
5cafb5:	cc                   	int3
5cafb6:	cc                   	int3
5cafb7:	cc                   	int3
5cafb8:	cc                   	int3
5cafb9:	cc                   	int3
5cafba:	cc                   	int3
5cafbb:	cc                   	int3
5cafbc:	cc                   	int3
5cafbd:	cc                   	int3
5cafbe:	cc                   	int3
5cafbf:	cc                   	int3
5cafc0:	55                   	push   %ebp
5cafc1:	8b ec                	mov    %esp,%ebp
5cafc3:	83 ec 28             	sub    $0x28,%esp
5cafc6:	53                   	push   %ebx
5cafc7:	56                   	push   %esi
5cafc8:	8b f1                	mov    %ecx,%esi
5cafca:	57                   	push   %edi
5cafcb:	ff 36                	push   (%esi)
5cafcd:	68 8c cf 66 00       	push   $0x66cf8c
5cafd2:	e8 29 0e ff ff       	call   0x5bbe00
5cafd7:	ff 76 08             	push   0x8(%esi)
5cafda:	33 ff                	xor    %edi,%edi
5cafdc:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5cafe3:	ff 76 0c             	push   0xc(%esi)
5cafe6:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
5cafed:	68 ac cf 66 00       	push   $0x66cfac
5caff2:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
5caff9:	89 7d f8             	mov    %edi,-0x8(%ebp)
5caffc:	89 7d e4             	mov    %edi,-0x1c(%ebp)
5cafff:	89 7d e8             	mov    %edi,-0x18(%ebp)
5cb002:	89 7d ec             	mov    %edi,-0x14(%ebp)
5cb005:	89 7d f0             	mov    %edi,-0x10(%ebp)
5cb008:	89 7d f4             	mov    %edi,-0xc(%ebp)
5cb00b:	89 7d d8             	mov    %edi,-0x28(%ebp)
5cb00e:	e8 ed 0d ff ff       	call   0x5bbe00
5cb013:	33 db                	xor    %ebx,%ebx
5cb015:	83 c4 14             	add    $0x14,%esp