Hola.
Algo que noto en la función
FindPattern, es que la variable
f no está inicializada:
Código Delphi
[-]
function FindPattern(dwAddress, dwLen : Cardinal; bMask : PBYTE; szMask : PCHAR) : Cardinal ; stdcall;
var
f : Cardinal;
begin
while f < dwLen do
...
Luego en la salida con
Writeln, tendrías que indicarle el formato hexa:
Código Delphi
[-]
...
WriteLn( IntToHex(FindPattern(i,j,k,l), 8) );
Fijate si esas observaciones te son útiles, de no ser así, avisa y seguimos revisando.
Saludos