C# 클래스 Reko.ImageLoaders.Elf.Relocators.x86_64Relocator

상속: ElfRelocator64
파일 보기 프로젝트 열기: uxmal/reko

공개 메소드들

메소드 설명
Relocate ( Program program ) : void According to the ELF x86_64 documentation, the .rela.plt and .plt tables should contain the same number of entries, even if the individual entry sizes are distinct. The entries in .real.plt refer to symbols while the entries in .plt are (writeable) pointers. Any caller that jumps to one of pointers in the .plt table is a "trampoline", and should be replaced in the decompiled code with just a call to the symbol obtained from the .real.plt section.
RelocateEntry ( Program program, ElfSymbol sym, ElfSection referringSection, Elf64_Rela rela ) : void
RelocationTypeToString ( uint type ) : string
x86_64Relocator ( ElfLoader64 loader ) : Reko.Core

비공개 메소드들

메소드 설명
LoadImportReferencesFromRelaPlt ( ) : void

메소드 상세

Relocate() 공개 메소드

According to the ELF x86_64 documentation, the .rela.plt and .plt tables should contain the same number of entries, even if the individual entry sizes are distinct. The entries in .real.plt refer to symbols while the entries in .plt are (writeable) pointers. Any caller that jumps to one of pointers in the .plt table is a "trampoline", and should be replaced in the decompiled code with just a call to the symbol obtained from the .real.plt section.
public Relocate ( Program program ) : void
program Program
리턴 void

RelocateEntry() 공개 메소드

public RelocateEntry ( Program program, ElfSymbol sym, ElfSection referringSection, Elf64_Rela rela ) : void
program Program
sym ElfSymbol
referringSection ElfSection
rela Elf64_Rela
리턴 void

RelocationTypeToString() 공개 메소드

public RelocationTypeToString ( uint type ) : string
type uint
리턴 string

x86_64Relocator() 공개 메소드

public x86_64Relocator ( ElfLoader64 loader ) : Reko.Core
loader ElfLoader64
리턴 Reko.Core