Huge backfires are usually caused by burned, bent or broken valves. Could also be a slipped timing chain. I am assuming this is a 4 stroke. If it is a 2 stroke maybe a stripped key on the mag. Anyway, the spark is happening when a valve is open.
Big Backfire, no backfire since and sluggish running....Hmmm, is it difficult to start?
You also say the spark looks weak. I would check the charge ingnition coil winding (the one on the stator plate in the side casing) I have has mine fail on a Gas Gas trials bike, and the winding had gone high resistance. I later rewound the coil myself after getting hold of the correct gauge winding wire.
One word of caution though, if the bike has a CDI unit, disconnect all this from the loom before checking the winding, a circuit tester can damage the electronic components if testing is haphazard.
I can't help with what readings you should get when you test the coil, you would need to look in the w/s manual.