undefined4 Set_RFWrite_Proc(int param_1,char *param_2)

{
  char cVar1;
  char *pcVar2;
  char *pcVar3;
  uint uVar4;
  int iVar5;
  int iVar6;
  int iVar7;
  int iVar8;
  int iVar9;
  char *pcVar10;
  int iVar11;
  char *pcVar12;
  
  pcVar2 = param_2;
  while( true ) {
    cVar1 = *pcVar2;
    pcVar10 = pcVar2 + 1;
    pcVar3 = pcVar10;
    if (cVar1 == ':') break;
    pcVar2 = pcVar2 + 1;
    if (cVar1 == '\0') {
      return 0;
    }
  }
  while( true ) {
    cVar1 = *pcVar3;
    pcVar12 = pcVar3 + 1;
    pcVar2 = pcVar12;
    if (cVar1 == ':') break;
    pcVar3 = pcVar3 + 1;
    if (cVar1 == '\0') {
      return 0;
    }
  }
  while( true ) {
    iVar11 = 0;
    if (*pcVar2 == ':') break;
    if (*pcVar2 == '\0') {
      return 0;
    }
    pcVar2 = pcVar2 + 1;
  }
  do {
    cVar1 = *param_2;
    iVar5 = (int)cVar1;
    iVar9 = iVar11 * 0x10;
    if ((byte)(cVar1 + 0x9fU) < 6) {
      iVar11 = iVar5 + -0x57 + iVar9;
    }
    else if ((byte)(cVar1 + 0xbfU) < 6) {
      iVar11 = iVar5 + -0x37 + iVar9;
    }
    else {
      if (9 < (byte)(cVar1 - 0x30U)) break;
      iVar11 = iVar5 + -0x30 + iVar9;
    }
    param_2 = param_2 + 1;
  } while( true );
  iVar5 = 0;
  do {
    cVar1 = *pcVar10;
    iVar6 = (int)cVar1;
    iVar9 = iVar5 * 0x10;
    if ((byte)(cVar1 + 0x9fU) < 6) {
      iVar5 = iVar6 + -0x57 + iVar9;
    }
    else if ((byte)(cVar1 + 0xbfU) < 6) {
      iVar5 = iVar6 + -0x37 + iVar9;
    }
    else {
      if (9 < (byte)(cVar1 - 0x30U)) break;
      iVar5 = iVar6 + -0x30 + iVar9;
    }
    pcVar10 = pcVar10 + 1;
  } while( true );
  iVar9 = 0;
  do {
    cVar1 = *pcVar12;
    iVar7 = (int)cVar1;
    iVar6 = iVar9 * 0x10;
    if ((byte)(cVar1 + 0x9fU) < 6) {
      iVar9 = iVar7 + -0x57 + iVar6;
    }
    else if ((byte)(cVar1 + 0xbfU) < 6) {
      iVar9 = iVar7 + -0x37 + iVar6;
    }
    else {
      if (9 < (byte)(cVar1 - 0x30U)) break;
      iVar9 = iVar7 + -0x30 + iVar6;
    }
    pcVar12 = pcVar12 + 1;
  } while( true );
  iVar6 = 0;
  while( true ) {
    while( true ) {
      while( true ) {
        pcVar2 = pcVar2 + 1;
        cVar1 = *pcVar2;
        iVar8 = (int)cVar1;
        iVar7 = iVar6 * 0x10;
        if (5 < (byte)(cVar1 + 0x9fU)) break;
        iVar6 = iVar8 + -0x57 + iVar7;
      }
      if (5 < (byte)(cVar1 + 0xbfU)) break;
      iVar6 = iVar8 + -0x37 + iVar7;
    }
    if (9 < (byte)(cVar1 - 0x30U)) break;
    iVar6 = iVar8 + -0x30 + iVar7;
  }
  if (*(char *)(param_1 + 0xec) == '\0') {
    uVar4 = 0;
    do {
      if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
        if (uVar4 < 100) {
          *(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar11;
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        else {
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        goto LAB_00096730;
      }
      uVar4 = uVar4 + 1;
    } while (uVar4 != 100);
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
  else {
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
LAB_00096730:
  if (cVar1 == '\0') {
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  else {
    printk("RF:%x\n",iVar11);
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  if (cVar1 == '\0') {
    uVar4 = 0;
    do {
      if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
        if (uVar4 < 100) {
          *(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar5;
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        else {
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        goto LAB_000967a8;
      }
      uVar4 = uVar4 + 1;
    } while (uVar4 != 100);
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
  else {
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
LAB_000967a8:
  if (cVar1 == '\0') {
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  else {
    printk("RF:%x\n",iVar5);
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  if (cVar1 == '\0') {
    uVar4 = 0;
    do {
      if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
        if (uVar4 < 100) {
          *(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar9;
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        else {
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        goto LAB_00096820;
      }
      uVar4 = uVar4 + 1;
    } while (uVar4 != 100);
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
  else {
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
LAB_00096820:
  if (cVar1 == '\0') {
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  else {
    printk("RF:%x\n",iVar9);
    cVar1 = *(char *)(param_1 + 0xec)   //possible issue identified - semgrep
  }
  if (cVar1 == '\0') {
    uVar4 = 0;
    do {
      if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
        if (uVar4 < 100) {
          *(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar6;
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        else {
          cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
        }
        goto LAB_00096898;
      }
      uVar4 = uVar4 + 1;
    } while (uVar4 != 100);
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
  else {
    cVar1 = *(char *)(param_1 + 0x4bdd)   //possible issue identified - semgrep
  }
LAB_00096898:
  if (cVar1 != '\0') {
    printk("RF:%x\n",iVar6);
  }
  return 1;
}