undefined4 FUN_0040cdb0(undefined4 param_1,undefined4 param_2)

{
  int iVar1;
  int iVar2;
  int iVar3;
  undefined4 uVar4;
  void *local_820;
  char local_81c [2052];
  
  local_820 = (void *)0x0;
  memset(local_81c,0,0x800)   //possible issue identified - semgrep
  iVar1 = FUN_0040c654(5,"upnp:gdi");
  if (iVar1 != 0) {
    local_81c[0] = '\v';
    iVar2 = usock_send(iVar1,local_81c,1,0x4000);
    if ((((0 < iVar2) && (iVar2 = usock_recv_timed(iVar1,local_81c,0x800,0,0x1e), 0 < iVar2)) &&
        (iVar3 = strcasecmp(local_81c,"busy"), iVar3 != 0)) &&
       (iVar2 = base64encode(local_81c,iVar2,&local_820), iVar2 != 0)) {
      uVar4 = 0;
      FUN_0040c1f0(200,param_1,param_2,"NewDeviceInfo",local_820);
      goto LAB_0040cef8;
    }
  }
  FUN_0040c1f0(0x192,0,0,0,0);
  uVar4 = 0xffffffff;
LAB_0040cef8:
  if (local_820 != (void *)0x0) {
    free(local_820);
  }
  if (iVar1 != 0) {
    usock_close(iVar1);
  }
  return uVar4;
}