undefined4 FUN_0042506c(int param_1,int param_2,int param_3,char param_4,undefined1 param_5)
{
undefined4 uVar1;
int iVar2;
char local_810 [7];
undefined1 local_809;
undefined1 local_808;
uint local_801;
undefined1 local_7fd;
undefined1 local_7fc;
undefined1 local_7fb;
undefined1 local_7fa;
undefined1 local_7f9;
undefined1 local_7f8;
undefined1 local_7f7;
undefined1 local_7f6;
undefined4 local_7f5;
undefined1 local_7f1;
undefined1 local_7f0;
undefined1 auStack_7ef [2019];
if (param_4 == '\x02') {
local_809 = 0;
if (param_2 == 0) {
local_809 = 0xff;
}
}
else if (param_4 == '\x05') {
local_808 = 0;
local_809 = 0;
if ((param_2 == 0) && (local_809 = 0xff, *(char *)(param_1 + 0x9f) != '\0')) {
local_809 = 0;
}
}
local_801 = param_3 + 0xe;
local_7fa = (undefined1)(local_801 & 0xffff);
local_7fc = *(undefined1 *)(param_1 + 0x9a);
local_7fd = param_5;
local_7f9 = 0xfe;
local_7f7 = 0x37;
local_7f6 = 0x2a;
local_7fb = (undefined1)((local_801 & 0xffff) >> 8);
local_7f8 = 0;
local_7f5 = 0x1000000;
local_810[0] = param_4;
if (param_2 != 0) {
iVar2 = (int)*(char *)(param_2 + 9);
local_7f1 = 4;
if (((8 < (iVar2 - 4U & 0xff)) && (local_7f1 = 2, iVar2 != 0xd)) &&
(local_7f1 = 3, iVar2 != 0xe)) {
if (iVar2 != 0xf) {
return 0x5301;
}
local_7f1 = 5;
}
local_7f0 = 0;
FUN_00483c90(auStack_7ef,param_2,param_3);
}
iVar2 = FUN_00402ff4(*(undefined4 *)(param_1 + 0x8d),local_810,param_3 + 0x21,0x4000);
uVar1 = 0x1003;
if (-1 < iVar2) {
uVar1 = 0x1001;
}
return uVar1;
}