Solution:
1...Kxc4[a] 2.Ne3#[A]
1...Bf1[b]/Bxd1[b]/Bd3[b] 2.Nb6#[B]
1...Ne6[c] 2.Nb6#[B]/Ne3#[A]
1...Ke4/Bxc4 2.Nc3#
1.Bxf5? (2.Nb6#[B]/Ne3#[A])
1...Kxc4[a] 2.Ne3#[A]
1...Bxd1[b]/Nxc2 2.Nb6#[B]
1...Bxc4 2.Ne3#[A]/Nc3#
but 1...Nxf5!
4 tries skipped1.Nb6+[B]??
1...Ke4 2.Nc3#
but 1...Ke6!
1.Ne3+[A]??
1...Ke4 2.Bxf5#
but 1...Ke6!
1.Rxd4+??
1...Ke6 2.Qxd6#
but 1...Kxd4!
1.Qxd6+??
1...Kxc4[a] 2.Nb6#[B]/Ne3#[A]/Nb2#
1...Ke4 2.Nc3#/Rxd4#/Qxd4#
but 1...Kxd6!
1.Qh7[C]! zz
1...Kxc4[a]/Rf4[c]/Ne6[c] 2.Ne3#[A]
1...Re5[d]/Bf1[b]/Bxd1[b]/Bd3[b] 2.Nb6#[B]
1...Ke4 2.Qxf5#
1...Ke6/Nxc2/Nc6/Nb3/Nxb5 2.Qf7#
1...Bxc4 2.Nc3#