Verification of Message-passing Uninterpreted Programs