У меня возникла необходимость(или скорее прихоть извлечь алгоритм из одной DLL, причем именно алгоритм, а не код. Она написана на Delphi, и я с трудом продираюсь через это безобразие, и только только подхожу к открытию рабочего файла. Очень много времени уходит на всяческие процедуры с резервированием памяти, бессмысленным перекидыванием строк и т. п. Вопрос: Есть ли возможность где нибудь посмотреть назначение кучи системных процедур которые идентифицирует Ida, например с такими витеватыми названиями: @System@@LStrCat3$qqrv unknown_libname_14 @System@@ClassCreate$qqrp17System@TMetaClasso и т. п. А то жалко времени разбираться с каждой...
Serg50 Посмотреть можно, во-первых, в исходниках, поставляемых с каждой версией Дельфи (в соответствующих модулях system.pas,...), правда, назначение там не описано, смысл можно понять (если его не знаешь) из исходного кода. В ваших двух примерах первая функция конкатенатит две строки, передаваемые ей через регистры edx и ecx, результат помещается по адресу, заданному регистром eax. Вторая функция создает экземпляр класса. Во-вторых, можно взять мой реконструктор IDR (Interactive Delphi Reconstructor) и посмотреть все это безобразие в нем. В нем, в частночти, можно посмотреть прототипы всех функций и процедур, которые будут распознаны во время анализа, более того, некоторые юзерские функции тоже могут быть с прототипом (частично или полностью). Если нужна ссылка, обращайтесь в личку.