diff --git a/src/stub/amd_d_nrv2b.S b/src/stub/amd_d_nrv2b.S index 2ebdf5c8..0d977868 100644 --- a/src/stub/amd_d_nrv2b.S +++ b/src/stub/amd_d_nrv2b.S @@ -29,7 +29,7 @@ */ - ALIGN(1<<3) + .p2align 3 lit_n2b: incq %rsi; movb %dl,(%rdi) incq %rdi diff --git a/src/stub/amd_d_nrv2e.S b/src/stub/amd_d_nrv2e.S index 8bcc29f4..d1f8d108 100644 --- a/src/stub/amd_d_nrv2e.S +++ b/src/stub/amd_d_nrv2e.S @@ -29,7 +29,7 @@ */ - ALIGN(1<<3) + .p2align 3 lit_n2e: incq %rsi; movb %dl,(%rdi) incq %rdi diff --git a/src/stub/fold_elf64amd.h b/src/stub/fold_elf64amd.h index b799d423..85c4945e 100644 --- a/src/stub/fold_elf64amd.h +++ b/src/stub/fold_elf64amd.h @@ -1,4 +1,4 @@ -/* fold_elf64amd.h -- created from fold_elf64amd.bin, 1653 (0x675) bytes +/* fold_elf64amd.h -- created from fold_elf64amd.bin, 1696 (0x6a0) bytes This file is part of the UPX executable compressor. @@ -27,21 +27,21 @@ */ -#define LINUX_ELF64AMD_FOLD_SIZE 1653 -#define LINUX_ELF64AMD_FOLD_ADLER32 0xd8f37766 -#define LINUX_ELF64AMD_FOLD_CRC32 0xb2c19390 +#define LINUX_ELF64AMD_FOLD_SIZE 1696 +#define LINUX_ELF64AMD_FOLD_ADLER32 0x8e868b92 +#define LINUX_ELF64AMD_FOLD_CRC32 0xfc2cafa4 -unsigned char linux_elf64amd_fold[1653] = { +unsigned char linux_elf64amd_fold[1696] = { 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 0 */ 2, 0, 62, 0, 1, 0, 0, 0,188, 0, 16, 0, 0, 0, 0, 0, /* 0x 10 */ 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 20 */ 0, 0, 0, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0, 0, /* 0x 30 */ 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 40 */ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, /* 0x 50 */ -117, 6, 0, 0, 0, 0, 0, 0,120, 6, 0, 0, 0, 0, 0, 0, /* 0x 60 */ +160, 6, 0, 0, 0, 0, 0, 0,160, 6, 0, 0, 0, 0, 0, 0, /* 0x 60 */ 0, 0, 16, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6, 0, 0, 0, /* 0x 70 */ -117, 6, 0, 0, 0, 0, 0, 0,120, 6, 16, 0, 0, 0, 0, 0, /* 0x 80 */ -120, 6, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 90 */ +160, 6, 0, 0, 0, 0, 0, 0,160, 6, 16, 0, 0, 0, 0, 0, /* 0x 80 */ +160, 6, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 90 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, /* 0x a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,232, 80, 0, 0, /* 0x b0 */ 0,131,249, 73,117, 74, 72,137,241, 72,137,254,235, 44,138, 7, /* 0x c0 */ @@ -51,89 +51,91 @@ unsigned char linux_elf64amd_fold[1653] = { 72,131,199, 1, 72,255,201,117,217,235, 5, 72,255,201,117,190, /* 0x 100 */ 195, 72,141,116, 36, 56, 72,173, 72,133,192,117,249, 72,173, 72, /* 0x 110 */ 133,192,117,249, 65, 89, 72,137,241, 94, 95, 72,129,236, 0, 8, /* 0x 120 */ - 0, 0, 72,137,226, 73,137,232,232, 27, 4, 0, 0, 72,129,196, /* 0x 130 */ + 0, 0, 72,137,226, 73,137,232,232, 65, 4, 0, 0, 72,129,196, /* 0x 130 */ 0, 8, 0, 0, 94, 95, 89, 80,106, 11, 88,255,225,176, 11,235, /* 0x 140 */ 13,176, 10,235, 9,176, 12,235, 5,176, 9, 73,137,202, 15,182, /* 0x 150 */ 192, 15, 5, 72, 61, 0,240,255,255,114, 4, 72,131,200,255,195, /* 0x 160 */ 176, 0,235,234,176, 2,235,230,176, 3,235,226,176, 60,235,222, /* 0x 170 */ - 81, 49,201, 72, 57, 23, 76,139, 71, 8,115, 20,191,127, 0, 0, /* 0x 180 */ - 0,232,230,255,255,255, 66,138, 4, 1,136, 4, 49, 72,255,193, /* 0x 190 */ - 72, 57,209,117,241, 72, 1, 87, 8, 72, 41, 23, 88,195, 65, 85, /* 0x 1a0 */ - 73,137,213, 65, 84, 73,137,204, 85, 72,137,253, 83, 72,137,243, /* 0x 1b0 */ - 72,131,236, 24,233,200, 0, 0, 0,186, 12, 0, 0, 0, 72,137, /* 0x 1c0 */ -230, 72,137,239,232,167,255,255,255,139, 20, 36,139,116, 36, 4, /* 0x 1d0 */ -133,210,117, 20,129,254, 85, 80, 88, 33,117, 16, 72,131,125, 0, /* 0x 1e0 */ - 0,117, 9,233,163, 0, 0, 0,133,246,117, 10,191,127, 0, 0, /* 0x 1f0 */ - 0,232,118,255,255,255, 57,214,119,242,137,208, 72, 59, 3,119, /* 0x 200 */ -235, 57,214, 72,139, 67, 8,115, 97, 68, 15,182, 68, 36, 8, 72, /* 0x 210 */ -139,125, 8, 72,141, 76, 36, 12, 72,137,194, 65,255,213,133,192, /* 0x 220 */ -117,202,139,116, 36, 12, 59, 52, 36,117,193,138, 76, 36, 9,132, /* 0x 230 */ -201, 15,149,194, 77,133,228, 15,149,192,132,208,116, 30,129,254, /* 0x 240 */ - 0, 2, 0, 0,119, 7,137,240, 72, 57, 3,117, 15, 15,182, 84, /* 0x 250 */ - 36, 10, 15,182,201, 72,139,123, 8, 65,255,212,139, 68, 36, 4, /* 0x 260 */ - 72, 1, 69, 8, 72, 41, 69, 0,235, 13,137,242, 72,137,239, 72, /* 0x 270 */ -137,198,232,249,254,255,255,139, 4, 36, 72, 1, 67, 8, 72, 41, /* 0x 280 */ - 3, 72,131, 59, 0, 15,133, 46,255,255,255, 72,131,196, 24, 91, /* 0x 290 */ - 93, 65, 92, 65, 93,195, 72,133,255, 73,137,208,116, 39, 72,139, /* 0x 2a0 */ - 7,137,241, 72, 57,200,116, 15, 72,255,200, 15,148,194,133,246, /* 0x 2b0 */ - 15,149,192,132,208,116, 8, 72,137, 15, 76,137, 71, 8,195, 72, /* 0x 2c0 */ -131,199, 16,235,217,195, 65, 87, 73,137,255,184, 16, 0, 0, 0, /* 0x 2d0 */ - 65, 86, 65, 85, 65, 84, 85, 72,137,253, 83, 72,131,236,104, 72, /* 0x 2e0 */ - 3,111, 32,102, 65,131,127, 16, 3,137, 84, 36, 28, 15,183,127, /* 0x 2f0 */ - 56,186, 0, 0, 0, 0, 72,137, 76, 36, 16, 72,137,116, 36, 32, /* 0x 300 */ - 76,137, 68, 36, 8, 76,137, 12, 36, 15, 68,194, 72,137,234, 73, /* 0x 310 */ -131,204,255,141, 72, 34, 49,246,235, 31,131, 58, 1,117, 22, 72, /* 0x 320 */ -139, 66, 16, 76, 57,224, 76, 15, 66,224, 72, 3, 66, 40, 72, 57, /* 0x 330 */ -198, 72, 15, 66,240, 72,131,194, 56,255,207,121,221, 73,129,228, /* 0x 340 */ - 0,240,255,255, 69, 49,201, 65,131,200,255, 76, 41,230, 49,210, /* 0x 350 */ - 76,137,231, 72,141,158,255, 15, 0, 0, 72,129,227, 0,240,255, /* 0x 360 */ -255, 72,137,222,232,224,253,255,255, 72,141, 28, 24, 76, 41,224, /* 0x 370 */ -199, 68, 36, 60, 0, 0, 0, 0, 72,137, 68, 36, 48, 72,137, 92, /* 0x 380 */ - 36, 40,233,123, 1, 0, 0, 72,131,124, 36, 32, 0,116, 35,131, /* 0x 390 */ -125, 0, 6,117, 29, 72,139, 84, 36, 48, 72, 3, 85, 16,190, 3, /* 0x 3a0 */ - 0, 0, 0, 72,139,124, 36, 16,232,233,254,255,255,233, 72, 1, /* 0x 3b0 */ - 0, 0,131,125, 0, 1, 15,133, 62, 1, 0, 0, 72,139, 68, 36, /* 0x 3c0 */ - 48, 72, 3, 69, 16, 65,190, 64, 98, 81,115, 72,139, 85, 40,139, /* 0x 3d0 */ - 77, 4, 68,139, 68, 36, 28, 72, 1,194,131,225, 7, 73,137,196, /* 0x 3e0 */ - 72,137, 68, 36, 88, 72,137, 84, 36, 64, 72,137,194, 72,141, 69, /* 0x 3f0 */ - 8,193,225, 2,129,226,255, 15, 0, 0, 65,211,238, 72,139, 77, /* 0x 400 */ - 32, 73, 41,212, 72,137, 68, 36, 72, 72,139, 69, 8, 65,131,230, /* 0x 410 */ - 7, 76,141, 44, 17, 72,137, 76, 36, 80,185, 18, 0, 0, 0, 72, /* 0x 420 */ - 41,208, 49,210, 72,131,124, 36, 32, 0,116, 8,178, 2, 65,131, /* 0x 430 */ -200,255,177, 50, 68, 9,242, 73,137,193, 76,137,238, 76,137,231, /* 0x 440 */ -232, 4,253,255,255, 73, 57,196,117,112, 72,131,124, 36, 32, 0, /* 0x 450 */ -116, 24, 72,139, 12, 36, 72,139, 84, 36, 8, 72,141,116, 36, 80, /* 0x 460 */ - 72,139,124, 36, 32,232, 52,253,255,255, 76,137,235, 68,137,240, /* 0x 470 */ - 72,247,219,131,224, 2,129,227,255, 15, 0, 0,133,192,116, 12, /* 0x 480 */ - 75,141, 60, 44, 49,192, 72,137,217,252,243,170, 72,131,124, 36, /* 0x 490 */ - 32, 0,116, 48, 72,139, 84, 36, 72, 72,131, 58, 0,117, 9, 65, /* 0x 4a0 */ -199, 68, 36, 12, 15, 5,195,144, 68,137,242, 76,137,238, 76,137, /* 0x 4b0 */ -231,232,139,252,255,255,133,192,116, 10,191,127, 0, 0, 0,232, /* 0x 4c0 */ -168,252,255,255, 73,141, 68, 29, 0, 73,141, 28, 4, 72, 59, 92, /* 0x 4d0 */ - 36, 64,115, 38, 72, 41, 92, 36, 64, 69, 49,201, 65,131,200,255, /* 0x 4e0 */ - 72,139,116, 36, 64,185, 50, 0, 0, 0, 68,137,242, 72,137,223, /* 0x 4f0 */ -232, 84,252,255,255, 72, 57,195,117,192,255, 68, 36, 60, 72,131, /* 0x 500 */ -197, 56, 65, 15,183, 71, 56, 57, 68, 36, 60, 15,140,118,254,255, /* 0x 510 */ -255, 72,131,124, 36, 32, 0,116, 18,102, 65,131,127, 16, 3,116, /* 0x 520 */ - 10, 72,139,124, 36, 40,232, 26,252,255,255, 73,139, 71, 24, 72, /* 0x 530 */ - 1, 68, 36, 48, 72,139, 68, 36, 48, 72,131,196,104, 91, 93, 65, /* 0x 540 */ - 92, 65, 93, 65, 94, 65, 95,195, 65, 86, 76,141,114, 64, 65, 85, /* 0x 550 */ - 77,137,205, 65, 84, 77,137,196, 85, 72,137,213, 83, 72,137,203, /* 0x 560 */ - 49,201, 72,131,236, 48,139, 7, 72,137, 52, 36, 72,137,116, 36, /* 0x 570 */ - 16, 72,141,116, 36, 32, 72,137, 84, 36, 40, 72,137,124, 36, 8, /* 0x 580 */ - 76,137,194, 72,137,124, 36, 24, 72,137,231, 72,137, 68, 36, 32, /* 0x 590 */ -232, 9,252,255,255, 73,139, 86, 16,190, 3, 0, 0, 0, 72,137, /* 0x 5a0 */ -223, 72,131,194, 64,232,236,252,255,255, 72, 15,183, 85, 56,190, /* 0x 5b0 */ - 5, 0, 0, 0, 72,137,223,232,218,252,255,255, 72,139, 85, 24, /* 0x 5c0 */ -190, 9, 0, 0, 0, 72,137,223,232,201,252,255,255, 72,141,116, /* 0x 5d0 */ - 36, 16, 77,137,233, 77,137,224, 72,137,217, 49,210, 72,137,239, /* 0x 5e0 */ -232,225,252,255,255, 69, 49,237, 73,137,196,235, 95, 65,131, 62, /* 0x 5f0 */ - 3,117, 82, 73,139,126, 16, 49,210, 49,246,232,100,251,255,255, /* 0x 600 */ -133,192,137,195,120, 23,186, 0, 4, 0, 0, 72,137,238,137,199, /* 0x 610 */ -232, 75,251,255,255, 72, 61, 0, 4, 0, 0,116, 10,191,127, 0, /* 0x 620 */ - 0, 0,232, 69,251,255,255, 72,137,239, 69, 49,201, 69, 49,192, /* 0x 630 */ - 49,201,137,218, 49,246,232,139,252,255,255,137,223, 73,137,196, /* 0x 640 */ -232, 35,251,255,255, 73,131,198, 56, 65,255,197, 15,183, 69, 56, /* 0x 650 */ - 65, 57,197,124,152, 72,131,196, 48, 76,137,224, 91, 93, 65, 92, /* 0x 660 */ - 65, 93, 65, 94,195 /* 0x 670 */ + 81, 72, 57, 23, 76,139, 71, 8, 72,141, 74,255,115, 10,191,127, /* 0x 180 */ + 0, 0, 0,232,228,255,255,255, 72,131,249,255,116, 17, 65, 15, /* 0x 190 */ +182, 0, 72,255,201, 73,255,192,136, 6, 72,255,198,235,233, 72, /* 0x 1a0 */ + 1, 87, 8, 72, 41, 23, 88,195, 65, 85, 73,137,213, 65, 84, 73, /* 0x 1b0 */ +137,204, 85, 72,137,253, 83, 72,137,243, 72,131,236, 40, 72,131, /* 0x 1c0 */ + 62, 0, 15,132,223, 0, 0, 0, 72,141,116, 36, 16,186, 12, 0, /* 0x 1d0 */ + 0, 0, 72,137,239,232,150,255,255,255,139, 84, 36, 16,139,116, /* 0x 1e0 */ + 36, 20,133,210,117, 21,129,254, 85, 80, 88, 33,117, 17, 72,131, /* 0x 1f0 */ +125, 0, 0, 15,132,174, 0, 0, 0,235, 4,133,246,117, 10,191, /* 0x 200 */ +127, 0, 0, 0,232, 99,255,255,255, 57,214,119,242,137,208, 72, /* 0x 210 */ + 59, 3,119,235, 57,214, 72,139, 67, 8,115,101, 68, 15,182, 68, /* 0x 220 */ + 36, 24, 72,139,125, 8, 72,141, 76, 36, 12, 72,137,194, 65,255, /* 0x 230 */ +213,133,192,117,202,139,116, 36, 12, 59,116, 36, 16,117,192, 15, /* 0x 240 */ +182, 76, 36, 25,132,201, 15,149,194, 49,192, 77,133,228, 15,149, /* 0x 250 */ +192,133,194,116, 30,129,254, 0, 2, 0, 0,119, 7,137,240, 72, /* 0x 260 */ + 57, 3,117, 15, 15,182, 84, 36, 26, 15,182,201, 72,139,123, 8, /* 0x 270 */ + 65,255,212,139, 68, 36, 20, 72, 1, 69, 8, 72, 41, 69, 0,235, /* 0x 280 */ + 13,137,242, 72,137,239, 72,137,198,232,226,254,255,255,139, 84, /* 0x 290 */ + 36, 16, 72,139, 3, 72, 1, 83, 8, 72, 41,208, 72,133,192, 72, /* 0x 2a0 */ +137, 3,233, 27,255,255,255, 72,131,196, 40, 91, 93, 65, 92, 65, /* 0x 2b0 */ + 93,195, 72,133,255, 73,137,208,116, 41, 72,139, 7,137,241, 72, /* 0x 2c0 */ + 57,200,116, 17, 72,255,200, 15,148,194, 49,192,133,246, 15,149, /* 0x 2d0 */ +192,133,194,116, 8, 72,137, 15, 76,137, 71, 8,195, 72,131,199, /* 0x 2e0 */ + 16,235,215,195, 65, 87,184, 0, 0, 0, 0, 73,137,255, 65, 86, /* 0x 2f0 */ + 65, 85, 65, 84, 73,137,252, 85, 83, 72,131,236,104, 76, 3,103, /* 0x 300 */ + 32,102,131,127, 16, 3,137, 84, 36, 60, 15,183, 87, 56, 72,137, /* 0x 310 */ + 76, 36, 48,185, 16, 0, 0, 0, 72,137,116, 36, 64, 76,137, 68, /* 0x 320 */ + 36, 40, 76,137, 76, 36, 32, 15, 68,200, 76,137,230, 72,131,205, /* 0x 330 */ +255, 49,219,131,193, 34,255,202,120, 33,131, 62, 1,117, 22, 72, /* 0x 340 */ +139, 70, 16, 72, 57,232, 72, 15, 66,232, 72, 3, 70, 40, 72, 57, /* 0x 350 */ +195, 72, 15, 66,216, 72,131,198, 56,235,219, 72,129,229, 0,240, /* 0x 360 */ +255,255, 49,210, 69, 49,201, 72, 41,235, 65,131,200,255, 72,137, /* 0x 370 */ +239, 72,129,195,255, 15, 0, 0, 72,129,227, 0,240,255,255, 72, /* 0x 380 */ +137,222,232,194,253,255,255, 72,141, 20, 24, 72, 41,232,102, 65, /* 0x 390 */ +131,127, 56, 0, 72,137, 68, 36, 24,199, 68, 36, 20, 0, 0, 0, /* 0x 3a0 */ + 0, 72,137, 84, 36, 72, 15,132,139, 1, 0, 0, 72,131,124, 36, /* 0x 3b0 */ + 64, 0,116, 37, 65,131, 60, 36, 6,117, 30, 72,139, 84, 36, 24, /* 0x 3c0 */ + 73, 3, 84, 36, 16,190, 3, 0, 0, 0, 72,139,124, 36, 48,232, /* 0x 3d0 */ +222,254,255,255,233, 71, 1, 0, 0, 65,131, 60, 36, 1, 15,133, /* 0x 3e0 */ + 60, 1, 0, 0, 72,139, 68, 36, 24, 73, 3, 68, 36, 16, 65,190, /* 0x 3f0 */ + 64, 98, 81,115, 65,139, 76, 36, 4, 65,131,200,255, 73,139, 84, /* 0x 400 */ + 36, 32, 72,137,197, 72,137, 68, 36, 88, 73,139, 68, 36, 40,131, /* 0x 410 */ +225, 7, 72,137,235, 72,137, 84, 36, 80,193,225, 2,129,227,255, /* 0x 420 */ + 15, 0, 0, 72, 1,232, 65,211,238, 72, 41,221, 72,137, 68, 36, /* 0x 430 */ + 8, 73,139, 68, 36, 8, 65,131,230, 7, 76,141, 44, 26,185, 50, /* 0x 440 */ + 0, 0, 0, 72, 41,216, 72,131,124, 36, 64, 0,117, 7, 68,139, /* 0x 450 */ + 68, 36, 60,177, 18, 68,137,242, 73,137,193, 76,137,238,131,202, /* 0x 460 */ + 2, 72,131,124, 36, 64, 0, 72,137,239, 65, 15, 68,214,232,214, /* 0x 470 */ +252,255,255, 72, 57,197,117,105, 72,131,124, 36, 64, 0,116, 25, /* 0x 480 */ + 72,139, 76, 36, 32, 72,139, 84, 36, 40, 72,141,116, 36, 80, 72, /* 0x 490 */ +139,124, 36, 64,232, 15,253,255,255, 76,137,235, 72,247,219,129, /* 0x 4a0 */ +227,255, 15, 0, 0, 65,246,198, 2,116, 13, 74,141,124, 45, 0, /* 0x 4b0 */ + 49,192, 72,137,217,252,243,170, 72,131,124, 36, 64, 0,116, 43, /* 0x 4c0 */ + 73,131,124, 36, 8, 0,117, 7,199, 69, 12, 15, 5,195,144, 68, /* 0x 4d0 */ +137,242, 76,137,238, 72,137,239,232,100,252,255,255,133,192,116, /* 0x 4e0 */ + 10,191,127, 0, 0, 0,232,129,252,255,255, 73,141, 68, 29, 0, /* 0x 4f0 */ + 72, 1,197, 72, 59,108, 36, 8,115, 38, 72, 41,108, 36, 8, 69, /* 0x 500 */ + 49,201, 65,131,200,255, 72,139,116, 36, 8,185, 50, 0, 0, 0, /* 0x 510 */ + 68,137,242, 72,137,239,232, 46,252,255,255, 72, 57,197,117,193, /* 0x 520 */ +255, 68, 36, 20, 65, 15,183, 71, 56, 73,131,196, 56, 57, 68, 36, /* 0x 530 */ + 20, 15,140,117,254,255,255, 72,131,124, 36, 64, 0,116, 18,102, /* 0x 540 */ + 65,131,127, 16, 3,116, 10, 72,139,124, 36, 72,232,244,251,255, /* 0x 550 */ +255, 73,139, 71, 24, 72, 1, 68, 36, 24, 72,139, 68, 36, 24, 72, /* 0x 560 */ +131,196,104, 91, 93, 65, 92, 65, 93, 65, 94, 65, 95,195, 65, 86, /* 0x 570 */ + 76,141,114, 64, 65, 85, 77,137,205, 65, 84, 77,137,196, 85, 72, /* 0x 580 */ +137,213, 83, 72,137,203, 49,201, 72,131,236, 48,139, 7, 72,137, /* 0x 590 */ + 52, 36, 72,137,116, 36, 16, 72,141,116, 36, 32, 72,137, 84, 36, /* 0x 5a0 */ + 40, 72,137,124, 36, 8, 76,137,194, 72,137,124, 36, 24, 72,137, /* 0x 5b0 */ +231, 72,137, 68, 36, 32,232,237,251,255,255, 73,139, 86, 16,190, /* 0x 5c0 */ + 3, 0, 0, 0, 72,137,223, 72,131,194, 64,232,226,252,255,255, /* 0x 5d0 */ + 72, 15,183, 85, 56,190, 5, 0, 0, 0, 72,137,223,232,208,252, /* 0x 5e0 */ +255,255, 72,139, 85, 24,190, 9, 0, 0, 0, 72,137,223,232,191, /* 0x 5f0 */ +252,255,255, 72,141,116, 36, 16, 77,137,233, 77,137,224, 49,210, /* 0x 600 */ + 72,137,217, 72,137,239,232,217,252,255,255, 69, 49,237,102,131, /* 0x 610 */ +125, 56, 0, 73,137,196,116,104, 65,131, 62, 3,117, 82, 73,139, /* 0x 620 */ +126, 16, 49,210, 49,246,232, 57,251,255,255,133,192,137,195,120, /* 0x 630 */ + 23,186, 0, 4, 0, 0, 72,137,238,137,199,232, 32,251,255,255, /* 0x 640 */ + 72, 61, 0, 4, 0, 0,116, 10,191,127, 0, 0, 0,232, 26,251, /* 0x 650 */ +255,255, 72,137,239, 69, 49,201, 69, 49,192, 49,201,137,218, 49, /* 0x 660 */ +246,232,126,252,255,255,137,223, 73,137,196,232,248,250,255,255, /* 0x 670 */ + 15,183, 69, 56, 65,255,197, 73,131,198, 56, 65, 57,197,124,152, /* 0x 680 */ + 72,131,196, 48, 76,137,224, 91, 93, 65, 92, 65, 93, 65, 94,195 /* 0x 690 */ }; diff --git a/src/stub/fold_elf86.h b/src/stub/fold_elf86.h index 60254394..48b354f8 100644 --- a/src/stub/fold_elf86.h +++ b/src/stub/fold_elf86.h @@ -28,8 +28,8 @@ #define LINUX_I386ELF_FOLD_SIZE 1603 -#define LINUX_I386ELF_FOLD_ADLER32 0x34baaf28 -#define LINUX_I386ELF_FOLD_CRC32 0xd41e0330 +#define LINUX_I386ELF_FOLD_ADLER32 0x1795acee +#define LINUX_I386ELF_FOLD_CRC32 0x5e8d9f2f unsigned char linux_i386elf_fold[1603] = { 127, 69, 76, 70, 1, 1, 1, 0, 76,105,110,117,120, 0, 0, 0, /* 0x 0 */ @@ -37,8 +37,8 @@ unsigned char linux_i386elf_fold[1603] = { 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, 67, 6, 0, 0, 68, 6, 0, 0, 5, 0, 0, 0, /* 0x 40 */ - 0, 16, 0, 0, 1, 0, 0, 0, 67, 6, 0, 0, 68, 22,192, 0, /* 0x 50 */ - 68, 22,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, /* 0x 60 */ + 0, 16, 0, 0, 1, 0, 0, 0, 67, 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 */ 41,201,186,120, 2, 0, 0,137,230,137,231,232,115, 0, 0, 0, /* 0x 80 */ 137,230,209,234, 25,192, 41,193,141, 36,196,133,210,117,243,137, /* 0x 90 */ diff --git a/src/stub/fold_pti86.h b/src/stub/fold_pti86.h index 9afe2b45..83d9c06d 100644 --- a/src/stub/fold_pti86.h +++ b/src/stub/fold_pti86.h @@ -28,8 +28,8 @@ #define LINUX_I386PTI_FOLD_SIZE 1531 -#define LINUX_I386PTI_FOLD_ADLER32 0x90e59978 -#define LINUX_I386PTI_FOLD_CRC32 0xdd8fa001 +#define LINUX_I386PTI_FOLD_ADLER32 0x1e80976e +#define LINUX_I386PTI_FOLD_CRC32 0x3aeb0ab7 unsigned char linux_i386pti_fold[1531] = { 127, 69, 76, 70, 1, 1, 1, 0, 76,105,110,117,120, 0, 0, 0, /* 0x 0 */ @@ -37,8 +37,8 @@ unsigned char linux_i386pti_fold[1531] = { 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, 0, 1, 0, /* 0x 30 */ 0, 0, 1, 0,251, 5, 0, 0,252, 5, 0, 0, 5, 0, 0, 0, /* 0x 40 */ - 0, 16, 0, 0, 1, 0, 0, 0,251, 5, 0, 0,252, 5, 1, 0, /* 0x 50 */ -252, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, /* 0x 60 */ + 0, 16, 0, 0, 1, 0, 0, 0,251, 5, 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 */ 93, 89, 88,141,124,132, 4, 80, 41,192,175,117,253,175,137,254, /* 0x 80 */ 139, 6,131,248, 3,116, 8,131,198, 8,131,248, 0,117,241,139, /* 0x 90 */ diff --git a/src/stub/l_armpe_s.S b/src/stub/l_armpe_s.S index 8ee6c7ef..165c4e30 100644 --- a/src/stub/l_armpe_s.S +++ b/src/stub/l_armpe_s.S @@ -44,7 +44,7 @@ .text - .align 0 + .balign 0 .globl upx_main .globl _start @@ -447,7 +447,7 @@ filename: @@@@@@@@@@@@@@@@ paramater area for UPX .code 32 - .align 2 + .p2align 2 SRC0: .ascii "SRC0" @ start of compressed data SRCL: .ascii "SRCL" @ compressed length DST0: .ascii "DST0" @ start of uncompressed data diff --git a/src/stub/l_lx_elf64amd.S b/src/stub/l_lx_elf64amd.S index 67275cad..e44106e9 100644 --- a/src/stub/l_lx_elf64amd.S +++ b/src/stub/l_lx_elf64amd.S @@ -58,7 +58,6 @@ PAGE_SIZE= -PAGE_MASK M_NRV2B_LE32=2 # ../conf.h M_NRV2E_LE32=8 -#define ALIGN(n) .align n /*__LEXEC000__*/ _start: .globl _start @@ -127,7 +126,7 @@ ra_setup: #define getnextbp(reg) call *%r11; adcl reg,reg #define getnextb(reg) getnextbp(reg) - ALIGN(1<<3) + .p2align 3 getbit: addl bits,bits; jz refill # Carry= next bit rep; ret @@ -170,7 +169,8 @@ eof: ret /* Temporary until we get the buildLoader stuff working ... */ - .asciz "\n$Id$\n" + .ascii "\n$Id: UPX (C) 1996-2006 the UPX Team. " + .asciz "All Rights Reserved. http://upx.sf.net $\n" /* These from /usr/include/asm-x86_64/unistd.h */ __NR_write = 1 diff --git a/src/stub/l_lx_elfppc32.S b/src/stub/l_lx_elfppc32.S index f298cff3..ceefd35e 100644 --- a/src/stub/l_lx_elfppc32.S +++ b/src/stub/l_lx_elfppc32.S @@ -55,8 +55,9 @@ PAGE_SHIFT= 12 PAGE_SIZE = -(~0<