It’s extremely awkward to do, as blocks are identified by their mathematical hash, and these don’t combine mathematically if you combine blocks. You need to have all the data around to read, but it’s on the destination.
If you want an extremely experimental tool with limitations based on above limit, you can test this: