Ну по сути надо вызвать последовательно
Код:
HavalInit
HavalUpdate (передать указатель на данные и их объем)
HavalFinal
или воспользоваться готовой оберткой
Код:
var
s, data: string;
begin
data := 'some text';
s := emptystring;
HashBuf(HASH_HAVAL128, PChar(data), length(data), s);
showmessage(s);
end;