arm/pe: saved 4 bytes in the arm mode stub

This commit is contained in:
László Molnár 2006-05-18 15:18:36 +02:00
parent b3e20fc324
commit af71e67681
2 changed files with 62 additions and 63 deletions

View File

@ -189,11 +189,10 @@ SECT(Unfilter_0x50):
cmp buffer, bufend
beq .Luf_end
ldrb r3, [buffer, #3]
and r3, r3, #0x0f
cmp r3, #0x0b
bne .Luf50_1
ldr r3, [buffer]
and r1, r3, #0x0f000000
cmp r1, #0x0b000000
bne .Luf50_1
and r1, r3, #0xff000000
sub r3, r3, addval
and r3, r3, #0x00ffffff

View File

@ -1,4 +1,4 @@
/* l_armpea.h -- created from l_armpea.bin, 956 (0x3bc) bytes
/* l_armpea.h -- created from l_armpea.bin, 952 (0x3b8) bytes
This file is part of the UPX executable compressor.
@ -27,69 +27,69 @@
*/
#define NRV_LOADER_ARM_SIZE 956
#define NRV_LOADER_ARM_ADLER32 0x244b77fa
#define NRV_LOADER_ARM_CRC32 0x734be74f
#define NRV_LOADER_ARM_SIZE 952
#define NRV_LOADER_ARM_ADLER32 0xd6f275cf
#define NRV_LOADER_ARM_CRC32 0x3a603f09
unsigned char nrv_loader_arm[956] = {
unsigned char nrv_loader_arm[952] = {
1, 0, 81,227, 8, 0, 0, 26,255, 79, 45,233, 32, 48,143,226, /* 0x 0 */
7, 0,179,232, 16, 12,147,232, 2,144,160,225, 13, 0, 0,235, /* 0x 10 */
4, 0,160,227, 1, 0, 0,235,255, 79,189,232, 32,240,159,229, /* 0x 20 */
20,240,159,229, 83, 82, 67, 48, 83, 82, 67, 76, 68, 83, 84, 48, /* 0x 30 */
68, 83, 84, 76, 73, 65, 84, 84, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 40 */
0, 0, 0, 0, 69, 78, 84, 82, 0, 64, 45,233, 0,128,189,232, /* 0x 50 */
64, 0,159,229, 0, 32,160,227, 60,192,159,229, 12, 0, 80,225, /* 0x 60 */
14, 0, 0, 10, 3, 48,208,229, 15, 48, 3,226, 11, 0, 83,227, /* 0x 70 */
5, 0, 0, 26, 0, 48,144,229,255, 20, 3,226, 2, 48, 67,224, /* 0x 80 */
255, 52,195,227, 1, 48,131,225, 0, 48,128,229, 4, 0,128,226, /* 0x 90 */
1, 32,130,226,240,255,255,234, 70, 73, 66, 83, 70, 73, 66, 69, /* 0x a0 */
84, 16,159,229, 4, 0, 73,226, 1, 48,209,228, 0, 0, 83,227, /* 0x b0 */
18, 0, 0, 10,240, 0, 83,227,240,192,195, 35, 1, 48,209, 37, /* 0x c0 */
12,196,131, 32, 2, 48,209, 36, 12, 52,131, 32, 3, 0,128,224, /* 0x d0 */
0, 48,208,229, 12,196,131,224, 1, 48,208,229, 12,196,131,224, /* 0x e0 */
2, 48,208,229, 12,196,131,224, 3, 48,208,229, 12,196,131,224, /* 0x f0 */
9,192,140,224, 0,192,128,229,234,255,255,234, 66, 82, 69, 76, /* 0x 100 */
2,219, 77,226,164, 64,159,229, 4, 0,160,225, 30, 0, 0,235, /* 0x 110 */
40, 0, 0, 10,152, 16,159,229, 1, 0,128,224, 13, 16,160,225, /* 0x 120 */
1, 32,208,228,178, 32,193,224, 0, 0, 82,227,251,255,255, 26, /* 0x 130 */
13, 0,160,225, 27, 0, 0,235, 0, 96,160,225, 4, 0,132,226, /* 0x 140 */
17, 0, 0,235, 0, 80,137,224, 8, 64,132,226, 1, 0,212,228, /* 0x 150 */
1, 0, 80,227,235,255,255, 74, 4, 0, 0, 26, 4, 16,160,225, /* 0x 160 */
1, 0,212,228, 0, 0, 80,227,252,255,255, 26, 2, 0, 0,234, /* 0x 170 */
1, 0,212,228, 1, 16,212,228, 1, 20,128,224, 6, 0,160,225, /* 0x 180 */
9, 0, 0,235, 4, 0,133,228,239,255,255,234, 3, 32,160,227, /* 0x 190 */
2, 48,208,231, 1, 32, 82,226, 1, 20,131,224,251,255,255, 90, /* 0x 1a0 */
1, 0,176,225, 14,240,160,225, 10,240,160,225, 11,240,160,225, /* 0x 1b0 */
66, 73, 77, 80, 79, 78, 65, 77, 2,219,141,226,252, 64, 45,233, /* 0x 1c0 */
0,112,129,224, 0, 80,224,227, 2, 65,160,227, 10, 0, 0,234, /* 0x 1d0 */
24, 0,189,232, 7, 0, 64,224, 3, 32, 66,224, 0, 32,132,229, /* 0x 1e0 */
240,128,189,232, 1, 64,208,228, 4, 64,164,224, 4, 76,176,225, /* 0x 1f0 */
14,240,160,225, 1, 48,208,228, 1, 48,194,228, 4, 64,148,224, /* 0x 200 */
247,255,255, 11,250,255,255, 42, 1, 16,160,227, 3, 0, 0,234, /* 0x 210 */
1, 16, 65,226, 4, 64,148,224,241,255,255, 11, 1, 16,161,224, /* 0x 220 */
4, 64,148,224,238,255,255, 11, 1, 16,161,224, 4, 64,148,224, /* 0x 230 */
235,255,255, 11,245,255,255, 58, 3, 48, 81,226, 0, 16,160,227, /* 0x 240 */
6, 0, 0, 58, 1, 80,208,228, 3, 84,133,225, 5, 80,240,225, /* 0x 250 */
222,255,255, 10,197, 80,176,225, 15, 0, 0, 42, 2, 0, 0,234, /* 0x 260 */
4, 64,148,224,222,255,255, 11, 11, 0, 0, 42, 1, 16,160,227, /* 0x 270 */
4, 64,148,224,218,255,255, 11, 7, 0, 0, 42, 4, 64,148,224, /* 0x 280 */
215,255,255, 11, 1, 16,161,224, 4, 64,148,224,212,255,255, 11, /* 0x 290 */
249,255,255, 58, 4, 16,129,226, 3, 0, 0,234, 4, 64,148,224, /* 0x 2a0 */
207,255,255, 11, 1, 16,161,224, 2, 16,129,226, 5, 12,117,227, /* 0x 2b0 */
0, 0, 0, 42, 1, 16,129,226, 0, 48,210,229, 5, 48,210,231, /* 0x 2c0 */
1, 48,194,228, 1, 16, 81,226,251,255,255, 26,202,255,255,234, /* 0x 2d0 */
0, 0, 0,235, 85, 80, 88, 33,161,216,208,213, 0, 0, 0, 0, /* 0x 2e0 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 2f0 */
0, 0, 0, 45, 68,108,108, 83,116, 97,114,116, 0, 0, 0, 0, /* 0x 300 */
0, 69,120,101, 83,116, 97,114,116, 0, 8, 0, 0, 0, 80,114, /* 0x 310 */
111, 99,101,115,115, 69,110,100, 0, 92, 0, 0, 0, 85,110,102, /* 0x 320 */
105,108,116,101,114, 95, 48,120, 53, 48, 0, 96, 0, 0, 0, 82, /* 0x 330 */
101,108,111, 99,115, 0,176, 0, 0, 0, 73,109,112,111,114,116, /* 0x 340 */
115, 0, 16, 1, 0, 0,117, 99,108, 95,110,114,118, 50,101, 95, /* 0x 350 */
100,101, 99,111,109,112,114,101,115,115, 95, 56, 0,204, 1, 0, /* 0x 360 */
0, 67, 97,108,108, 50, 69, 0,224, 2, 0, 0, 0, 0, 0, 0, /* 0x 370 */
227, 2, 0, 0,117, 99,108, 95,110,114,118, 50,101, 95,100,101, /* 0x 380 */
99,111,109,112,114,101,115,115, 95, 56, 0, 0, 0, 0, 0, 85, /* 0x 390 */
80, 88, 49, 72, 69, 65, 68, 0,228, 2, 0, 0,101,111,102, 0, /* 0x 3a0 */
4, 3, 0, 0,255,255,255,255, 4, 3, 0, 0 /* 0x 3b0 */
60, 0,159,229, 0, 32,160,227, 56,192,159,229, 12, 0, 80,225, /* 0x 60 */
13, 0, 0, 10, 0, 48,144,229, 15, 20, 3,226, 11, 4, 81,227, /* 0x 70 */
4, 0, 0, 26,255, 20, 3,226, 2, 48, 67,224,255, 52,195,227, /* 0x 80 */
1, 48,131,225, 0, 48,128,229, 4, 0,128,226, 1, 32,130,226, /* 0x 90 */
241,255,255,234, 70, 73, 66, 83, 70, 73, 66, 69, 84, 16,159,229, /* 0x a0 */
4, 0, 73,226, 1, 48,209,228, 0, 0, 83,227, 18, 0, 0, 10, /* 0x b0 */
240, 0, 83,227,240,192,195, 35, 1, 48,209, 37, 12,196,131, 32, /* 0x c0 */
2, 48,209, 36, 12, 52,131, 32, 3, 0,128,224, 0, 48,208,229, /* 0x d0 */
12,196,131,224, 1, 48,208,229, 12,196,131,224, 2, 48,208,229, /* 0x e0 */
12,196,131,224, 3, 48,208,229, 12,196,131,224, 9,192,140,224, /* 0x f0 */
0,192,128,229,234,255,255,234, 66, 82, 69, 76, 2,219, 77,226, /* 0x 100 */
164, 64,159,229, 4, 0,160,225, 30, 0, 0,235, 40, 0, 0, 10, /* 0x 110 */
152, 16,159,229, 1, 0,128,224, 13, 16,160,225, 1, 32,208,228, /* 0x 120 */
178, 32,193,224, 0, 0, 82,227,251,255,255, 26, 13, 0,160,225, /* 0x 130 */
27, 0, 0,235, 0, 96,160,225, 4, 0,132,226, 17, 0, 0,235, /* 0x 140 */
0, 80,137,224, 8, 64,132,226, 1, 0,212,228, 1, 0, 80,227, /* 0x 150 */
235,255,255, 74, 4, 0, 0, 26, 4, 16,160,225, 1, 0,212,228, /* 0x 160 */
0, 0, 80,227,252,255,255, 26, 2, 0, 0,234, 1, 0,212,228, /* 0x 170 */
1, 16,212,228, 1, 20,128,224, 6, 0,160,225, 9, 0, 0,235, /* 0x 180 */
4, 0,133,228,239,255,255,234, 3, 32,160,227, 2, 48,208,231, /* 0x 190 */
1, 32, 82,226, 1, 20,131,224,251,255,255, 90, 1, 0,176,225, /* 0x 1a0 */
14,240,160,225, 10,240,160,225, 11,240,160,225, 66, 73, 77, 80, /* 0x 1b0 */
79, 78, 65, 77, 2,219,141,226,252, 64, 45,233, 0,112,129,224, /* 0x 1c0 */
0, 80,224,227, 2, 65,160,227, 10, 0, 0,234, 24, 0,189,232, /* 0x 1d0 */
7, 0, 64,224, 3, 32, 66,224, 0, 32,132,229,240,128,189,232, /* 0x 1e0 */
1, 64,208,228, 4, 64,164,224, 4, 76,176,225, 14,240,160,225, /* 0x 1f0 */
1, 48,208,228, 1, 48,194,228, 4, 64,148,224,247,255,255, 11, /* 0x 200 */
250,255,255, 42, 1, 16,160,227, 3, 0, 0,234, 1, 16, 65,226, /* 0x 210 */
4, 64,148,224,241,255,255, 11, 1, 16,161,224, 4, 64,148,224, /* 0x 220 */
238,255,255, 11, 1, 16,161,224, 4, 64,148,224,235,255,255, 11, /* 0x 230 */
245,255,255, 58, 3, 48, 81,226, 0, 16,160,227, 6, 0, 0, 58, /* 0x 240 */
1, 80,208,228, 3, 84,133,225, 5, 80,240,225,222,255,255, 10, /* 0x 250 */
197, 80,176,225, 15, 0, 0, 42, 2, 0, 0,234, 4, 64,148,224, /* 0x 260 */
222,255,255, 11, 11, 0, 0, 42, 1, 16,160,227, 4, 64,148,224, /* 0x 270 */
218,255,255, 11, 7, 0, 0, 42, 4, 64,148,224,215,255,255, 11, /* 0x 280 */
1, 16,161,224, 4, 64,148,224,212,255,255, 11,249,255,255, 58, /* 0x 290 */
4, 16,129,226, 3, 0, 0,234, 4, 64,148,224,207,255,255, 11, /* 0x 2a0 */
1, 16,161,224, 2, 16,129,226, 5, 12,117,227, 0, 0, 0, 42, /* 0x 2b0 */
1, 16,129,226, 0, 48,210,229, 5, 48,210,231, 1, 48,194,228, /* 0x 2c0 */
1, 16, 81,226,251,255,255, 26,202,255,255,234, 0, 0, 0,235, /* 0x 2d0 */
85, 80, 88, 33,161,216,208,213, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x 2e0 */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, /* 0x 2f0 */
68,108,108, 83,116, 97,114,116, 0, 0, 0, 0, 0, 69,120,101, /* 0x 300 */
83,116, 97,114,116, 0, 8, 0, 0, 0, 80,114,111, 99,101,115, /* 0x 310 */
115, 69,110,100, 0, 92, 0, 0, 0, 85,110,102,105,108,116,101, /* 0x 320 */
114, 95, 48,120, 53, 48, 0, 96, 0, 0, 0, 82,101,108,111, 99, /* 0x 330 */
115, 0,172, 0, 0, 0, 73,109,112,111,114,116,115, 0, 12, 1, /* 0x 340 */
0, 0,117, 99,108, 95,110,114,118, 50,101, 95,100,101, 99,111, /* 0x 350 */
109,112,114,101,115,115, 95, 56, 0,200, 1, 0, 0, 67, 97,108, /* 0x 360 */
108, 50, 69, 0,220, 2, 0, 0, 0, 0, 0, 0,223, 2, 0, 0, /* 0x 370 */
117, 99,108, 95,110,114,118, 50,101, 95,100,101, 99,111,109,112, /* 0x 380 */
114,101,115,115, 95, 56, 0, 0, 0, 0, 0, 85, 80, 88, 49, 72, /* 0x 390 */
69, 65, 68, 0,224, 2, 0, 0,101,111,102, 0, 0, 3, 0, 0, /* 0x 3a0 */
255,255,255,255, 0, 3, 0, 0 /* 0x 3b0 */
};