It’s not malformed. data.data.message is a JSON string itself.
psSocket.onmessage = function (data) {
data = JSON.parse(data);
switch (data.type) {
case "MESSAGE":
var message = JSON.parse(data.data.message);
console.log(message);
}
}