openocd + stm32f4 flash issue
As you can see the program counter does not reset to its intended location i.e. “0x08000200”


Your understanding of this MCU is not correct. It does NOT start from the flash - it starts from the internal mask ROM at 0x1FFF0000. See refman page 71, for example.

The "reset halt" catches execution early in this ROM location - before checking boot pins and executing either bootloader or user program.