61821e:	c7 80 00 04 00 00 01 	movl   $0x1,0x400(%eax)
618225:	00 00 00
618228:	ff b7 64 06 00 00    	push   0x664(%edi)
61822e:	6a 0f                	push   $0xf
618230:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
618236:	e8 07 08 00 00       	call   0x618a42
61823b:	83 c4 10             	add    $0x10,%esp
61823e:	8d 8f a4 01 00 00    	lea    0x1a4(%edi),%ecx
618244:	56                   	push   %esi
618245:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
61824b:	e8 f0 0b 00 00       	call   0x618e40
618250:	8b b5 ac f9 ff ff    	mov    -0x654(%ebp),%esi
618256:	8b 85 a8 f9 ff ff    	mov    -0x658(%ebp),%eax
61825c:	6a 00                	push   $0x0
61825e:	ff b5 00 f5 ff ff    	push   -0xb00(%ebp)
618264:	8d 8e 04 04 00 00    	lea    0x404(%esi),%ecx
61826a:	8d 04 86             	lea    (%esi,%eax,4),%eax
61826d:	51                   	push   %ecx
61826e:	50                   	push   %eax
61826f:	8d 85 1c f5 ff ff    	lea    -0xae4(%ebp),%eax
618275:	50                   	push   %eax
618276:	e8 5f f6 ff ff       	call   0x6178da
61827b:	6a 1e                	push   $0x1e
61827d:	ff b7 ec 06 00 00    	push   0x6ec(%edi)
618283:	8b 00                	mov    (%eax),%eax
618285:	2b c6                	sub    %esi,%eax
618287:	2d 04 04 00 00       	sub    $0x404,%eax
61828c:	6a 0f                	push   $0xf
61828e:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
618294:	c1 f8 02             	sar    $0x2,%eax
618297:	89 85 08 f5 ff ff    	mov    %eax,-0xaf8(%ebp)
61829d:	e8 a0 07 00 00       	call   0x618a42
6182a2:	83 c4 24             	add    $0x24,%esp
6182a5:	8d 8f b0 01 00 00    	lea    0x1b0(%edi),%ecx
6182ab:	6a 1e                	push   $0x1e
6182ad:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
6182b3:	e8 88 0b 00 00       	call   0x618e40
6182b8:	8b b5 34 ff ff ff    	mov    -0xcc(%ebp),%esi
6182be:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
6182c4:	6a 00                	push   $0x0
6182c6:	ff b5 00 f5 ff ff    	push   -0xb00(%ebp)
6182cc:	8d 4e 04             	lea    0x4(%esi),%ecx
6182cf:	8d 04 86             	lea    (%esi,%eax,4),%eax
6182d2:	51                   	push   %ecx
6182d3:	50                   	push   %eax
6182d4:	8d 85 1c f5 ff ff    	lea    -0xae4(%ebp),%eax
6182da:	50                   	push   %eax
6182db:	e8 fa f5 ff ff       	call   0x6178da
6182e0:	83 c4 14             	add    $0x14,%esp
6182e3:	8d 8d b0 f9 ff ff    	lea    -0x650(%ebp),%ecx
6182e9:	8b 00                	mov    (%eax),%eax
6182eb:	2b c6                	sub    %esi,%eax
6182ed:	8b b5 08 f5 ff ff    	mov    -0xaf8(%ebp),%esi
6182f3:	83 e8 04             	sub    $0x4,%eax
6182f6:	c1 f8 02             	sar    $0x2,%eax
6182f9:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
6182ff:	05 02 01 00 00       	add    $0x102,%eax
618304:	03 c6                	add    %esi,%eax
618306:	50                   	push   %eax
618307:	e8 a6 f6 ff ff       	call   0x6179b2
61830c:	8d 04 b5 04 04 00 00 	lea    0x404(,%esi,4),%eax
618313:	50                   	push   %eax
618314:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
61831a:	ff b5 ac fe ff ff    	push   -0x154(%ebp)
618320:	e8 db ab fc ff       	call   0x5e2f00
618325:	8b 85 24 f5 ff ff    	mov    -0xadc(%ebp),%eax
61832b:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
618332:	50                   	push   %eax
618333:	8b 85 ac fe ff ff    	mov    -0x154(%ebp),%eax
618339:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
61833f:	8d 04 b0             	lea    (%eax,%esi,4),%eax
618342:	05 04 04 00 00       	add    $0x404,%eax
618347:	50                   	push   %eax
618348:	e8 b3 ab fc ff       	call   0x5e2f00
61834d:	83 c4 18             	add    $0x18,%esp
618350:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
618356:	6a 13                	push   $0x13
618358:	5e                   	pop    %esi
618359:	56                   	push   %esi
61835a:	89 b5 14 f5 ff ff    	mov    %esi,-0xaec(%ebp)
618360:	e8 27 f6 ff ff       	call   0x61798c
618365:	56                   	push   %esi
618366:	8d 4d 90             	lea    -0x70(%ebp),%ecx
618369:	e8 1e f6 ff ff       	call   0x61798c
61836e:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
618371:	33 d2                	xor    %edx,%edx
618373:	8b 45 88             	mov    -0x78(%ebp),%eax
618376:	88 95 1c f5 ff ff    	mov    %dl,-0xae4(%ebp)
61837c:	ff b5 1c f5 ff ff    	push   -0xae4(%ebp)
618382:	89 95 20 f5 ff ff    	mov    %edx,-0xae0(%ebp)
618388:	8d 95 20 f5 ff ff    	lea    -0xae0(%ebp),%edx
61838e:	52                   	push   %edx
61838f:	8d 04 81             	lea    (%ecx,%eax,4),%eax
618392:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
618396:	50                   	push   %eax
618397:	51                   	push   %ecx
618398:	e8 55 ee ff ff       	call   0x6171f2
61839d:	8b 8d ac fe ff ff    	mov    -0x154(%ebp),%ecx
6183a3:	83 c4 10             	add    $0x10,%esp
6183a6:	8b 85 a8 fe ff ff    	mov    -0x158(%ebp),%eax
6183ac:	89 8d 1c f5 ff ff    	mov    %ecx,-0xae4(%ebp)
6183b2:	89 8d 18 f5 ff ff    	mov    %ecx,-0xae8(%ebp)
6183b8:	8d 04 81             	lea    (%ecx,%eax,4),%eax
6183bb:	89 85 20 f5 ff ff    	mov    %eax,-0xae0(%ebp)
6183c1:	3b c8                	cmp    %eax,%ecx
6183c3:	74 3d                	je     0x618402
6183c5:	8b f8                	mov    %eax,%edi
6183c7:	8b f1                	mov    %ecx,%esi
6183c9:	8d 85 fc f4 ff ff    	lea    -0xb04(%ebp),%eax
6183cf:	50                   	push   %eax
6183d0:	8d 85 04 f5 ff ff    	lea    -0xafc(%ebp),%eax
6183d6:	50                   	push   %eax
6183d7:	8d 85 18 f5 ff ff    	lea    -0xae8(%ebp),%eax
6183dd:	50                   	push   %eax
6183de:	57                   	push   %edi
6183df:	56                   	push   %esi
6183e0:	e8 44 fc ff ff       	call   0x618029
6183e5:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
6183e8:	83 c4 14             	add    $0x14,%esp
6183eb:	ff 04 81             	incl   (%ecx,%eax,4)
6183ee:	39 bd 18 f5 ff ff    	cmp    %edi,-0xae8(%ebp)
6183f4:	75 d3                	jne    0x6183c9
6183f6:	8b bd 0c f5 ff ff    	mov    -0xaf4(%ebp),%edi
6183fc:	8b b5 14 f5 ff ff    	mov    -0xaec(%ebp),%esi
618402:	56                   	push   %esi
618403:	ff 75 8c             	push   -0x74(%ebp)
618406:	6a 07                	push   $0x7
618408:	ff 75 e4             	push   -0x1c(%ebp)
61840b:	e8 32 06 00 00       	call   0x618a42
618410:	83 c4 10             	add    $0x10,%esp
618413:	8d 8d f0 f4 ff ff    	lea    -0xb10(%ebp),%ecx
618419:	56                   	push   %esi
61841a:	ff 75 e4             	push   -0x1c(%ebp)
61841d:	e8 3b f7 ff ff       	call   0x617b5d
618422:	8b 55 e4             	mov    -0x1c(%ebp),%edx
618425:	b9 bc c4 6d 00       	mov    $0x6dc4bc,%ecx
61842a:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
61842e:	8b 41 fc             	mov    -0x4(%ecx),%eax
618431:	83 3c 82 00          	cmpl   $0x0,(%edx,%eax,4)
618435:	75 0c                	jne    0x618443
618437:	83 e9 04             	sub    $0x4,%ecx
61843a:	4e                   	dec    %esi
61843b:	81 f9 80 c4 6d 00    	cmp    $0x6dc480,%ecx
618441:	77 eb                	ja     0x61842e
618443:	6a 05                	push   $0x5
618445:	ff b5 08 f5 ff ff    	push   -0xaf8(%ebp)
61844b:	89 b5 14 f5 ff ff    	mov    %esi,-0xaec(%ebp)
618451:	8b cf                	mov    %edi,%ecx
618453:	83 ad 14 f5 ff ff 04 	subl   $0x4,-0xaec(%ebp)
61845a:	89 b5 18 f5 ff ff    	mov    %esi,-0xae8(%ebp)
618460:	e8 b8 14 00 00       	call   0x61991d
618465:	6a 05                	push   $0x5
618467:	ff b5 24 f5 ff ff    	push   -0xadc(%ebp)
61846d:	8b cf                	mov    %edi,%ecx
61846f:	e8 a9 14 00 00       	call   0x61991d
618474:	6a 04                	push   $0x4
618476:	ff b5 14 f5 ff ff    	push   -0xaec(%ebp)
61847c:	8b cf                	mov    %edi,%ecx
61847e:	e8 9a 14 00 00       	call   0x61991d
618483:	33 c0                	xor    %eax,%eax
618485:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
61848b:	85 f6                	test   %esi,%esi
61848d:	74 27                	je     0x6184b6
61848f:	8b 0c 85 70 c4 6d 00 	mov    0x6dc470(,%eax,4),%ecx
618496:	8b 45 e4             	mov    -0x1c(%ebp),%eax
618499:	6a 03                	push   $0x3
61849b:	ff 34 88             	push   (%eax,%ecx,4)
61849e:	8b cf                	mov    %edi,%ecx
6184a0:	e8 78 14 00 00       	call   0x61991d
6184a5:	8b 85 24 f5 ff ff    	mov    -0xadc(%ebp),%eax
6184ab:	40                   	inc    %eax
6184ac:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
6184b2:	3b c6                	cmp    %esi,%eax
6184b4:	72 d9                	jb     0x61848f
6184b6:	8b 85 ac fe ff ff    	mov    -0x154(%ebp),%eax
6184bc:	8b b5 20 f5 ff ff    	mov    -0xae0(%ebp),%esi
6184c2:	89 85 18 f5 ff ff    	mov    %eax,-0xae8(%ebp)
6184c8:	3b c6                	cmp    %esi,%eax
6184ca:	74 53                	je     0x61851f
6184cc:	8d 85 20 f5 ff ff    	lea    -0xae0(%ebp),%eax
6184d2:	50                   	push   %eax
6184d3:	8d 85 24 f5 ff ff    	lea    -0xadc(%ebp),%eax
6184d9:	50                   	push   %eax
6184da:	8d 85 18 f5 ff ff    	lea    -0xae8(%ebp),%eax
6184e0:	50                   	push   %eax
6184e1:	56                   	push   %esi
6184e2:	ff b5 1c f5 ff ff    	push   -0xae4(%ebp)
6184e8:	e8 3c fb ff ff       	call   0x618029
6184ed:	8b 8d f8 f4 ff ff    	mov    -0xb08(%ebp),%ecx
6184f3:	83 c4 14             	add    $0x14,%esp
6184f6:	ff 74 c1 04          	push   0x4(%ecx,%eax,8)
6184fa:	ff 34 c1             	push   (%ecx,%eax,8)
6184fd:	8b cf                	mov    %edi,%ecx
6184ff:	e8 19 14 00 00       	call   0x61991d
618504:	ff b5 20 f5 ff ff    	push   -0xae0(%ebp)
61850a:	8b cf                	mov    %edi,%ecx
61850c:	ff b5 24 f5 ff ff    	push   -0xadc(%ebp)
618512:	e8 06 14 00 00       	call   0x61991d
618517:	39 b5 18 f5 ff ff    	cmp    %esi,-0xae8(%ebp)
61851d:	75 ad                	jne    0x6184cc
61851f:	8d 8d f0 f4 ff ff    	lea    -0xb10(%ebp),%ecx
618525:	e8 56 f7 ff ff       	call   0x617c80
61852a:	8b 7d e4             	mov    -0x1c(%ebp),%edi
61852d:	8d 45 90             	lea    -0x70(%ebp),%eax
618530:	3b f8                	cmp    %eax,%edi
618532:	75 0b                	jne    0x61853f
618534:	8b 4d e0             	mov    -0x20(%ebp),%ecx
618537:	33 c0                	xor    %eax,%eax
618539:	c6 45 dd 00          	movb   $0x0,-0x23(%ebp)
61853d:	f3 ab                	rep stos %eax,%es:(%edi)
61853f:	8b 7d 8c             	mov    -0x74(%ebp),%edi
618542:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
618548:	3b f8                	cmp    %eax,%edi
61854a:	75 0b                	jne    0x618557
61854c:	8b 4d 88             	mov    -0x78(%ebp),%ecx
61854f:	33 c0                	xor    %eax,%eax
618551:	c6 45 85 00          	movb   $0x0,-0x7b(%ebp)
618555:	f3 ab                	rep stos %eax,%es:(%edi)
618557:	ff b5 a8 fe ff ff    	push   -0x158(%ebp)
61855d:	8d 8d b0 f9 ff ff    	lea    -0x650(%ebp),%ecx
618563:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
618567:	ff b5 ac fe ff ff    	push   -0x154(%ebp)
61856d:	e8 e7 16 00 00       	call   0x619c59
618572:	8b bd 34 ff ff ff    	mov    -0xcc(%ebp),%edi
618578:	8d 85 b0 fe ff ff    	lea    -0x150(%ebp),%eax
61857e:	3b f8                	cmp    %eax,%edi
618580:	75 11                	jne    0x618593
618582:	8b 8d 30 ff ff ff    	mov    -0xd0(%ebp),%ecx
618588:	33 c0                	xor    %eax,%eax
61858a:	c6 85 29 ff ff ff 00 	movb   $0x0,-0xd7(%ebp)
618591:	f3 ab                	rep stos %eax,%es:(%edi)
618593:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
618597:	8d 8d 28 f5 ff ff    	lea    -0xad8(%ebp),%ecx
61859d:	e8 a1 f6 ff ff       	call   0x617c43
6185a2:	8b bd 0c f5 ff ff    	mov    -0xaf4(%ebp),%edi
6185a8:	33 c9                	xor    %ecx,%ecx
6185aa:	83 7b 0c 01          	cmpl   $0x1,0xc(%ebx)
6185ae:	be a4 01 00 00       	mov    $0x1a4,%esi
6185b3:	ba 98 01 00 00       	mov    $0x198,%edx
6185b8:	8d 46 e8             	lea    -0x18(%esi),%eax
6185bb:	0f 44 f0             	cmove  %eax,%esi
6185be:	83 c0 24             	add    $0x24,%eax
6185c1:	03 f7                	add    %edi,%esi
6185c3:	83 7b 0c 01          	cmpl   $0x1,0xc(%ebx)
6185c7:	89 b5 24 f5 ff ff    	mov    %esi,-0xadc(%ebp)
6185cd:	0f 44 c2             	cmove  %edx,%eax
6185d0:	03 c7                	add    %edi,%eax
6185d2:	89 85 20 f5 ff ff    	mov    %eax,-0xae0(%ebp)
6185d8:	39 8f fc 06 00 00    	cmp    %ecx,0x6fc(%edi)
6185de:	0f 86 bd 00 00 00    	jbe    0x6186a1
6185e4:	8b 87 f8 06 00 00    	mov    0x6f8(%edi),%eax
6185ea:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
6185ed:	8b 46 08             	mov    0x8(%esi),%eax
6185f0:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
6185f6:	89 8d 1c f5 ff ff    	mov    %ecx,-0xae4(%ebp)
6185fc:	ff 74 c8 04          	push   0x4(%eax,%ecx,8)
618600:	ff 34 c8             	push   (%eax,%ecx,8)
618603:	8b cf                	mov    %edi,%ecx
618605:	e8 13 13 00 00       	call   0x61991d
61860a:	8b 85 1c f5 ff ff    	mov    -0xae4(%ebp),%eax
618610:	3d 01 01 00 00       	cmp    $0x101,%eax
618615:	72 71                	jb     0x618688
618617:	ff 34 85 bc c0 6d 00 	push   0x6dc0bc(,%eax,4)
61861e:	8b 87 f8 06 00 00    	mov    0x6f8(%edi),%eax
618624:	8b cf                	mov    %edi,%ecx
618626:	8b b5 10 f5 ff ff    	mov    -0xaf0(%ebp),%esi
61862c:	8b 04 b0             	mov    (%eax,%esi,4),%eax
61862f:	c1 e8 09             	shr    $0x9,%eax
618632:	83 e0 1f             	and    $0x1f,%eax
618635:	50                   	push   %eax
618636:	e8 e2 12 00 00       	call   0x61991d
61863b:	8b 87 f8 06 00 00    	mov    0x6f8(%edi),%eax
618641:	8b cf                	mov    %edi,%ecx
618643:	8b 34 b0             	mov    (%eax,%esi,4),%esi
618646:	8b 85 20 f5 ff ff    	mov    -0xae0(%ebp),%eax
61864c:	c1 ee 0e             	shr    $0xe,%esi
61864f:	83 e6 1f             	and    $0x1f,%esi
618652:	8b 40 08             	mov    0x8(%eax),%eax
618655:	ff 74 f0 04          	push   0x4(%eax,%esi,8)
618659:	ff 34 f0             	push   (%eax,%esi,8)
61865c:	e8 bc 12 00 00       	call   0x61991d
618661:	8b 87 f8 06 00 00    	mov    0x6f8(%edi),%eax
618667:	8b 8d 10 f5 ff ff    	mov    -0xaf0(%ebp),%ecx
61866d:	ff 34 b5 38 c5 6d 00 	push   0x6dc538(,%esi,4)
618674:	8b 04 88             	mov    (%eax,%ecx,4),%eax
618677:	8b cf                	mov    %edi,%ecx
618679:	c1 e8 13             	shr    $0x13,%eax
61867c:	50                   	push   %eax
61867d:	e8 9b 12 00 00       	call   0x61991d
618682:	8b b5 24 f5 ff ff    	mov    -0xadc(%ebp),%esi
618688:	8b 8d 10 f5 ff ff    	mov    -0xaf0(%ebp),%ecx
61868e:	41                   	inc    %ecx
61868f:	89 8d 10 f5 ff ff    	mov    %ecx,-0xaf0(%ebp)
618695:	3b 8f fc 06 00 00    	cmp    0x6fc(%edi),%ecx
61869b:	0f 82 43 ff ff ff    	jb     0x6185e4
6186a1:	8b 46 08             	mov    0x8(%esi),%eax
6186a4:	8b cf                	mov    %edi,%ecx
6186a6:	ff b0 04 08 00 00    	push   0x804(%eax)
6186ac:	ff b0 00 08 00 00    	push   0x800(%eax)
6186b2:	e8 66 12 00 00       	call   0x61991d
6186b7:	8b 4d ec             	mov    -0x14(%ebp),%ecx
6186ba:	e8 ca 28 03 00       	call   0x64af89
6186bf:	c2 08 00             	ret    $0x8
6186c2:	55                   	push   %ebp
6186c3:	8b ec                	mov    %esp,%ebp
6186c5:	51                   	push   %ecx
6186c6:	53                   	push   %ebx
6186c7:	8b 5d 08             	mov    0x8(%ebp),%ebx
6186ca:	33 c0                	xor    %eax,%eax
6186cc:	56                   	push   %esi
6186cd:	8b f1                	mov    %ecx,%esi
6186cf:	39 86 04 07 00 00    	cmp    %eax,0x704(%esi)
6186d5:	75 08                	jne    0x6186df
6186d7:	84 db                	test   %bl,%bl
6186d9:	0f 84 ac 01 00 00    	je     0x61888b
6186df:	39 86 40 01 00 00    	cmp    %eax,0x140(%esi)
6186e5:	75 42                	jne    0x618729
6186e7:	50                   	push   %eax
6186e8:	53                   	push   %ebx
6186e9:	e8 45 fa ff ff       	call   0x618133
6186ee:	8b 8e 48 01 00 00    	mov    0x148(%esi),%ecx
6186f4:	85 c9                	test   %ecx,%ecx
6186f6:	0f 8e 1e 01 00 00    	jle    0x61881a
6186fc:	ff 86 50 01 00 00    	incl   0x150(%esi)
618702:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
618708:	3b 86 4c 01 00 00    	cmp    0x14c(%esi),%eax
61870e:	0f 85 06 01 00 00    	jne    0x61881a
618714:	89 8e 40 01 00 00    	mov    %ecx,0x140(%esi)
61871a:	c7 86 50 01 00 00 01 	movl   $0x1,0x150(%esi)
618721:	00 00 00
618724:	e9 f1 00 00 00       	jmp    0x61881a
618729:	8b 46 24             	mov    0x24(%esi),%eax
61872c:	83 c0 03             	add    $0x3,%eax
61872f:	c7 45 08 08 00 00 00 	movl   $0x8,0x8(%ebp)
618736:	89 45 fc             	mov    %eax,-0x4(%ebp)
618739:	8d 45 08             	lea    0x8(%ebp),%eax
61873c:	57                   	push   %edi
61873d:	50                   	push   %eax
61873e:	8d 45 fc             	lea    -0x4(%ebp),%eax
618741:	50                   	push   %eax
618742:	e8 63 e8 ff ff       	call   0x616faa
618747:	59                   	pop    %ecx
618748:	59                   	pop    %ecx
618749:	8b 8e 04 07 00 00    	mov    0x704(%esi),%ecx
61874f:	8d 3c cd 20 00 00 00 	lea    0x20(,%ecx,8),%edi
618756:	8b ce                	mov    %esi,%ecx
618758:	2b 7e 24             	sub    0x24(%esi),%edi
61875b:	03 f8                	add    %eax,%edi
61875d:	e8 cf 13 00 00       	call   0x619b31
618762:	6a 01                	push   $0x1