41244f:	50                   	push   %eax
412450:	e8 8d 7a 00 00       	call   0x419ee2
412455:	59                   	pop    %ecx
412456:	8b 45 fc             	mov    -0x4(%ebp),%eax
412459:	89 07                	mov    %eax,(%edi)
41245b:	89 9e f4 e6 00 00    	mov    %ebx,0xe6f4(%esi)
412461:	4b                   	dec    %ebx
412462:	89 9e f8 e6 00 00    	mov    %ebx,0xe6f8(%esi)
412468:	5f                   	pop    %edi
412469:	5e                   	pop    %esi
41246a:	5b                   	pop    %ebx
41246b:	c9                   	leave
41246c:	c2 08 00             	ret    $0x8
41246f:	55                   	push   %ebp
412470:	8b ec                	mov    %esp,%ebp
412472:	81 ec 80 00 00 00    	sub    $0x80,%esp
412478:	53                   	push   %ebx
412479:	8b 5d 10             	mov    0x10(%ebp),%ebx
41247c:	56                   	push   %esi
41247d:	8b 75 0c             	mov    0xc(%ebp),%esi
412480:	57                   	push   %edi
412481:	6a 40                	push   $0x40
412483:	33 ff                	xor    %edi,%edi
412485:	8d 45 c0             	lea    -0x40(%ebp),%eax
412488:	57                   	push   %edi
412489:	50                   	push   %eax
41248a:	89 1e                	mov    %ebx,(%esi)
41248c:	e8 6f 7d 00 00       	call   0x41a200
412491:	83 c4 0c             	add    $0xc,%esp
412494:	33 c9                	xor    %ecx,%ecx
412496:	3b df                	cmp    %edi,%ebx
412498:	76 15                	jbe    0x4124af
41249a:	8b 45 08             	mov    0x8(%ebp),%eax
41249d:	0f b6 04 01          	movzbl (%ecx,%eax,1),%eax
4124a1:	83 e0 0f             	and    $0xf,%eax
4124a4:	8d 44 85 c0          	lea    -0x40(%ebp,%eax,4),%eax
4124a8:	ff 00                	incl   (%eax)
4124aa:	41                   	inc    %ecx
4124ab:	3b cb                	cmp    %ebx,%ecx
4124ad:	72 eb                	jb     0x41249a
4124af:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4124b2:	50                   	push   %eax
4124b3:	8d 86 88 0c 00 00    	lea    0xc88(%esi),%eax
4124b9:	57                   	push   %edi
4124ba:	50                   	push   %eax
4124bb:	89 7d c0             	mov    %edi,-0x40(%ebp)
4124be:	e8 3d 7d 00 00       	call   0x41a200
4124c3:	8d 5e 44             	lea    0x44(%esi),%ebx
4124c6:	83 c4 0c             	add    $0xc,%esp
4124c9:	89 3b                	mov    %edi,(%ebx)
4124cb:	89 7e 04             	mov    %edi,0x4(%esi)
4124ce:	33 c0                	xor    %eax,%eax
4124d0:	c7 45 0c 01 00 00 00 	movl   $0x1,0xc(%ebp)
4124d7:	8b d3                	mov    %ebx,%edx
4124d9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4124dc:	03 44 bd c0          	add    -0x40(%ebp,%edi,4),%eax
4124e0:	6a 10                	push   $0x10
4124e2:	59                   	pop    %ecx
4124e3:	2b cf                	sub    %edi,%ecx
4124e5:	8b f8                	mov    %eax,%edi
4124e7:	d3 e7                	shl    %cl,%edi
4124e9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4124ec:	8b 4c 8d bc          	mov    -0x44(%ebp,%ecx,4),%ecx
4124f0:	03 0a                	add    (%edx),%ecx
4124f2:	03 c0                	add    %eax,%eax
4124f4:	ff 45 0c             	incl   0xc(%ebp)
4124f7:	89 7a c4             	mov    %edi,-0x3c(%edx)
4124fa:	89 4a 04             	mov    %ecx,0x4(%edx)
4124fd:	83 c2 04             	add    $0x4,%edx
412500:	83 7d 0c 10          	cmpl   $0x10,0xc(%ebp)
412504:	72 d3                	jb     0x4124d9
412506:	6a 40                	push   $0x40
412508:	8d 45 80             	lea    -0x80(%ebp),%eax
41250b:	53                   	push   %ebx
41250c:	50                   	push   %eax
41250d:	e8 5e 97 00 00       	call   0x41bc70
412512:	8b 7d 10             	mov    0x10(%ebp),%edi
412515:	83 c4 0c             	add    $0xc,%esp
412518:	33 d2                	xor    %edx,%edx
41251a:	85 ff                	test   %edi,%edi
41251c:	76 23                	jbe    0x412541
41251e:	8b 45 08             	mov    0x8(%ebp),%eax
412521:	8a 04 02             	mov    (%edx,%eax,1),%al
412524:	24 0f                	and    $0xf,%al
412526:	74 14                	je     0x41253c
412528:	0f b6 c0             	movzbl %al,%eax
41252b:	8d 44 85 80          	lea    -0x80(%ebp,%eax,4),%eax
41252f:	8b 08                	mov    (%eax),%ecx
412531:	66 89 94 4e 88 0c 00 	mov    %dx,0xc88(%esi,%ecx,2)
412538:	00
412539:	41                   	inc    %ecx
41253a:	89 08                	mov    %ecx,(%eax)
41253c:	42                   	inc    %edx
41253d:	3b d7                	cmp    %edi,%edx
41253f:	72 dd                	jb     0x41251e
412541:	81 ff 2a 01 00 00    	cmp    $0x12a,%edi
412547:	72 1c                	jb     0x412565
412549:	81 ff 2b 01 00 00    	cmp    $0x12b,%edi
41254f:	76 08                	jbe    0x412559
412551:	81 ff 32 01 00 00    	cmp    $0x132,%edi
412557:	75 0c                	jne    0x412565
412559:	c7 86 84 00 00 00 0a 	movl   $0xa,0x84(%esi)
412560:	00 00 00
412563:	eb 0a                	jmp    0x41256f
412565:	c7 86 84 00 00 00 07 	movl   $0x7,0x84(%esi)
41256c:	00 00 00
41256f:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
412575:	33 d2                	xor    %edx,%edx
412577:	42                   	inc    %edx
412578:	8b da                	mov    %edx,%ebx
41257a:	d3 e3                	shl    %cl,%ebx
41257c:	33 ff                	xor    %edi,%edi
41257e:	85 db                	test   %ebx,%ebx
412580:	76 5e                	jbe    0x4125e0
412582:	8d 86 88 04 00 00    	lea    0x488(%esi),%eax
412588:	89 45 08             	mov    %eax,0x8(%ebp)
41258b:	6a 10                	push   $0x10
41258d:	59                   	pop    %ecx
41258e:	2b 8e 84 00 00 00    	sub    0x84(%esi),%ecx
412594:	8b c7                	mov    %edi,%eax
412596:	d3 e0                	shl    %cl,%eax
412598:	8d 4c 96 04          	lea    0x4(%esi,%edx,4),%ecx
41259c:	eb 09                	jmp    0x4125a7
41259e:	83 fa 10             	cmp    $0x10,%edx
4125a1:	73 08                	jae    0x4125ab
4125a3:	42                   	inc    %edx
4125a4:	83 c1 04             	add    $0x4,%ecx
4125a7:	3b 01                	cmp    (%ecx),%eax
4125a9:	73 f3                	jae    0x41259e
4125ab:	6a 10                	push   $0x10
4125ad:	88 94 3e 88 00 00 00 	mov    %dl,0x88(%esi,%edi,1)
4125b4:	2b 04 96             	sub    (%esi,%edx,4),%eax
4125b7:	59                   	pop    %ecx
4125b8:	2b ca                	sub    %edx,%ecx
4125ba:	d3 e8                	shr    %cl,%eax
4125bc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4125bf:	03 44 96 44          	add    0x44(%esi,%edx,4),%eax
4125c3:	3b 45 10             	cmp    0x10(%ebp),%eax
4125c6:	73 0a                	jae    0x4125d2
4125c8:	66 8b 84 46 88 0c 00 	mov    0xc88(%esi,%eax,2),%ax
4125cf:	00
4125d0:	eb 02                	jmp    0x4125d4
4125d2:	33 c0                	xor    %eax,%eax
4125d4:	83 45 08 02          	addl   $0x2,0x8(%ebp)
4125d8:	47                   	inc    %edi
4125d9:	66 89 01             	mov    %ax,(%ecx)
4125dc:	3b fb                	cmp    %ebx,%edi
4125de:	72 ab                	jb     0x41258b
4125e0:	5f                   	pop    %edi
4125e1:	5e                   	pop    %esi
4125e2:	5b                   	pop    %ebx
4125e3:	c9                   	leave
4125e4:	c2 0c 00             	ret    $0xc
4125e7:	55                   	push   %ebp
4125e8:	8b ec                	mov    %esp,%ebp
4125ea:	51                   	push   %ecx
4125eb:	51                   	push   %ecx
4125ec:	56                   	push   %esi
4125ed:	8b 75 08             	mov    0x8(%ebp),%esi
4125f0:	57                   	push   %edi
4125f1:	8d 7d f8             	lea    -0x8(%ebp),%edi
4125f4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4125f5:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4125f7:	8b 75 0c             	mov    0xc(%ebp),%esi
4125fa:	8b 7d 08             	mov    0x8(%ebp),%edi
4125fd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4125fe:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412600:	8b 7d 0c             	mov    0xc(%ebp),%edi
412603:	8d 75 f8             	lea    -0x8(%ebp),%esi
412606:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412607:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412609:	5f                   	pop    %edi
41260a:	5e                   	pop    %esi
41260b:	c9                   	leave
41260c:	c2 08 00             	ret    $0x8
41260f:	8b 01                	mov    (%ecx),%eax
412611:	85 c0                	test   %eax,%eax
412613:	74 07                	je     0x41261c
412615:	50                   	push   %eax
412616:	e8 c7 78 00 00       	call   0x419ee2
41261b:	59                   	pop    %ecx
41261c:	c3                   	ret
41261d:	8b 44 24 04          	mov    0x4(%esp),%eax
412621:	56                   	push   %esi
412622:	8b f1                	mov    %ecx,%esi
412624:	01 46 04             	add    %eax,0x4(%esi)
412627:	8b 4e 04             	mov    0x4(%esi),%ecx
41262a:	3b 4e 08             	cmp    0x8(%esi),%ecx
41262d:	76 62                	jbe    0x412691
41262f:	8b 46 0c             	mov    0xc(%esi),%eax
412632:	53                   	push   %ebx
412633:	55                   	push   %ebp
412634:	57                   	push   %edi
412635:	bd 74 2a 43 00       	mov    $0x432a74,%ebp
41263a:	85 c0                	test   %eax,%eax
41263c:	74 1a                	je     0x412658
41263e:	3b c8                	cmp    %eax,%ecx
412640:	76 16                	jbe    0x412658
412642:	50                   	push   %eax
412643:	68 f0 a3 42 00       	push   $0x42a3f0
412648:	55                   	push   %ebp
412649:	e8 0f 3f ff ff       	call   0x40655d
41264e:	83 c4 0c             	add    $0xc,%esp
412651:	8b cd                	mov    %ebp,%ecx
412653:	e8 b0 3e ff ff       	call   0x406508
412658:	8b 46 08             	mov    0x8(%esi),%eax
41265b:	8b 7e 04             	mov    0x4(%esi),%edi
41265e:	8b c8                	mov    %eax,%ecx
412660:	c1 e9 02             	shr    $0x2,%ecx
412663:	8d 44 01 20          	lea    0x20(%ecx,%eax,1),%eax
412667:	3b f8                	cmp    %eax,%edi
412669:	77 02                	ja     0x41266d
41266b:	8b f8                	mov    %eax,%edi
41266d:	8b c7                	mov    %edi,%eax
41266f:	c1 e0 02             	shl    $0x2,%eax
412672:	50                   	push   %eax
412673:	ff 36                	push   (%esi)
412675:	e8 f6 78 00 00       	call   0x419f70
41267a:	8b d8                	mov    %eax,%ebx
41267c:	59                   	pop    %ecx
41267d:	59                   	pop    %ecx
41267e:	85 db                	test   %ebx,%ebx
412680:	75 07                	jne    0x412689
412682:	8b cd                	mov    %ebp,%ecx
412684:	e8 7f 3e ff ff       	call   0x406508
412689:	89 7e 08             	mov    %edi,0x8(%esi)
41268c:	5f                   	pop    %edi
41268d:	5d                   	pop    %ebp
41268e:	89 1e                	mov    %ebx,(%esi)
412690:	5b                   	pop    %ebx
412691:	5e                   	pop    %esi
412692:	c2 04 00             	ret    $0x4
412695:	8b 44 24 04          	mov    0x4(%esp),%eax
412699:	56                   	push   %esi
41269a:	8b f1                	mov    %ecx,%esi
41269c:	01 46 04             	add    %eax,0x4(%esi)
41269f:	8b 4e 04             	mov    0x4(%esi),%ecx
4126a2:	3b 4e 08             	cmp    0x8(%esi),%ecx
4126a5:	76 64                	jbe    0x41270b
4126a7:	8b 46 0c             	mov    0xc(%esi),%eax
4126aa:	53                   	push   %ebx
4126ab:	55                   	push   %ebp
4126ac:	57                   	push   %edi
4126ad:	bd 74 2a 43 00       	mov    $0x432a74,%ebp
4126b2:	85 c0                	test   %eax,%eax
4126b4:	74 1a                	je     0x4126d0
4126b6:	3b c8                	cmp    %eax,%ecx
4126b8:	76 16                	jbe    0x4126d0
4126ba:	50                   	push   %eax
4126bb:	68 f0 a3 42 00       	push   $0x42a3f0
4126c0:	55                   	push   %ebp
4126c1:	e8 97 3e ff ff       	call   0x40655d
4126c6:	83 c4 0c             	add    $0xc,%esp
4126c9:	8b cd                	mov    %ebp,%ecx
4126cb:	e8 38 3e ff ff       	call   0x406508
4126d0:	8b 46 08             	mov    0x8(%esi),%eax
4126d3:	8b c8                	mov    %eax,%ecx
4126d5:	c1 e9 02             	shr    $0x2,%ecx
4126d8:	8d 44 01 20          	lea    0x20(%ecx,%eax,1),%eax
4126dc:	8b 4e 04             	mov    0x4(%esi),%ecx
4126df:	8b d9                	mov    %ecx,%ebx
4126e1:	3b c8                	cmp    %eax,%ecx
4126e3:	77 02                	ja     0x4126e7
4126e5:	8b d8                	mov    %eax,%ebx
4126e7:	8b c3                	mov    %ebx,%eax
4126e9:	c1 e0 04             	shl    $0x4,%eax
4126ec:	50                   	push   %eax
4126ed:	ff 36                	push   (%esi)
4126ef:	e8 7c 78 00 00       	call   0x419f70
4126f4:	8b f8                	mov    %eax,%edi
4126f6:	59                   	pop    %ecx
4126f7:	59                   	pop    %ecx
4126f8:	85 ff                	test   %edi,%edi
4126fa:	75 07                	jne    0x412703
4126fc:	8b cd                	mov    %ebp,%ecx
4126fe:	e8 05 3e ff ff       	call   0x406508
412703:	89 3e                	mov    %edi,(%esi)
412705:	5f                   	pop    %edi
412706:	5d                   	pop    %ebp
412707:	89 5e 08             	mov    %ebx,0x8(%esi)
41270a:	5b                   	pop    %ebx
41270b:	5e                   	pop    %esi
41270c:	c2 04 00             	ret    $0x4
41270f:	8b 41 0c             	mov    0xc(%ecx),%eax
412712:	53                   	push   %ebx
412713:	8b 59 04             	mov    0x4(%ecx),%ebx
412716:	8b 09                	mov    (%ecx),%ecx
412718:	8d 14 08             	lea    (%eax,%ecx,1),%edx
41271b:	0f b6 02             	movzbl (%edx),%eax
41271e:	0f b6 4a 01          	movzbl 0x1(%edx),%ecx
412722:	c1 e0 08             	shl    $0x8,%eax
412725:	0b c1                	or     %ecx,%eax
412727:	0f b6 4a 02          	movzbl 0x2(%edx),%ecx
41272b:	c1 e0 08             	shl    $0x8,%eax
41272e:	0b c1                	or     %ecx,%eax
412730:	0f b6 4a 03          	movzbl 0x3(%edx),%ecx
412734:	0f b6 52 04          	movzbl 0x4(%edx),%edx
412738:	c1 e0 08             	shl    $0x8,%eax
41273b:	0b c1                	or     %ecx,%eax
41273d:	8b cb                	mov    %ebx,%ecx
41273f:	d3 e0                	shl    %cl,%eax
412741:	6a 08                	push   $0x8
412743:	59                   	pop    %ecx
412744:	2a cb                	sub    %bl,%cl
412746:	d3 ea                	shr    %cl,%edx
412748:	5b                   	pop    %ebx
412749:	0b c2                	or     %edx,%eax
41274b:	c3                   	ret
41274c:	56                   	push   %esi
41274d:	8b f1                	mov    %ecx,%esi
41274f:	0f b7 06             	movzwl (%esi),%eax
412752:	8a 4e 02             	mov    0x2(%esi),%cl
412755:	0f b7 d0             	movzwl %ax,%edx
412758:	d3 ea                	shr    %cl,%edx
41275a:	2b c2                	sub    %edx,%eax
41275c:	66 89 06             	mov    %ax,(%esi)
41275f:	33 c0                	xor    %eax,%eax
412761:	85 d2                	test   %edx,%edx
412763:	0f 94 c0             	sete   %al
412766:	5e                   	pop    %esi
412767:	03 c2                	add    %edx,%eax
412769:	c3                   	ret
41276a:	8b c1                	mov    %ecx,%eax
41276c:	8a 48 02             	mov    0x2(%eax),%cl
41276f:	80 f9 07             	cmp    $0x7,%cl
412772:	73 14                	jae    0x412788
412774:	fe 48 03             	decb   0x3(%eax)
412777:	75 0f                	jne    0x412788
412779:	66 d1 20             	shlw   $1,(%eax)
41277c:	b2 03                	mov    $0x3,%dl
41277e:	d2 e2                	shl    %cl,%dl
412780:	fe c1                	inc    %cl
412782:	88 48 02             	mov    %cl,0x2(%eax)
412785:	88 50 03             	mov    %dl,0x3(%eax)
412788:	c3                   	ret
412789:	56                   	push   %esi
41278a:	8b f1                	mov    %ecx,%esi
41278c:	6a 00                	push   $0x0
41278e:	8d 4e 04             	lea    0x4(%esi),%ecx
412791:	e8 08 6f ff ff       	call   0x40969e
412796:	83 a6 d4 4a 00 00 00 	andl   $0x0,0x4ad4(%esi)
41279d:	8b c6                	mov    %esi,%eax
41279f:	5e                   	pop    %esi
4127a0:	c3                   	ret
4127a1:	56                   	push   %esi
4127a2:	8b f1                	mov    %ecx,%esi
4127a4:	8b 86 d4 4a 00 00    	mov    0x4ad4(%esi),%eax
4127aa:	85 c0                	test   %eax,%eax
4127ac:	74 07                	je     0x4127b5
4127ae:	50                   	push   %eax