Can with kix as well, quick untested code:
 Code:
;Rename a Computer
$objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
$colComputers = $objWMIService.ExecQuery("Select * from Win32_ComputerSystem")
For Each $objComputer in $colComputers
  $=$objComputer.Rename("computernameXP1")
Next

;Join a Computer to a Domain
$JOIN_DOMAIN = 1
$ACCT_CREATE = 2
$ACCT_DELETE = 4
$WIN9X_UPGRADE = 16
$DOMAIN_JOIN_IF_JOINED = 32
$JOIN_UNSECURE = 64
$MACHINE_PASSWORD_PASSED = 128
$DEFERRED_SPN_SET = 256
$INSTALL_INVOCATION = 262144

$objNetwork = CreateObject("WScript.Network")
$strComputer = $objNetwork.ComputerName
$strDomain = "domainname"
$strPassword = "Password"
$strUser = "username"

$objComputer = GetObject("winmgmts:{impersonationLevel=Impersonate}!\\" + $strComputer + "\root\cimv2:Win32_ComputerSystem.Name='" + $strComputer + "'")
$ReturnValue = $objComputer.JoinDomainOrWorkGroup($strDomain,$strPassword,$strDomain + "\" + $strUser,,$JOIN_DOMAIN + $ACCT_CREATE)