Can someone please give me some pointers (or point me to some
documentation) that tells me in general how to go about making an
extension that modifies the function called when a standard button
(e.g. the Reply All button) is clicked? All I can find is docs on
how to add new buttons via an extension.

I found in the mailWindowOverlay.js file this function related to the
Reply All button:

function MsgReplyToAllMessage(event)
var loadedFolder = GetLoadedMsgFolder();
var messageArray = GetSelectedMessages();

(event && event.shiftKey) ? msgComposeFormat.OppositeOfDefault :
loadedFolder, messageArray);

And I changed it to include this snippet before the ComposeMessage()
call, and made a replacement messenger.jar file:

if (!promptService.confirm(window, "Really Reply To All?", "Are you
sure you really want to reply to everyone?"))

But how do I do this with an extension - so that I don't have to
rebuild messenger.jar for every install / update ?