40a211eb1dc8614aa5dc6342dbf5f87e932974ed12557ac0718bd44b771adc25

The file is the module exactly as the page had it. WebAssembly does nothing on its own: it runs only when a script instantiates it. Labels describe what the module contains and are leads, not verdicts.

At a glance

What it is
Not identified. Its build does not name it and it matches no library we know.
Names it came with
File name: noise-c (2 sites). Its build and the addresses it came from say so; whoever builds a module chooses these, so they are hints.
How it was built
Compiled with Emscripten, usually from C or C++.
What it can do
None of its imports reaches the network, runs code or changes the page. Judged from the names of its imports.
Where we saw it
On 2 public scans, 2026-10-08 to 2026-10-26.
Findings
Dense data, Hashing or cipher loops. Leads, not verdicts: legitimate modules show these too.
Size
155.6 KiB
First seen
2026-10-08
Last seen
2026-10-26
Public scans
2
Functions
273
Imports
15
Exports
54
Data segments
6

How it was built

Compiled with Emscripten, usually from C or C++.

Language
C or C++, probablyNot named. Emscripten and clang mostly compile C and C++.
Compiler
EmscriptenThe toolchain that compiles C and C++ (sometimes Rust) for the web. It comes with the JavaScript that loads the module.
Compiler backend
LLVMThe code generator behind rustc, clang, Emscripten and TinyGo.

Read from text inside the module (its build metadata and paths the compiler left) and from its import and export names. Whoever builds a module can change or remove these, so treat them as hints. They say how a module was made, not what it does.

Hashing and cipher code

Algorithms recognised from their published constants, tables and rotation amounts: AES, BLAKE2b, BLAKE2s or BLAKE3, ChaCha20, Keccak (SHA-3), SHA-256, SHA-256 or BLAKE2s/BLAKE3, SHA-512, SHA-512 or BLAKE2b, Salsa20 or ChaCha. Legitimate modules use them all the time, for hashing, captchas and encryption, so this is a lead, not a verdict.

  • function 61SHA-512 · a table it reads
  • function 62SHA-256, SHA-512 · a table it reads
  • function 90ChaCha20 ·
  • function 91BLAKE2b · constants in its code
  • function 92AES · a table it reads
  • function 98BLAKE2s or BLAKE3 · constants in its code
  • function 120ChaCha20, Salsa20 or ChaCha · a table it reads
  • function 145Keccak (SHA-3) ·
  • function 209SHA-256 or BLAKE2s/BLAKE3 · constants in its code
  • function 214Salsa20 or ChaCha · a table it reads
  • function 217SHA-512 or BLAKE2b · constants in its code
  • function 273SHA-256 or BLAKE2s/BLAKE3 · constants in its code

Decompiled code

273 of 273 functions decompiled to C-like pseudocode; 10 more are imported from the page.

Decompiled code is a reconstruction from the file, so names and types are often guesses. Query values in URLs are masked here; the downloaded file is unchanged.

FunctionSizeBlocksComplexityNotes
No functions match.

File layout

WebAssembly binary format version 1, core module, 8 sections.

SectionOffsetSizeItems
type0x8160 bytes23
import0xa8313 bytes15
function0x1e1278 bytes273
global0x2f713 bytes2
export0x3041.8 KiB54
element0xa21112 bytes1
code0xa91112.8 KiB273
data0x1cdd840.1 KiB6
Memory
256 pages (16.0 MiB), up to 256 pages (16.0 MiB), imported from the page as env.memory
Table
68 entries, up to 68 entries, funcref, imported from the page as env.table
Globals
2
Element segments
1
Function names
none (names were stripped)

Data segments

Each bar is one segment of the module's data: as wide as its size, as tall as its entropy. Bars above the dashed line are encrypted or compressed. 6 segments, 40.1 KiB in all.

02468Segment 0: 621 bytes, 3.12 bits per byteSegment 2: 9,607 bytes, 7.33 bits per byteSegment 4: 1,016 bytes, 7.7 bits per byteSegment 3: 4,304 bytes, 7.98 bits per byteSegment 5: 25,504 bytes, 7.98 bits per byte
data segment encrypted or compressed 7.5 bits per byteHeight: bits per byte. Width: share of all the data.
  • Segment 3: 4,304 bytes at 7.98 bits per byte
  • Segment 5: 25,504 bytes at 7.98 bits per byte

Imports (15)

  • env.memory
  • env.table
  • env.tableBase
  • env.DYNAMICTOP_PTR
  • env.STACKTOP
  • env.abort
  • env.enlargeMemory
  • env.getTotalMemory
  • env.abortOnCannotGrowMemory
  • env.___assert_fail
  • env.___setErrNo
  • env._emscripten_memcpy_big
  • env._llvm_stackrestore
  • env._llvm_stacksave
  • env._noise_rand_bytes

Exports (54)

Scripts that carry or load it

  • spiegelenberg.nu loads it; the script is minified or bundled.

From public scans. A script loads a module when it fetches or compiles it.

Text it passes to the page

Fixed text the module hands to the page's JavaScript when it calls an import, read from the module file. Imports that reach the network, run code or change the page come first; web addresses are shown as their host.

ImportText
env.___assert_faillimb == 0
env.___assert_failvendor/src/crypto/goldilocks/src/p448/arch_32/p448.c
env.___assert_failis_zero(scarry) | is_zero(scarry+1)
env.___assert_failp448_strong_reduce
env.___assert_failis_zero(carry + scarry)

In our sandbox

  • Nothing notable.

Checks we ran

  • Threat-feed matches: none
  • Names of mining software or pools: none
  • CryptoNight mining structure: not found
  • Hashing or cipher loops: 6 functions (common in codecs and captchas)
  • Known hashing or cipher algorithms: AES, BLAKE2b, BLAKE2s or BLAKE3, ChaCha20, Keccak (SHA-3), SHA-256, SHA-256 or BLAKE2s/BLAKE3, SHA-512, SHA-512 or BLAKE2b, Salsa20 or ChaCha
  • Encrypted or compressed data: 1 block, 24.9 KiB (62.1% of its data)
  • JavaScript stored inside: none
  • Other modules inside: none
  • Imports that read browser or page details: none
  • Function names: removed (usual in release builds)

Static checks of the file: nothing in it was run for these. A finding is a lead, not a verdict.

Seen on 2 public scans

PageTitleSeenHow it got there
spiegelenberg.nuHome2026-10-26Built by a script at run time; Downloaded as a file
iszenas-ha.fr1.quickconnect.toISZENAS-HA - Synology NAS2026-10-08Downloaded as a file