tbb4malloc_bi.dll hand reversed documentation.
Since a numerous of people have started to spawn items on arma 2 oa by writing structures to the memory, here is the most efficient way to do so with the help of the memory allocation library the game itself uses.
It's a small documentatation I compiled during reversing bohemia interactives memory allocation library. They use that for most of the memory management they do in their games.
I dont know if there are other versions of this around, but this is what I had with my arma 2 oa installation. This is incomplete, if you find any type faults, feel free to reply.
Here are the exports the dll hands out to you
And here is a closer look on some of them:
void* __stdcall MemAlloc(unsigned int sizeToAllocate)
takes the size of memory to allocate in bytes as an argument
returns the pointer to the allocated memory region
void __stdcall MemFree(void* regionToFree)
takes the pointer to the allocated memory region as an argument
deallocates the memory
int __stdcall MemSize(void* region)
takes the pointer to the allocated memory region as an argument
returns the size of the allocated memory region
unsigned int __stdcall MemTotalComitted()
returns the amount of bytes the allocator has reserved
unsigned int __stdcall MemTotalReserved()
returns the amount of bytes the allocator has reserved
int __stdcall MemFlushCacheAll()
flushes the caches used by the allocator
The rest of the exported functions seem quite irrelevant because you can probably do all you need with the ones mentione above.
Arma 2 oa doesnt seem to be using the other ones anyways.l
Since a numerous of people have started to spawn items on arma 2 oa by writing structures to the memory, here is the most efficient way to do so with the help of the memory allocation library the game itself uses.
It's a small documentatation I compiled during reversing bohemia interactives memory allocation library. They use that for most of the memory management they do in their games.
I dont know if there are other versions of this around, but this is what I had with my arma 2 oa installation. This is incomplete, if you find any type faults, feel free to reply.
Here are the exports the dll hands out to you

And here is a closer look on some of them:
void* __stdcall MemAlloc(unsigned int sizeToAllocate)
takes the size of memory to allocate in bytes as an argument
returns the pointer to the allocated memory region
void __stdcall MemFree(void* regionToFree)
takes the pointer to the allocated memory region as an argument
deallocates the memory
int __stdcall MemSize(void* region)
takes the pointer to the allocated memory region as an argument
returns the size of the allocated memory region
unsigned int __stdcall MemTotalComitted()
returns the amount of bytes the allocator has reserved
unsigned int __stdcall MemTotalReserved()
returns the amount of bytes the allocator has reserved
int __stdcall MemFlushCacheAll()
flushes the caches used by the allocator
The rest of the exported functions seem quite irrelevant because you can probably do all you need with the ones mentione above.
Arma 2 oa doesnt seem to be using the other ones anyways.l