/* Consolidated from decompiled shard files. */
/* Source: ffd7f6ec.c */
void *__cdecl FillBuffer(void *buf, unsigned int count, char value)
{
memset(buf, value, count); /*0xffd7f6f9*/
return buf; /*0xffd7f6ff*/
}
/* Source: ffd7f72c.c */
char *__cdecl CopyMemoryBytes(char *dst, char *src, unsigned int count_1)
{
unsigned int count; // edx
char *dst_1; // edi
char *src_1; // esi
count = count_1; /*0xffd7f736*/
if ( src < dst && &src[count_1 - 1] >= dst ) /*0xffd7f744*/
{
src_1 = &src[count_1 - 1]; /*0xffd7f758*/
dst_1 = &dst[count_1 - 1]; /*0xffd7f75a*/
}
else
{
count = count_1 & 3; /*0xffd7f748*/
qmemcpy(dst, src, 4 * (count_1 >> 2)); /*0xffd7f751*/
src_1 = &src[4 * (count_1 >> 2)]; /*0xffd7f751*/
dst_1 = &dst[4 * (count_1 >> 2)]; /*0xffd7f751*/
}
qmemcpy(dst_1, src_1, count); /*0xffd7f761*/
return dst; /*0xffd7f768*/
}
/* Source: ffd7f76c.c */
int __cdecl StoreDwordPairs(int a1, int a2, int a3, int a4)
{
do /*0xffd7f785*/
{
*(_DWORD *)(a1 + 8 * a2 - 8) = a3; /*0xffd7f77d*/
*(_DWORD *)(a1 + 8 * a2-- - 4) = a4; /*0xffd7f781*/
}
while ( a2 ); /*0xffd7f785*/
return a1; /*0xffd7f789*/
}
/* Source: ffd7f78c.c */
void *__cdecl FillBuffer32(void *buf, unsigned int count, int value)
{
memset32(buf, value, count); /*0xffd7f799*/
return buf; /*0xffd7f79f*/
}
/* Source: ffd7f9f7.c */
int __fastcall StallForTicks(unsigned int a1)
{
unsigned int v1; // esi
int n0x400000; // edi
int v3; // ebx
int result; // eax
v1 = a1 >> 22; /*0xffd7fa04*/
n0x400000 = a1 & 0x3FFFFF; /*0xffd7fa07*/
do /*0xffd7fa3f*/
{
v3 = n0x400000 + (sub_FFD8CD6B(1288) & 0xFFFFFF); /*0xffd7fa1c*/
n0x400000 = 0x400000; /*0xffd7fa1e*/
while ( ((v3 - sub_FFD8CD6B(1288)) & 0x800000) == 0 ) /*0xffd7fa38*/
_mm_pause(); /*0xffd7fa25*/
result = v1--; /*0xffd7fa3a*/
}
while ( result ); /*0xffd7fa3f*/
return result; /*0xffd7fa41*/
}
/* Source: ffd7fa46.c */
unsigned int __fastcall StallMicroseconds(unsigned int a1)
{
unsigned int v2; // eax
unsigned __int64 v3; // rtt
v2 = (3579545 * (unsigned __int64)a1) >> 32; /*0xffd7fa6c*/
LODWORD(v3) = 3579545 * a1; /*0xffd7fa7c*/
HIDWORD(v3) = v2 % 0xF4240; /*0xffd7fa7c*/
StallForTicks(v3 / 0xF4240, v2 / 0xF4240); /*0xffd7fa81*/
return a1; /*0xffd7fa88*/
}