StanChart announces $1bn buyback despite weaker-than-expected profits