as rico said before, the length you are trying to solve makes my brain hurt, too.
but to address your question about reducing the number of total combinations required:
have a look at the masks/ folder that comes together with cudaHashcat / oclHashcat, e.g. 8char-1l-1u-1d-1s-compliant.hcmask
that's the kind of optimization you have asked for, it's done by defining multiple masks for every possible case and not only one mask for all. -> using ?a?a?a?a... all the way will result in considerably more combinations.
good luck, you will probably need it ;-)
but to address your question about reducing the number of total combinations required:
have a look at the masks/ folder that comes together with cudaHashcat / oclHashcat, e.g. 8char-1l-1u-1d-1s-compliant.hcmask
that's the kind of optimization you have asked for, it's done by defining multiple masks for every possible case and not only one mask for all. -> using ?a?a?a?a... all the way will result in considerably more combinations.
good luck, you will probably need it ;-)