├── .gitattributes ├── .gitignore ├── LICENSE ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── com │ │ └── il2cpp │ │ └── dumper │ │ └── MainActivity.java │ ├── jni │ ├── Android.mk │ ├── Application.mk │ ├── Includes │ │ ├── BNMUtils.h │ │ ├── il2cpp-tabledefs.h │ │ ├── il2cpp_dump.cpp │ │ ├── il2cpp_dump.h │ │ ├── il2cppapi │ │ │ ├── 2017.1.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.1.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.1.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.1.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.1.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.1.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.2.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.3.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.3.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.18f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.19f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.20f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.21f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.22f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.23f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.24f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.25f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.26f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.27f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.28f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.29f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.2f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.30f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.31f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.32f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.33f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.34f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.35f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.36f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.37f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.38f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.39f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.40f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2017.4.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.0f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.1.9f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.0f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.18f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.19f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.20f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.21f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.2.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.0f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.3.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.18f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.19f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.20f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.21f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.22f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.23f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.24f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.25f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.26f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.27f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.28f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.29f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.30f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.31f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.32f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.33f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.34f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.35f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.36f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2018.4.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.0f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.1.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.18f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.19f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.20f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.21f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.7f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.2.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.0f6 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.3.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.18f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.19f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.20f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.21f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.22f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.23f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.24f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.25f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.26f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.27f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.28f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.29f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2019.4.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.17f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.1.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.2.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.15f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.8f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2020.3.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.0f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.10f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.11f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.12f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.13f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.14f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.15f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.16f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.1.9f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 2021.2.0b4 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.0f4 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.3.8f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.2f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.4.6f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.5.6f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.0f3 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.1f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.2f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.3f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.4f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.5f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ ├── 5.6.6f2 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ │ └── 5.6.7f1 │ │ │ │ ├── il2cpp-api-functions.h │ │ │ │ └── il2cpp-class.h │ │ └── log.h │ └── native-lib.cpp │ └── res │ ├── drawable-v24 │ └── ic_launcher_foreground.xml │ ├── drawable │ └── ic_launcher_background.xml │ ├── layout │ └── activity_main.xml │ ├── mipmap-anydpi-v26 │ ├── ic_launcher.xml │ └── ic_launcher_round.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ └── values │ ├── colors.xml │ ├── strings.xml │ └── themes.xml ├── build.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 BryanGIG 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # THERE WILL BE NO FUTURE UPDATE IN THIS REPO 2 | Please go to [Auto-Il2CppDumper](https://github.com/AndnixSH/Auto-Il2cppDumper) by [AdnixSH](https://github.com/AndnixSH) for future update 3 | 4 | # Auto-Il2cppDumper 5 | This is for helping you get dump.cs from Android Il2cpp game 6 | 7 | # Important 8 | This project is modifying version of [Riru-Il2cppDumper](https://github.com/Perfare/Riru-Il2CppDumper)
9 | Credit : [Perfare](https://github.com/Perfare) 10 | 11 | # Changelog Update 12 | - Fix error in version 2020.2.0f1 and up 13 | - Migrate from kotlin -> java 14 | - Migrate from cmake-build -> ndk-build [enhancement from #1] 15 | 16 | # Usage 17 | - change unity version in Includes/il2cpp_dump.h with your game unity version 18 | - if the unity version is 2018.3.0f2 and above please define VersionAboveV24 19 | - if the unity version is 2020.2.0f1 and above please define VersionAbove2020V2 20 | - Build with Android Studio 21 | - Decompile the game 22 | - copy result libnative-lib.so into decompiled lib folder apk 23 | - search the "main" activity of the game 24 | - put this on onCreate function 25 | ```smali 26 | const-string v0, "native-lib" 27 | 28 | invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V 29 | ``` 30 | - re-compile and run it 31 | - once the dump complete it will auto generate dump.cs in /sdcard/Download 32 | 33 | # Credit : 34 | [Riru-Il2cppDumper](https://github.com/Perfare/Riru-Il2CppDumper)
35 | [Il2CppVersions](https://github.com/nneonneo/Il2CppVersions) 36 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | 3 | android { 4 | compileSdkVersion 30 5 | buildToolsVersion "30.0.3" 6 | 7 | defaultConfig { 8 | applicationId "com.il2cpp.dumper" 9 | minSdkVersion 16 10 | targetSdkVersion 30 11 | versionCode 1 12 | versionName "1.0" 13 | } 14 | 15 | buildTypes { 16 | release { 17 | minifyEnabled false 18 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 19 | } 20 | } 21 | externalNativeBuild { 22 | ndkBuild { 23 | path "src/main/jni/Android.mk" 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/il2cpp/dumper/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.il2cpp.dumper; 2 | 3 | import android.app.Activity; 4 | import android.os.Bundle; 5 | 6 | 7 | public class MainActivity extends Activity { 8 | static { 9 | System.loadLibrary("native-lib"); 10 | } 11 | 12 | @Override 13 | protected void onCreate(Bundle savedInstanceState) { 14 | super.onCreate(savedInstanceState); 15 | setContentView(R.layout.activity_main); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/jni/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | MAIN_LOCAL_PATH := $(call my-dir) 3 | include $(CLEAR_VARS) 4 | 5 | LOCAL_MODULE := native-lib 6 | 7 | LOCAL_CFLAGS := -Wno-error=format-security -fvisibility=hidden -ffunction-sections -fdata-sections -w 8 | LOCAL_CFLAGS += -fno-rtti -fno-exceptions -fpermissive 9 | LOCAL_CPPFLAGS := -Wno-error=format-security -fvisibility=hidden -ffunction-sections -fdata-sections -w -Werror -s -std=c++17 10 | LOCAL_CPPFLAGS += -Wno-error=c++11-narrowing -fms-extensions -fno-rtti -fno-exceptions -fpermissive 11 | LOCAL_LDFLAGS += -Wl,--gc-sections,--strip-all, -llog 12 | LOCAL_ARM_MODE := arm 13 | 14 | LOCAL_C_INCLUDES += $(MAIN_LOCAL_PATH) 15 | 16 | LOCAL_SRC_FILES := native-lib.cpp \ 17 | Includes/il2cpp_dump.cpp 18 | 19 | LOCAL_LDLIBS := -llog -landroid -lGLESv2 20 | include $(BUILD_SHARED_LIBRARY) -------------------------------------------------------------------------------- /app/src/main/jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_ABI := all 2 | APP_STL := c++_static 3 | APP_OPTIM := release 4 | APP_THIN_ARCHIVE := true 5 | APP_PIE := true -------------------------------------------------------------------------------- /app/src/main/jni/Includes/BNMUtils.h: -------------------------------------------------------------------------------- 1 | void InitIl2cppMethods(); 2 | typedef std::vector AssemblyVector; 3 | typedef unsigned long DWORD; 4 | AssemblyVector *(*Assembly$$GetAllAssemblies_t)(); 5 | 6 | AssemblyVector *Assembly$$GetAllAssemblies(){ 7 | if (!Assembly$$GetAllAssemblies_t) 8 | InitIl2cppMethods(); 9 | return Assembly$$GetAllAssemblies_t(); 10 | } 11 | std::string revhexstr(std::string hex) { 12 | std::string out; 13 | for (unsigned int i = 0; i < hex.length(); i += 2) out = hex.substr(i, 2) + out; 14 | return out; 15 | } 16 | 17 | std::string fixhex(std::string str) { 18 | std::string out = str; 19 | std::string::size_type tmp; 20 | if (out.find(std::string("0x")) != -1) { 21 | tmp = out.find(std::string("0x")); 22 | out.replace(tmp, 2, std::string("")); 23 | } 24 | for (int i = out.length() - 1; i >= 0; --i) { 25 | if (out[i] == ' ') 26 | out.erase(i, 1); 27 | } 28 | return out; 29 | } 30 | 31 | DWORD HexStr2DWORD(std::string hex) { 32 | return strtoull(hex.c_str(), NULL, 16); 33 | } 34 | 35 | bool Is_B_BL_Hex_arm64(std::string hex) { 36 | DWORD hexw = HexStr2DWORD(revhexstr(fixhex(hex))); 37 | return (hexw & 0xFC000000) == 0x14000000 || (hexw & 0xFC000000) == 0x94000000; 38 | } 39 | 40 | bool Is_B_BL_Hex(std::string hex) { 41 | DWORD hexw = HexStr2DWORD(revhexstr(fixhex(hex))); 42 | return ((hexw & 0xFC000000) == 0x14000000 || (hexw & 0xFC000000) == 0x94000000) || (hexw & 0x0A000000) == 0x0A000000; 43 | } 44 | 45 | std::string readHexStrFromMem(const void *addr, size_t len) { 46 | char temp[len]; 47 | memset(temp, 0, len); 48 | const size_t bufferLen = len * 2 + 1; 49 | char buffer[bufferLen]; 50 | memset(buffer, 0, bufferLen); 51 | std::string ret; 52 | if (memcpy(temp, addr, len) == NULL) 53 | return ret; 54 | for (int i = 0; i < len; i++) { 55 | sprintf(&buffer[i * 2], "%02X", (unsigned char) temp[i]); 56 | } 57 | ret += buffer; 58 | return ret; 59 | } 60 | 61 | bool Is_x86_call_hex(std::string hex) { 62 | return hex.substr(0, 2) == "E8"; 63 | } 64 | /* 65 | * Branch decoding based on 66 | * https://github.com/aquynh/capstone/ 67 | */ 68 | bool Decode_Branch_or_Call_Hex(std::string hex, DWORD offset, DWORD *outOffset) { 69 | bool arm = false; 70 | if (!(arm = Is_B_BL_Hex(hex)) && !Is_x86_call_hex(hex)) return false; 71 | if (arm) { 72 | DWORD insn = HexStr2DWORD(revhexstr(fixhex(hex))); 73 | DWORD imm = ((insn & (((uint32_t)1 << 24) - 1) << 0) >> 0) << 2; 74 | DWORD SignExtendedImm = (int32_t)(imm << (32 - 26)) >> (32 - 26); 75 | *outOffset = SignExtendedImm + offset + (Is_B_BL_Hex_arm64(hex) ? 0 : 8); 76 | } else { 77 | *outOffset = offset + HexStr2DWORD(revhexstr(fixhex(hex)).substr(0, 8)) + 5; 78 | } 79 | return true; 80 | } 81 | DWORD FindNext_B_BL_offset(DWORD start, int index = 1) { 82 | #if defined(__ARM_ARCH_7A__) || defined(__aarch64__) 83 | int offset = 0; 84 | std::string curHex = readHexStrFromMem((const void*)start, 4); 85 | DWORD outOffset = 0; 86 | bool out = true; 87 | while (!(out = Decode_Branch_or_Call_Hex(curHex, start + offset, &outOffset)) || index != 1) { 88 | offset += 4; 89 | curHex = readHexStrFromMem((const void*)(start + offset), 4); 90 | if (out) 91 | index--; 92 | } 93 | return outOffset; 94 | #elif defined(__i386__) 95 | int offset = 0; 96 | std::string curHex = readHexStrFromMem((const void*)start, 1); 97 | DWORD outOffset = 0; 98 | bool out = true; 99 | while (!(out = Is_x86_call_hex(curHex)) || index != 1) { 100 | offset += 1; 101 | curHex = readHexStrFromMem((const void*)(start + offset), 1); 102 | if (out) 103 | index--; 104 | } 105 | Decode_Branch_or_Call_Hex(readHexStrFromMem((const void*)(start + offset), 5), start + offset, &outOffset); 106 | return outOffset; 107 | #endif 108 | } 109 | void InitIl2cppMethods(){ 110 | #if defined(__ARM_ARCH_7A__) || defined(__aarch64__) 111 | int count = 1; 112 | #elif defined(__i386__) || defined(__x86_64__) 113 | int count = 2; 114 | #endif 115 | 116 | //! il2cpp::vm::Assembly::GetAllAssemblies GET 117 | if (!Assembly$$GetAllAssemblies_t){ 118 | auto corlib = il2cpp_get_corlib(); 119 | auto assemblyClass = il2cpp_class_from_name(corlib, "System", "AppDomain"); 120 | const MethodInfo *getAssemb = il2cpp_class_get_method_from_name(assemblyClass, "GetAssemblies", 1); 121 | if (getAssemb){ 122 | DWORD GetTypesAdr = FindNext_B_BL_offset((DWORD) getAssemb->methodPointer, count); 123 | Assembly$$GetAllAssemblies_t = (AssemblyVector *(*)(void))(FindNext_B_BL_offset(GetTypesAdr, count+1)); 124 | } else { 125 | DWORD adr = (DWORD)il2cpp_domain_get_assemblies; 126 | Assembly$$GetAllAssemblies_t = (AssemblyVector *(*)(void))(FindNext_B_BL_offset(adr, count)); 127 | } 128 | } 129 | } -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cpp-tabledefs.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | /* 4 | * Field Attributes (21.1.5). 5 | */ 6 | 7 | #define FIELD_ATTRIBUTE_FIELD_ACCESS_MASK 0x0007 8 | #define FIELD_ATTRIBUTE_COMPILER_CONTROLLED 0x0000 9 | #define FIELD_ATTRIBUTE_PRIVATE 0x0001 10 | #define FIELD_ATTRIBUTE_FAM_AND_ASSEM 0x0002 11 | #define FIELD_ATTRIBUTE_ASSEMBLY 0x0003 12 | #define FIELD_ATTRIBUTE_FAMILY 0x0004 13 | #define FIELD_ATTRIBUTE_FAM_OR_ASSEM 0x0005 14 | #define FIELD_ATTRIBUTE_PUBLIC 0x0006 15 | 16 | #define FIELD_ATTRIBUTE_STATIC 0x0010 17 | #define FIELD_ATTRIBUTE_INIT_ONLY 0x0020 18 | #define FIELD_ATTRIBUTE_LITERAL 0x0040 19 | #define FIELD_ATTRIBUTE_NOT_SERIALIZED 0x0080 20 | #define FIELD_ATTRIBUTE_SPECIAL_NAME 0x0200 21 | #define FIELD_ATTRIBUTE_PINVOKE_IMPL 0x2000 22 | 23 | /* For runtime use only */ 24 | #define FIELD_ATTRIBUTE_RESERVED_MASK 0x9500 25 | #define FIELD_ATTRIBUTE_RT_SPECIAL_NAME 0x0400 26 | #define FIELD_ATTRIBUTE_HAS_FIELD_MARSHAL 0x1000 27 | #define FIELD_ATTRIBUTE_HAS_DEFAULT 0x8000 28 | #define FIELD_ATTRIBUTE_HAS_FIELD_RVA 0x0100 29 | 30 | /* 31 | * Method Attributes (22.1.9) 32 | */ 33 | 34 | #define METHOD_IMPL_ATTRIBUTE_CODE_TYPE_MASK 0x0003 35 | #define METHOD_IMPL_ATTRIBUTE_IL 0x0000 36 | #define METHOD_IMPL_ATTRIBUTE_NATIVE 0x0001 37 | #define METHOD_IMPL_ATTRIBUTE_OPTIL 0x0002 38 | #define METHOD_IMPL_ATTRIBUTE_RUNTIME 0x0003 39 | 40 | #define METHOD_IMPL_ATTRIBUTE_MANAGED_MASK 0x0004 41 | #define METHOD_IMPL_ATTRIBUTE_UNMANAGED 0x0004 42 | #define METHOD_IMPL_ATTRIBUTE_MANAGED 0x0000 43 | 44 | #define METHOD_IMPL_ATTRIBUTE_FORWARD_REF 0x0010 45 | #define METHOD_IMPL_ATTRIBUTE_PRESERVE_SIG 0x0080 46 | #define METHOD_IMPL_ATTRIBUTE_INTERNAL_CALL 0x1000 47 | #define METHOD_IMPL_ATTRIBUTE_SYNCHRONIZED 0x0020 48 | #define METHOD_IMPL_ATTRIBUTE_NOINLINING 0x0008 49 | #define METHOD_IMPL_ATTRIBUTE_MAX_METHOD_IMPL_VAL 0xffff 50 | 51 | #define METHOD_ATTRIBUTE_MEMBER_ACCESS_MASK 0x0007 52 | #define METHOD_ATTRIBUTE_COMPILER_CONTROLLED 0x0000 53 | #define METHOD_ATTRIBUTE_PRIVATE 0x0001 54 | #define METHOD_ATTRIBUTE_FAM_AND_ASSEM 0x0002 55 | #define METHOD_ATTRIBUTE_ASSEM 0x0003 56 | #define METHOD_ATTRIBUTE_FAMILY 0x0004 57 | #define METHOD_ATTRIBUTE_FAM_OR_ASSEM 0x0005 58 | #define METHOD_ATTRIBUTE_PUBLIC 0x0006 59 | 60 | #define METHOD_ATTRIBUTE_STATIC 0x0010 61 | #define METHOD_ATTRIBUTE_FINAL 0x0020 62 | #define METHOD_ATTRIBUTE_VIRTUAL 0x0040 63 | #define METHOD_ATTRIBUTE_HIDE_BY_SIG 0x0080 64 | 65 | #define METHOD_ATTRIBUTE_VTABLE_LAYOUT_MASK 0x0100 66 | #define METHOD_ATTRIBUTE_REUSE_SLOT 0x0000 67 | #define METHOD_ATTRIBUTE_NEW_SLOT 0x0100 68 | 69 | #define METHOD_ATTRIBUTE_STRICT 0x0200 70 | #define METHOD_ATTRIBUTE_ABSTRACT 0x0400 71 | #define METHOD_ATTRIBUTE_SPECIAL_NAME 0x0800 72 | 73 | #define METHOD_ATTRIBUTE_PINVOKE_IMPL 0x2000 74 | #define METHOD_ATTRIBUTE_UNMANAGED_EXPORT 0x0008 75 | 76 | /* 77 | * For runtime use only 78 | */ 79 | #define METHOD_ATTRIBUTE_RESERVED_MASK 0xd000 80 | #define METHOD_ATTRIBUTE_RT_SPECIAL_NAME 0x1000 81 | #define METHOD_ATTRIBUTE_HAS_SECURITY 0x4000 82 | #define METHOD_ATTRIBUTE_REQUIRE_SEC_OBJECT 0x8000 83 | 84 | /* 85 | * Type Attributes (21.1.13). 86 | */ 87 | #define TYPE_ATTRIBUTE_VISIBILITY_MASK 0x00000007 88 | #define TYPE_ATTRIBUTE_NOT_PUBLIC 0x00000000 89 | #define TYPE_ATTRIBUTE_PUBLIC 0x00000001 90 | #define TYPE_ATTRIBUTE_NESTED_PUBLIC 0x00000002 91 | #define TYPE_ATTRIBUTE_NESTED_PRIVATE 0x00000003 92 | #define TYPE_ATTRIBUTE_NESTED_FAMILY 0x00000004 93 | #define TYPE_ATTRIBUTE_NESTED_ASSEMBLY 0x00000005 94 | #define TYPE_ATTRIBUTE_NESTED_FAM_AND_ASSEM 0x00000006 95 | #define TYPE_ATTRIBUTE_NESTED_FAM_OR_ASSEM 0x00000007 96 | 97 | #define TYPE_ATTRIBUTE_LAYOUT_MASK 0x00000018 98 | #define TYPE_ATTRIBUTE_AUTO_LAYOUT 0x00000000 99 | #define TYPE_ATTRIBUTE_SEQUENTIAL_LAYOUT 0x00000008 100 | #define TYPE_ATTRIBUTE_EXPLICIT_LAYOUT 0x00000010 101 | 102 | #define TYPE_ATTRIBUTE_CLASS_SEMANTIC_MASK 0x00000020 103 | #define TYPE_ATTRIBUTE_CLASS 0x00000000 104 | #define TYPE_ATTRIBUTE_INTERFACE 0x00000020 105 | 106 | #define TYPE_ATTRIBUTE_ABSTRACT 0x00000080 107 | #define TYPE_ATTRIBUTE_SEALED 0x00000100 108 | #define TYPE_ATTRIBUTE_SPECIAL_NAME 0x00000400 109 | 110 | #define TYPE_ATTRIBUTE_IMPORT 0x00001000 111 | #define TYPE_ATTRIBUTE_SERIALIZABLE 0x00002000 112 | 113 | #define TYPE_ATTRIBUTE_STRING_FORMAT_MASK 0x00030000 114 | #define TYPE_ATTRIBUTE_ANSI_CLASS 0x00000000 115 | #define TYPE_ATTRIBUTE_UNICODE_CLASS 0x00010000 116 | #define TYPE_ATTRIBUTE_AUTO_CLASS 0x00020000 117 | 118 | #define TYPE_ATTRIBUTE_BEFORE_FIELD_INIT 0x00100000 119 | #define TYPE_ATTRIBUTE_FORWARDER 0x00200000 120 | 121 | #define TYPE_ATTRIBUTE_RESERVED_MASK 0x00040800 122 | #define TYPE_ATTRIBUTE_RT_SPECIAL_NAME 0x00000800 123 | #define TYPE_ATTRIBUTE_HAS_SECURITY 0x00040000 124 | 125 | /* 126 | * Flags for Params (22.1.12) 127 | */ 128 | #define PARAM_ATTRIBUTE_IN 0x0001 129 | #define PARAM_ATTRIBUTE_OUT 0x0002 130 | #define PARAM_ATTRIBUTE_OPTIONAL 0x0010 131 | #define PARAM_ATTRIBUTE_RESERVED_MASK 0xf000 132 | #define PARAM_ATTRIBUTE_HAS_DEFAULT 0x1000 133 | #define PARAM_ATTRIBUTE_HAS_FIELD_MARSHAL 0x2000 134 | #define PARAM_ATTRIBUTE_UNUSED 0xcfe0 135 | 136 | // Flags for Generic Parameters (II.23.1.7) 137 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_NON_VARIANT 0x00 138 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_COVARIANT 0x01 139 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_CONTRAVARIANT 0x02 140 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_VARIANCE_MASK 0x03 141 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_REFERENCE_TYPE_CONSTRAINT 0x04 142 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_NOT_NULLABLE_VALUE_TYPE_CONSTRAINT 0x08 143 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_DEFAULT_CONSTRUCTOR_CONSTRAINT 0x10 144 | #define IL2CPP_GENERIC_PARAMETER_ATTRIBUTE_SPECIAL_CONSTRAINT_MASK 0x1C 145 | 146 | /** 147 | * 21.5 AssemblyRefs 148 | */ 149 | #define ASSEMBLYREF_FULL_PUBLIC_KEY_FLAG 0x00000001 150 | #define ASSEMBLYREF_RETARGETABLE_FLAG 0x00000100 151 | #define ASSEMBLYREF_ENABLEJITCOMPILE_TRACKING_FLAG 0x00008000 152 | #define ASSEMBLYREF_DISABLEJITCOMPILE_OPTIMIZER_FLAG 0x00004000 153 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cpp_dump.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Perfare on 2020/7/4. 3 | // 4 | 5 | #ifndef RIRU_IL2CPPDUMPER_IL2CPP_H 6 | #define RIRU_IL2CPPDUMPER_IL2CPP_H 7 | 8 | 9 | #define UnityVersion 2019.4.17f1 10 | 11 | // 2018.3.0f2(v24.1) and up enable it 12 | #define VersionAboveV24 13 | 14 | // 2020.2.0f1 and up enable it 15 | //#define VersionAbove2020V2 16 | 17 | #define STR(x) #x 18 | #define STRINGIFY_MACRO(x) STR(x) 19 | #define EXPAND(x) x 20 | #define IL2CPPHEADER(a, b, c) STRINGIFY_MACRO(EXPAND(a)EXPAND(b)EXPAND(c)) 21 | #define IL2CPPAPIDIR il2cppapi/ 22 | #define IL2CPPCLASS IL2CPPHEADER(IL2CPPAPIDIR, UnityVersion, /il2cpp-class.h) 23 | #define IL2CPPAPI IL2CPPHEADER(IL2CPPAPIDIR, UnityVersion, /il2cpp-api-functions.h) 24 | 25 | void il2cpp_dump(void *handle, char *outDir); 26 | 27 | #endif //RIRU_IL2CPPDUMPER_IL2CPP_H 28 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.3.0f3/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.3.1f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.10f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.11f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.12f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.13f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.14f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.15f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.16f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.17f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/il2cppapi/2017.4.18f1/il2cpp-api-functions.h: -------------------------------------------------------------------------------- 1 | #ifndef DO_API_NO_RETURN 2 | #define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p) 3 | #endif 4 | 5 | 6 | DO_API(void, il2cpp_init, (const char* domain_name)); 7 | DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); 8 | DO_API(void, il2cpp_shutdown, ()); 9 | DO_API(void, il2cpp_set_config_dir, (const char *config_path)); 10 | DO_API(void, il2cpp_set_data_dir, (const char *data_path)); 11 | DO_API(void, il2cpp_set_temp_dir, (const char *temp_path)); 12 | DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir)); 13 | DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir)); 14 | DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath)); 15 | DO_API(void, il2cpp_set_config, (const char* executablePath)); 16 | 17 | DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks)); 18 | DO_API(const Il2CppImage*, il2cpp_get_corlib, ()); 19 | DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method)); 20 | DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name)); 21 | 22 | DO_API(void*, il2cpp_alloc, (size_t size)); 23 | DO_API(void, il2cpp_free, (void* ptr)); 24 | 25 | // array 26 | DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank)); 27 | DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array)); 28 | DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array)); 29 | DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length)); 30 | DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length)); 31 | DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds)); 32 | DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded)); 33 | DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class)); 34 | 35 | // assembly 36 | DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly)); 37 | 38 | // class 39 | DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); 40 | DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); 41 | DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass)); 42 | DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass)); 43 | DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces)); 44 | DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc)); 45 | DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type)); 46 | DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name)); 47 | DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type)); 48 | DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass)); 49 | DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter)); 50 | DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter)); 51 | DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter)); 52 | DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter)); 53 | DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter)); 54 | DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name)); 55 | DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name)); 56 | DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter)); 57 | DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount)); 58 | DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); 59 | DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); 60 | DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); 61 | DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass)); 62 | DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass)); 63 | DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass)); 64 | DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass)); 65 | DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align)); 66 | DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass)); 67 | DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass)); 68 | DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass)); 69 | DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass)); 70 | DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass)); 71 | DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); 72 | DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); 73 | DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); 74 | DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); 75 | DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass)); 76 | DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); 77 | DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); 78 | 79 | // testing only 80 | DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass)); 81 | DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap)); 82 | 83 | // stats 84 | DO_API(bool, il2cpp_stats_dump_to_file, (const char *path)); 85 | DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat)); 86 | 87 | // domain 88 | DO_API(Il2CppDomain*, il2cpp_domain_get, ()); 89 | DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name)); 90 | DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size)); 91 | 92 | // exception 93 | DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*)); 94 | DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg)); 95 | DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg)); 96 | DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size)); 97 | DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size)); 98 | DO_API(void, il2cpp_unhandled_exception, (Il2CppException*)); 99 | 100 | // field 101 | DO_API(int, il2cpp_field_get_flags, (FieldInfo * field)); 102 | DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field)); 103 | DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field)); 104 | DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field)); 105 | DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field)); 106 | DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 107 | DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj)); 108 | DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class)); 109 | DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value)); 110 | DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value)); 111 | DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); 112 | DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); 113 | 114 | // gc 115 | DO_API(void, il2cpp_gc_collect, (int maxGenerations)); 116 | DO_API(int32_t, il2cpp_gc_collect_a_little, ()); 117 | DO_API(void, il2cpp_gc_disable, ()); 118 | DO_API(void, il2cpp_gc_enable, ()); 119 | DO_API(int64_t, il2cpp_gc_get_used_size, ()); 120 | DO_API(int64_t, il2cpp_gc_get_heap_size, ()); 121 | 122 | // gchandle 123 | DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned)); 124 | DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection)); 125 | DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); 126 | DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); 127 | 128 | // liveness 129 | DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped)); 130 | DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state)); 131 | DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state)); 132 | DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state)); 133 | 134 | // method 135 | DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method)); 136 | DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method)); 137 | DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); 138 | DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); 139 | DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); 140 | DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method)); 141 | DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method)); 142 | DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method)); 143 | DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index)); 144 | DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method)); 145 | DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class)); 146 | DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags)); 147 | DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method)); 148 | DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index)); 149 | 150 | // profiler 151 | #if IL2CPP_ENABLE_PROFILER 152 | 153 | DO_API(void, il2cpp_profiler_install, (Il2CppProfiler * prof, Il2CppProfileFunc shutdown_callback)); 154 | DO_API(void, il2cpp_profiler_set_events, (Il2CppProfileFlags events)); 155 | DO_API(void, il2cpp_profiler_install_enter_leave, (Il2CppProfileMethodFunc enter, Il2CppProfileMethodFunc fleave)); 156 | DO_API(void, il2cpp_profiler_install_allocation, (Il2CppProfileAllocFunc callback)); 157 | DO_API(void, il2cpp_profiler_install_gc, (Il2CppProfileGCFunc callback, Il2CppProfileGCResizeFunc heap_resize_callback)); 158 | DO_API(void, il2cpp_profiler_install_fileio, (Il2CppProfileFileIOFunc callback)); 159 | 160 | #endif 161 | 162 | // property 163 | DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop)); 164 | DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop)); 165 | DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop)); 166 | DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop)); 167 | DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop)); 168 | 169 | // object 170 | DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj)); 171 | DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj)); 172 | DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method)); 173 | DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass)); 174 | DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj)); 175 | 176 | DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data)); 177 | 178 | // monitor 179 | DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj)); 180 | DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout)); 181 | DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj)); 182 | DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj)); 183 | DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj)); 184 | DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj)); 185 | DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout)); 186 | 187 | // runtime 188 | DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc)); 189 | DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc)); 190 | DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass)); 191 | DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj)); 192 | 193 | DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc)); 194 | 195 | DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value)); 196 | 197 | // string 198 | DO_API(int32_t, il2cpp_string_length, (Il2CppString * str)); 199 | DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str)); 200 | DO_API(Il2CppString*, il2cpp_string_new, (const char* str)); 201 | DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length)); 202 | DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len)); 203 | DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str)); 204 | DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str)); 205 | DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); 206 | 207 | // thread 208 | DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); 209 | DO_API(Il2CppThread*, il2cpp_thread_current, ()); 210 | DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); 211 | DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread)); 212 | 213 | DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size)); 214 | DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread)); 215 | 216 | // stacktrace 217 | DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data)); 218 | DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); 219 | DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); 220 | DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); 221 | DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); 222 | DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); 223 | DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); 224 | DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); 225 | 226 | // type 227 | DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type)); 228 | DO_API(int, il2cpp_type_get_type, (const Il2CppType * type)); 229 | DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type)); 230 | DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); 231 | 232 | // image 233 | DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image)); 234 | DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image)); 235 | DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image)); 236 | DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image)); 237 | 238 | // Memory information 239 | DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); 240 | DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot)); 241 | 242 | DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method)); 243 | 244 | // Logging 245 | DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); 246 | -------------------------------------------------------------------------------- /app/src/main/jni/Includes/log.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Perfare on 2020/7/4. 3 | // 4 | 5 | #ifndef RIRU_IL2CPPDUMPER_LOG_H 6 | #define RIRU_IL2CPPDUMPER_LOG_H 7 | 8 | #include 9 | 10 | #define LOG_TAG "DUMPER" 11 | #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__) 12 | #define LOGW(...) __android_log_print(ANDROID_LOG_WARN, LOG_TAG, __VA_ARGS__) 13 | #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__) 14 | #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__) 15 | 16 | #endif //RIRU_IL2CPPDUMPER_LOG_H 17 | -------------------------------------------------------------------------------- /app/src/main/jni/native-lib.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include "Includes/il2cpp_dump.h" 7 | 8 | bool isLibraryLoaded(const char *libraryName) { 9 | char line[512] = {0}; 10 | FILE *fp = fopen("/proc/self/maps", "rt"); 11 | if (fp != nullptr) { 12 | while (fgets(line, sizeof(line), fp)) { 13 | if (strstr(line, libraryName)) { 14 | return true; 15 | } 16 | } 17 | fclose(fp); 18 | } 19 | return false; 20 | } 21 | #define libTarget "libil2cpp.so" 22 | 23 | void dump_thread() { 24 | do { 25 | sleep(1); 26 | } while (!isLibraryLoaded(libTarget)); 27 | sleep(4); 28 | auto il2cpp_handle = dlopen(libTarget, 4); 29 | il2cpp_dump(il2cpp_handle, "/sdcard/Download"); 30 | } 31 | 32 | __attribute__((constructor)) 33 | void lib_main() { 34 | // Create a new thread so it does not block the main thread, means the game would not freeze 35 | std::thread(dump_thread).detach(); 36 | } 37 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 15 | 18 | 21 | 22 | 23 | 24 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 55 | 60 | 65 | 70 | 75 | 80 | 85 | 90 | 95 | 100 | 105 | 110 | 115 | 120 | 125 | 130 | 135 | 140 | 145 | 150 | 155 | 160 | 165 | 170 | 171 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Auto-Il2cppDumper 3 | -------------------------------------------------------------------------------- /app/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | buildscript { 3 | repositories { 4 | google() 5 | mavenCentral() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:7.0.0' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | google() 18 | mavenCentral() 19 | } 20 | } 21 | 22 | task clean(type: Delete) { 23 | delete rootProject.buildDir 24 | } -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | # IDE (e.g. Android Studio) users: 3 | # Gradle settings configured through the IDE *will override* 4 | # any settings specified in this file. 5 | # For more details on how to configure your build environment visit 6 | # http://www.gradle.org/docs/current/userguide/build_environment.html 7 | # Specifies the JVM arguments used for the daemon process. 8 | # The setting is particularly useful for tweaking memory settings. 9 | org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 10 | # When configured, Gradle will run in incubating parallel mode. 11 | # This option should only be used with decoupled projects. More details, visit 12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 13 | # org.gradle.parallel=true 14 | # AndroidX package structure to make it clearer which packages are bundled with the 15 | # Android operating system, and which are packaged with your app"s APK 16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn 17 | android.useAndroidX=true 18 | # Automatically convert third-party libraries to use AndroidX 19 | android.enableJetifier=true 20 | # Kotlin code style for this project: "official" or "obsolete": 21 | kotlin.code.style=official -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BryanGIG/Auto-Il2cppDumper/1e575e48762e2524dc4f5f8bef61559cbacb416a/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu Apr 29 20:48:33 ICT 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip 7 | -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | ############################################################################## 4 | ## 5 | ## Gradle start up script for UN*X 6 | ## 7 | ############################################################################## 8 | 9 | # Attempt to set APP_HOME 10 | # Resolve links: $0 may be a link 11 | PRG="$0" 12 | # Need this for relative symlinks. 13 | while [ -h "$PRG" ] ; do 14 | ls=`ls -ld "$PRG"` 15 | link=`expr "$ls" : '.*-> \(.*\)$'` 16 | if expr "$link" : '/.*' > /dev/null; then 17 | PRG="$link" 18 | else 19 | PRG=`dirname "$PRG"`"/$link" 20 | fi 21 | done 22 | SAVED="`pwd`" 23 | cd "`dirname \"$PRG\"`/" >/dev/null 24 | APP_HOME="`pwd -P`" 25 | cd "$SAVED" >/dev/null 26 | 27 | APP_NAME="Gradle" 28 | APP_BASE_NAME=`basename "$0"` 29 | 30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 31 | DEFAULT_JVM_OPTS="" 32 | 33 | # Use the maximum available, or set MAX_FD != -1 to use that value. 34 | MAX_FD="maximum" 35 | 36 | warn () { 37 | echo "$*" 38 | } 39 | 40 | die () { 41 | echo 42 | echo "$*" 43 | echo 44 | exit 1 45 | } 46 | 47 | # OS specific support (must be 'true' or 'false'). 48 | cygwin=false 49 | msys=false 50 | darwin=false 51 | nonstop=false 52 | case "`uname`" in 53 | CYGWIN* ) 54 | cygwin=true 55 | ;; 56 | Darwin* ) 57 | darwin=true 58 | ;; 59 | MINGW* ) 60 | msys=true 61 | ;; 62 | NONSTOP* ) 63 | nonstop=true 64 | ;; 65 | esac 66 | 67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 68 | 69 | # Determine the Java command to use to start the JVM. 70 | if [ -n "$JAVA_HOME" ] ; then 71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 72 | # IBM's JDK on AIX uses strange locations for the executables 73 | JAVACMD="$JAVA_HOME/jre/sh/java" 74 | else 75 | JAVACMD="$JAVA_HOME/bin/java" 76 | fi 77 | if [ ! -x "$JAVACMD" ] ; then 78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 79 | 80 | Please set the JAVA_HOME variable in your environment to match the 81 | location of your Java installation." 82 | fi 83 | else 84 | JAVACMD="java" 85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 86 | 87 | Please set the JAVA_HOME variable in your environment to match the 88 | location of your Java installation." 89 | fi 90 | 91 | # Increase the maximum file descriptors if we can. 92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then 93 | MAX_FD_LIMIT=`ulimit -H -n` 94 | if [ $? -eq 0 ] ; then 95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then 96 | MAX_FD="$MAX_FD_LIMIT" 97 | fi 98 | ulimit -n $MAX_FD 99 | if [ $? -ne 0 ] ; then 100 | warn "Could not set maximum file descriptor limit: $MAX_FD" 101 | fi 102 | else 103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" 104 | fi 105 | fi 106 | 107 | # For Darwin, add options to specify how the application appears in the dock 108 | if $darwin; then 109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" 110 | fi 111 | 112 | # For Cygwin, switch paths to Windows format before running java 113 | if $cygwin ; then 114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"` 115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 116 | JAVACMD=`cygpath --unix "$JAVACMD"` 117 | 118 | # We build the pattern for arguments to be converted via cygpath 119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` 120 | SEP="" 121 | for dir in $ROOTDIRSRAW ; do 122 | ROOTDIRS="$ROOTDIRS$SEP$dir" 123 | SEP="|" 124 | done 125 | OURCYGPATTERN="(^($ROOTDIRS))" 126 | # Add a user-defined pattern to the cygpath arguments 127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then 128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" 129 | fi 130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 131 | i=0 132 | for arg in "$@" ; do 133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` 134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option 135 | 136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition 137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` 138 | else 139 | eval `echo args$i`="\"$arg\"" 140 | fi 141 | i=$((i+1)) 142 | done 143 | case $i in 144 | (0) set -- ;; 145 | (1) set -- "$args0" ;; 146 | (2) set -- "$args0" "$args1" ;; 147 | (3) set -- "$args0" "$args1" "$args2" ;; 148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;; 149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; 154 | esac 155 | fi 156 | 157 | # Escape application args 158 | save () { 159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done 160 | echo " " 161 | } 162 | APP_ARGS=$(save "$@") 163 | 164 | # Collect all arguments for the java command, following the shell quoting and substitution rules 165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" 166 | 167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong 168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then 169 | cd "$(dirname "$0")" 170 | fi 171 | 172 | exec "$JAVACMD" "$@" 173 | -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- 1 | @if "%DEBUG%" == "" @echo off 2 | @rem ########################################################################## 3 | @rem 4 | @rem Gradle startup script for Windows 5 | @rem 6 | @rem ########################################################################## 7 | 8 | @rem Set local scope for the variables with windows NT shell 9 | if "%OS%"=="Windows_NT" setlocal 10 | 11 | set DIRNAME=%~dp0 12 | if "%DIRNAME%" == "" set DIRNAME=. 13 | set APP_BASE_NAME=%~n0 14 | set APP_HOME=%DIRNAME% 15 | 16 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 17 | set DEFAULT_JVM_OPTS= 18 | 19 | @rem Find java.exe 20 | if defined JAVA_HOME goto findJavaFromJavaHome 21 | 22 | set JAVA_EXE=java.exe 23 | %JAVA_EXE% -version >NUL 2>&1 24 | if "%ERRORLEVEL%" == "0" goto init 25 | 26 | echo. 27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 28 | echo. 29 | echo Please set the JAVA_HOME variable in your environment to match the 30 | echo location of your Java installation. 31 | 32 | goto fail 33 | 34 | :findJavaFromJavaHome 35 | set JAVA_HOME=%JAVA_HOME:"=% 36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 37 | 38 | if exist "%JAVA_EXE%" goto init 39 | 40 | echo. 41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 42 | echo. 43 | echo Please set the JAVA_HOME variable in your environment to match the 44 | echo location of your Java installation. 45 | 46 | goto fail 47 | 48 | :init 49 | @rem Get command-line arguments, handling Windows variants 50 | 51 | if not "%OS%" == "Windows_NT" goto win9xME_args 52 | 53 | :win9xME_args 54 | @rem Slurp the command line arguments. 55 | set CMD_LINE_ARGS= 56 | set _SKIP=2 57 | 58 | :win9xME_args_slurp 59 | if "x%~1" == "x" goto execute 60 | 61 | set CMD_LINE_ARGS=%* 62 | 63 | :execute 64 | @rem Setup the command line 65 | 66 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 67 | 68 | @rem Execute Gradle 69 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% 70 | 71 | :end 72 | @rem End local scope for the variables with windows NT shell 73 | if "%ERRORLEVEL%"=="0" goto mainEnd 74 | 75 | :fail 76 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 77 | rem the _cmd.exe /c_ return code! 78 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 79 | exit /b 1 80 | 81 | :mainEnd 82 | if "%OS%"=="Windows_NT" endlocal 83 | 84 | :omega 85 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Auto-Il2cppDumper" --------------------------------------------------------------------------------