function rollb_ns_slot_20() /* entry=330 class_id=0x0586 slot=0x20 */
{
  var
    referent, /* [BP+00h] type=0x69 */
    item, /* [BP-02h] type=0x24 */
    item2, /* [BP-04h] type=0x24 */
    riderList, /* [BP-06h] type=0x6C */
    r1, /* [BP-08h] type=0x69 */
    r2, /* [BP-0Ah] type=0x69 */
    h, /* [BP-0Ch] type=0x69 */
    x, /* [BP-0Eh] type=0x69 */
    y, /* [BP-10h] type=0x69 */
    z, /* [BP-11h] type=0x62 */
    qLo; /* [BP-13h] type=0x69 */

  entry:
    set_info(1, *(arg_06));
    spawn class_0A0C_slot_32(pid, 2, 0x00000000);
    suspend;
    h = Item.getNpcNum(arg_06);
    if (h & 32) goto block_025C;

  block_0233:
    /* loopscr value_u8=0x24 */
    /* loop current_var=0xFC string_bytes=0x1 loop_type=0x6 */

  block_0243:
    if condition goto block_025A;

  block_0246:
    /* create_list element_size=0x2 count=0x1 */
    /* append_list  */
    /* free_local_list bp_offset=0xFA target=[BP-06h] */
    riderList = item2;
    /* loopnext  */
    goto block_0243;

  block_025A:

  block_025C:
    if (h & 64) goto block_0291;

  block_0267:
    /* bit_not  */
    item2 = *(arg_06);
    goto block_0375;

  block_0291:
    class_0A0C_slot_20(5);
    r1 = retval;

  block_02A0:
    if 1 goto block_02CB;

  block_02A8:
    class_0A0C_slot_20(5);
    r2 = retval;
    if (r2 != r1) goto block_02C8;

  block_02C2:
    goto block_02CB;

  block_02C8:
    goto block_02A0;

  block_02CB:
    x = Intrinsic0013(arg_06);
    y = Item.legal_create(arg_06);
    z = Item.getZ(arg_06);
    qLo = Item.getNpcNum(arg_06);
    spawn class_0A1E_slot_2A(pid, arg_06);
    suspend;

  block_0375:
    /* free_local_list bp_offset=0xFA target=[BP-06h] */
    return;

}
