54741c:	c3                   	ret
54741d:	90                   	nop
54741e:	90                   	nop
54741f:	90                   	nop
547420:	53                   	push   %ebx
547421:	56                   	push   %esi
547422:	57                   	push   %edi
547423:	8a 48 09             	mov    0x9(%eax),%cl
547426:	80 f9 10             	cmp    $0x10,%cl
547429:	75 34                	jne    0x54745f
54742b:	0f b6 78 0a          	movzbl 0xa(%eax),%edi
54742f:	0f af 38             	imul   (%eax),%edi
547432:	33 f6                	xor    %esi,%esi
547434:	8b ca                	mov    %edx,%ecx
547436:	3b fe                	cmp    %esi,%edi
547438:	76 0d                	jbe    0x547447
54743a:	8a 19                	mov    (%ecx),%bl
54743c:	88 1a                	mov    %bl,(%edx)
54743e:	46                   	inc    %esi
54743f:	83 c1 02             	add    $0x2,%ecx
547442:	42                   	inc    %edx
547443:	3b fe                	cmp    %esi,%edi
547445:	77 f3                	ja     0x54743a
547447:	c6 40 09 08          	movb   $0x8,0x9(%eax)
54744b:	8a 50 0a             	mov    0xa(%eax),%dl
54744e:	c1 e2 03             	shl    $0x3,%edx
547451:	88 50 0b             	mov    %dl,0xb(%eax)
547454:	33 c9                	xor    %ecx,%ecx
547456:	8a 48 0a             	mov    0xa(%eax),%cl
547459:	0f af 08             	imul   (%eax),%ecx
54745c:	89 48 04             	mov    %ecx,0x4(%eax)
54745f:	5f                   	pop    %edi
547460:	5e                   	pop    %esi
547461:	5b                   	pop    %ebx
547462:	c3                   	ret
547463:	90                   	nop
547464:	53                   	push   %ebx
547465:	56                   	push   %esi
547466:	57                   	push   %edi
547467:	51                   	push   %ecx
547468:	80 78 08 06          	cmpb   $0x6,0x8(%eax)
54746c:	8b 08                	mov    (%eax),%ecx
54746e:	0f 85 93 00 00 00    	jne    0x547507
547474:	80 78 09 08          	cmpb   $0x8,0x9(%eax)
547478:	75 35                	jne    0x5474af
54747a:	8b 40 04             	mov    0x4(%eax),%eax
54747d:	33 f6                	xor    %esi,%esi
54747f:	03 d0                	add    %eax,%edx
547481:	3b ce                	cmp    %esi,%ecx
547483:	8b c2                	mov    %edx,%eax
547485:	8b f8                	mov    %eax,%edi
547487:	0f 86 e8 00 00 00    	jbe    0x547575
54748d:	48                   	dec    %eax
54748e:	4f                   	dec    %edi
54748f:	46                   	inc    %esi
547490:	8a 10                	mov    (%eax),%dl
547492:	48                   	dec    %eax
547493:	8a 18                	mov    (%eax),%bl
547495:	48                   	dec    %eax
547496:	88 1f                	mov    %bl,(%edi)
547498:	4f                   	dec    %edi
547499:	8a 18                	mov    (%eax),%bl
54749b:	48                   	dec    %eax
54749c:	88 1f                	mov    %bl,(%edi)
54749e:	4f                   	dec    %edi
54749f:	8a 18                	mov    (%eax),%bl
5474a1:	88 1f                	mov    %bl,(%edi)
5474a3:	4f                   	dec    %edi
5474a4:	3b ce                	cmp    %esi,%ecx
5474a6:	88 17                	mov    %dl,(%edi)
5474a8:	77 e3                	ja     0x54748d
5474aa:	e9 c6 00 00 00       	jmp    0x547575
5474af:	8b 40 04             	mov    0x4(%eax),%eax
5474b2:	33 f6                	xor    %esi,%esi
5474b4:	03 d0                	add    %eax,%edx
5474b6:	3b ce                	cmp    %esi,%ecx
5474b8:	8b c2                	mov    %edx,%eax
5474ba:	8b d0                	mov    %eax,%edx
5474bc:	0f 86 b3 00 00 00    	jbe    0x547575
5474c2:	48                   	dec    %eax
5474c3:	4a                   	dec    %edx
5474c4:	46                   	inc    %esi
5474c5:	8a 18                	mov    (%eax),%bl
5474c7:	48                   	dec    %eax
5474c8:	88 1c 24             	mov    %bl,(%esp)
5474cb:	8a 18                	mov    (%eax),%bl
5474cd:	48                   	dec    %eax
5474ce:	88 5c 24 01          	mov    %bl,0x1(%esp)
5474d2:	8a 18                	mov    (%eax),%bl
5474d4:	48                   	dec    %eax
5474d5:	88 1a                	mov    %bl,(%edx)
5474d7:	4a                   	dec    %edx
5474d8:	8a 18                	mov    (%eax),%bl
5474da:	48                   	dec    %eax
5474db:	88 1a                	mov    %bl,(%edx)
5474dd:	4a                   	dec    %edx
5474de:	8a 18                	mov    (%eax),%bl
5474e0:	48                   	dec    %eax
5474e1:	88 1a                	mov    %bl,(%edx)
5474e3:	4a                   	dec    %edx
5474e4:	8a 18                	mov    (%eax),%bl
5474e6:	48                   	dec    %eax
5474e7:	88 1a                	mov    %bl,(%edx)
5474e9:	4a                   	dec    %edx
5474ea:	8a 18                	mov    (%eax),%bl
5474ec:	48                   	dec    %eax
5474ed:	88 1a                	mov    %bl,(%edx)
5474ef:	4a                   	dec    %edx
5474f0:	8a 18                	mov    (%eax),%bl
5474f2:	88 1a                	mov    %bl,(%edx)
5474f4:	4a                   	dec    %edx
5474f5:	8a 1c 24             	mov    (%esp),%bl
5474f8:	88 1a                	mov    %bl,(%edx)
5474fa:	4a                   	dec    %edx
5474fb:	8a 5c 24 01          	mov    0x1(%esp),%bl
5474ff:	3b ce                	cmp    %esi,%ecx
547501:	88 1a                	mov    %bl,(%edx)
547503:	77 bd                	ja     0x5474c2
547505:	eb 6e                	jmp    0x547575
547507:	8a 58 08             	mov    0x8(%eax),%bl
54750a:	80 fb 04             	cmp    $0x4,%bl
54750d:	75 66                	jne    0x547575
54750f:	8a 58 09             	mov    0x9(%eax),%bl
547512:	80 fb 08             	cmp    $0x8,%bl
547515:	75 22                	jne    0x547539
547517:	8b 40 04             	mov    0x4(%eax),%eax
54751a:	33 f6                	xor    %esi,%esi
54751c:	03 d0                	add    %eax,%edx
54751e:	3b ce                	cmp    %esi,%ecx
547520:	8b c2                	mov    %edx,%eax
547522:	8b f8                	mov    %eax,%edi
547524:	76 4f                	jbe    0x547575
547526:	48                   	dec    %eax
547527:	8a 10                	mov    (%eax),%dl
547529:	4f                   	dec    %edi
54752a:	48                   	dec    %eax
54752b:	8a 18                	mov    (%eax),%bl
54752d:	88 1f                	mov    %bl,(%edi)
54752f:	4f                   	dec    %edi
547530:	88 17                	mov    %dl,(%edi)
547532:	46                   	inc    %esi
547533:	3b ce                	cmp    %esi,%ecx
547535:	77 ef                	ja     0x547526
547537:	eb 3c                	jmp    0x547575
547539:	8b 40 04             	mov    0x4(%eax),%eax
54753c:	33 f6                	xor    %esi,%esi
54753e:	03 d0                	add    %eax,%edx
547540:	3b ce                	cmp    %esi,%ecx
547542:	8b c2                	mov    %edx,%eax
547544:	8b d0                	mov    %eax,%edx
547546:	76 2d                	jbe    0x547575
547548:	48                   	dec    %eax
547549:	4a                   	dec    %edx
54754a:	46                   	inc    %esi
54754b:	8a 18                	mov    (%eax),%bl
54754d:	48                   	dec    %eax
54754e:	88 5c 24 02          	mov    %bl,0x2(%esp)
547552:	8a 18                	mov    (%eax),%bl
547554:	48                   	dec    %eax
547555:	88 5c 24 03          	mov    %bl,0x3(%esp)
547559:	8a 18                	mov    (%eax),%bl
54755b:	48                   	dec    %eax
54755c:	88 1a                	mov    %bl,(%edx)
54755e:	4a                   	dec    %edx
54755f:	8a 18                	mov    (%eax),%bl
547561:	88 1a                	mov    %bl,(%edx)
547563:	4a                   	dec    %edx
547564:	8a 5c 24 02          	mov    0x2(%esp),%bl
547568:	88 1a                	mov    %bl,(%edx)
54756a:	4a                   	dec    %edx
54756b:	8a 5c 24 03          	mov    0x3(%esp),%bl
54756f:	3b ce                	cmp    %esi,%ecx
547571:	88 1a                	mov    %bl,(%edx)
547573:	77 d3                	ja     0x547548
547575:	5a                   	pop    %edx
547576:	5f                   	pop    %edi
547577:	5e                   	pop    %esi
547578:	5b                   	pop    %ebx
547579:	c3                   	ret
54757a:	90                   	nop
54757b:	90                   	nop
54757c:	53                   	push   %ebx
54757d:	56                   	push   %esi
54757e:	57                   	push   %edi
54757f:	8b 30                	mov    (%eax),%esi
547581:	8a 48 08             	mov    0x8(%eax),%cl
547584:	80 f9 06             	cmp    $0x6,%cl
547587:	75 5d                	jne    0x5475e6
547589:	8a 48 09             	mov    0x9(%eax),%cl
54758c:	80 f9 08             	cmp    $0x8,%cl
54758f:	75 2a                	jne    0x5475bb
547591:	8b 40 04             	mov    0x4(%eax),%eax
547594:	33 ff                	xor    %edi,%edi
547596:	03 d0                	add    %eax,%edx
547598:	3b f7                	cmp    %edi,%esi
54759a:	8b c2                	mov    %edx,%eax
54759c:	8b d0                	mov    %eax,%edx
54759e:	0f 86 9f 00 00 00    	jbe    0x547643
5475a4:	48                   	dec    %eax
5475a5:	4a                   	dec    %edx
5475a6:	b1 ff                	mov    $0xff,%cl
5475a8:	47                   	inc    %edi
5475a9:	2a 08                	sub    (%eax),%cl
5475ab:	83 e8 03             	sub    $0x3,%eax
5475ae:	88 0a                	mov    %cl,(%edx)
5475b0:	8b d0                	mov    %eax,%edx
5475b2:	3b f7                	cmp    %edi,%esi
5475b4:	77 ee                	ja     0x5475a4
5475b6:	e9 88 00 00 00       	jmp    0x547643
5475bb:	8b 40 04             	mov    0x4(%eax),%eax
5475be:	33 ff                	xor    %edi,%edi
5475c0:	03 d0                	add    %eax,%edx
5475c2:	3b f7                	cmp    %edi,%esi
5475c4:	8b c2                	mov    %edx,%eax
5475c6:	8b d0                	mov    %eax,%edx
5475c8:	76 79                	jbe    0x547643
5475ca:	48                   	dec    %eax
5475cb:	b1 ff                	mov    $0xff,%cl
5475cd:	4a                   	dec    %edx
5475ce:	47                   	inc    %edi
5475cf:	2a 08                	sub    (%eax),%cl
5475d1:	48                   	dec    %eax
5475d2:	88 0a                	mov    %cl,(%edx)
5475d4:	4a                   	dec    %edx
5475d5:	b1 ff                	mov    $0xff,%cl
5475d7:	2a 08                	sub    (%eax),%cl
5475d9:	83 e8 06             	sub    $0x6,%eax
5475dc:	88 0a                	mov    %cl,(%edx)
5475de:	8b d0                	mov    %eax,%edx
5475e0:	3b f7                	cmp    %edi,%esi
5475e2:	77 e6                	ja     0x5475ca
5475e4:	eb 5d                	jmp    0x547643
5475e6:	8a 48 08             	mov    0x8(%eax),%cl
5475e9:	80 f9 04             	cmp    $0x4,%cl
5475ec:	75 55                	jne    0x547643
5475ee:	8a 48 09             	mov    0x9(%eax),%cl
5475f1:	80 f9 08             	cmp    $0x8,%cl
5475f4:	75 24                	jne    0x54761a
5475f6:	8b 40 04             	mov    0x4(%eax),%eax
5475f9:	33 ff                	xor    %edi,%edi
5475fb:	03 d0                	add    %eax,%edx
5475fd:	3b f7                	cmp    %edi,%esi
5475ff:	8b c2                	mov    %edx,%eax
547601:	8b d0                	mov    %eax,%edx
547603:	76 3e                	jbe    0x547643
547605:	48                   	dec    %eax
547606:	4a                   	dec    %edx
547607:	b1 ff                	mov    $0xff,%cl
547609:	47                   	inc    %edi
54760a:	2a 08                	sub    (%eax),%cl
54760c:	48                   	dec    %eax
54760d:	88 0a                	mov    %cl,(%edx)
54760f:	4a                   	dec    %edx
547610:	8a 08                	mov    (%eax),%cl
547612:	3b f7                	cmp    %edi,%esi
547614:	88 0a                	mov    %cl,(%edx)
547616:	77 ed                	ja     0x547605
547618:	eb 29                	jmp    0x547643
54761a:	8b 40 04             	mov    0x4(%eax),%eax
54761d:	33 c9                	xor    %ecx,%ecx
54761f:	03 d0                	add    %eax,%edx
547621:	3b f1                	cmp    %ecx,%esi
547623:	8b c2                	mov    %edx,%eax
547625:	8b d0                	mov    %eax,%edx
547627:	76 1a                	jbe    0x547643
547629:	48                   	dec    %eax
54762a:	b3 ff                	mov    $0xff,%bl
54762c:	4a                   	dec    %edx
54762d:	41                   	inc    %ecx
54762e:	2a 18                	sub    (%eax),%bl
547630:	48                   	dec    %eax
547631:	88 1a                	mov    %bl,(%edx)
547633:	4a                   	dec    %edx
547634:	b3 ff                	mov    $0xff,%bl
547636:	2a 18                	sub    (%eax),%bl
547638:	83 e8 02             	sub    $0x2,%eax
54763b:	88 1a                	mov    %bl,(%edx)
54763d:	8b d0                	mov    %eax,%edx
54763f:	3b f1                	cmp    %ecx,%esi
547641:	77 e6                	ja     0x547629
547643:	5f                   	pop    %edi
547644:	5e                   	pop    %esi
547645:	5b                   	pop    %ebx
547646:	c3                   	ret
547647:	90                   	nop
547648:	55                   	push   %ebp
547649:	8b ec                	mov    %esp,%ebp
54764b:	83 c4 f8             	add    $0xfffffff8,%esp
54764e:	53                   	push   %ebx
54764f:	56                   	push   %esi
547650:	89 45 fc             	mov    %eax,-0x4(%ebp)
547653:	8b d9                	mov    %ecx,%ebx
547655:	8b 45 fc             	mov    -0x4(%ebp),%eax
547658:	8b 75 08             	mov    0x8(%ebp),%esi
54765b:	c1 eb 08             	shr    $0x8,%ebx
54765e:	80 e1 ff             	and    $0xff,%cl
547661:	80 e3 ff             	and    $0xff,%bl
547664:	8b 00                	mov    (%eax),%eax
547666:	88 5d fb             	mov    %bl,-0x5(%ebp)
547669:	88 4d fa             	mov    %cl,-0x6(%ebp)
54766c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54766f:	8a 49 08             	mov    0x8(%ecx),%cl
547672:	84 c9                	test   %cl,%cl
547674:	0f 85 50 01 00 00    	jne    0x5477ca
54767a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54767d:	8a 49 09             	mov    0x9(%ecx),%cl
547680:	80 f9 08             	cmp    $0x8,%cl
547683:	0f 85 89 00 00 00    	jne    0x547712
547689:	f7 c6 80 00 00 00    	test   $0x80,%esi
54768f:	74 45                	je     0x5476d6
547691:	8b d8                	mov    %eax,%ebx
547693:	8b cb                	mov    %ebx,%ecx
547695:	03 ca                	add    %edx,%ecx
547697:	8b d3                	mov    %ebx,%edx
547699:	03 d1                	add    %ecx,%edx
54769b:	be 01 00 00 00       	mov    $0x1,%esi
5476a0:	3b c6                	cmp    %esi,%eax
5476a2:	76 11                	jbe    0x5476b5
5476a4:	4a                   	dec    %edx
5476a5:	8a 5d fa             	mov    -0x6(%ebp),%bl
5476a8:	49                   	dec    %ecx
5476a9:	46                   	inc    %esi
5476aa:	88 1a                	mov    %bl,(%edx)
5476ac:	4a                   	dec    %edx
5476ad:	8a 19                	mov    (%ecx),%bl
5476af:	3b c6                	cmp    %esi,%eax
5476b1:	88 1a                	mov    %bl,(%edx)
5476b3:	77 ef                	ja     0x5476a4
5476b5:	4a                   	dec    %edx
5476b6:	8a 4d fa             	mov    -0x6(%ebp),%cl
5476b9:	88 0a                	mov    %cl,(%edx)
5476bb:	8b 55 fc             	mov    -0x4(%ebp),%edx
5476be:	c6 42 0a 02          	movb   $0x2,0xa(%edx)
5476c2:	8b 55 fc             	mov    -0x4(%ebp),%edx
5476c5:	c6 42 0b 10          	movb   $0x10,0xb(%edx)
5476c9:	03 c0                	add    %eax,%eax
5476cb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5476ce:	89 41 04             	mov    %eax,0x4(%ecx)
5476d1:	e9 91 02 00 00       	jmp    0x547967
5476d6:	8b d8                	mov    %eax,%ebx
5476d8:	8b cb                	mov    %ebx,%ecx
5476da:	03 ca                	add    %edx,%ecx
5476dc:	8b d3                	mov    %ebx,%edx
5476de:	03 d1                	add    %ecx,%edx
5476e0:	33 f6                	xor    %esi,%esi
5476e2:	3b c6                	cmp    %esi,%eax
5476e4:	76 11                	jbe    0x5476f7
5476e6:	49                   	dec    %ecx
5476e7:	4a                   	dec    %edx
5476e8:	46                   	inc    %esi