I agree this sentence is incorrect and doesn’t make sense.
It may have been translated…
However, we say “so” bad to mean extremely bad and because we’re using “so”, “bad” is placed after. Adjectives generally come before a noun but not always. 😉
Quick search in google books shows this sentence word-for-word under the pen of the prolifically published writer, Thomas Fuller. It goes back as far as 1732, and is repeatedly published as-is in subsequent centuries. There are numerous online discussions of this somewhat quaint construction with “but,” but it certainly persists to this day… so we really can’t call it incorrect. At worst it is a correct sentence sporting an ascot or monocle.