本人不懂ARM汇编,现有一段汇编还请论坛大神出手帮忙给翻译翻译,不胜感激!
.text:00031F38 ; stringTojstring(_JNIEnv *, char const*)
.text:00031F38 EXPORT _Z15stringTojstringP7_JNIEnvPKc
.text:00031F38 _Z15stringTojstringP7_JNIEnvPKc
.text:00031F38
.text:00031F38
.text:00031F38 var_20 = -0x20
.text:00031F38
.text:00031F38 PUSH {R4-R7,LR}
.text:00031F3A MOV R7, R8
.text:00031F3C PUSH {R7}
.text:00031F3E LDR R5, =(dword_69830 - 0x31F4C)
.text:00031F40 LDR R7, [R0]
.text:00031F42 LDR R2, =(aInit - 0x31F54)
.text:00031F44 LDR R3, =(aBljavaLangStri - 0x31F58)
.text:00031F46 MOVS R4, R0
.text:00031F48 ADD R5, PC ; dword_69830
.text:00031F4A MOVS R0, #0x84
.text:00031F4C SUB SP, SP, #8
.text:00031F4E MOVS R6, R1
.text:00031F50 ADD R2, PC ; "<init>"
.text:00031F52 LDR R1, [R5,#(dword_6984C - 0x69830)]
.text:00031F54 ADD R3, PC ; "([BLjava/lang/String;)V"
.text:00031F56 LDR R7, [R7,R0]
.text:00031F58 MOVS R0, R4
.text:00031F5A BLX R7
.text:00031F5C MOV R8, R0
.text:00031F5E MOVS R0, R6 ; s
.text:00031F60 BLX strlen
.text:00031F64 LDR R2, [R4]
.text:00031F66 MOVS R3, 0x2C0
.text:00031F6A MOVS R1, R0
.text:00031F6C LDR R3, [R2,R3]
.text:00031F6E MOVS R0, R4
.text:00031F70 BLX R3
.text:00031F72 MOVS R7, R0
.text:00031F74 MOVS R0, R6 ; s
.text:00031F76 BLX strlen
.text:00031F7A LDR R1, [R4]
.text:00031F7C MOVS R2, #0xD0
.text:00031F7E STR R6, [SP,#0x20+var_20]
.text:00031F80 LSLS R2, R2, #2
.text:00031F82 LDR R6, [R1,R2]
.text:00031F84 MOVS R3, R0
.text:00031F86 MOVS R1, R7
.text:00031F88 MOVS R0, R4
.text:00031F8A MOVS R2, #0
.text:00031F8C BLX R6
.text:00031F8E LDR R2, [R4]
.text:00031F90 LDR R1, =(aUtf8 - 0x31F9C)
.text:00031F92 MOVS R3, 0x29C
.text:00031F96 LDR R3, [R2,R3]
.text:00031F98 ADD R1, PC ; "utf-8"
.text:00031F9A MOVS R0, R4
.text:00031F9C BLX R3
.text:00031F9E MOV R2, R8
.text:00031FA0 MOVS R6, R0
.text:00031FA2 LDR R1, [R5,#(dword_6984C - 0x69830)]
.text:00031FA4 MOVS R3, R7
.text:00031FA6 STR R0, [SP,#0x20+var_20]
.text:00031FA8 MOVS R0, R4
.text:00031FAA BL _ZN7_JNIEnv9NewObjectEP7_jclassP10_jmethodIDz ; _JNIEnv::NewObject(_jclass *,_jmethodID *,...)
.text:00031FAE LDR R3, [R4]
.text:00031FB0 MOVS R5, R0
.text:00031FB2 MOVS R1, R6
.text:00031FB4 MOVS R0, R4
.text:00031FB6 LDR R3, [R3,#0x5C]
.text:00031FB8 BLX R3
.text:00031FBA LDR R3, [R4]
.text:00031FBC MOVS R0, R4
.text:00031FBE MOVS R1, R7
.text:00031FC0 LDR R3, [R3,#0x5C]
.text:00031FC2 BLX R3
.text:00031FC4 ADD SP, SP, #8
.text:00031FC6 MOVS R0, R5
.text:00031FC8 POP {R2}
.text:00031FCA MOV R8, R2
.text:00031FCC POP {R4-R7,PC}
.text:00031FCC ; End of function stringTojstring(_JNIEnv *,char const*)
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!