Сегодня смотрел обсидиум на боликах.Впринципе ничё серьёзного не заметил и прогу распаковал,только осталось несколько вопросов.
В коде встречается динамическая раскриптовка вида:
004XXXXX 68 90000000 PUSH 90
004XXXXX FF15 E267C000 CALL DWORD PTR DS:[C067E2]
Это лечится бинарным копирование после расшифровки и занопливаем затем ненужных криптующих и раскриптующих call.
Ещё в коде встречается такое:
00793857 55 PUSH EBP
00793858 68 3E397900 PUSH 0079393E
0079385D 64:FF30 PUSH DWORD PTR FS:[EAX]
00793860 64:8920 MOV DWORD PTR FS:[EAX],ESP
00793863 FF15 E667C000 CALL DWORD PTR DS:[C067E6]---------------------------------------------------------------------- ----------
тут мусор
---------------------------------------------------------------------- ----------
jmp на нормальный код
Весь этот мусор отрабатывает в секции протектора.Я никак чё-то не додумаюсь как эту хрень восстанавливать.С этой хернёй я боролся так: просто прилепил к дампу две секции протектора.Плюс конечно есть:не нужно востанавливать динамическую раскриптовку и прекрасно работают апи обсида.Возможно будет работать и регистрация.Не знаю не проверял.Но как-то не красиво получается,хочется обойтись без секций прота.Хотелось бы услышать кто как справляется с этим.

Далее нашёл апи обсида:
0054783C - FF25 983E9B00 JMP DWORD PTR DS:[9B3E98] ; \GetRegState
00547842 8BC0 MOV EAX,EAX
00547844 - FF25 943E9B00 JMP DWORD PTR DS:[9B3E94] ; \name
0054784A 8BC0 MOV EAX,EAX
0054784C - FF25 903E9B00 JMP DWORD PTR DS:[9B3E90] ; \trial day
00547852 8BC0 MOV EAX,EAX
00547854 - FF25 8C3E9B00 JMP DWORD PTR DS:[9B3E8C] ;
0054785A 8BC0 MOV EAX,EAX
0054785C - FF25 883E9B00 JMP DWORD PTR DS:[9B3E88] ; \CheckRegCode
Не могу понять нахера ещё одна апи.Для ключа что-ли?И как точно можно узнать что считывает каждая апи.Ну с CheckRegCode понятно:один раз считывается при проверке имени и ключа,а вот с остальными.....Трейсить эти апи в оригинале у меня не получается,слишком много исключений