The onion link came from a dead man.
Hyun-soo didn't know that yet. At seventeen, curled in the blue glow of his laptop with his mother's night-shift breathing filtering through the paper-thin wall, he only knew boredom. Sakurada City sprawled beyond his window, a tangle of neon kanji and convenience-store fluorescents, but his world had shrunk to a 13-inch screen and the itch of curiosity.
The forum was called Black Lotus, a grimy bulletin board buried three clicks past the surface web. Hyun-soo had been wandering its threads for weeks, drawn by the stale scent of forbidden knowledge. Mostly it was scams. Fake IDs. Stolen streaming accounts. The digital detritus of a city that pretended to be orderly while its underbelly festered.
But tonight, a private message waited in his inbox.
The sender was a string of alphanumeric noise. No avatar. No history. Just a single line of text and a URL.
*You want to see something real?*
The link ended in .onion.
Hyun-soo's cursor hovered. Every warning from the tech forums flickered through his mind. Dark web. Illegal content. The kind of curiosity that got kids arrested. But the alternative was another night of ramen steam and math homework, and the message had found him at precisely the moment when his resistance was thinnest.
He clicked.
The Tor browser spun its encryption wheel. The apartment's fluorescent strip light buzzed overhead. Through the wall, his mother coughed in her sleep.
Then the screen resolved.
It was a livestream. Grainy, but functional. A warehouse interior, all corrugated metal and sodium-vapor orange. In the center of the frame knelt a man. His cheap navy suit bunched at the shoulders, and his hands were bound behind a plastic chair. A strip of packing tape covered his mouth.
Hyun-soo's stomach clenched. He told himself it was staged. Performance art. An elaborate prank for dark-web clout.
The chat sidebar told a different story.
It scrolled in languages he recognized and others he didn't. Korean. Japanese. English. Russian. Numbers. The kind of numbers that looked like cryptocurrency wallets. The kind of numbers that looked like bids.
A figure stepped into frame.
Masked. Black tactical gear without insignia. The figure moved with the unhurried precision of someone who had done this before. It addressed the camera directly, voice modulated into a mechanical flatness.
"Contractual termination, case number four-seven-two. Client Kurogane Industries, subcontracting division. Subject breached confidentiality clause, section twelve, paragraph three. Termination approved."
The masked figure produced a document. Held it to the camera. Hyun-soo could read the letterhead: a stylized black iron gear, the corporate logo he'd seen on factory trucks rumbling through Sakurada's industrial district.
"Any final objection from the contract holder?"
The chat erupted. Emojis. Cryptocurrency tickers. A flood of Japanese characters that roughly translated to *just get on with it*.
Hyun-soo's hands were shaking now. This wasn't a prank. Pranksters didn't have corporate letterhead. Pranksters didn't have an audience of hundreds bidding in Bitcoin.
The masked figure turned to the kneeling man. Produced something from a belt holster.
Hyun-soo slammed the laptop shut.
His breathing came in ragged gulps. The room's familiar shadows had turned hostile. His mother's rhythmic breathing beyond the wall sounded impossibly fragile. He counted to sixty, the way he'd learned from anxiety forums. When he reached forty-three, the curiosity began gnawing again.
He opened the laptop.
The stream was still live. The warehouse was empty. No man. No chair. No masked figure. Just a dark stain on concrete and a single sheet of paper, face-up on the floor.
The chat was going wild.
*Clean work.*
*Payment confirmed.*
*Next auction at 0300 UTC.*
And then, a private message. Not from the alphanumeric sender this time. From the stream itself.
*We see you, Sakurada Ward, Building 7, Apartment 302.*
Hyun-soo's blood stopped.
The fluorescent light flickered. Outside, a truck rumbled past. The laptop's webcam light blinked once, twice, three times, though he had taped over it months ago.
He was already reaching for the power cord when the apartment's electricity died.
Darkness swallowed the room. Not the gentle darkness of nighttime, but the thick, suffocating void of something deliberate. Through the wall, his mother stirred. From the kitchen, the refrigerator's hum stuttered and fell silent.
Hyun-soo sat frozen, the dead laptop screen a black mirror reflecting his own terrified face.
Somewhere in the building, a door opened.
Then footsteps. Slow. Methodical. Ascending the stairwell.
His phone. Where was his phone? He patted the desk, the bed, found it wedged between the mattress and the wall. No signal. The screen displayed a single notification.
*Don't run. We only need to talk.*
The footsteps reached the third floor. His floor.
Hyun-soo moved on instinct, years of video game reflexes translating into something primal. He grabbed the backpack hanging from his door hook, the one he used for overnight study sessions at the PC bang. He stuffed the laptop inside, not knowing why. Evidence? Lifeline? The thing that would get him killed?
The footsteps paused outside his door.
Through the thin wood, he could hear breathing. Two people. Maybe three. Their shadows bled under the door frame.
His window. Fourth floor, but there was a fire escape, rusted and groaning but functional. The latch stuck, always had, his mother kept meaning to call the landlord.
The door handle turned.
Hyun-soo threw his shoulder against the window. The latch gave with a shriek of corroded metal, and the humid night air flooded in, carrying the stink of fish from the market three blocks away. He tumbled onto the fire escape just as the apartment door splintered inward.
He didn't look back. He climbed down the iron ladder, the rust flaking beneath his sneakers, each rung a small miracle of survival. Above him, flashlight beams sliced through the darkness.
The alley below was narrow, lined with garbage bags and the skeletal frames of abandoned bicycles. Hyun-soo hit the ground running. Left would take him to the main street, the bus terminal, the police station. But the police station meant explaining what he'd seen, what he'd clicked, why he'd been on that site at all.
Right led to Black Lotus Street.
He went right.
The rain started as he reached the fish market, a fine drizzle that haloed the streetlamps in orange mist. The stalls were shuttered, their metal grates tagged with graffiti in languages Hyun-soo didn't recognize. A stray cat watched him from beneath a tarp, its eyes catching the light like twin coins.
His lungs burned. His legs screamed. But the footsteps behind him had faded, swallowed by the rain and the city noise.
He ducked into a doorway, pressed himself against the cold metal shutter, and tried to think.
They knew his address. They knew his screen name. They'd killed a man on camera and called it a contract termination, and he was the only witness who wasn't bidding Bitcoin in the chat.
His father had been a contract worker.
The thought surfaced unbidden, and Hyun-soo shoved it back down. His father had disappeared five years ago, a dispatchee at one of the Kurogane subsidiaries. The company had sent a letter of condolence and a small settlement. His mother had never spoken of it again.
*Kurogane Industries. Subcontracting division.*
He fumbled in his backpack, pulled out the laptop. Dead. The battery had drained during the escape, or maybe the sudden power cut had fried something. He wouldn't know until he found an outlet.
The rain intensified, drumming on the metal awning above him. Across the street, a sign flickered: *Takeda's Kitchen. Open Late.*
Beneath it, a narrow door, propped open with a wooden crate. Warm light spilled out, and with it, the smell of something cooking.
Hyun-soo's stomach twisted. He hadn't eaten since lunch. The ramen he'd planned for dinner was still in its cup, waiting for hot water that would never come.
He crossed the street.
The restaurant was small, barely six seats at a worn wooden counter. Behind it, a man in his fifties worked a flat iron grill, his movements unhurried, almost meditative. He wore a stained apron over a rumpled dress shirt, the sleeves rolled to his elbows, revealing forearms mapped with faded burn scars.
On the grill, a perfect oval of yellow rice. The man tilted the pan, slid the omelet onto a plate, and carved it open with a single stroke. The interior spilled out, molten and golden, draping the rice like silk.
"Omurice," the man said without looking up. "Hungry?"
Hyun-soo stood in the doorway, dripping rainwater onto the floor. "I don't have money."
The man finally looked at him. His face was creased with the kind of wear that came from decades, not days. His eyes, half-lidded and bloodshot, took in Hyun-soo's soaked clothes, his trembling hands, the backpack clutched to his chest.
"Sit," the man said. "The first plate is always free at Takeda's."
Hyun-soo sat.
The man introduced himself as Takeda, first name irrelevant, he said, because no one had used it in twenty years. He set the plate before Hyun-soo along with a spoon and a glass of cold barley tea.
"Eat first. Talk later."
Hyun-soo ate. The omelet was perfect, creamy and seasoned with something he couldn't identify. The rice was studded with tiny bits of chicken and onion, each grain separate and fragrant. He hadn't realized how hungry he was until the first bite hit his stomach, and then he was shoveling food like a starving animal, barely pausing to breathe.
Takeda watched him eat, wiping down the grill with a methodical patience. When Hyun-soo's spoon scraped the plate clean, the man poured himself a glass of something amber from beneath the counter and took a long, slow drink.
"Now," Takeda said. "Tell me why three men in tactical gear are searching the alleyways for a teenage boy."
Hyun-soo's blood chilled. "You saw them?"
"I see everything that happens on this street. It's my street. Has been for fifteen years." Takeda took another drink. "They're not police. They're not gangsters. They move like professionals, but they're not local. So either you've made some very interesting enemies, or you've seen something you shouldn't have."
"Both," Hyun-soo said.
Takeda nodded slowly, as if this answer were entirely expected. He reached under the counter again and produced a worn leather case, which he opened to reveal a battered badge and an ID card, both bearing his photograph from a decade younger.
"Before I cooked eggs for a living, I was an inspector. Labor Standards Bureau. I investigated companies that treated their workers like disposable parts." He closed the case. "I know what Kurogane Industries does to people who see things they shouldn't."
Hyun-soo's breath caught. "How did you know it was Kurogane?"
"Because fifteen years ago, a man walked into this restaurant with the same look you have now. He'd been a dispatchee at Kurogane's Sakurada foundry. He'd seen workers get hurt on the job and get erased from the books. He wanted to file a complaint." Takeda's eyes went distant. "He disappeared three days later. The official report said he'd quit and returned to the countryside. But I knew his family. He had no family in the countryside."
The rain hammered the awning. Somewhere in the distance, a siren wailed.
"I tried to investigate," Takeda continued. "Filed motions. Requested documents. But Kurogane's lawyers buried me in paper. Every motion dismissed. Every witness recanted. The case was closed, and I was transferred to a desk in a basement office with no windows and no work. I resigned after a year. Opened this place."
Hyun-soo stared at his empty plate. The egg residue had cooled into a thin yellow film. "The man in the warehouse. He was wearing a suit like a salaryman. They called it a contractual termination. They had a document with Kurogane's letterhead."
Takeda was silent for a long moment. Then he reached for the amber bottle again.
"There was a lawsuit," he said finally. "Years after I left the Bureau. A status confirmation claim. A group of dispatchees suing Kurogane to be recognized as permanent employees. The lead plaintiff was a man named Yoshida. The case dragged on for years, and then, about six months ago, it disappeared from the court docket. No ruling. No settlement. Just... gone."
He set down his glass.
"Tell me everything you saw. Everything. Leave nothing out."
Hyun-soo told him. The onion link. The warehouse. The masked figure. The document. The dark stain on the concrete. The message that had known his exact address.
When he finished, Takeda rose from his stool and walked to a cabinet behind the counter. He returned with a battered file folder, its edges frayed and yellowed.
"This is my copy of the Keiwa 5 case file. Case number 2509. Status confirmation claim. I kept it because I'm an old man who doesn't know when to let go."
He opened the folder. Inside were photocopies of legal documents, handwritten notes, and a single photograph: a group of men in factory uniforms, smiling nervously at the camera. One of them was circled in red ink.
"That's Yoshida," Takeda said. "The lead plaintiff. The man who wanted to prove that contract workers were actually permanent employees, entitled to benefits, to protections, to basic human dignity."
He tapped the photograph.
"I think he's the man you watched die tonight."
The restaurant's fluorescent light hummed. The rain continued its assault on the awning. And Hyun-soo understood, with a clarity that felt like ice water in his veins, that he had stumbled into something far larger than a dark web stream.
He had stumbled into a war.
"They'll keep looking for me," he said. "They found my apartment. They'll find my mother."
"Your mother will be fine. They're not interested in her. They're interested in you, the only witness who isn't a paying customer." Takeda closed the file. "But you're right. They'll keep looking. And they have resources. Connections. People in places you can't imagine."
"What do I do?"
Takeda looked at him for a long moment. Then he took a key from his pocket and slid it across the counter.
"Upstairs. There's a small room. It's not much, but the door locks from the inside, and the window faces the back alley. You'll stay here tonight. Tomorrow, we'll figure out what to do about the people who want you dead."
Hyun-soo took the key. "Why are you helping me?"
Takeda picked up the file folder and tucked it under his arm. "Because fifteen years ago, I couldn't help a man who walked into this restaurant with the same look in his eyes. Because I've been cooking eggs for fifteen years, waiting for another chance." He paused at the door that led to the back staircase. "Because someone has to remember the ghost workers. No one else will."
He climbed the stairs, and Hyun-soo followed.
The room was small but clean. A futon. A desk. A window that looked out onto a rain-slicked alley where the neon of Black Lotus Street reflected in oily puddles.
Hyun-soo plugged his laptop into the wall outlet. Miraculously, it powered on. The battery had simply drained during his escape.
The screen flickered to life.
And there, in his inbox, was a new message.
Not from the stream this time. From a different sender. A sender whose name he recognized from the chat sidebar. A name that had sent dozens of messages during the broadcast, all in Japanese, all in the clipped, precise language of someone who was not just watching but directing.
*You're at Takeda's Kitchen. Black Lotus Street. Tell the old man that his case file is incomplete. Tell him that Keiwa 5 is still open. Tell him that the termination is not yet complete.*
*And tell him that we know where his family lives.*
Hyun-soo stared at the screen.
The webcam light blinked.
And somewhere in the city, in a warehouse where the rain couldn't reach, another livestream was beginning.


No comments yet. Be the first to comment!