📄 autoload.cc
字号:
"); while (InterlockedIncrement (&here)) { InterlockedDecrement (&here); low_priority_sleep (0); } if (!wsock_started && (winsock_active || winsock2_active)) { /* Don't use autoload to load WSAStartup to eliminate recursion. */ int (*wsastartup) (int, WSADATA *); wsastartup = (int (*)(int, WSADATA *)) GetProcAddress ((HMODULE) (dll->handle), "WSAStartup"); if (wsastartup) { int res = wsastartup ((2<<8) | 2, &wsadata); debug_printf ("res %d", res); debug_printf ("wVersion %d", wsadata.wVersion); debug_printf ("wHighVersion %d", wsadata.wHighVersion); debug_printf ("szDescription %s", wsadata.szDescription); debug_printf ("szSystemStatus %s", wsadata.szSystemStatus); debug_printf ("iMaxSockets %d", wsadata.iMaxSockets); debug_printf ("iMaxUdpDg %d", wsadata.iMaxUdpDg); debug_printf ("lpVendorInfo %d", wsadata.lpVendorInfo); wsock_started = 1; } } InterlockedDecrement (&here); /* Kludge alert. Redirects the return address to dll_chain1. */ __asm__ __volatile__ (" \n\ movl $dll_chain1,4(%ebp) \n\ "); volatile retchain ret; /* Set "arguments for dll_chain1. */ ret.low = (long) dll_func_load; ret.high = (long) func; return ret.ll;}LoadDLLprime (wsock32, wsock_init)LoadDLLprime (ws2_32, wsock_init)LoadDLLfunc (AddAccessAllowedAce, 16, advapi32)LoadDLLfunc (AddAccessDeniedAce, 16, advapi32)LoadDLLfunc (AddAce, 20, advapi32)LoadDLLfunc (AdjustTokenPrivileges, 24, advapi32)LoadDLLfuncEx (AllocateLocallyUniqueId, 4, advapi32, 1)LoadDLLfunc (CopySid, 12, advapi32)LoadDLLfunc (CreateProcessAsUserA, 44, advapi32)LoadDLLfuncEx (CryptAcquireContextA, 20, advapi32, 1)LoadDLLfuncEx (CryptGenRandom, 12, advapi32, 1)LoadDLLfuncEx (CryptReleaseContext, 8, advapi32, 1)LoadDLLfunc (DeregisterEventSource, 4, advapi32)LoadDLLfuncEx (DuplicateTokenEx, 24, advapi32, 1)LoadDLLfunc (EqualSid, 8, advapi32)LoadDLLfunc (GetAce, 12, advapi32)LoadDLLfunc (GetFileSecurityA, 20, advapi32)LoadDLLfunc (GetKernelObjectSecurity, 20, advapi32)LoadDLLfunc (GetLengthSid, 4, advapi32)LoadDLLfunc (GetSecurityDescriptorDacl, 16, advapi32)LoadDLLfunc (GetSecurityDescriptorGroup, 12, advapi32)LoadDLLfunc (GetSecurityDescriptorOwner, 12, advapi32)LoadDLLfunc (GetSecurityInfo, 32, advapi32)LoadDLLfunc (GetSidIdentifierAuthority, 4, advapi32)LoadDLLfunc (GetSidSubAuthority, 8, advapi32)LoadDLLfunc (GetSidSubAuthorityCount, 4, advapi32)LoadDLLfunc (GetTokenInformation, 20, advapi32)LoadDLLfunc (GetUserNameA, 8, advapi32)LoadDLLfunc (ImpersonateLoggedOnUser, 4, advapi32)LoadDLLfunc (ImpersonateNamedPipeClient, 4, advapi32)LoadDLLfunc (InitializeAcl, 12, advapi32)LoadDLLfunc (InitializeSecurityDescriptor, 8, advapi32)LoadDLLfunc (InitializeSid, 12, advapi32)LoadDLLfunc (IsValidSid, 4, advapi32)LoadDLLfunc (LogonUserA, 24, advapi32)LoadDLLfunc (LookupAccountNameA, 28, advapi32)LoadDLLfunc (LookupAccountNameW, 28, advapi32)LoadDLLfunc (LookupAccountSidA, 28, advapi32)LoadDLLfunc (LookupPrivilegeValueA, 12, advapi32)LoadDLLfunc (LsaClose, 4, advapi32)LoadDLLfunc (LsaEnumerateAccountRights, 16, advapi32)LoadDLLfunc (LsaFreeMemory, 4, advapi32)LoadDLLfunc (LsaNtStatusToWinError, 4, advapi32)LoadDLLfunc (LsaOpenPolicy, 16, advapi32)LoadDLLfunc (LsaQueryInformationPolicy, 12, advapi32)LoadDLLfunc (MakeSelfRelativeSD, 12, advapi32)LoadDLLfunc (OpenProcessToken, 12, advapi32)LoadDLLfunc (RegCloseKey, 4, advapi32)LoadDLLfunc (RegCreateKeyExA, 36, advapi32)LoadDLLfunc (RegDeleteKeyA, 8, advapi32)LoadDLLfunc (RegDeleteValueA, 8, advapi32)LoadDLLfunc (RegLoadKeyA, 12, advapi32)LoadDLLfunc (RegEnumKeyExA, 32, advapi32)LoadDLLfunc (RegEnumValueA, 32, advapi32)LoadDLLfunc (RegOpenKeyExA, 20, advapi32)LoadDLLfunc (RegQueryInfoKeyA, 48, advapi32)LoadDLLfunc (RegQueryValueExA, 24, advapi32)LoadDLLfunc (RegSetValueExA, 24, advapi32)LoadDLLfunc (RegisterEventSourceA, 8, advapi32)LoadDLLfunc (ReportEventA, 36, advapi32)LoadDLLfunc (RevertToSelf, 0, advapi32)LoadDLLfunc (SetKernelObjectSecurity, 12, advapi32)LoadDLLfunc (SetSecurityDescriptorControl, 12, advapi32)LoadDLLfunc (SetSecurityDescriptorDacl, 16, advapi32)LoadDLLfunc (SetSecurityDescriptorGroup, 12, advapi32)LoadDLLfunc (SetSecurityDescriptorOwner, 12, advapi32)LoadDLLfunc (SetTokenInformation, 16, advapi32)LoadDLLfunc (NetApiBufferFree, 4, netapi32)LoadDLLfuncEx (NetGetDCName, 12, netapi32, 1)LoadDLLfunc (NetLocalGroupEnum, 28, netapi32)LoadDLLfunc (NetLocalGroupGetMembers, 32, netapi32)LoadDLLfunc (NetUserGetGroups, 28, netapi32)LoadDLLfunc (NetUserGetInfo, 16, netapi32)LoadDLLfunc (NetWkstaUserGetInfo, 12, netapi32)LoadDLLfuncEx (NtCreateToken, 52, ntdll, 1)LoadDLLfuncEx (NtMapViewOfSection, 40, ntdll, 1)LoadDLLfuncEx (NtOpenFile, 24, ntdll, 1)LoadDLLfuncEx (NtOpenSection, 12, ntdll, 1)LoadDLLfuncEx (NtQueryInformationFile, 20, ntdll, 1)LoadDLLfuncEx (NtQueryInformationProcess, 20, ntdll, 1)LoadDLLfuncEx2 (NtQueryObject, 20, ntdll, 1, 1)LoadDLLfuncEx (NtQuerySystemInformation, 16, ntdll, 1)LoadDLLfuncEx (NtQueryVirtualMemory, 24, ntdll, 1)LoadDLLfuncEx (NtUnmapViewOfSection, 8, ntdll, 1)LoadDLLfuncEx (RtlInitUnicodeString, 8, ntdll, 1)LoadDLLfuncEx (RtlNtStatusToDosError, 4, ntdll, 1)LoadDLLfuncEx (GetProcessMemoryInfo, 12, psapi, 1)LoadDLLfuncEx (LsaDeregisterLogonProcess, 4, secur32, 1)LoadDLLfuncEx (LsaFreeReturnBuffer, 4, secur32, 1)LoadDLLfuncEx (LsaLogonUser, 56, secur32, 1)LoadDLLfuncEx (LsaLookupAuthenticationPackage, 12, secur32, 1)LoadDLLfuncEx (LsaRegisterLogonProcess, 12, secur32, 1)LoadDLLfunc (CharToOemA, 8, user32)LoadDLLfunc (CharToOemBuffA, 12, user32)LoadDLLfunc (CloseClipboard, 0, user32)LoadDLLfunc (CreateWindowExA, 48, user32)LoadDLLfunc (DefWindowProcA, 16, user32)LoadDLLfunc (DispatchMessageA, 4, user32)LoadDLLfunc (EmptyClipboard, 0, user32)LoadDLLfunc (FindWindowA, 8, user32)LoadDLLfunc (GetClipboardData, 4, user32)LoadDLLfunc (GetKeyboardLayout, 4, user32)LoadDLLfunc (GetMessageA, 16, user32)LoadDLLfunc (GetPriorityClipboardFormat, 8, user32)LoadDLLfunc (GetProcessWindowStation, 0, user32)LoadDLLfunc (GetThreadDesktop, 4, user32)LoadDLLfunc (GetUserObjectInformationA, 20, user32)LoadDLLfunc (KillTimer, 8, user32)LoadDLLfunc (MessageBoxA, 16, user32)LoadDLLfunc (MsgWaitForMultipleObjects, 20, user32)LoadDLLfunc (OemToCharBuffA, 12, user32)LoadDLLfunc (OpenClipboard, 4, user32)LoadDLLfunc (PeekMessageA, 20, user32)LoadDLLfunc (PostMessageA, 16, user32)LoadDLLfunc (PostQuitMessage, 4, user32)LoadDLLfunc (RegisterClassA, 4, user32)LoadDLLfunc (RegisterClipboardFormatA, 4, user32)LoadDLLfunc (SendMessageA, 16, user32)LoadDLLfunc (SetClipboardData, 8, user32)LoadDLLfunc (SetTimer, 16, user32)LoadDLLfunc (SetUserObjectSecurity, 12, user32)LoadDLLfuncEx (load_wsock32, 0, wsock32, 1) // non-existent function forces wsock32 loadLoadDLLfunc (WSAAsyncSelect, 16, wsock32)LoadDLLfunc (WSACleanup, 0, wsock32)LoadDLLfunc (WSAGetLastError, 0, wsock32)LoadDLLfunc (WSASetLastError, 4, wsock32)// LoadDLLfunc (WSAStartup, 8, wsock32)LoadDLLfunc (__WSAFDIsSet, 8, wsock32)LoadDLLfunc (accept, 12, wsock32)LoadDLLfunc (bind, 12, wsock32)LoadDLLfunc (closesocket, 4, wsock32)LoadDLLfunc (connect, 12, wsock32)LoadDLLfunc (gethostbyaddr, 12, wsock32)LoadDLLfunc (gethostbyname, 4, wsock32)LoadDLLfunc (gethostname, 8, wsock32)LoadDLLfunc (getpeername, 12, wsock32)LoadDLLfunc (getprotobyname, 4, wsock32)LoadDLLfunc (getprotobynumber, 4, wsock32)LoadDLLfunc (getservbyname, 8, wsock32)LoadDLLfunc (getservbyport, 8, wsock32)LoadDLLfunc (getsockname, 12, wsock32)LoadDLLfunc (getsockopt, 20, wsock32)LoadDLLfunc (inet_addr, 4, wsock32)LoadDLLfunc (inet_network, 4, wsock32)LoadDLLfunc (inet_ntoa, 4, wsock32)LoadDLLfunc (ioctlsocket, 12, wsock32)LoadDLLfunc (listen, 8, wsock32)LoadDLLfunc (rcmd, 24, wsock32)LoadDLLfunc (recv, 16, wsock32)LoadDLLfunc (recvfrom, 24, wsock32)LoadDLLfunc (rexec, 24, wsock32)LoadDLLfunc (rresvport, 4, wsock32)LoadDLLfunc (select, 20, wsock32)LoadDLLfunc (send, 16, wsock32)LoadDLLfunc (sendto, 24, wsock32)LoadDLLfunc (setsockopt, 20, wsock32)LoadDLLfunc (shutdown, 8, wsock32)LoadDLLfunc (socket, 12, wsock32)LoadDLLfuncEx (WSACloseEvent, 4, ws2_32, 1)LoadDLLfuncEx (WSACreateEvent, 0, ws2_32, 1)LoadDLLfuncEx (WSADuplicateSocketA, 12, ws2_32, 1)LoadDLLfuncEx (WSAGetOverlappedResult, 20, ws2_32, 1)LoadDLLfuncEx (WSARecv, 28, ws2_32, 1)LoadDLLfuncEx (WSARecvFrom, 36, ws2_32, 1)LoadDLLfuncEx (WSASend, 28, ws2_32, 1)LoadDLLfuncEx (WSASendTo, 36, ws2_32, 1)LoadDLLfuncEx (WSASetEvent, 4, ws2_32, 1)LoadDLLfuncEx (WSASocketA, 24, ws2_32, 1)LoadDLLfuncEx (WSAWaitForMultipleEvents, 20, ws2_32, 1)LoadDLLfuncEx (WSAEventSelect, 12, ws2_32, 1)LoadDLLfuncEx (WSAEnumNetworkEvents, 12, ws2_32, 1)LoadDLLfuncEx (GetIfTable, 12, iphlpapi, 1)LoadDLLfuncEx (GetIfEntry, 4, iphlpapi, 1)LoadDLLfuncEx (GetIpAddrTable, 12, iphlpapi, 1)LoadDLLfunc (CoInitialize, 4, ole32)LoadDLLfunc (CoUninitialize, 0, ole32)LoadDLLfunc (CoCreateInstance, 20, ole32)LoadDLLfuncEx (CancelIo, 4, kernel32, 1)LoadDLLfuncEx (CreateHardLinkA, 12, kernel32, 1)LoadDLLfuncEx (CreateToolhelp32Snapshot, 8, kernel32, 1)LoadDLLfuncEx (GetConsoleWindow, 0, kernel32, 1)LoadDLLfuncEx2 (IsDebuggerPresent, 0, kernel32, 1, 1)LoadDLLfuncEx (Process32First, 8, kernel32, 1)LoadDLLfuncEx (Process32Next, 8, kernel32, 1)LoadDLLfuncEx (SignalObjectAndWait, 16, kernel32, 1)LoadDLLfunc (TryEnterCriticalSection, 4, kernel32)LoadDLLfuncEx (waveOutGetNumDevs, 0, winmm, 1)LoadDLLfuncEx (waveOutOpen, 24, winmm, 1)LoadDLLfuncEx (waveOutReset, 4, winmm, 1)LoadDLLfuncEx (waveOutClose, 4, winmm, 1)LoadDLLfuncEx (waveOutGetVolume, 8, winmm, 1)LoadDLLfuncEx (waveOutSetVolume, 8, winmm, 1)LoadDLLfuncEx (waveOutUnprepareHeader, 12, winmm, 1)LoadDLLfuncEx (waveOutPrepareHeader, 12, winmm, 1)LoadDLLfuncEx (waveOutWrite, 12, winmm, 1)LoadDLLfuncEx (timeGetDevCaps, 8, winmm, 1)LoadDLLfuncEx (timeGetTime, 0, winmm, 1)LoadDLLfuncEx (timeBeginPeriod, 4, winmm, 1)LoadDLLfuncEx (timeEndPeriod, 4, winmm, 1)}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -