ARM Processor iOS (iPhone): C++ signatures

Assembler code

__text:00015E90                 BL      _readdir
__text:00015E94                 SUBS    R1, R0, #0
__text:00015E98                 BEQ     loc_15F2C
__text:00015E9C                 MOV     R3, #2
__text:00015EA0                 LDRB    R2, [R1,#7]
__text:00015EA4                 ADD     R0, SP, #0xA8+var_64
__text:00015EA8                 STR     R3, [SP,#0xA8+fctx.call_site]
__text:00015EAC                 ADD     R1, R1, #8
__text:00015EB0                 ADD     R3, SP, #0xA8+var_5D
__text:00015EB4                 BL      __ZNSsC1EPKcmRKSaIcE ; std::string::string(char const*,ulong,std::allocator<char> const&)
__text:00015EB8                 MOV     R3, #1
__text:00015EBC                 STR     R3, [SP,#0xA8+fctx.call_site]
__text:00015EC0                 ADD     R0, SP, #0xA8+var_64
__text:00015EC4                 LDR     R3, [SP,#0xA8+var_A4]
__text:00015EC8                 BLX     R3
__text:00015ECC                 CMP     R0, #0
__text:00015ED0                 BNE     loc_15F1C
__text:00015ED4                 MOV     R3, #0xFFFFFFFF
__text:00015ED8                 ADD     R0, SP, #0xA8+var_64 ; this
__text:00015EDC                 STR     R3, [SP,#0xA8+fctx.call_site]
__text:00015EE0                 BL      __ZNSsD2Ev      ; std::string::~string()
__text:00015EE4                 B       loc_15E84
__text:00015EE8 ; ---------------------------------------------------------------------------
__text:00015EE8 ;   cleanup() // owned by 15E64
__text:00015EE8                 LDR     R3, [SP,#0xA8+fctx.data]
__text:00015EEC                 STR     R3, [SP,#0xA8+lpuexcpt]
__text:00015EF0                 LDR     R3, [SP,#0xA8+fctx.call_site]
__text:00015EF4                 CMP     R3, #1
__text:00015EF8                 BEQ     loc_15F0C
__text:00015EFC                 MOV     R3, #0
__text:00015F00                 ADD     R0, SP, #0xA8+var_64 ; this
__text:00015F04                 STR     R3, [SP,#0xA8+fctx.call_site]
__text:00015F08                 BL      __ZNSsD2Ev      ; std::string::~string()
__text:00015F0C
__text:00015F0C loc_15F0C                               ; CODE XREF: sub_15E1C+DC↑j
__text:00015F0C                 MOV     R3, #0xFFFFFFFF

Last updated