To try and get Cocoa to read such a file line by line just isn't interesting. Cocoa isn't set up to do that kind of work, so it would be both not interesting and not trivial.
There are several ways to approach this problem. How big is this text file going to be? If it is a small file (less than 50 megabytes), just let Cocoa do the work for you. You can read the entire file into a string, then do "rangeOfString" or "rangeOfCharactersInSet" to walk through string, looking for "NATEntry" and "endEntry". You'll probably have to use "rangeOfCharactersInSet" to properly handle whatever line ending the .NET program is using. That is about as low-level and difficult as Cocoa gets.
Personally, I would consider it
much more fun to span a Perl process to do the work for me. The RegEx would look something like:
s/^NATEntry$^([^=]+)$^s(.*)s$^endEntry$/gsm;
(I haven't tried this regex and I don't know if it will work. Part of the fun is figuring that out.)
Basically, just write a Perl script that takes such a .NET file (read over standard input) and then formats it into XML and prints it out on standard output. Your Cocoa script will then spawn that Perl process, rerouting its input to be that file and its output to a pipe back to itself. Then, treat the output of that Perl script as Propertylist data (which it will be) and store it into an NSDictionary. At that point, you have truly converted the file into a native MacOS X format. You can do anything you want with it.
That is an interesting way to approach this problem. If you are interested, I would be more than happy to help. If you just want to parse the text file, you'll have to figure that out on your own. Trust me though, what I have described is very little code (either Perl or Cocoa) and would be very robust. Hand-rolled line parsing code would be harder and less reliable.