Inside any function declared (anywhere) and invoked as follows this will be window object
function anyFunc(){
    alert(this);  // window object
}
anyFunc();
var anyFunc2 = function(){
    alert(this);  // window object
}
anyFunc2();
If you want to create private functions and access the instance of 'myObject' you can follow either of the following methods
One
module = (function () {
    var privateFunc = function() {
        alert(this);
    }
    var myObject = {
        publicMethod: function() {
            privateFunc.apply(this); // or privateFunc.call(this);
        }
    };
    return myObject;
}());
module.publicMethod();
Two
module = (function () {
    var _this; // proxy variable for instance
    var privateFunc = function() {
        alert(_this);
    }
    var myObject = {
        publicMethod: function() {
            privateFunc();
        }
    };
    _this = myObject;
    return myObject;
}());
module.publicMethod();
These are solutions to your issue. I would recommend using prototype based objects.
EDIT:
You can use the first method. 
In fact here myObject is in the same scope as privateFunc and you can directly use it inside the function 
 var privateFunc = function() {
     alert(myObject);
 }
The real scenario were you can use a proxy for this is shown below. You can use call also.
Module = function () {
    var _this; // proxy variable for instance
    var privateFunc = function() {
        alert(this + "," + _this);
    }
    this.publicMethod = function() {
        privateFunc(); // alerts [object Window],[object Object]
        privateFunc.call(this); // alerts [object Object],[object Object]
    }
    _this = this;
    return this;
};
var module = new Module();
module.publicMethod();