Hi shark,
first of all, the cortex_int_disable() disables all interrupts in the core.
Then you have to jump to the boot address. At boot process, you have to make your own flash rutine running in the RAM- that is not easy, of course. That routine would read data from UART and program the flash. After the end of this routine, you will continue in the boot process.
If you want to flash in MQX, that is also possible, but again- you need your flash routine in the RAM. Note that any jump to the address located in the flash area will fail.
Regards,
MartinK