Questions tagged [hexrays]

A decompiler plugin for IDA, producing (pseudo-)C/C++ code, developed by the company of the same name (Hex-Rays).

140 questions
1
vote
1 answer

How to make IDA stop showing a struct as an array

Sometimes when I am figuring out a struct in IDA, there will be a really big offset and IDA will decide the struct is an array. Consider this from ALPC: if ( (_Message[1].u1.Length & 0x200) != 0 && (PortObject->MainQueueLength & 0x2000) != 0 ) …
MrSynAckSter
  • 1,258
  • 1
  • 10
  • 24
1
vote
1 answer

IDA HexRays: signed/unsigned types and 32/64 bits dont match assembly

Here is assembly: mov rdi, [r13+rax*8+0] sub rdi, rcx cvtsi2sd xmm0, rdi movsd qword ptr [r11+rax*8], xmm0 cvtsi2sd xmm0, qword ptr [r14+rax*8] movsd qword ptr [rsi+rax*8], xmm0 add rax, 1 And here is an output from…
pete71
  • 11
  • 2
1
vote
3 answers

Understanding Hex-Rays pseudo code

What is the meaning of the following pseudo-code?: BYTE1(v2) or BYTE1(v2) HIBYTE(v2) Is there any explanation for those macros? How can I implement those macros in C code?
psudoCode
  • 27
  • 1
  • 2
0
votes
1 answer

Will "Reset decompiler information"+"All caches" invalidate functions marked as decompiled?

In his answer to a question, Rolf pointed me to the Edit -> Other -> Reset decompiler information functionality, suggesting that "All caches" will force the decompiler to pick up immediately on changes I made to the disassembly. This sounds like a…
0xC0000022L
  • 10,908
  • 9
  • 41
  • 79
0
votes
1 answer

An incomprehensible line in the output from hex rays

v5 = (*(int (__cdecl **)(int))((char *)&etext + 1))(a1); Please explain me what does this line mean (if possible, please write from what it was compiled from (language - c))
Inc.ace
  • 13
  • 2
0
votes
2 answers

Re-analyzing pseudocode IDA Pro

While I was reversing a binary I noticed that IDA Pro had adjusted the pseudocode that initially was generated. This happened after I started reversing the binary and renamed functions and variables to more appropriate names. IDA Pro had then…
0
votes
1 answer

How can I follow virtual function calls in IDA?

I'm trying to reverse a video game that was made with the CryEngine 5 game engine. CryEngine 5 source code is available on GitHub, so I can look at the CryEngine source code and cross reference with the game in IDA to find a lot of information. Here…
psyfl
  • 1
  • 1
  • 1