4e7dfd:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e7e00:	03 d9                	add    %ecx,%ebx
4e7e02:	81 c3 00 00 04 00    	add    $0x40000,%ebx
4e7e08:	c1 fb 13             	sar    $0x13,%ebx
4e7e0b:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4e7e11:	8a 1c 1f             	mov    (%edi,%ebx,1),%bl
4e7e14:	88 1e                	mov    %bl,(%esi)
4e7e16:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e7e19:	2b d9                	sub    %ecx,%ebx
4e7e1b:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4e7e1e:	81 c3 00 00 04 00    	add    $0x40000,%ebx
4e7e24:	c1 fb 13             	sar    $0x13,%ebx
4e7e27:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4e7e2d:	8a 0c 19             	mov    (%ecx,%ebx,1),%cl
4e7e30:	88 4e 03             	mov    %cl,0x3(%esi)
4e7e33:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4e7e36:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4e7e39:	03 ca                	add    %edx,%ecx
4e7e3b:	81 c1 00 00 04 00    	add    $0x40000,%ecx
4e7e41:	c1 f9 13             	sar    $0x13,%ecx
4e7e44:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
4e7e4a:	8a 0c 0b             	mov    (%ebx,%ecx,1),%cl
4e7e4d:	88 4e 01             	mov    %cl,0x1(%esi)
4e7e50:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4e7e53:	2b ca                	sub    %edx,%ecx
4e7e55:	8b 55 e0             	mov    -0x20(%ebp),%edx
4e7e58:	81 c1 00 00 04 00    	add    $0x40000,%ecx
4e7e5e:	c1 f9 13             	sar    $0x13,%ecx
4e7e61:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
4e7e67:	83 c0 20             	add    $0x20,%eax
4e7e6a:	8a 14 0a             	mov    (%edx,%ecx,1),%dl
4e7e6d:	88 56 02             	mov    %dl,0x2(%esi)
4e7e70:	ff 45 dc             	incl   -0x24(%ebp)
4e7e73:	83 45 d8 04          	addl   $0x4,-0x28(%ebp)
4e7e77:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4e7e7a:	83 f9 04             	cmp    $0x4,%ecx
4e7e7d:	0f 8c 50 fe ff ff    	jl     0x4e7cd3
4e7e83:	5f                   	pop    %edi
4e7e84:	5e                   	pop    %esi
4e7e85:	5b                   	pop    %ebx
4e7e86:	8b e5                	mov    %ebp,%esp
4e7e88:	5d                   	pop    %ebp
4e7e89:	c2 08 00             	ret    $0x8
4e7e8c:	55                   	push   %ebp
4e7e8d:	8b ec                	mov    %esp,%ebp
4e7e8f:	83 c4 ac             	add    $0xffffffac,%esp
4e7e92:	53                   	push   %ebx
4e7e93:	56                   	push   %esi
4e7e94:	57                   	push   %edi
4e7e95:	8b 80 44 01 00 00    	mov    0x144(%eax),%eax
4e7e9b:	05 80 00 00 00       	add    $0x80,%eax
4e7ea0:	89 45 f4             	mov    %eax,-0xc(%ebp)
4e7ea3:	8d 45 ac             	lea    -0x54(%ebp),%eax
4e7ea6:	8b 52 50             	mov    0x50(%edx),%edx
4e7ea9:	89 55 f8             	mov    %edx,-0x8(%ebp)
4e7eac:	ba 08 00 00 00       	mov    $0x8,%edx
4e7eb1:	83 fa 06             	cmp    $0x6,%edx
4e7eb4:	0f 84 d0 00 00 00    	je     0x4e7f8a
4e7eba:	83 fa 04             	cmp    $0x4,%edx
4e7ebd:	0f 84 c7 00 00 00    	je     0x4e7f8a
4e7ec3:	83 fa 02             	cmp    $0x2,%edx
4e7ec6:	0f 84 be 00 00 00    	je     0x4e7f8a
4e7ecc:	66 83 79 10 00       	cmpw   $0x0,0x10(%ecx)
4e7ed1:	75 2b                	jne    0x4e7efe
4e7ed3:	66 83 79 30 00       	cmpw   $0x0,0x30(%ecx)
4e7ed8:	75 24                	jne    0x4e7efe
4e7eda:	66 83 79 50 00       	cmpw   $0x0,0x50(%ecx)
4e7edf:	75 1d                	jne    0x4e7efe
4e7ee1:	66 83 79 70 00       	cmpw   $0x0,0x70(%ecx)
4e7ee6:	75 16                	jne    0x4e7efe
4e7ee8:	0f bf 19             	movswl (%ecx),%ebx
4e7eeb:	8b 75 f8             	mov    -0x8(%ebp),%esi
4e7eee:	0f af 1e             	imul   (%esi),%ebx
4e7ef1:	c1 e3 02             	shl    $0x2,%ebx
4e7ef4:	89 18                	mov    %ebx,(%eax)
4e7ef6:	89 58 20             	mov    %ebx,0x20(%eax)
4e7ef9:	e9 8c 00 00 00       	jmp    0x4e7f8a
4e7efe:	0f bf 19             	movswl (%ecx),%ebx
4e7f01:	8b 75 f8             	mov    -0x8(%ebp),%esi
4e7f04:	0f af 1e             	imul   (%esi),%ebx
4e7f07:	c1 e3 0f             	shl    $0xf,%ebx
4e7f0a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4e7f0d:	0f bf 59 70          	movswl 0x70(%ecx),%ebx
4e7f11:	8b 75 f8             	mov    -0x8(%ebp),%esi
4e7f14:	8b 7d f8             	mov    -0x8(%ebp),%edi
4e7f17:	0f af 9e e0 00 00 00 	imul   0xe0(%esi),%ebx
4e7f1e:	69 f3 ee e8 ff ff    	imul   $0xffffe8ee,%ebx,%esi
4e7f24:	0f bf 59 50          	movswl 0x50(%ecx),%ebx
4e7f28:	0f af 9f a0 00 00 00 	imul   0xa0(%edi),%ebx
4e7f2f:	69 db 37 1b 00 00    	imul   $0x1b37,%ebx,%ebx
4e7f35:	03 f3                	add    %ebx,%esi
4e7f37:	8b 7d f8             	mov    -0x8(%ebp),%edi
4e7f3a:	0f bf 59 30          	movswl 0x30(%ecx),%ebx
4e7f3e:	0f af 5f 60          	imul   0x60(%edi),%ebx
4e7f42:	69 db 46 d7 ff ff    	imul   $0xffffd746,%ebx,%ebx
4e7f48:	03 f3                	add    %ebx,%esi
4e7f4a:	8b 7d f8             	mov    -0x8(%ebp),%edi
4e7f4d:	0f bf 59 10          	movswl 0x10(%ecx),%ebx
4e7f51:	0f af 5f 20          	imul   0x20(%edi),%ebx
4e7f55:	8b fb                	mov    %ebx,%edi
4e7f57:	c1 e3 03             	shl    $0x3,%ebx
4e7f5a:	2b df                	sub    %edi,%ebx
4e7f5c:	8d 1c 9f             	lea    (%edi,%ebx,4),%ebx
4e7f5f:	c1 e3 08             	shl    $0x8,%ebx
4e7f62:	2b df                	sub    %edi,%ebx
4e7f64:	c1 e3 02             	shl    $0x2,%ebx
4e7f67:	03 f3                	add    %ebx,%esi
4e7f69:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e7f6c:	03 de                	add    %esi,%ebx
4e7f6e:	81 c3 00 10 00 00    	add    $0x1000,%ebx
4e7f74:	c1 fb 0d             	sar    $0xd,%ebx
4e7f77:	89 18                	mov    %ebx,(%eax)
4e7f79:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e7f7c:	2b de                	sub    %esi,%ebx
4e7f7e:	81 c3 00 10 00 00    	add    $0x1000,%ebx
4e7f84:	c1 fb 0d             	sar    $0xd,%ebx
4e7f87:	89 58 20             	mov    %ebx,0x20(%eax)
4e7f8a:	83 c1 02             	add    $0x2,%ecx
4e7f8d:	83 45 f8 04          	addl   $0x4,-0x8(%ebp)
4e7f91:	83 c0 04             	add    $0x4,%eax
4e7f94:	4a                   	dec    %edx
4e7f95:	85 d2                	test   %edx,%edx
4e7f97:	0f 8f 14 ff ff ff    	jg     0x4e7eb1
4e7f9d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4e7fa0:	8d 45 ac             	lea    -0x54(%ebp),%eax
4e7fa3:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4e7fa6:	33 d2                	xor    %edx,%edx
4e7fa8:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4e7fab:	8b 09                	mov    (%ecx),%ecx
4e7fad:	8b 5d 08             	mov    0x8(%ebp),%ebx
4e7fb0:	03 cb                	add    %ebx,%ecx
4e7fb2:	8b 58 04             	mov    0x4(%eax),%ebx
4e7fb5:	85 db                	test   %ebx,%ebx
4e7fb7:	75 3c                	jne    0x4e7ff5
4e7fb9:	8b 58 0c             	mov    0xc(%eax),%ebx
4e7fbc:	85 db                	test   %ebx,%ebx
4e7fbe:	75 35                	jne    0x4e7ff5
4e7fc0:	8b 58 14             	mov    0x14(%eax),%ebx
4e7fc3:	85 db                	test   %ebx,%ebx
4e7fc5:	75 2e                	jne    0x4e7ff5
4e7fc7:	8b 58 1c             	mov    0x1c(%eax),%ebx
4e7fca:	85 db                	test   %ebx,%ebx
4e7fcc:	75 27                	jne    0x4e7ff5
4e7fce:	8b 18                	mov    (%eax),%ebx
4e7fd0:	8b 75 f4             	mov    -0xc(%ebp),%esi
4e7fd3:	83 c3 10             	add    $0x10,%ebx
4e7fd6:	c1 fb 05             	sar    $0x5,%ebx
4e7fd9:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4e7fdf:	83 c0 20             	add    $0x20,%eax
4e7fe2:	8a 1c 1e             	mov    (%esi,%ebx,1),%bl
4e7fe5:	88 5d f3             	mov    %bl,-0xd(%ebp)
4e7fe8:	8a 5d f3             	mov    -0xd(%ebp),%bl
4e7feb:	88 19                	mov    %bl,(%ecx)
4e7fed:	8a 5d f3             	mov    -0xd(%ebp),%bl
4e7ff0:	88 59 01             	mov    %bl,0x1(%ecx)
4e7ff3:	eb 74                	jmp    0x4e8069
4e7ff5:	8b 18                	mov    (%eax),%ebx
4e7ff7:	c1 e3 0f             	shl    $0xf,%ebx
4e7ffa:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4e7ffd:	69 58 14 37 1b 00 00 	imul   $0x1b37,0x14(%eax),%ebx
4e8004:	69 70 1c ee e8 ff ff 	imul   $0xffffe8ee,0x1c(%eax),%esi
4e800b:	03 f3                	add    %ebx,%esi
4e800d:	69 58 0c 46 d7 ff ff 	imul   $0xffffd746,0xc(%eax),%ebx
4e8014:	03 f3                	add    %ebx,%esi
4e8016:	8b 58 04             	mov    0x4(%eax),%ebx
4e8019:	8b fb                	mov    %ebx,%edi
4e801b:	c1 e3 03             	shl    $0x3,%ebx
4e801e:	2b df                	sub    %edi,%ebx
4e8020:	8d 1c 9f             	lea    (%edi,%ebx,4),%ebx
4e8023:	c1 e3 08             	shl    $0x8,%ebx
4e8026:	2b df                	sub    %edi,%ebx
4e8028:	8b 7d f4             	mov    -0xc(%ebp),%edi
4e802b:	c1 e3 02             	shl    $0x2,%ebx
4e802e:	03 f3                	add    %ebx,%esi
4e8030:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e8033:	03 de                	add    %esi,%ebx
4e8035:	81 c3 00 00 08 00    	add    $0x80000,%ebx
4e803b:	c1 fb 14             	sar    $0x14,%ebx
4e803e:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4e8044:	8a 1c 1f             	mov    (%edi,%ebx,1),%bl
4e8047:	88 19                	mov    %bl,(%ecx)
4e8049:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4e804c:	2b de                	sub    %esi,%ebx
4e804e:	8b 75 f4             	mov    -0xc(%ebp),%esi
4e8051:	81 c3 00 00 08 00    	add    $0x80000,%ebx
4e8057:	c1 fb 14             	sar    $0x14,%ebx
4e805a:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4e8060:	83 c0 20             	add    $0x20,%eax
4e8063:	8a 1c 1e             	mov    (%esi,%ebx,1),%bl
4e8066:	88 59 01             	mov    %bl,0x1(%ecx)
4e8069:	42                   	inc    %edx
4e806a:	83 45 ec 04          	addl   $0x4,-0x14(%ebp)
4e806e:	83 fa 02             	cmp    $0x2,%edx
4e8071:	0f 8c 31 ff ff ff    	jl     0x4e7fa8
4e8077:	5f                   	pop    %edi
4e8078:	5e                   	pop    %esi
4e8079:	5b                   	pop    %ebx
4e807a:	8b e5                	mov    %ebp,%esp
4e807c:	5d                   	pop    %ebp
4e807d:	c2 08 00             	ret    $0x8
4e8080:	55                   	push   %ebp
4e8081:	8b ec                	mov    %esp,%ebp
4e8083:	56                   	push   %esi
4e8084:	8b b0 44 01 00 00    	mov    0x144(%eax),%esi
4e808a:	8b 42 50             	mov    0x50(%edx),%eax
4e808d:	0f bf 11             	movswl (%ecx),%edx
4e8090:	0f af 10             	imul   (%eax),%edx
4e8093:	8b c2                	mov    %edx,%eax
4e8095:	81 c6 80 00 00 00    	add    $0x80,%esi
4e809b:	83 c0 04             	add    $0x4,%eax
4e809e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4e80a1:	c1 f8 03             	sar    $0x3,%eax
4e80a4:	25 ff 03 00 00       	and    $0x3ff,%eax
4e80a9:	8a 14 06             	mov    (%esi,%eax,1),%dl
4e80ac:	8b 01                	mov    (%ecx),%eax
4e80ae:	8b 4d 08             	mov    0x8(%ebp),%ecx
4e80b1:	88 14 08             	mov    %dl,(%eax,%ecx,1)
4e80b4:	5e                   	pop    %esi
4e80b5:	5d                   	pop    %ebp
4e80b6:	c2 08 00             	ret    $0x8
4e80b9:	8d 40 00             	lea    0x0(%eax),%eax
4e80bc:	53                   	push   %ebx
4e80bd:	8b d8                	mov    %eax,%ebx
4e80bf:	8b 03                	mov    (%ebx),%eax
4e80c1:	c7 40 14 66 00 00 00 	movl   $0x66,0x14(%eax)
4e80c8:	ba 01 00 00 00       	mov    $0x1,%edx
4e80cd:	8b c3                	mov    %ebx,%eax
4e80cf:	8b 08                	mov    (%eax),%ecx
4e80d1:	ff 51 04             	call   *0x4(%ecx)
4e80d4:	8b 93 b8 01 00 00    	mov    0x1b8(%ebx),%edx
4e80da:	8b 42 0c             	mov    0xc(%edx),%eax
4e80dd:	85 c0                	test   %eax,%eax
4e80df:	74 0f                	je     0x4e80f0
4e80e1:	8b 13                	mov    (%ebx),%edx
4e80e3:	8b c3                	mov    %ebx,%eax
4e80e5:	c7 42 14 3d 00 00 00 	movl   $0x3d,0x14(%edx)
4e80ec:	8b 10                	mov    (%eax),%edx
4e80ee:	ff 12                	call   *(%edx)
4e80f0:	33 d2                	xor    %edx,%edx
4e80f2:	8d 83 e4 00 00 00    	lea    0xe4(%ebx),%eax
4e80f8:	c6 00 00             	movb   $0x0,(%eax)
4e80fb:	c6 40 10 01          	movb   $0x1,0x10(%eax)
4e80ff:	c6 40 20 05          	movb   $0x5,0x20(%eax)
4e8103:	42                   	inc    %edx
4e8104:	40                   	inc    %eax
4e8105:	83 fa 10             	cmp    $0x10,%edx
4e8108:	7c ee                	jl     0x4e80f8
4e810a:	33 c9                	xor    %ecx,%ecx
4e810c:	33 c0                	xor    %eax,%eax
4e810e:	89 8b 14 01 00 00    	mov    %ecx,0x114(%ebx)
4e8114:	89 43 28             	mov    %eax,0x28(%ebx)
4e8117:	33 d2                	xor    %edx,%edx
4e8119:	33 c9                	xor    %ecx,%ecx
4e811b:	89 93 2c 01 00 00    	mov    %edx,0x12c(%ebx)
4e8121:	89 8b 18 01 00 00    	mov    %ecx,0x118(%ebx)
4e8127:	c6 83 1c 01 00 00 01 	movb   $0x1,0x11c(%ebx)
4e812e:	c6 83 1d 01 00 00 01 	movb   $0x1,0x11d(%ebx)
4e8135:	c6 83 1e 01 00 00 00 	movb   $0x0,0x11e(%ebx)
4e813c:	66 c7 83 20 01 00 00 	movw   $0x1,0x120(%ebx)
4e8143:	01 00
4e8145:	66 c7 83 22 01 00 00 	movw   $0x1,0x122(%ebx)
4e814c:	01 00
4e814e:	33 c0                	xor    %eax,%eax
4e8150:	89 83 24 01 00 00    	mov    %eax,0x124(%ebx)
4e8156:	b8 01 00 00 00       	mov    $0x1,%eax
4e815b:	c6 83 28 01 00 00 00 	movb   $0x0,0x128(%ebx)
4e8162:	8b 93 b8 01 00 00    	mov    0x1b8(%ebx),%edx
4e8168:	c7 42 0c 01 00 00 00 	movl   $0x1,0xc(%edx)
4e816f:	5b                   	pop    %ebx
4e8170:	c3                   	ret
4e8171:	90                   	nop
4e8172:	90                   	nop
4e8173:	90                   	nop
4e8174:	53                   	push   %ebx
4e8175:	56                   	push   %esi
4e8176:	57                   	push   %edi
4e8177:	55                   	push   %ebp
4e8178:	83 c4 f0             	add    $0xfffffff0,%esp
4e817b:	8b d8                	mov    %eax,%ebx
4e817d:	89 4c 24 04          	mov    %ecx,0x4(%esp)
4e8181:	89 14 24             	mov    %edx,(%esp)
4e8184:	8b 43 18             	mov    0x18(%ebx),%eax
4e8187:	89 44 24 0c          	mov    %eax,0xc(%esp)
4e818b:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e818f:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e8193:	8b 78 04             	mov    0x4(%eax),%edi
4e8196:	8b 32                	mov    (%edx),%esi
4e8198:	8b 04 24             	mov    (%esp),%eax
4e819b:	85 ff                	test   %edi,%edi
4e819d:	89 83 dc 00 00 00    	mov    %eax,0xdc(%ebx)
4e81a3:	8b 54 24 04          	mov    0x4(%esp),%edx
4e81a7:	89 93 e0 00 00 00    	mov    %edx,0xe0(%ebx)
4e81ad:	75 21                	jne    0x4e81d0
4e81af:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e81b3:	8b c3                	mov    %ebx,%eax
4e81b5:	ff 56 0c             	call   *0xc(%esi)
4e81b8:	85 c0                	test   %eax,%eax
4e81ba:	75 07                	jne    0x4e81c3
4e81bc:	33 c0                	xor    %eax,%eax
4e81be:	e9 2d 03 00 00       	jmp    0x4e84f0
4e81c3:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e81c7:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e81cb:	8b 78 04             	mov    0x4(%eax),%edi
4e81ce:	8b 32                	mov    (%edx),%esi
4e81d0:	4f                   	dec    %edi
4e81d1:	0f b6 2e             	movzbl (%esi),%ebp
4e81d4:	c1 e5 08             	shl    $0x8,%ebp
4e81d7:	46                   	inc    %esi
4e81d8:	85 ff                	test   %edi,%edi
4e81da:	75 21                	jne    0x4e81fd
4e81dc:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e81e0:	8b c3                	mov    %ebx,%eax
4e81e2:	ff 56 0c             	call   *0xc(%esi)
4e81e5:	85 c0                	test   %eax,%eax
4e81e7:	75 07                	jne    0x4e81f0
4e81e9:	33 c0                	xor    %eax,%eax
4e81eb:	e9 00 03 00 00       	jmp    0x4e84f0
4e81f0:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e81f4:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e81f8:	8b 78 04             	mov    0x4(%eax),%edi
4e81fb:	8b 32                	mov    (%edx),%esi
4e81fd:	4f                   	dec    %edi
4e81fe:	33 c0                	xor    %eax,%eax
4e8200:	8a 06                	mov    (%esi),%al
4e8202:	03 e8                	add    %eax,%ebp
4e8204:	46                   	inc    %esi
4e8205:	85 ff                	test   %edi,%edi
4e8207:	75 21                	jne    0x4e822a
4e8209:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e820d:	8b c3                	mov    %ebx,%eax
4e820f:	ff 56 0c             	call   *0xc(%esi)
4e8212:	85 c0                	test   %eax,%eax
4e8214:	75 07                	jne    0x4e821d
4e8216:	33 c0                	xor    %eax,%eax
4e8218:	e9 d3 02 00 00       	jmp    0x4e84f0
4e821d:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e8221:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e8225:	8b 78 04             	mov    0x4(%eax),%edi
4e8228:	8b 32                	mov    (%edx),%esi
4e822a:	4f                   	dec    %edi
4e822b:	33 c0                	xor    %eax,%eax
4e822d:	8a 06                	mov    (%esi),%al
4e822f:	89 83 d4 00 00 00    	mov    %eax,0xd4(%ebx)
4e8235:	46                   	inc    %esi
4e8236:	85 ff                	test   %edi,%edi
4e8238:	75 21                	jne    0x4e825b
4e823a:	8b 74 24 0c          	mov    0xc(%esp),%esi
4e823e:	8b c3                	mov    %ebx,%eax
4e8240:	ff 56 0c             	call   *0xc(%esi)
4e8243:	85 c0                	test   %eax,%eax