So, I've been going along learning PowerPC for simple reversing projects for Xbox, but I always get tangled up on things like this.
lwz r11, 0(r29) # Loads 0x34 from 0x10710 and stores in r11
lwz r10, 4(r29) # Loads 0x64 from 0x10714 and stores in r10
addi r11, r11, 0x7F # r11 = 0x34 + 0x7F = r11 = 0xE3
clrrwi r10, r10, 7 # r10 = r10 (0x64) + 0xFFFFFF80
clrrwi r31, r11, 7 # r31 = r11 (0xE3) & 0xFFFFFF80
Anyways, what I'm having trouble understanding is the last two lines. How could a register have one value + another? And how could another register have one value & another? And if I were to have addition as the next line, what value would I add to? Sorry, this is a weird transition since my native languages are C++ and C# and I don't feel like giving up on this one as it's so much fun despite the troubles I'm having.