void FUN_0041f92c(int param_1,uint param_2)

{
  uint uVar1;
  char *pcVar2;
  uint uVar3;
  code *pcVar4;
  
  uVar3 = param_2 + 0x11 & 3;
  uVar1 = param_2 + 0xe & 3;
  uVar3 = (*(int *)((param_2 + 0x11) - uVar3) << (3 - uVar3) * 8 |
          param_2 & 0xffffffffU >> (uVar3 + 1) * 8) & -1 << (4 - uVar1) * 8 |
          *(uint *)((param_2 + 0xe) - uVar1) >> uVar1 * 8;
  if (uVar3 < 2) {
    FUN_0041f7d4(param_1,uVar3 != 0,*(undefined4 *)(param_2 + 0x12),*(undefined4 *)(param_2 + 0x16))
    ;
    if (*(int *)(param_2 + 0xe) == 0) {
      FUN_004804f0("WPS: registration procotol did not successfully complete");
      FUN_0041d498(param_1,2);
    }
    else {
      FUN_004804f0("WPS: registration protocol successfully completed!");
      FUN_0041d498(param_1,4);
      FUN_00424988(*(undefined4 *)(param_1 + 0x28));
    }
    if (*(char *)(param_1 + 9) != '\0') {
      if (*(char *)(*(int *)(param_1 + 0x20) + 0x231) == '\0') {
        pcVar4 = FUN_004804f0;
        pcVar2 = "No command availale to restart AP !";
      }
      else {
        FUN_00480710("Restart AP with command [%s].\n",*(int *)(param_1 + 0x20) + 0x231);
        pcVar2 = (char *)(*(int *)(param_1 + 0x20) + 0x231);
        if (*(char *)(*(int *)(param_1 + 0x20) + 0x231) == '\0') {
          pcVar2 = (char *)0x0;
        }
        pcVar4 = FUN_00485eb0;
      }
      (*pcVar4)(pcVar2);
    }
    *(undefined1 *)(param_1 + 9) = 0;
  }
  else if (uVar3 == 2) {
    FUN_0041d498(param_1,0);
  }
  else if (uVar3 == 3) {
    FUN_004804f0("WPS: Need Enrollee\'s password !!");
    return;
  }
  FUN_00401c98();
  return;
}