To ensure that my host wasn't broken, I tried the same image on another machine, that I know can run VMs (virtual machine manager, using the GUI), but same result. One core at 100% and no change at all.
I even let it run over night, but it was still at this point.
One machine runs NixOS, the other Debian 12.
What could cause this? There are no errors in journalctl or /var/log/qemu.
I have also had VMs that hang on boot-up while running a core at 100%. I use Proxmox as my host, and was always able to enter the console for the VM and observe it going through the boot sequence. When it hung as you have described, it was because of some error that I could correct in the console. So, maybe check if your host allows you to interact with the VM while it's booting.