2019-02-13 idapython常用api记录
以下代码片段可以在ida的output窗口中测试用,需要引入相关的模块即可。
import idaapi
import idc
import idautils
后续需要使用的程序代码指令
0017C24 CODE32
LOAD:00017C24
LOAD:00017C24 ; =============== S U B R O U T I N E =======================================
LOAD:00017C24
LOAD:00017C24 ; Attributes: thunk
LOAD:00017C24
LOAD:00017C24 ; int fstat(int fd, struct stat *buf)
LOAD:00017C24 fstat ; CODE XREF: sub_136A44+64↓p
LOAD:00017C24 ADRL R12, 0x1C1C2C
LOAD:00017C2C LDR PC, [R12,#(off_1C2B20 - 0x1C1C2C)]! ; __imp_fstat
LOAD:00017C2C ; End of function fstat
LOAD:00017C2C
....
0017C30
LOAD:00017C30 ; =============== S U B R O U T I N E =======================================
LOAD:00017C30
LOAD:00017C30
LOAD:00017C30 EXPORT start
LOAD:00017C30 start ; DATA XREF: LOAD:00000018↑o
LOAD:00017C30 ; LOAD:stru_66C↑o
LOAD:00017C30 LDR R0, =(unk_1C3000 - 0x17C3C)
LOAD:00017C34 ADD R0, PC, R0 ; unk_1C3000
LOAD:00017C38 B __cxa_finalize
LOAD:00017C38 ; End of function start
LOAD:00017C38
LOAD:00017C38 ; ---------------------------------------------------------------------------
LOAD:00017C3C off_17C3C DCD unk_1C3000 - 0x17C3C
LOAD:00017C3C ; DATA XREF: start↑r
0017C3C ; DATA XREF: start↑r
LOAD:00017C40 ; ---------------------------------------------------------------------------
LOAD:00017C40
LOAD:00017C40 loc_17C40 ; DATA XREF: LOAD:00017C5C↓o
LOAD:00017C40 ; LOAD:off_17C68↓o
LOAD:00017C40 CMP R0, #0
LOAD:00017C44 BXEQ LR
LOAD:00017C48 BX R0
LOAD:00017C4C ; ---------------------------------------------------------------------------
LOAD:00017C4C MOV R1, R0
LOAD:00017C50 LDR R2, =(unk_1C3000 - 0x17C60)
LOAD:00017C54 LDR R0, =(loc_17C40 - 0x17C64)
LOAD:00017C58 ADD R2, PC, R2 ; unk_1C3000
LOAD:00017C5C ADD R0, PC, R0 ; loc_17C40
LOAD:00017C60 B __cxa_atexit
LOAD:00017C60 ; ---------------------------------------------------------------------------
LOAD:00017C64 off_17C64 DCD unk_1C3000 - 0x17C60
LOAD:00017C64 ; DATA XREF: LOAD:00017C50↑r
LOAD:00017C68 off_17C68 DCD loc_17C40 - 0x17C64 ; DATA XREF: LOAD:00017C54↑r
LOAD:00017C6C CODE16
LOAD:00017C6C
LOAD:00017C6C ; =============== S U B R O U T I N E =================&