民國三十五年初春,上海灘發生了一樁離奇的命案。
死者名叫林婉儀,是上海灘大名鼎鼎的歌舞劇院老闆,年僅二十八歲,被發現死於劇院三樓的休息室中。報案人是劇院裡的一名雜工,名叫阿強。據他所說,當天下午他原本想找林婉儀請假,卻發現休息室的門反鎖著,裡面傳來激烈的爭吵聲。他隱約聽見一個男人的聲音,似乎是在和林婉儀爭執什麼。阿強怕惹麻煩,就沒敢進去,一直到晚上,見休息室還亮著燈,裡面沒有動靜,才悄悄推門進去,結果發現林婉儀已經倒在地上,沒了氣息。
巡捕房接到報案後,立即封鎖了現場,並將與林婉儀有過節的人一一排查。經過走訪得知,林婉儀性格要強,在經營劇院期間得罪了不少人。她的丈夫一年前因病去世,此後她身邊不乏追求者,其中不乏一些心懷不軌之人。不過案發當天,這些人都有不在場的證據,排除了嫌疑。
這時,法醫對林婉儀的屍體進行了初步檢查,發現她的後腦部有一處重創,這應該是導致她死亡的直接原因。此外,她的雙手緊握,指甲縫裡殘留著一些皮屑組織,經檢驗,這些皮屑屬於一個陌生男人。巡捕房的探長雷歐判斷,兇手應該是一名男子,而且和林婉儀發生過激烈的打鬥。
就在雷歐準備進一步調查時,劇院的一名女演員突然站了出來,說案發當天,她曾在休息室門口看到一個陌生男人的身影。那男人身材高大,穿著一件黑色的風衣,戴著帽子和口罩,看不清長相。他鬼鬼祟祟地在門口張望了一會兒,就匆匆離開了。
女演員的話讓雷歐眼前一亮,他立即調取了劇院附近的監控錄影,果然在案發時間段內,發現了一個符合描述的男子。那男子行色匆匆,從劇院後門溜了出去,消失在了人群中。雷歐一路追蹤,發現男子最後進入了一家小旅館。
旅館老闆告訴雷歐,男子當天傍晚入住,第二天一大早就退房離開了,只留下一個破舊的行李箱。雷歐開啟行李箱,發現裡面裝著一套沾有血跡的風衣,經檢驗,上面的血跡屬於林婉儀。此外,風衣口袋裡還有一張紙條,上面寫著一個地址。
雷歐帶著風衣和紙條,來到了紙條上所寫的地址。這裡是一片破舊的居民區,住著一些來上海灘謀生的外地人。雷歐按照地址找到了其中一間小屋,卻發現屋子裡空無一人。鄰居告訴他,住在這裡的是一個名叫趙天明的男子,是個無業遊民,平時靠給別人打零工為生。案發前幾天,趙天明突然說自己找到了一份好工作,要搬出去住,之後就再也沒回來過。
雷歐判斷,趙天明很可能就是殺害林婉儀的兇手,立即在全市範圍內釋出了通緝令。可一連過了好幾天,都沒有趙天明的訊息,彷彿人間蒸發了一般。
這天,雷歐正在辦公室裡翻閱案卷,突然接到一個匿名電話。對方自稱是趙天明的朋友,說趙天明現在躲在城郊的一座廢棄倉庫裡,不敢露面。雷歐立即帶著人趕到倉庫,將趙天明捉拿歸案。
面對審訊,趙天明對自己殺害林婉儀的犯罪事實供認不諱。他交代說,自己原本在劇院裡打零工,一年前,林婉儀的丈夫去世後,他開始追求林婉儀,希望能和林婉儀結婚。可林婉儀一直對他若即若離,既不答應也不拒絕。案發當天,他來到劇院找林婉儀,希望她能給自己一個明確的答覆。沒想到林婉儀不但拒絕了他,還嘲笑他是個一無所有的窮光蛋,永遠也別想配上她。趙天明氣不過,就和林婉儀打了起來,一失手將她打死。
案子到這裡似乎已經真相大白,可雷歐總覺得有些不對勁。趙天明雖然承認了罪行,但他在交代作案過程時,總是含糊其詞,眼神閃爍,似乎在刻意隱瞞些什麼。而且,雷歐調查過趙天明的身世背景,發現他從小就無父無母,一個人在上海灘流浪,連飯都吃不飽,又哪來的勇氣和財力去追求林婉