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
569341:	b9 01 00 00 00       	mov    $0x1,%ecx
569346:	eb 02                	jmp    0x56934a
569348:	33 c9                	xor    %ecx,%ecx
56934a:	89 4d 98             	mov    %ecx,-0x68(%ebp)
56934d:	8b 43 14             	mov    0x14(%ebx),%eax
569350:	8b 10                	mov    (%eax),%edx
569352:	0f b7 42 02          	movzwl 0x2(%edx),%eax
569356:	8b 55 9c             	mov    -0x64(%ebp),%edx
569359:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
56935f:	c1 fa 04             	sar    $0x4,%edx
569362:	8b 0c 95 14 c4 6a 00 	mov    0x6ac414(,%edx,4),%ecx
569369:	8b 55 98             	mov    -0x68(%ebp),%edx
56936c:	33 ca                	xor    %edx,%ecx
56936e:	3b c1                	cmp    %ecx,%eax
569370:	75 28                	jne    0x56939a
569372:	8b 43 14             	mov    0x14(%ebx),%eax
569375:	8b 08                	mov    (%eax),%ecx
569377:	0f b7 01             	movzwl (%ecx),%eax
56937a:	29 43 04             	sub    %eax,0x4(%ebx)
56937d:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
569381:	75 09                	jne    0x56938c
569383:	8b c3                	mov    %ebx,%eax
569385:	e8 c2 90 00 00       	call   0x57244c
56938a:	eb 15                	jmp    0x5693a1
56938c:	8b 53 14             	mov    0x14(%ebx),%edx
56938f:	8b 0a                	mov    (%edx),%ecx
569391:	0f b7 01             	movzwl (%ecx),%eax
569394:	01 03                	add    %eax,(%ebx)
569396:	8b 03                	mov    (%ebx),%eax
569398:	eb 07                	jmp    0x5693a1
56939a:	8b c3                	mov    %ebx,%eax
56939c:	e8 8b 93 00 00       	call   0x57272c
5693a1:	8b 55 d4             	mov    -0x2c(%ebp),%edx
5693a4:	c1 e2 02             	shl    $0x2,%edx
5693a7:	52                   	push   %edx
5693a8:	8b d6                	mov    %esi,%edx
5693aa:	58                   	pop    %eax
5693ab:	2b d0                	sub    %eax,%edx
5693ad:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5693b0:	c1 e0 02             	shl    $0x2,%eax
5693b3:	03 c6                	add    %esi,%eax
5693b5:	eb 33                	jmp    0x5693ea
5693b7:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
5693bb:	83 48 04 08          	orl    $0x8,0x4(%eax)
5693bf:	8b 55 98             	mov    -0x68(%ebp),%edx
5693c2:	85 d2                	test   %edx,%edx
5693c4:	74 14                	je     0x5693da
5693c6:	81 08 10 01 00 00    	orl    $0x110,(%eax)
5693cc:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
5693d3:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
5693da:	83 08 10             	orl    $0x10,(%eax)
5693dd:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
5693e1:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
5693e8:	eb 44                	jmp    0x56942e
5693ea:	83 4a fc 02          	orl    $0x2,-0x4(%edx)
5693ee:	83 4a 04 04          	orl    $0x4,0x4(%edx)
5693f2:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
5693f6:	83 48 04 08          	orl    $0x8,0x4(%eax)
5693fa:	8b 4d 98             	mov    -0x68(%ebp),%ecx
5693fd:	85 c9                	test   %ecx,%ecx
5693ff:	74 1c                	je     0x56941d
569401:	81 0a 40 04 00 00    	orl    $0x440,(%edx)
569407:	81 08 10 01 00 00    	orl    $0x110,(%eax)
56940d:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
569414:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
56941b:	eb 11                	jmp    0x56942e
56941d:	83 0a 40             	orl    $0x40,(%edx)
569420:	83 08 10             	orl    $0x10,(%eax)
569423:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
569427:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
56942e:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
569434:	81 26 ff bf ff ff    	andl   $0xffffbfff,(%esi)
56943a:	ff 4d f0             	decl   -0x10(%ebp)
56943d:	83 45 bc 04          	addl   $0x4,-0x44(%ebp)
569441:	83 45 b8 04          	addl   $0x4,-0x48(%ebp)
569445:	8b 45 f0             	mov    -0x10(%ebp),%eax
569448:	85 c0                	test   %eax,%eax
56944a:	0f 8f c3 f4 ff ff    	jg     0x568913
569450:	83 6d f4 04          	subl   $0x4,-0xc(%ebp)
569454:	8b 55 cc             	mov    -0x34(%ebp),%edx
569457:	c1 e2 02             	shl    $0x2,%edx
56945a:	01 55 c4             	add    %edx,-0x3c(%ebp)
56945d:	8b 4d c8             	mov    -0x38(%ebp),%ecx
569460:	c1 e1 02             	shl    $0x2,%ecx
569463:	01 4d c0             	add    %ecx,-0x40(%ebp)
569466:	8b 45 f4             	mov    -0xc(%ebp),%eax
569469:	85 c0                	test   %eax,%eax
56946b:	0f 8f 70 f4 ff ff    	jg     0x5688e1
569471:	8b 55 18             	mov    0x18(%ebp),%edx
569474:	85 d2                	test   %edx,%edx
569476:	0f 84 f5 00 00 00    	je     0x569571
56947c:	8b 4b 10             	mov    0x10(%ebx),%ecx
56947f:	83 c1 48             	add    $0x48,%ecx
569482:	89 4b 14             	mov    %ecx,0x14(%ebx)
569485:	8b 43 14             	mov    0x14(%ebx),%eax
569488:	8b 10                	mov    (%eax),%edx
56948a:	66 83 7a 02 01       	cmpw   $0x1,0x2(%edx)
56948f:	75 28                	jne    0x5694b9
569491:	8b 4b 14             	mov    0x14(%ebx),%ecx
569494:	8b 01                	mov    (%ecx),%eax
569496:	0f b7 10             	movzwl (%eax),%edx
569499:	29 53 04             	sub    %edx,0x4(%ebx)
56949c:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
5694a0:	75 09                	jne    0x5694ab
5694a2:	8b c3                	mov    %ebx,%eax
5694a4:	e8 a3 8f 00 00       	call   0x57244c
5694a9:	eb 15                	jmp    0x5694c0
5694ab:	8b 53 14             	mov    0x14(%ebx),%edx
5694ae:	8b 0a                	mov    (%edx),%ecx
5694b0:	0f b7 01             	movzwl (%ecx),%eax
5694b3:	01 03                	add    %eax,(%ebx)
5694b5:	8b 03                	mov    (%ebx),%eax
5694b7:	eb 07                	jmp    0x5694c0
5694b9:	8b c3                	mov    %ebx,%eax
5694bb:	e8 6c 92 00 00       	call   0x57272c
5694c0:	8b 53 14             	mov    0x14(%ebx),%edx
5694c3:	8b 0a                	mov    (%edx),%ecx
5694c5:	66 83 79 02 00       	cmpw   $0x0,0x2(%ecx)
5694ca:	75 28                	jne    0x5694f4
5694cc:	8b 43 14             	mov    0x14(%ebx),%eax
5694cf:	8b 10                	mov    (%eax),%edx
5694d1:	0f b7 0a             	movzwl (%edx),%ecx
5694d4:	29 4b 04             	sub    %ecx,0x4(%ebx)
5694d7:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
5694db:	75 09                	jne    0x5694e6
5694dd:	8b c3                	mov    %ebx,%eax
5694df:	e8 68 8f 00 00       	call   0x57244c
5694e4:	eb 15                	jmp    0x5694fb
5694e6:	8b 53 14             	mov    0x14(%ebx),%edx
5694e9:	8b 0a                	mov    (%edx),%ecx
5694eb:	0f b7 01             	movzwl (%ecx),%eax
5694ee:	01 03                	add    %eax,(%ebx)
5694f0:	8b 03                	mov    (%ebx),%eax
5694f2:	eb 07                	jmp    0x5694fb
5694f4:	8b c3                	mov    %ebx,%eax
5694f6:	e8 31 92 00 00       	call   0x57272c
5694fb:	8b 53 14             	mov    0x14(%ebx),%edx
5694fe:	8b 0a                	mov    (%edx),%ecx
569500:	66 83 79 02 01       	cmpw   $0x1,0x2(%ecx)
569505:	75 28                	jne    0x56952f
569507:	8b 43 14             	mov    0x14(%ebx),%eax
56950a:	8b 10                	mov    (%eax),%edx
56950c:	0f b7 0a             	movzwl (%edx),%ecx
56950f:	29 4b 04             	sub    %ecx,0x4(%ebx)
569512:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
569516:	75 09                	jne    0x569521
569518:	8b c3                	mov    %ebx,%eax
56951a:	e8 2d 8f 00 00       	call   0x57244c
56951f:	eb 15                	jmp    0x569536
569521:	8b 53 14             	mov    0x14(%ebx),%edx
569524:	8b 0a                	mov    (%edx),%ecx
569526:	0f b7 01             	movzwl (%ecx),%eax
569529:	01 03                	add    %eax,(%ebx)
56952b:	8b 03                	mov    (%ebx),%eax
56952d:	eb 07                	jmp    0x569536
56952f:	8b c3                	mov    %ebx,%eax
569531:	e8 f6 91 00 00       	call   0x57272c
569536:	8b 53 14             	mov    0x14(%ebx),%edx
569539:	8b 0a                	mov    (%edx),%ecx
56953b:	66 83 79 02 00       	cmpw   $0x0,0x2(%ecx)
569540:	75 28                	jne    0x56956a
569542:	8b 43 14             	mov    0x14(%ebx),%eax
569545:	8b 10                	mov    (%eax),%edx
569547:	0f b7 0a             	movzwl (%edx),%ecx
56954a:	29 4b 04             	sub    %ecx,0x4(%ebx)
56954d:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
569551:	75 09                	jne    0x56955c
569553:	8b c3                	mov    %ebx,%eax
569555:	e8 f2 8e 00 00       	call   0x57244c
56955a:	eb 15                	jmp    0x569571
56955c:	8b 53 14             	mov    0x14(%ebx),%edx
56955f:	8b 0a                	mov    (%edx),%ecx
569561:	0f b7 01             	movzwl (%ecx),%eax
569564:	01 03                	add    %eax,(%ebx)
569566:	8b 03                	mov    (%ebx),%eax