|
|
rt!
就是nvidia的opengl的驱动,导出了一些函数
ordinal hint RVA name
1 0 0011F680 DllMain
2 1 002272F0 DrvCopyContext
3 2 00226450 DrvCreateContext
4 3 002260B0 DrvCreateLayerContext
5 4 00224B60 DrvDeleteContext
6 5 00225F40 DrvDescribeLayerPlane
7 6 00226E70 DrvDescribePixelFormat
8 7 002267C0 DrvGetLayerPaletteEntries
9 8 00226C90 DrvGetProcAddress
10 9 00226A70 DrvRealizeLayerPalette
11 A 00225A00 DrvReleaseContext
12 B 00225900 DrvSetCallbackProcs
13 C 00227090 DrvSetContext
14 D 00226460 DrvSetLayerPaletteEntries
15 E 00226F60 DrvSetPixelFormat
16 F 00225AF0 DrvShareLists
17 10 00225EE0 DrvSwapBuffers
18 11 00225D60 DrvSwapLayerBuffers
19 12 00226D40 DrvValidateVersion
20 13 003138D0 GetIAtomString
最后一个函数的参数是什么样的? 那个大侠帮姐姐分析一下?反汇编nvoglnt.dll看一下到底有几个参数,参数类型是什么来着?
反汇编的代码片断:
.....
push ebx
push ebp
mov ebp, dword ptr [esp+0c]
push esi
mov esi,dword ptr [esp+18]
mov eax,dword ptr [esi+0c]
push edi
mov edi,ecx
mov ecx,dword ptr[ebp+2c]
push eax
push ecx
call 698138d0 ///调用 nvoglnt.GetIAtomString
函数反汇编代码片断:
exported fn():GetIAtomString - ord:0014h
mov eax,dword ptr[esp+8]
test eax,eax
jle ....
mov edx , dword ptr [esp+04]
cmp eax, dword ptr [edx+14]
jge ...
mov ecx ,dword ptr [edx+0c]
mov ecx ,dword ptr [ecx+4*eax]
test ecx,ecx
jle ...
mov eax ,dword ptr [edx+04]
cmp ecx, dword ptr [eax+8]
jeg ...
mov eax ,dword ptr [eax+04]
add eax, ecx
ret
mov eax ...
ret
......
代码手抄的,可能有错误。。
[em24] [em24] |
|