This should work:
PHP Code:
global $vbulletin;
// error processing for the datamanager if needed.
require_once "d:/servers/z421/web/bbs/includes/adminfunctions.php";
// Existing User
$userid = 6; // Existing User ID
$newusername = 'david1'; // New user name string (cleaned)
$userdata =& datamanager_init('User', $vbulletin, ERRTYPE_CP);
$userinfo = fetch_userinfo($userid);
$userdata->set_existing($userinfo);
$userdata->set('username', $newusername);
$userdata->save();
unset($userdata);
I ran a quick test.
Looking at what you were doing, I am guessing you can take it from here.