keygen
======

By Tejashwi Kalp Taru, https://tejashwi.in

Pure math. It takes a name and prints a serial the keygenme accepts. No
emulator, no copy of the target, no lookup tables.

  go run keygen.go "Tejashwi Kalp Taru"
  Name  : Tejashwi Kalp Taru
  K1    : 62E2868F   K2: D5C10895
  Serial: D007-22A4-39FD-2187

Known-good pairs to check against:

  AAAA                 46ED-7053-AD03-9091
  Test                 ED38-BD05-F96B-4C5F
  Bob                  9E9D-F7E9-5D40-C628
  Tejashwi Kalp Taru   D007-22A4-39FD-2187
  Zaphod42             ECC6-A626-BB29-4584

The serial is a 64-bit value written as 16 hex digits. The first eight digits
land in the high dword. Dashes and spaces are ignored by the parser, so
D007-22A4-39FD-2187 and D00722A439FD2187 are the same input.

Writeup: https://tejashwi.in/defeating-code-virtualization-keygen-writeup/
