We use bernsteins chosen algorithms here (NaCL is very good at ensuring correct algorithms are used in correct way, folks could choose ecb etc. if we allowed easy change here, which may be bad). I think it would be unwise to alter this really as it would very likely be less secure and would break de-duplication making the network less efficient really.
Plus the self encryption algorithm only uses encryption to create incompressible data, not for it’s encryption strength. The XOR stage adds the obfuscation of two “random sources”, these sources are the SHA512 HASH’s and encrypt stage output. It’s not obvious but the output from AES by definition should be pseudo random (i.e. not repeating). Any strong symmetric cipher should produce pseudo random or incompressible output. Cryptographers could debate these terms for decades, but the case is unknown data encrypted gives what should be unrecognisable output with non repeating pattern. SHA security is similar by any differing input should give a uniform random output (uniform across the address range).
So XORing these together gives the last stage in the self encryption process. (note XOR != encrypt)