Responding to a reporter who said that Cohen had called him a liar, a con man, and a racist during his testimony Wednesday before the House Committee on Oversight and Reform, Trump said, "It's incorrect."
"I think having a fake hearing like that, and having it in the middle of this very important summit, is really a terrible thing. They could have made it two days later or next week and it would have been even better, they would have had more time," the president said.
"[Cohen] lied a lot, but it was very interesting because he didn't lie about one thing. He said 'no collusion' with the Russian hoax. And I said, 'I wonder why he didn't just lie about that too, like he did about everything else?' He lied about so many different things.
"I was actually impressed that he didn't say, 'Well, I think there was collusion for this reason or that.' He didn't say that. He said 'no collusion,' and I was a little impressed by that, frankly. He could have gone all out. He only went about 95% instead of 100%."
Cohen did not, in fact, tell the committee there was "no collusion." He said he did not know if there had been collusion, but had "suspicions." adding, "Sometime in the summer of 2017, I read all over the media that there had been a meeting in Trump Tower in June 2016 involving Don Jr. and others from the campaign with Russians, including a representative of the Russian government, and an email setting up the meeting with the subject line, 'Dirt on Hillary Clinton.'"
Trump's comment came during a press conference in Hanoi, Vietnam, where his second summit with Kim ended without a deal.
Trump said that Kim wanted sanctions "lifted in their entirety" without fully dismantling the country's nuclear and missile program. "We weren't willing to do that," he said.
Ahead of Cohen's testimony Wednesday, he tweeted that his former lawyer was "lying in order to reduce his prison sentence."