package binsec
Semantic analysis of binary executables
Install
Dune Dependency
Authors
-
AAdel Djoudi
-
BBenjamin Farinier
-
CChakib Foulani
-
DDorian Lesbre
-
FFrédéric Recoules
-
GGuillaume Girol
-
JJosselin Feist
-
LLesly-Ann Daniel
-
MManh-Dung Nguyen
-
MMathéo Vergnolle
-
MMathilde Ollivier
-
MMatthieu Lemerre
-
OOlivier Nicole
-
RRichard Bonichon
-
RRobin David
-
SSébastien Bardin
-
SSoline Ducousso
-
TTa Thanh Dinh
-
YYaëlle Vinçont
Maintainers
Sources
binsec-0.6.0.tbz
sha256=e9101e68d317c837d5cff9608c6fba2127dd31ef6373b9b90806780c1d80bb52
sha512=c01af277239b8cc84fb904c301897f7d2388a8c850c7cb6a53acb8a4f8d51115c8a595c5517843d076421a76f4b2becb16e722b4c90f19a8fa208cce5f3ba274
doc/binsec/Binsec/Term/module-type-S/index.html
Module type Term.S
type nonrec size = size
type 'a op = 'a operator =
| Not : unary op
| Sext : size -> unary op
| Uext : size -> unary op
| Restrict : int interval -> unary op
| Plus : binary op
| Minus : _ op
| Mul : binary op
| Udiv : binary op
| Umod : binary op
| Sdiv : binary op
| Smod : binary op
| Or : binary op
| And : binary op
| Xor : binary op
| Concat : binary op
| Lsl : binary op
| Lsr : binary op
| Asr : binary op
| Rol : binary op
| Ror : binary op
| Eq : binary op
| Diff : binary op
| Ule : binary op
| Ult : binary op
| Uge : binary op
| Ugt : binary op
| Sle : binary op
| Slt : binary op
| Sge : binary op
| Sgt : binary op
type ('k, 'l, 'a, 'b) term = private ('k, 'l, 'a, 'b) t =
| Var : {
hash : int;
size : size;
name : string;
label : 'a;
} -> (exp, _, 'a, _) term
| Load : {
hash : int;
len : size;
dir : endianness;
addr : (exp, exp, 'a, 'b) term;
label : 'b;
} -> (exp, _, 'a, 'b) term
| Cst : Bitvector.t -> (_, exp, _, _) term
| Unary : {
} -> (exp, exp, 'a, 'b) term
| Binary : {
} -> (exp, exp, 'a, 'b) term
| Ite : {
hash : int;
size : size;
c : (exp, exp, 'a, 'b) term;
t : (exp, exp, 'a, 'b) term;
e : (exp, exp, 'a, 'b) term;
} -> (exp, exp, 'a, 'b) term
Constructors
val load : size -> endianness -> t -> b -> t
load nbytes endianness addr label
val constant : Bitvector.t -> t
constant bv
creates a constant expression from the bitvector bv
.
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 -> t
zeros n
creates a constant expression of value 0 with length n
val ones : int -> t
ones n
creates a constant expression of value 1 with length n
. I.e.; it has (n - 1) zeros in binary.
val one : t
val zero : t
Utils
*
val hash : t -> int
hash t
returns the hash of t
in constant time.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page