From 42955387a566042f36be8ca0d74724d6ee7144f4 Mon Sep 17 00:00:00 2001 From: Mark Mossberg Date: Fri, 12 May 2017 17:31:59 -0400 Subject: [PATCH] Don't make concrete bytes symbolic, only wildcard bytes (#252) --- manticore/core/state.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/manticore/core/state.py b/manticore/core/state.py index 3026a3d..dc248e4 100644 --- a/manticore/core/state.py +++ b/manticore/core/state.py @@ -164,10 +164,15 @@ class State(object): size = len(data) symb = self.constraints.new_array(name=label, index_max=size) self.input_symbols.append(symb) - for j in xrange(size): - if data[j] != wildcard: - symb[j] = data[j] - data = [symb[i] for i in range(size)] + + tmp = [] + for i in xrange(size): + if data[i] == wildcard: + tmp.append(symb[i]) + else: + tmp.append(data[i]) + + data = tmp if string: for b in data: