Возможно, вам придется взглянуть на PostSharp, поскольку он может помочь вам внести эту модификацию, добавив новый аспект во время выполнения.
http://www.postsharp.org/aop-net/runtime-weaving
Приятно то, что во время эксперимента вы не меняете программу на диске, так как все изменения происходят при загрузке сборки.
Проблема в том, что вы, вероятно, собираетесь нарушать свое лицензионное соглашение, поскольку любые изменения в их программе запрещены, поэтому вы можете поговорить об этом с юристами вашей компании.
Если вы можете внедрить какой-либо аспект в программу, он должен будет вызвать вашу программу, возможно, как вызов веб-службы, чтобы передать информацию, если вы просто не хотите, чтобы он запускал вашу программу, когда происходит событие, передавая определенные параметры.
Я не пробовал этого, так как мне не нравится ткачество во время выполнения, и я жду PostSharp 2.0, прежде чем я буду гораздо больше экспериментировать с этим инструментом, хотя я широко использовал AspectJ на Java.