交州有一個姓徐的,駕船渡海去遠方做買賣,在海上遭遇大風,船被吹到不知什麼地方。風停後,徐某睜眼一看,見來到一處,山峰綿延,樹木蒼蒼。徐某希望有人居住,便將船拴好,背著糧食、乾肉,下船登上了海岸。
剛進山,見兩邊懸崖上,密密麻麻地排列著很多洞口,像蜂房一樣,洞內隱約有人聲。徐某來到一個洞外,停下腳步往裡一瞅,裡面有兩個夜叉,吡著兩排白森森的劍戟般的利齒,雙眼瞪得像燈籠一樣,正用爪子撕生鹿肉吃。徐某嚇得魂飛魄散,急忙返身要逃,夜叉已看見他,扔下死鹿,爪子一伸,把他抓進洞裡。兩個夜叉互相說著話,像鳥獸的叫聲,爭著撕扯徐某的衣服,似乎想吃了他。徐某恐懼萬分,忙取出背在身上的乾糧和熟牛肉乾,送給夜叉。夜叉分吃完了,覺得味道很美,又去翻徐某的袋子。徐某搖搖手,表示沒有了。夜叉大怒,又把他抓了起來。徐某哀求說:「放開我!我船上有鍋子,可以再做給你們吃!」夜叉不明白他的話,仍然發怒。徐某打著手勢又說了一遍,夜叉像是稍微有點明白了,便跟著他來到船上,把鍋子拿到洞中。徐某抱來柴禾,點上火,將夜叉吃剩下的生鹿肉煮了獻給他們,兩個夜叉吃得非常高興。到了夜晚,夜叉用石頭堵住洞口,像是怕徐某逃跑。徐某蜷曲著身體,遠遠地躲著夜叉躺下,整夜戰戰兢兢的,生怕最終不免一死。
天明後,兩個夜叉出去了,臨走前又堵上洞口。不一會兒,取來一頭死鹿交給徐某。徐某便剝了鹿皮,到洞深處打了水,煮了好幾鍋。又過了一會,來了好幾個夜叉,聚到一起,吞吃著鍋裡的熟鹿肉。吃完了,一齊用手指著鍋子,似乎嫌太小。過了三四天,一個叉背來一口大鍋,像是人常用的那種。於是,夜叉們紛紛拿來死狼、死鹿等動物,放在鍋裡煮。煮熟後,招呼徐某也一塊吃。這樣過了幾天,夜叉們漸漸和徐某熟悉起來,出去時也不再堵洞口了,待他像一家人一樣。徐某也漸漸能根據夜叉發出的聲音,揣摩出他們的意思,還常常學著他們的腔調,說些「夜叉話」。夜叉們更加高興,又帶來一個母夜叉,給徐某當老婆。起初徐某很害怕,在母夜叉面前不敢動彈。後來母夜叉主動親熱他,徐某才和她成了夫妻。母夜叉大為喜悅,此後便常常留下熟肉給徐某吃,真像是恩愛夫妻一樣。
一天,夜叉們早早起來,每個夜叉脖子上都掛著一串明珠,輪番走出洞外,像是在迎候什麼貴客。又讓徐某多煮些肉。徐某問母夜叉,母夜叉說:「今天是天壽節。」又走出去跟別的夜叉說:「徐郎沒有骨突子!」眾夜叉聽說,各摘下五顆珠子,一塊交給母夜叉。母夜叉又從自己脖子上摘下十顆,共湊了五十顆,用野麻皮搓了根繩子串起來,掛在徐某脖子上。徐某看了看這些明珠,一顆足值百十兩銀子。一會兒,夜叉都走了出去。徐某煮完肉,母夜叉來叫他說:「去接天王!」
徐某跟隨夜叉們來到一個大洞。這個洞足有好凡畝地大,中間有一塊巨石,上面又平又滑,像桌几一樣。巨石周圍擺著些石座,最上首一個石座上蒙著豹皮,其餘蒙的都是鹿皮,共坐了約二三十個夜叉。不一會兒,只聽大風呼呼,飛沙走石。夜叉們慌忙出迎。徐某見走來一個巨大的怪物,樣子也像是夜叉。那怪物徑直奔進洞中,高高地蹲坐在豹皮座上往下俯視著。眾夜叉們跟著一塊進洞,分東西兩列站好,都昂起頭,雙臂交叉成十字狀,向大夜叉行禮。大夜叉點了點人頭,問道:「臥眉山上的,就是這些嗎?」眾夜叉亂哄哄地答應。大夜叉看見了徐某,問:「這個是從哪來的?」母夜叉回答說:「他是我丈夫。」大家對大夜叉誇起徐某的烹調來。隨即有兩三個夜叉跑去取了些熟肉來,獻到石桌上。大夜叉雙爪撕著,飽吃一頓,極力誇讚味道美,並且命令此後要按時供應他熟肉吃。又看著徐某說:「你的骨突子怎麼這樣短?」眾夜叉回答說:「他剛來,還沒準備好。」大夜叉便從自己脖子上摘下明珠串,脫下十顆明珠賞給徐某。這些珠子都比手指尖大,圓圓的像彈丸一樣。母夜叉急忙接了過來,替徐某穿好掛在他脖子上。徐某也學夜叉的樣子,雙臂交叉,說著「夜叉話」表示感謝。大夜叉便走了,駕著狂風,快得像飛一樣,片刻便消失不見了。眾夜叉吃了他剩下的熟肉,便散了。
又過了四年多,母夜叉忽然生產了。一胎生下兩個男孩,一個女孩,都是人樣,不像他們的母親。夜叉們都很喜歡這三個孩子。常常一塊逗弄他們。
一天,夜叉們都出去打食了,只剩下徐某一個人在洞裡坐著。忽然從別的洞來了一個母夜叉,想跟徐某私通。徐不肯。母夜叉發怒,將他一下子撲翻在地。正好徐某的妻子從外面進來,見此情景,暴怒地衝上前去,撕打起來,一口把她的耳朵咬了下來。過了一會,那母夜叉的丈夫也來了,徐妻才放了她,讓她走了。從此後,徐妻天天守著丈夫,一刻也不離開。三年後,孩子們已能走路了。徐某教他們說人的語言,漸漸地咿咿啞啞會說話,大有點人氣了。雖然還是兒童,但登山如走平地一般;跟徐某依依戀戀,很有父子情意。
一天,母夜叉跟一個兒子和女兒外出,半天沒回來。正好北風大作,徐某淒傷地想起故鄉。便領著另一個兒子來到海岸邊,見原來的船還在,便和兒子商量著返回老家。兒子想告訴母親,徐某勸阻住了。父子二人登上船,順風行駛,只用了一天一夜,便到達交州。到家後,徐某得知妻子已經改嫁走了。他拿出兩顆明珠,賣了幾萬兩銀子,家境因而非常富裕。兒子取名叫徐彪,十四五歲時,就能舉起幾百斤重的東西,粗直剛猛,生性好鬥。交州的駐軍主帥見了他後很驚奇,便讓他做了千總。正趕上邊疆叛亂。徐彪在作戰中所向披靡,立了很多功勞,十八歲就提升成了副將。
這時,有一個商人乘船渡海,也遭遇大風,被刮到臥眉山。剛上岸,見走來一個少年人。少年見了商人大驚,知道他是中原人,便詢問他的家鄉,商人說了。少年把他拉進一條深谷中的一個山洞裡,洞外佈滿了荊棘叢,囑咐他不要出去。少年離去了不一會,拿來鹿肉讓商人吃,自己說:「我父親也是交州人。」商人詢問姓名,知道姓徐,自己認識他,便說:「你父親是我的老朋友。現在他兒子已做了副將。」少年不知「副將」是什麼意思,商人說:「這是中國的官名。」少年又問:「什麼叫官?」商人回答說:「官就是出去乘漂亮車馬,回家住高堂大屋;在上輕輕一呼,百人應聲雷動;別的人不敢正眼看,只能側身立,這就是官!」少年聽得歡欣鼓舞。商人又問他:「你父親既然在交州,你為什麼長久留在這地方?」少年詳細講了以前的事情。商人便勸他返回故土,少年人說:「我也常常這樣想。但母親不是中國人,語言相貌都跟那裡不同。況且,一旦走不成,同類知覺必被殘害。因此躊躇不決,拿不定主意。」說完少年便走了,臨出洞時跟商人說:「等起了北風,我來送你回去,麻煩你給我父親,哥哥帶個信去。」
商人在洞裡一直藏了將近半年。他不時從洞口荊棘叢中往外窺視,見山中總有夜叉來來往往,嚇得他一動也不敢動。一天,北風忽起,山中一片風吹樹葉的唰唰聲。少年忽然來了,領著他急急地逃竄。邊逃邊囑咐他說:「我囑托你的事不要忘了!」商人答應。於是,在少年的幫助下,商人終於逃了回來。一到交州,商人立即去副將府,跟徐彪詳細講了自己的見聞。徐彪聽了又悲又喜,便要去尋找母親、弟弟和妹妹。父親擔憂大海滔滔,又是去夜叉國,一路險惡,極力勸阻他不要去。徐彪捶胸痛哭,非去不可。父親勸阻不住,只得由他。
徐彪便告訴了交州總帥,挑了兩名健勇的士兵,乘船下了海。正趕上逆風,船行得十分艱難。在大海上顛簸了半個月,四週一望,只見海水茫茫,無邊無際,再也分辨不出東西南北。忽然,一陣暴風吹來,波浪滔天,船被一下子打翻。徐彪落入水中,隨著海浪漂流了很久,被一個怪物拖上了岸。怪物帶著他來到一個地方,這裡竟有房舍。徐彪醒了後,四下一看,一個像夜叉的怪物站在自己身邊,便用「夜叉話」詢問。夜叉驚訝地反問他,徐彪告訴他自己要去的地方。夜叉高興地說:「臥眉山是我的故鄉。剛才太冒犯你了。你離開去臥眉山溝路已八千里了,這條路是去毒龍國的,不去臥眉山。」於是找了條船送徐彪去臥眉山。夜叉在海水裡推船疾行,像箭一樣快,瞬間已跑了一千多里。過了一夜,來到臥眉山北岸。徐彪見岸上有個少年,正在眺望著茫茫無際的海水。徐彪知道深山裡沒有人類,懷疑那少年就是弟弟。走近一看,果然不錯,兄弟倆手拉手痛哭起來。徐彪問起母親和妹妹,少年回答說都很平安康健。徐彪便想和弟弟一起去尋她們,弟弟阻止了他,自己一人急急忙忙地走了。徐彪轉身想感謝送自己來的夜叉,卻見那夜叉不知什麼時候已經走了。不一會兒,母親和妹妹來了,看見徐彪都哭了起來。徐彪告訴母親想接她們回去,母親說:「恐怕去了後會被人家欺負!」徐彪說:「兒在中國非常榮華富貴,別人不敢欺負母親。」於是,母子三人決意返回。但苦於正值逆風,難以行船。正在徘徊猶豫時,忽見船上的布帆向南飄動,起了瑟瑟北風。徐彪大喜。說:「天助我也!」四人一個跟一個上了船。北風很急,只用了三天,便抵達交州岸邊。四人一上岸,看見他們的人以為是妖怪,嚇得四處逃竄。徐彪便脫下自己的衣服,讓他們三人分著穿上了。回到家中,母夜叉見了徐某,怒罵不止,恨他當初回來不跟自己商量。徐某連忙謝罪道歉。家裡的人都來拜見主母,無不嚇得渾身顫抖。徐彪便勸母親學說中國話,又讓她穿錦衣,吃肥肉,母夜叉才高興起來。
母夜叉和女兒都喜歡穿男人服裝,像滿族人的打扮。幾個月後,漸漸會說中國話了。弟弟妹妹的皮膚也逐漸變得白皙。弟弟叫徐豹,妹妹叫夜兒,二人都很勇猛有力。徐彪恥於自己不會讀書寫字,便讓弟弟讀書。徐豹很聰慧,經史書籍,一過目就明白了。但他不想做一個只會讀書的文人,徐彪便仍然讓他練習拉硬弓、騎烈馬,結果考取了武進士,娶了阿游擊官的女兒為妻子。夜兒因為相貌奇異,沒人敢向她提親。正好徐彪部下有個姓袁的守備死了妻子,徐彪便將妹妹硬嫁給了他。夜兒能開百石弓,百餘步之外,用箭射小鳥,百發百中。袁守備每次出征,總是帶著妻子。後來他一直升到同知將軍,立下的功勞多半出自妻子之手。徐豹到三十四歲時,做了一個省的提督。母親曾經跟著他南征,每次跟強敵對陣,母親總是脫去盔甲,赤膊上陣,手持利刃為兒子接應。凡跟她接戰的人,無不敗得落花流水。後來,皇帝要詔封她為「男爵」,徐豹急忙上疏推辭,說明她是自己的母親,皇帝才改封了她一個「夫人」的稱號。