com.groupbyinc.flux.common.sun.jna.ELFAnalyser.class Maven / Gradle / Ivy
???? 2 ? .com/groupbyinc/flux/common/sun/jna/ELFAnalyser java/lang/Object ELFAnalyser.java ELF_MAGIC [B EF_ARM_ABI_FLOAT_HARD I EF_ARM_ABI_FLOAT_SOFT EI_DATA_BIG_ENDIAN
E_MACHINE_ARM ( EI_CLASS_64BIT filename Ljava/lang/String; ELF Z _64Bit bigEndian armHardFloat armSoftFloat arm analyse D(Ljava/lang/String;)Lcom/groupbyinc/flux/common/sun/jna/ELFAnalyser; java/io/IOException (Ljava/lang/String;)V
! runDetection ()V # $
% res 0Lcom/groupbyinc/flux/common/sun/jna/ELFAnalyser; isELF ()Z + this is64Bit / isBigEndian 2 getFilename ()Ljava/lang/String; 6 isArmHardFloat 9 isArmSoftFloat < isArm ? $
A java/io/RandomAccessFile C r E '(Ljava/lang/String;Ljava/lang/String;)V G
D H length ()J J K
D L seek (J)V P Q
D R read ([B)I T U
D V X java/util/Arrays Z equals ([B[B)Z \ ]
[ ^ readByte ()B ` a
D b java/nio/ByteBuffer d allocate (I)Ljava/nio/ByteBuffer; f g
e h
getChannel !()Ljava/nio/channels/FileChannel; j k
D l java/nio/channels/FileChannel n (Ljava/nio/ByteBuffer;J)I T p
o q get (I)B s t
e u java/nio/ByteOrder w
BIG_ENDIAN Ljava/nio/ByteOrder; y z x {
LITTLE_ENDIAN } z x ~ order +(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer; ? ?
e ? getInt (I)I ? ?
e ? magic flags raf Ljava/io/RandomAccessFile;
sizeIndicator B
headerData Ljava/nio/ByteBuffer;
ConstantValue Code LocalVariableTable LineNumberTable
Exceptions
StackMapTable
SourceFile
?
?
? ? ? ? K ? Y*? "L+? &+? ? ' ( ? # $
% ? ) * ? / *? ,? ? - ( ? 4 . * ? / *? 0? ? - ( ? <