Basic on Piracy and Cheaters and IP

How do I protect my game. Its Windows single and multiplayer. I separate it in such

  1. Piracy - I understand that without anti piracy things such as Denuvo game will sooner or later be pirated.
  2. IP Main thing. I understand that my game can be pirated but I am more worried about my IP and resourced I got into it. Question is, how do I protect my game from people opening and using Scripts Assets Settings etc. Is it some ways in C# Scripts to make everything private and closed exept my (our). And are there any Unity encrypting or something like that?
  3. I guess for anti cheat I will look for already proven and popular solutions.
    For example I know Hitman Blood money is pirated but there are 0 mods for it. Maybe becouse IO uses some or their in studio very rare engine or its closed. Also if I am right Gta III source code was only pirated not long ago.