IL2CPP is a challenge, but there are tools that attempt to reverse it back into C#, I
think by recognizing common patterns in conversion from C# to C++.
I've never tried it, but
this appears to be the most popular one right now. Though it hasn't been updated in about two years so your mileage may vary.