tree: b9f4e01a73e47e5567dbdaa6be3f2768cf41767d [path history] [tgz]
  1. crash/
  2. dll_hash/
  3. hook_util/
  4. nt_registry/
  5. pe_image_safe/
  6. sha1/
  7. third_party_dlls/
  8. BUILD.gn
  9. chrome_elf.ver
  10. chrome_elf_arm64.def
  11. chrome_elf_constants.cc
  12. chrome_elf_constants.h
  13. chrome_elf_main.cc
  14. chrome_elf_main.h
  15. chrome_elf_security.cc
  16. chrome_elf_security.h
  17. chrome_elf_test_stubs.cc
  18. chrome_elf_util_unittest.cc
  19. chrome_elf_x64.def
  20. chrome_elf_x86.def
  21. DEPS
  22. OWNERS
  23. README.md
  24. run_all_unittests.cc
chrome/chrome_elf/README.md

Chrome Early Loading Framework (ELF)

The Chrome Early Loading Framework provides a facility to execute code very early during process startup before other imported DLLs (e.g., kernel32). This is useful for dynamic patching of system functions (e.g., NtMapViewOfSection) to implement advanced control over the process.

Chrome's initial entry point on Windows is DllMain in chrome_elf.dll (defined in chrome_elf_main.cc). The reorder-imports.py script is used at build-time to ensure that chrome_elf.dll is the first import of chrome.exe.