42 lines
1.4 KiB
Java
42 lines
1.4 KiB
Java
package com.getkeepsafe.relinker.elf;
|
|
|
|
import com.getkeepsafe.relinker.elf.Elf;
|
|
import java.io.IOException;
|
|
import java.nio.ByteBuffer;
|
|
import java.nio.ByteOrder;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class Elf64Header extends Elf.Header {
|
|
private final ElfParser g;
|
|
|
|
public Elf64Header(boolean z, ElfParser elfParser) throws IOException {
|
|
this.a = z;
|
|
this.g = elfParser;
|
|
ByteBuffer allocate = ByteBuffer.allocate(8);
|
|
allocate.order(z ? ByteOrder.BIG_ENDIAN : ByteOrder.LITTLE_ENDIAN);
|
|
elfParser.b(allocate, 16L);
|
|
this.b = elfParser.c(allocate, 32L);
|
|
this.c = elfParser.c(allocate, 40L);
|
|
this.d = elfParser.b(allocate, 54L);
|
|
this.e = elfParser.b(allocate, 56L);
|
|
this.f = elfParser.b(allocate, 58L);
|
|
elfParser.b(allocate, 60L);
|
|
elfParser.b(allocate, 62L);
|
|
}
|
|
|
|
@Override // com.getkeepsafe.relinker.elf.Elf.Header
|
|
public Elf.SectionHeader a(int i) throws IOException {
|
|
return new Section64Header(this.g, this, i);
|
|
}
|
|
|
|
@Override // com.getkeepsafe.relinker.elf.Elf.Header
|
|
public Elf.ProgramHeader a(long j) throws IOException {
|
|
return new Program64Header(this.g, this, j);
|
|
}
|
|
|
|
@Override // com.getkeepsafe.relinker.elf.Elf.Header
|
|
public Elf.DynamicStructure a(long j, int i) throws IOException {
|
|
return new Dynamic64Structure(this.g, this, j, i);
|
|
}
|
|
}
|