Hex-Rays v1.3 Comparison Page

Better 64-bit arithmetics
v3 = (_DWORD)v28 >= (unsigned int)-v27; v4 = v28 + v27; v27 = 0xB23199F3u; LODWORD(v25) = v4; HIDWORD(v25) = HIDWORD(v28) + v3; if ( !((HIDWORD(v28) + v3) | v4) ) v3 = v27; v27 = 0xB23199F3u; v25 = v28 + (unsigned int)v3; if ( !v25 )
It seems that 64-bit support is a never ending story. The previous version of the decompiler could not recognize the 64-bit addition because it was interleaved with other operations and the value of an operand changed midway. The new version can handle it, and the output is much simpler.

NOTE: these are just some selected examples that can be illustrated as a side-by-side difference. Hex-Rays Decompiler v1.3 includes are many other improvements and new features that are not mentioned on this page – simply because there was nothing to compare them with. Also, some improvements have already been illustrated in the previous comparisons. Please refer to the news page for more details.

This is all for the moment. Please come back for more examples!