Если застрявшим, вы имеете в виду, что ваш графический интерфейс перестает работать, вам следует рассмотреть возможность запуска функции разбора в фоновом потоке. Это обеспечит работу вашего пользовательского интерфейса во время анализа файла.
Здесь - статья о реализации асинхронных обратных вызовов в .Net. На самом деле он написан на C #, но, надеюсь, вы сможете перевести его на VB.Net.