mirror of
https://github.com/upx/upx.git
synced 2025-02-17 06:38:06 +00:00
mipsel stub escape hatch for munmap
This commit is contained in:
parent
3ebf93e03d
commit
81928d4ab1
@ -1615,12 +1615,9 @@ void PackLinuxElf32mipsel::defineSymbols(Filter const * /*ft*/)
|
||||
// if adrm==adrc, and otherwise uses actual sz_pack2 to compute cntc.
|
||||
//linker->defineSymbol("CNTC", cntc); // count for copy
|
||||
|
||||
linker->defineSymbol("LENU", lenu); // len for unmap
|
||||
linker->defineSymbol("ADRC", adrc); // addr for copy
|
||||
linker->defineSymbol("LENU", lenu); // len for unmap
|
||||
linker->defineSymbol("ADRU", adru); // addr for unmap
|
||||
#define EI_NIDENT 16 /* <elf.h> */
|
||||
linker->defineSymbol("JMPU", EI_NIDENT -4 + lo_va_user); // unmap trampoline
|
||||
#undef EI_NIDENT
|
||||
linker->defineSymbol("LENM", lenm); // len for map
|
||||
linker->defineSymbol("ADRM", adrm); // addr for map
|
||||
|
||||
|
@ -29,8 +29,8 @@
|
||||
|
||||
|
||||
#define STUB_ARM_LINUX_ELF_FOLD_SIZE 2104
|
||||
#define STUB_ARM_LINUX_ELF_FOLD_ADLER32 0x06005e0b
|
||||
#define STUB_ARM_LINUX_ELF_FOLD_CRC32 0x847f2740
|
||||
#define STUB_ARM_LINUX_ELF_FOLD_ADLER32 0xc5905322
|
||||
#define STUB_ARM_LINUX_ELF_FOLD_CRC32 0x0ac8cffc
|
||||
|
||||
unsigned char stub_arm_linux_elf_fold[2104] = {
|
||||
127, 69, 76, 70, 1, 1, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 0 */
|
||||
@ -102,67 +102,67 @@ unsigned char stub_arm_linux_elf_fold[2104] = {
|
||||
0, 80,160,227, 34, 48,140,226, 4, 0,160,225, 0,192,224,227, /* 0x 420 */
|
||||
36, 16,157,229, 5, 32,160,225, 0,192,141,229, 4, 80,141,229, /* 0x 430 */
|
||||
75,255,255,235, 52, 48,160,227, 0,176,100,224,155, 3, 3,224, /* 0x 440 */
|
||||
28, 0,141,229, 32, 48,141,229, 24, 80,141,229,126, 0, 0,234, /* 0x 450 */
|
||||
0, 48,150,229, 6, 0, 83,227, 5, 0, 0, 26, 8, 32,150,229, /* 0x 460 */
|
||||
8, 0,157,229, 2, 32,139,224, 3, 16,160,227, 69,255,255,235, /* 0x 470 */
|
||||
113, 0, 0,234, 1, 0, 83,227,111, 0, 0, 26, 24, 48,150,229, /* 0x 480 */
|
||||
68, 34,159,229, 7, 48, 3,226, 3, 49,160,225, 50, 35,160,225, /* 0x 490 */
|
||||
8, 48,150,229, 3,144,139,224, 12, 48,157,229, 16,224,150,229, /* 0x 4a0 */
|
||||
9, 26,160,225, 0, 0, 83,227, 33, 26,160,225, 4,192,150,229, /* 0x 4b0 */
|
||||
7, 80, 2,226, 20, 32,150,229, 9,128, 97,224, 16, 64,157, 5, /* 0x 4c0 */
|
||||
1,112,142,224, 20, 32,141,229, 0, 64,224, 19, 12,192, 97,224, /* 0x 4d0 */
|
||||
5, 32,160, 1, 18, 48,160, 3, 2, 32,133, 19, 50, 48,160, 19, /* 0x 4e0 */
|
||||
8, 0,160,225, 7, 16,160,225, 40,224,141,229, 16, 16,141,232, /* 0x 4f0 */
|
||||
44,144,141,229, 26,255,255,235, 0, 0, 88,225, 59, 0, 0, 26, /* 0x 500 */
|
||||
12, 48,157,229, 0, 0, 83,227, 6, 0, 0, 10, 88, 16,157,229, /* 0x 510 */
|
||||
4, 48, 21,226, 1, 48,160, 17, 12, 0,157,229, 40, 16,141,226, /* 0x 520 */
|
||||
16, 32,157,229, 63,255,255,235, 0, 48,103,226, 3, 74,160,225, /* 0x 530 */
|
||||
2, 0, 21,227, 36, 74,160,225, 7, 0, 0, 10, 0, 0, 84,227, /* 0x 540 */
|
||||
5, 0, 0, 10, 7, 16,136,224, 4, 32,160,225, 0, 48,160,227, /* 0x 550 */
|
||||
1, 32, 82,226, 1, 48,193,228,251,255,255, 26, 12, 32,157,229, /* 0x 560 */
|
||||
0, 0, 82,227, 35, 0, 0, 10, 0, 48,150,229, 1, 0, 83,227, /* 0x 570 */
|
||||
24, 0, 0, 26, 24, 48,150,229, 1, 0, 19,227, 21, 0, 0, 10, /* 0x 580 */
|
||||
20, 32,150,229, 16, 48,150,229, 3, 0, 82,225, 8, 16,150,229, /* 0x 590 */
|
||||
70, 0, 0, 26, 1, 48,130,224, 11, 32,131,224, 0, 48, 98,226, /* 0x 5a0 */
|
||||
3, 58,160,225, 35, 58,160,225, 7, 0, 83,227, 63, 0, 0,154, /* 0x 5b0 */
|
||||
24, 49,159,229, 0, 48,130,229, 20, 49,159,229, 4, 48,130,229, /* 0x 5c0 */
|
||||
1, 0, 0,234, 0, 0, 82,227, 2, 0, 0, 10, 8, 0,157,229, /* 0x 5d0 */
|
||||
0, 16,160,227,235,254,255,235, 8, 0,160,225, 7, 16,160,225, /* 0x 5e0 */
|
||||
5, 32,160,225,220,254,255,235, 0, 0, 80,227, 1, 0, 0, 10, /* 0x 5f0 */
|
||||
127, 0,160,227,203,254,255,235, 20, 32,157,229, 4, 48,135,224, /* 0x 600 */
|
||||
2, 16,137,224, 3, 64,136,224, 1, 0, 84,225, 10, 0, 0, 42, /* 0x 610 */
|
||||
0,192,224,227, 0,192,141,229, 1, 16,100,224, 1,192,140,226, /* 0x 620 */
|
||||
5, 32,160,225, 4, 0,160,225, 50, 48,160,227, 4,192,141,229, /* 0x 630 */
|
||||
203,254,255,235, 0, 0, 84,225,236,255,255, 26, 24, 48,157,229, /* 0x 640 */
|
||||
1, 48,131,226, 24, 48,141,229, 32, 96,134,226,188, 50,218,225, /* 0x 650 */
|
||||
24, 16,157,229, 3, 0, 81,225,124,255,255,186, 12, 32,157,229, /* 0x 660 */
|
||||
0, 0, 82,227, 4, 0, 0, 26, 16, 0,157,229,180,254,255,235, /* 0x 670 */
|
||||
0, 0, 80,227,221,255,255, 26, 5, 0, 0,234,176, 49,218,225, /* 0x 680 */
|
||||
32, 96,134,226, 28, 0,141,229, 32, 48,141,229, 24, 80,141,229, /* 0x 450 */
|
||||
130, 0, 0,234, 12, 16,157,229, 0, 0, 81,227, 8, 0, 0, 10, /* 0x 460 */
|
||||
32, 48, 22,229, 6, 0, 83,227, 5, 0, 0, 26, 24, 32, 22,229, /* 0x 470 */
|
||||
8, 0,157,229, 2, 32,139,224, 3, 16,160,227, 65,255,255,235, /* 0x 480 */
|
||||
114, 0, 0,234, 32, 48, 22,229, 1, 0, 83,227,111, 0, 0, 26, /* 0x 490 */
|
||||
8, 48, 22,229, 48, 34,159,229, 7, 48, 3,226, 3, 49,160,225, /* 0x 4a0 */
|
||||
50, 35,160,225, 24, 48, 22,229, 3,144,139,224, 12, 48,157,229, /* 0x 4b0 */
|
||||
16,224, 22,229, 9, 26,160,225, 0, 0, 83,227, 33, 26,160,225, /* 0x 4c0 */
|
||||
28,192, 22,229, 7, 80, 2,226, 12, 32, 22,229, 9,128, 97,224, /* 0x 4d0 */
|
||||
16, 64,157, 5, 1,112,142,224, 20, 32,141,229, 0, 64,224, 19, /* 0x 4e0 */
|
||||
12,192, 97,224, 5, 32,160, 1, 18, 48,160, 3, 2, 32,133, 19, /* 0x 4f0 */
|
||||
50, 48,160, 19, 8, 0,160,225, 7, 16,160,225, 40,224,141,229, /* 0x 500 */
|
||||
16, 16,141,232, 44,144,141,229, 21,255,255,235, 0, 0, 88,225, /* 0x 510 */
|
||||
59, 0, 0, 26, 12, 48,157,229, 0, 0, 83,227, 6, 0, 0, 10, /* 0x 520 */
|
||||
88, 16,157,229, 4, 48, 21,226, 1, 48,160, 17, 12, 0,157,229, /* 0x 530 */
|
||||
40, 16,141,226, 16, 32,157,229, 58,255,255,235, 0, 48,103,226, /* 0x 540 */
|
||||
3, 74,160,225, 2, 0, 21,227, 36, 74,160,225, 7, 0, 0, 10, /* 0x 550 */
|
||||
0, 0, 84,227, 5, 0, 0, 10, 7, 16,136,224, 4, 32,160,225, /* 0x 560 */
|
||||
0, 48,160,227, 1, 32, 82,226, 1, 48,193,228,251,255,255, 26, /* 0x 570 */
|
||||
12, 32,157,229, 0, 0, 82,227, 35, 0, 0, 10, 32, 48, 22,229, /* 0x 580 */
|
||||
1, 0, 83,227, 24, 0, 0, 26, 8, 48, 22,229, 1, 0, 19,227, /* 0x 590 */
|
||||
21, 0, 0, 10, 12, 32, 22,229, 16, 48, 22,229, 3, 0, 82,225, /* 0x 5a0 */
|
||||
24, 16, 22,229, 65, 0, 0, 26, 1, 48,130,224, 11, 32,131,224, /* 0x 5b0 */
|
||||
0, 48, 98,226, 3, 58,160,225, 35, 58,160,225, 7, 0, 83,227, /* 0x 5c0 */
|
||||
58, 0, 0,154, 4, 49,159,229, 0, 48,130,229, 0, 49,159,229, /* 0x 5d0 */
|
||||
4, 48,130,229, 1, 0, 0,234, 0, 0, 82,227, 2, 0, 0, 10, /* 0x 5e0 */
|
||||
8, 0,157,229, 0, 16,160,227,230,254,255,235, 8, 0,160,225, /* 0x 5f0 */
|
||||
7, 16,160,225, 5, 32,160,225,215,254,255,235, 0, 0, 80,227, /* 0x 600 */
|
||||
1, 0, 0, 10,127, 0,160,227,198,254,255,235, 20, 32,157,229, /* 0x 610 */
|
||||
4, 48,135,224, 2, 16,137,224, 3, 64,136,224, 1, 0, 84,225, /* 0x 620 */
|
||||
10, 0, 0, 42, 0,192,224,227, 0,192,141,229, 1, 16,100,224, /* 0x 630 */
|
||||
1,192,140,226, 5, 32,160,225, 4, 0,160,225, 50, 48,160,227, /* 0x 640 */
|
||||
4,192,141,229,198,254,255,235, 0, 0, 84,225,236,255,255, 26, /* 0x 650 */
|
||||
24, 48,157,229, 1, 48,131,226, 24, 48,141,229, 32, 96,134,226, /* 0x 660 */
|
||||
188, 50,218,225, 24, 16,157,229, 3, 0, 81,225,120,255,255,186, /* 0x 670 */
|
||||
12, 32,157,229, 0, 0, 82,227, 5, 0, 0, 10,176, 49,218,225, /* 0x 680 */
|
||||
3, 0, 83,227, 28, 48,157, 21, 36, 16,157, 21, 1, 0,131, 16, /* 0x 690 */
|
||||
173,254,255, 27, 84, 32,157,229, 0, 0, 82,227, 0,176,130, 21, /* 0x 6a0 */
|
||||
24, 0,154,229, 0, 0,139,224, 48,208,141,226,240,143,189,232, /* 0x 6b0 */
|
||||
4, 48,150,229, 32, 32,157,229, 0, 0, 83,227, 2, 48,129,224, /* 0x 6c0 */
|
||||
8, 32,131,226,185,255,255, 10,189,255,255,234, 64, 98, 81,115, /* 0x 6d0 */
|
||||
28, 48, 22,229, 32, 32,157,229, 0, 0, 83,227, 2, 48,129,224, /* 0x 6c0 */
|
||||
8, 32,131,226,190,255,255, 10,194,255,255,234, 64, 98, 81,115, /* 0x 6d0 */
|
||||
91, 0,144,239, 14,240,160,225,240, 71, 45,233, 12,208, 77,226, /* 0x 6e0 */
|
||||
52,112,141,226, 0, 80,160,225, 1, 96,160,225, 3,160,160,225, /* 0x 6f0 */
|
||||
7, 0,160,225, 0, 48,160,227, 44, 16,141,226, 48,144,157,229, /* 0x 700 */
|
||||
2,128,160,225, 52, 64,157,229,198,254,255,235, 56, 48,157,229, /* 0x 710 */
|
||||
5, 16,160,227, 3, 48,100,224,188, 34,217,225, 5, 0,160,225, /* 0x 720 */
|
||||
56, 48,141,229, 52, 96,141,229,150,254,255,235, 5, 0,160,225, /* 0x 730 */
|
||||
4, 16,160,227,186, 34,217,225,146,254,255,235, 52, 96,137,226, /* 0x 740 */
|
||||
60, 32,157,229, 8, 48,150,229, 52, 32,130,226, 3, 32,130,224, /* 0x 750 */
|
||||
5, 0,160,225, 3, 16,160,227,138,254,255,235, 8,192,141,226, /* 0x 760 */
|
||||
7, 32,160,225, 9, 16,160,225, 5, 48,160,225, 8, 0,160,225, /* 0x 770 */
|
||||
0,192,141,229, 4,160,141,229,252,254,255,235, 0, 64,160,225, /* 0x 780 */
|
||||
9, 16,160,227, 4, 32,160,225, 5, 0,160,225,125,254,255,235, /* 0x 790 */
|
||||
188, 18,217,225, 0, 32,160,227, 29, 0, 0,234, 0, 48,150,229, /* 0x 7a0 */
|
||||
3, 0, 83,227, 24, 0, 0, 26, 8, 48,150,229, 8, 0,157,229, /* 0x 7b0 */
|
||||
52, 96,141,226, 0,144,160,225, 1, 80,160,225, 3,128,160,225, /* 0x 6f0 */
|
||||
6, 0,160,225, 0, 48,160,227, 44, 16,141,226, 48,160,157,229, /* 0x 700 */
|
||||
2,112,160,225, 52, 64,157,229,198,254,255,235, 56, 48,157,229, /* 0x 710 */
|
||||
5, 16,160,227, 3, 48,100,224,188, 34,218,225, 9, 0,160,225, /* 0x 720 */
|
||||
56, 48,141,229, 52, 80,141,229,150,254,255,235, 9, 0,160,225, /* 0x 730 */
|
||||
4, 16,160,227,186, 34,218,225,146,254,255,235, 52, 80,138,226, /* 0x 740 */
|
||||
60, 32,157,229, 8, 48,149,229, 52, 32,130,226, 3, 32,130,224, /* 0x 750 */
|
||||
9, 0,160,225, 3, 16,160,227,138,254,255,235, 8,192,141,226, /* 0x 760 */
|
||||
6, 32,160,225, 10, 16,160,225, 9, 48,160,225, 7, 0,160,225, /* 0x 770 */
|
||||
0,192,141,229, 4,128,141,229,252,254,255,235, 0, 64,160,225, /* 0x 780 */
|
||||
9, 16,160,227, 4, 32,160,225, 9, 0,160,225,125,254,255,235, /* 0x 790 */
|
||||
188, 18,218,225, 0, 32,160,227, 29, 0, 0,234, 0, 48,149,229, /* 0x 7a0 */
|
||||
3, 0, 83,227, 24, 0, 0, 26, 8, 48,149,229, 8, 0,157,229, /* 0x 7b0 */
|
||||
0, 16,160,227, 0, 0,131,224, 1, 32,160,225, 94,254,255,235, /* 0x 7c0 */
|
||||
0, 64, 80,226, 4, 0, 0,186, 9, 16,160,225, 2, 44,160,227, /* 0x 7d0 */
|
||||
0, 64, 80,226, 4, 0, 0,186, 10, 16,160,225, 2, 44,160,227, /* 0x 7d0 */
|
||||
85,254,255,235, 2, 12, 80,227, 1, 0, 0, 10,127, 0,160,227, /* 0x 7e0 */
|
||||
80,254,255,235, 0,192,160,227, 4, 0,160,225, 12, 32,160,225, /* 0x 7f0 */
|
||||
9, 16,160,225, 12, 48,160,225, 0,192,141,229, 4,192,141,229, /* 0x 800 */
|
||||
218,254,255,235, 0, 64,160,225, 3, 0, 0,234, 32, 96,134,226, /* 0x 810 */
|
||||
80,254,255,235, 0,192,160,227, 4, 0,160,225, 10, 16,160,225, /* 0x 7f0 */
|
||||
12, 32,160,225, 9, 48,160,225, 0,192,141,229, 4,192,141,229, /* 0x 800 */
|
||||
218,254,255,235, 0, 64,160,225, 3, 0, 0,234, 32, 80,133,226, /* 0x 810 */
|
||||
1, 32,130,226, 1, 0, 82,225,223,255,255,186, 4, 0,160,225, /* 0x 820 */
|
||||
12,208,141,226,240,135,189,232 /* 0x 830 */
|
||||
};
|
||||
|
@ -29,8 +29,8 @@
|
||||
|
||||
|
||||
#define STUB_ARMEB_LINUX_ELF_FOLD_SIZE 2104
|
||||
#define STUB_ARMEB_LINUX_ELF_FOLD_ADLER32 0x2b475e0d
|
||||
#define STUB_ARMEB_LINUX_ELF_FOLD_CRC32 0xf2f71c41
|
||||
#define STUB_ARMEB_LINUX_ELF_FOLD_ADLER32 0xe7a05324
|
||||
#define STUB_ARMEB_LINUX_ELF_FOLD_CRC32 0x908c5855
|
||||
|
||||
unsigned char stub_armeb_linux_elf_fold[2104] = {
|
||||
127, 69, 76, 70, 1, 2, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 0 */
|
||||
@ -102,67 +102,67 @@ unsigned char stub_armeb_linux_elf_fold[2104] = {
|
||||
227,160, 80, 0,226,140, 48, 34,225,160, 0, 4,227,224,192, 0, /* 0x 420 */
|
||||
229,157, 16, 36,225,160, 32, 5,229,141,192, 0,229,141, 80, 4, /* 0x 430 */
|
||||
235,255,255, 75,227,160, 48, 52,224,100,176, 0,224, 3, 3,155, /* 0x 440 */
|
||||
229,141, 0, 28,229,141, 48, 32,229,141, 80, 24,234, 0, 0,126, /* 0x 450 */
|
||||
229,150, 48, 0,227, 83, 0, 6, 26, 0, 0, 5,229,150, 32, 8, /* 0x 460 */
|
||||
229,157, 0, 8,224,139, 32, 2,227,160, 16, 3,235,255,255, 69, /* 0x 470 */
|
||||
234, 0, 0,113,227, 83, 0, 1, 26, 0, 0,111,229,150, 48, 24, /* 0x 480 */
|
||||
229,159, 34, 68,226, 3, 48, 7,225,160, 49, 3,225,160, 35, 50, /* 0x 490 */
|
||||
229,150, 48, 8,224,139,144, 3,229,157, 48, 12,229,150,224, 16, /* 0x 4a0 */
|
||||
225,160, 26, 9,227, 83, 0, 0,225,160, 26, 33,229,150,192, 4, /* 0x 4b0 */
|
||||
226, 2, 80, 7,229,150, 32, 20,224, 97,128, 9, 5,157, 64, 16, /* 0x 4c0 */
|
||||
224,142,112, 1,229,141, 32, 20, 19,224, 64, 0,224, 97,192, 12, /* 0x 4d0 */
|
||||
1,160, 32, 5, 3,160, 48, 18, 19,133, 32, 2, 19,160, 48, 50, /* 0x 4e0 */
|
||||
225,160, 0, 8,225,160, 16, 7,229,141,224, 40,232,141, 16, 16, /* 0x 4f0 */
|
||||
229,141,144, 44,235,255,255, 26,225, 88, 0, 0, 26, 0, 0, 59, /* 0x 500 */
|
||||
229,157, 48, 12,227, 83, 0, 0, 10, 0, 0, 6,229,157, 16, 88, /* 0x 510 */
|
||||
226, 21, 48, 4, 17,160, 48, 1,229,157, 0, 12,226,141, 16, 40, /* 0x 520 */
|
||||
229,157, 32, 16,235,255,255, 63,226,103, 48, 0,225,160, 74, 3, /* 0x 530 */
|
||||
227, 21, 0, 2,225,160, 74, 36, 10, 0, 0, 7,227, 84, 0, 0, /* 0x 540 */
|
||||
10, 0, 0, 5,224,136, 16, 7,225,160, 32, 4,227,160, 48, 0, /* 0x 550 */
|
||||
226, 82, 32, 1,228,193, 48, 1, 26,255,255,251,229,157, 32, 12, /* 0x 560 */
|
||||
227, 82, 0, 0, 10, 0, 0, 35,229,150, 48, 0,227, 83, 0, 1, /* 0x 570 */
|
||||
26, 0, 0, 24,229,150, 48, 24,227, 19, 0, 1, 10, 0, 0, 21, /* 0x 580 */
|
||||
229,150, 32, 20,229,150, 48, 16,225, 82, 0, 3,229,150, 16, 8, /* 0x 590 */
|
||||
26, 0, 0, 70,224,130, 48, 1,224,131, 32, 11,226, 98, 48, 0, /* 0x 5a0 */
|
||||
225,160, 58, 3,225,160, 58, 35,227, 83, 0, 7,154, 0, 0, 63, /* 0x 5b0 */
|
||||
229,159, 49, 24,229,130, 48, 0,229,159, 49, 20,229,130, 48, 4, /* 0x 5c0 */
|
||||
234, 0, 0, 1,227, 82, 0, 0, 10, 0, 0, 2,229,157, 0, 8, /* 0x 5d0 */
|
||||
227,160, 16, 0,235,255,254,235,225,160, 0, 8,225,160, 16, 7, /* 0x 5e0 */
|
||||
225,160, 32, 5,235,255,254,220,227, 80, 0, 0, 10, 0, 0, 1, /* 0x 5f0 */
|
||||
227,160, 0,127,235,255,254,203,229,157, 32, 20,224,135, 48, 4, /* 0x 600 */
|
||||
224,137, 16, 2,224,136, 64, 3,225, 84, 0, 1, 42, 0, 0, 10, /* 0x 610 */
|
||||
227,224,192, 0,229,141,192, 0,224,100, 16, 1,226,140,192, 1, /* 0x 620 */
|
||||
225,160, 32, 5,225,160, 0, 4,227,160, 48, 50,229,141,192, 4, /* 0x 630 */
|
||||
235,255,254,203,225, 84, 0, 0, 26,255,255,236,229,157, 48, 24, /* 0x 640 */
|
||||
226,131, 48, 1,229,141, 48, 24,226,134, 96, 32,225,218, 50,188, /* 0x 650 */
|
||||
229,157, 16, 24,225, 81, 0, 3,186,255,255,124,229,157, 32, 12, /* 0x 660 */
|
||||
227, 82, 0, 0, 26, 0, 0, 4,229,157, 0, 16,235,255,254,180, /* 0x 670 */
|
||||
227, 80, 0, 0, 26,255,255,221,234, 0, 0, 5,225,218, 49,176, /* 0x 680 */
|
||||
226,134, 96, 32,229,141, 0, 28,229,141, 48, 32,229,141, 80, 24, /* 0x 450 */
|
||||
234, 0, 0,130,229,157, 16, 12,227, 81, 0, 0, 10, 0, 0, 8, /* 0x 460 */
|
||||
229, 22, 48, 32,227, 83, 0, 6, 26, 0, 0, 5,229, 22, 32, 24, /* 0x 470 */
|
||||
229,157, 0, 8,224,139, 32, 2,227,160, 16, 3,235,255,255, 65, /* 0x 480 */
|
||||
234, 0, 0,114,229, 22, 48, 32,227, 83, 0, 1, 26, 0, 0,111, /* 0x 490 */
|
||||
229, 22, 48, 8,229,159, 34, 48,226, 3, 48, 7,225,160, 49, 3, /* 0x 4a0 */
|
||||
225,160, 35, 50,229, 22, 48, 24,224,139,144, 3,229,157, 48, 12, /* 0x 4b0 */
|
||||
229, 22,224, 16,225,160, 26, 9,227, 83, 0, 0,225,160, 26, 33, /* 0x 4c0 */
|
||||
229, 22,192, 28,226, 2, 80, 7,229, 22, 32, 12,224, 97,128, 9, /* 0x 4d0 */
|
||||
5,157, 64, 16,224,142,112, 1,229,141, 32, 20, 19,224, 64, 0, /* 0x 4e0 */
|
||||
224, 97,192, 12, 1,160, 32, 5, 3,160, 48, 18, 19,133, 32, 2, /* 0x 4f0 */
|
||||
19,160, 48, 50,225,160, 0, 8,225,160, 16, 7,229,141,224, 40, /* 0x 500 */
|
||||
232,141, 16, 16,229,141,144, 44,235,255,255, 21,225, 88, 0, 0, /* 0x 510 */
|
||||
26, 0, 0, 59,229,157, 48, 12,227, 83, 0, 0, 10, 0, 0, 6, /* 0x 520 */
|
||||
229,157, 16, 88,226, 21, 48, 4, 17,160, 48, 1,229,157, 0, 12, /* 0x 530 */
|
||||
226,141, 16, 40,229,157, 32, 16,235,255,255, 58,226,103, 48, 0, /* 0x 540 */
|
||||
225,160, 74, 3,227, 21, 0, 2,225,160, 74, 36, 10, 0, 0, 7, /* 0x 550 */
|
||||
227, 84, 0, 0, 10, 0, 0, 5,224,136, 16, 7,225,160, 32, 4, /* 0x 560 */
|
||||
227,160, 48, 0,226, 82, 32, 1,228,193, 48, 1, 26,255,255,251, /* 0x 570 */
|
||||
229,157, 32, 12,227, 82, 0, 0, 10, 0, 0, 35,229, 22, 48, 32, /* 0x 580 */
|
||||
227, 83, 0, 1, 26, 0, 0, 24,229, 22, 48, 8,227, 19, 0, 1, /* 0x 590 */
|
||||
10, 0, 0, 21,229, 22, 32, 12,229, 22, 48, 16,225, 82, 0, 3, /* 0x 5a0 */
|
||||
229, 22, 16, 24, 26, 0, 0, 65,224,130, 48, 1,224,131, 32, 11, /* 0x 5b0 */
|
||||
226, 98, 48, 0,225,160, 58, 3,225,160, 58, 35,227, 83, 0, 7, /* 0x 5c0 */
|
||||
154, 0, 0, 58,229,159, 49, 4,229,130, 48, 0,229,159, 49, 0, /* 0x 5d0 */
|
||||
229,130, 48, 4,234, 0, 0, 1,227, 82, 0, 0, 10, 0, 0, 2, /* 0x 5e0 */
|
||||
229,157, 0, 8,227,160, 16, 0,235,255,254,230,225,160, 0, 8, /* 0x 5f0 */
|
||||
225,160, 16, 7,225,160, 32, 5,235,255,254,215,227, 80, 0, 0, /* 0x 600 */
|
||||
10, 0, 0, 1,227,160, 0,127,235,255,254,198,229,157, 32, 20, /* 0x 610 */
|
||||
224,135, 48, 4,224,137, 16, 2,224,136, 64, 3,225, 84, 0, 1, /* 0x 620 */
|
||||
42, 0, 0, 10,227,224,192, 0,229,141,192, 0,224,100, 16, 1, /* 0x 630 */
|
||||
226,140,192, 1,225,160, 32, 5,225,160, 0, 4,227,160, 48, 50, /* 0x 640 */
|
||||
229,141,192, 4,235,255,254,198,225, 84, 0, 0, 26,255,255,236, /* 0x 650 */
|
||||
229,157, 48, 24,226,131, 48, 1,229,141, 48, 24,226,134, 96, 32, /* 0x 660 */
|
||||
225,218, 50,188,229,157, 16, 24,225, 81, 0, 3,186,255,255,120, /* 0x 670 */
|
||||
229,157, 32, 12,227, 82, 0, 0, 10, 0, 0, 5,225,218, 49,176, /* 0x 680 */
|
||||
227, 83, 0, 3, 21,157, 48, 28, 21,157, 16, 36, 16,131, 0, 1, /* 0x 690 */
|
||||
27,255,254,173,229,157, 32, 84,227, 82, 0, 0, 21,130,176, 0, /* 0x 6a0 */
|
||||
229,154, 0, 24,224,139, 0, 0,226,141,208, 48,232,189,143,240, /* 0x 6b0 */
|
||||
229,150, 48, 4,229,157, 32, 32,227, 83, 0, 0,224,129, 48, 2, /* 0x 6c0 */
|
||||
226,131, 32, 8, 10,255,255,185,234,255,255,189,115, 81, 98, 64, /* 0x 6d0 */
|
||||
229, 22, 48, 28,229,157, 32, 32,227, 83, 0, 0,224,129, 48, 2, /* 0x 6c0 */
|
||||
226,131, 32, 8, 10,255,255,190,234,255,255,194,115, 81, 98, 64, /* 0x 6d0 */
|
||||
239,144, 0, 91,225,160,240, 14,233, 45, 71,240,226, 77,208, 12, /* 0x 6e0 */
|
||||
226,141,112, 52,225,160, 80, 0,225,160, 96, 1,225,160,160, 3, /* 0x 6f0 */
|
||||
225,160, 0, 7,227,160, 48, 0,226,141, 16, 44,229,157,144, 48, /* 0x 700 */
|
||||
225,160,128, 2,229,157, 64, 52,235,255,254,198,229,157, 48, 56, /* 0x 710 */
|
||||
227,160, 16, 5,224,100, 48, 3,225,217, 34,188,225,160, 0, 5, /* 0x 720 */
|
||||
229,141, 48, 56,229,141, 96, 52,235,255,254,150,225,160, 0, 5, /* 0x 730 */
|
||||
227,160, 16, 4,225,217, 34,186,235,255,254,146,226,137, 96, 52, /* 0x 740 */
|
||||
229,157, 32, 60,229,150, 48, 8,226,130, 32, 52,224,130, 32, 3, /* 0x 750 */
|
||||
225,160, 0, 5,227,160, 16, 3,235,255,254,138,226,141,192, 8, /* 0x 760 */
|
||||
225,160, 32, 7,225,160, 16, 9,225,160, 48, 5,225,160, 0, 8, /* 0x 770 */
|
||||
229,141,192, 0,229,141,160, 4,235,255,254,252,225,160, 64, 0, /* 0x 780 */
|
||||
227,160, 16, 9,225,160, 32, 4,225,160, 0, 5,235,255,254,125, /* 0x 790 */
|
||||
225,217, 18,188,227,160, 32, 0,234, 0, 0, 29,229,150, 48, 0, /* 0x 7a0 */
|
||||
227, 83, 0, 3, 26, 0, 0, 24,229,150, 48, 8,229,157, 0, 8, /* 0x 7b0 */
|
||||
226,141, 96, 52,225,160,144, 0,225,160, 80, 1,225,160,128, 3, /* 0x 6f0 */
|
||||
225,160, 0, 6,227,160, 48, 0,226,141, 16, 44,229,157,160, 48, /* 0x 700 */
|
||||
225,160,112, 2,229,157, 64, 52,235,255,254,198,229,157, 48, 56, /* 0x 710 */
|
||||
227,160, 16, 5,224,100, 48, 3,225,218, 34,188,225,160, 0, 9, /* 0x 720 */
|
||||
229,141, 48, 56,229,141, 80, 52,235,255,254,150,225,160, 0, 9, /* 0x 730 */
|
||||
227,160, 16, 4,225,218, 34,186,235,255,254,146,226,138, 80, 52, /* 0x 740 */
|
||||
229,157, 32, 60,229,149, 48, 8,226,130, 32, 52,224,130, 32, 3, /* 0x 750 */
|
||||
225,160, 0, 9,227,160, 16, 3,235,255,254,138,226,141,192, 8, /* 0x 760 */
|
||||
225,160, 32, 6,225,160, 16, 10,225,160, 48, 9,225,160, 0, 7, /* 0x 770 */
|
||||
229,141,192, 0,229,141,128, 4,235,255,254,252,225,160, 64, 0, /* 0x 780 */
|
||||
227,160, 16, 9,225,160, 32, 4,225,160, 0, 9,235,255,254,125, /* 0x 790 */
|
||||
225,218, 18,188,227,160, 32, 0,234, 0, 0, 29,229,149, 48, 0, /* 0x 7a0 */
|
||||
227, 83, 0, 3, 26, 0, 0, 24,229,149, 48, 8,229,157, 0, 8, /* 0x 7b0 */
|
||||
227,160, 16, 0,224,131, 0, 0,225,160, 32, 1,235,255,254, 94, /* 0x 7c0 */
|
||||
226, 80, 64, 0,186, 0, 0, 4,225,160, 16, 9,227,160, 44, 2, /* 0x 7d0 */
|
||||
226, 80, 64, 0,186, 0, 0, 4,225,160, 16, 10,227,160, 44, 2, /* 0x 7d0 */
|
||||
235,255,254, 85,227, 80, 12, 2, 10, 0, 0, 1,227,160, 0,127, /* 0x 7e0 */
|
||||
235,255,254, 80,227,160,192, 0,225,160, 0, 4,225,160, 32, 12, /* 0x 7f0 */
|
||||
225,160, 16, 9,225,160, 48, 12,229,141,192, 0,229,141,192, 4, /* 0x 800 */
|
||||
235,255,254,218,225,160, 64, 0,234, 0, 0, 3,226,134, 96, 32, /* 0x 810 */
|
||||
235,255,254, 80,227,160,192, 0,225,160, 0, 4,225,160, 16, 10, /* 0x 7f0 */
|
||||
225,160, 32, 12,225,160, 48, 9,229,141,192, 0,229,141,192, 4, /* 0x 800 */
|
||||
235,255,254,218,225,160, 64, 0,234, 0, 0, 3,226,133, 80, 32, /* 0x 810 */
|
||||
226,130, 32, 1,225, 82, 0, 1,186,255,255,223,225,160, 0, 4, /* 0x 820 */
|
||||
226,141,208, 12,232,189,135,240 /* 0x 830 */
|
||||
};
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* i386-linux.elf-fold.h
|
||||
created from i386-linux.elf-fold.bin, 1697 (0x6a1) bytes
|
||||
created from i386-linux.elf-fold.bin, 1693 (0x69d) bytes
|
||||
|
||||
This file is part of the UPX executable compressor.
|
||||
|
||||
@ -28,17 +28,17 @@
|
||||
*/
|
||||
|
||||
|
||||
#define STUB_I386_LINUX_ELF_FOLD_SIZE 1697
|
||||
#define STUB_I386_LINUX_ELF_FOLD_ADLER32 0xe67cd5ac
|
||||
#define STUB_I386_LINUX_ELF_FOLD_CRC32 0x6ac0c656
|
||||
#define STUB_I386_LINUX_ELF_FOLD_SIZE 1693
|
||||
#define STUB_I386_LINUX_ELF_FOLD_ADLER32 0x7c62d270
|
||||
#define STUB_I386_LINUX_ELF_FOLD_CRC32 0x1eeea25c
|
||||
|
||||
unsigned char stub_i386_linux_elf_fold[1697] = {
|
||||
unsigned char stub_i386_linux_elf_fold[1693] = {
|
||||
127, 69, 76, 70, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 0 */
|
||||
2, 0, 3, 0, 1, 0, 0, 0,128, 16,192, 0, 52, 0, 0, 0, /* 0x 10 */
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 32, 0, 2, 0, 0, 0, /* 0x 20 */
|
||||
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 16,192, 0, /* 0x 30 */
|
||||
0, 16,192, 0,161, 6, 0, 0,164, 6, 0, 0, 5, 0, 0, 0, /* 0x 40 */
|
||||
0, 16, 0, 0, 1, 0, 0, 0,161, 6, 0, 0, 0, 0, 0, 0, /* 0x 50 */
|
||||
0, 16,192, 0,157, 6, 0, 0,160, 6, 0, 0, 5, 0, 0, 0, /* 0x 40 */
|
||||
0, 16, 0, 0, 1, 0, 0, 0,157, 6, 0, 0, 0, 0, 0, 0, /* 0x 50 */
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 60 */
|
||||
0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 70 */
|
||||
83, 41,201,186,120, 2, 0, 0,137,230,137,231, 41,219,232,181, /* 0x 80 */
|
||||
@ -51,7 +51,7 @@ unsigned char stub_i386_linux_elf_fold[1697] = {
|
||||
148, 26,255, 31, 0, 0,129,226, 0,240,255,255, 82, 41,192,102, /* 0x f0 */
|
||||
131,123, 16, 3,117, 1,146, 80,139,115, 24,141,131,140, 0, 0, /* 0x 100 */
|
||||
0, 41,198,139, 24,139, 72, 4,131,193, 12,141, 84, 36, 12, 96, /* 0x 110 */
|
||||
71,232,104, 4, 0, 0,131,196, 36, 89, 91,129,196, 0, 10, 0, /* 0x 120 */
|
||||
71,232, 96, 4, 0, 0,131,196, 36, 89, 91,129,196, 0, 10, 0, /* 0x 120 */
|
||||
0, 80, 79, 41,192, 60,175,175,117,252, 80, 80, 80, 80, 80, 80, /* 0x 130 */
|
||||
80, 80, 41,217,176, 91,255, 39,173,171,133,192,117,250,135,223, /* 0x 140 */
|
||||
1,223,173,171,133,192,117,250, 87,173,171,131,248, 32,115, 3, /* 0x 150 */
|
||||
@ -87,57 +87,56 @@ unsigned char stub_i386_linux_elf_fold[1697] = {
|
||||
255,255,106,255, 41,222, 80,129,198,255, 15, 0, 0,106, 0,129, /* 0x 330 */
|
||||
230, 0,240,255,255, 86, 83,232, 44,254,255,255,139, 77,224,141, /* 0x 340 */
|
||||
52, 48,131,196, 24, 41,216,102,131,121, 44, 0,137,117,240,137, /* 0x 350 */
|
||||
69,204,199, 69,200, 0, 0, 0, 0, 15,132,215, 1, 0, 0,139, /* 0x 360 */
|
||||
93,208,139, 3,131,248, 6,117, 24,139, 77,204,186, 3, 0, 0, /* 0x 370 */
|
||||
0, 3, 75, 8,139, 69,216,232, 5,255,255,255,233,158, 1, 0, /* 0x 380 */
|
||||
0, 72, 15,133,151, 1, 0, 0,139, 69,208,199, 69,196, 64, 98, /* 0x 390 */
|
||||
81,115,139, 85,208,139, 72, 24,139, 90, 20,131,225, 7,193,225, /* 0x 3a0 */
|
||||
2,211,109,196,139, 72, 16,139, 69,204, 3, 66, 8,137, 77,232, /* 0x 3b0 */
|
||||
131,101,196, 7,137,194, 1,195,129,226,255, 15, 0, 0,137,199, /* 0x 3c0 */
|
||||
141, 52, 17,139, 77,208,137, 69,236, 41,215,139, 65, 4,137, 93, /* 0x 3d0 */
|
||||
192, 41,208,131,125,220, 0, 80,139, 69,228,116, 3,131,200,255, /* 0x 3e0 */
|
||||
131,125,220, 1, 80, 25,192,131,224,224,131,192, 50,131,125,220, /* 0x 3f0 */
|
||||
0, 80,139, 69,196,116, 3,131,200, 2,131,125,220, 0, 80,137, /* 0x 400 */
|
||||
240,116, 3,141, 70, 3, 80, 87,232, 91,253,255,255,131,196, 24, /* 0x 410 */
|
||||
57,199, 15,133,184, 0, 0, 0,131,125,220, 0,116, 28,246, 69, /* 0x 420 */
|
||||
196, 4,139, 69,212,117, 2, 49,192, 80,139, 69,220,255,117,228, /* 0x 430 */
|
||||
141, 85,232,232,105,253,255,255, 88, 90,137,243,247,219,129,227, /* 0x 440 */
|
||||
255, 15, 0, 0,246, 69,196, 2,137, 93,188,116, 15,133,219,141, /* 0x 450 */
|
||||
4, 55,116, 8,137,217,198, 0, 0, 64,226,250,131,125,220, 0, /* 0x 460 */
|
||||
116,120,139, 69,208,131, 56, 1,117, 86,246, 64, 24, 1,116, 80, /* 0x 470 */
|
||||
139, 80, 20,139, 88, 8,141, 12, 26, 3, 77,204, 59, 80, 16,117, /* 0x 480 */
|
||||
14,137,200,247,216, 37,255, 15, 0, 0,131,248, 3,119, 17,139, /* 0x 490 */
|
||||
85,208,107, 69,204, 52,131,122, 4, 0,141, 76, 3, 12,117, 15, /* 0x 4a0 */
|
||||
139, 1, 61,205,128, 97,195,116, 6,199, 1,205,128, 97,195,133, /* 0x 4b0 */
|
||||
201,116, 13,139, 69,216, 49,210,131,224,254,232,193,253,255,255, /* 0x 4c0 */
|
||||
137,251,137,241,139, 85,196,106,125, 88,205,128,133,192,116, 10, /* 0x 4d0 */
|
||||
106,127, 91,106, 1, 88,205,128,235,254,139, 85,188,141, 4, 22, /* 0x 4e0 */
|
||||
141, 28, 7, 59, 93,192,115, 30,106, 0,106,255,106, 50,255,117, /* 0x 4f0 */
|
||||
196, 41, 93,192,255,117,192, 83,232,107,252,255,255,131,196, 24, /* 0x 500 */
|
||||
57,195,116, 27,235,202,131,125,220, 0,116, 19,141, 78, 3,129, /* 0x 510 */
|
||||
225,255, 15, 0, 0,131,249, 3,119, 5,106, 91, 88,205,128,139, /* 0x 520 */
|
||||
77,224,255, 69,200, 15,183, 65, 44,131, 69,208, 32, 57, 69,200, /* 0x 530 */
|
||||
15,140, 41,254,255,255,131,125,220, 0,117, 14,139, 93,228,106, /* 0x 540 */
|
||||
6, 88,205,128,133,192,116, 20,235,134,139, 69,224,102,131,120, /* 0x 550 */
|
||||
16, 3,116, 8,139, 93,240,106, 45, 88,205,128,131,125, 16, 0, /* 0x 560 */
|
||||
116, 8,139, 77,204,139, 85, 16,137, 10,139, 93,224,139, 91, 24, /* 0x 570 */
|
||||
1, 93,204,139, 69,204,141,101,244, 91, 94, 95,201,195, 85,137, /* 0x 580 */
|
||||
229, 87, 86, 83,131,236, 28,139,125, 28,106, 0,139, 69, 16,141, /* 0x 590 */
|
||||
87, 52,139,117, 8,137, 69,236,131,192, 2,255,117,236,137, 85, /* 0x 5a0 */
|
||||
228,139, 93, 32,137, 69,232,141, 85, 24,141, 69, 32,232,239,251, /* 0x 5b0 */
|
||||
255,255,139, 69, 12, 15,183, 79, 44,186, 5, 0, 0, 0,137, 69, /* 0x 5c0 */
|
||||
32,137,240, 41, 93, 36,232,182,252,255,255, 15,183, 79, 42,186, /* 0x 5d0 */
|
||||
4, 0, 0, 0,137,240,232,166,252,255,255,139, 93,228,139, 77, /* 0x 5e0 */
|
||||
40,186, 3, 0, 0, 0, 3, 75, 8,137,240,131,193, 52,232,142, /* 0x 5f0 */
|
||||
252,255,255,141, 69,240,255,117,232,137,250, 80,141, 69, 32, 86, /* 0x 600 */
|
||||
80,139, 69,236,232,164,252,255,255,186, 9, 0, 0, 0,137,193, /* 0x 610 */
|
||||
137,195,137,240,232,104,252,255,255,102,139, 79, 44,131,196, 24, /* 0x 620 */
|
||||
49,210,102,133,201,116, 96,139, 69,228,131, 56, 3,117, 76,139, /* 0x 630 */
|
||||
93,240, 49,201, 3, 88, 8,137,202,106, 5, 88,205,128,133,192, /* 0x 640 */
|
||||
137,198,120, 21,186, 0, 2, 0, 0,137,195,137,249,106, 3, 88, /* 0x 650 */
|
||||
205,128, 61, 0, 2, 0, 0,116, 10,106,127, 91,106, 1, 88,205, /* 0x 660 */
|
||||
128,235,254,106, 0,137,250,106, 0,137,240,106, 0,106, 0,232, /* 0x 670 */
|
||||
57,252,255,255,131,196, 16,137,195,235, 12, 66, 15,183,193,131, /* 0x 680 */
|
||||
69,228, 32, 57,194,124,160,141,101,244,137,216, 91, 94, 95,201, /* 0x 690 */
|
||||
195 /* 0x 6a0 */
|
||||
69,204,199, 69,200, 0, 0, 0, 0, 15,132,221, 1, 0, 0,131, /* 0x 360 */
|
||||
125,220, 0,116, 32,139, 93,208,131, 59, 6,117, 24,139, 77,204, /* 0x 370 */
|
||||
186, 3, 0, 0, 0, 3, 75, 8,139, 69,216,232, 1,255,255,255, /* 0x 380 */
|
||||
233,160, 1, 0, 0,139, 69,208,131, 56, 1, 15,133,148, 1, 0, /* 0x 390 */
|
||||
0,139, 72, 24,199, 69,196, 64, 98, 81,115,139, 85,208,131,225, /* 0x 3a0 */
|
||||
7,193,225, 2,139, 90, 20,211,109,196,139, 72, 16,139, 69,204, /* 0x 3b0 */
|
||||
3, 66, 8,137, 77,232,131,101,196, 7,137,194, 1,195,129,226, /* 0x 3c0 */
|
||||
255, 15, 0, 0,137,199,141, 52, 17,139, 77,208,137, 69,236, 41, /* 0x 3d0 */
|
||||
215,139, 65, 4,137, 93,192, 41,208,131,125,220, 0, 80,139, 69, /* 0x 3e0 */
|
||||
228,116, 3,131,200,255,131,125,220, 1, 80, 25,192,131,224,224, /* 0x 3f0 */
|
||||
131,192, 50,131,125,220, 0, 80,139, 69,196,116, 3,131,200, 2, /* 0x 400 */
|
||||
131,125,220, 0, 80,137,240,116, 3,141, 70, 3, 80, 87,232, 85, /* 0x 410 */
|
||||
253,255,255,131,196, 24, 57,199, 15,133,184, 0, 0, 0,131,125, /* 0x 420 */
|
||||
220, 0,116, 28,246, 69,196, 4,139, 69,212,117, 2, 49,192, 80, /* 0x 430 */
|
||||
139, 69,220,255,117,228,141, 85,232,232, 99,253,255,255, 88, 90, /* 0x 440 */
|
||||
137,243,247,219,129,227,255, 15, 0, 0,246, 69,196, 2,137, 93, /* 0x 450 */
|
||||
188,116, 15,133,219,141, 4, 55,116, 8,137,217,198, 0, 0, 64, /* 0x 460 */
|
||||
226,250,131,125,220, 0,116,120,139, 69,208,131, 56, 1,117, 86, /* 0x 470 */
|
||||
246, 64, 24, 1,116, 80,139, 80, 20,139, 88, 8,141, 12, 26, 3, /* 0x 480 */
|
||||
77,204, 59, 80, 16,117, 14,137,200,247,216, 37,255, 15, 0, 0, /* 0x 490 */
|
||||
131,248, 3,119, 17,139, 85,208,107, 69,204, 52,131,122, 4, 0, /* 0x 4a0 */
|
||||
141, 76, 3, 12,117, 15,139, 1, 61,205,128, 97,195,116, 6,199, /* 0x 4b0 */
|
||||
1,205,128, 97,195,133,201,116, 13,139, 69,216, 49,210,131,224, /* 0x 4c0 */
|
||||
254,232,187,253,255,255,137,251,137,241,139, 85,196,106,125, 88, /* 0x 4d0 */
|
||||
205,128,133,192,116, 10,106,127, 91,106, 1, 88,205,128,235,254, /* 0x 4e0 */
|
||||
139, 85,188,141, 4, 22,141, 28, 7, 59, 93,192,115, 30,106, 0, /* 0x 4f0 */
|
||||
106,255,106, 50,255,117,196, 41, 93,192,255,117,192, 83,232,101, /* 0x 500 */
|
||||
252,255,255,131,196, 24, 57,195,116, 27,235,202,131,125,220, 0, /* 0x 510 */
|
||||
116, 19,141, 78, 3,129,225,255, 15, 0, 0,131,249, 3,119, 5, /* 0x 520 */
|
||||
106, 91, 88,205,128,139, 77,224,255, 69,200, 15,183, 65, 44,131, /* 0x 530 */
|
||||
69,208, 32, 57, 69,200, 15,140, 35,254,255,255,131,125,220, 0, /* 0x 540 */
|
||||
116, 18,139, 93,224,102,131,123, 16, 3,116, 8,139, 93,240,106, /* 0x 550 */
|
||||
45, 88,205,128,131,125, 16, 0,116, 8,139, 85,204,139, 69, 16, /* 0x 560 */
|
||||
137, 16,139, 77,224,139, 73, 24, 1, 77,204,139, 69,204,141,101, /* 0x 570 */
|
||||
244, 91, 94, 95,201,195, 85,137,229, 87, 86, 83,131,236, 28,139, /* 0x 580 */
|
||||
125, 28,106, 0,139,117, 16,139, 69, 8,141, 87, 52,141, 78, 2, /* 0x 590 */
|
||||
139, 93, 32,137, 69,236,137, 85,228,141, 69, 32,141, 85, 24, 86, /* 0x 5a0 */
|
||||
137, 77,232,232,249,251,255,255,139, 69, 12,186, 5, 0, 0, 0, /* 0x 5b0 */
|
||||
15,183, 79, 44,137, 69, 32,139, 69,236, 41, 93, 36,232,191,252, /* 0x 5c0 */
|
||||
255,255, 15,183, 79, 42,139, 69,236,186, 4, 0, 0, 0,232,174, /* 0x 5d0 */
|
||||
252,255,255,139, 93,228,139, 77, 40,186, 3, 0, 0, 0, 3, 75, /* 0x 5e0 */
|
||||
8,139, 69,236,131,193, 52,232,149,252,255,255,141, 69,240,255, /* 0x 5f0 */
|
||||
117,232,137,250, 80,255,117,236,141, 69, 32, 80,137,240,232,170, /* 0x 600 */
|
||||
252,255,255,186, 9, 0, 0, 0,137,193,137,195,139, 69,236,232, /* 0x 610 */
|
||||
109,252,255,255,102,139, 79, 44,131,196, 24, 49,210,102,133,201, /* 0x 620 */
|
||||
116, 97,139, 69,228,131, 56, 3,117, 77,139, 93,240, 49,201, 3, /* 0x 630 */
|
||||
88, 8,137,202,106, 5, 88,205,128,133,192,137,198,120, 21,186, /* 0x 640 */
|
||||
0, 2, 0, 0,137,195,137,249,106, 3, 88,205,128, 61, 0, 2, /* 0x 650 */
|
||||
0, 0,116, 10,106,127, 91,106, 1, 88,205,128,235,254,106, 0, /* 0x 660 */
|
||||
137,250,106, 0,137,240,255,117,236,106, 0,232, 61,252,255,255, /* 0x 670 */
|
||||
131,196, 16,137,195,235, 12, 66, 15,183,193,131, 69,228, 32, 57, /* 0x 680 */
|
||||
194,124,159,141,101,244,137,216, 91, 94, 95,201,195 /* 0x 690 */
|
||||
};
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
/* mipsel.r3000-linux.elf-fold.h
|
||||
created from mipsel.r3000-linux.elf-fold.bin, 2208 (0x8a0) bytes
|
||||
created from mipsel.r3000-linux.elf-fold.bin, 2368 (0x940) bytes
|
||||
|
||||
This file is part of the UPX executable compressor.
|
||||
|
||||
@ -28,147 +28,157 @@
|
||||
*/
|
||||
|
||||
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_SIZE 2208
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_ADLER32 0xe0c6ede2
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_CRC32 0xff15679c
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_SIZE 2368
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_ADLER32 0x2b660fe1
|
||||
#define STUB_MIPSEL_R3000_LINUX_ELF_FOLD_CRC32 0xa278fb93
|
||||
|
||||
unsigned char stub_mipsel_r3000_linux_elf_fold[2208] = {
|
||||
unsigned char stub_mipsel_r3000_linux_elf_fold[2368] = {
|
||||
127, 69, 76, 70, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 0 */
|
||||
2, 0, 8, 0, 1, 0, 0, 0,128, 0, 16, 0, 52, 0, 0, 0, /* 0x 10 */
|
||||
0, 0, 0, 0, 1, 48, 0, 0, 52, 0, 32, 0, 2, 0, 0, 0, /* 0x 20 */
|
||||
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, /* 0x 30 */
|
||||
0, 0, 16, 0,160, 8, 0, 0,160, 8, 0, 0, 5, 0, 0, 0, /* 0x 40 */
|
||||
0, 16, 0, 0, 1, 0, 0, 0,160, 8, 0, 0, 0, 0, 0, 0, /* 0x 50 */
|
||||
0, 0, 16, 0, 64, 9, 0, 0, 64, 9, 0, 0, 5, 0, 0, 0, /* 0x 40 */
|
||||
0, 16, 0, 0, 1, 0, 0, 0, 64, 9, 0, 0, 0, 0, 0, 0, /* 0x 50 */
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 60 */
|
||||
0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 70 */
|
||||
36, 0,167, 39, 0, 0,225,140, 4, 0,231, 36,253,255, 32, 20, /* 0x 80 */
|
||||
33, 72, 0, 0, 0, 0,225,140, 4, 0,231, 36,253,255, 32, 20, /* 0x 90 */
|
||||
33, 64,224, 2, 32,252,189, 39, 33, 48,160, 3,116,255,165, 38, /* 0x a0 */
|
||||
1, 0, 17, 4,184, 0, 2, 36, 35, 16,226, 3, 24, 7, 66, 36, /* 0x b0 */
|
||||
9,248, 64, 0, 33, 32, 32, 2, 0, 4,189, 39, 33, 32, 96, 2, /* 0x c0 */
|
||||
33, 40, 64, 2, 8, 0,128, 2, 33,248, 64, 0, 0, 0, 0, 0, /* 0x d0 */
|
||||
250, 15, 2, 36,224,255,189, 39, 16, 0,168,175, 20, 0,169,175, /* 0x e0 */
|
||||
12, 0, 0, 0, 2, 0, 0, 16, 32, 0,189, 39, 12, 0, 0, 0, /* 0x f0 */
|
||||
3, 0,224, 20,255,255, 3, 36, 8, 0,224, 3, 0, 0, 0, 0, /* 0x 100 */
|
||||
8, 0,224, 3, 37, 16, 67, 0, 8, 0,224, 3, 0, 0, 0, 0, /* 0x 110 */
|
||||
0, 0,130,140, 4, 0,135,140, 43, 16, 70, 0, 3, 0, 64, 20, /* 0x 120 */
|
||||
161, 15, 2, 36, 10, 0, 0, 16, 33, 24,192, 0,127, 0, 4, 36, /* 0x 130 */
|
||||
238,255, 17, 4, 0, 0, 0, 0,255,255, 0, 16, 0, 0, 0, 0, /* 0x 140 */
|
||||
0, 0,226,144, 1, 0,231, 36, 0, 0,162,160, 1, 0,165, 36, /* 0x 150 */
|
||||
255,255, 99, 36,255,255, 2, 36,249,255, 98, 20, 0, 0, 0, 0, /* 0x 160 */
|
||||
4, 0,131,140, 0, 0,130,140, 33, 24,102, 0, 35, 16, 70, 0, /* 0x 170 */
|
||||
0, 0,130,172, 8, 0,224, 3, 4, 0,131,172,216,255,189, 39, /* 0x 180 */
|
||||
28, 0,179,175, 24, 0,178,175, 20, 0,177,175, 16, 0,176,175, /* 0x 190 */
|
||||
33,136,128, 0, 33,128,160, 0, 33,152,192, 0, 33,144,224, 0, /* 0x 1a0 */
|
||||
82, 0, 0, 16, 32, 0,191,175, 33, 32, 32, 2,216,255, 17, 4, /* 0x 1b0 */
|
||||
4, 0,165, 39, 4, 0,163,143, 8, 0,166,143, 10, 0, 96, 20, /* 0x 1c0 */
|
||||
88, 33, 2, 60, 85, 80, 66, 52, 10, 0,194, 20,127, 0, 4, 36, /* 0x 1d0 */
|
||||
0, 0, 34,142, 0, 0, 0, 0, 7, 0, 64, 20,161, 15, 2, 36, /* 0x 1e0 */
|
||||
70, 0, 0, 16, 0, 0, 0, 0, 7, 0,192, 20, 43, 16,102, 0, /* 0x 1f0 */
|
||||
127, 0, 4, 36,161, 15, 2, 36,188,255, 17, 4, 0, 0, 0, 0, /* 0x 200 */
|
||||
255,255, 0, 16, 0, 0, 0, 0,250,255, 64, 20,127, 0, 4, 36, /* 0x 210 */
|
||||
0, 0, 2,142, 0, 0, 0, 0, 43, 16, 67, 0,245,255, 64, 20, /* 0x 220 */
|
||||
43, 16,195, 0, 4, 0, 7,142, 39, 0, 64, 16, 33, 40,224, 0, /* 0x 230 */
|
||||
4, 0, 36,142, 12, 0,168,143, 33, 40,192, 0, 0, 0,163,175, /* 0x 240 */
|
||||
33, 48,224, 0, 9,248, 96, 2, 33, 56,160, 3,233,255, 64, 20, /* 0x 250 */
|
||||
127, 0, 4, 36, 0, 0,165,143, 4, 0,162,143, 0, 0, 0, 0, /* 0x 260 */
|
||||
228,255,162, 20, 0, 0, 0, 0, 13, 0,167,147, 0, 0, 0, 0, /* 0x 270 */
|
||||
13, 0,224, 16, 0, 0, 0, 0, 11, 0, 64, 18, 1, 2,162, 44, /* 0x 280 */
|
||||
5, 0, 64, 16, 0, 0, 0, 0, 0, 0, 2,142, 0, 0, 0, 0, /* 0x 290 */
|
||||
5, 0, 69, 20, 0, 0, 0, 0, 4, 0, 4,142, 14, 0,166,147, /* 0x 2a0 */
|
||||
9,248, 64, 2, 0, 0, 0, 0, 8, 0,162,143, 4, 0, 35,142, /* 0x 2b0 */
|
||||
0, 0, 36,142, 33, 24, 98, 0, 35, 32,130, 0, 4, 0, 35,174, /* 0x 2c0 */
|
||||
3, 0, 0, 16, 0, 0, 36,174,145,255, 17, 4, 33, 32, 32, 2, /* 0x 2d0 */
|
||||
4, 0,162,143, 4, 0, 3,142, 0, 0, 4,142, 33, 24, 98, 0, /* 0x 2e0 */
|
||||
35, 32,130, 0, 4, 0, 3,174, 0, 0, 4,174, 0, 0, 2,142, /* 0x 2f0 */
|
||||
0, 0, 0, 0,172,255, 64, 20, 12, 0, 6, 36, 32, 0,191,143, /* 0x 300 */
|
||||
28, 0,179,143, 24, 0,178,143, 20, 0,177,143, 16, 0,176,143, /* 0x 310 */
|
||||
8, 0,224, 3, 40, 0,189, 39, 14, 0,128, 16, 33, 16,128, 0, /* 0x 320 */
|
||||
1, 0, 4, 36, 0, 0, 67,140, 0, 0, 0, 0, 5, 0,101, 16, /* 0x 330 */
|
||||
0, 0, 0, 0, 5, 0,100, 20, 0, 0, 0, 0, 3, 0,160, 16, /* 0x 340 */
|
||||
0, 0, 0, 0, 8, 0,224, 3, 0, 0, 69,172,245,255, 0, 16, /* 0x 350 */
|
||||
8, 0, 66, 36, 8, 0,224, 3, 0, 0, 0, 0,248,255,189, 39, /* 0x 360 */
|
||||
0, 0,176,175, 4, 0,191,175,235,255, 17, 4, 33,128,192, 0, /* 0x 370 */
|
||||
2, 0, 64, 16, 0, 0, 0, 0, 4, 0, 80,172, 4, 0,191,143, /* 0x 380 */
|
||||
0, 0,176,143, 8, 0,224, 3, 8, 0,189, 39,176,255,189, 39, /* 0x 390 */
|
||||
72, 0,190,175, 68, 0,183,175, 60, 0,181,175, 48, 0,178,175, /* 0x 3a0 */
|
||||
76, 0,191,175, 64, 0,182,175, 56, 0,180,175, 52, 0,179,175, /* 0x 3b0 */
|
||||
44, 0,177,175, 40, 0,176,175, 28, 0,162,140, 33,168,160, 0, /* 0x 3c0 */
|
||||
33,240,128, 0, 6, 0, 5, 36, 33, 32,224, 0, 28, 0,167,175, /* 0x 3d0 */
|
||||
33,184,192, 0, 32, 0,168,175, 36, 0,169,175,206,255, 17, 4, /* 0x 3e0 */
|
||||
33,144,162, 2, 3, 0, 64, 20, 0, 0, 0, 0, 4, 0, 0, 16, /* 0x 3f0 */
|
||||
255,255, 2, 52, 4, 0, 66,140, 0, 0, 0, 0,255,255, 66, 36, /* 0x 400 */
|
||||
20, 0,162,175, 16, 0,162,150, 44, 0,163,150, 2, 0, 66, 56, /* 0x 410 */
|
||||
20, 0,164,143, 1, 0, 66, 44, 0, 57, 2, 0,255,255, 99, 36, /* 0x 420 */
|
||||
39, 40, 4, 0, 33, 48, 64, 2,255,255, 8, 36, 33, 72, 0, 0, /* 0x 430 */
|
||||
19, 0, 0, 16, 1, 0, 10, 36, 0, 0,194,140, 0, 0, 0, 0, /* 0x 440 */
|
||||
14, 0, 74, 20,255,255, 99, 36, 8, 0,196,140, 0, 0, 0, 0, /* 0x 450 */
|
||||
43, 16,136, 0, 2, 0, 64, 16, 0, 0, 0, 0, 33, 64,128, 0, /* 0x 460 */
|
||||
20, 0,194,140, 0, 0, 0, 0, 33, 32,130, 0, 43, 16, 36, 1, /* 0x 470 */
|
||||
2, 0, 64, 16, 0, 0, 0, 0, 33, 72,128, 0, 32, 0,198, 36, /* 0x 480 */
|
||||
237,255, 97, 4, 36,128,168, 0, 35, 16, 48, 1, 35, 16, 69, 0, /* 0x 490 */
|
||||
255,255, 66, 36, 36, 40,162, 0, 2, 8,231, 36, 33, 32, 0, 2, /* 0x 4a0 */
|
||||
33, 48, 0, 0,255,255, 8, 36, 33, 72, 0, 0, 8,255, 17, 4, /* 0x 4b0 */
|
||||
8, 0,165,175, 35,176, 80, 0, 12, 0,162,175, 97, 0, 0, 16, /* 0x 4c0 */
|
||||
16, 0,160,175, 0, 0, 67,142, 0, 0, 0, 0, 8, 0, 98, 20, /* 0x 4d0 */
|
||||
1, 0, 2, 36, 8, 0, 70,142, 28, 0,164,143, 33, 48,198, 2, /* 0x 4e0 */
|
||||
158,255, 17, 4, 3, 0, 5, 36, 82, 0, 0, 16, 0, 0, 0, 0, /* 0x 4f0 */
|
||||
80, 0, 98, 20, 0, 0, 0, 0, 8, 0, 66,142, 24, 0, 67,142, /* 0x 500 */
|
||||
33,160,194, 2, 81,115, 2, 60,128, 24, 3, 0, 64, 98, 66, 52, /* 0x 510 */
|
||||
6, 16, 98, 0, 20, 0,164,143, 16, 0, 74,142, 7, 0, 81, 48, /* 0x 520 */
|
||||
20, 0, 66,142, 36, 24,132, 2, 24, 0,162,175, 33,128, 67, 1, /* 0x 530 */
|
||||
99, 0,224, 18, 35,152,131, 2, 2, 0, 38, 54,255,255, 8, 36, /* 0x 540 */
|
||||
18, 8, 7, 36, 4, 0, 73,142, 33, 32, 96, 2, 35, 72, 35, 1, /* 0x 550 */
|
||||
33, 40, 0, 2, 0, 0,170,175,221,254, 17, 4, 4, 0,180,175, /* 0x 560 */
|
||||
32, 0, 98, 22,127, 0, 4, 36, 10, 0,224, 18, 4, 0, 34, 50, /* 0x 570 */
|
||||
4, 0, 64, 16, 33, 32,224, 2, 36, 0,167,143, 3, 0, 0, 16, /* 0x 580 */
|
||||
33, 40,160, 3, 33, 56, 0, 0, 33, 40,160, 3,251,254, 17, 4, /* 0x 590 */
|
||||
33, 48,192, 3, 20, 0,164,143, 35, 16, 16, 0, 2, 0, 35, 50, /* 0x 5a0 */
|
||||
8, 0, 96, 16, 36, 64, 68, 0, 6, 0, 0, 17, 33, 16, 0, 1, /* 0x 5b0 */
|
||||
33, 24,112, 2,255,255, 66, 36, 0, 0, 96,160,253,255, 64, 20, /* 0x 5c0 */
|
||||
1, 0, 99, 36, 12, 0,224, 18, 33, 32, 96, 2, 33, 40, 0, 2, /* 0x 5d0 */
|
||||
33, 48, 32, 2,197,254, 17, 4, 29, 16, 2, 36, 6, 0, 64, 16, /* 0x 5e0 */
|
||||
127, 0, 4, 36,161, 15, 2, 36,192,254, 17, 4, 0, 0, 0, 0, /* 0x 5f0 */
|
||||
255,255, 0, 16, 0, 0, 0, 0, 24, 0,163,143, 33, 16, 8, 2, /* 0x 600 */
|
||||
33, 40,131, 2, 33,128, 98, 2, 43, 16, 5, 2, 9, 0, 64, 16, /* 0x 610 */
|
||||
35, 40,176, 0, 33, 48, 32, 2, 33, 32, 0, 2, 18, 8, 7, 36, /* 0x 620 */
|
||||
255,255, 8, 36,170,254, 17, 4, 33, 72, 0, 0,237,255, 2, 22, /* 0x 630 */
|
||||
127, 0, 4, 36, 16, 0,164,143, 32, 0, 82, 38, 1, 0,132, 36, /* 0x 640 */
|
||||
16, 0,164,175, 44, 0,162,150, 16, 0,163,143, 0, 0, 0, 0, /* 0x 650 */
|
||||
42, 16, 98, 0,155,255, 64, 20, 6, 0, 2, 36, 8, 0,224, 22, /* 0x 660 */
|
||||
3, 0, 2, 36, 33, 32,192, 3,160,254, 17, 4,166, 15, 2, 36, /* 0x 670 */
|
||||
220,255, 64, 20,127, 0, 4, 36, 11, 0, 0, 16, 0, 0, 0, 0, /* 0x 680 */
|
||||
16, 0,163,150, 0, 0, 0, 0, 7, 0, 98, 16, 0, 0, 0, 0, /* 0x 690 */
|
||||
12, 0,162,143, 8, 0,163,143, 0, 0, 0, 0, 33, 32, 67, 0, /* 0x 6a0 */
|
||||
146,254, 17, 4,205, 15, 2, 36, 32, 0,164,143, 0, 0, 0, 0, /* 0x 6b0 */
|
||||
7, 0,128, 16, 0, 0, 0, 0, 5, 0, 0, 16, 0, 0,150,172, /* 0x 6c0 */
|
||||
33, 48, 32, 2, 33, 64,192, 3,158,255, 0, 16, 18, 0, 7, 36, /* 0x 6d0 */
|
||||
24, 0,162,142, 76, 0,191,143, 33, 16,194, 2, 72, 0,190,143, /* 0x 6e0 */
|
||||
68, 0,183,143, 64, 0,182,143, 60, 0,181,143, 56, 0,180,143, /* 0x 6f0 */
|
||||
52, 0,179,143, 48, 0,178,143, 44, 0,177,143, 40, 0,176,143, /* 0x 700 */
|
||||
8, 0,224, 3, 80, 0,189, 39,200,255,189, 39, 52, 0,191,175, /* 0x 710 */
|
||||
48, 0,180,175, 44, 0,179,175, 40, 0,178,175, 36, 0,177,175, /* 0x 720 */
|
||||
32, 0,176,175, 33,136, 0, 1, 0, 0,136,140, 33, 24,160, 0, /* 0x 730 */
|
||||
33, 16,128, 0, 33,160,192, 0, 33,128,224, 0, 33, 48, 32, 2, /* 0x 740 */
|
||||
33, 56, 0, 0, 4, 0,165, 39, 20, 0,164, 39, 20, 0,163,175, /* 0x 750 */
|
||||
12, 0,163,175, 4, 0,168,175, 24, 0,162,175, 33,144, 32, 1, /* 0x 760 */
|
||||
16, 0,162,175,133,254, 17, 4, 8, 0,180,175, 44, 0,134,150, /* 0x 770 */
|
||||
33, 32, 0, 2,249,254, 17, 4, 5, 0, 5, 36, 42, 0,134,150, /* 0x 780 */
|
||||
33, 32, 0, 2, 4, 0, 5, 36,244,254, 17, 4, 52, 0,147, 38, /* 0x 790 */
|
||||
8, 0,102,142, 33, 32, 0, 2, 52, 0,198, 36,239,254, 17, 4, /* 0x 7a0 */
|
||||
3, 0, 5, 36, 33, 32, 32, 2, 33, 40,128, 2, 33, 72, 64, 2, /* 0x 7b0 */
|
||||
12, 0,166, 39, 33, 56, 0, 2,244,254, 17, 4, 33, 64,160, 3, /* 0x 7c0 */
|
||||
33, 48, 64, 0, 33, 32, 0, 2, 9, 0, 5, 36,227,254, 17, 4, /* 0x 7d0 */
|
||||
33,136, 64, 0, 44, 0,133,150, 33, 0, 0, 16, 33, 32, 0, 0, /* 0x 7e0 */
|
||||
0, 0, 99,142, 3, 0, 2, 36, 29, 0, 98, 20, 32, 0,115, 38, /* 0x 7f0 */
|
||||
224,255,115, 38, 8, 0, 98,142, 0, 0,164,143, 33, 40, 0, 0, /* 0x 800 */
|
||||
33, 32, 68, 0, 33, 48, 0, 0, 56,254, 17, 4,165, 15, 2, 36, /* 0x 810 */
|
||||
8, 0, 64, 4, 33, 32, 64, 0, 33, 40,128, 2, 0, 2, 6, 36, /* 0x 820 */
|
||||
50,254, 17, 4,163, 15, 2, 36, 0, 2, 3, 36, 6, 0, 67, 16, /* 0x 830 */
|
||||
33, 48, 0, 0,127, 0, 4, 36, 44,254, 17, 4,161, 15, 2, 36, /* 0x 840 */
|
||||
255,255, 0, 16, 0, 0, 0, 0, 33, 56, 0, 0, 33, 64, 0, 0, /* 0x 850 */
|
||||
206,254, 17, 4, 33, 72, 0, 0, 4, 0, 0, 16, 33,136, 64, 0, /* 0x 860 */
|
||||
42, 16,133, 0,222,255, 64, 20, 1, 0,132, 36, 33, 16, 32, 2, /* 0x 870 */
|
||||
52, 0,191,143, 48, 0,180,143, 44, 0,179,143, 40, 0,178,143, /* 0x 880 */
|
||||
36, 0,177,143, 32, 0,176,143, 8, 0,224, 3, 56, 0,189, 39 /* 0x 890 */
|
||||
33, 64,224, 2, 32,254,189, 39, 33, 48,160, 3,116,255,165, 38, /* 0x a0 */
|
||||
33, 32, 32, 2, 1, 0, 17, 4,188, 0, 2, 36, 35, 16,226, 3, /* 0x b0 */
|
||||
184, 7, 66, 36, 9,248, 64, 0, 33,176,224, 0, 0, 2,189, 39, /* 0x c0 */
|
||||
0, 0,193,142, 8, 0,214, 38,253,255, 32, 20, 33,248, 64, 0, /* 0x d0 */
|
||||
252,255,193,142, 33, 40, 64, 2, 3, 0, 32, 16, 33, 32, 96, 2, /* 0x e0 */
|
||||
8, 0, 32, 0,251, 15, 2, 36, 8, 0,224, 3, 0, 0, 0, 0, /* 0x f0 */
|
||||
250, 15, 2, 36,224,255,189, 39, 16, 0,168,175, 20, 0,169,175, /* 0x 100 */
|
||||
12, 0, 0, 0, 2, 0, 0, 16, 32, 0,189, 39, 12, 0, 0, 0, /* 0x 110 */
|
||||
3, 0,224, 20, 0, 0, 0, 0, 8, 0,224, 3, 0, 0, 0, 0, /* 0x 120 */
|
||||
8, 0,224, 3,255,255, 2, 36, 8, 0,224, 3, 0, 0, 0, 0, /* 0x 130 */
|
||||
0, 0,130,140, 4, 0,135,140, 43, 16, 70, 0, 3, 0, 64, 20, /* 0x 140 */
|
||||
161, 15, 2, 36, 10, 0, 0, 16, 33, 24,192, 0,127, 0, 4, 36, /* 0x 150 */
|
||||
238,255, 17, 4, 0, 0, 0, 0,255,255, 0, 16, 0, 0, 0, 0, /* 0x 160 */
|
||||
0, 0,226,144, 1, 0,231, 36, 0, 0,162,160, 1, 0,165, 36, /* 0x 170 */
|
||||
255,255, 99, 36,255,255, 2, 36,249,255, 98, 20, 0, 0, 0, 0, /* 0x 180 */
|
||||
4, 0,131,140, 0, 0,130,140, 33, 24,102, 0, 35, 16, 70, 0, /* 0x 190 */
|
||||
0, 0,130,172, 8, 0,224, 3, 4, 0,131,172,216,255,189, 39, /* 0x 1a0 */
|
||||
28, 0,179,175, 24, 0,178,175, 20, 0,177,175, 16, 0,176,175, /* 0x 1b0 */
|
||||
33,136,128, 0, 33,128,160, 0, 33,152,192, 0, 33,144,224, 0, /* 0x 1c0 */
|
||||
82, 0, 0, 16, 32, 0,191,175, 33, 32, 32, 2,216,255, 17, 4, /* 0x 1d0 */
|
||||
4, 0,165, 39, 4, 0,163,143, 8, 0,166,143, 10, 0, 96, 20, /* 0x 1e0 */
|
||||
88, 33, 2, 60, 85, 80, 66, 52, 10, 0,194, 20,127, 0, 4, 36, /* 0x 1f0 */
|
||||
0, 0, 34,142, 0, 0, 0, 0, 7, 0, 64, 20,161, 15, 2, 36, /* 0x 200 */
|
||||
70, 0, 0, 16, 0, 0, 0, 0, 7, 0,192, 20, 43, 16,102, 0, /* 0x 210 */
|
||||
127, 0, 4, 36,161, 15, 2, 36,188,255, 17, 4, 0, 0, 0, 0, /* 0x 220 */
|
||||
255,255, 0, 16, 0, 0, 0, 0,250,255, 64, 20,127, 0, 4, 36, /* 0x 230 */
|
||||
0, 0, 2,142, 0, 0, 0, 0, 43, 16, 67, 0,245,255, 64, 20, /* 0x 240 */
|
||||
43, 16,195, 0, 4, 0, 7,142, 39, 0, 64, 16, 33, 40,224, 0, /* 0x 250 */
|
||||
4, 0, 36,142, 12, 0,168,143, 33, 40,192, 0, 0, 0,163,175, /* 0x 260 */
|
||||
33, 48,224, 0, 9,248, 96, 2, 33, 56,160, 3,233,255, 64, 20, /* 0x 270 */
|
||||
127, 0, 4, 36, 0, 0,165,143, 4, 0,162,143, 0, 0, 0, 0, /* 0x 280 */
|
||||
228,255,162, 20, 0, 0, 0, 0, 13, 0,167,147, 0, 0, 0, 0, /* 0x 290 */
|
||||
13, 0,224, 16, 0, 0, 0, 0, 11, 0, 64, 18, 1, 2,162, 44, /* 0x 2a0 */
|
||||
5, 0, 64, 16, 0, 0, 0, 0, 0, 0, 2,142, 0, 0, 0, 0, /* 0x 2b0 */
|
||||
5, 0, 69, 20, 0, 0, 0, 0, 4, 0, 4,142, 14, 0,166,147, /* 0x 2c0 */
|
||||
9,248, 64, 2, 0, 0, 0, 0, 8, 0,162,143, 4, 0, 35,142, /* 0x 2d0 */
|
||||
0, 0, 36,142, 33, 24, 98, 0, 35, 32,130, 0, 4, 0, 35,174, /* 0x 2e0 */
|
||||
3, 0, 0, 16, 0, 0, 36,174,145,255, 17, 4, 33, 32, 32, 2, /* 0x 2f0 */
|
||||
4, 0,162,143, 4, 0, 3,142, 0, 0, 4,142, 33, 24, 98, 0, /* 0x 300 */
|
||||
35, 32,130, 0, 4, 0, 3,174, 0, 0, 4,174, 0, 0, 2,142, /* 0x 310 */
|
||||
0, 0, 0, 0,172,255, 64, 20, 12, 0, 6, 36, 32, 0,191,143, /* 0x 320 */
|
||||
28, 0,179,143, 24, 0,178,143, 20, 0,177,143, 16, 0,176,143, /* 0x 330 */
|
||||
8, 0,224, 3, 40, 0,189, 39, 14, 0,128, 16, 33, 16,128, 0, /* 0x 340 */
|
||||
1, 0, 4, 36, 0, 0, 67,140, 0, 0, 0, 0, 5, 0,101, 16, /* 0x 350 */
|
||||
0, 0, 0, 0, 5, 0,100, 20, 0, 0, 0, 0, 3, 0,160, 16, /* 0x 360 */
|
||||
0, 0, 0, 0, 8, 0,224, 3, 0, 0, 69,172,245,255, 0, 16, /* 0x 370 */
|
||||
8, 0, 66, 36, 8, 0,224, 3, 0, 0, 0, 0,248,255,189, 39, /* 0x 380 */
|
||||
0, 0,176,175, 4, 0,191,175,235,255, 17, 4, 33,128,192, 0, /* 0x 390 */
|
||||
2, 0, 64, 16, 0, 0, 0, 0, 4, 0, 80,172, 4, 0,191,143, /* 0x 3a0 */
|
||||
0, 0,176,143, 8, 0,224, 3, 8, 0,189, 39,168,255,189, 39, /* 0x 3b0 */
|
||||
80, 0,190,175, 68, 0,181,175, 52, 0,177,175, 84, 0,191,175, /* 0x 3c0 */
|
||||
76, 0,183,175, 72, 0,182,175, 64, 0,180,175, 60, 0,179,175, /* 0x 3d0 */
|
||||
56, 0,178,175, 48, 0,176,175, 28, 0,162,140, 33,168,160, 0, /* 0x 3e0 */
|
||||
28, 0,164,175, 6, 0, 5, 36, 33, 32,224, 0, 32, 0,167,175, /* 0x 3f0 */
|
||||
33,240,192, 0, 36, 0,168,175, 40, 0,169,175,206,255, 17, 4, /* 0x 400 */
|
||||
33,136,162, 2, 3, 0, 64, 20, 0, 0, 0, 0, 4, 0, 0, 16, /* 0x 410 */
|
||||
255,255, 2, 52, 4, 0, 66,140, 0, 0, 0, 0,255,255, 66, 36, /* 0x 420 */
|
||||
20, 0,162,175, 16, 0,162,150, 44, 0,163,150, 2, 0, 66, 56, /* 0x 430 */
|
||||
20, 0,164,143, 1, 0, 66, 44, 0, 57, 2, 0,255,255, 99, 36, /* 0x 440 */
|
||||
39, 40, 4, 0, 33, 48, 32, 2,255,255, 8, 36, 33, 72, 0, 0, /* 0x 450 */
|
||||
19, 0, 0, 16, 1, 0, 10, 36, 0, 0,194,140, 0, 0, 0, 0, /* 0x 460 */
|
||||
14, 0, 74, 20,255,255, 99, 36, 8, 0,196,140, 0, 0, 0, 0, /* 0x 470 */
|
||||
43, 16,136, 0, 2, 0, 64, 16, 0, 0, 0, 0, 33, 64,128, 0, /* 0x 480 */
|
||||
20, 0,194,140, 0, 0, 0, 0, 33, 32,130, 0, 43, 16, 36, 1, /* 0x 490 */
|
||||
2, 0, 64, 16, 0, 0, 0, 0, 33, 72,128, 0, 32, 0,198, 36, /* 0x 4a0 */
|
||||
237,255, 97, 4, 36,128,168, 0, 35, 16, 48, 1, 35, 16, 69, 0, /* 0x 4b0 */
|
||||
255,255, 66, 36, 36, 40,162, 0, 2, 8,231, 36, 33, 32, 0, 2, /* 0x 4c0 */
|
||||
33, 48, 0, 0,255,255, 8, 36, 33, 72, 0, 0, 8,255, 17, 4, /* 0x 4d0 */
|
||||
8, 0,165,175, 35,184, 80, 0, 12, 0,162,175,132, 0, 0, 16, /* 0x 4e0 */
|
||||
16, 0,160,175, 12, 0,192, 19, 6, 0, 2, 36, 0, 0, 35,142, /* 0x 4f0 */
|
||||
0, 0, 0, 0, 10, 0, 98, 20, 1, 0, 2, 36, 8, 0, 38,142, /* 0x 500 */
|
||||
32, 0,164,143, 33, 48,230, 2,156,255, 17, 4, 3, 0, 5, 36, /* 0x 510 */
|
||||
115, 0, 0, 16, 0, 0, 0, 0, 0, 0, 35,142, 1, 0, 2, 36, /* 0x 520 */
|
||||
111, 0, 98, 20, 0, 0, 0, 0, 8, 0, 34,142, 24, 0, 35,142, /* 0x 530 */
|
||||
33,176,226, 2, 81,115, 2, 60,128, 24, 3, 0, 64, 98, 66, 52, /* 0x 540 */
|
||||
6, 16, 98, 0, 20, 0,164,143, 16, 0, 42,142, 7, 0, 82, 48, /* 0x 550 */
|
||||
20, 0, 34,142, 36, 24,196, 2, 24, 0,162,175, 33,152, 67, 1, /* 0x 560 */
|
||||
123, 0,192, 19, 35,160,195, 2, 2, 0, 70, 54,255,255, 8, 36, /* 0x 570 */
|
||||
18, 8, 7, 36, 4, 0, 41,142, 33, 32,128, 2, 35, 72, 35, 1, /* 0x 580 */
|
||||
33, 40, 96, 2, 0, 0,170,175,217,254, 17, 4, 4, 0,182,175, /* 0x 590 */
|
||||
63, 0,130, 22,127, 0, 4, 36, 11, 0,192, 19, 4, 0, 66, 50, /* 0x 5a0 */
|
||||
4, 0, 64, 16, 0, 0, 0, 0, 40, 0,167,143, 2, 0, 0, 16, /* 0x 5b0 */
|
||||
0, 0, 0, 0, 33, 56, 0, 0, 28, 0,166,143, 33, 32,192, 3, /* 0x 5c0 */
|
||||
246,254, 17, 4, 33, 40,160, 3, 20, 0,164,143, 35, 16, 19, 0, /* 0x 5d0 */
|
||||
2, 0, 67, 50, 8, 0, 96, 16, 36,128, 68, 0, 6, 0, 0, 18, /* 0x 5e0 */
|
||||
33, 16, 0, 2, 33, 24,147, 2,255,255, 66, 36, 0, 0, 96,160, /* 0x 5f0 */
|
||||
253,255, 64, 20, 1, 0, 99, 36, 42, 0,192, 19, 1, 0, 2, 36, /* 0x 600 */
|
||||
0, 0, 35,142, 0, 0, 0, 0, 27, 0, 98, 20, 33, 32,128, 2, /* 0x 610 */
|
||||
24, 0, 34,142, 0, 0, 0, 0, 1, 0, 66, 48, 22, 0, 64, 16, /* 0x 620 */
|
||||
0, 0, 0, 0, 20, 0, 34,142, 8, 0, 35,142, 16, 0, 36,142, /* 0x 630 */
|
||||
33, 24, 67, 0, 74, 0, 68, 20, 33, 48,119, 0, 20, 0,163,143, /* 0x 640 */
|
||||
35, 16, 6, 0, 36, 16, 98, 0, 12, 0, 66, 44, 68, 0, 64, 20, /* 0x 650 */
|
||||
12, 0, 2, 36, 0, 0,194,172,224, 3, 2, 60, 8, 0, 66, 52, /* 0x 660 */
|
||||
4, 0,194,172, 8, 0,192,172, 32, 0,164,143, 67,255, 17, 4, /* 0x 670 */
|
||||
33, 40, 0, 0, 33, 32,128, 2, 33, 40, 96, 2, 33, 48, 64, 2, /* 0x 680 */
|
||||
162,254, 17, 4, 29, 16, 2, 36, 6, 0, 64, 16,127, 0, 4, 36, /* 0x 690 */
|
||||
161, 15, 2, 36,157,254, 17, 4, 0, 0, 0, 0,255,255, 0, 16, /* 0x 6a0 */
|
||||
0, 0, 0, 0, 24, 0,164,143, 33, 16,112, 2, 33, 40,196, 2, /* 0x 6b0 */
|
||||
33,128,130, 2, 43, 16, 5, 2, 9, 0, 64, 16, 35, 40,176, 0, /* 0x 6c0 */
|
||||
33, 48, 64, 2, 33, 32, 0, 2, 18, 8, 7, 36,255,255, 8, 36, /* 0x 6d0 */
|
||||
135,254, 17, 4, 33, 72, 0, 0,237,255, 2, 22,127, 0, 4, 36, /* 0x 6e0 */
|
||||
16, 0,162,143, 32, 0, 49, 38, 1, 0, 66, 36, 16, 0,162,175, /* 0x 6f0 */
|
||||
44, 0,162,150, 16, 0,163,143, 0, 0, 0, 0, 42, 16, 98, 0, /* 0x 700 */
|
||||
120,255, 64, 20, 0, 0, 0, 0, 11, 0,192, 19, 3, 0, 2, 36, /* 0x 710 */
|
||||
16, 0,163,150, 0, 0, 0, 0, 7, 0, 98, 16, 0, 0, 0, 0, /* 0x 720 */
|
||||
12, 0,162,143, 8, 0,163,143, 0, 0, 0, 0, 33, 32, 67, 0, /* 0x 730 */
|
||||
118,254, 17, 4,205, 15, 2, 36, 36, 0,164,143, 0, 0, 0, 0, /* 0x 740 */
|
||||
11, 0,128, 16, 0, 0, 0, 0, 9, 0, 0, 16, 0, 0,151,172, /* 0x 750 */
|
||||
28, 0,168,143, 33, 48, 64, 2,134,255, 0, 16, 18, 0, 7, 36, /* 0x 760 */
|
||||
193,255,192, 20, 33, 32,128, 2,196,255, 0, 16, 33, 40, 96, 2, /* 0x 770 */
|
||||
24, 0,162,142, 84, 0,191,143, 33, 16,226, 2, 80, 0,190,143, /* 0x 780 */
|
||||
76, 0,183,143, 72, 0,182,143, 68, 0,181,143, 64, 0,180,143, /* 0x 790 */
|
||||
60, 0,179,143, 56, 0,178,143, 52, 0,177,143, 48, 0,176,143, /* 0x 7a0 */
|
||||
8, 0,224, 3, 88, 0,189, 39,200,255,189, 39, 52, 0,191,175, /* 0x 7b0 */
|
||||
48, 0,180,175, 44, 0,179,175, 40, 0,178,175, 36, 0,177,175, /* 0x 7c0 */
|
||||
32, 0,176,175, 33,128, 0, 1, 0, 0,136,140, 33, 24,160, 0, /* 0x 7d0 */
|
||||
33, 16,128, 0, 33,152,192, 0, 33,160,224, 0, 33, 48, 0, 2, /* 0x 7e0 */
|
||||
33, 56, 0, 0, 4, 0,165, 39, 20, 0,164, 39, 20, 0,163,175, /* 0x 7f0 */
|
||||
12, 0,163,175, 4, 0,168,175, 24, 0,162,175, 33,136, 32, 1, /* 0x 800 */
|
||||
16, 0,162,175,101,254, 17, 4, 8, 0,179,175, 44, 0,102,150, /* 0x 810 */
|
||||
33, 32,128, 2,217,254, 17, 4, 5, 0, 5, 36, 42, 0,102,150, /* 0x 820 */
|
||||
33, 32,128, 2, 4, 0, 5, 36,212,254, 17, 4, 52, 0,114, 38, /* 0x 830 */
|
||||
8, 0, 70,142, 33, 32,128, 2, 52, 0,198, 36,207,254, 17, 4, /* 0x 840 */
|
||||
3, 0, 5, 36, 33, 32, 0, 2, 33, 40, 96, 2, 33, 72, 32, 2, /* 0x 850 */
|
||||
12, 0,166, 39, 33, 56,128, 2,212,254, 17, 4, 33, 64,160, 3, /* 0x 860 */
|
||||
33, 48, 64, 0, 33, 32,128, 2, 9, 0, 5, 36,195,254, 17, 4, /* 0x 870 */
|
||||
33,128, 64, 0, 44, 0,101,150, 33, 0, 0, 16, 33, 32, 0, 0, /* 0x 880 */
|
||||
0, 0, 67,142, 3, 0, 2, 36, 29, 0, 98, 20, 32, 0, 82, 38, /* 0x 890 */
|
||||
224,255, 82, 38, 8, 0, 66,142, 0, 0,164,143, 33, 40, 0, 0, /* 0x 8a0 */
|
||||
33, 32, 68, 0, 33, 48, 0, 0, 24,254, 17, 4,165, 15, 2, 36, /* 0x 8b0 */
|
||||
8, 0, 64, 4, 33, 32, 64, 0, 33, 40, 96, 2, 0, 2, 6, 36, /* 0x 8c0 */
|
||||
18,254, 17, 4,163, 15, 2, 36, 0, 2, 3, 36, 6, 0, 67, 16, /* 0x 8d0 */
|
||||
33, 56,128, 2,127, 0, 4, 36, 12,254, 17, 4,161, 15, 2, 36, /* 0x 8e0 */
|
||||
255,255, 0, 16, 0, 0, 0, 0, 33, 48, 0, 0, 33, 64, 0, 0, /* 0x 8f0 */
|
||||
174,254, 17, 4, 33, 72, 0, 0, 4, 0, 0, 16, 33,128, 64, 0, /* 0x 900 */
|
||||
42, 16,133, 0,222,255, 64, 20, 1, 0,132, 36, 33, 16, 0, 2, /* 0x 910 */
|
||||
52, 0,191,143, 48, 0,180,143, 44, 0,179,143, 40, 0,178,143, /* 0x 920 */
|
||||
36, 0,177,143, 32, 0,176,143, 8, 0,224, 3, 56, 0,189, 39 /* 0x 930 */
|
||||
};
|
||||
|
@ -312,7 +312,7 @@ make_hatch_arm(Elf32_Phdr const *const phdr, unsigned const reloc)
|
||||
// Try page fragmentation just beyond .text .
|
||||
if ( ( (hatch = (void *)(phdr->p_memsz + phdr->p_vaddr + reloc)),
|
||||
( phdr->p_memsz==phdr->p_filesz // don't pollute potential .bss
|
||||
&& 8<=(~PAGE_MASK & -(int)hatch) ) ) // space left on page
|
||||
&& (2*4)<=(~PAGE_MASK & -(int)hatch) ) ) // space left on page
|
||||
// Try Elf32_Ehdr.e_ident[8..15] . warning: 'const' cast away
|
||||
|| ( (hatch = (void *)(&((Elf32_Ehdr *)phdr->p_vaddr + reloc)->e_ident[8])),
|
||||
(phdr->p_offset==0) ) )
|
||||
@ -323,6 +323,29 @@ make_hatch_arm(Elf32_Phdr const *const phdr, unsigned const reloc)
|
||||
}
|
||||
return hatch;
|
||||
}
|
||||
#elif defined(__mips__) /*}{*/
|
||||
static void *
|
||||
make_hatch_mips(
|
||||
Elf32_Phdr const *const phdr,
|
||||
unsigned const reloc,
|
||||
unsigned const frag_mask)
|
||||
{
|
||||
unsigned *hatch = 0;
|
||||
DPRINTF((STR_make_hatch_arm(),phdr,reloc));
|
||||
if (phdr->p_type==PT_LOAD && phdr->p_flags & PF_X) {
|
||||
// Try page fragmentation just beyond .text .
|
||||
if ( ( (hatch = (void *)(phdr->p_memsz + phdr->p_vaddr + reloc)),
|
||||
( phdr->p_memsz==phdr->p_filesz // don't pollute potential .bss
|
||||
&& (3*4)<=(frag_mask & -(int)hatch) ) ) // space left on page
|
||||
)
|
||||
{
|
||||
hatch[0]= 0x0000000c; // syscall
|
||||
hatch[1]= 0x03e00008; // jr $ra
|
||||
hatch[2]= 0x00000000; // nop
|
||||
}
|
||||
}
|
||||
return hatch;
|
||||
}
|
||||
#endif /*}*/
|
||||
|
||||
static void
|
||||
@ -451,7 +474,7 @@ do_xmap(int const fdi, Elf32_Ehdr const *const ehdr, Extent *const xi,
|
||||
DPRINTF((STR_do_xmap(),
|
||||
fdi, ehdr, xi, (xi? xi->size: 0), (xi? xi->buf: 0), av, p_reloc, f_unf));
|
||||
for (j=0; j < ehdr->e_phnum; ++phdr, ++j)
|
||||
if (PT_PHDR==phdr->p_type) {
|
||||
if (xi && PT_PHDR==phdr->p_type) {
|
||||
auxv_up(av, AT_PHDR, phdr->p_vaddr + reloc);
|
||||
}
|
||||
else if (PT_LOAD==phdr->p_type) {
|
||||
@ -479,6 +502,8 @@ do_xmap(int const fdi, Elf32_Ehdr const *const ehdr, Extent *const xi,
|
||||
((PROT_EXEC & prot) ? f_unf : 0) );
|
||||
}
|
||||
// Linux does not fixup the low end, so neither do we.
|
||||
// Indeed, must leave it alone because some PT_GNU_RELRO
|
||||
// dangle below PT_LOAD (but still on the low page)!
|
||||
//if (PROT_WRITE & prot) {
|
||||
// bzero(addr, frag); // fragment at lo end
|
||||
//}
|
||||
@ -496,7 +521,12 @@ do_xmap(int const fdi, Elf32_Ehdr const *const ehdr, Extent *const xi,
|
||||
#elif defined(__arm__) /*}{*/
|
||||
void *const hatch = make_hatch_arm(phdr, reloc);
|
||||
if (0!=hatch) {
|
||||
auxv_up((Elf32_auxv_t *)(void *)av, AT_NULL, (unsigned)hatch);
|
||||
auxv_up(av, AT_NULL, (unsigned)hatch);
|
||||
}
|
||||
#elif defined(__mips__) /*}{*/
|
||||
void *const hatch = make_hatch_mips(phdr, reloc, frag_mask);
|
||||
if (0!=hatch) {
|
||||
auxv_up(av, AT_NULL, (unsigned)hatch);
|
||||
}
|
||||
#endif /*}*/
|
||||
if (0!=mprotect(addr, mlen, prot)) {
|
||||
@ -520,16 +550,9 @@ ERR_LAB
|
||||
}
|
||||
#endif /*}*/
|
||||
}
|
||||
if (!xi) { // 2nd call (PT_INTERP); close()+check is smaller here
|
||||
if (0!=close(fdi)) {
|
||||
err_exit(11);
|
||||
}
|
||||
}
|
||||
else { // 1st call (main); also have (0!=av) here
|
||||
if (ET_DYN!=ehdr->e_type) {
|
||||
// Needed only if compressed shell script invokes compressed shell.
|
||||
do_brk(v_brk);
|
||||
}
|
||||
if (xi && ET_DYN!=ehdr->e_type) {
|
||||
// Needed only if compressed shell script invokes compressed shell.
|
||||
do_brk(v_brk);
|
||||
}
|
||||
if (0!=p_reloc) {
|
||||
*p_reloc = reloc;
|
||||
@ -634,7 +657,8 @@ void *upx_main(
|
||||
ERR_LAB
|
||||
err_exit(19);
|
||||
}
|
||||
entry = do_xmap(fdi, ehdr, 0, 0, 0, 0);
|
||||
entry = do_xmap(fdi, ehdr, 0, av, 0, 0);
|
||||
//close(fdi); // FIXME: bug in mipsel gcc 4.1.1
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -380,22 +380,21 @@ static void *mmap(
|
||||
__asm__ __volatile__(
|
||||
/*"break\n"*/ /* debug only */
|
||||
"addiu $29,$29,-0x20\n"
|
||||
"sw $8,0x10($29)\n"
|
||||
"sw $9,0x14($29)\n"
|
||||
"syscall\n"
|
||||
"addiu $29,$29, 0x20\n"
|
||||
"b sysret\n"
|
||||
"\tsw $8,0x10($29)\n"
|
||||
"\tsw $9,0x14($29)\n"
|
||||
"\tsyscall\n"
|
||||
"\taddiu $29,$29, 0x20\n"
|
||||
"\tb sysret\n"
|
||||
"sysgo:"
|
||||
/*"break\n"*/ /* debug only */
|
||||
"syscall\n"
|
||||
"\tsyscall\n"
|
||||
"sysret:"
|
||||
"li $3,~0\n"
|
||||
"bnez $7,sysbad\n"
|
||||
"jr $31\n"
|
||||
"\tbnez $7,sysbad\n" /* $7 === a3 */
|
||||
"\tjr $31\n"
|
||||
"sysbad:"
|
||||
"or $2,$2,$3\n"
|
||||
"jr $31"
|
||||
: "+r"(v0), "+r"(a3)
|
||||
"\tli $2,-1\n" /* $2 === v0; overwrite 'errno' */
|
||||
"\tjr $31"
|
||||
: "+r"(v0), "+r"(a3) /* "+r" ==> both read and write */
|
||||
: "r"(a0), "r"(a1), "r"(a2), "r"(t0), "r"(t1)
|
||||
);
|
||||
return (void *)v0;
|
||||
@ -431,6 +430,7 @@ static void *brk(void *addr)
|
||||
return v0;
|
||||
}
|
||||
|
||||
#if 0 /*{*/
|
||||
static int close(int fd)
|
||||
{
|
||||
#define __NR_close (6+ 4000)
|
||||
@ -444,6 +444,7 @@ static int close(int fd)
|
||||
);
|
||||
return v0;
|
||||
}
|
||||
#endif /*}*/
|
||||
|
||||
static void exit(int code) __attribute__ ((__noreturn__));
|
||||
static void exit(int code)
|
||||
|
@ -71,7 +71,6 @@ M_NRV2E_LE32=8
|
||||
sz_pack2 = . - 4
|
||||
adrm: .long ADRM
|
||||
lenm: .long LENM
|
||||
jmpu: .long JMPU
|
||||
adru: .long ADRU
|
||||
adrc: .long ADRC
|
||||
lenu: .long LENU
|
||||
@ -235,7 +234,6 @@ unfold: // s7= &decompress; s6= &b_info(fold); s5= sz_pack2
|
||||
move a0,v0 // &new page(s)
|
||||
|
||||
lw a1,adrc - decompressor(s7)
|
||||
lw s4,jmpu - decompressor(s7) // for unmap in fold
|
||||
lw s3,adru - decompressor(s7) // for unmap in fold
|
||||
lw s2,lenu - decompressor(s7) // for unmap in fold
|
||||
lw s1,adrx - decompressor(s7) // for upx_main
|
||||
|
@ -48,37 +48,53 @@ sz_b_info= 12
|
||||
sz_l_info= 12
|
||||
sz_p_info= 12
|
||||
|
||||
a_type = 0 # Elf32_auxv_t
|
||||
a_val = 4
|
||||
|
||||
__NR_Linux = 4000
|
||||
__NR_brk = 45+ __NR_Linux
|
||||
__NR_close = 6+ __NR_Linux
|
||||
__NR_exit = 1+ __NR_Linux
|
||||
__NR_mmap = 90+ __NR_Linux
|
||||
__NR_mprotect = 125+ __NR_Linux
|
||||
__NR_munmap = 91+ __NR_Linux
|
||||
__NR_open = 5+ __NR_Linux
|
||||
__NR_read = 3+ __NR_Linux
|
||||
|
||||
OVERHEAD=2048
|
||||
MAX_ELF_HDR=1024
|
||||
MAX_ELF_HDR=512
|
||||
|
||||
#define sp_frame 0x20
|
||||
BAL=0x04110000
|
||||
|
||||
/* In:
|
||||
s7= &decompress
|
||||
|
||||
s5= sz_pack2
|
||||
s4= JMPU
|
||||
|
||||
s3= ADRU
|
||||
s2= LENU
|
||||
s1= ADRX
|
||||
|
||||
sp= -sp_frame + &{argc,argv...,0,env...,0,auxv...,0...,strings}
|
||||
*/
|
||||
fold_begin:
|
||||
addiu a3,sp,4+ sp_frame # &argv[0]
|
||||
L10: # stop when a3= &env[0]
|
||||
L10:
|
||||
lw tmp,0(a3)
|
||||
addiu a3,a3,4
|
||||
bne tmp,zero,L10
|
||||
bne tmp,zero,L10 # stop when a3= &env[0]
|
||||
move t1,zero # &f_unfilter
|
||||
L20: # stop when a3= &auxv[0]
|
||||
L20:
|
||||
lw tmp,0(a3)
|
||||
addiu a3,a3,4
|
||||
bne tmp,zero,L20
|
||||
bne tmp,zero,L20 # stop when a3= &auxv[0]
|
||||
move t0,s7 # &f_decompress
|
||||
|
||||
addiu sp,sp,sp_frame - MAX_ELF_HDR # alloca
|
||||
move a2,sp # &Elf32_Ehdr tmp space
|
||||
addiu a1,s5,-(sz_Ehdr + 2*sz_Phdr + sz_l_info + sz_p_info)
|
||||
move a0,s1
|
||||
|
||||
/* We need a position-independent call of upx_main, which is external.
|
||||
"bal upx_main" cannot be assembled by mipsel-elf-as-20060406.
|
||||
@ -94,27 +110,27 @@ L20: # stop when a3= &auxv[0]
|
||||
subu v0,ra,v0
|
||||
addiu v0,v0,%lo(upx_main)
|
||||
jalr v0
|
||||
move a0,s1
|
||||
move s6,a3 # save av
|
||||
/* entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2,
|
||||
Elf32_Auxv_t *a3, f_decompr t0, f_unfilter t1 )
|
||||
*/
|
||||
addiu sp,sp, MAX_ELF_HDR
|
||||
move a0,s3 # ADRU
|
||||
move a1,s2 # LENU
|
||||
jr s4 # JMPU
|
||||
addiu sp,sp, MAX_ELF_HDR # un-alloca
|
||||
L30: # find end of av
|
||||
lw tmp,a_type(s6)
|
||||
addiu s6,s6,8
|
||||
bnez tmp,L30 # stop when s6= &auxv_t[NULL]
|
||||
move ra,v0 # &entry
|
||||
lw tmp,-8+ a_val(s6)
|
||||
move a1,s2 # LENU
|
||||
beqz tmp,L40 # could not make escape hatch
|
||||
move a0,s3 # ADRU
|
||||
jr tmp # goto munmap escape hatch: [syscall; jr ra; nop]
|
||||
li v0,__NR_munmap
|
||||
L40:
|
||||
jr ra # omit munmap
|
||||
nop
|
||||
|
||||
#if 0 /*{*/
|
||||
__NR_Linux = 4000
|
||||
__NR_brk = 45+ __NR_Linux
|
||||
__NR_close = 6+ __NR_Linux
|
||||
__NR_exit = 1+ __NR_Linux
|
||||
__NR_mmap = 90+ __NR_Linux
|
||||
__NR_mprotect = 125+ __NR_Linux
|
||||
__NR_munmap = 91+ __NR_Linux
|
||||
__NR_open = 5+ __NR_Linux
|
||||
__NR_read = 3+ __NR_Linux
|
||||
|
||||
#if 0 /*{ replaced by macros in include/linux.h because of 'bal' vs gcc */
|
||||
err_syscall:
|
||||
li a0,-1
|
||||
exit: .globl exit
|
||||
|
@ -2,17 +2,17 @@ tmp/mipsel.r3000-linux.elf-entry.bin: file format elf32-littlemips
|
||||
|
||||
Sections:
|
||||
Idx Name Size VMA LMA File off Algn Flags
|
||||
0 ELFMAINX 00000024 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
|
||||
1 NRV2E 00000218 00000000 00000000 00000058 2**0 CONTENTS, RELOC, READONLY
|
||||
2 NRV2D 000001f0 00000000 00000000 00000270 2**0 CONTENTS, RELOC, READONLY
|
||||
3 NRV2B 000001b4 00000000 00000000 00000460 2**0 CONTENTS, RELOC, READONLY
|
||||
4 LZMA_ELF00 0000006c 00000000 00000000 00000614 2**0 CONTENTS, READONLY
|
||||
5 LZMA_DEC10 00000ad8 00000000 00000000 00000680 2**0 CONTENTS, READONLY
|
||||
6 LZMA_DEC20 00000ad8 00000000 00000000 00001158 2**0 CONTENTS, READONLY
|
||||
7 LZMA_DEC30 00000004 00000000 00000000 00001c30 2**0 CONTENTS, READONLY
|
||||
8 NRV_TAIL 00000000 00000000 00000000 00001c34 2**0 CONTENTS, READONLY
|
||||
9 ELFMAINY 0000005e 00000000 00000000 00001c34 2**0 CONTENTS, RELOC, READONLY
|
||||
10 ELFMAINZ 000000b8 00000000 00000000 00001c92 2**0 CONTENTS, READONLY
|
||||
0 ELFMAINX 00000020 00000000 00000000 00000034 2**0 CONTENTS, RELOC, READONLY
|
||||
1 NRV2E 00000218 00000000 00000000 00000054 2**0 CONTENTS, RELOC, READONLY
|
||||
2 NRV2D 000001f0 00000000 00000000 0000026c 2**0 CONTENTS, RELOC, READONLY
|
||||
3 NRV2B 000001b4 00000000 00000000 0000045c 2**0 CONTENTS, RELOC, READONLY
|
||||
4 LZMA_ELF00 0000006c 00000000 00000000 00000610 2**0 CONTENTS, READONLY
|
||||
5 LZMA_DEC10 00000ad8 00000000 00000000 0000067c 2**0 CONTENTS, READONLY
|
||||
6 LZMA_DEC20 00000ad8 00000000 00000000 00001154 2**0 CONTENTS, READONLY
|
||||
7 LZMA_DEC30 00000004 00000000 00000000 00001c2c 2**0 CONTENTS, READONLY
|
||||
8 NRV_TAIL 00000000 00000000 00000000 00001c30 2**0 CONTENTS, READONLY
|
||||
9 ELFMAINY 0000005e 00000000 00000000 00001c30 2**0 CONTENTS, RELOC, READONLY
|
||||
10 ELFMAINZ 000000b4 00000000 00000000 00001c8e 2**0 CONTENTS, READONLY
|
||||
SYMBOL TABLE:
|
||||
00000000 l d ELFMAINY 00000000 ELFMAINY
|
||||
00000000 l d ELFMAINZ 00000000 ELFMAINZ
|
||||
@ -27,23 +27,21 @@ SYMBOL TABLE:
|
||||
00000000 l d NRV_TAIL 00000000 NRV_TAIL
|
||||
00000000 *UND* 00000000 ADRM
|
||||
00000000 *UND* 00000000 LENM
|
||||
00000000 *UND* 00000000 JMPU
|
||||
00000000 *UND* 00000000 ADRU
|
||||
00000000 *UND* 00000000 ADRC
|
||||
00000000 *UND* 00000000 LENU
|
||||
00000000 *UND* 00000000 ADRX
|
||||
0000001c g O ELFMAINX 00000000 _start
|
||||
00000018 g O ELFMAINX 00000000 _start
|
||||
|
||||
RELOCATION RECORDS FOR [ELFMAINX]:
|
||||
OFFSET TYPE VALUE
|
||||
00000000 R_MIPS_32 ADRM
|
||||
00000004 R_MIPS_32 LENM
|
||||
00000008 R_MIPS_32 JMPU
|
||||
0000000c R_MIPS_32 ADRU
|
||||
00000010 R_MIPS_32 ADRC
|
||||
00000014 R_MIPS_32 LENU
|
||||
00000018 R_MIPS_32 ADRX
|
||||
0000001c R_MIPS_PC16 ELFMAINZ
|
||||
00000008 R_MIPS_32 ADRU
|
||||
0000000c R_MIPS_32 ADRC
|
||||
00000010 R_MIPS_32 LENU
|
||||
00000014 R_MIPS_32 ADRX
|
||||
00000018 R_MIPS_PC16 ELFMAINZ
|
||||
|
||||
RELOCATION RECORDS FOR [NRV2E]:
|
||||
OFFSET TYPE VALUE
|
||||
|
Loading…
x
Reference in New Issue
Block a user