Having troubles recovering a backup

Sorry for the vague title however I’m not entirely sure what’s happening and was wondering how I could extract a backup using CLI tools outside of Duplicati. I’ve downloaded the contents of my backup (from S3) to my local drive and have tried recovering it that way however Duplicati seems to hang until it eventually fails. I was thinking that perhaps my backup is too large? Many files and a few TB but I’m not sure how likely that is.

To aid in debugging, how can I recover a backup from CLI ideally without using Duplicati?

A bit more info here:

root@duplicati:/app/duplicati# mono Duplicati.CommandLine.RecoveryTool.exe restore /source/backup_old/ 0 --targetpath="/source/backup/" --passphrase=""
Sorting index file ... done!
Program crashed:
System.Exception: Unable to create aes decompressor on file /source/backup_old/duplicati-20201201T030000Z.dlist.zip.aes
  at Duplicati.Library.Main.Volumes.VolumeReaderBase.LoadCompressor (System.String compressor, System.IO.Stream stream, Duplicati.Library.Main.Options options) [0x00034] in <8f1de655bd1240739a78684d845cecc8>:0
  at Duplicati.Library.Main.Volumes.VolumeReaderBase.UpdateOptionsFromManifest (System.String compressor, System.String file, Duplicati.Library.Main.Options options) [0x0000a] in <8f1de655bd1240739a78684d845cecc8>:0
  at Duplicati.CommandLine.RecoveryTool.Restore.Run (System.Collections.Generic.List`1[T] args, System.Collections.Generic.Dictionary`2[TKey,TValue] options, Duplicati.Library.Utility.IFilter filter) [0x0012e] in <e9be12affb6f47979004129a9a3a1473>:0
  at Duplicati.CommandLine.RecoveryTool.Program.RealMain (System.String[] _args) [0x00286] in <e9be12affb6f47979004129a9a3a1473>:0
Update "2.0.6.1_beta_2021-05-03" detected
root@duplicati:/app/duplicati#

And I’ve successfully validated and opened a valid zip file after decrypting it with SharpAESCrypt.exe

root@duplicati:/app/duplicati# mono SharpAESCrypt.exe d4 "secret" /source/backup_old/duplicati-i6f5e8d1c75394e24a0b48da306b2b92c.dindex.zip.aes /root/test.zip
root@duplicati:/root# unzip test.zip
Archive:  test.zip
  inflating: manifest
  inflating: vol/duplicati-b79cd5000edd246cd85b0a997f101c503.dblock.zip.aes
root@duplicati:/root# cat manifest
{"Version":2,"Created":"20200614T031700Z","Encoding":"utf8","Blocksize":102400,"BlockHash":"SHA256","FileHash":"SHA256","AppVersion":"2.0.5.1"}
root@duplicati:/root#

Welcome to the forum @Alex_Turner

is the last step of several steps that I suspect weren’t done. The decryption happens at
Downloading all remote files using the Recovery Tool. For an overview of the steps, see
Recovering by using the Duplicati Recovery tool or run RecoveryTool’s help command.

If CLI RecoveryTool is not independent enough, see below for a little-used Python script:

Independent restore program