SYMSAN: Time and Space Efficient Concolic Execution via Dynamic Data-flow Analysis