I have a program that hangs at start on my Window 10 system but runs ok on a VM running a vanilla Windows 10 system. Using x64dbg I get to an error where it states a DLL is not found. I have been trying to find out what the name of the missing DLL is. I have tried to find a dependency tool but failed that so am trying to use x64dbg but am having difficulty trying to find the name of the DLL that is not finding. Can someone either point me to a good dependency tool or give me a path of steps I can follow to get the DLLs name from x64dbg.

  • 1
    For PE imports, check using any PE viewer and ensure all referenced DLLs are present. For dynamic imports, Process Monitor from Sysinternals should show what files the program tries to load, which should include DLLs.
    – David
    Commented Sep 22, 2020 at 21:23
  • Thanks for those suggestions. I have tried to get a PE Viewer that was not 'old' and that was not downloading from a site that my security system blocks but have failed that. I have tried using Process Monitor and still trying to get to terms with that. I did find the Dependencies app in GITHUB and that gave me a slight possible hit on DLLs but may be a mislead as there is a discrepancy in the reporting for which I have filed an issue in GITHUB. What I'd like is hints on how I can, from the debugger data, get the name of the DLL that was missing from the parameters passed in the load request. Commented Sep 24, 2020 at 13:43
  • set a breakpoint on the LoadLibrary API, check if the caller is from code you are interested in, log the result of the argument. You can look up the calling convention for your platform to work out where the argument will be.
    – David
    Commented Sep 24, 2020 at 13:54


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.