Proper dbc syntax for strange messages

Very new to this, but I’ve captured can-bus messages , and as best as I can tell the node id of interest (0x3b) ,outputs different data based on the value in the first byte.

For example these 2 messages represent something different:
0x10 0x40 0x01 0x02 0x03 0x4 0xXX 0xXX
0x10 0x41 0x07 0x08 0xXX 0xXX 0xXX 0xXX

Where if the first 2 bytes are 0x10 0x40, then the data is 32-bit : 0x01020304 (the last 2 bytes are don’t care)
if the first 2 bytes are 0x10 0x41, then the data is 16-bit 0x0708 and the last 4 bytes are don’t care.

How do I create a message where the data is to be interpreted one way when
Node ID (0x3b) and first 2 bytes are 0x10 and 0x40…

and another message where the data is to be interpreted a different way when Node ID (0x3b) and first 2 bytes are 0x10 and 0x41?

I’ve been playing with the online CSS tool, but should I be using something else?