uint FUN_0040dc50(undefined4 *param_1,undefined4 param_2,undefined4 param_3,undefined4 *param_4)

{
  bool bVar1;
  uint uVar2;
  int iVar3;
  int iVar4;
  int iVar5;
  char *__nptr;
  char *__nptr_00;
  uint extraout_v0;
  uint extraout_v0_00;
  uint extraout_v0_01;
  uint extraout_v0_02;
  uint extraout_v0_03;
  uint extraout_v0_04;
  uint extraout_v0_05;
  uint extraout_v0_06;
  uint uVar6;
  int extraout_v1;
  int extraout_v1_00;
  int extraout_v1_01;
  int extraout_v1_02;
  int extraout_v1_03;
  int extraout_v1_04;
  int extraout_v1_05;
  int extraout_v1_06;
  uint uVar7;
  undefined4 *puVar8;
  
  iVar3 = sobj_new();
  if (iVar3 == 0) {
    client_printf(*param_1,"\n!! %s >>>>>>>>>>>>>>>>>>>>>>>>>\n","INTERNAL ERROR");
    client_printf(*param_1,"memory allocation failed !");
    client_printf(*param_1,"\n!! %s <<<<<<<<<<<<<<<<<<<<<<<<<\n","INTERNAL ERROR");
    uVar7 = 0xffffffff;
  }
  else {
    iVar4 = sobj_new();
    if (iVar4 == 0) {
      client_printf(*param_1,"\n!! %s >>>>>>>>>>>>>>>>>>>>>>>>>\n","INTERNAL ERROR");
      client_printf(*param_1,"memory allocation failed !");
      client_printf(*param_1,"\n!! %s <<<<<<<<<<<<<<<<<<<<<<<<<\n","INTERNAL ERROR");
      uVar7 = 0xffffffff;
    }
    else {
      uVar7 = 0xffffffff;
      for (puVar8 = (undefined4 *)*param_4; puVar8 != param_4; puVar8 = (undefined4 *)*puVar8) {
        sobj_free(iVar3);
        sobj_free(iVar4);
        iVar5 = FUN_0040d858(param_1,param_2,param_3,iVar3,puVar8 + 2);
        if (iVar5 < 0) {
switchD_0040de58_default:
          uVar7 = 0xffffffff;
          break;
        }
        iVar5 = FUN_0040d858(param_1,param_2,param_3,iVar4,puVar8 + 4);
        uVar7 = 0xffffffff;
        if (iVar5 < 0) break;
        __nptr = (char *)sobj_get_string(iVar3);
        __nptr_00 = (char *)sobj_get_string(iVar4);
        switch(puVar8[6]) {
        case 0:
          iVar5 = strcmp(__nptr,__nptr_00);
          uVar7 = (uint)(iVar5 == 0);
          break;
        case 1:
          iVar5 = strcmp(__nptr,__nptr_00);
          uVar7 = (uint)(iVar5 != 0);
          break;
        case 2:
          atoll(__nptr);
          atoll(__nptr_00);
          uVar7 = 0;
          if (extraout_v1_00 < extraout_v1) {
LAB_0040dfd0:
            uVar7 = 1;
          }
          else {
            bVar1 = extraout_v0_00 < extraout_v0;
            if (extraout_v1 == extraout_v1_00) {
LAB_0040df28:
              uVar7 = 0;
              if (bVar1) {
                uVar7 = 1;
              }
            }
          }
          break;
        case 3:
          atoll(__nptr);
          atoll(__nptr_00);
          uVar7 = 0;
          if (extraout_v1_01 < extraout_v1_02) goto LAB_0040dfd0;
          bVar1 = extraout_v0_01 < extraout_v0_02;
          if (extraout_v1_02 == extraout_v1_01) goto LAB_0040df28;
          break;
        case 4:
          atoll(__nptr);
          atoll(__nptr_00);
          uVar7 = 0;
          if (extraout_v1_04 <= extraout_v1_03) {
            bVar1 = extraout_v0_03 < extraout_v0_04;
            if (extraout_v1_04 == extraout_v1_03) {
LAB_0040dfc8:
              uVar7 = 0;
              if (bVar1) break;
            }
            goto LAB_0040dfd0;
          }
          break;
        case 5:
          atoll(__nptr);
          atoll(__nptr_00);
          uVar7 = 0;
          if (extraout_v1_05 <= extraout_v1_06) {
            bVar1 = extraout_v0_06 < extraout_v0_05;
            if (extraout_v1_05 == extraout_v1_06) goto LAB_0040dfc8;
            goto LAB_0040dfd0;
          }
          break;
        default:
          goto switchD_0040de58_default;
        }
        uVar6 = puVar8[7];
        uVar2 = uVar7;
        if ((uVar6 == 1) || (uVar2 = uVar6, uVar6 != 2)) {
          if (uVar2 == 0) break;
        }
        else if (uVar7 != 0) {
          uVar7 = 1;
          break;
        }
      }
    }
    sobj_del(iVar3);
    if (iVar4 != 0) {
      sobj_del(iVar4);
    }
  }
  return uVar7;
}