### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

First, I upload a file that includes spaces in its filename.

Then, when I try to copy that file, I get a 404 error, and the file is not copied.

```
2024/01/04 21:31:18 error s3client copy object: operation error S3: CopyObject, https response error StatusCode: 404, RequestID: 81bbb363-4bf9-49ac-ac4e-fe4918a9a09c, HostID: s9lzHYrFp76ZVxRcpX9+5cjAnEH2ROuNkd2BHfIa6UkFVdtjf5mKR3/eTPFvsiP/XV/VLi31234=, api error NoSuchKey: The specified key does not exist.
Exiting.
```

### Expected Behavior

The file should be copied successfully.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

```docker-compose.yml
version: '3.9'
services:
  localstack:
    build:
      context: localstack
      dockerfile: Dockerfile
    environment:
      - AWS_DEFAULT_REGION=ap-northeast-1
      - AWS_DEFAULT_OUTPUT=json
      - AWS_ACCESS_KEY_ID=dummy
      - AWS_SECRET_ACCESS_KEY=dummy
      - LOCALSTACK_SERVICES=s3,ses
      - LS_LOG=debug
      - DEBUG=1
    ports:
      - "4566:4566"
```

```Dockerfile
FROM localstack/localstack:latest

COPY ready.d /etc/localstack/init/ready.d
```

Here is the complete code:

git clone https://github.com/yuki2006/localstack_check
go run main.go

### Environment

```markdown
- OS: docker image localstack/localstack
- LocalStack:latest
```


### Anything else?

This is the implementation following the example provided here:
https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/go/example_code/s3/s3_copy_object.go#L65C36-L65C47

(https://github.com/yuki2006/localstack_check/blob/master/main.go#L79)

Additionally, this issue does not occur with the actual S3; no errors were encountered.
"""
        When using async-type , it's possible to cancel them inflight. This will make the request body
        incomplete, and will fail during the stream decoding. We can simulate this with body by passing an incomplete
        body, which triggers the same kind of exception.
        This test is to avoid regression for https://github.com/localstack/localstack/issues/9851
        """
        body = "Hello Blob"
        precalculated_etag = hashlib.md5(body.encode()).hexdigest()
        headers = {
            "Authorization": mock_aws_request_headers(
                "s3", aws_access_key_id=TEST_AWS_ACCESS_KEY_ID, region_name=TEST_AWS_REGION_NAME
            )["Authorization"],
            "Content-Type": "audio/mpeg",
            "X-Amz-Content-Sha256": "STREAMING-AWS4-HMAC-SHA256-PAYLOAD-TRAILER",
            "X-Amz-Date": "20190918T051509Z",
            "X-Amz-Decoded-Content-Length": str(len(body)),
            "Content-Encoding": "aws-chunked",
        }
        key_name = "test-multipart-chunked"
        response = aws_client.s3.create_multipart_upload(
            Bucket=s3_bucket,
            Key=key_name,