The bug is in 13.0 RELEASE. I'm having a look (just for fun/the learning experience) at what's involved trying to fix it by building on another machine.
root@blob:/home/blob # cd /usr/src/
root@blob:/usr/src # fetch
https://download.freebsd.org/ftp/releases/amd64/amd64/13.0-RELEASE/src.txz
root@blob:/usr/src # tar xzvf src.txz
root@blob:/usr/src # mv usr/src/* .
I got my directories a bit mixed up - hence having to mv things around - so above not the recommended steps!
Make the change to sbin/dump/traverse.c
root@blob:/usr/src # make install
And I have a new /sbin/dump ... but it's bigger than the old binary so suspect there's a clean/strip step somewhere along the line. And the src file for 13.0 RELEASE might not be the best starting point, but don't think dump will have changed since release but could be very wrong!
EDIT: nothing wrong with the new binary file size - exactly the same as the old (I haven't made the code change at this point, just seeing if I could build from source easily), just me looking at the wrong thing.
So change line 759 to include the =
759 assert(spcl.c_count + blks <= TP_NINDIR);
Then make clean and make and make install and I have a new binary.
EDIT2: I don't use dump so don't know if this will fix the OP's problem - but the whole process has taken < 30 minutes (src.txz is 153M), so might be of use to you, KernelPanic. But maybe try it all on a test machine, YMMV no warranties etc.!