Ссылка - это указатель с семантикой значения - в языке ассемблера эта семантика не имеет значения, поэтому у вас остается указатель:
void foo(int& x)
{
__asm {
mov eax, x
mov DWORD PTR [eax], 10
}
}
(Конечно, YMMV в зависимости от компилятора, версии, оптимизацийи т. д. все обычные вещи при использовании встроенной сборки.)