void FUN_004069a4(byte *param_1,int param_2)

{
  ulong uVar1;
  int iVar2;
  char acStack_38 [4];
  undefined1 local_34;
  undefined1 local_30;
  char acStack_2c [8];
  char acStack_24 [16];
  
  sprintf(acStack_2c,"%s%02x%02x%02x","01005e",(uint)*param_1,(uint)param_1[1],(uint)param_1[2])   //possible issue identified - semgrep
  strncpy(acStack_38,acStack_2c,8)   //possible issue identified - semgrep
  local_30 = 0;
  uVar1 = strtoul(acStack_38,(char **)0x0,0x10);
  FUN_004067c4(0x3c,uVar1);
  strncpy(acStack_38,acStack_24,4)   //possible issue identified - semgrep
  local_34 = 0;
  uVar1 = strtoul(acStack_38,(char **)0x0,0x10);
  FUN_004067c4(0x38,uVar1);
  if (param_1[3] == 0) {
    if (param_2 == 2) {
      iVar2 = 0x71;
    }
    else {
      if (param_2 != 1) {
        return;
      }
      FUN_004067c4(0x34,1);
      FUN_00406924();
      iVar2 = 0x81;
    }
  }
  else {
    iVar2 = ((uint)param_1[3] << 0xc | 0x40000) + 0x71;
  }
  FUN_004067c4(0x34,iVar2);
  FUN_00406924();
  return;
}