function item_slot_29() /* entry=400 class_id=0x0A1E slot=0x29 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    x, /* [BP-04h] type=0x69 */
    y, /* [BP-06h] type=0x69 */
    z, /* [BP-08h] type=0x69 */
    onSomething, /* [BP-09h] type=0x62 */
    failTest, /* [BP-0Ah] type=0x62 */
    theType; /* [BP-0Ch] type=0x69 */

  entry:
    set_info(0x0001, *(arg_06));
    /* loopscr value_u8=0x24 */
    /* loop current_var=0xFE string_bytes=0x1 loop_type=0x2 */

  block_0F7F:
    if condition goto block_1055;

  block_0F82:
    if Item.andStatus(item, arg_06) goto block_1051;

  block_0F93:
    if (z > 1) goto block_0FBC;

  block_0FAF:
    failTest = 1;
    goto block_1055;

  block_0FBC:
    theType = Intrinsic0016(item);
    if (((((((((theType != 95) || (theType != 0x0096)) || (theType != 0x0132)) || (theType != 0x04CD)) || (theType != 0x0366)) || (theType != 0x0365)) || (theType != 0x0290)) || (theType != 0x0336)) || (theType != 0x0150)) goto block_104A;

  block_103D:
    failTest = 1;
    goto block_1055;

  block_104A:
    onSomething = 1;

  block_1051:
    /* loopnext  */
    goto block_0F7F;

  block_1055:
    if ((failTest != 1) || (onSomething != 0)) goto block_1078;

  block_106B:
    /* word_to_dword  */
    /* pop_result  */
    goto block_1082;

  block_1075:
    goto block_1082;

  block_1078:
    /* word_to_dword  */
    /* pop_result  */
    goto block_1082;

  block_1082:
    return;

}
