

The Legacy of Kim Freding: A Pioneer in BMW Tuning
After the unfortunate passing of Kim Freding, his website (chipster.no) became inaccessible. Kim was a pioneer in the BMW tuning community, known for his invaluable contributions to ECU flashing and checksum calculation tools. One of his most notable creations was the Siemens Flash Tool, which, at the time of its release, was a licensed software.
Sadly, with Kim no longer among us and his family choosing not to maintain the licensing platform, there was no official way to continue using his incredible software. To preserve his legacy and ensure that his work remains accessible to the community, I took it upon myself to develop a keygen.

public static string smethod_4(string string_0)
{
string password = "uV1M/.&{>Q1A`!0T:3,:67)oMy6=0I";
byte[] bytes = Encoding.Unicode.GetBytes(string_0);
using (Aes aes = Aes.Create())
{
Rfc2898DeriveBytes rfc2898DeriveBytes = new Rfc2898DeriveBytes(password, new byte[]{73,118,97,110,32,77,101,100,118,101,100,101,118});
aes.Key = rfc2898DeriveBytes.GetBytes(32);
aes.IV = rfc2898DeriveBytes.GetBytes(16);
using (MemoryStream memoryStream = new MemoryStream())
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, aes.CreateEncryptor(), CryptoStreamMode.Write))
{
cryptoStream.Write(bytes, 0, bytes.Length);
cryptoStream.Close();
}
string_0 = Convert.ToBase64String(memoryStream.ToArray());
}
}
return string_0;
}
By unpacking and deobfuscating the software using de4dot, I was able to locate the function responsible for verifying a valid license. After reversing the logic and porting it to PHP, I was once again able to use Kim's brilliant software—ensuring that his hard work continues to benefit the BMW tuning community.

private function GenerateLicense($hwid)
{
$dev = openssl_pbkdf2('uV1M/.&{>Q1A`!0T:3,:67)oMy6=0I', 'Ivan Medvedev', 48, 1000);
$key = substr($dev, 0, 32);
$iv = substr($dev, 32, 16);
$pass = openssl_encrypt(mb_convert_encoding($hwid, "UCS-2LE", "JIS, eucjp-win, sjis-win"), 'aes256', $key, OPENSSL_RAW_DATA, $iv);
return base64_encode($pass);
}
Thank you, Kim, for everything you’ve done. Your contributions will never be forgotten. Rest in peace.