示例#1
0
            public void Read(ModuleReader reader, bool big)
            {
                reader.Read(out sh_name);
                reader.Read(out sh_type);
                reader.Read(out sh_flags);
                reader.Read(out sh_addr);
                reader.Read(out sh_offset);
                reader.Read(out sh_size);
                reader.Read(out sh_link);
                reader.Read(out sh_info);
                reader.Read(out sh_addralign);
                reader.Read(out sh_entsize);

                if (big)
                {
                    ModuleReader.SwapBytesD(ref sh_name);
                    ModuleReader.SwapBytesD(ref sh_type);
                    ModuleReader.SwapBytesD(ref sh_flags);
                    ModuleReader.SwapBytesD(ref sh_addr);
                    ModuleReader.SwapBytesD(ref sh_offset);
                    ModuleReader.SwapBytesD(ref sh_size);
                    ModuleReader.SwapBytesD(ref sh_link);
                    ModuleReader.SwapBytesD(ref sh_info);
                    ModuleReader.SwapBytesD(ref sh_addralign);
                    ModuleReader.SwapBytesD(ref sh_entsize);
                }
            }
示例#2
0
            public void Read(ModuleReader reader, bool big)
            {
                reader.Read(out e_type);
                reader.Read(out e_machine);
                reader.Read(out e_version);
                reader.Read(out e_entry);
                reader.Read(out e_phoff);
                reader.Read(out e_shoff);
                reader.Read(out e_flags);
                reader.Read(out e_ehsize);
                reader.Read(out e_phentsize);
                reader.Read(out e_phnum);
                reader.Read(out e_shentsize);
                reader.Read(out e_shnum);
                reader.Read(out e_shstrndex);

                // Swap bytes.
                if (big)
                {
                    ModuleReader.SwapBytesD(ref e_type);
                    ModuleReader.SwapBytesD(ref e_machine);
                    ModuleReader.SwapBytesD(ref e_version);
                    ModuleReader.SwapBytesD(ref e_entry);
                    ModuleReader.SwapBytesD(ref e_phoff);
                    ModuleReader.SwapBytesD(ref e_shoff);
                    ModuleReader.SwapBytesD(ref e_flags);
                    ModuleReader.SwapBytesD(ref e_ehsize);
                    ModuleReader.SwapBytesD(ref e_phentsize);
                    ModuleReader.SwapBytesD(ref e_phnum);
                    ModuleReader.SwapBytesD(ref e_shentsize);
                    ModuleReader.SwapBytesD(ref e_shnum);
                    ModuleReader.SwapBytesD(ref e_shstrndex);
                }
            }