They are not the sameR3 != R4,#0xB4becauseR3 = [R4,#0xB4] (the value in that address not the address itself)I think this struct is something like a linked list and this function allocates a chunk and updates the pointers...