/*( getnum )*/ #define PRO char subr[2796]; int rel98[]={ 0x18,0x1a,0x1c,0x1e,0x20,0x22,0x24,0x26, 0x2e,0x33,0x38,0x56,0x6e,0x77,0x7c,0x86, 0xad,0xa6d,0xa88,0xac3,0xacd,0xad8,0xae0,0 }; int relme[]={ 0x18,0x1a,0x1c,0x1e,0x20,0x22,0x24,0x26, 0x2e,0x33,0x38,0x56,0x6e,0x77,0x7c,0x86, 0xac,0xa6c,0xa87,0xac2,0xacc,0xad7,0xadf,0 }; int reloff,*rel; #ifdef SELF char cr[]=" Windows 9X RAM Limitation Patch 3.0 Copyright (C) 2007 by Rudolph R. Loew. All Rights Reserved. "; #endif #ifdef PRO char cr[]=" Windows 9X RAM Limitation Patch 3.0 Copyright (C) 2007 by Rudolph R. Loew. All Rights Reserved. €€€€€€€€ "; #endif #ifdef DEMO char cr[]=" Windows 9X RAM Limitation Patch 3.0 (DEMO) Copyright (C) 2007 by Rudolph R. Loew. All Rights Reserved. "; char dem[]={0xd,3,2,0,0,0x25,-1,-1,0x3f,0,0xc3}; #endif char mz[]={ 0x4d,0x5a,0,0,6,0,0,0,4,0,0,0,0xff,0xff,0,0, 0xb8,0,0,0,0,0,0,0,0x40,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0x80,0,0,0, 0xe,0x1f,0xba,0xe,0,0xb4,9,0xcd,0x21,0xb8,1,0x4c,0xcd,0x21,0x54,0x68, 0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x63,0x61,0x6e,0x6e,0x6f, 0x74,0x20,0x62,0x65,0x20,0x72,0x75,0x6e,0x20,0x69,0x6e,0x20,0x44,0x4f,0x53,0x20, 0x6d,0x6f,0x64,0x65,0x2e,0xd,0xa,0x24,0,0,0,0,0,0,0,0, }; char vmm1998[]={ // 0x80,0xfc,0xff, // 0xc1,4,0x52,0x52,0x4c,0x20,0xc0,0x1c,0xc1,1,0xf6,0x80,0xdf,3, 0xc1,4,0x52,0x52,0x4c,0x20,0xc0,0x14,0xc1,1,0x3b,0xc0,0x1b,0xc1,2, 0xda,7,0xc0,0x26,0xc1,5,0x24,0,0,0,0x2c,0xc0,0xb,0xc1,9,0xe4, 0,0,0,0xd8,3,0,0,0xf6,0xc0,7,0xc1,1,0xf6,0xc0,0x10,0xc1, 1,0xf0,0xc0,0x2f,0xc1,1,0xf0,0xc0,0xa,0xc1,2,0x2c,3,0xc0,0x5e,0xc1, 2,0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,0x17,0xc0,0x17,0xc1, 1,0xb,0xc0,0x17,0xc1,1,0x7b,0xc0,0x17,0xc1,1,0xf,0xc0,0x17,0xc1,1, 9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x17, 0xc0,0x17,0xc1,1,0x19,0xc0,0x17,0xc1,1,0x17,0xc0,0x17,0xc1,1,9,0xc0, 0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,9,0xc0,0x17, 0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37,0xc0,0x17,0xc1, 1,0x3b,0xc0,0xed,0xc2,0x24,0x43,0,0,0,0x44,0,0,0,0x45,0, 0,0,0x46,0,0,0,0x47,0,0,0,0x48,0,0,0,0x49,0, 0,0,0x4a,0,0,0,0x4b,0,0,0,0xc0,0x28,0xc3,0x24,0x43,0, 0,0,0x44,0,0,0,0x45,0,0,0,0x46,0,0,0,0x47,0, 0,0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0,0,0x4b,0, 0,0,0xc0,0x36,0xc2,0x24,0,0,0x5a,0,0,0,0x5b,0,0,0, 0x5c,0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0,0, 0x60,0,0,0,0x61,0,0,0,0x62,0,0xc0,0xa9,0xc1,0xcd,0xe,0, 0,0,2,0,0,0,6,0,0,0,6,0,0,0,2,0, 0,0,0x1e,0,0,0,6,0,0,0,6,0,0,0,6,0, 0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0, 0,0,6,0,0,0,6,0,0,0,6,0,0,0,6,0, 0,0,6,0,0,0,0xe,0,0,0,0xc1,0xfc,0,0,0x54,0xfa, 0,0,0xa9,0xfb,0,0,0x7f,0xfb,0,0,0x55,0xfb,0,0,0x36,0xfb, 0,0,0x77,0xf9,0,0,0x77,0xf9,0,0,0xb0,0xed,0,0,0x9d,0x11, 0,0,8,0x17,0,0,0xe,0x11,0,0,0xd4,0x11,0,0,0xf6,0x10, 0,0,0xb6,0x1d,0,0,0xe1,0x1c,0,0,0xc9,0x19,0,0,3,0x32, 0,0,0xa4,0x30,0,0,0x37,0x30,0,0,0x3a,0x32,0,0,0x37,0x33, 0,0,0xa,0x3d,0,0,0x26,0x32,0,0,0x25,0x30,0,0,0xe2,0x33, 0,0,0x98,0xc,0,0,0x78,0xc,0,0,0x32,0xc,0,0,0xc5,9, 0,0,0xfe,0x16,0,0,0x14,0x1a,0,0,0xc7,0xc2,0x24,0xaa,0,0, 0x58,0xab,0,0,0xbb,0xad,0,0,0xd4,0xad,0,0,0x79,0xaf,0,0, 0x94,0xaf,0,0,0xa5,0xaf,0,0,0x97,0xb1,0,0,0x48,0xb2,0,0, 0x98,0x80,0xec,1,0xc1,2,0x2c,0x3f,0x80,0xdd,3,0xc1,2,0x2c,0x3f,0x80, 0xcb,4,0xc1,2,0x14,0x3f,0x80,0xf9,8,0xc1,2,0x14,0x3f,0x80,0x77,2, 0xc1,2,0x34,0x3f,0x80,0x46,0x28,0xc1,2,0x14,0x3f,0xc0,7,0xc1,2,0x14, 0x3d,0x80,0x39,1,0xc1,2,0x1c,0x3f,0xc0,0xb,0xc1,2,0x14,0x3f,0xc0,0x42, 0xc1,2,0x3c,0x3f,0xc0,0x19,0xc1,2,0x34,0x3f,0x80,0x41,1,0xc1,2,0x1c, 0x3f,0xc0,0x4e,0xc1,2,0x3c,0x3f,0x80,0xb7,8,0xc1,2,0x14,0x3f,0x80,0x13, 5,0xc1,2,0x14,0x3f,0x80,0xc2,1,0xc1,2,0x34,0x3f,0x80,0xf3,0x17,0xc1, 2,0x1c,0x3f,0xc0,0x89,0xc1,2,0x14,0x3f,0x80,0xb0,1,0xc1,6,0x10,0, 0,0,0x90,0xa6,0xc2,2,1,0,0xc0,0x1d,0xc1,2,0x14,0x3f,0xc0,0x65, 0xc1,2,0x1c,0x3f,0x80,0xf4,1,0xc1,2,0x14,0x3f,0x80,0xee,8,0xc1,2, 0x34,0x3f,0x80,0xda,0xc,0xc1,2,0x34,0x3f,0x80,0x79,0x11,0xc1,2,0x34,0x3f, 0x80,0xc0,4,0xc1,2,0x14,0x3f,0x80,0xa4,2,0xc1,2,0x14,0x3f,0x80,0xe, 8,0xc1,2,0x14,0x3f,0x80,1,1,0xc1,2,0x2c,0x3f,0xc0,0x88,0xc1,2, 0x1c,0x3f,0x80,0x39,6,0xc1,2,0x14,0x3f,0x80,0xa,2,0xc1,2,0x14,0x3f, 0xc0,0xef,0xc1,2,0x14,0x3f,0x80,0x8f,4,0xc5,0x4a,0,0x80,0xe4,5,0xc1, 2,0x2c,0x3f,0xc0,0x48,0xc1,2,0x2c,0x3f,0xc0,0x12,0xc1,2,0x2c,0x3f,0x80, 0x2d,0x21,0xc1,2,0x2c,0x3f,0x80,0x39,0x1a,0xc1,2,0x14,0x3f,0xc0,0x3b,0xc1, 2,0x14,0x3f,0x80,0xb4,0x33,0xc1,2,0x14,0x3f,0xc0,0x42,0xc1,2,0x14,0x3f, 0x80,0x4a,0x14,0xc1,2,0x34,0x3f,0xc0,0x53,0xc1,2,0x34,0x3f,0xc0,0xa5,0xc1, 2,0x34,0x3f,0xc0,0x59,0xc1,2,0x34,0x3f,0xc0,0x19,0xc1,2,0x34,0x3f,0xc0, 0x28,0xc1,2,0x34,0x3f,0xc0,0x79,0xc1,2,0x34,0x3f,0xc0,0x13,0xc1,2,0x34, 0x3f,0xc0,0x99,0xc1,2,0x34,0x3f,0x80,0xbc,0x98,0xc1,6,0x14,0x3f,0,0, 0x14,0x3d,0x80,0x8a,0xb,0xc1,2,0x34,0x3f,0x80,0x6a,1,0xc1,2,0x14,0x3f, 0x80,0x35,2,0xc1,2,0x3c,0x3f,0xc0,0xb,0xc1,2,0x1c,0x3f,0xc0,0x13,0xc1, 2,0x3c,0x3f,0xc0,0xf,0xc1,2,0x1c,0x3f,0x80,0x4b,0x14,0xc1,2,0x1c,0x3f, 0xc0,0xe,0xc1,2,0x3c,0x3f,0xc0,0xf,0xc1,2,0x1c,0x3f,0xc0,0x19,0xc1,2, 0x3c,0x3f,0x80,0xaf,0x3d,0xc1,2,0x14,0x3f,0xc0,0x5f,0xc1,2,0x14,0x3f,0xc0, 8,0xc1,2,0x14,0x3f,0x80,0xc0,2,0xc1,2,0x14,0x3f,0x80,0xf7,0xd,0xc1, 2,0x14,0x3f,0xc0,0x83,0xc1,2,0x14,0x3f,0x80,0x8e,1,0xc1,2,0x14,0x3f, 0xc0,0xf2,0xc1,2,0x34,0x3f,0x80,0xa3,0xb6,0xc1,2,0x14,0x3f,0x80,0xab,3, 0xc1,2,0x1c,0x3f,0x80,0xa3,3,0xc1,2,0x1c,0x3f,0xc0,0x90,0xc1,2,0xa4, 6,0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2,0x30,0xc3,0xc0,6, 0xc1,2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0,0x3f,0xc1,2,0x14, 0x3f,0xc0,0x6b,0xc1,2,0x14,0x3f,0xc0,0x26,0xc1,2,0x14,0x3f,0xc0,0x2e,0xc1, 2,0x14,0x3f,0xc0,0x35,0xc1,2,0x14,0x3f,0xc0,0x2c,0xc1,2,0x14,0x3f,0x80, 0x37,1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73,0xc1,2,0x14,0x3f, 0xc0,0x12,0xc1,2,0x14,0x3f,0x80,0x87,2,0xc1,2,0x14,0x3f,0xc0,0x16,0xc1, 2,0x14,0x3f,0xc0,0x2f,0xc1,2,0x14,0x3f,0xc0,0xdb,0xc1,1,0x80,0xc0,0x19, 0xc1,1,0x80,0x80,0x50,2,0xc1,2,0x14,0x3f,0xc0,0x38,0xc1,1,0x24,0x80, 0xbe,0x21,0xc1,2,0x34,0x3f,0x80,0x6f,3,0xc1,2,0x34,0x3f,0xc0,0x54,0xc1, 2,0x34,0x3f,0x80,0x4f,0xf5,0x84,0,0x90,0,0x80,0xdf,0x12,0xc1,2,0x34, 0x3f,0x80,0xaa,0xbd,0xc1,2,0x34,0x3f,0x80,0xc7,0x2e,0xc1,2,0x14,0x3f,0x80, 0x1d,6,0xc1,2,0x14,0x3f,0x80,0xb2,0x3f,0xc1,2,0x14,0x3f,0x80,0xa0,1, 0xc1,2,0x14,0x3f,0xc0,0xfd,0xc1,2,0x14,0x3f,0xc0,0x88,0xc1,2,0x2c,0x3f, 0xc0,9,0xc1,2,0x2c,0x3f,0xc0,0x6c,0xc1,2,0x2c,0x3f,0xc0,0xc8,0xc1,2, 0x2c,0x3f,0x80,0xfb,3,0xc1,2,0x1c,0x3f,0xc0,0x2c,0xc1,2,0x1c,0x3f,0x80, 0xb7,0x45,0xc1,2,0x14,0x3f,0xc0,0x2d,0xc1,2,0x14,0x3f,0x80,0xfa,5,0xc1, 2,0x14,0x3f,0x80,0x29,1,0xc1,2,0x14,0x3f,0x80,0xe4,0x17,0xc1,2,0x14, 0x3f,0xc0,0x98,0xc1,2,0x14,0x3f,0xc0,0x95,0xc1,2,0x14,0x3f,0xc0,0x66,0xc1, 2,0x14,0x3f,0x80,0x7c,0x4d,-1,0 }; char vmm1999[]={ // 0x80,0xfc,0xf7, 0xc1,4,0x52,0x52,0x4c,0x20,0xc0,0x14,0xc1,1,0x3b,0xc0,0x1b, 0xc1,1,0x26,0xc0,0x27,0xc1,5,0x24,0,0,0,0x2c,0xc0,0xb,0xc1,9, 0xe4,0,0,0,0xd8,3,0,0,0xca,0xc0,7,0xc1,1,0xca,0xc0,0x10, 0xc1,1,0xf0,0xc0,0x2f,0xc1,1,0xf0,0xc0,0xa,0xc1,2,0x2c,3,0xc0,0x5e, 0xc1,2,0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,0x17,0xc0,0x17, 0xc1,1,0xb,0xc0,0x17,0xc1,1,0x7b,0xc0,0x17,0xc1,1,0xf,0xc0,0x17,0xc1, 1,9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1, 0x17,0xc0,0x17,0xc1,1,0x19,0xc0,0x17,0xc1,1,0x17,0xc0,0x17,0xc1,1,9, 0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,9,0xc0, 0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37,0xc0,0x17, 0xc1,1,0x3b,0xc0,0xed,0xc2,0x24,0x43,0,0,0,0x44,0,0,0,0x45, 0,0,0,0x46,0,0,0,0x47,0,0,0,0x48,0,0,0,0x49, 0,0,0,0x4a,0,0,0,0x4b,0,0,0,0xc0,0x28,0xc3,0x24,0x43, 0,0,0,0x44,0,0,0,0x45,0,0,0,0x46,0,0,0,0x47, 0,0,0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0,0,0x4b, 0,0,0,0xc0,0x36,0xc2,0x24,0,0,0x5a,0,0,0,0x5b,0,0, 0,0x5c,0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0, 0,0x60,0,0,0,0x61,0,0,0,0x62,0,0xc0,0xa9,0xc1,0xcd,2, 0,0,0,0xe,0,0,0,2,0,0,0,2,0,0,0,0xe, 0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2, 0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2, 0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2, 0,0,0,2,0,0,0,2,0,0,0,0x41,0xfd,0,0,0xb4, 0xfb,0,0,0x69,0xfa,0,0,0x93,0xfa,0,0,0xb5,0xfa,0,0,0xea, 0xfa,0,0,0xab,0xf8,0,0,0xab,0xf8,0,0,0x50,0xec,0,0,0xf5, 0x11,0,0,0x78,0x17,0,0,0xa,0x11,0,0,0xf4,0x11,0,0,0xaa, 0x10,0,0,0x9a,0x1d,0,0,0x21,0x1c,0,0,0xc9,0x19,0,0,7, 0x32,0,0,0xa4,0x30,0,0,0xb,0x30,0,0,6,0x32,0,0,0xb, 0x33,0,0,0xe,0x3d,0,0,0x1a,0x32,0,0,0xed,0x30,0,0,0xa6, 0x33,0,0,0xb8,0xc,0,0,0xa8,0xc,0,0,0x16,0xc,0,0,0xcd, 9,0,0,0xda,0x16,0,0,0x3c,0x1a,0,0,0xcb,0xc2,0x24,0xaa,0, 0,0x6a,0xab,0,0,0xcd,0xad,0,0,0xe6,0xad,0,0,0x8b,0xaf,0, 0,0xa6,0xaf,0,0,0xb7,0xaf,0,0,0xa9,0xb1,0,0,0x5a,0xb2,0, 0,0xaa,0x80,0xac,2,0xc1,2,0x2c,0x3f,0x80,0xb1,3,0xc1,2,0x2c,0x3f, 0x80,0xf8,4,0xc1,2,0x34,0x3f,0x80,0xe,7,0xc1,2,0x74,0x3f,0x80,0x84, 4,0xc1,2,0x14,0x3f,0x80,0xea,0x23,0xc1,2,0x74,0x3f,0xc0,7,0xc1,2, 0x74,0x3d,0x80,0x20,5,0xc1,2,0x3c,0x3f,0xc0,0x19,0xc1,2,0x34,0x3f,0xc0, 0x2b,0xc1,2,0x1c,0x3f,0xc0,0xb,0xc1,2,0x14,0x3f,0x80,0x37,1,0xc1,2, 0x3c,0x3f,0xc0,0x39,0xc1,2,0x1c,0x3f,0x80,0xae,9,0xc1,2,0x34,0x3f,0x80, 0xa2,5,0xc1,2,0x34,0x3f,0x80,0x5c,1,0xc1,2,0x14,0x3f,0x80,0x83,0x15, 0xc1,2,0x74,0x3f,0xc0,0x71,0xc1,2,0x7c,0x3f,0x80,0x21,2,0xc1,2,0x3c, 0x3f,0xc0,0xa7,0xc1,2,0x34,0x3f,0xc0,0x46,0xc1,6,0x10,0,0,0,0x90, 0xa6,0xc2,2,1,0,0x80,0xc7,2,0xc1,2,0x34,0x3f,0x80,0xf2,9,0xc1, 2,0x14,0x3f,0x80,0x51,0xc,0xc1,2,0x14,0x3f,0x80,0xbf,0x10,0xc1,2,0x14, 0x3f,0x80,0x52,5,0xc1,2,0x34,0x3f,0x80,0xb4,2,0xc1,2,0x34,0x3f,0x80, 0x59,6,0xc1,2,0x6c,0x3f,0xc0,0x60,0xc1,2,0x7c,0x3f,0x80,0x7f,1,0xc1, 2,0x34,0x3f,0x80,0x5b,7,0xc1,2,0x34,0x3f,0x80,0x4b,1,0xc1,2,0x74, 0x3f,0xc0,0xb2,0xc1,2,0x34,0x3f,0x80,0xe6,4,0xc5,0x4a,0,0x80,0xe4,5, 0xc1,2,0x2c,0x3f,0xc0,0x48,0xc1,2,0x2c,0x3f,0xc0,0x12,0xc1,2,0x2c,0x3f, 0x80,0x2d,0x21,0xc1,2,0x2c,0x3f,0x80,0x39,0x1a,0xc1,2,0x34,0x3f,0xc0,0x3b, 0xc1,2,0x34,0x3f,0x80,0xb4,0x33,0xc1,2,0x74,0x3f,0xc0,0x42,0xc1,2,0x74, 0x3f,0x80,0x4a,0x14,0xc1,2,0x14,0x3f,0xc0,0x53,0xc1,2,0x14,0x3f,0xc0,0xa5, 0xc1,2,0x14,0x3f,0xc0,0x59,0xc1,2,0x14,0x3f,0xc0,0x19,0xc1,2,0x14,0x3f, 0xc0,0x28,0xc1,2,0x14,0x3f,0xc0,0x79,0xc1,2,0x14,0x3f,0xc0,0x13,0xc1,2, 0x14,0x3f,0xc0,0x99,0xc1,2,0x14,0x3f,0x80,0xbc,0x98,0xc1,6,0x74,0x3f,0, 0,0x74,0x3d,0x80,0x8a,0xb,0xc1,2,0x14,0x3f,0x80,0x6a,1,0xc1,2,0x34, 0x3f,0x80,0x45,2,0xc1,2,0x1c,0x3f,0xc0,0xb,0xc1,2,0x3c,0x3f,0xc0,0x13, 0xc1,2,0x1c,0x3f,0xc0,0xf,0xc1,2,0x3c,0x3f,0x80,0x4b,0x14,0xc1,2,0x3c, 0x3f,0xc0,0xe,0xc1,2,0x1c,0x3f,0xc0,0xf,0xc1,2,0x3c,0x3f,0xc0,0x19,0xc1, 2,0x1c,0x3f,0x80,0x9f,0x3d,0xc1,2,0x34,0x3f,0xc0,0x5f,0xc1,2,0x34,0x3f, 0xc0,8,0xc1,2,0x34,0x3f,0x80,0xc0,2,0xc1,2,0x34,0x3f,0x80,0xf7,0xd, 0xc1,2,0x34,0x3f,0xc0,0x83,0xc1,2,0x34,0x3f,0x80,0x8e,1,0xc1,2,0x34, 0x3f,0xc0,0xf2,0xc1,2,0x14,0x3f,0x80,0xa3,0xb6,0xc1,2,0x74,0x3f,0x80,0xab, 3,0xc1,2,0x7c,0x3f,0x80,0xa3,3,0xc1,2,0x3c,0x3f,0xc0,0x90,0xc1,2, 0xa4,6,0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2,0x30,0xc3,0xc0, 6,0xc1,2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0,0x3f,0xc1,2, 0x34,0x3f,0xc0,0x6b,0xc1,2,0x34,0x3f,0xc0,0x26,0xc1,2,0x34,0x3f,0xc0,0x2e, 0xc1,2,0x34,0x3f,0xc0,0x35,0xc1,2,0x34,0x3f,0xc0,0x2c,0xc1,2,0x34,0x3f, 0x80,0x37,1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73,0xc1,2,0x34, 0x3f,0xc0,0x12,0xc1,2,0x34,0x3f,0x80,0x87,2,0xc1,2,0x34,0x3f,0xc0,0x16, 0xc1,2,0x34,0x3f,0xc0,0x2f,0xc1,2,0x34,0x3f,0xc0,0xdb,0xc1,1,0x80,0xc0, 0x19,0xc1,1,0x80,0x80,0x50,2,0xc1,2,0x34,0x3f,0xc0,0x38,0xc1,1,0x24, 0x80,0xbe,0x21,0xc1,2,0x14,0x3f,0x80,0x6f,3,0xc1,2,0x14,0x3f,0xc0,0x54, 0xc1,2,0x14,0x3f,0x80,0x4f,0xf5,0x84,0,0x90,0,0x80,0xdf,0x12,0xc1,2, 0x14,0x3f,0x80,0xaa,0xbd,0xc1,2,0x14,0x3f,0x80,0xc7,0x2e,0xc1,2,0x34,0x3f, 0x80,0x1d,6,0xc1,2,0x34,0x3f,0x80,0xb2,0x3f,0xc1,2,0x34,0x3f,0x80,0xa0, 1,0xc1,2,0x34,0x3f,0xc0,0xfd,0xc1,2,0x34,0x3f,0xc0,0x88,0xc1,2,0x6c, 0x3f,0xc0,9,0xc1,2,0x6c,0x3f,0xc0,0x6c,0xc1,2,0x6c,0x3f,0xc0,0xc8,0xc1, 2,0x6c,0x3f,0x80,0xfb,3,0xc1,2,0x7c,0x3f,0xc0,0x2c,0xc1,2,0x7c,0x3f, 0x80,0xb7,0x45,0xc1,2,0x34,0x3f,0xc0,0x2d,0xc1,2,0x34,0x3f,0x80,0xfa,5, 0xc1,2,0x34,0x3f,0x80,0x29,1,0xc1,2,0x34,0x3f,0x80,0xe4,0x17,0xc1,2, 0x34,0x3f,0xc0,0x98,0xc1,2,0x34,0x3f,0xc0,0x95,0xc1,2,0x34,0x3f,0xc0,0x66, 0xc1,2,0x74,0x3f,0x80,0xa4,0x4f,-1,0 }; char vmm2222[]={ // 0x80,0xfc,0xff, // 0xc1,4,0x52,0x52,0x4c,0x21,0xc0,0x1c,0xc1,1,0x5a,0x80,0xdf,3, 0xc1,4,0x52,0x52,0x4c,0x21,0xc0,0x14,0xc1,1,0x3b,0xc0,0x1b,0xc1,1, 0x2a,0xc0,0x27,0xc1,5,0x24,0,0,0,0x2c,0xc0,0xb,0xc1,9,0xe4,0, 0,0,0xd8,3,0,0,0x5a,0xc0,7,0xc1,1,0x5a,0xc0,0x10,0xc1,1, 0xf0,0xc0,0x2f,0xc1,1,0xf0,0xc0,0xa,0xc1,2,0x2c,1,0xc0,0x5e,0xc1,2, 0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,0x17,0xc0,0x17,0xc1,1, 0xb,0xc0,0x17,0xc1,1,0x7b,0xc0,0x17,0xc1,1,0xf,0xc0,0x17,0xc1,1,9, 0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x17,0xc0, 0x17,0xc1,1,0x19,0xc0,0x17,0xc1,1,0x17,0xc0,0x17,0xc1,1,9,0xc0,0x17, 0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1, 1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37,0xc0,0x17,0xc1,1, 0x3b,0xc0,0xed,0xc2,0x24,0x43,0,0,0,0x44,0,0,0,0x45,0,0, 0,0x46,0,0,0,0x47,0,0,0,0x48,0,0,0,0x49,0,0, 0,0x4a,0,0,0,0x4b,0,0,0,0xc0,0x28,0xc3,0x24,0x43,0,0, 0,0x44,0,0,0,0x45,0,0,0,0x46,0,0,0,0x47,0,0, 0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0,0,0x4b,0,0, 0,0xc0,0x36,0xc2,0x24,0,0,0x5a,0,0,0,0x5b,0,0,0,0x5c, 0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0,0,0x60, 0,0,0,0x61,0,0,0,0x62,0,0xc0,0xa9,0xc1,0xcd,2,0,0, 0,2,0,0,0,6,0,0,0,6,0,0,0,2,0,0, 0,0xe,0,0,0,6,0,0,0,6,0,0,0,6,0,0, 0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0, 0,6,0,0,0,6,0,0,0,6,0,0,0,6,0,0, 0,6,0,0,0,0x1e,0,0,0,0xc1,0xfc,0,0,0x54,0xfa,0, 0,0xf9,0xfb,0,0,0x8f,0xfb,0,0,0x55,0xfb,0,0,0x76,0xfb,0, 0,0xb7,0xf9,0,0,0xb7,0xf9,0,0,0xab,0xee,0,0,0xef,0x11,0, 0,0x7a,0x17,0,0,0x98,0x11,0,0,0xd2,0x11,0,0,0x28,0x10,0, 0,6,0x1d,0,0,0xc3,0x1c,0,0,0xf5,0x19,0,0,0xfb,0x31,0, 0,0xa9,0x30,0,0,0x18,0x30,0,0,0x19,0x32,0,0,6,0x33,0, 0,0x29,0x3d,0,0,0x29,0x32,0,0,0x32,0x30,0,0,0x9d,0x30,0, 0,0x92,0xf,0,0,0x98,0xc,0,0,0x32,0xc,0,0,0x43,9,0, 0,0x6a,0x16,0,0,0x14,0x1a,0,0,0x45,0xc2,0x24,0xaa,0,0,0xa1, 0xab,0,0,4,0xae,0,0,0x1d,0xae,0,0,0xc2,0xaf,0,0,0xdd, 0xaf,0,0,0xee,0xaf,0,0,0xe0,0xb1,0,0,0x91,0xb2,0,0,0xe1, 0x80,0xe2,1,0xc1,2,0x2c,0x3d,0x80,0x17,4,0xc1,2,0x2c,0x3d,0x80,0x5b, 4,0xc1,2,0x14,0x3d,0x80,0xeb,8,0xc1,2,0x14,0x3d,0x80,0xd9,2,0xc1, 2,0x34,0x3d,0x80,0xe7,0x27,0xc1,2,0x14,0x3d,0xc0,7,0xc1,2,0x14,0x3d, 0x80,0x4a,1,0xc1,2,0x1c,0x3d,0xc0,0xb,0xc1,2,0x14,0x3d,0xc0,0x47,0xc1, 2,0x3c,0x3d,0xc0,0xb,0xc1,2,0x34,0x3d,0x80,0x34,1,0xc1,2,0x1c,0x3d, 0xc0,0x61,0xc1,2,0x3c,0x3d,0x80,0xc7,8,0xc1,2,0x14,0x3d,0x80,0x2e,5, 0xc1,2,0x14,0x3d,0x80,0x8a,1,0xc1,2,0x34,0x3d,0x80,6,0x18,0xc1,2, 0x1c,0x3d,0xc0,0x95,0xc1,2,0x14,0x3d,0x80,0xa5,1,0xc1,6,0x10,0,0, 0,0x90,0xa6,0xc2,2,1,0,0xc0,0x2f,0xc1,2,0x14,0x3d,0xc0,0x6e,0xc1, 2,0x1c,0x3d,0x80,0xa7,1,0xc1,2,0x14,0x3d,0x80,4,9,0xc1,2,0x34, 0x3d,0x80,0x12,0xd,0xc1,2,0x34,0x3d,0x80,0xdd,0x11,0xc1,2,0x34,0x3d,0x80, 0x77,4,0xc1,2,0x14,0x3d,0x80,0xce,2,0xc1,2,0x14,0x3d,0x80,0x3c,8, 0xc1,2,0x14,0x3d,0x80,5,1,0xc1,2,0x2c,0x3d,0xc0,0x78,0xc1,2,0x1c, 0x3d,0x80,0x17,6,0xc1,2,0x14,0x3d,0x80,0x2d,2,0xc1,2,0x14,0x3d,0xc0, 0xf1,0xc1,2,0x14,0x3d,0x80,0x3f,4,0xc5,0x4a,0,0x80,0xe4,5,0xc1,2, 0x2c,0x3d,0xc0,0x48,0xc1,2,0x2c,0x3d,0xc0,0x12,0xc1,2,0x2c,0x3d,0x80,0x2d, 0x21,0xc1,2,0x2c,0x3d,0x80,0x39,0x1a,0xc1,2,0x14,0x3d,0xc0,0x3b,0xc1,2, 0x14,0x3d,0x80,0xe4,0x33,0xc1,2,0x14,0x3d,0xc0,0x42,0xc1,2,0x14,0x3d,0x80, 0x4a,0x14,0xc1,2,0x34,0x3d,0xc0,0x53,0xc1,2,0x34,0x3d,0xc0,0xa5,0xc1,2, 0x34,0x3d,0xc0,0x59,0xc1,2,0x34,0x3d,0xc0,0x19,0xc1,2,0x34,0x3d,0xc0,0x28, 0xc1,2,0x34,0x3d,0xc0,0x79,0xc1,2,0x34,0x3d,0xc0,0x13,0xc1,2,0x34,0x3d, 0xc0,0x99,0xc1,2,0x34,0x3d,0x80,0x44,0x99,0xc1,6,0x14,0x3d,0,0,0x14, 0x3d,0x80,0x82,0xb,0xc1,2,0x34,0x3d,0x80,0x6a,1,0xc1,2,0x14,0x3d,0x80, 0x35,2,0xc1,2,0x3c,0x3d,0xc0,0xb,0xc1,2,0x1c,0x3d,0xc0,0x13,0xc1,2, 0x3c,0x3d,0xc0,0xf,0xc1,2,0x1c,0x3d,0x80,0x5b,0x14,0xc1,2,0x1c,0x3d,0xc0, 0xe,0xc1,2,0x3c,0x3d,0xc0,0xf,0xc1,2,0x1c,0x3d,0xc0,0x19,0xc1,2,0x3c, 0x3d,0x80,0xef,0x3c,0xc1,2,0x14,0x3d,0xc0,0x5f,0xc1,2,0x14,0x3d,0xc0,8, 0xc1,2,0x14,0x3d,0x80,0xc0,2,0xc1,2,0x14,0x3d,0x80,0xf7,0xd,0xc1,2, 0x14,0x3d,0xc0,0x83,0xc1,2,0x14,0x3d,0x80,0x8e,1,0xc1,2,0x14,0x3d,0xc0, 0xf2,0xc1,2,0x34,0x3d,0x80,0xa3,0xb6,0xc1,2,0x14,0x3d,0x80,0xab,3,0xc1, 2,0x1c,0x3d,0x80,0xa3,3,0xc1,2,0x1c,0x3d,0xc0,0x90,0xc1,2,0xa4,6, 0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2,0x30,0xc3,0xc0,6,0xc1, 2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0,0x3f,0xc1,2,0x14,0x3d, 0xc0,0x6b,0xc1,2,0x14,0x3d,0xc0,0x26,0xc1,2,0x14,0x3d,0xc0,0x2e,0xc1,2, 0x14,0x3d,0xc0,0x35,0xc1,2,0x14,0x3d,0xc0,0x2c,0xc1,2,0x14,0x3d,0x80,0x35, 1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73,0xc1,2,0x14,0x3d,0xc0, 0x12,0xc1,2,0x14,0x3d,0x80,0x89,2,0xc1,2,0x14,0x3d,0xc0,0x16,0xc1,2, 0x14,0x3d,0xc0,0x2f,0xc1,2,0x14,0x3d,0xc0,0xdb,0xc1,1,0x80,0xc0,0x19,0xc1, 1,0x80,0x80,0x50,2,0xc1,2,0x14,0x3d,0xc0,0x38,0xc1,1,0x24,0x80,0xbe, 0x21,0xc1,2,0x34,0x3d,0x80,0x6f,3,0xc1,2,0x34,0x3d,0xc0,0x54,0xc1,2, 0x34,0x3d,0x80,0x4f,0xf5,0x84,0,0x90,0,0x80,0xdf,0x12,0xc1,2,0x34,0x3d, 0x80,0xaa,0xbd,0xc1,2,0x34,0x3d,0x80,0xf7,0x2e,0xc1,2,0x14,0x3d,0x80,0x1d, 6,0xc1,2,0x14,0x3d,0x80,0x82,0x3f,0xc1,2,0x14,0x3d,0x80,0xa0,1,0xc1, 2,0x14,0x3d,0xc0,0xfd,0xc1,2,0x14,0x3d,0xc0,0x88,0xc1,2,0x2c,0x3d,0xc0, 9,0xc1,2,0x2c,0x3d,0xc0,0x6c,0xc1,2,0x2c,0x3d,0xc0,0xc8,0xc1,2,0x2c, 0x3d,0x80,0xfb,3,0xc1,2,0x1c,0x3d,0xc0,0x2c,0xc1,2,0x1c,0x3d,0x80,0xb7, 0x45,0xc1,2,0x14,0x3d,0xc0,0x2d,0xc1,2,0x14,0x3d,0x80,0xfa,5,0xc1,2, 0x14,0x3d,0x80,0x29,1,0xc1,2,0x14,0x3d,0x80,0xe4,0x17,0xc1,2,0x14,0x3d, 0xc0,0x98,0xc1,2,0x14,0x3d,0xc0,0x95,0xc1,2,0x14,0x3d,0xc0,0x66,0xc1,2, 0x14,0x3d,0x80,0x7c,0x4d,-1,0 }; char vmm2223[]={ // 0x80,0xfc,0xf7, 0xc1,4,0x52,0x52,0x4c,0x21,0xc0,0x14,0xc1,1,0x3b,0xc0,0x1b, 0xc1,1,0x26,0xc0,0x27,0xc1,5,0x24,0,0,0,0x2c,0xc0,0xb,0xc1,0xa, 0xe4,0,0,0,0xd8,3,0,0,0xbe,1,0xc0,6,0xc1,2,0xbe,1, 0xc0,0xf,0xc1,1,0xf0,0xc0,0x2f,0xc1,1,0xf0,0xc0,0xa,0xc1,2,0x2c,1, 0xc0,0x5e,0xc1,2,0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,0x17, 0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,0x7b,0xc0,0x17,0xc1,1,0xf,0xc0, 0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17, 0xc1,1,0x17,0xc0,0x17,0xc1,1,0x19,0xc0,0x17,0xc1,1,0x17,0xc0,0x17,0xc1, 1,9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1, 9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37, 0xc0,0x17,0xc1,1,0x3b,0xc0,0xed,0xc2,0x24,0x43,0,0,0,0x44,0,0, 0,0x45,0,0,0,0x46,0,0,0,0x47,0,0,0,0x48,0,0, 0,0x49,0,0,0,0x4a,0,0,0,0x4b,0,0,0,0xc0,0x28,0xc3, 0x24,0x43,0,0,0,0x44,0,0,0,0x45,0,0,0,0x46,0,0, 0,0x47,0,0,0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0, 0,0x4b,0,0,0,0xc0,0x36,0xc2,0x24,0,0,0x5a,0,0,0,0x5b, 0,0,0,0x5c,0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f, 0,0,0,0x60,0,0,0,0x61,0,0,0,0x62,0,0xc0,0xa9,0xc1, 0xcd,6,0,0,0,0xfe,0,0,0,2,0,0,0,2,0,0, 0,0x3e,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,0xc1,0xfc,0, 0,0x74,0xfa,0,0,0xd9,0xfb,0,0,0x93,0xfb,0,0,0x75,0xfb,0, 0,0x5a,0xfb,0,0,0x9b,0xf9,0,0,0x9b,0xf9,0,0,0x6f,0xee,0, 0,0x2b,0x16,0,0,0x96,0x10,0,0,0xf8,0x11,0,0,0xb6,0x11,0, 0,0x58,0x10,0,0,0x7a,0x1d,0,0,0xc7,0x1c,0,0,0xd5,0x19,0, 0,0x17,0x31,0,0,0x79,0x37,0,0,0xe8,0x37,0,0,0x79,0x32,0, 0,2,0x33,0,0,0x69,0x3d,0,0,0x69,0x32,0,0,0xe,0x30,0, 0,0xa5,0x30,0,0,0xb6,0xf,0,0,0xb8,0xc,0,0,0x16,0xc,0, 0,0x3f,9,0,0,0x36,0x16,0,0,0xc,0x1a,0,0,0x5d,0xc2,0x24, 0xaa,0,0,0xb3,0xab,0,0,0x16,0xae,0,0,0x2f,0xae,0,0,0xd4, 0xaf,0,0,0xef,0xaf,0,0,0,0xb0,0,0,0xf2,0xb1,0,0,0xa3, 0xb2,0,0,0xf3,0x80,0xa0,2,0xc1,2,0x2c,0x3d,0x80,0xe7,3,0xc1,2, 0x2c,0x3d,0x80,0xc1,4,0xc1,2,0x34,0x3d,0x80,0xd1,6,0xc1,2,0xf4,0x3d, 0x80,0xb2,4,0xc1,2,0x14,0x3d,0x80,0xe6,0x25,0xc1,2,0xf4,0x3d,0xc0,7, 0xc1,2,0xf4,2,0x80,2,3,0xc1,2,0x3c,0x3d,0xc0,0xb,0xc1,2,0x34, 0x3d,0xc0,0x2d,0xc1,2,0x1c,0x3d,0xc0,0x14,0xc1,2,0x14,0x3d,0x80,0x3b,1, 0xc1,2,0x3c,0x3d,0xc0,0x55,0xc1,2,0x1c,0x3d,0x80,0xb0,9,0xc1,2,0x34, 0x3d,0x80,0x77,5,0xc1,2,0x34,0x3d,0x80,0x87,1,0xc1,2,0x14,0x3d,0x80, 0x6e,0x15,0xc1,2,0xf4,0x3d,0xc0,0x6a,0xc1,2,0xfc,0x3d,0x80,0x39,2,0xc1, 2,0x3c,0x3d,0xc0,0x8f,0xc1,2,0x34,0x3d,0xc0,0x4b,0xc1,6,0x10,0,0, 0,0x90,0xa6,0xc2,2,1,0,0x80,0xa0,2,0xc1,2,0x34,0x3d,0x80,0x3e, 0xa,0xc1,2,0x14,0x3d,0x80,0x30,0xc,0xc1,2,0x14,0x3d,0x80,0x3e,0x11,0xc1, 2,0x14,0x3d,0x80,0x17,5,0xc1,2,0x34,0x3d,0x80,0xdc,2,0xc1,2,0x34, 0x3d,0x80,0x61,6,0xc1,2,0xec,0x3d,0xc0,0x67,0xc1,2,0xfc,0x3d,0x80,0x9f, 1,0xc1,2,0x34,0x3d,0x80,0x4f,7,0xc1,2,0x34,0x3d,0x80,0x1e,1,0xc1, 2,0xf4,0x3d,0xc0,0xc7,0xc1,2,0x34,0x3d,0x80,0xa1,4,0xc5,0x4a,0,0x80, 0xe4,5,0xc1,2,0x2c,0x3d,0xc0,0x48,0xc1,2,0x2c,0x3d,0xc0,0x12,0xc1,2, 0x2c,0x3d,0x80,0x2d,0x21,0xc1,2,0x2c,0x3d,0x80,0x39,0x1a,0xc1,2,0x34,0x3d, 0xc0,0x3b,0xc1,2,0x34,0x3d,0x80,0xe4,0x33,0xc1,2,0xf4,0x3d,0xc0,0x42,0xc1, 2,0xf4,0x3d,0x80,0x4a,0x14,0xc1,2,0x14,0x3d,0xc0,0x53,0xc1,2,0x14,0x3d, 0xc0,0xa5,0xc1,2,0x14,0x3d,0xc0,0x59,0xc1,2,0x14,0x3d,0xc0,0x19,0xc1,2, 0x14,0x3d,0xc0,0x28,0xc1,2,0x14,0x3d,0xc0,0x79,0xc1,2,0x14,0x3d,0xc0,0x13, 0xc1,2,0x14,0x3d,0xc0,0x99,0xc1,2,0x14,0x3d,0x80,0x44,0x99,0xc1,6,0xf4, 0x3d,0,0,0xf4,2,0x80,0x82,0xb,0xc1,2,0x14,0x3d,0x80,0x6a,1,0xc1, 2,0x34,0x3d,0x80,0x45,2,0xc1,2,0x1c,0x3d,0xc0,0xb,0xc1,2,0x3c,0x3d, 0xc0,0x13,0xc1,2,0x1c,0x3d,0xc0,0xf,0xc1,2,0x3c,0x3d,0x80,0x5b,0x14,0xc1, 2,0x3c,0x3d,0xc0,0xe,0xc1,2,0x1c,0x3d,0xc0,0xf,0xc1,2,0x3c,0x3d,0xc0, 0x19,0xc1,2,0x1c,0x3d,0x80,0xdf,0x3c,0xc1,2,0x34,0x3d,0xc0,0x5f,0xc1,2, 0x34,0x3d,0xc0,8,0xc1,2,0x34,0x3d,0x80,0xc0,2,0xc1,2,0x34,0x3d,0x80, 0xf7,0xd,0xc1,2,0x34,0x3d,0xc0,0x83,0xc1,2,0x34,0x3d,0x80,0x8e,1,0xc1, 2,0x34,0x3d,0xc0,0xf2,0xc1,2,0x14,0x3d,0x80,0xa3,0xb6,0xc1,2,0xf4,0x3d, 0x80,0xab,3,0xc1,2,0xfc,0x3d,0x80,0xa3,3,0xc1,2,0x3c,0x3d,0xc0,0x90, 0xc1,2,0xa4,6,0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2,0x30, 0xc3,0xc0,6,0xc1,2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0,0x3f, 0xc1,2,0x34,0x3d,0xc0,0x6b,0xc1,2,0x34,0x3d,0xc0,0x26,0xc1,2,0x34,0x3d, 0xc0,0x2e,0xc1,2,0x34,0x3d,0xc0,0x35,0xc1,2,0x34,0x3d,0xc0,0x2c,0xc1,2, 0x34,0x3d,0x80,0x35,1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73,0xc1, 2,0x34,0x3d,0xc0,0x12,0xc1,2,0x34,0x3d,0x80,0x89,2,0xc1,2,0x34,0x3d, 0xc0,0x16,0xc1,2,0x34,0x3d,0xc0,0x2f,0xc1,2,0x34,0x3d,0xc0,0xdb,0xc1,1, 0x80,0xc0,0x19,0xc1,1,0x80,0x80,0x50,2,0xc1,2,0x34,0x3d,0xc0,0x38,0xc1, 1,0x24,0x80,0xbe,0x21,0xc1,2,0x14,0x3d,0x80,0x6f,3,0xc1,2,0x14,0x3d, 0xc0,0x54,0xc1,2,0x14,0x3d,0x80,0x4f,0xf5,0x84,0,0x90,0,0x80,0xdf,0x12, 0xc1,2,0x14,0x3d,0x80,0xaa,0xbd,0xc1,2,0x14,0x3d,0x80,0xf7,0x2e,0xc1,2, 0x34,0x3d,0x80,0x1d,6,0xc1,2,0x34,0x3d,0x80,0x82,0x3f,0xc1,2,0x34,0x3d, 0x80,0xa0,1,0xc1,2,0x34,0x3d,0xc0,0xfd,0xc1,2,0x34,0x3d,0xc0,0x88,0xc1, 2,0xec,0x3d,0xc0,9,0xc1,2,0xec,0x3d,0xc0,0x6c,0xc1,2,0xec,0x3d,0xc0, 0xc8,0xc1,2,0xec,0x3d,0x80,0xfb,3,0xc1,2,0xfc,0x3d,0xc0,0x2c,0xc1,2, 0xfc,0x3d,0x80,0xb7,0x45,0xc1,2,0x34,0x3d,0xc0,0x2d,0xc1,2,0x34,0x3d,0x80, 0xfa,5,0xc1,2,0x34,0x3d,0x80,0x29,1,0xc1,2,0x34,0x3d,0x80,0xe4,0x17, 0xc1,2,0x34,0x3d,0xc0,0x98,0xc1,2,0x34,0x3d,0xc0,0x95,0xc1,2,0x34,0x3d, 0xc0,0x66,0xc1,2,0xf4,0x3d,0x80,0xa4,0x4f,-1,0 }; char vmm2225[]={ // 0x80,0xfc,0xf9, 0xc1,4,0x52,0x52,0x4c,0x21,0xc0,0x14,0xc1,1,0x39,0xc0,0x1b, 0xc1,1,0xfa,0xc0,0x27,0xc1,5,0x2c,0,0,0,0x24,0xc0,0xb,0xc1,0xa, 0xec,0,0,0,0xc8,3,0,0,0xd6,1,0xc0,6,0xc1,2,0xd6,1, 0xc0,0xf,0xc1,1,0x90,0xc0,0x2f,0xc1,1,0x90,0xc0,0xa,0xc1,2,0x6c,7, 0xc0,0x5e,0xc1,2,0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,9, 0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x79,0xc0,0x17,0xc1,1,9,0xc0, 0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x17,0xc0,0x17, 0xc1,1,0x19,0xc0,0x17,0xc1,1,0x1b,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1, 1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0xf,0xc0,0x17,0xc1,1, 0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37,0xc0,0x17,0xc1,1,0x39, 0xc0,0x17,0xc1,1,0x39,0xc0,0xf1,0xc2,0x24,0x44,0,0,0,0x45,0,0, 0,0x46,0,0,0,0x47,0,0,0,0x48,0,0,0,0x49,0,0, 0,0x4a,0,0,0,0x4b,0,0,0,0x4c,0,0,0,0xc0,0x28,0xc3, 0x24,0x44,0,0,0,0x45,0,0,0,0x46,0,0,0,0x47,0,0, 0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0,0,0x4b,0,0, 0,0x4c,0,0,0,0xc0,0x36,0xc2,0x24,0,0,0x5b,0,0,0,0x5c, 0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0,0,0x60, 0,0,0,0x61,0,0,0,0x62,0,0,0,0x63,0,0xc0,0xad,0xc1, 0xce,6,0,0,0,6,0,0,0,6,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,0xe,0,0,0,0xe,0,0, 0,0xe,0,0,0,0xe,0,0,0,0xe,0,0,0,0xe,0,0, 0,0xe,0,0,0,0xe,0,0,0,0xe,0,0,0,0xe,0,0, 0,0xe,0,0,0,0xe,0,0,0,6,0,0,0,0x41,0xfd,0, 0,0xb7,0xfb,0,0,0x52,0xfa,0,0,0x88,0xfa,0,0,0xb6,0xfa,0, 0,0xd3,0xfa,0,0,0x90,0xf8,0,0,0x90,0xf8,0,0,0xac,0xef,0, 0,0x6a,0x16,0,0,0x98,0x10,0,0,0xb8,0x11,0,0,0x6e,0x11,0, 0,0x68,0x10,0,0,6,0x1d,0,0,0x4d,0x1c,0,0,0x5b,0x19,0, 0,0x1d,0x31,0,0,0xab,0x37,0,0,0x38,0x30,0,0,0x3f,0x32,0, 0,2,0x33,0,0,0x17,0x3d,0,0,0x27,0x32,0,0,0x12,0x30,0, 0,0xff,0x30,0,0,0xf2,0xf,0,0,0x68,0xc,0,0,0x12,0x14,0, 0,0xc5,0x16,0,0,0x17,0x16,0,0,0x64,0x1a,0,0,0x37,0x18,0xc2, 0x24,0,0,0xd0,0xab,0,0,0x33,0xae,0,0,0x4c,0xae,0,0,0xf1, 0xaf,0,0,0xc,0xb0,0,0,0x1d,0xb0,0,0,0xf6,0xb1,0,0,0xb0, 0xb2,0,0,0,0xb3,0xc0,0x50,0xc1,2,0x6c,3,0x80,0xad,4,0xc1,2, 0x6c,3,0x80,0xcd,6,0xc1,2,0x14,3,0x80,0xea,6,0xc1,2,0x14,3, 0x80,0xac,1,0xc1,2,0x74,3,0x80,0xc1,0x28,0xc1,2,0x14,3,0xc0,7, 0xc1,2,0x14,3,0x80,0xa,1,0xc1,2,0x7c,3,0xc0,0xb,0xc1,2,0x74, 3,0x80,0x46,2,0xc1,2,0x1c,3,0xc0,0xb,0xc1,2,0x14,3,0xc0,0x22, 0xc1,2,0x7c,3,0x80,0x13,1,0xc1,2,0x1c,3,0x80,0xc9,0xa,0xc1,2, 0x14,3,0x80,0x81,1,0xc1,2,0x74,3,0x80,0x4b,4,0xc1,2,0x14,3, 0x80,0x6c,0x16,0xc1,2,0x14,3,0xc0,0x6f,0xc1,2,0x1c,3,0x80,0xba,1, 0xc1,6,0x10,0,0,0,0xb0,0xa6,0xc2,2,1,0,0xc0,0xa4,0xc1,2, 0x1c,3,0xc0,0x6c,0xc1,2,0x14,3,0x80,0x14,3,0xc1,2,0x14,3,0x80, 0xd1,4,0xc1,2,0x74,3,0x80,0xeb,0xe,0xc1,2,0x74,3,0x80,0xd,0x12, 0xc1,2,0x74,3,0x80,0xba,6,0xc1,2,0x14,3,0x80,0xf2,2,0xc1,2, 0x14,3,0x80,0x19,6,0xc1,2,0x6c,3,0xc0,0x59,0xc1,2,0x1c,3,0x80, 0x92,1,0xc1,2,0x14,3,0x80,0x3b,7,0xc1,2,0x14,3,0x80,0xe,1, 0xc1,2,0x14,3,0xc0,0xaa,0xc1,2,0x14,3,0x80,0x24,4,0xc5,0x4a,0, 0x80,0xe4,5,0xc1,2,0x6c,3,0xc0,0x48,0xc1,2,0x6c,3,0xc0,0x12,0xc1, 2,0x6c,3,0x80,0x4d,0x21,0xc1,2,0x6c,3,0x80,0x79,0x1a,0xc1,2,0x14, 3,0xc0,0x3b,0xc1,2,0x14,3,0x80,4,0x34,0xc1,2,0x14,3,0xc0,0x42, 0xc1,2,0x14,3,0x80,0x4a,0x14,0xc1,2,0x74,3,0xc0,0x53,0xc1,2,0x74, 3,0xc0,0xa5,0xc1,2,0x74,3,0xc0,0x59,0xc1,2,0x74,3,0xc0,0x19,0xc1, 2,0x74,3,0xc0,0x28,0xc1,2,0x74,3,0xc0,0x79,0xc1,2,0x74,3,0xc0, 0x13,0xc1,2,0x74,3,0xc0,0x99,0xc1,2,0x74,3,0x80,0x58,0x99,0xc1,6, 0x14,3,0,0,0x14,3,0x80,0x7e,0xb,0xc1,2,0x74,3,0x80,0x6a,1, 0xc1,2,0x14,3,0x80,0x45,2,0xc1,2,0x7c,3,0xc0,0xb,0xc1,2,0x1c, 3,0xc0,0x13,0xc1,2,0x7c,3,0xc0,0xf,0xc1,2,0x1c,3,0x80,0x95,0x14, 0xc1,2,0x1c,3,0xc0,0xe,0xc1,2,0x7c,3,0xc0,0xf,0xc1,2,0x1c,3, 0xc0,0x17,0xc1,2,0x7c,3,0x80,0x17,0x4c,0xc1,2,0x14,3,0xc0,0x5f,0xc1, 2,0x14,3,0xc0,8,0xc1,2,0x14,3,0x80,0xc0,2,0xc1,2,0x14,3, 0x80,0xf7,0xd,0xc1,2,0x14,3,0xc0,0x83,0xc1,2,0x14,3,0x80,0x8e,1, 0xc1,2,0x14,3,0xc0,0xf2,0xc1,2,0x74,3,0x80,0xe3,0xb6,0xc1,2,0x14, 3,0x80,0xab,3,0xc1,2,0x1c,3,0x80,0xa3,3,0xc1,2,0x1c,3,0xc0, 0x90,0xc1,2,0xa4,6,0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2, 0x30,0xc3,0xc0,6,0xc1,2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0, 0x3f,0xc1,2,0x14,3,0xc0,0x6b,0xc1,2,0x14,3,0xc0,0x26,0xc1,2,0x14, 3,0xc0,0x2e,0xc1,2,0x14,3,0xc0,0x35,0xc1,2,0x14,3,0xc0,0x2c,0xc1, 2,0x14,3,0x80,0x35,1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73, 0xc1,2,0x14,3,0xc0,0x12,0xc1,2,0x14,3,0x80,0x89,2,0xc1,2,0x14, 3,0xc0,0x16,0xc1,2,0x14,3,0xc0,0x2f,0xc1,2,0x14,3,0xc0,0xdb,0xc1, 1,0x80,0xc0,0x19,0xc1,1,0x80,0x80,0x50,2,0xc1,2,0x14,3,0xc0,0x38, 0xc1,1,0x24,0x80,0xbe,0x21,0xc1,2,0x74,3,0x80,0x6f,3,0xc1,2,0x74, 3,0xc0,0x54,0xc1,2,0x74,3,0x80,0xf,0xf5,0x84,0,0x90,0,0x80,0xdf, 0x12,0xc1,2,0x74,3,0x80,0xaa,0xbd,0xc1,2,0x74,3,0x80,0xf7,0x2e,0xc1, 2,0x14,3,0x80,0x1d,6,0xc1,2,0x14,3,0x80,0x82,0x3f,0xc1,2,0x14, 3,0x80,0xa0,1,0xc1,2,0x14,3,0xc0,0xfd,0xc1,2,0x14,3,0xc0,0x88, 0xc1,2,0x6c,3,0xc0,9,0xc1,2,0x6c,3,0xc0,0x6c,0xc1,2,0x6c,3, 0xc0,0xc8,0xc1,2,0x6c,3,0x80,0xfb,3,0xc1,2,0x1c,3,0xc0,0x2c,0xc1, 2,0x1c,3,0x80,0xb7,0x45,0xc1,2,0x14,3,0xc0,0x2d,0xc1,2,0x14,3, 0x80,0xfa,5,0xc1,2,0x14,3,0x80,0x29,1,0xc1,2,0x14,3,0x80,0xe4, 0x17,0xc1,2,0x14,3,0xc0,0x98,0xc1,2,0x14,3,0xc0,0x95,0xc1,2,0x14, 3,0xc0,0x66,0xc1,2,0x14,3,0x80,0xa4,0x4f,-1,0 }; char vmm2226[]={ // 0x80,0xfc,0xf7, 0xc1,4,0x52,0x52,0x4c,0x21,0xc0,0x14,0xc1,1,0x3b,0xc0,0x1b, 0xc1,1,0xda,0xc0,0x27,0xc1,5,0x24,0,0,0,0x2c,0xc0,0xb,0xc1,0xa, 0xe4,0,0,0,0xd8,3,0,0,0xca,1,0xc0,6,0xc1,2,0xca,1, 0xc0,0xf,0xc1,1,0xf0,0xc0,0x2f,0xc1,1,0xf0,0xc0,0xa,0xc1,2,0x2c,1, 0xc0,0x5e,0xc1,2,0x1c,0xb2,0xc0,0xe,0xc1,1,9,0xc0,0x13,0xc1,1,0x17, 0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,0x7b,0xc0,0x17,0xc1,1,0xf,0xc0, 0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17, 0xc1,1,0x17,0xc0,0x17,0xc1,1,0x19,0xc0,0x17,0xc1,1,0x17,0xc0,0x17,0xc1, 1,9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1, 9,0xc0,0x17,0xc1,1,0xb,0xc0,0x17,0xc1,1,9,0xc0,0x17,0xc1,1,0x37, 0xc0,0x17,0xc1,1,0x3b,0xc0,0xed,0xc2,0x24,0x43,0,0,0,0x44,0,0, 0,0x45,0,0,0,0x46,0,0,0,0x47,0,0,0,0x48,0,0, 0,0x49,0,0,0,0x4a,0,0,0,0x4b,0,0,0,0xc0,0x28,0xc3, 0x24,0x43,0,0,0,0x44,0,0,0,0x45,0,0,0,0x46,0,0, 0,0x47,0,0,0,0x48,0,0,0,0x49,0,0,0,0x4a,0,0, 0,0x4b,0,0,0,0xc0,0x36,0xc2,0x24,0,0,0x5a,0,0,0,0x5b, 0,0,0,0x5c,0,0,0,0x5d,0,0,0,0x5e,0,0,0,0x5f, 0,0,0,0x60,0,0,0,0x61,0,0,0,0x62,0,0xc0,0xa9,0xc1, 0xcd,6,0,0,0,0xfe,0,0,0,2,0,0,0,2,0,0, 0,0x3e,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0, 0,2,0,0,0,2,0,0,0,2,0,0,0,0xc1,0xfc,0, 0,0x74,0xfa,0,0,0xd9,0xfb,0,0,0x93,0xfb,0,0,0x75,0xfb,0, 0,0x5a,0xfb,0,0,0x9b,0xf9,0,0,0x9b,0xf9,0,0,0x6f,0xee,0, 0,0x2b,0x16,0,0,0x96,0x10,0,0,0xf8,0x11,0,0,0xb6,0x11,0, 0,0x58,0x10,0,0,0x7a,0x1d,0,0,0xdd,0x1c,0,0,0xcf,0x19,0, 0,0x11,0x31,0,0,0x7f,0x37,0,0,0xee,0x37,0,0,3,0x32,0, 0,0xc,0x33,0,0,0x73,0x3d,0,0,0x73,0x32,0,0,0x1e,0x30,0, 0,0xad,0x30,0,0,0x92,0xf,0,0,0xa8,0xc,0,0,0xf2,0xb,0, 0,0xc3,0x16,0,0,0x3a,0x16,0,0,0x14,0x1a,0,0,0x45,0xc2,0x24, 0xaa,0,0,0xb9,0xab,0,0,0x1c,0xae,0,0,0x35,0xae,0,0,0xda, 0xaf,0,0,0xf5,0xaf,0,0,6,0xb0,0,0,0xf8,0xb1,0,0,0xa9, 0xb2,0,0,0xf9,0x80,0xa0,2,0xc1,2,0x2c,0x3d,0x80,0xe7,3,0xc1,2, 0x2c,0x3d,0x80,0xc1,4,0xc1,2,0x34,0x3d,0x80,0xd1,6,0xc1,2,0x74,0x3d, 0x80,0xb2,4,0xc1,2,0x14,0x3d,0x80,0xe6,0x25,0xc1,2,0x74,0x3d,0xc0,7, 0xc1,2,0x74,3,0x80,0xf4,2,0xc1,2,0x3c,0x3d,0xc0,0x19,0xc1,2,0x34, 0x3d,0xc0,0x2d,0xc1,2,0x1c,0x3d,0xc0,0x14,0xc1,2,0x14,0x3d,0x80,0x3b,1, 0xc1,2,0x3c,0x3d,0xc0,0x55,0xc1,2,0x1c,0x3d,0x80,0xb0,9,0xc1,2,0x34, 0x3d,0x80,0x77,5,0xc1,2,0x34,0x3d,0x80,0x87,1,0xc1,2,0x14,0x3d,0x80, 0x6e,0x15,0xc1,2,0x74,0x3d,0xc0,0x6a,0xc1,2,0x7c,0x3d,0x80,0x39,2,0xc1, 2,0x3c,0x3d,0xc0,0x8f,0xc1,2,0x34,0x3d,0xc0,0x4b,0xc1,6,0x10,0,0, 0,0x90,0xa6,0xc2,2,1,0,0x80,0xa9,2,0xc1,2,0x34,0x3d,0x80,0x35, 0xa,0xc1,2,0x14,0x3d,0x80,0x30,0xc,0xc1,2,0x14,0x3d,0x80,0x3e,0x11,0xc1, 2,0x14,0x3d,0x80,7,5,0xc1,2,0x34,0x3d,0x80,0xf8,2,0xc1,2,0x34, 0x3d,0x80,0x5b,6,0xc1,2,0x6c,0x3d,0xc0,0x67,0xc1,2,0x7c,0x3d,0x80,0xa9, 1,0xc1,2,0x34,0x3d,0x80,0x55,7,0xc1,2,0x34,0x3d,0x80,0xe,1,0xc1, 2,0x74,0x3d,0xc0,0xd5,0xc1,2,0x34,0x3d,0x80,0x8d,4,0xc5,0x4a,0,0x80, 0xe4,5,0xc1,2,0x2c,0x3d,0xc0,0x48,0xc1,2,0x2c,0x3d,0xc0,0x12,0xc1,2, 0x2c,0x3d,0x80,0x2d,0x21,0xc1,2,0x2c,0x3d,0x80,0x39,0x1a,0xc1,2,0x34,0x3d, 0xc0,0x3b,0xc1,2,0x34,0x3d,0x80,0xe4,0x33,0xc1,2,0x74,0x3d,0xc0,0x42,0xc1, 2,0x74,0x3d,0x80,0x4a,0x14,0xc1,2,0x14,0x3d,0xc0,0x53,0xc1,2,0x14,0x3d, 0xc0,0xa5,0xc1,2,0x14,0x3d,0xc0,0x59,0xc1,2,0x14,0x3d,0xc0,0x19,0xc1,2, 0x14,0x3d,0xc0,0x28,0xc1,2,0x14,0x3d,0xc0,0x79,0xc1,2,0x14,0x3d,0xc0,0x13, 0xc1,2,0x14,0x3d,0xc0,0x99,0xc1,2,0x14,0x3d,0x80,0x44,0x99,0xc1,6,0x74, 0x3d,0,0,0x74,3,0x80,0x82,0xb,0xc1,2,0x14,0x3d,0x80,0x6a,1,0xc1, 2,0x34,0x3d,0x80,0x45,2,0xc1,2,0x1c,0x3d,0xc0,0xb,0xc1,2,0x3c,0x3d, 0xc0,0x13,0xc1,2,0x1c,0x3d,0xc0,0xf,0xc1,2,0x3c,0x3d,0x80,0x95,0x14,0xc1, 2,0x3c,0x3d,0xc0,0xe,0xc1,2,0x1c,0x3d,0xc0,0xf,0xc1,2,0x3c,0x3d,0xc0, 0x17,0xc1,2,0x1c,0x3d,0x80,0xa7,0x3c,0xc1,2,0x34,0x3d,0xc0,0x5f,0xc1,2, 0x34,0x3d,0xc0,8,0xc1,2,0x34,0x3d,0x80,0xc0,2,0xc1,2,0x34,0x3d,0x80, 0xf7,0xd,0xc1,2,0x34,0x3d,0xc0,0x83,0xc1,2,0x34,0x3d,0x80,0x8e,1,0xc1, 2,0x34,0x3d,0xc0,0xf2,0xc1,2,0x14,0x3d,0x80,0xa3,0xb6,0xc1,2,0x74,0x3d, 0x80,0xab,3,0xc1,2,0x7c,0x3d,0x80,0xa3,3,0xc1,2,0x3c,0x3d,0xc0,0x90, 0xc1,2,0xa4,6,0xc0,5,0xc1,2,0xa4,6,0x80,0x23,1,0xc1,2,0x30, 0xc3,0xc0,6,0xc1,2,0x30,0xc3,0xc0,0x27,0xc1,3,0x90,0xa6,1,0xc0,0x3f, 0xc1,2,0x34,0x3d,0xc0,0x6b,0xc1,2,0x34,0x3d,0xc0,0x26,0xc1,2,0x34,0x3d, 0xc0,0x2e,0xc1,2,0x34,0x3d,0xc0,0x35,0xc1,2,0x34,0x3d,0xc0,0x2c,0xc1,2, 0x34,0x3d,0x80,0x35,1,0xc1,1,0xc,0xc0,0x3e,0xc1,1,0xc0,0xc0,0x73,0xc1, 2,0x34,0x3d,0xc0,0x12,0xc1,2,0x34,0x3d,0x80,0x89,2,0xc1,2,0x34,0x3d, 0xc0,0x16,0xc1,2,0x34,0x3d,0xc0,0x2f,0xc1,2,0x34,0x3d,0xc0,0xdb,0xc1,1, 0x80,0xc0,0x19,0xc1,1,0x80,0x80,0x50,2,0xc1,2,0x34,0x3d,0xc0,0x38,0xc1, 1,0x24,0x80,0xbe,0x21,0xc1,2,0x14,0x3d,0x80,0x6f,3,0xc1,2,0x14,0x3d, 0xc0,0x54,0xc1,2,0x14,0x3d,0x80,0x4f,0xf5,0x84,0,0x90,0,0x80,0xdf,0x12, 0xc1,2,0x14,0x3d,0x80,0xaa,0xbd,0xc1,2,0x14,0x3d,0x80,0x17,0x2f,0xc1,2, 0x34,0x3d,0x80,0x1d,6,0xc1,2,0x34,0x3d,0x80,0x62,0x3f,0xc1,2,0x34,0x3d, 0x80,0xa0,1,0xc1,2,0x34,0x3d,0xc0,0xfd,0xc1,2,0x34,0x3d,0xc0,0x88,0xc1, 2,0x6c,0x3d,0xc0,9,0xc1,2,0x6c,0x3d,0xc0,0x6c,0xc1,2,0x6c,0x3d,0xc0, 0xc8,0xc1,2,0x6c,0x3d,0x80,0xfb,3,0xc1,2,0x7c,0x3d,0xc0,0x2c,0xc1,2, 0x7c,0x3d,0x80,0xb7,0x45,0xc1,2,0x34,0x3d,0xc0,0x2d,0xc1,2,0x34,0x3d,0x80, 0xfa,5,0xc1,2,0x34,0x3d,0x80,0x29,1,0xc1,2,0x34,0x3d,0x80,0xe4,0x17, 0xc1,2,0x34,0x3d,0xc0,0x98,0xc1,2,0x34,0x3d,0xc0,0x95,0xc1,2,0x34,0x3d, 0xc0,0x66,0xc1,2,0x74,0x3d,0x80,0xa4,0x4f,-1,0 }; char vmm3000[]={ //0x80,0xfc,0xcf, //0xc1,4,0x52,0x52,0x4c,0x22,0xc0,0x1c,0xc1,2,0x2e,3,0x80,0xde,3, 0xc1,4,0x52,0x52,0x4c,0x22,0xc0,0x14,0xc1,1,0x2c,0xc0,0x17,0xc1, 5,0x12,2,0,0,0x9a,0xc0,0x27,0xc1,5,0xb0,0,0,0,0xb0,0xc0, 0xb,0xc1,0x23,0x90,0,0,0,0xe0,3,0,0,0x2e,3,0,0,0, 0,0,0,0x2e,3,0,0,0,0,0,0,0,1,0,0,0, 0,0,0,0,0xc0,0xf,0xc0,0x2e,0xc1,2,0xc0,0xf,0x80,0xe9,1,0xc1, 3,0x12,0x42,2,0xc0,0xd,0xc1,1,0x24,0x80,0x6b,1,0xc2,0x70,0,0, 0x5a,0,0,0,0x5b,0,0,0,0x5c,0,0,0,0x5d,0,0,0, 0x5e,0,0,0,0x5f,0,0,0,0x60,0,0,0,0x61,0,0,0, 0x62,0,0,0,0x63,0,0,0,0x64,0,0,0,0x65,0,0,0, 0x66,0,0,0,0x67,0,0,0,0x68,0,0,0,0x69,0,0,0, 0x6a,0,0,0,0x6b,0,0,0,0x6c,0,0,0,0x6d,0,0,0, 0x6e,0,0,0,0x6f,0,0,0,0x70,0,0,0,0x71,0,0,0, 0x72,0,0,0,0x73,0,0,0,0x74,0,0,0,0x75,0,0x80,0x69, 1,0xc1,0xd,6,0,0,0,0xa,0,0,0,0x3e,0,0,0,0x1a, 0xc2,0x70,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0,0,0xd1,0xaf,0, 0,0xd1,0x80,0x3b,0xa1,0xc1,6,0x10,0,0,0,0x5c,0xcd,0xc2,2,1, 0,0xc0,0x2f,0xc1,6,0x10,0,0,0,0x5c,2,0xc2,2,2,0,0xc0, 0x4b,0xc1,6,0x10,0,0,0,0xbc,3,0xc2,2,2,0,0x80,0xb3,0xe, 0xc1,1,0xff,0xc0,8,0xc2,0x1a,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0xff,0,0,0,0,0,0,0, 0,0x40,0xba,0x55,5,0xc1,2,0x24,0x19,0xc0,0xb2,0xc1,2,0xd0,0xe3,0x80, 0x77,2,0xc1,1,0xa,0xc0,0x29,0xc1,1,0xa0,0x80,0xc3,0x34,0x44,0,0xc2, 1,0,0xc4,0xe,0,-1,0 }; char vmm3002[]={ //0x80,4,0xcc, 0xc1,4,0x52,0x52,0x4c,0x22,0xc0,0x14,0xc1,1,0x2c,0xc0,0x17, 0xc1,5,0x12,2,0,0,0xba,0xc0,0x27,0xc1,5,0xb0,0,0,0,0xb0, 0xc0,0xb,0xc1,0x12,0x90,0,0,0,0x20,3,0,0,0xea,3,0,0, 0,0,0,0,0xea,3,0xc0,0xe,0xc1,3,0xe,0xc2,0xf,0xc0,0x2d,0xc1, 3,0x36,0xde,0xf,0x80,0xe9,1,0xc1,3,0x12,0x42,2,0xc0,0xd,0xc1,1, 0x24,0x80,0x6f,1,0xc2,0x70,0,0,0x5b,0,0,0,0x5c,0,0,0, 0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0,0,0x60,0,0,0, 0x61,0,0,0,0x62,0,0,0,0x63,0,0,0,0x64,0,0,0, 0x65,0,0,0,0x66,0,0,0,0x67,0,0,0,0x68,0,0,0, 0x69,0,0,0,0x6a,0,0,0,0x6b,0,0,0,0x6c,0,0,0, 0x6d,0,0,0,0x6e,0,0,0,0x6f,0,0,0,0x70,0,0,0, 0x71,0,0,0,0x72,0,0,0,0x73,0,0,0,0x74,0,0,0, 0x75,0,0,0,0x76,0,0x80,0x6d,1,0xc1,0xd,0x3a,0,0,0,0x1a, 0,0,0,6,0,0,0,0xa,0xc2,0x70,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0x80,0x66,0xa1,0xc1,6,0x10, 0,0,0,0x5c,0xcd,0xc2,2,1,0,0xc0,0x2f,0xc1,6,0x10,0,0, 0,0x5c,2,0xc2,2,2,0,0xc0,0x4b,0xc1,6,0x10,0,0,0,0xbc, 3,0xc2,2,2,0,0x80,0x92,0x1b,0xc1,1,0xff,0xc0,8,0xc1,0x35,0x8d, 0x49,0,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44, 0x45,0x46,0,0,0,0,0,0xcc,0xcc,0xcc,0x30,0x31,0x32,0x33,0x34,0x35, 0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46,0,0,0,0,0x78,0, 0,0,0,2,0xc0,0x2a,0xc1,8,0xff,2,0,0,0,0,0xff,2, 0xc0,9,0xc1,2,0x8e,0x28,0xc3,0xde,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0xff,0,0,0,0,0,0,0,0,0x8d,0x49,0,0x30, 0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46,0, 0,0,0,0,0xcc,0xcc,0xcc,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38, 0x39,0x41,0x42,0x43,0x44,0x45,0x46,0,0,0,0,0x78,0,0,0,0, 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0xff,2,0,0,0, 0,0xff,2,0,0,0,0xc0,0x16,0xc1,1,0x60,0xc0,0x17,0xc1,1,0x60, 0xc0,0x4f,0xc1,1,0x60,0xc0,0x7f,0xc3,8,0xee,0x28,0,0,0,0,0, 0,0x40,0x4a,0x64,5,0xc1,2,0x24,0x19,0xc0,0xb2,0xc1,2,0xd0,0xe3,0x80, 0x77,2,0xc1,1,0xa,0xc0,0x29,0xc1,1,0xa0,0x80,0xc3,0x34,0x44,0,0xc2, 1,0,0xc4,0xe,0,0x80,0x1a,2,-1,0 }; char vmm3003[]={ //0x80,4,0xcc, 0xc1,4,0x52,0x52,0x4c,0x22,0xc0,0x14,0xc1,1,0x2c,0xc0,0x17, 0xc1,5,0x12,2,0,0,0xba,0xc0,0x27,0xc1,5,0xb0,0,0,0,0xb0, 0xc0,0xb,0xc1,0x12,0x90,0,0,0,0x20,3,0,0,0xea,3,0,0, 0,0,0,0,0xea,3,0xc0,0xe,0xc1,3,0xe,0xc2,0xf,0xc0,0x2d,0xc1, 3,0x36,0xde,0xf,0x80,0xe9,1,0xc1,3,0x12,0x42,2,0xc0,0xd,0xc1,1, 0x24,0x80,0x6f,1,0xc2,0x70,0,0,0x5b,0,0,0,0x5c,0,0,0, 0x5d,0,0,0,0x5e,0,0,0,0x5f,0,0,0,0x60,0,0,0, 0x61,0,0,0,0x62,0,0,0,0x63,0,0,0,0x64,0,0,0, 0x65,0,0,0,0x66,0,0,0,0x67,0,0,0,0x68,0,0,0, 0x69,0,0,0,0x6a,0,0,0,0x6b,0,0,0,0x6c,0,0,0, 0x6d,0,0,0,0x6e,0,0,0,0x6f,0,0,0,0x70,0,0,0, 0x71,0,0,0,0x72,0,0,0,0x73,0,0,0,0x74,0,0,0, 0x75,0,0,0,0x76,0,0x80,0x6d,1,0xc1,0xd,0x3a,0,0,0,0x1a, 0,0,0,6,0,0,0,0xa,0xc2,0x70,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0xaf,0, 0,0xfc,0xaf,0,0,0xfc,0xaf,0,0,0xfc,0x80,0x66,0xa1,0xc1,6,0x10, 0,0,0,0x5c,0xcd,0xc2,2,1,0,0xc0,0x2f,0xc1,6,0x10,0,0, 0,0x5c,2,0xc2,2,2,0,0xc0,0x4b,0xc1,6,0x10,0,0,0,0xbc, 3,0xc2,2,2,0,0x80,0x92,0x1b,0xc1,1,0xff,0xc0,8,0xc2,0x35,0x8d, 0x49,0,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44, 0x45,0x46,0,0,0,0,0,0xcc,0xcc,0xcc,0x30,0x31,0x32,0x33,0x34,0x35, 0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46,0,0,0,0,0x78,0, 0,0,0,2,0xc0,0x29,0xc1,9,0x3f,0xff,2,0,0x82,0xad,0xb0,0xff, 0x20,0xc3,0x3c,0,0,0,0x26,0xbb,0xf6,0xbf,0xc8,0xb5,0xea,0x83,0x22,0, 0,0,0xe8,0x1d,0,0x78,0x3f,0,0,0,0,0,0,0,0xc,0, 0,0,0x26,0xbb,0xf6,0xbf,0xc8,0xb5,0xea,0x83,0xc,0,0,0,0xe8,0x1d, 0,0x78,0,0xb6,3,0x78,0xd4,0xdf,0x6c,0,0x1b,0xcd,0,0x78,9,0xc0, 8,0xc1,3,0xad,0x3e,0x28,0xc3,0xd7,0x26,0xbb,0xf6,0xbf,0xc8,0xb5,0xea,0x83, 0,0xad,0xb0,0,0xe8,0x1d,0,0x78,0,0xb6,3,0x78,4,0xe0,0x6c,0, 0x63,0xcc,0,0x78,9,0,0,0,0x4a,0xcc,0,0x78,0,0,0,0, 0x61,0x29,1,0x78,0x60,0x45,0xb0,0,0xc,0,0,0,0xf,0x10,0,0x78, 0xc,0,0,0,0xc,0,0xaf,0,0x2f,0x27,1,0x78,0xe0,0xac,0xb0,0, 0xb4,0xfd,0x6c,0,0x6a,0xf5,0,0x78,0x50,0x32,3,0x78,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0xff,0,0,0, 0,0,0,0,0,0x8d,0x49,0,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37, 0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46,0,0,0,0,0,0xcc,0xcc,0xcc, 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46, 0,0,0,0,0x78,0,0,0,0,2,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0xff,2,0,0,0,0,0xff,2,0,0,0,0xc0, 0x16,0xc1,1,0x60,0xc0,0x17,0xc1,1,0x60,0xc0,0x4f,0xc1,1,0x60,0xc0,0x7f, 0xc3,8,0xee,0x28,0,0,0,0,0,0,0x40,0x4a,0x64,5,0xc1,2, 0x24,0x19,0xc0,0xb2,0xc1,2,0xd0,0xe3,0x80,0x77,2,0xc1,1,0xa,0xc0,0x29, 0xc1,1,0xa0,0x80,0xc3,0x34,0x44,0,0xc2,1,0,0xc4,0xe,0,0x80,0x1a, 2,-1,0 }; char vc1998[]={ 0xc0,0x7c,0xc1,4,0x52,0x52,0x4c,0x20,0x80,0xa5,0x5c,0xc1,2,0x20,1,0xc0, 5,0xc1,2,0x20,1,0x80,0xd0,0x31,-1,0 }; // 0xD, 0x13 maxfilecache^0x320 char vc2183[]={ 0xc0,0x7c,0xc1,4,0x52,0x52,0x4c,0x20,0x80,0xa5,0x5c,0xc1,2,0x20,1,0xc0, 5,0xc1,2,0x20,1,0x80,0x11,0x34,-1,0 }; // 0xD, 0x13 maxfilecache^0x320 char vc2222[]={ 0xc0,0x7c,0xc1,4,0x52,0x52,0x4c,0x21,0x80,0xa5,0x5c,0xc1,2,0x20,1,0xc0, 5,0xc1,2,0x20,1,0x80,0xd0,0x31,-1,0 }; // 0xD, 0x13 maxfilecache^0x320 char vc3000[]={ 0xc0,0x7c,0xc1,4,0x52,0x52,0x4c,0x22,0x80,0x36,0x7d,0xc1,2,0x20,1,0xc0, 5,0xc1,2,0x20,1,0x80,0xf7,2,-1,0 }; // 0xD, 0x13 maxfilecache^0x320 char histd[]={0x80,0x92,0x69,0xc1,1,0x60,0x80,0x14,0x18,-1,0}; char hialt[]={0x80,0x92,0x69,0xc1,1,0x60,0x80,0x34,0x16,-1,0}; long vcksm[]={0xd45cca26,0xc7344b5, 0xe07b4b6d,0x93547a1f,0x55bcfe4f,0xc505fd37, 0x207254df,0x937f1942,0xcf5602f2, #ifdef SELF 0xd45cc626,0xe07b476d,0x207250df, // VMM32.VXD #endif 0}; long ccksm[]={0x8043d766,0x6e62a261,0x27b08324,0x53e5ed19,0}; long hcksm[]={0x57d1875c,0x71e78d3f,0}; #ifdef SELF long ring3_98[]={0x40c57,0x4192a,0x41b8e,0x41bc5,0x41c07,0x41c36,0x41c88,0x424fd,0}; long ring3_se[]={0x40c57,0x4192a,0x41b8c,0x41bc3,0x41c05,0x41c34,0x41c86,0x424fd,0}; long ring3_me[]={0x6d577,0x6e0b7,0x6e25c,0x6e9e3,0}; long ring3off[]={0,-0xc00,0,-0xc00,0x640,-0xc00,0,0x1600,0x1600,0,0,0}; long *r3=0; #endif char v3name[256]; char vname[256],vback[256]; char cname[256],cback[256]; char hname[256],hback[256]; char *b,*diff; int f,f2,n,np; long base,table[1024],lseek(); int rl(f,b) int f; char *b; { int i,j; i=0; lp: j=_read(f,b+i,1); if (j<1) return(0); if (b[i]<32) { if (i==0) goto lp; b[i]=0;return(i); } if (i<255) i++; goto lp; } uncomp(src,dest) int src,dest; { int i,j,k,l[2]; *(long *)(subr+2792)=0xcbf53de8; // 0xe8,0x3d,0xf5,0xcb call $-0xaco retf i=0;j=(int)(&subr);k=(int)(&l); while(rel[i]) {(*(int *)(subr+rel[i]))+=j-reloff;i++;} rel[0]=0;j+=0xae8; _asm { db 0x60 push ds push es push ds pop es cld mov bx,[k] mov ax,[j] mov [bx],ax mov [bx+2],ds mov si,[src] mov di,[dest] mov ax,0x2000 db 0xff,0x1f pop es pop ds mov [i],ax db 0x61 }; return(i); } int readd(b1,l) char *b1; int l; { memcpy(b1,diff,l);diff+=l;return(l); } int readx(a,bb,l) long a; char *bb; int l; { long y,z; int i,j; a-=base; while(l) { y=a>>13; if (y-np) { lseek(f,table[y],0); z=table[y+1]-table[y];i=z; if (z>0x2000) return(-1); if (z<0x2000) { if (_read(f,b+0x6000,i)>6)&3;j=3-j; readd(z+2,j); z[0]&=0x3f; i= *(unsigned long *)(z+1); switch(z[0]) { case 0x3f: if (_read(f1,b,1)>0) goto badd; return(0); case 0: while(i>0) { j=i; if (j>8192) j=8192; if (_read(f1,b,j)0) { k=i; if (k>8192) k=8192; if (_read(f1,b,k)0) { j=i; if (j>8192) j=8192; readd(b2,j); if (_write(f3,b2,j)0) { k=i; if (k>8192) k=8192; if (_read(f1,b,k)0) { k=i; if (k>8192) k=8192; for (j=1;j0) { k=i; if (k>8192) k=8192; if (_read(f1,b,k)(l+13)) {printf("Invalid %s Name\n",e);return(20);} if (stricmp(n,b)==0) {printf("%s Name Conflicts with Backup Name\n",e);return(20);} (*r)=4; i=_open(n,0); if (i>0) {_close(i);(*r)|=1;} i=_open(b,0); if (i>0) {_close(i);(*r)|=2;} } return(0); } main(c,v) int c; char **v; { int exist,i,j,k,max,t,h,un; long x,y,z,ckv,ckc,ckh,header[256]; char *a; #ifdef SELF if (c>1) if (v[1][0]=='#') {r3++;c--;v++;} if ((c>1) && (c-5)) {printf("PATCHMEM [#Ring3] [+MAXCACHE] [VMM32File VMMFile VCACHEFile HimemFile]\n");return(20);} printf("\nWindows 98/SE/ME RAM Limitation Patch Version 3.0\nCopyright (C) 2007 by Rudolph R. Loew. All Rights Reserved.\n\n"); #endif #ifdef PRO if ((c>1) && (c-5)) {printf("PATCHMEM [+MAXCACHE] [VMM32File VMMFile VCACHEFile HimemFile]\n");return(20);} printf("\nWindows 98/SE/ME RAM Limitation Patch Version 3.0\nCopyright (C) 2007 by Rudolph R. Loew. All Rights Reserved.\n\n"); #endif #ifdef DEMO if ((c>1) && (c-5)) {printf("PATCHM [+MAXCACHE] [VMM32File VMMFile VCACHEFile HimemFile]\n");return(20);} printf("\nWindows 98/SE/ME RAM Limitation Patch (DEMO) Version 3.0\nCopyright (C) 2007 by Rudolph R. Loew. All Rights Reserved.\n\n"); #endif un=1;max=512;f2= -1; if (c>1) if (v[1][0]=='+') {max=getnum(v[1]+1);c--;v++;} *(int *)(vc1998+0xd)= *(int *)(vc1998+0x13)=max^0x320; *(int *)(vc2183+0xd)= *(int *)(vc2183+0x13)=max^0x320; *(int *)(vc2222+0xd)= *(int *)(vc2222+0x13)=max^0x320; *(int *)(vc3000+0xd)= *(int *)(vc3000+0x13)=max^0x320; v3name[0]=vname[0]=cname[0]=hname[0]=0; b=(char *)malloc(32767); if (b==0) {printf("Not Enough Memory\n");return(20);} f=_open("C:\\MSDOS.SYS",0); if (f<0) goto nodir; while((i=rl(f,b))>0) if (i>9) { if (b[6]=='=') b[6]=0; if (stricmp(b,"WINDIR")==0) if (v3name[0]==0) strcpy(v3name,(char *)b+7); if (i>13) { if (b[10]=='=') b[10]=0; if (hname[0]==0) if (stricmp(b,"WINBOOTDIR")==0) strcpy(hname,(char *)b+11); } } _close(f); nodir: if (v3name[0]) { strcpy(vname,v3name);strcat(vname,"\\SYSTEM\\VMM32\\VMM.VXD"); strcpy(cname,v3name);strcat(cname,"\\SYSTEM\\VMM32\\VCACHE.VXD"); strcat(v3name,"\\SYSTEM\\VMM32.VXD"); } if (hname[0]) strcat(hname,"\\HIMEM.SYS"); if (c>1) { if (v[1][0]=='-') v3name[0]=0; else if (v[1][0]-'*') strcpy(v3name,v[1]); if (v[2][0]=='-') vname[0]=0; else if (v[2][0]-'*') strcpy(vname,v[2]); if (v[3][0]=='-') cname[0]=0; else if (v[3][0]-'*') strcpy(cname,v[3]); if (v[4][0]=='-') hname[0]=0; else if (v[4][0]-'*') strcpy(hname,v[4]); } else { if (v3name[0]==0) {printf("Cannot Locate Windows Directory\n");return(20);} if (hname[0]==0) {printf("Cannot Locate Windows Boot Directory\n");return(20);} } exist=0; if (bakname(v3name,b,"VMM32",&i)) return(20); exist|=i; if (bakname(vname,vback,"VMM",&i)) return(20); exist|=i<<4; if (bakname(cname,cback,"VCACHE",&i)) return(20); exist|=i<<8; if (bakname(hname,hback,"HIMEM",&i)) return(20); exist|=i<<12; if ((exist&0x4440)==0) {printf("No Files Specified for Update\n");return(20);} if (exist&2) {printf("%s Found: Cannot Patch modified VMM32.VXD\n",b);return(20);} if ((exist&0x30)==0x20) { printf("VMM Backup Found without VMM File - Rename (Y/N) ? (N) ");read(0,&i,4); if ((i&0xdf)-'Y') return(20); if (rename(vback,vname)) {printf("Unable To Rename Backup\n");return(20);} exist-=0x10; } if ((exist&0x300)==0x200) { printf("VCACHE Backup Found without VCACHE File - Rename (Y/N) ? (N) ");read(0,&i,4); if ((i&0xdf)-'Y') return(20); if (rename(cback,cname)) {printf("Unable To Rename Backup\n");return(20);} exist-=0x100; } if ((exist&0x3000)==0x2000) { printf("HIMEM Backup Found without HIMEM File - Rename (Y/N) ? (N) ");read(0,&i,4); if ((i&0xdf)-'Y') return(20); if (rename(hback,hname)) {printf("Unable To Rename Backup\n");return(20);} exist-=0x1000; } if ((exist&1)==0) { if (c<5) {printf("%s Missing\n",v3name);return(20);} if ((exist&0x50)==0x40) {printf("%s File Not Found - VMM32File Required\n",vname);return(20);} if ((exist&0x500)==0x400) {printf("%s File Not Found - VMM32File Required\n",cname);return(20);} } if ((exist&0x5000)==0x4000) {printf("%s File Not Found\n",hname);return(20);} t=0;f= -1; if (exist&0x10) f=_open(vname,0); else if (exist&1) f=_open(v3name,0); if (f>=0) { if (_read(f,b,64)<64) {printf("Error Reading VMM Header\n");return(20);} x= *(long *)(b+0x3c); lseek(f,x-4,0); if (_read(f,b,4)<4) {printf("Error Reading Patch Flag\n");return(20);} x= *(long *)b; if (x) { if ((x&0xffffff)-0x4c5252) {printf("Unknown Data in Patch Flag Area\n");return(20);} if ((exist&0x10)==0) {printf("VMM32 File Patched - Uninstall Patch using Original Patcher then Rerun Patch\n");return(20);} t=(x>>24)&255; } _close(f); } if ((exist&0x50)==0x50) { f=_open(vname,0); if (f<0) {printf("Cannot Open VMM File\n");return(20);} if (_read(f,b,64)<64) {printf("Error Reading VMM Header\n");return(20);} z= *(long *)(b+0x3c); lseek(f,z-4,0); if (_read(f,b,4)<4) {printf("Error Reading VMM Patch Flag\n");return(20);} z= *(long *)b; if (z) { if ((z&0xffffff)-0x4c5252) {printf("VMM File Overwritten by Unknown File\n");return(20);} if ((exist&0x20)==0) { printf("\nWARNING: Patched VMM File Found Without Backup - Skipping\n"); exist&=0xff0f; } } else { if (exist&0x20) { printf("VMM File Updated by Other Program - Removing Backup\n"); if (unlink(vback)) {printf("Cannot Remove VMM Backup\n");return(20);} exist&=0xffdf; } } _close(f); } if ((exist&0x500)==0x500) { f=_open(cname,0); if (f<0) {printf("Cannot Open VCACHE File\n");return(20);} if (_read(f,b,64)<64) {printf("Error Reading VCACHE Header\n");return(20);} z= *(long *)(b+0x3c); lseek(f,z-4,0); if (_read(f,b,4)<4) {printf("Error Reading VCACHE Patch Flag\n");return(20);} z= *(long *)b; if (z) { if ((z&0xffffff)-0x4c5252) {printf("VCACHE File Overwritten by Unknown File\n");return(20);} if ((exist&0x200)==0) { printf("\nWARNING: Patched VCACHE File Found Without Backup - Skipping\n"); exist&=0xf0ff; } } else { if (exist&0x200) { printf("VCACHE File Updated by Other Program - Removing Backup\n"); if (unlink(cback)) {printf("Cannot Remove VCACHE Backup\n");return(20);} exist&=0xfdff; } } _close(f); } if ((exist&0x5000)==0x5000) { f=_open(hname,0); if (f<0) {printf("Cannot Open HIMEM File\n");return(20);} lseek(f,0x6992L,0); if (_read(f,b,1)<1) {printf("Error Reading HIMEM Patch\n");return(20);} if ((b[0]-0x30) && (b[0]-0x50)) {printf("HIMEM File Overwritten by Unknown File\n");return(20);} if (b[0]==0x50) { if ((exist&0x2000)==0) { printf("\nWARNING: Patched HIMEM File Found Without Backup - Skipping\n"); exist&=0xfff; } } else { if (exist&0x2000) { printf("HIMEM File Updated by Other Program - Removing Backup\n"); if (unlink(hback)) {printf("Cannot Remove HIMEM Backup\n");return(20);} exist&=0xdfff; } } _close(f); } i=j=0; if ((exist&0x60)==0x60) i++; if ((exist&0x60)==0x40) j++; if ((exist&0x600)==0x600) i++; if ((exist&0x600)==0x400) j++; if ((exist&0x6000)==0x6000) i++; if ((exist&0x6000)==0x4000) j++; if (i && j) { printf("Incomplete Installation Detected - Continue/UnInstall/Quit (C/U/Q) ? (Q) "); read(0,&i,4); if ((i&0xdf)=='C') goto inst; if ((i&0xdf)=='U') goto uninst; return(20); } if (j) goto inst; if (i==0) {printf("\nNo Changes Made\n\n");return(1);} printf("\nPatch Already Installed - Uninstall (Y/N) ? (N) ");read(0,&i,4); if ((i&0xdf)-'Y') return(1); uninst: _close(f);_close(f2); if (exist&0x80) { if (unlink(vname)) printf("Cannot Remove VMM File\n"); else if (rename(vback,vname)) printf("Cannot Rename Backup VMM File\n"); exist&=0xff0f; } if (exist&0x800) { if (unlink(cname)) printf("Cannot Remove VCACHE File\n"); else if (rename(cback,cname)) printf("Cannot Rename Backup VCACHE File\n"); exist&=0xf0ff; } if (exist&0x8000) { if (unlink(hname)) printf("Cannot Remove HIMEM File\n"); else if (rename(hback,hname)) printf("Cannot Rename Backup HIMEM File\n"); exist&=0xfff; } if ((exist&0x70)==0x70) { z=0; f=_open(vname,0); if (f<0) {printf("Cannot Open VMM File\n");return(20);} if (_read(f,b,64)<64) {printf("Error Reading VMM Header\n");goto unvm;} z= *(long *)(b+0x3c); lseek(f,z-4,0); if (_read(f,b,4)<4) {printf("Error Reading VMM Patch Flag\n");goto unvm;} z= *(long *)b; unvm: _close(f); f=_open(vback,0); if (f<0) {printf("Error Opening %s\n",vback);return(20);} if (unlink(vname)) {printf("Cannot Remove Patched VMM32 File\n");return(20);} _close(f); if (z&0x10000000) { if (unlink(vback)) {printf("Cannot Remove VMM32 Backup\n");return(20);} } else { if (rename(vback,vname)) {printf("Cannot Rename VMM32 Backup\n");return(20);} } } if ((exist&0x700)==0x700) { z=0; f=_open(cname,0); if (f<0) {printf("Cannot Open VCACHE File\n");return(20);} if (_read(f,b,64)<64) {printf("Error Reading VCACHE Header\n");goto unvc;} z= *(long *)(b+0x3c); lseek(f,z-4,0); if (_read(f,b,4)<4) {printf("Error Reading VCACHE Patch Flag\n");goto unvc;} z= *(long *)b; unvc: _close(f); f=_open(cback,0); if (f<0) {printf("Error Opening %s\n",cback);return(20);} if (unlink(cname)) {printf("Cannot Remove Patched VCACHE File\n");return(20);} _close(f); if (z&0x10000000) { if (unlink(cback)) {printf("Cannot Remove VCACHE Backup\n");return(20);} } else { if (rename(cback,cname)) {printf("Cannot Rename VCACHE Backup\n");return(20);} } } if ((exist&0x7000)==0x7000) { f=_open(hback,0); if (f<0) {printf("Error Opening %s\n",hback);return(20);} if (unlink(hname)) {printf("Cannot Remove Patched HIMEM File\n");return(20);} _close(f); if (rename(hback,hname)) {printf("Cannot Rename HIMEM Backup\n");return(20);} } if (un) printf("\nUninstall Completed\n\n"); return(0); inst: un=0; if (((exist&0x70)==0x40) || ((exist&0x700)==0x400)) { f=_open(v3name,0); if (f<0) {printf("Cannot Open %s\n",v3name);return(20);} i=_read(f,b,0x6000); if (i<0x4c00) goto bad; if ((*(long *)(b+0x40ca))==0x2e061e60) { rel=rel98;reloff=0x3ea2;memcpy(subr,b+0x40a2,2792);goto ok; } if ((*(long *)(b+0x3636))==0x2e061e60) { rel=relme;reloff=0x340e;memcpy(subr,b+0x360e,2792);goto ok; } printf("Unrecognized Decompressor in VMM32 File\n");return(20); ok: base= *(long *)(b+0x3c);x=lseek(f,0L,2);lseek(f,base,0); if (_read(f,b,16)<16) goto bad; i= *(int *)b; if (i-0x3457) {printf("Not Compressed VMM32 File\n");return(20);} i= *(int *)(b+4); if (i-0x2000) goto bad; n= *(int *)(b+6);np= -1; if (n>1022) goto bad; table[n]=x;table[n+1]=0;i=n<<2; if (_read(f,table,i)0x4000) i=0x4000; if (_read(f,b,i)0x4000) i=0x4000; if (readx(x,b,i)<1) goto badvmr; vmp: if (_write(f2,b,i)0xb80) goto badvcr; z= *(long *)(b+0x80) - x; if (z<0xc00) goto badvcr; if (z>0x4000) goto badvcr; (*(long *)(b+128))=0xc00; if (_write(f2,b,132)<132) goto badvcw; if (readx(x+132,b,0xafc)<1) goto badvcr; if (_write(f2,b,0xafc)<0xafc) goto badvcw; x+=z; while(y) { i=y; if (y>0x4000) i=0x4000; if (readx(x,b,i)<1) goto badvcr; if (_write(f2,b,i)0) { i=i& -4; for (j=0;j0) { i=i& -4; for (j=0;j0) { i=i& -4; for (j=0;j=9) x+=1024; #endif if (_write(f2,b,64)<64) goto undovmw; y=x-192; while(y) { i=y; if (y>0x4000) i=0x4000; if (_read(f,b,i)0x404) { lseek(f2,z-0x404,0); if (_read(f2,b+4,4)<4) {a="Read Error";goto skip;} b[7]|=0x40; if ((*(int *)b) == (*(int *)(b+4))) { lseek(f2,z-0x404,0); if (_write(f2,b+4,4)<4) {a="Read Error";goto skip;} } } if (ckv<6) { lseek(f2,z+0x124,0); if (_read(f2,b,4)<4) {a="Read Error";goto skip;} (*(int *)b)+=0x10; lseek(f2,z+0x124,0); if (_write(f2,b,4)<4) {a="Write Error";goto skip;} } lseek(f2,x,0);z=0x1bba5e8; if (ckv>=6) z=0x20475e8; if (_write(f2,&z,4)<4) {a="Write Error";goto skip;} lseek(f2,y,0); if (_write(f2,dem,11)<11) {a="Write Error";goto skip;} skip:; } #endif _close(f);_close(f2); if (a) {printf("VMM Patch Error: %s\n",a);goto uninst;} exist|=0x20;exist&=0xff7f; #ifdef DEMO printf("VMM Version %d Patched (DEMO)\n",i); #else printf("VMM Version %d Patched\n",i); #endif } if ((exist&0x700)==0x500) { if (rename(cname,cback)) {printf("Cannot Rename VCACHE File\n");goto uninst;} exist|=0x800; f=_open(cback,0); if (f<0) {printf("Cannot Open Old VCACHE File\n");goto uninst;} f2=_creat(cname,0); if (f2<0) {printf("Cannot Create New VCACHE File\n");goto uninst;} switch(ckc) { case 0: a=dmake(f,vc1998,f2);i=1998;break; case 1: a=dmake(f,vc2183,f2);i=2183;break; case 2: a=dmake(f,vc2222,f2);i=2222;break; case 3: a=dmake(f,vc3000,f2);i=3000;break; }; _close(f);_close(f2); if (a) {printf("VCACHE Patch Error: %s\n");goto uninst;} exist|=0x200;printf("VCACHE Version %d Patched\n",i); } exist&=0xf7ff; if ((exist&0x7000)==0x5000) { if (rename(hname,hback)) {printf("Cannot Rename HIMEM File\n");goto uninst;} exist|=0x8000; f=_open(hback,0); if (f<0) {printf("Cannot Open Old HIMEM File\n");goto uninst;} f2=_creat(hname,0); if (f2<0) {printf("Cannot Create New HIMEM File\n");goto uninst;} switch(ckh) { case 0: a=dmake(f,histd,f2);i=7;break; case 1: a=dmake(f,hialt,f2);i=8;break; }; _close(f);_close(f2); if (a) {printf("HIMEM Patch Error: %s\n");goto uninst;} exist|=0x2000;printf("HIMEM DOS-%d Version Patched\n",i); } exist&=0x7fff; #ifdef DEMO printf("\nDEMO Patch Installed Successfully - Use in SAFE MODE Only\n\n"); #else printf("\nPatch Installed Successfully\n\n"); #endif return(0); bad: printf("Invalid VMM32 File\n");return(20); badvmr: printf("Invalid VMM32 File\n");_close(f);_close(f2); if (unlink(vname)) printf("Unable to remove bad VMM File\n"); return(20); badvmw: printf("Error Writing VMM File\n");_close(f);_close(f2); if (unlink(vname)) printf("Unable to remove bad VMM File\n"); return(20); badvcr: printf("Invalid VMM32 File\n");_close(f);_close(f2); if (unlink(cname)) printf("Unable to remove bad VCACHE File\n"); return(20); badvcw: printf("Error Writing VCACHE File\n");_close(f);_close(f2); if (unlink(cname)) printf("Unable to remove bad VCACHE File\n"); return(20); undovmr: printf("Invalid VMM32 File\n");goto uninst; undovmw: printf("Error Writing VMM File\n");goto uninst; }