This is quite easy to do with scripting. First, you need the sound effects, I suppose you already have them.
In OnEnter
AddTimer("tmrChainRattle", 0.1f, "ChainRattle");
Then this function
void ChainRattle(string &in asTimer)
{
    if (GetPlayerSpeed() > 0.0f)
    {
        PlaySoundAtEntity(SOUNDNAME, SOUNDFILE, 'Player', 0.0f, false);
        AddTimer('tmrChainRattle', GetPlayerSpeed(), 'ChainRattle');
    }
    else
    {
        AddTimer('tmrChainRattle', 0.1f, 'ChainRattle');
    }
}
What this does is continually check whether the player is moving, if the player is moving, then play the chain rattle sound, and set a timer off that will continue to play the sound in-sync with the stepping sounds. 
NOTE: It may be out of sync right now, you will have to mess with the timings. Also, for the different states of walking or running, you can do a if block to target specific player speeds. Use debug messages to see how fast the player moves 
