function landmine_use() /* entry=206 class_id=0x039A slot=0x01 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    InCrouch, /* [BP-01h] type=0x62 */
    landMine, /* [BP-03h] type=0x24 */
    item, /* [BP-05h] type=0x24 */
    xOff, /* [BP-07h] type=0x69 */
    yOff, /* [BP-09h] type=0x69 */
    mine, /* [BP-0Bh] type=0x24 */
    wp; /* [BP-10h] type=0x24 */

  entry:
    set_info(0x0207, *(arg_06));
    process_exclude();
    landMine = *(arg_06);
    /* global_address global_id=0x3C */
    if (Item.getType() != 40) goto block_013E;

  block_010A:
    goto block_0502;

  block_013E:
    set_info(0x00F0, 0);

  block_0152:
    /* global_address global_id=0x3C */
    if Intrinsic0033() goto block_0188;

  block_0162:
    spawn class_0A0C_slot_32(pid, 2, 0x00000000);
    suspend;
    goto block_0152;

  block_0188:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 0) goto block_01A6;

  block_0198:
    xOff = -1;
    yOff = -3;
    goto block_0368;

  block_01A6:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 1) goto block_01C4;

  block_01B6:
    xOff = 0;
    yOff = -3;
    goto block_0368;

  block_01C4:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 2) goto block_01E2;

  block_01D4:
    xOff = 2;
    yOff = -3;
    goto block_0368;

  block_01E2:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 3) goto block_0200;

  block_01F2:
    xOff = 2;
    yOff = -2;
    goto block_0368;

  block_0200:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 4) goto block_021E;

  block_0210:
    xOff = 2;
    yOff = -1;
    goto block_0368;

  block_021E:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 5) goto block_023C;

  block_022E:
    xOff = 2;
    yOff = 0;
    goto block_0368;

  block_023C:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 6) goto block_025A;

  block_024C:
    xOff = 2;
    yOff = 2;
    goto block_0368;

  block_025A:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 7) goto block_0278;

  block_026A:
    xOff = 0;
    yOff = 2;
    goto block_0368;

  block_0278:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 8) goto block_0296;

  block_0288:
    xOff = -1;
    yOff = 2;
    goto block_0368;

  block_0296:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 9) goto block_02B4;

  block_02A6:
    xOff = -2;
    yOff = 2;
    goto block_0368;

  block_02B4:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 10) goto block_02D2;

  block_02C4:
    xOff = -3;
    yOff = 2;
    goto block_0368;

  block_02D2:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 11) goto block_02F0;

  block_02E2:
    xOff = -3;
    yOff = 1;
    goto block_0368;

  block_02F0:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 12) goto block_030E;

  block_0300:
    xOff = -3;
    yOff = 0;
    goto block_0368;

  block_030E:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 13) goto block_032C;

  block_031E:
    xOff = -3;
    yOff = -1;
    goto block_0368;

  block_032C:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 14) goto block_034A;

  block_033C:
    xOff = -3;
    yOff = -2;
    goto block_0368;

  block_034A:
    /* global_address global_id=0x3C */
    if (Intrinsic00FA() != 15) goto block_0368;

  block_035A:
    xOff = -3;
    yOff = -3;
    goto block_0368;

  block_0368:
    /* global_address global_id=0x3C */
    if Intrinsic0035() goto block_0382;

  block_0378:
    InCrouch = 1;
    goto block_03B9;

  block_0382:
    InCrouch = 0;
    /* global_address global_id=0x3C */
    /* global_address global_id=0x3C */
    suspend;

  block_03B9:
    /* global_address global_id=0x3C */
    wp = (Intrinsic0013() + (xOff * 16));
    /* global_address global_id=0x3C */
    local_0E = (Item.legal_create() + (yOff * 16));
    /* global_address global_id=0x3C */
    local_0C = Item.getZ();
    if Item.getSurfaceWeight(wp, 0, 0x039A, mine) goto block_0416;

  block_0408:
    goto block_048E;

  block_0416:
    if (!InCrouch) goto block_047D;

  block_044D:
    /* global_address global_id=0x3C */
    /* global_address global_id=0x3C */
    suspend;

  block_047D:
    goto block_0502;

  block_048E:
    if (!InCrouch) goto block_04C7;

  block_0497:
    /* global_address global_id=0x3C */
    /* global_address global_id=0x3C */
    suspend;

  block_04C7:
    /* global_address global_id=0x3C */
    /* global_address global_id=0x3C */
    suspend;

  block_0502:
    return;

}
