Saturday, April 16, 2016

Might take a look at Unravel.

Unlike the other games, this one seems interesting as I want to play it. It uses Denuvo. This shouldn't be interpreted as if I am going to crack it, that will likely be impossible as I have never studied Denuvo moreover x64dbg still lacks a tracer and the underlying TitanEngine engine is wonky(aka the tools aren't mature enough;no offense mrexodia).

Some progress on Crysis 3.

In light of the news that Crytek open sourced their entire engine,  I am able to study the Crysis 3 machine code and identify critical code and structures. 

One particular bugging problem was clipping/culling of characters in Singleplayer or Multiplayer at a really short distance,  in multiplayer this is unacceptable. There is no option enabled to fix this,  so obviously I had to dig in the code,  but it is C++ and it's also lots of math,  I mean this is 3D programming,  which I am both unfamiliar with.  So I opted to use Cheat Engine to find the variable responsible for this,  which led me to a piece of code that held a float type which upon change showed that in part affected the drawing at distance.  Unfortunately multiple subsystems used this value and it fucked up the game,  the code which I couldn't have identified without the CryEngine source code was the CCamera class constructor,  and the particular value might be related to the Z buffer or Frustum plane.  If I can find where they are calculated perhaps I can fix this drawing issue. 

I also managed to enable all CryEngine commands though not all are modifiable,  one in particular is the Nanovision blur command,  which might help people in the Multiplayer. 

Sunday, April 3, 2016

Great article on API hooking!

As I was browsing RE related blogs and articles I stumbled upon this gem.

Amazing article that gave me more insight on how to perform more stealthy hooking.