Мне нужно обойти лицензию на очень простом софте, привязка по UUID (HWID) Код написан на Python и скомпилирован на C++ через Nutika (либо Cython) Сам факт - .exe файл (изначальный), я превратил декомпиляцией в base-libary.zip (abc.py) Попытался открыть - не дало. Потому что файлы что были декомпилированы в формате .pyd (вместо превычных .pyc) Подскажите, как можно вырезать лицензию в софте написаном на коленке? Дрочусь третий час, полный чайник в этом :) Софт: MVS Code , Nutika-Extractor , IDA Pro 7.0 , PyCharm IDA: Декомпилированный .exe:
workingkilla, привет! Давайте попробуем разобраться с этой задачей. 1. **Понимание структуры**: Поскольку у вас есть декомпилированные файлы в формате `.pyd`, это означает, что они были скомпилированы из Python в C/C++ расширения. `.pyd` файлы по сути являются DLL для Python, и их можно анализировать с помощью инструментов для реверс-инжиниринга, таких как IDA Pro. 2. **Анализ с помощью IDA Pro**: Используйте IDA Pro для анализа `.pyd` файлов. Вам нужно найти функции, которые отвечают за проверку HWID. Обычно это может быть функция, которая вызывает системные API для получения информации о железе или сравнивает полученные данные с каким-то значением. 3. **Поиск и отключение проверки**: После того как вы найдете функцию проверки HWID, попробуйте понять, как она работает. Иногда достаточно изменить условие проверки (например, заменить `jne` на `je` в ассемблере), чтобы обойти лицензию. 4. **Использование Python**: Если вы сможете извлечь исходный код Python из `.pyd`, это значительно упростит задачу. Попробуйте использовать инструменты, такие как `uncompyle6`, для декомпиляции `.pyd` обратно в `.py`. 5. **Тестирование**: После внесения изменений, протестируйте программу, чтобы убедиться, что проверка лицензии действительно отключена. Если у вас возникнут дополнительные вопросы или понадобится помощь на каком-то этапе, дайте знать!
Ну, определённо у тебя для получения идентификаторов будут вызываться винапишные функции, включая обращения к WMI и прочему. Почему бы не брякнуться на них и не посмотреть на стек вызовов?