4c4475:	3b 37                	cmp    (%edi),%esi
4c4477:	0f 83 09 fc ff ff    	jae    0x4c4086
4c447d:	80 3e 3a             	cmpb   $0x3a,(%esi)
4c4480:	74 8e                	je     0x4c4410
4c4482:	e9 fb fb ff ff       	jmp    0x4c4082
4c4487:	80 fb 42             	cmp    $0x42,%bl
4c448a:	0f 85 12 02 00 00    	jne    0x4c46a2
4c4490:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c4493:	e8 98 82 00 00       	call   0x4cc730
4c4498:	0f b6 16             	movzbl (%esi),%edx
4c449b:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c449e:	81 fa 80 00 00 00    	cmp    $0x80,%edx
4c44a4:	73 03                	jae    0x4c44a9
4c44a6:	46                   	inc    %esi
4c44a7:	eb 14                	jmp    0x4c44bd
4c44a9:	52                   	push   %edx
4c44aa:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4c44ad:	56                   	push   %esi
4c44ae:	50                   	push   %eax
4c44af:	e8 bc b3 f9 ff       	call   0x45f870
4c44b4:	8b 75 c4             	mov    -0x3c(%ebp),%esi
4c44b7:	83 c4 0c             	add    $0xc,%esp
4c44ba:	8b 55 c8             	mov    -0x38(%ebp),%edx
4c44bd:	85 f6                	test   %esi,%esi
4c44bf:	0f 84 95 fc ff ff    	je     0x4c415a
4c44c5:	2b 57 04             	sub    0x4(%edi),%edx
4c44c8:	33 c0                	xor    %eax,%eax
4c44ca:	8b 5f 10             	mov    0x10(%edi),%ebx
4c44cd:	03 d6                	add    %esi,%edx
4c44cf:	89 55 f0             	mov    %edx,-0x10(%ebp)
4c44d2:	0f 48 c2             	cmovs  %edx,%eax
4c44d5:	89 57 10             	mov    %edx,0x10(%edi)
4c44d8:	03 47 04             	add    0x4(%edi),%eax
4c44db:	83 47 44 ff          	addl   $0xffffffff,0x44(%edi)
4c44df:	89 07                	mov    %eax,(%edi)
4c44e1:	0f 88 73 fc ff ff    	js     0x4c415a
4c44e7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4c44ea:	57                   	push   %edi
4c44eb:	56                   	push   %esi
4c44ec:	e8 0f 8a ff ff       	call   0x4bcf00
4c44f1:	eb 6a                	jmp    0x4c455d
4c44f3:	80 fb 4a             	cmp    $0x4a,%bl
4c44f6:	0f 85 a6 01 00 00    	jne    0x4c46a2
4c44fc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c44ff:	e8 ac 83 00 00       	call   0x4cc8b0
4c4504:	0f b6 16             	movzbl (%esi),%edx
4c4507:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c450a:	81 fa 80 00 00 00    	cmp    $0x80,%edx
4c4510:	73 03                	jae    0x4c4515
4c4512:	46                   	inc    %esi
4c4513:	eb 14                	jmp    0x4c4529
4c4515:	52                   	push   %edx
4c4516:	8d 45 bc             	lea    -0x44(%ebp),%eax
4c4519:	56                   	push   %esi
4c451a:	50                   	push   %eax
4c451b:	e8 50 b3 f9 ff       	call   0x45f870
4c4520:	8b 75 bc             	mov    -0x44(%ebp),%esi
4c4523:	83 c4 0c             	add    $0xc,%esp
4c4526:	8b 55 c0             	mov    -0x40(%ebp),%edx
4c4529:	85 f6                	test   %esi,%esi
4c452b:	0f 84 29 fc ff ff    	je     0x4c415a
4c4531:	2b 57 04             	sub    0x4(%edi),%edx
4c4534:	33 c0                	xor    %eax,%eax
4c4536:	8b 5f 10             	mov    0x10(%edi),%ebx
4c4539:	03 d6                	add    %esi,%edx
4c453b:	89 55 f0             	mov    %edx,-0x10(%ebp)
4c453e:	0f 48 c2             	cmovs  %edx,%eax
4c4541:	89 57 10             	mov    %edx,0x10(%edi)
4c4544:	03 47 04             	add    0x4(%edi),%eax
4c4547:	83 47 44 ff          	addl   $0xffffffff,0x44(%edi)
4c454b:	89 07                	mov    %eax,(%edi)
4c454d:	0f 88 07 fc ff ff    	js     0x4c415a
4c4553:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4c4556:	57                   	push   %edi
4c4557:	56                   	push   %esi
4c4558:	e8 63 de ff ff       	call   0x4c23c0
4c455d:	8b f0                	mov    %eax,%esi
4c455f:	85 f6                	test   %esi,%esi
4c4561:	0f 84 f3 fb ff ff    	je     0x4c415a
4c4567:	ff 47 44             	incl   0x44(%edi)
4c456a:	83 7f 3c 00          	cmpl   $0x0,0x3c(%edi)
4c456e:	0f 85 e6 fb ff ff    	jne    0x4c415a
4c4574:	2b 5d f0             	sub    -0x10(%ebp),%ebx
4c4577:	b8 00 00 00 00       	mov    $0x0,%eax
4c457c:	01 5f 10             	add    %ebx,0x10(%edi)
4c457f:	0f 48 47 10          	cmovs  0x10(%edi),%eax
4c4583:	03 47 04             	add    0x4(%edi),%eax
4c4586:	89 07                	mov    %eax,(%edi)
4c4588:	e9 f5 fa ff ff       	jmp    0x4c4082
4c458d:	80 fb 50             	cmp    $0x50,%bl
4c4590:	75 40                	jne    0x4c45d2
4c4592:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c4595:	4e                   	dec    %esi
4c4596:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4c4599:	46                   	inc    %esi
4c459a:	50                   	push   %eax
4c459b:	56                   	push   %esi
4c459c:	e8 df c5 f8 ff       	call   0x450b80
4c45a1:	8b f0                	mov    %eax,%esi
4c45a3:	8d 4b 60             	lea    0x60(%ebx),%ecx
4c45a6:	8b 45 b4             	mov    -0x4c(%ebp),%eax
4c45a9:	83 c4 08             	add    $0x8,%esp
4c45ac:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c45af:	8d 45 f8             	lea    -0x8(%ebp),%eax
4c45b2:	50                   	push   %eax
4c45b3:	e8 68 89 f9 ff       	call   0x45cf20
4c45b8:	85 f6                	test   %esi,%esi
4c45ba:	0f 84 9a fb ff ff    	je     0x4c415a
4c45c0:	3b 37                	cmp    (%edi),%esi
4c45c2:	0f 83 be fa ff ff    	jae    0x4c4086
4c45c8:	80 3e 50             	cmpb   $0x50,(%esi)
4c45cb:	74 c9                	je     0x4c4596
4c45cd:	e9 b0 fa ff ff       	jmp    0x4c4082
4c45d2:	80 fb 52             	cmp    $0x52,%bl
4c45d5:	0f 85 c7 00 00 00    	jne    0x4c46a2
4c45db:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c45de:	57                   	push   %edi
4c45df:	83 c0 60             	add    $0x60,%eax
4c45e2:	56                   	push   %esi
4c45e3:	50                   	push   %eax
4c45e4:	e8 b7 ad f9 ff       	call   0x45f3a0
4c45e9:	e9 5f fb ff ff       	jmp    0x4c414d
4c45ee:	80 fb 58             	cmp    $0x58,%bl
4c45f1:	75 40                	jne    0x4c4633
4c45f3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c45f6:	4e                   	dec    %esi
4c45f7:	8d 45 ac             	lea    -0x54(%ebp),%eax
4c45fa:	46                   	inc    %esi
4c45fb:	50                   	push   %eax
4c45fc:	56                   	push   %esi
4c45fd:	e8 7e c5 f8 ff       	call   0x450b80
4c4602:	8b f0                	mov    %eax,%esi
4c4604:	8d 4b 6c             	lea    0x6c(%ebx),%ecx
4c4607:	8b 45 ac             	mov    -0x54(%ebp),%eax
4c460a:	83 c4 08             	add    $0x8,%esp
4c460d:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c4610:	8d 45 f8             	lea    -0x8(%ebp),%eax
4c4613:	50                   	push   %eax
4c4614:	e8 07 89 f9 ff       	call   0x45cf20
4c4619:	85 f6                	test   %esi,%esi
4c461b:	0f 84 39 fb ff ff    	je     0x4c415a
4c4621:	3b 37                	cmp    (%edi),%esi
4c4623:	0f 83 5d fa ff ff    	jae    0x4c4086
4c4629:	80 3e 58             	cmpb   $0x58,(%esi)
4c462c:	74 c9                	je     0x4c45f7
4c462e:	e9 4f fa ff ff       	jmp    0x4c4082
4c4633:	80 fb 5a             	cmp    $0x5a,%bl
4c4636:	75 6a                	jne    0x4c46a2
4c4638:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c463b:	57                   	push   %edi
4c463c:	83 c0 6c             	add    $0x6c,%eax
4c463f:	56                   	push   %esi
4c4640:	50                   	push   %eax
4c4641:	e8 5a ad f9 ff       	call   0x45f3a0
4c4646:	e9 02 fb ff ff       	jmp    0x4c414d
4c464b:	80 fb 62             	cmp    $0x62,%bl
4c464e:	75 52                	jne    0x4c46a2
4c4650:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4c4653:	c6 45 e4 00          	movb   $0x0,-0x1c(%ebp)
4c4657:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
4c465b:	8b 4b 04             	mov    0x4(%ebx),%ecx
4c465e:	f6 c1 03             	test   $0x3,%cl
4c4661:	75 12                	jne    0x4c4675
4c4663:	83 e1 fc             	and    $0xfffffffc,%ecx
4c4666:	51                   	push   %ecx
4c4667:	ff 75 e4             	push   -0x1c(%ebp)
4c466a:	8d 8b 80 00 00 00    	lea    0x80(%ebx),%ecx
4c4670:	e9 cb fa ff ff       	jmp    0x4c4140
4c4675:	8b c1                	mov    %ecx,%eax
4c4677:	d1 e8                	shr    $1,%eax
4c4679:	a8 01                	test   $0x1,%al
4c467b:	74 11                	je     0x4c468e
4c467d:	33 c9                	xor    %ecx,%ecx
4c467f:	51                   	push   %ecx
4c4680:	ff 75 e4             	push   -0x1c(%ebp)
4c4683:	8d 8b 80 00 00 00    	lea    0x80(%ebx),%ecx
4c4689:	e9 b2 fa ff ff       	jmp    0x4c4140
4c468e:	83 e1 fc             	and    $0xfffffffc,%ecx
4c4691:	8b 09                	mov    (%ecx),%ecx
4c4693:	51                   	push   %ecx
4c4694:	ff 75 e4             	push   -0x1c(%ebp)
4c4697:	8d 8b 80 00 00 00    	lea    0x80(%ebx),%ecx
4c469d:	e9 9e fa ff ff       	jmp    0x4c4140
4c46a2:	8b c3                	mov    %ebx,%eax
4c46a4:	24 07                	and    $0x7,%al
4c46a6:	3c 04                	cmp    $0x4,%al
4c46a8:	74 5d                	je     0x4c4707
4c46aa:	85 db                	test   %ebx,%ebx
4c46ac:	74 59                	je     0x4c4707
4c46ae:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4c46b1:	83 c1 04             	add    $0x4,%ecx
4c46b4:	f6 01 01             	testb  $0x1,(%ecx)
4c46b7:	74 1b                	je     0x4c46d4
4c46b9:	8b 01                	mov    (%ecx),%eax
4c46bb:	57                   	push   %edi
4c46bc:	83 e0 fc             	and    $0xfffffffc,%eax
4c46bf:	56                   	push   %esi
4c46c0:	83 c0 04             	add    $0x4,%eax
4c46c3:	50                   	push   %eax
4c46c4:	6a 00                	push   $0x0
4c46c6:	53                   	push   %ebx
4c46c7:	e8 e4 c8 f9 ff       	call   0x460fb0
4c46cc:	83 c4 14             	add    $0x14,%esp
4c46cf:	e9 7c fa ff ff       	jmp    0x4c4150
4c46d4:	e8 57 c5 f8 ff       	call   0x450c30
4c46d9:	57                   	push   %edi
4c46da:	56                   	push   %esi
4c46db:	50                   	push   %eax
4c46dc:	6a 00                	push   $0x0
4c46de:	53                   	push   %ebx
4c46df:	e8 cc c8 f9 ff       	call   0x460fb0
4c46e4:	83 c4 14             	add    $0x14,%esp
4c46e7:	e9 64 fa ff ff       	jmp    0x4c4150
4c46ec:	85 c0                	test   %eax,%eax
4c46ee:	0f 8e 68 fa ff ff    	jle    0x4c415c
4c46f4:	33 c0                	xor    %eax,%eax
4c46f6:	39 47 08             	cmp    %eax,0x8(%edi)
4c46f9:	5f                   	pop    %edi
4c46fa:	0f 44 f0             	cmove  %eax,%esi
4c46fd:	8b c6                	mov    %esi,%eax
4c46ff:	5e                   	pop    %esi
4c4700:	5b                   	pop    %ebx
4c4701:	8b e5                	mov    %ebp,%esp
4c4703:	5d                   	pop    %ebp
4c4704:	c2 08 00             	ret    $0x8
4c4707:	8d 43 ff             	lea    -0x1(%ebx),%eax
4c470a:	89 47 3c             	mov    %eax,0x3c(%edi)
4c470d:	8b c6                	mov    %esi,%eax
4c470f:	5f                   	pop    %edi
4c4710:	5e                   	pop    %esi
4c4711:	5b                   	pop    %ebx
4c4712:	8b e5                	mov    %ebp,%esp
4c4714:	5d                   	pop    %ebp
4c4715:	c2 08 00             	ret    $0x8
4c4718:	07                   	pop    %es
4c4719:	41                   	inc    %ecx
4c471a:	4c                   	dec    %esp
4c471b:	00 67 41             	add    %ah,0x41(%edi)
4c471e:	4c                   	dec    %esp
4c471f:	00 b0 41 4c 00 ec    	add    %dh,-0x13ffb3bf(%eax)
4c4725:	41                   	inc    %ecx
4c4726:	4c                   	dec    %esp
4c4727:	00 77 42             	add    %dh,0x42(%edi)
4c472a:	4c                   	dec    %esp
4c472b:	00 fb                	add    %bh,%bl
4c472d:	42                   	inc    %edx
4c472e:	4c                   	dec    %esp
4c472f:	00 00                	add    %al,(%eax)
4c4731:	44                   	inc    %esp
4c4732:	4c                   	dec    %esp
4c4733:	00 87 44 4c 00 f3    	add    %al,-0xcffb3bc(%edi)
4c4739:	44                   	inc    %esp
4c473a:	4c                   	dec    %esp
4c473b:	00 8d 45 4c 00 ee    	add    %cl,-0x11ffb3bb(%ebp)
4c4741:	45                   	inc    %ebp
4c4742:	4c                   	dec    %esp
4c4743:	00 4b 46             	add    %cl,0x46(%ebx)
4c4746:	4c                   	dec    %esp
4c4747:	00 cc                	add    %cl,%ah
4c4749:	cc                   	int3
4c474a:	cc                   	int3
4c474b:	cc                   	int3
4c474c:	cc                   	int3
4c474d:	cc                   	int3
4c474e:	cc                   	int3
4c474f:	cc                   	int3
4c4750:	55                   	push   %ebp
4c4751:	8b ec                	mov    %esp,%ebp
4c4753:	83 ec 18             	sub    $0x18,%esp
4c4756:	53                   	push   %ebx
4c4757:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4c475a:	56                   	push   %esi
4c475b:	8b 75 08             	mov    0x8(%ebp),%esi
4c475e:	57                   	push   %edi
4c475f:	8b f9                	mov    %ecx,%edi
4c4761:	89 7d f4             	mov    %edi,-0xc(%ebp)
4c4764:	8b 47 08             	mov    0x8(%edi),%eax
4c4767:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c476a:	a8 01                	test   $0x1,%al
4c476c:	74 16                	je     0x4c4784
4c476e:	8b 47 78             	mov    0x78(%edi),%eax
4c4771:	8b cb                	mov    %ebx,%ecx
4c4773:	56                   	push   %esi
4c4774:	83 e0 fe             	and    $0xfffffffe,%eax
4c4777:	50                   	push   %eax
4c4778:	6a 01                	push   $0x1
4c477a:	e8 71 d3 f8 ff       	call   0x451af0
4c477f:	8b f0                	mov    %eax,%esi
4c4781:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c4784:	a8 02                	test   $0x2,%al
4c4786:	74 13                	je     0x4c479b
4c4788:	8b 47 7c             	mov    0x7c(%edi),%eax
4c478b:	8b cb                	mov    %ebx,%ecx
4c478d:	56                   	push   %esi
4c478e:	83 e0 fe             	and    $0xfffffffe,%eax
4c4791:	50                   	push   %eax
4c4792:	6a 02                	push   $0x2
4c4794:	e8 57 d3 f8 ff       	call   0x451af0
4c4799:	8b f0                	mov    %eax,%esi
4c479b:	8d 47 10             	lea    0x10(%edi),%eax
4c479e:	8b c8                	mov    %eax,%ecx
4c47a0:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c47a3:	e8 18 98 f9 ff       	call   0x45dfc0
4c47a8:	8b c8                	mov    %eax,%ecx
4c47aa:	33 c0                	xor    %eax,%eax
4c47ac:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c47af:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c47b2:	85 c9                	test   %ecx,%ecx
4c47b4:	7e 6a                	jle    0x4c4820
4c47b6:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4c47b9:	50                   	push   %eax
4c47ba:	e8 21 8b f9 ff       	call   0x45d2e0
4c47bf:	8b f8                	mov    %eax,%edi
4c47c1:	8b 47 10             	mov    0x10(%edi),%eax
4c47c4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c47c7:	3d 80 00 00 00       	cmp    $0x80,%eax
4c47cc:	7d 36                	jge    0x4c4804
4c47ce:	8b 0b                	mov    (%ebx),%ecx
4c47d0:	2b ce                	sub    %esi,%ecx
4c47d2:	83 c1 0e             	add    $0xe,%ecx
4c47d5:	3b c8                	cmp    %eax,%ecx
4c47d7:	7c 2b                	jl     0x4c4804
4c47d9:	56                   	push   %esi
4c47da:	6a 1a                	push   $0x1a
4c47dc:	e8 df c2 f8 ff       	call   0x450ac0
4c47e1:	8b f0                	mov    %eax,%esi
4c47e3:	83 c4 08             	add    $0x8,%esp
4c47e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c47e9:	88 06                	mov    %al,(%esi)
4c47eb:	46                   	inc    %esi
4c47ec:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
4c47f0:	72 02                	jb     0x4c47f4
4c47f2:	8b 3f                	mov    (%edi),%edi
4c47f4:	50                   	push   %eax
4c47f5:	57                   	push   %edi
4c47f6:	56                   	push   %esi
4c47f7:	e8 d4 e5 10 00       	call   0x5d2dd0
4c47fc:	83 c4 0c             	add    $0xc,%esp
4c47ff:	03 75 fc             	add    -0x4(%ebp),%esi
4c4802:	eb 0d                	jmp    0x4c4811
4c4804:	56                   	push   %esi
4c4805:	57                   	push   %edi
4c4806:	6a 03                	push   $0x3
4c4808:	8b cb                	mov    %ebx,%ecx
4c480a:	e8 31 64 f9 ff       	call   0x45ac40
4c480f:	8b f0                	mov    %eax,%esi
4c4811:	8b 45 f0             	mov    -0x10(%ebp),%eax
4c4814:	40                   	inc    %eax
4c4815:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c4818:	3b 45 f8             	cmp    -0x8(%ebp),%eax