Всем уже известно что .Net сборки имеют достаточно открытый формат, позволяющий исследовать не только структуру классов вплоть до каждого члена класса но и дизассемблировать код методов, содержащийся также в сборке и получить вполне структурированный и понятный текст.