In windows PE files (32 and 64 bit) calls to imported functions look like this in IDA PRO:
call ds:SetEvent // default setting
call [ds:SetEvent] // Target Assembler set to TASM
I understand what it does (indirect call, import table, ...) but what I do not understand:
Why is IDA adding the ds: in front of the function name?
I checked the opcode, it is FF 15 meaning a near call.
If I am right to assume that the ds is a segment register, there is no need to specify it as a near call means a call of a function inside the same segment.
Could someone explain why IDA is adding the ds: anyway and what it is good for?
I thought a near call does not need any segment information. I thought a near call was "a call of a function inside the same segment". Am I missing something?
– langlauf.io Apr 24 '15 at 17:37