According to my engine, 4... Bc5?? is a blunder that loses 3 points after 5. Nxf7 Bxf2 6. Kf1!. Even after your 6. Kxf2? Nxe4, white is still up two points.
This one of the rare case where you engine is wrong,(maybe) there's alot of debate about the soundness of this line. The position is so ridiculous engines can't give accurate analysis.
1.e4 e5 2.Nf3 Nc6 3.Bc4 Nf6 4.Ng5 Bc5 5.Nxf7 Bxf2+ is equal according to theory.
Hmm... maybe someone with a better engine should run it overnight or something. I only have Shredder for iPhone, and I stopped the analysis after depth 14.

According to my engine, 4... Bc5?? is a blunder that loses 3 points after 5. Nxf7 Bxf2 6. Kf1!. Even after your 6. Kxf2? Nxe4, white is still up two points.
This one of the rare case where you engine is wrong,(maybe) there's alot of debate about the soundness of this line. The position is so ridiculous engines can't give accurate analysis.
1.e4 e5 2.Nf3 Nc6 3.Bc4 Nf6 4.Ng5 Bc5 5.Nxf7 Bxf2+ is equal according to theory.