4...Bb4 (?) is suspicious (5.e3 followed by a3 and you have to trade the bishop for nothing).
6...c5 ? slaughters your pawn structure. After move 9 you have a position that occurs in the Rubinstein variation of the Nimzo-Indian defense, with the huge difference in favor of White that the bishop c1 has broken free. Otherwise, White could have played 8.dxc4 and (EDIT : this doesn't work, which makes Black's position even worse) your best is probably 8...Qa5 9.Bxf6 ! Bxc3+ 10.bxc3 (10.Bxc3 ! - Meilan1) Qxc3+ 11.Nd2 gxf6, and even if you will probably be up a pawn (c5 is undefendable) the terrible structure you get is a full compensation.
10...b6 is advantageously by ...Nc6, with maybe the idea of ...Nc6-a5-b3.
22.exd5 ? is almost a tactical mistake. Black gets too much counterplay due to his bishop. Had White played 22.e5 and then traded your bishop, you would have had huge problems on both sides.
24.a4 ? loses a pawn in view of what follows (the queen on c6 attacks it), but 24...Qc6 might be even better than trading rooks at once.
I played a 5|2 blitz with quite drawish positions throughout the game. Towards the end I offered a draw, not noticing that my opponent has under 20 secs left on the clock. He thought for a few seconds and declined.
2 moves later and it's mate in 2. I won on time. He hsould have accepted the draw.
Please analyze for any good/better moves I missed throughout the game. Thanks.