Does ...Nxg4 really work? [Title "Black to move"]
[StartFlipped "0"]
[fen "r4rk1/pp1nbppp/2p1pn2/q6b/2B2BP1/2NP1N1P/PPP2P2/R2QR1K1 b - - 0 1"]


White has just played g4, after which I have replied ...Bg6. 

I have uploaded the position online for brief computer analysis, and engine suggested ...Nxg4 as best. 

The lines were skimpy, and I could not understand/learn how to proceed after the knight sacrifice.

QUESTION:

Can someone offer detailed analysis after ...Nxg4 ?

I need analysis of all relevant lines and branches, because I want to learn why is ...Nxg4 good in the above position.

Long story short, I have no access to engine, that is why I asked the question.
1... Nxg4 works (?) because it allows Black to force a draw.

[FEN "r4rk1/pp1nbppp/2p1pn2/q6b/2B2BP1/2NP1N1P/PPP2P2/R2QR1K1 b - - 0 1"]

1... Nxg4 2.hxg4 Bxg4 3.Kg2 (3.Re3 Qh5 4.Kg2 e5 5.Bg3 Qh3+ 6.Kg1 b5 7.Bb3 a5 8.a4 Qh5) Qf5 4.Bg3 Bh3+ 5.Kg1 Bg4 6.Kg2


Now here's Stockfish's Bg6 variation. I think it's kinda whacked. White sacrifices a few pieces to achieve a perpetual check. It is instructional in that it shows that White can choose this outcome. It never would have occurred to me to even look for it. The 11. Ne5 variation within the diagram below shows that White doesn't have to settle for that draw; instead, the Knight move keeps the game going by ceding a meaningless -.08 advantage.

I think Bg6 is completely playable if Black is seeking more than a draw.



    [FEN "r4rk1/pp1nbppp/2p1pn2/q6b/2B2BP1/2NP1N1P/PPP2P2/R2QR1K1 b - - 0 1"]

    1... Bg6 2.Bb3 Nd5 3.Nxd5 cxd5 4.d4 h6 5.c3 Rac8 6.a4 Be4 7.Nd2 Bh7 8.Nf3 Nb6 9.Bc2 Bxc2 10.Qxc2 Nc4 11.Bxh6 (11. Ne5 Nxe5 12.Bxe5 Qd8 13.a5 Rc4 14.Bg3 Qd7 15.Kg2 b5 16.axb6 axb6 17.f4 b5 18.f5 b4 19.fxe6 fxe6 20.Rf1 Bf6 21.Qd3 Rfc8 22.Be1 e5 23.dxe5 Bxe5 24.Ra5 bxc3 25.bxc3 Bxc3 26.Bxc3 Rxc3 27.Qxd5+ Qxd5+ 28.Rxd5) gxh6 12.Rxe6 fxe6 13.Qg6+ Kh8 14.Qxh6+ Kg8 15.Qxe6+ Kh8 16.Qh6+ Kg8 17.Qe6+ 



It's 11:40pm here and it's racktime. If you have specific variations you want to see, let me know.

EDIT - ALNS has perhaps found a playable variation for White though it is not for the faint-hearted. White is down a pawn but has a passed center pawn.

[FEN "r4rk1/pp1nbppp/2p1pn2/q6b/2B2BP1/2NP1N1P/PPP2P2/R2QR1K1 b - - 0 1"]

1... Nxg4 2. hxg4 Bxg4 3. Re3 Qh5 4.Ne4 e5 5.Ng3 Qh3 6.Bxe5 Nxe5 7.Rxe5 Bh4 8.Qf1 Qxf1+ 9.Nxf1 Bxf3 10.Nh2 Bd5 11.Bxd5 Bf6 12.Rf5 cxd5 13.Rxd5 {with Stockfish rating Black slightly better.}