igogo-x86 / HexRaysPyTools

IDA Pro plugin which improves work with HexRays decompiler and helps in process of reconstruction structures and classes
1.41k stars 224 forks source link

Deep Scan Variable/Scan Variable is not shown #12

Closed trietptm closed 6 years ago

trietptm commented 6 years ago

Hi, I test HexRaysPyTools with this sample and it doesn't show the Deep Scan Variable/Scan Variable https://github.com/trietptm/HexRaysPyTools/blob/master/tests/Box_1.exe

box_1 1
trietptm commented 6 years ago

I have found that if I use the "Reset pointer type" operation of IDA, the Deep Scan Variable/Scan Variable function of HexRaysPyTools will appear :) and I could receive the correct structure.

image

igogo-x86 commented 6 years ago

Hello! Originally I thought that it's better to scan only something similar to structure pointers. And in order to not produce bad results I restricted scanning to only types like int, DWORD, PVOID etc. But looks like double * and WCHAR * can also be structure pointers and that restriction is too strict. So in resent update I moved different settings to IDADIR/cfg/HexRaysPyTools.cfg file where you can find scan_any_type option. Variables with any types would be possible to scan after setting it value to True.

trietptm commented 6 years ago

Cool, it could Deep Scan Variable/Scan Variable now. I will let you know if I see other problems.