460681:	8b c7                	mov    %edi,%eax
460683:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
460687:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46068b:	89 46 34             	mov    %eax,0x34(%esi)
46068e:	83 46 14 08          	addl   $0x8,0x14(%esi)
460692:	8b 4e 14             	mov    0x14(%esi),%ecx
460695:	8b 41 f8             	mov    -0x8(%ecx),%eax
460698:	89 45 f8             	mov    %eax,-0x8(%ebp)
46069b:	8b 41 fc             	mov    -0x4(%ecx),%eax
46069e:	8b cf                	mov    %edi,%ecx
4606a0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4606a3:	e8 f2 52 ff ff       	call   0x45599a
4606a8:	8b 9f 04 04 00 00    	mov    0x404(%edi),%ebx
4606ae:	8b c8                	mov    %eax,%ecx
4606b0:	85 db                	test   %ebx,%ebx
4606b2:	75 02                	jne    0x4606b6
4606b4:	8b df                	mov    %edi,%ebx
4606b6:	ff 76 08             	push   0x8(%esi)
4606b9:	0f be 46 31          	movsbl 0x31(%esi),%eax
4606bd:	ff 76 04             	push   0x4(%esi)
4606c0:	ff 36                	push   (%esi)
4606c2:	ff 76 28             	push   0x28(%esi)
4606c5:	50                   	push   %eax
4606c6:	51                   	push   %ecx
4606c7:	8b cf                	mov    %edi,%ecx
4606c9:	e8 a1 7b ff ff       	call   0x45826f
4606ce:	50                   	push   %eax
4606cf:	8b cf                	mov    %edi,%ecx
4606d1:	e8 c4 52 ff ff       	call   0x45599a
4606d6:	50                   	push   %eax
4606d7:	8d 45 f8             	lea    -0x8(%ebp),%eax
4606da:	53                   	push   %ebx
4606db:	50                   	push   %eax
4606dc:	e8 4b 79 01 00       	call   0x47802c
4606e1:	8b 46 20             	mov    0x20(%esi),%eax
4606e4:	83 c4 28             	add    $0x28,%esp
4606e7:	c1 e8 05             	shr    $0x5,%eax
4606ea:	5b                   	pop    %ebx
4606eb:	a8 01                	test   $0x1,%al
4606ed:	74 13                	je     0x460702
4606ef:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
4606f3:	75 0d                	jne    0x460702
4606f5:	ff 76 08             	push   0x8(%esi)
4606f8:	ff 76 34             	push   0x34(%esi)
4606fb:	e8 98 9b ff ff       	call   0x45a298
460700:	59                   	pop    %ecx
460701:	59                   	pop    %ecx
460702:	8a 46 31             	mov    0x31(%esi),%al
460705:	3c 67                	cmp    $0x67,%al
460707:	74 04                	je     0x46070d
460709:	3c 47                	cmp    $0x47,%al
46070b:	75 17                	jne    0x460724
46070d:	8b 46 20             	mov    0x20(%esi),%eax
460710:	c1 e8 05             	shr    $0x5,%eax
460713:	a8 01                	test   $0x1,%al
460715:	75 0d                	jne    0x460724
460717:	ff 76 08             	push   0x8(%esi)
46071a:	ff 76 34             	push   0x34(%esi)
46071d:	e8 a3 98 ff ff       	call   0x459fc5
460722:	59                   	pop    %ecx
460723:	59                   	pop    %ecx
460724:	8b 46 34             	mov    0x34(%esi),%eax
460727:	80 38 2d             	cmpb   $0x2d,(%eax)
46072a:	75 08                	jne    0x460734
46072c:	83 4e 20 40          	orl    $0x40,0x20(%esi)
460730:	40                   	inc    %eax
460731:	89 46 34             	mov    %eax,0x34(%esi)
460734:	8b 56 34             	mov    0x34(%esi),%edx
460737:	8a 02                	mov    (%edx),%al
460739:	3c 69                	cmp    $0x69,%al
46073b:	74 0c                	je     0x460749
46073d:	3c 49                	cmp    $0x49,%al
46073f:	74 08                	je     0x460749
460741:	3c 6e                	cmp    $0x6e,%al
460743:	74 04                	je     0x460749
460745:	3c 4e                	cmp    $0x4e,%al
460747:	75 04                	jne    0x46074d
460749:	c6 46 31 73          	movb   $0x73,0x31(%esi)
46074d:	8d 7a 01             	lea    0x1(%edx),%edi
460750:	8a 0a                	mov    (%edx),%cl
460752:	42                   	inc    %edx
460753:	84 c9                	test   %cl,%cl
460755:	75 f9                	jne    0x460750
460757:	2b d7                	sub    %edi,%edx
460759:	b0 01                	mov    $0x1,%al
46075b:	5f                   	pop    %edi
46075c:	89 56 38             	mov    %edx,0x38(%esi)
46075f:	5e                   	pop    %esi
460760:	8b e5                	mov    %ebp,%esp
460762:	5d                   	pop    %ebp
460763:	c3                   	ret
460764:	8b ff                	mov    %edi,%edi
460766:	55                   	push   %ebp
460767:	8b ec                	mov    %esp,%ebp
460769:	51                   	push   %ecx
46076a:	51                   	push   %ecx
46076b:	56                   	push   %esi
46076c:	8b f1                	mov    %ecx,%esi
46076e:	83 4e 20 10          	orl    $0x10,0x20(%esi)
460772:	e8 65 45 00 00       	call   0x464cdc
460777:	84 c0                	test   %al,%al
460779:	0f 84 59 01 00 00    	je     0x4608d8
46077f:	8b ce                	mov    %esi,%ecx
460781:	e8 11 b7 ff ff       	call   0x45be97
460786:	84 c0                	test   %al,%al
460788:	75 07                	jne    0x460791
46078a:	fe c0                	inc    %al
46078c:	e9 47 01 00 00       	jmp    0x4608d8
460791:	8b 46 28             	mov    0x28(%esi),%eax
460794:	85 c0                	test   %eax,%eax
460796:	79 1d                	jns    0x4607b5
460798:	8a 46 31             	mov    0x31(%esi),%al
46079b:	3c 61                	cmp    $0x61,%al
46079d:	74 0d                	je     0x4607ac
46079f:	3c 41                	cmp    $0x41,%al
4607a1:	74 09                	je     0x4607ac
4607a3:	c7 46 28 06 00 00 00 	movl   $0x6,0x28(%esi)
4607aa:	eb 1d                	jmp    0x4607c9
4607ac:	c7 46 28 0d 00 00 00 	movl   $0xd,0x28(%esi)
4607b3:	eb 14                	jmp    0x4607c9
4607b5:	75 12                	jne    0x4607c9
4607b7:	8a 46 31             	mov    0x31(%esi),%al
4607ba:	3c 67                	cmp    $0x67,%al
4607bc:	74 04                	je     0x4607c2
4607be:	3c 47                	cmp    $0x47,%al
4607c0:	75 07                	jne    0x4607c9
4607c2:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
4607c9:	8b 46 28             	mov    0x28(%esi),%eax
4607cc:	53                   	push   %ebx
4607cd:	57                   	push   %edi
4607ce:	bb 5d 01 00 00       	mov    $0x15d,%ebx
4607d3:	8d 7e 40             	lea    0x40(%esi),%edi
4607d6:	03 c3                	add    %ebx,%eax
4607d8:	8b cf                	mov    %edi,%ecx
4607da:	50                   	push   %eax
4607db:	e8 05 52 ff ff       	call   0x4559e5
4607e0:	84 c0                	test   %al,%al
4607e2:	75 0c                	jne    0x4607f0
4607e4:	8b cf                	mov    %edi,%ecx
4607e6:	e8 af 51 ff ff       	call   0x45599a
4607eb:	2b c3                	sub    %ebx,%eax
4607ed:	89 46 28             	mov    %eax,0x28(%esi)
4607f0:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
4607f6:	85 c0                	test   %eax,%eax
4607f8:	75 02                	jne    0x4607fc
4607fa:	8b c7                	mov    %edi,%eax
4607fc:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
460800:	8b ce                	mov    %esi,%ecx
460802:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
460806:	89 46 34             	mov    %eax,0x34(%esi)
460809:	8d 45 f8             	lea    -0x8(%ebp),%eax
46080c:	50                   	push   %eax
46080d:	e8 e3 6a ff ff       	call   0x4572f5
460812:	84 c0                	test   %al,%al
460814:	0f 84 bc 00 00 00    	je     0x4608d6
46081a:	8b cf                	mov    %edi,%ecx
46081c:	e8 79 51 ff ff       	call   0x45599a
460821:	8b 9f 04 04 00 00    	mov    0x404(%edi),%ebx
460827:	8b c8                	mov    %eax,%ecx
460829:	85 db                	test   %ebx,%ebx
46082b:	75 02                	jne    0x46082f
46082d:	8b df                	mov    %edi,%ebx
46082f:	ff 76 08             	push   0x8(%esi)
460832:	0f be 46 31          	movsbl 0x31(%esi),%eax
460836:	ff 76 04             	push   0x4(%esi)
460839:	ff 36                	push   (%esi)
46083b:	ff 76 28             	push   0x28(%esi)
46083e:	50                   	push   %eax
46083f:	51                   	push   %ecx
460840:	8b cf                	mov    %edi,%ecx
460842:	e8 28 7a ff ff       	call   0x45826f
460847:	50                   	push   %eax
460848:	8b cf                	mov    %edi,%ecx
46084a:	e8 4b 51 ff ff       	call   0x45599a
46084f:	50                   	push   %eax
460850:	8d 45 f8             	lea    -0x8(%ebp),%eax
460853:	53                   	push   %ebx
460854:	50                   	push   %eax
460855:	e8 d2 77 01 00       	call   0x47802c
46085a:	8b 46 20             	mov    0x20(%esi),%eax
46085d:	83 c4 28             	add    $0x28,%esp
460860:	c1 e8 05             	shr    $0x5,%eax
460863:	a8 01                	test   $0x1,%al
460865:	74 13                	je     0x46087a
460867:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
46086b:	75 0d                	jne    0x46087a
46086d:	ff 76 08             	push   0x8(%esi)
460870:	ff 76 34             	push   0x34(%esi)
460873:	e8 20 9a ff ff       	call   0x45a298
460878:	59                   	pop    %ecx
460879:	59                   	pop    %ecx
46087a:	8a 46 31             	mov    0x31(%esi),%al
46087d:	3c 67                	cmp    $0x67,%al
46087f:	74 04                	je     0x460885
460881:	3c 47                	cmp    $0x47,%al
460883:	75 17                	jne    0x46089c
460885:	8b 46 20             	mov    0x20(%esi),%eax
460888:	c1 e8 05             	shr    $0x5,%eax
46088b:	a8 01                	test   $0x1,%al
46088d:	75 0d                	jne    0x46089c
46088f:	ff 76 08             	push   0x8(%esi)
460892:	ff 76 34             	push   0x34(%esi)
460895:	e8 2b 97 ff ff       	call   0x459fc5
46089a:	59                   	pop    %ecx
46089b:	59                   	pop    %ecx
46089c:	8b 46 34             	mov    0x34(%esi),%eax
46089f:	80 38 2d             	cmpb   $0x2d,(%eax)
4608a2:	75 08                	jne    0x4608ac
4608a4:	83 4e 20 40          	orl    $0x40,0x20(%esi)
4608a8:	40                   	inc    %eax
4608a9:	89 46 34             	mov    %eax,0x34(%esi)
4608ac:	8b 56 34             	mov    0x34(%esi),%edx
4608af:	8a 02                	mov    (%edx),%al
4608b1:	3c 69                	cmp    $0x69,%al
4608b3:	74 0c                	je     0x4608c1
4608b5:	3c 49                	cmp    $0x49,%al
4608b7:	74 08                	je     0x4608c1
4608b9:	3c 6e                	cmp    $0x6e,%al
4608bb:	74 04                	je     0x4608c1
4608bd:	3c 4e                	cmp    $0x4e,%al
4608bf:	75 04                	jne    0x4608c5
4608c1:	c6 46 31 73          	movb   $0x73,0x31(%esi)
4608c5:	8d 7a 01             	lea    0x1(%edx),%edi
4608c8:	8a 0a                	mov    (%edx),%cl
4608ca:	42                   	inc    %edx
4608cb:	84 c9                	test   %cl,%cl
4608cd:	75 f9                	jne    0x4608c8
4608cf:	2b d7                	sub    %edi,%edx
4608d1:	b0 01                	mov    $0x1,%al
4608d3:	89 56 38             	mov    %edx,0x38(%esi)
4608d6:	5f                   	pop    %edi
4608d7:	5b                   	pop    %ebx
4608d8:	5e                   	pop    %esi
4608d9:	8b e5                	mov    %ebp,%esp
4608db:	5d                   	pop    %ebp
4608dc:	c3                   	ret
4608dd:	8b ff                	mov    %edi,%edi
4608df:	55                   	push   %ebp
4608e0:	8b ec                	mov    %esp,%ebp
4608e2:	51                   	push   %ecx
4608e3:	51                   	push   %ecx
4608e4:	56                   	push   %esi
4608e5:	8b f1                	mov    %ecx,%esi
4608e7:	57                   	push   %edi
4608e8:	83 4e 20 10          	orl    $0x10,0x20(%esi)
4608ec:	8b 46 28             	mov    0x28(%esi),%eax
4608ef:	85 c0                	test   %eax,%eax
4608f1:	79 1d                	jns    0x460910
4608f3:	8a 46 31             	mov    0x31(%esi),%al
4608f6:	3c 61                	cmp    $0x61,%al
4608f8:	74 0d                	je     0x460907
4608fa:	3c 41                	cmp    $0x41,%al
4608fc:	74 09                	je     0x460907
4608fe:	c7 46 28 06 00 00 00 	movl   $0x6,0x28(%esi)
460905:	eb 1d                	jmp    0x460924
460907:	c7 46 28 0d 00 00 00 	movl   $0xd,0x28(%esi)
46090e:	eb 14                	jmp    0x460924
460910:	75 12                	jne    0x460924
460912:	8a 46 31             	mov    0x31(%esi),%al
460915:	3c 67                	cmp    $0x67,%al
460917:	74 04                	je     0x46091d
460919:	3c 47                	cmp    $0x47,%al
46091b:	75 07                	jne    0x460924
46091d:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
460924:	8b 46 28             	mov    0x28(%esi),%eax
460927:	8d 7e 40             	lea    0x40(%esi),%edi
46092a:	53                   	push   %ebx
46092b:	bb 5d 01 00 00       	mov    $0x15d,%ebx
460930:	8b cf                	mov    %edi,%ecx
460932:	03 c3                	add    %ebx,%eax
460934:	50                   	push   %eax
460935:	e8 ab 50 ff ff       	call   0x4559e5
46093a:	84 c0                	test   %al,%al
46093c:	75 0c                	jne    0x46094a
46093e:	8b cf                	mov    %edi,%ecx
460940:	e8 55 50 ff ff       	call   0x45599a
460945:	2b c3                	sub    %ebx,%eax
460947:	89 46 28             	mov    %eax,0x28(%esi)
46094a:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
460950:	85 c0                	test   %eax,%eax
460952:	75 02                	jne    0x460956
460954:	8b c7                	mov    %edi,%eax
460956:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
46095a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46095e:	89 46 34             	mov    %eax,0x34(%esi)
460961:	83 46 14 08          	addl   $0x8,0x14(%esi)
460965:	8b 4e 14             	mov    0x14(%esi),%ecx
460968:	8b 41 f8             	mov    -0x8(%ecx),%eax
46096b:	89 45 f8             	mov    %eax,-0x8(%ebp)
46096e:	8b 41 fc             	mov    -0x4(%ecx),%eax
460971:	8b cf                	mov    %edi,%ecx
460973:	89 45 fc             	mov    %eax,-0x4(%ebp)
460976:	e8 1f 50 ff ff       	call   0x45599a
46097b:	8b 9f 04 04 00 00    	mov    0x404(%edi),%ebx
460981:	8b c8                	mov    %eax,%ecx
460983:	85 db                	test   %ebx,%ebx
460985:	75 02                	jne    0x460989
460987:	8b df                	mov    %edi,%ebx
460989:	ff 76 08             	push   0x8(%esi)
46098c:	0f be 46 31          	movsbl 0x31(%esi),%eax
460990:	ff 76 04             	push   0x4(%esi)
460993:	ff 36                	push   (%esi)
460995:	ff 76 28             	push   0x28(%esi)
460998:	50                   	push   %eax
460999:	51                   	push   %ecx
46099a:	8b cf                	mov    %edi,%ecx
46099c:	e8 ce 78 ff ff       	call   0x45826f
4609a1:	50                   	push   %eax
4609a2:	8b cf                	mov    %edi,%ecx
4609a4:	e8 f1 4f ff ff       	call   0x45599a
4609a9:	50                   	push   %eax
4609aa:	8d 45 f8             	lea    -0x8(%ebp),%eax
4609ad:	53                   	push   %ebx
4609ae:	50                   	push   %eax
4609af:	e8 78 76 01 00       	call   0x47802c
4609b4:	8b 46 20             	mov    0x20(%esi),%eax
4609b7:	83 c4 28             	add    $0x28,%esp
4609ba:	c1 e8 05             	shr    $0x5,%eax
4609bd:	5b                   	pop    %ebx
4609be:	a8 01                	test   $0x1,%al
4609c0:	74 13                	je     0x4609d5
4609c2:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
4609c6:	75 0d                	jne    0x4609d5
4609c8:	ff 76 08             	push   0x8(%esi)
4609cb:	ff 76 34             	push   0x34(%esi)
4609ce:	e8 c5 98 ff ff       	call   0x45a298
4609d3:	59                   	pop    %ecx
4609d4:	59                   	pop    %ecx
4609d5:	8a 46 31             	mov    0x31(%esi),%al
4609d8:	3c 67                	cmp    $0x67,%al
4609da:	74 04                	je     0x4609e0
4609dc:	3c 47                	cmp    $0x47,%al
4609de:	75 17                	jne    0x4609f7
4609e0:	8b 46 20             	mov    0x20(%esi),%eax
4609e3:	c1 e8 05             	shr    $0x5,%eax
4609e6:	a8 01                	test   $0x1,%al
4609e8:	75 0d                	jne    0x4609f7
4609ea:	ff 76 08             	push   0x8(%esi)
4609ed:	ff 76 34             	push   0x34(%esi)
4609f0:	e8 d0 95 ff ff       	call   0x459fc5
4609f5:	59                   	pop    %ecx
4609f6:	59                   	pop    %ecx
4609f7:	8b 46 34             	mov    0x34(%esi),%eax
4609fa:	80 38 2d             	cmpb   $0x2d,(%eax)
4609fd:	75 08                	jne    0x460a07
4609ff:	83 4e 20 40          	orl    $0x40,0x20(%esi)
460a03:	40                   	inc    %eax
460a04:	89 46 34             	mov    %eax,0x34(%esi)
460a07:	8b 56 34             	mov    0x34(%esi),%edx
460a0a:	8a 02                	mov    (%edx),%al