function mtaregg_slot_20() /* entry=343 class_id=0x0903 slot=0x20 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    ref, /* [BP+0Ah] type=0x69 */
    dir, /* [BP+0Ch] type=0x62 */
    num, /* [BP+0Eh] type=0x69 */
    me, /* [BP-02h] type=0x24 */
    num, /* [BP-04h] type=0x69 */
    dp, /* [BP-09h] type=0x24 */
    wp; /* [BP-0Eh] type=0x24 */

  entry:
    if (dir == 0) {
      local_07 = -2;
      dp = 0;
    }
    else if (dir == 8) {
      local_07 = 2;
      dp = 0;
    }
    else if (dir == 4) {
      local_07 = 0;
      dp = 2;
    }
    else if (dir == 12) {
      local_07 = 0;
      dp = -2;
    }

  block_02AF:
    suspend;
    if (num != 0) goto block_02D0;

  block_02CA:
    goto block_033C;

  block_02D0:
    num = (num - 1);
    wp = Item.getX(me);
    local_0C = Item.getY(me);
    local_0A = Item.getZ(me);
    wp = (wp + dp);
    local_0C = (local_0C + local_07);
    if (legalMoveToPoint(0, 1, wp, me) != 0) goto block_0339;

  block_0333:
    goto block_033C;

  block_0339:
    goto block_02AF;

  block_033C:
    return;

}
