I need to extract all arguments from CallStaticObjectMethodV
JNI call on ARMv7 Android at Assembler level.
Can anyone advice how is va_list
implemented on low level in ARMv7 Android?
Reverse Engineering Stack Exchange is a question and answer site for researchers and developers who explore the principles of a system through analysis of its structure, function, and operation. It only takes a minute to sign up.
Sign up to join this communityFrom Procedure Call Standard for the ARM® Architecture (ARM IHI 0042E):
Typedef: va_list
Base type:
struct __va_list {
void *__ap;
}
Notes:
A
va_list
may address any object in a parameter list. Consequently, the first object addressed may only have word alignment (all objects are at least word aligned), but any double-word aligned object will appear at the correct double-word alignment in memory. In C++,__va_list
is in namespacestd
.
So basically it's just a pointer to the word-aligned arguments in memory.