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 \ ]
[ ^ close ` $
D a readByte ()B c d
D e java/nio/ByteBuffer g allocate (I)Ljava/nio/ByteBuffer; i j
h k
getChannel !()Ljava/nio/channels/FileChannel; m n
D o java/nio/channels/FileChannel q (Ljava/nio/ByteBuffer;J)I T s
r t get (I)B v w
h x java/nio/ByteOrder z
BIG_ENDIAN Ljava/nio/ByteOrder; | } { ~
LITTLE_ENDIAN ? } { ? order +(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer; ? ?
h ? getInt (I)I ? ?
h ? java/lang/Throwable ? magic flags
sizeIndicator B
headerData Ljava/nio/ByteBuffer; raf Ljava/io/RandomAccessFile;
ConstantValue Code LocalVariableTable LineNumberTable
Exceptions
StackMapTable
SourceFile
?
?
? ? ? ? K ? Y*? "L+? &+? ? ' ( ? # $
% ? ) * ? / *? ,? ? - ( ? 4 . * ? / *? 0? ? - ( ? <