As explained in the previous thread, the encryption is fully handled by the SharpAESCrypt library. It uses the AES Crypt file format (V2). This documentation might be interesting to you:
There seems to be a separate session key for each file, stored at the beginning of the encrypted data. There is also a SHA-256 hash for the data. Only the backup password is used as the basis for encryption, although there seems to be some kind of key derivation implemented in the library.
For the other questions, please look at the source code of the library. There does not seem to be much documentation about this.
SetupHelper might be a good place to start: