├── .gitignore ├── README.MD ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── src ├── main └── kotlin │ └── dev │ └── binclub │ └── bincode │ ├── Bincode.kt │ ├── DataParser.kt │ ├── InvalidClassException.kt │ ├── parsing │ ├── AnnotationElementPairParser.kt │ ├── AnnotationParser.kt │ ├── ClassFileParser.kt │ ├── ConstantPoolParser.kt │ ├── FieldsParser.kt │ ├── InterfaceParser.kt │ ├── MethodParser.kt │ └── attributes │ │ ├── AttributeParser.kt │ │ ├── AttributeSource.kt │ │ ├── CodeParser.kt │ │ └── SpecificAttributeParser.kt │ ├── types │ ├── AccessFlags.kt │ ├── ClassFile.kt │ ├── ClassVersion.kt │ ├── Field.kt │ ├── Method.kt │ ├── annotation │ │ ├── Annotation.kt │ │ ├── AnnotationValue.kt │ │ ├── ArrayAnnotationValue.kt │ │ ├── ClassAnnotationValue.kt │ │ ├── ConstantAnnotationValue.kt │ │ ├── EnumConstantAnnotationValue.kt │ │ └── InnerAnnotationAnnotationValue.kt │ ├── attributes │ │ ├── Attribute.kt │ │ ├── Attributes.kt │ │ └── types │ │ │ └── code │ │ │ ├── CodeAttribute.kt │ │ │ ├── LineNumber.kt │ │ │ ├── LocalVariable.kt │ │ │ ├── Opcode.kt │ │ │ ├── TryCatchBlock.kt │ │ │ └── insns │ │ │ ├── InsnList.kt │ │ │ ├── Insns.kt │ │ │ ├── LookupSwitchInsn.kt │ │ │ └── TableSwitchInsn.kt │ └── constantpool │ │ ├── Constant.kt │ │ ├── ConstantPool.kt │ │ ├── ConstantPoolReference.kt │ │ └── constants │ │ ├── ClassConstant.kt │ │ ├── DoubleConstant.kt │ │ ├── DynamicConstant.kt │ │ ├── FieldRefConstant.kt │ │ ├── FloatConstant.kt │ │ ├── IntegerConstant.kt │ │ ├── InvalidConstant.kt │ │ ├── LongConstant.kt │ │ ├── MethodConstant.kt │ │ ├── MethodHandleConstant.kt │ │ ├── MethodTypeConstant.kt │ │ ├── ModuleConstant.kt │ │ ├── NameAndTypeConstant.kt │ │ ├── PackageConstant.kt │ │ ├── StringConstant.kt │ │ └── Utf8Constant.kt │ └── utils │ └── Extensions.kt └── test ├── java └── parsing │ └── ExampleClass1.java ├── kotlin └── parsing │ ├── Parse2.kt │ └── ParsingTest1.kt └── resources └── parsing └── ExampleClass1.txt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/.gitignore -------------------------------------------------------------------------------- /README.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/README.MD -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | kotlin.code.style=official -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'BinCode' 2 | 3 | -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/Bincode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/Bincode.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/DataParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/DataParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/InvalidClassException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/InvalidClassException.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/AnnotationElementPairParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/AnnotationElementPairParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/AnnotationParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/AnnotationParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/ClassFileParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/ClassFileParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/ConstantPoolParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/ConstantPoolParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/FieldsParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/FieldsParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/InterfaceParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/InterfaceParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/MethodParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/MethodParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/attributes/AttributeParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/attributes/AttributeParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/attributes/AttributeSource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/attributes/AttributeSource.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/attributes/CodeParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/attributes/CodeParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/parsing/attributes/SpecificAttributeParser.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/parsing/attributes/SpecificAttributeParser.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/AccessFlags.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/AccessFlags.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/ClassFile.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/ClassFile.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/ClassVersion.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/ClassVersion.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/Field.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/Field.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/Method.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/Method.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/Annotation.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/Annotation.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/AnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/AnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/ArrayAnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/ArrayAnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/ClassAnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/ClassAnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/ConstantAnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/ConstantAnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/EnumConstantAnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/EnumConstantAnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/annotation/InnerAnnotationAnnotationValue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/annotation/InnerAnnotationAnnotationValue.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/Attribute.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/Attribute.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/Attributes.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/Attributes.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/CodeAttribute.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/CodeAttribute.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/LineNumber.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/LineNumber.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/LocalVariable.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/LocalVariable.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/Opcode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/Opcode.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/TryCatchBlock.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/TryCatchBlock.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/InsnList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/InsnList.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/Insns.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/Insns.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/LookupSwitchInsn.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/LookupSwitchInsn.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/TableSwitchInsn.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/attributes/types/code/insns/TableSwitchInsn.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/Constant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/Constant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/ConstantPool.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/ConstantPool.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/ConstantPoolReference.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/ConstantPoolReference.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/ClassConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/ClassConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/DoubleConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/DoubleConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/DynamicConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/DynamicConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/FieldRefConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/FieldRefConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/FloatConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/FloatConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/IntegerConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/IntegerConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/InvalidConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/InvalidConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/LongConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/LongConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodHandleConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodHandleConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodTypeConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/MethodTypeConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/ModuleConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/ModuleConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/NameAndTypeConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/NameAndTypeConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/PackageConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/PackageConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/StringConstant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/StringConstant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/Utf8Constant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/types/constantpool/constants/Utf8Constant.kt -------------------------------------------------------------------------------- /src/main/kotlin/dev/binclub/bincode/utils/Extensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/main/kotlin/dev/binclub/bincode/utils/Extensions.kt -------------------------------------------------------------------------------- /src/test/java/parsing/ExampleClass1.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/test/java/parsing/ExampleClass1.java -------------------------------------------------------------------------------- /src/test/kotlin/parsing/Parse2.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/test/kotlin/parsing/Parse2.kt -------------------------------------------------------------------------------- /src/test/kotlin/parsing/ParsingTest1.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/test/kotlin/parsing/ParsingTest1.kt -------------------------------------------------------------------------------- /src/test/resources/parsing/ExampleClass1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/x4e/BinCode/HEAD/src/test/resources/parsing/ExampleClass1.txt --------------------------------------------------------------------------------