package binsec
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  Semantic analysis of binary executables
Install
    
    dune-project
 Dependency
Authors
- 
  
    
    AAdel Djoudi
- 
  
    
    BBenjamin Farinier
- 
  
    
    CChakib Foulani
- 
  
    
    DDorian Lesbre
- 
  
    
    FFrédéric Recoules
- 
  
    
    GGuillaume Girol
- 
  
    
    JJosselin Feist
- 
  
    
    LLesly-Ann Daniel
- 
  
    
    MMahmudul Faisal Al Ameen
- 
  
    
    MManh-Dung Nguyen
- 
  
    
    MMathéo Vergnolle
- 
  
    
    MMathilde Ollivier
- 
  
    
    MMatthieu Lemerre
- 
  
    
    NNicolas Bellec
- 
  
    
    OOlivier Nicole
- 
  
    
    RRichard Bonichon
- 
  
    
    RRobin David
- 
  
    
    SSébastien Bardin
- 
  
    
    SSoline Ducousso
- 
  
    
    TTa Thanh Dinh
- 
  
    
    YYaëlle Vinçont
- 
  
    
    YYanis Sellami
Maintainers
Sources
  
    
      binsec-0.10.1.tbz
    
    
        
    
  
  
  
    
  
  
    
  
        sha256=87d4048c9a90c8a14ee029e77d31032a15427f06416a31938cec8a68394234c4
    
    
  sha512=6a023d2a5c87c56b0aac489874431d8dcccee1451a072a826190be3a7f75a961688bab95f193f494231744abc3bc9733ab5c809057d36a5e4d24c6c29c369144
    
    
  doc/libterm/Libterm/Sexpr/Expr/index.html
Module Sexpr.Expr
include Binsec.Term.S with type a := string and type b := Memory.t
type nonrec size = Binsec.Term.sizetype 'a op = 'a Binsec.Term.operator = - | Not : Binsec.Term.unary op
- | Sext : size -> Binsec.Term.unary op
- | Uext : size -> Binsec.Term.unary op
- | Restrict : int interval -> Binsec.Term.unary op
- | Plus : Binsec.Term.binary op
- | Minus : _ op
- | Mul : Binsec.Term.binary op
- | Udiv : Binsec.Term.binary op
- | Umod : Binsec.Term.binary op
- | Sdiv : Binsec.Term.binary op
- | Smod : Binsec.Term.binary op
- | Or : Binsec.Term.binary op
- | And : Binsec.Term.binary op
- | Xor : Binsec.Term.binary op
- | Concat : Binsec.Term.binary op
- | Lsl : Binsec.Term.binary op
- | Lsr : Binsec.Term.binary op
- | Asr : Binsec.Term.binary op
- | Rol : Binsec.Term.binary op
- | Ror : Binsec.Term.binary op
- | Eq : Binsec.Term.binary op
- | Diff : Binsec.Term.binary op
- | Ule : Binsec.Term.binary op
- | Ult : Binsec.Term.binary op
- | Uge : Binsec.Term.binary op
- | Ugt : Binsec.Term.binary op
- | Sle : Binsec.Term.binary op
- | Slt : Binsec.Term.binary op
- | Sge : Binsec.Term.binary op
- | Sgt : Binsec.Term.binary op
type ('k, 'a, 'b) term = private ('k, 'a, 'b) Binsec.Term.t = - | Var : {- hash : int;
- size : size;
- name : string;
- label : 'a;
 - } -> ([< `Var | `Loc | `Exp ], 'a, _) term
- | Load : {- hash : int;
- len : size;
- dir : endianness;
- mutable addr : ([ `Exp ], 'a, 'b) term;
- label : 'b;
 - } -> ([< `Mem | `Loc | `Exp ], 'a, 'b) term
- | Cst : Binsec.Bitvector.t -> ([< `Cst | `Exp ], _, _) term
- | Unary : {- hash : int;
- size : size;
- f : Binsec.Term.unary Binsec.Term.operator;
- mutable x : ([ `Exp ], 'a, 'b) term;
 - } -> ([< `Unary | `Exp ], 'a, 'b) term
- | Binary : {- hash : int;
- size : size;
- f : Binsec.Term.binary Binsec.Term.operator;
- mutable x : ([ `Exp ], 'a, 'b) term;
- mutable y : ([ `Exp ], 'a, 'b) term;
 - } -> ([< `Binary | `Exp ], 'a, 'b) term
- | Ite : {- hash : int;
- size : size;
- mutable c : ([ `Exp ], 'a, 'b) term;
- mutable t : ([ `Exp ], 'a, 'b) term;
- mutable e : ([ `Exp ], 'a, 'b) term;
 - } -> ([< `Ite | `Exp ], 'a, 'b) term
Smart constructors
val load : size -> endianness -> t -> Memory.t -> tload nbytes endianness addr label
val constant : Binsec.Bitvector.t -> tconstant bv creates a constant expression from the bitvector bv.
val unary : Binsec.Term.unary op -> t -> tunary f x creates a unary application of f on x.
val binary : Binsec.Term.binary op -> t -> t -> tbinary f x y creates a binary application of f on x and y.
shift_(left|right) e q shifts expression e by quantity q, padding with zeroes
restrict lo hi e creates Dba.ExprUnary(Restrict(lo, hi), e) if hi >= lo && lo >=0 .
Specific constants
val zeros : int -> tzeros n creates a constant expression of value 0 with length n
val ones : int -> tones n creates a constant expression of value 1 with length n. I.e.; it has (n - 1) zeros in binary.
val one : tval zero : tUtils
*
val hash : t -> inthash t returns the hash of t in constant time.
val _unary : Binsec.Term.unary op -> t -> tRaw constructors
_unary f x creates a unary application of f on x.
val _binary : Binsec.Term.binary op -> t -> t -> t_binary f x y creates a binary application of f on x and y.
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >