Hi,

i am struggling with structs in IDA. Basically, i want to do 3 things

1) add a custom struct to IDA
2) apply a struct to a fixed VA
3) apply a struct to a register (?)

1)
opening the struct subview, i get this:

00000000 ; Ins/Del : create/delete structure
00000000 ; D/A/* : create structure member (data/ascii/array)
00000000 ; N : rename structure or structure member
00000000 ; U : delete structure member
00000000 ; ---------------------------------------------------------------------------
00000000

i was able to create a new struct, and insert a member by pressind D. However, i cannot insert a second member: pressing D will only change the type of the first member.
how do i insert a new member?


2) ok, that seems to work fine by selecting the address and edit->struct var

3)
I know that at a given location in the program, EAX will point to a certain struct.
the struct members are accessed resutlingg in code like

mov esi, [eax + 254]

Now it would be helpful if we could some let IDA know that eax points to that struct, so it would "decode" that command to

mov es, [eax + membername]


How can i do that?



hope someone can help me out!