随机函数(用于创建随机目录)
nss3.dll 地址 100010C0
signed __int64 __cdecl PR_Now(){
signed __int64 v0; // ST00_8@1
int v2; // [sp+0h] [bp-20h]@1
struct _FILETIME FileTime; // [sp+4h] [bp-1Ch]@1
struct _SYSTEMTIME SystemTime; // [sp+Ch] [bp-14h]@1
unsigned int v5; // [sp+1Ch] [bp-4h]@1
v5 = (unsigned int)&v2 ^ __security_cookie;
GetSystemTime(&SystemTime);
SystemTimeToFileTime(&SystemTime, &FileTime);
HIDWORD(v0) = (*(_QWORD *)&FileTime - 0x19DB1DED53E8000ui64) >> 32;
LODWORD(v0) = FileTime.dwLowDateTime + 0x2AC18000;
return v0 / 10;
}
//创建随机目录
a-z 1-0
BYTE byte_111CA4FC[] ={
0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A,
0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74,
0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0x31, 0x32, 0x33, 0x34,
0x35, 0x36, 0x37, 0x38, 0x39, 0x30,0x0};
int __cdecl sub_10845E07()
{
signed __int64 v0; // qax@1
signed int v1; // esi@1
__int64 v3; // [sp+4h] [bp-18h]@2
char Str; // [sp+Ch] [bp-10h]@3
unsigned __int8 v5; // [sp+14h] [bp-8h]@3
unsigned int v6; // [sp+18h] [bp-4h]@1
int v7; // [sp+1Ch] [bp+0h]@1
v6 = (unsigned int)&v7 ^ __security_cookie;
LODWORD(v0) = PR_Now();
srand((unsigned __int64)((double)v0 * 0.000001 + 0.5));
v1 = 0;
do
{
++v1;
*((_BYTE *)&v3 + v1 + 7) = byte_111CA4FC[rand() % 0x24u];
}
while ( v1 < 8 );
v5 = 0x2Eu;
return sub_10154F20(0, &Str, 9u);
}