小弟新手,刚开始学逆向,对于汇编码的理解还很浅薄,很简单的函数流程老是觉得理解不到位,请各位高手指点一下。。
在自己的ipad找了个游戏,用IDA分析了一些,下面是小弟的理解:
汇编码文本:
__text:00084E2C
__text:00084E2C ; =============== S U B R O U T I N E =======================================
__text:00084E2C
__text:00084E2C ; SaveLayer - (int)rs_Gold
__text:00084E2C
__text:00084E2C ; int __cdecl -[SaveLayer rs_Gold](struct SaveLayer *self, SEL)
__text:00084E2C __SaveLayer_rs_Gold_ ; DATA XREF: __objc_const:00123464o
__text:00084E2C 4E F6 6C 61 C0 F2 0A 01 MOV R1, #(_OBJC_IVAR_$_SaveLayer.rs_Gold - 0x84E38) ; int rs_Gold;
__text:00084E34 79 44 ADD R1, PC ; int rs_Gold;
__text:00084E36 09 68 LDR R1, [R1] ; int rs_Gold;
__text:00084E38 40 58 LDR R0, [R0,R1]
__text:00084E3A 70 47 BX LR
__text:00084E3A ; End of function -[SaveLayer rs_Gold]
__text:00084E3A
__text:00084E3C
__text:00084E3C ; =============== S U B R O U T I N E =======================================
__text:00084E3C
__text:00084E3C ; SaveLayer - (void)setRs_Gold:(int)
__text:00084E3C
__text:00084E3C ; void __cdecl -[SaveLayer setRs_Gold:](struct SaveLayer *self, SEL, int)
__text:00084E3C __SaveLayer_setRs_Gold__ ; DATA XREF: __objc_const:00123470o
__text:00084E3C 4E F6 5C 61 C0 F2 0A 01 MOV R1, #(_OBJC_IVAR_$_SaveLayer.rs_Gold - 0x84E48) ; int rs_Gold;
__text:00084E44 79 44 ADD R1, PC ; int rs_Gold;
__text:00084E46 09 68 LDR R1, [R1] ; int rs_Gold;
__text:00084E48 42 50 STR R2, [R0,R1]
__text:00084E4A 70 47 BX LR
__text:00084E4A ; End of function -[SaveLayer setRs_Gold:]
__text:00084E4A