네이티브 DLL 내보내기 기능 뷰어가 있습니까? [닫은]
함수 이름과 해당 매개 변수 목록을 표시하는 무료 기본 Windows DLL 내보내기 함수 뷰어가 있습니까?
Dependency Walker 를 사용 하여 함수 이름을 볼 수 있습니다 . 장식 된 경우에만 함수의 매개 변수를 볼 수 있습니다. FAQ에서 다음을 읽으십시오.
함수의 매개 변수와 반환 유형을 보려면 어떻게해야합니까?대부분의 기능에서이 정보는 모듈에 표시되지 않습니다. Windows의 모듈 파일 형식은 각 기능을 식별하는 단일 텍스트 문자열 만 제공합니다. 매개 변수 수, 매개 변수 유형 또는 반환 유형을 나열하는 구조화 된 방법은 없습니다. 그러나 일부 언어는 정보를 텍스트 문자열로 인코딩하는 프로세스 인 "장식"또는 "망 글링"이라는 기능을 수행합니다. 예를 들어 간단한 데코레이션으로 인코딩 된 int Foo (int, int)와 같은 함수는 _Foo @ 8로 내보낼 수 있습니다. 8은 매개 변수가 사용하는 바이트 수를 나타냅니다. C ++ 데코레이션을 사용하는 경우 함수는? Foo @@ YGHHH @ Z로 내보내지고 함수의 원래 프로토 타입 인 int Foo (int, int)로 직접 디코딩 할 수 있습니다.
dumpbin
Visual Studio 명령 프롬프트에서 :
dumpbin /exports csp.dll
출력 예 :
Microsoft (R) COFF/PE Dumper Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
Dump of file csp.dll
File Type: DLL
Section contains the following exports for CSP.dll
00000000 characteristics
3B1D0B77 time date stamp Tue Jun 05 12:40:23 2001
0.00 version
1 ordinal base
25 number of functions
25 number of names
ordinal hint RVA name
1 0 00001470 CPAcquireContext
2 1 000014B0 CPCreateHash
3 2 00001520 CPDecrypt
4 3 000014B0 CPDeriveKey
5 4 00001590 CPDestroyHash
6 5 00001590 CPDestroyKey
7 6 00001560 CPEncrypt
8 7 00001520 CPExportKey
9 8 00001490 CPGenKey
10 9 000015B0 CPGenRandom
11 A 000014D0 CPGetHashParam
12 B 000014D0 CPGetKeyParam
13 C 00001500 CPGetProvParam
14 D 000015C0 CPGetUserKey
15 E 00001580 CPHashData
16 F 000014F0 CPHashSessionKey
17 10 00001540 CPImportKey
18 11 00001590 CPReleaseContext
19 12 00001580 CPSetHashParam
20 13 00001580 CPSetKeyParam
21 14 000014F0 CPSetProvParam
22 15 00001520 CPSignHash
23 16 000015A0 CPVerifySignature
24 17 00001060 DllRegisterServer
25 18 00001000 DllUnregisterServer
Summary
1000 .data
1000 .rdata
1000 .reloc
1000 .rsrc
1000 .text
NirSoft의 DLL Export Viewer 는 내 보낸 함수를 DLL로 표시하는 데 사용할 수 있습니다.
이 유틸리티는 지정된 DLL 파일에 대해 내 보낸 모든 함수 및 해당 가상 메모리 주소 목록을 표시합니다. 원하는 함수의 메모리 주소를 쉽게 복사하여 디버거에 붙여넣고이 메모리 주소에 대한 중단 점을 설정할 수 있습니다. 이 함수가 호출되면 디버거가이 함수의 시작 부분에서 중지됩니다.
소스 코드와 API 문서가없는 경우 기계어 코드 만 있으면 IDA Pro 와 같은 것을 사용하여 dll 라이브러리를 분해해야합니다 . 또 다른 옵션은 PE Explorer 평가판을 사용하는 것 입니다.
PE Explorer provides a Disassembler. There is only one way to figure out the parameters: run the disassembler and read the disassembly output. Unfortunately, this task of reverse engineering the interface cannot be automated.
PE Explorer comes bundled with descriptions for 39 various libraries, including the core Windows® operating system libraries (eg. KERNEL32, GDI32, USER32, SHELL32, WSOCK32), key graphics libraries (DDRAW, OPENGL32) and more.
(source: heaventools.com)
Not sure about its parameters list, but following TotalCommander plugin is very useful.
참고URL : https://stackoverflow.com/questions/1548637/is-there-any-native-dll-export-functions-viewer
'IT story' 카테고리의 다른 글
'Maven 프로젝트 업데이트 중'중에 내부 오류가 발생했습니다. (0) | 2020.09.13 |
---|---|
실행시 jar 파일에 매개 변수를 어떻게 전달합니까? (0) | 2020.09.13 |
Ruby / Rails의 "Ago"날짜 / 시간 함수 (0) | 2020.09.13 |
MongoDB에서 컬렉션을 CSV로 내보내는 방법은 무엇입니까? (0) | 2020.09.13 |
필요하지 않을 때 세로 스크롤 막대를 숨기는 방법 (0) | 2020.09.13 |