Here is the sentence from C. S. Lewis' The Magician's Nephew:
Down and down they rushed, first through darkness and then through a mass of vague and whirling shapes which might have been almost anything.
As far as I know, might refers to the present and future, and might have refers to the past. This sentence is in the past, so I think that might would automatically refer to the same past moment, and might have would refer to the moment that was earlier.
Still, I can't understand the reason of using might have here because it's apparent that the characters' journey and the whirling shapes were at the same time.
Why is might have used here, and what would the meaning be if we used might?