[. Bansal and A. Aiken, Automatic Generation of Peephole Superoptimizers, Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS XII, pp.394-403, 2006.

C. W. Barrett, D. L. Dill, and J. R. Levitt, A Decision Procedure for Bit-vector Arithmetic, Proceedings of the 35th Annual Design Automation Conference, DAC '98, pp.522-527, 1998.

[. Barthelemy, N. Eyrolles, G. Renault, and R. Roblin, Binary Permutation Polynomial Inversion and Application to Obfuscation Techniques, Proceedings of the 2016 ACM Workshop on Software PROtection, SPRO '16, pp.51-59, 2016.
URL : https://hal.archives-ouvertes.fr/hal-01388108

O. Barak, R. Goldreich, S. Impagliazzo, A. Rudich, S. P. Sahai et al., On the (Im)possibility of Obfuscating Programs, Proceedings of the 21st Annual International Cryptology Conference on Advances in Cryptology, CRYPTO '01, pp.1-18, 2001.

W. Joppe, C. Bos, W. Hubain, P. Michiels, and . Teuwen, Differential computation analysis: Hiding your white-box designs is not enough, Cryptographic Hardware and Embedded Systems ? CHES 2016: 18th International Conference Proceedings, pp.215-236, 2016.

[. Biondi, S. Josse, A. Legay, and T. Sirvent, Effectiveness of synthesis in concolic deobfuscation, Computers & Security, vol.70, 2015.
DOI : 10.1016/j.cose.2017.07.006

URL : https://hal.archives-ouvertes.fr/hal-01241356

[. Buchberger and R. Loos, Algebraic Simplification, Computer Algebra, pp.11-43, 1982.

M. [. Blum, R. Luby, and . Rubinfeld, Self-testing/correcting with applications to numerical problems, Proceedings of the Twentysecond Annual ACM Symposium on Theory of Computing, STOC '90, pp.73-83, 1990.

[. Baader and T. Nipkow, Term Rewriting and All That, 1999.

V. Bukasof and D. Schelkunov, Deobfuscation and beyond. ZeroNights conference, 2014.

[. Carette, Understanding expression simplification, Proceedings of the 2004 international symposium on Symbolic and algebraic computation , ISSAC '04, pp.72-79, 2004.
DOI : 10.1145/1005285.1005298

[. Chipounov and G. Candea, Enabling Sophisticated Analyses of x86 Binaries with RevGen, 7th Workshop on Hot Topics in System Dependability (HotDep), 2011.

[. Chow, P. Eisen, H. Johnson, and P. C. Van-oorschot, White-Box Cryptography and an AES Implementation, pp.250-270, 2003.
DOI : 10.1007/3-540-36492-7_17

J. Coffman, D. M. Kelly, C. C. Wellons, and A. S. Gearhart, Rop gadget prevalence and survival under compilerbased binary diversification schemes, Proceedings of the 2016 ACM Workshop on Software PROtection, SPRO '16, pp.15-26, 2016.

C. Collberg and J. Nagra, Surreptitious Software: Obfuscation , Watermarking, and Tamperproofing for Software Protection, 2009.

F. B. Cohen, Operating system protection through program evolution, Computers & Security, vol.12, issue.6, pp.565-584, 1993.
DOI : 10.1016/0167-4048(93)90054-9

M. Cornelie, Implantations et protections de mécanismes cryptographiques logiciels et matériels, 2016.

[. Collberg, C. Thomborson, and D. Low, A Taxonomy of Obfuscating Transformations, 1997.

[. Collberg, C. Thomborson, and D. Low, Manufacturing cheap, resilient, and stealthy opaque constructs, Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '98, pp.184-196, 1998.
DOI : 10.1145/268946.268962

F. Desclaux, Miasm: Framework de reverse engineering, Actes du Symposium sur la Sécurité des Technologies de l'Information et des Communications. SSTIC, 2012.

[. Plump, Term Graph Rewriting In Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages and Tools, pp.3-61, 1999.

B. Dang, A. Gazet, E. Bachaalany, and S. Josse, Practical Reverse Engineering: x86, x64, ARM, Windows Kernel, Reversing Tools, and Obfuscation, 2014.

[. Dershowitz and J. Jouannaud, chapter Rewrite Systems, Handbook of Theoretical Computer Science, pp.243-320, 1990.

L. De, M. , and N. Bjørner, Z3: An Efficient SMT Solver, Proceedings of the Theory and Practice of Software, 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS'08/ETAPS'08, pp.337-340

M. Dalla, P. , and R. Giacobazzi, Semantic-Based Code Obfuscation by Abstract Interpretation, pp.1325-1336, 2005.

[. Dutertre, Yices??2.2, Computer-Aided Verification (CAV'2014), pp.737-744, 2014.
DOI : 10.1007/978-3-319-08867-9_49

[. Daniel, H. Yan, K. Jonathan, M. Alex, and J. , Implementing Cryptographic Program Obfuscation, Cryptology ePrint Archive, 2014.

[. Eyrolles, L. Goubin, and M. Videau, Defeating MBAbased Obfuscation, Proceedings of the 2016 ACM Workshop on Software PROtection, SPRO '16, pp.27-38, 2016.
URL : https://hal.archives-ouvertes.fr/hal-01388109

B. [. Farrugia, M. Chevallier-mames, T. Ciet, and . Icart, Performing boolean logic operations using arithmetic operations by code obfuscation, p.258, 2012.

A. [. Forrest, D. Somayaji, and . Ackley, Building diverse computer systems, Proceedings. The Sixth Workshop on Hot Topics in Operating Systems (Cat. No.97TB100133), p.67, 1997.
DOI : 10.1109/HOTOS.1997.595185

[. Ganesh, S. Berezin, and D. L. Dill, A Decision Procedure for Fixed-Width Bit-Vectors, 2005.

A. Guinet, N. Eyrolles, and M. Videau, Arybo: Manipulation , Canonicalization and Identification of Mixed Boolean- Arithmetic Symbolic Expressions, Proceedings of GreHack 2016, 2016.
URL : https://hal.archives-ouvertes.fr/hal-01390528

[. Guillot and A. Gazet, Automatic binary deobfuscation, Journal in Computer Virology, vol.2, issue.2, pp.261-276, 2010.
DOI : 10.1007/s11416-009-0126-4

C. Garg, S. Gentry, M. Halevi, A. Raykova, B. Sahai et al., Candidate Indistinguishability Obfuscation and Functional Encryption for All Circuits, Proceedings of the 2013 IEEE 54th Annual Symposium on Foundations of Computer Science, FOCS '13, pp.40-49, 2013.

C. Yuan-xiang-gu, Y. Liem, and . Zhou, System and method providing dependency networks throughout applications for attack resistance, App. PCT/CA2011/050157, Publication Number WO2012126083 A1, 2012.

S. Goldwasser and G. N. Rothblum, On Best-possible Obfuscation, Proceedings of the 4th Conference on Theory of Cryptography, TCC'07, pp.194-213, 2007.

[. Gulwani, Dimensions in program synthesis, Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming, PPDP '10, pp.13-24, 2010.
DOI : 10.1145/1836089.1836091

M. H. Halstead, Elements of Software Science Operating and programming systems series, 1977.

A. Heck, Introduction to Maple, chapter 6: Internal Data Representation and Substitution, 2003.

J. E. Hopcroft, R. Motwani, and J. D. Ullman, Introduction to Automata Theory, Languages, and Computation, 2006.

[. Jha, S. Gulwani, S. A. Seshia, and A. Tiwari, Oracle-guided component-based program synthesis, Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, ICSE '10, pp.215-224, 2010.
DOI : 10.1145/1806799.1806833

H. Gu and Y. Zhou, System and method of interlocking to protect software-mediated program and device behaviors. US Patent App, 2008.

M. Jacob, M. H. Jakubowski, and P. Naldurg, Chit Wei (Nick) Saw, and Ramarathnam Venkatesan. The Superdiversifier: Peephole Individualization for Software Protection, Proceedings of the Third International Workshop on Security, IWSEC '08, pp.100-120, 2008.

[. Joshi, G. Nelson, and K. Randall, Denali: A Goaldirected Superoptimizer, Proceedings of the ACM SIGPLAN 2002 Conference on Programming Language Design and Implementation, PLDI '02, pp.304-314, 2002.

[. Junod, J. Rinaldini, J. Wehrli, and J. Michielin, Obfuscator-LLVM -- Software Protection for the Masses, 2015 IEEE/ACM 1st International Workshop on Software Protection, pp.3-9, 2015.
DOI : 10.1109/SPRO.2015.10

H. Mariusz, C. W. Jakubowski, R. Saw, and . Venkatesan, Iterated Transformations and Quantitative Metrics for Software Protection, SECRYPT, pp.359-368, 2009.

J. C. King, Symbolic execution and program testing, Communications of the ACM, vol.19, issue.7, pp.385-394, 1976.
DOI : 10.1145/360248.360252

D. [. Kounalis and . Lugiez, Compilation of pattern matching with associative-commutative functions, Proceedings of the International Joint Conference on Theory and Practice of Software Development on Colloquium on Trees in Algebra and Programming (CAAP '91 TAPSOFT '91, pp.57-73, 1991.
DOI : 10.1007/3-540-53982-4_4

]. J. Klo92 and . Klop, chapter Term Rewriting Systems, Handbook of Logic in Computer Science, vol.2, pp.1-116, 1992.

M. Karnick, J. Macbride, S. Mcginnis, Y. Tang, and R. Ramachandran, A Qualitative Analysis of Java Obfuscation, proceedings of 10th IASTED international conference on software engineering and applications, 2006.

D. Khovratovich and I. Nikoli´cnikoli´c, Rotational Cryptanalysis of ARX, Fast Software Encryption, pp.333-346, 2010.
DOI : 10.1007/978-3-642-13858-4_19

C. Kreitz, Automated Deduction ? A Basis for Applications: Volume III Applications, chapter 5: Program Synthesis, pp.105-134, 1998.

A. Klimov and A. Shamir, A New Class of Invertible Mappings, Cryptographic Hardware and Embedded Systems -CHES 2002, pp.470-483, 2003.
DOI : 10.1007/3-540-36400-5_34

D. Kroening and O. Strichman, Decision Procedures: An Algorithmic Point of View, 2008.
DOI : 10.1007/978-3-662-50497-0

[. Khedker, A. Sanyal, and B. Karkare, Data Flow Analysis: Theory and Practice, 2009.
DOI : 10.1201/9780849332517

T. R. Kuphaldt, Lessons in Electric Circuits, 1996.

[. Kholia and P. Wkegrzyn, Looking Inside the (Drop) Box, Presented as part of the 7th USENIX Workshop on Offensive Technologies

[. Kandanchatha and Y. Zhou, System and method for obscuring bit-wise and two's complement integer computations in software. US Patent App. 11/039 Publication Number US20050166191 A1 Cloakware Corporation. [LA04] Chris Lattner and Vikram Adve. LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation, Proceedings of the International Symposium on Code Generation and Optimization: Feedback-directed and Runtime Optimization, CGO '04, p.75, 2004.

[. Liem, Y. Gu, and H. Johnson, A Compilerbased Infrastructure for Software-protection, Proceedings of the Third ACM SIGPLAN Workshop on Programming Languages and Analysis for Security, PLAS '08, pp.33-44, 2008.

[. Lai and J. L. Massey, A Proposal for a New Block Encryption Standard, Advances in Cryptology ? EUROCRYPT '90, pp.389-404
DOI : 10.1007/3-540-46877-3_35

[. Ceccato, On the Need for More Human Studies to Assess Software Protection, 2014.

H. Massalin and . Superoptimizer, A Look at the Smallest Program, Proceedings of the Second International Conference on Architectual Support for Programming Languages and Operating Systems, ASP- LOS II, pp.122-126, 1987.

]. J. Mcd12 and . Mcdonald, Capturing the Essence of Practical Obfuscation, Proceedings of the 6th International Conference on Information Systems, Technology and Management, ICISTM 2012, pp.451-456, 2012.

C. Mougey and F. Gabriel, DRM obfuscation versus auxiliary attacks. Recon conference, 2014.

[. Mohsen and A. M. Pinto, Algorithmic Information Theory for Obfuscation Security, Proceedings of the 12th International Conference on Security and Cryptography, pp.209-229
DOI : 10.5220/0005548200760087

P. Biondi and F. Desclaux, Silver Needle in the Skype, BlackHat Europe, 2006.

R. L. Rivest, Permutation Polynomials Modulo 2 w . Finite Fields and Their Applications, 1999.

I. Stengel, Grammar-based transformations: attack and defence, Information Management & Computer Security, vol.22, issue.2, pp.141-154, 2014.

. [. Stein, The Sage Development Team, Sage Mathematics Software (Version, vol.6, issue.5, 2015.

B. Spasojevic, Code Deobfuscation by Optimization, 27th Chaos Communication Congress, 2010.

[. Saudel and J. Salwan, Triton: A Dynamic Symbolic Execution Framework, Actes du Symposium sur la Sécurité des Technologies de l'Information et des Communications, pp.31-54, 2015.

J. Vuillemin, Digital Algebra and Circuits, Theory and Practice, pp.733-746, 2003.
DOI : 10.1007/978-3-540-39910-0_31

S. Henry and . Warren, Hacker's Delight, 2002.

[. Wegener, The Complexity of Boolean Functions, 1987.

C. M. Wintersteiger, Y. Hamadi, and L. De-moura, Efficiently Solving Quantified Bit-Vector Formulas. Formal Methods in System Design, pp.3-23, 2013.

[. Wong and M. Stamp, Hunting for metamorphic engines, Journal in Computer Virology, vol.235, issue.5, pp.211-229, 2006.
DOI : 10.1007/s11416-006-0028-7

[. Zhou and A. Main, Diversity Via Code Transformations: A Solution For NGNA Renewable Security The NCTA Technical Papers, 2006.

[. Zhou, A. Main, Y. Gu, and H. Johnson, Information Hiding in Software with Mixed Boolean-Arithmetic Transforms, 8th International Workshop in Information Security Applications , WISA '07, pp.61-75, 2007.
DOI : 10.1007/3-540-68671-1_4