Опираясь на ответ @ Boris: для продолжения действия по умолчанию сохраните ссылку на исходную функцию pushState и затем вызовите ее:
var headID = document.getElementsByTagName("head")[0];
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.src = chrome.extension.getURL('script.js');
headID.appendChild(newScript);
script.js:
window.history.pushState = (function(nativePushState) {
return function(a,b,c) {
// Do something
nativePushState.apply(this, arguments); //Continue by calling native history.pushState
};
})(window.history.pushState)