void RTMPCheckRates(int param_1,void *param_2,byte *param_3)
{
byte bVar1;
ushort uVar2;
byte bVar3;
byte *pbVar4;
size_t __n;
ushort *puVar5;
uint uVar6;
byte bVar7;
byte local_18 [20];
bVar7 = 0xc;
if (*(char *)(param_1 + 0x16982) == '\x01') {
bVar7 = 4;
}
__n = 0;
for (uVar6 = 0; uVar6 < *param_3; uVar6 = uVar6 + 1 & 0xff) {
bVar3 = 0;
bVar1 = *(byte *)((int)param_2 + uVar6);
puVar5 = &RateIdTo500Kbps;
while( true ) {
bVar3 = bVar3 + 1;
uVar2 = *puVar5;
puVar5 = puVar5 + 1;
if ((bVar1 & 0x7f) == uVar2) {
pbVar4 = local_18 + __n;
__n = __n + 1 & 0xff //possible issue identified - semgrep
*pbVar4 = bVar1;
}
if (bVar7 <= bVar3) break;
bVar1 = *(byte *)((int)param_2 + uVar6);
}
}
*param_3 = (byte)__n;
memmove(param_2,local_18,__n) //possible issue identified - semgrep
return;
}