upx/src/stub/tmp/amd64-linux.elf-fold.map
John Reiser c36977f0b1 ELF: amd64-linux main programs use 2-step de-compressor
The first $ARCH to move to 2-step de-compressor for ELF main programs.
De-compressor uses memfd_create to comply with strictest SELinux
settings (no PROT_WRITE on any PROT_EXEC page).
First step de-compressor always uses NRV2B to de-compress the second step,
and the second step can use a different de-compressor for each PT_LOAD.
	modified:   p_lx_elf.cpp
	modified:   stub/Makefile
	modified:   stub/src/amd64-linux.elf-fold.lds
	modified:   stub/src/amd64-linux.elf-entry.S
	modified:   stub/src/amd64-linux.elf-fold.S
	new file:   stub/src/amd64-linux.elf-main2.c

	modified:   stub/amd64-linux.elf-entry.h
	modified:   stub/amd64-linux.elf-fold.h
	modified:   stub/tmp/amd64-linux.elf-entry.bin.dump
	modified:   stub/tmp/amd64-linux.elf-fold.map
2024-08-25 15:16:28 -07:00

79 lines
3.4 KiB
Plaintext
Vendored
Generated

Memory Configuration
Name Origin Length Attributes
*default* 0x0000000000000000 0xffffffffffffffff
Linker script and memory map
0x000000000010004c . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000000000 0x909
.text 0x0000000000000000 0x160 tmp/amd64-linux.elf-fold.o
0x0000000000000158 get_page_mask
.text 0x0000000000000160 0x0 tmp/amd64-expand.o
.text 0x0000000000000160 0x7a9 tmp/amd64-linux.elf-main2.o
0x00000000000002b5 underlay
0x00000000000007d4 upx_main
EXP_HEAD 0x0000000000000000 0xe0
EXP_HEAD 0x0000000000000000 0xe0 tmp/amd64-expand.o
0x0000000000000000 f_expand
NRV2E 0x0000000000000000 0xe5
NRV2E 0x0000000000000000 0xe5 tmp/amd64-expand.o
NRV2D 0x0000000000000000 0xd7
NRV2D 0x0000000000000000 0xd7 tmp/amd64-expand.o
NRV2B 0x0000000000000000 0xc1
NRV2B 0x0000000000000000 0xc1 tmp/amd64-expand.o
.data 0x0000000000000000 0x0
.data 0x0000000000000000 0x0 tmp/amd64-linux.elf-fold.o
.data 0x0000000000000000 0x0 tmp/amd64-expand.o
.data 0x0000000000000000 0x0 tmp/amd64-linux.elf-main2.o
.bss 0x0000000000000000 0x0
.bss 0x0000000000000000 0x0 tmp/amd64-linux.elf-fold.o
.bss 0x0000000000000000 0x0 tmp/amd64-expand.o
.bss 0x0000000000000000 0x0 tmp/amd64-linux.elf-main2.o
LOAD tmp/amd64-linux.elf-fold.o
LOAD tmp/amd64-expand.o
LOAD tmp/amd64-linux.elf-main2.o
OUTPUT(tmp/amd64-linux.elf-fold.bin elf64-x86-64)
SYSCALLS 0x0000000000000000 0x8e
SYSCALLS 0x0000000000000000 0x8e tmp/amd64-linux.elf-fold.o
0x0000000000000018 Pmap
0x000000000000006a munmap
0x000000000000007a ftruncate
0x000000000000002a mmap
0x0000000000000086 write
0x0000000000000011 memfd_create
0x000000000000008a read
0x0000000000000000 my_bkpt
0x0000000000000045 Pprotect
0x0000000000000086 Pwrite
0x000000000000005a Punmap
0x000000000000006e exit
0x0000000000000072 brk
0x000000000000007e open
0x0000000000000082 mprotect
0x0000000000000076 close
LZMA_ELF00 0x0000000000000000 0x64
LZMA_ELF00 0x0000000000000000 0x64 tmp/amd64-expand.o
LZMA_DEC10 0x0000000000000000 0x9f7
LZMA_DEC10 0x0000000000000000 0x9f7 tmp/amd64-expand.o
LZMA_DEC20 0x0000000000000000 0x9f7
LZMA_DEC20 0x0000000000000000 0x9f7 tmp/amd64-expand.o
LZMA_DEC30 0x0000000000000000 0x18
LZMA_DEC30 0x0000000000000000 0x18 tmp/amd64-expand.o
EXP_TAIL 0x0000000000000000 0xc
EXP_TAIL 0x0000000000000000 0xc tmp/amd64-expand.o