Yup. Try this for size:
if(isequal([BOOKTITLE],Unknown Booktitle,1),if(isequal([AUTHOR],Unknown Author,1),replace(removeleft([filename (path)],3),_,/\),\[Media Sub Type]\[genre]\[AUTHOR]),if(isequal([SERIESTITLE],Unknown Seriestitle,1),\[BOOKTITLE],\[SERIESTITLE]\[SERIESTITLE] Book [SERIESVOLUME] [BOOKTITLE]))
if both BOOKTITLE and AUTHOR are empty, MC should leave the files where they are, providing they are on the same drive as specified in the "base path" field. If you have specified a directory in the Base Path field, "X:\Directory" as opposed to "X:", the bold, red, '3' tells MC how many characters to remove from the start of the [filename (path)] field.
if BOOKTITLE is not empty, then jump directly to the SERIESTITLE questions
if BOOKTITLE is empty, but AUTHOR is not, then do the [media subtype] thing.
Note that [AUTHOR] is only queried if BOOKTITLE is empty, if you want to cover situations where [BOOKTITLE] and [AUTHOR] are both populated, you will need to add that as a new branch to the expression.
-marko.