Okay so line A is the most interesting for white, but black can learn a lot by looking at all three.
1.d4 Nf6 2.c4 c5 3.d5 b5 4.cxb5 a6 5.bxa6 g6 6.Nc3 Bxa6 7.e4 Bxf1 8.Kxf1 d6 9.g3 Bg7 10.Kg2 O-O 11.Nf3 Qb6 12.Qe2 Nbd7 13.a4 Rfb8 14.Nb5 Ne8 15.h4 h6 16.Bd2 Bxb2 17.Rab1 Bg7 18.Na3 Qa6 Looks like the only move to me. Black needs queens off in this h4 line.
19.Qxa6 Rxa6 20.Rxb8 Nxb8 21.Rb1 Nd7 21...Ra8 planning ...Na6 was another idea I had, but in this h4 line 22.Rb7 Kf8 23.a5 Na6 24.Nc4 Nec7 25.h5 is very unpleasant for black.
22.a5 Ra7 23.Ne1 Nc7.
This might be an improvement on 23...f5.
Position after 23...Nc7.
I used more than one engine here. I agree black is not equal, but it doesn't look terrible. In a lot of lines after ...h6-h5, when I was wondering why the engine liked white so much, I would play a move for black that wasn't in the PV, and it answered Bg5!
24.Nd3 Kh7 Or 24...f5 25.f3 Kh7. I think the engine's "idea" is simply to free up the Bg7 without playing ...h6-h5.
Probably too slow is 24...h5 25.f3 Bf6 (against g2-g4) 26.Nc4 Kf8 (
26...Kg7 27.Bg5 Bxg5 28.hxg5 f6 29.f4) 27.Kf2 Ke8 28.Ke2 Kd8 29.Bg5. Black has to be wary of white switching the rook to the kingside, either on the f-file or the h-file.
25.f3 f5 I would rather do without ...f7-f5, but waiting passively eventually favored white in every line I looked at.
26.g4 fxe4 27.fxe4 Nf6 28.Nf2 Nd7 29.Nc4 29.Nd3 repeats, if white wants.
29...Ne5 30.Nxe5 Bxe5 Position after 30...Bxe5. Deep HIARCS gives +0.3, Stockfish 8 (don't ask) gives +0.7, neither one at great depth. To my human eye it looks like black can hold. Trying to win would be something else though.