It depends on the microcontroller of course, but in general from all commercial products you can expect that the microcontrollers are read-protected.
This means that
- ... you cannot read the machine code (to prevent you from taking the code and changing a few bits, or using parts of the code in other products);
- ... you cannot reprogramming the chip, unless you completely erase everything (see PIC Write-Protect Behavior).
So yes, it is theoretically possible to reprogram the chip, but you'll have to start from scratch.
And again, the answer may be different for different chips.
Also, it might be necessary to temporarily disconnect the chip from the circuit during programming as the surrounding circuitry might interfere with the programmer.