PowerPC: fix ET_EXEC [merge problems?] Next: -pie

modified:   stub/src/powerpc-linux.elf-entry.S
	modified:   stub/src/powerpc-linux.elf-fold.S
	modified:   stub/src/powerpc-linux.elf-main.c

	modified:   stub/powerpc-linux.elf-entry.h
	modified:   stub/powerpc-linux.elf-fold.h
	modified:   stub/tmp/powerpc-linux.elf-entry.bin.dump
	modified:   stub/tmp/powerpc-linux.elf-fold.map
This commit is contained in:
John Reiser
2017-06-14 20:00:30 -07:00
parent 8f572e5fe6
commit a4c9b64224
7 changed files with 690 additions and 499 deletions
+200 -199
View File
@@ -1,5 +1,5 @@
/* powerpc-linux.elf-entry.h /* powerpc-linux.elf-entry.h
created from powerpc-linux.elf-entry.bin, 9325 (0x246d) bytes created from powerpc-linux.elf-entry.bin, 9329 (0x2471) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,15 +31,15 @@
*/ */
#define STUB_POWERPC_LINUX_ELF_ENTRY_SIZE 9325 #define STUB_POWERPC_LINUX_ELF_ENTRY_SIZE 9329
#define STUB_POWERPC_LINUX_ELF_ENTRY_ADLER32 0xa3727536 #define STUB_POWERPC_LINUX_ELF_ENTRY_ADLER32 0x9ecd7694
#define STUB_POWERPC_LINUX_ELF_ENTRY_CRC32 0x4e844a16 #define STUB_POWERPC_LINUX_ELF_ENTRY_CRC32 0x0552746c
unsigned char stub_powerpc_linux_elf_entry[9325] = { unsigned char stub_powerpc_linux_elf_entry[9329] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0010 */ 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 25,212, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40, /* 0x0020 */ 0, 0, 25,216, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40,
/* 0x0030 */ 0, 0, 0, 0, 72, 0, 1, 25,124, 0, 41,236,125,168, 2,166, /* 0x0030 */ 0, 0, 0, 0, 72, 0, 1, 29,124, 0, 41,236,125,168, 2,166,
/* 0x0040 */ 40, 7, 0, 8, 64,130, 1, 60,144,166, 0, 0,124,132, 26, 20, /* 0x0040 */ 40, 7, 0, 8, 64,130, 1, 60,144,166, 0, 0,124,132, 26, 20,
/* 0x0050 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255, /* 0x0050 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255,
/* 0x0060 */ 57, 64,255,255, 72, 0, 1, 12, 57, 32, 0, 1,125, 41, 28, 44, /* 0x0060 */ 57, 64,255,255, 72, 0, 1, 12, 57, 32, 0, 1,125, 41, 28, 44,
@@ -427,196 +427,197 @@ unsigned char stub_powerpc_linux_elf_entry[9325] = {
/* 0x1840 */ 255,205,124,124, 27,120,128, 3, 0, 0,128,131, 0, 4, 56, 99, /* 0x1840 */ 255,205,124,124, 27,120,128, 3, 0, 0,128,131, 0, 4, 56, 99,
/* 0x1850 */ 0, 8, 44, 0, 0, 6, 65,130, 0, 16, 44, 0, 0, 0, 64,130, /* 0x1850 */ 0, 8, 44, 0, 0, 6, 65,130, 0, 16, 44, 0, 0, 0, 64,130,
/* 0x1860 */ 255,232, 56,128, 16, 0,124,155, 35,120, 57, 0, 0, 0, 56,224, /* 0x1860 */ 255,232, 56,128, 16, 0,124,155, 35,120, 57, 0, 0, 0, 56,224,
/* 0x1870 */ 255,255, 56,192, 0, 34, 56,160, 0, 7,128,158, 0, 4,128,126, /* 0x1870 */ 255,255, 56,192, 0, 34, 56,160, 0, 7,128,158, 0, 4, 56,128,
/* 0x1880 */ 0, 0, 56, 0, 0, 90,124,110, 27,120, 68, 0, 0, 2,124, 14, /* 0x1880 */ 32, 0,128,126, 0, 0, 56, 0, 0, 90,124,110, 27,120, 68, 0,
/* 0x1890 */ 24, 64, 64,130, 0, 0,128, 30, 0, 4, 58,192, 0, 0,124, 0, /* 0x1890 */ 0, 2,124, 14, 24, 64, 64,130, 0, 0,128, 30, 0, 4, 58,192,
/* 0x18a0 */ 216, 64, 64,129, 0, 56,126,216, 24, 80,127,255,178, 20,127, 24, /* 0x18a0 */ 0, 0,124, 0,216, 64, 64,129, 0, 56,126,216, 24, 80,127,255,
/* 0x18b0 */ 178, 20, 56, 0, 0, 7, 56,132,255,252, 84, 0,232,254, 56, 99, /* 0x18b0 */ 178, 20,127, 24,178, 20, 56, 0, 0, 7, 56,132,255,252, 84, 0,
/* 0x18c0 */ 255,252,124, 9, 3,166,129,100, 0, 4,133,132, 0, 8,145, 99, /* 0x18c0 */ 232,254, 56, 99,255,252,124, 9, 3,166,129,100, 0, 4,133,132,
/* 0x18d0 */ 0, 4,149,131, 0, 8, 66, 0,255,240,127,233, 3,166,128, 30, /* 0x18d0 */ 0, 8,145, 99, 0, 4,149,131, 0, 8, 66, 0,255,240,127,233,
/* 0x18e0 */ 0, 16,136,254, 0, 24, 56,193, 0,140,144, 1, 0,140,125,197, /* 0x18e0 */ 3,166,128, 30, 0, 16,136,254, 0, 24, 56,193, 0,140,144, 1,
/* 0x18f0 */ 115,120,125,200, 3,166,128,158, 0, 20, 56,126, 0, 28, 78,128, /* 0x18f0 */ 0,140,125,197,115,120,125,200, 3,166,128,158, 0, 20, 56,126,
/* 0x1900 */ 4, 32,148, 33,255,112,188, 65, 0, 20,127,232, 2,166, 75,255, /* 0x1900 */ 0, 28, 78,128, 4, 32,148, 33,255,112,188, 65, 0, 20,127,232,
/* 0x1910 */ 255, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x1910 */ 2,166, 75,255,255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x1920 */ 0, 0,102,105,108,101, 32,102,111,114,109, 97,116, 32,101,108, /* 0x1920 */ 0, 0, 0, 0, 0, 0,102,105,108,101, 32,102,111,114,109, 97,
/* 0x1930 */ 102, 51, 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,101, 99, /* 0x1930 */ 116, 32,101,108,102, 51, 50, 45,112,111,119,101,114,112, 99, 10,
/* 0x1940 */ 116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, /* 0x1940 */ 10, 83,101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78,
/* 0x1950 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, /* 0x1950 */ 97,109,101, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,
/* 0x1960 */ 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 76, 77, 65, /* 0x1960 */ 101, 32, 32, 32, 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32,
/* 0x1970 */ 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, /* 0x1970 */ 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,
/* 0x1980 */ 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, /* 0x1980 */ 111,102,102, 32, 32, 65,108,103,110, 32, 32, 70,108, 97,103,115,
/* 0x1990 */ 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32, 32, 32, 32, 48, /* 0x1990 */ 10, 32, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32,
/* 0x19a0 */ 48, 48, 48, 48, 48, 48, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, /* 0x19a0 */ 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 52, 32, 32, 48, 48, 48,
/* 0x19b0 */ 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, /* 0x19b0 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x19c0 */ 48, 48, 48, 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, /* 0x19c0 */ 32, 48, 48, 48, 48, 48, 48, 51, 52, 32, 32, 50, 42, 42, 48, 32,
/* 0x19d0 */ 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, /* 0x19d0 */ 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67,
/* 0x19e0 */ 65, 68, 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, 82, 86, 95, 72, /* 0x19e0 */ 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 49, 32, 78,
/* 0x19f0 */ 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, /* 0x19f0 */ 82, 86, 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, 48, 48,
/* 0x1a00 */ 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, /* 0x1a00 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1a10 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51, 56, 32, /* 0x1a10 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1a20 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, /* 0x1a20 */ 48, 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69,
/* 0x1a30 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 50, 32, 78, 82, /* 0x1a30 */ 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32,
/* 0x1a40 */ 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, /* 0x1a40 */ 50, 32, 78, 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x1a50 */ 48, 49, 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, /* 0x1a50 */ 48, 48, 48, 48, 48, 49, 52, 56, 32, 32, 48, 48, 48, 48, 48, 48,
/* 0x1a60 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1a60 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
/* 0x1a70 */ 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, /* 0x1a70 */ 48, 48, 48, 48, 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79,
/* 0x1a80 */ 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, /* 0x1a80 */ 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82,
/* 0x1a90 */ 78, 76, 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, 68, 32, 32, 32, /* 0x1a90 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 51, 32, 78, 82, 86, 50,
/* 0x1aa0 */ 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 50, 99, 32, 32, /* 0x1aa0 */ 68, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49,
/* 0x1ab0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1ab0 */ 50, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
/* 0x1ac0 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 49, 56, 48, 32, 32, 50, 42, /* 0x1ac0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 49, 56, 48,
/* 0x1ad0 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, /* 0x1ad0 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83,
/* 0x1ae0 */ 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, /* 0x1ae0 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76,
/* 0x1af0 */ 52, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x1af0 */ 89, 10, 32, 32, 52, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32,
/* 0x1b00 */ 48, 48, 48, 48, 48, 48,102, 48, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1b00 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48,102, 48, 32, 32, 48, 48,
/* 0x1b10 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1b10 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1b20 */ 48, 48, 48, 50, 97, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, /* 0x1b20 */ 32, 32, 48, 48, 48, 48, 48, 50, 97, 99, 32, 32, 50, 42, 42, 48,
/* 0x1b30 */ 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, /* 0x1b30 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79,
/* 0x1b40 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, 76, 90, 77, 65, /* 0x1b40 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 53, 32,
/* 0x1b50 */ 95, 69, 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1b50 */ 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 32, 32, 32, 32, 48, 48,
/* 0x1b60 */ 57, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1b60 */ 48, 48, 48, 48, 57, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1b70 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 51, 57, 99, /* 0x1b70 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b80 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, /* 0x1b80 */ 48, 51, 57, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1b90 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, /* 0x1b90 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65,
/* 0x1ba0 */ 89, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, /* 0x1ba0 */ 68, 79, 78, 76, 89, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 68,
/* 0x1bb0 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32, 48, 48, /* 0x1bb0 */ 69, 67, 49, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99,
/* 0x1bc0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1bc0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1bd0 */ 32, 32, 48, 48, 48, 48, 48, 52, 50, 99, 32, 32, 50, 42, 42, 48, /* 0x1bd0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 52, 50, 99, 32, 32,
/* 0x1be0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, /* 0x1be0 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1bf0 */ 79, 78, 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95, 68, 69, /* 0x1bf0 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 55, 32, 76, 90, 77,
/* 0x1c00 */ 67, 50, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, /* 0x1c00 */ 65, 95, 68, 69, 67, 50, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48,
/* 0x1c10 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, /* 0x1c10 */ 57, 57, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1c20 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,100, 99, 56, 32, 32, 50, /* 0x1c20 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,100, 99,
/* 0x1c30 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, /* 0x1c30 */ 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84,
/* 0x1c40 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, 76, 90, 77, 65, /* 0x1c40 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 56, 32,
/* 0x1c50 */ 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1c50 */ 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 48,
/* 0x1c60 */ 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1c60 */ 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1c70 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 54, 52, /* 0x1c70 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1c80 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, /* 0x1c80 */ 49, 55, 54, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1c90 */ 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 57, 32, 78, /* 0x1c90 */ 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32,
/* 0x1ca0 */ 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48, 48, 48, /* 0x1ca0 */ 32, 57, 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32,
/* 0x1cb0 */ 48, 48, 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1cb0 */ 32, 48, 48, 48, 48, 48, 48, 49, 99, 32, 32, 48, 48, 48, 48, 48,
/* 0x1cc0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, /* 0x1cc0 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1cd0 */ 55, 56, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, /* 0x1cd0 */ 48, 48, 48, 49, 55, 56, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1ce0 */ 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 49, /* 0x1ce0 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76,
/* 0x1cf0 */ 48, 32, 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x1cf0 */ 89, 10, 32, 49, 48, 32, 67, 70, 76, 85, 83, 72, 32, 32, 32, 32,
/* 0x1d00 */ 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1d00 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48,
/* 0x1d10 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1d10 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1d20 */ 48, 48, 49, 55, 97, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, /* 0x1d20 */ 32, 32, 48, 48, 48, 48, 49, 55, 97, 52, 32, 32, 50, 42, 42, 48,
/* 0x1d30 */ 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, /* 0x1d30 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68,
/* 0x1d40 */ 10, 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, 32, 32, /* 0x1d40 */ 79, 78, 76, 89, 10, 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78,
/* 0x1d50 */ 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 50, 32, 32, 48, 48, 48, /* 0x1d50 */ 89, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 50, 32,
/* 0x1d60 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1d60 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1d70 */ 32, 48, 48, 48, 48, 49, 55, 99, 56, 32, 32, 50, 42, 42, 48, 32, /* 0x1d70 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 56, 32, 32, 50,
/* 0x1d80 */ 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, /* 0x1d80 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82,
/* 0x1d90 */ 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 49, 50, 32, 69, /* 0x1d90 */ 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32,
/* 0x1da0 */ 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, 32, 32, 48, 48, 48, /* 0x1da0 */ 49, 50, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, 32,
/* 0x1db0 */ 48, 48, 49, 51, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1db0 */ 32, 48, 48, 48, 48, 48, 49, 51, 99, 32, 32, 48, 48, 48, 48, 48,
/* 0x1dc0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, /* 0x1dc0 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1dd0 */ 55,101, 97, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, /* 0x1dd0 */ 48, 48, 48, 49, 55,101, 97, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1de0 */ 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, /* 0x1de0 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32,
/* 0x1df0 */ 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, /* 0x1df0 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32,
/* 0x1e00 */ 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1e00 */ 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1e10 */ 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 9, 48, /* 0x1e10 */ 108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1e20 */ 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, /* 0x1e20 */ 51, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65,
/* 0x1e30 */ 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1e30 */ 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1e40 */ 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 9, 48, 48, 48, /* 0x1e40 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76,
/* 0x1e50 */ 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 48, /* 0x1e50 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65,
/* 0x1e60 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1e60 */ 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1e70 */ 69, 76, 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x1e70 */ 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 9, 48, 48, 48,
/* 0x1e80 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, /* 0x1e80 */ 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48,
/* 0x1e90 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, /* 0x1e90 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1ea0 */ 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 69, 76, /* 0x1ea0 */ 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1eb0 */ 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1eb0 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48,
/* 0x1ec0 */ 108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 88, /* 0x1ec0 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77,
/* 0x1ed0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, /* 0x1ed0 */ 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 69, 76,
/* 0x1ee0 */ 78, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1ee0 */ 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1ef0 */ 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, 9, 48, 48, 48, /* 0x1ef0 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68,
/* 0x1f00 */ 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69, 65, 68, 10, 48, /* 0x1f00 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69,
/* 0x1f10 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1f10 */ 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1f20 */ 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, /* 0x1f20 */ 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48,
/* 0x1f30 */ 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1f30 */ 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f40 */ 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9, 48, 48, 48, 48, /* 0x1f40 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9,
/* 0x1f50 */ 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48, 48, 48, 48, 48, /* 0x1f50 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48,
/* 0x1f60 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, /* 0x1f60 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1f70 */ 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 66, /* 0x1f70 */ 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78,
/* 0x1f80 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, /* 0x1f80 */ 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x1f90 */ 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 9, 48, 48, 48, /* 0x1f90 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48,
/* 0x1fa0 */ 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, /* 0x1fa0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 69,
/* 0x1fb0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, /* 0x1fb0 */ 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x1fc0 */ 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 9, 48, 48, 48, /* 0x1fc0 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48,
/* 0x1fd0 */ 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, /* 0x1fd0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68,
/* 0x1fe0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, /* 0x1fe0 */ 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x1ff0 */ 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 9, 48, 48, 48, /* 0x1ff0 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48,
/* 0x2000 */ 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, /* 0x2000 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68,
/* 0x2010 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, /* 0x2010 */ 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2020 */ 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x2020 */ 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48,
/* 0x2030 */ 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48, 48, 48, 48, 48, /* 0x2030 */ 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48,
/* 0x2040 */ 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, /* 0x2040 */ 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76,
/* 0x2050 */ 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 95,115,116, 97, /* 0x2050 */ 70, 77, 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x2060 */ 114,116, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, /* 0x2060 */ 95,115,116, 97,114,116, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x2070 */ 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48, 48, 48, /* 0x2070 */ 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48,
/* 0x2080 */ 48, 48, 32, 65, 68, 82, 77, 10, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x2080 */ 48, 48, 48, 48, 48, 48, 32, 65, 68, 82, 77, 10, 48, 48, 48, 48,
/* 0x2090 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, /* 0x2090 */ 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78,
/* 0x20a0 */ 48, 48, 48, 48, 48, 48, 48, 32, 76, 69, 78, 77, 10, 48, 48, 48, /* 0x20a0 */ 68, 42, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 69, 78, 77,
/* 0x20b0 */ 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, /* 0x20b0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32,
/* 0x20c0 */ 78, 68, 42, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 69, 78, /* 0x20c0 */ 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x20d0 */ 85, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, /* 0x20d0 */ 32, 76, 69, 78, 85, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x20e0 */ 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x20e0 */ 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48,
/* 0x20f0 */ 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, 82, 69, 76, 79, 67, /* 0x20f0 */ 48, 48, 48, 48, 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, 82,
/* 0x2100 */ 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, /* 0x2100 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68,
/* 0x2110 */ 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, 93, 58, 10, 79, 70, /* 0x2110 */ 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, 93,
/* 0x2120 */ 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, /* 0x2120 */ 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32,
/* 0x2130 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, /* 0x2130 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76,
/* 0x2140 */ 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, /* 0x2140 */ 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80,
/* 0x2150 */ 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, /* 0x2150 */ 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 69, 76,
/* 0x2160 */ 78, 90, 43, 48,120, 48, 48, 48, 48, 48, 49, 49, 56, 10, 10, 82, /* 0x2160 */ 70, 77, 65, 73, 78, 90, 43, 48,120, 48, 48, 48, 48, 48, 49, 49,
/* 0x2170 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, /* 0x2170 */ 99, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69,
/* 0x2180 */ 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 69, 93, 58, 10, 79, /* 0x2180 */ 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 69,
/* 0x2190 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, /* 0x2190 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69,
/* 0x21a0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, /* 0x21a0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
/* 0x21b0 */ 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, /* 0x21b0 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80,
/* 0x21c0 */ 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, /* 0x21c0 */ 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78,
/* 0x21d0 */ 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, /* 0x21d0 */ 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84,
/* 0x21e0 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, /* 0x21e0 */ 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32,
/* 0x21f0 */ 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, /* 0x21f0 */ 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
/* 0x2200 */ 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x2200 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2210 */ 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, /* 0x2210 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
/* 0x2220 */ 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, /* 0x2220 */ 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32,
/* 0x2230 */ 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, /* 0x2230 */ 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82,
/* 0x2240 */ 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, /* 0x2240 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68,
/* 0x2250 */ 82, 32, 91, 78, 82, 86, 50, 66, 93, 58, 10, 79, 70, 70, 83, 69, /* 0x2250 */ 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 66, 93, 58, 10, 79,
/* 0x2260 */ 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x2260 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32,
/* 0x2270 */ 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, /* 0x2270 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10,
/* 0x2280 */ 48, 48, 57, 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, /* 0x2280 */ 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, 80, 80, 67, 95, 82,
/* 0x2290 */ 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, /* 0x2290 */ 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84,
/* 0x22a0 */ 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, /* 0x22a0 */ 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32,
/* 0x22b0 */ 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, 95, 69, 76, /* 0x22b0 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77,
/* 0x22c0 */ 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, /* 0x22c0 */ 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84,
/* 0x22d0 */ 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x22d0 */ 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x22e0 */ 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 52, 32, /* 0x22e0 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48,
/* 0x22f0 */ 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, /* 0x22f0 */ 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32,
/* 0x2300 */ 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 43, 48,120, 48, /* 0x2300 */ 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48,
/* 0x2310 */ 48, 48, 48, 48, 48, 50, 52, 10, 10, 82, 69, 76, 79, 67, 65, 84, /* 0x2310 */ 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52, 10, 10, 82, 69, 76,
/* 0x2320 */ 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, /* 0x2320 */ 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32,
/* 0x2330 */ 91, 69, 76, 70, 77, 65, 73, 78, 89, 93, 58, 10, 79, 70, 70, 83, /* 0x2330 */ 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 89, 93, 58, 10,
/* 0x2340 */ 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, /* 0x2340 */ 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32,
/* 0x2350 */ 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, /* 0x2350 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69,
/* 0x2360 */ 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, /* 0x2360 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67, 95,
/* 0x2370 */ 52, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, /* 0x2370 */ 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77,
/* 0x2380 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, /* 0x2380 */ 65, 73, 78, 90, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78,
/* 0x2390 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, /* 0x2390 */ 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76,
/* 0x23a0 */ 78, 90, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, /* 0x23a0 */ 70, 77, 65, 73, 78, 90, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
/* 0x23b0 */ 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x23b0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x23c0 */ 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 97, 56, 32, 82, /* 0x23c0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
/* 0x23d0 */ 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, /* 0x23d0 */ 97, 99, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32,
/* 0x23e0 */ 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, 49, /* 0x23e0 */ 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48,
/* 0x23f0 */ 50, 56, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68, 82, 51, 50, 32, /* 0x23f0 */ 48, 48, 48, 49, 50, 99, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68,
/* 0x2400 */ 32, 32, 32, 32, 32, 65, 68, 82, 77, 10, 48, 48, 48, 48, 48, 49, /* 0x2400 */ 82, 51, 50, 32, 32, 32, 32, 32, 32, 65, 68, 82, 77, 10, 48, 48,
/* 0x2410 */ 50, 99, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68, 82, 51, 50, 32, /* 0x2410 */ 48, 48, 48, 49, 51, 48, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68,
/* 0x2420 */ 32, 32, 32, 32, 32, 76, 69, 78, 77, 10, 48, 48, 48, 48, 48, 49, /* 0x2420 */ 82, 51, 50, 32, 32, 32, 32, 32, 32, 76, 69, 78, 77, 10, 48, 48,
/* 0x2430 */ 51, 48, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68, 82, 51, 50, 32, /* 0x2430 */ 48, 48, 48, 49, 51, 52, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68,
/* 0x2440 */ 32, 32, 32, 32, 32, 76, 69, 78, 85, 10, 48, 48, 48, 48, 48, 49, /* 0x2440 */ 82, 51, 50, 32, 32, 32, 32, 32, 32, 76, 69, 78, 85, 10, 48, 48,
/* 0x2450 */ 51, 52, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68, 82, 51, 50, 32, /* 0x2450 */ 48, 48, 48, 49, 51, 56, 32, 82, 95, 80, 80, 67, 95, 65, 68, 68,
/* 0x2460 */ 32, 32, 32, 32, 32, 79, 95, 66, 73, 78, 70, 79, 10 /* 0x2460 */ 82, 51, 50, 32, 32, 32, 32, 32, 32, 79, 95, 66, 73, 78, 70, 79,
/* 0x2470 */ 10
}; };
+238 -231
View File
@@ -1,5 +1,5 @@
/* powerpc-linux.elf-fold.h /* powerpc-linux.elf-fold.h
created from powerpc-linux.elf-fold.bin, 3832 (0xef8) bytes created from powerpc-linux.elf-fold.bin, 3940 (0xf64) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,17 +31,17 @@
*/ */
#define STUB_POWERPC_LINUX_ELF_FOLD_SIZE 3832 #define STUB_POWERPC_LINUX_ELF_FOLD_SIZE 3940
#define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0xbb4dfc8c #define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0x5b612076
#define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0x634bb311 #define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0x96348586
unsigned char stub_powerpc_linux_elf_fold[3832] = { unsigned char stub_powerpc_linux_elf_fold[3940] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 2, 0, 20, 0, 0, 0, 1, 0, 16, 0,128, 0, 0, 0, 52, /* 0x0010 */ 0, 2, 0, 20, 0, 0, 0, 1, 0, 16, 0,128, 0, 0, 0, 52,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 32, 0, 2, 0, 0, /* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 32, 0, 2, 0, 0,
/* 0x0030 */ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 0, 0, /* 0x0030 */ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 0, 0,
/* 0x0040 */ 0, 16, 0, 0, 0, 0, 14,248, 0, 0, 14,248, 0, 0, 0, 5, /* 0x0040 */ 0, 16, 0, 0, 0, 0, 15,100, 0, 0, 15,100, 0, 0, 0, 5,
/* 0x0050 */ 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 14,248, 0, 0, 0, 0, /* 0x0050 */ 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 15,100, 0, 0, 0, 0,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0060 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0070 */ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0070 */ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0080 */ 72, 0, 0,125, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191, /* 0x0080 */ 72, 0, 0,125, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191,
@@ -52,228 +52,235 @@ unsigned char stub_powerpc_linux_elf_fold[3832] = {
/* 0x00d0 */ 133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64, 65,162,255,220, /* 0x00d0 */ 133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64, 65,162,255,220,
/* 0x00e0 */ 66, 0,255,240, 78,128, 0, 32, 32, 32, 32, 61, 47,112,114,111, /* 0x00e0 */ 66, 0,255,240, 78,128, 0, 32, 32, 32, 32, 61, 47,112,114,111,
/* 0x00f0 */ 99, 47,115,101,108,102, 47,101,120,101, 0, 0,126,168, 2,166, /* 0x00f0 */ 99, 47,115,101,108,102, 47,101,120,101, 0, 0,126,168, 2,166,
/* 0x0100 */ 56,128, 0, 0, 56,117, 0,104, 56, 0, 0, 5, 68, 0, 0, 2, /* 0x0100 */ 56,128, 0, 0, 56,117, 0,104, 72, 0, 1,157,124,116, 27,120,
/* 0x0110 */ 124,116, 27,120, 56,129,255,252, 56, 33,239,252,124, 59, 8, 80, /* 0x0110 */ 56,129,255,252, 56, 33,239,252, 56, 97,255,252, 59,156,255,252,
/* 0x0120 */ 124, 59, 8, 80, 56, 97,255,252, 59,156,255,252,132, 4, 0, 4, /* 0x0120 */ 132, 4, 0, 4,127,132,224, 64,148, 3, 0, 4, 65,156,255,244,
/* 0x0130 */ 127,132,224, 64,148, 3, 0, 4, 65,156,255,244, 59,131, 0, 8, /* 0x0130 */ 59,131, 0, 8,148, 3, 0, 4,128, 4, 0, 4, 43,128, 0, 0,
/* 0x0140 */ 148, 3, 0, 4,128, 4, 0, 4, 43,128, 0, 0,144, 3, 0, 4, /* 0x0140 */ 144, 3, 0, 4,132, 4, 0, 8,148, 3, 0, 8, 64,158,255,236,
/* 0x0150 */ 132, 4, 0, 8,148, 3, 0, 8, 64,158,255,236, 58, 99, 0, 4, /* 0x0150 */ 58, 99, 0, 4,126, 92,152, 80,128, 21, 0,100, 58, 36, 0, 4,
/* 0x0160 */ 126, 92,152, 80,128, 21, 0,100, 58, 36, 0, 4,148, 3, 0, 4, /* 0x0160 */ 148, 3, 0, 4, 57,195, 0, 4, 56,160, 15,255,125,196,115,120,
/* 0x0170 */ 57,195, 0, 4, 56,160, 15,255,125,196,115,120, 56,117, 0,104, /* 0x0170 */ 56,117, 0,104, 72, 0, 1, 33, 56,174,255,252, 44, 3, 0, 0,
/* 0x0180 */ 56, 0, 0, 85, 68, 0, 0, 2, 56,174,255,252, 44, 3, 0, 0, /* 0x0180 */ 65,129, 0, 12, 56,181, 0,100, 56, 96, 0, 16, 56, 99, 0, 4,
/* 0x0190 */ 65,129, 0, 12, 56,181, 0,100, 56, 96, 0, 16, 56, 99, 0, 4, /* 0x0190 */ 124,133, 26, 20,124,105, 3,166,126, 35,139,120, 56,160, 0, 0,
/* 0x01a0 */ 124,133, 26, 20,124,105, 3,166,126, 35,139,120, 56,160, 0, 0, /* 0x01a0 */ 156,163,255,255,140, 4,255,255,156, 3,255,255, 66, 0,255,248,
/* 0x01b0 */ 156,163,255,255,140, 4,255,255,156, 3,255,255, 66, 0,255,248, /* 0x01b0 */ 144,124,255,248, 84, 99, 0, 58,124, 32, 34,120,124, 0, 26,120,
/* 0x01c0 */ 144,124,255,248,124, 27, 40, 80,124,112, 0, 56,126, 16, 2, 20, /* 0x01c0 */ 84, 0, 7,122,124, 96, 24, 80,126,100,155,120,127,146, 24, 80,
/* 0x01d0 */ 127,146,128, 80, 57, 0, 0, 0,126,135,163,120, 56,192, 0, 18, /* 0x01d0 */ 132, 4,255,252,127,132, 8, 64,148, 3,255,252, 65,157,255,244,
/* 0x01e0 */ 56,160, 0, 1,127,100,219,120,126, 3,131,120, 56, 0, 0, 90, /* 0x01e0 */ 124, 97, 27,120, 56, 0, 0, 0, 57, 65, 0,140,146,202, 0, 0,
/* 0x01f0 */ 68, 0, 0, 2,126,100,155,120,132, 4,255,252,127,132, 8, 64, /* 0x01f0 */ 124, 27, 0, 80,127,106,219,120,127,137,227,120,126,168,171,120,
/* 0x0200 */ 148, 3,255,252, 65,157,255,244,124, 97, 27,120,126,131,163,120, /* 0x0200 */ 125, 30, 0, 56,127,231,251,120,148, 33,247,240,128,159,255,248,
/* 0x0210 */ 56, 0, 0, 6, 68, 0, 0, 2, 56, 0, 0, 0, 57, 65, 0,140, /* 0x0210 */ 127,164,248, 80, 59,189,255,248,147,161, 0, 8,124,125,210, 20,
/* 0x0220 */ 146,202, 0, 0,124, 27, 0, 80,127,106,219,120,127,137,227,120, /* 0x0220 */ 124,154, 32, 80, 56,161, 0, 16,128,195, 0, 0, 72, 0, 10, 21,
/* 0x0230 */ 126,168,171,120,125, 30, 0, 56,127,231,251,120, 56, 33,248, 0, /* 0x0230 */ 56, 33, 8, 16,124,127, 27,120, 57, 0, 0, 0,126,135,163,120,
/* 0x0240 */ 128,159,255,248,127,164,248, 80, 59,189,255,248,147,161, 0, 8, /* 0x0240 */ 56,192, 0, 2, 56,160, 0, 1,127,100,219,120, 56, 96, 0, 0,
/* 0x0250 */ 124,125,210, 20,124,154, 32, 80, 56,161, 0, 16,148, 33,247,240, /* 0x0250 */ 72, 0, 0, 41,126,131,163,120, 72, 0, 0, 85,127, 3,195,120,
/* 0x0260 */ 128,195, 0, 0, 72, 0, 9,153,124,127, 27,120,127, 3,195,120, /* 0x0260 */ 126,228,187,120, 72, 0, 0, 89,127,232, 3,166,184, 65, 0, 20,
/* 0x0270 */ 126,229,187,120, 72, 0, 0, 81,127,232, 3,166,184, 65, 8, 20, /* 0x0270 */ 56, 33, 0,144, 78,128, 0, 32, 56, 0, 0, 90, 68, 0, 0, 2,
/* 0x0280 */ 56, 33, 8,144, 78,128, 0, 32, 56, 0, 0, 90, 68, 0, 0, 2, /* 0x0280 */ 64,163, 0, 8, 56, 96,255,255, 78,128, 0, 32, 56, 0, 0, 1,
/* 0x0290 */ 64,163, 0, 8, 56, 96,255,255, 78,128, 0, 32, 56, 0, 0, 1, /* 0x0290 */ 72, 0, 0, 8, 56, 0, 0, 85, 72, 0, 0, 8, 56, 0, 0, 3,
/* 0x02a0 */ 72, 0, 0, 8, 56, 0, 0, 3, 72, 0, 0, 8, 56, 0, 0, 5, /* 0x02a0 */ 72, 0, 0, 8, 56, 0, 0, 5, 72, 0, 0, 8, 56, 0, 0, 6,
/* 0x02b0 */ 72, 0, 0, 8, 56, 0, 0, 6, 72, 0, 0, 8, 56, 0, 0,125, /* 0x02b0 */ 72, 0, 0, 8, 56, 0, 0,125, 72, 0, 0, 8, 56, 0, 0, 91,
/* 0x02c0 */ 72, 0, 0, 8, 56, 0, 0, 91, 72, 0, 0, 8, 56, 0, 0, 45, /* 0x02c0 */ 72, 0, 0, 8, 56, 0, 0, 45, 75,255,255,180,148, 33,255,208,
/* 0x02d0 */ 75,255,255,188,148, 33,255,208,124, 8, 2,166,147,225, 0, 44, /* 0x02d0 */ 124, 8, 2,166,147,225, 0, 44,144, 1, 0, 52,124, 63, 11,120,
/* 0x02e0 */ 144, 1, 0, 52,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12, /* 0x02e0 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,129, 63, 0, 8,
/* 0x02f0 */ 144,191, 0, 16,129, 63, 0, 8,128, 9, 0, 4,144, 31, 0, 20, /* 0x02f0 */ 128, 9, 0, 4,144, 31, 0, 20,128, 31, 0, 12,144, 31, 0, 24,
/* 0x0300 */ 128, 31, 0, 12,144, 31, 0, 24,129, 63, 0, 8,129, 41, 0, 0, /* 0x0300 */ 129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 16,127,137, 0, 64,
/* 0x0310 */ 128, 31, 0, 16,127,137, 0, 64, 64,156, 0, 12, 56, 96, 0,127, /* 0x0310 */ 64,156, 0, 12, 56, 96, 0,127, 75,255,255,117,128, 31, 0, 16,
/* 0x0320 */ 75,255,255,125,128, 31, 0, 16,144, 31, 0, 28,129, 63, 0, 28, /* 0x0320 */ 144, 31, 0, 28,129, 63, 0, 28, 56, 9,255,255,124, 9, 3,120,
/* 0x0330 */ 56, 9,255,255,124, 9, 3,120,145, 63, 0, 28, 56, 0,255,255, /* 0x0330 */ 145, 63, 0, 28, 56, 0,255,255,127,137, 0, 0, 65,158, 0, 48,
/* 0x0340 */ 127,137, 0, 0, 65,158, 0, 48,129,127, 0, 24,129, 63, 0, 20, /* 0x0340 */ 129,127, 0, 24,129, 63, 0, 20,136, 9, 0, 0,152, 11, 0, 0,
/* 0x0350 */ 136, 9, 0, 0,152, 11, 0, 0,129, 63, 0, 20, 56, 9, 0, 1, /* 0x0350 */ 129, 63, 0, 20, 56, 9, 0, 1,144, 31, 0, 20,129, 63, 0, 24,
/* 0x0360 */ 144, 31, 0, 20,129, 63, 0, 24, 56, 9, 0, 1,144, 31, 0, 24, /* 0x0360 */ 56, 9, 0, 1,144, 31, 0, 24, 75,255,255,188,129,127, 0, 8,
/* 0x0370 */ 75,255,255,188,129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 4, /* 0x0370 */ 129, 63, 0, 8,129, 41, 0, 4,128, 31, 0, 16,124, 9, 2, 20,
/* 0x0380 */ 128, 31, 0, 16,124, 9, 2, 20,144, 11, 0, 4,129,127, 0, 8, /* 0x0380 */ 144, 11, 0, 4,129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 0,
/* 0x0390 */ 129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 16,124, 0, 72, 80, /* 0x0390 */ 128, 31, 0, 16,124, 0, 72, 80,144, 11, 0, 0,129, 97, 0, 0,
/* 0x03a0 */ 144, 11, 0, 0,129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166, /* 0x03a0 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120,
/* 0x03b0 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,176, /* 0x03b0 */ 78,128, 0, 32,148, 33,255,224,124, 8, 2,166,147,225, 0, 28,
/* 0x03c0 */ 124, 8, 2,166,147,225, 0, 76,144, 1, 0, 84,124, 63, 11,120, /* 0x03c0 */ 144, 1, 0, 36,124, 63, 11,120,144,127, 0, 8, 56, 96, 0,127,
/* 0x03d0 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,144,223, 0, 20, /* 0x03d0 */ 75,255,254,189,148, 33,255,176,124, 8, 2,166,147,225, 0, 76,
/* 0x03e0 */ 129, 63, 0, 12,128, 9, 0, 0, 47,128, 0, 0, 65,158, 1,192, /* 0x03e0 */ 144, 1, 0, 84,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,
/* 0x03f0 */ 56, 31, 0, 32,128,127, 0, 8,124, 4, 3,120, 56,160, 0, 12, /* 0x03f0 */ 144,191, 0, 16,144,223, 0, 20,129, 63, 0, 12,128, 9, 0, 0,
/* 0x0400 */ 75,255,254,213,128, 31, 0, 32, 47,128, 0, 0, 64,158, 0, 48, /* 0x0400 */ 47,128, 0, 0, 65,158, 1,228, 56, 31, 0, 32,128,127, 0, 8,
/* 0x0410 */ 128, 31, 0, 36, 61, 32, 33, 88, 97, 41, 80, 85,127,128, 72, 0, /* 0x0410 */ 124, 4, 3,120, 56,160, 0, 12, 75,255,254,181,128, 31, 0, 32,
/* 0x0420 */ 65,158, 0, 8, 72, 0, 0, 36,129, 63, 0, 8,128, 9, 0, 0, /* 0x0420 */ 47,128, 0, 0, 64,158, 0, 60,128, 31, 0, 36, 61, 32, 33, 88,
/* 0x0430 */ 47,128, 0, 0, 65,158, 1,120, 72, 0, 0, 16,128, 31, 0, 36, /* 0x0430 */ 97, 41, 80, 85,127,128, 72, 0, 65,158, 0, 12, 56, 96, 0, 2,
/* 0x0440 */ 47,128, 0, 0, 64,158, 0, 12, 56, 96, 0,127, 75,255,254, 81, /* 0x0440 */ 75,255,255,117,129, 63, 0, 8,128, 9, 0, 0, 47,128, 0, 0,
/* 0x0450 */ 128, 31, 0, 36,129, 63, 0, 32,127,128, 72, 64, 65,157,255,236, /* 0x0450 */ 65,158, 1,152, 56, 96, 0, 3, 75,255,255, 93, 72, 0, 1,140,
/* 0x0460 */ 129, 63, 0, 12,129,127, 0, 32,128, 9, 0, 0,127,139, 0, 64, /* 0x0460 */ 128, 31, 0, 36, 47,128, 0, 0, 64,158, 0, 12, 56, 96, 0, 4,
/* 0x0470 */ 65,157,255,216,128, 31, 0, 36,129, 63, 0, 32,127,128, 72, 64, /* 0x0470 */ 75,255,255, 69,128, 31, 0, 36,129, 63, 0, 32,127,128, 72, 64,
/* 0x0480 */ 64,156, 0,228,128, 31, 0, 32,144, 31, 0, 48,129, 63, 0, 8, /* 0x0480 */ 65,157, 0, 28,129, 63, 0, 12,129,127, 0, 32,128, 9, 0, 0,
/* 0x0490 */ 129,127, 0, 12, 57, 95, 0, 48,136, 31, 0, 40, 84, 0, 6, 62, /* 0x0490 */ 127,139, 0, 64, 65,157, 0, 8, 72, 0, 0, 12, 56, 96, 0, 5,
/* 0x04a0 */ 129, 31, 0, 16,125, 9, 3,166,128,105, 0, 4,128,159, 0, 36, /* 0x04a0 */ 75,255,255, 21,128, 31, 0, 36,129, 63, 0, 32,127,128, 72, 64,
/* 0x04b0 */ 128,171, 0, 4,125, 70, 83,120,124, 7, 3,120, 78,128, 4, 33, /* 0x04b0 */ 64,156, 0,240,128, 31, 0, 32,144, 31, 0, 48,129, 63, 0, 8,
/* 0x04c0 */ 124, 96, 27,120,144, 31, 0, 52,128, 31, 0, 52, 47,128, 0, 0, /* 0x04c0 */ 129,127, 0, 12, 57, 95, 0, 48,136, 31, 0, 40, 84, 0, 6, 62,
/* 0x04d0 */ 64,158,255,120,128, 31, 0, 32,129, 63, 0, 48,127,128, 72, 0, /* 0x04d0 */ 129, 31, 0, 16,125, 9, 3,166,128,105, 0, 4,128,159, 0, 36,
/* 0x04e0 */ 64,158,255,104,136, 31, 0, 41, 84, 0, 6, 62, 47,128, 0, 0, /* 0x04e0 */ 128,171, 0, 4,125, 70, 83,120,124, 7, 3,120, 78,128, 4, 33,
/* 0x04f0 */ 65,158, 0, 64,128, 31, 0, 20, 47,128, 0, 0, 65,158, 0, 52, /* 0x04f0 */ 124, 96, 27,120,144, 31, 0, 52,128, 31, 0, 52, 47,128, 0, 0,
/* 0x0500 */ 129, 63, 0, 12,136, 31, 0, 42, 84, 11, 6, 62,136, 31, 0, 41, /* 0x0500 */ 64,158, 0, 24,128, 31, 0, 32,129, 63, 0, 48,127,128, 72, 0,
/* 0x0510 */ 84, 0, 6, 62,129, 31, 0, 20,125, 9, 3,166,128,105, 0, 4, /* 0x0510 */ 64,158, 0, 8, 72, 0, 0, 12, 56, 96, 0, 7, 75,255,254,153,
/* 0x0520 */ 128,159, 0, 48,125,101, 91,120,124, 6, 3,120, 78,128, 4, 33, /* 0x0520 */ 136, 31, 0, 41, 84, 0, 6, 62, 47,128, 0, 0, 65,158, 0, 64,
/* 0x0530 */ 129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 4,128, 31, 0, 36, /* 0x0530 */ 128, 31, 0, 20, 47,128, 0, 0, 65,158, 0, 52,129, 63, 0, 12,
/* 0x0540 */ 124, 9, 2, 20,144, 11, 0, 4,129,127, 0, 8,129, 63, 0, 8, /* 0x0540 */ 136, 31, 0, 42, 84, 11, 6, 62,136, 31, 0, 41, 84, 0, 6, 62,
/* 0x0550 */ 129, 41, 0, 0,128, 31, 0, 36,124, 0, 72, 80,144, 11, 0, 0, /* 0x0550 */ 129, 31, 0, 20,125, 9, 3,166,128,105, 0, 4,128,159, 0, 48,
/* 0x0560 */ 72, 0, 0, 24,129, 63, 0, 12,128,127, 0, 8,128,137, 0, 4, /* 0x0560 */ 125,101, 91,120,124, 6, 3,120, 78,128, 4, 33,129,127, 0, 8,
/* 0x0570 */ 128,191, 0, 36, 75,255,253, 97,129,127, 0, 12,129, 63, 0, 12, /* 0x0570 */ 129, 63, 0, 8,129, 41, 0, 4,128, 31, 0, 36,124, 9, 2, 20,
/* 0x0580 */ 129, 41, 0, 4,128, 31, 0, 32,124, 9, 2, 20,144, 11, 0, 4, /* 0x0580 */ 144, 11, 0, 4,129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 0,
/* 0x0590 */ 129,127, 0, 12,129, 63, 0, 12,129, 41, 0, 0,128, 31, 0, 32, /* 0x0590 */ 128, 31, 0, 36,124, 0, 72, 80,144, 11, 0, 0, 72, 0, 0, 24,
/* 0x05a0 */ 124, 0, 72, 80,144, 11, 0, 0, 75,255,254, 56,129, 97, 0, 0, /* 0x05a0 */ 129, 63, 0, 12,128,127, 0, 8,128,137, 0, 4,128,191, 0, 36,
/* 0x05b0 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120, /* 0x05b0 */ 75,255,253, 29,129,127, 0, 12,129, 63, 0, 12,129, 41, 0, 4,
/* 0x05c0 */ 78,128, 0, 32,148, 33,255,224,147,225, 0, 28,124, 63, 11,120, /* 0x05c0 */ 128, 31, 0, 32,124, 9, 2, 20,144, 11, 0, 4,129,127, 0, 12,
/* 0x05d0 */ 144,127, 0, 8,144,159, 0, 12,128, 31, 0, 12, 47,128, 0, 0, /* 0x05d0 */ 129, 63, 0, 12,129, 41, 0, 0,128, 31, 0, 32,124, 0, 72, 80,
/* 0x05e0 */ 65,158, 0, 52,129, 63, 0, 8,125, 43, 75,120, 56, 0, 0, 0, /* 0x05e0 */ 144, 11, 0, 0, 75,255,254, 20,129, 97, 0, 0,128, 11, 0, 4,
/* 0x05f0 */ 152, 11, 0, 0, 57, 41, 0, 1,145, 63, 0, 8,129, 63, 0, 12, /* 0x05f0 */ 124, 8, 3,166,131,235,255,252,125, 97, 91,120, 78,128, 0, 32,
/* 0x0600 */ 56, 9,255,255,144, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 8, /* 0x0600 */ 148, 33,255,224,147,225, 0, 28,124, 63, 11,120,144,127, 0, 8,
/* 0x0610 */ 75,255,255,212,129, 97, 0, 0,131,235,255,252,125, 97, 91,120, /* 0x0610 */ 144,159, 0, 12,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 52,
/* 0x0620 */ 78,128, 0, 32,148, 33,255,224,147,225, 0, 28,124, 63, 11,120, /* 0x0620 */ 129, 63, 0, 8,125, 43, 75,120, 56, 0, 0, 0,152, 11, 0, 0,
/* 0x0630 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,128, 31, 0, 8, /* 0x0630 */ 57, 41, 0, 1,145, 63, 0, 8,129, 63, 0, 12, 56, 9,255,255,
/* 0x0640 */ 47,128, 0, 0, 65,158, 0,100,129, 63, 0, 8,129, 41, 0, 0, /* 0x0640 */ 144, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 8, 75,255,255,212,
/* 0x0650 */ 128, 31, 0, 12,127,137, 0, 0, 65,158, 0, 36,129, 63, 0, 8, /* 0x0650 */ 129, 97, 0, 0,131,235,255,252,125, 97, 91,120, 78,128, 0, 32,
/* 0x0660 */ 128, 9, 0, 0, 47,128, 0, 1, 64,158, 0, 48,128, 31, 0, 12, /* 0x0660 */ 148, 33,255,224,147,225, 0, 28,124, 63, 11,120,144,127, 0, 8,
/* 0x0670 */ 47,128, 0, 0, 64,158, 0, 8, 72, 0, 0, 32,129, 63, 0, 8, /* 0x0670 */ 144,159, 0, 12,144,191, 0, 16,128, 31, 0, 8, 47,128, 0, 0,
/* 0x0680 */ 128, 31, 0, 12,144, 9, 0, 0,129, 63, 0, 8,128, 31, 0, 16, /* 0x0680 */ 64,158, 0, 8, 72, 0, 0,100,129, 63, 0, 8,129, 41, 0, 0,
/* 0x0690 */ 144, 9, 0, 4, 72, 0, 0, 20,129, 63, 0, 8, 56, 9, 0, 8, /* 0x0690 */ 128, 31, 0, 12,127,137, 0, 0, 65,158, 0, 36,129, 63, 0, 8,
/* 0x06a0 */ 144, 31, 0, 8, 75,255,255,164,129, 97, 0, 0,131,235,255,252, /* 0x06a0 */ 128, 9, 0, 0, 47,128, 0, 1, 64,158, 0, 48,128, 31, 0, 12,
/* 0x06b0 */ 125, 97, 91,120, 78,128, 0, 32,148, 33,255,192,124, 8, 2,166, /* 0x06b0 */ 47,128, 0, 0, 64,158, 0, 8, 72, 0, 0, 32,129, 63, 0, 8,
/* 0x06c0 */ 147,225, 0, 60,144, 1, 0, 68,124, 63, 11,120,144,127, 0, 8, /* 0x06c0 */ 128, 31, 0, 12,144, 9, 0, 0,129, 63, 0, 8,128, 31, 0, 16,
/* 0x06d0 */ 144,159, 0, 12,144,191, 0, 16,144,223, 0, 20,144,255, 0, 24, /* 0x06d0 */ 144, 9, 0, 4, 72, 0, 0, 20,129, 63, 0, 8, 56, 9, 0, 8,
/* 0x06e0 */ 56, 0,255,255,144, 31, 0, 28, 56, 0, 0, 0,144, 31, 0, 32, /* 0x06e0 */ 144, 31, 0, 8, 75,255,255,164,129, 97, 0, 0,131,235,255,252,
/* 0x06f0 */ 56, 0, 0, 0,144, 31, 0, 36,129, 63, 0, 8, 56, 9, 8, 34, /* 0x06f0 */ 125, 97, 91,120, 78,128, 0, 32,148, 33,255,192,124, 8, 2,166,
/* 0x0700 */ 144, 31, 0, 8,129, 63, 0, 16, 56, 9,255,255,144, 31, 0, 16, /* 0x0700 */ 147,225, 0, 60,144, 1, 0, 68,124, 63, 11,120,144,127, 0, 8,
/* 0x0710 */ 47,128, 0, 0, 65,156, 0,136,129, 63, 0, 12,128, 9, 0, 0, /* 0x0710 */ 144,159, 0, 12,144,191, 0, 16,144,223, 0, 20,144,255, 0, 24,
/* 0x0720 */ 47,128, 0, 1, 64,158, 0,104,129, 63, 0, 12,129, 41, 0, 8, /* 0x0720 */ 56, 0,255,255,144, 31, 0, 28, 56, 0, 0, 0,144, 31, 0, 32,
/* 0x0730 */ 128, 31, 0, 28,127,137, 0, 64, 64,156, 0, 28,129, 63, 0, 12, /* 0x0730 */ 56, 0, 0, 0,144, 31, 0, 36,129, 63, 0, 8, 56, 9, 8, 34,
/* 0x0740 */ 128, 9, 0, 8,144, 31, 0, 28,129, 63, 0, 12,128, 9, 0, 16, /* 0x0740 */ 144, 31, 0, 8,129, 63, 0, 16, 56, 9,255,255,144, 31, 0, 16,
/* 0x0750 */ 144, 31, 0, 36,129, 63, 0, 12,129,127, 0, 12,129, 41, 0, 20, /* 0x0750 */ 47,128, 0, 0, 65,156, 0,136,129, 63, 0, 12,128, 9, 0, 0,
/* 0x0760 */ 128, 11, 0, 8,125, 41, 2, 20,128, 31, 0, 32,127,137, 0, 64, /* 0x0760 */ 47,128, 0, 1, 64,158, 0,104,129, 63, 0, 12,129, 41, 0, 8,
/* 0x0770 */ 64,157, 0, 28,129, 63, 0, 12,129,127, 0, 12,129, 41, 0, 20, /* 0x0770 */ 128, 31, 0, 28,127,137, 0, 64, 64,156, 0, 28,129, 63, 0, 12,
/* 0x0780 */ 128, 11, 0, 8,124, 9, 2, 20,144, 31, 0, 32,129, 63, 0, 12, /* 0x0780 */ 128, 9, 0, 8,144, 31, 0, 28,129, 63, 0, 12,128, 9, 0, 16,
/* 0x0790 */ 56, 9, 0, 32,144, 31, 0, 12, 75,255,255,108,128, 31, 0, 24, /* 0x0790 */ 144, 31, 0, 36,129, 63, 0, 12,129,127, 0, 12,129, 41, 0, 20,
/* 0x07a0 */ 124, 9, 0,248,128, 31, 0, 28,125, 41, 0, 56,128, 31, 0, 36, /* 0x07a0 */ 128, 11, 0, 8,125, 41, 2, 20,128, 31, 0, 32,127,137, 0, 64,
/* 0x07b0 */ 124, 0, 74, 20,144, 31, 0, 36,129, 63, 0, 28,128, 31, 0, 24, /* 0x07b0 */ 64,157, 0, 28,129, 63, 0, 12,129,127, 0, 12,129, 41, 0, 20,
/* 0x07c0 */ 125, 32, 0, 56,144, 31, 0, 28,129, 63, 0, 32,128, 31, 0, 28, /* 0x07c0 */ 128, 11, 0, 8,124, 9, 2, 20,144, 31, 0, 32,129, 63, 0, 12,
/* 0x07d0 */ 125, 32, 72, 80,128, 31, 0, 24,125, 32, 72, 80, 57, 41,255,255, /* 0x07d0 */ 56, 9, 0, 32,144, 31, 0, 12, 75,255,255,108,128, 31, 0, 24,
/* 0x07e0 */ 128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 32,129, 63, 0, 36, /* 0x07e0 */ 124, 9, 0,248,128, 31, 0, 28,125, 41, 0, 56,128, 31, 0, 36,
/* 0x07f0 */ 128, 31, 0, 24,125, 32, 72, 80, 57, 41,255,255,128, 31, 0, 24, /* 0x07f0 */ 124, 0, 74, 20,144, 31, 0, 36,129, 63, 0, 28,128, 31, 0, 24,
/* 0x0800 */ 125, 32, 0, 56,144, 31, 0, 36,128,127, 0, 28,128,159, 0, 32, /* 0x0800 */ 125, 32, 0, 56,144, 31, 0, 28,129, 63, 0, 32,128, 31, 0, 28,
/* 0x0810 */ 56,160, 0, 0,128,223, 0, 8, 56,224,255,255, 57, 0, 0, 0, /* 0x0810 */ 125, 32, 72, 80,128, 31, 0, 24,125, 32, 72, 80, 57, 41,255,255,
/* 0x0820 */ 75,255,250,105,144,127, 0, 40,129,127, 0, 20,129, 63, 0, 40, /* 0x0820 */ 128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 32,129, 63, 0, 36,
/* 0x0830 */ 128, 31, 0, 32,124, 9, 2, 20,144, 11, 0, 0,129, 63, 0, 40, /* 0x0830 */ 128, 31, 0, 24,125, 32, 72, 80, 57, 41,255,255,128, 31, 0, 24,
/* 0x0840 */ 128, 31, 0, 28,124, 0, 72, 80,124, 3, 3,120,129, 97, 0, 0, /* 0x0840 */ 125, 32, 0, 56,144, 31, 0, 36,128,127, 0, 28,128,159, 0, 32,
/* 0x0850 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120, /* 0x0850 */ 56,160, 0, 0,128,223, 0, 8, 56,224,255,255, 57, 0, 0, 0,
/* 0x0860 */ 78,128, 0, 32,148, 33,255,144,124, 8, 2,166,147,225, 0,108, /* 0x0860 */ 75,255,250, 25,144,127, 0, 40,129,127, 0, 20,129, 63, 0, 40,
/* 0x0870 */ 144, 1, 0,116,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12, /* 0x0870 */ 128, 31, 0, 32,124, 9, 2, 20,144, 11, 0, 0,129, 63, 0, 40,
/* 0x0880 */ 144,191, 0, 16,144,223, 0, 20,144,255, 0, 24,145, 31, 0, 28, /* 0x0880 */ 128, 31, 0, 28,124, 0, 72, 80,124, 3, 3,120,129, 97, 0, 0,
/* 0x0890 */ 145, 63, 0, 32,145, 95, 0, 36,129, 63, 0, 8,129, 41, 0, 28, /* 0x0890 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120,
/* 0x08a0 */ 128, 31, 0, 8,124, 9, 2, 20,144, 31, 0, 40,129, 63, 0, 8, /* 0x08a0 */ 78,128, 0, 32,148, 33,255,144,124, 8, 2,166,147,225, 0,108,
/* 0x08b0 */ 160, 9, 0, 16, 84, 0, 4, 62, 47,128, 0, 3, 65,158, 0, 16, /* 0x08b0 */ 144, 1, 0,116,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,
/* 0x08c0 */ 56, 0, 0, 16,144, 31, 0, 88, 72, 0, 0, 12, 57, 32, 0, 0, /* 0x08c0 */ 144,191, 0, 16,144,223, 0, 20,144,255, 0, 24,145, 31, 0, 28,
/* 0x08d0 */ 145, 63, 0, 88,129, 63, 0, 8,160, 9, 0, 44, 84, 0, 4, 62, /* 0x08d0 */ 145, 63, 0, 32,145, 95, 0, 36,129, 63, 0, 8,129, 41, 0, 28,
/* 0x08e0 */ 57, 63, 0, 44,128,127, 0, 88,128,159, 0, 40,124, 5, 3,120, /* 0x08e0 */ 128, 31, 0, 8,124, 9, 2, 20,144, 31, 0, 40,129, 63, 0, 8,
/* 0x08f0 */ 125, 38, 75,120,128,255, 0, 36, 75,255,253,193,124, 96, 27,120, /* 0x08f0 */ 160, 9, 0, 16, 84, 0, 4, 62, 47,128, 0, 3, 65,158, 0, 16,
/* 0x0900 */ 144, 31, 0, 48, 56, 0, 0, 0,144, 31, 0, 52,129, 63, 0, 8, /* 0x0900 */ 56, 0, 0, 16,144, 31, 0, 88, 72, 0, 0, 12, 57, 32, 0, 0,
/* 0x0910 */ 160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 52,127,137, 0, 0, /* 0x0910 */ 145, 63, 0, 88,129, 63, 0, 8,160, 9, 0, 44, 84, 0, 4, 62,
/* 0x0920 */ 64,157, 2,152,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 56, /* 0x0920 */ 57, 63, 0, 44,128,127, 0, 88,128,159, 0, 40,124, 5, 3,120,
/* 0x0930 */ 129, 63, 0, 40,128, 9, 0, 0, 47,128, 0, 6, 64,158, 0, 40, /* 0x0930 */ 125, 38, 75,120,128,255, 0, 36, 75,255,253,193,124, 96, 27,120,
/* 0x0940 */ 129, 63, 0, 40,129, 41, 0, 8,128, 31, 0, 48,124, 9, 2, 20, /* 0x0940 */ 144, 31, 0, 48, 56, 0, 0, 0,144, 31, 0, 52,129, 63, 0, 8,
/* 0x0950 */ 128,127, 0, 20, 56,128, 0, 3,124, 5, 3,120, 75,255,252,201, /* 0x0950 */ 160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 52,127,137, 0, 0,
/* 0x0960 */ 72, 0, 2, 60,129, 63, 0, 40,128, 9, 0, 0, 47,128, 0, 1, /* 0x0960 */ 64,157, 2,156,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 56,
/* 0x0970 */ 64,158, 2, 44,129, 63, 0, 40,128, 9, 0, 24, 84, 0, 7,126, /* 0x0970 */ 129, 63, 0, 40,128, 9, 0, 0, 47,128, 0, 6, 64,158, 0, 40,
/* 0x0980 */ 84, 9, 16, 58, 60, 0,115, 81, 96, 0, 98, 64,124, 0, 76, 48, /* 0x0980 */ 129, 63, 0, 40,129, 41, 0, 8,128, 31, 0, 48,124, 9, 2, 20,
/* 0x0990 */ 84, 0, 7,126,144, 31, 0, 56,129, 63, 0, 40,128, 9, 0, 16, /* 0x0990 */ 128,127, 0, 20, 56,128, 0, 3,124, 5, 3,120, 75,255,252,197,
/* 0x09a0 */ 144, 31, 0, 64,144, 31, 0, 72,129, 63, 0, 40,129, 41, 0, 8, /* 0x09a0 */ 72, 0, 2, 64,129, 63, 0, 40,128, 9, 0, 0, 47,128, 0, 1,
/* 0x09b0 */ 128, 31, 0, 48,124, 9, 2, 20,144, 31, 0, 68,144, 31, 0, 76, /* 0x09b0 */ 64,158, 2, 48,129, 63, 0, 40,128, 9, 0, 24, 84, 0, 7,126,
/* 0x09c0 */ 129, 63, 0, 40,129, 41, 0, 20,128, 31, 0, 76,124, 9, 2, 20, /* 0x09c0 */ 84, 9, 16, 58, 60, 0,115, 81, 96, 0, 98, 64,124, 0, 76, 48,
/* 0x09d0 */ 144, 31, 0, 80,128, 31, 0, 36,124, 9, 0,248,128, 31, 0, 76, /* 0x09d0 */ 84, 0, 7,126,144, 31, 0, 56,129, 63, 0, 40,128, 9, 0, 16,
/* 0x09e0 */ 125, 32, 0, 56,144, 31, 0, 84,129, 63, 0, 72,128, 31, 0, 84, /* 0x09e0 */ 144, 31, 0, 64,144, 31, 0, 72,129, 63, 0, 40,129, 41, 0, 8,
/* 0x09f0 */ 124, 9, 2, 20,144, 31, 0, 72,129, 63, 0, 76,128, 31, 0, 84, /* 0x09f0 */ 128, 31, 0, 48,124, 9, 2, 20,144, 31, 0, 68,144, 31, 0, 76,
/* 0x0a00 */ 124, 0, 72, 80,144, 31, 0, 76,128, 31, 0, 12,124, 11,254,112, /* 0x0a00 */ 129, 63, 0, 40,129, 41, 0, 20,128, 31, 0, 76,124, 9, 2, 20,
/* 0x0a10 */ 125,105, 2,120,125, 43, 72, 80,145, 63, 0, 92,128, 31, 0, 92, /* 0x0a10 */ 144, 31, 0, 80,128, 31, 0, 36,124, 9, 0,248,128, 31, 0, 76,
/* 0x0a20 */ 124, 0, 0,208,144, 31, 0, 92,129, 63, 0, 92, 85, 41, 15,254, /* 0x0a20 */ 125, 32, 0, 56,144, 31, 0, 84,129, 63, 0, 72,128, 31, 0, 84,
/* 0x0a30 */ 145, 63, 0, 92,129,127, 0, 92, 85,107, 8, 60,145,127, 0, 92, /* 0x0a30 */ 124, 9, 2, 20,144, 31, 0, 72,129, 63, 0, 76,128, 31, 0, 84,
/* 0x0a40 */ 128, 31, 0, 56,129, 63, 0, 92,125, 41, 3,120,145, 63, 0, 92, /* 0x0a40 */ 124, 0, 72, 80,144, 31, 0, 76,128, 31, 0, 12,124, 11,254,112,
/* 0x0a50 */ 128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 16, 57, 96, 0, 50, /* 0x0a50 */ 125,105, 2,120,125, 43, 72, 80,145, 63, 0, 92,128, 31, 0, 92,
/* 0x0a60 */ 145,127, 0, 96, 72, 0, 0, 12, 56, 0, 0, 18,144, 31, 0, 96, /* 0x0a60 */ 124, 0, 0,208,144, 31, 0, 92,129, 63, 0, 92, 85, 41, 15,254,
/* 0x0a70 */ 128, 31, 0, 12, 47,128, 0, 0, 64,158, 0, 16,129, 63, 0, 16, /* 0x0a70 */ 145, 63, 0, 92,129,127, 0, 92, 85,107, 8, 60,145,127, 0, 92,
/* 0x0a80 */ 145, 63, 0,100, 72, 0, 0, 12, 57, 96,255,255,145,127, 0,100, /* 0x0a80 */ 128, 31, 0, 56,129, 63, 0, 92,125, 41, 3,120,145, 63, 0, 92,
/* 0x0a90 */ 129, 63, 0, 40,129, 41, 0, 4,128, 31, 0, 84,124, 0, 72, 80, /* 0x0a90 */ 128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 16, 57, 96, 0, 50,
/* 0x0aa0 */ 128,127, 0, 76,128,159, 0, 72,128,191, 0, 92,128,223, 0, 96, /* 0x0aa0 */ 145,127, 0, 96, 72, 0, 0, 12, 56, 0, 0, 18,144, 31, 0, 96,
/* 0x0ab0 */ 128,255, 0,100,124, 8, 3,120, 75,255,247,209,124,105, 27,120, /* 0x0ab0 */ 128, 31, 0, 12, 47,128, 0, 0, 64,158, 0, 16,129, 63, 0, 16,
/* 0x0ac0 */ 128, 31, 0, 76,127,137, 0, 0, 65,158, 0, 8, 72, 0, 0,200, /* 0x0ac0 */ 145, 63, 0,100, 72, 0, 0, 12, 57, 96,255,255,145,127, 0,100,
/* 0x0ad0 */ 128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 28, 56, 31, 0, 64, /* 0x0ad0 */ 129, 63, 0, 40,129, 41, 0, 4,128, 31, 0, 84,124, 0, 72, 80,
/* 0x0ae0 */ 128,127, 0, 12,124, 4, 3,120,128,191, 0, 24,128,223, 0, 28, /* 0x0ae0 */ 128,127, 0, 76,128,159, 0, 72,128,191, 0, 92,128,223, 0, 96,
/* 0x0af0 */ 75,255,248,205,128, 31, 0, 72,125, 32, 0,208,128, 31, 0, 36, /* 0x0af0 */ 128,255, 0,100,124, 8, 3,120, 75,255,247,129,124,105, 27,120,
/* 0x0b00 */ 124, 0, 0,248,125, 32, 0, 56,144, 31, 0, 84,128, 31, 0, 56, /* 0x0b00 */ 128, 31, 0, 76,127,137, 0, 0, 65,158, 0, 12, 56, 96, 0, 8,
/* 0x0b10 */ 84, 0, 7,188, 47,128, 0, 0, 65,158, 0, 28,128, 31, 0, 76, /* 0x0b10 */ 75,255,248,165,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 28,
/* 0x0b20 */ 129, 63, 0, 72,124, 0, 74, 20,124, 3, 3,120,128,159, 0, 84, /* 0x0b20 */ 56, 31, 0, 64,128,127, 0, 12,124, 4, 3,120,128,191, 0, 24,
/* 0x0b30 */ 75,255,250,149,129, 63, 0, 72,128, 31, 0, 84,125, 41, 2, 20, /* 0x0b30 */ 128,223, 0, 28, 75,255,248,161,128, 31, 0, 72,125, 32, 0,208,
/* 0x0b40 */ 128, 31, 0, 76,124, 0, 74, 20,144, 31, 0, 76,129, 63, 0, 76, /* 0x0b40 */ 128, 31, 0, 36,124, 0, 0,248,125, 32, 0, 56,144, 31, 0, 84,
/* 0x0b50 */ 128, 31, 0, 80,127,137, 0, 64, 64,156, 0, 68,129, 63, 0, 80, /* 0x0b50 */ 128, 31, 0, 56, 84, 0, 7,188, 47,128, 0, 0, 65,158, 0, 28,
/* 0x0b60 */ 128, 31, 0, 76,124, 0, 72, 80,128,127, 0, 76,124, 4, 3,120, /* 0x0b60 */ 128, 31, 0, 76,129, 63, 0, 72,124, 0, 74, 20,124, 3, 3,120,
/* 0x0b70 */ 128,191, 0, 56, 56,192, 0, 50, 56,224,255,255, 57, 0, 0, 0, /* 0x0b70 */ 128,159, 0, 84, 75,255,250,141,129, 63, 0, 72,128, 31, 0, 84,
/* 0x0b80 */ 75,255,247, 9,124,105, 27,120,128, 31, 0, 76,127,137, 0, 0, /* 0x0b80 */ 125, 41, 2, 20,128, 31, 0, 76,124, 0, 74, 20,144, 31, 0, 76,
/* 0x0b90 */ 65,158, 0, 12, 56, 96, 0,127, 75,255,247, 5,129, 63, 0, 40, /* 0x0b90 */ 129, 63, 0, 76,128, 31, 0, 80,127,137, 0, 64, 64,156, 0, 68,
/* 0x0ba0 */ 56, 9, 0, 32,144, 31, 0, 40,129, 63, 0, 52, 56, 9, 0, 1, /* 0x0ba0 */ 129, 63, 0, 80,128, 31, 0, 76,124, 0, 72, 80,128,127, 0, 76,
/* 0x0bb0 */ 144, 31, 0, 52, 75,255,253, 88,128, 31, 0, 32, 47,128, 0, 0, /* 0x0bb0 */ 124, 4, 3,120,128,191, 0, 56, 56,192, 0, 50, 56,224,255,255,
/* 0x0bc0 */ 65,158, 0, 16,129, 63, 0, 32,128, 31, 0, 48,144, 9, 0, 0, /* 0x0bc0 */ 57, 0, 0, 0, 75,255,246,181,124,105, 27,120,128, 31, 0, 76,
/* 0x0bd0 */ 129, 63, 0, 8,129, 41, 0, 24,128, 31, 0, 48,124, 9, 2, 20, /* 0x0bd0 */ 127,137, 0, 0, 65,158, 0, 12, 56, 96, 0, 9, 75,255,247,217,
/* 0x0be0 */ 124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166, /* 0x0be0 */ 129, 63, 0, 40, 56, 9, 0, 32,144, 31, 0, 40,129, 63, 0, 52,
/* 0x0bf0 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,144, /* 0x0bf0 */ 56, 9, 0, 1,144, 31, 0, 52, 75,255,253, 84,128, 31, 0, 32,
/* 0x0c00 */ 124, 8, 2,166,147,225, 0,108,144, 1, 0,116,124, 63, 11,120, /* 0x0c00 */ 47,128, 0, 0, 65,158, 0, 16,129, 63, 0, 32,128, 31, 0, 48,
/* 0x0c10 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,144,223, 0, 20, /* 0x0c10 */ 144, 9, 0, 0,129, 63, 0, 8,129, 41, 0, 24,128, 31, 0, 48,
/* 0x0c20 */ 144,255, 0, 24,145, 31, 0, 28,145, 63, 0, 32,145, 95, 0, 36, /* 0x0c20 */ 124, 9, 2, 20,124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4,
/* 0x0c30 */ 128, 31, 0, 36,124, 0, 0,208,144, 31, 0, 40,128, 31, 0, 36, /* 0x0c30 */ 124, 8, 3,166,131,235,255,252,125, 97, 91,120, 78,128, 0, 32,
/* 0x0c40 */ 47,128, 16, 0, 65,158, 0, 28,128, 31, 0, 36, 61, 32, 0, 1, /* 0x0c40 */ 148, 33,255,144,124, 8, 2,166,147,225, 0,108,144, 1, 0,116,
/* 0x0c50 */ 127,128, 72, 0, 65,158, 0, 12, 56, 96, 0,232, 75,255,246, 65, /* 0x0c50 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,
/* 0x0c60 */ 129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 44,128, 31, 0, 16, /* 0x0c60 */ 144,223, 0, 20,144,255, 0, 24,145, 31, 0, 28,145, 63, 0, 32,
/* 0x0c70 */ 144, 31, 0, 52,129, 63, 0, 8,128, 9, 0, 0,144, 31, 0, 48, /* 0x0c70 */ 145, 95, 0, 36,128, 31, 0, 36,124, 0, 0,208,144, 31, 0, 40,
/* 0x0c80 */ 128, 31, 0, 8,144, 31, 0, 68,128, 31, 0, 12,144, 31, 0, 64, /* 0x0c80 */ 128, 31, 0, 36, 47,128, 16, 0, 65,158, 0, 28,128, 31, 0, 36,
/* 0x0c90 */ 128, 31, 0, 8,144, 31, 0, 60,128, 31, 0, 12,144, 31, 0, 56, /* 0x0c90 */ 61, 32, 0, 1,127,128, 72, 0, 65,158, 0, 12, 56, 96, 0,232,
/* 0x0ca0 */ 56, 31, 0, 64, 57, 63, 0, 48,124, 3, 3,120,125, 36, 75,120, /* 0x0ca0 */ 75,255,245,237,128, 31, 0, 16,144, 31, 0, 52,129, 63, 0, 8,
/* 0x0cb0 */ 128,191, 0, 24, 56,192, 0, 0, 75,255,247, 5,129, 63, 0, 44, /* 0x0cb0 */ 128, 9, 0, 0,144, 31, 0, 48,128, 31, 0, 8,144, 31, 0, 68,
/* 0x0cc0 */ 128,127, 0, 32, 56,128, 0, 3,128,169, 0, 8, 75,255,249, 89, /* 0x0cc0 */ 128, 31, 0, 12,144, 31, 0, 64,128, 31, 0, 8,144, 31, 0, 60,
/* 0x0cd0 */ 129, 63, 0, 16,160, 9, 0, 44, 84, 0, 4, 62,128,127, 0, 32, /* 0x0cd0 */ 128, 31, 0, 12,144, 31, 0, 56, 56, 31, 0, 64, 57, 63, 0, 48,
/* 0x0ce0 */ 56,128, 0, 5,124, 5, 3,120, 75,255,249, 61,129, 63, 0, 16, /* 0x0ce0 */ 124, 3, 3,120,125, 36, 75,120,128,191, 0, 24, 56,192, 0, 0,
/* 0x0cf0 */ 160, 9, 0, 16, 84, 0, 4, 62,144, 31, 0, 72,128, 31, 0, 72, /* 0x0cf0 */ 75,255,246,229,129, 63, 0, 16,129, 41, 0, 28,128, 31, 0,120,
/* 0x0d00 */ 47,128, 0, 3, 64,158, 0,168,129, 63, 0, 16, 56, 0, 0, 2, /* 0x0d00 */ 124, 9, 2, 20,128,127, 0, 32, 56,128, 0, 3,124, 5, 3,120,
/* 0x0d10 */ 176, 9, 0, 16,129, 63, 0, 16,129, 41, 0, 24,128, 31, 0,120, /* 0x0d10 */ 75,255,249, 81,129, 63, 0, 16,160, 9, 0, 44, 84, 0, 4, 62,
/* 0x0d20 */ 124, 9, 2, 20,128,127, 0, 32, 56,128, 0, 9,124, 5, 3,120, /* 0x0d20 */ 128,127, 0, 32, 56,128, 0, 5,124, 5, 3,120, 75,255,249, 53,
/* 0x0d30 */ 75,255,248,245,129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 44, /* 0x0d30 */ 129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 72,129, 63, 0, 16,
/* 0x0d40 */ 56, 0, 0, 0,144, 31, 0, 76,129, 63, 0, 16,160, 9, 0, 44, /* 0x0d40 */ 160, 9, 0, 16, 84, 0, 4, 62,144, 31, 0, 76,128, 31, 0, 76,
/* 0x0d50 */ 84, 9, 4, 62,128, 31, 0, 76,127,137, 0, 64, 64,157, 0, 80, /* 0x0d50 */ 47,128, 0, 3, 64,158, 0,164,129, 63, 0, 16, 56, 0, 0, 2,
/* 0x0d60 */ 129,127, 0, 44,129, 63, 0, 44,129, 41, 0, 8,128, 31, 0,120, /* 0x0d60 */ 176, 9, 0, 16,129,127, 0, 16,129, 63, 0, 16,129, 41, 0, 24,
/* 0x0d70 */ 124, 9, 2, 20,144, 11, 0, 8,129,127, 0, 44,129, 63, 0, 44, /* 0x0d70 */ 128, 31, 0,120,124, 9, 2, 20,144, 11, 0, 24,128,127, 0, 32,
/* 0x0d80 */ 129, 41, 0, 12,128, 31, 0,120,124, 9, 2, 20,144, 11, 0, 12, /* 0x0d80 */ 56,128, 0, 9,124, 5, 3,120, 75,255,248,217, 56, 0, 0, 0,
/* 0x0d90 */ 129, 63, 0, 44, 56, 9, 0, 32,144, 31, 0, 44,129, 63, 0, 76, /* 0x0d90 */ 144, 31, 0, 80,129, 63, 0, 16,160, 9, 0, 44, 84, 9, 4, 62,
/* 0x0da0 */ 56, 9, 0, 1,144, 31, 0, 76, 75,255,255,160, 56, 31, 0, 56, /* 0x0da0 */ 128, 31, 0, 80,127,137, 0, 64, 64,157, 0, 80,129,127, 0, 72,
/* 0x0db0 */ 128,127, 0, 16,124, 4, 3,120, 56,160, 0, 0,128,223, 0, 32, /* 0x0db0 */ 129, 63, 0, 72,129, 41, 0, 8,128, 31, 0,120,124, 9, 2, 20,
/* 0x0dc0 */ 128,255, 0, 24,129, 31, 0, 28, 57, 63, 0,120,129, 95, 0, 40, /* 0x0dc0 */ 144, 11, 0, 8,129,127, 0, 72,129, 63, 0, 72,129, 41, 0, 12,
/* 0x0dd0 */ 75,255,250,149,124, 96, 27,120,144, 31, 0, 76,128, 31, 0, 72, /* 0x0dd0 */ 128, 31, 0,120,124, 9, 2, 20,144, 11, 0, 12,129, 63, 0, 72,
/* 0x0de0 */ 47,128, 0, 3, 65,158, 0, 20,128,127, 0, 32, 56,128, 0, 9, /* 0x0de0 */ 56, 9, 0, 32,144, 31, 0, 72,129, 63, 0, 80, 56, 9, 0, 1,
/* 0x0df0 */ 128,191, 0, 76, 75,255,248, 49, 56, 0, 0, 0,144, 31, 0, 80, /* 0x0df0 */ 144, 31, 0, 80, 75,255,255,160, 56, 31, 0, 56,128,127, 0, 16,
/* 0x0e00 */ 129, 63, 0, 16,160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 80, /* 0x0e00 */ 124, 4, 3,120, 56,160, 0, 0,128,223, 0, 32,128,255, 0, 24,
/* 0x0e10 */ 127,137, 0, 0, 64,157, 0,196,129, 63, 0, 44,128, 9, 0, 0, /* 0x0e10 */ 129, 31, 0, 28, 57, 63, 0,120,129, 95, 0, 40, 75,255,250,137,
/* 0x0e20 */ 47,128, 0, 3, 64,158, 0,152,129, 63, 0, 44,129, 41, 0, 8, /* 0x0e20 */ 124, 96, 27,120,144, 31, 0, 80,128, 31, 0, 76, 47,128, 0, 3,
/* 0x0e30 */ 128, 31, 0,120,124, 9, 2, 20,144, 31, 0, 84,128,127, 0, 84, /* 0x0e30 */ 65,158, 0, 20,128,127, 0, 32, 56,128, 0, 9,128,191, 0, 80,
/* 0x0e40 */ 56,128, 0, 0, 56,160, 0, 0, 75,255,244,101,124, 96, 27,120, /* 0x0e40 */ 75,255,248, 33,129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 72,
/* 0x0e50 */ 144, 31, 0, 88,128, 31, 0, 88, 47,128, 0, 0, 64,156, 0, 8, /* 0x0e50 */ 56, 0, 0, 0,144, 31, 0, 84,129, 63, 0, 16,160, 9, 0, 44,
/* 0x0e60 */ 72, 0, 0, 32,128,127, 0, 88,128,159, 0, 16, 56,160, 2, 0, /* 0x0e60 */ 84, 9, 4, 62,128, 31, 0, 84,127,137, 0, 64, 64,157, 0,216,
/* 0x0e70 */ 75,255,244, 53,124, 96, 27,120, 47,128, 2, 0, 65,158, 0, 12, /* 0x0e70 */ 129, 63, 0, 72,128, 9, 0, 0, 47,128, 0, 3, 64,158, 0,172,
/* 0x0e80 */ 56, 96, 0,127, 75,255,244, 25,128,127, 0, 16, 56,128, 0, 0, /* 0x0e80 */ 129, 63, 0, 72,129, 41, 0, 8,128, 31, 0,120,124, 9, 2, 20,
/* 0x0e90 */ 128,191, 0, 88, 56,192, 0, 0, 56,224, 0, 0, 57, 0, 0, 0, /* 0x0e90 */ 144, 31, 0, 88,128,127, 0, 88, 56,128, 0, 0, 56,160, 0, 0,
/* 0x0ea0 */ 57, 32, 0, 0,129, 95, 0, 40, 75,255,249,189,124, 96, 27,120, /* 0x0ea0 */ 75,255,244, 5,124, 96, 27,120,144, 31, 0, 92,128, 31, 0, 92,
/* 0x0eb0 */ 144, 31, 0, 76,128,127, 0, 88, 75,255,243,253,129, 63, 0, 44, /* 0x0eb0 */ 47,128, 0, 0, 64,156, 0, 12, 56, 96, 0, 18, 75,255,244,249,
/* 0x0ec0 */ 56, 9, 0, 32,144, 31, 0, 44,129, 63, 0, 80, 56, 9, 0, 1, /* 0x0ec0 */ 128,127, 0, 92,128,159, 0, 16, 56,160, 2, 0, 75,255,243,209,
/* 0x0ed0 */ 144, 31, 0, 80, 75,255,255, 44,128, 31, 0, 76,124, 3, 3,120, /* 0x0ed0 */ 124, 96, 27,120, 47,128, 2, 0, 65,158, 0, 12, 56, 96, 0, 19,
/* 0x0ee0 */ 129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166,131,235,255,252, /* 0x0ee0 */ 75,255,244,213,128,127, 0, 16, 56,128, 0, 0,128,191, 0, 92,
/* 0x0ef0 */ 125, 97, 91,120, 78,128, 0, 32 /* 0x0ef0 */ 56,192, 0, 0, 56,224, 0, 0, 57, 0, 0, 0, 57, 63, 0,120,
/* 0x0f00 */ 129, 95, 0, 40, 75,255,249,161,124, 96, 27,120,144, 31, 0, 80,
/* 0x0f10 */ 128,127, 0, 32, 56,128, 0, 7,128,191, 0,120, 75,255,247, 69,
/* 0x0f20 */ 128,127, 0, 92, 75,255,243,137,129, 63, 0, 72, 56, 9, 0, 32,
/* 0x0f30 */ 144, 31, 0, 72,129, 63, 0, 84, 56, 9, 0, 1,144, 31, 0, 84,
/* 0x0f40 */ 75,255,255, 24,128, 31, 0, 80,124, 3, 3,120,129, 97, 0, 0,
/* 0x0f50 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120,
/* 0x0f60 */ 78,128, 0, 32
}; };
+2 -1
View File
@@ -186,6 +186,7 @@ sz_auxv= 2*4
li a3,MAP_PRIVATE | MAP_ANONYMOUS li a3,MAP_PRIVATE | MAP_ANONYMOUS
li a2,PROT_READ | PROT_WRITE | PROT_EXEC // 'fold' will execute here li a2,PROT_READ | PROT_WRITE | PROT_EXEC // 'fold' will execute here
lwz a1,LLENM - LrUNF(r30) lwz a1,LLENM - LrUNF(r30)
li a1,2*4096 // FIXME: .sz_unc
lwz a0,LADRM - LrUNF(r30) lwz a0,LADRM - LrUNF(r30)
li r0,__NR_mmap li r0,__NR_mmap
mr t4,a0 // save address being allocated mr t4,a0 // save address being allocated
@@ -231,7 +232,7 @@ L80:
// blr # goto return address // blr # goto return address
main: main:
////teq r0,r0 // debugging //// teq r0,r0 // debugging
stwu r1,-(SZ_FRAME+32*4)(sp) // allocate space (keeping 0 mod 16), save r1 stwu r1,-(SZ_FRAME+32*4)(sp) // allocate space (keeping 0 mod 16), save r1
stmw r2, SZ_FRAME+2*4-4(sp) // save registers r2 thru r31 stmw r2, SZ_FRAME+2*4-4(sp) // save registers r2 thru r31
mflr r31 // &decompress mflr r31 // &decompress
+30 -29
View File
@@ -86,6 +86,7 @@ SZ_FRAME= SZ_LINKA
#define pag r16 #define pag r16
fold_begin: fold_begin:
//// teq r0,r0 // debugging
call L90 call L90
L90b: L90b:
#include "arch/powerpc/32/bxx.S" #include "arch/powerpc/32/bxx.S"
@@ -97,13 +98,10 @@ L90:
// open /proc/self/exe // open /proc/self/exe
li a1,O_RDONLY li a1,O_RDONLY
la a0,4+ L90a - L90b(r21) // "/proc/self/exe" la a0,4+ L90a - L90b(r21) // "/proc/self/exe"
li r0,SYS_open call open; movr r_fd,a0
sc; movr r_fd,a0
// slide {<<stuff>>,argc,argv,0,env,0,auxv} down with maximum room before strings // slide {<<stuff>>,argc,argv,0,env,0,auxv} down with maximum room before strings
la a1,-4(sp) // src ready for lwzu la a1,-4(sp) // src ready for lwzu
la sp,-(4+ PATH_MAX)(sp) la sp,-(4+ PATH_MAX)(sp)
sub sp,sp,r27 // sp -= PAGE_SIZE
sub sp,sp,r27 // sp -= PAGE_SIZE
la a0,-4(sp) // dst ready for stwu la a0,-4(sp) // dst ready for stwu
la av_lo,-4(av_lo) // &end ready for lwzu la av_lo,-4(av_lo) // &end ready for lwzu
0: // copy upto auxv 0: // copy upto auxv
@@ -127,8 +125,7 @@ L90:
li a2,-1+ PATH_MAX li a2,-1+ PATH_MAX
movr a1,r14 // buffer movr a1,r14 // buffer
la a0,4+ L90a - L90b(r21) // "/proc/self/exe" la a0,4+ L90a - L90b(r21) // "/proc/self/exe"
li r0,SYS_readlink call readlink; la a2,-4(r14) // a0= len; a2= buffer
sc; la a2,-4(r14) // a0= len; a2= buffer
cmpwi a0,0; bgt 0f // success cmpwi a0,0; bgt 0f // success
la a2,L90a - L90b(r21) // " =/proc/self/exe" la a2,L90a - L90b(r21) // " =/proc/self/exe"
li a0,L90 - (4+ L90a) // round_up(4, strlen("/proc/self/exe")) li a0,L90 - (4+ L90a) // round_up(4, strlen("/proc/self/exe"))
@@ -144,29 +141,19 @@ L90:
stbu r0,-1(a0); bdnz 0b stbu r0,-1(a0); bdnz 0b
stw a0,-2*4(av_lo) // &" =<<path>>" for env stw a0,-2*4(av_lo) // &" =<<path>>" for env
subf r0,r27,a2 // -PAGE_SIZE == PAGE_MASK clrrwi a0,a0,2 // word align
and pag, a0,r0 // round down to page boundary xor r0,sp,a1 // parity of length
add pag,pag,r0 // next lower page xor r0,r0,a0 // length vs destination
subf av_lo,av_len,pag // final auxv (stack alignment?) rlwinm r0,r0,0,29,29 // andi r0,r0,1<<(31-29)
// map the first page of /proc/self/exe sub a0,a0,r0
li a5,0 // offset
movr a4,r_fd // slide the rest of the stack up
li a3,MAP_PRIVATE|MAP_FIXED
li a2,PROT_READ
movr a1,r27 // PAGE_SIZE
movr a0,pag // &page
li r0,SYS_mmap
sc // a0= &page
// slide the rest of the stack up to just below the mapped page
movr a1,av_hi movr a1,av_hi
sub av_lo,a0,av_len
0: 0:
lwzu r0,-4(a1); cmpl cr7,a1,sp lwzu r0,-4(a1); cmpl cr7,a1,sp
stwu r0,-4(a0); bgt+ cr7,0b stwu r0,-4(a0); bgt+ cr7,0b
movr sp,a0 movr sp,a0
// close /proc/self/exe
movr a0,r_fd
li r0,SYS_close
sc
li r0,0 li r0,0
r_reloc= 32 - 1 # use a slot in register save area r_reloc= 32 - 1 # use a slot in register save area
@@ -179,7 +166,7 @@ r_reloc= 32 - 1 # use a slot in register save area
and r30,a5,r0 // r30= &this_page and r30,a5,r0 // r30= &this_page
mr a4,r31 // &decompress: f_expand mr a4,r31 // &decompress: f_expand
la sp,-OVERHEAD(sp) // -SZ_FRAME + &Elf32_Ehdr temporary space stwu sp,-(SZ_FRAME+OVERHEAD)(sp) // allocate this frame
lwz a1,-2*4(r31) // sz_pack2 == #bytes which preceed -2*4(r31) lwz a1,-2*4(r31) // sz_pack2 == #bytes which preceed -2*4(r31)
subf r29,a1,r31 // 2*4+ (char *)&our_Elf32_Ehdr subf r29,a1,r31 // 2*4+ (char *)&our_Elf32_Ehdr
addi r29,r29,-2*4 // &our_Elf32_Ehdr addi r29,r29,-2*4 // &our_Elf32_Ehdr
@@ -188,21 +175,33 @@ r_reloc= 32 - 1 # use a slot in register save area
add a0,r29,r26 // &b_info add a0,r29,r26 // &b_info
sub a1,a1,r26 // total_size sub a1,a1,r26 // total_size
la a2,SZ_FRAME(sp) // &Elf32_Ehdr temporary space la a2,SZ_FRAME(sp) // &Elf32_Ehdr temporary space
stwu sp,-(SZ_FRAME+OVERHEAD)(sp)
lwz a3,sz_unc(a0) // sz_elf_headers lwz a3,sz_unc(a0) // sz_elf_headers
call upx_main // Out: a0= entry call upx_main // Out: a0= entry
// entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2, sz_ehdr a3, // entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2, sz_ehdr a3,
// f_exp a4, f_unf a5, Elf32_auxv_t *a6, page_size a7, reloc ARG9) // f_exp a4, f_unf a5, Elf32_auxv_t *a6, page_size a7, reloc ARG9)
la sp,SZ_FRAME+OVERHEAD(sp) // deallocate this frame
mr r31,a0 // save &entry mr r31,a0 // save &entry
// map the first page of /proc/self/exe
li a5,0 // offset
movr a4,r_fd
li a3,MAP_PRIVATE
li a2,PROT_READ
movr a1,r27 // PAGE_SIZE
li a0,0 // kernel chooses where
call mmap
// close /proc/self/exe
movr a0,r_fd
call close
movr a0,adru movr a0,adru
movr a2,lenu movr a1,lenu
call munmap // unmap compressed program; /proc/self/exe disappears call munmap // unmap compressed program; /proc/self/exe disappears
mtlr r31 // entry address mtlr r31 // entry address
lmw r2,OVERHEAD+SZ_FRAME+2*4-4(sp) // restore registers r2 thru r31 lmw r2,SZ_FRAME+2*4-4(sp) // restore registers r2 thru r31
la sp,OVERHEAD+SZ_FRAME+32*4(sp) // deallocate space la sp, SZ_FRAME+32*4(sp) // deallocate outer frame
ret // enter /lib/ld.so.1 ret // enter /lib/ld.so.1
SYS_exit= 1 SYS_exit= 1
@@ -229,6 +228,8 @@ no_fail:
exit: .globl exit exit: .globl exit
li r0,SYS_exit; b 5f li r0,SYS_exit; b 5f
readlink: .globl readlink
li r0,SYS_readlink; 5: b 5f
read: .globl read read: .globl read
li r0,SYS_read; 5: b 5f li r0,SYS_read; 5: b 5f
open: .globl open open: .globl open
+194 -14
View File
@@ -34,6 +34,49 @@
#undef PAGE_MASK #undef PAGE_MASK
#undef PAGE_SIZE #undef PAGE_SIZE
#ifndef DEBUG //{
#define DEBUG 0
#endif //}
#if !DEBUG //{
#define DPRINTF(fmt, args...) /*empty*/
#else //}{
// DPRINTF is defined as an expression using "({ ... })"
// so that DPRINTF can be invoked inside an expression,
// and then followed by a comma to ignore the return value.
// The only complication is that percent and backslash
// must be doubled in the format string, because the format
// string is processd twice: once at compile-time by 'asm'
// to produce the assembled value, and once at runtime to use it.
#if defined(__powerpc__) //{
#define DPRINTF(fmt, args...) ({ \
char const *r_fmt; \
asm("bl 0f; .string \"" fmt "\"; .balign 4; 0: mflr %0" \
/*out*/ : "=r"(r_fmt) \
/* in*/ : \
/*und*/ : "lr"); \
dprintf(r_fmt, args); \
})
#elif defined(__x86_64) //}{
#define DPRINTF(fmt, args...) ({ \
char const *r_fmt; \
asm("call 0f; .asciz \"" fmt "\"; 0: pop %0" \
/*out*/ : "=r"(r_fmt) ); \
dprintf(r_fmt, args); \
})
#elif defined(__AARCH64EL__) //}{
#define DPRINTF(fmt, args...) ({ \
char const *r_fmt; \
asm("bl 0f; .string \"" fmt "\"; .balign 4; 0: mov %0,x30" \
/*out*/ : "=r"(r_fmt) \
/* in*/ : \
/*und*/ : "x30"); \
dprintf(r_fmt, args); \
})
#endif //}
static int dprintf(char const *fmt, ...); // forward
#endif /*}*/
/************************************************************************* /*************************************************************************
// configuration section // configuration section
@@ -61,6 +104,7 @@ xread(Extent *x, char *buf, size_t count)
{ {
char *p=x->buf, *q=buf; char *p=x->buf, *q=buf;
size_t j; size_t j;
DPRINTF("xread %%p(%%x %%p) %%p %%x\\n", x, x->size, x->buf, buf, count);
if (x->size < count) { if (x->size < count) {
exit(127); exit(127);
} }
@@ -76,7 +120,7 @@ xread(Extent *x, char *buf, size_t count)
// util // util
**************************************************************************/ **************************************************************************/
#if 1 //{ save space #if 0 //{ save space
#define ERR_LAB error: exit(127); #define ERR_LAB error: exit(127);
#define err_exit(a) goto error #define err_exit(a) goto error
#else //}{ save debugging time #else //}{ save debugging time
@@ -84,6 +128,7 @@ xread(Extent *x, char *buf, size_t count)
static void static void
err_exit(int a) err_exit(int a)
{ {
DPRINTF("err_exit %%x\\n", a);
(void)a; // debugging convenience (void)a; // debugging convenience
exit(127); exit(127);
} }
@@ -111,6 +156,8 @@ unpackExtent(
f_unfilter *f_unf f_unfilter *f_unf
) )
{ {
DPRINTF("unpackExtent in=%%p(%%x %%p) out=%%p(%%x %%p) %%p %%p\\n",
xi, xi->size, xi->buf, xo, xo->size, xo->buf, f_decompress, f_unf);
while (xo->size) { while (xo->size) {
struct b_info h; struct b_info h;
// Note: if h.sz_unc == h.sz_cpr then the block was not // Note: if h.sz_unc == h.sz_cpr then the block was not
@@ -131,6 +178,7 @@ ERR_LAB
} }
if (h.sz_cpr > h.sz_unc if (h.sz_cpr > h.sz_unc
|| h.sz_unc > xo->size ) { || h.sz_unc > xo->size ) {
DPRINTF("sz_cpr=%%x sz_unc=%%x xo->size=%%x\\n", h.sz_cpr, h.sz_unc, xo->size);
err_exit(5); err_exit(5);
} }
// Now we have: // Now we have:
@@ -171,8 +219,11 @@ upx_bzero(char *p, size_t len)
static void static void
auxv_up(Elf32_auxv_t *av, unsigned type, unsigned const value) auxv_up(Elf32_auxv_t *av, unsigned type, unsigned const value)
{ {
if (av) if (!av)
return;
DPRINTF("\\nauxv_up av=%%p %%d %%p\\n", av, type, value);
for (;; ++av) { for (;; ++av) {
DPRINTF(" %%d %%p\\n", av->a_type, av->a_un.a_val);
if (av->a_type==type || (av->a_type==AT_IGNORE && type!=AT_NULL)) { if (av->a_type==type || (av->a_type==AT_IGNORE && type!=AT_NULL)) {
av->a_type = type; av->a_type = type;
av->a_un.a_val = value; av->a_un.a_val = value;
@@ -242,6 +293,7 @@ do_xmap(
unsigned long const reloc = xfind_pages( unsigned long const reloc = xfind_pages(
((ET_DYN!=ehdr->e_type) ? MAP_FIXED : 0), phdr, ehdr->e_phnum, ((ET_DYN!=ehdr->e_type) ? MAP_FIXED : 0), phdr, ehdr->e_phnum,
&v_brk, PAGE_MASK); &v_brk, PAGE_MASK);
DPRINTF("do_xmap reloc=%%p", reloc);
int j; int j;
for (j=0; j < ehdr->e_phnum; ++phdr, ++j) for (j=0; j < ehdr->e_phnum; ++phdr, ++j)
if (xi && PT_PHDR==phdr->p_type) { if (xi && PT_PHDR==phdr->p_type) {
@@ -312,13 +364,10 @@ void *upx_main(
Elf32_Addr reloc // IN OUT; value result for ET_DYN Elf32_Addr reloc // IN OUT; value result for ET_DYN
) )
{ {
ACC_UNUSED(sz_ehdr);
int const page_mask = -page_size; int const page_mask = -page_size;
if ((page_size != 4096) && (page_size != 65536)) if ((page_size != 4096) && (page_size != 65536))
exit(232); exit(232);
ACC_UNUSED(sz_ehdr);
Elf32_Phdr *phdr = (Elf32_Phdr *)(1+ ehdr);
Extent xo, xi1, xi2; Extent xo, xi1, xi2;
xo.buf = (char *)ehdr; xo.buf = (char *)ehdr;
@@ -329,18 +378,19 @@ void *upx_main(
// ehdr = Uncompress Ehdr and Phdrs // ehdr = Uncompress Ehdr and Phdrs
unpackExtent(&xi2, &xo, f_decompress, 0); // never filtered? unpackExtent(&xi2, &xo, f_decompress, 0); // never filtered?
DPRINTF("upx_main1 .e_entry=%%p reloc=%%p\\n", ehdr->e_entry, reloc);
// AT_PHDR.a_un.a_val is set again by do_xmap if PT_PHDR is present. // AT_PHDR.a_un.a_val is set again by do_xmap if PT_PHDR is present.
auxv_up(av, AT_PHDR , (unsigned)phdr->p_vaddr); auxv_up(av, AT_PHDR , reloc + ehdr->e_phoff);
auxv_up(av, AT_PHNUM , ehdr->e_phnum); auxv_up(av, AT_PHNUM, ehdr->e_phnum);
//auxv_up(av, AT_PHENT , ehdr->e_phentsize); /* this can never change */ //auxv_up(av, AT_PHENT , ehdr->e_phentsize); /* this can never change */
//auxv_up(av, AT_PAGESZ, PAGE_SIZE); /* ld-linux.so.2 does not need this */ //auxv_up(av, AT_PAGESZ, PAGE_SIZE); /* ld-linux.so.2 does not need this */
Elf32_Phdr *phdr = (Elf32_Phdr *)(1+ ehdr);
unsigned const orig_e_type = ehdr->e_type; unsigned const orig_e_type = ehdr->e_type;
if (ET_DYN==orig_e_type /*&& phdr->p_vaddr==0*/) { // -fpie /*FIXME: and not pre-linked*/ if (ET_DYN==orig_e_type /*&& phdr->p_vaddr==0*/) { // -pie /*FIXME: and not pre-linked*/
// Unpacked must start at same place as packed, so that brk(0) works. // Unpacked must start at same place as packed, so that brk(0) works.
ehdr->e_type = ET_EXEC; ehdr->e_type = ET_EXEC;
auxv_up(av, AT_ENTRY, ehdr->e_entry + reloc); auxv_up(av, AT_ENTRY, ehdr->e_entry += reloc);
phdr = (Elf32_Phdr *)(1+ ehdr);
unsigned j; unsigned j;
for (j=0; j < ehdr->e_phnum; ++phdr, ++j) { for (j=0; j < ehdr->e_phnum; ++phdr, ++j) {
phdr->p_vaddr += reloc; phdr->p_vaddr += reloc;
@@ -348,13 +398,16 @@ void *upx_main(
} }
} }
Elf32_Addr entry = do_xmap(ehdr, &xi1, 0, av, f_decompress, f_unf, &reloc, page_mask); // "rewind" // De-compress Ehdr again into actual position, then de-compress the rest.
Elf32_Addr entry = do_xmap(ehdr, &xi1, 0, av, f_decompress, f_unf, &reloc, page_mask);
DPRINTF("upx_main2 entry=%%p reloc=%%p\\n", entry, reloc);
if (ET_DYN!=orig_e_type) { if (ET_DYN!=orig_e_type) {
auxv_up(av, AT_ENTRY , entry); auxv_up(av, AT_ENTRY , entry);
} }
{ // Map PT_INTERP program interpreter { // Map PT_INTERP program interpreter
int j; phdr = (Elf32_Phdr *)(1+ ehdr);
unsigned j;
for (j=0; j < ehdr->e_phnum; ++phdr, ++j) if (PT_INTERP==phdr->p_type) { for (j=0; j < ehdr->e_phnum; ++phdr, ++j) if (PT_INTERP==phdr->p_type) {
char const *const iname = reloc + (char const *)phdr->p_vaddr; char const *const iname = reloc + (char const *)phdr->p_vaddr;
int const fdi = open(iname, O_RDONLY, 0); int const fdi = open(iname, O_RDONLY, 0);
@@ -365,7 +418,8 @@ void *upx_main(
ERR_LAB ERR_LAB
err_exit(19); err_exit(19);
} }
entry = do_xmap(ehdr, 0, fdi, 0, 0, 0, 0, page_mask); entry = do_xmap(ehdr, 0, fdi, 0, 0, 0, &reloc, page_mask);
auxv_up(av, AT_BASE, reloc); // musl
close(fdi); close(fdi);
} }
} }
@@ -373,4 +427,130 @@ ERR_LAB
return (void *)entry; return (void *)entry;
} }
#if DEBUG //{
#if defined(__powerpc__) //{
#define __NR_write 4
ssize_t
write(int fd, void const *ptr, size_t len)
{
register int sys asm("r0") = __NR_write;
register int a0 asm("r3") = fd;
register void const *a1 asm("r4") = ptr;
register size_t a2 asm("r5") = len;
__asm__ __volatile__("sc"
: "+r"(sys), "+r"(a0), "+r"(a1), "+r"(a2)
:
: "r6", "r7", "r8", "r9", "r10", "r11", "r12", "r13"
);
return a0;
}
#endif //}
static int
unsimal(unsigned x, char *ptr, int n)
{
unsigned m = 10;
while (10 <= (x / m)) m *= 10;
while (10 <= x) {
unsigned d = x / m;
x -= m * d;
m /= 10;
ptr[n++] = '0' + d;
}
ptr[n++] = '0' + x;
return n;
}
static int
decimal(int x, char *ptr, int n)
{
if (x < 0) {
x = -x;
ptr[n++] = '-';
}
return unsimal(x, ptr, n);
}
static int
heximal(unsigned long x, char *ptr, int n)
{
unsigned j = -1+ 2*sizeof(unsigned long);
unsigned long m = 0xful << (4 * j);
for (; j; --j, m >>= 4) { // omit leading 0 digits
if (m & x) break;
}
for (; m; --j, m >>= 4) {
unsigned d = 0xf & (x >> (4 * j));
ptr[n++] = ((10<=d) ? ('a' - 10) : '0') + d;
}
return n;
}
#define va_arg __builtin_va_arg
#define va_end __builtin_va_end
#define va_list __builtin_va_list
#define va_start __builtin_va_start
static int
dprintf(char const *fmt, ...)
{
int n= 0;
char const *literal = 0; // NULL
char buf[24]; // ~0ull == 18446744073709551615 ==> 20 chars
va_list va; va_start(va, fmt);
for (;;) {
char c = *fmt++;
if (!c) { // end of fmt
if (literal) {
goto finish;
}
break; // goto done
}
if ('%'!=c) {
if (!literal) {
literal = fmt; // 1 beyond start of literal
}
continue;
}
// '%' == c
if (literal) {
finish:
n += write(2, -1+ literal, fmt - literal);
literal = 0; // NULL
if (!c) { // fmt already ended
break; // goto done
}
}
switch (c= *fmt++) { // deficiency: does not handle _long_
default: { // un-implemented conversion
n+= write(2, -1+ fmt, 1);
} break;
case 0: { // fmt ends with "%\0" ==> ignore
goto done;
} break;
case 'u': {
n+= write(2, buf, unsimal(va_arg(va, unsigned), buf, 0));
} break;
case 'd': {
n+= write(2, buf, decimal(va_arg(va, int), buf, 0));
} break;
case 'p': {
buf[0] = '0';
buf[1] = 'x';
n+= write(2, buf, heximal((unsigned long)va_arg(va, void *), buf, 2));
} break;
case 'x': {
buf[0] = '0';
buf[1] = 'x';
n+= write(2, buf, heximal(va_arg(va, int), buf, 2));
} break;
} // 'switch'
}
done:
va_end(va);
return n;
}
#endif //}
/* vim:set ts=4 sw=4 et: */ /* vim:set ts=4 sw=4 et: */
@@ -14,7 +14,7 @@ Idx Name Size VMA LMA File off Algn Flags
9 NRV_TAIL 0000001c 00000000 00000000 00001788 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 00000000 00000000 00001788 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 000017a4 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 00000000 00000000 000017a4 2**0 CONTENTS, READONLY
11 ELFMAINY 00000022 00000000 00000000 000017c8 2**0 CONTENTS, RELOC, READONLY 11 ELFMAINY 00000022 00000000 00000000 000017c8 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000138 00000000 00000000 000017ea 2**0 CONTENTS, RELOC, READONLY 12 ELFMAINZ 0000013c 00000000 00000000 000017ea 2**0 CONTENTS, RELOC, READONLY
SYMBOL TABLE: SYMBOL TABLE:
00000000 l d LZMA_DEC30 00000000 LZMA_DEC30 00000000 l d LZMA_DEC30 00000000 LZMA_DEC30
00000000 l d NRV_TAIL 00000000 NRV_TAIL 00000000 l d NRV_TAIL 00000000 NRV_TAIL
@@ -37,7 +37,7 @@ SYMBOL TABLE:
RELOCATION RECORDS FOR [ELFMAINX]: RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000 R_PPC_REL24 ELFMAINZ+0x00000118 00000000 R_PPC_REL24 ELFMAINZ+0x0000011c
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -61,8 +61,8 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]: RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
000000a8 R_PPC_REL14 ELFMAINY 000000ac R_PPC_REL14 ELFMAINY
00000128 R_PPC_ADDR32 ADRM 0000012c R_PPC_ADDR32 ADRM
0000012c R_PPC_ADDR32 LENM 00000130 R_PPC_ADDR32 LENM
00000130 R_PPC_ADDR32 LENU 00000134 R_PPC_ADDR32 LENU
00000134 R_PPC_ADDR32 O_BINFO 00000138 R_PPC_ADDR32 O_BINFO
+19 -18
View File
@@ -9,30 +9,31 @@ Linker script and memory map
TARGET(elf32-powerpc) TARGET(elf32-powerpc)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc) 0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0xe78 .text 0x0000000000100080 0xee4
*(.text) *(.text)
.text 0x0000000000100080 0x254 tmp/powerpc-linux.elf-fold.o .text 0x0000000000100080 0x24c tmp/powerpc-linux.elf-fold.o
0x00000000001002c4 munmap 0x00000000001002bc munmap
0x0000000000100288 mmap 0x0000000000100294 readlink
0x00000000001002a4 read 0x0000000000100278 mmap
0x000000000010029c exit 0x000000000010029c read
0x00000000001002cc brk 0x000000000010028c exit
0x00000000001002ac open 0x00000000001002c4 brk
0x00000000001002bc mprotect 0x00000000001002a4 open
0x00000000001002b4 close 0x00000000001002b4 mprotect
.text 0x00000000001002d4 0xc24 tmp/powerpc-linux.elf-main.o 0x00000000001002ac close
0x0000000000100bfc upx_main .text 0x00000000001002cc 0xc98 tmp/powerpc-linux.elf-main.o
0x0000000000100c40 upx_main
*(.data) *(.data)
.data 0x0000000000100ef8 0x0 tmp/powerpc-linux.elf-fold.o .data 0x0000000000100f64 0x0 tmp/powerpc-linux.elf-fold.o
.data 0x0000000000100ef8 0x0 tmp/powerpc-linux.elf-main.o .data 0x0000000000100f64 0x0 tmp/powerpc-linux.elf-main.o
.data .data
.bss 0x0000000000100ef8 0x0 .bss 0x0000000000100f64 0x0
.bss 0x0000000000100ef8 0x0 tmp/powerpc-linux.elf-fold.o .bss 0x0000000000100f64 0x0 tmp/powerpc-linux.elf-fold.o
.bss 0x0000000000100ef8 0x0 tmp/powerpc-linux.elf-main.o .bss 0x0000000000100f64 0x0 tmp/powerpc-linux.elf-main.o
.rela.dyn 0x0000000000100ef8 0x0 .rela.dyn 0x0000000000100f64 0x0
.rela.text 0x0000000000000000 0x0 tmp/powerpc-linux.elf-fold.o .rela.text 0x0000000000000000 0x0 tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-fold.o LOAD tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-main.o LOAD tmp/powerpc-linux.elf-main.o