function box_ns_use() /* entry=16 class_id=0x0081 slot=0x01 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    counter; /* [BP-02h] type=0x69 */

  set_info(0x0207, *(arg_06));
  process_exclude();
  if (!Item.getFrame(arg_06)) {
    while (!AudioProcess.isSFXPlayingForObject(0x00A7, arg_06)) {
      spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
      suspend;
    }
    counter = 0;
    while (counter > 5) {
      spawn FREE.waitNTimerTicks(pid, 5, 0x00000000);
      suspend;
      counter = (1 + counter);
    }
  }
  else {
    while (!AudioProcess.isSFXPlayingForObject(0x00A5, arg_06)) {
      spawn FREE.waitNTimerTicks(pid, 2, 0x00000000);
      suspend;
    }
    counter = 0;
    while (counter > 5) {
      spawn FREE.waitNTimerTicks(pid, 5, 0x00000000);
      suspend;
      counter = (1 + counter);
    }
  }
  if (Item.getMapArray(arg_06) == 0) {
    if (Item.getFrame(arg_06) == 0) {
      spawn TRIGGER.slot_20(pid, 1, *(arg_06), arg_06);
      suspend;
    }
    else {
      spawn TRIGGER.slot_20(pid, 0, *(arg_06), arg_06);
      suspend;
    }
    return;
  }
  return;
}
