.include "asm/macros.inc" .include "overlay_22.inc" .text arm_func_start ov22_0238A140 ov22_0238A140: ; 0x0238A140 stmdb sp!, {r3, lr} bl ov22_0238A320 bl ov22_0238A150 ldmia sp!, {r3, pc} arm_func_end ov22_0238A140 arm_func_start ov22_0238A150 ov22_0238A150: ; 0x0238A150 stmdb sp!, {lr} sub sp, sp, #0xc ldr r0, _0238A210 ; =ov22_0238EC60 ldr r2, _0238A214 ; =0x0000032D ldr r1, [r0, #4] mov r3, #0x10 strh r2, [r1, #8] ldr r1, [r0, #4] mov r2, #0xd str r3, [r1, #0xc] ldr r1, [r0, #4] mov r0, #0x12 str r2, [r1, #4] bl Arm9LoadUnkFieldNa0x2029EC8 ldr r2, _0238A210 ; =ov22_0238EC60 ldr r1, _0238A218 ; =ov22_0238A67C ldr ip, [r2, #4] mov r3, #8 str r0, [ip] str r1, [sp] ldr r1, [r2, #4] ldr r0, _0238A21C ; =SHOP_D_BOX_LAYOUT_1 ldr ip, [r1, #0x9c] ldr r1, _0238A220 ; =0x00401C33 str ip, [sp, #4] str r3, [sp, #8] ldr r2, [r2, #4] ldr r3, _0238A224 ; =ov22_0238A640 bl sub_0202C3A8 ldr r2, _0238A210 ; =ov22_0238EC60 mov r1, #0x76 ldr r3, [r2, #4] strb r0, [r3, #0x98] ldr r0, [r2, #4] ldrsb r0, [r0, #0x98] bl sub_0202C5F4 ldr r0, _0238A210 ; =ov22_0238EC60 ldr r1, _0238A228 ; =ov22_0238A774 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C7D0 mov r0, #0 bl sub_0204440C ldr r0, _0238A210 ; =ov22_0238EC60 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0238A210: .word ov22_0238EC60 _0238A214: .word 0x0000032D _0238A218: .word ov22_0238A67C _0238A21C: .word SHOP_D_BOX_LAYOUT_1 _0238A220: .word 0x00401C33 _0238A224: .word ov22_0238A640 _0238A228: .word ov22_0238A774 arm_func_end ov22_0238A150 arm_func_start ov22_0238A22C ov22_0238A22C: ; 0x0238A22C bx lr arm_func_end ov22_0238A22C arm_func_start ov22_0238A230 ov22_0238A230: ; 0x0238A230 stmdb sp!, {r3, lr} ldr r0, _0238A2A8 ; =ov22_0238EC60 ldr r0, [r0, #4] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, pc} ldrsb r0, [r0, #0x98] bl sub_0202C728 cmp r0, #0 bne _0238A284 ldr r0, _0238A2A8 ; =ov22_0238EC60 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C75C mvn r1, #0 cmp r0, r1 ldrne r1, _0238A2A8 ; =ov22_0238EC60 moveq r0, #2 strneh r0, [r1] movne r0, #3 ldmia sp!, {r3, pc} _0238A284: ldr r0, _0238A2A8 ; =ov22_0238EC60 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C748 and r1, r0, #0xff mov r0, #0x12 bl Arm9StoreUnkFieldNa0x2029ED8 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0238A2A8: .word ov22_0238EC60 arm_func_end ov22_0238A230 arm_func_start ov22_0238A2AC ov22_0238A2AC: ; 0x0238A2AC ldr r0, _0238A2BC ; =ov22_0238EC60 ldrsh r0, [r0] and r0, r0, #0xff bx lr .align 2, 0 _0238A2BC: .word ov22_0238EC60 arm_func_end ov22_0238A2AC arm_func_start ov22_0238A2C0 ov22_0238A2C0: ; 0x0238A2C0 stmdb sp!, {r3, lr} mov r0, #0x398 mov r1, #8 bl MemAlloc ldr r1, _0238A2F0 ; =ov22_0238EC60 str r0, [r1, #4] bl ov22_0238A320 ldr r0, _0238A2F0 ; =ov22_0238EC60 mvn r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x98] ldmia sp!, {r3, pc} .align 2, 0 _0238A2F0: .word ov22_0238EC60 arm_func_end ov22_0238A2C0 arm_func_start ov22_0238A2F4 ov22_0238A2F4: ; 0x0238A2F4 stmdb sp!, {r3, lr} ldr r0, _0238A31C ; =ov22_0238EC60 ldr r0, [r0, #4] cmp r0, #0 ldmeqia sp!, {r3, pc} bl MemFree ldr r0, _0238A31C ; =ov22_0238EC60 mov r1, #0 str r1, [r0, #4] ldmia sp!, {r3, pc} .align 2, 0 _0238A31C: .word ov22_0238EC60 arm_func_end ov22_0238A2F4 arm_func_start ov22_0238A320 ov22_0238A320: ; 0x0238A320 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x64 mov r3, #0 ldr r0, _0238A4C0 ; =ov22_0238EC60 mov r2, r3 _0238A334: ldr r1, [r0, #4] add r1, r1, r3 add r3, r3, #1 strb r2, [r1, #0x390] cmp r3, #8 blt _0238A334 bl sub_02010830 mov sl, #0 ldr r4, _0238A4C0 ; =ov22_0238EC60 mov r8, #3 ldr r1, [r4, #4] mov r7, #1 str r0, [r1, #0x9c] mov r6, sl mov r5, #0x6a mov fp, sl b _0238A488 _0238A378: and r0, sl, #0xff bl sub_02010898 ldrsh r1, [r0] strh r1, [sp, #4] ldrh r1, [r0, #2] add r0, sp, #0 strh r1, [sp, #2] strb r8, [sp] str r7, [sp, #8] strb r6, [sp, #0xc] strh r5, [sp, #0xe] strb r7, [sp, #0x10] bl GetActualBuyPrice ldr r1, [r4, #4] add r1, r1, sl, lsl #2 str r0, [r1, #0x370] bl GetGold ldr r1, [r4, #4] add r2, sp, #8 add r1, r1, sl, lsl #2 ldr r1, [r1, #0x370] cmp r1, r0 add r0, sp, #0x14 add r1, sp, #0 bgt _0238A40C bl sub_0200D670 mov r0, #0x50 mul sb, sl, r0 ldr r0, [r4, #4] add r1, sp, #0x14 add r0, r0, #0xe8 add r0, r0, sb bl strcpy ldr r0, [r4, #4] add r0, r0, sl strb fp, [r0, #0x368] b _0238A464 _0238A40C: bl sub_0200D65C mov r0, #0x50 mul sb, sl, r0 ldr r0, [r4, #4] ldr r1, _0238A4C4 ; =ov22_0238E82C add r0, r0, #0xe8 add r0, r0, sb bl strcpy ldr r0, [r4, #4] add r1, sp, #0x14 add r0, r0, #0xe8 add r0, r0, sb bl strcat ldr r0, [r4, #4] ldr r1, _0238A4C8 ; =ov22_0238E834 add r0, r0, #0xe8 add r0, r0, sb bl strcat ldr r0, [r4, #4] add r1, r0, sl mov r0, #0 strb r0, [r1, #0x368] _0238A464: ldr r2, [r4, #4] arm_func_end ov22_0238A320 arm_func_start ov22_0238A468 ov22_0238A468: ; 0x0238A468 add r0, r2, #0xe8 add r1, r0, sb add r0, r2, sl, lsl #3 str r1, [r0, #0xa0] ldr r0, [r4, #4] add r0, r0, sl, lsl #3 str sl, [r0, #0xa4] add sl, sl, #1 _0238A488: ldr r1, [r4, #4] ldr r0, [r1, #0x9c] cmp sl, r0 blt _0238A378 mov r2, #0 add r1, r1, sl, lsl #3 ldr r0, _0238A4C0 ; =ov22_0238EC60 str r2, [r1, #0xa0] ldr r0, [r0, #4] sub r1, r2, #1 add r0, r0, sl, lsl #3 str r1, [r0, #0xa4] add sp, sp, #0x64 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0238A4C0: .word ov22_0238EC60 _0238A4C4: .word ov22_0238E82C _0238A4C8: .word ov22_0238E834 arm_func_end ov22_0238A468 arm_func_start ov22_0238A4CC ov22_0238A4CC: ; 0x0238A4CC ldr r1, _0238A504 ; =ov22_0238EC60 mov r0, #0 ldr r3, [r1, #4] mov r2, r0 ldr ip, [r3, #0x9c] b _0238A4F8 _0238A4E4: add r1, r3, r2 ldrb r1, [r1, #0x390] add r2, r2, #1 cmp r1, #0 addne r0, r0, #1 _0238A4F8: cmp r2, ip blt _0238A4E4 bx lr .align 2, 0 _0238A504: .word ov22_0238EC60 arm_func_end ov22_0238A4CC arm_func_start ov22_0238A508 ov22_0238A508: ; 0x0238A508 ldr r1, _0238A540 ; =ov22_0238EC60 mov r0, #0 ldr r2, [r1, #4] ldr r3, [r2, #0x9c] b _0238A530 _0238A51C: add r1, r2, r0 ldrb r1, [r1, #0x390] cmp r1, #0 bxne lr add r0, r0, #1 _0238A530: cmp r0, r3 blt _0238A51C mvn r0, #0 bx lr .align 2, 0 _0238A540: .word ov22_0238EC60 arm_func_end ov22_0238A508 arm_func_start ov22_0238A544 ov22_0238A544: ; 0x0238A544 ldr r1, _0238A584 ; =ov22_0238EC60 mov r0, #0 ldr r3, [r1, #4] mov r2, r0 ldr ip, [r3, #0x9c] b _0238A578 _0238A55C: add r1, r3, r2 ldrb r1, [r1, #0x390] cmp r1, #0 addne r1, r3, r2, lsl #2 ldrne r1, [r1, #0x370] add r2, r2, #1 addne r0, r0, r1 _0238A578: cmp r2, ip blt _0238A55C bx lr .align 2, 0 _0238A584: .word ov22_0238EC60 arm_func_end ov22_0238A544 arm_func_start ov22_0238A588 ov22_0238A588: ; 0x0238A588 stmdb sp!, {r4, lr} mov r4, r0 and r0, r4, #0xff bl sub_02010898 bl SpecialProcAddItemToBag and r0, r4, #0xff bl sub_0201086C ldr r0, _0238A5C8 ; =ov22_0238EC60 ldr r0, [r0, #4] add r0, r0, r4, lsl #2 ldr r0, [r0, #0x370] rsb r0, r0, #0 bl AddMoneyCarried bl sub_020108B4 bl ov22_0238A320 ldmia sp!, {r4, pc} .align 2, 0 _0238A5C8: .word ov22_0238EC60 arm_func_end ov22_0238A588 arm_func_start ov22_0238A5CC ov22_0238A5CC: ; 0x0238A5CC stmdb sp!, {r4, r5, r6, lr} mov r4, #0 mov r5, r4 ldr r6, _0238A63C ; =ov22_0238EC60 b _0238A618 _0238A5E0: add r0, r1, r5 ldrb r0, [r0, #0x390] cmp r0, #0 beq _0238A614 and r0, r5, #0xff bl sub_02010898 bl SpecialProcAddItemToBag ldr r1, [r6, #4] and r0, r5, #0xff add r1, r1, r5, lsl #2 ldr r1, [r1, #0x370] add r4, r4, r1 bl sub_0201086C _0238A614: add r5, r5, #1 _0238A618: ldr r1, [r6, #4] ldr r0, [r1, #0x9c] cmp r5, r0 blt _0238A5E0 rsb r0, r4, #0 bl AddMoneyCarried bl sub_020108B4 bl ov22_0238A320 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0238A63C: .word ov22_0238EC60 arm_func_end ov22_0238A5CC arm_func_start ov22_0238A640 ov22_0238A640: ; 0x0238A640 ldr r0, _0238A678 ; =ov22_0238EC60 ldr r0, [r0, #4] add r0, r0, r1 ldrb r0, [r0, #0x390] cmp r0, #0 movne r0, #1 moveq r0, #0 str r0, [r2] ldr r2, _0238A678 ; =ov22_0238EC60 mov r0, #0x50 ldr r2, [r2, #4] add r2, r2, #0xe8 mla r0, r1, r0, r2 bx lr .align 2, 0 _0238A678: .word ov22_0238EC60 arm_func_end ov22_0238A640 arm_func_start ov22_0238A67C ov22_0238A67C: ; 0x0238A67C stmdb sp!, {r3, r4, r5, r6, r7, lr} tst r0, #0x400 mov r4, #0 beq _0238A730 ldr r0, _0238A770 ; =ov22_0238EC60 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C748 ldr r1, _0238A770 ; =ov22_0238EC60 mov r5, r0 ldr r0, [r1, #4] add r2, r0, #0x390 ldrb r0, [r2, r5] cmp r0, #0 beq _0238A6D0 mov r1, r4 mov r0, #6 strb r1, [r2, r5] bl sub_02017CCC mov r4, #1 b _0238A730 _0238A6D0: bl GetCurrentBagCapacity mov r7, r0 bl ov22_0238A4CC mov r6, r0 bl GetNbItemsInBag add r0, r6, r0 cmp r0, r7 blt _0238A6F8 cmp r6, #0 bne _0238A728 _0238A6F8: ldr r0, _0238A770 ; =ov22_0238EC60 ldr r0, [r0, #4] add r2, r0, r5 ldrb r0, [r2, #0x368] cmp r0, #0 bne _0238A728 mov r1, #1 mov r0, #6 strb r1, [r2, #0x390] bl sub_02017CCC mov r4, #1 b _0238A730 _0238A728: mov r0, #2 bl sub_02017CCC _0238A730: bl ov22_0238A4CC cmp r0, #0 ble _0238A754 ldr r0, _0238A770 ; =ov22_0238EC60 mov r1, #1 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202D16C b _0238A768 _0238A754: ldr r0, _0238A770 ; =ov22_0238EC60 mov r1, #0 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202D16C _0238A768: mov r0, r4 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0238A770: .word ov22_0238EC60 arm_func_end ov22_0238A67C arm_func_start ov22_0238A774 ov22_0238A774: ; 0x0238A774 stmdb sp!, {r3, lr} and r0, r0, #0xff bl sub_02010898 ldrsh r0, [r0] bl sub_020444B0 ldmia sp!, {r3, pc} arm_func_end ov22_0238A774 arm_func_start ov22_0238A78C ov22_0238A78C: ; 0x0238A78C stmdb sp!, {r3, lr} bl ov22_0238A96C bl ov22_0238A79C ldmia sp!, {r3, pc} arm_func_end ov22_0238A78C arm_func_start ov22_0238A79C ov22_0238A79C: ; 0x0238A79C stmdb sp!, {lr} sub sp, sp, #0xc ldr r0, _0238A85C ; =ov22_0238EC68 ldr r2, _0238A860 ; =0x0000032E ldr r1, [r0, #4] mov r3, #0x10 strh r2, [r1, #8] ldr r1, [r0, #4] mov r2, #0xd str r3, [r1, #0xc] ldr r1, [r0, #4] mov r0, #0x13 str r2, [r1, #4] bl Arm9LoadUnkFieldNa0x2029EC8 ldr r2, _0238A85C ; =ov22_0238EC68 ldr r1, _0238A864 ; =ov22_0238ACC8 ldr ip, [r2, #4] mov r3, #8 str r0, [ip] str r1, [sp] ldr r1, [r2, #4] ldr r0, _0238A868 ; =SHOP_D_BOX_LAYOUT_2 ldr ip, [r1, #0x9c] ldr r1, _0238A86C ; =0x00401C33 str ip, [sp, #4] str r3, [sp, #8] ldr r2, [r2, #4] ldr r3, _0238A870 ; =ov22_0238AC8C bl sub_0202C3A8 ldr r2, _0238A85C ; =ov22_0238EC68 mov r1, #0x76 ldr r3, [r2, #4] strb r0, [r3, #0x98] ldr r0, [r2, #4] ldrsb r0, [r0, #0x98] bl sub_0202C5F4 ldr r0, _0238A85C ; =ov22_0238EC68 ldr r1, _0238A874 ; =ov22_0238ADC0 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C7D0 mov r0, #0 bl sub_0204440C ldr r0, _0238A85C ; =ov22_0238EC68 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0238A85C: .word ov22_0238EC68 _0238A860: .word 0x0000032E _0238A864: .word ov22_0238ACC8 _0238A868: .word SHOP_D_BOX_LAYOUT_2 _0238A86C: .word 0x00401C33 _0238A870: .word ov22_0238AC8C _0238A874: .word ov22_0238ADC0 arm_func_end ov22_0238A79C arm_func_start ov22_0238A878 ov22_0238A878: ; 0x0238A878 bx lr arm_func_end ov22_0238A878 arm_func_start ov22_0238A87C ov22_0238A87C: ; 0x0238A87C stmdb sp!, {r3, lr} ldr r0, _0238A8F4 ; =ov22_0238EC68 ldr r0, [r0, #4] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, pc} ldrsb r0, [r0, #0x98] bl sub_0202C728 cmp r0, #0 bne _0238A8D0 ldr r0, _0238A8F4 ; =ov22_0238EC68 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C75C mvn r1, #0 cmp r0, r1 ldrne r1, _0238A8F4 ; =ov22_0238EC68 moveq r0, #2 strneh r0, [r1] movne r0, #3 ldmia sp!, {r3, pc} _0238A8D0: ldr r0, _0238A8F4 ; =ov22_0238EC68 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C748 and r1, r0, #0xff mov r0, #0x13 bl Arm9StoreUnkFieldNa0x2029ED8 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0238A8F4: .word ov22_0238EC68 arm_func_end ov22_0238A87C arm_func_start ov22_0238A8F8 ov22_0238A8F8: ; 0x0238A8F8 ldr r0, _0238A908 ; =ov22_0238EC68 ldrsh r0, [r0] and r0, r0, #0xff bx lr .align 2, 0 _0238A908: .word ov22_0238EC68 arm_func_end ov22_0238A8F8 arm_func_start ov22_0238A90C ov22_0238A90C: ; 0x0238A90C stmdb sp!, {r3, lr} mov r0, #0x234 mov r1, #8 bl MemAlloc ldr r1, _0238A93C ; =ov22_0238EC68 str r0, [r1, #4] bl ov22_0238A96C ldr r0, _0238A93C ; =ov22_0238EC68 mvn r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x98] ldmia sp!, {r3, pc} .align 2, 0 _0238A93C: .word ov22_0238EC68 arm_func_end ov22_0238A90C arm_func_start ov22_0238A940 ov22_0238A940: ; 0x0238A940 stmdb sp!, {r3, lr} ldr r0, _0238A968 ; =ov22_0238EC68 ldr r0, [r0, #4] cmp r0, #0 ldmeqia sp!, {r3, pc} bl MemFree ldr r0, _0238A968 ; =ov22_0238EC68 mov r1, #0 str r1, [r0, #4] ldmia sp!, {r3, pc} .align 2, 0 _0238A968: .word ov22_0238EC68 arm_func_end ov22_0238A940 arm_func_start ov22_0238A96C ov22_0238A96C: ; 0x0238A96C stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x64 mov r3, #0 ldr r0, _0238AB0C ; =ov22_0238EC68 mov r2, r3 _0238A980: ldr r1, [r0, #4] add r1, r1, r3 add r3, r3, #1 strb r2, [r1, #0x230] cmp r3, #4 blt _0238A980 bl sub_02010B3C mov sl, #0 ldr r4, _0238AB0C ; =ov22_0238EC68 mov r8, #3 ldr r1, [r4, #4] mov r7, #1 str r0, [r1, #0x9c] mov r6, sl mov r5, #0x6a mov fp, sl b _0238AAD4 _0238A9C4: and r0, sl, #0xff bl sub_02010BA4 ldrsh r1, [r0] strh r1, [sp, #4] ldrh r1, [r0, #2] add r0, sp, #0 strh r1, [sp, #2] strb r8, [sp] str r7, [sp, #8] strb r6, [sp, #0xc] strh r5, [sp, #0xe] strb r7, [sp, #0x10] bl GetActualBuyPrice ldr r1, [r4, #4] add r1, r1, sl, lsl #2 str r0, [r1, #0x210] bl GetGold ldr r1, [r4, #4] add r2, sp, #8 add r1, r1, sl, lsl #2 ldr r1, [r1, #0x210] cmp r1, r0 add r0, sp, #0x14 add r1, sp, #0 bgt _0238AA58 bl sub_0200D670 mov r0, #0x50 mul sb, sl, r0 ldr r0, [r4, #4] add r1, sp, #0x14 add r0, r0, #0xc8 add r0, r0, sb bl strcpy ldr r0, [r4, #4] add r0, r0, sl strb fp, [r0, #0x208] b _0238AAB0 _0238AA58: bl sub_0200D65C mov r0, #0x50 mul sb, sl, r0 ldr r0, [r4, #4] ldr r1, _0238AB10 ; =ov22_0238E84C add r0, r0, #0xc8 add r0, r0, sb bl strcpy ldr r0, [r4, #4] add r1, sp, #0x14 add r0, r0, #0xc8 add r0, r0, sb bl strcat ldr r0, [r4, #4] ldr r1, _0238AB14 ; =ov22_0238E854 add r0, r0, #0xc8 add r0, r0, sb bl strcat ldr r0, [r4, #4] add r1, r0, sl mov r0, #0 strb r0, [r1, #0x208] _0238AAB0: ldr r2, [r4, #4] add r0, r2, #0xc8 add r1, r0, sb add r0, r2, sl, lsl #3 str r1, [r0, #0xa0] ldr r0, [r4, #4] add r0, r0, sl, lsl #3 str sl, [r0, #0xa4] add sl, sl, #1 _0238AAD4: ldr r1, [r4, #4] ldr r0, [r1, #0x9c] cmp sl, r0 blt _0238A9C4 mov r2, #0 add r1, r1, sl, lsl #3 ldr r0, _0238AB0C ; =ov22_0238EC68 str r2, [r1, #0xa0] ldr r0, [r0, #4] sub r1, r2, #1 add r0, r0, sl, lsl #3 str r1, [r0, #0xa4] add sp, sp, #0x64 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0238AB0C: .word ov22_0238EC68 _0238AB10: .word ov22_0238E84C _0238AB14: .word ov22_0238E854 arm_func_end ov22_0238A96C arm_func_start ov22_0238AB18 ov22_0238AB18: ; 0x0238AB18 ldr r1, _0238AB50 ; =ov22_0238EC68 mov r0, #0 ldr r3, [r1, #4] mov r2, r0 ldr ip, [r3, #0x9c] b _0238AB44 _0238AB30: add r1, r3, r2 ldrb r1, [r1, #0x230] add r2, r2, #1 cmp r1, #0 addne r0, r0, #1 _0238AB44: cmp r2, ip blt _0238AB30 bx lr .align 2, 0 _0238AB50: .word ov22_0238EC68 arm_func_end ov22_0238AB18 arm_func_start ov22_0238AB54 ov22_0238AB54: ; 0x0238AB54 ldr r1, _0238AB8C ; =ov22_0238EC68 mov r0, #0 ldr r2, [r1, #4] ldr r3, [r2, #0x9c] b _0238AB7C _0238AB68: add r1, r2, r0 ldrb r1, [r1, #0x230] cmp r1, #0 bxne lr add r0, r0, #1 _0238AB7C: cmp r0, r3 blt _0238AB68 mvn r0, #0 bx lr .align 2, 0 _0238AB8C: .word ov22_0238EC68 arm_func_end ov22_0238AB54 arm_func_start ov22_0238AB90 ov22_0238AB90: ; 0x0238AB90 ldr r1, _0238ABD0 ; =ov22_0238EC68 mov r0, #0 ldr r3, [r1, #4] mov r2, r0 ldr ip, [r3, #0x9c] b _0238ABC4 _0238ABA8: add r1, r3, r2 ldrb r1, [r1, #0x230] cmp r1, #0 addne r1, r3, r2, lsl #2 ldrne r1, [r1, #0x210] add r2, r2, #1 addne r0, r0, r1 _0238ABC4: cmp r2, ip blt _0238ABA8 bx lr .align 2, 0 _0238ABD0: .word ov22_0238EC68 arm_func_end ov22_0238AB90 arm_func_start ov22_0238ABD4 ov22_0238ABD4: ; 0x0238ABD4 stmdb sp!, {r4, lr} mov r4, r0 and r0, r4, #0xff bl sub_02010BA4 bl SpecialProcAddItemToBag and r0, r4, #0xff bl sub_02010B78 ldr r0, _0238AC14 ; =ov22_0238EC68 ldr r0, [r0, #4] add r0, r0, r4, lsl #2 ldr r0, [r0, #0x210] rsb r0, r0, #0 bl AddMoneyCarried bl sub_02010BC0 bl ov22_0238A96C ldmia sp!, {r4, pc} .align 2, 0 _0238AC14: .word ov22_0238EC68 arm_func_end ov22_0238ABD4 arm_func_start ov22_0238AC18 ov22_0238AC18: ; 0x0238AC18 stmdb sp!, {r4, r5, r6, lr} mov r4, #0 mov r5, r4 ldr r6, _0238AC88 ; =ov22_0238EC68 b _0238AC64 _0238AC2C: add r0, r1, r5 ldrb r0, [r0, #0x230] cmp r0, #0 beq _0238AC60 and r0, r5, #0xff bl sub_02010BA4 bl SpecialProcAddItemToBag ldr r1, [r6, #4] and r0, r5, #0xff add r1, r1, r5, lsl #2 ldr r1, [r1, #0x210] add r4, r4, r1 bl sub_02010B78 _0238AC60: add r5, r5, #1 _0238AC64: ldr r1, [r6, #4] ldr r0, [r1, #0x9c] cmp r5, r0 blt _0238AC2C rsb r0, r4, #0 bl AddMoneyCarried bl sub_02010BC0 bl ov22_0238A96C ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0238AC88: .word ov22_0238EC68 arm_func_end ov22_0238AC18 arm_func_start ov22_0238AC8C ov22_0238AC8C: ; 0x0238AC8C ldr r0, _0238ACC4 ; =ov22_0238EC68 ldr r0, [r0, #4] add r0, r0, r1 ldrb r0, [r0, #0x230] cmp r0, #0 movne r0, #1 moveq r0, #0 str r0, [r2] ldr r2, _0238ACC4 ; =ov22_0238EC68 mov r0, #0x50 ldr r2, [r2, #4] add r2, r2, #0xc8 mla r0, r1, r0, r2 bx lr .align 2, 0 _0238ACC4: .word ov22_0238EC68 arm_func_end ov22_0238AC8C arm_func_start ov22_0238ACC8 ov22_0238ACC8: ; 0x0238ACC8 stmdb sp!, {r3, r4, r5, r6, r7, lr} tst r0, #0x400 mov r4, #0 beq _0238AD7C ldr r0, _0238ADBC ; =ov22_0238EC68 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202C748 ldr r1, _0238ADBC ; =ov22_0238EC68 mov r5, r0 ldr r0, [r1, #4] add r2, r0, #0x230 ldrb r0, [r2, r5] cmp r0, #0 beq _0238AD1C mov r1, r4 mov r0, #6 strb r1, [r2, r5] bl sub_02017CCC mov r4, #1 b _0238AD7C _0238AD1C: bl GetCurrentBagCapacity mov r7, r0 bl ov22_0238AB18 mov r6, r0 bl GetNbItemsInBag add r0, r6, r0 cmp r0, r7 blt _0238AD44 cmp r6, #0 bne _0238AD74 _0238AD44: ldr r0, _0238ADBC ; =ov22_0238EC68 ldr r0, [r0, #4] add r2, r0, r5 ldrb r0, [r2, #0x208] cmp r0, #0 bne _0238AD74 mov r1, #1 mov r0, #6 strb r1, [r2, #0x230] bl sub_02017CCC mov r4, #1 b _0238AD7C _0238AD74: mov r0, #2 bl sub_02017CCC _0238AD7C: bl ov22_0238AB18 cmp r0, #0 ble _0238ADA0 ldr r0, _0238ADBC ; =ov22_0238EC68 mov r1, #1 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202D16C b _0238ADB4 _0238ADA0: ldr r0, _0238ADBC ; =ov22_0238EC68 mov r1, #0 ldr r0, [r0, #4] ldrsb r0, [r0, #0x98] bl sub_0202D16C _0238ADB4: mov r0, r4 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0238ADBC: .word ov22_0238EC68 arm_func_end ov22_0238ACC8 arm_func_start ov22_0238ADC0 ov22_0238ADC0: ; 0x0238ADC0 stmdb sp!, {r3, lr} and r0, r0, #0xff bl sub_02010BA4 ldrsh r0, [r0] bl sub_020444B0 ldmia sp!, {r3, pc} arm_func_end ov22_0238ADC0 arm_func_start ov22_0238ADD8 ov22_0238ADD8: ; 0x0238ADD8 stmdb sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0xac ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r2, [r1] str r0, [r2, #0x10] ldr r2, [r1] ldr r0, [r2, #0x10] cmp r0, #0x30 addls pc, pc, r0, lsl #2 arm_func_end ov22_0238ADD8 arm_func_start ov22_0238ADFC ov22_0238ADFC: ; 0x0238ADFC b _0238C16C _0238AE00: ; jump table b _0238AEC4 ; case 0 b _0238AF18 ; case 1 b _0238AFB0 ; case 2 b _0238B000 ; case 3 b _0238B3C4 ; case 4 b _0238B050 ; case 5 b _0238B0A0 ; case 6 b _0238B0F0 ; case 7 b _0238B13C ; case 8 b _0238B188 ; case 9 b _0238B1D4 ; case 10 b _0238B220 ; case 11 b _0238B26C ; case 12 b _0238B2BC ; case 13 b _0238B30C ; case 14 b _0238B374 ; case 15 b _0238B3E0 ; case 16 b _0238B43C ; case 17 b _0238B748 ; case 18 b _0238B498 ; case 19 b _0238B510 ; case 20 b _0238B594 ; case 21 b _0238B680 ; case 22 b _0238B5DC ; case 23 b _0238BA48 ; case 24 b _0238BC40 ; case 25 b _0238C038 ; case 26 b _0238C0A0 ; case 27 b _0238B7D8 ; case 28 b _0238B834 ; case 29 b _0238BB58 ; case 30 b _0238B890 ; case 31 b _0238B8F0 ; case 32 b _0238B958 ; case 33 b _0238BA7C ; case 34 b _0238B98C ; case 35 b _0238BA14 ; case 36 b _0238BEA4 ; case 37 b _0238C06C ; case 38 b _0238C110 ; case 39 b _0238BBD8 ; case 40 b _0238BFB4 ; case 41 b _0238BFE8 ; case 42 b _0238C16C ; case 43 b _0238AF70 ; case 44 b _0238C16C ; case 45 b _0238C16C ; case 46 b _0238C16C ; case 47 b _0238AFA4 ; case 48 _0238AEC4: ldr r0, _0238BD64 ; =ov22_0238E9D0 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] strb r1, [r0, #9] bl sub_02042AF8 bl ov22_0238D554 mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD68 ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BD6C ; =OVERLAY22_UNKNOWN_STRING_IDS ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238AF18: ldr r0, _0238BD70 ; =ov22_0238E9D8 bl DebugPrint0 bl sub_02042AF8 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r1, _0238BD74 ; =0x0000017F ldr r0, [r0] str r1, [r0, #0x50] bl ov22_0238D554 mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD68 ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BD78 ; =ov22_0238E8F2 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238AF70: ldr r0, _0238BD7C ; =ov22_0238E9E4 bl DebugPrint0 mov r4, #5 ldr r0, _0238BD80 ; =SHOP_D_BOX_LAYOUT_6 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BD88 ; =SHOP_MAIN_MENU_3 mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238AFA4: mov r0, #0 str r0, [r2, #0xc] b _0238C16C _0238AFB0: ldr r0, _0238BD8C ; =ov22_0238E9F4 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BD94 ; =ov22_0238E91E ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B000: ldr r0, _0238BD98 ; =ov22_0238EA04 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #4 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BD9C ; =ov22_0238E8F4 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B050: ldr r0, _0238BDA0 ; =ov22_0238EA10 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDA4 ; =ov22_0238E90A ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B0A0: ldr r0, _0238BDA8 ; =ov22_0238EA1C bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x11 ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDAC ; =ov22_0238E90C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B0F0: ldr r0, _0238BDB0 ; =ov22_0238EA28 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDB4 ; =ov22_0238E90E ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B13C: ldr r0, _0238BDB8 ; =ov22_0238EA34 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDBC ; =ov22_0238E91C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B188: ldr r0, _0238BDC0 ; =ov22_0238EA40 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDC4 ; =ov22_0238E910 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B1D4: ldr r0, _0238BDC8 ; =ov22_0238EA4C bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDCC ; =ov22_0238E912 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B220: ldr r0, _0238BDD0 ; =ov22_0238EA58 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDD4 ; =ov22_0238E914 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B26C: ldr r0, _0238BDD8 ; =ov22_0238EA64 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDDC ; =ov22_0238E916 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B2BC: ldr r0, _0238BDE0 ; =ov22_0238EA70 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x11 ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDE4 ; =ov22_0238E918 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B30C: ldr r0, _0238BDE8 ; =ov22_0238EA7C bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r2, #0x1d ldr r4, [r1] mov r0, #1 ldrsh r3, [r4, #0x30] str r3, [r4, #0x64] ldr r4, [r1] ldrh r3, [r4, #0x2e] str r3, [r4, #0x78] ldr r1, [r1] str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDEC ; =ov22_0238E91A ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B374: ldr r0, _0238BDF0 ; =ov22_0238EA88 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x1d ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDBC ; =ov22_0238E91C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B3C4: ldrb r0, [r2, #8] cmp r0, #0 beq _0238B3D8 bl ov22_0238A22C b _0238C16C _0238B3D8: bl ov22_0238A878 b _0238C16C _0238B3E0: ldr r0, _0238BDF4 ; =ov22_0238EA94 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #0x13 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BDF8 ; =ov22_0238E8F6 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B43C: ldr r0, _0238BDFC ; =ov22_0238EAA8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #0x14 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE00 ; =ov22_0238E8F8 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238B498: ldr r0, _0238BE04 ; =ov22_0238EAB8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238B4EC bl ov22_0238A140 b _0238B4F0 _0238B4EC: bl ov22_0238A78C _0238B4F0: ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4a] mov r0, #0 bl sub_0204426C mov r0, #0 bl sub_02044568 b _0238C16C _0238B510: ldr r0, _0238BE08 ; =ov22_0238EAC8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r2, _0238BD74 ; =0x0000017F ldr r1, [r0] str r2, [r1, #0x9c] ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238B570 bl ov22_0238A150 b _0238B574 _0238B570: bl ov22_0238A79C _0238B574: ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4a] mov r0, #0 bl sub_0204426C mov r0, #0 bl sub_02044568 b _0238C16C _0238B594: ldr r0, _0238BE0C ; =ov22_0238EAD8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r3, _0238BE10 ; =SHOP_MAIN_MENU_2 ldr r0, [r0] mov r4, #3 ldrb r0, [r0, #8] mov r1, #0x13 mov r2, #0 cmp r0, #0 ldrne r0, _0238BE14 ; =SHOP_D_BOX_LAYOUT_7 str r4, [sp] ldreq r0, _0238BE18 ; =SHOP_D_BOX_LAYOUT_10 bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238B5DC: ldr r0, _0238BE1C ; =ov22_0238EAE8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r2, _0238BE20 ; =OVERLAY22_UNKNOWN_STRUCT__NA_238E85C ldr r1, [r0] add r0, r1, #0xe0 add r1, r1, #0x2c bl sub_0200D670 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #0 ldr r3, [r1] add r2, r3, #0xe0 str r2, [r3, #0x88] ldr r3, [r1] ldrsh r2, [r3, #0x30] str r2, [r3, #0x64] ldr r3, [r1] ldrh r2, [r3, #0x2e] str r2, [r3, #0x78] ldr r2, [r1] ldr r1, [r2, #0x1c] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD68 ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BE24 ; =ov22_0238E8FA ldrh r2, [r2, r5] bl ShowMessageInDBox ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #0x2f ldr r2, [r0] mov r1, #0x18 str r3, [r2, #0x10] ldr r0, [r0] str r1, [r0, #0x14] b _0238C16C _0238B680: ldrsh r1, [r2, #0x30] ldrh r2, [r2, #0x2e] ldr r0, _0238BE28 ; =ov22_0238EAF8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] add r0, r0, #0x50 bl InitPreprocessorArgs ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r2, _0238BE2C ; =ov22_0238EB14 ldr r5, [r0] ldr r3, _0238BE30 ; =0x0000C402 ldrh r4, [r5, #0x2e] mov r1, #0x400 str r4, [r5, #0x50] ldr r5, [r0] ldrsh r4, [r5, #0x30] str r4, [r5, #0x60] ldr r5, [r0] ldrh r4, [r5, #0x2e] str r4, [r5, #0x74] ldr r0, [r0] add r4, r0, #0x50 add r0, r0, #0xa0 str r4, [sp] bl PreprocessString add r0, sp, #0xc bl InitPreprocessorArgs ldr r0, _0238BD60 ; =ov22_0238EC70 add r1, sp, #0xc ldr r3, [r0] ldr r0, _0238BE34 ; =SHOP_D_BOX_LAYOUT_9 add r2, r3, #0xa0 str r2, [sp, #0x44] str r1, [sp] ldrsh r2, [r3, #0x30] add r3, r3, #0x50 ldr r1, _0238BE38 ; =0x00001013 add r2, r2, #0xd1 add r2, r2, #0x2900 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 stmib sp, {r2, r3} ldr r3, _0238BE3C ; =0x0000033E mov r2, #0 bl sub_0202E3CC ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4d] b _0238C16C _0238B748: ldr r0, _0238BE40 ; =ov22_0238EB20 bl DebugPrint0 bl ov22_0238D528 cmp r0, #0 bne _0238B790 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238B778 bl ov22_0238A22C b _0238B77C _0238B778: bl ov22_0238A878 _0238B77C: ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0xc ldr r0, [r0] str r1, [r0, #0x14] b _0238B7A0 _0238B790: ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x11 ldr r0, [r0] str r1, [r0, #0x14] _0238B7A0: mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE44 ; =ov22_0238E8FE ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238B7D8: ldr r0, _0238BE48 ; =ov22_0238EB30 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #0x1f ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BE4C ; =ov22_0238E900 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238B834: ldr r0, _0238BE50 ; =ov22_0238EB40 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #0x20 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE54 ; =ov22_0238E902 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238B890: ldr r0, _0238BE58 ; =ov22_0238EB50 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox bl sub_02042730 mov r0, #4 mov r1, #0 mov r2, #8 mov r3, #1 bl sub_02042258 ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4b] b _0238C16C _0238B8F0: ldr r0, _0238BE5C ; =ov22_0238EB60 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r2, _0238BD74 ; =0x0000017F ldr r1, [r0] str r2, [r1, #0x9c] ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox mov r0, #4 mov r1, #0 mov r2, #8 mov r3, #1 bl sub_02042258 ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4b] b _0238C16C _0238B958: ldr r0, _0238BE60 ; =ov22_0238EB70 bl DebugPrint0 mov r4, #3 ldr r0, _0238BE14 ; =SHOP_D_BOX_LAYOUT_7 ldr r3, _0238BE64 ; =SHOP_MAIN_MENU_1 mov r1, #0x13 mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238B98C: ldr r0, _0238BE68 ; =ov22_0238EB80 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r2, _0238BE20 ; =OVERLAY22_UNKNOWN_STRUCT__NA_238E85C ldr r1, [r0] add r0, r1, #0xe0 add r1, r1, #0x2c bl sub_0200D670 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r4, #0x2f ldr r3, [r1] mov r2, #0x24 add r0, r3, #0xe0 str r0, [r3, #0x88] ldr r5, [r1] mov r0, #0 ldr r3, [r5, #0x1c] str r3, [r5, #0x74] ldr r3, [r1] str r4, [r3, #0x10] ldr r1, [r1] str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD68 ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BE6C ; =ov22_0238E904 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238BA14: ldr r0, _0238BE70 ; =ov22_0238EB90 bl DebugPrint0 mov r4, #2 ldr r0, _0238BE74 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BE78 ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238BA48: ldr r0, _0238BE7C ; =ov22_0238EBA4 bl DebugPrint0 mov r4, #2 ldr r0, _0238BE74 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BE78 ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238BA7C: ldr r0, _0238BE80 ; =ov22_0238EBB8 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] add r0, r0, #0x50 bl InitPreprocessorArgs ldr r0, _0238BD60 ; =ov22_0238EC70 mov r5, #0 ldr r6, [r0] ldr r2, _0238BE2C ; =ov22_0238EB14 ldrh r4, [r6, #0x2e] ldr r3, _0238BE30 ; =0x0000C402 mov r1, #0x400 str r4, [r6, #0x50] ldr r6, [r0] ldrsh r4, [r6, #0x30] str r4, [r6, #0x60] ldr r6, [r0] ldrh r4, [r6, #0x2e] str r4, [r6, #0x74] ldr r6, [r0] ldrh r4, [r6, #0x2e] add r4, r4, #0xbc str r4, [r6, #0x68] ldr r4, [r0] str r5, [r4, #0x7c] ldr r0, [r0] add r4, r0, #0x50 add r0, r0, #0xa0 str r4, [sp] bl PreprocessString add r0, sp, #0x5c bl InitPreprocessorArgs ldr r0, _0238BD60 ; =ov22_0238EC70 add r1, sp, #0x5c ldr r3, [r0] ldr r0, _0238BE34 ; =SHOP_D_BOX_LAYOUT_9 add r2, r3, #0xa0 str r2, [sp, #0x94] str r1, [sp] ldrsh r2, [r3, #0x30] add r3, r3, #0x50 ldr r1, _0238BE38 ; =0x00001013 add r2, r2, #0xd1 add r2, r2, #0x2900 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 stmib sp, {r2, r3} ldr r3, _0238BE3C ; =0x0000033E mov r2, r5 bl sub_0202E3CC ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4d] b _0238C16C _0238BB58: ldr r0, _0238BE84 ; =ov22_0238EBC8 bl DebugPrint0 bl GetNbItemsInBag cmp r0, #0 beq _0238BB7C bl GetGold ldr r1, _0238BE88 ; =0x0001869F cmp r0, r1 blt _0238BB90 _0238BB7C: ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] str r1, [r0, #0x14] b _0238BBA0 _0238BB90: ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x1d ldr r0, [r0] str r1, [r0, #0x14] _0238BBA0: mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE8C ; =ov22_0238E908 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238BBD8: ldr r0, _0238BE90 ; =ov22_0238EBD8 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #0 ldr r2, [r1] ldr r1, [r2, #0x28] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x29 str r2, [r1, #0x10] ldr r2, [r0] ldr r1, _0238BD68 ; =0x00003008 str r3, [r2, #0x14] ldr r3, [r0] mov r2, #0x30 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BE94 ; =ov22_0238E906 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238C16C _0238BC40: ldr r0, _0238BE98 ; =ov22_0238EBE4 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238BC7C bl ov22_0238A4CC ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x20] bl ov22_0238A544 ldr r1, _0238BD60 ; =ov22_0238EC70 b _0238BC94 _0238BC7C: bl ov22_0238AB18 ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x20] bl ov22_0238AB90 ldr r1, _0238BD60 ; =ov22_0238EC70 _0238BC94: ldr r1, [r1] str r0, [r1, #0x28] bl GetGold cmp r0, #0 bne _0238BCCC ldr r0, _0238BD60 ; =ov22_0238EC70 mov r3, #6 ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r0, [r0] str r1, [r0, #0x10] bl ov22_0238C184 b _0238C16C _0238BCCC: ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r5, [r0] ldr r4, [r5, #0x28] bl GetGold cmp r4, r0 ble _0238BD04 mov r1, #0xd ldr r0, _0238BD60 ; =ov22_0238EC70 str r1, [r5, #0x14] ldr r0, [r0] mov r1, #0x30 str r1, [r0, #0x10] bl ov22_0238C184 b _0238C16C _0238BD04: ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #0 ldr r1, [r1] str r4, [r1, #0x74] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x1a str r2, [r1, #0x10] ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r4, [r0] ldr r2, _0238BE9C ; =ov22_0238E8FC ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD68 ; =0x00003008 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C .align 2, 0 _0238BD60: .word ov22_0238EC70 _0238BD64: .word ov22_0238E9D0 _0238BD68: .word 0x00003008 _0238BD6C: .word OVERLAY22_UNKNOWN_STRING_IDS _0238BD70: .word ov22_0238E9D8 _0238BD74: .word 0x0000017F _0238BD78: .word ov22_0238E8F2 _0238BD7C: .word ov22_0238E9E4 _0238BD80: .word SHOP_D_BOX_LAYOUT_6 _0238BD84: .word 0x00300013 _0238BD88: .word SHOP_MAIN_MENU_3 _0238BD8C: .word ov22_0238E9F4 _0238BD90: .word 0x00003018 _0238BD94: .word ov22_0238E91E _0238BD98: .word ov22_0238EA04 _0238BD9C: .word ov22_0238E8F4 _0238BDA0: .word ov22_0238EA10 _0238BDA4: .word ov22_0238E90A _0238BDA8: .word ov22_0238EA1C _0238BDAC: .word ov22_0238E90C _0238BDB0: .word ov22_0238EA28 _0238BDB4: .word ov22_0238E90E _0238BDB8: .word ov22_0238EA34 _0238BDBC: .word ov22_0238E91C _0238BDC0: .word ov22_0238EA40 _0238BDC4: .word ov22_0238E910 _0238BDC8: .word ov22_0238EA4C _0238BDCC: .word ov22_0238E912 _0238BDD0: .word ov22_0238EA58 _0238BDD4: .word ov22_0238E914 _0238BDD8: .word ov22_0238EA64 _0238BDDC: .word ov22_0238E916 _0238BDE0: .word ov22_0238EA70 _0238BDE4: .word ov22_0238E918 _0238BDE8: .word ov22_0238EA7C _0238BDEC: .word ov22_0238E91A _0238BDF0: .word ov22_0238EA88 _0238BDF4: .word ov22_0238EA94 _0238BDF8: .word ov22_0238E8F6 _0238BDFC: .word ov22_0238EAA8 _0238BE00: .word ov22_0238E8F8 _0238BE04: .word ov22_0238EAB8 _0238BE08: .word ov22_0238EAC8 _0238BE0C: .word ov22_0238EAD8 _0238BE10: .word SHOP_MAIN_MENU_2 _0238BE14: .word SHOP_D_BOX_LAYOUT_7 _0238BE18: .word SHOP_D_BOX_LAYOUT_10 _0238BE1C: .word ov22_0238EAE8 _0238BE20: .word OVERLAY22_UNKNOWN_STRUCT__NA_238E85C _0238BE24: .word ov22_0238E8FA _0238BE28: .word ov22_0238EAF8 _0238BE2C: .word ov22_0238EB14 _0238BE30: .word 0x0000C402 _0238BE34: .word SHOP_D_BOX_LAYOUT_9 _0238BE38: .word 0x00001013 _0238BE3C: .word 0x0000033E _0238BE40: .word ov22_0238EB20 _0238BE44: .word ov22_0238E8FE _0238BE48: .word ov22_0238EB30 _0238BE4C: .word ov22_0238E900 _0238BE50: .word ov22_0238EB40 _0238BE54: .word ov22_0238E902 _0238BE58: .word ov22_0238EB50 _0238BE5C: .word ov22_0238EB60 _0238BE60: .word ov22_0238EB70 _0238BE64: .word SHOP_MAIN_MENU_1 _0238BE68: .word ov22_0238EB80 _0238BE6C: .word ov22_0238E904 _0238BE70: .word ov22_0238EB90 _0238BE74: .word SHOP_D_BOX_LAYOUT_8 _0238BE78: .word SHOP_MENU_CONFIRM _0238BE7C: .word ov22_0238EBA4 _0238BE80: .word ov22_0238EBB8 _0238BE84: .word ov22_0238EBC8 _0238BE88: .word 0x0001869F _0238BE8C: .word ov22_0238E908 _0238BE90: .word ov22_0238EBD8 _0238BE94: .word ov22_0238E906 _0238BE98: .word ov22_0238EBE4 _0238BE9C: .word ov22_0238E8FC _0238BEA0: .word ov22_0238EBF0 _0238BEA4: ldr r0, _0238BEA0 ; =ov22_0238EBF0 bl DebugPrint0 bl ov22_0238E7E4 ldr r8, _0238BD60 ; =ov22_0238EC70 mov r6, #0 ldr r0, [r8] mov r4, r6 str r6, [r0, #0x24] ldr r0, [r8] mov r5, #1 str r6, [r0, #0x28] mov r7, #6 _0238BED4: ldr r0, [r8] mul r1, r6, r7 ldr r0, [r0, #0x44] ldr r2, [r0, #0x384] ldrb r0, [r2, r1] add sb, r2, r1 tst r0, #1 movne r0, r5 moveq r0, r4 tst r0, #0xff beq _0238BF48 ldrsh r0, [sb, #4] bl IsShoppableItem cmp r0, #0 beq _0238BF48 mov r0, r6 bl sub_02042B84 cmp r0, #0 beq _0238BF48 mov r0, sb bl GetActualSellPrice ldr r2, [r8] ldr r1, [r2, #0x28] add r0, r1, r0 str r0, [r2, #0x28] ldr r1, [r8] ldr r0, [r1, #0x24] add r0, r0, #1 str r0, [r1, #0x24] _0238BF48: add r6, r6, #1 cmp r6, #0x32 blt _0238BED4 ldr r1, _0238BD60 ; =ov22_0238EC70 mov r0, #0 ldr r2, [r1] ldr r1, [r2, #0x28] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x26 str r2, [r1, #0x10] ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r4, [r0] ldr r2, _0238BE94 ; =ov22_0238E906 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD68 ; =0x00003008 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238BFB4: ldr r0, _0238C174 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238BE74 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BE78 ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238BFE8: ldr r0, _0238C178 ; =ov22_0238EC10 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE8C ; =ov22_0238E908 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238C038: ldr r0, _0238C174 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238BE74 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BE78 ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238C06C: ldr r0, _0238C174 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238BE74 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238BD84 ; =0x00300013 ldr r3, _0238BE78 ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238BD60 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238C16C _0238C0A0: ldr r0, _0238C17C ; =ov22_0238EC24 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox bl ov22_0238D528 cmp r0, #0 ldreq r0, _0238BD60 ; =ov22_0238EC70 moveq r1, #0xc ldrne r0, _0238BD60 ; =ov22_0238EC70 movne r1, #1 ldr r0, [r0] str r1, [r0, #0x14] mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238BE44 ; =ov22_0238E8FE ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238BD90 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238C16C _0238C110: ldr r0, _0238C180 ; =ov22_0238EC38 bl DebugPrint0 ldr r0, _0238BD60 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238BD60 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238BD90 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238BE8C ; =ov22_0238E908 ldrh r2, [r2, r5] bl ShowMessageInDBox bl sub_02042AF8 _0238C16C: add sp, sp, #0xac ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0238C174: .word ov22_0238EC00 _0238C178: .word ov22_0238EC10 _0238C17C: .word ov22_0238EC24 _0238C180: .word ov22_0238EC38 arm_func_end ov22_0238ADFC arm_func_start ov22_0238C184 ov22_0238C184: ; 0x0238C184 stmdb sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0xac ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, [r0] ldr r0, [r2, #0x10] cmp r0, #0x30 addls pc, pc, r0, lsl #2 b _0238D510 _0238C1A4: ; jump table b _0238C268 ; case 0 b _0238C2BC ; case 1 b _0238C354 ; case 2 b _0238C3A4 ; case 3 b _0238C768 ; case 4 b _0238C3F4 ; case 5 b _0238C444 ; case 6 b _0238C494 ; case 7 b _0238C4E0 ; case 8 b _0238C52C ; case 9 b _0238C578 ; case 10 b _0238C5C4 ; case 11 b _0238C610 ; case 12 b _0238C660 ; case 13 b _0238C6B0 ; case 14 b _0238C718 ; case 15 b _0238C784 ; case 16 b _0238C7E0 ; case 17 b _0238CAEC ; case 18 b _0238C83C ; case 19 b _0238C8B4 ; case 20 b _0238C938 ; case 21 b _0238CA24 ; case 22 b _0238C980 ; case 23 b _0238CDEC ; case 24 b _0238CFE4 ; case 25 b _0238D3DC ; case 26 b _0238D444 ; case 27 b _0238CB7C ; case 28 b _0238CBD8 ; case 29 b _0238CEFC ; case 30 b _0238CC34 ; case 31 b ov22_0238CC94 ; case 32 b _0238CCFC ; case 33 b _0238CE20 ; case 34 b _0238CD30 ; case 35 b _0238CDB8 ; case 36 b _0238D248 ; case 37 b _0238D410 ; case 38 b _0238D4B4 ; case 39 b _0238CF7C ; case 40 b _0238D358 ; case 41 b _0238D38C ; case 42 b _0238D510 ; case 43 b _0238C314 ; case 44 b _0238D510 ; case 45 b _0238D510 ; case 46 b _0238D510 ; case 47 b _0238C348 ; case 48 _0238C268: ldr r0, _0238D108 ; =ov22_0238E9D0 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] strb r1, [r0, #9] bl sub_02042AF8 bl ov22_0238D554 mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D10C ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D110 ; =OVERLAY22_UNKNOWN_STRING_IDS ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C2BC: ldr r0, _0238D114 ; =ov22_0238E9D8 bl DebugPrint0 bl sub_02042AF8 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r1, _0238D118 ; =0x0000017F ldr r0, [r0] str r1, [r0, #0x50] bl ov22_0238D554 mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D10C ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D11C ; =ov22_0238E8F2 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C314: ldr r0, _0238D120 ; =ov22_0238E9E4 bl DebugPrint0 mov r4, #5 ldr r0, _0238D124 ; =SHOP_D_BOX_LAYOUT_6 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D12C ; =SHOP_MAIN_MENU_3 mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238C348: mov r0, #0 str r0, [r2, #0xc] b _0238D510 _0238C354: ldr r0, _0238D130 ; =ov22_0238E9F4 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D138 ; =ov22_0238E91E ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C3A4: ldr r0, _0238D13C ; =ov22_0238EA04 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #4 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D140 ; =ov22_0238E8F4 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C3F4: ldr r0, _0238D144 ; =ov22_0238EA10 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D148 ; =ov22_0238E90A ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C444: ldr r0, _0238D14C ; =ov22_0238EA1C bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x11 ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D150 ; =ov22_0238E90C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C494: ldr r0, _0238D154 ; =ov22_0238EA28 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D158 ; =ov22_0238E90E ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C4E0: ldr r0, _0238D15C ; =ov22_0238EA34 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D160 ; =ov22_0238E91C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C52C: ldr r0, _0238D164 ; =ov22_0238EA40 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D168 ; =ov22_0238E910 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C578: ldr r0, _0238D16C ; =ov22_0238EA4C bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D170 ; =ov22_0238E912 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C5C4: ldr r0, _0238D174 ; =ov22_0238EA58 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #1 ldr r1, [r1] str r0, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D178 ; =ov22_0238E914 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C610: ldr r0, _0238D17C ; =ov22_0238EA64 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D180 ; =ov22_0238E916 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C660: ldr r0, _0238D184 ; =ov22_0238EA70 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x11 ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D188 ; =ov22_0238E918 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C6B0: ldr r0, _0238D18C ; =ov22_0238EA7C bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r2, #0x1d ldr r4, [r1] mov r0, #1 ldrsh r3, [r4, #0x30] str r3, [r4, #0x64] ldr r4, [r1] ldrh r3, [r4, #0x2e] str r3, [r4, #0x78] ldr r1, [r1] str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D190 ; =ov22_0238E91A ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C718: ldr r0, _0238D194 ; =ov22_0238EA88 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x1d ldr r1, [r0] mov r0, #1 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D160 ; =ov22_0238E91C ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C768: ldrb r0, [r2, #8] cmp r0, #0 beq _0238C77C bl ov22_0238A22C b _0238D510 _0238C77C: bl ov22_0238A878 b _0238D510 _0238C784: ldr r0, _0238D198 ; =ov22_0238EA94 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #0x13 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D19C ; =ov22_0238E8F6 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238C7E0: ldr r0, _0238D1A0 ; =ov22_0238EAA8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #0x14 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D1A4 ; =ov22_0238E8F8 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238C83C: ldr r0, _0238D1A8 ; =ov22_0238EAB8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238C890 bl ov22_0238A140 b _0238C894 _0238C890: bl ov22_0238A78C _0238C894: ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4a] mov r0, #0 bl sub_0204426C mov r0, #0 bl sub_02044568 b _0238D510 _0238C8B4: ldr r0, _0238D1AC ; =ov22_0238EAC8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, _0238D118 ; =0x0000017F ldr r1, [r0] str r2, [r1, #0x9c] ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238C914 bl ov22_0238A150 b _0238C918 _0238C914: bl ov22_0238A79C _0238C918: ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4a] mov r0, #0 bl sub_0204426C mov r0, #0 bl sub_02044568 b _0238D510 _0238C938: ldr r0, _0238D1B0 ; =ov22_0238EAD8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r3, _0238D1B4 ; =SHOP_MAIN_MENU_2 ldr r0, [r0] mov r4, #3 ldrb r0, [r0, #8] mov r1, #0x13 mov r2, #0 cmp r0, #0 ldrne r0, _0238D1B8 ; =SHOP_D_BOX_LAYOUT_7 str r4, [sp] ldreq r0, _0238D1BC ; =SHOP_D_BOX_LAYOUT_10 bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238C980: ldr r0, _0238D1C0 ; =ov22_0238EAE8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, _0238D1C4 ; =OVERLAY22_UNKNOWN_STRUCT__NA_238E85C ldr r1, [r0] add r0, r1, #0xe0 add r1, r1, #0x2c bl sub_0200D670 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #0 ldr r3, [r1] add r2, r3, #0xe0 str r2, [r3, #0x88] ldr r3, [r1] ldrsh r2, [r3, #0x30] str r2, [r3, #0x64] ldr r3, [r1] ldrh r2, [r3, #0x2e] str r2, [r3, #0x78] ldr r2, [r1] ldr r1, [r2, #0x1c] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D10C ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D1C8 ; =ov22_0238E8FA ldrh r2, [r2, r5] bl ShowMessageInDBox ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #0x2f ldr r2, [r0] mov r1, #0x18 str r3, [r2, #0x10] ldr r0, [r0] str r1, [r0, #0x14] b _0238D510 _0238CA24: ldrsh r1, [r2, #0x30] ldrh r2, [r2, #0x2e] ldr r0, _0238D1CC ; =ov22_0238EAF8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] add r0, r0, #0x50 bl InitPreprocessorArgs ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, _0238D1D0 ; =ov22_0238EB14 ldr r5, [r0] ldr r3, _0238D1D4 ; =0x0000C402 ldrh r4, [r5, #0x2e] mov r1, #0x400 str r4, [r5, #0x50] ldr r5, [r0] ldrsh r4, [r5, #0x30] str r4, [r5, #0x60] ldr r5, [r0] ldrh r4, [r5, #0x2e] str r4, [r5, #0x74] ldr r0, [r0] add r4, r0, #0x50 add r0, r0, #0xa0 str r4, [sp] bl PreprocessString add r0, sp, #0x5c bl InitPreprocessorArgs ldr r0, _0238D104 ; =ov22_0238EC70 add r1, sp, #0x5c ldr r3, [r0] ldr r0, _0238D1D8 ; =SHOP_D_BOX_LAYOUT_9 add r2, r3, #0xa0 str r2, [sp, #0x94] str r1, [sp] ldrsh r2, [r3, #0x30] add r3, r3, #0x50 ldr r1, _0238D1DC ; =0x00001013 add r2, r2, #0xd1 add r2, r2, #0x2900 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 stmib sp, {r2, r3} ldr r3, _0238D1E0 ; =0x0000033E mov r2, #0 bl sub_0202E3CC ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4d] b _0238D510 _0238CAEC: ldr r0, _0238D1E4 ; =ov22_0238EB20 bl DebugPrint0 bl ov22_0238D528 cmp r0, #0 bne _0238CB34 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238CB1C bl ov22_0238A22C b _0238CB20 _0238CB1C: bl ov22_0238A878 _0238CB20: ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0xc ldr r0, [r0] str r1, [r0, #0x14] b _0238CB44 _0238CB34: ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x11 ldr r0, [r0] str r1, [r0, #0x14] _0238CB44: mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D1E8 ; =ov22_0238E8FE ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238CB7C: ldr r0, _0238D1EC ; =ov22_0238EB30 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #0x1f ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D1F0 ; =ov22_0238E900 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238CBD8: ldr r0, _0238D1F4 ; =ov22_0238EB40 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #0x20 ldr r1, [r0] mov r2, #0x2e str r3, [r1, #0x14] ldr r1, [r0] mov r0, #0 str r2, [r1, #0x10] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D1F8 ; =ov22_0238E902 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238CC34: ldr r0, _0238D1FC ; =ov22_0238EB50 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox bl sub_02042730 mov r0, #4 mov r1, #0 mov r2, #8 mov r3, #1 bl sub_02042258 ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4b] b _0238D510 arm_func_end ov22_0238C184 ov22_0238CC94: ldr r0, _0238D200 ; =ov22_0238EB60 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, _0238D118 ; =0x0000017F ldr r1, [r0] arm_func_start ov22_0238CCA8 ov22_0238CCA8: ; 0x0238CCA8 str r2, [r1, #0x9c] ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238D104 ; =ov22_0238EC70 arm_func_end ov22_0238CCA8 arm_func_start ov22_0238CCBC ov22_0238CCBC: ; 0x0238CCBC ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox arm_func_end ov22_0238CCBC arm_func_start ov22_0238CCD8 ov22_0238CCD8: ; 0x0238CCD8 mov r0, #4 mov r1, #0 mov r2, #8 mov r3, #1 bl sub_02042258 ldr r1, _0238D104 ; =ov22_0238EC70 arm_func_end ov22_0238CCD8 arm_func_start ov22_0238CCF0 ov22_0238CCF0: ; 0x0238CCF0 ldr r1, [r1] strb r0, [r1, #0x4b] b _0238D510 _0238CCFC: ldr r0, _0238D204 ; =ov22_0238EB70 bl DebugPrint0 mov r4, #3 ldr r0, _0238D1B8 ; =SHOP_D_BOX_LAYOUT_7 ldr r3, _0238D208 ; =SHOP_MAIN_MENU_1 mov r1, #0x13 mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238CD30: ldr r0, _0238D20C ; =ov22_0238EB80 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r2, _0238D1C4 ; =OVERLAY22_UNKNOWN_STRUCT__NA_238E85C ldr r1, [r0] add r0, r1, #0xe0 add r1, r1, #0x2c bl sub_0200D670 ldr r1, _0238D104 ; =ov22_0238EC70 mov r4, #0x2f ldr r3, [r1] mov r2, #0x24 add r0, r3, #0xe0 str r0, [r3, #0x88] ldr r5, [r1] mov r0, #0 ldr r3, [r5, #0x1c] str r3, [r5, #0x74] ldr r3, [r1] str r4, [r3, #0x10] ldr r1, [r1] str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D10C ; =0x00003008 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D210 ; =ov22_0238E904 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238CDB8: ldr r0, _0238D214 ; =ov22_0238EB90 bl DebugPrint0 mov r4, #2 ldr r0, _0238D218 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D21C ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238CDEC: ldr r0, _0238D220 ; =ov22_0238EBA4 bl DebugPrint0 mov r4, #2 ldr r0, _0238D218 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D21C ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238CE20: ldr r0, _0238D224 ; =ov22_0238EBB8 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] add r0, r0, #0x50 bl InitPreprocessorArgs ldr r0, _0238D104 ; =ov22_0238EC70 mov r5, #0 ldr r6, [r0] ldr r2, _0238D1D0 ; =ov22_0238EB14 ldrh r4, [r6, #0x2e] ldr r3, _0238D1D4 ; =0x0000C402 mov r1, #0x400 str r4, [r6, #0x50] ldr r6, [r0] ldrsh r4, [r6, #0x30] str r4, [r6, #0x60] ldr r6, [r0] ldrh r4, [r6, #0x2e] str r4, [r6, #0x74] ldr r6, [r0] ldrh r4, [r6, #0x2e] add r4, r4, #0xbc str r4, [r6, #0x68] ldr r4, [r0] str r5, [r4, #0x7c] ldr r0, [r0] add r4, r0, #0x50 add r0, r0, #0xa0 str r4, [sp] bl PreprocessString add r0, sp, #0xc bl InitPreprocessorArgs ldr r0, _0238D104 ; =ov22_0238EC70 add r1, sp, #0xc ldr r3, [r0] ldr r0, _0238D1D8 ; =SHOP_D_BOX_LAYOUT_9 add r2, r3, #0xa0 str r2, [sp, #0x44] str r1, [sp] ldrsh r2, [r3, #0x30] add r3, r3, #0x50 ldr r1, _0238D1DC ; =0x00001013 add r2, r2, #0xd1 add r2, r2, #0x2900 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 stmib sp, {r2, r3} ldr r3, _0238D1E0 ; =0x0000033E mov r2, r5 bl sub_0202E3CC ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4d] b _0238D510 _0238CEFC: ldr r0, _0238D228 ; =ov22_0238EBC8 bl DebugPrint0 bl GetNbItemsInBag cmp r0, #0 beq _0238CF20 bl GetGold ldr r1, _0238D22C ; =0x0001869F cmp r0, r1 blt _0238CF34 _0238CF20: ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] str r1, [r0, #0x14] b _0238CF44 _0238CF34: ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x1d ldr r0, [r0] str r1, [r0, #0x14] _0238CF44: mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D230 ; =ov22_0238E908 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238CF7C: ldr r0, _0238D234 ; =ov22_0238EBD8 bl DebugPrint0 bl ov22_0238E7E4 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #0 ldr r2, [r1] ldr r1, [r2, #0x28] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x29 str r2, [r1, #0x10] ldr r2, [r0] ldr r1, _0238D10C ; =0x00003008 str r3, [r2, #0x14] ldr r3, [r0] mov r2, #0x30 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D238 ; =ov22_0238E906 ldrh r2, [r2, r5] bl ShowMessageInDBox b _0238D510 _0238CFE4: ldr r0, _0238D23C ; =ov22_0238EBE4 bl DebugPrint0 bl ov22_0238E7E4 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238D020 bl ov22_0238A4CC ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x20] bl ov22_0238A544 ldr r1, _0238D104 ; =ov22_0238EC70 b _0238D038 _0238D020: bl ov22_0238AB18 ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x20] bl ov22_0238AB90 ldr r1, _0238D104 ; =ov22_0238EC70 _0238D038: ldr r1, [r1] str r0, [r1, #0x28] bl GetGold cmp r0, #0 bne _0238D070 ldr r0, _0238D104 ; =ov22_0238EC70 mov r3, #6 ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r0, [r0] str r1, [r0, #0x10] bl ov22_0238C184 b _0238D510 _0238D070: ldr r0, _0238D104 ; =ov22_0238EC70 ldr r5, [r0] ldr r4, [r5, #0x28] bl GetGold cmp r4, r0 ble _0238D0A8 mov r1, #0xd ldr r0, _0238D104 ; =ov22_0238EC70 str r1, [r5, #0x14] ldr r0, [r0] mov r1, #0x30 str r1, [r0, #0x10] bl ov22_0238C184 b _0238D510 _0238D0A8: ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #0 ldr r1, [r1] str r4, [r1, #0x74] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x1a str r2, [r1, #0x10] ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r4, [r0] ldr r2, _0238D240 ; =ov22_0238E8FC ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D10C ; =0x00003008 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 .align 2, 0 _0238D104: .word ov22_0238EC70 _0238D108: .word ov22_0238E9D0 _0238D10C: .word 0x00003008 _0238D110: .word OVERLAY22_UNKNOWN_STRING_IDS _0238D114: .word ov22_0238E9D8 _0238D118: .word 0x0000017F _0238D11C: .word ov22_0238E8F2 _0238D120: .word ov22_0238E9E4 _0238D124: .word SHOP_D_BOX_LAYOUT_6 _0238D128: .word 0x00300013 _0238D12C: .word SHOP_MAIN_MENU_3 _0238D130: .word ov22_0238E9F4 _0238D134: .word 0x00003018 _0238D138: .word ov22_0238E91E _0238D13C: .word ov22_0238EA04 _0238D140: .word ov22_0238E8F4 _0238D144: .word ov22_0238EA10 _0238D148: .word ov22_0238E90A _0238D14C: .word ov22_0238EA1C _0238D150: .word ov22_0238E90C _0238D154: .word ov22_0238EA28 _0238D158: .word ov22_0238E90E _0238D15C: .word ov22_0238EA34 _0238D160: .word ov22_0238E91C _0238D164: .word ov22_0238EA40 _0238D168: .word ov22_0238E910 _0238D16C: .word ov22_0238EA4C _0238D170: .word ov22_0238E912 _0238D174: .word ov22_0238EA58 _0238D178: .word ov22_0238E914 _0238D17C: .word ov22_0238EA64 _0238D180: .word ov22_0238E916 _0238D184: .word ov22_0238EA70 _0238D188: .word ov22_0238E918 _0238D18C: .word ov22_0238EA7C _0238D190: .word ov22_0238E91A _0238D194: .word ov22_0238EA88 _0238D198: .word ov22_0238EA94 _0238D19C: .word ov22_0238E8F6 _0238D1A0: .word ov22_0238EAA8 _0238D1A4: .word ov22_0238E8F8 _0238D1A8: .word ov22_0238EAB8 _0238D1AC: .word ov22_0238EAC8 _0238D1B0: .word ov22_0238EAD8 _0238D1B4: .word SHOP_MAIN_MENU_2 _0238D1B8: .word SHOP_D_BOX_LAYOUT_7 _0238D1BC: .word SHOP_D_BOX_LAYOUT_10 _0238D1C0: .word ov22_0238EAE8 _0238D1C4: .word OVERLAY22_UNKNOWN_STRUCT__NA_238E85C _0238D1C8: .word ov22_0238E8FA _0238D1CC: .word ov22_0238EAF8 _0238D1D0: .word ov22_0238EB14 _0238D1D4: .word 0x0000C402 _0238D1D8: .word SHOP_D_BOX_LAYOUT_9 _0238D1DC: .word 0x00001013 _0238D1E0: .word 0x0000033E _0238D1E4: .word ov22_0238EB20 _0238D1E8: .word ov22_0238E8FE _0238D1EC: .word ov22_0238EB30 _0238D1F0: .word ov22_0238E900 _0238D1F4: .word ov22_0238EB40 _0238D1F8: .word ov22_0238E902 _0238D1FC: .word ov22_0238EB50 _0238D200: .word ov22_0238EB60 _0238D204: .word ov22_0238EB70 _0238D208: .word SHOP_MAIN_MENU_1 _0238D20C: .word ov22_0238EB80 _0238D210: .word ov22_0238E904 _0238D214: .word ov22_0238EB90 _0238D218: .word SHOP_D_BOX_LAYOUT_8 _0238D21C: .word SHOP_MENU_CONFIRM _0238D220: .word ov22_0238EBA4 _0238D224: .word ov22_0238EBB8 _0238D228: .word ov22_0238EBC8 _0238D22C: .word 0x0001869F _0238D230: .word ov22_0238E908 _0238D234: .word ov22_0238EBD8 _0238D238: .word ov22_0238E906 _0238D23C: .word ov22_0238EBE4 _0238D240: .word ov22_0238E8FC _0238D244: .word ov22_0238EBF0 _0238D248: ldr r0, _0238D244 ; =ov22_0238EBF0 bl DebugPrint0 bl ov22_0238E7E4 ldr r8, _0238D104 ; =ov22_0238EC70 mov r6, #0 ldr r0, [r8] mov r4, r6 str r6, [r0, #0x24] ldr r0, [r8] mov r5, #1 str r6, [r0, #0x28] mov r7, #6 _0238D278: ldr r0, [r8] mul r1, r6, r7 ldr r0, [r0, #0x44] ldr r2, [r0, #0x384] ldrb r0, [r2, r1] add sb, r2, r1 tst r0, #1 movne r0, r5 moveq r0, r4 tst r0, #0xff beq _0238D2EC ldrsh r0, [sb, #4] bl IsShoppableItem cmp r0, #0 beq _0238D2EC mov r0, r6 bl sub_02042B84 cmp r0, #0 beq _0238D2EC mov r0, sb bl GetActualSellPrice ldr r2, [r8] ldr r1, [r2, #0x28] add r0, r1, r0 str r0, [r2, #0x28] ldr r1, [r8] ldr r0, [r1, #0x24] add r0, r0, #1 str r0, [r1, #0x24] _0238D2EC: add r6, r6, #1 cmp r6, #0x32 blt _0238D278 ldr r1, _0238D104 ; =ov22_0238EC70 mov r0, #0 ldr r2, [r1] ldr r1, [r2, #0x28] str r1, [r2, #0x74] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x2f ldr r1, [r0] mov r3, #0x26 str r2, [r1, #0x10] ldr r2, [r0] mov r1, #0x30 str r3, [r2, #0x14] ldr r4, [r0] ldr r2, _0238D238 ; =ov22_0238E906 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D10C ; =0x00003008 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238D358: ldr r0, _0238D518 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238D218 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D21C ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238D38C: ldr r0, _0238D51C ; =ov22_0238EC10 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D230 ; =ov22_0238E908 ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238D3DC: ldr r0, _0238D518 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238D218 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D21C ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238D410: ldr r0, _0238D518 ; =ov22_0238EC00 bl DebugPrint0 mov r4, #2 ldr r0, _0238D218 ; =SHOP_D_BOX_LAYOUT_8 ldr r1, _0238D128 ; =0x00300013 ldr r3, _0238D21C ; =SHOP_MENU_CONFIRM mov r2, #0 str r4, [sp] bl CreateNormalMenu ldr r1, _0238D104 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x4c] b _0238D510 _0238D444: ldr r0, _0238D520 ; =ov22_0238EC24 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox bl ov22_0238D528 cmp r0, #0 ldreq r0, _0238D104 ; =ov22_0238EC70 moveq r1, #0xc ldrne r0, _0238D104 ; =ov22_0238EC70 movne r1, #1 ldr r0, [r0] str r1, [r0, #0x14] mov r0, #0 bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r1, #0x30 ldr r4, [r0] ldr r2, _0238D1E8 ; =ov22_0238E8FE ldr r3, [r4] ldrsb r0, [r4, #0x48] mul r1, r3, r1 ldrh r2, [r2, r1] ldr r1, _0238D134 ; =0x00003018 add r3, r4, #0x50 bl ShowMessageInDBox b _0238D510 _0238D4B4: ldr r0, _0238D524 ; =ov22_0238EC38 bl DebugPrint0 ldr r0, _0238D104 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0 str r2, [r1, #0x14] bl ov22_0238D5F4 ldr r0, _0238D104 ; =ov22_0238EC70 mov r2, #0x30 ldr r3, [r0] ldr r1, _0238D134 ; =0x00003018 ldrsb r0, [r3, #0x48] ldr r4, [r3], #0x50 mul r5, r4, r2 ldr r2, _0238D230 ; =ov22_0238E908 ldrh r2, [r2, r5] bl ShowMessageInDBox bl sub_02042AF8 _0238D510: add sp, sp, #0xac ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0238D518: .word ov22_0238EC00 _0238D51C: .word ov22_0238EC10 _0238D520: .word ov22_0238EC24 _0238D524: .word ov22_0238EC38 arm_func_end ov22_0238CCF0 arm_func_start ov22_0238D528 ov22_0238D528: ; 0x0238D528 stmdb sp!, {r3, lr} ldr r0, _0238D550 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238D548 bl sub_02010830 ldmia sp!, {r3, pc} _0238D548: bl sub_02010B3C ldmia sp!, {r3, pc} .align 2, 0 _0238D550: .word ov22_0238EC70 arm_func_end ov22_0238D528 arm_func_start ov22_0238D554 ov22_0238D554: ; 0x0238D554 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldr r8, _0238D5F0 ; =ov22_0238EC70 mov r6, #0 ldr r0, [r8] mov r4, r6 str r6, [r0, #0x24] ldr r0, [r8] mov r5, #1 str r6, [r0, #0x28] mov r7, #6 _0238D57C: ldr r0, [r8] mul r1, r6, r7 ldr r0, [r0, #0x44] ldr r2, [r0, #0x384] ldrb r0, [r2, r1] add sb, r2, r1 tst r0, #1 movne r0, r5 moveq r0, r4 tst r0, #0xff beq _0238D5E0 ldrsh r0, [sb, #4] bl IsShoppableItem cmp r0, #0 beq _0238D5E0 mov r0, sb bl GetActualSellPrice ldr r2, [r8] ldr r1, [r2, #0x28] add r0, r1, r0 str r0, [r2, #0x28] ldr r1, [r8] ldr r0, [r1, #0x24] add r0, r0, #1 str r0, [r1, #0x24] _0238D5E0: add r6, r6, #1 cmp r6, #0x32 blt _0238D57C ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0238D5F0: .word ov22_0238EC70 arm_func_end ov22_0238D554 arm_func_start ov22_0238D5F4 ov22_0238D5F4: ; 0x0238D5F4 stmdb sp!, {r3, lr} ldr r2, _0238D63C ; =ov22_0238EC70 mov r1, #0 ldr r3, [r2] ldrb r2, [r3, #8] cmp r2, #0 beq _0238D614 b _0238D614 _0238D614: cmp r0, #1 moveq r1, #3 add r0, r3, #0x1e0 bl SetPortraitEmotion ldr r0, _0238D63C ; =ov22_0238EC70 ldr r1, [r0] ldrsb r0, [r1, #0x49] add r1, r1, #0x1e0 bl ShowPortraitBox ldmia sp!, {r3, pc} .align 2, 0 _0238D63C: .word ov22_0238EC70 arm_func_end ov22_0238D5F4 arm_func_start ov22_0238D640 ov22_0238D640: ; 0x0238D640 stmdb sp!, {r4, lr} ldr r2, _0238D7A0 ; =ov11_0238A130 mov r0, #0x1f0 mov r1, #8 ldr r4, [r2] bl MemAlloc ldr r1, _0238D7A4 ; =ov22_0238EC70 str r0, [r1] add r0, r0, #0x50 bl InitPreprocessorArgs mov r0, #0 bl CreateDBox ldr r2, _0238D7A4 ; =ov22_0238EC70 mov r1, #3 ldr r3, [r2] mov r2, #1 strb r0, [r3, #0x48] mov r0, #0 bl CreatePortraitBox ldr r1, _0238D7A4 ; =ov22_0238EC70 ldr r1, [r1] strb r0, [r1, #0x49] bl sub_02042B98 ldr r2, _0238D7A4 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r2] sub ip, r1, #2 str r1, [r0, #0x38] ldr r3, [r2] ldr r0, _0238D7A8 ; =BAG_ITEMS_PTR_MIRROR str r1, [r3, #0x3c] ldr lr, [r2] ldr r3, _0238D7AC ; =0x0000017F str r1, [lr, #0x40] ldr lr, [r2] str r4, [lr] ldr r4, [r2] str r1, [r4, #4] ldr r4, [r2] strb ip, [r4, #0x4a] ldr r4, [r2] strb ip, [r4, #0x4b] ldr r4, [r2] strb ip, [r4, #0x4c] ldr r4, [r0] ldr r0, [r2] str r4, [r0, #0x44] ldr r0, [r2] str r3, [r0, #0x9c] ldr r2, [r2] ldr r0, [r2] cmp r0, #0 beq _0238D720 cmp r0, #1 beq _0238D740 b _0238D758 _0238D720: mov r0, #1 strb r0, [r2, #8] bl ov22_0238A2C0 ldr r0, _0238D7A4 ; =ov22_0238EC70 ldr r1, _0238D7AC ; =0x0000017F ldr r0, [r0] str r1, [r0, #0x50] b _0238D758 _0238D740: strb r1, [r2, #8] bl ov22_0238A90C ldr r0, _0238D7A4 ; =ov22_0238EC70 mov r1, #0x180 ldr r0, [r0] str r1, [r0, #0x50] _0238D758: ldr r0, _0238D7A4 ; =ov22_0238EC70 ldr r0, [r0] add r0, r0, #0x1e0 bl InitPortraitBoxWithMonsterId ldr r0, _0238D7A4 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r0] add r0, r0, #0x1e0 bl SetPortraitLayout ldr r0, _0238D7A4 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r0] add r0, r0, #0x1e0 bl SetPortraitEmotion mov r0, #0 bl ov22_0238ADD8 mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 _0238D7A0: .word ov11_0238A130 _0238D7A4: .word ov22_0238EC70 _0238D7A8: .word BAG_ITEMS_PTR_MIRROR _0238D7AC: .word 0x0000017F arm_func_end ov22_0238D640 arm_func_start ov22_0238D7B0 ov22_0238D7B0: ; 0x0238D7B0 stmdb sp!, {r3, lr} ldr r0, _0238D7FC ; =ov22_0238EC70 ldr r0, [r0] cmp r0, #0 ldmeqia sp!, {r3, pc} ldrb r0, [r0, #8] cmp r0, #0 beq _0238D7D8 bl ov22_0238A2F4 b _0238D7DC _0238D7D8: bl ov22_0238A940 _0238D7DC: bl sub_02042BBC ldr r0, _0238D7FC ; =ov22_0238EC70 ldr r0, [r0] bl MemFree ldr r0, _0238D7FC ; =ov22_0238EC70 mov r1, #0 str r1, [r0] ldmia sp!, {r3, pc} .align 2, 0 _0238D7FC: .word ov22_0238EC70 arm_func_end ov22_0238D7B0 arm_func_start ov22_0238D800 ov22_0238D800: ; 0x0238D800 stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r0, _0238E794 ; =ov22_0238EC70 ldr r2, [r0] ldr r1, [r2, #4] cmp r1, #3 addls pc, pc, r1, lsl #2 b _0238E7DC _0238D81C: ; jump table b _0238D82C ; case 0 b _0238D838 ; case 1 b _0238E750 ; case 2 b _0238E7A8 ; case 3 _0238D82C: mov r0, #1 str r0, [r2, #4] b _0238E7DC _0238D838: ldr r1, [r2, #0x10] cmp r1, #0x30 addls pc, pc, r1, lsl #2 b _0238E704 _0238D848: ; jump table b _0238D90C ; case 0 b _0238D90C ; case 1 b _0238E704 ; case 2 b _0238E704 ; case 3 b _0238E5DC ; case 4 b _0238E704 ; case 5 b _0238E704 ; case 6 b _0238E704 ; case 7 b _0238E704 ; case 8 b _0238E704 ; case 9 b _0238E704 ; case 10 b _0238E704 ; case 11 b _0238E704 ; case 12 b _0238E704 ; case 13 b _0238E704 ; case 14 b _0238E704 ; case 15 b _0238E704 ; case 16 b _0238E704 ; case 17 b _0238E704 ; case 18 b _0238DAB8 ; case 19 b _0238DAB8 ; case 20 b _0238DFA0 ; case 21 b _0238E564 ; case 22 b _0238E164 ; case 23 b _0238E164 ; case 24 b _0238E704 ; case 25 b _0238E39C ; case 26 b _0238E704 ; case 27 b _0238E704 ; case 28 b _0238E704 ; case 29 b _0238E704 ; case 30 b _0238DDF8 ; case 31 b _0238DDF8 ; case 32 b _0238E07C ; case 33 b _0238E5A0 ; case 34 b _0238E1F0 ; case 35 b _0238E1F0 ; case 36 b _0238E704 ; case 37 b _0238E418 ; case 38 b _0238E704 ; case 39 b _0238E704 ; case 40 b _0238E280 ; case 41 b _0238E704 ; case 42 b _0238E6F8 ; case 43 b _0238D938 ; case 44 b _0238E704 ; case 45 b _0238E5E8 ; case 46 b _0238E704 ; case 47 b _0238E638 ; case 48 _0238D90C: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E734 mov r0, #0x2c bl ov22_0238ADD8 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox b _0238E734 _0238D938: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 ldrne r1, _0238E794 ; =ov22_0238EC70 ldrne r1, [r1] strne r0, [r1, #0x38] cmp r0, #7 addls pc, pc, r0, lsl #2 b _0238E734 _0238D95C: ; jump table b _0238E734 ; case 0 b _0238DA9C ; case 1 b _0238D97C ; case 2 b _0238D9B0 ; case 3 b _0238DA20 ; case 4 b _0238E734 ; case 5 b _0238E734 ; case 6 b _0238DA90 ; case 7 _0238D97C: ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] strb r1, [r0, #9] bl ov22_0238D528 cmp r0, #0 bne _0238D9A4 mov r0, #5 bl ov22_0238ADD8 b _0238E734 _0238D9A4: mov r0, #0x10 bl ov22_0238ADD8 b _0238E734 _0238D9B0: ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r0] strb r1, [r0, #9] bl GetNbItemsInBag cmp r0, #0 bne _0238D9D8 mov r0, #0xa bl ov22_0238ADD8 b _0238E734 _0238D9D8: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x24] cmp r0, #0 bne _0238D9F8 mov r0, #9 bl ov22_0238ADD8 b _0238E734 _0238D9F8: bl GetGold ldr r1, _0238E798 ; =0x0001869F cmp r0, r1 blt _0238DA14 mov r0, #7 bl ov22_0238ADD8 b _0238E734 _0238DA14: mov r0, #0x1c bl ov22_0238ADD8 b _0238E734 _0238DA20: ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r0] strb r1, [r0, #9] bl GetNbItemsInBag cmp r0, #0 bne _0238DA48 mov r0, #0xa bl ov22_0238ADD8 b _0238E734 _0238DA48: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x24] cmp r0, #0 bne _0238DA68 mov r0, #9 bl ov22_0238ADD8 b _0238E734 _0238DA68: bl GetGold ldr r1, _0238E798 ; =0x0001869F cmp r0, r1 ble _0238DA84 mov r0, #7 bl ov22_0238ADD8 b _0238E734 _0238DA84: mov r0, #0x28 bl ov22_0238ADD8 b _0238E734 _0238DA90: mov r0, #2 bl ov22_0238ADD8 b _0238E734 _0238DA9C: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4c] bl sub_0202836C mov r0, #3 bl ov22_0238ADD8 b _0238E734 _0238DAB8: ldrb r0, [r2, #8] cmp r0, #0 beq _0238DACC bl ov22_0238A230 b _0238DAD0 _0238DACC: bl ov22_0238A87C _0238DAD0: cmp r0, #4 addls pc, pc, r0, lsl #2 b _0238DD34 _0238DADC: ; jump table b _0238DD34 ; case 0 b _0238E734 ; case 1 b _0238DCF4 ; case 2 b _0238DAF0 ; case 3 b _0238DC54 ; case 4 _0238DAF0: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238DBAC bl ov22_0238A4CC cmp r0, #1 ble _0238DB2C ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x19 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238DB2C: bne _0238DB3C bl ov22_0238A508 ldr r1, _0238E794 ; =ov22_0238EC70 b _0238DB44 _0238DB3C: bl ov22_0238A2AC ldr r1, _0238E794 ; =ov22_0238EC70 _0238DB44: ldr r1, [r1] strb r0, [r1, #0x32] ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #0x32] bl sub_02010898 ldr r1, _0238E794 ; =ov22_0238EC70 mov r4, r0 ldr r0, [r1] ldrsh r1, [r4] add r0, r0, #0x2c mov r2, #0 bl InitStandardItem ldr r0, _0238E794 ; =ov22_0238EC70 ldrh r2, [r4, #2] ldr r1, [r0] strh r2, [r1, #0x2e] ldr r0, [r0] add r0, r0, #0x2c bl GetActualBuyPrice ldr r1, _0238E794 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x1c] mov r0, #0x15 bl ov22_0238ADD8 b _0238E734 _0238DBAC: bl ov22_0238AB18 cmp r0, #1 ble _0238DBD4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x19 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238DBD4: bne _0238DBE4 bl ov22_0238AB54 ldr r1, _0238E794 ; =ov22_0238EC70 b _0238DBEC _0238DBE4: bl ov22_0238A8F8 ldr r1, _0238E794 ; =ov22_0238EC70 _0238DBEC: ldr r1, [r1] strb r0, [r1, #0x33] ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #0x33] bl sub_02010BA4 ldr r1, _0238E794 ; =ov22_0238EC70 mov r4, r0 ldr r0, [r1] ldrsh r1, [r4] add r0, r0, #0x2c mov r2, #0 bl InitStandardItem ldr r0, _0238E794 ; =ov22_0238EC70 ldrh r2, [r4, #2] ldr r1, [r0] strh r2, [r1, #0x2e] ldr r0, [r0] add r0, r0, #0x2c bl GetActualBuyPrice ldr r1, _0238E794 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x1c] mov r0, #0x15 bl ov22_0238ADD8 b _0238E734 _0238DC54: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238DC88 bl ov22_0238A2AC ldr r1, _0238E794 ; =ov22_0238EC70 ldr r2, [r1] strb r0, [r2, #0x32] ldr r0, [r1] ldrb r0, [r0, #0x32] bl sub_02010898 b _0238DCA4 _0238DC88: bl ov22_0238A8F8 ldr r1, _0238E794 ; =ov22_0238EC70 ldr r2, [r1] strb r0, [r2, #0x33] ldr r0, [r1] ldrb r0, [r0, #0x33] bl sub_02010BA4 _0238DCA4: mov r4, r0 ldr r0, _0238E794 ; =ov22_0238EC70 ldrsh r1, [r4] ldr r0, [r0] mov r2, #0 add r0, r0, #0x2c bl InitStandardItem ldr r0, _0238E794 ; =ov22_0238EC70 ldrh r2, [r4, #2] ldr r1, [r0] strh r2, [r1, #0x2e] ldr r0, [r0] add r0, r0, #0x2c bl GetActualBuyPrice ldr r1, _0238E794 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x1c] mov r0, #0x16 bl ov22_0238ADD8 b _0238E734 _0238DCF4: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238DD10 bl ov22_0238A22C b _0238DD14 _0238DD10: bl ov22_0238A878 _0238DD14: bl ov22_0238E7E4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #1 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238DD34: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4a] bl sub_0202D114 cmp r0, #0 beq _0238E734 add r1, sp, #0 mov r0, #0 bl GetPressedButtons ldrh r0, [sp] tst r0, #8 beq _0238E734 ldr r0, _0238E79C ; =0x00003F02 mov r1, #0x100 bl sub_02017C74 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r1, [r0] ldrb r0, [r1, #8] cmp r0, #0 ldrsb r0, [r1, #0x4a] beq _0238DDA8 bl sub_0202C748 ldr r1, _0238E794 ; =ov22_0238EC70 ldr r2, [r1] strb r0, [r2, #0x32] ldr r0, [r1] ldrb r0, [r0, #0x32] bl sub_02010898 b _0238DDC4 _0238DDA8: bl sub_0202C748 ldr r1, _0238E794 ; =ov22_0238EC70 ldr r2, [r1] strb r0, [r2, #0x33] ldr r0, [r1] ldrb r0, [r0, #0x33] bl sub_02010BA4 _0238DDC4: ldr r2, _0238E794 ; =ov22_0238EC70 ldrsh r1, [r0] ldr r0, [r2] mov r2, #0 add r0, r0, #0x2c bl InitStandardItem ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x16 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238DDF8: bl sub_020426B4 cmp r0, #3 addls pc, pc, r0, lsl #2 b _0238DF04 _0238DE08: ; jump table b _0238DF04 ; case 0 b _0238E734 ; case 1 b _0238DED0 ; case 2 b _0238DE18 ; case 3 _0238DE18: bl sub_02042B20 cmp r0, #1 ble _0238DE58 bl ov22_0238E7E4 bl sub_02042664 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r2, #1 ldr r1, [r0] mov r0, #0x30 strb r2, [r1, #0x4b] bl ov22_0238ADD8 ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #0x25 ldr r0, [r0] str r1, [r0, #0x14] b _0238E734 _0238DE58: bne _0238DE68 bl sub_02042B50 ldr r1, _0238E794 ; =ov22_0238EC70 b _0238DE70 _0238DE68: bl sub_02042ADC ldr r1, _0238E794 ; =ov22_0238EC70 _0238DE70: ldr r1, [r1] str r0, [r1, #0x34] ldr r1, _0238E794 ; =ov22_0238EC70 mov r0, #6 ldr r4, [r1] ldr r1, [r4, #0x34] ldr r3, [r4, #0x44] mul r2, r1, r0 ldr r3, [r3, #0x384] add r0, r4, #0x2c ldrh r1, [r3, r2] add r2, r3, r2 strh r1, [r4, #0x2c] ldrh r1, [r2, #2] strh r1, [r4, #0x2e] ldrh r1, [r2, #4] strh r1, [r4, #0x30] bl GetActualSellPrice ldr r1, _0238E794 ; =ov22_0238EC70 ldr r1, [r1] str r0, [r1, #0x1c] mov r0, #0x21 bl ov22_0238ADD8 b _0238E734 _0238DED0: bl ov22_0238E7E4 bl sub_02042664 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r2, #1 ldr r1, [r0] mov r0, #0x30 strb r2, [r1, #0x4b] bl ov22_0238ADD8 ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #1 ldr r0, [r0] str r1, [r0, #0x14] b _0238E734 _0238DF04: bl sub_02042AAC cmp r0, #0 beq _0238E734 add r1, sp, #2 mov r0, #0 bl GetPressedButtons ldrh r0, [sp, #2] tst r0, #8 beq _0238E734 mov r0, #0 bl sub_02017CCC bl sub_02042ADC ldr r2, _0238E794 ; =ov22_0238EC70 mov r1, #6 ldr r3, [r2] str r0, [r3, #0x34] ldr r3, [r2] ldr r0, [r3, #0x34] ldr r2, [r3, #0x44] mul r1, r0, r1 ldr r2, [r2, #0x384] ldrh r0, [r2, r1] add r1, r2, r1 strh r0, [r3, #0x2c] ldrh r0, [r1, #2] strh r0, [r3, #0x2e] ldrh r0, [r1, #4] strh r0, [r3, #0x30] bl sub_02042664 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r3, #1 ldr r1, [r0] mov r2, #0x22 strb r3, [r1, #0x4b] ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238DFA0: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E058 cmp r0, #2 beq _0238DFC4 cmp r0, #7 beq _0238E038 b _0238E734 _0238DFC4: bl ov22_0238E7E4 bl GetGold cmp r0, #0 ldreq r0, _0238E794 ; =ov22_0238EC70 moveq r1, #6 ldreq r0, [r0] streq r1, [r0, #0x14] beq _0238E02C ldr r0, _0238E794 ; =ov22_0238EC70 ldr r4, [r0] bl GetGold ldr r1, [r4, #0x1c] cmp r1, r0 movgt r0, #0xd strgt r0, [r4, #0x14] bgt _0238E02C bl IsBagFull cmp r0, #0 ldrne r0, _0238E794 ; =ov22_0238EC70 movne r1, #0xb ldrne r0, [r0] strne r1, [r0, #0x14] ldreq r0, _0238E794 ; =ov22_0238EC70 moveq r1, #0x17 ldreq r0, [r0] streq r1, [r0, #0x14] _0238E02C: mov r0, #0x30 bl ov22_0238ADD8 b _0238E734 _0238E038: bl ov22_0238E7E4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x16 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238E058: bl ov22_0238E7E4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x14 ldr r1, [r0] str r2, [r1, #0x10] ldr r0, [r0] ldrsb r0, [r0, #0x4a] bl sub_0202C620 b _0238E734 _0238E07C: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E148 cmp r0, #3 beq _0238E0A0 cmp r0, #7 beq _0238E118 b _0238E734 _0238E0A0: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsh r0, [r0, #0x30] bl IsShoppableItem cmp r0, #0 ldreq r0, _0238E794 ; =ov22_0238EC70 moveq r1, #0xe ldreq r0, [r0] streq r1, [r0, #0x14] beq _0238E0F4 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r4, [r0] bl GetGold ldr r2, [r4, #0x1c] ldr r1, _0238E798 ; =0x0001869F add r0, r2, r0 cmp r0, r1 movgt r0, #0xf strgt r0, [r4, #0x14] movle r0, #0x23 strle r0, [r4, #0x14] _0238E0F4: bl ov22_0238E7E4 bl sub_02042664 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r2, #1 ldr r1, [r0] mov r0, #0x30 strb r2, [r1, #0x4b] bl ov22_0238ADD8 b _0238E734 _0238E118: bl ov22_0238E7E4 bl sub_02042664 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r3, #1 ldr r1, [r0] mov r2, #0x22 strb r3, [r1, #0x4b] ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238E148: bl ov22_0238E7E4 bl sub_02042744 ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #0x20 ldr r0, [r0] str r1, [r0, #0x10] b _0238E734 _0238E164: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E1E0 cmp r0, #5 beq _0238E1A0 cmp r0, #6 beq _0238E1E0 b _0238E734 _0238E1A0: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r1, [r0] ldrb r0, [r1, #8] cmp r0, #0 beq _0238E1C0 ldrb r0, [r1, #0x32] bl ov22_0238A588 b _0238E1C8 _0238E1C0: ldrb r0, [r1, #0x33] bl ov22_0238ABD4 _0238E1C8: ldr r0, _0238E7A0 ; =0x00001308 bl sub_02017C80 bl ov22_0238E7E4 mov r0, #0x12 bl ov22_0238ADD8 b _0238E734 _0238E1E0: bl ov22_0238E7E4 mov r0, #0x11 bl ov22_0238ADD8 b _0238E734 _0238E1F0: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E270 cmp r0, #5 beq _0238E22C cmp r0, #6 beq _0238E270 b _0238E734 _0238E22C: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x1c] bl AddMoneyCarried ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x34] mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 bl RemoveItemNoHoleCheck bl sub_02042AF8 ldr r0, _0238E7A0 ; =0x00001308 bl sub_02017C80 bl ov22_0238E7E4 mov r0, #0x1e bl ov22_0238ADD8 b _0238E734 _0238E270: bl ov22_0238E7E4 mov r0, #0x1d bl ov22_0238ADD8 b _0238E734 _0238E280: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E38C cmp r0, #5 beq _0238E2A4 cmp r0, #6 beq _0238E38C b _0238E734 _0238E2A4: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r4, [r0] bl GetGold ldr r2, [r4, #0x28] ldr r1, _0238E798 ; =0x0001869F add r0, r2, r0 cmp r0, r1 ble _0238E2D8 mov r1, #8 mov r0, #0x30 str r1, [r4, #0x14] bl ov22_0238ADD8 b _0238E734 _0238E2D8: ldr r0, _0238E7A0 ; =0x00001308 bl sub_02017C80 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x28] bl AddMoneyCarried mov r4, #0 mov r5, r4 mov r6, #1 _0238E2FC: mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl GetItemAtIdx mov r7, r0 ldrb r0, [r7] tst r0, #1 movne r0, r6 moveq r0, r5 tst r0, #0xff beq _0238E368 ldrsh r0, [r7, #4] bl IsShoppableItem cmp r0, #0 beq _0238E368 ldrb r0, [r7, #1] cmp r0, #0 beq _0238E35C bl sub_020582E0 cmp r0, #0 beq _0238E368 mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl RemoveItem b _0238E368 _0238E35C: mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl RemoveItem _0238E368: add r4, r4, #1 cmp r4, #0x32 blt _0238E2FC bl RemoveEmptyItemsInBag bl sub_02042AF8 bl ov22_0238E7E4 mov r0, #0x2a bl ov22_0238ADD8 b _0238E734 _0238E38C: bl ov22_0238E7E4 mov r0, #1 bl ov22_0238ADD8 b _0238E734 _0238E39C: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E3F8 cmp r0, #5 beq _0238E3C0 cmp r0, #6 beq _0238E3F8 b _0238E734 _0238E3C0: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 beq _0238E3DC bl ov22_0238A5CC b _0238E3E0 _0238E3DC: bl ov22_0238AC18 _0238E3E0: ldr r0, _0238E7A0 ; =0x00001308 bl sub_02017C80 bl ov22_0238E7E4 mov r0, #0x1b bl ov22_0238ADD8 b _0238E734 _0238E3F8: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox bl ov22_0238E7E4 mov r0, #0x11 bl ov22_0238ADD8 b _0238E734 _0238E418: ldrsb r0, [r2, #0x4c] bl GetNormalMenuResult cmp r0, #1 beq _0238E544 cmp r0, #5 beq _0238E43C cmp r0, #6 beq _0238E544 b _0238E734 _0238E43C: bl GetGold ldr r2, _0238E794 ; =ov22_0238EC70 ldr r1, _0238E798 ; =0x0001869F ldr r2, [r2] ldr r2, [r2, #0x28] add r0, r2, r0 cmp r0, r1 ble _0238E480 bl sub_02042AF8 bl ov22_0238E7E4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #8 ldr r1, [r0] mov r0, #0x30 str r2, [r1, #0x14] bl ov22_0238ADD8 b _0238E734 _0238E480: ldr r0, _0238E7A0 ; =0x00001308 bl sub_02017C80 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x28] bl AddMoneyCarried mov r4, #0 mov r5, r4 mov r6, #1 _0238E4A4: mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl GetItemAtIdx mov r7, r0 ldrb r0, [r7] tst r0, #1 movne r0, r6 moveq r0, r5 tst r0, #0xff beq _0238E520 ldrsh r0, [r7, #4] bl IsShoppableItem cmp r0, #0 beq _0238E520 mov r0, r4 bl sub_02042B84 cmp r0, #0 beq _0238E520 ldrb r0, [r7, #1] cmp r0, #0 beq _0238E514 bl sub_020582E0 cmp r0, #0 beq _0238E520 mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl RemoveItem b _0238E520 _0238E514: mov r0, r4, lsl #0x10 mov r0, r0, asr #0x10 bl RemoveItem _0238E520: add r4, r4, #1 cmp r4, #0x32 blt _0238E4A4 bl RemoveEmptyItemsInBag bl sub_02042AF8 bl ov22_0238E7E4 mov r0, #0x27 bl ov22_0238ADD8 b _0238E734 _0238E544: ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox bl ov22_0238E7E4 mov r0, #0x1d bl ov22_0238ADD8 b _0238E734 _0238E564: ldrsb r0, [r2, #0x4d] bl sub_0202E6E4 cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4d] bl sub_0202E6C8 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r2, #1 ldr r1, [r0] mov r0, #0x14 strb r2, [r1, #0x4d] bl ov22_0238ADD8 b _0238E734 _0238E5A0: ldrsb r0, [r2, #0x4d] bl sub_0202E6E4 cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x4d] bl sub_0202E6C8 ldr r0, _0238E794 ; =ov22_0238EC70 mvn r2, #1 ldr r1, [r0] mov r0, #0x20 strb r2, [r1, #0x4d] bl ov22_0238ADD8 b _0238E734 _0238E5DC: bl ov11_022DC504 mov r0, #3 b _0238E738 _0238E5E8: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238E794 ; =ov22_0238EC70 mov r2, #0x10 ldr r1, [r0] str r2, [r1, #0x10] ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox b _0238E734 _0238E638: ldr r1, [r2, #0xc] add r1, r1, #1 str r1, [r2, #0xc] ldr r1, [r0] ldr r0, [r1, #0xc] cmp r0, #1 beq _0238E660 cmp r0, #3 beq _0238E6CC b _0238E734 _0238E660: ldrb r0, [r1, #8] cmp r0, #0 ldrsb r0, [r1, #0x4a] mvn r1, #1 beq _0238E6A0 cmp r0, r1 beq _0238E690 bl sub_0202C70C ldr r0, _0238E794 ; =ov22_0238EC70 mvn r1, #1 ldr r0, [r0] strb r1, [r0, #0x4a] _0238E690: bl sub_02044474 bl sub_020442CC bl sub_020445C8 b _0238E734 _0238E6A0: cmp r0, r1 beq _0238E6BC bl sub_0202C70C ldr r0, _0238E794 ; =ov22_0238EC70 mvn r1, #1 ldr r0, [r0] strb r1, [r0, #0x4a] _0238E6BC: bl sub_02044474 bl sub_020442CC bl sub_020445C8 b _0238E734 _0238E6CC: ldr r0, _0238E7A4 ; =ov22_0238EC4C bl DebugPrint0 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x14] bl ov22_0238ADD8 ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #0 ldr r0, [r0] str r1, [r0, #0xc] b _0238E734 _0238E6F8: mov r0, #0x20 str r0, [r2, #0x10] b _0238E734 _0238E704: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E734 ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl ShowDBox ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldr r0, [r0, #0x14] bl ov22_0238ADD8 _0238E734: mov r0, #0 _0238E738: cmp r0, #3 ldreq r0, _0238E794 ; =ov22_0238EC70 moveq r1, #2 ldreq r0, [r0] streq r1, [r0, #4] b _0238E7DC _0238E750: ldrsb r0, [r2, #0x48] bl IsDBoxActive cmp r0, #0 bne _0238E7DC ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl HidePortraitBox ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl sub_0202F2C4 ldr r0, _0238E794 ; =ov22_0238EC70 mov r1, #3 ldr r0, [r0] str r1, [r0, #4] b _0238E7DC .align 2, 0 _0238E794: .word ov22_0238EC70 _0238E798: .word 0x0001869F _0238E79C: .word 0x00003F02 _0238E7A0: .word 0x00001308 _0238E7A4: .word ov22_0238EC4C _0238E7A8: ldrsb r0, [r2, #0x48] bl sub_0202836C ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x49] bl FreePortraitBox ldr r0, _0238E794 ; =ov22_0238EC70 ldr r0, [r0] ldrsb r0, [r0, #0x48] bl FreeDBox bl ov11_022E6E68 mov r0, #4 ldmia sp!, {r3, r4, r5, r6, r7, pc} _0238E7DC: mov r0, #1 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov22_0238D800 arm_func_start ov22_0238E7E4 ov22_0238E7E4: ; 0x0238E7E4 stmdb sp!, {r3, lr} ldr r0, _0238E818 ; =ov22_0238EC70 mvn r1, #1 ldr r0, [r0] ldrsb r0, [r0, #0x4c] cmp r0, r1 ldmeqia sp!, {r3, pc} bl FreeNormalMenu ldr r0, _0238E818 ; =ov22_0238EC70 mvn r1, #1 ldr r0, [r0] strb r1, [r0, #0x4c] ldmia sp!, {r3, pc} .align 2, 0 _0238E818: .word ov22_0238EC70 arm_func_end ov22_0238E7E4 ; 0x0238E81C .global SHOP_D_BOX_LAYOUT_1 SHOP_D_BOX_LAYOUT_1: .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov22_0238E82C ov22_0238E82C: .byte 0x5B, 0x43, 0x53, 0x3A, 0x57, 0x5D, 0x00, 0x00 .global ov22_0238E834 ov22_0238E834: .byte 0x5B, 0x43, 0x52, 0x5D, 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_2 SHOP_D_BOX_LAYOUT_2: .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov22_0238E84C ov22_0238E84C: .byte 0x5B, 0x43, 0x53, 0x3A, 0x57, 0x5D, 0x00, 0x00 .global ov22_0238E854 ov22_0238E854: .byte 0x5B, 0x43, 0x52, 0x5D, 0x00, 0x00, 0x00, 0x00 .global OVERLAY22_UNKNOWN_STRUCT__NA_238E85C OVERLAY22_UNKNOWN_STRUCT__NA_238E85C: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 .global SHOP_MENU_CONFIRM SHOP_MENU_CONFIRM: .byte 0x36, 0x03, 0x00, 0x00 .byte 0x05, 0x00, 0x00, 0x00, 0x37, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00 .global SHOP_MAIN_MENU_1 SHOP_MAIN_MENU_1: .byte 0x38, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3B, 0x03, 0x00, 0x00 .byte 0x07, 0x00, 0x00, 0x00, 0x3D, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00 .global SHOP_MAIN_MENU_2 SHOP_MAIN_MENU_2: .byte 0x39, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x3B, 0x03, 0x00, 0x00 .byte 0x07, 0x00, 0x00, 0x00, 0x3D, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00 .global SHOP_MAIN_MENU_3 SHOP_MAIN_MENU_3: .byte 0x39, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x38, 0x03, 0x00, 0x00 .byte 0x03, 0x00, 0x00, 0x00, 0x3A, 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x3B, 0x03, 0x00, 0x00 .byte 0x07, 0x00, 0x00, 0x00, 0x3C, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00 .global OVERLAY22_UNKNOWN_STRING_IDS OVERLAY22_UNKNOWN_STRING_IDS: .byte 0x3F, 0x03 .global ov22_0238E8F2 ov22_0238E8F2: .byte 0x40, 0x03 .global ov22_0238E8F4 ov22_0238E8F4: .byte 0x41, 0x03 .global ov22_0238E8F6 ov22_0238E8F6: .byte 0x42, 0x03 .global ov22_0238E8F8 ov22_0238E8F8: .byte 0x43, 0x03 .global ov22_0238E8FA ov22_0238E8FA: .byte 0x44, 0x03 .global ov22_0238E8FC ov22_0238E8FC: .byte 0x45, 0x03 .global ov22_0238E8FE ov22_0238E8FE: .byte 0x46, 0x03 .global ov22_0238E900 ov22_0238E900: .byte 0x47, 0x03 .global ov22_0238E902 ov22_0238E902: .byte 0x48, 0x03 .global ov22_0238E904 ov22_0238E904: .byte 0x49, 0x03 .global ov22_0238E906 ov22_0238E906: .byte 0x4A, 0x03 .global ov22_0238E908 ov22_0238E908: .byte 0x4B, 0x03 .global ov22_0238E90A ov22_0238E90A: .byte 0x4C, 0x03 .global ov22_0238E90C ov22_0238E90C: .byte 0x4D, 0x03 .global ov22_0238E90E ov22_0238E90E: .byte 0x4E, 0x03 .global ov22_0238E910 ov22_0238E910: .byte 0x4F, 0x03 .global ov22_0238E912 ov22_0238E912: .byte 0x50, 0x03 .global ov22_0238E914 ov22_0238E914: .byte 0x51, 0x03 .global ov22_0238E916 ov22_0238E916: .byte 0x52, 0x03 .global ov22_0238E918 ov22_0238E918: .byte 0x53, 0x03 .global ov22_0238E91A ov22_0238E91A: .byte 0x54, 0x03 .global ov22_0238E91C ov22_0238E91C: .byte 0x55, 0x03 .global ov22_0238E91E ov22_0238E91E: .byte 0x56, 0x03, 0x57, 0x03, 0x58, 0x03, 0x59, 0x03, 0x5A, 0x03, 0x5B, 0x03, 0x5C, 0x03 .byte 0x5D, 0x03, 0x5E, 0x03, 0x5F, 0x03, 0x60, 0x03, 0x61, 0x03, 0x62, 0x03, 0x63, 0x03, 0x64, 0x03 .byte 0x65, 0x03, 0x66, 0x03, 0x67, 0x03, 0x68, 0x03, 0x69, 0x03, 0x6A, 0x03, 0x6B, 0x03, 0x6C, 0x03 .byte 0x6D, 0x03, 0x6E, 0x03, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x10, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x14, 0x12, 0x02, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x0F, 0x08, 0x03, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_6 SHOP_D_BOX_LAYOUT_6: .byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_7 SHOP_D_BOX_LAYOUT_7: .byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_8 SHOP_D_BOX_LAYOUT_8: .byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_9 SHOP_D_BOX_LAYOUT_9: .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x18, 0x13, 0x00, 0xFF, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global SHOP_D_BOX_LAYOUT_10 SHOP_D_BOX_LAYOUT_10: .byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00, 0x00, 0xFE, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238E9D0 ov22_0238E9D0: .byte 0x5F, 0x53, 0x54, 0x41, 0x52, 0x54, 0x0A, 0x00 .global ov22_0238E9D8 ov22_0238E9D8: .byte 0x5F, 0x52, 0x45, 0x53 .byte 0x54, 0x41, 0x52, 0x54, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238E9E4 ov22_0238E9E4: .byte 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x4D .byte 0x45, 0x4E, 0x55, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov22_0238E9F4 ov22_0238E9F4: .byte 0x5F, 0x45, 0x58, 0x50, 0x4C, 0x41, 0x4E, 0x41 .byte 0x54, 0x49, 0x4F, 0x4E, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EA04 ov22_0238EA04: .byte 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x0A .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238EA10 ov22_0238EA10: .byte 0x5F, 0x53, 0x48, 0x4F, 0x50, 0x5F, 0x4E, 0x4F, 0x4E, 0x0A, 0x00, 0x00 .global ov22_0238EA1C ov22_0238EA1C: .byte 0x5F, 0x47, 0x4F, 0x4C, 0x44, 0x5F, 0x4E, 0x4F, 0x4E, 0x0A, 0x00, 0x00 .global ov22_0238EA28 ov22_0238EA28: .byte 0x5F, 0x47, 0x4F, 0x4C .byte 0x44, 0x5F, 0x4D, 0x41, 0x58, 0x0A, 0x00, 0x00 .global ov22_0238EA34 ov22_0238EA34: .byte 0x5F, 0x47, 0x4F, 0x4C, 0x44, 0x5F, 0x46, 0x55 .byte 0x4C, 0x4C, 0x0A, 0x00 .global ov22_0238EA40 ov22_0238EA40: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x4E, 0x4F, 0x4E, 0x0A, 0x00, 0x00 .global ov22_0238EA4C ov22_0238EA4C: .byte 0x5F, 0x49, 0x54, 0x45, 0x4D, 0x5F, 0x4E, 0x4F, 0x4E, 0x0A, 0x00, 0x00 .global ov22_0238EA58 ov22_0238EA58: .byte 0x5F, 0x49, 0x54, 0x45 .byte 0x4D, 0x5F, 0x4D, 0x41, 0x58, 0x0A, 0x00, 0x00 .global ov22_0238EA64 ov22_0238EA64: .byte 0x5F, 0x53, 0x4F, 0x4C, 0x44, 0x5F, 0x4F, 0x55 .byte 0x54, 0x0A, 0x00, 0x00 .global ov22_0238EA70 ov22_0238EA70: .byte 0x5F, 0x42, 0x55, 0x59, 0x5F, 0x50, 0x4F, 0x4F, 0x52, 0x0A, 0x00, 0x00 .global ov22_0238EA7C ov22_0238EA7C: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x42, 0x41, 0x44, 0x0A, 0x00, 0x00 .global ov22_0238EA88 ov22_0238EA88: .byte 0x5F, 0x53, 0x45, 0x4C .byte 0x4C, 0x5F, 0x46, 0x55, 0x4C, 0x4C, 0x0A, 0x00 .global ov22_0238EA94 ov22_0238EA94: .byte 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x42, 0x55 .byte 0x59, 0x5F, 0x53, 0x54, 0x41, 0x52, 0x54, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EAA8 ov22_0238EAA8: .byte 0x5F, 0x42, 0x55, 0x59 .byte 0x5F, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EAB8 ov22_0238EAB8: .byte 0x5F, 0x42, 0x55, 0x59 .byte 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EAC8 ov22_0238EAC8: .byte 0x5F, 0x42, 0x55, 0x59 .byte 0x5F, 0x52, 0x45, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x0A, 0x00, 0x00 .global ov22_0238EAD8 ov22_0238EAD8: .byte 0x5F, 0x53, 0x55, 0x42 .byte 0x5F, 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x42, 0x55, 0x59, 0x0A, 0x00, 0x00 .global ov22_0238EAE8 ov22_0238EAE8: .byte 0x5F, 0x42, 0x55, 0x59 .byte 0x5F, 0x43, 0x4F, 0x4E, 0x46, 0x49, 0x52, 0x4D, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EAF8 ov22_0238EAF8: .byte 0x5F, 0x42, 0x55, 0x59 .byte 0x5F, 0x45, 0x58, 0x50, 0x4C, 0x41, 0x20, 0x49, 0x74, 0x65, 0x6D, 0x25, 0x64, 0x20, 0x43, 0x6F .byte 0x75, 0x6E, 0x74, 0x25, 0x64, 0x0A, 0x00, 0x00 .global ov22_0238EB14 ov22_0238EB14: .byte 0x5B, 0x69, 0x74, 0x65, 0x6D, 0x3A, 0x30, 0x5D .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238EB20 ov22_0238EB20: .byte 0x5F, 0x42, 0x55, 0x59, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x0A .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238EB30 ov22_0238EB30: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x53, 0x54, 0x41, 0x52, 0x54, 0x0A .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238EB40 ov22_0238EB40: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52 .byte 0x54, 0x0A, 0x00, 0x00 .global ov22_0238EB50 ov22_0238EB50: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54 .byte 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EB60 ov22_0238EB60: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x52, 0x45, 0x53, 0x45, 0x4C, 0x45 .byte 0x43, 0x54, 0x0A, 0x00 .global ov22_0238EB70 ov22_0238EB70: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x53, 0x55, 0x42, 0x5F, 0x4D, 0x45 .byte 0x4E, 0x55, 0x0A, 0x00 .global ov22_0238EB80 ov22_0238EB80: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x43, 0x4F, 0x4E, 0x46, 0x49, 0x52 .byte 0x4D, 0x0A, 0x00, 0x00 .global ov22_0238EB90 ov22_0238EB90: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x43, 0x4F, 0x4E, 0x46, 0x49, 0x52 .byte 0x4D, 0x20, 0x4E, 0x45, 0x57, 0x0A, 0x00, 0x00 .global ov22_0238EBA4 ov22_0238EBA4: .byte 0x5F, 0x42, 0x55, 0x59, 0x5F, 0x43, 0x4F, 0x4E .byte 0x46, 0x49, 0x52, 0x4D, 0x20, 0x4E, 0x45, 0x57, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EBB8 ov22_0238EBB8: .byte 0x5F, 0x53, 0x45, 0x4C .byte 0x4C, 0x5F, 0x45, 0x58, 0x50, 0x4C, 0x41, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EBC8 ov22_0238EBC8: .byte 0x5F, 0x53, 0x45, 0x4C .byte 0x4C, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EBD8 ov22_0238EBD8: .byte 0x5F, 0x53, 0x45, 0x4C .byte 0x4C, 0x5F, 0x41, 0x4C, 0x4C, 0x0A, 0x00, 0x00 .global ov22_0238EBE4 ov22_0238EBE4: .byte 0x5F, 0x42, 0x55, 0x54, 0x5F, 0x4D, 0x55, 0x4C .byte 0x54, 0x49, 0x0A, 0x00 .global ov22_0238EBF0 ov22_0238EBF0: .byte 0x5F, 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x4D, 0x55, 0x4C, 0x54, 0x49, 0x0A .byte 0x00, 0x00, 0x00, 0x00 .global ov22_0238EC00 ov22_0238EC00: .byte 0x5F, 0x41, 0x4C, 0x4C, 0x5F, 0x43, 0x4F, 0x4E, 0x46, 0x49, 0x52, 0x4D .byte 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EC10 ov22_0238EC10: .byte 0x53, 0x45, 0x4C, 0x4C, 0x5F, 0x41, 0x4C, 0x4C, 0x5F, 0x54, 0x48, 0x41 .byte 0x4E, 0x4B, 0x53, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EC24 ov22_0238EC24: .byte 0x42, 0x55, 0x59, 0x5F, 0x4D, 0x55, 0x4C, 0x54 .byte 0x49, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x0A, 0x00, 0x00, 0x00 .global ov22_0238EC38 ov22_0238EC38: .byte 0x53, 0x45, 0x4C, 0x4C .byte 0x5F, 0x4D, 0x55, 0x4C, 0x54, 0x49, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x0A, 0x00, 0x00 .global ov22_0238EC4C ov22_0238EC4C: .byte 0x43, 0x68, 0x61, 0x6E, 0x67, 0x65, 0x4A, 0x6F, 0x62, 0x0A, 0x00, 0x00 .data .global ov22_0238EC60 ov22_0238EC60: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EC68 ov22_0238EC68: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov22_0238EC70 ov22_0238EC70: .byte 0x00, 0x00, 0x00, 0x00