Bug in unfilter on x86* when region ends in 32-bit displacement.
https://github.com/upx/upx/issues/43 modified: stub/src/arch/amd64/bxx.S modified: stub/src/arch/i386/macros.S plus all the stubs that use them
This commit is contained in:
committed by
Markus F.X.J. Oberhumer
parent
fdce705e55
commit
ba9118aa58
@@ -1,5 +1,5 @@
|
||||
/* i386-linux.elf-entry.h
|
||||
created from i386-linux.elf-entry.bin, 38226 (0x9552) bytes
|
||||
created from i386-linux.elf-entry.bin, 38300 (0x959c) bytes
|
||||
|
||||
This file is part of the UPX executable compressor.
|
||||
|
||||
@@ -31,11 +31,11 @@
|
||||
*/
|
||||
|
||||
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_SIZE 38226
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_ADLER32 0x56d92148
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_CRC32 0x48fe8362
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_SIZE 38300
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_ADLER32 0x8dea31ab
|
||||
#define STUB_I386_LINUX_ELF_ENTRY_CRC32 0x376ac55e
|
||||
|
||||
unsigned char stub_i386_linux_elf_entry[38226] = {
|
||||
unsigned char stub_i386_linux_elf_entry[38300] = {
|
||||
/* 0x0000 */ 127, 69, 76, 70, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0010 */ 1, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
/* 0x0020 */ 196, 34, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40, 0,
|
||||
@@ -459,10 +459,10 @@ unsigned char stub_i386_linux_elf_entry[38226] = {
|
||||
/* 0x1a40 */ 255,131,232, 1,114,255,115,255,122, 0,123, 0,248,235,255,131,
|
||||
/* 0x1a50 */ 233, 1,127,255,137,231,185, 4, 1, 0, 0,139, 14,131,193, 5,
|
||||
/* 0x1a60 */ 139, 14,131,193, 4, 49,192,243,171,137,252, 86, 97,151, 81, 80,
|
||||
/* 0x1a70 */ 82,195,137,254,235, 29,138, 7,131,199, 1, 60,128,114, 10, 60,
|
||||
/* 0x1a80 */ 143,119, 6,128,127,254, 15,116, 5, 44,232, 60, 1,119,255, 56,
|
||||
/* 0x1a90 */ 23,117,255,139, 7,102,193,232, 8,193,192, 16,134,196, 41,248,
|
||||
/* 0x1aa0 */ 1,240,137, 7,131,199, 4,131,233, 4,138, 7,131,199, 1,226,
|
||||
/* 0x1a70 */ 82,195,137,254,235, 31,138, 7, 71, 60,128,114, 10, 60,143,119,
|
||||
/* 0x1a80 */ 6,128,127,254, 15,116, 5, 44,232, 60, 1,119,255,131,249, 4,
|
||||
/* 0x1a90 */ 114, 4,139, 7, 40,208,117,255,134,196,193,192, 16,134,196, 41,
|
||||
/* 0x1aa0 */ 248, 1,240,131,233, 4,171,131,233, 1,114, 4,138, 7, 71,235,
|
||||
/* 0x1ab0 */ 13,131,233, 1,127, 3, 97,195,106, 29, 90,232, 29, 0, 0, 0,
|
||||
/* 0x1ac0 */ 80, 82, 79, 84, 95, 69, 88, 69, 67,124, 80, 82, 79, 84, 95, 87,
|
||||
/* 0x1ad0 */ 82, 73, 84, 69, 32,102, 97,105,108,101,100, 46, 10, 89,106, 2,
|
||||
@@ -1346,7 +1346,7 @@ unsigned char stub_i386_linux_elf_entry[38226] = {
|
||||
/* 0x51b0 */ 32, 48, 48, 48, 48, 49, 97, 54, 99, 32, 32, 50, 42, 42, 48, 32,
|
||||
/* 0x51c0 */ 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79,
|
||||
/* 0x51d0 */ 78, 76, 89, 10, 49, 54, 49, 32, 99,116,111,107, 51, 50, 46, 48,
|
||||
/* 0x51e0 */ 48, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 57, 32, 32,
|
||||
/* 0x51e0 */ 48, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 55, 32, 32,
|
||||
/* 0x51f0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x5200 */ 48, 48, 32, 32, 48, 48, 48, 48, 49, 97, 55, 50, 32, 32, 50, 42,
|
||||
/* 0x5210 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69,
|
||||
@@ -1354,18 +1354,18 @@ unsigned char stub_i386_linux_elf_entry[38226] = {
|
||||
/* 0x5230 */ 50, 32, 99,116,111,107, 51, 50, 46, 49, 48, 32, 32, 32, 32, 32,
|
||||
/* 0x5240 */ 48, 48, 48, 48, 48, 48, 48,101, 32, 32, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x5250 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
|
||||
/* 0x5260 */ 48, 48, 49, 97, 55, 98, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79,
|
||||
/* 0x5260 */ 48, 48, 49, 97, 55, 57, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79,
|
||||
/* 0x5270 */ 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82,
|
||||
/* 0x5280 */ 69, 65, 68, 79, 78, 76, 89, 10, 49, 54, 51, 32, 99,116,111,107,
|
||||
/* 0x5290 */ 51, 50, 46, 50, 48, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x52a0 */ 50, 49, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
|
||||
/* 0x52b0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 97, 56, 57,
|
||||
/* 0x52a0 */ 50, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
|
||||
/* 0x52b0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 97, 56, 55,
|
||||
/* 0x52c0 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83,
|
||||
/* 0x52d0 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76,
|
||||
/* 0x52e0 */ 89, 10, 49, 54, 52, 32, 99,116,111,107, 51, 50, 46, 51, 48, 32,
|
||||
/* 0x52f0 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 55, 32, 32, 48, 48,
|
||||
/* 0x52f0 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 97, 32, 32, 48, 48,
|
||||
/* 0x5300 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x5310 */ 32, 32, 48, 48, 48, 48, 49, 97, 97, 97, 32, 32, 50, 42, 42, 48,
|
||||
/* 0x5310 */ 32, 32, 48, 48, 48, 48, 49, 97, 97, 55, 32, 32, 50, 42, 42, 48,
|
||||
/* 0x5320 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79,
|
||||
/* 0x5330 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 49, 54, 53, 32,
|
||||
/* 0x5340 */ 99,116,111,107, 51, 50, 46, 52, 48, 32, 32, 32, 32, 32, 48, 48,
|
||||
@@ -2401,29 +2401,33 @@ unsigned char stub_i386_linux_elf_entry[38226] = {
|
||||
/* 0x93a0 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 53, 32, 82, 95,
|
||||
/* 0x93b0 */ 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32, 32, 32, 32, 32, 32,
|
||||
/* 0x93c0 */ 99,116,111,107, 51, 50, 46, 52, 48, 10, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x93d0 */ 48, 57, 32, 82, 95, 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32,
|
||||
/* 0x93e0 */ 32, 32, 32, 32, 32, 99,116,111,107, 51, 50, 46, 52, 48, 10, 10,
|
||||
/* 0x93f0 */ 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82,
|
||||
/* 0x9400 */ 68, 83, 32, 70, 79, 82, 32, 91, 99,116,111,107, 51, 50, 46, 51,
|
||||
/* 0x9410 */ 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80,
|
||||
/* 0x9420 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86,
|
||||
/* 0x9430 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 54, 32, 82, 95,
|
||||
/* 0x9440 */ 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32, 32, 32, 32, 32, 32,
|
||||
/* 0x9450 */ 99,116,111,107, 51, 50, 46, 49, 48, 10, 10, 82, 69, 76, 79, 67,
|
||||
/* 0x9460 */ 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79,
|
||||
/* 0x9470 */ 82, 32, 91, 99,116,111,107, 51, 50, 46, 52, 48, 93, 58, 10, 79,
|
||||
/* 0x9480 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32,
|
||||
/* 0x9490 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10,
|
||||
/* 0x94a0 */ 48, 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 51, 56, 54, 95, 80,
|
||||
/* 0x94b0 */ 67, 56, 32, 32, 32, 32, 32, 32, 32, 32, 32, 99,116,111,107, 51,
|
||||
/* 0x94c0 */ 50, 46, 48, 48, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78,
|
||||
/* 0x94d0 */ 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 69,
|
||||
/* 0x94e0 */ 88, 69, 67, 48, 50, 53, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
|
||||
/* 0x94f0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
|
||||
/* 0x9500 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x9510 */ 51, 54, 32, 82, 95, 51, 56, 54, 95, 80, 67, 51, 50, 32, 32, 32,
|
||||
/* 0x9520 */ 32, 32, 32, 32, 32, 76, 69, 88, 69, 67, 48, 50, 48, 10, 48, 48,
|
||||
/* 0x9530 */ 48, 48, 48, 48, 49, 56, 32, 82, 95, 51, 56, 54, 95, 80, 67, 51,
|
||||
/* 0x9540 */ 50, 32, 32, 32, 32, 32, 32, 32, 32, 76, 69, 88, 69, 67, 48, 50,
|
||||
/* 0x9550 */ 48, 10
|
||||
/* 0x93d0 */ 48, 97, 32, 82, 95, 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32,
|
||||
/* 0x93e0 */ 32, 32, 32, 32, 32, 99,116,111,107, 51, 50, 46, 52, 48, 10, 48,
|
||||
/* 0x93f0 */ 48, 48, 48, 48, 48, 49, 48, 32, 82, 95, 51, 56, 54, 95, 80, 67,
|
||||
/* 0x9400 */ 56, 32, 32, 32, 32, 32, 32, 32, 32, 32, 99,116,111,107, 51, 50,
|
||||
/* 0x9410 */ 46, 52, 48, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32,
|
||||
/* 0x9420 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 99,116,111,
|
||||
/* 0x9430 */ 107, 51, 50, 46, 51, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
|
||||
/* 0x9440 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
|
||||
/* 0x9450 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x9460 */ 48, 52, 32, 82, 95, 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32,
|
||||
/* 0x9470 */ 32, 32, 32, 32, 32, 99,116,111,107, 51, 50, 46, 52, 48, 10, 48,
|
||||
/* 0x9480 */ 48, 48, 48, 48, 48, 48, 57, 32, 82, 95, 51, 56, 54, 95, 80, 67,
|
||||
/* 0x9490 */ 56, 32, 32, 32, 32, 32, 32, 32, 32, 32, 99,116,111,107, 51, 50,
|
||||
/* 0x94a0 */ 46, 49, 48, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32,
|
||||
/* 0x94b0 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 99,116,111,
|
||||
/* 0x94c0 */ 107, 51, 50, 46, 52, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
|
||||
/* 0x94d0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
|
||||
/* 0x94e0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
|
||||
/* 0x94f0 */ 48, 52, 32, 82, 95, 51, 56, 54, 95, 80, 67, 56, 32, 32, 32, 32,
|
||||
/* 0x9500 */ 32, 32, 32, 32, 32, 99,116,111,107, 51, 50, 46, 48, 48, 10, 10,
|
||||
/* 0x9510 */ 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82,
|
||||
/* 0x9520 */ 68, 83, 32, 70, 79, 82, 32, 91, 76, 69, 88, 69, 67, 48, 50, 53,
|
||||
/* 0x9530 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69,
|
||||
/* 0x9540 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
|
||||
/* 0x9550 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 51, 54, 32, 82, 95, 51,
|
||||
/* 0x9560 */ 56, 54, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 32, 32, 32, 76,
|
||||
/* 0x9570 */ 69, 88, 69, 67, 48, 50, 48, 10, 48, 48, 48, 48, 48, 48, 49, 56,
|
||||
/* 0x9580 */ 32, 82, 95, 51, 56, 54, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32,
|
||||
/* 0x9590 */ 32, 32, 32, 76, 69, 88, 69, 67, 48, 50, 48, 10
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user