decrypt a Twofish encrypted file
#1
Question 
I have a 50MiB encrypted file which was created with Sentry 2020(version 2.8) for Windows Mobile. This 50MiB file is a virtual volume which appears as a directory in Windows Mobile root directory once the correct password is provided and volume is mounted. Along with the 50MiB encrypted file, there is a 760 byte key-file:

Code:
root@T60:~# hexdump -C /media/0C64-8931/encrypted2.key 00000000 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 |................| 00000010 01 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00 |................| 00000020 00 00 00 00 41 00 00 00 00 1a 71 18 02 00 00 00 |....A.....q.....| 00000030 00 00 00 00 5e f8 cf 93 02 00 00 00 0a 00 00 00 |....^...........| 00000040 98 00 00 00 00 00 00 00 45 df 28 34 dd 14 bf 6d |........E.(4...n| 00000050 5b 5b c5 a2 78 68 e4 ab f8 13 2d 0d 07 ab 1e fd |[[..xh....-.....| 00000060 b8 66 41 ea 43 51 49 9c c5 8a 9b 52 2d 2b e8 6c |.fA.CQI....R-+.l| 00000070 2d 7e 1d 7f 40 66 a6 77 2a 1a 80 33 2e 14 71 16 |-~..@f.w*..3..q.| 00000080 3f 26 84 91 ff 03 80 03 40 9f 63 8e 93 45 b0 b2 |?&......@.c..E..| 00000090 a4 e9 17 60 e5 62 d3 e0 5d 0d 06 14 c2 b0 a1 69 |...`.b..]......i| 000000a0 9c 0f 94 fd dc 52 58 0f c6 9c 46 3f c1 b9 92 df |.....RX...F?....| 000000b0 6e 4e 1d c0 9a bc 77 75 c8 71 7c 73 a4 23 da 0a |nN....wu.q|s.#..| 000000c0 b3 c6 cc 2a 70 c8 9f 8a 32 d0 6b c5 2d 6c 18 df |...*p...2.k.-l..| 000000d0 4d ce 48 01 e9 4f 06 c3 7b 8f 84 34 f7 eb 53 01 |M.H..O..{..4..S.| 000000e0 03 00 00 00 02 00 00 00 08 02 00 00 00 00 00 00 |................| 000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 000002f8 root@T60:~#

According to security details of Sentry 2020, this 50MiB file is encrypted using a randomly generated key, which itself is encrypted using a user supplied password. The randomly generated key is stored in a 760 byte key file, encrypted with a user supplied password and a randomly generated "salt" value stored in the same file. This means that once I have decrypted the 760 byte key file I could access the content of the 50MiB file? Is there a way to tell which encryption method is used for a key file? For 50MiB file I chose Twofish encryption with 256 byte key. I would guess that the key file is encrypted with the same method.

Is there a way to brute-force this key-file using hashcat? I guess not as this key-file is probably encrypted with Twofish which is not supported by hashcat. What tool should I use here? In addition, it's important to mention that while my password was ~15 characters long, I *think* I remember the characters and order of character to large extent in the password so number of variations is few thousands.
#2
I solved this in a way that I created a password file with maskprocessor. It contained less than 200k passwords all separated by carriage return and line feed. Then I made a Windows batch script which read those passwords line by line from the password file:

Code:
FOR /F "usebackq delims=" %a in ("C:\Users\winuser\Desktop\passfile.txt") do SentryCommand.exe mount /file test-volume.key /password %a /drive A /timeout 10 /volume encrypted-file

..and used those in Sentry 2020 command line interface:

Code:
Sentry.exe supports following command line options: mount [/volume] file.raw [/key file.key] [/password 12345] dismount [/volume] file.raw
#3
Cool, thanks for letting us now