// // mo3.c // Dumb MO3 Archive parser // // Created by Christopher Snowhill on 11/1/13. // Copyright 2013 __NoWork, Inc__. All rights reserved. // #include "mo3.h" #include typedef uint32_t DWORD; #include "unmo3.h" #include #include void * unpackMo3( const void * in, long * size ) { void * data; int len; if ( *size > INT_MAX ) return 0; if ( memcmp( in, "MO3", 3 ) != 0 ) return 0; data = (void *) in; len = (int) *size; if ( UNMO3_Decode( &data, &len, 0 ) != 0 ) return 0; *size = len; return data; } void freeMo3( void * in ) { UNMO3_Free( in ); }