I once wrote a C++ client for a certain site because the official client was written in Delphi and used gigabytes of RAM. It used ed2k hashes and I wrote my own ed2k hash function (it's incredibly simple). That was in 2017. Any more hints would be dangerous ;)