I had a little free time today, so I created a quick keygen in Delphi:
Code:
procedure TForm1.Button1Click(Sender: TObject);
var
Hash: TDCP_sha256;
hashBytes:array[0..31] of byte;
EAX1,I,EBX1:cardinal;
begin
Hash:= TDCP_sha256.Create(nil);
Hash.Init;
Hash.UpdateStr(AnsiString(edit1.Text));
Hash.Final(hashBytes);
Hash.Free;
EAX1:=0;
EBX1:=0;
for I := 0 to 31 do begin
EBX1:=hashBytes[I];
if EBX1=0 then
break
else
EBX1:=(EBX1*I);
EAX1:=EAX1+(EBX1*ebx1+$50);
end;
edit2.Text:=inttostr(eax1 xor $12345678);
end;