int * FUN_00404330(undefined4 param_1,int param_2,int param_3,int param_4)
{
int iVar1;
int *piVar2;
piVar2 = DAT_00439600;
if (DAT_00439600 != (int *)0x0) {
do {
if ((piVar2[2] == param_2) && (iVar1 = duidcmp(piVar2 + 3,param_1), iVar1 == 0)) {
if (param_2 != 0) {
return piVar2;
}
if ((piVar2[5] == param_3) && (piVar2[6] == param_4)) {
return piVar2;
}
}
piVar2 = (int *)*piVar2;
} while (piVar2 != (int *)0x0);
}
return piVar2;
}