そしてたびたびの質問で申し訳ないですが
820のような二次元テーブルをC側から登録する方法を
教えていただけますでしょうか。

何となく※のあたりが違うんだろうなぁという気はするのですが。

lua_pushstring(L, テーブル名);
lua_newtable(L);

ループ開始
 ※lua_pushstring(L, テーブル名?);
 ※lua_newtable(L);

 ループ開始
   lua_pushnumber(L,キー);
   lua_pushnumber(L,値);
   lua_settable(L, -3);
 ループ終了

 ※lua_settable(L, ?);
ループ終了

lua_settable(L, LUA_GLOBALSINDEX);