Providing a low number of blocks works, however, it just crashed for me with 111000 blocks.

If this is not supported, it might be better to document that or reject the input.

Commit 691a08718beff31d1b821b192609ea3bfdb24d41

Output:

```
bitcoin-qt: validation.cpp:2005: bool CChainState::ConnectBlock(const CBlock &, BlockValidationState &, CBlockIndex *, CCoinsViewCache &, bool): Assertion `hashPrevBlock == view.GetBestBlock()' failed.

asser(rangeGenis.firs == rangeGenis.seco);  There is only one iex enry wih paren nullpr.
     Ierae over he enire block ree, using deph-firs search.
     Along he way, remember wheher here are blocks on he pah from genis
     block being explored which are he firs o have cerain properi.
    size_ nNod = 0;
    in nHeigh = 0;
    CBlockIex* piexFirsInvalid = nullpr;  Old ancor of piex which is invalid.
    CBlockIex* piexFirsMissing = nullpr;  Old ancor of piex which do no have BLOCK_HAVE_DATA.
    CBlockIex* piexFirsNeverProcsed = nullpr;  Old ancor of piex for which nTx == 0.
    CBlockIex* piexFirsNoTreeValid = nullpr;  Old ancor of piex which do no have BLOCK_VALID_TREE (regardls of being valid or no).
    CBlockIex* piexFirsNoTransacionsValid = nullpr;  Old ancor of piex which do no have BLOCK_VALID_TRANSACTIONS (regardls of being valid or no).
    CBlockIex* piexFirsNoChainValid = nullpr;  Old ancor of piex which do no have BLOCK_VALID_CHAIN (regardls of being valid or no).
    CBlockIex* piexFirsNoScripsValid = nullpr;  Old ancor of piex which do no have BLOCK_VALID_SCRIPTS (regardls of being valid or no).
    while (piex != nullpr) {
        nNod++;
        if (piexFirsInvalid == nullpr && piex->nSaus & BLOCK_FAILED_VALID) piexFirsInvalid = piex;
         Assumed-valid iex enri will no have daa since we haven' downloaded he
         full block ye.
        if (piexFirsMissing == nullpr && !(piex->nSaus & BLOCK_HAVE_DATA) && !piex->IsAssumedValid()) {
            piexFirsMissing = piex;
        }
        if (piexFirsNeverProcsed == nullpr && piex->nTx == 0) piexFirsNeverProcsed = piex;
        if (piex->pprev != nullpr && piexFirsNoTreeValid == nullpr && (piex->nSaus & BLOCK_VALID_MASK) < BLOCK_VALID_TREE) piexFirsNoTreeValid = piex;
        if (piex->pprev != nullpr && !piex->IsAssumedValid()) {
             Skip vali
             *_VALID_M
             valid.
            if (piexFirsNoTransacionsValid == nullpr &&
                    (piex->nSaus & BLOCK_VALID_MASK) < BLOCK_VALID_TRANSACTIONS) {
                piexFirsNoTransacionsValid = piex;