void WPAInstallPairwiseKey(undefined4 param_1,undefined1 param_2,int param_3,char param_4)

{
  undefined1 uVar1;
  void *__src;
  
  memset((void *)(param_3 + 0x1f8),0,0x43)   //possible issue identified - semgrep
  if (*(int *)(param_3 + 0x1e8) == 4) {
    *(undefined1 *)(param_3 + 0x238) = 3;
  }
  else {
    if (*(int *)(param_3 + 0x1e8) != 6) {
      if (RTDebugLevel == 0) {
        return;
      }
      printk("%s : fails (wcid-%d)\n","WPAInstallPairwiseKey",*(undefined2 *)(param_3 + 0x27e));
      return;
    }
    *(undefined1 *)(param_3 + 0x238) = 4;
  }
  *(undefined1 *)(param_3 + 0x239) = 0x10;
  memmove((void *)(param_3 + 0x1f8),(void *)(param_3 + 0x19a),0x10)   //possible issue identified - semgrep
  if (*(char *)(param_3 + 0x238) == '\x03') {
    __src = (void *)(param_3 + 0x1aa);
    if (param_4 == '\0') {
      memmove((void *)(param_3 + 0x208),(void *)(param_3 + 0x1b2),8)   //possible issue identified - semgrep
    }
    else {
      memmove((void *)(param_3 + 0x208),__src,8)   //possible issue identified - semgrep
      __src = (void *)(param_3 + 0x1b2);
    }
    memmove((void *)(param_3 + 0x210),__src,8)   //possible issue identified - semgrep
    uVar1 = *(undefined1 *)(param_3 + 0x27e);
  }
  else {
    uVar1 = *(undefined1 *)(param_3 + 0x27e);
  }
  AsicAddPairwiseKeyEntry(param_1,uVar1,(void *)(param_3 + 0x1f8));
  RTMPSetWcidSecurityInfo
            (param_1,param_2,0,*(undefined1 *)(param_3 + 0x238),*(undefined1 *)(param_3 + 0x27e),1);
  return;
}