undefined1 * FUN_00407558(undefined1 *param_1,undefined2 *param_2)

{
  char cVar1;
  undefined2 uVar2;
  ushort uVar3;
  int iVar4;
  undefined4 *puVar5;
  
  uVar2 = *param_2;
  param_1[1] = (char)((ushort)uVar2 >> 8);
  *param_1 = (char)uVar2;
  uVar3 = param_2[1];
  param_1[3] = (char)(uVar3 >> 8);
  param_1[2] = (char)uVar3;
  cVar1 = *(char *)(param_2 + 6)   //possible issue identified - semgrep
  param_1[0xc] = cVar1;
  if (cVar1 == '\0') {
    *(undefined4 *)(param_1 + 8) = *(undefined4 *)(param_2 + 4);
  }
  else {
    iVar4 = FUN_00471eb0(CONCAT21(uVar3 >> 8,param_1[2]));
    *(int *)(param_1 + 8) = iVar4;
    if (iVar4 == 0) {
      puVar5 = (undefined4 *)FUN_0047082c(4);
      *puVar5 = 0x1002;
      FUN_00472734(puVar5,&PTR_PTR_FUN_004af1e0,0);
    }
    FUN_00483c90();
  }
  return param_1;
}