Стандартное логирование спасет отца ....
Выше если надо в мемо
LOG:=FrmMain.MemoLog.Lines;
function TTBrowserToDelphi.get_disk_info(var disk, opt: OleVariant): OleVariant;
var
c:Char;
j: System.Int64;
begin
LOG.ADD('function TTBrowserToDelphi.get_disk_info(var disk, opt: OleVariant): OleVariant;');
LOG.ADD('param1: '+disk+' param2: '+opt);
j:=0;
c := string(disk)[1];
case StrToInt(opt) of
0: j := DiskFree(Ord(c) - 64);
1: j := DiskSize(Ord(c) - 64);
end;
result:=j;
LOG.ADD('result: '+result);
end;
Со стеком ребята лукавят, т.к. имя достать можно, но значения параметров + получение результата довольно не простая задача, т.к. параметр м/б любой тип, в том числе pointer^.pointer^.Pointer^.Value866:TDateTime;
Результат так же может быть любой, в том числе объект, интерфейс, указатель на массив.
Так что забей на универсальность, т.к. получение данных из памяти процесса тех же рекордов будет отличаться от компилятора и настроек + packet record уже даст совсем другой расклад.
Забей, но если есть полгодика свободного времени - флаг в руки.
Может напишешь потом свой декомпилятор делфей, как один автор.