.include "asm/macros.inc" .include "constants/constants.inc" .syntax unified .text thumb_func_start sub_8153688 sub_8153688: @ 8153688 push {r4,lr} lsls r0, 24 lsrs r2, r0, 24 lsls r0, r2, 2 adds r0, r2 lsls r0, 3 ldr r1, =gTasks + 0x8 adds r4, r0, r1 movs r1, 0 ldrsh r0, [r4, r1] cmp r0, 0xB bls _081536A2 b _081537C2 _081536A2: lsls r0, 2 ldr r1, =_081536B4 adds r0, r1 ldr r0, [r0] mov pc, r0 .pool .align 2, 0 _081536B4: .4byte _081536E4 .4byte _081536F4 .4byte _081536FE .4byte _0815371A .4byte _0815372C .4byte _08153742 .4byte _08153758 .4byte _08153762 .4byte _08153778 .4byte _0815378C .4byte _08153796 .4byte _081537A8 _081536E4: ldr r0, =gSoftResetDisabled movs r1, 0x1 strb r1, [r0] movs r0, 0x1 strh r0, [r4] b _081537C2 .pool _081536F4: bl sub_800ADF8 movs r0, 0x2 strh r0, [r4] b _081537C2 _081536FE: bl sub_800A520 lsls r0, 24 cmp r0, 0 beq _081537C2 movs r1, 0x4 ldrsh r0, [r4, r1] cmp r0, 0 bne _08153714 bl save_serialize_map _08153714: movs r0, 0x3 strh r0, [r4] b _081537C2 _0815371A: movs r1, 0x4 ldrsh r0, [r4, r1] cmp r0, 0 bne _08153726 bl sub_8076D5C _08153726: bl sub_8153380 b _08153752 _0815372C: ldrh r0, [r4, 0x2] adds r0, 0x1 strh r0, [r4, 0x2] lsls r0, 16 asrs r1, r0, 16 cmp r1, 0x5 bne _081537C2 movs r0, 0 strh r0, [r4, 0x2] strh r1, [r4] b _081537C2 _08153742: bl sub_81533AC lsls r0, 24 cmp r0, 0 beq _08153752 movs r0, 0x6 strh r0, [r4] b _081537C2 _08153752: movs r0, 0x4 strh r0, [r4] b _081537C2 _08153758: bl sub_81533E0 movs r0, 0x7 strh r0, [r4] b _081537C2 _08153762: movs r1, 0x4 ldrsh r0, [r4, r1] cmp r0, 0 bne _0815376E bl sav2_gender2_inplace_and_xFE _0815376E: bl sub_800ADF8 movs r0, 0x8 strh r0, [r4] b _081537C2 _08153778: bl sub_800A520 lsls r0, 24 cmp r0, 0 beq _081537C2 bl sub_8153408 movs r0, 0x9 strh r0, [r4] b _081537C2 _0815378C: bl sub_800ADF8 movs r0, 0xA strh r0, [r4] b _081537C2 _08153796: bl sub_800A520 lsls r0, 24 cmp r0, 0 beq _081537C2 ldrh r0, [r4] adds r0, 0x1 strh r0, [r4] b _081537C2 _081537A8: ldrh r0, [r4, 0x2] adds r0, 0x1 strh r0, [r4, 0x2] lsls r0, 16 asrs r0, 16 cmp r0, 0x5 ble _081537C2 ldr r1, =gSoftResetDisabled movs r0, 0 strb r0, [r1] adds r0, r2, 0 bl DestroyTask _081537C2: pop {r4} pop {r0} bx r0 .pool thumb_func_end sub_8153688 .align 2, 0 @ Don't pad with nop.