464354:	3c 01                	cmp    $0x1,%al
464356:	75 12                	jne    0x46436a
464358:	33 d2                	xor    %edx,%edx
46435a:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
46435f:	e8 70 33 00 00       	call   0x4676d4
464364:	8b 40 04             	mov    0x4(%eax),%eax
464367:	89 04 24             	mov    %eax,(%esp)
46436a:	8b c3                	mov    %ebx,%eax
46436c:	e8 8b f9 ff ff       	call   0x463cfc
464371:	8b 40 04             	mov    0x4(%eax),%eax
464374:	89 44 24 04          	mov    %eax,0x4(%esp)
464378:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
46437d:	e8 66 33 00 00       	call   0x4676e8
464382:	48                   	dec    %eax
464383:	85 c0                	test   %eax,%eax
464385:	0f 8c a5 02 00 00    	jl     0x464630
46438b:	40                   	inc    %eax
46438c:	89 44 24 10          	mov    %eax,0x10(%esp)
464390:	33 f6                	xor    %esi,%esi
464392:	8b d6                	mov    %esi,%edx
464394:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464399:	e8 36 33 00 00       	call   0x4676d4
46439e:	8b 40 04             	mov    0x4(%eax),%eax
4643a1:	3b 04 24             	cmp    (%esp),%eax
4643a4:	0f 85 7b 02 00 00    	jne    0x464625
4643aa:	8b 04 24             	mov    (%esp),%eax
4643ad:	3b 44 24 04          	cmp    0x4(%esp),%eax
4643b1:	0f 84 6e 02 00 00    	je     0x464625
4643b7:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4643bc:	e8 27 33 00 00       	call   0x4676e8
4643c1:	8b f8                	mov    %eax,%edi
4643c3:	4f                   	dec    %edi
4643c4:	85 ff                	test   %edi,%edi
4643c6:	0f 8c 59 02 00 00    	jl     0x464625
4643cc:	47                   	inc    %edi
4643cd:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
4643d4:	00
4643d5:	8b 54 24 08          	mov    0x8(%esp),%edx
4643d9:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4643de:	e8 f1 32 00 00       	call   0x4676d4
4643e3:	8b 40 04             	mov    0x4(%eax),%eax
4643e6:	3b 44 24 04          	cmp    0x4(%esp),%eax
4643ea:	0f 85 2a 02 00 00    	jne    0x46461a
4643f0:	8a 83 30 02 00 00    	mov    0x230(%ebx),%al
4643f6:	3c 04                	cmp    $0x4,%al
4643f8:	75 7a                	jne    0x464474
4643fa:	8b 43 48             	mov    0x48(%ebx),%eax
4643fd:	50                   	push   %eax
4643fe:	8b 6b 4c             	mov    0x4c(%ebx),%ebp
464401:	55                   	push   %ebp
464402:	8b d6                	mov    %esi,%edx
464404:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464409:	e8 c6 32 00 00       	call   0x4676d4
46440e:	e8 d1 2f 00 00       	call   0x4673e4
464413:	50                   	push   %eax
464414:	8b d6                	mov    %esi,%edx
464416:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
46441b:	e8 b4 32 00 00       	call   0x4676d4
464420:	e8 a3 2f 00 00       	call   0x4673c8
464425:	2b c5                	sub    %ebp,%eax
464427:	d1 f8                	sar    $1,%eax
464429:	79 03                	jns    0x46442e
46442b:	83 d0 00             	adc    $0x0,%eax
46442e:	5a                   	pop    %edx
46442f:	03 d0                	add    %eax,%edx
464431:	52                   	push   %edx
464432:	8b d6                	mov    %esi,%edx
464434:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464439:	e8 96 32 00 00       	call   0x4676d4
46443e:	e8 6d 2f 00 00       	call   0x4673b0
464443:	8b e8                	mov    %eax,%ebp
464445:	8b d6                	mov    %esi,%edx
464447:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
46444c:	e8 83 32 00 00       	call   0x4676d4
464451:	e8 a6 2f 00 00       	call   0x4673fc
464456:	2b 43 48             	sub    0x48(%ebx),%eax
464459:	d1 f8                	sar    $1,%eax
46445b:	79 03                	jns    0x464460
46445d:	83 d0 00             	adc    $0x0,%eax
464460:	03 e8                	add    %eax,%ebp
464462:	8b d5                	mov    %ebp,%edx
464464:	8b c3                	mov    %ebx,%eax
464466:	59                   	pop    %ecx
464467:	8b 28                	mov    (%eax),%ebp
464469:	ff 95 84 00 00 00    	call   *0x84(%ebp)
46446f:	e9 a6 01 00 00       	jmp    0x46461a
464474:	3c 06                	cmp    $0x6,%al
464476:	75 7a                	jne    0x4644f2
464478:	8b 43 48             	mov    0x48(%ebx),%eax
46447b:	50                   	push   %eax
46447c:	8b 6b 4c             	mov    0x4c(%ebx),%ebp
46447f:	55                   	push   %ebp
464480:	8b d6                	mov    %esi,%edx
464482:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464487:	e8 48 32 00 00       	call   0x4676d4
46448c:	e8 53 2f 00 00       	call   0x4673e4
464491:	50                   	push   %eax
464492:	8b d6                	mov    %esi,%edx
464494:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464499:	e8 36 32 00 00       	call   0x4676d4
46449e:	e8 25 2f 00 00       	call   0x4673c8
4644a3:	2b c5                	sub    %ebp,%eax
4644a5:	d1 f8                	sar    $1,%eax
4644a7:	79 03                	jns    0x4644ac
4644a9:	83 d0 00             	adc    $0x0,%eax
4644ac:	5a                   	pop    %edx
4644ad:	03 d0                	add    %eax,%edx
4644af:	52                   	push   %edx
4644b0:	8b d6                	mov    %esi,%edx
4644b2:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4644b7:	e8 18 32 00 00       	call   0x4676d4
4644bc:	e8 ef 2e 00 00       	call   0x4673b0
4644c1:	8b e8                	mov    %eax,%ebp
4644c3:	8b d6                	mov    %esi,%edx
4644c5:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4644ca:	e8 05 32 00 00       	call   0x4676d4
4644cf:	e8 28 2f 00 00       	call   0x4673fc
4644d4:	2b 43 48             	sub    0x48(%ebx),%eax
4644d7:	d1 f8                	sar    $1,%eax
4644d9:	79 03                	jns    0x4644de
4644db:	83 d0 00             	adc    $0x0,%eax
4644de:	03 e8                	add    %eax,%ebp
4644e0:	8b d5                	mov    %ebp,%edx
4644e2:	8b c3                	mov    %ebx,%eax
4644e4:	59                   	pop    %ecx
4644e5:	8b 28                	mov    (%eax),%ebp
4644e7:	ff 95 84 00 00 00    	call   *0x84(%ebp)
4644ed:	e9 28 01 00 00       	jmp    0x46461a
4644f2:	8b d6                	mov    %esi,%edx
4644f4:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4644f9:	e8 d6 31 00 00       	call   0x4676d4
4644fe:	e8 ad 2e 00 00       	call   0x4673b0
464503:	8b e8                	mov    %eax,%ebp
464505:	03 6b 40             	add    0x40(%ebx),%ebp
464508:	8b 54 24 08          	mov    0x8(%esp),%edx
46450c:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464511:	e8 be 31 00 00       	call   0x4676d4
464516:	e8 95 2e 00 00       	call   0x4673b0
46451b:	2b e8                	sub    %eax,%ebp
46451d:	8b d6                	mov    %esi,%edx
46451f:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464524:	e8 ab 31 00 00       	call   0x4676d4
464529:	e8 82 2e 00 00       	call   0x4673b0
46452e:	50                   	push   %eax
46452f:	8b d6                	mov    %esi,%edx
464531:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464536:	e8 99 31 00 00       	call   0x4676d4
46453b:	e8 bc 2e 00 00       	call   0x4673fc
464540:	5a                   	pop    %edx
464541:	03 d0                	add    %eax,%edx
464543:	8b 43 48             	mov    0x48(%ebx),%eax
464546:	03 c5                	add    %ebp,%eax
464548:	3b d0                	cmp    %eax,%edx
46454a:	7d 29                	jge    0x464575
46454c:	8b d6                	mov    %esi,%edx
46454e:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464553:	e8 7c 31 00 00       	call   0x4676d4
464558:	e8 53 2e 00 00       	call   0x4673b0
46455d:	8b e8                	mov    %eax,%ebp
46455f:	8b d6                	mov    %esi,%edx
464561:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464566:	e8 69 31 00 00       	call   0x4676d4
46456b:	e8 8c 2e 00 00       	call   0x4673fc
464570:	03 e8                	add    %eax,%ebp
464572:	2b 6b 48             	sub    0x48(%ebx),%ebp
464575:	8b d6                	mov    %esi,%edx
464577:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
46457c:	e8 53 31 00 00       	call   0x4676d4
464581:	e8 5e 2e 00 00       	call   0x4673e4
464586:	03 43 44             	add    0x44(%ebx),%eax
464589:	50                   	push   %eax
46458a:	8b 54 24 0c          	mov    0xc(%esp),%edx
46458e:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
464593:	e8 3c 31 00 00       	call   0x4676d4
464598:	e8 47 2e 00 00       	call   0x4673e4
46459d:	5a                   	pop    %edx
46459e:	2b d0                	sub    %eax,%edx
4645a0:	89 54 24 0c          	mov    %edx,0xc(%esp)
4645a4:	8b d6                	mov    %esi,%edx
4645a6:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4645ab:	e8 24 31 00 00       	call   0x4676d4
4645b0:	e8 2f 2e 00 00       	call   0x4673e4
4645b5:	50                   	push   %eax
4645b6:	8b d6                	mov    %esi,%edx
4645b8:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4645bd:	e8 12 31 00 00       	call   0x4676d4
4645c2:	e8 01 2e 00 00       	call   0x4673c8
4645c7:	5a                   	pop    %edx
4645c8:	03 d0                	add    %eax,%edx
4645ca:	8b 44 24 0c          	mov    0xc(%esp),%eax
4645ce:	03 43 4c             	add    0x4c(%ebx),%eax
4645d1:	3b d0                	cmp    %eax,%edx
4645d3:	7d 2d                	jge    0x464602
4645d5:	8b d6                	mov    %esi,%edx
4645d7:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4645dc:	e8 f3 30 00 00       	call   0x4676d4
4645e1:	e8 fe 2d 00 00       	call   0x4673e4
4645e6:	50                   	push   %eax
4645e7:	8b d6                	mov    %esi,%edx
4645e9:	a1 40 8c 6a 00       	mov    0x6a8c40,%eax
4645ee:	e8 e1 30 00 00       	call   0x4676d4
4645f3:	e8 d0 2d 00 00       	call   0x4673c8
4645f8:	5a                   	pop    %edx
4645f9:	03 d0                	add    %eax,%edx
4645fb:	2b 53 4c             	sub    0x4c(%ebx),%edx
4645fe:	89 54 24 0c          	mov    %edx,0xc(%esp)
464602:	8b 43 48             	mov    0x48(%ebx),%eax
464605:	50                   	push   %eax
464606:	8b 43 4c             	mov    0x4c(%ebx),%eax
464609:	50                   	push   %eax
46460a:	8b 4c 24 14          	mov    0x14(%esp),%ecx
46460e:	8b d5                	mov    %ebp,%edx
464610:	8b c3                	mov    %ebx,%eax
464612:	8b 28                	mov    (%eax),%ebp
464614:	ff 95 84 00 00 00    	call   *0x84(%ebp)
46461a:	ff 44 24 08          	incl   0x8(%esp)
46461e:	4f                   	dec    %edi
46461f:	0f 85 b0 fd ff ff    	jne    0x4643d5
464625:	46                   	inc    %esi
464626:	ff 4c 24 10          	decl   0x10(%esp)
46462a:	0f 85 62 fd ff ff    	jne    0x464392
464630:	83 c4 14             	add    $0x14,%esp
464633:	5d                   	pop    %ebp
464634:	5f                   	pop    %edi
464635:	5e                   	pop    %esi
464636:	5b                   	pop    %ebx
464637:	c3                   	ret
464638:	53                   	push   %ebx
464639:	56                   	push   %esi
46463a:	57                   	push   %edi
46463b:	51                   	push   %ecx
46463c:	8b f2                	mov    %edx,%esi
46463e:	8b f8                	mov    %eax,%edi
464640:	8b d6                	mov    %esi,%edx
464642:	8b c7                	mov    %edi,%eax
464644:	e8 53 d2 ff ff       	call   0x46189c
464649:	8b d6                	mov    %esi,%edx
46464b:	8b c7                	mov    %edi,%eax
46464d:	e8 0e 29 00 00       	call   0x466f60
464652:	83 7f 30 00          	cmpl   $0x0,0x30(%edi)
464656:	75 1b                	jne    0x464673
464658:	83 bf 90 01 00 00 00 	cmpl   $0x0,0x190(%edi)
46465f:	75 12                	jne    0x464673
464661:	a1 3c 8c 6a 00       	mov    0x6a8c3c,%eax
464666:	8b 40 30             	mov    0x30(%eax),%eax
464669:	89 46 1c             	mov    %eax,0x1c(%esi)
46466c:	81 66 04 ff ff fc bf 	andl   $0xbffcffff,0x4(%esi)
464673:	c7 46 24 08 00 00 00 	movl   $0x8,0x24(%esi)
46467a:	f6 47 1c 10          	testb  $0x10,0x1c(%edi)
46467e:	74 12                	je     0x464692
464680:	83 7f 30 00          	cmpl   $0x0,0x30(%edi)
464684:	75 0c                	jne    0x464692
464686:	81 4e 04 00 00 cf 00 	orl    $0xcf0000,0x4(%esi)
46468d:	e9 b1 01 00 00       	jmp    0x464843
464692:	8a 87 30 02 00 00    	mov    0x230(%edi),%al
464698:	48                   	dec    %eax
464699:	2c 02                	sub    $0x2,%al
46469b:	73 0e                	jae    0x4646ab
46469d:	c7 46 0c 00 00 00 80 	movl   $0x80000000,0xc(%esi)
4646a4:	c7 46 10 00 00 00 80 	movl   $0x80000000,0x10(%esi)
4646ab:	8a 9f 28 02 00 00    	mov    0x228(%edi),%bl
4646b1:	8a 87 29 02 00 00    	mov    0x229(%edi),%al
4646b7:	88 04 24             	mov    %al,(%esp)
4646ba:	80 bf 2f 02 00 00 01 	cmpb   $0x1,0x22f(%edi)
4646c1:	75 0f                	jne    0x4646d2
4646c3:	8a 04 24             	mov    (%esp),%al
4646c6:	84 c0                	test   %al,%al
4646c8:	74 04                	je     0x4646ce
4646ca:	2c 03                	sub    $0x3,%al
4646cc:	75 04                	jne    0x4646d2
4646ce:	c6 04 24 02          	movb   $0x2,(%esp)
4646d2:	33 c0                	xor    %eax,%eax
4646d4:	8a 04 24             	mov    (%esp),%al
4646d7:	83 f8 05             	cmp    $0x5,%eax
4646da:	0f 87 b6 00 00 00    	ja     0x464796
4646e0:	ff 24 85 e7 46 46 00 	jmp    *0x4646e7(,%eax,4)
4646e7:	ff 46 46             	incl   0x46(%esi)
4646ea:	00 1d 47 46 00 26    	add    %bl,0x26004647
4646f0:	47                   	inc    %edi
4646f1:	46                   	inc    %esi
4646f2:	00 4b 47             	add    %cl,0x47(%ebx)
4646f5:	46                   	inc    %esi
4646f6:	00 1d 47 46 00 26    	add    %bl,0x26004647
4646fc:	47                   	inc    %edi
4646fd:	46                   	inc    %esi
4646fe:	00 83 7f 30 00 75    	add    %al,0x7500307f(%ebx)
464704:	10 83 bf 90 01 00    	adc    %al,0x190bf(%ebx)
46470a:	00 00                	add    %al,(%eax)
46470c:	75 07                	jne    0x464715
46470e:	81 4e 04 00 00 00 80 	orl    $0x80000000,0x4(%esi)
464715:	8a 1d 48 48 46 00    	mov    0x464848,%bl
46471b:	eb 79                	jmp    0x464796
46471d:	81 4e 04 00 00 c0 00 	orl    $0xc00000,0x4(%esi)
464724:	eb 70                	jmp    0x464796
464726:	81 4e 04 00 00 c4 00 	orl    $0xc40000,0x4(%esi)
46472d:	8a 87 30 02 00 00    	mov    0x230(%edi),%al
464733:	2c 01                	sub    $0x1,%al
464735:	74 04                	je     0x46473b
464737:	2c 02                	sub    $0x2,%al
464739:	75 5b                	jne    0x464796
46473b:	c7 46 14 00 00 00 80 	movl   $0x80000000,0x14(%esi)
464742:	c7 46 18 00 00 00 80 	movl   $0x80000000,0x18(%esi)
464749:	eb 4b                	jmp    0x464796
46474b:	8b 46 04             	mov    0x4(%esi),%eax
46474e:	0d 00 00 00 80       	or     $0x80000000,%eax
464753:	0d 00 00 c0 00       	or     $0xc00000,%eax
464758:	89 46 04             	mov    %eax,0x4(%esi)
46475b:	c7 46 08 01 01 00 00 	movl   $0x101,0x8(%esi)
464762:	8d 56 08             	lea    0x8(%esi),%edx
464765:	8b c7                	mov    %edi,%eax
464767:	e8 a4 76 fe ff       	call   0x44be10
46476c:	a1 a4 6e 6a 00       	mov    0x6a6ea4,%eax
464771:	80 38 00             	cmpb   $0x0,(%eax)
464774:	75 10                	jne    0x464786
464776:	8b 46 04             	mov    0x4(%esi),%eax
464779:	0d 00 00 40 00       	or     $0x400000,%eax
46477e:	0d 80 00 00 00       	or     $0x80,%eax
464783:	89 46 04             	mov    %eax,0x4(%esi)
464786:	a0 4c 48 46 00       	mov    0x46484c,%al
46478b:	22 c3                	and    %bl,%al
46478d:	8b d8                	mov    %eax,%ebx
46478f:	c7 46 24 08 28 00 00 	movl   $0x2808,0x24(%esi)
464796:	8a 04 24             	mov    (%esp),%al
464799:	04 fc                	add    $0xfc,%al
46479b:	2c 02                	sub    $0x2,%al
46479d:	73 1a                	jae    0x4647b9
46479f:	c7 46 08 80 00 00 00 	movl   $0x80,0x8(%esi)
4647a6:	8d 56 08             	lea    0x8(%esi),%edx
4647a9:	8b c7                	mov    %edi,%eax
4647ab:	e8 60 76 fe ff       	call   0x44be10
4647b0:	a0 50 48 46 00       	mov    0x464850,%al
4647b5:	22 c3                	and    %bl,%al
4647b7:	8b d8                	mov    %eax,%ebx
4647b9:	8a 04 24             	mov    (%esp),%al
4647bc:	2c 03                	sub    $0x3,%al
4647be:	73 46                	jae    0x464806
4647c0:	80 bf 2f 02 00 00 01 	cmpb   $0x1,0x22f(%edi)
4647c7:	75 05                	jne    0x4647ce
4647c9:	f6 c3 01             	test   $0x1,%bl
4647cc:	74 18                	je     0x4647e6
4647ce:	f6 c3 02             	test   $0x2,%bl
4647d1:	74 07                	je     0x4647da
4647d3:	81 4e 04 00 00 02 00 	orl    $0x20000,0x4(%esi)
4647da:	f6 c3 04             	test   $0x4,%bl
4647dd:	74 07                	je     0x4647e6
4647df:	81 4e 04 00 00 01 00 	orl    $0x10000,0x4(%esi)
4647e6:	8a 87 2b 02 00 00    	mov    0x22b(%edi),%al
4647ec:	3c 01                	cmp    $0x1,%al
4647ee:	75 09                	jne    0x4647f9
4647f0:	81 4e 04 00 00 00 20 	orl    $0x20000000,0x4(%esi)