Attach (recommended) or Link to PDF file here: [test.pdf](https://github.com/mozilla/pdf.js/files/13053891/test.pdf)

Configuration:
- Web browser and its version: Firefox 118.0.2
- Operating system and its version: Windows 10 Pro 10.0.19045
- PDF.js version: 3.10.86
- Is a browser extension: No

Steps to reproduce the problem:
1. Open the PDF in Firefox.

What is the expected behavior? (add screenshot)
When I open the PDF in Google Chrome or Adobe Acrobat, it looks like this:
![after](https://github.com/mozilla/pdf.js/assets/138867750/6a76ca25-f82a-4041-9d03-2edb36cecfa6)

What went wrong? (add screenshot)
Instead, it looks like this:
![before](https://github.com/mozilla/pdf.js/assets/138867750/4b7789df-56e2-49f4-b0b9-82c22ca6bcaa)

const r0 = hasBackdrop ? backdrop[0] : 0;
  const g0 = hasBackdrop ? backdrop[1] : 0;
  const b0 = hasBackdrop ? backdrop[2] : 0;
  const composeFn =
    subtype === "Luminosity" ? composeSMaskLuminosity : composeSMaskAlpha;
  
  const PIXELS_TO_PROCESS = 1048576;
  const chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width));
  for (let row = 0; row < height; row += chunkSize) {
    const chunkHeight = Math.min(chunkSize, height - row);
    const maskData = maskCtx.getImageData(
      layerOffsetX - maskOffsetX,
      row + (layerOffsetY - maskOffsetY),
      width,
      chunkHeight
    );
    const layerData = layerCtx.getImageData(
      layerOffsetX,
      row + layerOffsetY,
      width,
      chunkHeight
    );
    if (hasBackdrop) {
      composeSMaskBackdrop(maskData.data, r0, g0, b0);
    }
    composeFn(maskData.data, layerData.data, transferMap);
    layerCtx.putImageData(layerData, layerOffsetX, row + layerOffsetY);
  }
}
function composeSMask(ctx, smask, layerCtx, layerBox) {