.include "asm/macros.inc" .include "constants/constants.inc" .syntax unified .text thumb_func_start sub_8110840 sub_8110840: @ 8110840 push {lr} ldr r1, _08110888 @ =gSaveBlock1Ptr ldr r1, [r1] subs r1, r0 ldr r2, _0811088C @ =gUnknown_203AE04 ldr r0, [r2] cmp r0, 0 beq _08110854 adds r0, r1 str r0, [r2] _08110854: ldr r0, _08110890 @ =gUnknown_203ADFA ldrb r2, [r0] cmp r2, 0 beq _08110882 ldr r3, _08110894 @ =gUnknown_203AE08 ldr r0, [r3] cmp r0, 0 beq _08110868 adds r0, r1 str r0, [r3] _08110868: cmp r2, 0x2 bne _08110882 ldr r2, _08110898 @ =gUnknown_203AE0C movs r3, 0x1F _08110870: ldr r0, [r2] cmp r0, 0 beq _0811087A adds r0, r1 str r0, [r2] _0811087A: adds r2, 0x4 subs r3, 0x1 cmp r3, 0 bge _08110870 _08110882: pop {r0} bx r0 .align 2, 0 _08110888: .4byte gSaveBlock1Ptr _0811088C: .4byte gUnknown_203AE04 _08110890: .4byte gUnknown_203ADFA _08110894: .4byte gUnknown_203AE08 _08110898: .4byte gUnknown_203AE0C thumb_func_end sub_8110840 thumb_func_start sub_811089C sub_811089C: @ 811089C push {lr} ldr r0, _081108D8 @ =gSaveBlock1Ptr ldr r0, [r0] movs r1, 0x98 lsls r1, 5 adds r0, r1 movs r2, 0xCD lsls r2, 5 movs r1, 0 bl memset ldr r0, _081108DC @ =gUnknown_203ADF8 movs r1, 0 strb r1, [r0] ldr r0, _081108E0 @ =gUnknown_203ADFA strb r1, [r0] ldr r0, _081108E4 @ =gUnknown_203AE8C movs r1, 0 str r1, [r0] ldr r0, _081108E8 @ =gUnknown_203AE08 str r1, [r0] ldr r0, _081108EC @ =gUnknown_203AE04 str r1, [r0] bl sub_8113BD8 bl sub_81138F8 pop {r0} bx r0 .align 2, 0 _081108D8: .4byte gSaveBlock1Ptr _081108DC: .4byte gUnknown_203ADF8 _081108E0: .4byte gUnknown_203ADFA _081108E4: .4byte gUnknown_203AE8C _081108E8: .4byte gUnknown_203AE08 _081108EC: .4byte gUnknown_203AE04 thumb_func_end sub_811089C thumb_func_start sub_81108F0 sub_81108F0: @ 81108F0 push {lr} lsls r0, 24 lsrs r0, 24 ldr r1, _08110918 @ =gSaveBlock1Ptr ldr r1, [r1] movs r2, 0xCD lsls r2, 3 muls r0, r2 adds r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 movs r1, 0 bl memset ldr r1, _0811091C @ =gUnknown_203AE04 movs r0, 0 str r0, [r1] pop {r0} bx r0 .align 2, 0 _08110918: .4byte gSaveBlock1Ptr _0811091C: .4byte gUnknown_203AE04 thumb_func_end sub_81108F0 thumb_func_start sub_8110920 sub_8110920: @ 8110920 ldr r1, _08110928 @ =gUnknown_203AE04 movs r0, 0 str r0, [r1] bx lr .align 2, 0 _08110928: .4byte gUnknown_203AE04 thumb_func_end sub_8110920 thumb_func_start sub_811092C sub_811092C: @ 811092C push {lr} ldr r0, _08110940 @ =gUnknown_203AE8C ldr r0, [r0] cmp r0, 0 beq _0811093A bl _call_via_r0 _0811093A: pop {r0} bx r0 .align 2, 0 _08110940: .4byte gUnknown_203AE8C thumb_func_end sub_811092C thumb_func_start sub_8110944 sub_8110944: @ 8110944 push {r4,r5,lr} adds r5, r0, 0 ldr r4, _08110978 @ =gSaveBlock1Ptr ldr r0, _0811097C @ =gUnknown_203ADF8 ldrb r0, [r0] movs r3, 0xCD lsls r3, 3 adds r2, r0, 0 muls r2, r3 movs r0, 0x98 lsls r0, 5 adds r2, r0 ldr r0, [r4] adds r0, r2 movs r4, 0xAD lsls r4, 3 adds r2, r0, r4 adds r0, r3 subs r0, r1 cmp r5, r2 bcc _08110972 cmp r5, r0 bls _08110980 _08110972: movs r0, 0 b _08110982 .align 2, 0 _08110978: .4byte gSaveBlock1Ptr _0811097C: .4byte gUnknown_203ADF8 _08110980: movs r0, 0x1 _08110982: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8110944 thumb_func_start sub_8110988 sub_8110988: @ 8110988 push {r4,r5,lr} adds r5, r0, 0 ldr r4, _081109BC @ =gSaveBlock1Ptr ldr r0, _081109C0 @ =gUnknown_203ADF8 ldrb r0, [r0] movs r3, 0xCD lsls r3, 3 adds r2, r0, 0 muls r2, r3 movs r0, 0x98 lsls r0, 5 adds r2, r0 ldr r0, [r4] adds r0, r2 movs r4, 0xAD lsls r4, 3 adds r2, r0, r4 adds r0, r3 subs r0, r1 cmp r5, r2 bcc _081109B6 cmp r5, r0 bls _081109C4 _081109B6: movs r0, 0 b _081109C6 .align 2, 0 _081109BC: .4byte gSaveBlock1Ptr _081109C0: .4byte gUnknown_203ADF8 _081109C4: movs r0, 0x1 _081109C6: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8110988 thumb_func_start sub_81109CC sub_81109CC: @ 81109CC push {lr} lsls r0, 24 lsrs r0, 24 ldr r1, _081109E0 @ =gUnknown_203ADFA strb r0, [r1] cmp r0, 0x1 bne _081109EC ldr r1, _081109E4 @ =gUnknown_203AE8C ldr r0, _081109E8 @ =sub_8110A00 b _081109F0 .align 2, 0 _081109E0: .4byte gUnknown_203ADFA _081109E4: .4byte gUnknown_203AE8C _081109E8: .4byte sub_8110A00 _081109EC: ldr r1, _081109F8 @ =gUnknown_203AE8C ldr r0, _081109FC @ =sub_8110A3C _081109F0: str r0, [r1] pop {r0} bx r0 .align 2, 0 _081109F8: .4byte gUnknown_203AE8C _081109FC: .4byte sub_8110A3C thumb_func_end sub_81109CC thumb_func_start sub_8110A00 sub_8110A00: @ 8110A00 push {r4,lr} ldr r0, _08110A2C @ =gUnknown_203AE98 bl sub_8110E68 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08110A24 ldr r0, _08110A30 @ =gUnknown_3005E88 movs r4, 0 strb r4, [r0] bl sub_8110E3C ldr r0, _08110A34 @ =gUnknown_203ADFA strb r4, [r0] ldr r1, _08110A38 @ =gUnknown_203AE8C movs r0, 0 str r0, [r1] _08110A24: pop {r4} pop {r0} bx r0 .align 2, 0 _08110A2C: .4byte gUnknown_203AE98 _08110A30: .4byte gUnknown_3005E88 _08110A34: .4byte gUnknown_203ADFA _08110A38: .4byte gUnknown_203AE8C thumb_func_end sub_8110A00 thumb_func_start sub_8110A3C sub_8110A3C: @ 8110A3C push {r4,lr} ldr r1, _08110A8C @ =gUnknown_203AE94 ldrb r2, [r1] movs r4, 0xF adds r0, r4, 0 ands r0, r2 adds r3, r1, 0 cmp r0, 0x2 bne _08110A56 movs r0, 0x10 negs r0, r0 ands r0, r2 strb r0, [r3] _08110A56: ldrb r1, [r3] movs r0, 0xC0 ands r0, r1 cmp r0, 0 bne _08110AAE ldr r0, _08110A90 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0 bne _08110A84 adds r0, r4, 0 ands r0, r1 cmp r0, 0x1 beq _08110A84 ldrb r0, [r3, 0x1] cmp r0, 0x1F bhi _08110A98 ldr r0, _08110A94 @ =gUnknown_203AE0C ldrb r1, [r3, 0x1] lsls r1, 2 adds r1, r0 ldr r0, [r1] cmp r0, 0 beq _08110A98 _08110A84: bl sub_8111AD8 b _08110AAE .align 2, 0 _08110A8C: .4byte gUnknown_203AE94 _08110A90: .4byte gUnknown_3005E88 _08110A94: .4byte gUnknown_203AE0C _08110A98: ldrb r0, [r3] movs r1, 0x3F ands r1, r0 movs r0, 0x80 orrs r1, r0 strb r1, [r3] bl ScriptContext2_Enable movs r0, 0 bl sub_81118F4 _08110AAE: pop {r4} pop {r0} bx r0 thumb_func_end sub_8110A3C thumb_func_start sub_8110AB4 sub_8110AB4: @ 8110AB4 ldr r0, _08110AC0 @ =gUnknown_20370D0 ldr r1, _08110AC4 @ =gUnknown_203ADFA ldrb r1, [r1] strh r1, [r0] bx lr .align 2, 0 _08110AC0: .4byte gUnknown_20370D0 _08110AC4: .4byte gUnknown_203ADFA thumb_func_end sub_8110AB4 thumb_func_start sub_8110AC8 sub_8110AC8: @ 8110AC8 ldr r0, _08110AE4 @ =gSaveBlock1Ptr ldr r1, [r0] ldr r0, _08110AE8 @ =gUnknown_203ADF8 ldrb r2, [r0] movs r0, 0xCD lsls r0, 3 muls r0, r2 adds r1, r0 movs r0, 0x98 lsls r0, 5 adds r1, r0 ldrb r0, [r1] bx lr .align 2, 0 _08110AE4: .4byte gSaveBlock1Ptr _08110AE8: .4byte gUnknown_203ADF8 thumb_func_end sub_8110AC8 thumb_func_start sub_8110AEC sub_8110AEC: @ 8110AEC push {r4-r7,lr} lsls r0, 16 lsrs r6, r0, 16 ldr r4, _08110B44 @ =gUnknown_203ADF8 ldrb r0, [r4] cmp r0, 0x3 bls _08110AFE movs r0, 0 strb r0, [r4] _08110AFE: ldrb r0, [r4] bl sub_81108F0 bl sub_8113B88 ldr r2, _08110B48 @ =gUnknown_203AE08 ldr r1, _08110B4C @ =gSaveBlock1Ptr ldrb r0, [r4] movs r3, 0xCD lsls r3, 3 muls r0, r3 movs r5, 0x98 lsls r5, 5 adds r0, r5 ldr r1, [r1] adds r0, r1, r0 movs r7, 0xAD lsls r7, 3 adds r0, r7 str r0, [r2] adds r0, r6, 0 subs r0, 0xC lsls r0, 16 lsrs r0, 16 cmp r0, 0x7 bls _08110B36 cmp r6, 0x23 bne _08110B50 _08110B36: ldrb r0, [r4] muls r0, r3 adds r0, r1, r0 adds r0, r5 movs r1, 0x2 b _08110B5A .align 2, 0 _08110B44: .4byte gUnknown_203ADF8 _08110B48: .4byte gUnknown_203AE08 _08110B4C: .4byte gSaveBlock1Ptr _08110B50: ldrb r0, [r4] muls r0, r3 adds r0, r1, r0 adds r0, r5 movs r1, 0x1 _08110B5A: strb r1, [r0] bl sub_81115E8 ldr r4, _08110BA4 @ =gUnknown_203ADF8 ldrb r0, [r4] bl sub_8110BB0 ldrb r0, [r4] bl sub_8110BE8 bl sub_8110D94 bl sub_8110E20 ldrb r0, [r4] bl sub_8110D48 ldr r1, _08110BA8 @ =gUnknown_203ADFC movs r0, 0 strh r0, [r1] ldr r4, _08110BAC @ =gUnknown_203AE98 movs r2, 0x80 lsls r2, 1 movs r0, 0x2 adds r1, r4, 0 bl sub_8112940 adds r0, r4, 0 bl sub_8110E68 movs r0, 0x1 bl sub_81109CC pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08110BA4: .4byte gUnknown_203ADF8 _08110BA8: .4byte gUnknown_203ADFC _08110BAC: .4byte gUnknown_203AE98 thumb_func_end sub_8110AEC thumb_func_start sub_8110BB0 sub_8110BB0: @ 8110BB0 lsls r0, 24 lsrs r0, 24 ldr r2, _08110BE4 @ =gSaveBlock1Ptr movs r1, 0xCD lsls r1, 3 muls r1, r0 movs r0, 0x98 lsls r0, 5 adds r1, r0 ldr r0, [r2] adds r1, r0, r1 ldrb r0, [r0, 0x4] strb r0, [r1, 0x1] ldr r0, [r2] ldrb r0, [r0, 0x5] strb r0, [r1, 0x2] ldr r0, [r2] ldrb r0, [r0, 0x6] strb r0, [r1, 0x3] ldr r2, [r2] ldrh r0, [r2] strh r0, [r1, 0x4] ldrh r0, [r2, 0x2] strh r0, [r1, 0x6] bx lr .align 2, 0 _08110BE4: .4byte gSaveBlock1Ptr thumb_func_end sub_8110BB0 thumb_func_start sub_8110BE8 sub_8110BE8: @ 8110BE8 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} lsls r0, 24 lsrs r0, 24 ldr r4, _08110C54 @ =gSaveBlock1Ptr movs r1, 0xCD lsls r1, 3 muls r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 ldr r1, [r4] adds r7, r1, r0 adds r0, r7, 0 bl sub_815A008 movs r6, 0 mov r9, r4 movs r2, 0x8D lsls r2, 3 mov r8, r2 ldr r3, _08110C58 @ =0x0000046a mov r10, r3 _08110C1C: mov r4, r9 ldr r1, [r4] lsls r2, r6, 1 adds r0, r2, r6 lsls r0, 3 adds r1, r0 ldr r0, _08110C5C @ =0x000008e4 adds r1, r0 ldrh r4, [r1] movs r3, 0 ldrsh r0, [r1, r3] mov r12, r2 cmp r0, 0 bge _08110C64 lsls r3, r6, 2 adds r2, r7, r3 negs r0, r0 mov r4, r8 adds r1, r2, r4 strb r0, [r1] ldr r0, _08110C60 @ =0x00000469 adds r2, r0 ldrb r0, [r2] movs r1, 0x1 orrs r0, r1 strb r0, [r2] b _08110C7C .align 2, 0 _08110C54: .4byte gSaveBlock1Ptr _08110C58: .4byte 0x0000046a _08110C5C: .4byte 0x000008e4 _08110C60: .4byte 0x00000469 _08110C64: lsls r3, r6, 2 adds r1, r7, r3 mov r2, r8 adds r0, r1, r2 strb r4, [r0] ldr r4, _08110CBC @ =0x00000469 adds r1, r4 ldrb r2, [r1] movs r0, 0x2 negs r0, r0 ands r0, r2 strb r0, [r1] _08110C7C: adds r5, r3, 0 mov r1, r9 ldr r0, [r1] mov r2, r12 adds r1, r2, r6 lsls r1, 3 adds r0, r1 ldr r3, _08110CC0 @ =0x000008e6 adds r1, r0, r3 ldrh r2, [r1] movs r4, 0 ldrsh r0, [r1, r4] cmp r0, 0 bge _08110CC8 adds r3, r7, r5 adds r1, r0, 0 negs r1, r1 lsls r1, 24 mov r2, r8 adds r4, r3, r2 lsrs r1, 15 ldr r0, [r4] ldr r2, _08110CC4 @ =0xfffe01ff ands r0, r2 orrs r0, r1 str r0, [r4] add r3, r10 ldrb r0, [r3] movs r1, 0x2 orrs r0, r1 b _08110CE6 .align 2, 0 _08110CBC: .4byte 0x00000469 _08110CC0: .4byte 0x000008e6 _08110CC4: .4byte 0xfffe01ff _08110CC8: adds r3, r7, r5 lsls r2, 24 mov r0, r8 adds r4, r3, r0 lsrs r2, 15 ldr r0, [r4] ldr r1, _08110D38 @ =0xfffe01ff ands r0, r1 orrs r0, r2 str r0, [r4] add r3, r10 ldrb r1, [r3] movs r0, 0x3 negs r0, r0 ands r0, r1 _08110CE6: strb r0, [r3] adds r5, r7, r5 mov r1, r9 ldr r0, [r1] mov r2, r12 adds r3, r2, r6 lsls r3, 3 adds r0, r3 ldr r4, _08110D3C @ =0x000008e8 adds r0, r4 ldrb r1, [r0] mov r0, r10 adds r4, r5, r0 lsls r1, 2 ldrb r2, [r4] movs r0, 0x3 ands r0, r2 orrs r0, r1 strb r0, [r4] mov r1, r9 ldr r0, [r1] adds r0, r3 ldr r2, _08110D40 @ =0x000008e9 adds r0, r2 ldrb r0, [r0] ldr r3, _08110D44 @ =0x0000046b adds r5, r3 strb r0, [r5] adds r0, r6, 0x1 lsls r0, 16 lsrs r6, r0, 16 cmp r6, 0x3F bhi _08110D2A b _08110C1C _08110D2A: pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08110D38: .4byte 0xfffe01ff _08110D3C: .4byte 0x000008e8 _08110D40: .4byte 0x000008e9 _08110D44: .4byte 0x0000046b thumb_func_end sub_8110BE8 thumb_func_start sub_8110D48 sub_8110D48: @ 8110D48 push {r4,r5,lr} lsls r0, 24 lsrs r0, 24 ldr r4, _08110D90 @ =gSaveBlock1Ptr movs r1, 0xCD lsls r1, 3 muls r1, r0 movs r0, 0x98 lsls r0, 5 adds r1, r0 ldr r0, [r4] adds r5, r0, r1 movs r1, 0xEE lsls r1, 4 adds r0, r1 movs r2, 0xA4 lsls r2, 1 adds r1, r5, r2 movs r2, 0x90 bl CpuSet ldr r0, [r4] movs r1, 0x80 lsls r1, 5 adds r0, r1 movs r2, 0x9A lsls r2, 2 adds r1, r5, r2 movs r2, 0x80 lsls r2, 1 bl CpuSet pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08110D90: .4byte gSaveBlock1Ptr thumb_func_end sub_8110D48 thumb_func_start sub_8110D94 sub_8110D94: @ 8110D94 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} sub sp, 0xC movs r4, 0 ldr r0, _08110E14 @ =gSaveBlock1Ptr mov r10, r0 ldr r1, _08110E18 @ =0x0000063a mov r9, r1 movs r2, 0x1 mov r8, r2 _08110DAE: lsls r1, r4, 1 mov r7, sp adds r2, r7, r1 movs r0, 0 strh r0, [r2] movs r3, 0 adds r6, r1, 0 adds r0, r4, 0x1 str r0, [sp, 0x8] mov r1, r10 ldr r0, [r1] mov r7, r9 adds r5, r0, r7 lsls r1, r4, 4 _08110DCA: adds r0, r1, r3 adds r0, r5, r0 ldrb r0, [r0] cmp r0, 0 beq _08110DDE mov r0, r8 lsls r0, r3 ldrh r7, [r2] adds r0, r7 strh r0, [r2] _08110DDE: adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 cmp r3, 0xF bls _08110DCA ldr r1, _08110E1C @ =0x000040aa adds r0, r4, r1 lsls r0, 16 lsrs r0, 16 mov r2, sp adds r1, r2, r6 ldrh r1, [r1] bl VarSet ldr r7, [sp, 0x8] lsls r0, r7, 16 lsrs r4, r0, 16 cmp r4, 0x3 bls _08110DAE add sp, 0xC pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08110E14: .4byte gSaveBlock1Ptr _08110E18: .4byte 0x0000063a _08110E1C: .4byte 0x000040aa thumb_func_end sub_8110D94 thumb_func_start sub_8110E20 sub_8110E20: @ 8110E20 push {lr} ldr r0, _08110E34 @ =0x000040ae ldr r1, _08110E38 @ =gSaveBlock1Ptr ldr r1, [r1] ldrh r1, [r1, 0x32] bl VarSet pop {r0} bx r0 .align 2, 0 _08110E34: .4byte 0x000040ae _08110E38: .4byte gSaveBlock1Ptr thumb_func_end sub_8110E20 thumb_func_start sub_8110E3C sub_8110E3C: @ 8110E3C push {lr} ldr r0, _08110E60 @ =gUnknown_203AE08 ldr r0, [r0] bl sub_8113BF4 ldr r1, _08110E64 @ =gUnknown_203ADF8 ldrb r0, [r1] adds r0, 0x1 strb r0, [r1] lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 bls _08110E5A movs r0, 0 strb r0, [r1] _08110E5A: pop {r0} bx r0 .align 2, 0 _08110E60: .4byte gUnknown_203AE08 _08110E64: .4byte gUnknown_203ADF8 thumb_func_end sub_8110E3C thumb_func_start sub_8110E68 sub_8110E68: @ 8110E68 push {r4-r7,lr} mov r7, r8 push {r7} adds r7, r0, 0 ldr r0, _08110EA0 @ =gUnknown_203ADFC ldrh r5, [r0] ldr r0, _08110EA4 @ =gUnknown_203AF98 mov r8, r0 ldrh r0, [r0] cmp r5, r0 bcs _08110ECA ldr r6, _08110EA8 @ =gUnknown_203AE08 _08110E80: ldr r4, [r6] cmp r4, 0 beq _08110F02 lsls r0, r5, 3 adds r1, r0, r7 ldrb r2, [r1, 0x6] adds r3, r0, 0 cmp r2, 0x1 bgt _08110EAC cmp r2, 0 blt _08110EAC adds r0, r4, 0 bl sub_8113D48 b _08110EB4 .align 2, 0 _08110EA0: .4byte gUnknown_203ADFC _08110EA4: .4byte gUnknown_203AF98 _08110EA8: .4byte gUnknown_203AE08 _08110EAC: ldr r0, [r6] adds r1, r7, r3 bl sub_8113CC8 _08110EB4: str r0, [r6] ldr r1, [r6] cmp r1, 0 beq _08110EEC adds r0, r5, 0x1 lsls r0, 16 lsrs r5, r0, 16 ldr r0, _08110EE0 @ =gUnknown_203AF98 ldrh r0, [r0] cmp r5, r0 bcc _08110E80 _08110ECA: ldr r0, _08110EE4 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0 beq _08110EF8 ldr r1, _08110EE8 @ =gUnknown_203ADFC mov r2, r8 ldrh r0, [r2] strh r0, [r1] movs r0, 0x1 b _08110F04 .align 2, 0 _08110EE0: .4byte gUnknown_203AF98 _08110EE4: .4byte gUnknown_3005E88 _08110EE8: .4byte gUnknown_203ADFC _08110EEC: ldr r0, _08110EF4 @ =gUnknown_3005E88 strb r1, [r0] b _08110F02 .align 2, 0 _08110EF4: .4byte gUnknown_3005E88 _08110EF8: ldr r4, _08110F10 @ =gUnknown_203AE08 ldr r0, [r4] bl sub_8113BF4 str r0, [r4] _08110F02: movs r0, 0 _08110F04: pop {r3} mov r8, r3 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08110F10: .4byte gUnknown_203AE08 thumb_func_end sub_8110E68 thumb_func_start sub_8110F14 sub_8110F14: @ 8110F14 push {r4-r7,lr} lsls r0, 24 lsrs r4, r0, 24 bl sub_811381C ldr r1, _08110F6C @ =gUnknown_203ADF9 movs r0, 0 strb r0, [r1] movs r2, 0 ldr r0, _08110F70 @ =gSaveBlock1Ptr ldr r5, [r0] movs r7, 0xCD lsls r7, 3 movs r6, 0x98 lsls r6, 5 _08110F32: adds r0, r2, 0 muls r0, r7 adds r0, r5, r0 adds r0, r6 ldrb r0, [r0] ldr r3, _08110F6C @ =gUnknown_203ADF9 cmp r0, 0 beq _08110F48 ldrb r0, [r1] adds r0, 0x1 strb r0, [r1] _08110F48: adds r0, r2, 0x1 lsls r0, 24 lsrs r2, r0, 24 cmp r2, 0x3 bls _08110F32 ldrb r0, [r3] cmp r0, 0 beq _08110F78 ldr r1, _08110F74 @ =gUnknown_3005ECC movs r0, 0 strb r0, [r1] adds r0, r4, 0 bl sub_8110F90 adds r0, r4, 0 bl DestroyTask b _08110F84 .align 2, 0 _08110F6C: .4byte gUnknown_203ADF9 _08110F70: .4byte gSaveBlock1Ptr _08110F74: .4byte gUnknown_3005ECC _08110F78: ldr r0, _08110F8C @ =sub_8056938 bl SetMainCallback2 adds r0, r4, 0 bl DestroyTask _08110F84: pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08110F8C: .4byte sub_8056938 thumb_func_end sub_8110F14 thumb_func_start sub_8110F90 sub_8110F90: @ 8110F90 push {lr} ldr r1, _08110FC0 @ =gSaveBlock1Ptr ldr r2, [r1] movs r3, 0 movs r0, 0x3 strb r0, [r2, 0x4] ldr r2, [r1] movs r0, 0x13 strb r0, [r2, 0x5] ldr r1, [r1] movs r0, 0xFF strb r0, [r1, 0x6] ldr r0, _08110FC4 @ =gUnknown_203ADF8 strb r3, [r0] ldr r1, _08110FC8 @ =gUnknown_2031DD8 movs r0, 0x1 strb r0, [r1] movs r0, 0x1 bl sub_8082740 bl sub_8111368 pop {r0} bx r0 .align 2, 0 _08110FC0: .4byte gSaveBlock1Ptr _08110FC4: .4byte gUnknown_203ADF8 _08110FC8: .4byte gUnknown_2031DD8 thumb_func_end sub_8110F90 thumb_func_start sub_8110FCC sub_8110FCC: @ 8110FCC push {r4,r5,lr} ldr r5, _08110FF8 @ =gUnknown_203ADF8 ldrb r0, [r5] ldr r4, _08110FFC @ =gUnknown_203AE98 adds r1, r4, 0 bl sub_811175C bl sub_8113B88 movs r2, 0x80 lsls r2, 1 movs r0, 0x1 adds r1, r4, 0 bl sub_8112940 ldrb r0, [r5] bl sub_8111150 pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08110FF8: .4byte gUnknown_203ADF8 _08110FFC: .4byte gUnknown_203AE98 thumb_func_end sub_8110FCC thumb_func_start sub_8111000 sub_8111000: @ 8111000 push {lr} movs r0, 0x4 bl stdpal_get movs r1, 0xF0 movs r2, 0x20 bl LoadPalette movs r0, 0x2 bl sub_81109CC bl sub_807DF64 ldr r2, _08111034 @ =gUnknown_203AE94 movs r0, 0 str r0, [r2] ldrb r1, [r2] subs r0, 0x10 ands r0, r1 movs r1, 0x2 orrs r0, r1 strb r0, [r2] movs r0, 0x1 pop {r1} bx r1 .align 2, 0 _08111034: .4byte gUnknown_203AE94 thumb_func_end sub_8111000 thumb_func_start sub_8111038 sub_8111038: @ 8111038 push {lr} movs r0, 0x4 bl stdpal_get movs r1, 0xF0 movs r2, 0x20 bl LoadPalette movs r0, 0x2 bl sub_81109CC bl sub_807DF7C ldr r2, _0811106C @ =gUnknown_203AE94 movs r0, 0 str r0, [r2] ldrb r1, [r2] subs r0, 0x10 ands r0, r1 movs r1, 0x2 orrs r0, r1 strb r0, [r2] movs r0, 0x1 pop {r1} bx r1 .align 2, 0 _0811106C: .4byte gUnknown_203AE94 thumb_func_end sub_8111038 thumb_func_start sub_8111070 sub_8111070: @ 8111070 push {r4-r7,lr} sub sp, 0x14 lsls r0, 24 lsrs r7, r0, 24 movs r5, 0 _0811107A: lsls r4, r5, 3 ldr r0, _0811111C @ =gUnknown_845661C adds r4, r0 adds r0, r4, 0 bl AddWindow ldr r6, _08111120 @ =gUnknown_203ADFE adds r1, r5, r6 strb r0, [r1] ldrb r0, [r1] ldrb r1, [r4, 0x3] lsls r1, 3 str r1, [sp] ldrb r1, [r4, 0x4] lsls r1, 3 str r1, [sp, 0x4] movs r1, 0xF movs r2, 0 movs r3, 0 bl FillWindowPixelRect adds r0, r5, 0x1 lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0x2 bls _0811107A ldr r5, _08111124 @ =gStringVar4 ldr r1, _08111128 @ =gUnknown_841A155 adds r0, r5, 0 bl StringExpandPlaceholders cmp r7, 0 beq _081110D2 ldr r4, _0811112C @ =gStringVar1 adds r0, r4, 0 adds r1, r7, 0 movs r2, 0 movs r3, 0x1 bl ConvertIntToDecimalStringN adds r0, r5, 0 adds r1, r4, 0 bl StringAppend _081110D2: ldrb r0, [r6] movs r1, 0x1 str r1, [sp] movs r1, 0x2 str r1, [sp, 0x4] ldr r1, _08111130 @ =gUnknown_8456634 str r1, [sp, 0x8] movs r1, 0 str r1, [sp, 0xC] str r5, [sp, 0x10] movs r1, 0x2 movs r2, 0x2 movs r3, 0x2 bl AddTextPrinterParametrized2 ldrb r0, [r6] bl PutWindowTilemap ldrb r0, [r6, 0x1] bl PutWindowTilemap ldrb r0, [r6] movs r1, 0x2 bl CopyWindowToVram ldrb r0, [r6, 0x2] movs r1, 0x2 bl CopyWindowToVram ldrb r0, [r6, 0x1] movs r1, 0x3 bl CopyWindowToVram add sp, 0x14 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _0811111C: .4byte gUnknown_845661C _08111120: .4byte gUnknown_203ADFE _08111124: .4byte gStringVar4 _08111128: .4byte gUnknown_841A155 _0811112C: .4byte gStringVar1 _08111130: .4byte gUnknown_8456634 thumb_func_end sub_8111070 thumb_func_start sub_8111134 sub_8111134: @ 8111134 push {r4,lr} ldr r4, _0811114C @ =gUnknown_203ADFE ldrb r0, [r4, 0x1] bl PutWindowTilemap ldrb r0, [r4, 0x1] movs r1, 0x1 bl CopyWindowToVram pop {r4} pop {r0} bx r0 .align 2, 0 _0811114C: .4byte gUnknown_203ADFE thumb_func_end sub_8111134 thumb_func_start sub_8111150 sub_8111150: @ 8111150 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} lsls r0, 24 lsrs r0, 24 ldr r2, _081111A8 @ =gSaveBlock1Ptr movs r1, 0xCD lsls r1, 3 muls r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 ldr r1, [r2] adds r5, r1, r0 movs r4, 0 mov r9, r2 mov r6, r9 movs r2, 0x8D lsls r2, 3 mov r12, r2 ldr r7, _081111AC @ =0x000008e4 mov r8, r7 _08111180: lsls r0, r4, 2 adds r3, r5, r0 ldr r2, _081111B0 @ =0x00000469 adds r1, r3, r2 ldrb r1, [r1] lsls r1, 31 mov r10, r0 cmp r1, 0 beq _081111B4 ldr r1, [r6] lsls r2, r4, 1 adds r0, r2, r4 lsls r0, 3 adds r1, r0 mov r7, r12 adds r0, r3, r7 ldrb r0, [r0] negs r0, r0 b _081111C4 .align 2, 0 _081111A8: .4byte gSaveBlock1Ptr _081111AC: .4byte 0x000008e4 _081111B0: .4byte 0x00000469 _081111B4: ldr r1, [r6] lsls r2, r4, 1 adds r0, r2, r4 lsls r0, 3 adds r1, r0 mov r7, r12 adds r0, r3, r7 ldrb r0, [r0] _081111C4: add r1, r8 strh r0, [r1] adds r3, r2, 0 mov r0, r10 adds r2, r5, r0 ldr r1, _081111F0 @ =0x0000046a adds r0, r2, r1 ldrb r0, [r0] lsls r0, 30 cmp r0, 0 bge _081111F4 ldr r1, [r6] adds r0, r3, r4 lsls r0, 3 adds r1, r0 mov r7, r12 adds r0, r2, r7 ldr r0, [r0] lsls r0, 15 lsrs r0, 24 negs r0, r0 b _08111206 .align 2, 0 _081111F0: .4byte 0x0000046a _081111F4: ldr r1, [r6] adds r0, r3, r4 lsls r0, 3 adds r1, r0 mov r7, r12 adds r0, r2, r7 ldr r0, [r0] lsls r0, 15 lsrs r0, 24 _08111206: ldr r2, _08111260 @ =0x000008e6 adds r1, r2 strh r0, [r1] ldr r1, [r6] adds r3, r4 lsls r3, 3 adds r1, r3 mov r7, r10 adds r2, r5, r7 ldr r7, _08111264 @ =0x0000046a adds r0, r2, r7 ldrb r0, [r0] lsrs r0, 2 ldr r7, _08111268 @ =0x000008e8 adds r1, r7 strb r0, [r1] ldr r0, [r6] adds r0, r3 ldr r1, _0811126C @ =0x0000046b adds r2, r1 ldrb r1, [r2] ldr r2, _08111270 @ =0x000008e9 adds r0, r2 strb r1, [r0] adds r0, r4, 0x1 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x3F bls _08111180 mov r7, r9 ldr r1, [r7] movs r0, 0x8E lsls r0, 4 adds r1, r0 adds r0, r5, 0 bl sub_815A1F8 pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08111260: .4byte 0x000008e6 _08111264: .4byte 0x0000046a _08111268: .4byte 0x000008e8 _0811126C: .4byte 0x0000046b _08111270: .4byte 0x000008e9 thumb_func_end sub_8111150 thumb_func_start sub_8111274 sub_8111274: @ 8111274 push {r4,lr} sub sp, 0x8 lsls r0, 24 lsrs r4, r0, 24 lsls r1, 24 cmp r1, 0 bne _081112D4 ldr r3, _081112C8 @ =gSaveBlock1Ptr ldr r2, [r3] movs r0, 0xCD lsls r0, 3 adds r1, r4, 0 muls r1, r0 adds r0, r2, r1 ldr r4, _081112CC @ =0x00001301 adds r0, r4 ldrb r0, [r0] strb r0, [r2, 0x4] ldr r2, [r3] adds r0, r2, r1 adds r4, 0x1 adds r0, r4 ldrb r0, [r0] strb r0, [r2, 0x5] ldr r2, [r3] adds r0, r2, r1 adds r4, 0x1 adds r0, r4 ldrb r0, [r0] strb r0, [r2, 0x6] ldr r2, [r3] adds r1, r2, r1 ldr r3, _081112D0 @ =0x00001304 adds r0, r1, r3 ldrh r0, [r0] strh r0, [r2] adds r4, 0x3 adds r1, r4 ldrh r0, [r1] strh r0, [r2, 0x2] b _08111336 .align 2, 0 _081112C8: .4byte gSaveBlock1Ptr _081112CC: .4byte 0x00001301 _081112D0: .4byte 0x00001304 _081112D4: ldr r0, _08111340 @ =gSaveBlock1Ptr ldr r3, [r0] movs r0, 0xCD lsls r0, 3 muls r0, r4 adds r3, r0 ldr r1, _08111344 @ =0x00001301 adds r0, r3, r1 ldrb r2, [r0] ldr r0, _08111348 @ =0xffffff00 ldr r1, [sp] ands r1, r0 orrs r1, r2 str r1, [sp] ldr r2, _0811134C @ =0x00001302 adds r0, r3, r2 ldrb r0, [r0] lsls r0, 8 ldr r2, _08111350 @ =0xffff00ff ands r2, r1 orrs r2, r0 str r2, [sp] ldr r4, _08111354 @ =0x00001303 adds r0, r3, r4 ldrb r1, [r0] lsls r1, 16 ldr r0, _08111358 @ =0xff00ffff ands r0, r2 orrs r0, r1 str r0, [sp] ldr r1, _0811135C @ =0x00001304 adds r0, r3, r1 ldrh r1, [r0] ldr r0, _08111360 @ =0xffff0000 ldr r2, [sp, 0x4] ands r2, r0 orrs r2, r1 str r2, [sp, 0x4] adds r4, 0x3 adds r3, r4 ldrh r1, [r3] lsls r1, 16 ldr r0, _08111364 @ =0x0000ffff ands r0, r2 orrs r0, r1 str r0, [sp, 0x4] mov r0, sp bl sub_8055D5C _08111336: add sp, 0x8 pop {r4} pop {r0} bx r0 .align 2, 0 _08111340: .4byte gSaveBlock1Ptr _08111344: .4byte 0x00001301 _08111348: .4byte 0xffffff00 _0811134C: .4byte 0x00001302 _08111350: .4byte 0xffff00ff _08111354: .4byte 0x00001303 _08111358: .4byte 0xff00ffff _0811135C: .4byte 0x00001304 _08111360: .4byte 0xffff0000 _08111364: .4byte 0x0000ffff thumb_func_end sub_8111274 thumb_func_start sub_8111368 sub_8111368: @ 8111368 push {lr} ldr r1, _081113A0 @ =gUnknown_203ADFA movs r0, 0x2 strb r0, [r1] bl sub_806E6FC bl sub_809A2DC bl sub_809A2A4 bl sub_8110AC8 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _081113B4 ldr r0, _081113A4 @ =gUnknown_203ADF8 ldrb r0, [r0] movs r1, 0 bl sub_8111274 ldr r1, _081113A8 @ =gUnknown_3005024 ldr r0, _081113AC @ =sub_8111038 str r0, [r1] ldr r0, _081113B0 @ =sub_80572A8 bl SetMainCallback2 b _081113CE .align 2, 0 _081113A0: .4byte gUnknown_203ADFA _081113A4: .4byte gUnknown_203ADF8 _081113A8: .4byte gUnknown_3005024 _081113AC: .4byte sub_8111038 _081113B0: .4byte sub_80572A8 _081113B4: ldr r0, _081113D4 @ =gUnknown_203ADF8 ldrb r0, [r0] movs r1, 0x1 bl sub_8111274 bl warp_in ldr r1, _081113D8 @ =gUnknown_3005024 ldr r0, _081113DC @ =sub_8111000 str r0, [r1] ldr r0, _081113E0 @ =sub_805726C bl SetMainCallback2 _081113CE: pop {r0} bx r0 .align 2, 0 _081113D4: .4byte gUnknown_203ADF8 _081113D8: .4byte gUnknown_3005024 _081113DC: .4byte sub_8111000 _081113E0: .4byte sub_805726C thumb_func_end sub_8111368 thumb_func_start sub_81113E4 sub_81113E4: @ 81113E4 push {r4,r5,lr} ldr r4, _08111430 @ =gSaveBlock1Ptr ldr r0, _08111434 @ =gUnknown_203ADF8 ldrb r1, [r0] movs r0, 0xCD lsls r0, 3 muls r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 ldr r1, [r4] adds r5, r1, r0 movs r2, 0xA4 lsls r2, 1 adds r0, r5, r2 movs r2, 0xEE lsls r2, 4 adds r1, r2 movs r2, 0x90 bl CpuSet movs r1, 0x9A lsls r1, 2 adds r0, r5, r1 ldr r1, [r4] movs r2, 0x80 lsls r2, 5 adds r1, r2 movs r2, 0x80 lsls r2, 1 bl CpuSet bl sub_8111688 pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08111430: .4byte gSaveBlock1Ptr _08111434: .4byte gUnknown_203ADF8 thumb_func_end sub_81113E4 thumb_func_start sub_8111438 sub_8111438: @ 8111438 push {r4-r7,lr} mov r7, r9 mov r6, r8 push {r6,r7} sub sp, 0x14 movs r0, 0x68 bl AllocZeroed mov r9, r0 movs r0, 0 str r0, [sp] str r0, [sp, 0x4] str r0, [sp, 0x8] str r0, [sp, 0xC] mov r0, r9 movs r1, 0x13 movs r2, 0x1 movs r3, 0x20 bl CreateMon ldr r0, _081114BC @ =0x00004027 bl VarGet lsls r0, 16 lsrs r1, r0, 28 mov r6, r9 adds r6, 0x64 strh r1, [r6] lsls r0, 4 lsrs r0, 20 mov r4, r9 adds r4, 0x66 strh r0, [r4] bl sub_8111618 lsls r0, 16 lsrs r5, r0, 16 ldrh r0, [r6] cmp r5, r0 bls _081114C4 movs r3, 0 subs r0, r5, r0 mov r8, r4 cmp r3, r0 bge _0811150E _08111492: movs r0, 0x5 subs r0, r3 movs r1, 0x64 muls r0, r1 ldr r1, _081114C0 @ =gUnknown_2024284 adds r0, r1 str r3, [sp, 0x10] bl ZeroMonData ldr r3, [sp, 0x10] adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 mov r0, r9 adds r0, 0x64 ldrh r0, [r0] subs r0, r5, r0 cmp r3, r0 blt _08111492 b _0811150E .align 2, 0 _081114BC: .4byte 0x00004027 _081114C0: .4byte gUnknown_2024284 _081114C4: mov r8, r4 cmp r5, r0 bcs _0811150E movs r3, 0 adds r4, r6, 0 _081114CE: lsls r1, r3, 24 lsrs r1, 24 movs r0, 0 str r3, [sp, 0x10] bl sub_808BCB4 ldr r3, [sp, 0x10] adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 cmp r3, 0x4 bls _081114CE adds r3, r5, 0 ldrh r0, [r4] cmp r3, r0 bcs _0811150E _081114EE: movs r0, 0x64 muls r0, r3 ldr r1, _08111574 @ =gUnknown_2024284 adds r0, r1 mov r1, r9 movs r2, 0x64 str r3, [sp, 0x10] bl CopyMon ldr r3, [sp, 0x10] adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 ldrh r1, [r4] cmp r3, r1 bcc _081114EE _0811150E: bl sub_811164C lsls r0, 16 lsrs r5, r0, 16 mov r1, r8 ldrh r0, [r1] cmp r5, r0 bls _08111578 movs r3, 0 _08111520: movs r6, 0 lsls r7, r3, 24 lsrs r7, 24 _08111526: lsls r0, r6, 24 lsrs r4, r0, 24 adds r0, r7, 0 adds r1, r4, 0 movs r2, 0x5 str r3, [sp, 0x10] bl GetBoxMonDataFromAnyBox ldr r3, [sp, 0x10] cmp r0, 0 beq _08111554 adds r0, r7, 0 adds r1, r4, 0 bl sub_808BCB4 subs r0, r5, 0x1 lsls r0, 16 lsrs r5, r0, 16 ldr r3, [sp, 0x10] mov r0, r8 ldrh r0, [r0] cmp r5, r0 beq _081115D2 _08111554: adds r0, r6, 0x1 lsls r0, 16 lsrs r6, r0, 16 cmp r6, 0x1D bls _08111526 mov r1, r8 ldrh r1, [r1] cmp r5, r1 beq _081115D2 adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 cmp r3, 0xD bls _08111520 b _081115D2 .align 2, 0 _08111574: .4byte gUnknown_2024284 _08111578: cmp r5, r0 bcs _081115D2 movs r3, 0 _0811157E: movs r6, 0 lsls r7, r3, 24 _08111582: lsls r1, r6, 24 lsrs r1, 24 lsrs r0, r7, 24 str r3, [sp, 0x10] bl GetBoxedMonPtr adds r4, r0, 0 movs r1, 0x5 bl GetBoxMonData ldr r3, [sp, 0x10] cmp r0, 0 bne _081115B6 adds r0, r4, 0 mov r1, r9 movs r2, 0x50 bl CopyMon adds r0, r5, 0x1 lsls r0, 16 lsrs r5, r0, 16 ldr r3, [sp, 0x10] mov r0, r8 ldrh r0, [r0] cmp r5, r0 beq _081115D2 _081115B6: adds r0, r6, 0x1 lsls r0, 16 lsrs r6, r0, 16 cmp r6, 0x1D bls _08111582 mov r1, r8 ldrh r1, [r1] cmp r5, r1 beq _081115D2 adds r0, r3, 0x1 lsls r0, 16 lsrs r3, r0, 16 cmp r3, 0xD bls _0811157E _081115D2: mov r0, r9 bl Free add sp, 0x14 pop {r3,r4} mov r8, r3 mov r9, r4 pop {r4-r7} pop {r0} bx r0 thumb_func_end sub_8111438 thumb_func_start sub_81115E8 sub_81115E8: @ 81115E8 push {r4,lr} bl sub_8111618 adds r4, r0, 0 lsls r4, 16 lsrs r4, 16 bl sub_811164C adds r1, r0, 0 lsls r1, 16 lsrs r1, 16 ldr r0, _08111614 @ =0x00004027 lsls r4, 12 adds r1, r4 lsls r1, 16 lsrs r1, 16 bl VarSet pop {r4} pop {r0} bx r0 .align 2, 0 _08111614: .4byte 0x00004027 thumb_func_end sub_81115E8 thumb_func_start sub_8111618 sub_8111618: @ 8111618 push {r4,r5,lr} movs r5, 0 movs r4, 0 _0811161E: movs r0, 0x64 muls r0, r4 ldr r1, _08111648 @ =gUnknown_2024284 adds r0, r1 movs r1, 0x5 bl GetMonData cmp r0, 0 beq _08111636 adds r0, r5, 0x1 lsls r0, 16 lsrs r5, r0, 16 _08111636: adds r0, r4, 0x1 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x5 bls _0811161E adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08111648: .4byte gUnknown_2024284 thumb_func_end sub_8111618 thumb_func_start sub_811164C sub_811164C: @ 811164C push {r4-r7,lr} movs r6, 0 movs r0, 0 _08111652: movs r4, 0 lsls r5, r0, 24 adds r7, r0, 0x1 _08111658: lsls r1, r4, 24 lsrs r1, 24 lsrs r0, r5, 24 movs r2, 0x5 bl GetBoxMonDataFromAnyBox cmp r0, 0 beq _0811166E adds r0, r6, 0x1 lsls r0, 16 lsrs r6, r0, 16 _0811166E: adds r0, r4, 0x1 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x1D bls _08111658 lsls r0, r7, 16 lsrs r0, 16 cmp r0, 0xD bls _08111652 adds r0, r6, 0 pop {r4-r7} pop {r1} bx r1 thumb_func_end sub_811164C thumb_func_start sub_8111688 sub_8111688: @ 8111688 push {r4-r7,lr} mov r7, r8 push {r7} sub sp, 0x8 movs r5, 0 ldr r0, _081116CC @ =gSaveBlock1Ptr mov r8, r0 ldr r7, _081116D0 @ =0x0000063a _08111698: ldr r1, _081116D4 @ =0x000040aa adds r0, r5, r1 lsls r0, 16 lsrs r0, 16 bl VarGet lsls r1, r5, 1 add r1, sp strh r0, [r1] movs r4, 0 adds r6, r5, 0x1 adds r3, r1, 0 lsls r5, 4 _081116B2: ldrh r0, [r3] movs r2, 0x1 ands r2, r0 cmp r2, 0 beq _081116D8 mov r1, r8 ldr r0, [r1] adds r1, r5, r4 adds r0, r7 adds r0, r1 movs r1, 0x1E strb r1, [r0] b _081116E4 .align 2, 0 _081116CC: .4byte gSaveBlock1Ptr _081116D0: .4byte 0x0000063a _081116D4: .4byte 0x000040aa _081116D8: mov r1, r8 ldr r0, [r1] adds r1, r5, r4 adds r0, r7 adds r0, r1 strb r2, [r0] _081116E4: ldrh r0, [r3] lsrs r0, 1 strh r0, [r3] adds r0, r4, 0x1 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0xF bls _081116B2 lsls r0, r6, 16 lsrs r5, r0, 16 cmp r5, 0x3 bls _08111698 add sp, 0x8 pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 thumb_func_end sub_8111688 thumb_func_start sub_8111708 sub_8111708: @ 8111708 push {r4,r5,lr} sub sp, 0x1C ldr r0, _08111754 @ =0x000040ae bl VarGet ldr r4, _08111758 @ =gSaveBlock1Ptr ldr r1, [r4] strh r0, [r1, 0x32] lsls r0, 16 cmp r0, 0 bne _0811174A movs r0, 0x4 ldrsb r0, [r1, r0] lsls r0, 16 lsrs r0, 16 ldrb r1, [r1, 0x5] lsls r1, 24 asrs r1, 24 lsls r1, 16 lsrs r1, 16 bl get_mapheader_by_bank_and_number mov r1, sp ldm r0!, {r2,r3,r5} stm r1!, {r2,r3,r5} ldm r0!, {r2,r3,r5} stm r1!, {r2,r3,r5} ldr r0, [r0] str r0, [r1] ldr r1, [r4] mov r0, sp ldrh r0, [r0, 0x12] strh r0, [r1, 0x32] _0811174A: add sp, 0x1C pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08111754: .4byte 0x000040ae _08111758: .4byte gSaveBlock1Ptr thumb_func_end sub_8111708 thumb_func_start sub_811175C sub_811175C: @ 811175C push {r4-r7,lr} mov r7, r9 mov r6, r8 push {r6,r7} mov r8, r1 lsls r0, 24 lsrs r4, r0, 24 movs r6, 0 mov r9, r6 movs r2, 0x80 lsls r2, 1 mov r0, r8 movs r1, 0 bl memset movs r7, 0 ldr r2, _081117B8 @ =gUnknown_203AE0C movs r1, 0 _08111780: lsls r0, r7, 2 adds r0, r2 str r1, [r0] adds r0, r7, 0x1 lsls r0, 16 lsrs r7, r0, 16 cmp r7, 0x1F bls _08111780 ldr r1, _081117BC @ =gSaveBlock1Ptr movs r0, 0xCD lsls r0, 3 muls r0, r4 ldr r1, [r1] adds r0, r1 ldr r1, _081117C0 @ =0x00001868 adds r4, r0, r1 movs r7, 0 _081117A2: ldrh r0, [r4] ldr r1, _081117C4 @ =0x00000fff ands r1, r0 cmp r1, 0x29 bls _081117AE b _081118AC _081117AE: lsls r0, r1, 2 ldr r1, _081117C8 @ =_081117CC adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _081117B8: .4byte gUnknown_203AE0C _081117BC: .4byte gSaveBlock1Ptr _081117C0: .4byte 0x00001868 _081117C4: .4byte 0x00000fff _081117C8: .4byte _081117CC .align 2, 0 _081117CC: .4byte _08111874 .4byte _08111880 .4byte _08111880 .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _081118AC .4byte _0811188C .4byte _081118AC .4byte _08111898 _08111874: lsls r1, r6, 3 add r1, r8 adds r0, r4, 0 bl sub_8113D08 b _081118A2 _08111880: lsls r1, r6, 3 add r1, r8 adds r0, r4, 0 bl sub_8113D94 b _081118A2 _0811188C: lsls r1, r6, 3 add r1, r8 adds r0, r4, 0 bl sub_8113C20 b _081118A2 _08111898: lsls r1, r6, 3 add r1, r8 adds r0, r4, 0 bl sub_8113C8C _081118A2: adds r4, r0, 0 adds r0, r6, 0x1 lsls r0, 16 lsrs r6, r0, 16 b _081118D2 _081118AC: mov r0, r9 lsls r1, r0, 2 ldr r5, _081118F0 @ =gUnknown_203AE0C adds r1, r5 adds r0, r4, 0 bl sub_8113A78 adds r4, r0, 0 mov r1, r9 cmp r1, 0 bne _081118C8 ldr r0, [r5] bl sub_8113ABC _081118C8: mov r0, r9 adds r0, 0x1 lsls r0, 16 lsrs r0, 16 mov r9, r0 _081118D2: cmp r4, 0 beq _081118E2 adds r0, r7, 0x1 lsls r0, 16 lsrs r7, r0, 16 cmp r7, 0x1F bhi _081118E2 b _081117A2 _081118E2: pop {r3,r4} mov r8, r3 mov r9, r4 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _081118F0: .4byte gUnknown_203AE0C thumb_func_end sub_811175C thumb_func_start sub_81118F4 sub_81118F4: @ 81118F4 push {lr} adds r1, r0, 0 lsls r1, 24 asrs r1, 24 movs r0, 0x1 bl fade_screen ldr r1, _0811190C @ =gUnknown_203AE8C ldr r0, _08111910 @ =sub_8111914 str r0, [r1] pop {r0} bx r0 .align 2, 0 _0811190C: .4byte gUnknown_203AE8C _08111910: .4byte sub_8111914 thumb_func_end sub_81118F4 thumb_func_start sub_8111914 sub_8111914: @ 8111914 push {lr} ldr r0, _08111960 @ =gUnknown_2037AB8 ldrb r1, [r0, 0x7] movs r0, 0x80 ands r0, r1 cmp r0, 0 bne _0811197A bl ScriptContext2_Enable ldr r1, _08111964 @ =gUnknown_203ADF8 ldrb r0, [r1] adds r0, 0x1 strb r0, [r1] lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 bhi _08111970 ldr r0, _08111968 @ =gSaveBlock1Ptr ldr r0, [r0] ldrb r2, [r1] movs r1, 0xCD lsls r1, 3 muls r1, r2 adds r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 ldrb r0, [r0] cmp r0, 0 beq _08111970 ldr r1, _0811196C @ =gUnknown_203ADF9 ldrb r0, [r1] subs r0, 0x1 strb r0, [r1] bl sub_8111368 b _0811197A .align 2, 0 _08111960: .4byte gUnknown_2037AB8 _08111964: .4byte gUnknown_203ADF8 _08111968: .4byte gSaveBlock1Ptr _0811196C: .4byte gUnknown_203ADF9 _08111970: ldr r1, _08111980 @ =gUnknown_3005E88 movs r0, 0 strb r0, [r1] bl sub_8111984 _0811197A: pop {r0} bx r0 .align 2, 0 _08111980: .4byte gUnknown_3005E88 thumb_func_end sub_8111914 thumb_func_start sub_8111984 sub_8111984: @ 8111984 push {lr} bl sub_806E6FC bl ResetSaveCounters movs r0, 0 bl sub_80DA4FC ldr r0, _081119B4 @ =sub_8057430 bl SetMainCallback2 ldr r1, _081119B8 @ =gUnknown_3005024 ldr r0, _081119BC @ =sub_8111F60 str r0, [r1] bl FreeAllWindowBuffers ldr r1, _081119C0 @ =gUnknown_203ADFA movs r0, 0x3 strb r0, [r1] ldr r1, _081119C4 @ =gUnknown_203AE8C movs r0, 0 str r0, [r1] pop {r0} bx r0 .align 2, 0 _081119B4: .4byte sub_8057430 _081119B8: .4byte gUnknown_3005024 _081119BC: .4byte sub_8111F60 _081119C0: .4byte gUnknown_203ADFA _081119C4: .4byte gUnknown_203AE8C thumb_func_end sub_8111984 thumb_func_start sub_81119C8 sub_81119C8: @ 81119C8 push {lr} bl sub_8111914 pop {r0} bx r0 thumb_func_end sub_81119C8 thumb_func_start sub_81119D4 sub_81119D4: @ 81119D4 push {r4,lr} adds r4, r0, 0 ldr r0, _081119E8 @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x1 beq _081119EC cmp r0, 0x2 beq _081119F2 b _08111A2C .align 2, 0 _081119E8: .4byte gUnknown_203ADFA _081119EC: bl sub_8112364 b _08111A2C _081119F2: ldr r1, _08111A20 @ =gUnknown_3005E88 movs r0, 0x3 strb r0, [r1] ldr r0, _08111A24 @ =sub_8111A34 movs r1, 0x50 bl CreateTask lsls r0, 24 lsrs r0, 24 ldr r2, _08111A28 @ =gUnknown_3005090 lsls r1, r0, 2 adds r1, r0 lsls r1, 3 adds r1, r2 movs r2, 0 strh r2, [r1, 0x8] strh r2, [r1, 0xA] movs r1, 0xE adds r2, r4, 0 bl SetWordTaskArg movs r0, 0x1 b _08111A2E .align 2, 0 _08111A20: .4byte gUnknown_3005E88 _08111A24: .4byte sub_8111A34 _08111A28: .4byte gUnknown_3005090 _08111A2C: movs r0, 0 _08111A2E: pop {r4} pop {r1} bx r1 thumb_func_end sub_81119D4 thumb_func_start sub_8111A34 sub_8111A34: @ 8111A34 push {r4,r5,lr} sub sp, 0x4 lsls r0, 24 lsrs r5, r0, 24 lsls r0, r5, 2 adds r0, r5 lsls r0, 3 ldr r1, _08111A54 @ =gUnknown_3005098 adds r4, r0, r1 movs r0, 0x2 ldrsh r1, [r4, r0] cmp r1, 0 beq _08111A58 cmp r1, 0x1 beq _08111A90 b _08111AC0 .align 2, 0 _08111A54: .4byte gUnknown_3005098 _08111A58: ldrh r0, [r4] adds r0, 0x1 strh r0, [r4] lsls r0, 16 asrs r0, 16 cmp r0, 0x7F bne _08111AC0 movs r0, 0x1 negs r0, r0 str r1, [sp] movs r1, 0 movs r2, 0 movs r3, 0x10 bl BeginNormalPaletteFade ldr r2, _08111A8C @ =gUnknown_203AE94 ldrb r1, [r2] movs r0, 0x3F ands r0, r1 movs r1, 0x80 orrs r0, r1 strb r0, [r2] ldrh r0, [r4, 0x2] adds r0, 0x1 strh r0, [r4, 0x2] b _08111AC0 .align 2, 0 _08111A8C: .4byte gUnknown_203AE94 _08111A90: ldr r0, _08111AC8 @ =gUnknown_2037AB8 ldrb r1, [r0, 0x7] movs r0, 0x80 ands r0, r1 lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0 bne _08111AC0 ldr r0, _08111ACC @ =gUnknown_3005E88 strb r1, [r0] adds r0, r5, 0 movs r1, 0xE bl GetWordTaskArg cmp r0, 0 beq _08111AB4 bl _call_via_r0 _08111AB4: adds r0, r5, 0 bl DestroyTask ldr r1, _08111AD0 @ =gUnknown_203AE8C ldr r0, _08111AD4 @ =sub_8111914 str r0, [r1] _08111AC0: add sp, 0x4 pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08111AC8: .4byte gUnknown_2037AB8 _08111ACC: .4byte gUnknown_3005E88 _08111AD0: .4byte gUnknown_203AE8C _08111AD4: .4byte sub_8111914 thumb_func_end sub_8111A34 thumb_func_start sub_8111AD8 sub_8111AD8: @ 8111AD8 push {r4,r5,lr} ldr r4, _08111B58 @ =gUnknown_203AE94 ldrb r1, [r4] movs r0, 0xF ands r0, r1 cmp r0, 0x1 bne _08111B0A ldrb r0, [r4, 0x2] subs r0, 0x1 strb r0, [r4, 0x2] lsls r0, 24 cmp r0, 0 bne _08111B78 movs r0, 0x10 negs r0, r0 ands r0, r1 movs r1, 0x31 negs r1, r1 ands r0, r1 movs r1, 0x10 orrs r0, r1 strb r0, [r4] movs r0, 0x2 bl sub_8112888 _08111B0A: ldrb r1, [r4] movs r0, 0x30 ands r0, r1 cmp r0, 0x10 bne _08111B34 ldrb r0, [r4, 0x3] adds r0, 0x1 strb r0, [r4, 0x3] lsls r0, 24 lsrs r0, 24 cmp r0, 0xF bls _08111B34 bl sub_8111E20 ldrb r0, [r4] movs r1, 0x31 negs r1, r1 ands r1, r0 strb r1, [r4] movs r0, 0 strb r0, [r4, 0x3] _08111B34: ldr r4, _08111B58 @ =gUnknown_203AE94 ldrb r0, [r4, 0x1] cmp r0, 0x1F bhi _08111B78 ldr r5, _08111B5C @ =gUnknown_203AE0C lsls r0, 2 adds r0, r5 ldr r0, [r0] bl sub_8113B44 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08111B60 bl sub_8111B80 b _08111B78 .align 2, 0 _08111B58: .4byte gUnknown_203AE94 _08111B5C: .4byte gUnknown_203AE0C _08111B60: ldrb r0, [r4, 0x1] lsls r0, 2 adds r0, r5 ldr r0, [r0] bl sub_8113AE8 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08111B78 bl sub_8111B80 _08111B78: pop {r4,r5} pop {r0} bx r0 thumb_func_end sub_8111AD8 thumb_func_start sub_8111B80 sub_8111B80: @ 8111B80 push {r4,lr} ldr r4, _08111BCC @ =gUnknown_203AE94 ldrb r1, [r4] movs r2, 0xF ands r2, r1 cmp r2, 0 bne _08111BC0 movs r0, 0x10 negs r0, r0 ands r0, r1 movs r1, 0x1 orrs r0, r1 movs r1, 0x31 negs r1, r1 ands r0, r1 strb r0, [r4] strb r2, [r4, 0x3] bl sub_8111BD4 strb r0, [r4, 0x2] ldr r0, _08111BD0 @ =gUnknown_203B044 ldrh r0, [r0, 0x2] cmp r0, 0 bne _08111BB6 ldrb r0, [r4, 0x1] adds r0, 0x1 strb r0, [r4, 0x1] _08111BB6: ldrb r0, [r4, 0x1] cmp r0, 0x20 bhi _08111BC6 bl sub_8111D10 _08111BC0: movs r0, 0x1 bl sub_8112888 _08111BC6: pop {r4} pop {r0} bx r0 .align 2, 0 _08111BCC: .4byte gUnknown_203AE94 _08111BD0: .4byte gUnknown_203B044 thumb_func_end sub_8111B80 thumb_func_start sub_8111BD4 sub_8111BD4: @ 8111BD4 push {r4,lr} movs r2, 0 movs r1, 0 ldr r3, _08111C0C @ =gStringVar4 ldrb r0, [r3] cmp r0, 0xFF beq _08111C04 ldr r4, _08111C10 @ =0x000003ff _08111BE4: adds r0, r1, r3 ldrb r0, [r0] cmp r0, 0xFE beq _08111BF2 adds r0, r2, 0x1 lsls r0, 16 lsrs r2, r0, 16 _08111BF2: adds r0, r1, 0x1 lsls r0, 16 lsrs r1, r0, 16 cmp r1, r4 bhi _08111C04 adds r0, r1, r3 ldrb r0, [r0] cmp r0, 0xFF bne _08111BE4 _08111C04: cmp r2, 0x13 bhi _08111C14 movs r0, 0x5F b _08111C26 .align 2, 0 _08111C0C: .4byte gStringVar4 _08111C10: .4byte 0x000003ff _08111C14: cmp r2, 0x23 bhi _08111C1C movs r0, 0x7F b _08111C26 _08111C1C: cmp r2, 0x2D bls _08111C24 movs r0, 0xFF b _08111C26 _08111C24: movs r0, 0xBF _08111C26: pop {r4} pop {r1} bx r1 thumb_func_end sub_8111BD4 thumb_func_start sub_8111C2C sub_8111C2C: @ 8111C2C push {lr} ldr r0, _08111C54 @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x2 bne _08111C60 ldr r0, _08111C58 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0 beq _08111C4E ldr r0, _08111C5C @ =gUnknown_203AE94 ldrb r0, [r0] movs r1, 0xF ands r1, r0 cmp r1, 0x1 beq _08111C4E cmp r1, 0x2 bne _08111C60 _08111C4E: movs r0, 0x1 b _08111C62 .align 2, 0 _08111C54: .4byte gUnknown_203ADFA _08111C58: .4byte gUnknown_3005E88 _08111C5C: .4byte gUnknown_203AE94 _08111C60: movs r0, 0 _08111C62: pop {r1} bx r1 thumb_func_end sub_8111C2C thumb_func_start sub_8111C68 sub_8111C68: @ 8111C68 push {r4,r5,lr} ldr r5, _08111C9C @ =gUnknown_203AE94 ldrb r2, [r5] movs r4, 0xC0 ands r4, r2 cmp r4, 0 bne _08111CC6 ldr r0, _08111CA0 @ =gMain ldrh r1, [r0, 0x2E] movs r3, 0x1 ands r3, r1 cmp r3, 0 beq _08111CA8 movs r0, 0x3F ands r0, r2 movs r1, 0x80 orrs r0, r1 strb r0, [r5] ldr r0, _08111CA4 @ =gUnknown_3005E88 strb r4, [r0] movs r0, 0x3 negs r0, r0 bl sub_81118F4 b _08111CC6 .align 2, 0 _08111C9C: .4byte gUnknown_203AE94 _08111CA0: .4byte gMain _08111CA4: .4byte gUnknown_3005E88 _08111CA8: movs r0, 0x2 ands r0, r1 cmp r0, 0 beq _08111CC6 movs r0, 0x3F ands r0, r2 movs r1, 0x40 orrs r0, r1 strb r0, [r5] ldr r0, _08111CCC @ =gUnknown_3005E88 strb r3, [r0] movs r0, 0x3 negs r0, r0 bl sub_8111E64 _08111CC6: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08111CCC: .4byte gUnknown_3005E88 thumb_func_end sub_8111C68 thumb_func_start sub_8111CD0 sub_8111CD0: @ 8111CD0 push {lr} ldr r0, _08111CE4 @ =gUnknown_203AE94 ldrb r1, [r0] movs r0, 0xC0 ands r0, r1 cmp r0, 0 bne _08111CE8 movs r0, 0 b _08111CEA .align 2, 0 _08111CE4: .4byte gUnknown_203AE94 _08111CE8: movs r0, 0x1 _08111CEA: pop {r1} bx r1 thumb_func_end sub_8111CD0 thumb_func_start sub_8111CF0 sub_8111CF0: @ 8111CF0 push {lr} ldr r0, _08111D08 @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x2 bne _08111D02 ldr r0, _08111D0C @ =gUnknown_203ADF9 ldrb r0, [r0] bl sub_8111070 _08111D02: pop {r0} bx r0 .align 2, 0 _08111D08: .4byte gUnknown_203ADFA _08111D0C: .4byte gUnknown_203ADF9 thumb_func_end sub_8111CF0 thumb_func_start sub_8111D10 sub_8111D10: @ 8111D10 push {r4,r5,lr} sub sp, 0x14 movs r4, 0 movs r1, 0 ldr r2, _08111D80 @ =gStringVar4 ldrb r0, [r2] ldr r5, _08111D84 @ =gUnknown_203ADFE cmp r0, 0xFF beq _08111D42 _08111D22: adds r0, r1, r2 ldrb r0, [r0] cmp r0, 0xFE bne _08111D30 adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 _08111D30: adds r0, r1, 0x1 lsls r0, 16 lsrs r1, r0, 16 cmp r1, 0xFF bhi _08111D42 adds r0, r1, r2 ldrb r0, [r0] cmp r0, 0xFF bne _08111D22 _08111D42: ldrb r0, [r5, 0x2] bl PutWindowTilemap ldrb r0, [r5, 0x2] bl sub_8111D90 ldrb r0, [r5, 0x2] ldr r1, _08111D88 @ =gUnknown_8456698 adds r1, r4, r1 ldrb r3, [r1] movs r1, 0x1 str r1, [sp] movs r2, 0 str r2, [sp, 0x4] ldr r1, _08111D8C @ =gUnknown_8456634 str r1, [sp, 0x8] str r2, [sp, 0xC] ldr r1, _08111D80 @ =gStringVar4 str r1, [sp, 0x10] movs r1, 0x2 movs r2, 0x2 bl AddTextPrinterParametrized2 movs r0, 0 bl schedule_bg_copy_tilemap_to_vram add sp, 0x14 pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08111D80: .4byte gStringVar4 _08111D84: .4byte gUnknown_203ADFE _08111D88: .4byte gUnknown_8456698 _08111D8C: .4byte gUnknown_8456634 thumb_func_end sub_8111D10 thumb_func_start sub_8111D90 sub_8111D90: @ 8111D90 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} lsls r0, 24 lsrs r0, 24 mov r10, r0 ldr r0, _08111DC0 @ =gUnknown_8456638 mov r9, r0 movs r0, 0xB4 lsls r0, 5 bl Alloc mov r8, r0 cmp r0, 0 beq _08111E0C movs r1, 0 _08111DB4: cmp r1, 0 beq _08111DC4 cmp r1, 0x5 beq _08111DC8 movs r0, 0x1 b _08111DCA .align 2, 0 _08111DC0: .4byte gUnknown_8456638 _08111DC4: movs r0, 0 b _08111DCA _08111DC8: movs r0, 0x2 _08111DCA: movs r4, 0 lsls r6, r0, 5 lsls r0, r1, 4 adds r7, r1, 0x1 subs r0, r1 lsls r5, r0, 1 _08111DD6: adds r1, r5, r4 lsls r1, 5 add r1, r8 mov r2, r9 adds r0, r2, r6 ldr r2, _08111E1C @ =0x04000008 bl CpuSet adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0x1D bls _08111DD6 lsls r0, r7, 24 lsrs r1, r0, 24 cmp r1, 0x5 bls _08111DB4 movs r2, 0xB4 lsls r2, 5 mov r0, r10 mov r1, r8 movs r3, 0 bl CopyToWindowPixelBuffer mov r0, r8 bl Free _08111E0C: pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08111E1C: .4byte 0x04000008 thumb_func_end sub_8111D90 thumb_func_start sub_8111E20 sub_8111E20: @ 8111E20 push {r4,lr} sub sp, 0x8 ldr r4, _08111E60 @ =gUnknown_203ADFE ldrb r0, [r4, 0x2] bl ClearWindowTilemap ldrb r0, [r4, 0x2] movs r1, 0xF0 str r1, [sp] movs r1, 0x30 str r1, [sp, 0x4] movs r1, 0xF movs r2, 0 movs r3, 0 bl FillWindowPixelRect ldrb r0, [r4, 0x2] movs r1, 0x2 bl CopyWindowToVram ldrb r0, [r4, 0x1] bl PutWindowTilemap ldrb r0, [r4, 0x1] movs r1, 0x1 bl CopyWindowToVram add sp, 0x8 pop {r4} pop {r0} bx r0 .align 2, 0 _08111E60: .4byte gUnknown_203ADFE thumb_func_end sub_8111E20 thumb_func_start sub_8111E64 sub_8111E64: @ 8111E64 push {lr} adds r1, r0, 0 lsls r1, 24 asrs r1, 24 movs r0, 0x1 bl fade_screen ldr r1, _08111E7C @ =gUnknown_203AE8C ldr r0, _08111E80 @ =sub_8111E84 str r0, [r1] pop {r0} bx r0 .align 2, 0 _08111E7C: .4byte gUnknown_203AE8C _08111E80: .4byte sub_8111E84 thumb_func_end sub_8111E64 thumb_func_start sub_8111E84 sub_8111E84: @ 8111E84 push {r4,lr} ldr r0, _08111F00 @ =gUnknown_2037AB8 ldrb r1, [r0, 0x7] movs r0, 0x80 ands r0, r1 cmp r0, 0 bne _08111EF8 bl ScriptContext2_Enable ldr r3, _08111F04 @ =gUnknown_203ADF8 ldrb r0, [r3] lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 bhi _08111EEE ldr r0, _08111F08 @ =gSaveBlock1Ptr ldr r0, [r0] ldrb r2, [r3] movs r1, 0xCD lsls r1, 3 muls r1, r2 adds r0, r1 movs r1, 0x98 lsls r1, 5 adds r0, r1 ldrb r0, [r0] cmp r0, 0 beq _08111EEE adds r4, r3, 0 _08111EBE: ldrb r0, [r4] ldr r1, _08111F0C @ =gUnknown_203AE98 bl sub_811175C ldrb r0, [r4] adds r0, 0x1 strb r0, [r4] lsls r0, 24 lsrs r0, 24 cmp r0, 0x3 bhi _08111EEE ldr r0, _08111F08 @ =gSaveBlock1Ptr ldr r1, [r0] ldrb r2, [r4] movs r0, 0xCD lsls r0, 3 muls r0, r2 adds r1, r0 movs r0, 0x98 lsls r0, 5 adds r1, r0 ldrb r0, [r1] cmp r0, 0 bne _08111EBE _08111EEE: ldr r1, _08111F10 @ =gUnknown_3005E88 movs r0, 0 strb r0, [r1] bl sub_8111984 _08111EF8: pop {r4} pop {r0} bx r0 .align 2, 0 _08111F00: .4byte gUnknown_2037AB8 _08111F04: .4byte gUnknown_203ADF8 _08111F08: .4byte gSaveBlock1Ptr _08111F0C: .4byte gUnknown_203AE98 _08111F10: .4byte gUnknown_3005E88 thumb_func_end sub_8111E84 thumb_func_start sub_8111F14 sub_8111F14: @ 8111F14 push {r4,lr} ldr r0, _08111F30 @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x3 bne _08111F2A ldr r4, _08111F34 @ =gUnknown_203AE90 movs r0, 0x80 lsls r0, 3 bl AllocZeroed str r0, [r4] _08111F2A: pop {r4} pop {r0} bx r0 .align 2, 0 _08111F30: .4byte gUnknown_203ADFA _08111F34: .4byte gUnknown_203AE90 thumb_func_end sub_8111F14 thumb_func_start sub_8111F38 sub_8111F38: @ 8111F38 push {lr} adds r3, r0, 0 adds r2, r1, 0 lsls r3, 16 lsls r2, 16 lsrs r2, 16 lsrs r3, 15 ldr r0, _08111F58 @ =gUnknown_20371F8 adds r0, r3, r0 ldr r1, _08111F5C @ =gUnknown_203AE90 ldr r1, [r1] adds r1, r3 bl CpuSet pop {r0} bx r0 .align 2, 0 _08111F58: .4byte gUnknown_20371F8 _08111F5C: .4byte gUnknown_203AE90 thumb_func_end sub_8111F38 thumb_func_start sub_8111F60 sub_8111F60: @ 8111F60 push {lr} movs r0, 0x4 bl stdpal_get movs r1, 0xF0 movs r2, 0x20 bl LoadPalette movs r0, 0 bl sub_8111070 bl sub_807DF7C ldr r0, _08111F88 @ =sub_8111F8C movs r1, 0xFF bl CreateTask movs r0, 0x1 pop {r1} bx r1 .align 2, 0 _08111F88: .4byte sub_8111F8C thumb_func_end sub_8111F60 thumb_func_start sub_8111F8C sub_8111F8C: @ 8111F8C push {r4,lr} lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _08111FC4 @ =gUnknown_3005090 adds r4, r1, r0 bl ScriptContext2_IsEnabled lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08111FBC bl player_bitmagic bl sub_805C270 bl sub_805C780 bl ScriptContext2_Enable ldr r0, _08111FC8 @ =sub_8111FCC str r0, [r4] _08111FBC: pop {r4} pop {r0} bx r0 .align 2, 0 _08111FC4: .4byte gUnknown_3005090 _08111FC8: .4byte sub_8111FCC thumb_func_end sub_8111F8C thumb_func_start sub_8111FCC sub_8111FCC: @ 8111FCC push {r4,r5,lr} lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _08112024 @ =gUnknown_3005090 adds r5, r1, r0 ldr r0, _08112028 @ =gUnknown_2037AB8 ldrb r1, [r0, 0x7] movs r0, 0x80 ands r0, r1 lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0 bne _0811201E ldr r0, _0811202C @ =gUnknown_203AE94 ldrb r1, [r0] movs r0, 0xC0 ands r0, r1 cmp r0, 0x40 beq _0811200E ldr r0, _08112030 @ =gStringVar1 ldr r1, _08112034 @ =gUnknown_2036DFC ldrb r1, [r1, 0x14] bl sub_80C4DF8 ldr r0, _08112038 @ =gStringVar4 ldr r1, _0811203C @ =gUnknown_841B073 bl StringExpandPlaceholders bl sub_8111D10 _0811200E: strh r4, [r5, 0x8] strh r4, [r5, 0xA] ldr r0, _08112040 @ =sub_8112044 str r0, [r5] bl player_bitmagic bl ScriptContext2_Enable _0811201E: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08112024: .4byte gUnknown_3005090 _08112028: .4byte gUnknown_2037AB8 _0811202C: .4byte gUnknown_203AE94 _08112030: .4byte gStringVar1 _08112034: .4byte gUnknown_2036DFC _08112038: .4byte gStringVar4 _0811203C: .4byte gUnknown_841B073 _08112040: .4byte sub_8112044 thumb_func_end sub_8111FCC thumb_func_start sub_8112044 sub_8112044: @ 8112044 push {r4,lr} lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _0811208C @ =gUnknown_3005090 adds r4, r1, r0 ldr r0, _08112090 @ =gMain ldrh r1, [r0, 0x2E] movs r0, 0x3 ands r0, r1 cmp r0, 0 bne _08112076 ldrh r2, [r4, 0x8] movs r1, 0x8 ldrsh r0, [r4, r1] cmp r0, 0x7E bgt _08112076 ldr r0, _08112094 @ =gUnknown_203AE94 ldrb r1, [r0] movs r0, 0xC0 ands r0, r1 cmp r0, 0x40 bne _081120A0 _08112076: bl sub_8111E20 movs r1, 0 movs r0, 0 strh r0, [r4, 0x8] ldr r0, _08112098 @ =sub_81120AC str r0, [r4] ldr r0, _0811209C @ =gUnknown_203ADFA strb r1, [r0] b _081120A4 .align 2, 0 _0811208C: .4byte gUnknown_3005090 _08112090: .4byte gMain _08112094: .4byte gUnknown_203AE94 _08112098: .4byte sub_81120AC _0811209C: .4byte gUnknown_203ADFA _081120A0: adds r0, r2, 0x1 strh r0, [r4, 0x8] _081120A4: pop {r4} pop {r0} bx r0 thumb_func_end sub_8112044 thumb_func_start sub_81120AC sub_81120AC: @ 81120AC push {r4-r6,lr} sub sp, 0x8 lsls r0, 24 lsrs r5, r0, 24 lsls r0, r5, 2 adds r0, r5 lsls r0, 3 ldr r1, _081120D0 @ =gUnknown_3005098 adds r6, r0, r1 movs r0, 0 ldrsh r1, [r6, r0] cmp r1, 0x1 beq _08112110 cmp r1, 0x1 bgt _081120D4 cmp r1, 0 beq _081120DA b _08112164 .align 2, 0 _081120D0: .4byte gUnknown_3005098 _081120D4: cmp r1, 0x2 beq _0811214C b _08112164 _081120DA: ldr r0, _08112104 @ =gUnknown_2031DD8 strb r1, [r0] bl sub_8055DC4 bl sub_811229C ldr r0, _08112108 @ =gUnknown_203ADFE ldrb r0, [r0] ldr r2, _0811210C @ =gUnknown_845661C ldrb r1, [r2, 0x3] lsls r1, 3 str r1, [sp] ldrb r1, [r2, 0x4] lsls r1, 3 str r1, [sp, 0x4] movs r1, 0xF movs r2, 0 movs r3, 0 bl FillWindowPixelRect b _0811215C .align 2, 0 _08112104: .4byte gUnknown_2031DD8 _08112108: .4byte gUnknown_203ADFE _0811210C: .4byte gUnknown_845661C _08112110: adds r0, r5, 0 bl sub_81121D8 lsls r0, 24 cmp r0, 0 beq _081121B8 movs r5, 0 _0811211E: ldr r4, _08112148 @ =gUnknown_203ADFE adds r4, r5, r4 ldrb r0, [r4] bl ClearWindowTilemap ldrb r0, [r4] movs r1, 0x1 bl CopyWindowToVram ldrb r0, [r4] bl RemoveWindow adds r0, r5, 0x1 lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0x2 bls _0811211E movs r0, 0 strh r0, [r6, 0x2] b _0811215C .align 2, 0 _08112148: .4byte gUnknown_203ADFE _0811214C: ldrh r1, [r6, 0x2] movs r2, 0x2 ldrsh r0, [r6, r2] cmp r0, 0x1F bgt _0811215C adds r0, r1, 0x1 strh r0, [r6, 0x2] b _081121B8 _0811215C: ldrh r0, [r6] adds r0, 0x1 strh r0, [r6] b _081121B8 _08112164: ldr r6, _081121C0 @ =gUnknown_203AE94 ldrb r1, [r6] movs r0, 0xC0 ands r0, r1 cmp r0, 0x40 bne _08112176 movs r0, 0x1 bl sub_8098110 _08112176: ldr r4, _081121C4 @ =gUnknown_203AE90 ldr r0, [r4] ldr r1, _081121C8 @ =gUnknown_20371F8 movs r2, 0x80 lsls r2, 2 bl CpuSet ldr r0, [r4] bl Free movs r4, 0 str r4, [r6] bl sub_80696C0 bl ScriptContext2_Disable ldr r2, _081121CC @ =gTextFlags ldrb r1, [r2] movs r0, 0x5 negs r0, r0 ands r0, r1 strb r0, [r2] ldr r0, _081121D0 @ =gUnknown_2036E28 strb r4, [r0] movs r0, 0 bl sub_8082740 ldr r1, _081121D4 @ =gUnknown_3005ECC movs r0, 0x1 strb r0, [r1] adds r0, r5, 0 bl DestroyTask _081121B8: add sp, 0x8 pop {r4-r6} pop {r0} bx r0 .align 2, 0 _081121C0: .4byte gUnknown_203AE94 _081121C4: .4byte gUnknown_203AE90 _081121C8: .4byte gUnknown_20371F8 _081121CC: .4byte gTextFlags _081121D0: .4byte gUnknown_2036E28 _081121D4: .4byte gUnknown_3005ECC thumb_func_end sub_81120AC thumb_func_start sub_81121D8 sub_81121D8: @ 81121D8 push {r4-r7,lr} sub sp, 0x8 lsls r0, 24 lsrs r0, 24 lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _0811227C @ =gUnknown_3005098 adds r7, r1, r0 ldrh r1, [r7, 0x2] movs r2, 0x2 ldrsh r0, [r7, r2] cmp r0, 0xF bgt _08112290 ldr r5, _08112280 @ =gUnknown_20371FA ldr r6, _08112284 @ =gUnknown_20375FA movs r4, 0xF subs r3, r4, r1 lsls r3, 24 lsrs r3, 24 adds r0, r5, 0 adds r1, r6, 0 movs r2, 0xDF bl sub_80716F8 movs r0, 0xFF lsls r0, 1 adds r5, r0 adds r6, r0 movs r2, 0x80 lsls r2, 1 ldrb r0, [r7, 0x2] subs r4, r0 lsls r4, 24 lsrs r4, 24 adds r0, r5, 0 adds r1, r6, 0 adds r3, r4, 0 bl sub_80716F8 ldr r5, _08112288 @ =gUnknown_203ADFE ldrb r0, [r5] ldr r4, _0811228C @ =gUnknown_845661C ldrb r3, [r4, 0x4] lsls r3, 3 subs r3, 0x1 ldrh r1, [r7, 0x2] subs r3, r1 lsls r3, 16 lsrs r3, 16 ldrb r1, [r4, 0x3] lsls r1, 3 str r1, [sp] movs r6, 0x1 str r6, [sp, 0x4] movs r1, 0 movs r2, 0 bl FillWindowPixelRect ldrb r0, [r5, 0x1] ldrh r3, [r7, 0x2] ldrb r1, [r4, 0xB] lsls r1, 3 str r1, [sp] str r6, [sp, 0x4] movs r1, 0 movs r2, 0 bl FillWindowPixelRect ldrb r0, [r5] movs r1, 0x2 bl CopyWindowToVram ldrb r0, [r5, 0x1] movs r1, 0x2 bl CopyWindowToVram ldrh r0, [r7, 0x2] adds r0, 0x1 strh r0, [r7, 0x2] movs r0, 0 b _08112292 .align 2, 0 _0811227C: .4byte gUnknown_3005098 _08112280: .4byte gUnknown_20371FA _08112284: .4byte gUnknown_20375FA _08112288: .4byte gUnknown_203ADFE _0811228C: .4byte gUnknown_845661C _08112290: movs r0, 0x1 _08112292: add sp, 0x8 pop {r4-r7} pop {r1} bx r1 thumb_func_end sub_81121D8 thumb_func_start sub_811229C sub_811229C: @ 811229C push {r4-r6,lr} movs r0, 0x80 lsls r0, 3 bl Alloc adds r6, r0, 0 ldr r4, _08112314 @ =gUnknown_203AE90 ldr r0, [r4] movs r5, 0x80 lsls r5, 2 adds r1, r6, 0 adds r2, r5, 0 bl CpuSet ldr r1, [r4] adds r0, r1, 0 movs r2, 0xD0 bl sub_807B0C4 ldr r1, [r4] movs r0, 0x88 lsls r0, 2 adds r1, r0 adds r0, r1, 0 movs r2, 0x10 bl sub_807B0C4 ldr r1, [r4] movs r0, 0xB0 lsls r0, 2 adds r1, r0 adds r0, r1, 0 movs r2, 0x40 bl sub_807B0C4 ldr r1, [r4] movs r0, 0xD8 lsls r0, 2 adds r1, r0 adds r0, r1, 0 movs r2, 0x50 bl sub_807B0C4 ldr r0, [r4] ldr r1, _08112318 @ =gUnknown_20371F8 adds r2, r5, 0 bl CpuSet ldr r1, [r4] adds r0, r6, 0 adds r2, r5, 0 bl CpuSet adds r0, r6, 0 bl Free pop {r4-r6} pop {r0} bx r0 .align 2, 0 _08112314: .4byte gUnknown_203AE90 _08112318: .4byte gUnknown_20371F8 thumb_func_end sub_811229C thumb_func_start sub_811231C sub_811231C: @ 811231C push {r4,lr} ldr r4, _0811234C @ =gUnknown_203ADFA ldrb r0, [r4] cmp r0, 0x1 bne _08112346 ldr r0, _08112350 @ =gUnknown_203AE98 bl sub_8110E68 bl sub_8110E3C movs r0, 0 strb r0, [r4] ldr r0, _08112354 @ =gUnknown_203AE8C movs r1, 0 str r1, [r0] ldr r0, _08112358 @ =gUnknown_203AE04 str r1, [r0] ldr r0, _0811235C @ =gUnknown_203AE08 str r1, [r0] ldr r0, _08112360 @ =gUnknown_3005E88 strb r1, [r0] _08112346: pop {r4} pop {r0} bx r0 .align 2, 0 _0811234C: .4byte gUnknown_203ADFA _08112350: .4byte gUnknown_203AE98 _08112354: .4byte gUnknown_203AE8C _08112358: .4byte gUnknown_203AE04 _0811235C: .4byte gUnknown_203AE08 _08112360: .4byte gUnknown_3005E88 thumb_func_end sub_811231C thumb_func_start sub_8112364 sub_8112364: @ 8112364 push {r4,r5,lr} ldr r5, _081123A4 @ =gUnknown_3005E88 ldrb r0, [r5] cmp r0, 0 beq _08112392 ldr r4, _081123A8 @ =gUnknown_203ADFA ldrb r0, [r4] cmp r0, 0x1 bne _08112392 ldr r0, _081123AC @ =gUnknown_203AE98 bl sub_8110E68 movs r0, 0x1 bl sub_8113A1C bl sub_8110E3C movs r0, 0 strb r0, [r5] strb r0, [r4] ldr r1, _081123B0 @ =gUnknown_203AE8C movs r0, 0 str r0, [r1] _08112392: ldr r0, _081123B4 @ =gUnknown_203AE04 movs r1, 0 str r1, [r0] ldr r0, _081123B8 @ =gUnknown_203AE08 str r1, [r0] pop {r4,r5} pop {r0} bx r0 .align 2, 0 _081123A4: .4byte gUnknown_3005E88 _081123A8: .4byte gUnknown_203ADFA _081123AC: .4byte gUnknown_203AE98 _081123B0: .4byte gUnknown_203AE8C _081123B4: .4byte gUnknown_203AE04 _081123B8: .4byte gUnknown_203AE08 thumb_func_end sub_8112364 thumb_func_start sub_81123BC sub_81123BC: @ 81123BC push {r4-r7,lr} mov r7, r8 push {r7} sub sp, 0x4 movs r0, 0xCD lsls r0, 5 bl AllocZeroed mov r8, r0 ldr r0, _08112448 @ =gUnknown_203ADF8 ldrb r4, [r0] movs r5, 0 movs r6, 0 _081123D6: cmp r4, 0x3 bls _081123DC movs r4, 0 _081123DC: ldr r3, _0811244C @ =gSaveBlock1Ptr ldr r0, [r3] movs r2, 0xCD lsls r2, 3 adds r1, r4, 0 muls r1, r2 adds r0, r1 movs r7, 0x98 lsls r7, 5 adds r1, r0, r7 ldrb r0, [r1] cmp r0, 0 beq _0811240A adds r0, r5, 0 muls r0, r2 add r0, r8 str r3, [sp] bl memcpy adds r0, r5, 0x1 lsls r0, 24 lsrs r5, r0, 24 ldr r3, [sp] _0811240A: adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 adds r0, r6, 0x1 lsls r0, 24 lsrs r6, r0, 24 cmp r6, 0x3 bls _081123D6 ldr r1, _08112448 @ =gUnknown_203ADF8 movs r0, 0x3 ands r5, r0 strb r5, [r1] ldr r1, [r3] movs r0, 0x98 lsls r0, 5 adds r1, r0 movs r2, 0xCD lsls r2, 4 mov r0, r8 bl CpuSet mov r0, r8 bl Free add sp, 0x4 pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112448: .4byte gUnknown_203ADF8 _0811244C: .4byte gSaveBlock1Ptr thumb_func_end sub_81123BC thumb_func_start sub_8112450 sub_8112450: @ 8112450 push {lr} bl sub_80BF708 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08112466 bl sub_8112364 bl sub_81123BC _08112466: pop {r0} bx r0 thumb_func_end sub_8112450 thumb_func_start sub_811246C sub_811246C: @ 811246C push {r4-r6,lr} adds r6, r0, 0 movs r0, 0x2E ldrsh r1, [r6, r0] lsls r0, r1, 3 adds r0, r1 lsls r0, 2 ldr r1, _081124B0 @ =gUnknown_2036E38 adds r4, r0, r1 ldrb r0, [r4, 0x8] cmp r0, 0xFF bne _081124B8 ldr r5, _081124B4 @ =gUnknown_203AF9A ldrb r0, [r5] cmp r0, 0xFF beq _08112498 adds r1, r0, 0 adds r0, r4, 0 bl sub_8063CA4 movs r0, 0xFF strb r0, [r5] _08112498: ldrb r0, [r5, 0x1] cmp r0, 0xFF beq _081124A6 bl sub_8150454 movs r0, 0xFF strb r0, [r5, 0x1] _081124A6: adds r0, r4, 0 adds r1, r6, 0 bl sub_8063E28 b _081124E0 .align 2, 0 _081124B0: .4byte gUnknown_2036E38 _081124B4: .4byte gUnknown_203AF9A _081124B8: ldr r5, _081124E8 @ =gUnknown_203AF9A ldrb r0, [r4, 0x8] lsls r0, 1 adds r1, r0, r5 ldrb r0, [r1] cmp r0, 0xFF beq _081124D8 adds r1, r0, 0 adds r0, r4, 0 bl sub_8063CA4 ldrb r0, [r4, 0x8] lsls r0, 1 adds r0, r5 movs r1, 0xFF strb r1, [r0] _081124D8: adds r0, r4, 0 adds r1, r6, 0 bl sub_8063E28 _081124E0: pop {r4-r6} pop {r0} bx r0 .align 2, 0 _081124E8: .4byte gUnknown_203AF9A thumb_func_end sub_811246C thumb_func_start sub_81124EC sub_81124EC: @ 81124EC push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} lsls r0, 24 lsrs r6, r0, 24 lsls r1, 24 lsrs r1, 24 mov r8, r1 lsls r2, 24 lsrs r2, 24 mov r9, r2 lsls r3, 24 lsrs r3, 24 mov r10, r3 bl sub_8112CEC lsls r0, 24 lsrs r7, r0, 24 cmp r7, 0 bne _0811256E ldr r2, _0811257C @ =gUnknown_203AF98 ldrh r0, [r2] ldr r3, _08112580 @ =gUnknown_3005E94 ldr r5, [r3] lsls r0, 3 adds r0, r5 ldr r1, _08112584 @ =gUnknown_203B01A mov r12, r1 ldrh r1, [r1] movs r4, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r5 strb r4, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r6, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r4, r8 strb r4, [r0, 0x1] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r1, r9 strb r1, [r0, 0x2] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r4, r10 strb r4, [r0, 0x3] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] mov r0, r12 strh r7, [r0] _0811256E: pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _0811257C: .4byte gUnknown_203AF98 _08112580: .4byte gUnknown_3005E94 _08112584: .4byte gUnknown_203B01A thumb_func_end sub_81124EC thumb_func_start sub_8112588 sub_8112588: @ 8112588 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} ldr r4, [sp, 0x20] lsls r0, 24 lsrs r7, r0, 24 lsls r1, 24 lsrs r6, r1, 24 lsls r2, 24 lsrs r2, 24 mov r8, r2 lsls r3, 24 lsrs r3, 24 mov r9, r3 lsls r4, 24 lsrs r4, 24 mov r10, r4 bl sub_8112D1C lsls r0, 24 cmp r0, 0 bne _0811260E ldr r2, _0811261C @ =gUnknown_203AF98 ldrh r0, [r2] ldr r3, _08112620 @ =gUnknown_3005E94 ldr r5, [r3] lsls r0, 3 adds r0, r5 ldr r1, _08112624 @ =gUnknown_203B01A mov r12, r1 ldrh r1, [r1] movs r4, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r5 strb r4, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r7, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r6, [r0, 0x1] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r4, r8 strb r4, [r0, 0x2] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r1, r9 strb r1, [r0, 0x3] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] mov r0, r10 mov r4, r12 strh r0, [r4] _0811260E: pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _0811261C: .4byte gUnknown_203AF98 _08112620: .4byte gUnknown_3005E94 _08112624: .4byte gUnknown_203B01A thumb_func_end sub_8112588 thumb_func_start sub_8112628 sub_8112628: @ 8112628 push {r4-r7,lr} mov r7, r8 push {r7} lsls r0, 24 lsrs r4, r0, 24 mov r8, r4 bl sub_8112CEC lsls r0, 24 lsrs r7, r0, 24 cmp r7, 0 bne _08112692 ldr r0, _0811269C @ =gUnknown_203B01C mov r12, r0 ldrh r0, [r0] ldr r6, _081126A0 @ =gUnknown_3005E94 ldr r5, [r6] lsls r0, 3 adds r0, r5 ldrb r0, [r0, 0x3] cmp r4, r0 bne _08112658 cmp r4, 0x3 bls _08112692 _08112658: ldr r2, _081126A4 @ =gUnknown_203AF98 ldrh r0, [r2] lsls r0, 3 adds r0, r5 ldr r4, _081126A8 @ =gUnknown_203B01A ldrh r1, [r4] movs r3, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r5 strb r3, [r0, 0x6] ldrh r0, [r2] ldr r1, [r6] lsls r0, 3 adds r0, r1 strb r3, [r0] ldrh r0, [r2] ldr r1, [r6] lsls r0, 3 adds r0, r1 mov r1, r8 strb r1, [r0, 0x3] ldrh r0, [r2] mov r1, r12 strh r0, [r1] adds r0, 0x1 strh r0, [r2] strh r7, [r4] _08112692: pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _0811269C: .4byte gUnknown_203B01C _081126A0: .4byte gUnknown_3005E94 _081126A4: .4byte gUnknown_203AF98 _081126A8: .4byte gUnknown_203B01A thumb_func_end sub_8112628 thumb_func_start sub_81126AC sub_81126AC: @ 81126AC push {r4-r7,lr} mov r7, r8 push {r7} lsls r0, 24 lsrs r7, r0, 24 lsls r1, 24 lsrs r1, 24 mov r8, r1 bl sub_8112D1C lsls r0, 24 cmp r0, 0 bne _08112704 ldr r2, _08112710 @ =gUnknown_203AF98 ldrh r0, [r2] ldr r3, _08112714 @ =gUnknown_3005E94 ldr r4, [r3] lsls r0, 3 adds r0, r4 ldr r6, _08112718 @ =gUnknown_203B01A ldrh r1, [r6] movs r5, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r4 strb r5, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r7, [r0, 0x3] ldr r1, _0811271C @ =gUnknown_203B01C ldrh r0, [r2] strh r0, [r1] adds r0, 0x1 strh r0, [r2] mov r0, r8 strh r0, [r6] _08112704: pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112710: .4byte gUnknown_203AF98 _08112714: .4byte gUnknown_3005E94 _08112718: .4byte gUnknown_203B01A _0811271C: .4byte gUnknown_203B01C thumb_func_end sub_81126AC thumb_func_start sub_8112720 sub_8112720: @ 8112720 push {r4-r7,lr} mov r7, r8 push {r7} lsls r0, 24 lsrs r0, 24 mov r8, r0 bl sub_8112D1C lsls r0, 24 lsrs r7, r0, 24 cmp r7, 0 bne _08112774 ldr r2, _08112780 @ =gUnknown_203AF98 ldrh r0, [r2] ldr r3, _08112784 @ =gUnknown_3005E94 ldr r4, [r3] lsls r0, 3 adds r0, r4 ldr r6, _08112788 @ =gUnknown_203B01A ldrh r1, [r6] movs r5, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r4 movs r1, 0x1 strb r1, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 mov r1, r8 strb r1, [r0, 0x3] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] strh r7, [r6] _08112774: pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112780: .4byte gUnknown_203AF98 _08112784: .4byte gUnknown_3005E94 _08112788: .4byte gUnknown_203B01A thumb_func_end sub_8112720 thumb_func_start sub_811278C sub_811278C: @ 811278C push {r4-r7,lr} mov r7, r8 push {r7} lsls r0, 24 lsrs r7, r0, 24 lsls r1, 24 lsrs r1, 24 mov r8, r1 bl sub_8112D1C lsls r0, 24 cmp r0, 0 bne _081127E2 ldr r2, _081127EC @ =gUnknown_203AF98 ldrh r0, [r2] ldr r3, _081127F0 @ =gUnknown_3005E94 ldr r4, [r3] lsls r0, 3 adds r0, r4 ldr r6, _081127F4 @ =gUnknown_203B01A ldrh r1, [r6] movs r5, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r4 movs r1, 0x1 strb r1, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r7, [r0, 0x3] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] mov r0, r8 strh r0, [r6] _081127E2: pop {r3} mov r8, r3 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _081127EC: .4byte gUnknown_203AF98 _081127F0: .4byte gUnknown_3005E94 _081127F4: .4byte gUnknown_203B01A thumb_func_end sub_811278C thumb_func_start sub_81127F8 sub_81127F8: @ 81127F8 push {r4-r6,lr} adds r2, r0, 0 ldr r5, _08112874 @ =gUnknown_203AF98 ldr r1, _08112878 @ =gUnknown_3005E8C ldrh r0, [r5] ldrh r1, [r1] cmp r0, r1 bcs _0811286C ldr r2, [r2] ldr r0, _0811287C @ =0x00ff00f3 ands r2, r0 ldrh r1, [r5] ldr r3, _08112880 @ =gUnknown_3005E94 ldr r4, [r3] lsls r1, 3 adds r1, r4 ldr r6, _08112884 @ =gUnknown_203B01A ldrh r0, [r6] strh r0, [r1, 0x4] ldrh r0, [r5] lsls r0, 3 adds r0, r4 movs r1, 0x2 strb r1, [r0, 0x6] ldrh r0, [r5] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r2, [r0] ldrh r0, [r5] ldr r1, [r3] lsls r0, 3 adds r0, r1 lsrs r1, r2, 8 strb r1, [r0, 0x1] ldrh r0, [r5] ldr r1, [r3] lsls r0, 3 adds r0, r1 lsrs r1, r2, 16 strb r1, [r0, 0x2] ldrh r0, [r5] ldr r1, [r3] lsls r0, 3 adds r0, r1 lsrs r2, 24 strb r2, [r0, 0x3] ldrh r0, [r5] adds r0, 0x1 strh r0, [r5] bl ScriptContext2_IsEnabled lsls r0, 24 lsrs r0, 24 cmp r0, 0 beq _0811286A movs r0, 0x1 _0811286A: strh r0, [r6] _0811286C: pop {r4-r6} pop {r0} bx r0 .align 2, 0 _08112874: .4byte gUnknown_203AF98 _08112878: .4byte gUnknown_3005E8C _0811287C: .4byte 0x00ff00f3 _08112880: .4byte gUnknown_3005E94 _08112884: .4byte gUnknown_203B01A thumb_func_end sub_81127F8 thumb_func_start sub_8112888 sub_8112888: @ 8112888 push {lr} lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08112898 cmp r0, 0x2 beq _081128A8 b _081128B4 _08112898: ldr r1, _081128A4 @ =gUnknown_3005E88 ldrb r0, [r1] cmp r0, 0x1 bne _081128B4 movs r0, 0x3 b _081128B2 .align 2, 0 _081128A4: .4byte gUnknown_3005E88 _081128A8: ldr r1, _081128B8 @ =gUnknown_3005E88 ldrb r0, [r1] cmp r0, 0x3 bne _081128B4 movs r0, 0x1 _081128B2: strb r0, [r1] _081128B4: pop {r0} bx r0 .align 2, 0 _081128B8: .4byte gUnknown_3005E88 thumb_func_end sub_8112888 thumb_func_start sub_81128BC sub_81128BC: @ 81128BC push {r4,r5,lr} lsls r0, 24 lsrs r4, r0, 24 bl sub_8112CAC lsls r0, 24 lsrs r1, r0, 24 cmp r4, 0x1 beq _081128D4 cmp r4, 0x2 beq _08112928 b _08112934 _081128D4: cmp r1, 0x1 bne _081128E4 ldr r1, _081128E0 @ =gUnknown_3005E88 movs r0, 0x3 strb r0, [r1] b _08112934 .align 2, 0 _081128E0: .4byte gUnknown_3005E88 _081128E4: cmp r1, 0x2 bne _08112934 ldr r2, _08112918 @ =gUnknown_203AF98 ldrh r1, [r2] ldr r0, _0811291C @ =gUnknown_3005E94 ldr r3, [r0] lsls r1, 3 adds r1, r3 ldr r4, _08112920 @ =gUnknown_203B01A ldrh r0, [r4] movs r5, 0 strh r0, [r1, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r3 movs r1, 0x3 strb r1, [r0, 0x6] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] strh r5, [r4] ldr r1, _08112924 @ =gUnknown_3005E88 movs r0, 0x4 strb r0, [r1] b _08112934 .align 2, 0 _08112918: .4byte gUnknown_203AF98 _0811291C: .4byte gUnknown_3005E94 _08112920: .4byte gUnknown_203B01A _08112924: .4byte gUnknown_3005E88 _08112928: cmp r1, 0x1 beq _08112930 cmp r1, 0x2 bne _08112934 _08112930: ldr r0, _0811293C @ =gUnknown_3005E88 strb r1, [r0] _08112934: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _0811293C: .4byte gUnknown_3005E88 thumb_func_end sub_81128BC thumb_func_start sub_8112940 sub_8112940: @ 8112940 push {r4-r7,lr} mov r7, r9 mov r6, r8 push {r6,r7} adds r3, r1, 0 lsls r0, 24 lsrs r0, 24 lsls r4, r2, 16 cmp r0, 0x1 beq _08112964 cmp r0, 0x2 beq _081129E0 ldr r1, _08112960 @ =gUnknown_3005E88 movs r0, 0 strb r0, [r1] b _08112B20 .align 2, 0 _08112960: .4byte gUnknown_3005E88 _08112964: ldr r2, _081129C0 @ =gUnknown_3005E94 str r3, [r2] ldr r1, _081129C4 @ =gUnknown_3005E8C lsrs r0, r4, 19 strh r0, [r1] ldr r0, _081129C8 @ =gUnknown_3005E88 mov r9, r0 adds r1, r2, 0 ldr r6, _081129CC @ =gUnknown_203AF9A ldr r2, _081129D0 @ =gUnknown_203AF98 ldr r7, _081129D4 @ =gUnknown_203B01C ldr r0, _081129D8 @ =gUnknown_3005E90 mov r12, r0 ldr r0, _081129DC @ =gUnknown_203B01A mov r8, r0 movs r5, 0xFF adds r3, r6, 0 movs r4, 0x3F _08112988: ldrb r0, [r3] orrs r0, r5 strb r0, [r3] ldrb r0, [r3, 0x1] orrs r0, r5 strb r0, [r3, 0x1] adds r3, 0x2 subs r4, 0x1 cmp r4, 0 bge _08112988 movs r0, 0 strh r0, [r2] strh r0, [r7] movs r0, 0 mov r2, r12 str r0, [r2] ldr r1, [r1] ldrh r0, [r1, 0x4] mov r2, r8 strh r0, [r2] ldrb r0, [r1, 0x3] strb r0, [r6] movs r0, 0xFF strb r0, [r6, 0x1] movs r0, 0x1 mov r1, r9 strb r0, [r1] b _08112B20 .align 2, 0 _081129C0: .4byte gUnknown_3005E94 _081129C4: .4byte gUnknown_3005E8C _081129C8: .4byte gUnknown_3005E88 _081129CC: .4byte gUnknown_203AF9A _081129D0: .4byte gUnknown_203AF98 _081129D4: .4byte gUnknown_203B01C _081129D8: .4byte gUnknown_3005E90 _081129DC: .4byte gUnknown_203B01A _081129E0: ldr r1, _08112A44 @ =gUnknown_3005E94 str r3, [r1] ldr r5, _08112A48 @ =gUnknown_3005E8C lsrs r0, r4, 19 strh r0, [r5] movs r4, 0 ldr r2, _08112A4C @ =gUnknown_203B01A mov r8, r2 cmp r4, r0 bge _08112A0E adds r6, r1, 0 ldr r0, _08112A50 @ =gUnknown_845669C ldr r2, [r0] ldr r3, [r0, 0x4] _081129FC: ldr r1, [r6] lsls r0, r4, 3 adds r0, r1 str r2, [r0] str r3, [r0, 0x4] adds r4, 0x1 ldrh r0, [r5] cmp r4, r0 blt _081129FC _08112A0E: ldr r4, _08112A54 @ =gUnknown_203AF98 movs r2, 0 strh r2, [r4] mov r1, r8 strh r2, [r1] movs r1, 0 ldr r3, _08112A44 @ =gUnknown_3005E94 ldr r0, [r3] strh r1, [r0, 0x4] strb r2, [r0, 0x6] ldrh r0, [r4] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r2, [r0] bl player_get_direction_lower_nybble lsls r0, 24 lsrs r0, 24 cmp r0, 0x4 bhi _08112AC8 lsls r0, 2 ldr r1, _08112A58 @ =_08112A5C adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _08112A44: .4byte gUnknown_3005E94 _08112A48: .4byte gUnknown_3005E8C _08112A4C: .4byte gUnknown_203B01A _08112A50: .4byte gUnknown_845669C _08112A54: .4byte gUnknown_203AF98 _08112A58: .4byte _08112A5C .align 2, 0 _08112A5C: .4byte _08112A70 .4byte _08112A70 .4byte _08112AA0 .4byte _08112AB8 .4byte _08112A88 _08112A70: ldr r0, _08112A80 @ =gUnknown_203AF98 ldrh r0, [r0] ldr r1, _08112A84 @ =gUnknown_3005E94 ldr r1, [r1] lsls r0, 3 adds r0, r1 movs r1, 0 b _08112AC6 .align 2, 0 _08112A80: .4byte gUnknown_203AF98 _08112A84: .4byte gUnknown_3005E94 _08112A88: ldr r0, _08112A98 @ =gUnknown_203AF98 ldrh r0, [r0] ldr r1, _08112A9C @ =gUnknown_3005E94 ldr r1, [r1] lsls r0, 3 adds r0, r1 movs r1, 0x3 b _08112AC6 .align 2, 0 _08112A98: .4byte gUnknown_203AF98 _08112A9C: .4byte gUnknown_3005E94 _08112AA0: ldr r0, _08112AB0 @ =gUnknown_203AF98 ldrh r0, [r0] ldr r1, _08112AB4 @ =gUnknown_3005E94 ldr r1, [r1] lsls r0, 3 adds r0, r1 movs r1, 0x1 b _08112AC6 .align 2, 0 _08112AB0: .4byte gUnknown_203AF98 _08112AB4: .4byte gUnknown_3005E94 _08112AB8: ldr r0, _08112B2C @ =gUnknown_203AF98 ldrh r0, [r0] ldr r1, _08112B30 @ =gUnknown_3005E94 ldr r1, [r1] lsls r0, 3 adds r0, r1 movs r1, 0x2 _08112AC6: strb r1, [r0, 0x3] _08112AC8: ldr r0, _08112B34 @ =gUnknown_203B01C movs r5, 0 strh r5, [r0] ldr r2, _08112B2C @ =gUnknown_203AF98 ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] ldrh r0, [r2] ldr r3, _08112B30 @ =gUnknown_3005E94 ldr r4, [r3] lsls r0, 3 adds r0, r4 movs r1, 0 strh r1, [r0, 0x4] ldrh r0, [r2] lsls r0, 3 adds r0, r4 movs r4, 0x2 strb r4, [r0, 0x6] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0, 0x1] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0, 0x2] ldrh r0, [r2] ldr r1, [r3] lsls r0, 3 adds r0, r1 strb r5, [r0, 0x3] ldrh r0, [r2] adds r0, 0x1 strh r0, [r2] ldr r0, _08112B38 @ =gUnknown_3005E88 strb r4, [r0] _08112B20: pop {r3,r4} mov r8, r3 mov r9, r4 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112B2C: .4byte gUnknown_203AF98 _08112B30: .4byte gUnknown_3005E94 _08112B34: .4byte gUnknown_203B01C _08112B38: .4byte gUnknown_3005E88 thumb_func_end sub_8112940 thumb_func_start sub_8112B3C sub_8112B3C: @ 8112B3C push {r4-r7,lr} ldr r0, _08112B54 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0x4 bls _08112B48 b _08112C84 _08112B48: lsls r0, 2 ldr r1, _08112B58 @ =_08112B5C adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _08112B54: .4byte gUnknown_3005E88 _08112B58: .4byte _08112B5C .align 2, 0 _08112B5C: .4byte _08112C84 .4byte _08112B70 .4byte _08112C5E .4byte _08112C84 .4byte _08112C84 _08112B70: bl sub_8112CEC lsls r0, 24 cmp r0, 0 beq _08112B7C b _08112C72 _08112B7C: ldr r0, _08112B8C @ =gUnknown_203B01A ldrh r1, [r0] adds r7, r0, 0 cmp r1, 0 beq _08112B90 subs r0, r1, 0x1 strh r0, [r7] b _08112C84 .align 2, 0 _08112B8C: .4byte gUnknown_203B01A _08112B90: ldr r5, _08112B98 @ =gUnknown_3005E88 ldr r4, _08112B9C @ =gUnknown_203AF98 ldr r6, _08112BA0 @ =gUnknown_3005E94 b _08112BD4 .align 2, 0 _08112B98: .4byte gUnknown_3005E88 _08112B9C: .4byte gUnknown_203AF98 _08112BA0: .4byte gUnknown_3005E94 _08112BA4: ldrh r0, [r4] adds r0, 0x1 strh r0, [r4] ldr r1, _08112BF0 @ =gUnknown_3005E8C lsls r0, 16 lsrs r0, 16 ldrh r1, [r1] cmp r0, r1 bcs _08112C58 ldrh r0, [r4] ldr r1, [r6] lsls r0, 3 adds r0, r1 ldrh r0, [r0, 0x4] strh r0, [r7] cmp r2, 0x3 beq _08112C84 lsls r0, 16 lsrs r1, r0, 16 cmp r1, 0 beq _08112BD4 ldr r0, _08112BF4 @ =0x0000ffff cmp r1, r0 bne _08112C84 _08112BD4: ldrh r0, [r4] ldr r1, [r6] lsls r0, 3 adds r3, r0, r1 ldrb r0, [r3, 0x6] cmp r0, 0x2 beq _08112C2C cmp r0, 0x2 bgt _08112BF8 cmp r0, 0 beq _08112C0C cmp r0, 0x1 beq _08112C18 b _08112C50 .align 2, 0 _08112BF0: .4byte gUnknown_3005E8C _08112BF4: .4byte 0x0000ffff _08112BF8: cmp r0, 0xFE beq _08112C50 cmp r0, 0xFE bgt _08112C06 cmp r0, 0x3 beq _08112C4E b _08112C50 _08112C06: cmp r0, 0xFF beq _08112C4C b _08112C50 _08112C0C: ldr r0, _08112C14 @ =gUnknown_203AF9A ldrb r1, [r3] lsls r1, 1 b _08112C20 .align 2, 0 _08112C14: .4byte gUnknown_203AF9A _08112C18: ldr r0, _08112C28 @ =gUnknown_203AF9A ldrb r1, [r3] lsls r1, 1 adds r0, 0x1 _08112C20: adds r1, r0 ldrb r0, [r3, 0x3] strb r0, [r1] b _08112C50 .align 2, 0 _08112C28: .4byte gUnknown_203AF9A _08112C2C: ldr r2, _08112C48 @ =gUnknown_3005E90 ldrb r1, [r3, 0x3] lsls r1, 24 ldrb r0, [r3, 0x2] lsls r0, 16 orrs r1, r0 ldrb r0, [r3, 0x1] lsls r0, 8 orrs r1, r0 ldrb r0, [r3] orrs r1, r0 str r1, [r2] b _08112C50 .align 2, 0 _08112C48: .4byte gUnknown_3005E90 _08112C4C: movs r0, 0 _08112C4E: strb r0, [r5] _08112C50: ldrb r2, [r5] cmp r2, 0 bne _08112BA4 b _08112C84 _08112C58: movs r0, 0 strb r0, [r5] b _08112C84 _08112C5E: bl ScriptContext2_IsEnabled lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08112C84 ldr r1, _08112C8C @ =gUnknown_203B01A ldrh r0, [r1] adds r0, 0x1 strh r0, [r1] _08112C72: ldr r0, _08112C90 @ =gUnknown_203AF98 ldr r1, _08112C94 @ =gUnknown_3005E8C ldrh r0, [r0] ldrh r1, [r1] cmp r0, r1 bcc _08112C84 ldr r1, _08112C98 @ =gUnknown_3005E88 movs r0, 0 strb r0, [r1] _08112C84: pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112C8C: .4byte gUnknown_203B01A _08112C90: .4byte gUnknown_203AF98 _08112C94: .4byte gUnknown_3005E8C _08112C98: .4byte gUnknown_3005E88 thumb_func_end sub_8112B3C thumb_func_start sub_8112C9C sub_8112C9C: @ 8112C9C ldr r1, _08112CA8 @ =gUnknown_203B01A ldrh r0, [r1] adds r0, 0x1 strh r0, [r1] bx lr .align 2, 0 _08112CA8: .4byte gUnknown_203B01A thumb_func_end sub_8112C9C thumb_func_start sub_8112CAC sub_8112CAC: @ 8112CAC push {lr} ldr r0, _08112CC0 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0x4 bhi _08112CDC lsls r0, 2 ldr r1, _08112CC4 @ =_08112CC8 adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _08112CC0: .4byte gUnknown_3005E88 _08112CC4: .4byte _08112CC8 .align 2, 0 _08112CC8: .4byte _08112CDC .4byte _08112CE0 .4byte _08112CE4 .4byte _08112CE0 .4byte _08112CE4 _08112CDC: movs r0, 0 b _08112CE6 _08112CE0: movs r0, 0x1 b _08112CE6 _08112CE4: movs r0, 0x2 _08112CE6: pop {r1} bx r1 thumb_func_end sub_8112CAC thumb_func_start sub_8112CEC sub_8112CEC: @ 8112CEC push {lr} ldr r0, _08112D0C @ =gUnknown_203AF98 ldr r1, _08112D10 @ =gUnknown_3005E8C ldrh r0, [r0] ldrh r1, [r1] cmp r0, r1 bcs _08112D06 bl ScriptContext2_IsEnabled lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08112D14 _08112D06: movs r0, 0x1 b _08112D16 .align 2, 0 _08112D0C: .4byte gUnknown_203AF98 _08112D10: .4byte gUnknown_3005E8C _08112D14: movs r0, 0 _08112D16: pop {r1} bx r1 thumb_func_end sub_8112CEC thumb_func_start sub_8112D1C sub_8112D1C: @ 8112D1C push {lr} ldr r0, _08112D30 @ =gUnknown_203AF98 ldr r1, _08112D34 @ =gUnknown_3005E8C ldrh r0, [r0] ldrh r1, [r1] cmp r0, r1 bcs _08112D38 movs r0, 0 b _08112D3A .align 2, 0 _08112D30: .4byte gUnknown_203AF98 _08112D34: .4byte gUnknown_3005E8C _08112D38: movs r0, 0x1 _08112D3A: pop {r1} bx r1 thumb_func_end sub_8112D1C thumb_func_start sub_8112D40 sub_8112D40: @ 8112D40 push {r4-r6,lr} lsls r0, 24 lsrs r6, r0, 24 lsls r1, 16 lsrs r5, r1, 16 ldr r0, _08112D6C @ =gUnknown_203AF98 ldrh r1, [r0] cmp r1, 0 beq _08112D66 ldr r0, _08112D70 @ =gUnknown_3005E8C ldrh r0, [r0] cmp r1, r0 bcs _08112D66 ldr r4, _08112D74 @ =gUnknown_203B01E ldr r1, _08112D78 @ =gUnknown_3002020 ldrh r0, [r4] ldrh r1, [r1] cmp r0, r1 bcc _08112D7C _08112D66: movs r0, 0 b _08112DA8 .align 2, 0 _08112D6C: .4byte gUnknown_203AF98 _08112D70: .4byte gUnknown_3005E8C _08112D74: .4byte gUnknown_203B01E _08112D78: .4byte gUnknown_3002020 _08112D7C: ldrh r3, [r4] ldr r0, _08112DA0 @ =gUnknown_300201C ldr r1, [r0] lsls r0, r3, 2 adds r2, r0, r1 ldr r1, [r2] lsls r0, r1, 17 lsrs r0, 17 cmp r0, r5 bne _08112DA4 lsls r0, r1, 16 lsrs r0, 31 cmp r0, r6 bne _08112DA4 adds r1, r2, 0x2 adds r0, r3, 0x1 strh r0, [r4] b _08112DA6 .align 2, 0 _08112DA0: .4byte gUnknown_300201C _08112DA4: movs r1, 0 _08112DA6: adds r0, r1, 0 _08112DA8: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_8112D40 thumb_func_start sub_8112DB0 sub_8112DB0: @ 8112DB0 push {r4-r7,lr} lsls r0, 24 lsrs r7, r0, 24 lsls r1, 16 lsrs r3, r1, 16 lsls r2, 16 lsrs r2, 16 mov r12, r2 ldr r0, _08112E20 @ =gUnknown_203AF98 ldrh r1, [r0] cmp r1, 0 beq _08112E18 ldr r0, _08112E24 @ =gUnknown_3005E8C ldrh r0, [r0] cmp r1, r0 bcs _08112E18 ldr r6, _08112E28 @ =gUnknown_203B01E ldr r1, _08112E2C @ =gUnknown_3002020 ldrh r0, [r6] ldrh r1, [r1] cmp r0, r1 bcs _08112E18 adds r2, r0, 0 ldr r5, _08112E30 @ =gUnknown_300201C ldr r4, [r5] lsls r2, 2 adds r2, r4 ldr r1, _08112E34 @ =0x00007fff ands r1, r3 ldrh r3, [r2] ldr r0, _08112E38 @ =0xffff8000 ands r0, r3 orrs r0, r1 strh r0, [r2] ldrh r1, [r6] lsls r1, 2 adds r1, r4 lsls r3, r7, 7 ldrb r2, [r1, 0x1] movs r0, 0x7F ands r0, r2 orrs r0, r3 strb r0, [r1, 0x1] ldrh r0, [r6] ldr r1, [r5] lsls r0, 2 adds r0, r1 mov r1, r12 strh r1, [r0, 0x2] ldrh r0, [r6] adds r0, 0x1 strh r0, [r6] _08112E18: pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112E20: .4byte gUnknown_203AF98 _08112E24: .4byte gUnknown_3005E8C _08112E28: .4byte gUnknown_203B01E _08112E2C: .4byte gUnknown_3002020 _08112E30: .4byte gUnknown_300201C _08112E34: .4byte 0x00007fff _08112E38: .4byte 0xffff8000 thumb_func_end sub_8112DB0 thumb_func_start sub_8112E3C sub_8112E3C: @ 8112E3C push {r4,r5,lr} lsls r0, 24 lsls r2, 16 lsrs r3, r0, 24 movs r4, 0xFF lsls r4, 24 adds r0, r4 lsrs r0, 24 cmp r0, 0x1 bls _08112E5C ldr r1, _08112E58 @ =gUnknown_3005E88 movs r0, 0 strb r0, [r1] b _08112E8E .align 2, 0 _08112E58: .4byte gUnknown_3005E88 _08112E5C: ldr r5, _08112E94 @ =gUnknown_300201C str r1, [r5] ldr r1, _08112E98 @ =gUnknown_3002020 lsrs r0, r2, 18 strh r0, [r1] ldr r1, _08112E9C @ =gUnknown_203B01E movs r0, 0 strh r0, [r1] cmp r3, 0x2 bne _08112E8E movs r2, 0 ldr r4, _08112EA0 @ =gUnknown_3005E8C ldrh r0, [r4] cmp r2, r0 bge _08112E8E ldr r0, _08112EA4 @ =gUnknown_84566A4 ldr r3, [r0] _08112E7E: ldr r1, [r5] lsls r0, r2, 2 adds r0, r1 str r3, [r0] adds r2, 0x1 ldrh r0, [r4] cmp r2, r0 blt _08112E7E _08112E8E: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08112E94: .4byte gUnknown_300201C _08112E98: .4byte gUnknown_3002020 _08112E9C: .4byte gUnknown_203B01E _08112EA0: .4byte gUnknown_3005E8C _08112EA4: .4byte gUnknown_84566A4 thumb_func_end sub_8112E3C thumb_func_start sub_8112EA8 sub_8112EA8: @ 8112EA8 ldr r1, _08112EB0 @ =gUnknown_203B020 movs r0, 0xFF strb r0, [r1] bx lr .align 2, 0 _08112EB0: .4byte gUnknown_203B020 thumb_func_end sub_8112EA8 thumb_func_start sub_8112EB4 sub_8112EB4: @ 8112EB4 push {r4,lr} ldr r4, _08112ED4 @ =gUnknown_203B020 ldrb r0, [r4] cmp r0, 0xFF bne _08112ECC ldr r0, _08112ED8 @ =gUnknown_8456928 bl AddWindow strb r0, [r4] ldrb r0, [r4] bl PutWindowTilemap _08112ECC: ldrb r0, [r4] pop {r4} pop {r1} bx r1 .align 2, 0 _08112ED4: .4byte gUnknown_203B020 _08112ED8: .4byte gUnknown_8456928 thumb_func_end sub_8112EB4 thumb_func_start sub_8112EDC sub_8112EDC: @ 8112EDC push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 ldr r4, _08112F14 @ =gUnknown_203B020 ldrb r0, [r4] cmp r0, 0xFF beq _08112F0C movs r1, 0 bl FillWindowPixelBuffer ldrb r0, [r4] bl ClearWindowTilemap cmp r5, 0 beq _08112F02 ldrb r0, [r4] adds r1, r5, 0 bl CopyWindowToVram _08112F02: ldrb r0, [r4] bl RemoveWindow movs r0, 0xFF strb r0, [r4] _08112F0C: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08112F14: .4byte gUnknown_203B020 thumb_func_end sub_8112EDC thumb_func_start sub_8112F18 sub_8112F18: @ 8112F18 push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} sub sp, 0x8 lsls r0, 24 lsrs r0, 24 mov r10, r0 movs r1, 0x3 bl GetWindowAttribute lsls r0, 24 lsrs r6, r0, 24 mov r0, r10 movs r1, 0x4 bl GetWindowAttribute lsls r0, 24 lsrs r7, r0, 24 lsls r0, r7, 5 muls r0, r6 bl Alloc mov r8, r0 cmp r0, 0 beq _08112FB8 movs r5, 0 adds r0, r6, 0 muls r0, r7 str r0, [sp] cmp r5, r7 bcs _08112FA2 _08112F5A: movs r4, 0 adds r1, r5, 0x1 mov r9, r1 cmp r4, r6 bcs _08112F98 subs r3, r7, 0x1 _08112F66: movs r0, 0 cmp r5, 0 beq _08112F74 movs r0, 0x5 cmp r5, r3 bne _08112F74 movs r0, 0xE _08112F74: lsls r0, 5 ldr r1, _08112FC8 @ =gUnknown_84566A8 adds r0, r1, r0 adds r1, r5, 0 muls r1, r6 adds r1, r4 lsls r1, 5 add r1, r8 ldr r2, _08112FCC @ =0x04000008 str r3, [sp, 0x4] bl CpuSet adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 ldr r3, [sp, 0x4] cmp r4, r6 bcc _08112F66 _08112F98: mov r1, r9 lsls r0, r1, 24 lsrs r5, r0, 24 cmp r5, r7 bcc _08112F5A _08112FA2: ldr r0, [sp] lsls r2, r0, 21 lsrs r2, 16 mov r0, r10 mov r1, r8 movs r3, 0 bl CopyToWindowPixelBuffer mov r0, r8 bl Free _08112FB8: add sp, 0x8 pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .align 2, 0 _08112FC8: .4byte gUnknown_84566A8 _08112FCC: .4byte 0x04000008 thumb_func_end sub_8112F18 thumb_func_start sub_8112FD0 sub_8112FD0: @ 8112FD0 push {lr} ldr r0, _08112FE0 @ =gUnknown_203B020 ldrb r0, [r0] bl sub_8112F18 pop {r0} bx r0 .align 2, 0 _08112FE0: .4byte gUnknown_203B020 thumb_func_end sub_8112FD0 thumb_func_start sub_8112FE4 sub_8112FE4: @ 8112FE4 push {lr} sub sp, 0x14 adds r2, r0, 0 ldr r0, _08113010 @ =gUnknown_203B020 ldrb r0, [r0] movs r1, 0x1 str r1, [sp] str r1, [sp, 0x4] ldr r1, _08113014 @ =gUnknown_8456930 str r1, [sp, 0x8] movs r1, 0x1 negs r1, r1 str r1, [sp, 0xC] str r2, [sp, 0x10] movs r1, 0x2 movs r2, 0x2 movs r3, 0x5 bl AddTextPrinterParametrized2 add sp, 0x14 pop {r0} bx r0 .align 2, 0 _08113010: .4byte gUnknown_203B020 _08113014: .4byte gUnknown_8456930 thumb_func_end sub_8112FE4 thumb_func_start sub_8113018 sub_8113018: @ 8113018 push {r4,r5,lr} adds r4, r0, 0 lsls r1, 24 lsrs r5, r1, 24 bl sub_8112FD0 adds r0, r4, 0 bl sub_8112FE4 cmp r5, 0 beq _08113038 ldr r0, _08113040 @ =gUnknown_203B020 ldrb r0, [r0] adds r1, r5, 0 bl CopyWindowToVram _08113038: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08113040: .4byte gUnknown_203B020 thumb_func_end sub_8113018 thumb_func_start sub_8113044 sub_8113044: @ 8113044 push {lr} ldr r0, _0811305C @ =0x00004038 movs r1, 0 bl VarSet ldr r0, _08113060 @ =0x00004039 movs r1, 0 bl VarSet pop {r0} bx r0 .align 2, 0 _0811305C: .4byte 0x00004038 _08113060: .4byte 0x00004039 thumb_func_end sub_8113044 thumb_func_start sub_8113064 sub_8113064: @ 8113064 push {lr} ldr r0, _08113074 @ =0x00004038 bl sub_806E454 bl sub_8113078 pop {r0} bx r0 .align 2, 0 _08113074: .4byte 0x00004038 thumb_func_end sub_8113064 thumb_func_start sub_8113078 sub_8113078: @ 8113078 push {r4,lr} adds r4, r0, 0 bl sub_8113508 lsls r0, 24 cmp r0, 0 beq _08113098 adds r0, r4, 0 bl sub_81132E0 ldr r0, _081130A0 @ =0x00004039 ldr r1, _081130A4 @ =gSaveBlock2Ptr ldr r1, [r1] ldrh r1, [r1, 0xE] bl VarSet _08113098: pop {r4} pop {r0} bx r0 .align 2, 0 _081130A0: .4byte 0x00004039 _081130A4: .4byte gSaveBlock2Ptr thumb_func_end sub_8113078 thumb_func_start sub_81130A8 sub_81130A8: @ 81130A8 push {lr} ldr r0, _081130B8 @ =0x00004038 bl sub_806E454 bl sub_81130BC pop {r0} bx r0 .align 2, 0 _081130B8: .4byte 0x00004038 thumb_func_end sub_81130A8 thumb_func_start sub_81130BC sub_81130BC: @ 81130BC push {r4,lr} adds r4, r0, 0 ldrb r1, [r4] movs r0, 0x80 ands r0, r1 cmp r0, 0 bne _08113102 adds r0, r4, 0 bl sub_8113524 adds r0, r4, 0 bl sub_8113390 ldr r0, _08113108 @ =0x00004039 ldr r1, _0811310C @ =gSaveBlock2Ptr ldr r1, [r1] ldrh r1, [r1, 0xE] bl VarSet movs r0, 0x6C bl FlagClear movs r0, 0x6D bl FlagClear movs r0, 0x6E bl FlagClear movs r0, 0x6F bl FlagClear ldr r0, _08113110 @ =0x00004073 movs r1, 0x1 bl VarSet _08113102: pop {r4} pop {r0} bx r0 .align 2, 0 _08113108: .4byte 0x00004039 _0811310C: .4byte gSaveBlock2Ptr _08113110: .4byte 0x00004073 thumb_func_end sub_81130BC thumb_func_start sub_8113114 sub_8113114: @ 8113114 push {r4,r5,lr} adds r4, r0, 0 lsls r1, 24 lsrs r5, r1, 24 ldr r0, _0811315C @ =0x00004073 bl VarGet lsls r0, 16 lsrs r0, 16 cmp r0, 0x2 bne _08113188 ldr r0, [r4] lsls r2, r0, 25 lsrs r1, r2, 25 ldr r0, _08113160 @ =gUnknown_8456934 adds r0, r5, r0 ldrb r0, [r0] adds r1, r0 cmp r1, 0x13 ble _08113174 adds r0, r4, 0 bl sub_81132A0 lsls r0, 16 lsrs r0, 16 cmp r0, 0x2 bhi _08113164 adds r0, r4, 0 bl sub_8113194 ldrb r1, [r4] movs r0, 0x80 negs r0, r0 ands r0, r1 b _08113186 .align 2, 0 _0811315C: .4byte 0x00004073 _08113160: .4byte gUnknown_8456934 _08113164: ldrb r0, [r4] movs r1, 0x80 negs r1, r1 ands r1, r0 movs r0, 0x14 orrs r1, r0 strb r1, [r4] b _08113188 _08113174: lsrs r1, r2, 25 adds r1, r0 movs r0, 0x7F ands r1, r0 ldrb r2, [r4] movs r0, 0x80 negs r0, r0 ands r0, r2 orrs r0, r1 _08113186: strb r0, [r4] _08113188: ldr r0, [r4] lsls r0, 25 lsrs r0, 25 pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113114 thumb_func_start sub_8113194 sub_8113194: @ 8113194 push {r4-r7,lr} mov r7, r8 push {r7} adds r5, r0, 0 movs r0, 0 mov r8, r0 movs r6, 0 movs r7, 0x1 _081131A4: ldrb r1, [r5, 0x1] ldr r0, _081131D0 @ =gUnknown_8456938 adds r0, r6, r0 ldrb r4, [r0] asrs r1, r4 ands r1, r7 cmp r1, 0 bne _081131D4 mov r8, r6 bl Random adds r1, r7, 0 ands r1, r0 cmp r1, 0 beq _081131D4 adds r0, r7, 0 lsls r0, r4 ldrb r1, [r5, 0x1] orrs r0, r1 strb r0, [r5, 0x1] adds r0, r4, 0 b _081131EE .align 2, 0 _081131D0: .4byte gUnknown_8456938 _081131D4: adds r0, r6, 0x1 lsls r0, 24 lsrs r6, r0, 24 cmp r6, 0x7 bls _081131A4 ldr r0, _081131F8 @ =gUnknown_8456938 add r0, r8 ldrb r0, [r0] movs r1, 0x1 lsls r1, r0 ldrb r2, [r5, 0x1] orrs r1, r2 strb r1, [r5, 0x1] _081131EE: pop {r3} mov r8, r3 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _081131F8: .4byte gUnknown_8456938 thumb_func_end sub_8113194 thumb_func_start sub_81131FC sub_81131FC: @ 81131FC push {r4-r7,lr} mov r7, r8 push {r7} sub sp, 0x4 adds r7, r0, 0 movs r0, 0 mov r8, r0 adds r0, r7, 0 bl sub_81132A0 lsls r0, 16 lsrs r0, 16 cmp r0, 0x1 bne _08113228 movs r0, 0 b _08113276 _0811321C: lsls r4, r6 ldrb r0, [r7, 0x1] eors r4, r0 strb r4, [r7, 0x1] adds r0, r6, 0 b _08113276 _08113228: movs r5, 0 movs r4, 0x1 _0811322C: ldrb r1, [r7, 0x1] ldr r2, _08113284 @ =gUnknown_8456940 adds r0, r5, r2 ldrb r6, [r0] asrs r1, r6 ands r1, r4 cmp r1, 0 beq _0811324E mov r8, r5 str r2, [sp] bl Random adds r1, r4, 0 ands r1, r0 ldr r2, [sp] cmp r1, 0 bne _0811321C _0811324E: adds r0, r5, 0x1 lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0x7 bls _0811322C ldrb r1, [r7, 0x1] mov r3, r8 adds r0, r3, r2 ldrb r2, [r0] adds r0, r1, 0 asrs r0, r2 movs r3, 0x1 ands r0, r3 cmp r0, 0 beq _08113274 adds r0, r3, 0 lsls r0, r2 eors r1, r0 strb r1, [r7, 0x1] _08113274: adds r0, r2, 0 _08113276: add sp, 0x4 pop {r3} mov r8, r3 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08113284: .4byte gUnknown_8456940 thumb_func_end sub_81131FC thumb_func_start sub_8113288 sub_8113288: @ 8113288 push {lr} ldr r0, _0811329C @ =0x00004038 bl sub_806E454 bl sub_81132A0 lsls r0, 16 lsrs r0, 16 pop {r1} bx r1 .align 2, 0 _0811329C: .4byte 0x00004038 thumb_func_end sub_8113288 thumb_func_start sub_81132A0 sub_81132A0: @ 81132A0 push {r4,lr} movs r2, 0 movs r1, 0 ldrb r3, [r0, 0x1] movs r4, 0x1 _081132AA: adds r0, r3, 0 asrs r0, r1 ands r0, r4 cmp r0, 0 beq _081132BA adds r0, r2, 0x1 lsls r0, 24 lsrs r2, r0, 24 _081132BA: adds r0, r1, 0x1 lsls r0, 24 lsrs r1, r0, 24 cmp r1, 0x7 bls _081132AA adds r0, r2, 0 pop {r4} pop {r1} bx r1 thumb_func_end sub_81132A0 thumb_func_start sub_81132CC sub_81132CC: @ 81132CC push {lr} ldr r0, _081132DC @ =0x00004038 bl sub_806E454 bl sub_81132E0 pop {r0} bx r0 .align 2, 0 _081132DC: .4byte 0x00004038 thumb_func_end sub_81132CC thumb_func_start sub_81132E0 sub_81132E0: @ 81132E0 push {r4-r6,lr} adds r4, r0, 0 movs r5, 0 ldr r2, _081132F8 @ =gSaveBlock2Ptr ldr r0, [r2] ldrh r1, [r0, 0xE] ldr r0, _081132FC @ =0x000003e6 cmp r1, r0 bhi _0811335C adds r6, r2, 0 b _08113338 .align 2, 0 _081132F8: .4byte gSaveBlock2Ptr _081132FC: .4byte 0x000003e6 _08113300: ldr r0, _08113354 @ =0x00004039 bl VarGet lsls r0, 16 lsrs r0, 16 ldr r1, [r6] ldrh r1, [r1, 0xE] subs r1, r0 cmp r1, 0xB ble _0811335C adds r0, r4, 0 bl sub_81131FC ldr r0, _08113354 @ =0x00004039 bl VarGet adds r1, r0, 0 lsls r1, 16 movs r0, 0xC0 lsls r0, 12 adds r1, r0 lsrs r1, 16 ldr r0, _08113354 @ =0x00004039 bl VarSet adds r0, r5, 0x1 lsls r0, 24 lsrs r5, r0, 24 _08113338: adds r0, r4, 0 bl sub_81132A0 lsls r0, 16 lsrs r0, 16 cmp r0, 0x4 bhi _08113358 ldr r0, [r6] ldrh r1, [r0, 0xE] ldr r0, _08113354 @ =0x00004039 bl VarSet b _0811335C .align 2, 0 _08113354: .4byte 0x00004039 _08113358: cmp r5, 0x8 bne _08113300 _0811335C: pop {r4-r6} pop {r0} bx r0 thumb_func_end sub_81132E0 thumb_func_start sub_8113364 sub_8113364: @ 8113364 push {lr} ldr r0, _08113378 @ =0x00004038 bl sub_806E454 bl sub_811337C lsls r0, 16 lsrs r0, 16 pop {r1} bx r1 .align 2, 0 _08113378: .4byte 0x00004038 thumb_func_end sub_8113364 thumb_func_start sub_811337C sub_811337C: @ 811337C ldrb r0, [r0, 0x1] ldr r1, _0811338C @ =gUnknown_20370C0 ldrh r1, [r1] asrs r0, r1 movs r1, 0x1 ands r0, r1 bx lr .align 2, 0 _0811338C: .4byte gUnknown_20370C0 thumb_func_end sub_811337C thumb_func_start sub_8113390 sub_8113390: @ 8113390 ldrb r2, [r0, 0x1] movs r1, 0x1 orrs r1, r2 movs r2, 0x2 orrs r1, r2 movs r2, 0x4 orrs r1, r2 strb r1, [r0, 0x1] bx lr thumb_func_end sub_8113390 thumb_func_start sub_81133A4 sub_81133A4: @ 81133A4 push {lr} movs r3, 0 movs r2, 0 ldr r0, _081133BC @ =gUnknown_20370C0 ldrh r0, [r0] cmp r0, 0x7 bhi _081133F8 lsls r0, 2 ldr r1, _081133C0 @ =_081133C4 adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _081133BC: .4byte gUnknown_20370C0 _081133C0: .4byte _081133C4 .align 2, 0 _081133C4: .4byte _081133E4 .4byte _081133F8 .4byte _081133F8 .4byte _081133F8 .4byte _081133EA .4byte _081133F0 .4byte _081133F4 .4byte _081133F8 _081133E4: movs r2, 0 movs r3, 0 b _081133F8 _081133EA: movs r2, 0x1 movs r3, 0 b _081133F8 _081133F0: movs r2, 0 b _081133F6 _081133F4: movs r2, 0x2 _081133F6: movs r3, 0x1 _081133F8: ldr r0, _0811340C @ =gSaveBlock2Ptr ldr r0, [r0] ldr r1, _08113410 @ =0x00000a98 adds r0, r1 adds r1, r3, 0 bl sub_8113414 pop {r0} bx r0 .align 2, 0 _0811340C: .4byte gSaveBlock2Ptr _08113410: .4byte 0x00000a98 thumb_func_end sub_81133A4 thumb_func_start sub_8113414 sub_8113414: @ 8113414 push {r4,lr} lsls r1, 24 lsls r2, 24 lsrs r2, 24 adds r3, r2, 0 lsrs r1, 20 adds r1, r0, r1 ldrb r0, [r1] cmp r0, 0xFF bne _08113478 cmp r2, 0x1 beq _08113436 cmp r2, 0x1 ble _0811345C cmp r3, 0x2 beq _08113448 b _0811345C _08113436: ldr r0, _08113440 @ =gStringVar1 ldr r1, _08113444 @ =gUnknown_84178D0 bl StringCopy b _081134B2 .align 2, 0 _08113440: .4byte gStringVar1 _08113444: .4byte gUnknown_84178D0 _08113448: ldr r0, _08113454 @ =gStringVar1 ldr r1, _08113458 @ =gUnknown_84178DA bl StringCopy b _081134B2 .align 2, 0 _08113454: .4byte gStringVar1 _08113458: .4byte gUnknown_84178DA _0811345C: ldr r0, _0811346C @ =gStringVar1 ldr r1, _08113470 @ =gSaveBlock1Ptr ldr r1, [r1] ldr r2, _08113474 @ =0x00003a4c adds r1, r2 bl StringCopy b _081134B2 .align 2, 0 _0811346C: .4byte gStringVar1 _08113470: .4byte gSaveBlock1Ptr _08113474: .4byte 0x00003a4c _08113478: ldr r4, _08113498 @ =gStringVar1 adds r0, r4, 0 movs r2, 0x7 bl StringCopyN movs r0, 0xFF strb r0, [r4, 0x7] ldrb r0, [r4] cmp r0, 0xFC bne _081134B2 ldrb r0, [r4, 0x1] cmp r0, 0x15 bne _081134B2 adds r4, 0x2 b _0811349E .align 2, 0 _08113498: .4byte gStringVar1 _0811349C: adds r4, 0x1 _0811349E: ldrb r0, [r4] cmp r0, 0xFF bne _0811349C movs r0, 0xFC strb r0, [r4] adds r4, 0x1 movs r0, 0x16 strb r0, [r4] movs r0, 0xFF strb r0, [r4, 0x1] _081134B2: pop {r4} pop {r0} bx r0 thumb_func_end sub_8113414 thumb_func_start sub_81134B8 sub_81134B8: @ 81134B8 push {lr} ldr r0, _081134C8 @ =0x00004038 bl sub_806E454 bl sub_81134CC pop {r0} bx r0 .align 2, 0 _081134C8: .4byte 0x00004038 thumb_func_end sub_81134B8 thumb_func_start sub_81134CC sub_81134CC: @ 81134CC push {r4,lr} adds r4, r0, 0 ldr r0, _081134F4 @ =0x00004073 bl VarGet lsls r0, 16 lsrs r0, 16 cmp r0, 0x2 bne _08113502 adds r0, r4, 0 bl sub_8113078 ldr r0, _081134F8 @ =gUnknown_2023E8A ldrb r0, [r0] cmp r0, 0x1 bne _081134FC adds r0, r4, 0 bl sub_8113194 b _08113502 .align 2, 0 _081134F4: .4byte 0x00004073 _081134F8: .4byte gUnknown_2023E8A _081134FC: adds r0, r4, 0 bl sub_81131FC _08113502: pop {r4} pop {r0} bx r0 thumb_func_end sub_81134CC thumb_func_start sub_8113508 sub_8113508: @ 8113508 ldr r0, [r0] lsls r0, 24 lsrs r0, 31 bx lr thumb_func_end sub_8113508 thumb_func_start sub_8113510 sub_8113510: @ 8113510 push {lr} ldr r0, _08113520 @ =0x00004038 bl sub_806E454 bl sub_8113524 pop {r0} bx r0 .align 2, 0 _08113520: .4byte 0x00004038 thumb_func_end sub_8113510 thumb_func_start sub_8113524 sub_8113524: @ 8113524 ldrb r1, [r0] movs r2, 0x80 orrs r1, r2 strb r1, [r0] bx lr thumb_func_end sub_8113524 thumb_func_start sub_8113530 sub_8113530: @ 8113530 push {lr} ldr r0, _08113548 @ =0x00004038 bl sub_806E454 ldr r1, _0811354C @ =gUnknown_20370C0 ldrb r1, [r1] bl sub_8113114 lsls r0, 24 lsrs r0, 24 pop {r1} bx r1 .align 2, 0 _08113548: .4byte 0x00004038 _0811354C: .4byte gUnknown_20370C0 thumb_func_end sub_8113530 thumb_func_start sub_8113550 sub_8113550: @ 8113550 push {r4,r5,lr} adds r5, r1, 0 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x23 bne _08113570 ldr r0, _0811356C @ =gUnknown_203B048 ldrb r0, [r0] cmp r0, 0x2 bne _08113570 bl sub_811381C b _081136BC .align 2, 0 _0811356C: .4byte gUnknown_203B048 _08113570: bl sub_811381C ldr r0, _0811362C @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x2 bne _0811357E b _081136BC _0811357E: subs r0, r4, 0x3 lsls r0, 16 lsrs r0, 16 cmp r0, 0x27 bls _0811358A b _081136BC _0811358A: bl sub_81136D4 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08113598 b _081136BC _08113598: adds r0, r4, 0 adds r1, r5, 0 bl sub_81138A0 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _081135AA b _081136BC _081135AA: bl sub_80BF708 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _081135B8 b _081136BC _081135B8: bl InUnionRoom cmp r0, 0x1 bne _081135C2 b _081136BC _081135C2: adds r0, r4, 0 adds r1, r5, 0 bl sub_8113954 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _081136BC adds r0, r4, 0 adds r1, r5, 0 bl sub_8113A44 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _081136BC adds r0, r4, 0 adds r1, r5, 0 bl sub_81153E4 lsls r0, 24 cmp r0, 0 beq _081136BC ldr r0, _08113630 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0 bne _08113638 adds r0, r4, 0 adds r1, r5, 0 bl sub_8113778 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _081136BC cmp r4, 0x1F bne _08113614 ldr r0, _08113634 @ =gUnknown_203AE04 ldr r0, [r0] cmp r0, 0 bne _0811363C _08113614: adds r0, r4, 0 adds r1, r5, 0 bl sub_81153A8 lsls r0, 24 cmp r0, 0 beq _081136BC adds r0, r4, 0 bl sub_8110AEC b _0811363C .align 2, 0 _0811362C: .4byte gUnknown_203ADFA _08113630: .4byte gUnknown_3005E88 _08113634: .4byte gUnknown_203AE04 _08113638: cmp r4, 0x28 beq _081136BC _0811363C: adds r0, r4, 0 bl sub_8113B94 cmp r4, 0x1F bne _0811367C ldr r2, _0811365C @ =gUnknown_203AE04 ldr r1, [r2] cmp r1, 0 bne _08113668 ldr r0, _08113660 @ =gUnknown_203AE08 ldr r0, [r0] str r0, [r2] ldr r1, _08113664 @ =gUnknown_8456948 ldr r2, [r1, 0x7C] b _0811368E .align 2, 0 _0811365C: .4byte gUnknown_203AE04 _08113660: .4byte gUnknown_203AE08 _08113664: .4byte gUnknown_8456948 _08113668: ldr r0, _08113678 @ =gUnknown_8456948 ldr r2, [r0, 0x7C] adds r0, r1, 0 adds r1, r5, 0 bl _call_via_r2 b _081136BC .align 2, 0 _08113678: .4byte gUnknown_8456948 _0811367C: ldr r1, _081136C4 @ =gUnknown_203AE04 movs r0, 0 str r0, [r1] ldr r0, _081136C8 @ =gUnknown_8456948 lsls r1, r4, 2 adds r1, r0 ldr r0, _081136CC @ =gUnknown_203AE08 ldr r0, [r0] ldr r2, [r1] _0811368E: adds r1, r5, 0 bl _call_via_r2 adds r1, r0, 0 cmp r1, 0 bne _081136AC bl sub_811231C adds r0, r4, 0 adds r1, r5, 0 bl sub_8113828 adds r1, r0, 0 cmp r1, 0 beq _081136BC _081136AC: ldr r0, _081136CC @ =gUnknown_203AE08 str r1, [r0] ldr r0, _081136D0 @ =gUnknown_203B048 ldrb r0, [r0] cmp r0, 0 beq _081136BC bl sub_811231C _081136BC: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _081136C4: .4byte gUnknown_203AE04 _081136C8: .4byte gUnknown_8456948 _081136CC: .4byte gUnknown_203AE08 _081136D0: .4byte gUnknown_203B048 thumb_func_end sub_8113550 thumb_func_start sub_81136D4 sub_81136D4: @ 81136D4 push {lr} ldr r0, _08113728 @ =gSaveBlock1Ptr ldr r2, [r0] movs r1, 0x4 ldrsb r1, [r2, r1] adds r3, r0, 0 cmp r1, 0x2 bne _081136F0 ldrb r0, [r2, 0x5] subs r0, 0x1 lsls r0, 24 lsrs r0, 24 cmp r0, 0xA bls _08113724 _081136F0: ldr r2, [r3] ldrh r1, [r2, 0x4] ldr r0, _0811372C @ =0x0000090e cmp r1, r0 beq _08113724 movs r0, 0x4 ldrsb r0, [r2, r0] cmp r0, 0x1F bne _08113708 ldrb r0, [r2, 0x5] cmp r0, 0x1 bls _08113724 _08113708: ldr r0, [r3] ldrh r1, [r0, 0x4] ldr r0, _08113730 @ =0x00002e01 cmp r1, r0 beq _08113724 ldr r0, _08113734 @ =0x00003a01 cmp r1, r0 beq _08113724 ldr r0, _08113738 @ =0x00000b02 cmp r1, r0 beq _08113724 ldr r0, _0811373C @ =0x0000060a cmp r1, r0 bne _08113740 _08113724: movs r0, 0x1 b _08113742 .align 2, 0 _08113728: .4byte gSaveBlock1Ptr _0811372C: .4byte 0x0000090e _08113730: .4byte 0x00002e01 _08113734: .4byte 0x00003a01 _08113738: .4byte 0x00000b02 _0811373C: .4byte 0x0000060a _08113740: movs r0, 0 _08113742: pop {r1} bx r1 thumb_func_end sub_81136D4 thumb_func_start sub_8113748 sub_8113748: @ 8113748 push {lr} bl sub_81136D4 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _08113770 ldr r0, _08113764 @ =gUnknown_203ADFA ldrb r0, [r0] cmp r0, 0x2 bne _08113768 movs r0, 0x1 b _08113772 .align 2, 0 _08113764: .4byte gUnknown_203ADFA _08113768: cmp r0, 0x1 bne _08113770 bl sub_8112364 _08113770: movs r0, 0 _08113772: pop {r1} bx r1 thumb_func_end sub_8113748 thumb_func_start sub_8113778 sub_8113778: @ 8113778 push {r4,r5,lr} adds r5, r1, 0 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x24 beq _081137CE cmp r4, 0xB beq _081137CE ldr r0, _081137D4 @ =0x0000082c bl FlagGet lsls r0, 24 cmp r0, 0 bne _081137AC cmp r4, 0x3 beq _081137CE cmp r4, 0x1F beq _081137CE adds r0, r4, 0 adds r1, r5, 0 bl sub_81137E4 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _081137CE _081137AC: ldr r0, _081137D8 @ =0x00000844 bl FlagGet lsls r0, 24 cmp r0, 0 bne _081137DC subs r0, r4, 0x4 lsls r0, 16 lsrs r0, 16 cmp r0, 0x6 bls _081137CE cmp r4, 0x16 beq _081137CE cmp r4, 0x19 beq _081137CE cmp r4, 0x1A bne _081137DC _081137CE: movs r0, 0x1 b _081137DE .align 2, 0 _081137D4: .4byte 0x0000082c _081137D8: .4byte 0x00000844 _081137DC: movs r0, 0 _081137DE: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113778 thumb_func_start sub_81137E4 sub_81137E4: @ 81137E4 push {lr} lsls r0, 16 lsrs r0, 16 cmp r0, 0x22 bne _08113814 ldr r2, _08113810 @ =gUnknown_823EAC8 ldrh r1, [r1] lsls r0, r1, 2 adds r0, r1 lsls r0, 3 adds r0, r2 ldrb r1, [r0, 0x1] cmp r1, 0x51 beq _08113814 cmp r1, 0x59 beq _08113814 cmp r1, 0x5A beq _08113814 cmp r1, 0x53 beq _08113814 movs r0, 0x1 b _08113816 .align 2, 0 _08113810: .4byte gUnknown_823EAC8 _08113814: movs r0, 0 _08113816: pop {r1} bx r1 thumb_func_end sub_81137E4 thumb_func_start sub_811381C sub_811381C: @ 811381C ldr r1, _08113824 @ =gUnknown_203B048 movs r0, 0 strb r0, [r1] bx lr .align 2, 0 _08113824: .4byte gUnknown_203B048 thumb_func_end sub_811381C thumb_func_start sub_8113828 sub_8113828: @ 8113828 push {r4,r5,lr} adds r5, r1, 0 lsls r0, 16 lsrs r4, r0, 16 adds r0, r4, 0 bl sub_8113778 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _0811384C adds r0, r4, 0 adds r1, r5, 0 bl sub_81153A8 lsls r0, 24 cmp r0, 0 bne _08113850 _0811384C: movs r0, 0 b _0811388C _08113850: adds r0, r4, 0 bl sub_8110AEC adds r0, r4, 0 bl sub_8113B94 cmp r4, 0x1F bne _08113874 ldr r2, _0811386C @ =gUnknown_203AE04 ldr r1, _08113870 @ =gUnknown_203AE08 ldr r0, [r1] str r0, [r2] adds r2, r1, 0 b _0811387C .align 2, 0 _0811386C: .4byte gUnknown_203AE04 _08113870: .4byte gUnknown_203AE08 _08113874: ldr r1, _08113894 @ =gUnknown_203AE04 movs r0, 0 str r0, [r1] ldr r2, _08113898 @ =gUnknown_203AE08 _0811387C: ldr r0, _0811389C @ =gUnknown_8456948 lsls r1, r4, 2 adds r1, r0 ldr r0, [r2] ldr r2, [r1] adds r1, r5, 0 bl _call_via_r2 _0811388C: pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08113894: .4byte gUnknown_203AE04 _08113898: .4byte gUnknown_203AE08 _0811389C: .4byte gUnknown_8456948 thumb_func_end sub_8113828 thumb_func_start sub_81138A0 sub_81138A0: @ 81138A0 push {r4,r5,lr} adds r5, r1, 0 lsls r0, 16 lsrs r0, 16 adds r4, r0, 0 subs r0, 0xC lsls r0, 16 lsrs r0, 16 cmp r0, 0x7 bls _081138B8 movs r0, 0 b _081138F0 _081138B8: bl sub_81138F8 ldr r1, _081138E0 @ =gUnknown_203B024 strh r4, [r1] adds r0, r4, 0 subs r0, 0x10 lsls r0, 16 lsrs r0, 16 cmp r0, 0x1 bls _081138EE cmp r4, 0xC beq _081138D4 cmp r4, 0x12 bne _081138E4 _081138D4: adds r0, r1, 0x4 adds r1, r5, 0 movs r2, 0xC bl memcpy b _081138EE .align 2, 0 _081138E0: .4byte gUnknown_203B024 _081138E4: adds r0, r1, 0x4 adds r1, r5, 0 movs r2, 0x18 bl memcpy _081138EE: movs r0, 0x1 _081138F0: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_81138A0 thumb_func_start sub_81138F8 sub_81138F8: @ 81138F8 push {lr} ldr r0, _08113908 @ =gUnknown_203B024 movs r1, 0 movs r2, 0x20 bl memset pop {r0} bx r0 .align 2, 0 _08113908: .4byte gUnknown_203B024 thumb_func_end sub_81138F8 thumb_func_start sub_811390C sub_811390C: @ 811390C push {r4,r5,lr} ldr r5, _08113944 @ =gUnknown_203B024 ldrh r0, [r5] cmp r0, 0 beq _0811393C ldr r1, _08113948 @ =gUnknown_203B04A movs r0, 0 strb r0, [r1] ldrh r0, [r5] bl sub_8110AEC ldr r0, _0811394C @ =gUnknown_8456948 ldrh r2, [r5] lsls r2, 2 adds r2, r0 ldr r4, _08113950 @ =gUnknown_203AE08 ldr r0, [r4] adds r1, r5, 0x4 ldr r2, [r2] bl _call_via_r2 str r0, [r4] bl sub_81138F8 _0811393C: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08113944: .4byte gUnknown_203B024 _08113948: .4byte gUnknown_203B04A _0811394C: .4byte gUnknown_8456948 _08113950: .4byte gUnknown_203AE08 thumb_func_end sub_811390C thumb_func_start sub_8113954 sub_8113954: @ 8113954 push {r4,r5,lr} adds r5, r1, 0 lsls r0, 16 lsrs r4, r0, 16 cmp r4, 0x22 beq _08113970 cmp r4, 0x1E beq _08113970 cmp r4, 0x20 beq _08113970 cmp r4, 0x21 beq _08113970 movs r0, 0 b _081139A8 _08113970: bl sub_81138F8 ldr r0, _081139B0 @ =gUnknown_3005E88 ldrb r0, [r0] cmp r0, 0 bne _08113998 ldr r0, _081139B4 @ =0x0000082c bl FlagGet lsls r0, 24 cmp r0, 0 bne _08113998 adds r0, r4, 0 adds r1, r5, 0 bl sub_81137E4 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _081139A6 _08113998: ldr r0, _081139B8 @ =gUnknown_203B024 strh r4, [r0] adds r0, 0x4 adds r1, r5, 0 movs r2, 0x8 bl memcpy _081139A6: movs r0, 0x1 _081139A8: pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081139B0: .4byte gUnknown_3005E88 _081139B4: .4byte 0x0000082c _081139B8: .4byte gUnknown_203B024 thumb_func_end sub_8113954 thumb_func_start sub_81139BC sub_81139BC: @ 81139BC push {r4,r5,lr} ldr r5, _08113A08 @ =gUnknown_203B024 ldrh r0, [r5] cmp r0, 0 beq _08113A02 ldr r0, _08113A0C @ =gUnknown_3005E88 ldrb r1, [r0] cmp r1, 0 bne _081139D8 ldr r0, _08113A10 @ =gUnknown_203B04A strb r1, [r0] ldrh r0, [r5] bl sub_8110AEC _081139D8: ldrh r0, [r5] bl sub_8113B94 ldr r0, _08113A14 @ =gUnknown_8456948 ldrh r2, [r5] lsls r2, 2 adds r2, r0 ldr r4, _08113A18 @ =gUnknown_203AE08 ldr r0, [r4] adds r1, r5, 0x4 ldr r2, [r2] bl _call_via_r2 str r0, [r4] movs r0, 0x1 bl sub_8113A1C bl sub_81138F8 bl sub_811231C _08113A02: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08113A08: .4byte gUnknown_203B024 _08113A0C: .4byte gUnknown_3005E88 _08113A10: .4byte gUnknown_203B04A _08113A14: .4byte gUnknown_8456948 _08113A18: .4byte gUnknown_203AE08 thumb_func_end sub_81139BC thumb_func_start sub_8113A1C sub_8113A1C: @ 8113A1C push {r4,lr} adds r1, r0, 0 lsls r1, 16 lsrs r1, 16 ldr r4, _08113A3C @ =gUnknown_203AE08 ldr r0, [r4] bl sub_8113C5C str r0, [r4] ldr r1, _08113A40 @ =gUnknown_203AF98 ldrh r0, [r1] adds r0, 0x1 strh r0, [r1] pop {r4} pop {r0} bx r0 .align 2, 0 _08113A3C: .4byte gUnknown_203AE08 _08113A40: .4byte gUnknown_203AF98 thumb_func_end sub_8113A1C thumb_func_start sub_8113A44 sub_8113A44: @ 8113A44 push {r4,lr} adds r4, r1, 0 lsls r0, 16 lsrs r0, 16 cmp r0, 0x1F bne _08113A6C ldrh r0, [r4] bl sub_8114FBC lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08113A70 ldrh r0, [r4, 0x2] bl sub_8114FBC lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08113A70 _08113A6C: movs r0, 0 b _08113A72 _08113A70: movs r0, 0x1 _08113A72: pop {r4} pop {r1} bx r1 thumb_func_end sub_8113A44 thumb_func_start sub_8113A78 sub_8113A78: @ 8113A78 push {r4,r5,lr} adds r3, r0, 0 adds r5, r1, 0 ldrh r1, [r3] ldr r0, _08113AAC @ =0x00000fff ands r0, r1 adds r2, r0, 0 lsrs r4, r1, 12 cmp r2, 0x21 bne _08113A8E movs r4, 0 _08113A8E: subs r0, r2, 0x3 lsls r0, 16 lsrs r0, 16 cmp r0, 0x27 bhi _08113AB4 str r3, [r5] ldr r0, _08113AB0 @ =gUnknown_8456AA0 adds r0, r2, r0 ldrb r0, [r0] subs r1, r0, 0x4 muls r1, r4 adds r0, r1 adds r0, r3, r0 b _08113AB6 .align 2, 0 _08113AAC: .4byte 0x00000fff _08113AB0: .4byte gUnknown_8456AA0 _08113AB4: movs r0, 0 _08113AB6: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113A78 thumb_func_start sub_8113ABC sub_8113ABC: @ 8113ABC push {lr} adds r2, r0, 0x4 ldrh r1, [r0] ldr r0, _08113AD0 @ =0x00000fff ands r0, r1 cmp r0, 0x23 beq _08113AD8 ldr r1, _08113AD4 @ =gUnknown_203B04A movs r0, 0 b _08113ADE .align 2, 0 _08113AD0: .4byte 0x00000fff _08113AD4: .4byte gUnknown_203B04A _08113AD8: ldr r1, _08113AE4 @ =gUnknown_203B04A ldrb r0, [r2, 0x1] adds r0, 0x1 _08113ADE: strb r0, [r1] pop {r0} bx r0 .align 2, 0 _08113AE4: .4byte gUnknown_203B04A thumb_func_end sub_8113ABC thumb_func_start sub_8113AE8 sub_8113AE8: @ 8113AE8 push {r4,lr} adds r4, r0, 0 cmp r0, 0 beq _08113AFA ldr r1, _08113B00 @ =gUnknown_203AF98 ldrh r0, [r0, 0x2] ldrh r1, [r1] cmp r0, r1 bls _08113B04 _08113AFA: movs r0, 0 b _08113B32 .align 2, 0 _08113B00: .4byte gUnknown_203AF98 _08113B04: ldr r2, _08113B38 @ =gUnknown_84569F4 ldrh r1, [r4] ldr r0, _08113B3C @ =0x00000fff ands r0, r1 lsls r0, 2 adds r0, r2 ldr r1, [r0] adds r0, r4, 0 bl _call_via_r1 ldr r2, _08113B40 @ =gUnknown_203B044 ldrh r1, [r4] strb r1, [r2] movs r0, 0xF0 lsls r0, 8 ands r0, r1 lsrs r0, 12 strb r0, [r2, 0x1] cmp r0, 0 beq _08113B30 movs r0, 0x1 strh r0, [r2, 0x2] _08113B30: movs r0, 0x1 _08113B32: pop {r4} pop {r1} bx r1 .align 2, 0 _08113B38: .4byte gUnknown_84569F4 _08113B3C: .4byte 0x00000fff _08113B40: .4byte gUnknown_203B044 thumb_func_end sub_8113AE8 thumb_func_start sub_8113B44 sub_8113B44: @ 8113B44 push {r4,lr} adds r2, r0, 0 ldr r4, _08113B54 @ =gUnknown_203B044 ldrh r0, [r4, 0x2] cmp r0, 0 bne _08113B58 movs r0, 0 b _08113B7E .align 2, 0 _08113B54: .4byte gUnknown_203B044 _08113B58: ldr r1, _08113B84 @ =gUnknown_84569F4 ldrb r0, [r4] lsls r0, 2 adds r0, r1 ldr r1, [r0] adds r0, r2, 0 bl _call_via_r1 ldrh r0, [r4, 0x2] adds r0, 0x1 strh r0, [r4, 0x2] lsls r0, 16 lsrs r0, 16 ldrb r4, [r4, 0x1] cmp r0, r4 bls _08113B7C bl sub_8113B88 _08113B7C: movs r0, 0x1 _08113B7E: pop {r4} pop {r1} bx r1 .align 2, 0 _08113B84: .4byte gUnknown_84569F4 thumb_func_end sub_8113B44 thumb_func_start sub_8113B88 sub_8113B88: @ 8113B88 ldr r1, _08113B90 @ =gUnknown_203B044 movs r0, 0 str r0, [r1] bx lr .align 2, 0 _08113B90: .4byte gUnknown_203B044 thumb_func_end sub_8113B88 thumb_func_start sub_8113B94 sub_8113B94: @ 8113B94 push {r4,lr} lsls r0, 16 lsrs r0, 16 adds r4, r0, 0 ldr r2, _08113BC0 @ =gUnknown_203B044 ldrb r1, [r2] lsls r0, r4, 24 lsrs r0, 24 ldr r3, _08113BC4 @ =gUnknown_203AF98 cmp r1, r0 bne _08113BB2 ldrh r1, [r2, 0x2] ldrh r0, [r3] cmp r1, r0 beq _08113BC8 _08113BB2: movs r0, 0 strb r4, [r2] strb r0, [r2, 0x1] ldrh r0, [r3] strh r0, [r2, 0x2] b _08113BD2 .align 2, 0 _08113BC0: .4byte gUnknown_203B044 _08113BC4: .4byte gUnknown_203AF98 _08113BC8: ldrb r0, [r2, 0x1] cmp r0, 0x4 bhi _08113BD2 adds r0, 0x1 strb r0, [r2, 0x1] _08113BD2: pop {r4} pop {r0} bx r0 thumb_func_end sub_8113B94 thumb_func_start sub_8113BD8 sub_8113BD8: @ 8113BD8 ldr r0, _08113BE8 @ =gUnknown_203B049 movs r1, 0 strb r1, [r0] ldr r0, _08113BEC @ =gUnknown_203B04A strb r1, [r0] ldr r0, _08113BF0 @ =gUnknown_203B04B strb r1, [r0] bx lr .align 2, 0 _08113BE8: .4byte gUnknown_203B049 _08113BEC: .4byte gUnknown_203B04A _08113BF0: .4byte gUnknown_203B04B thumb_func_end sub_8113BD8 thumb_func_start sub_8113BF4 sub_8113BF4: @ 8113BF4 push {r4,lr} adds r4, r0, 0 ldr r0, _08113C14 @ =gUnknown_8456AA0 adds r0, 0x27 ldrb r1, [r0] adds r0, r4, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113C18 movs r0, 0x27 strh r0, [r4] adds r0, r4, 0x2 b _08113C1A .align 2, 0 _08113C14: .4byte gUnknown_8456AA0 _08113C18: movs r0, 0 _08113C1A: pop {r4} pop {r1} bx r1 thumb_func_end sub_8113BF4 thumb_func_start sub_8113C20 sub_8113C20: @ 8113C20 push {r4,r5,lr} adds r5, r0, 0 adds r4, r1, 0 ldr r0, _08113C50 @ =gUnknown_8456AA0 adds r0, 0x27 ldrb r1, [r0] adds r0, r5, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113C54 movs r0, 0xFF strb r0, [r4, 0x6] movs r1, 0 movs r0, 0 strh r0, [r4, 0x4] strb r1, [r4] strb r1, [r4, 0x1] strb r1, [r4, 0x2] strb r1, [r4, 0x3] adds r0, r5, 0x2 b _08113C56 .align 2, 0 _08113C50: .4byte gUnknown_8456AA0 _08113C54: movs r0, 0 _08113C56: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113C20 thumb_func_start sub_8113C5C sub_8113C5C: @ 8113C5C push {r4,r5,lr} adds r4, r0, 0 lsls r1, 16 lsrs r5, r1, 16 ldr r0, _08113C80 @ =gUnknown_8456AA0 adds r0, 0x29 ldrb r1, [r0] adds r0, r4, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113C84 movs r0, 0x29 strh r0, [r4] strh r5, [r4, 0x2] adds r0, r4, 0x4 b _08113C86 .align 2, 0 _08113C80: .4byte gUnknown_8456AA0 _08113C84: movs r0, 0 _08113C86: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113C5C thumb_func_start sub_8113C8C sub_8113C8C: @ 8113C8C push {r4,r5,lr} adds r5, r0, 0 adds r4, r1, 0 ldr r0, _08113CBC @ =gUnknown_8456AA0 adds r0, 0x29 ldrb r1, [r0] adds r0, r5, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113CC0 movs r0, 0xFE strb r0, [r4, 0x6] ldrh r1, [r5, 0x2] movs r0, 0 strh r1, [r4, 0x4] strb r0, [r4] strb r0, [r4, 0x1] strb r0, [r4, 0x2] strb r0, [r4, 0x3] adds r0, r5, 0x4 b _08113CC2 .align 2, 0 _08113CBC: .4byte gUnknown_8456AA0 _08113CC0: movs r0, 0 _08113CC2: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8113C8C thumb_func_start sub_8113CC8 sub_8113CC8: @ 8113CC8 push {r4-r6,lr} adds r4, r0, 0 adds r5, r1, 0 adds r6, r4, 0x4 ldr r0, _08113CFC @ =gUnknown_8456AA0 ldrb r1, [r0] adds r0, r4, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113D00 movs r0, 0 strh r0, [r4] ldrh r0, [r5, 0x4] strh r0, [r4, 0x2] ldrb r0, [r5] strb r0, [r4, 0x4] ldrb r0, [r5, 0x1] strb r0, [r6, 0x1] ldrb r0, [r5, 0x2] strb r0, [r6, 0x2] ldrb r0, [r5, 0x3] strb r0, [r6, 0x3] adds r0, r6, 0x4 b _08113D02 .align 2, 0 _08113CFC: .4byte gUnknown_8456AA0 _08113D00: movs r0, 0 _08113D02: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_8113CC8 thumb_func_start sub_8113D08 sub_8113D08: @ 8113D08 push {r4-r6,lr} adds r5, r0, 0 adds r4, r1, 0 adds r6, r5, 0x4 ldr r0, _08113D3C @ =gUnknown_8456AA0 ldrb r1, [r0] adds r0, r5, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 beq _08113D40 movs r0, 0x2 strb r0, [r4, 0x6] ldrh r0, [r5, 0x2] strh r0, [r4, 0x4] ldrb r0, [r5, 0x4] strb r0, [r4] ldrb r0, [r6, 0x1] strb r0, [r4, 0x1] ldrb r0, [r6, 0x2] strb r0, [r4, 0x2] ldrb r0, [r6, 0x3] strb r0, [r4, 0x3] adds r0, r6, 0x4 b _08113D42 .align 2, 0 _08113D3C: .4byte gUnknown_8456AA0 _08113D40: movs r0, 0 _08113D42: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_8113D08 thumb_func_start sub_8113D48 sub_8113D48: @ 8113D48 push {r4-r6,lr} adds r5, r1, 0 adds r4, r0, 0 adds r6, r4, 0x4 ldr r0, _08113D64 @ =gUnknown_8456AA0 ldrb r1, [r0, 0x2] adds r0, r4, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 bne _08113D68 movs r0, 0 b _08113D8C .align 2, 0 _08113D64: .4byte gUnknown_8456AA0 _08113D68: ldrb r0, [r5, 0x6] cmp r0, 0 bne _08113D72 movs r0, 0x2 b _08113D74 _08113D72: movs r0, 0x1 _08113D74: strh r0, [r4] ldrh r0, [r5, 0x4] strh r0, [r4, 0x2] ldrb r0, [r5] strb r0, [r6] ldrb r0, [r5, 0x1] strb r0, [r6, 0x1] ldrb r0, [r5, 0x2] strb r0, [r6, 0x2] ldrb r0, [r5, 0x3] strb r0, [r6, 0x3] adds r0, r6, 0x4 _08113D8C: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_8113D48 thumb_func_start sub_8113D94 sub_8113D94: @ 8113D94 push {r4-r6,lr} adds r4, r1, 0 adds r5, r0, 0 adds r6, r5, 0x4 ldr r0, _08113DB0 @ =gUnknown_8456AA0 ldrb r1, [r0, 0x2] adds r0, r5, 0 bl sub_8110988 lsls r0, 24 cmp r0, 0 bne _08113DB4 movs r0, 0 b _08113DD8 .align 2, 0 _08113DB0: .4byte gUnknown_8456AA0 _08113DB4: ldrh r0, [r5] cmp r0, 0x2 bne _08113DBE movs r0, 0 b _08113DC0 _08113DBE: movs r0, 0x1 _08113DC0: strb r0, [r4, 0x6] ldrh r0, [r5, 0x2] strh r0, [r4, 0x4] ldrb r0, [r6] strb r0, [r4] ldrb r0, [r6, 0x1] strb r0, [r4, 0x1] ldrb r0, [r6, 0x2] strb r0, [r4, 0x2] ldrb r0, [r6, 0x3] strb r0, [r4, 0x3] adds r0, r6, 0x4 _08113DD8: pop {r4-r6} pop {r1} bx r1 thumb_func_end sub_8113D94 thumb_func_start sub_8113DE0 sub_8113DE0: @ 8113DE0 push {r4-r7,lr} adds r4, r1, 0 lsls r0, 16 lsrs r7, r0, 16 ldr r0, _08113DF8 @ =gUnknown_203B044 ldrb r0, [r0, 0x1] cmp r0, 0 bne _08113E00 ldr r0, _08113DFC @ =gUnknown_8456AA0 adds r0, r7, r0 ldrb r6, [r0] b _08113E0C .align 2, 0 _08113DF8: .4byte gUnknown_203B044 _08113DFC: .4byte gUnknown_8456AA0 _08113E00: ldr r0, _08113E20 @ =gUnknown_8456AA0 adds r0, r7, r0 ldrb r0, [r0] subs r0, 0x4 lsls r0, 24 lsrs r6, r0, 24 _08113E0C: adds r0, r4, 0 adds r1, r6, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 bne _08113E24 movs r0, 0 b _08113E7C .align 2, 0 _08113E20: .4byte gUnknown_8456AA0 _08113E24: adds r5, r4, 0 ldr r2, _08113E60 @ =gUnknown_203B044 ldrb r1, [r2, 0x1] cmp r1, 0 beq _08113E36 adds r0, r1, 0 muls r0, r6 adds r0, 0x4 subs r5, r0 _08113E36: cmp r1, 0x5 bne _08113E64 movs r4, 0 _08113E3C: adds r0, r4, 0 muls r0, r6 adds r0, r5 adds r0, 0x4 adds r4, 0x1 adds r1, r4, 0 muls r1, r6 adds r1, r5 adds r1, 0x4 adds r2, r6, 0 bl memcpy lsls r4, 24 lsrs r4, 24 cmp r4, 0x3 bls _08113E3C movs r1, 0x4 b _08113E66 .align 2, 0 _08113E60: .4byte gUnknown_203B044 _08113E64: ldrb r1, [r2, 0x1] _08113E66: lsls r0, r1, 12 adds r0, r7, r0 strh r0, [r5] ldr r0, _08113E84 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r5, 0x2] adds r0, r1, 0 muls r0, r6 adds r0, 0x4 adds r5, r0 adds r0, r5, 0 _08113E7C: pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08113E84: .4byte gUnknown_203AF98 thumb_func_end sub_8113DE0 thumb_func_start sub_8113E88 sub_8113E88: @ 8113E88 lsls r0, 16 lsrs r0, 16 ldr r2, _08113EA4 @ =gUnknown_203B044 ldrh r3, [r2, 0x2] ldr r2, _08113EA8 @ =gUnknown_8456AA0 adds r0, r2 ldrb r0, [r0] subs r0, 0x4 muls r0, r3 adds r0, 0x4 adds r1, r0 adds r0, r1, 0 bx lr .align 2, 0 _08113EA4: .4byte gUnknown_203B044 _08113EA8: .4byte gUnknown_8456AA0 thumb_func_end sub_8113E88 thumb_func_start sub_8113EAC sub_8113EAC: @ 8113EAC push {r4,r5,lr} adds r3, r1, 0 lsls r0, 16 lsrs r1, r0, 16 adds r4, r1, 0 lsls r2, 24 lsrs r2, 24 adds r5, r2, 0 cmp r3, 0 beq _08113EE0 movs r0, 0xCE lsls r0, 1 cmp r1, r0 beq _08113ED0 adds r0, r3, 0 bl GetSpeciesName b _08113F08 _08113ED0: ldr r1, _08113EDC @ =gUnknown_8415A62 adds r0, r3, 0 bl StringCopy b _08113F08 .align 2, 0 _08113EDC: .4byte gUnknown_8415A62 _08113EE0: movs r0, 0xCE lsls r0, 1 cmp r4, r0 beq _08113F00 movs r0, 0xB adds r1, r4, 0 muls r1, r0 ldr r0, _08113EFC @ =gUnknown_8245EE0 adds r1, r0 adds r0, r2, 0 bl UnkTextUtil_SetPtrI b _08113F08 .align 2, 0 _08113EFC: .4byte gUnknown_8245EE0 _08113F00: ldr r1, _08113F10 @ =gUnknown_8415A62 adds r0, r5, 0 bl UnkTextUtil_SetPtrI _08113F08: pop {r4,r5} pop {r0} bx r0 .align 2, 0 _08113F10: .4byte gUnknown_8415A62 thumb_func_end sub_8113EAC thumb_func_start sub_8113F14 sub_8113F14: @ 8113F14 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x3 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08113F34 ldrh r0, [r4] strh r0, [r2] ldrh r0, [r4, 0x2] strh r0, [r2, 0x2] adds r0, r2, 0x4 b _08113F36 _08113F34: movs r0, 0 _08113F36: pop {r4} pop {r1} bx r1 thumb_func_end sub_8113F14 thumb_func_start sub_8113F3C sub_8113F3C: @ 8113F3C push {r4,lr} adds r1, r0, 0 movs r0, 0x3 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4] ldr r1, _08113F70 @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldrh r0, [r4, 0x2] ldr r1, _08113F74 @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldr r0, _08113F78 @ =gStringVar4 ldr r1, _08113F7C @ =gUnknown_841A16F bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08113F70: .4byte gStringVar1 _08113F74: .4byte gStringVar2 _08113F78: .4byte gStringVar4 _08113F7C: .4byte gUnknown_841A16F thumb_func_end sub_8113F3C thumb_func_start sub_8113F80 sub_8113F80: @ 8113F80 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x4 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 bne _08113F98 movs r0, 0 b _08113FB2 _08113F98: ldrh r0, [r4] strh r0, [r2] ldrh r0, [r4, 0x4] strh r0, [r2, 0x2] ldrh r0, [r4, 0x6] strh r0, [r2, 0x4] ldrh r0, [r4] cmp r0, 0x55 bne _08113FB0 ldr r1, _08113FB8 @ =gUnknown_203B048 movs r0, 0x2 strb r0, [r1] _08113FB0: adds r0, r2, 0x6 _08113FB2: pop {r4} pop {r1} bx r1 .align 2, 0 _08113FB8: .4byte gUnknown_203B048 thumb_func_end sub_8113F80 thumb_func_start sub_8113FBC sub_8113FBC: @ 8113FBC push {r4-r7,lr} adds r1, r0, 0 movs r0, 0x4 bl sub_8113E88 adds r5, r0, 0 ldrh r0, [r5] bl ItemId_GetPocket lsls r0, 24 lsrs r0, 24 subs r0, 0x1 cmp r0, 0x4 bls _08113FDA b _0811413C _08113FDA: lsls r0, 2 ldr r1, _08113FE4 @ =_08113FE8 adds r0, r1 ldr r0, [r0] mov pc, r0 .align 2, 0 _08113FE4: .4byte _08113FE8 .align 2, 0 _08113FE8: .4byte _08113FFC .4byte _08114074 .4byte _08113FFC .4byte _0811409C .4byte _08113FFC _08113FFC: ldr r4, _08114024 @ =gStringVar1 ldrh r0, [r5] bl ItemId_GetItem adds r1, r0, 0 adds r0, r4, 0 bl StringCopy ldrh r0, [r5] cmp r0, 0x55 bne _08114034 ldr r0, _08114028 @ =gStringVar2 ldrb r1, [r5, 0x4] bl sub_80C4DF8 ldr r0, _0811402C @ =gStringVar4 ldr r1, _08114030 @ =gUnknown_841AFA6 bl StringExpandPlaceholders b _0811413C .align 2, 0 _08114024: .4byte gStringVar1 _08114028: .4byte gStringVar2 _0811402C: .4byte gStringVar4 _08114030: .4byte gUnknown_841AFA6 _08114034: ldrh r1, [r5, 0x2] ldr r0, _08114050 @ =0x0000ffff cmp r1, r0 beq _08114060 adds r0, r1, 0 ldr r1, _08114054 @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldr r0, _08114058 @ =gStringVar4 ldr r1, _0811405C @ =gUnknown_841A1E7 bl StringExpandPlaceholders b _0811413C .align 2, 0 _08114050: .4byte 0x0000ffff _08114054: .4byte gStringVar2 _08114058: .4byte gStringVar4 _0811405C: .4byte gUnknown_841A1E7 _08114060: ldr r0, _0811406C @ =gStringVar4 ldr r1, _08114070 @ =gUnknown_841A210 bl StringExpandPlaceholders b _0811413C .align 2, 0 _0811406C: .4byte gStringVar4 _08114070: .4byte gUnknown_841A210 _08114074: ldr r4, _08114090 @ =gStringVar1 ldrh r0, [r5] bl ItemId_GetItem adds r1, r0, 0 adds r0, r4, 0 bl StringCopy ldr r0, _08114094 @ =gStringVar4 ldr r1, _08114098 @ =gUnknown_841A220 bl StringExpandPlaceholders b _0811413C .align 2, 0 _08114090: .4byte gStringVar1 _08114094: .4byte gStringVar4 _08114098: .4byte gUnknown_841A220 _0811409C: ldrh r0, [r5, 0x2] ldr r1, _081140E8 @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldr r4, _081140EC @ =gStringVar2 ldrh r0, [r5] bl ItemIdToBattleMoveId lsls r0, 16 lsrs r0, 16 movs r7, 0xD adds r1, r0, 0 muls r1, r7 ldr r6, _081140F0 @ =gUnknown_8247094 adds r1, r6 adds r0, r4, 0 bl StringCopy ldrh r1, [r5, 0x4] ldr r0, _081140F4 @ =0x0000ffff cmp r1, r0 beq _08114118 ldr r0, _081140F8 @ =gStringVar3 muls r1, r7 adds r1, r6 bl StringCopy ldrh r1, [r5] movs r0, 0xA9 lsls r0, 1 cmp r1, r0 bls _08114104 ldr r0, _081140FC @ =gStringVar4 ldr r1, _08114100 @ =gUnknown_841A965 bl StringExpandPlaceholders b _0811413C .align 2, 0 _081140E8: .4byte gStringVar1 _081140EC: .4byte gStringVar2 _081140F0: .4byte gUnknown_8247094 _081140F4: .4byte 0x0000ffff _081140F8: .4byte gStringVar3 _081140FC: .4byte gStringVar4 _08114100: .4byte gUnknown_841A965 _08114104: ldr r0, _08114110 @ =gStringVar4 ldr r1, _08114114 @ =gUnknown_841A277 bl StringExpandPlaceholders b _0811413C .align 2, 0 _08114110: .4byte gStringVar4 _08114114: .4byte gUnknown_841A277 _08114118: ldrh r1, [r5] movs r0, 0xA9 lsls r0, 1 cmp r1, r0 bls _08114134 ldr r0, _0811412C @ =gStringVar4 ldr r1, _08114130 @ =gUnknown_841A938 bl StringExpandPlaceholders b _0811413C .align 2, 0 _0811412C: .4byte gStringVar4 _08114130: .4byte gUnknown_841A938 _08114134: ldr r0, _08114144 @ =gStringVar4 ldr r1, _08114148 @ =gUnknown_841A255 bl StringExpandPlaceholders _0811413C: adds r0, r5, 0x6 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08114144: .4byte gStringVar4 _08114148: .4byte gUnknown_841A255 thumb_func_end sub_8113FBC thumb_func_start sub_811414C sub_811414C: @ 811414C push {r4,lr} adds r4, r2, 0 lsls r0, 16 lsrs r0, 16 bl sub_8113DE0 adds r1, r0, 0 cmp r1, 0 beq _0811416A ldrh r0, [r4] strh r0, [r1] ldrh r0, [r4, 0x4] strh r0, [r1, 0x2] adds r0, r1, 0x4 b _0811416C _0811416A: movs r0, 0 _0811416C: pop {r4} pop {r1} bx r1 thumb_func_end sub_811414C thumb_func_start sub_8114174 sub_8114174: @ 8114174 push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0x5 adds r1, r3, 0 bl sub_811414C pop {r1} bx r1 thumb_func_end sub_8114174 thumb_func_start sub_8114188 sub_8114188: @ 8114188 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x5 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x2] ldr r1, _081141C0 @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldr r5, _081141C4 @ =gStringVar2 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _081141C8 @ =gStringVar4 ldr r1, _081141CC @ =gUnknown_841AB74 bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081141C0: .4byte gStringVar1 _081141C4: .4byte gStringVar2 _081141C8: .4byte gStringVar4 _081141CC: .4byte gUnknown_841AB74 thumb_func_end sub_8114188 thumb_func_start sub_81141D0 sub_81141D0: @ 81141D0 push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0x6 adds r1, r3, 0 bl sub_811414C pop {r1} bx r1 thumb_func_end sub_81141D0 thumb_func_start sub_81141E4 sub_81141E4: @ 81141E4 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x6 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x2] ldr r1, _0811421C @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldr r5, _08114220 @ =gStringVar2 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _08114224 @ =gStringVar4 ldr r1, _08114228 @ =gUnknown_841AB8E bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _0811421C: .4byte gStringVar1 _08114220: .4byte gStringVar2 _08114224: .4byte gStringVar4 _08114228: .4byte gUnknown_841AB8E thumb_func_end sub_81141E4 thumb_func_start sub_811422C sub_811422C: @ 811422C push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0x7 adds r1, r3, 0 bl sub_811414C pop {r1} bx r1 thumb_func_end sub_811422C thumb_func_start sub_8114240 sub_8114240: @ 8114240 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x7 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x2] ldr r1, _08114278 @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldr r5, _0811427C @ =gStringVar1 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _08114280 @ =gStringVar4 ldr r1, _08114284 @ =gUnknown_841A6A5 bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114278: .4byte gStringVar2 _0811427C: .4byte gStringVar1 _08114280: .4byte gStringVar4 _08114284: .4byte gUnknown_841A6A5 thumb_func_end sub_8114240 thumb_func_start sub_8114288 sub_8114288: @ 8114288 push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0x8 adds r1, r3, 0 bl sub_811414C pop {r1} bx r1 thumb_func_end sub_8114288 thumb_func_start sub_811429C sub_811429C: @ 811429C push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x8 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x2] ldr r1, _081142D4 @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldr r5, _081142D8 @ =gStringVar2 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _081142DC @ =gStringVar4 ldr r1, _081142E0 @ =gUnknown_841A1CD bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081142D4: .4byte gStringVar1 _081142D8: .4byte gStringVar2 _081142DC: .4byte gStringVar4 _081142E0: .4byte gUnknown_841A1CD thumb_func_end sub_811429C thumb_func_start sub_81142E4 sub_81142E4: @ 81142E4 push {r4,lr} adds r4, r2, 0 lsls r0, 16 lsrs r0, 16 bl sub_8113DE0 adds r1, r0, 0 cmp r1, 0 beq _08114306 ldrh r0, [r4] strh r0, [r1] ldrh r0, [r4, 0x2] strh r0, [r1, 0x2] ldrh r0, [r4, 0x4] strh r0, [r1, 0x4] adds r0, r1, 0x6 b _08114308 _08114306: movs r0, 0 _08114308: pop {r4} pop {r1} bx r1 thumb_func_end sub_81142E4 thumb_func_start sub_8114310 sub_8114310: @ 8114310 push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0x9 adds r1, r3, 0 bl sub_81142E4 pop {r1} bx r1 thumb_func_end sub_8114310 thumb_func_start sub_8114324 sub_8114324: @ 8114324 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x9 bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x4] ldr r1, _0811436C @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldr r5, _08114370 @ =gStringVar2 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r5, _08114374 @ =gStringVar3 ldrh r0, [r4, 0x2] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _08114378 @ =gStringVar4 ldr r1, _0811437C @ =gUnknown_841A193 bl StringExpandPlaceholders adds r4, 0x6 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _0811436C: .4byte gStringVar1 _08114370: .4byte gStringVar2 _08114374: .4byte gStringVar3 _08114378: .4byte gStringVar4 _0811437C: .4byte gUnknown_841A193 thumb_func_end sub_8114324 thumb_func_start sub_8114380 sub_8114380: @ 8114380 push {lr} adds r3, r0, 0 adds r2, r1, 0 movs r0, 0xA adds r1, r3, 0 bl sub_81142E4 pop {r1} bx r1 thumb_func_end sub_8114380 thumb_func_start sub_8114394 sub_8114394: @ 8114394 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0xA bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4, 0x4] ldr r1, _081143DC @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldr r5, _081143E0 @ =gStringVar3 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r5, _081143E4 @ =gStringVar1 ldrh r0, [r4, 0x2] bl ItemId_GetItem adds r1, r0, 0 adds r0, r5, 0 bl StringCopy ldr r0, _081143E8 @ =gStringVar4 ldr r1, _081143EC @ =gUnknown_841A6E1 bl StringExpandPlaceholders adds r4, 0x6 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081143DC: .4byte gStringVar2 _081143E0: .4byte gStringVar3 _081143E4: .4byte gStringVar1 _081143E8: .4byte gStringVar4 _081143EC: .4byte gUnknown_841A6E1 thumb_func_end sub_8114394 thumb_func_start sub_81143F0 sub_81143F0: @ 81143F0 push {r4,lr} adds r4, r0, 0 adds r2, r4, 0 ldr r1, _08114408 @ =gUnknown_203B044 ldrb r0, [r1] cmp r0, 0xB bne _0811440C ldrb r0, [r1, 0x1] cmp r0, 0 beq _0811440C adds r0, r4, 0 b _08114436 .align 2, 0 _08114408: .4byte gUnknown_203B044 _0811440C: ldr r0, _0811442C @ =gUnknown_8456AA0 ldrb r1, [r0, 0xB] adds r0, r2, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 beq _08114434 movs r0, 0xB strh r0, [r4] ldr r0, _08114430 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] adds r0, r4, 0x4 b _08114436 .align 2, 0 _0811442C: .4byte gUnknown_8456AA0 _08114430: .4byte gUnknown_203AF98 _08114434: movs r0, 0 _08114436: pop {r4} pop {r1} bx r1 thumb_func_end sub_81143F0 thumb_func_start sub_811443C sub_811443C: @ 811443C push {r4,lr} adds r4, r0, 0 ldr r0, _08114454 @ =gStringVar4 ldr r1, _08114458 @ =gUnknown_841A2B0 bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114454: .4byte gStringVar4 _08114458: .4byte gUnknown_841A2B0 thumb_func_end sub_811443C thumb_func_start sub_811445C sub_811445C: @ 811445C push {r4,lr} adds r4, r0, 0 adds r4, 0x8 movs r2, 0xC strh r2, [r0] ldr r2, _08114488 @ =gUnknown_203AF98 ldrh r2, [r2] strh r2, [r0, 0x2] ldrh r2, [r1] strh r2, [r0, 0x4] ldrh r2, [r1, 0x2] strh r2, [r0, 0x6] adds r1, 0x4 adds r0, r4, 0 movs r2, 0x7 bl memcpy adds r4, 0x8 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114488: .4byte gUnknown_203AF98 thumb_func_end sub_811445C thumb_func_start sub_811448C sub_811448C: @ 811448C push {r4-r6,lr} adds r5, r0, 0 adds r6, r5, 0 adds r6, 0x8 ldr r4, _081144D8 @ =gStringVar1 adds r0, r4, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r0, r4, 0 adds r1, r6, 0 movs r2, 0x7 bl memcpy adds r0, r4, 0 bl sub_8115834 ldrh r0, [r5, 0x6] ldr r1, _081144DC @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldrh r0, [r5, 0x4] ldr r1, _081144E0 @ =gStringVar3 movs r2, 0 bl sub_8113EAC ldr r0, _081144E4 @ =gStringVar4 ldr r1, _081144E8 @ =gUnknown_841A3FF bl StringExpandPlaceholders adds r6, 0x8 adds r0, r6, 0 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _081144D8: .4byte gStringVar1 _081144DC: .4byte gStringVar2 _081144E0: .4byte gStringVar3 _081144E4: .4byte gStringVar4 _081144E8: .4byte gUnknown_841A3FF thumb_func_end sub_811448C thumb_func_start sub_81144EC sub_81144EC: @ 81144EC push {r4,lr} adds r4, r0, 0 movs r0, 0xD strh r0, [r4] ldr r0, _08114514 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] ldrb r0, [r1] strb r0, [r4, 0x4] adds r0, r4, 0x5 adds r1, 0x1 movs r2, 0x7 bl memcpy adds r4, 0xC adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114514: .4byte gUnknown_203AF98 thumb_func_end sub_81144EC thumb_func_start sub_8114518 sub_8114518: @ 8114518 push {r4,r5,lr} adds r5, r0, 0 bl UnkTextUtil_Reset ldr r4, _08114568 @ =gStringVar1 adds r0, r4, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r1, r5, 0x5 adds r0, r4, 0 movs r2, 0x7 bl memcpy adds r0, r4, 0 bl sub_8115834 movs r0, 0 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r1, _0811456C @ =gUnknown_8456AE4 ldrb r0, [r5, 0x4] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x1 bl UnkTextUtil_SetPtrI ldr r0, _08114570 @ =gStringVar4 ldr r1, _08114574 @ =gUnknown_841A422 bl UnkTextUtil_StringExpandPlaceholders adds r5, 0xC adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114568: .4byte gStringVar1 _0811456C: .4byte gUnknown_8456AE4 _08114570: .4byte gStringVar4 _08114574: .4byte gUnknown_841A422 thumb_func_end sub_8114518 thumb_func_start sub_8114578 sub_8114578: @ 8114578 push {r4,lr} adds r4, r0, 0 movs r0, 0xE strh r0, [r4] ldr r0, _081145A0 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] ldrb r0, [r1] strb r0, [r4, 0x4] adds r0, r4, 0x5 adds r1, 0x1 movs r2, 0x7 bl memcpy adds r4, 0xC adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _081145A0: .4byte gUnknown_203AF98 thumb_func_end sub_8114578 thumb_func_start sub_81145A4 sub_81145A4: @ 81145A4 push {r4,r5,lr} adds r5, r0, 0 bl UnkTextUtil_Reset ldr r4, _081145F4 @ =gStringVar1 adds r0, r4, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r1, r5, 0x5 adds r0, r4, 0 movs r2, 0x7 bl memcpy adds r0, r4, 0 bl sub_8115834 movs r0, 0 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r1, _081145F8 @ =gUnknown_8456AE4 ldrb r0, [r5, 0x4] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x1 bl UnkTextUtil_SetPtrI ldr r0, _081145FC @ =gStringVar4 ldr r1, _08114600 @ =gUnknown_841A477 bl UnkTextUtil_StringExpandPlaceholders adds r5, 0xC adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081145F4: .4byte gStringVar1 _081145F8: .4byte gUnknown_8456AE4 _081145FC: .4byte gStringVar4 _08114600: .4byte gUnknown_841A477 thumb_func_end sub_81145A4 thumb_func_start sub_8114604 sub_8114604: @ 8114604 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 movs r0, 0xF strh r0, [r4] ldr r0, _08114648 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] ldrb r0, [r5] strb r0, [r4, 0x4] adds r0, r4, 0x5 adds r1, r5, 0x1 movs r2, 0x7 bl memcpy adds r0, r4, 0 adds r0, 0xC adds r1, r5, 0 adds r1, 0x8 movs r2, 0x7 bl memcpy adds r0, r4, 0 adds r0, 0x13 adds r5, 0xF adds r1, r5, 0 movs r2, 0x7 bl memcpy adds r4, 0x1A adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114648: .4byte gUnknown_203AF98 thumb_func_end sub_8114604 thumb_func_start sub_811464C sub_811464C: @ 811464C push {r4-r6,lr} mov r6, r8 push {r6} adds r4, r0, 0 bl UnkTextUtil_Reset ldr r0, _081146F4 @ =gStringVar1 mov r8, r0 movs r1, 0xFF movs r2, 0x8 bl memset ldr r6, _081146F8 @ =gStringVar2 adds r0, r6, 0 movs r1, 0xFF movs r2, 0x8 bl memset ldr r5, _081146FC @ =gStringVar3 adds r0, r5, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r1, r4, 0x5 mov r0, r8 bl StringCopy7 adds r1, r4, 0 adds r1, 0xC adds r0, r6, 0 bl StringCopy7 adds r1, r4, 0 adds r1, 0x13 adds r0, r5, 0 bl StringCopy7 mov r0, r8 bl sub_8115834 adds r0, r6, 0 bl sub_8115834 adds r0, r5, 0 bl sub_8115834 ldr r0, _08114700 @ =gSaveBlock2Ptr ldr r1, [r0] movs r0, 0 bl UnkTextUtil_SetPtrI movs r0, 0x1 mov r1, r8 bl UnkTextUtil_SetPtrI movs r0, 0x2 adds r1, r6, 0 bl UnkTextUtil_SetPtrI movs r0, 0x3 adds r1, r5, 0 bl UnkTextUtil_SetPtrI ldr r1, _08114704 @ =gUnknown_8456AE4 ldrb r0, [r4, 0x4] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x4 bl UnkTextUtil_SetPtrI ldr r0, _08114708 @ =gStringVar4 ldr r1, _0811470C @ =gUnknown_841A4C6 bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x1A adds r0, r4, 0 pop {r3} mov r8, r3 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _081146F4: .4byte gStringVar1 _081146F8: .4byte gStringVar2 _081146FC: .4byte gStringVar3 _08114700: .4byte gSaveBlock2Ptr _08114704: .4byte gUnknown_8456AE4 _08114708: .4byte gStringVar4 _0811470C: .4byte gUnknown_841A4C6 thumb_func_end sub_811464C thumb_func_start sub_8114710 sub_8114710: @ 8114710 movs r1, 0x10 strh r1, [r0] ldr r1, _08114720 @ =gUnknown_203AF98 ldrh r1, [r1] strh r1, [r0, 0x2] adds r0, 0x4 bx lr .align 2, 0 _08114720: .4byte gUnknown_203AF98 thumb_func_end sub_8114710 thumb_func_start sub_8114724 sub_8114724: @ 8114724 push {r4,lr} adds r4, r0, 0 ldr r0, _0811473C @ =gStringVar4 ldr r1, _08114740 @ =gUnknown_841A50B bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _0811473C: .4byte gStringVar4 _08114740: .4byte gUnknown_841A50B thumb_func_end sub_8114724 thumb_func_start sub_8114744 sub_8114744: @ 8114744 movs r1, 0x11 strh r1, [r0] ldr r1, _08114754 @ =gUnknown_203AF98 ldrh r1, [r1] strh r1, [r0, 0x2] adds r0, 0x4 bx lr .align 2, 0 _08114754: .4byte gUnknown_203AF98 thumb_func_end sub_8114744 thumb_func_start sub_8114758 sub_8114758: @ 8114758 push {r4,lr} adds r4, r0, 0 ldr r0, _08114770 @ =gStringVar4 ldr r1, _08114774 @ =gUnknown_841A732 bl StringExpandPlaceholders adds r4, 0x4 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114770: .4byte gStringVar4 _08114774: .4byte gUnknown_841A732 thumb_func_end sub_8114758 thumb_func_start sub_8114778 sub_8114778: @ 8114778 push {r4,lr} adds r4, r0, 0 adds r4, 0x8 movs r2, 0x12 strh r2, [r0] ldr r2, _081147A4 @ =gUnknown_203AF98 ldrh r2, [r2] strh r2, [r0, 0x2] ldrh r2, [r1] strh r2, [r0, 0x4] ldrh r2, [r1, 0x2] strh r2, [r0, 0x6] adds r1, 0x4 adds r0, r4, 0 movs r2, 0x7 bl memcpy adds r4, 0x8 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _081147A4: .4byte gUnknown_203AF98 thumb_func_end sub_8114778 thumb_func_start sub_81147A8 sub_81147A8: @ 81147A8 push {r4-r6,lr} adds r5, r0, 0 adds r6, r5, 0 adds r6, 0x8 ldr r4, _081147F4 @ =gStringVar1 adds r0, r4, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r0, r4, 0 adds r1, r6, 0 movs r2, 0x7 bl memcpy adds r0, r4, 0 bl sub_8115834 ldrh r0, [r5, 0x6] ldr r1, _081147F8 @ =gStringVar2 movs r2, 0 bl sub_8113EAC ldrh r0, [r5, 0x4] ldr r1, _081147FC @ =gStringVar3 movs r2, 0 bl sub_8113EAC ldr r0, _08114800 @ =gStringVar4 ldr r1, _08114804 @ =gUnknown_841A76A bl StringExpandPlaceholders adds r6, 0x8 adds r0, r6, 0 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _081147F4: .4byte gStringVar1 _081147F8: .4byte gStringVar2 _081147FC: .4byte gStringVar3 _08114800: .4byte gStringVar4 _08114804: .4byte gUnknown_841A76A thumb_func_end sub_81147A8 thumb_func_start sub_8114808 sub_8114808: @ 8114808 push {r4,lr} adds r4, r0, 0 movs r0, 0x13 strh r0, [r4] ldr r0, _08114830 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] ldrb r0, [r1] strb r0, [r4, 0x4] adds r0, r4, 0x5 adds r1, 0x1 movs r2, 0x7 bl memcpy adds r4, 0xC adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114830: .4byte gUnknown_203AF98 thumb_func_end sub_8114808 thumb_func_start sub_8114834 sub_8114834: @ 8114834 push {r4,r5,lr} adds r5, r0, 0 ldr r4, _08114878 @ =gStringVar1 adds r0, r4, 0 movs r1, 0xFF movs r2, 0x8 bl memset adds r1, r5, 0x5 adds r0, r4, 0 movs r2, 0x7 bl memcpy adds r0, r4, 0 bl sub_8115834 ldr r0, _0811487C @ =gStringVar2 ldr r2, _08114880 @ =gUnknown_8456AE4 ldrb r1, [r5, 0x4] lsls r1, 2 adds r1, r2 ldr r1, [r1] bl StringCopy ldr r0, _08114884 @ =gStringVar4 ldr r1, _08114888 @ =gUnknown_841A7B0 bl StringExpandPlaceholders adds r5, 0xC adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114878: .4byte gStringVar1 _0811487C: .4byte gStringVar2 _08114880: .4byte gUnknown_8456AE4 _08114884: .4byte gStringVar4 _08114888: .4byte gUnknown_841A7B0 thumb_func_end sub_8114834 thumb_func_start sub_811488C sub_811488C: @ 811488C push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x14 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _081148B4 ldrh r0, [r4] strh r0, [r2] ldrh r0, [r4, 0x2] strh r0, [r2, 0x2] ldrb r0, [r4, 0x4] strb r0, [r2, 0x4] ldrb r0, [r4, 0x5] strb r0, [r2, 0x5] adds r0, r2, 0x6 b _081148B6 _081148B4: movs r0, 0 _081148B6: pop {r4} pop {r1} bx r1 thumb_func_end sub_811488C thumb_func_start sub_81148BC sub_81148BC: @ 81148BC push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x14 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x4 bl UnkTextUtil_Reset ldrb r0, [r4, 0x4] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldrb r0, [r5, 0x1] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0x2 bl UnkTextUtil_SetPtrI ldrh r0, [r4, 0x2] movs r1, 0 movs r2, 0x3 bl sub_8113EAC ldr r0, _08114910 @ =gStringVar4 ldr r1, _08114914 @ =gUnknown_841A566 bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x6 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114910: .4byte gStringVar4 _08114914: .4byte gUnknown_841A566 thumb_func_end sub_81148BC thumb_func_start sub_8114918 sub_8114918: @ 8114918 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x15 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _0811493C ldrh r0, [r4] strh r0, [r2] ldrh r0, [r4, 0x2] strh r0, [r2, 0x2] ldrb r0, [r4, 0x4] strb r0, [r2, 0x4] adds r0, r2, 0x6 b _0811493E _0811493C: movs r0, 0 _0811493E: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114918 thumb_func_start sub_8114944 sub_8114944: @ 8114944 push {r4,lr} adds r1, r0, 0 movs r0, 0x15 bl sub_8113E88 adds r4, r0, 0 bl UnkTextUtil_Reset ldrb r0, [r4, 0x4] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldrh r0, [r4, 0x2] movs r1, 0 movs r2, 0x2 bl sub_8113EAC ldr r0, _08114988 @ =gStringVar4 ldr r1, _0811498C @ =gUnknown_841A5D9 bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x6 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114988: .4byte gStringVar4 _0811498C: .4byte gUnknown_841A5D9 thumb_func_end sub_8114944 thumb_func_start sub_8114990 sub_8114990: @ 8114990 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x16 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 bne _081149A8 movs r0, 0 b _081149CA _081149A8: adds r1, r2, 0x4 ldrb r0, [r4, 0x4] cmp r0, 0xE bne _081149BC ldrh r0, [r4, 0x2] strh r0, [r2] ldrh r0, [r4] strh r0, [r2, 0x2] ldrb r0, [r4, 0x5] b _081149C6 _081149BC: ldrh r0, [r4] strh r0, [r2] ldrh r0, [r4, 0x2] strh r0, [r2, 0x2] ldrb r0, [r4, 0x4] _081149C6: strb r0, [r2, 0x4] adds r0, r1, 0x2 _081149CA: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114990 thumb_func_start sub_81149D0 sub_81149D0: @ 81149D0 push {r4,lr} adds r1, r0, 0 movs r0, 0x16 bl sub_8113E88 adds r4, r0, 0 bl UnkTextUtil_Reset ldrb r0, [r4, 0x4] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldrh r0, [r4, 0x2] movs r1, 0 movs r2, 0x2 bl sub_8113EAC ldr r0, _08114A14 @ =gStringVar4 ldr r1, _08114A18 @ =gUnknown_841A60A bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x6 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114A14: .4byte gStringVar4 _08114A18: .4byte gUnknown_841A60A thumb_func_end sub_81149D0 thumb_func_start sub_8114A1C sub_8114A1C: @ 8114A1C push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x17 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114A42 ldrh r0, [r4] strh r0, [r2] adds r0, r2, 0x2 ldrb r1, [r4, 0x4] strb r1, [r2, 0x2] ldrb r1, [r4, 0x5] strb r1, [r0, 0x1] adds r0, 0x2 b _08114A44 _08114A42: movs r0, 0 _08114A44: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114A1C thumb_func_start sub_8114A4C sub_8114A4C: @ 8114A4C push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x17 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 bl UnkTextUtil_Reset ldrb r0, [r4, 0x2] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldrb r0, [r5, 0x1] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0x2 bl UnkTextUtil_SetPtrI ldr r0, _08114A98 @ =gStringVar4 ldr r1, _08114A9C @ =gUnknown_841A59C bl UnkTextUtil_StringExpandPlaceholders adds r5, 0x2 adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114A98: .4byte gStringVar4 _08114A9C: .4byte gUnknown_841A59C thumb_func_end sub_8114A4C thumb_func_start sub_8114AA0 sub_8114AA0: @ 8114AA0 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x18 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114AC0 ldrh r0, [r4] strh r0, [r2] ldrb r0, [r4, 0x4] strb r0, [r2, 0x2] adds r0, r2, 0x4 b _08114AC2 _08114AC0: movs r0, 0 _08114AC2: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114AA0 thumb_func_start sub_8114AC8 sub_8114AC8: @ 8114AC8 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x18 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 bl UnkTextUtil_Reset ldrb r0, [r4, 0x2] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldr r0, _08114B04 @ =gStringVar4 ldr r1, _08114B08 @ =gUnknown_841A5FA bl UnkTextUtil_StringExpandPlaceholders adds r5, 0x2 adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114B04: .4byte gStringVar4 _08114B08: .4byte gUnknown_841A5FA thumb_func_end sub_8114AC8 thumb_func_start sub_8114B0C sub_8114B0C: @ 8114B0C push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x19 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114B2C ldrh r0, [r4] strh r0, [r2] ldrb r0, [r4, 0x4] strb r0, [r2, 0x2] adds r0, r2, 0x4 b _08114B2E _08114B2C: movs r0, 0 _08114B2E: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114B0C thumb_func_start sub_8114B34 sub_8114B34: @ 8114B34 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x19 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 bl UnkTextUtil_Reset ldrb r0, [r4, 0x2] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldr r0, _08114B70 @ =gStringVar4 ldr r1, _08114B74 @ =gUnknown_841A632 bl UnkTextUtil_StringExpandPlaceholders adds r5, 0x2 adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114B70: .4byte gStringVar4 _08114B74: .4byte gUnknown_841A632 thumb_func_end sub_8114B34 thumb_func_start sub_8114B78 sub_8114B78: @ 8114B78 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x1A adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114B98 ldrh r0, [r4] strh r0, [r2] ldrb r0, [r4, 0x4] strb r0, [r2, 0x2] adds r0, r2, 0x4 b _08114B9A _08114B98: movs r0, 0 _08114B9A: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114B78 thumb_func_start sub_8114BA0 sub_8114BA0: @ 8114BA0 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x1A bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 bl UnkTextUtil_Reset ldrh r0, [r4] movs r1, 0 movs r2, 0 bl sub_8113EAC ldrb r0, [r4, 0x2] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0x1 bl UnkTextUtil_SetPtrI ldr r0, _08114BDC @ =gStringVar4 ldr r1, _08114BE0 @ =gUnknown_841A64F bl UnkTextUtil_StringExpandPlaceholders adds r5, 0x2 adds r0, r5, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08114BDC: .4byte gStringVar4 _08114BE0: .4byte gUnknown_841A64F thumb_func_end sub_8114BA0 thumb_func_start sub_8114BE4 sub_8114BE4: @ 8114BE4 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x1B adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114C04 ldrb r0, [r4, 0x4] strb r0, [r2] ldrb r0, [r4, 0x5] strb r0, [r2, 0x1] adds r0, r2, 0x2 b _08114C06 _08114C04: movs r0, 0 _08114C06: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114BE4 thumb_func_start sub_8114C0C sub_8114C0C: @ 8114C0C push {r4,lr} adds r1, r0, 0 movs r0, 0x1B bl sub_8113E88 adds r4, r0, 0 bl UnkTextUtil_Reset ldrb r0, [r4] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrb r0, [r4] ldrb r1, [r4, 0x1] cmp r0, r1 bne _08114C40 ldr r1, _08114C3C @ =gUnknown_841A694 movs r0, 0x1 bl UnkTextUtil_SetPtrI b _08114C4E .align 2, 0 _08114C3C: .4byte gUnknown_841A694 _08114C40: ldrb r0, [r4, 0x1] bl GetBoxNamePtr adds r1, r0, 0 movs r0, 0x1 bl UnkTextUtil_SetPtrI _08114C4E: ldr r0, _08114C60 @ =gStringVar4 ldr r1, _08114C64 @ =gUnknown_841A66E bl UnkTextUtil_StringExpandPlaceholders adds r0, r4, 0x2 pop {r4} pop {r1} bx r1 .align 2, 0 _08114C60: .4byte gStringVar4 _08114C64: .4byte gUnknown_841A66E thumb_func_end sub_8114C0C thumb_func_start sub_8114C68 sub_8114C68: @ 8114C68 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x1C adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114C84 ldrh r0, [r4] strh r0, [r2] adds r0, r2, 0x2 b _08114C86 _08114C84: movs r0, 0 _08114C86: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114C68 thumb_func_start sub_8114C8C sub_8114C8C: @ 8114C8C push {r4,lr} adds r1, r0, 0 movs r0, 0x1C bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4] ldr r1, _08114CB4 @ =gStringVar1 bl sub_8099E90 ldr r0, _08114CB8 @ =gStringVar4 ldr r1, _08114CBC @ =gUnknown_841A391 bl StringExpandPlaceholders adds r4, 0x2 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114CB4: .4byte gStringVar1 _08114CB8: .4byte gStringVar4 _08114CBC: .4byte gUnknown_841A391 thumb_func_end sub_8114C8C thumb_func_start sub_8114CC0 sub_8114CC0: @ 8114CC0 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x1D adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _08114CDC ldrh r0, [r4] strh r0, [r2] adds r0, r2, 0x2 b _08114CDE _08114CDC: movs r0, 0 _08114CDE: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114CC0 thumb_func_start sub_8114CE4 sub_8114CE4: @ 8114CE4 push {r4,lr} adds r1, r0, 0 movs r0, 0x1D bl sub_8113E88 adds r4, r0, 0 ldrh r0, [r4] ldr r1, _08114D0C @ =gStringVar1 bl sub_8099E90 ldr r0, _08114D10 @ =gStringVar4 ldr r1, _08114D14 @ =gUnknown_841A3DA bl StringExpandPlaceholders adds r4, 0x2 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08114D0C: .4byte gStringVar1 _08114D10: .4byte gStringVar4 _08114D14: .4byte gUnknown_841A3DA thumb_func_end sub_8114CE4 thumb_func_start sub_8114D18 sub_8114D18: @ 8114D18 push {r4,lr} adds r4, r2, 0 lsls r0, 16 lsrs r0, 16 bl sub_8113DE0 adds r1, r0, 0 cmp r1, 0 beq _08114D44 ldrh r0, [r4, 0x2] strh r0, [r1] ldrh r0, [r4, 0x4] strh r0, [r1, 0x2] ldrh r0, [r4] strh r0, [r1, 0x4] ldrb r0, [r4, 0x7] strb r0, [r1, 0x6] ldrb r0, [r4, 0x6] strb r0, [r1, 0x7] adds r0, r1, 0 adds r0, 0x8 b _08114D46 _08114D44: movs r0, 0 _08114D46: pop {r4} pop {r1} bx r1 thumb_func_end sub_8114D18 thumb_func_start sub_8114D4C sub_8114D4C: @ 8114D4C push {lr} adds r3, r0, 0 adds r2, r1, 0 ldr r1, _08114D64 @ =gUnknown_203B048 movs r0, 0x1 strb r0, [r1] movs r0, 0x1E adds r1, r3, 0 bl sub_8114D18 pop {r1} bx r1 .align 2, 0 _08114D64: .4byte gUnknown_203B048 thumb_func_end sub_8114D4C thumb_func_start sub_8114D68 sub_8114D68: @ 8114D68 push {r4-r6,lr} adds r1, r0, 0 movs r0, 0x1E bl sub_8113E88 adds r4, r0, 0 adds r6, r4, 0x6 bl UnkTextUtil_Reset ldr r5, _08114DD4 @ =gStringVar1 ldrb r1, [r4, 0x6] adds r0, r5, 0 bl sub_80C4DF8 movs r0, 0 adds r1, r5, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4, 0x4] lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _08114DD8 @ =gUnknown_823EACC adds r1, r0 movs r0, 0x1 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x2 bl sub_8113EAC ldrh r0, [r4, 0x2] movs r1, 0 movs r2, 0x3 bl sub_8113EAC ldr r1, _08114DDC @ =gUnknown_8456ACC ldrb r0, [r6, 0x1] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x4 bl UnkTextUtil_SetPtrI ldr r0, _08114DE0 @ =gStringVar4 ldr r1, _08114DE4 @ =gUnknown_841AF0C bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x8 adds r0, r4, 0 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _08114DD4: .4byte gStringVar1 _08114DD8: .4byte gUnknown_823EACC _08114DDC: .4byte gUnknown_8456ACC _08114DE0: .4byte gStringVar4 _08114DE4: .4byte gUnknown_841AF0C thumb_func_end sub_8114D68 thumb_func_start sub_8114DE8 sub_8114DE8: @ 8114DE8 push {r4-r6,lr} adds r6, r1, 0 adds r4, r0, 0 adds r5, r4, 0 adds r5, 0x8 ldr r0, _08114E08 @ =gUnknown_8456AA0 ldrb r1, [r0, 0x1F] adds r0, r4, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 bne _08114E0C movs r0, 0 b _08114E5E .align 2, 0 _08114E08: .4byte gUnknown_8456AA0 _08114E0C: ldrb r0, [r4, 0x8] cmp r0, 0 bne _08114E22 ldrb r0, [r5, 0x1] cmp r0, 0 bne _08114E22 movs r0, 0x1F strh r0, [r4] ldr r0, _08114E64 @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] _08114E22: ldrh r0, [r6] adds r2, r0, 0 cmp r2, 0 beq _08114E2C strh r0, [r4, 0x4] _08114E2C: ldrh r0, [r6, 0x2] adds r1, r0, 0 cmp r1, 0 beq _08114E36 strh r1, [r4, 0x6] _08114E36: cmp r2, 0 beq _08114E46 ldrb r2, [r5] adds r0, r2, 0 cmp r0, 0xFF beq _08114E46 adds r0, r2, 0x1 strb r0, [r5] _08114E46: lsls r0, r1, 16 cmp r0, 0 beq _08114E58 ldrb r1, [r5, 0x1] adds r0, r1, 0 cmp r0, 0xFF beq _08114E58 adds r0, r1, 0x1 strb r0, [r5, 0x1] _08114E58: ldrb r0, [r6, 0x4] strb r0, [r5, 0x2] adds r0, r5, 0x4 _08114E5E: pop {r4-r6} pop {r1} bx r1 .align 2, 0 _08114E64: .4byte gUnknown_203AF98 thumb_func_end sub_8114DE8 thumb_func_start sub_8114E68 sub_8114E68: @ 8114E68 push {r4-r6,lr} adds r5, r0, 0 ldr r0, _08114E80 @ =gUnknown_8456AA0 ldrb r1, [r0, 0x1F] adds r0, r5, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 bne _08114E84 movs r0, 0 b _08114FAE .align 2, 0 _08114E80: .4byte gUnknown_8456AA0 _08114E84: adds r6, r5, 0 adds r6, 0x8 bl UnkTextUtil_Reset ldr r4, _08114F00 @ =gStringVar1 ldrb r1, [r6, 0x2] adds r0, r4, 0 bl sub_80C4DF8 movs r0, 0 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r5, 0x4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldr r4, _08114F04 @ =gStringVar2 ldrb r1, [r5, 0x8] adds r0, r4, 0 movs r2, 0 movs r3, 0x3 bl ConvertIntToDecimalStringN movs r0, 0x2 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r5, 0x6] movs r1, 0 movs r2, 0x3 bl sub_8113EAC ldr r4, _08114F08 @ =gStringVar3 ldrb r1, [r6, 0x1] adds r0, r4, 0 movs r2, 0 movs r3, 0x3 bl ConvertIntToDecimalStringN movs r0, 0x4 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r0, _08114F0C @ =gSaveBlock2Ptr ldr r1, [r0] movs r0, 0x5 bl UnkTextUtil_SetPtrI ldrb r0, [r5, 0x8] cmp r0, 0 bne _08114F2C ldrb r0, [r6, 0x1] cmp r0, 0x1 bne _08114F18 ldr r0, _08114F10 @ =gStringVar4 ldr r1, _08114F14 @ =gUnknown_841AA01 bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F00: .4byte gStringVar1 _08114F04: .4byte gStringVar2 _08114F08: .4byte gStringVar3 _08114F0C: .4byte gSaveBlock2Ptr _08114F10: .4byte gStringVar4 _08114F14: .4byte gUnknown_841AA01 _08114F18: ldr r0, _08114F24 @ =gStringVar4 ldr r1, _08114F28 @ =gUnknown_841AA2B bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F24: .4byte gStringVar4 _08114F28: .4byte gUnknown_841AA2B _08114F2C: ldrb r1, [r6, 0x1] cmp r1, 0 bne _08114F5C cmp r0, 0x1 bne _08114F48 ldr r0, _08114F40 @ =gStringVar4 ldr r1, _08114F44 @ =gUnknown_841A9A9 bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F40: .4byte gStringVar4 _08114F44: .4byte gUnknown_841A9A9 _08114F48: ldr r0, _08114F54 @ =gStringVar4 ldr r1, _08114F58 @ =gUnknown_841A9D4 bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F54: .4byte gStringVar4 _08114F58: .4byte gUnknown_841A9D4 _08114F5C: cmp r0, 0x1 bne _08114F8C cmp r1, 0x1 bne _08114F78 ldr r0, _08114F70 @ =gStringVar4 ldr r1, _08114F74 @ =gUnknown_841AA76 bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F70: .4byte gStringVar4 _08114F74: .4byte gUnknown_841AA76 _08114F78: ldr r0, _08114F84 @ =gStringVar4 ldr r1, _08114F88 @ =gUnknown_841AAAA bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F84: .4byte gStringVar4 _08114F88: .4byte gUnknown_841AAAA _08114F8C: cmp r1, 0x1 bne _08114FA4 ldr r0, _08114F9C @ =gStringVar4 ldr r1, _08114FA0 @ =gUnknown_841AAEC bl UnkTextUtil_StringExpandPlaceholders b _08114FAC .align 2, 0 _08114F9C: .4byte gStringVar4 _08114FA0: .4byte gUnknown_841AAEC _08114FA4: ldr r0, _08114FB4 @ =gStringVar4 ldr r1, _08114FB8 @ =gUnknown_841AB29 bl UnkTextUtil_StringExpandPlaceholders _08114FAC: adds r0, r6, 0x4 _08114FAE: pop {r4-r6} pop {r1} bx r1 .align 2, 0 _08114FB4: .4byte gStringVar4 _08114FB8: .4byte gUnknown_841AB29 thumb_func_end sub_8114E68 thumb_func_start sub_8114FBC sub_8114FBC: @ 8114FBC push {lr} lsls r0, 16 lsrs r0, 16 adds r1, r0, 0 cmp r0, 0x96 beq _08114FE6 cmp r0, 0x96 bgt _08114FD6 cmp r0, 0x92 bgt _08114FEA cmp r0, 0x8F blt _08114FEA b _08114FE6 _08114FD6: cmp r1, 0xF9 blt _08114FEA cmp r1, 0xFA ble _08114FE6 movs r0, 0xCD lsls r0, 1 cmp r1, r0 bne _08114FEA _08114FE6: movs r0, 0x1 b _08114FEC _08114FEA: movs r0, 0 _08114FEC: pop {r1} bx r1 thumb_func_end sub_8114FBC thumb_func_start sub_8114FF0 sub_8114FF0: @ 8114FF0 push {lr} adds r3, r0, 0 adds r2, r1, 0 ldr r1, _08115008 @ =gUnknown_203B048 movs r0, 0x1 strb r0, [r1] movs r0, 0x20 adds r1, r3, 0 bl sub_8114D18 pop {r1} bx r1 .align 2, 0 _08115008: .4byte gUnknown_203B048 thumb_func_end sub_8114FF0 thumb_func_start sub_811500C sub_811500C: @ 811500C push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x20 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x6 bl UnkTextUtil_Reset ldrh r0, [r4, 0x4] lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, _08115068 @ =gUnknown_823EACC adds r1, r0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldrh r0, [r4, 0x2] movs r1, 0 movs r2, 0x2 bl sub_8113EAC ldr r1, _0811506C @ =gUnknown_8456ACC ldrb r0, [r5, 0x1] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x3 bl UnkTextUtil_SetPtrI ldr r0, _08115070 @ =gStringVar4 ldr r1, _08115074 @ =gUnknown_841AF3E bl UnkTextUtil_StringExpandPlaceholders adds r4, 0x8 adds r0, r4, 0 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _08115068: .4byte gUnknown_823EACC _0811506C: .4byte gUnknown_8456ACC _08115070: .4byte gStringVar4 _08115074: .4byte gUnknown_841AF3E thumb_func_end sub_811500C thumb_func_start sub_8115078 sub_8115078: @ 8115078 push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 ldr r0, _081150B4 @ =gUnknown_8456AA0 adds r0, 0x21 ldrb r1, [r0] adds r0, r4, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 beq _081150C4 ldr r1, _081150B8 @ =0x00002021 adds r0, r1, 0 strh r0, [r4] ldr r0, _081150BC @ =gUnknown_203AF98 ldrh r0, [r0] strh r0, [r4, 0x2] ldrh r0, [r5, 0x2] strh r0, [r4, 0x4] ldrh r0, [r5, 0x4] strh r0, [r4, 0x6] ldrb r0, [r5, 0x6] strb r0, [r4, 0x8] ldr r1, _081150C0 @ =gUnknown_203B048 movs r0, 0x1 strb r0, [r1] adds r0, r4, 0 adds r0, 0xA b _081150C6 .align 2, 0 _081150B4: .4byte gUnknown_8456AA0 _081150B8: .4byte 0x00002021 _081150BC: .4byte gUnknown_203AF98 _081150C0: .4byte gUnknown_203B048 _081150C4: movs r0, 0 _081150C6: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_8115078 thumb_func_start sub_81150CC sub_81150CC: @ 81150CC push {r4,r5,lr} adds r4, r0, 0 ldr r0, _081150E8 @ =gUnknown_8456AA0 adds r0, 0x21 ldrb r1, [r0] adds r0, r4, 0 bl sub_8110944 lsls r0, 24 cmp r0, 0 bne _081150EC movs r0, 0 b _081151AE .align 2, 0 _081150E8: .4byte gUnknown_8456AA0 _081150EC: adds r5, r4, 0 adds r5, 0x8 bl UnkTextUtil_Reset ldr r0, _08115108 @ =gUnknown_203B044 ldrh r0, [r0, 0x2] cmp r0, 0x1 beq _08115148 cmp r0, 0x1 bgt _0811510C cmp r0, 0 beq _08115112 b _081151AC .align 2, 0 _08115108: .4byte gUnknown_203B044 _0811510C: cmp r0, 0x2 beq _08115194 b _081151AC _08115112: ldr r0, _08115134 @ =gSaveBlock2Ptr ldr r1, [r0] movs r0, 0 bl UnkTextUtil_SetPtrI ldr r0, _08115138 @ =gSaveBlock1Ptr ldr r1, [r0] ldr r0, _0811513C @ =0x00003a4c adds r1, r0 movs r0, 0x1 bl UnkTextUtil_SetPtrI ldr r0, _08115140 @ =gStringVar4 ldr r1, _08115144 @ =gUnknown_841A2E1 bl UnkTextUtil_StringExpandPlaceholders b _081151AC .align 2, 0 _08115134: .4byte gSaveBlock2Ptr _08115138: .4byte gSaveBlock1Ptr _0811513C: .4byte 0x00003a4c _08115140: .4byte gStringVar4 _08115144: .4byte gUnknown_841A2E1 _08115148: ldr r0, _08115180 @ =gSaveBlock1Ptr ldr r1, [r0] ldr r0, _08115184 @ =0x00003a4c adds r1, r0 movs r0, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4, 0x4] movs r1, 0 movs r2, 0x1 bl sub_8113EAC ldr r0, _08115188 @ =gSaveBlock2Ptr ldr r1, [r0] movs r0, 0x2 bl UnkTextUtil_SetPtrI ldrh r0, [r4, 0x6] movs r1, 0 movs r2, 0x3 bl sub_8113EAC ldr r0, _0811518C @ =gStringVar4 ldr r1, _08115190 @ =gUnknown_841A312 bl UnkTextUtil_StringExpandPlaceholders b _081151AC .align 2, 0 _08115180: .4byte gSaveBlock1Ptr _08115184: .4byte 0x00003a4c _08115188: .4byte gSaveBlock2Ptr _0811518C: .4byte gStringVar4 _08115190: .4byte gUnknown_841A312 _08115194: ldr r1, _081151B4 @ =gUnknown_8456AD8 ldrb r0, [r4, 0x8] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0 bl UnkTextUtil_SetPtrI ldr r0, _081151B8 @ =gStringVar4 ldr r1, _081151BC @ =gUnknown_841A349 bl UnkTextUtil_StringExpandPlaceholders _081151AC: adds r0, r5, 0x2 _081151AE: pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081151B4: .4byte gUnknown_8456AD8 _081151B8: .4byte gStringVar4 _081151BC: .4byte gUnknown_841A349 thumb_func_end sub_81150CC thumb_func_start sub_81151C0 sub_81151C0: @ 81151C0 push {lr} adds r3, r0, 0 adds r2, r1, 0 ldr r1, _081151D8 @ =gUnknown_203B048 movs r0, 0x1 strb r0, [r1] movs r0, 0x22 adds r1, r3, 0 bl sub_8114D18 pop {r1} bx r1 .align 2, 0 _081151D8: .4byte gUnknown_203B048 thumb_func_end sub_81151C0 thumb_func_start sub_81151DC sub_81151DC: @ 81151DC push {r4-r6,lr} adds r1, r0, 0 movs r0, 0x22 bl sub_8113E88 adds r5, r0, 0 adds r6, r5, 0x6 bl UnkTextUtil_Reset ldr r4, _0811522C @ =gStringVar1 ldrb r1, [r5, 0x6] adds r0, r4, 0 bl sub_80C4DF8 movs r0, 0 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r3, _08115230 @ =gUnknown_823EAC8 ldrh r1, [r5, 0x4] lsls r0, r1, 2 adds r0, r1 lsls r2, r0, 3 adds r0, r2, r3 ldrb r0, [r0, 0x1] cmp r0, 0x51 beq _0811521A cmp r0, 0x59 beq _0811521A cmp r0, 0x5A bne _08115234 _0811521A: movs r0, 0x6 bl GetExpandedPlaceholder adds r1, r0, 0 movs r0, 0x1 bl UnkTextUtil_SetPtrI b _0811523E .align 2, 0 _0811522C: .4byte gStringVar1 _08115230: .4byte gUnknown_823EAC8 _08115234: adds r1, r3, 0x4 adds r1, r2, r1 movs r0, 0x1 bl UnkTextUtil_SetPtrI _0811523E: ldrh r0, [r5] movs r1, 0 movs r2, 0x2 bl sub_8113EAC ldrh r0, [r5, 0x2] movs r1, 0 movs r2, 0x3 bl sub_8113EAC ldr r1, _08115274 @ =gUnknown_8456ACC ldrb r0, [r6, 0x1] lsls r0, 2 adds r0, r1 ldr r1, [r0] movs r0, 0x4 bl UnkTextUtil_SetPtrI ldr r0, _08115278 @ =gStringVar4 ldr r1, _0811527C @ =gUnknown_841AF6D bl UnkTextUtil_StringExpandPlaceholders adds r0, r6, 0x2 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _08115274: .4byte gUnknown_8456ACC _08115278: .4byte gStringVar4 _0811527C: .4byte gUnknown_841AF6D thumb_func_end sub_81151DC thumb_func_start sub_8115280 sub_8115280: @ 8115280 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x23 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 bne _08115298 movs r0, 0 b _081152B0 _08115298: ldrb r0, [r4] strb r0, [r2] ldrb r0, [r4, 0x1] strb r0, [r2, 0x1] lsls r0, 24 lsrs r0, 24 cmp r0, 0x24 bne _081152AE ldr r1, _081152B8 @ =gUnknown_203B048 movs r0, 0x1 strb r0, [r1] _081152AE: adds r0, r2, 0x2 _081152B0: pop {r4} pop {r1} bx r1 .align 2, 0 _081152B8: .4byte gUnknown_203B048 thumb_func_end sub_8115280 thumb_func_start sub_81152BC sub_81152BC: @ 81152BC push {r4-r7,lr} adds r1, r0, 0 movs r0, 0x23 bl sub_8113E88 adds r5, r0, 0 ldrb r6, [r5, 0x1] ldr r0, _08115318 @ =gStringVar1 ldrb r1, [r5] bl sub_80C4DF8 ldr r0, _0811531C @ =gStringVar2 ldr r2, _08115320 @ =gUnknown_8456AF0 lsls r1, r6, 2 adds r1, r2 ldr r1, [r1] bl StringCopy ldr r0, _08115324 @ =gUnknown_8456BE4 adds r1, r6, r0 ldrb r0, [r1] cmp r0, 0x5 bne _08115378 movs r4, 0 ldr r2, _08115328 @ =gUnknown_8456C17 adds r7, r5, 0x2 ldrb r1, [r5] _081152F2: adds r0, r4, r2 ldrb r0, [r0] cmp r1, r0 bne _08115334 movs r1, 0x82 lsls r1, 4 adds r0, r4, r1 bl FlagGet lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 beq _08115364 ldr r0, _0811532C @ =gStringVar4 ldr r1, _08115330 @ =gUnknown_841AE48 bl StringExpandPlaceholders b _0811533E .align 2, 0 _08115318: .4byte gStringVar1 _0811531C: .4byte gStringVar2 _08115320: .4byte gUnknown_8456AF0 _08115324: .4byte gUnknown_8456BE4 _08115328: .4byte gUnknown_8456C17 _0811532C: .4byte gStringVar4 _08115330: .4byte gUnknown_841AE48 _08115334: adds r0, r4, 0x1 lsls r0, 24 lsrs r4, r0, 24 cmp r4, 0x7 bls _081152F2 _0811533E: cmp r4, 0x8 bne _0811538A ldr r0, _08115358 @ =gStringVar4 ldr r2, _0811535C @ =gUnknown_8456BBC ldr r1, _08115360 @ =gUnknown_8456BE4 adds r1, r6, r1 ldrb r1, [r1] lsls r1, 2 adds r1, r2 ldr r1, [r1] bl StringExpandPlaceholders b _0811538A .align 2, 0 _08115358: .4byte gStringVar4 _0811535C: .4byte gUnknown_8456BBC _08115360: .4byte gUnknown_8456BE4 _08115364: ldr r0, _08115370 @ =gStringVar4 ldr r1, _08115374 @ =gUnknown_841AE8F bl StringExpandPlaceholders b _0811533E .align 2, 0 _08115370: .4byte gStringVar4 _08115374: .4byte gUnknown_841AE8F _08115378: ldr r0, _08115394 @ =gStringVar4 ldr r2, _08115398 @ =gUnknown_8456BBC ldrb r1, [r1] lsls r1, 2 adds r1, r2 ldr r1, [r1] bl StringExpandPlaceholders adds r7, r5, 0x2 _0811538A: adds r0, r7, 0 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08115394: .4byte gStringVar4 _08115398: .4byte gUnknown_8456BBC thumb_func_end sub_81152BC thumb_func_start sub_811539C sub_811539C: @ 811539C ldr r1, _081153A4 @ =gUnknown_203B04B movs r0, 0x1 strb r0, [r1] bx lr .align 2, 0 _081153A4: .4byte gUnknown_203B04B thumb_func_end sub_811539C thumb_func_start sub_81153A8 sub_81153A8: @ 81153A8 push {lr} adds r2, r1, 0 lsls r0, 16 lsrs r0, 16 cmp r0, 0x23 beq _081153C4 ldr r1, _081153C0 @ =gUnknown_203B04A movs r0, 0 strb r0, [r1] movs r0, 0x1 b _081153DE .align 2, 0 _081153C0: .4byte gUnknown_203B04A _081153C4: ldr r3, _081153D8 @ =gUnknown_203B04A ldrb r1, [r3] ldrb r0, [r2, 0x1] adds r0, 0x1 cmp r1, r0 beq _081153DC strb r0, [r3] movs r0, 0x1 b _081153DE .align 2, 0 _081153D8: .4byte gUnknown_203B04A _081153DC: movs r0, 0 _081153DE: pop {r1} bx r1 thumb_func_end sub_81153A8 thumb_func_start sub_81153E4 sub_81153E4: @ 81153E4 push {lr} lsls r0, 16 lsrs r0, 16 cmp r0, 0x23 bne _08115408 ldrb r0, [r1, 0x1] ldr r1, _08115400 @ =gUnknown_203B04B cmp r0, 0x20 bne _08115404 ldrb r0, [r1] cmp r0, 0 bne _08115404 movs r0, 0 b _0811540A .align 2, 0 _08115400: .4byte gUnknown_203B04B _08115404: movs r0, 0 strb r0, [r1] _08115408: movs r0, 0x1 _0811540A: pop {r1} bx r1 thumb_func_end sub_81153E4 thumb_func_start sub_8115410 sub_8115410: @ 8115410 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x24 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 bne _08115428 movs r0, 0 b _08115454 _08115428: ldrh r0, [r4] strh r0, [r2] adds r3, r2, 0x2 ldrb r0, [r4, 0x2] strb r0, [r2, 0x2] ldrb r0, [r4, 0x3] strb r0, [r3, 0x1] ldrb r0, [r2, 0x2] subs r0, 0x7 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bhi _0811544C ldr r1, _08115448 @ =gUnknown_203B048 movs r0, 0x2 b _08115450 .align 2, 0 _08115448: .4byte gUnknown_203B048 _0811544C: ldr r1, _0811545C @ =gUnknown_203B048 movs r0, 0x1 _08115450: strb r0, [r1] adds r0, r3, 0x2 _08115454: pop {r4} pop {r1} bx r1 .align 2, 0 _0811545C: .4byte gUnknown_203B048 thumb_func_end sub_8115410 thumb_func_start sub_8115460 sub_8115460: @ 8115460 push {r4,r5,lr} adds r1, r0, 0 movs r0, 0x24 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 ldrh r0, [r4] ldr r1, _0811549C @ =gStringVar1 movs r2, 0 bl sub_8113EAC ldrb r0, [r5, 0x1] cmp r0, 0xFF beq _08115486 ldr r0, _081154A0 @ =gStringVar2 ldrb r1, [r5, 0x1] bl sub_80C4DF8 _08115486: ldrb r0, [r4, 0x2] cmp r0, 0x7 bne _081154B4 ldrb r0, [r5, 0x1] cmp r0, 0x58 bne _081154AC ldr r0, _081154A4 @ =gStringVar3 ldr r1, _081154A8 @ =gUnknown_841B09F bl StringCopy b _081154B4 .align 2, 0 _0811549C: .4byte gStringVar1 _081154A0: .4byte gStringVar2 _081154A4: .4byte gStringVar3 _081154A8: .4byte gUnknown_841B09F _081154AC: ldr r0, _081154CC @ =gStringVar3 ldr r1, _081154D0 @ =gUnknown_8418C1B bl StringCopy _081154B4: ldr r0, _081154D4 @ =gStringVar4 ldr r2, _081154D8 @ =gUnknown_8456C20 ldrb r1, [r5] lsls r1, 2 adds r1, r2 ldr r1, [r1] bl StringExpandPlaceholders adds r0, r5, 0x2 pop {r4,r5} pop {r1} bx r1 .align 2, 0 _081154CC: .4byte gStringVar3 _081154D0: .4byte gUnknown_8418C1B _081154D4: .4byte gStringVar4 _081154D8: .4byte gUnknown_8456C20 thumb_func_end sub_8115460 thumb_func_start sub_81154DC sub_81154DC: @ 81154DC push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x25 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _0811550E ldrh r0, [r4, 0x4] strh r0, [r2] ldrh r0, [r4, 0x6] strh r0, [r2, 0x2] ldr r1, [r4] lsrs r0, r1, 16 strh r0, [r2, 0x4] strh r1, [r2, 0x6] ldrb r0, [r4, 0x8] strb r0, [r2, 0x8] movs r0, 0x1 strb r0, [r2, 0x9] adds r0, r2, 0 adds r0, 0xA b _08115510 _0811550E: movs r0, 0 _08115510: pop {r4} pop {r1} bx r1 thumb_func_end sub_81154DC thumb_func_start sub_8115518 sub_8115518: @ 8115518 push {r4-r7,lr} adds r1, r0, 0 movs r0, 0x25 bl sub_8113E88 adds r4, r0, 0 adds r7, r4, 0 adds r7, 0x8 ldrh r0, [r4, 0x4] lsls r0, 16 ldrh r1, [r4, 0x6] adds r6, r0, r1 bl UnkTextUtil_Reset ldr r5, _08115564 @ =gStringVar1 ldrb r1, [r4, 0x8] adds r0, r5, 0 bl sub_80C4DF8 movs r0, 0 adds r1, r5, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 movs r0, 0x1 bl UnkTextUtil_SetPtrI ldrh r0, [r4, 0x2] cmp r0, 0x1 bhi _08115570 ldr r0, _08115568 @ =gStringVar4 ldr r1, _0811556C @ =gUnknown_841A7DD bl UnkTextUtil_StringExpandPlaceholders b _0811558E .align 2, 0 _08115564: .4byte gStringVar1 _08115568: .4byte gStringVar4 _0811556C: .4byte gUnknown_841A7DD _08115570: ldr r4, _08115598 @ =gStringVar2 adds r0, r4, 0 adds r1, r6, 0 movs r2, 0 movs r3, 0x6 bl ConvertIntToDecimalStringN movs r0, 0x2 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r0, _0811559C @ =gStringVar4 ldr r1, _081155A0 @ =gUnknown_841A810 bl UnkTextUtil_StringExpandPlaceholders _0811558E: adds r0, r7, 0x2 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _08115598: .4byte gStringVar2 _0811559C: .4byte gStringVar4 _081155A0: .4byte gUnknown_841A810 thumb_func_end sub_8115518 thumb_func_start sub_81155A4 sub_81155A4: @ 81155A4 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x26 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _081155D6 ldrh r0, [r4, 0x4] strh r0, [r2] ldrh r0, [r4, 0x6] strh r0, [r2, 0x2] ldr r1, [r4] lsrs r0, r1, 16 strh r0, [r2, 0x4] strh r1, [r2, 0x6] ldrb r0, [r4, 0x8] strb r0, [r2, 0x8] ldrb r0, [r4, 0x9] strb r0, [r2, 0x9] adds r0, r2, 0 adds r0, 0xA b _081155D8 _081155D6: movs r0, 0 _081155D8: pop {r4} pop {r1} bx r1 thumb_func_end sub_81155A4 thumb_func_start sub_81155E0 sub_81155E0: @ 81155E0 push {r4-r7,lr} adds r1, r0, 0 movs r0, 0x26 bl sub_8113E88 adds r5, r0, 0 adds r7, r5, 0 adds r7, 0x8 ldrh r0, [r5, 0x4] lsls r0, 16 ldrh r1, [r5, 0x6] adds r6, r0, r1 bl UnkTextUtil_Reset ldr r4, _0811563C @ =gStringVar1 ldrb r1, [r5, 0x8] adds r0, r4, 0 bl sub_80C4DF8 ldrb r0, [r7, 0x1] cmp r0, 0 bne _08115690 ldr r0, _08115640 @ =gSaveBlock2Ptr ldr r1, [r0] movs r0, 0 bl UnkTextUtil_SetPtrI movs r0, 0x1 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r5] bl ItemId_GetItem adds r1, r0, 0 movs r0, 0x2 bl UnkTextUtil_SetPtrI ldrh r0, [r5, 0x2] cmp r0, 0x1 bne _08115648 ldr r1, _08115644 @ =gUnknown_841A8D4 movs r0, 0x3 bl UnkTextUtil_SetPtrI b _08115670 .align 2, 0 _0811563C: .4byte gStringVar1 _08115640: .4byte gSaveBlock2Ptr _08115644: .4byte gUnknown_841A8D4 _08115648: ldr r4, _0811567C @ =gStringVar2 ldrh r1, [r5, 0x2] adds r0, r4, 0 movs r2, 0 movs r3, 0x3 bl ConvertIntToDecimalStringN movs r0, 0x4 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r4, _08115680 @ =gStringVar3 ldr r1, _08115684 @ =gUnknown_841A8DD adds r0, r4, 0 bl UnkTextUtil_StringExpandPlaceholders movs r0, 0x3 adds r1, r4, 0 bl UnkTextUtil_SetPtrI _08115670: ldr r0, _08115688 @ =gStringVar4 ldr r1, _0811568C @ =gUnknown_841A858 bl UnkTextUtil_StringExpandPlaceholders b _081156C4 .align 2, 0 _0811567C: .4byte gStringVar2 _08115680: .4byte gStringVar3 _08115684: .4byte gUnknown_841A8DD _08115688: .4byte gStringVar4 _0811568C: .4byte gUnknown_841A858 _08115690: movs r0, 0 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldrh r0, [r5] bl ItemId_GetItem adds r1, r0, 0 movs r0, 0x1 bl UnkTextUtil_SetPtrI ldr r4, _081156CC @ =gStringVar2 adds r0, r4, 0 adds r1, r6, 0 movs r2, 0 movs r3, 0x6 bl ConvertIntToDecimalStringN movs r0, 0x2 adds r1, r4, 0 bl UnkTextUtil_SetPtrI ldr r0, _081156D0 @ =gStringVar4 ldr r1, _081156D4 @ =gUnknown_841A896 bl UnkTextUtil_StringExpandPlaceholders _081156C4: adds r0, r7, 0x2 pop {r4-r7} pop {r1} bx r1 .align 2, 0 _081156CC: .4byte gStringVar2 _081156D0: .4byte gStringVar4 _081156D4: .4byte gUnknown_841A896 thumb_func_end sub_81155E0 thumb_func_start sub_81156D8 sub_81156D8: @ 81156D8 push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x28 adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _081156F8 ldrh r0, [r4] strh r0, [r2] ldrb r0, [r4, 0x2] strb r0, [r2, 0x2] adds r0, r2, 0x4 b _081156FA _081156F8: movs r0, 0 _081156FA: pop {r4} pop {r1} bx r1 thumb_func_end sub_81156D8 thumb_func_start sub_8115700 sub_8115700: @ 8115700 push {r4-r6,lr} adds r1, r0, 0 movs r0, 0x28 bl sub_8113E88 adds r4, r0, 0 adds r5, r4, 0x2 ldr r0, _08115738 @ =gStringVar1 ldrb r1, [r4, 0x2] bl sub_80C4DF8 ldr r6, _0811573C @ =gStringVar2 ldrh r0, [r4] bl ItemId_GetItem adds r1, r0, 0 adds r0, r6, 0 bl StringCopy ldr r0, _08115740 @ =gStringVar4 ldr r1, _08115744 @ =gUnknown_841B03F bl StringExpandPlaceholders adds r5, 0x2 adds r0, r5, 0 pop {r4-r6} pop {r1} bx r1 .align 2, 0 _08115738: .4byte gStringVar1 _0811573C: .4byte gStringVar2 _08115740: .4byte gStringVar4 _08115744: .4byte gUnknown_841B03F thumb_func_end sub_8115700 thumb_func_start sub_8115748 sub_8115748: @ 8115748 push {r4,lr} lsls r0, 16 lsrs r2, r0, 16 ldr r0, _08115764 @ =gUnknown_203ADFA ldrb r0, [r0] subs r0, 0x2 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bls _08115792 movs r1, 0 ldr r4, _08115768 @ =gUnknown_203B049 ldr r0, _0811576C @ =gUnknown_8456C50 b _08115778 .align 2, 0 _08115764: .4byte gUnknown_203ADFA _08115768: .4byte gUnknown_203B049 _0811576C: .4byte gUnknown_8456C50 _08115770: movs r0, 0 b _08115790 _08115774: adds r0, 0x2 adds r1, 0x1 _08115778: cmp r1, 0x10 bgt _08115792 ldrh r3, [r0] cmp r2, r3 bne _08115774 adds r0, r2, 0 bl FlagGet lsls r0, 24 cmp r0, 0 bne _08115770 movs r0, 0x1 _08115790: strb r0, [r4] _08115792: pop {r4} pop {r0} bx r0 thumb_func_end sub_8115748 thumb_func_start sub_8115798 sub_8115798: @ 8115798 push {r4,lr} sub sp, 0x4 ldr r0, _081157D0 @ =gUnknown_203ADFA ldrb r0, [r0] subs r0, 0x2 lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bls _081157C6 ldr r4, _081157D4 @ =gUnknown_203B049 ldrb r0, [r4] cmp r0, 0 beq _081157C6 ldr r0, _081157D8 @ =gUnknown_2036DFC ldrb r1, [r0, 0x14] mov r0, sp strh r1, [r0] movs r0, 0x2A mov r1, sp bl sub_8113550 movs r0, 0 strb r0, [r4] _081157C6: add sp, 0x4 pop {r4} pop {r0} bx r0 .align 2, 0 _081157D0: .4byte gUnknown_203ADFA _081157D4: .4byte gUnknown_203B049 _081157D8: .4byte gUnknown_2036DFC thumb_func_end sub_8115798 thumb_func_start sub_81157DC sub_81157DC: @ 81157DC push {r4,lr} adds r2, r0, 0 adds r4, r1, 0 movs r0, 0x2A adds r1, r2, 0 bl sub_8113DE0 adds r2, r0, 0 cmp r2, 0 beq _081157F8 ldrh r0, [r4] strh r0, [r2] adds r0, r2, 0x2 b _081157FA _081157F8: movs r0, 0 _081157FA: pop {r4} pop {r1} bx r1 thumb_func_end sub_81157DC thumb_func_start sub_8115800 sub_8115800: @ 8115800 push {r4,lr} adds r1, r0, 0 movs r0, 0x2A bl sub_8113E88 adds r4, r0, 0 ldr r0, _08115828 @ =gStringVar1 ldrb r1, [r4] bl sub_80C4DF8 ldr r0, _0811582C @ =gStringVar4 ldr r1, _08115830 @ =gUnknown_841B064 bl StringExpandPlaceholders adds r4, 0x2 adds r0, r4, 0 pop {r4} pop {r1} bx r1 .align 2, 0 _08115828: .4byte gStringVar1 _0811582C: .4byte gStringVar4 _08115830: .4byte gUnknown_841B064 thumb_func_end sub_8115800 thumb_func_start sub_8115834 sub_8115834: @ 8115834 push {lr} adds r1, r0, 0 ldrb r0, [r1] adds r1, 0x1 cmp r0, 0xFC bne _08115868 ldrb r0, [r1] adds r1, 0x1 cmp r0, 0x15 bne _08115868 movs r2, 0 b _08115854 _0811584C: adds r1, 0x1 adds r2, 0x1 cmp r2, 0x4 bgt _0811585A _08115854: ldrb r0, [r1] cmp r0, 0xFC bne _0811584C _0811585A: movs r0, 0xFC strb r0, [r1] adds r1, 0x1 movs r0, 0x16 strb r0, [r1] movs r0, 0xFF strb r0, [r1, 0x1] _08115868: pop {r0} bx r0 thumb_func_end sub_8115834 .align 2, 0 @ Don't pad with nop.