547e69:	c1 e1 08             	shl    $0x8,%ecx
547e6c:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
547e70:	66 0b cd             	or     %bp,%cx
547e73:	66 89 4c 24 40       	mov    %cx,0x40(%esp)
547e78:	83 c6 02             	add    $0x2,%esi
547e7b:	33 c9                	xor    %ecx,%ecx
547e7d:	8a 0e                	mov    (%esi),%cl
547e7f:	c1 e1 08             	shl    $0x8,%ecx
547e82:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
547e86:	66 0b cd             	or     %bp,%cx
547e89:	66 89 4c 24 42       	mov    %cx,0x42(%esp)
547e8e:	83 c6 02             	add    $0x2,%esi
547e91:	33 c9                	xor    %ecx,%ecx
547e93:	8a 0e                	mov    (%esi),%cl
547e95:	c1 e1 08             	shl    $0x8,%ecx
547e98:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
547e9c:	66 0b cd             	or     %bp,%cx
547e9f:	66 89 4c 24 44       	mov    %cx,0x44(%esp)
547ea4:	83 c6 02             	add    $0x2,%esi
547ea7:	66 8b 4c 24 40       	mov    0x40(%esp),%cx
547eac:	66 3b 4c 24 42       	cmp    0x42(%esp),%cx
547eb1:	75 0c                	jne    0x547ebf
547eb3:	66 8b 4c 24 40       	mov    0x40(%esp),%cx
547eb8:	66 3b 4c 24 44       	cmp    0x44(%esp),%cx
547ebd:	74 05                	je     0x547ec4
547ebf:	83 4c 24 08 01       	orl    $0x1,0x8(%esp)
547ec4:	0f b7 4c 24 40       	movzwl 0x40(%esp),%ecx
547ec9:	0f b7 6c 24 42       	movzwl 0x42(%esp),%ebp
547ece:	0f af 4c 24 0c       	imul   0xc(%esp),%ecx
547ed3:	0f af ea             	imul   %edx,%ebp
547ed6:	03 cd                	add    %ebp,%ecx
547ed8:	0f b7 6c 24 44       	movzwl 0x44(%esp),%ebp
547edd:	0f af 6c 24 10       	imul   0x10(%esp),%ebp
547ee2:	03 cd                	add    %ebp,%ecx
547ee4:	c1 e9 0f             	shr    $0xf,%ecx
547ee7:	66 89 4c 24 46       	mov    %cx,0x46(%esp)
547eec:	0f b7 4c 24 46       	movzwl 0x46(%esp),%ecx
547ef1:	c1 f9 08             	sar    $0x8,%ecx
547ef4:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
547ef8:	80 e1 ff             	and    $0xff,%cl
547efb:	88 4d 00             	mov    %cl,0x0(%ebp)
547efe:	ff 44 24 3c          	incl   0x3c(%esp)
547f02:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
547f06:	8a 4c 24 46          	mov    0x46(%esp),%cl
547f0a:	80 e1 ff             	and    $0xff,%cl
547f0d:	88 4d 00             	mov    %cl,0x0(%ebp)
547f10:	ff 44 24 3c          	incl   0x3c(%esp)
547f14:	43                   	inc    %ebx
547f15:	3b fb                	cmp    %ebx,%edi
547f17:	0f 87 48 ff ff ff    	ja     0x547e65
547f1d:	8b 0c 24             	mov    (%esp),%ecx
547f20:	8a 49 08             	mov    0x8(%ecx),%cl
547f23:	80 f9 06             	cmp    $0x6,%cl
547f26:	0f 85 f1 03 00 00    	jne    0x54831d
547f2c:	8b 0c 24             	mov    (%esp),%ecx
547f2f:	8a 49 09             	mov    0x9(%ecx),%cl
547f32:	80 f9 08             	cmp    $0x8,%cl
547f35:	0f 85 4e 01 00 00    	jne    0x548089
547f3b:	8b 88 28 01 00 00    	mov    0x128(%eax),%ecx
547f41:	85 c9                	test   %ecx,%ecx
547f43:	0f 84 cb 00 00 00    	je     0x548014
547f49:	8b 88 2c 01 00 00    	mov    0x12c(%eax),%ecx
547f4f:	85 c9                	test   %ecx,%ecx
547f51:	0f 84 bd 00 00 00    	je     0x548014
547f57:	8b 74 24 04          	mov    0x4(%esp),%esi
547f5b:	8b 4c 24 04          	mov    0x4(%esp),%ecx
547f5f:	89 4c 24 48          	mov    %ecx,0x48(%esp)
547f63:	33 db                	xor    %ebx,%ebx
547f65:	3b fb                	cmp    %ebx,%edi
547f67:	0f 86 b0 03 00 00    	jbe    0x54831d
547f6d:	33 c9                	xor    %ecx,%ecx
547f6f:	8b a8 2c 01 00 00    	mov    0x12c(%eax),%ebp
547f75:	8a 0e                	mov    (%esi),%cl
547f77:	46                   	inc    %esi
547f78:	8a 4c 0d 00          	mov    0x0(%ebp,%ecx,1),%cl
547f7c:	88 4c 24 4c          	mov    %cl,0x4c(%esp)
547f80:	33 c9                	xor    %ecx,%ecx
547f82:	8a 0e                	mov    (%esi),%cl
547f84:	8b a8 2c 01 00 00    	mov    0x12c(%eax),%ebp
547f8a:	46                   	inc    %esi
547f8b:	8a 4c 0d 00          	mov    0x0(%ebp,%ecx,1),%cl
547f8f:	88 4c 24 4d          	mov    %cl,0x4d(%esp)
547f93:	33 c9                	xor    %ecx,%ecx
547f95:	8a 0e                	mov    (%esi),%cl
547f97:	8b a8 2c 01 00 00    	mov    0x12c(%eax),%ebp
547f9d:	46                   	inc    %esi
547f9e:	8a 4c 0d 00          	mov    0x0(%ebp,%ecx,1),%cl
547fa2:	88 4c 24 4e          	mov    %cl,0x4e(%esp)
547fa6:	8a 4c 24 4c          	mov    0x4c(%esp),%cl
547faa:	3a 4c 24 4d          	cmp    0x4d(%esp),%cl
547fae:	75 0a                	jne    0x547fba
547fb0:	8a 4c 24 4c          	mov    0x4c(%esp),%cl
547fb4:	3a 4c 24 4e          	cmp    0x4e(%esp),%cl
547fb8:	74 05                	je     0x547fbf
547fba:	83 4c 24 08 01       	orl    $0x1,0x8(%esp)
547fbf:	33 c9                	xor    %ecx,%ecx
547fc1:	8a 4c 24 4c          	mov    0x4c(%esp),%cl
547fc5:	0f af 4c 24 0c       	imul   0xc(%esp),%ecx
547fca:	0f b6 6c 24 4d       	movzbl 0x4d(%esp),%ebp
547fcf:	0f af ea             	imul   %edx,%ebp
547fd2:	03 cd                	add    %ebp,%ecx
547fd4:	0f b6 6c 24 4e       	movzbl 0x4e(%esp),%ebp
547fd9:	0f af 6c 24 10       	imul   0x10(%esp),%ebp
547fde:	03 cd                	add    %ebp,%ecx
547fe0:	c1 e9 0f             	shr    $0xf,%ecx
547fe3:	8b a8 28 01 00 00    	mov    0x128(%eax),%ebp
547fe9:	8a 4c 0d 00          	mov    0x0(%ebp,%ecx,1),%cl
547fed:	8b 6c 24 48          	mov    0x48(%esp),%ebp
547ff1:	88 4d 00             	mov    %cl,0x0(%ebp)
547ff4:	ff 44 24 48          	incl   0x48(%esp)
547ff8:	8a 0e                	mov    (%esi),%cl
547ffa:	8b 6c 24 48          	mov    0x48(%esp),%ebp
547ffe:	88 4d 00             	mov    %cl,0x0(%ebp)
548001:	46                   	inc    %esi
548002:	ff 44 24 48          	incl   0x48(%esp)
548006:	43                   	inc    %ebx
548007:	3b fb                	cmp    %ebx,%edi
548009:	0f 87 5e ff ff ff    	ja     0x547f6d
54800f:	e9 09 03 00 00       	jmp    0x54831d
548014:	8b 44 24 04          	mov    0x4(%esp),%eax
548018:	8b 74 24 04          	mov    0x4(%esp),%esi
54801c:	33 db                	xor    %ebx,%ebx
54801e:	3b fb                	cmp    %ebx,%edi
548020:	0f 86 f7 02 00 00    	jbe    0x54831d
548026:	8a 08                	mov    (%eax),%cl
548028:	40                   	inc    %eax
548029:	88 4c 24 4f          	mov    %cl,0x4f(%esp)
54802d:	8a 08                	mov    (%eax),%cl
54802f:	40                   	inc    %eax
548030:	88 4c 24 50          	mov    %cl,0x50(%esp)
548034:	8a 08                	mov    (%eax),%cl
548036:	40                   	inc    %eax
548037:	88 4c 24 51          	mov    %cl,0x51(%esp)
54803b:	8a 4c 24 4f          	mov    0x4f(%esp),%cl
54803f:	3a 4c 24 50          	cmp    0x50(%esp),%cl
548043:	75 0a                	jne    0x54804f
548045:	8a 4c 24 4f          	mov    0x4f(%esp),%cl
548049:	3a 4c 24 51          	cmp    0x51(%esp),%cl
54804d:	74 05                	je     0x548054
54804f:	83 4c 24 08 01       	orl    $0x1,0x8(%esp)
548054:	0f b6 6c 24 50       	movzbl 0x50(%esp),%ebp
548059:	33 c9                	xor    %ecx,%ecx
54805b:	0f af ea             	imul   %edx,%ebp
54805e:	8a 4c 24 4f          	mov    0x4f(%esp),%cl
548062:	0f af ca             	imul   %edx,%ecx
548065:	03 cd                	add    %ebp,%ecx
548067:	0f b6 6c 24 51       	movzbl 0x51(%esp),%ebp
54806c:	0f af 6c 24 10       	imul   0x10(%esp),%ebp
548071:	03 cd                	add    %ebp,%ecx
548073:	c1 e9 08             	shr    $0x8,%ecx
548076:	88 0e                	mov    %cl,(%esi)
548078:	46                   	inc    %esi
548079:	8a 08                	mov    (%eax),%cl
54807b:	40                   	inc    %eax
54807c:	88 0e                	mov    %cl,(%esi)
54807e:	46                   	inc    %esi
54807f:	43                   	inc    %ebx
548080:	3b fb                	cmp    %ebx,%edi
548082:	77 a2                	ja     0x548026
548084:	e9 94 02 00 00       	jmp    0x54831d
548089:	8b 88 38 01 00 00    	mov    0x138(%eax),%ecx
54808f:	85 c9                	test   %ecx,%ecx
548091:	0f 84 c0 01 00 00    	je     0x548257
548097:	8b 88 34 01 00 00    	mov    0x134(%eax),%ecx
54809d:	85 c9                	test   %ecx,%ecx
54809f:	0f 84 b2 01 00 00    	je     0x548257
5480a5:	8b 74 24 04          	mov    0x4(%esp),%esi
5480a9:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5480ad:	89 4c 24 54          	mov    %ecx,0x54(%esp)
5480b1:	33 db                	xor    %ebx,%ebx
5480b3:	3b fb                	cmp    %ebx,%edi
5480b5:	0f 86 62 02 00 00    	jbe    0x54831d
5480bb:	33 c9                	xor    %ecx,%ecx
5480bd:	8a 0e                	mov    (%esi),%cl
5480bf:	c1 e1 08             	shl    $0x8,%ecx
5480c2:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
5480c6:	66 0b cd             	or     %bp,%cx
5480c9:	66 89 4c 24 58       	mov    %cx,0x58(%esp)
5480ce:	83 c6 02             	add    $0x2,%esi
5480d1:	33 c9                	xor    %ecx,%ecx
5480d3:	8a 0e                	mov    (%esi),%cl
5480d5:	c1 e1 08             	shl    $0x8,%ecx
5480d8:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
5480dc:	66 0b cd             	or     %bp,%cx
5480df:	66 89 4c 24 5a       	mov    %cx,0x5a(%esp)
5480e4:	83 c6 02             	add    $0x2,%esi
5480e7:	33 c9                	xor    %ecx,%ecx
5480e9:	8a 0e                	mov    (%esi),%cl
5480eb:	c1 e1 08             	shl    $0x8,%ecx
5480ee:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
5480f2:	66 0b cd             	or     %bp,%cx
5480f5:	66 89 4c 24 5c       	mov    %cx,0x5c(%esp)
5480fa:	83 c6 02             	add    $0x2,%esi
5480fd:	66 8b 4c 24 58       	mov    0x58(%esp),%cx
548102:	66 3b 4c 24 5a       	cmp    0x5a(%esp),%cx
548107:	75 1b                	jne    0x548124
548109:	66 8b 4c 24 58       	mov    0x58(%esp),%cx
54810e:	66 3b 4c 24 5c       	cmp    0x5c(%esp),%cx
548113:	75 0f                	jne    0x548124
548115:	66 8b 4c 24 58       	mov    0x58(%esp),%cx
54811a:	66 89 4c 24 5e       	mov    %cx,0x5e(%esp)
54811f:	e9 e1 00 00 00       	jmp    0x548205
548124:	0f b7 6c 24 58       	movzwl 0x58(%esp),%ebp
548129:	8b 88 18 01 00 00    	mov    0x118(%eax),%ecx
54812f:	81 e5 ff 00 00 00    	and    $0xff,%ebp
548135:	d3 fd                	sar    %cl,%ebp
548137:	8b 88 38 01 00 00    	mov    0x138(%eax),%ecx
54813d:	8b 0c a9             	mov    (%ecx,%ebp,4),%ecx
548140:	0f b7 6c 24 58       	movzwl 0x58(%esp),%ebp
548145:	c1 fd 08             	sar    $0x8,%ebp
548148:	66 8b 0c 69          	mov    (%ecx,%ebp,2),%cx
54814c:	66 89 4c 24 60       	mov    %cx,0x60(%esp)
548151:	0f b7 6c 24 5a       	movzwl 0x5a(%esp),%ebp
548156:	8b 88 18 01 00 00    	mov    0x118(%eax),%ecx
54815c:	81 e5 ff 00 00 00    	and    $0xff,%ebp
548162:	d3 fd                	sar    %cl,%ebp
548164:	8b 88 38 01 00 00    	mov    0x138(%eax),%ecx
54816a:	8b 0c a9             	mov    (%ecx,%ebp,4),%ecx
54816d:	0f b7 6c 24 5a       	movzwl 0x5a(%esp),%ebp
548172:	c1 fd 08             	sar    $0x8,%ebp
548175:	66 8b 0c 69          	mov    (%ecx,%ebp,2),%cx
548179:	66 89 4c 24 62       	mov    %cx,0x62(%esp)
54817e:	0f b7 6c 24 5c       	movzwl 0x5c(%esp),%ebp
548183:	8b 88 18 01 00 00    	mov    0x118(%eax),%ecx
548189:	81 e5 ff 00 00 00    	and    $0xff,%ebp
54818f:	d3 fd                	sar    %cl,%ebp
548191:	8b 88 38 01 00 00    	mov    0x138(%eax),%ecx
548197:	8b 0c a9             	mov    (%ecx,%ebp,4),%ecx
54819a:	0f b7 6c 24 5c       	movzwl 0x5c(%esp),%ebp
54819f:	c1 fd 08             	sar    $0x8,%ebp
5481a2:	66 8b 0c 69          	mov    (%ecx,%ebp,2),%cx
5481a6:	66 89 4c 24 64       	mov    %cx,0x64(%esp)
5481ab:	0f b7 4c 24 60       	movzwl 0x60(%esp),%ecx
5481b0:	0f b7 6c 24 62       	movzwl 0x62(%esp),%ebp
5481b5:	0f af 4c 24 0c       	imul   0xc(%esp),%ecx
5481ba:	0f af ea             	imul   %edx,%ebp
5481bd:	03 cd                	add    %ebp,%ecx
5481bf:	0f b7 6c 24 64       	movzwl 0x64(%esp),%ebp
5481c4:	0f af 6c 24 10       	imul   0x10(%esp),%ebp
5481c9:	03 cd                	add    %ebp,%ecx
5481cb:	c1 e9 0f             	shr    $0xf,%ecx
5481ce:	66 89 4c 24 66       	mov    %cx,0x66(%esp)
5481d3:	0f b7 6c 24 66       	movzwl 0x66(%esp),%ebp
5481d8:	8b 88 18 01 00 00    	mov    0x118(%eax),%ecx
5481de:	81 e5 ff 00 00 00    	and    $0xff,%ebp
5481e4:	d3 fd                	sar    %cl,%ebp
5481e6:	8b 88 34 01 00 00    	mov    0x134(%eax),%ecx
5481ec:	8b 0c a9             	mov    (%ecx,%ebp,4),%ecx
5481ef:	0f b7 6c 24 66       	movzwl 0x66(%esp),%ebp
5481f4:	c1 fd 08             	sar    $0x8,%ebp
5481f7:	66 8b 0c 69          	mov    (%ecx,%ebp,2),%cx
5481fb:	66 89 4c 24 5e       	mov    %cx,0x5e(%esp)
548200:	83 4c 24 08 01       	orl    $0x1,0x8(%esp)
548205:	0f b7 4c 24 5e       	movzwl 0x5e(%esp),%ecx
54820a:	c1 f9 08             	sar    $0x8,%ecx
54820d:	8b 6c 24 54          	mov    0x54(%esp),%ebp
548211:	80 e1 ff             	and    $0xff,%cl
548214:	88 4d 00             	mov    %cl,0x0(%ebp)
548217:	ff 44 24 54          	incl   0x54(%esp)
54821b:	8b 6c 24 54          	mov    0x54(%esp),%ebp
54821f:	8a 4c 24 5e          	mov    0x5e(%esp),%cl
548223:	80 e1 ff             	and    $0xff,%cl
548226:	88 4d 00             	mov    %cl,0x0(%ebp)
548229:	ff 44 24 54          	incl   0x54(%esp)
54822d:	8b 6c 24 54          	mov    0x54(%esp),%ebp
548231:	8a 0e                	mov    (%esi),%cl
548233:	46                   	inc    %esi
548234:	88 4d 00             	mov    %cl,0x0(%ebp)
548237:	ff 44 24 54          	incl   0x54(%esp)
54823b:	8b 6c 24 54          	mov    0x54(%esp),%ebp
54823f:	8a 0e                	mov    (%esi),%cl
548241:	46                   	inc    %esi
548242:	88 4d 00             	mov    %cl,0x0(%ebp)
548245:	ff 44 24 54          	incl   0x54(%esp)
548249:	43                   	inc    %ebx
54824a:	3b fb                	cmp    %ebx,%edi
54824c:	0f 87 69 fe ff ff    	ja     0x5480bb
548252:	e9 c6 00 00 00       	jmp    0x54831d
548257:	8b 44 24 04          	mov    0x4(%esp),%eax
54825b:	8b 74 24 04          	mov    0x4(%esp),%esi
54825f:	33 db                	xor    %ebx,%ebx
548261:	3b fb                	cmp    %ebx,%edi
548263:	0f 86 b4 00 00 00    	jbe    0x54831d
548269:	33 c9                	xor    %ecx,%ecx
54826b:	8a 08                	mov    (%eax),%cl
54826d:	c1 e1 08             	shl    $0x8,%ecx
548270:	0f b6 68 01          	movzbl 0x1(%eax),%ebp
548274:	66 0b cd             	or     %bp,%cx
548277:	66 89 4c 24 68       	mov    %cx,0x68(%esp)
54827c:	83 c0 02             	add    $0x2,%eax
54827f:	33 c9                	xor    %ecx,%ecx
548281:	8a 08                	mov    (%eax),%cl
548283:	c1 e1 08             	shl    $0x8,%ecx
548286:	0f b6 68 01          	movzbl 0x1(%eax),%ebp
54828a:	66 0b cd             	or     %bp,%cx
54828d:	66 89 4c 24 6a       	mov    %cx,0x6a(%esp)
548292:	83 c0 02             	add    $0x2,%eax
548295:	33 c9                	xor    %ecx,%ecx
548297:	8a 08                	mov    (%eax),%cl
548299:	c1 e1 08             	shl    $0x8,%ecx
54829c:	0f b6 68 01          	movzbl 0x1(%eax),%ebp
5482a0:	66 0b cd             	or     %bp,%cx
5482a3:	66 89 4c 24 6c       	mov    %cx,0x6c(%esp)
5482a8:	83 c0 02             	add    $0x2,%eax
5482ab:	66 8b 4c 24 68       	mov    0x68(%esp),%cx
5482b0:	66 3b 4c 24 6a       	cmp    0x6a(%esp),%cx
5482b5:	75 0c                	jne    0x5482c3
5482b7:	66 8b 4c 24 68       	mov    0x68(%esp),%cx
5482bc:	66 3b 4c 24 6c       	cmp    0x6c(%esp),%cx
5482c1:	74 05                	je     0x5482c8
5482c3:	83 4c 24 08 01       	orl    $0x1,0x8(%esp)
5482c8:	0f b7 4c 24 68       	movzwl 0x68(%esp),%ecx
5482cd:	0f b7 6c 24 6a       	movzwl 0x6a(%esp),%ebp
5482d2:	0f af 4c 24 0c       	imul   0xc(%esp),%ecx
5482d7:	0f af ea             	imul   %edx,%ebp
5482da:	03 cd                	add    %ebp,%ecx
5482dc:	0f b7 6c 24 6c       	movzwl 0x6c(%esp),%ebp
5482e1:	0f af 6c 24 10       	imul   0x10(%esp),%ebp
5482e6:	03 cd                	add    %ebp,%ecx
5482e8:	c1 e9 0f             	shr    $0xf,%ecx
5482eb:	66 89 4c 24 6e       	mov    %cx,0x6e(%esp)
5482f0:	0f b7 4c 24 6e       	movzwl 0x6e(%esp),%ecx
5482f5:	c1 f9 08             	sar    $0x8,%ecx
5482f8:	80 e1 ff             	and    $0xff,%cl
5482fb:	88 0e                	mov    %cl,(%esi)
5482fd:	46                   	inc    %esi
5482fe:	8a 4c 24 6e          	mov    0x6e(%esp),%cl
548302:	80 e1 ff             	and    $0xff,%cl
548305:	88 0e                	mov    %cl,(%esi)
548307:	46                   	inc    %esi
548308:	8a 08                	mov    (%eax),%cl
54830a:	40                   	inc    %eax
54830b:	88 0e                	mov    %cl,(%esi)
54830d:	46                   	inc    %esi
54830e:	8a 08                	mov    (%eax),%cl
548310:	40                   	inc    %eax
548311:	88 0e                	mov    %cl,(%esi)
548313:	46                   	inc    %esi
548314:	43                   	inc    %ebx
548315:	3b fb                	cmp    %ebx,%edi
548317:	0f 87 4c ff ff ff    	ja     0x548269
54831d:	8b 04 24             	mov    (%esp),%eax
548320:	80 68 0a 02          	subb   $0x2,0xa(%eax)
548324:	8b 14 24             	mov    (%esp),%edx
548327:	80 62 08 fd          	andb   $0xfd,0x8(%edx)
54832b:	8b 04 24             	mov    (%esp),%eax
54832e:	8b 0c 24             	mov    (%esp),%ecx
548331:	33 d2                	xor    %edx,%edx
548333:	8a 50 0a             	mov    0xa(%eax),%dl
548336:	33 c0                	xor    %eax,%eax