byte FUN_0047cfb8(int param_1)
{
char cVar1;
byte bVar2;
int iVar3;
byte *pbVar4;
byte *pbVar5;
char *pcVar6;
undefined1 auStack_28 [12];
if (*(char *)(param_1 + 9) == 'z') {
iVar3 = FUN_00483e50(param_1 + 9);
pbVar4 = (byte *)(param_1 + iVar3 + 10);
do {
bVar2 = *pbVar4;
pbVar4 = pbVar4 + 1;
} while ((char)bVar2 < '\0');
do {
pbVar5 = pbVar4;
pbVar4 = pbVar5 + 1;
} while ((char)*pbVar5 < '\0');
if (*(char *)(param_1 + 8) == '\x01') {
pbVar4 = pbVar5 + 2;
}
else {
do {
bVar2 = *pbVar4;
pbVar4 = pbVar4 + 1;
} while ((char)bVar2 < '\0');
}
do {
bVar2 = *pbVar4;
pbVar4 = pbVar4 + 1;
} while ((char)bVar2 < '\0');
for (pcVar6 = (char *)(param_1 + 10); cVar1 = *pcVar6, cVar1 != 'R'; pcVar6 = pcVar6 + 1) {
if (cVar1 == 'P') {
pbVar4 = (byte *)FUN_0047ce1c(*pbVar4 & 0x7f,0,pbVar4 + 1,auStack_28);
}
else {
pbVar4 = pbVar4 + 1;
if (cVar1 != 'L') goto LAB_0047d100;
}
}
bVar2 = *pbVar4;
}
else {
LAB_0047d100:
bVar2 = 0;
}
return bVar2;
}