Any programming model can be abused and misused. Functional programming is hardly immune.
OOP has been misunderstood and misused for a long, long time. The key to any good software system is proper design. Most developers do not know how to design object-oriented programs.
A lot of this misunderstanding comes from the languages used, e.g., C++, Java, C#, Python. The best OOP language ever is Smalltalk. It started the OOP craze in 1981 with the now-famous August 1981 BYTE magazine cover.
Smalltalk's programming model is based on message passing and late binding. It does not follow the nonsensical route of abstract data types exemplified by C++, Java, C# and other languages of this ilk.
The best way to understand OOP is to use Smalltalk. Then a light bulb will light up over your head.