FINoM, нормальными средствами — никак. Потребуется либо разбирать код скриптом, чтобы достать объявления переменных, либо писать что-то вроде этого:
Function.prototype.scope = function () {
	var script = this.toString().replace(/function ?.*\([^)]*\)(?:\n|\s|\t)\{/, "").replace(/\}(?:\n|\t|\s)*$/, "").replace(/var +([а-яa-z0-9]+)/gi, "scope.$1");
	var scope = {};
	scope.scope = {};
	with (scope)
		eval(script);
	return scope.scope;
};
var x = function () {
	var p = 123;
};
alert(x.scope().p);
Давно писал. Можно заточить под свои нужды.