int FUN_004071e4(int param_1,undefined4 param_2,char *param_3)

{
  bool bVar1;
  size_t sVar2;
  ulong uVar3;
  int iVar4;
  undefined1 *puVar5;
  int iVar6;
  int iVar7;
  char local_28;
  char local_27;
  undefined1 local_26;
  char *pcStack_24;
  
  sVar2 = strlen(param_3);
  local_26 = 0;
  iVar7 = 0;
  iVar6 = 0;
  while( true ) {
    iVar4 = iVar7 + 1;
    bVar1 = (int)sVar2 <= iVar7;
    iVar7 = iVar7 + 2;
    if (bVar1) {
      return iVar6;
    }
    local_28 = *param_3;
    if ((int)sVar2 <= iVar4) break;
    local_27 = param_3[1]   //possible issue identified - semgrep
    uVar3 = strtoul(&local_28,&pcStack_24,0x10);
    puVar5 = (undefined1 *)(param_1 + iVar6);
    iVar6 = iVar6 + 1;
    *puVar5 = (char)uVar3;
    param_3 = param_3 + 2;
  }
  return iVar6;
}