pues bueno hace mucho que no veo Assembly pero me parece que este bocado es lá funcion que se está alterando
8000000000050594: 7d 69 38 38 and r9,r11,r7
8000000000050598: 40 9a ff e0 bne cr6,0x8000000000050578
800000000005059c: 7f a9 58 00 cmpd cr7,r9,r11
80000000000505a0: 7c a0 20 38 and r0,r5,r4
80000000000505a4: 7f 20 28 00 cmpd cr6,r0,r5
80000000000505a8: 40 9e ff d0 bne cr7,0x8000000000050578
80000000000505ac: 40 9a ff cc bne cr6,0x8000000000050578
80000000000505b0: 80 01 01 08 lwz r0,264(r1) # 108
80000000000505b4: 7f e3 fb 78 mr r3,r31
80000000000505b8: 38 81 01 08 addi r4,r1,264 # 108
80000000000505bc: 2b 80 03 ff cmplwi cr7,r0,1023 # 3ff
80000000000505c0: 41 9d ff bc bgt cr7,0x800000000005057c
80000000000505c4: 4b ff fd 55 bl 0x8000000000050318
80000000000505c8: 54 66 06 3e clrlwi r6,r3,24 # 18
80000000000505cc: 4b ff ff b0 b 0x800000000005057c
80000000000505d0: e9 22 96 88 ld r9,-27000(r2) # ffff9688
80000000000505d4: 7c 08 02 a6 mflr r0
se substitue el retorno por esto
80000000000505d0: 38 60 00 01 li r3,1
80000000000505d4: 4e 80 00 20 blr
con tanto and em la function solo pode estar hacendo una evaluation de permitiones. agora hai que aclarar-lo mas, para saber que realmente hace e veer qual es el mejor punto onde parchear.
salu2