Oder du kopierst eben die Datei (TFile.Copy), anstatt sie sinnlos einzulesen und neu zu speichern,
bzw. liest sie zumindestens nicht in eine TStringList (welche das Encoding ändert), sondern ein Array oder einen Stream.
An einen Stream habe ich noch gar nicht gedacht. Werde ich gleich mal ausprobieren danke hierfür.