I raised a github issue to show you where exactly got a HardFault exception. Seems that there is something wrong with the provided SD132 v4.02 especially in function at address 0x00028720 - this is where I was able to debug without debug information or sources. From what I see the instruction on address 0x002872E loads a wrong pointer to pointer (0x8C5 - note the odd address) and then the instruction on address 0x0028732 loads much wronger address 0xDB681B4B that is used as base to store a byte in the next instruction. After that the arm core obviously get into IMPRECISERR HardFault exception. This problem occurs on each restart.
Is there something that I could do to investigate further or to work around it?