i have the following assembly lines:
...
MOV ECX, 0x36EE80
MOV EDX, 0x95217CB1
MUL EDX
SHR EDX, 0x15
MOV DWORD PTR SS:[EBP-0x3C8], EDX
....
....
The description for MUL r/m32 is Unsigned multiply (EDX:EAX <- EAX * r/m32)..
That means that the 64-bit product will be stored in EDX:EAX, i.e. the upper 32 bits ends up in EDX and the lower 32 bits in EAX. Which fits with the results you're seeing, since the product should be 0x1DBEE41EB22A9CB.
Result is 01DBEE41 EB22A9CB, EDX stores high part of it.
Decimal numbers are not concatenatable when dealing with binary representation of numbers.