int FUN_0040c654(undefined4 param_1,char *param_2)

{
  int iVar1;
  size_t sVar2;
  int iVar3;
  
  if (param_2 == (char *)0x0) {
LAB_0040c734:
    iVar3 = 0;
    do {
      iVar1 = usock_open(0,"/var/run/wps_inbupnpdev_usocket")   //possible issue identified - semgrep
      iVar3 = iVar3 + 1;
      if (iVar1 != 0) {
        return iVar1;
      }
      sleep(1);
    } while (iVar3 != 10);
  }
  else {
    lxmldbc_system("/etc/scripts/wps.sh %s > /dev/console")   //possible issue identified - semgrep
    iVar3 = 0;
    do {
      iVar1 = usock_open(0,"/var/run/wps_mc_usock")   //possible issue identified - semgrep
      iVar3 = iVar3 + 1;
      if (iVar1 != 0) {
        sVar2 = strlen(param_2);
        usock_send(iVar1,param_2,sVar2 + 1,0);
        usock_close(iVar1);
        goto LAB_0040c734;
      }
      sleep(1);
    } while (iVar3 != 5);
  }
  return 0;
}