Kernel32!LoadLibraryW(LPCWSTR lpFileName)
{
 LoadLibraryExW(lpFileName, 0, 0);
}

Kernel32!LoadLibraryA(LPCSTR lpFileName)
{
 if(lpFileName==NULL)
 {
  LoadLibraryExA(lpFileName, 0, 0);
 }
 else
 {
  int ret1=strcmpi(lpFileName, "twain_32.dll");
  if(ret1!=0)
  {
flag:
   LoadLibraryExA(lpFileName, 0, 0);
   return;
  }

  LPVOID temp=&TEB;
  temp=temp.PEB;
  
  PSTR szDir=(PSTR)RtlAllocateHeap(PEB.ProcessHeap, BaseDllTag, 260);
  if(szDir==NULL)
  {
   jmp flag;
  }
  GetWindowDirectoryA(szDir, 260);
  PSTR pStr=szDir-1;
  do
  {
   char c=*(pStr+1);
   pStr++;
  }while(c!=0);
  PSTR pDll="\twain_32.dll";
  szDir=szDir+pDll;
  HINSTANCE hInst=LoadLibraryA(szDir);
  RtlFreeHeap(PEB.ProcessHeap, 0, szDir);
  if(hInst!=NULL)
  {
   return;
  }
  jmp flag;
 }
}

相关文章:

  • 2021-06-07
  • 2021-08-12
  • 2022-12-23
  • 2022-12-23
  • 2021-07-28
  • 2021-09-16
  • 2022-02-18
  • 2021-11-08
猜你喜欢
  • 2021-10-17
  • 2021-11-14
  • 2021-10-08
  • 2022-03-02
  • 2022-12-23
  • 2021-06-01
  • 2021-11-29
相关资源
相似解决方案