function door2_slot_46() /* entry=377 class_id=0x0A07 slot=0x46 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    counter, /* [BP-02h] type=0x69 */
    newFrame, /* [BP-04h] type=0x69 */
    item; /* [BP-06h] type=0x24 */

  entry:
    set_info(0x0207, *(arg_06));
    if (!Item.getFrame(arg_06)) goto block_3EC5;

  block_3EBB:
    newFrame = 11;
    goto block_3ECC;

  block_3EC5:
    newFrame = 26;

  block_3ECC:
    class_0A0C_slot_2D(Item.getZ(arg_06), Item.legal_create(arg_06), Intrinsic0013(arg_06), newFrame, 0x046A, *(arg_06));
    if (!retval) goto block_3F0C;

  block_3F02:
    /* word_to_dword  */
    /* pop_result  */
    goto block_3F75;

  block_3F0C:
    counter = 0;

  block_3F20:
    if (counter <= 11) goto block_3F6B;

  block_3F28:
    spawn class_0A0C_slot_32(pid, 5, 0x00000000);
    suspend;
    counter = (1 + counter);
    goto block_3F20;

  block_3F6B:
    /* word_to_dword  */
    /* pop_result  */
    goto block_3F75;

  block_3F75:
    return;

}
