After the rust string overview of its internal substructures, let's see if c++ QString storage is more light, but first we'r going to take a look to the c++ standard string object:         At first sight we can see the allocation and deallocation created by the clang++ compiler, and the DAT_00400d34 is the string.   If we use same algorithm than the rust code but in c++:         We have a different decompilation layout. Note that the Ghidra scans very fast the c++ binaries, and with  rust  binaries gets crazy for a while.  Locating main is also very simple in a c++ compiled binary, indeed is more  low-level than rust.      The byte array is initialized with a simply move instruction:          00400c4b 48 b8 68        MOV        RAX,0x6f77206f6c6c6568   And basic_string generates the string, in the case of  rust  this was carazy endless set of calls, detected by ghidra as a runtime, but nevertheless the basic_str...
Collection of hottest news items from Daily and Sunday news papers of Sri Lanka
Comments