Hello Teeworlds dev team,
There is an integer overflow bug in CDataFileReader::Open() which can lead to a buffer overflow and possibly RCE. The integer overflow(s) occurs when calculating the Size and AllocSize.
```C++
unsigned Size = 0;
Size += Header.m_NumItemTypessizeof(CDatafileItemType);
Size += (Header.m_NumItems+Header.m_NumRawData)sizeof(int);
if(Header.m_Version == 4)
Size += Header.m_NumRawData*sizeof(int); // v4 has uncompressed data sizes aswell
Size += Header.m_Ite...