568f1d:	8b 55 d4             	mov    -0x2c(%ebp),%edx
568f20:	c1 e2 02             	shl    $0x2,%edx
568f23:	52                   	push   %edx
568f24:	8b d6                	mov    %esi,%edx
568f26:	58                   	pop    %eax
568f27:	2b d0                	sub    %eax,%edx
568f29:	8b 45 d4             	mov    -0x2c(%ebp),%eax
568f2c:	c1 e0 02             	shl    $0x2,%eax
568f2f:	03 c6                	add    %esi,%eax
568f31:	eb 33                	jmp    0x568f66
568f33:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
568f37:	83 48 04 08          	orl    $0x8,0x4(%eax)
568f3b:	8b 55 a8             	mov    -0x58(%ebp),%edx
568f3e:	85 d2                	test   %edx,%edx
568f40:	74 14                	je     0x568f56
568f42:	81 08 10 01 00 00    	orl    $0x110,(%eax)
568f48:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
568f4f:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
568f56:	83 08 10             	orl    $0x10,(%eax)
568f59:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
568f5d:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
568f64:	eb 44                	jmp    0x568faa
568f66:	83 4a fc 02          	orl    $0x2,-0x4(%edx)
568f6a:	83 4a 04 04          	orl    $0x4,0x4(%edx)
568f6e:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
568f72:	83 48 04 08          	orl    $0x8,0x4(%eax)
568f76:	8b 4d a8             	mov    -0x58(%ebp),%ecx
568f79:	85 c9                	test   %ecx,%ecx
568f7b:	74 1c                	je     0x568f99
568f7d:	81 0a 40 04 00 00    	orl    $0x440,(%edx)
568f83:	81 08 10 01 00 00    	orl    $0x110,(%eax)
568f89:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
568f90:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
568f97:	eb 11                	jmp    0x568faa
568f99:	83 0a 40             	orl    $0x40,(%edx)
568f9c:	83 08 10             	orl    $0x10,(%eax)
568f9f:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
568fa3:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
568faa:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
568fb0:	81 26 ff bf ff ff    	andl   $0xffffbfff,(%esi)
568fb6:	ff 4d ec             	decl   -0x14(%ebp)
568fb9:	8b 45 ec             	mov    -0x14(%ebp),%eax
568fbc:	85 c0                	test   %eax,%eax
568fbe:	0f 8e 76 04 00 00    	jle    0x56943a
568fc4:	8b 55 d4             	mov    -0x2c(%ebp),%edx
568fc7:	8b 4d d0             	mov    -0x30(%ebp),%ecx
568fca:	c1 e2 02             	shl    $0x2,%edx
568fcd:	c1 e1 02             	shl    $0x2,%ecx
568fd0:	03 f2                	add    %edx,%esi
568fd2:	03 f9                	add    %ecx,%edi
568fd4:	8b 06                	mov    (%esi),%eax
568fd6:	89 45 a4             	mov    %eax,-0x5c(%ebp)
568fd9:	f6 45 a5 50          	testb  $0x50,-0x5b(%ebp)
568fdd:	0f 85 0f 02 00 00    	jne    0x5691f2
568fe3:	8b 55 f8             	mov    -0x8(%ebp),%edx
568fe6:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
568fe9:	c1 e2 08             	shl    $0x8,%edx
568fec:	81 e1 ff 00 00 00    	and    $0xff,%ecx
568ff2:	0b d1                	or     %ecx,%edx
568ff4:	8b 04 95 10 b4 6a 00 	mov    0x6ab410(,%edx,4),%eax
568ffb:	8b 53 10             	mov    0x10(%ebx),%edx
568ffe:	c1 e0 02             	shl    $0x2,%eax
569001:	03 c2                	add    %edx,%eax
569003:	89 43 14             	mov    %eax,0x14(%ebx)
569006:	8b 07                	mov    (%edi),%eax
569008:	8b 4d d8             	mov    -0x28(%ebp),%ecx
56900b:	99                   	cltd
56900c:	33 c2                	xor    %edx,%eax
56900e:	2b c2                	sub    %edx,%eax
569010:	23 c1                	and    %ecx,%eax
569012:	74 07                	je     0x56901b
569014:	b8 01 00 00 00       	mov    $0x1,%eax
569019:	eb 02                	jmp    0x56901d
56901b:	33 c0                	xor    %eax,%eax
56901d:	89 45 a0             	mov    %eax,-0x60(%ebp)
569020:	8b 53 14             	mov    0x14(%ebx),%edx
569023:	8b 0a                	mov    (%edx),%ecx
569025:	8b 55 a0             	mov    -0x60(%ebp),%edx
569028:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
56902c:	3b c2                	cmp    %edx,%eax
56902e:	75 28                	jne    0x569058
569030:	8b 4b 14             	mov    0x14(%ebx),%ecx
569033:	8b 01                	mov    (%ecx),%eax
569035:	0f b7 10             	movzwl (%eax),%edx
569038:	29 53 04             	sub    %edx,0x4(%ebx)
56903b:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
56903f:	75 09                	jne    0x56904a
569041:	8b c3                	mov    %ebx,%eax
569043:	e8 04 94 00 00       	call   0x57244c
569048:	eb 15                	jmp    0x56905f
56904a:	8b 53 14             	mov    0x14(%ebx),%edx
56904d:	8b 0a                	mov    (%edx),%ecx
56904f:	0f b7 01             	movzwl (%ecx),%eax
569052:	01 03                	add    %eax,(%ebx)
569054:	8b 03                	mov    (%ebx),%eax
569056:	eb 07                	jmp    0x56905f
569058:	8b c3                	mov    %ebx,%eax
56905a:	e8 cd 96 00 00       	call   0x57272c
56905f:	8b 55 a0             	mov    -0x60(%ebp),%edx
569062:	85 d2                	test   %edx,%edx
569064:	0f 84 88 01 00 00    	je     0x5691f2
56906a:	8b 0e                	mov    (%esi),%ecx
56906c:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
56906f:	8b 45 fc             	mov    -0x4(%ebp),%eax
569072:	83 c0 06             	add    $0x6,%eax
569075:	83 f8 06             	cmp    $0x6,%eax
569078:	7e 2f                	jle    0x5690a9
56907a:	8b 55 fc             	mov    -0x4(%ebp),%edx
56907d:	85 d2                	test   %edx,%edx
56907f:	7c 0e                	jl     0x56908f
569081:	8b 4d fc             	mov    -0x4(%ebp),%ecx
569084:	8b 07                	mov    (%edi),%eax
569086:	99                   	cltd
569087:	33 c2                	xor    %edx,%eax
569089:	2b c2                	sub    %edx,%eax
56908b:	d3 f8                	sar    %cl,%eax
56908d:	eb 0e                	jmp    0x56909d
56908f:	8b 07                	mov    (%edi),%eax
569091:	8b 4d fc             	mov    -0x4(%ebp),%ecx
569094:	99                   	cltd
569095:	33 c2                	xor    %edx,%eax
569097:	f7 d9                	neg    %ecx
569099:	2b c2                	sub    %edx,%eax
56909b:	d3 e0                	shl    %cl,%eax
56909d:	83 e0 7f             	and    $0x7f,%eax
5690a0:	8b 0c 85 20 0c 6b 00 	mov    0x6b0c20(,%eax,4),%ecx
5690a7:	eb 2d                	jmp    0x5690d6
5690a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5690ac:	85 c0                	test   %eax,%eax
5690ae:	7c 0e                	jl     0x5690be
5690b0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5690b3:	8b 07                	mov    (%edi),%eax
5690b5:	99                   	cltd
5690b6:	33 c2                	xor    %edx,%eax
5690b8:	2b c2                	sub    %edx,%eax
5690ba:	d3 f8                	sar    %cl,%eax
5690bc:	eb 0e                	jmp    0x5690cc
5690be:	8b 07                	mov    (%edi),%eax
5690c0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5690c3:	99                   	cltd
5690c4:	33 c2                	xor    %edx,%eax
5690c6:	f7 d9                	neg    %ecx
5690c8:	2b c2                	sub    %edx,%eax
5690ca:	d3 e0                	shl    %cl,%eax
5690cc:	83 e0 7f             	and    $0x7f,%eax
5690cf:	8b 0c 85 28 10 6b 00 	mov    0x6b1028(,%eax,4),%ecx
5690d6:	8b 45 08             	mov    0x8(%ebp),%eax
5690d9:	01 08                	add    %ecx,(%eax)
5690db:	8b 55 a4             	mov    -0x5c(%ebp),%edx
5690de:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
5690e4:	c1 fa 04             	sar    $0x4,%edx
5690e7:	8b 0c 95 18 c8 6a 00 	mov    0x6ac818(,%edx,4),%ecx
5690ee:	c1 e1 02             	shl    $0x2,%ecx
5690f1:	8b 43 10             	mov    0x10(%ebx),%eax
5690f4:	03 c8                	add    %eax,%ecx
5690f6:	89 4b 14             	mov    %ecx,0x14(%ebx)
5690f9:	8b 17                	mov    (%edi),%edx
5690fb:	85 d2                	test   %edx,%edx
5690fd:	7d 07                	jge    0x569106
5690ff:	b9 01 00 00 00       	mov    $0x1,%ecx
569104:	eb 02                	jmp    0x569108
569106:	33 c9                	xor    %ecx,%ecx
569108:	89 4d a0             	mov    %ecx,-0x60(%ebp)
56910b:	8b 43 14             	mov    0x14(%ebx),%eax
56910e:	8b 10                	mov    (%eax),%edx
569110:	0f b7 42 02          	movzwl 0x2(%edx),%eax
569114:	8b 55 a4             	mov    -0x5c(%ebp),%edx
569117:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
56911d:	c1 fa 04             	sar    $0x4,%edx
569120:	8b 0c 95 14 c4 6a 00 	mov    0x6ac414(,%edx,4),%ecx
569127:	8b 55 a0             	mov    -0x60(%ebp),%edx
56912a:	33 ca                	xor    %edx,%ecx
56912c:	3b c1                	cmp    %ecx,%eax
56912e:	75 28                	jne    0x569158
569130:	8b 43 14             	mov    0x14(%ebx),%eax
569133:	8b 08                	mov    (%eax),%ecx
569135:	0f b7 01             	movzwl (%ecx),%eax
569138:	29 43 04             	sub    %eax,0x4(%ebx)
56913b:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
56913f:	75 09                	jne    0x56914a
569141:	8b c3                	mov    %ebx,%eax
569143:	e8 04 93 00 00       	call   0x57244c
569148:	eb 15                	jmp    0x56915f
56914a:	8b 53 14             	mov    0x14(%ebx),%edx
56914d:	8b 0a                	mov    (%edx),%ecx
56914f:	0f b7 01             	movzwl (%ecx),%eax
569152:	01 03                	add    %eax,(%ebx)
569154:	8b 03                	mov    (%ebx),%eax
569156:	eb 07                	jmp    0x56915f
569158:	8b c3                	mov    %ebx,%eax
56915a:	e8 cd 95 00 00       	call   0x57272c
56915f:	8b 55 d4             	mov    -0x2c(%ebp),%edx
569162:	c1 e2 02             	shl    $0x2,%edx
569165:	52                   	push   %edx
569166:	8b d6                	mov    %esi,%edx
569168:	58                   	pop    %eax
569169:	2b d0                	sub    %eax,%edx
56916b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
56916e:	c1 e0 02             	shl    $0x2,%eax
569171:	03 c6                	add    %esi,%eax
569173:	eb 33                	jmp    0x5691a8
569175:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
569179:	83 48 04 08          	orl    $0x8,0x4(%eax)
56917d:	8b 55 a0             	mov    -0x60(%ebp),%edx
569180:	85 d2                	test   %edx,%edx
569182:	74 14                	je     0x569198
569184:	81 08 10 01 00 00    	orl    $0x110,(%eax)
56918a:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
569191:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
569198:	83 08 10             	orl    $0x10,(%eax)
56919b:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
56919f:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
5691a6:	eb 44                	jmp    0x5691ec
5691a8:	83 4a fc 02          	orl    $0x2,-0x4(%edx)
5691ac:	83 4a 04 04          	orl    $0x4,0x4(%edx)
5691b0:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
5691b4:	83 48 04 08          	orl    $0x8,0x4(%eax)
5691b8:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5691bb:	85 c9                	test   %ecx,%ecx
5691bd:	74 1c                	je     0x5691db
5691bf:	81 0a 40 04 00 00    	orl    $0x440,(%edx)
5691c5:	81 08 10 01 00 00    	orl    $0x110,(%eax)
5691cb:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
5691d2:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
5691d9:	eb 11                	jmp    0x5691ec
5691db:	83 0a 40             	orl    $0x40,(%edx)
5691de:	83 08 10             	orl    $0x10,(%eax)
5691e1:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
5691e5:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
5691ec:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
5691f2:	81 26 ff bf ff ff    	andl   $0xffffbfff,(%esi)
5691f8:	ff 4d ec             	decl   -0x14(%ebp)
5691fb:	8b 45 ec             	mov    -0x14(%ebp),%eax
5691fe:	85 c0                	test   %eax,%eax
569200:	0f 8e 34 02 00 00    	jle    0x56943a
569206:	8b 55 d4             	mov    -0x2c(%ebp),%edx
569209:	8b 4d d0             	mov    -0x30(%ebp),%ecx
56920c:	c1 e2 02             	shl    $0x2,%edx
56920f:	c1 e1 02             	shl    $0x2,%ecx
569212:	03 f2                	add    %edx,%esi
569214:	03 f9                	add    %ecx,%edi
569216:	8b 06                	mov    (%esi),%eax
569218:	89 45 9c             	mov    %eax,-0x64(%ebp)
56921b:	f6 45 9d 50          	testb  $0x50,-0x63(%ebp)
56921f:	0f 85 0f 02 00 00    	jne    0x569434
569225:	8b 55 f8             	mov    -0x8(%ebp),%edx
569228:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
56922b:	c1 e2 08             	shl    $0x8,%edx
56922e:	81 e1 ff 00 00 00    	and    $0xff,%ecx
569234:	0b d1                	or     %ecx,%edx
569236:	8b 04 95 10 b4 6a 00 	mov    0x6ab410(,%edx,4),%eax
56923d:	8b 53 10             	mov    0x10(%ebx),%edx
569240:	c1 e0 02             	shl    $0x2,%eax
569243:	03 c2                	add    %edx,%eax
569245:	89 43 14             	mov    %eax,0x14(%ebx)
569248:	8b 07                	mov    (%edi),%eax
56924a:	8b 4d d8             	mov    -0x28(%ebp),%ecx
56924d:	99                   	cltd
56924e:	33 c2                	xor    %edx,%eax
569250:	2b c2                	sub    %edx,%eax
569252:	23 c1                	and    %ecx,%eax
569254:	74 07                	je     0x56925d
569256:	b8 01 00 00 00       	mov    $0x1,%eax
56925b:	eb 02                	jmp    0x56925f
56925d:	33 c0                	xor    %eax,%eax
56925f:	89 45 98             	mov    %eax,-0x68(%ebp)
569262:	8b 53 14             	mov    0x14(%ebx),%edx
569265:	8b 0a                	mov    (%edx),%ecx
569267:	8b 55 98             	mov    -0x68(%ebp),%edx
56926a:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
56926e:	3b c2                	cmp    %edx,%eax
569270:	75 28                	jne    0x56929a
569272:	8b 4b 14             	mov    0x14(%ebx),%ecx
569275:	8b 01                	mov    (%ecx),%eax
569277:	0f b7 10             	movzwl (%eax),%edx
56927a:	29 53 04             	sub    %edx,0x4(%ebx)
56927d:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
569281:	75 09                	jne    0x56928c
569283:	8b c3                	mov    %ebx,%eax
569285:	e8 c2 91 00 00       	call   0x57244c
56928a:	eb 15                	jmp    0x5692a1
56928c:	8b 53 14             	mov    0x14(%ebx),%edx
56928f:	8b 0a                	mov    (%edx),%ecx
569291:	0f b7 01             	movzwl (%ecx),%eax
569294:	01 03                	add    %eax,(%ebx)
569296:	8b 03                	mov    (%ebx),%eax
569298:	eb 07                	jmp    0x5692a1
56929a:	8b c3                	mov    %ebx,%eax
56929c:	e8 8b 94 00 00       	call   0x57272c
5692a1:	8b 55 98             	mov    -0x68(%ebp),%edx
5692a4:	85 d2                	test   %edx,%edx
5692a6:	0f 84 88 01 00 00    	je     0x569434
5692ac:	8b 0e                	mov    (%esi),%ecx
5692ae:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
5692b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
5692b4:	83 c0 06             	add    $0x6,%eax
5692b7:	83 f8 06             	cmp    $0x6,%eax
5692ba:	7e 2f                	jle    0x5692eb
5692bc:	8b 55 fc             	mov    -0x4(%ebp),%edx
5692bf:	85 d2                	test   %edx,%edx
5692c1:	7c 0e                	jl     0x5692d1
5692c3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5692c6:	8b 07                	mov    (%edi),%eax
5692c8:	99                   	cltd
5692c9:	33 c2                	xor    %edx,%eax
5692cb:	2b c2                	sub    %edx,%eax
5692cd:	d3 f8                	sar    %cl,%eax
5692cf:	eb 0e                	jmp    0x5692df
5692d1:	8b 07                	mov    (%edi),%eax
5692d3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5692d6:	99                   	cltd
5692d7:	33 c2                	xor    %edx,%eax
5692d9:	f7 d9                	neg    %ecx
5692db:	2b c2                	sub    %edx,%eax
5692dd:	d3 e0                	shl    %cl,%eax
5692df:	83 e0 7f             	and    $0x7f,%eax
5692e2:	8b 0c 85 20 0c 6b 00 	mov    0x6b0c20(,%eax,4),%ecx
5692e9:	eb 2d                	jmp    0x569318
5692eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
5692ee:	85 c0                	test   %eax,%eax
5692f0:	7c 0e                	jl     0x569300
5692f2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5692f5:	8b 07                	mov    (%edi),%eax
5692f7:	99                   	cltd
5692f8:	33 c2                	xor    %edx,%eax
5692fa:	2b c2                	sub    %edx,%eax
5692fc:	d3 f8                	sar    %cl,%eax
5692fe:	eb 0e                	jmp    0x56930e
569300:	8b 07                	mov    (%edi),%eax
569302:	8b 4d fc             	mov    -0x4(%ebp),%ecx
569305:	99                   	cltd
569306:	33 c2                	xor    %edx,%eax
569308:	f7 d9                	neg    %ecx
56930a:	2b c2                	sub    %edx,%eax
56930c:	d3 e0                	shl    %cl,%eax
56930e:	83 e0 7f             	and    $0x7f,%eax
569311:	8b 0c 85 28 10 6b 00 	mov    0x6b1028(,%eax,4),%ecx
569318:	8b 45 08             	mov    0x8(%ebp),%eax
56931b:	01 08                	add    %ecx,(%eax)
56931d:	8b 55 9c             	mov    -0x64(%ebp),%edx
569320:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
569326:	c1 fa 04             	sar    $0x4,%edx
569329:	8b 0c 95 18 c8 6a 00 	mov    0x6ac818(,%edx,4),%ecx
569330:	c1 e1 02             	shl    $0x2,%ecx
569333:	8b 43 10             	mov    0x10(%ebx),%eax
569336:	03 c8                	add    %eax,%ecx
569338:	89 4b 14             	mov    %ecx,0x14(%ebx)
56933b:	8b 17                	mov    (%edi),%edx
56933d:	85 d2                	test   %edx,%edx
56933f:	7d 07                	jge    0x569348