Hab das Problem bei der
Unit gefunden und das ohne Debugger
Tritt nur bei Computern mit mehr als einer CPU auf.
Bindet mal das Programm per Taskmanager immer auf den einen Core => Dann kommt immer der erste Key.
Dann einmal auf den anderen Core binden => Es kommt immer der zweite Key generiert.
Warum der Key also spontan wechselt ist leicht erklärt. Windows lässt den Code mal in Core 1 und mal in Core 2 laufen je nachdem welcher gerade weniger belastet ist.
Also entweder du überarbeitest die
Unit damit immer die gleiche CPUID erzeugt wird oder du nimmst das bei der Berechnung einfach raus.