function miss6_slot_20() /* entry=358 class_id=0x0912 slot=0x20 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    snell, /* [BP-02h] type=0x24 */
    n, /* [BP-04h] type=0x24 */
    item, /* [BP-06h] type=0x24 */
    door, /* [BP-08h] type=0x24 */
    doorX; /* [BP-0Ah] type=0x69 */

  set_info(0x0001, *(arg_06));
  /* global_address global_id=0x3C */
  while (!Actor.isBusy()) {
    spawn class_0A0C_slot_32(pid, 2, 0x00000000);
    suspend;
  }
  /* loopscr value_u8=0x24 */
  /* loopscr value_u8=0x3D */
  /* loopscr value_u8=0x40 */
  /* loopscr value_u8=0x25 */
  /* loop current_var=0xFC string_bytes=0x6 loop_type=0x2 */
  while (!condition) {
    /* loopnext  */
  }
  if (!snell) {
    suspend;
    door = 0;
    /* loopscr value_u8=0x24 */
    /* loopscr value_u8=0x3D */
    /* loopscr value_u8=0x40 */
    /* loopscr value_u8=0x25 */
    /* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
    while (!condition) {
      if (Item.getQLo(item) == 19) {
        door = item;
        spawn class_0A06_slot_20(pid, door);
        suspend;
        doorX = Item.getX(door);
      }
      /* loopnext  */
    }
    if (door) {
      /* loopscr value_u8=0x24 */
      /* loopscr value_u8=0x3D */
      /* loopscr value_u8=0x40 */
      /* loopscr value_u8=0x25 */
      /* loop current_var=0xFA string_bytes=0x6 loop_type=0x2 */
      while (!condition) {
        door = item;
        spawn class_0A06_slot_20(pid, door);
        suspend;
        doorX = Item.getX(door);
        /* loopnext  */
      }
    }
    /* global_address global_id=0x3C */
    if (Item.getX() <= doorX) {
      /* global_address global_id=0x3C */
      spawn class_0A11_slot_22(pid, 1, 12);
      suspend;
    }
    else {
      /* global_address global_id=0x3C */
      if (Item.getX() >= (doorX - 64)) {
        /* global_address global_id=0x3C */
        spawn class_0A11_slot_22(pid, 1, 4);
        suspend;
      }
    }
    /* global_address global_id=0x3C */
    spawn class_0A11_slot_22(pid, 4, 0);
    suspend;
    /* global_address global_id=0x3C */
    spawn class_0A11_slot_22(pid, 2, 14);
    suspend;
    /* global_address global_id=0x3C */
    /* global_address global_id=0x3C */
    spawn class_0A11_slot_22(pid, 2, 4, snell);
    suspend;
    spawn class_0A11_slot_22(pid, 1, 6, snell);
    suspend;
    suspend;
    suspend;
    spawn class_0A0C_slot_32(pid, 60, 0x00000000);
    suspend;
    /* global_address global_id=0x3C */
    suspend;
    /* str_to_ptr  */
    /* free_stack_string value_u8=0x4 target=[SP+04h] */
    suspend;
    /* str_to_ptr  */
    /* free_stack_string value_u8=0x4 target=[SP+04h] */
    suspend;
    /* str_to_ptr  */
    /* free_stack_string value_u8=0x4 target=[SP+04h] */
    suspend;
    spawn class_0A0C_slot_32(pid, 60, 0x00000000);
    suspend;
    spawn class_0A11_slot_22(pid, 1, 4, snell);
    suspend;
    spawn class_0A11_slot_22(pid, 1, 2, snell);
    suspend;
    spawn class_0A11_slot_22(pid, 1, 4, snell);
    suspend;
    suspend;
    spawn class_0A0C_slot_32(pid, 60, 0x00000000);
    suspend;
    spawn class_0A11_slot_24(pid, snell);
    suspend;
    /* global_address global_id=0x3C */
    suspend;
    /* pop_global global_id=0x25 size=0x1 */
  }
  return;
}
