C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64>dumpbin.exe /di
通过反汇编,得到函数调用关系。
sasm D:\DEBUG_VS2013x86\X64\VariableSmm.efi
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64>dumpbin.exe /di
sasm D:\****.efi
通过反汇编,得到函数调用关系。
得到的结果是这个样子的:
Microsoft (R) COFF/PE Dumper Version 12.00.21005.1
Copyright (C) Microsoft Corporation. All rights reserved.Dump of file XXXFile Type: DLL_ModuleEntryPoint:00000000000002C0: 40 53 push rbx00000000000002C2: 48 83 EC 20 sub rsp,20h00000000000002C6: 48 8B DA mov rbx,rdx00000000000002C9: E8 3E 00 00 00 call ProcessLibraryConstructorList00000000000002CE: 48 8B D3 mov rdx,rbx00000000000002D1: E8 E6 05 00 00 call ProcessModuleEntryPointList00000000000002D6: 48 8B D8 mov rbx,rax00000000000002D9: 48 85 C0 test rax,rax00000000000002DC: 79 24 jns 000000000000030200000000000002DE: 48 8B 0D 2B D0 00 mov rcx,qword ptr [mSmmMemLibInternalSmramRanges]0000000000000002E5: E8 32 61 00 00 call FreePool00000000000002EA: 8A 0D F3 C4 00 00 mov cl,byte ptr [_gPcd_BinaryPatch_PcdDebugPropertyMask]00000000000002F0: 48 8B 0D 31 D0 00 mov rcx,qword ptr [mSmramRanges]0000000000000002F7: E8 20 61 00 00 call FreePool00000000000002FC: 8A 0D E1 C4 00 00 mov cl,byte ptr [_gPcd_BinaryPatch_PcdDebugPropertyMask]0000000000000302: 48 8B C3 mov rax,rbx0000000000000305: 48 83 C4 20 add rsp,20h0000000000000309: 5B pop rbx000000000000030A: C3 ret000000000000030B: CC ?
ProcessLibraryConstructorList:000000000000030C: 48 89 5C 24 20 mov qword ptr [rsp+20h],rbx0000000000000311: 55 push rbp0000000000000312: 56 push rsi0000000000000313: 57 push rdi0000000000000314: 41 54 push r120000000000000316: 41 55 push r130000000000000318: 41 56 push r14000000000000031A: 41 57 push r15000000000000031C: 48 8B EC mov rbp,rsp000000000000031F: 48 83 EC 20 sub rsp,20h0000000000000323: 48 8B F2 mov rsi,rdx0000000000000326: 48 8B F9 mov rdi,rcx0000000000000329: E8 82 78 00 00 call SerialPortInitialize000000000000032E: 44 8A 05 AE C4 00 mov r8b,byte ptr [_gPcd_BinaryPatch_PcdDebugPropertyMask]000000000000000335: 41 B6 01 mov r14b,10000000000000338: 33 DB xor ebx,ebx000000000000033A: 4C 8D 3D 37 92 00 lea r15,[??_C@_0CB@DMEJJJHA@?6ASSERT_EFI_ERROR?5?$CIStatus?5?$DN?5?$CFr?$CJ?6@]