First off, these are which verb means what, and where to use them:
あげる(subject gives to someone outside your circle)(receiver is labelled with に)
Humble form: 差し上げる {さしあげる}
.
くれる (subject gives to someone in your circle)(receiver is labelled with に)
Honorific form: 下さる {くださる}
.
もらう (subject receives)(giver is labelled with に)
Humble form: いただく
.
So when a sentence has a が and に it becomes a bit clearer. But, to make it hard for us, these often get dropped, because they are obvious to the speaker and listener.
And, even though give and receive might seem to be opposites, it is possible to ask for something using either.
もう少し説明していただいていいですか?Would it be okay if Ireceive a little bit more of an explanation.
(The above puts focus on the receiver)
この問題を説明してくれますか? Could yougive me an explanation to this problem.