binaryninja-api icon indicating copy to clipboard operation
binaryninja-api copied to clipboard

HLIL Doesn't Currently Retrieve `this` pointer

Open tekwizz123 opened this issue 5 years ago • 1 comments

Atm if one loads up binaries such as win32kfull.sys and attempts to decompile a function with a this pointer in its function defininition, such as ESTROBJ::ptlBaseLineAdjustSet, the definition in Binary Ninja will be as though the invisible this pointer never existed. This makes it incredibly annoying to correct HLIL output that uses the this pointer in its code. This can be seen in the image below.

binary ninja failing to find hidden this pointer

On the contrary, programs like Relyze are able to recognize that this function has a hidden this parameter from the PDB information:

relyze showing this pointer

tekwizz123 avatar May 11 '20 07:05 tekwizz123

This is dependent on this issue #604

plafosse avatar Apr 14 '21 19:04 plafosse

PDBs now properly annotate this parameters and thiscall functions, so combining the fixing of #604 with the new PDB loader in 3.1.3715-dev, this is now fixed.

CouleeApps avatar Sep 30 '22 19:09 CouleeApps