"for allowing" after "state laws" is incorrect.
The meaning that "the state laws allow X" is not clear. Had it been "state laws that allow X" then this option would have been correct.because it conveys "grounds of violating state laws because the ban allowed X. (which sounds ambiguous)
b) "their" is not clear
c) state laws still allow X , so past tense "allowed" is incorrect
e) being - it can be written in a concise way.
lastly
d) that refers to grounds , it (may seem ambiguous but among other options u can let it go, refers to the ban) , ban violated the state laws (which allow X) or state laws allowing X (present participle form)-- hence correct.
overall, just reject the wrong ones and narrow it down. then choose.