By the way, "leading zeroes" is a simplified way of describing the target, but it is wrong, and has to stop. The software doesn't check the leading zeroes, and there are times when the leading zeroes are the same, but the target changes. (i.e., 0x0001 and 0x000f both have the same leading zeroes)
Note that the hashes are actually displayed as big endian when you're looking at the block explorers but is in actuality little endian when you're looking in the code.
Which code are you referring to? There are various parts of the repository, to which large numbers are represented in big endian. The hashing is performed using the little endian representation, as outlined by the protocol, if that's what you meant.