LdrpSectionTableFromVirtualAddress
__int64 __fastcall LdrpSectionTableFromVirtualAddress(
__int64 a1,
__int64 a2,
__int64 a3,
__int64 a4,
unsigned int a5,
char a6){
__int64 v7;
int v8;
unsigned int v9;
if( a3 )
{
v7 = *(unsigned __int16 *)(a3 + 20) + a3 + 24;
if( v7 )
{
v8 = 0;
if( *(_WORD *)(a3 + 6) )
{
while( !a6 || v7 + 40 <= a2 + (a1 & 0xFFFFFFFFFFFFFFFCui64) )
{
v9 = *(_DWORD *)(v7 + 12);
if( a5 == v9 || a5 > v9 && a5 < *(_DWORD *)(v7 + 16) + v9 )
return v7;
v7 += 40i64;
if( ++v8 >= *(unsigned __int16 *)(a3 + 6) )
return 0i64;
}
}
}
}
return 0i64;
}Referenced by:
LdrpResGetResourceDirectory
LdrpResSearchResourceInsideDirectory