diff --git a/examples/crfc2asn1.pl b/examples/crfc2asn1.pl
index df0a099..c22f81d 100755
--- a/examples/crfc2asn1.pl
+++ b/examples/crfc2asn1.pl
@@ -33,22 +33,29 @@
 		# The least correct way to find the start of ASN
 		# definition.
 		#
-		if(/^[ \t]*END[ \t]*$/) {
+		if(/^[ \t]*END[ \t]*(--.*)?$/) {
 			print STDERR
 			"Missed an ASN.1 grammar before line ". $. ."?\n";
-			unlink($currentFile) or die "Can't remove $!";
-			print STDERR "Removed $currentFile";
 			exit(1);
 		}
 
+		my $modName = '';	# ASN.1 module name
 		my $rfcid = '';
 		$rfcid = $1 . '-' if($ARGV =~ /([a-z0-9]+)/i);
 
-		if(/^[ \t]+([A-Za-z0-9-]+).*DEFINITIONS.*::=/) {
-			$currentFname = $rfcid . $1 . ".asn1";
+		if(/^[ \t]+([A-Z][A-Za-z0-9-]*).*DEFINITIONS.*::=/) {
+			$modName = $1;
+			$currentFname = $rfcid . $modName . ".asn1";
 			$inasn = 1;
-		} elsif(/^[ \t]*([A-Za-z0-9-]+).*{.*iso/) {
-			$currentFname = $rfcid . $1 . ".asn1";
+		} elsif(/^[ \t]*([A-Z][A-Za-z0-9-]*).*{[ \t]*iso/
+		|| /^[ \t]*{[ \t]*iso/) {
+			$modName = $1;
+			unless(length($modName)) {
+				next unless $prevLine =~
+					/^[ \t]*([A-Z][A-Za-z0-9-]*)[ \t]*$/;
+				$modName = $1;
+			}
+			$currentFname = $rfcid . $modName . ".asn1";
 			my @a = ($_);
 			my $i;
 			for($i = 0; $i < 8; $i++) {
@@ -62,10 +69,11 @@
 			}
 			next unless $inasn;
 		} else {
+			$prevLine = $_;
 			next;
 		}
 
-		print STDERR "Found $1 at line $. => $currentFname\n";
+		print STDERR "Found $modName at line $.\n=> Saving as $currentFname\n";
 		open(O, "> $currentFname") or die "Can't open $currentFname";
 		select(O);
 
@@ -77,7 +85,7 @@
 		print "\n";
 	}
 
-	if(/^[ \t]*END[ \t]*$/) {
+	if(/^[ \t]*END[ \t]*(--.*)?$/) {
 		print;
 		select(STDOUT);
 		close(O);
@@ -92,7 +100,7 @@
 	# ASN.1 extraction and do not want to alter the ASN.1 specs.
 	#
 	if(
-/^(.*)((UniversalString|BMPString|UTF8String)\s+::=\s+\[[A-Z]+\s\d+\]\sIMPLICIT\sOCTET\sSTRING)(.*)$/ms
+/^([ \t]*)((UniversalString|BMPString|UTF8String)\s+::=\s+\[[A-Z]+\s\d+\]\sIMPLICIT\sOCTET\sSTRING)(.*)$/ms
 	) {
 		print "\n-- Legacy redefinition of $3 removed by $0:\n";
 		print "$1-- $2 -- $4";
