568104:	8b 45 b8             	mov    -0x48(%ebp),%eax
568107:	99                   	cltd
568108:	33 c2                	xor    %edx,%eax
56810a:	2b c2                	sub    %edx,%eax
56810c:	d3 f8                	sar    %cl,%eax
56810e:	eb 0e                	jmp    0x56811e
568110:	8b 45 b8             	mov    -0x48(%ebp),%eax
568113:	8b ce                	mov    %esi,%ecx
568115:	99                   	cltd
568116:	33 c2                	xor    %edx,%eax
568118:	f7 d9                	neg    %ecx
56811a:	2b c2                	sub    %edx,%eax
56811c:	d3 e0                	shl    %cl,%eax
56811e:	83 e0 7f             	and    $0x7f,%eax
568121:	8b 04 85 2c 12 6b 00 	mov    0x6b122c(,%eax,4),%eax
568128:	8b 55 08             	mov    0x8(%ebp),%edx
56812b:	01 02                	add    %eax,(%edx)
56812d:	8b 45 b8             	mov    -0x48(%ebp),%eax
568130:	99                   	cltd
568131:	33 c2                	xor    %edx,%eax
568133:	2b c2                	sub    %edx,%eax
568135:	8b 4d ec             	mov    -0x14(%ebp),%ecx
568138:	23 c1                	and    %ecx,%eax
56813a:	74 07                	je     0x568143
56813c:	b8 01 00 00 00       	mov    $0x1,%eax
568141:	eb 02                	jmp    0x568145
568143:	33 c0                	xor    %eax,%eax
568145:	89 45 b4             	mov    %eax,-0x4c(%ebp)
568148:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
56814c:	75 17                	jne    0x568165
56814e:	68 30 03 00 00       	push   $0x330
568153:	68 3f f8 69 00       	push   $0x69f83f
568158:	68 16 f8 69 00       	push   $0x69f816
56815d:	e8 de 29 ff ff       	call   0x55ab40
568162:	83 c4 0c             	add    $0xc,%esp
568165:	ff 4b 08             	decl   0x8(%ebx)
568168:	0f 89 c3 00 00 00    	jns    0x568231
56816e:	66 8b 53 04          	mov    0x4(%ebx),%dx
568172:	c1 e2 08             	shl    $0x8,%edx
568175:	66 81 e2 ff ff       	and    $0xffff,%dx
56817a:	66 89 53 04          	mov    %dx,0x4(%ebx)
56817e:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
568184:	75 07                	jne    0x56818d
568186:	b9 06 00 00 00       	mov    $0x6,%ecx
56818b:	eb 05                	jmp    0x568192
56818d:	b9 07 00 00 00       	mov    $0x7,%ecx
568192:	89 4b 08             	mov    %ecx,0x8(%ebx)
568195:	66 8b 45 b4          	mov    -0x4c(%ebp),%ax
568199:	8b 4b 08             	mov    0x8(%ebx),%ecx
56819c:	66 83 e0 01          	and    $0x1,%ax
5681a0:	66 d3 e0             	shl    %cl,%ax
5681a3:	66 09 43 04          	or     %ax,0x4(%ebx)
5681a7:	8b 53 0c             	mov    0xc(%ebx),%edx
5681aa:	f6 42 08 07          	testb  $0x7,0x8(%edx)
5681ae:	75 6e                	jne    0x56821e
5681b0:	8b 43 0c             	mov    0xc(%ebx),%eax
5681b3:	8b 50 40             	mov    0x40(%eax),%edx
5681b6:	85 d2                	test   %edx,%edx
5681b8:	7c 1c                	jl     0x5681d6
5681ba:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5681bd:	8b 53 0c             	mov    0xc(%ebx),%edx
5681c0:	8b 41 40             	mov    0x40(%ecx),%eax
5681c3:	8b 4a 3c             	mov    0x3c(%edx),%ecx
5681c6:	3b c1                	cmp    %ecx,%eax
5681c8:	7f 0c                	jg     0x5681d6
5681ca:	8b 43 0c             	mov    0xc(%ebx),%eax
5681cd:	83 48 08 04          	orl    $0x4,0x8(%eax)
5681d1:	83 ca ff             	or     $0xffffffff,%edx
5681d4:	eb 4b                	jmp    0x568221
5681d6:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5681d9:	83 49 04 20          	orl    $0x20,0x4(%ecx)
5681dd:	8b 43 0c             	mov    0xc(%ebx),%eax
5681e0:	ff 48 1c             	decl   0x1c(%eax)
5681e3:	79 19                	jns    0x5681fe
5681e5:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
5681e9:	c1 fa 08             	sar    $0x8,%edx
5681ec:	8b 43 0c             	mov    0xc(%ebx),%eax
5681ef:	81 e2 ff 00 00 00    	and    $0xff,%edx
5681f5:	e8 1e 0c 01 00       	call   0x578e18
5681fa:	8b d0                	mov    %eax,%edx
5681fc:	eb 23                	jmp    0x568221
5681fe:	8b 43 0c             	mov    0xc(%ebx),%eax
568201:	ff 40 3c             	incl   0x3c(%eax)
568204:	8b 4b 0c             	mov    0xc(%ebx),%ecx
568207:	8b 41 18             	mov    0x18(%ecx),%eax
56820a:	ff 41 18             	incl   0x18(%ecx)
56820d:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
568211:	c1 fa 08             	sar    $0x8,%edx
568214:	88 10                	mov    %dl,(%eax)
568216:	81 e2 ff 00 00 00    	and    $0xff,%edx
56821c:	eb 03                	jmp    0x568221
56821e:	83 ca ff             	or     $0xffffffff,%edx
568221:	42                   	inc    %edx
568222:	75 05                	jne    0x568229
568224:	83 c8 ff             	or     $0xffffffff,%eax
568227:	eb 20                	jmp    0x568249
568229:	8b 45 b4             	mov    -0x4c(%ebp),%eax
56822c:	83 e0 01             	and    $0x1,%eax
56822f:	eb 18                	jmp    0x568249
568231:	66 8b 55 b4          	mov    -0x4c(%ebp),%dx
568235:	8b 4b 08             	mov    0x8(%ebx),%ecx
568238:	66 83 e2 01          	and    $0x1,%dx
56823c:	66 d3 e2             	shl    %cl,%dx
56823f:	66 09 53 04          	or     %dx,0x4(%ebx)
568243:	8b 45 b4             	mov    -0x4c(%ebp),%eax
568246:	83 e0 01             	and    $0x1,%eax
568249:	40                   	inc    %eax
56824a:	75 08                	jne    0x568254
56824c:	83 c8 ff             	or     $0xffffffff,%eax
56824f:	e9 b0 05 00 00       	jmp    0x568804
568254:	81 0f 00 20 00 00    	orl    $0x2000,(%edi)
56825a:	ff 4d f0             	decl   -0x10(%ebp)
56825d:	8b 55 f0             	mov    -0x10(%ebp),%edx
568260:	85 d2                	test   %edx,%edx
568262:	0f 8e 50 05 00 00    	jle    0x5687b8
568268:	8b 4d dc             	mov    -0x24(%ebp),%ecx
56826b:	8b 45 d8             	mov    -0x28(%ebp),%eax
56826e:	c1 e1 02             	shl    $0x2,%ecx
568271:	c1 e0 02             	shl    $0x2,%eax
568274:	03 f9                	add    %ecx,%edi
568276:	01 45 bc             	add    %eax,-0x44(%ebp)
568279:	8b 17                	mov    (%edi),%edx
56827b:	81 e2 00 50 00 00    	and    $0x5000,%edx
568281:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
568287:	0f 85 98 01 00 00    	jne    0x568425
56828d:	8b 4d bc             	mov    -0x44(%ebp),%ecx
568290:	8d 56 06             	lea    0x6(%esi),%edx
568293:	83 fa 06             	cmp    $0x6,%edx
568296:	8b 01                	mov    (%ecx),%eax
568298:	89 45 b0             	mov    %eax,-0x50(%ebp)
56829b:	7e 2c                	jle    0x5682c9
56829d:	85 f6                	test   %esi,%esi
56829f:	7c 0e                	jl     0x5682af
5682a1:	8b ce                	mov    %esi,%ecx
5682a3:	8b 45 b0             	mov    -0x50(%ebp),%eax
5682a6:	99                   	cltd
5682a7:	33 c2                	xor    %edx,%eax
5682a9:	2b c2                	sub    %edx,%eax
5682ab:	d3 f8                	sar    %cl,%eax
5682ad:	eb 0e                	jmp    0x5682bd
5682af:	8b 45 b0             	mov    -0x50(%ebp),%eax
5682b2:	8b ce                	mov    %esi,%ecx
5682b4:	99                   	cltd
5682b5:	33 c2                	xor    %edx,%eax
5682b7:	f7 d9                	neg    %ecx
5682b9:	2b c2                	sub    %edx,%eax
5682bb:	d3 e0                	shl    %cl,%eax
5682bd:	83 e0 7f             	and    $0x7f,%eax
5682c0:	8b 0c 85 24 0e 6b 00 	mov    0x6b0e24(,%eax,4),%ecx
5682c7:	eb 2a                	jmp    0x5682f3
5682c9:	85 f6                	test   %esi,%esi
5682cb:	7c 0e                	jl     0x5682db
5682cd:	8b ce                	mov    %esi,%ecx
5682cf:	8b 45 b0             	mov    -0x50(%ebp),%eax
5682d2:	99                   	cltd
5682d3:	33 c2                	xor    %edx,%eax
5682d5:	2b c2                	sub    %edx,%eax
5682d7:	d3 f8                	sar    %cl,%eax
5682d9:	eb 0e                	jmp    0x5682e9
5682db:	8b 45 b0             	mov    -0x50(%ebp),%eax
5682de:	8b ce                	mov    %esi,%ecx
5682e0:	99                   	cltd
5682e1:	33 c2                	xor    %edx,%eax
5682e3:	f7 d9                	neg    %ecx
5682e5:	2b c2                	sub    %edx,%eax
5682e7:	d3 e0                	shl    %cl,%eax
5682e9:	83 e0 7f             	and    $0x7f,%eax
5682ec:	8b 0c 85 2c 12 6b 00 	mov    0x6b122c(,%eax,4),%ecx
5682f3:	8b 45 08             	mov    0x8(%ebp),%eax
5682f6:	01 08                	add    %ecx,(%eax)
5682f8:	8b 45 b0             	mov    -0x50(%ebp),%eax
5682fb:	99                   	cltd
5682fc:	33 c2                	xor    %edx,%eax
5682fe:	2b c2                	sub    %edx,%eax
568300:	8b 4d ec             	mov    -0x14(%ebp),%ecx
568303:	23 c1                	and    %ecx,%eax
568305:	74 07                	je     0x56830e
568307:	b8 01 00 00 00       	mov    $0x1,%eax
56830c:	eb 02                	jmp    0x568310
56830e:	33 c0                	xor    %eax,%eax
568310:	89 45 ac             	mov    %eax,-0x54(%ebp)
568313:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
568317:	75 17                	jne    0x568330
568319:	68 37 03 00 00       	push   $0x337
56831e:	68 74 f8 69 00       	push   $0x69f874
568323:	68 4b f8 69 00       	push   $0x69f84b
568328:	e8 13 28 ff ff       	call   0x55ab40
56832d:	83 c4 0c             	add    $0xc,%esp
568330:	ff 4b 08             	decl   0x8(%ebx)
568333:	0f 89 c3 00 00 00    	jns    0x5683fc
568339:	66 8b 53 04          	mov    0x4(%ebx),%dx
56833d:	c1 e2 08             	shl    $0x8,%edx
568340:	66 81 e2 ff ff       	and    $0xffff,%dx
568345:	66 89 53 04          	mov    %dx,0x4(%ebx)
568349:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
56834f:	75 07                	jne    0x568358
568351:	b9 06 00 00 00       	mov    $0x6,%ecx
568356:	eb 05                	jmp    0x56835d
568358:	b9 07 00 00 00       	mov    $0x7,%ecx
56835d:	89 4b 08             	mov    %ecx,0x8(%ebx)
568360:	66 8b 45 ac          	mov    -0x54(%ebp),%ax
568364:	8b 4b 08             	mov    0x8(%ebx),%ecx
568367:	66 83 e0 01          	and    $0x1,%ax
56836b:	66 d3 e0             	shl    %cl,%ax
56836e:	66 09 43 04          	or     %ax,0x4(%ebx)
568372:	8b 53 0c             	mov    0xc(%ebx),%edx
568375:	f6 42 08 07          	testb  $0x7,0x8(%edx)
568379:	75 6e                	jne    0x5683e9
56837b:	8b 43 0c             	mov    0xc(%ebx),%eax
56837e:	8b 50 40             	mov    0x40(%eax),%edx
568381:	85 d2                	test   %edx,%edx
568383:	7c 1c                	jl     0x5683a1
568385:	8b 4b 0c             	mov    0xc(%ebx),%ecx
568388:	8b 53 0c             	mov    0xc(%ebx),%edx
56838b:	8b 41 40             	mov    0x40(%ecx),%eax
56838e:	8b 4a 3c             	mov    0x3c(%edx),%ecx
568391:	3b c1                	cmp    %ecx,%eax
568393:	7f 0c                	jg     0x5683a1
568395:	8b 43 0c             	mov    0xc(%ebx),%eax
568398:	83 48 08 04          	orl    $0x4,0x8(%eax)
56839c:	83 ca ff             	or     $0xffffffff,%edx
56839f:	eb 4b                	jmp    0x5683ec
5683a1:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5683a4:	83 49 04 20          	orl    $0x20,0x4(%ecx)
5683a8:	8b 43 0c             	mov    0xc(%ebx),%eax
5683ab:	ff 48 1c             	decl   0x1c(%eax)
5683ae:	79 19                	jns    0x5683c9
5683b0:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
5683b4:	c1 fa 08             	sar    $0x8,%edx
5683b7:	8b 43 0c             	mov    0xc(%ebx),%eax
5683ba:	81 e2 ff 00 00 00    	and    $0xff,%edx
5683c0:	e8 53 0a 01 00       	call   0x578e18
5683c5:	8b d0                	mov    %eax,%edx
5683c7:	eb 23                	jmp    0x5683ec
5683c9:	8b 43 0c             	mov    0xc(%ebx),%eax
5683cc:	ff 40 3c             	incl   0x3c(%eax)
5683cf:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5683d2:	8b 41 18             	mov    0x18(%ecx),%eax
5683d5:	ff 41 18             	incl   0x18(%ecx)
5683d8:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
5683dc:	c1 fa 08             	sar    $0x8,%edx
5683df:	88 10                	mov    %dl,(%eax)
5683e1:	81 e2 ff 00 00 00    	and    $0xff,%edx
5683e7:	eb 03                	jmp    0x5683ec
5683e9:	83 ca ff             	or     $0xffffffff,%edx
5683ec:	42                   	inc    %edx
5683ed:	75 05                	jne    0x5683f4
5683ef:	83 c8 ff             	or     $0xffffffff,%eax
5683f2:	eb 20                	jmp    0x568414
5683f4:	8b 45 ac             	mov    -0x54(%ebp),%eax
5683f7:	83 e0 01             	and    $0x1,%eax
5683fa:	eb 18                	jmp    0x568414
5683fc:	66 8b 55 ac          	mov    -0x54(%ebp),%dx
568400:	8b 4b 08             	mov    0x8(%ebx),%ecx
568403:	66 83 e2 01          	and    $0x1,%dx
568407:	66 d3 e2             	shl    %cl,%dx
56840a:	66 09 53 04          	or     %dx,0x4(%ebx)
56840e:	8b 45 ac             	mov    -0x54(%ebp),%eax
568411:	83 e0 01             	and    $0x1,%eax
568414:	40                   	inc    %eax
568415:	75 08                	jne    0x56841f
568417:	83 c8 ff             	or     $0xffffffff,%eax
56841a:	e9 e5 03 00 00       	jmp    0x568804
56841f:	81 0f 00 20 00 00    	orl    $0x2000,(%edi)
568425:	ff 4d f0             	decl   -0x10(%ebp)
568428:	8b 55 f0             	mov    -0x10(%ebp),%edx
56842b:	85 d2                	test   %edx,%edx
56842d:	0f 8e 85 03 00 00    	jle    0x5687b8
568433:	8b 4d dc             	mov    -0x24(%ebp),%ecx
568436:	8b 45 d8             	mov    -0x28(%ebp),%eax
568439:	c1 e1 02             	shl    $0x2,%ecx
56843c:	c1 e0 02             	shl    $0x2,%eax
56843f:	03 f9                	add    %ecx,%edi
568441:	01 45 bc             	add    %eax,-0x44(%ebp)
568444:	8b 17                	mov    (%edi),%edx
568446:	81 e2 00 50 00 00    	and    $0x5000,%edx
56844c:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
568452:	0f 85 98 01 00 00    	jne    0x5685f0
568458:	8b 4d bc             	mov    -0x44(%ebp),%ecx
56845b:	8d 56 06             	lea    0x6(%esi),%edx
56845e:	83 fa 06             	cmp    $0x6,%edx
568461:	8b 01                	mov    (%ecx),%eax
568463:	89 45 a8             	mov    %eax,-0x58(%ebp)
568466:	7e 2c                	jle    0x568494
568468:	85 f6                	test   %esi,%esi
56846a:	7c 0e                	jl     0x56847a
56846c:	8b ce                	mov    %esi,%ecx
56846e:	8b 45 a8             	mov    -0x58(%ebp),%eax
568471:	99                   	cltd
568472:	33 c2                	xor    %edx,%eax
568474:	2b c2                	sub    %edx,%eax
568476:	d3 f8                	sar    %cl,%eax
568478:	eb 0e                	jmp    0x568488
56847a:	8b 45 a8             	mov    -0x58(%ebp),%eax
56847d:	8b ce                	mov    %esi,%ecx
56847f:	99                   	cltd
568480:	33 c2                	xor    %edx,%eax
568482:	f7 d9                	neg    %ecx
568484:	2b c2                	sub    %edx,%eax
568486:	d3 e0                	shl    %cl,%eax
568488:	83 e0 7f             	and    $0x7f,%eax
56848b:	8b 0c 85 24 0e 6b 00 	mov    0x6b0e24(,%eax,4),%ecx
568492:	eb 2a                	jmp    0x5684be
568494:	85 f6                	test   %esi,%esi
568496:	7c 0e                	jl     0x5684a6
568498:	8b ce                	mov    %esi,%ecx
56849a:	8b 45 a8             	mov    -0x58(%ebp),%eax
56849d:	99                   	cltd
56849e:	33 c2                	xor    %edx,%eax
5684a0:	2b c2                	sub    %edx,%eax
5684a2:	d3 f8                	sar    %cl,%eax
5684a4:	eb 0e                	jmp    0x5684b4
5684a6:	8b 45 a8             	mov    -0x58(%ebp),%eax
5684a9:	8b ce                	mov    %esi,%ecx
5684ab:	99                   	cltd
5684ac:	33 c2                	xor    %edx,%eax
5684ae:	f7 d9                	neg    %ecx
5684b0:	2b c2                	sub    %edx,%eax
5684b2:	d3 e0                	shl    %cl,%eax
5684b4:	83 e0 7f             	and    $0x7f,%eax
5684b7:	8b 0c 85 2c 12 6b 00 	mov    0x6b122c(,%eax,4),%ecx
5684be:	8b 45 08             	mov    0x8(%ebp),%eax
5684c1:	01 08                	add    %ecx,(%eax)
5684c3:	8b 45 a8             	mov    -0x58(%ebp),%eax
5684c6:	99                   	cltd
5684c7:	33 c2                	xor    %edx,%eax
5684c9:	2b c2                	sub    %edx,%eax
5684cb:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5684ce:	23 c1                	and    %ecx,%eax
5684d0:	74 07                	je     0x5684d9
5684d2:	b8 01 00 00 00       	mov    $0x1,%eax
5684d7:	eb 02                	jmp    0x5684db
5684d9:	33 c0                	xor    %eax,%eax
5684db:	89 45 a4             	mov    %eax,-0x5c(%ebp)
5684de:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5684e2:	75 17                	jne    0x5684fb
5684e4:	68 3e 03 00 00       	push   $0x33e
5684e9:	68 a9 f8 69 00       	push   $0x69f8a9
5684ee:	68 80 f8 69 00       	push   $0x69f880
5684f3:	e8 48 26 ff ff       	call   0x55ab40
5684f8:	83 c4 0c             	add    $0xc,%esp
5684fb:	ff 4b 08             	decl   0x8(%ebx)
5684fe:	0f 89 c3 00 00 00    	jns    0x5685c7
568504:	66 8b 53 04          	mov    0x4(%ebx),%dx
568508:	c1 e2 08             	shl    $0x8,%edx
56850b:	66 81 e2 ff ff       	and    $0xffff,%dx
568510:	66 89 53 04          	mov    %dx,0x4(%ebx)
568514:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
56851a:	75 07                	jne    0x568523
56851c:	b9 06 00 00 00       	mov    $0x6,%ecx