When you are brute-forcing, three things matter:
- The time required to test one key.
- The size of the key space.
- The order that you test the keys in.
The WinAce FAQ seems to suggest that they use 160bit Blowfish. Blowfish has a slow key setup meaning that brute-forcing anything encrypted with Blowfish will be slow compared to simply encrypting or decrypting with Blowfish. Unfortunately, I'm not able to guess how many keys you could check per second with your machine.
The size of the key space depends on several factors. You know that the password is 20-odd characters long and includes symbols. While this sounds bad at first, it means that you can ignore any passwords that are less than 20 characters long and you can ignore any passwords that are more than 20 characters long. You can also ignore any passwords that only contain numbers or only contain letters. This isn't going to make the key space small but it will certainly make it a lot smaller than it would have been had you not know that extra information about the password. Unfortunately, when it comes to key space sizes, the length of the password trumps the complexity by a very, very long way. Even if you only used numbers in this password, at 20 characters long the key space would be roughly the same size as a 10-character password that used numbers, symbols and both upper and lower case letters.
The order you test the keys in is the most important part. If you check the correct key first then the brute-forcing attempt will take milliseconds. If the correct key is the very last one you are planning on checking then it will take thousands of years. Anything you can do that moves the correct key closer to the start of the keys you intend to check is worthwhile.
If you even think you know something about the password, changing the order that you try the passwords to move those ones towards the start will likely make the cracking faster. A vague memory of typing an 'e' or that it had a '0' near the end could make all the difference.
Something that data recovery companies do is to scan your entire hard drive and use every ascii string they find to form a dictionary that they use to attempt to crack the file first. Key management is hard to get right and it's not all that unlikely that the password in question has ended up on your hard drive at some point. This will probably only take a few days and will be highly worthwhile.
I just did a quick calculation on how long it would take to exhaust the entire key space size assuming you could make 1 billion attempts per second (which is unrealistic) and only including passwords that are exactly 20 characters long and, unfortunately, I don't even know the SI prefix for the number of years I came up with. If the hard-drive-strings idea doesn't work, I think it would be quicker and easier to re-create the file from scratch.