.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8003617C /* 01157C 8003617C 3C03800A */ lui $v1, 0x800a /* 011580 80036180 84630944 */ lh $v1, 0x944($v1) /* 011584 80036184 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 011588 80036188 AFBF0018 */ sw $ra, 0x18($sp) /* 01158C 8003618C AFB10014 */ sw $s1, 0x14($sp) /* 011590 80036190 2C620005 */ sltiu $v0, $v1, 5 /* 011594 80036194 10400094 */ beqz $v0, .L800363E8 /* 011598 80036198 AFB00010 */ sw $s0, 0x10($sp) /* 01159C 8003619C 00031080 */ sll $v0, $v1, 2 /* 0115A0 800361A0 3C01800A */ lui $at, 0x800a /* 0115A4 800361A4 00220821 */ addu $at, $at, $v0 /* 0115A8 800361A8 8C228320 */ lw $v0, -0x7ce0($at) /* 0115AC 800361AC 00400008 */ jr $v0 /* 0115B0 800361B0 00000000 */ nop /* 0115B4 800361B4 0C00E64C */ jal func_80039930 /* 0115B8 800361B8 00000000 */ nop /* 0115BC 800361BC 0C037DD0 */ jal func_800DF740 /* 0115C0 800361C0 00000000 */ nop /* 0115C4 800361C4 0C016754 */ jal func_80059D50 /* 0115C8 800361C8 00000000 */ nop /* 0115CC 800361CC 0C00B500 */ jal update_cameras /* 0115D0 800361D0 00000000 */ nop /* 0115D4 800361D4 3C04800A */ lui $a0, 0x800a /* 0115D8 800361D8 24840940 */ addiu $a0, $a0, 0x940 /* 0115DC 800361DC 0C04E0AB */ jal func_801382AC /* 0115E0 800361E0 00000000 */ nop /* 0115E4 800361E4 00021400 */ sll $v0, $v0, 0x10 /* 0115E8 800361E8 1040007F */ beqz $v0, .L800363E8 /* 0115EC 800361EC 00000000 */ nop /* 0115F0 800361F0 3C03800A */ lui $v1, 0x800a /* 0115F4 800361F4 24630944 */ addiu $v1, $v1, 0x944 /* 0115F8 800361F8 94620000 */ lhu $v0, ($v1) /* 0115FC 800361FC 24420001 */ addiu $v0, $v0, 1 /* 011600 80036200 0800D8FA */ j .L800363E8 /* 011604 80036204 A4620000 */ sh $v0, ($v1) /* 011608 80036208 3C03800A */ lui $v1, 0x800a /* 01160C 8003620C 2463A650 */ addiu $v1, $v1, -0x59b0 /* 011610 80036210 8C620000 */ lw $v0, ($v1) /* 011614 80036214 34420008 */ ori $v0, $v0, 8 /* 011618 80036218 0C018028 */ jal nuContRmbForceStop /* 01161C 8003621C AC620000 */ sw $v0, ($v1) /* 011620 80036220 3C04800A */ lui $a0, 0x800a /* 011624 80036224 24840944 */ addiu $a0, $a0, 0x944 /* 011628 80036228 94820000 */ lhu $v0, ($a0) /* 01162C 8003622C 24030004 */ addiu $v1, $zero, 4 /* 011630 80036230 3C01800A */ lui $at, 0x800a /* 011634 80036234 A4230946 */ sh $v1, 0x946($at) /* 011638 80036238 24420001 */ addiu $v0, $v0, 1 /* 01163C 8003623C 0800D8FA */ j .L800363E8 /* 011640 80036240 A4820000 */ sh $v0, ($a0) /* 011644 80036244 3C108007 */ lui $s0, 0x8007 /* 011648 80036248 2610419C */ addiu $s0, $s0, 0x419c /* 01164C 8003624C 8E020000 */ lw $v0, ($s0) /* 011650 80036250 80420071 */ lb $v0, 0x71($v0) /* 011654 80036254 10400003 */ beqz $v0, .L80036264 /* 011658 80036258 00000000 */ nop /* 01165C 8003625C 0C00CD3C */ jal set_game_mode /* 011660 80036260 24040011 */ addiu $a0, $zero, 0x11 .L80036264: /* 011664 80036264 3C11800A */ lui $s1, 0x800a /* 011668 80036268 26310946 */ addiu $s1, $s1, 0x946 /* 01166C 8003626C 86220000 */ lh $v0, ($s1) /* 011670 80036270 96230000 */ lhu $v1, ($s1) /* 011674 80036274 10400003 */ beqz $v0, .L80036284 /* 011678 80036278 2462FFFF */ addiu $v0, $v1, -1 /* 01167C 8003627C 0800D8FA */ j .L800363E8 /* 011680 80036280 A6220000 */ sh $v0, ($s1) .L80036284: /* 011684 80036284 8E020000 */ lw $v0, ($s0) /* 011688 80036288 A0400070 */ sb $zero, 0x70($v0) /* 01168C 8003628C 8E020000 */ lw $v0, ($s0) /* 011690 80036290 A0400078 */ sb $zero, 0x78($v0) /* 011694 80036294 8E020000 */ lw $v0, ($s0) /* 011698 80036298 84440086 */ lh $a0, 0x86($v0) /* 01169C 8003629C 8445008C */ lh $a1, 0x8c($v0) /* 0116A0 800362A0 0C0169BD */ jal load_map_by_IDs /* 0116A4 800362A4 0000302D */ daddu $a2, $zero, $zero /* 0116A8 800362A8 0C009C22 */ jal func_80027088 /* 0116AC 800362AC 0000202D */ daddu $a0, $zero, $zero /* 0116B0 800362B0 0C018030 */ jal nuContRmbForceStopEnd /* 0116B4 800362B4 00000000 */ nop /* 0116B8 800362B8 8E020000 */ lw $v0, ($s0) /* 0116BC 800362BC 80420071 */ lb $v0, 0x71($v0) /* 0116C0 800362C0 14400003 */ bnez $v0, .L800362D0 /* 0116C4 800362C4 00000000 */ nop /* 0116C8 800362C8 0C03805E */ jal func_800E0178 /* 0116CC 800362CC 00000000 */ nop .L800362D0: /* 0116D0 800362D0 0C00B500 */ jal update_cameras /* 0116D4 800362D4 00000000 */ nop /* 0116D8 800362D8 3C02800A */ lui $v0, 0x800a /* 0116DC 800362DC 24420944 */ addiu $v0, $v0, 0x944 /* 0116E0 800362E0 94430000 */ lhu $v1, ($v0) /* 0116E4 800362E4 24040002 */ addiu $a0, $zero, 2 /* 0116E8 800362E8 A6240000 */ sh $a0, ($s1) /* 0116EC 800362EC 24630001 */ addiu $v1, $v1, 1 /* 0116F0 800362F0 0800D8FA */ j .L800363E8 /* 0116F4 800362F4 A4430000 */ sh $v1, ($v0) /* 0116F8 800362F8 0C00F949 */ jal func_8003E524 /* 0116FC 800362FC 00000000 */ nop /* 011700 80036300 0C00E64C */ jal func_80039930 /* 011704 80036304 00000000 */ nop /* 011708 80036308 0C037DD0 */ jal func_800DF740 /* 01170C 8003630C 00000000 */ nop /* 011710 80036310 0C00B500 */ jal update_cameras /* 011714 80036314 00000000 */ nop /* 011718 80036318 3C04800A */ lui $a0, 0x800a /* 01171C 8003631C 24840946 */ addiu $a0, $a0, 0x946 /* 011720 80036320 84820000 */ lh $v0, ($a0) /* 011724 80036324 94830000 */ lhu $v1, ($a0) /* 011728 80036328 10400003 */ beqz $v0, .L80036338 /* 01172C 8003632C 2462FFFF */ addiu $v0, $v1, -1 /* 011730 80036330 0800D8FA */ j .L800363E8 /* 011734 80036334 A4820000 */ sh $v0, ($a0) .L80036338: /* 011738 80036338 3C028007 */ lui $v0, 0x8007 /* 01173C 8003633C 8C42419C */ lw $v0, 0x419c($v0) /* 011740 80036340 0C0B1059 */ jal does_script_exist /* 011744 80036344 8C44006C */ lw $a0, 0x6c($v0) /* 011748 80036348 14400027 */ bnez $v0, .L800363E8 /* 01174C 8003634C 2405FFF7 */ addiu $a1, $zero, -9 /* 011750 80036350 3C04800A */ lui $a0, 0x800a /* 011754 80036354 2484A650 */ addiu $a0, $a0, -0x59b0 /* 011758 80036358 3C06800A */ lui $a2, 0x800a /* 01175C 8003635C 24C60944 */ addiu $a2, $a2, 0x944 /* 011760 80036360 8C820000 */ lw $v0, ($a0) /* 011764 80036364 94C30000 */ lhu $v1, ($a2) /* 011768 80036368 00451024 */ and $v0, $v0, $a1 /* 01176C 8003636C 24630001 */ addiu $v1, $v1, 1 /* 011770 80036370 AC820000 */ sw $v0, ($a0) /* 011774 80036374 0800D8FA */ j .L800363E8 /* 011778 80036378 A4C30000 */ sh $v1, ($a2) /* 01177C 8003637C 0C00E64C */ jal func_80039930 /* 011780 80036380 00000000 */ nop /* 011784 80036384 0C037DD0 */ jal func_800DF740 /* 011788 80036388 00000000 */ nop /* 01178C 8003638C 0C016754 */ jal func_80059D50 /* 011790 80036390 00000000 */ nop /* 011794 80036394 0C00B500 */ jal update_cameras /* 011798 80036398 00000000 */ nop /* 01179C 8003639C 3C04800A */ lui $a0, 0x800a /* 0117A0 800363A0 24840940 */ addiu $a0, $a0, 0x940 /* 0117A4 800363A4 0C04E175 */ jal func_801385D4 /* 0117A8 800363A8 00000000 */ nop /* 0117AC 800363AC 00021400 */ sll $v0, $v0, 0x10 /* 0117B0 800363B0 1040000D */ beqz $v0, .L800363E8 /* 0117B4 800363B4 00000000 */ nop /* 0117B8 800363B8 3C028007 */ lui $v0, 0x8007 /* 0117BC 800363BC 8C42419C */ lw $v0, 0x419c($v0) /* 0117C0 800363C0 80420071 */ lb $v0, 0x71($v0) /* 0117C4 800363C4 14400003 */ bnez $v0, .L800363D4 /* 0117C8 800363C8 00000000 */ nop /* 0117CC 800363CC 0C038069 */ jal func_800E01A4 /* 0117D0 800363D0 00000000 */ nop .L800363D4: /* 0117D4 800363D4 3C05BF80 */ lui $a1, 0xbf80 /* 0117D8 800363D8 0C04DF62 */ jal func_80137D88 /* 0117DC 800363DC 240400FF */ addiu $a0, $zero, 0xff /* 0117E0 800363E0 0C00CD3C */ jal set_game_mode /* 0117E4 800363E4 24040004 */ addiu $a0, $zero, 4 .L800363E8: /* 0117E8 800363E8 8FBF0018 */ lw $ra, 0x18($sp) /* 0117EC 800363EC 8FB10014 */ lw $s1, 0x14($sp) /* 0117F0 800363F0 8FB00010 */ lw $s0, 0x10($sp) /* 0117F4 800363F4 03E00008 */ jr $ra /* 0117F8 800363F8 27BD0020 */ addiu $sp, $sp, 0x20