Как проанализировать программу на уязвимость?
Берете IDA, берете отладчик. Открываете в Иде файл, долго вкуриваете, ищете подозрительные места, проверяете в отладчике свои догадки. Для автоматизации очень долго вкуриваете что такое IDA, что такое Assembler под целевой камень, как все это работает, потом пишете скрипт на Питоне для Иды, который будет искать подозрительные места.
Реверс-инжиниринг - это цела индустрия. Там крутятся огромные деньги. Специ годами ковыряют чужой код в поисках уязвимостей. Каждая свеженайденная еще неспаленная (и неприкрытая разработчиком) zero-day уязвимость стоит десятки, иногда сотни (дыры в ОС) тысяч долларов. Даже АНБ не брезгует их скупать на черном рынке (у Сноудена об этом что-то было).
А вы говорите "программы-анализаторы"... Если бы такая программа существовала, то это был бы просто станок, печатающий деньги.