Here's a quick function that takes the object you want to search,the child object we want to search, and the value we want from that child. It will then look at all the keys in the object and see if they match your value. If one does, it also makes sure that that specific object (not its prototype) has the key. Then it checks if the child object has the desired value, and returns that value.
function findKey(obj, child, value){
for (key in obj) {
if (key === child && obj.hasOwnProperty(child)){
if(obj[child][value]){
return obj[child][value]
}
}
}
}
So if we ran this in the context of your question:
findKey(profiles, "Nicholas_Phillips", "Name");
It would return
"Nicholas_Phillips"
Otherwise it will return undefined