In this paper, we consider the resource allocation problem for multicast over IEEE 802.16j WiMAX networks, which use relay stations to transmit data between the base station and subscriber stations to improve the transmission quality. Our objective is to maximize the total number of recipients by allocating resource among the base station and relay stations subject to the resource budget and the channel quality. We prove that the problem is NP-hard, and design a polynomial-time algorithm to solve it. The algorithm can be integrated with the multicast mechanism defined in the WiMAX standards, and can also be applied to any kind of wireless networks that support adaptive modulation and coding schemes. The performance of the algorithm is evaluated through simulations. We show that the typical routing approach is inefficient, whereas our scheme can always utilize relay stations to achieve a superior performance under different channel qualities and resource budgets.