xcom (PTS)
xcom, or pts-xcom, is a DOS utility. It converts a COM file to one whose bytes all belong to a certain set of ASCII characters, and which still has the same functionality. It was developed by Péter Szabó. Most of the documentation is in Hungarian.
For some similar utilities, see Executable envelopes#Transfer-encoded executables.
Discussion
The utility seems to be designed to be very small, at the expense of things like user-friendliness.
It has a feature to recover the original file. In fact, that's the default mode of operation.
It can also encode an arbitrary data file as printable ASCII, but the result is just raw data, not much of a file format.
The example commands below are from the documentation. Note that the xcom1.com file is just the xcom-encoded version of xcom.com.
To encode a COM file:
xcom1 - <original.com >ascii.com
To decode a COM file:
xcom1 <ascii.com >original.com
Identification
Only the version identified as 2.2 - 1996-09-10 - revised 2016-03-22 has been evaluated. Other versions are presumably different.
The first 128 bytes of an encoded COM file are always the same. The bytes can be found in the source code, or the xcom1.com file.
The first 16 bytes are ASCII "&XPZ,2P_0E[0E_,p
". The signature "PSW
" appears at offset 123.