diff --git a/src/stub/amd64-win64.pep.h b/src/stub/amd64-win64.pep.h index 37756e35..999b6a8f 100644 --- a/src/stub/amd64-win64.pep.h +++ b/src/stub/amd64-win64.pep.h @@ -32,8 +32,8 @@ #define STUB_AMD64_WIN64_PEP_SIZE 21168 -#define STUB_AMD64_WIN64_PEP_ADLER32 0xf88ad305 -#define STUB_AMD64_WIN64_PEP_CRC32 0xb81de0a6 +#define STUB_AMD64_WIN64_PEP_ADLER32 0x11b3b4f8 +#define STUB_AMD64_WIN64_PEP_CRC32 0xa0ed3bbf unsigned char stub_amd64_win64_pep[21168] = { /* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1092,8 +1092,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x41d0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, /* 0x41e0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 32, 82, 95, 88, 56, 54, /* 0x41f0 */ 95, 54, 52, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 80, 69, 77, -/* 0x4200 */ 65, 73, 78, 50, 49, 43, 48,120,102,102,102,102,102,102,102,102, -/* 0x4210 */ 102,102,102,102,102,102,102, 99, 10, 10, 82, 69, 76, 79, 67, 65, +/* 0x4200 */ 65, 73, 78, 50, 49, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x4210 */ 48, 48, 48, 48, 48, 48, 48, 52, 10, 10, 82, 69, 76, 79, 67, 65, /* 0x4220 */ 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, /* 0x4230 */ 32, 91, 80, 69, 77, 65, 73, 78, 48, 49, 93, 58, 10, 79, 70, 70, /* 0x4240 */ 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, @@ -1101,8 +1101,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x4260 */ 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x4270 */ 48, 48, 48, 48, 48, 55, 32, 82, 95, 88, 56, 54, 95, 54, 52, 95, /* 0x4280 */ 80, 67, 51, 50, 32, 32, 32, 32, 32,115,116, 97,114,116, 95,111, -/* 0x4290 */ 102, 95, 99,111,109,112,114,101,115,115,101,100, 43, 48,120,102, -/* 0x42a0 */ 102,102,102,102,102,102,102,102,102,102,102,102,102,102, 99, 10, +/* 0x4290 */ 102, 95, 99,111,109,112,114,101,115,115,101,100, 45, 48,120, 48, +/* 0x42a0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 52, 10, /* 0x42b0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,101, /* 0x42c0 */ 32, 82, 95, 88, 56, 54, 95, 54, 52, 95, 51, 50, 83, 32, 32, 32, /* 0x42d0 */ 32, 32, 32,115,116, 97,114,116, 95,111,102, 95,117,110, 99,111, @@ -1149,8 +1149,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x4560 */ 48, 48, 48, 48, 49, 98, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x4570 */ 48, 48, 48, 48, 48, 52, 57, 32, 82, 95, 88, 56, 54, 95, 54, 52, /* 0x4580 */ 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 80, 69, 77, 65, 73, 78, -/* 0x4590 */ 49, 48, 43, 48,120,102,102,102,102,102,102,102,102,102,102,102, -/* 0x45a0 */ 102,102,102,102, 99, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, +/* 0x4590 */ 49, 48, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x45a0 */ 48, 48, 48, 48, 52, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, /* 0x45b0 */ 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, /* 0x45c0 */ 82, 86, 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, /* 0x45d0 */ 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, @@ -1161,8 +1161,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x4620 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 49, 98, 10, 48, /* 0x4630 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 53, 50, 32, /* 0x4640 */ 82, 95, 88, 56, 54, 95, 54, 52, 95, 80, 67, 51, 50, 32, 32, 32, -/* 0x4650 */ 32, 32, 80, 69, 77, 65, 73, 78, 49, 48, 43, 48,120,102,102,102, -/* 0x4660 */ 102,102,102,102,102,102,102,102,102,102,102,102, 99, 10, 10, 82, +/* 0x4650 */ 32, 32, 80, 69, 77, 65, 73, 78, 49, 48, 45, 48,120, 48, 48, 48, +/* 0x4660 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 52, 10, 10, 82, /* 0x4670 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, /* 0x4680 */ 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 69, 93, 58, 10, 79, /* 0x4690 */ 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, @@ -1174,8 +1174,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x46f0 */ 48, 48, 48, 48, 49, 98, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x4700 */ 48, 48, 48, 48, 48, 53, 50, 32, 82, 95, 88, 56, 54, 95, 54, 52, /* 0x4710 */ 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 80, 69, 77, 65, 73, 78, -/* 0x4720 */ 49, 48, 43, 48,120,102,102,102,102,102,102,102,102,102,102,102, -/* 0x4730 */ 102,102,102,102, 99, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, +/* 0x4720 */ 49, 48, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x4730 */ 48, 48, 48, 48, 52, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, /* 0x4740 */ 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, /* 0x4750 */ 90, 77, 65, 95, 72, 69, 65, 68, 93, 58, 10, 79, 70, 70, 83, 69, /* 0x4760 */ 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, @@ -1332,15 +1332,15 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x50d0 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, /* 0x50e0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 50, 32, 82, 95, 88, 56, /* 0x50f0 */ 54, 95, 54, 52, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 80, 69, -/* 0x5100 */ 84, 76, 83, 67, 50, 43, 48,120,102,102,102,102,102,102,102,102, -/* 0x5110 */ 102,102,102,102,102,102,102, 98, 10, 48, 48, 48, 48, 48, 48, 48, +/* 0x5100 */ 84, 76, 83, 67, 50, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x5110 */ 48, 48, 48, 48, 48, 48, 48, 53, 10, 48, 48, 48, 48, 48, 48, 48, /* 0x5120 */ 48, 48, 48, 48, 48, 48, 48, 48, 97, 32, 82, 95, 88, 56, 54, 95, /* 0x5130 */ 54, 52, 95, 51, 50, 83, 32, 32, 32, 32, 32, 32,116,108,115, 95, /* 0x5140 */ 109,111,100,117,108,101, 95, 98, 97,115,101, 10, 48, 48, 48, 48, /* 0x5150 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 49, 54, 32, 82, 95, 88, /* 0x5160 */ 56, 54, 95, 54, 52, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32, 80, -/* 0x5170 */ 69, 84, 76, 83, 67, 50, 43, 48,120,102,102,102,102,102,102,102, -/* 0x5180 */ 102,102,102,102,102,102,102,102, 99, 10, 10, 82, 69, 76, 79, 67, +/* 0x5170 */ 69, 84, 76, 83, 67, 50, 45, 48,120, 48, 48, 48, 48, 48, 48, 48, +/* 0x5180 */ 48, 48, 48, 48, 48, 48, 48, 48, 52, 10, 10, 82, 69, 76, 79, 67, /* 0x5190 */ 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, /* 0x51a0 */ 82, 32, 91, 80, 69, 68, 79, 74, 85, 77, 80, 93, 58, 10, 79, 70, /* 0x51b0 */ 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, @@ -1348,8 +1348,8 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x51d0 */ 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x51e0 */ 48, 48, 48, 48, 48, 48, 49, 32, 82, 95, 88, 56, 54, 95, 54, 52, /* 0x51f0 */ 95, 80, 67, 51, 50, 32, 32, 32, 32, 32,111,114,105,103,105,110, -/* 0x5200 */ 97,108, 95,101,110,116,114,121, 43, 48,120,102,102,102,102,102, -/* 0x5210 */ 102,102,102,102,102,102,102,102,102,102, 99, 10, 10, 82, 69, 76, +/* 0x5200 */ 97,108, 95,101,110,116,114,121, 45, 48,120, 48, 48, 48, 48, 48, +/* 0x5210 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 52, 10, 10, 82, 69, 76, /* 0x5220 */ 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, /* 0x5230 */ 70, 79, 82, 32, 91, 80, 69, 84, 76, 83, 67, 50, 93, 58, 10, 79, /* 0x5240 */ 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, @@ -1357,6 +1357,6 @@ unsigned char stub_amd64_win64_pep[21168] = { /* 0x5260 */ 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x5270 */ 48, 48, 48, 48, 48, 48, 48, 53, 32, 82, 95, 88, 56, 54, 95, 54, /* 0x5280 */ 52, 95, 80, 67, 51, 50, 32, 32, 32, 32, 32,116,108,115, 95, 99, -/* 0x5290 */ 97,108,108, 98, 97, 99,107,115, 95,112,116,114, 43, 48,120,102, -/* 0x52a0 */ 102,102,102,102,102,102,102,102,102,102,102,102,102,102, 99, 10 +/* 0x5290 */ 97,108,108, 98, 97, 99,107,115, 95,112,116,114, 45, 48,120, 48, +/* 0x52a0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 52, 10 }; diff --git a/src/stub/src/amd64-win64.pep.S b/src/stub/src/amd64-win64.pep.S index 4d520ab5..72b26ae3 100644 --- a/src/stub/src/amd64-win64.pep.S +++ b/src/stub/src/amd64-win64.pep.S @@ -44,18 +44,18 @@ #include "arch/amd64/macros.S" #define IMM8(value) byte ptr 0; \ - .reloc $ - 1, R_X86_64_8, value + .reloc . - 1, R_X86_64_8, value #define IMM16(value) word ptr (1<<15); \ - .reloc $ - 2, R_X86_64_16, (1<<15) + value + .reloc . - 2, R_X86_64_16, (1<<15) + value #define IMM32(value) dword ptr (1<<31); \ - .reloc $ - 4, R_X86_64_32, (1<<31) + value + .reloc . - 4, R_X86_64_32, (1<<31) + value #define IMM64(value) qword ptr (1<<63); \ - .reloc $ - 8, R_X86_64_64, (1<<63) + value + .reloc . - 8, R_X86_64_64, (1<<63) + value -#define SHORT(label) $ + 1; .reloc $ - 1, R_X86_64_PC8, label +#define SHORT(label) . + 1; .reloc . - 1, R_X86_64_PC8, label //; debugging is not too user friendly under wine: //; by adding the "DEBUG" macro into the code diff --git a/src/stub/tmp/amd64-win64.pep.bin.dump b/src/stub/tmp/amd64-win64.pep.bin.dump index ec6800af..38a8c2f7 100644 --- a/src/stub/tmp/amd64-win64.pep.bin.dump +++ b/src/stub/tmp/amd64-win64.pep.bin.dump @@ -139,11 +139,11 @@ SYMBOL TABLE: RELOCATION RECORDS FOR [PEISDLL1]: OFFSET TYPE VALUE -0000000000000005 R_X86_64_PC32 PEMAIN21+0xfffffffffffffffc +0000000000000005 R_X86_64_PC32 PEMAIN21-0x0000000000000004 RELOCATION RECORDS FOR [PEMAIN01]: OFFSET TYPE VALUE -0000000000000007 R_X86_64_PC32 start_of_compressed+0xfffffffffffffffc +0000000000000007 R_X86_64_PC32 start_of_compressed-0x0000000000000004 000000000000000e R_X86_64_32S start_of_uncompressed RELOCATION RECORDS FOR [PEICONS1]: @@ -163,17 +163,17 @@ OFFSET TYPE VALUE RELOCATION RECORDS FOR [NRV2B]: OFFSET TYPE VALUE 0000000000000081 R_X86_64_PC32 NRV_HEAD+0x000000000000001b -0000000000000049 R_X86_64_PC32 PEMAIN10+0xfffffffffffffffc +0000000000000049 R_X86_64_PC32 PEMAIN10-0x0000000000000004 RELOCATION RECORDS FOR [NRV2D]: OFFSET TYPE VALUE 000000000000008c R_X86_64_PC32 NRV_HEAD+0x000000000000001b -0000000000000052 R_X86_64_PC32 PEMAIN10+0xfffffffffffffffc +0000000000000052 R_X86_64_PC32 PEMAIN10-0x0000000000000004 RELOCATION RECORDS FOR [NRV2E]: OFFSET TYPE VALUE 00000000000000a5 R_X86_64_PC32 NRV_HEAD+0x000000000000001b -0000000000000052 R_X86_64_PC32 PEMAIN10+0xfffffffffffffffc +0000000000000052 R_X86_64_PC32 PEMAIN10-0x0000000000000004 RELOCATION RECORDS FOR [LZMA_HEAD]: OFFSET TYPE VALUE @@ -247,14 +247,14 @@ OFFSET TYPE VALUE RELOCATION RECORDS FOR [PETLSC]: OFFSET TYPE VALUE -0000000000000002 R_X86_64_PC32 PETLSC2+0xfffffffffffffffb +0000000000000002 R_X86_64_PC32 PETLSC2-0x0000000000000005 000000000000000a R_X86_64_32S tls_module_base -0000000000000016 R_X86_64_PC32 PETLSC2+0xfffffffffffffffc +0000000000000016 R_X86_64_PC32 PETLSC2-0x0000000000000004 RELOCATION RECORDS FOR [PEDOJUMP]: OFFSET TYPE VALUE -0000000000000001 R_X86_64_PC32 original_entry+0xfffffffffffffffc +0000000000000001 R_X86_64_PC32 original_entry-0x0000000000000004 RELOCATION RECORDS FOR [PETLSC2]: OFFSET TYPE VALUE -0000000000000005 R_X86_64_PC32 tls_callbacks_ptr+0xfffffffffffffffc +0000000000000005 R_X86_64_PC32 tls_callbacks_ptr-0x0000000000000004