46c66c:	8b ec                	mov    %esp,%ebp
46c66e:	51                   	push   %ecx
46c66f:	8b 45 14             	mov    0x14(%ebp),%eax
46c672:	53                   	push   %ebx
46c673:	8b 5d 18             	mov    0x18(%ebp),%ebx
46c676:	56                   	push   %esi
46c677:	8b 75 08             	mov    0x8(%ebp),%esi
46c67a:	57                   	push   %edi
46c67b:	83 23 00             	andl   $0x0,(%ebx)
46c67e:	8b 7d 10             	mov    0x10(%ebp),%edi
46c681:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
46c687:	8b 45 0c             	mov    0xc(%ebp),%eax
46c68a:	85 c0                	test   %eax,%eax
46c68c:	74 08                	je     0x46c696
46c68e:	89 38                	mov    %edi,(%eax)
46c690:	83 c0 04             	add    $0x4,%eax
46c693:	89 45 0c             	mov    %eax,0xc(%ebp)
46c696:	32 c9                	xor    %cl,%cl
46c698:	88 4d ff             	mov    %cl,-0x1(%ebp)
46c69b:	80 3e 22             	cmpb   $0x22,(%esi)
46c69e:	75 0d                	jne    0x46c6ad
46c6a0:	84 c9                	test   %cl,%cl
46c6a2:	b0 22                	mov    $0x22,%al
46c6a4:	0f 94 c1             	sete   %cl
46c6a7:	46                   	inc    %esi
46c6a8:	88 4d ff             	mov    %cl,-0x1(%ebp)
46c6ab:	eb 35                	jmp    0x46c6e2
46c6ad:	ff 03                	incl   (%ebx)
46c6af:	85 ff                	test   %edi,%edi
46c6b1:	74 05                	je     0x46c6b8
46c6b3:	8a 06                	mov    (%esi),%al
46c6b5:	88 07                	mov    %al,(%edi)
46c6b7:	47                   	inc    %edi
46c6b8:	8a 06                	mov    (%esi),%al
46c6ba:	46                   	inc    %esi
46c6bb:	88 45 fe             	mov    %al,-0x2(%ebp)
46c6be:	0f be c0             	movsbl %al,%eax
46c6c1:	50                   	push   %eax
46c6c2:	e8 60 1b 01 00       	call   0x47e227
46c6c7:	59                   	pop    %ecx
46c6c8:	85 c0                	test   %eax,%eax
46c6ca:	74 0c                	je     0x46c6d8
46c6cc:	ff 03                	incl   (%ebx)
46c6ce:	85 ff                	test   %edi,%edi
46c6d0:	74 05                	je     0x46c6d7
46c6d2:	8a 06                	mov    (%esi),%al
46c6d4:	88 07                	mov    %al,(%edi)
46c6d6:	47                   	inc    %edi
46c6d7:	46                   	inc    %esi
46c6d8:	8a 45 fe             	mov    -0x2(%ebp),%al
46c6db:	84 c0                	test   %al,%al
46c6dd:	74 19                	je     0x46c6f8
46c6df:	8a 4d ff             	mov    -0x1(%ebp),%cl
46c6e2:	84 c9                	test   %cl,%cl
46c6e4:	75 b5                	jne    0x46c69b
46c6e6:	3c 20                	cmp    $0x20,%al
46c6e8:	74 04                	je     0x46c6ee
46c6ea:	3c 09                	cmp    $0x9,%al
46c6ec:	75 ad                	jne    0x46c69b
46c6ee:	85 ff                	test   %edi,%edi
46c6f0:	74 07                	je     0x46c6f9
46c6f2:	c6 47 ff 00          	movb   $0x0,-0x1(%edi)
46c6f6:	eb 01                	jmp    0x46c6f9
46c6f8:	4e                   	dec    %esi
46c6f9:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
46c6fd:	80 3e 00             	cmpb   $0x0,(%esi)
46c700:	0f 84 c2 00 00 00    	je     0x46c7c8
46c706:	8a 06                	mov    (%esi),%al
46c708:	3c 20                	cmp    $0x20,%al
46c70a:	74 04                	je     0x46c710
46c70c:	3c 09                	cmp    $0x9,%al
46c70e:	75 03                	jne    0x46c713
46c710:	46                   	inc    %esi
46c711:	eb f3                	jmp    0x46c706
46c713:	80 3e 00             	cmpb   $0x0,(%esi)
46c716:	0f 84 ac 00 00 00    	je     0x46c7c8
46c71c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46c71f:	85 c9                	test   %ecx,%ecx
46c721:	74 08                	je     0x46c72b
46c723:	89 39                	mov    %edi,(%ecx)
46c725:	83 c1 04             	add    $0x4,%ecx
46c728:	89 4d 0c             	mov    %ecx,0xc(%ebp)
46c72b:	8b 45 14             	mov    0x14(%ebp),%eax
46c72e:	ff 00                	incl   (%eax)
46c730:	33 d2                	xor    %edx,%edx
46c732:	42                   	inc    %edx
46c733:	33 c0                	xor    %eax,%eax
46c735:	eb 02                	jmp    0x46c739
46c737:	46                   	inc    %esi
46c738:	40                   	inc    %eax
46c739:	80 3e 5c             	cmpb   $0x5c,(%esi)
46c73c:	74 f9                	je     0x46c737
46c73e:	80 3e 22             	cmpb   $0x22,(%esi)
46c741:	75 31                	jne    0x46c774
46c743:	a8 01                	test   $0x1,%al
46c745:	75 1e                	jne    0x46c765
46c747:	8a 4d ff             	mov    -0x1(%ebp),%cl
46c74a:	84 c9                	test   %cl,%cl
46c74c:	74 0f                	je     0x46c75d
46c74e:	8d 4e 01             	lea    0x1(%esi),%ecx
46c751:	80 39 22             	cmpb   $0x22,(%ecx)
46c754:	75 04                	jne    0x46c75a
46c756:	8b f1                	mov    %ecx,%esi
46c758:	eb 0b                	jmp    0x46c765
46c75a:	8a 4d ff             	mov    -0x1(%ebp),%cl
46c75d:	33 d2                	xor    %edx,%edx
46c75f:	84 c9                	test   %cl,%cl
46c761:	0f 94 45 ff          	sete   -0x1(%ebp)
46c765:	d1 e8                	shr    $1,%eax
46c767:	eb 0b                	jmp    0x46c774
46c769:	48                   	dec    %eax
46c76a:	85 ff                	test   %edi,%edi
46c76c:	74 04                	je     0x46c772
46c76e:	c6 07 5c             	movb   $0x5c,(%edi)
46c771:	47                   	inc    %edi
46c772:	ff 03                	incl   (%ebx)
46c774:	85 c0                	test   %eax,%eax
46c776:	75 f1                	jne    0x46c769
46c778:	8a 06                	mov    (%esi),%al
46c77a:	84 c0                	test   %al,%al
46c77c:	74 3b                	je     0x46c7b9
46c77e:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
46c782:	75 08                	jne    0x46c78c
46c784:	3c 20                	cmp    $0x20,%al
46c786:	74 31                	je     0x46c7b9
46c788:	3c 09                	cmp    $0x9,%al
46c78a:	74 2d                	je     0x46c7b9
46c78c:	85 d2                	test   %edx,%edx
46c78e:	74 23                	je     0x46c7b3
46c790:	85 ff                	test   %edi,%edi
46c792:	74 03                	je     0x46c797
46c794:	88 07                	mov    %al,(%edi)
46c796:	47                   	inc    %edi
46c797:	0f be 06             	movsbl (%esi),%eax
46c79a:	50                   	push   %eax
46c79b:	e8 87 1a 01 00       	call   0x47e227
46c7a0:	59                   	pop    %ecx
46c7a1:	85 c0                	test   %eax,%eax
46c7a3:	74 0c                	je     0x46c7b1
46c7a5:	46                   	inc    %esi
46c7a6:	ff 03                	incl   (%ebx)
46c7a8:	85 ff                	test   %edi,%edi
46c7aa:	74 05                	je     0x46c7b1
46c7ac:	8a 06                	mov    (%esi),%al
46c7ae:	88 07                	mov    %al,(%edi)
46c7b0:	47                   	inc    %edi
46c7b1:	ff 03                	incl   (%ebx)
46c7b3:	46                   	inc    %esi
46c7b4:	e9 77 ff ff ff       	jmp    0x46c730
46c7b9:	85 ff                	test   %edi,%edi
46c7bb:	74 04                	je     0x46c7c1
46c7bd:	c6 07 00             	movb   $0x0,(%edi)
46c7c0:	47                   	inc    %edi
46c7c1:	ff 03                	incl   (%ebx)
46c7c3:	e9 35 ff ff ff       	jmp    0x46c6fd
46c7c8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46c7cb:	5f                   	pop    %edi
46c7cc:	5e                   	pop    %esi
46c7cd:	5b                   	pop    %ebx
46c7ce:	85 c9                	test   %ecx,%ecx
46c7d0:	74 03                	je     0x46c7d5
46c7d2:	83 21 00             	andl   $0x0,(%ecx)
46c7d5:	8b 45 14             	mov    0x14(%ebp),%eax
46c7d8:	ff 00                	incl   (%eax)
46c7da:	8b e5                	mov    %ebp,%esp
46c7dc:	5d                   	pop    %ebp
46c7dd:	c3                   	ret
46c7de:	8b ff                	mov    %edi,%edi
46c7e0:	55                   	push   %ebp
46c7e1:	8b ec                	mov    %esp,%ebp
46c7e3:	8b 45 14             	mov    0x14(%ebp),%eax
46c7e6:	83 ec 10             	sub    $0x10,%esp
46c7e9:	8b 4d 08             	mov    0x8(%ebp),%ecx
46c7ec:	8b 55 10             	mov    0x10(%ebp),%edx
46c7ef:	53                   	push   %ebx
46c7f0:	56                   	push   %esi
46c7f1:	8b 75 0c             	mov    0xc(%ebp),%esi
46c7f4:	33 db                	xor    %ebx,%ebx
46c7f6:	57                   	push   %edi
46c7f7:	8b 7d 18             	mov    0x18(%ebp),%edi
46c7fa:	89 1f                	mov    %ebx,(%edi)
46c7fc:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
46c802:	85 f6                	test   %esi,%esi
46c804:	74 08                	je     0x46c80e
46c806:	89 16                	mov    %edx,(%esi)
46c808:	83 c6 04             	add    $0x4,%esi
46c80b:	89 75 0c             	mov    %esi,0xc(%ebp)
46c80e:	c7 45 f8 20 00 00 00 	movl   $0x20,-0x8(%ebp)
46c815:	c7 45 f4 09 00 00 00 	movl   $0x9,-0xc(%ebp)
46c81c:	6a 22                	push   $0x22
46c81e:	58                   	pop    %eax
46c81f:	66 39 01             	cmp    %ax,(%ecx)
46c822:	75 0a                	jne    0x46c82e
46c824:	84 db                	test   %bl,%bl
46c826:	0f 94 c3             	sete   %bl
46c829:	83 c1 02             	add    $0x2,%ecx
46c82c:	eb 1a                	jmp    0x46c848
46c82e:	ff 07                	incl   (%edi)
46c830:	85 d2                	test   %edx,%edx
46c832:	74 09                	je     0x46c83d
46c834:	66 8b 01             	mov    (%ecx),%ax
46c837:	66 89 02             	mov    %ax,(%edx)
46c83a:	83 c2 02             	add    $0x2,%edx
46c83d:	0f b7 01             	movzwl (%ecx),%eax
46c840:	83 c1 02             	add    $0x2,%ecx
46c843:	66 85 c0             	test   %ax,%ax
46c846:	74 1f                	je     0x46c867
46c848:	84 db                	test   %bl,%bl
46c84a:	75 d0                	jne    0x46c81c
46c84c:	66 3b 45 f8          	cmp    -0x8(%ebp),%ax
46c850:	74 09                	je     0x46c85b
46c852:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
46c856:	6a 22                	push   $0x22
46c858:	58                   	pop    %eax
46c859:	75 c4                	jne    0x46c81f
46c85b:	85 d2                	test   %edx,%edx
46c85d:	74 0b                	je     0x46c86a
46c85f:	33 c0                	xor    %eax,%eax
46c861:	66 89 42 fe          	mov    %ax,-0x2(%edx)
46c865:	eb 03                	jmp    0x46c86a
46c867:	83 e9 02             	sub    $0x2,%ecx
46c86a:	8b 5d 14             	mov    0x14(%ebp),%ebx
46c86d:	33 c0                	xor    %eax,%eax
46c86f:	88 45 ff             	mov    %al,-0x1(%ebp)
46c872:	66 39 01             	cmp    %ax,(%ecx)
46c875:	0f 84 da 00 00 00    	je     0x46c955
46c87b:	0f b7 01             	movzwl (%ecx),%eax
46c87e:	66 3b 45 f8          	cmp    -0x8(%ebp),%ax
46c882:	74 06                	je     0x46c88a
46c884:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
46c888:	75 05                	jne    0x46c88f
46c88a:	83 c1 02             	add    $0x2,%ecx
46c88d:	eb ec                	jmp    0x46c87b
46c88f:	33 c0                	xor    %eax,%eax
46c891:	66 39 01             	cmp    %ax,(%ecx)
46c894:	0f 84 bb 00 00 00    	je     0x46c955
46c89a:	85 f6                	test   %esi,%esi
46c89c:	74 08                	je     0x46c8a6
46c89e:	89 16                	mov    %edx,(%esi)
46c8a0:	83 c6 04             	add    $0x4,%esi
46c8a3:	89 75 0c             	mov    %esi,0xc(%ebp)
46c8a6:	ff 03                	incl   (%ebx)
46c8a8:	33 db                	xor    %ebx,%ebx
46c8aa:	6a 5c                	push   $0x5c
46c8ac:	5e                   	pop    %esi
46c8ad:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
46c8b4:	8b c3                	mov    %ebx,%eax
46c8b6:	eb 04                	jmp    0x46c8bc
46c8b8:	83 c1 02             	add    $0x2,%ecx
46c8bb:	40                   	inc    %eax
46c8bc:	66 39 31             	cmp    %si,(%ecx)
46c8bf:	74 f7                	je     0x46c8b8
46c8c1:	6a 22                	push   $0x22
46c8c3:	5e                   	pop    %esi
46c8c4:	66 39 31             	cmp    %si,(%ecx)
46c8c7:	6a 5c                	push   $0x5c
46c8c9:	5e                   	pop    %esi
46c8ca:	75 38                	jne    0x46c904
46c8cc:	a8 01                	test   $0x1,%al
46c8ce:	75 20                	jne    0x46c8f0
46c8d0:	38 5d ff             	cmp    %bl,-0x1(%ebp)
46c8d3:	74 11                	je     0x46c8e6
46c8d5:	6a 22                	push   $0x22
46c8d7:	5e                   	pop    %esi
46c8d8:	66 39 71 02          	cmp    %si,0x2(%ecx)
46c8dc:	6a 5c                	push   $0x5c
46c8de:	5e                   	pop    %esi
46c8df:	75 05                	jne    0x46c8e6
46c8e1:	83 c1 02             	add    $0x2,%ecx
46c8e4:	eb 0a                	jmp    0x46c8f0
46c8e6:	38 5d ff             	cmp    %bl,-0x1(%ebp)
46c8e9:	89 5d f0             	mov    %ebx,-0x10(%ebp)
46c8ec:	0f 94 45 ff          	sete   -0x1(%ebp)
46c8f0:	8b 7d 18             	mov    0x18(%ebp),%edi
46c8f3:	d1 e8                	shr    $1,%eax
46c8f5:	eb 0d                	jmp    0x46c904
46c8f7:	48                   	dec    %eax
46c8f8:	85 d2                	test   %edx,%edx
46c8fa:	74 06                	je     0x46c902
46c8fc:	66 89 32             	mov    %si,(%edx)
46c8ff:	83 c2 02             	add    $0x2,%edx
46c902:	ff 07                	incl   (%edi)
46c904:	85 c0                	test   %eax,%eax
46c906:	75 ef                	jne    0x46c8f7
46c908:	0f b7 01             	movzwl (%ecx),%eax
46c90b:	66 85 c0             	test   %ax,%ax
46c90e:	74 2a                	je     0x46c93a
46c910:	38 5d ff             	cmp    %bl,-0x1(%ebp)
46c913:	75 0c                	jne    0x46c921
46c915:	66 3b 45 f8          	cmp    -0x8(%ebp),%ax
46c919:	74 1f                	je     0x46c93a
46c91b:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
46c91f:	74 19                	je     0x46c93a
46c921:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
46c924:	74 0c                	je     0x46c932
46c926:	85 d2                	test   %edx,%edx
46c928:	74 06                	je     0x46c930
46c92a:	66 89 02             	mov    %ax,(%edx)
46c92d:	83 c2 02             	add    $0x2,%edx
46c930:	ff 07                	incl   (%edi)
46c932:	83 c1 02             	add    $0x2,%ecx
46c935:	e9 73 ff ff ff       	jmp    0x46c8ad
46c93a:	8b 75 0c             	mov    0xc(%ebp),%esi
46c93d:	8b 5d 14             	mov    0x14(%ebp),%ebx
46c940:	85 d2                	test   %edx,%edx
46c942:	74 08                	je     0x46c94c
46c944:	33 c0                	xor    %eax,%eax
46c946:	66 89 02             	mov    %ax,(%edx)
46c949:	83 c2 02             	add    $0x2,%edx
46c94c:	ff 07                	incl   (%edi)
46c94e:	33 c0                	xor    %eax,%eax
46c950:	e9 1d ff ff ff       	jmp    0x46c872
46c955:	85 f6                	test   %esi,%esi
46c957:	74 02                	je     0x46c95b
46c959:	89 06                	mov    %eax,(%esi)
46c95b:	ff 03                	incl   (%ebx)
46c95d:	5f                   	pop    %edi
46c95e:	5e                   	pop    %esi
46c95f:	5b                   	pop    %ebx
46c960:	8b e5                	mov    %ebp,%esp
46c962:	5d                   	pop    %ebp
46c963:	c3                   	ret
46c964:	8b ff                	mov    %edi,%edi
46c966:	55                   	push   %ebp
46c967:	8b ec                	mov    %esp,%ebp
46c969:	8b 45 08             	mov    0x8(%ebp),%eax
46c96c:	8b 00                	mov    (%eax),%eax
46c96e:	a3 00 bf 4b 00       	mov    %eax,0x4bbf00
46c973:	5d                   	pop    %ebp
46c974:	c3                   	ret
46c975:	8b ff                	mov    %edi,%edi
46c977:	55                   	push   %ebp
46c978:	8b ec                	mov    %esp,%ebp
46c97a:	8b 45 08             	mov    0x8(%ebp),%eax
46c97d:	8b 00                	mov    (%eax),%eax
46c97f:	a3 04 bf 4b 00       	mov    %eax,0x4bbf04
46c984:	5d                   	pop    %ebp
46c985:	c3                   	ret
46c986:	8b ff                	mov    %edi,%edi
46c988:	55                   	push   %ebp
46c989:	8b ec                	mov    %esp,%ebp
46c98b:	8b 45 08             	mov    0x8(%ebp),%eax
46c98e:	89 01                	mov    %eax,(%ecx)
46c990:	8b c1                	mov    %ecx,%eax
46c992:	5d                   	pop    %ebp
46c993:	c2 04 00             	ret    $0x4
46c996:	8b ff                	mov    %edi,%edi
46c998:	55                   	push   %ebp
46c999:	8b ec                	mov    %esp,%ebp
46c99b:	8b 45 08             	mov    0x8(%ebp),%eax