#include "ultra64.h" #include "bondgame.h" #include "game/bond.h" #include "game/bondinv.h" #include "game/chr.h" #include "game/chrai.h" #include "snd.h" #include "music.h" #include "game/lvl.h" #include "game/lvl_text.h" s32 alarm_timer = 0; s32 *ptr_alarm_sfx = 0; f32 toxic_gas_sound_timer = 0.0; s32 activate_gas_sound_timer = FALSE; f32 D_80030AD0 = 0.0; f32 D_80030AD4 = 0.0; f32 D_80030AD8 = 0.0; s32 D_80030ADC = 0; u32 D_80030AE0 = 0; s32 ptr_gas_sound = 0; s32 clock_drawn_flag = 1; s32 clock_enable = 0; f32 clock_time = 0; s32 D_80030AF4 = 0; s32 D_80030AF8 = 0; s32 D_80030AFC = 0; s32 D_80030B00 = 0; s32 D_80030B04 = 0; s32 D_80030B08 = 0; s32 D_80030B0C = 0; s32 bodypartshot = 0xFFFFFFFF; f32 D_80030B14 = 1.0; f32 D_80030B18 = 1.0; f32 D_80030B1C = 1.0; f32 D_80030B20 = 1.0; f32 D_80030B24 = 1.0; f32 solo_ammo_multiplier = 1.0; s16 Throwing_knife_SFX[] = {0x5F, 0x60, 0x61}; u32 D_80030B34[] = { 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; //80030b74 u32 monitor_animation_microcode[] = { 7, 0, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 0xB }; u32 D_80030C00[] = { 7, 0xC, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 7, 0xD, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 7, 0xE, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 7, 0xF, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 0xB, }; u32 D_80030E24[] = { 7, 0x11, 8, 0x50, 7, 0x12, 8, 0x50, 7, 0x13, 8, 0x50, 7, 0x14, 8, 0x50, 7, 0x15, 8, 0x50, 7, 0x16, 8, 0x50, 7, 0x17, 8, 0x50, 7, 0x18, 8, 0x50, 7, 0x19, 8, 0x50, 7, 0x1A, 8, 0x50, 0xB, }; u32 D_80030EC8[] = { 7, 7, 8, 0x50, 7, 8, 8, 0x50, 7, 9, 8, 0x50, 7, 0xC, 8, 0x50, 7, 0xD, 8, 0x50, 8, 0x50, 7, 0x19, 8, 0x50, 7, 0x14, 8, 0x50, 0xB }; u32 D_80030F44[] = { 0xD,0x202020FF, 1, 7, 0x1C, 1, 0x800, 0x78, 8, 0x78, 5, 0x100, 1, 6, 0x200, 0x3C, 1,0xFFFFE000, 0x78, 8, 0x78, 5, 0x400, 1, 6, 0x400, 0x3C, 6, 0x400, 0x3C, 1, 0x800, 0x78, 8, 0x78, 5, 0x80, 1, 6, 0x800, 0x3C, 6, 0x400, 0x78, 2, 0x400, 0x3C, 1, 0x200, 0x78, 8, 0x78, 0xB }; u32 D_80031018[] = { 0xD, 0x202020FF, 1, 7, 0x1C, 5, 0x80, 1, 6, 0x800, 0x3C, 6, 0x400, 0x78, 2, 0x400, 0xA, 1, 0x200, 0x28, 8, 0x78, 0xB }; u32 D_80031074[] = { 7, 0x1D, 0xD, 0x8000FF, 1, 2, 0xFFFFFE00, 0x50, 8, 0x78, 2, 0xFFFFFF00, 0x14, 8, 0x78, 2, 0xFFFFFF80, 0xA, 8, 0x28, 2, 0xFFFFFE00, 0x28, 8, 0x3C, 2, 0xFFFFFFC0, 0x1E, 8, 0x78, 0xB }; u32 D_800310F0[] = { 7, 0x1D, 0xD, 0x280000FF, 1, 2, 0x200, 0x50, 8, 0x78, 2, 0x100, 0x14, 8, 0x78, 2, 0x80, 0xA, 8, 0x28, 2, 0x200, 0x28, 8, 0x3C, 2, 0x40, 0x1E, 8, 0x78, 2, 0x100, 0x14, 8, 0x78, 2, 0x80, 0xA, 0xB }; u32 D_8003118C[] = { 7, 0x1D, 0xD, 0x3C00FF, 1, 2, 0x200, 0x50, 8, 0x78, 2, 0x80, 0xA, 8, 0x28, 2, 0x100, 0x14, 8, 0x78, 2, 0x80, 0xA, 8, 0x28, 2, 0x200, 0x28, 8, 0x3C, 2, 0x40, 0x1E, 8, 0x78, 0xB }; u32 D_8003121C[] = { 7, 0x1E, 0xD, 0x404000FF, 1, 1, 0x280, 1, 8, 0xA, 0xB }; u32 D_80031248[] = { 7, 0x1E, 0xD, 0x4040FF, 1, 1, 0x280, 1, 8, 0xA, 0xB }; u32 D_80031274[] = { 7, 0x1E, 0xD,0x406440FF, 1, 1,0xFFFFFD80, 1, 8, 0xA, 0xB }; u32 D_800312A0[] = { 0xD, 0xAFF0AFE, 0x14, 9, &D_800312C8 }; u32 D_800312B4[] = { 0xD, 0xA640AFE, 0x14, 9, (u32)&D_800312C8 }; u32 D_800312C8[] = { 0xF, 0xB6, 8, 1, 0xA, &D_800312A0, 0x51E, 0xA, &D_800312B4, 0x147A, 0xB }; u32 D_800312F4[] = { 7, 0x30, 0xD, 0xA960AFE, 1, 9, &D_800312B4 }; u32 D_80031310[] = { 7, 0x10, 0xD, 0x303080FF, 0x1E, 8, 5, 7, 0x2D, 8, 5, 7, 0x2E, 8, 5, 7, 0x2F, 8, 5, 0xB }; u32 D_80031360[] = { 7, 0x2C, 0xD,0x308030FF, 0x1E, 1,0xFFFFFC00, 0x400, 8, 0x5A0, 3, 0x288, 0x168, 4, 0x3AA, 0x168, 5, 0x80, 0x12C, 6, 0x80, 0x12C, 0xD, 0xFF, 0x3C, 8, 0x3C, 0xD,0x808080FF, 0xA, 8, 0x5A, 0xD,0x38C838FF, 0x1E, 8, 0x1E, 0xD,0x803838FF, 0x3C, 8, 0x3C, 0xD,0x808080FF, 0x3C, 8, 0x3C, 3, 0x200, 0x168, 4, 0x200, 0x168, 5, 0x400, 0x2D0, 6, 0x400, 0x2D0, 8, 0x12C, 7, 0x2C, 8, 0x1A4, 0xD, 0xC800FF, 0x1E, 8, 0x1E, 0xD,0x1E381EFF, 0x3C, 8, 0x3C, 0xB }; u32 D_80031490[] = { 0xD, 0xFF, 1, 0xD,0xC8C8C8FF, 0x190, 7, 1, 8, 0x2A8, 7, 2, 8, 0x2A8, 7, 4, 8, 0xB4, 0xD,0x808032FF, 1, 7, 4, 8, 0xC8, 0xB }; u32 D_800314F8[] = { 5, 0x400, 1, 6, 0x400, 1, 0xD,0xC81414FF, 1, 7, 6, 8, 0x258, 0xD,0xC8C8C8FF, 5, 8, 5, 0xD,0x383838FF, 0x3C, 7, 0x1B, 0xD, 0xA0A0AFF, 0x64, 8, 0x190, 0xB }; u32 D_8003156C[] = { 0xD, 0xA960AFF, 0, 7, 0x28, 8, 5, 7, 0x29, 8, 5, 7, 0x2A, 8, 5, 7, 0x2B, 8, 0xA, 7, 0x29, 8, 5, 0xB }; u32 D_800315CC[] = { 7, 0x24, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 1, 0x264, 0x1E, 7, 0x25, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 7, 0x26, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 7, 0x27, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 1, 0x19C, 0x28, 7, 0x26, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 7, 0x25, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xD, 0xA960AFF, 0, 8, 3, 0xD, 0x87808FF, 0, 8, 2, 0xB }; u32 D_80031848[] = { 0x0000000D, 0x0A780AFF, 0x00000000, 0x00000007, 0x00000020, 0x00000008, 0x00000005, 0x00000007, 0x00000021, 0x00000008, 0x00000005, 0x00000007, 0x00000022, 0x00000008, 0x00000005, 0x00000007, 0x00000023, 0x00000008, 0x00000005, 0x0000000B }; u32 D_80031898[] = {7, 0x1C, 0xD, 0x800000, 1, 8, 5, 0xB}; struct struct_5 D_800318B8[] = { {0xA, D_80031018, 0x1999}, {0xA, D_8003156C, 0x1999}, {0xA, D_8003121C, 0x1999}, {0xA, D_80031248, 0x1999}, {0xA, D_80031274, 0x1999}, {0xA, D_800310F0, 0x3333}, {0xA, D_8003118C, 0x6666}, {0xA, D_80031074, 0xFFFF} }; u32 D_80031918 = 0xB; struct struct_5 D_8003191C[] = { {0xA, D_80030F44, 0x51E}, {0xA, D_8003121C, 0x51E}, {0xA, D_80031074, 0x51E}, {0xA, &D_80031950, 0x9999} }; u32 D_8003194C = 0xB; struct struct_5 D_80031950[] = { {0xA, &D_800319D4, 0x1999}, {0xA, &D_800319F0, 0x1999}, {0xA, &D_80031A0C, 0x1999}, {0xA, &D_80031A28, 0x1999}, {0xA, &D_80031A44, 0x1999}, {0xA, &D_80031A60, 0x1999}, {0xA, &D_80031A7C, 0x1999}, {0xA, &D_80031A98, 0x1999}, {0xA, &D_80031AB4, 0x1999}, {0xA, &D_80031AD0, 0x1999} }; u32 D_800319C8[] = {8, 0x64, 0xB}; struct struct_0 D_800319D4 = {7, 0x11, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_800319F0 = {7, 0x12, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A0C = {7, 0x13, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A28 = {7, 0x14, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A44 = {7, 0x15, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A60 = {7, 0x16, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A7C = {7, 0x17, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031A98 = {7, 0x18, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031AB4 = {7, 0x19, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_0 D_80031AD0 = {7, 0x1A, 8, 0x14, 0xA, &D_80031AEC, 0xFFFF}; struct struct_5 D_80031AEC[] = { {0xA, &D_80031B24, 0x1999}, {0xA, &D_80031B38, 0x1999}, {0xA, &D_80031B4C, 0x1999} }; struct struct_12 D_80031B10[] = {0xD, 0xC8, 0xC8, 0xC8, 0xFF, 0x3C, 9, D_80031B60}; struct struct_12 D_80031B24[] = {0xD, 0xC8, 0x32, 0x32, 0xFF, 0x3C, 9, D_80031B60}; struct struct_12 D_80031B38[] = {0xD, 0x32, 0xC8, 0x32, 0xFF, 0x3C, 9, D_80031B60}; struct struct_12 D_80031B4C[] = {0xD, 0x32, 0x32, 0xC8, 0xFF, 0x3C, 9, D_80031B60}; u32 D_80031B60[] = {8, 0x32}; //80031B68 struct struct_5 D_80031B68 = {0xA, &D_80031BB4, 0x1999}; //80031B74 struct struct_5 D_80031B74 = {0xA, &D_80031BD0, 0x1999}; //80031B80 struct struct_5 D_80031B80 = {0xA, &D_80031BEC, 0x1999}; //80031B8C struct struct_5 D_80031B8C = {0xA, &D_80031C08, 0x1999}; //80031B98 struct struct_5 D_80031B98 = {0xA, &D_80031C80, 0x1999}; //80031BA4 u32 D_80031BA4[] = {8, 0x12C, 9, &D_80031D30}; struct struct_16 D_80031BB4 = {1, 0x800, 0x78, 8, 0x78, 9, D_80031D30}; struct struct_16 D_80031BD0 = {2, 0x2000, 0x32, 8, 0xC8, 9, D_80031D30}; struct struct_16 D_80031BEC = {2, 0x2000, 0xC8, 8, 0xC8, 9, D_80031D30}; u32 D_80031C08[] = { 3, 0x288, 0x12C, 4, 0x3AA, 0x12C, 5, 0x80, 0xC8, 6, 0x80, 0xC8, 8, 0x12C, 3, 0x200, 0x32, 4, 0x200, 0xC8, 5, 0x400, 0x2D0, 6, 0x400, 0x2D0, 8, 0x258, 9, D_80031D30 }; u32 D_80031C80[] = { 3, 0x320, 0x190, 4, 0x190, 0x190, 5, 0x80, 0xC8, 6, 0x80, 0xC8, 8, 0x12C, 3, 0xC8, 0xC8, 4, 0x190, 0x320, 5, 0x200, 0x2D0, 6, 0x200, 0x2D0, 8, 0x320, 5, 0x400, 0x2D0, 6, 0x400, 0x2D0, 3, 0x200, 0x64, 4, 0x200, 0x3C, 8, 0x1F4, 9, D_80031D30 }; u32 D_80031D30[] = { 8, 0x32, 0xA, &D_80031AEC, 0x1999, 0xA, &D_80031D58, 0x3333, 9, &D_80031950 }; struct struct_20 D_80031D58 = {8, 0x32, 0xD, 0xFFFFFFFF, 0xA, 0xD, 0xFF, 5, 0xD, 0xFFFFFFFF, 0xA, 8, 0x19, 0xD, 0xFF, 0xC8, 8, 0x1F4, 9, D_80031950}; u32 D_80031DA8[] = { 7, 0x31, 5, 0x200, 0, 6, 0x200, 0, 0xD,0xDC2828FF, 0x3C, 8, 0x3C, 0xD,0x323232FF, 0xA, 8, 0xA, 0xB }; u32 D_80031DF4[] = {7, 0x31, 5, 0x200, 0, 6, 0x200, 0, 0xD, 0x32C832FF, 0x3C, 8, 0x3C, 0xD, 0x323232FF, 0xA, 8, 0xA, 0xB }; u32 D_80031E40[] = {7, 0x31, 5, 0x200, 0, 6, 0x200, 0, 0xD, 0x323232FF, 0xA, 8, 0xA, 0xB }; u32 D_80031E78[] = {7, 0x31, 5, 0x200, 0, 6, 0x200, 0, 0xD, 0xDC2828FF, 0xA, 8, 0xA, 0xB }; u32 D_80031EB0[] = {7, 0x31, 5, 0x200, 0, 6, 0x200, 0, 0xD, 0x32C832FF, 0xA, 8, 0xA, 0xB }; u32 D_80031EE8[] = {7, 0, 0xD, 0xFF, 0, 0xC}; u32 dword_D_80031F00[] = { 5, 0x400, 0, 6, 0x400, 0, 8, 1, 5, 0x1000, 0x14, 6, 0x1000, 0x14, 8, 0x14, 0xB }; u32 dword_D_80031F44[] = { 7, 0, 1, 0x400, 0x14, 8, 0x14, 2, 0x400, 0x14, 0xD, 0xFF, 0x14, 8, 0x14, 5, 0x200, 0x14, 6, 0x200, 0x14, 0xD,0xFFFFFFFF, 0x14, 8, 0x14, 5, 0x400, 0x14, 6, 0x400, 0x14, 8, 0x14, 0xB }; u32 D_80031FD0[] = { 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; u32 D_80032010 = 0; u32 D_80032014 = 0; u32 D_80032018 = 0; u32 D_8003201C = 0; u32 D_80032020 = 0; u32 D_80032024 = 0; u32 D_80032028 = 0; u32 D_8003202C = 0; u32 D_80032030 = 0; u32 D_80032034 = 0; u32 D_80032038 = 0; u32 D_8003203C = 0; u32 D_80032040 = 0; u32 D_80032044 = 0; u32 D_80032048 = 0; u32 D_8003204C = 0x7FFF; u32 D_80032050 = 0x7FFF; u32 D_80032054 = 0x7FFF; u32 D_80032058 = 0xFFFF8000; u32 D_8003205C = 0xFFFF8000; u32 D_80032060 = 0xFFFF8000; u32 D_80032064 = 0; u32 D_80032068 = 0; u32 D_8003206C = 0; u32 D_80032070 = 0x7FFF; u32 D_80032074 = 0x7FFF; u32 D_80032078 = 0x7FFF; u32 D_8003207C = 0xFFFF8000; u32 D_80032080 = 0xFFFF8000; u32 D_80032084 = 0xFFFF8000; u32 D_80032088 = 0; u32 D_8003208C = 0; u32 D_80032090 = 0; u32 blank_07_object[] = { 0x1000007, 0xFFFF, 1, 0, 0, 0,0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0, 0, 0,0x447A0000 }; u32 D_8003210C[] = {0xFFFFFF00, 0xFFFFFF00}; u32 blank_11_object[] = { 0x1000011, 0, 0x4000, 0, 0, 0,0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0, 0, 0,0x447A0000 }; u32 D_8003218C[] = {0xFFFFFF00, 0xFFFFFF00}; u32 blank_08_object_preset_1[] = { 0x1000008, 1, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0, 0, 0,0x447A0000,0xFFFFFF00,0xFFFFFF00, 0xFFFFFF }; u32 D_80032218 = 0; u32 blank_08_object_preset_4001[] = { 0x1000008, 0x4001, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0x3F800000, 0, 0, 0, 0,0x3F800000, 0, 0, 0, 0, 0, 0, 0,0x447A0000,0xFFFFFF00,0xFFFFFF00, 0xFFFFFF }; u32 D_800322A0 = 0; u32 D_800322A4 = 0; u32 D_800322A8[] = {1, 3}; u32 D_800322B0[] = {0, 0, 0, 0}; u32 D_800322C0[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; //rodata #ifdef NONMATCHING void sub_GAME_7F03FB70(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FB70 /* 0746A0 7F03FB70 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0746A4 7F03FB74 AFBF001C */ sw $ra, 0x1c($sp) /* 0746A8 7F03FB78 AFB00018 */ sw $s0, 0x18($sp) /* 0746AC 7F03FB7C 8C8E0000 */ lw $t6, ($a0) /* 0746B0 7F03FB80 00808025 */ move $s0, $a0 /* 0746B4 7F03FB84 31CF0080 */ andi $t7, $t6, 0x80 /* 0746B8 7F03FB88 51E00014 */ beql $t7, $zero, .L7F03FBDC /* 0746BC 7F03FB8C 8E180000 */ lw $t8, ($s0) /* 0746C0 7F03FB90 8C840098 */ lw $a0, 0x98($a0) /* 0746C4 7F03FB94 50800008 */ beql $a0, $zero, .L7F03FBB8 /* 0746C8 7F03FB98 8E04009C */ lw $a0, 0x9c($s0) /* 0746CC 7F03FB9C 0C00237C */ jal sfxGetArg0Unk3F /* 0746D0 7F03FBA0 00000000 */ nop /* 0746D4 7F03FBA4 50400004 */ beql $v0, $zero, .L7F03FBB8 /* 0746D8 7F03FBA8 8E04009C */ lw $a0, 0x9c($s0) /* 0746DC 7F03FBAC 0C002408 */ jal sfxDeactivate /* 0746E0 7F03FBB0 8E040098 */ lw $a0, 0x98($s0) /* 0746E4 7F03FBB4 8E04009C */ lw $a0, 0x9c($s0) .L7F03FBB8: /* 0746E8 7F03FBB8 50800008 */ beql $a0, $zero, .L7F03FBDC /* 0746EC 7F03FBBC 8E180000 */ lw $t8, ($s0) /* 0746F0 7F03FBC0 0C00237C */ jal sfxGetArg0Unk3F /* 0746F4 7F03FBC4 00000000 */ nop /* 0746F8 7F03FBC8 50400004 */ beql $v0, $zero, .L7F03FBDC /* 0746FC 7F03FBCC 8E180000 */ lw $t8, ($s0) /* 074700 7F03FBD0 0C002408 */ jal sfxDeactivate /* 074704 7F03FBD4 8E04009C */ lw $a0, 0x9c($s0) /* 074708 7F03FBD8 8E180000 */ lw $t8, ($s0) .L7F03FBDC: /* 07470C 7F03FBDC 3C018000 */ lui $at, 0x8000 /* 074710 7F03FBE0 0301C825 */ or $t9, $t8, $at /* 074714 7F03FBE4 AE190000 */ sw $t9, ($s0) /* 074718 7F03FBE8 8FBF001C */ lw $ra, 0x1c($sp) /* 07471C 7F03FBEC 8FB00018 */ lw $s0, 0x18($sp) /* 074720 7F03FBF0 27BD0020 */ addiu $sp, $sp, 0x20 /* 074724 7F03FBF4 03E00008 */ jr $ra /* 074728 7F03FBF8 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FBFC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FBFC /* 07472C 7F03FBFC 44800000 */ mtc1 $zero, $f0 /* 074730 7F03FC00 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 074734 7F03FC04 44811000 */ mtc1 $at, $f2 /* 074738 7F03FC08 AC800000 */ sw $zero, ($a0) /* 07473C 7F03FC0C AC800088 */ sw $zero, 0x88($a0) /* 074740 7F03FC10 3C018005 */ lui $at, %hi(D_80052A48) /* 074744 7F03FC14 E4800004 */ swc1 $f0, 4($a0) /* 074748 7F03FC18 E4800008 */ swc1 $f0, 8($a0) /* 07474C 7F03FC1C E480000C */ swc1 $f0, 0xc($a0) /* 074750 7F03FC20 E4800010 */ swc1 $f0, 0x10($a0) /* 074754 7F03FC24 E4800014 */ swc1 $f0, 0x14($a0) /* 074758 7F03FC28 E4800018 */ swc1 $f0, 0x18($a0) /* 07475C 7F03FC2C E480001C */ swc1 $f0, 0x1c($a0) /* 074760 7F03FC30 E4820060 */ swc1 $f2, 0x60($a0) /* 074764 7F03FC34 C4242A48 */ lwc1 $f4, %lo(D_80052A48)($at) /* 074768 7F03FC38 2402FFFF */ li $v0, -1 /* 07476C 7F03FC3C 240E0001 */ li $t6, 1 /* 074770 7F03FC40 AC800090 */ sw $zero, 0x90($a0) /* 074774 7F03FC44 AC8200A0 */ sw $v0, 0xa0($a0) /* 074778 7F03FC48 AC8000A4 */ sw $zero, 0xa4($a0) /* 07477C 7F03FC4C AC8000A8 */ sw $zero, 0xa8($a0) /* 074780 7F03FC50 AC8200AC */ sw $v0, 0xac($a0) /* 074784 7F03FC54 AC8E00B8 */ sw $t6, 0xb8($a0) /* 074788 7F03FC58 AC8000BC */ sw $zero, 0xbc($a0) /* 07478C 7F03FC5C AC8000E0 */ sw $zero, 0xe0($a0) /* 074790 7F03FC60 AC8000E4 */ sw $zero, 0xe4($a0) /* 074794 7F03FC64 AC8000E8 */ sw $zero, 0xe8($a0) /* 074798 7F03FC68 E4800094 */ swc1 $f0, 0x94($a0) /* 07479C 7F03FC6C E48200C0 */ swc1 $f2, 0xc0($a0) /* 0747A0 7F03FC70 E48200C4 */ swc1 $f2, 0xc4($a0) /* 0747A4 7F03FC74 E48200C8 */ swc1 $f2, 0xc8($a0) /* 0747A8 7F03FC78 03E00008 */ jr $ra /* 0747AC 7F03FC7C E484008C */ swc1 $f4, 0x8c($a0) ) #endif #ifdef NONMATCHING void sub_GAME_7F03FC80(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FC80 /* 0747B0 7F03FC80 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 0747B4 7F03FC84 3C028007 */ lui $v0, %hi(dword_CODE_bss_80073DC0) /* 0747B8 7F03FC88 3C048007 */ lui $a0, %hi(dword_CODE_bss_80075030) /* 0747BC 7F03FC8C AFBF0014 */ sw $ra, 0x14($sp) /* 0747C0 7F03FC90 2406FFFF */ li $a2, -1 /* 0747C4 7F03FC94 24845030 */ addiu $a0, %lo(dword_CODE_bss_80075030) # addiu $a0, $a0, 0x5030 /* 0747C8 7F03FC98 24423DC0 */ addiu $v0, %lo(dword_CODE_bss_80073DC0) # addiu $v0, $v0, 0x3dc0 /* 0747CC 7F03FC9C 00002825 */ move $a1, $zero /* 0747D0 7F03FCA0 3C038000 */ lui $v1, 0x8000 .L7F03FCA4: /* 0747D4 7F03FCA4 8C4E0000 */ lw $t6, ($v0) /* 0747D8 7F03FCA8 244200EC */ addiu $v0, $v0, 0xec /* 0747DC 7F03FCAC 0044082B */ sltu $at, $v0, $a0 /* 0747E0 7F03FCB0 01C37824 */ and $t7, $t6, $v1 /* 0747E4 7F03FCB4 11E00007 */ beqz $t7, .L7F03FCD4 /* 0747E8 7F03FCB8 3C078007 */ lui $a3, %hi(dword_CODE_bss_80073DC0) /* 0747EC 7F03FCBC 24E73DC0 */ addiu $a3, %lo(dword_CODE_bss_80073DC0) # addiu $a3, $a3, 0x3dc0 /* 0747F0 7F03FCC0 00E52021 */ addu $a0, $a3, $a1 /* 0747F4 7F03FCC4 0FC0FEFF */ jal sub_GAME_7F03FBFC /* 0747F8 7F03FCC8 AFA40020 */ sw $a0, 0x20($sp) /* 0747FC 7F03FCCC 10000032 */ b .L7F03FD98 /* 074800 7F03FCD0 8FA20020 */ lw $v0, 0x20($sp) .L7F03FCD4: /* 074804 7F03FCD4 1420FFF3 */ bnez $at, .L7F03FCA4 /* 074808 7F03FCD8 24A500EC */ addiu $a1, $a1, 0xec /* 07480C 7F03FCDC 3C028007 */ lui $v0, %hi(dword_CODE_bss_80073DC0) /* 074810 7F03FCE0 3C078007 */ lui $a3, %hi(dword_CODE_bss_80073DC0) /* 074814 7F03FCE4 24E73DC0 */ addiu $a3, %lo(dword_CODE_bss_80073DC0) # addiu $a3, $a3, 0x3dc0 /* 074818 7F03FCE8 24423DC0 */ addiu $v0, %lo(dword_CODE_bss_80073DC0) # addiu $v0, $v0, 0x3dc0 /* 07481C 7F03FCEC 00001825 */ move $v1, $zero /* 074820 7F03FCF0 240500EC */ li $a1, 236 /* 074824 7F03FCF4 24040014 */ li $a0, 20 .L7F03FCF8: /* 074828 7F03FCF8 8C5800E4 */ lw $t8, 0xe4($v0) /* 07482C 7F03FCFC 5300000D */ beql $t8, $zero, .L7F03FD34 /* 074830 7F03FD00 24630001 */ addiu $v1, $v1, 1 /* 074834 7F03FD04 04C2000A */ bltzl $a2, .L7F03FD30 /* 074838 7F03FD08 00603025 */ move $a2, $v1 /* 07483C 7F03FD0C 00C50019 */ multu $a2, $a1 /* 074840 7F03FD10 8C5900E8 */ lw $t9, 0xe8($v0) /* 074844 7F03FD14 00004812 */ mflo $t1 /* 074848 7F03FD18 00E95021 */ addu $t2, $a3, $t1 /* 07484C 7F03FD1C 8D4B00E8 */ lw $t3, 0xe8($t2) /* 074850 7F03FD20 032B082A */ slt $at, $t9, $t3 /* 074854 7F03FD24 50200003 */ beql $at, $zero, .L7F03FD34 /* 074858 7F03FD28 24630001 */ addiu $v1, $v1, 1 /* 07485C 7F03FD2C 00603025 */ move $a2, $v1 .L7F03FD30: /* 074860 7F03FD30 24630001 */ addiu $v1, $v1, 1 .L7F03FD34: /* 074864 7F03FD34 1464FFF0 */ bne $v1, $a0, .L7F03FCF8 /* 074868 7F03FD38 244200EC */ addiu $v0, $v0, 0xec /* 07486C 7F03FD3C 04C00016 */ bltz $a2, .L7F03FD98 /* 074870 7F03FD40 00001025 */ move $v0, $zero /* 074874 7F03FD44 00C50019 */ multu $a2, $a1 /* 074878 7F03FD48 00001812 */ mflo $v1 /* 07487C 7F03FD4C 00E34021 */ addu $t0, $a3, $v1 /* 074880 7F03FD50 8D0C00E4 */ lw $t4, 0xe4($t0) /* 074884 7F03FD54 8D840010 */ lw $a0, 0x10($t4) /* 074888 7F03FD58 AFA80020 */ sw $t0, 0x20($sp) /* 07488C 7F03FD5C 0FC1033C */ jal sub_GAME_7F040CF0 /* 074890 7F03FD60 AFA30024 */ sw $v1, 0x24($sp) /* 074894 7F03FD64 8FA80020 */ lw $t0, 0x20($sp) /* 074898 7F03FD68 8FA30024 */ lw $v1, 0x24($sp) /* 07489C 7F03FD6C 3C078007 */ lui $a3, %hi(dword_CODE_bss_80073DC0) /* 0748A0 7F03FD70 8D0200E4 */ lw $v0, 0xe4($t0) /* 0748A4 7F03FD74 24E73DC0 */ addiu $a3, %lo(dword_CODE_bss_80073DC0) # addiu $a3, $a3, 0x3dc0 /* 0748A8 7F03FD78 00E32021 */ addu $a0, $a3, $v1 /* 0748AC 7F03FD7C 8C4D0064 */ lw $t5, 0x64($v0) /* 0748B0 7F03FD80 35AE0004 */ ori $t6, $t5, 4 /* 0748B4 7F03FD84 AC4E0064 */ sw $t6, 0x64($v0) /* 0748B8 7F03FD88 0FC0FEFF */ jal sub_GAME_7F03FBFC /* 0748BC 7F03FD8C AFA4001C */ sw $a0, 0x1c($sp) /* 0748C0 7F03FD90 10000001 */ b .L7F03FD98 /* 0748C4 7F03FD94 8FA2001C */ lw $v0, 0x1c($sp) .L7F03FD98: /* 0748C8 7F03FD98 8FBF0014 */ lw $ra, 0x14($sp) /* 0748CC 7F03FD9C 27BD0030 */ addiu $sp, $sp, 0x30 /* 0748D0 7F03FDA0 03E00008 */ jr $ra /* 0748D4 7F03FDA4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FDA8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FDA8 /* 0748D8 7F03FDA8 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0748DC 7F03FDAC AFBF0014 */ sw $ra, 0x14($sp) /* 0748E0 7F03FDB0 8C830004 */ lw $v1, 4($a0) /* 0748E4 7F03FDB4 8C620064 */ lw $v0, 0x64($v1) /* 0748E8 7F03FDB8 304E0040 */ andi $t6, $v0, 0x40 /* 0748EC 7F03FDBC 11C00007 */ beqz $t6, .L7F03FDDC /* 0748F0 7F03FDC0 30580080 */ andi $t8, $v0, 0x80 /* 0748F4 7F03FDC4 0FC0FF20 */ jal sub_GAME_7F03FC80 /* 0748F8 7F03FDC8 AFA3001C */ sw $v1, 0x1c($sp) /* 0748FC 7F03FDCC 8FA3001C */ lw $v1, 0x1c($sp) /* 074900 7F03FDD0 8C6F006C */ lw $t7, 0x6c($v1) /* 074904 7F03FDD4 1000000B */ b .L7F03FE04 /* 074908 7F03FDD8 ADE20044 */ sw $v0, 0x44($t7) .L7F03FDDC: /* 07490C 7F03FDDC 5700000A */ bnezl $t8, .L7F03FE08 /* 074910 7F03FDE0 8FBF0014 */ lw $ra, 0x14($sp) /* 074914 7F03FDE4 0FC0FF20 */ jal sub_GAME_7F03FC80 /* 074918 7F03FDE8 AFA3001C */ sw $v1, 0x1c($sp) /* 07491C 7F03FDEC 8FA3001C */ lw $v1, 0x1c($sp) /* 074920 7F03FDF0 10400004 */ beqz $v0, .L7F03FE04 /* 074924 7F03FDF4 AC62006C */ sw $v0, 0x6c($v1) /* 074928 7F03FDF8 8C790064 */ lw $t9, 0x64($v1) /* 07492C 7F03FDFC 37280080 */ ori $t0, $t9, 0x80 /* 074930 7F03FE00 AC680064 */ sw $t0, 0x64($v1) .L7F03FE04: /* 074934 7F03FE04 8FBF0014 */ lw $ra, 0x14($sp) .L7F03FE08: /* 074938 7F03FE08 27BD0020 */ addiu $sp, $sp, 0x20 /* 07493C 7F03FE0C 03E00008 */ jr $ra /* 074940 7F03FE10 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FE14(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FE14 /* 074944 7F03FE14 8C820004 */ lw $v0, 4($a0) /* 074948 7F03FE18 00001825 */ move $v1, $zero /* 07494C 7F03FE1C 8C450064 */ lw $a1, 0x64($v0) /* 074950 7F03FE20 30AE0040 */ andi $t6, $a1, 0x40 /* 074954 7F03FE24 11C00004 */ beqz $t6, .L7F03FE38 /* 074958 7F03FE28 30B80080 */ andi $t8, $a1, 0x80 /* 07495C 7F03FE2C 8C4F006C */ lw $t7, 0x6c($v0) /* 074960 7F03FE30 10000004 */ b .L7F03FE44 /* 074964 7F03FE34 8DE30044 */ lw $v1, 0x44($t7) .L7F03FE38: /* 074968 7F03FE38 13000002 */ beqz $t8, .L7F03FE44 /* 07496C 7F03FE3C 00000000 */ nop /* 074970 7F03FE40 8C43006C */ lw $v1, 0x6c($v0) .L7F03FE44: /* 074974 7F03FE44 1060000E */ beqz $v1, .L7F03FE80 /* 074978 7F03FE48 00000000 */ nop /* 07497C 7F03FE4C 8C790000 */ lw $t9, ($v1) /* 074980 7F03FE50 240A00FF */ li $t2, 255 /* 074984 7F03FE54 240B00FF */ li $t3, 255 /* 074988 7F03FE58 37280004 */ ori $t0, $t9, 4 /* 07498C 7F03FE5C AC680000 */ sw $t0, ($v1) /* 074990 7F03FE60 8C820014 */ lw $v0, 0x14($a0) /* 074994 7F03FE64 50400006 */ beql $v0, $zero, .L7F03FE80 /* 074998 7F03FE68 A06B00CC */ sb $t3, 0xcc($v1) /* 07499C 7F03FE6C 90490003 */ lbu $t1, 3($v0) /* 0749A0 7F03FE70 A06A00CD */ sb $t2, 0xcd($v1) /* 0749A4 7F03FE74 03E00008 */ jr $ra /* 0749A8 7F03FE78 A06900CC */ sb $t1, 0xcc($v1) /* 0749AC 7F03FE7C A06B00CC */ sb $t3, 0xcc($v1) .L7F03FE80: /* 0749B0 7F03FE80 03E00008 */ jr $ra /* 0749B4 7F03FE84 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FE88(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FE88 /* 0749B8 7F03FE88 8C8E0000 */ lw $t6, ($a0) /* 0749BC 7F03FE8C 35CF0001 */ ori $t7, $t6, 1 /* 0749C0 7F03FE90 03E00008 */ jr $ra /* 0749C4 7F03FE94 AC8F0000 */ sw $t7, ($a0) ) #endif #ifdef NONMATCHING void sub_GAME_7F03FE98(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FE98 /* 0749C8 7F03FE98 3C048007 */ lui $a0, %hi(dword_CODE_bss_80075030) /* 0749CC 7F03FE9C 3C028007 */ lui $v0, %hi(objinst) /* 0749D0 7F03FEA0 24425B70 */ addiu $v0, %lo(objinst) # addiu $v0, $v0, 0x5b70 /* 0749D4 7F03FEA4 24845030 */ addiu $a0, %lo(dword_CODE_bss_80075030) # addiu $a0, $a0, 0x5030 /* 0749D8 7F03FEA8 00001825 */ move $v1, $zero .L7F03FEAC: /* 0749DC 7F03FEAC 8C8E0000 */ lw $t6, ($a0) /* 0749E0 7F03FEB0 31CF0001 */ andi $t7, $t6, 1 /* 0749E4 7F03FEB4 11E00006 */ beqz $t7, .L7F03FED0 /* 0749E8 7F03FEB8 3C188007 */ lui $t8, %hi(dword_CODE_bss_80075030) /* 0749EC 7F03FEBC 27185030 */ addiu $t8, %lo(dword_CODE_bss_80075030) # addiu $t8, $t8, 0x5030 /* 0749F0 7F03FEC0 AC800000 */ sw $zero, ($a0) /* 0749F4 7F03FEC4 AC800044 */ sw $zero, 0x44($a0) /* 0749F8 7F03FEC8 03E00008 */ jr $ra /* 0749FC 7F03FECC 00781021 */ addu $v0, $v1, $t8 .L7F03FED0: /* 074A00 7F03FED0 8C990048 */ lw $t9, 0x48($a0) /* 074A04 7F03FED4 33280001 */ andi $t0, $t9, 1 /* 074A08 7F03FED8 11000007 */ beqz $t0, .L7F03FEF8 /* 074A0C 7F03FEDC 3C0A8007 */ lui $t2, %hi(dword_CODE_bss_80075030) /* 074A10 7F03FEE0 254A5030 */ addiu $t2, %lo(dword_CODE_bss_80075030) # addiu $t2, $t2, 0x5030 /* 074A14 7F03FEE4 24690048 */ addiu $t1, $v1, 0x48 /* 074A18 7F03FEE8 012A1021 */ addu $v0, $t1, $t2 /* 074A1C 7F03FEEC AC800048 */ sw $zero, 0x48($a0) /* 074A20 7F03FEF0 03E00008 */ jr $ra /* 074A24 7F03FEF4 AC80008C */ sw $zero, 0x8c($a0) .L7F03FEF8: /* 074A28 7F03FEF8 8C8B0090 */ lw $t3, 0x90($a0) /* 074A2C 7F03FEFC 316C0001 */ andi $t4, $t3, 1 /* 074A30 7F03FF00 11800007 */ beqz $t4, .L7F03FF20 /* 074A34 7F03FF04 3C0E8007 */ lui $t6, %hi(dword_CODE_bss_80075030) /* 074A38 7F03FF08 25CE5030 */ addiu $t6, %lo(dword_CODE_bss_80075030) # addiu $t6, $t6, 0x5030 /* 074A3C 7F03FF0C 246D0090 */ addiu $t5, $v1, 0x90 /* 074A40 7F03FF10 01AE1021 */ addu $v0, $t5, $t6 /* 074A44 7F03FF14 AC800090 */ sw $zero, 0x90($a0) /* 074A48 7F03FF18 03E00008 */ jr $ra /* 074A4C 7F03FF1C AC8000D4 */ sw $zero, 0xd4($a0) .L7F03FF20: /* 074A50 7F03FF20 8C8F00D8 */ lw $t7, 0xd8($a0) /* 074A54 7F03FF24 31F80001 */ andi $t8, $t7, 1 /* 074A58 7F03FF28 13000007 */ beqz $t8, .L7F03FF48 /* 074A5C 7F03FF2C 3C088007 */ lui $t0, %hi(dword_CODE_bss_80075030) /* 074A60 7F03FF30 25085030 */ addiu $t0, %lo(dword_CODE_bss_80075030) # addiu $t0, $t0, 0x5030 /* 074A64 7F03FF34 247900D8 */ addiu $t9, $v1, 0xd8 /* 074A68 7F03FF38 03281021 */ addu $v0, $t9, $t0 /* 074A6C 7F03FF3C AC8000D8 */ sw $zero, 0xd8($a0) /* 074A70 7F03FF40 03E00008 */ jr $ra /* 074A74 7F03FF44 AC80011C */ sw $zero, 0x11c($a0) .L7F03FF48: /* 074A78 7F03FF48 24840120 */ addiu $a0, $a0, 0x120 /* 074A7C 7F03FF4C 1482FFD7 */ bne $a0, $v0, .L7F03FEAC /* 074A80 7F03FF50 24630120 */ addiu $v1, $v1, 0x120 /* 074A84 7F03FF54 00001025 */ move $v0, $zero /* 074A88 7F03FF58 03E00008 */ jr $ra /* 074A8C 7F03FF5C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FF60(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FF60 /* 074A90 7F03FF60 908E0002 */ lbu $t6, 2($a0) /* 074A94 7F03FF64 3C014080 */ lui $at, 0x4080 /* 074A98 7F03FF68 31CF0080 */ andi $t7, $t6, 0x80 /* 074A9C 7F03FF6C 55E0000C */ bnezl $t7, .L7F03FFA0 /* 074AA0 7F03FF70 C4840070 */ lwc1 $f4, 0x70($a0) /* 074AA4 7F03FF74 3C014040 */ li $at, 0x40400000 # 3.000000 /* 074AA8 7F03FF78 44813000 */ mtc1 $at, $f6 /* 074AAC 7F03FF7C C4840070 */ lwc1 $f4, 0x70($a0) /* 074AB0 7F03FF80 C48A0074 */ lwc1 $f10, 0x74($a0) /* 074AB4 7F03FF84 46062202 */ mul.s $f8, $f4, $f6 /* 074AB8 7F03FF88 460A4403 */ div.s $f16, $f8, $f10 /* 074ABC 7F03FF8C 4600848D */ trunc.w.s $f18, $f16 /* 074AC0 7F03FF90 44029000 */ mfc1 $v0, $f18 /* 074AC4 7F03FF94 03E00008 */ jr $ra /* 074AC8 7F03FF98 00000000 */ nop /* 074ACC 7F03FF9C C4840070 */ lwc1 $f4, 0x70($a0) .L7F03FFA0: /* 074AD0 7F03FFA0 44813000 */ mtc1 $at, $f6 /* 074AD4 7F03FFA4 00000000 */ nop /* 074AD8 7F03FFA8 46062200 */ add.s $f8, $f4, $f6 /* 074ADC 7F03FFAC 4600428D */ trunc.w.s $f10, $f8 /* 074AE0 7F03FFB0 44025000 */ mfc1 $v0, $f10 /* 074AE4 7F03FFB4 00000000 */ nop /* 074AE8 7F03FFB8 03E00008 */ jr $ra /* 074AEC 7F03FFBC 00000000 */ nop ) #endif #ifdef NONMATCHING void do_something_if_object_destroyed(void) { } #else GLOBAL_ASM( .text glabel do_something_if_object_destroyed /* 074AF0 7F03FFC0 908E0002 */ lbu $t6, 2($a0) /* 074AF4 7F03FFC4 31CF0080 */ andi $t7, $t6, 0x80 /* 074AF8 7F03FFC8 55E00004 */ bnezl $t7, .L7F03FFDC /* 074AFC 7F03FFCC C4840070 */ lwc1 $f4, 0x70($a0) /* 074B00 7F03FFD0 03E00008 */ jr $ra /* 074B04 7F03FFD4 00001025 */ move $v0, $zero /* 074B08 7F03FFD8 C4840070 */ lwc1 $f4, 0x70($a0) .L7F03FFDC: /* 074B0C 7F03FFDC 4600218D */ trunc.w.s $f6, $f4 /* 074B10 7F03FFE0 44023000 */ mfc1 $v0, $f6 /* 074B14 7F03FFE4 00000000 */ nop /* 074B18 7F03FFE8 0002C883 */ sra $t9, $v0, 2 /* 074B1C 7F03FFEC 27220001 */ addiu $v0, $t9, 1 /* 074B20 7F03FFF0 03E00008 */ jr $ra /* 074B24 7F03FFF4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F03FFF8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F03FFF8 /* 074B28 7F03FFF8 8C8E0000 */ lw $t6, ($a0) /* 074B2C 7F03FFFC 8DC20014 */ lw $v0, 0x14($t6) /* 074B30 7F040000 5040001B */ beql $v0, $zero, .L7F040070 /* 074B34 7F040004 00001025 */ move $v0, $zero /* 074B38 7F040008 1040000A */ beqz $v0, .L7F040034 /* 074B3C 7F04000C 00401825 */ move $v1, $v0 /* 074B40 7F040010 2405000A */ li $a1, 10 /* 074B44 7F040014 946F0000 */ lhu $t7, ($v1) .L7F040018: /* 074B48 7F040018 54AF0004 */ bnel $a1, $t7, .L7F04002C /* 074B4C 7F04001C 8C63000C */ lw $v1, 0xc($v1) /* 074B50 7F040020 03E00008 */ jr $ra /* 074B54 7F040024 8C620004 */ lw $v0, 4($v1) /* 074B58 7F040028 8C63000C */ lw $v1, 0xc($v1) .L7F04002C: /* 074B5C 7F04002C 5460FFFA */ bnezl $v1, .L7F040018 /* 074B60 7F040030 946F0000 */ lhu $t7, ($v1) .L7F040034: /* 074B64 7F040034 8C440014 */ lw $a0, 0x14($v0) /* 074B68 7F040038 2405000A */ li $a1, 10 /* 074B6C 7F04003C 5080000C */ beql $a0, $zero, .L7F040070 /* 074B70 7F040040 00001025 */ move $v0, $zero /* 074B74 7F040044 10800009 */ beqz $a0, .L7F04006C /* 074B78 7F040048 00801825 */ move $v1, $a0 /* 074B7C 7F04004C 94780000 */ lhu $t8, ($v1) .L7F040050: /* 074B80 7F040050 54B80004 */ bnel $a1, $t8, .L7F040064 /* 074B84 7F040054 8C63000C */ lw $v1, 0xc($v1) /* 074B88 7F040058 03E00008 */ jr $ra /* 074B8C 7F04005C 8C620004 */ lw $v0, 4($v1) /* 074B90 7F040060 8C63000C */ lw $v1, 0xc($v1) .L7F040064: /* 074B94 7F040064 5460FFFA */ bnezl $v1, .L7F040050 /* 074B98 7F040068 94780000 */ lhu $t8, ($v1) .L7F04006C: /* 074B9C 7F04006C 00001025 */ move $v0, $zero .L7F040070: /* 074BA0 7F040070 03E00008 */ jr $ra /* 074BA4 7F040074 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040078(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040078 /* 074BA8 7F040078 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 074BAC 7F04007C AFBF0014 */ sw $ra, 0x14($sp) /* 074BB0 7F040080 8C8E0014 */ lw $t6, 0x14($a0) /* 074BB4 7F040084 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 074BB8 7F040088 8DC40008 */ lw $a0, 8($t6) /* 074BBC 7F04008C 8FBF0014 */ lw $ra, 0x14($sp) /* 074BC0 7F040090 27BD0018 */ addiu $sp, $sp, 0x18 /* 074BC4 7F040094 03E00008 */ jr $ra /* 074BC8 7F040098 00000000 */ nop ) #endif #ifdef NONMATCHING void set_color_shading_from_tile(void) { } #else GLOBAL_ASM( .text glabel set_color_shading_from_tile /* 074BCC 7F04009C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 074BD0 7F0400A0 AFBF0014 */ sw $ra, 0x14($sp) /* 074BD4 7F0400A4 AFA40018 */ sw $a0, 0x18($sp) /* 074BD8 7F0400A8 00807025 */ move $t6, $a0 /* 074BDC 7F0400AC 00A03825 */ move $a3, $a1 /* 074BE0 7F0400B0 8DC50008 */ lw $a1, 8($t6) /* 074BE4 7F0400B4 8DC60010 */ lw $a2, 0x10($t6) /* 074BE8 7F0400B8 8C840014 */ lw $a0, 0x14($a0) /* 074BEC 7F0400BC 0FC2CB0B */ jal copy_tile_RGB_as_24bit /* 074BF0 7F0400C0 AFA7001C */ sw $a3, 0x1c($sp) /* 074BF4 7F0400C4 8FA7001C */ lw $a3, 0x1c($sp) /* 074BF8 7F0400C8 3C013F40 */ li $at, 0x3F400000 # 0.750000 /* 074BFC 7F0400CC 44814000 */ mtc1 $at, $f8 /* 074C00 7F0400D0 90EB0002 */ lbu $t3, 2($a3) /* 074C04 7F0400D4 90ED0000 */ lbu $t5, ($a3) /* 074C08 7F0400D8 90FF0001 */ lbu $ra, 1($a3) /* 074C0C 7F0400DC 000B7880 */ sll $t7, $t3, 2 /* 074C10 7F0400E0 000DC080 */ sll $t8, $t5, 2 /* 074C14 7F0400E4 01EB7821 */ addu $t7, $t7, $t3 /* 074C18 7F0400E8 030DC021 */ addu $t8, $t8, $t5 /* 074C1C 7F0400EC 001F7080 */ sll $t6, $ra, 2 /* 074C20 7F0400F0 0018C100 */ sll $t8, $t8, 4 /* 074C24 7F0400F4 000F7880 */ sll $t7, $t7, 2 /* 074C28 7F0400F8 01DF7021 */ addu $t6, $t6, $ra /* 074C2C 7F0400FC 000E70C0 */ sll $t6, $t6, 3 /* 074C30 7F040100 01EB7821 */ addu $t7, $t7, $t3 /* 074C34 7F040104 030DC023 */ subu $t8, $t8, $t5 /* 074C38 7F040108 01F8C821 */ addu $t9, $t7, $t8 /* 074C3C 7F04010C 01DF7023 */ subu $t6, $t6, $ra /* 074C40 7F040110 000E7080 */ sll $t6, $t6, 2 /* 074C44 7F040114 032E1821 */ addu $v1, $t9, $t6 /* 074C48 7F040118 00037A03 */ sra $t7, $v1, 8 /* 074C4C 7F04011C 241800FF */ li $t8, 255 /* 074C50 7F040120 030FC823 */ subu $t9, $t8, $t7 /* 074C54 7F040124 44992000 */ mtc1 $t9, $f4 /* 074C58 7F040128 240F0001 */ li $t7, 1 /* 074C5C 7F04012C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 /* 074C60 7F040130 468021A0 */ cvt.s.w $f6, $f4 /* 074C64 7F040134 00001025 */ move $v0, $zero /* 074C68 7F040138 00006025 */ move $t4, $zero /* 074C6C 7F04013C 46083282 */ mul.s $f10, $f6, $f8 /* 074C70 7F040140 444EF800 */ cfc1 $t6, $31 /* 074C74 7F040144 44CFF800 */ ctc1 $t7, $31 /* 074C78 7F040148 00000000 */ nop /* 074C7C 7F04014C 46005424 */ cvt.w.s $f16, $f10 /* 074C80 7F040150 444FF800 */ cfc1 $t7, $31 /* 074C84 7F040154 00000000 */ nop /* 074C88 7F040158 31EF0078 */ andi $t7, $t7, 0x78 /* 074C8C 7F04015C 51E00013 */ beql $t7, $zero, .L7F0401AC /* 074C90 7F040160 440F8000 */ mfc1 $t7, $f16 /* 074C94 7F040164 44818000 */ mtc1 $at, $f16 /* 074C98 7F040168 240F0001 */ li $t7, 1 /* 074C9C 7F04016C 46105401 */ sub.s $f16, $f10, $f16 /* 074CA0 7F040170 44CFF800 */ ctc1 $t7, $31 /* 074CA4 7F040174 00000000 */ nop /* 074CA8 7F040178 46008424 */ cvt.w.s $f16, $f16 /* 074CAC 7F04017C 444FF800 */ cfc1 $t7, $31 /* 074CB0 7F040180 00000000 */ nop /* 074CB4 7F040184 31EF0078 */ andi $t7, $t7, 0x78 /* 074CB8 7F040188 15E00005 */ bnez $t7, .L7F0401A0 /* 074CBC 7F04018C 00000000 */ nop /* 074CC0 7F040190 440F8000 */ mfc1 $t7, $f16 /* 074CC4 7F040194 3C018000 */ lui $at, 0x8000 /* 074CC8 7F040198 10000007 */ b .L7F0401B8 /* 074CCC 7F04019C 01E17825 */ or $t7, $t7, $at .L7F0401A0: /* 074CD0 7F0401A0 10000005 */ b .L7F0401B8 /* 074CD4 7F0401A4 240FFFFF */ li $t7, -1 /* 074CD8 7F0401A8 440F8000 */ mfc1 $t7, $f16 .L7F0401AC: /* 074CDC 7F0401AC 00000000 */ nop /* 074CE0 7F0401B0 05E0FFFB */ bltz $t7, .L7F0401A0 /* 074CE4 7F0401B4 00000000 */ nop .L7F0401B8: /* 074CE8 7F0401B8 44CEF800 */ ctc1 $t6, $31 /* 074CEC 7F0401BC 01BF082A */ slt $at, $t5, $ra /* 074CF0 7F0401C0 10200003 */ beqz $at, .L7F0401D0 /* 074CF4 7F0401C4 A0EF0003 */ sb $t7, 3($a3) /* 074CF8 7F0401C8 10000002 */ b .L7F0401D4 /* 074CFC 7F0401CC 24020001 */ li $v0, 1 .L7F0401D0: /* 074D00 7F0401D0 240C0001 */ li $t4, 1 .L7F0401D4: /* 074D04 7F0401D4 00E25021 */ addu $t2, $a3, $v0 /* 074D08 7F0401D8 91460000 */ lbu $a2, ($t2) /* 074D0C 7F0401DC 00402825 */ move $a1, $v0 /* 074D10 7F0401E0 00ECC021 */ addu $t8, $a3, $t4 /* 074D14 7F0401E4 00CB082A */ slt $at, $a2, $t3 /* 074D18 7F0401E8 50200005 */ beql $at, $zero, .L7F040200 /* 074D1C 7F0401EC 93190000 */ lbu $t9, ($t8) /* 074D20 7F0401F0 24EA0002 */ addiu $t2, $a3, 2 /* 074D24 7F0401F4 10000009 */ b .L7F04021C /* 074D28 7F0401F8 91460000 */ lbu $a2, ($t2) /* 074D2C 7F0401FC 93190000 */ lbu $t9, ($t8) .L7F040200: /* 074D30 7F040200 01802825 */ move $a1, $t4 /* 074D34 7F040204 032B082A */ slt $at, $t9, $t3 /* 074D38 7F040208 50200004 */ beql $at, $zero, .L7F04021C /* 074D3C 7F04020C 240C0002 */ li $t4, 2 /* 074D40 7F040210 10000002 */ b .L7F04021C /* 074D44 7F040214 24050002 */ li $a1, 2 /* 074D48 7F040218 240C0002 */ li $t4, 2 .L7F04021C: /* 074D4C 7F04021C 18C0001B */ blez $a2, .L7F04028C /* 074D50 7F040220 00E51821 */ addu $v1, $a3, $a1 /* 074D54 7F040224 00EC1021 */ addu $v0, $a3, $t4 /* 074D58 7F040228 904E0000 */ lbu $t6, ($v0) /* 074D5C 7F04022C 906F0000 */ lbu $t7, ($v1) /* 074D60 7F040230 A0400000 */ sb $zero, ($v0) /* 074D64 7F040234 00CE2023 */ subu $a0, $a2, $t6 /* 074D68 7F040238 01E40019 */ multu $t7, $a0 /* 074D6C 7F04023C 00804825 */ move $t1, $a0 /* 074D70 7F040240 0000C012 */ mflo $t8 /* 074D74 7F040244 00000000 */ nop /* 074D78 7F040248 00000000 */ nop /* 074D7C 7F04024C 0306001A */ div $zero, $t8, $a2 /* 074D80 7F040250 00004012 */ mflo $t0 /* 074D84 7F040254 A0680000 */ sb $t0, ($v1) /* 074D88 7F040258 A1440000 */ sb $a0, ($t2) /* 074D8C 7F04025C 14C00002 */ bnez $a2, .L7F040268 /* 074D90 7F040260 00000000 */ nop /* 074D94 7F040264 0007000D */ break 7 .L7F040268: /* 074D98 7F040268 2401FFFF */ li $at, -1 /* 074D9C 7F04026C 14C10004 */ bne $a2, $at, .L7F040280 /* 074DA0 7F040270 3C018000 */ lui $at, 0x8000 /* 074DA4 7F040274 17010002 */ bne $t8, $at, .L7F040280 /* 074DA8 7F040278 00000000 */ nop /* 074DAC 7F04027C 0006000D */ break 6 .L7F040280: /* 074DB0 7F040280 90FF0001 */ lbu $ra, 1($a3) /* 074DB4 7F040284 90ED0000 */ lbu $t5, ($a3) /* 074DB8 7F040288 90EB0002 */ lbu $t3, 2($a3) .L7F04028C: /* 074DBC 7F04028C 000DC842 */ srl $t9, $t5, 1 /* 074DC0 7F040290 001F7042 */ srl $t6, $ra, 1 /* 074DC4 7F040294 000B7842 */ srl $t7, $t3, 1 /* 074DC8 7F040298 A0F90000 */ sb $t9, ($a3) /* 074DCC 7F04029C A0EE0001 */ sb $t6, 1($a3) /* 074DD0 7F0402A0 A0EF0002 */ sb $t7, 2($a3) /* 074DD4 7F0402A4 8FBF0014 */ lw $ra, 0x14($sp) /* 074DD8 7F0402A8 27BD0018 */ addiu $sp, $sp, 0x18 /* 074DDC 7F0402AC 03E00008 */ jr $ra /* 074DE0 7F0402B0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0402B4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0402B4 /* 074DE4 7F0402B4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 074DE8 7F0402B8 AFBF0014 */ sw $ra, 0x14($sp) /* 074DEC 7F0402BC 8C820004 */ lw $v0, 4($a0) /* 074DF0 7F0402C0 8C4E0008 */ lw $t6, 8($v0) /* 074DF4 7F0402C4 31CF0400 */ andi $t7, $t6, 0x400 /* 074DF8 7F0402C8 55E0000E */ bnezl $t7, .L7F040304 /* 074DFC 7F0402CC 8FBF0014 */ lw $ra, 0x14($sp) /* 074E00 7F0402D0 0FC10027 */ jal set_color_shading_from_tile /* 074E04 7F0402D4 AFA5001C */ sw $a1, 0x1c($sp) /* 074E08 7F0402D8 8FA5001C */ lw $a1, 0x1c($sp) /* 074E0C 7F0402DC 90B80000 */ lbu $t8, ($a1) /* 074E10 7F0402E0 90A80001 */ lbu $t0, 1($a1) /* 074E14 7F0402E4 90AA0002 */ lbu $t2, 2($a1) /* 074E18 7F0402E8 0018C842 */ srl $t9, $t8, 1 /* 074E1C 7F0402EC 00084842 */ srl $t1, $t0, 1 /* 074E20 7F0402F0 000A5842 */ srl $t3, $t2, 1 /* 074E24 7F0402F4 A0B90000 */ sb $t9, ($a1) /* 074E28 7F0402F8 A0A90001 */ sb $t1, 1($a1) /* 074E2C 7F0402FC A0AB0002 */ sb $t3, 2($a1) /* 074E30 7F040300 8FBF0014 */ lw $ra, 0x14($sp) .L7F040304: /* 074E34 7F040304 27BD0018 */ addiu $sp, $sp, 0x18 /* 074E38 7F040308 03E00008 */ jr $ra /* 074E3C 7F04030C 00000000 */ nop ) #endif #ifdef NONMATCHING void update_color_shading(void) { } #else GLOBAL_ASM( .text glabel update_color_shading /* 074E40 7F040310 90880000 */ lbu $t0, ($a0) /* 074E44 7F040314 90AE0000 */ lbu $t6, ($a1) /* 074E48 7F040318 90890001 */ lbu $t1, 1($a0) /* 074E4C 7F04031C 908A0002 */ lbu $t2, 2($a0) /* 074E50 7F040320 01C81023 */ subu $v0, $t6, $t0 /* 074E54 7F040324 244F0007 */ addiu $t7, $v0, 7 /* 074E58 7F040328 000FC0C3 */ sra $t8, $t7, 3 /* 074E5C 7F04032C 01181821 */ addu $v1, $t0, $t8 /* 074E60 7F040330 A0830000 */ sb $v1, ($a0) /* 074E64 7F040334 90B90001 */ lbu $t9, 1($a1) /* 074E68 7F040338 908B0003 */ lbu $t3, 3($a0) /* 074E6C 7F04033C 03291023 */ subu $v0, $t9, $t1 /* 074E70 7F040340 244C0007 */ addiu $t4, $v0, 7 /* 074E74 7F040344 000C68C3 */ sra $t5, $t4, 3 /* 074E78 7F040348 012D1821 */ addu $v1, $t1, $t5 /* 074E7C 7F04034C A0830001 */ sb $v1, 1($a0) /* 074E80 7F040350 90AE0002 */ lbu $t6, 2($a1) /* 074E84 7F040354 01CA1023 */ subu $v0, $t6, $t2 /* 074E88 7F040358 244F0007 */ addiu $t7, $v0, 7 /* 074E8C 7F04035C 000FC0C3 */ sra $t8, $t7, 3 /* 074E90 7F040360 01581821 */ addu $v1, $t2, $t8 /* 074E94 7F040364 A0830002 */ sb $v1, 2($a0) /* 074E98 7F040368 90B90003 */ lbu $t9, 3($a1) /* 074E9C 7F04036C 032B1023 */ subu $v0, $t9, $t3 /* 074EA0 7F040370 244C0007 */ addiu $t4, $v0, 7 /* 074EA4 7F040374 000C68C3 */ sra $t5, $t4, 3 /* 074EA8 7F040378 016D1821 */ addu $v1, $t3, $t5 /* 074EAC 7F04037C 03E00008 */ jr $ra /* 074EB0 7F040380 A0830003 */ sb $v1, 3($a0) ) #endif #ifdef NONMATCHING void sub_GAME_7F040384(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040384 /* 074EB4 7F040384 24010001 */ li $at, 1 /* 074EB8 7F040388 14A1003C */ bne $a1, $at, .L7F04047C /* 074EBC 7F04038C 3C01437F */ li $at, 0x437F0000 # 255.000000 /* 074EC0 7F040390 44811000 */ mtc1 $at, $f2 /* 074EC4 7F040394 C4C40000 */ lwc1 $f4, ($a2) /* 074EC8 7F040398 C4C80004 */ lwc1 $f8, 4($a2) /* 074ECC 7F04039C C4D00008 */ lwc1 $f16, 8($a2) /* 074ED0 7F0403A0 46022182 */ mul.s $f6, $f4, $f2 /* 074ED4 7F0403A4 00000000 */ nop /* 074ED8 7F0403A8 46024282 */ mul.s $f10, $f8, $f2 /* 074EDC 7F0403AC 00000000 */ nop /* 074EE0 7F0403B0 46028482 */ mul.s $f18, $f16, $f2 /* 074EE4 7F0403B4 E4C60000 */ swc1 $f6, ($a2) /* 074EE8 7F0403B8 C4C80000 */ lwc1 $f8, ($a2) /* 074EEC 7F0403BC C4C6000C */ lwc1 $f6, 0xc($a2) /* 074EF0 7F0403C0 E4CA0004 */ swc1 $f10, 4($a2) /* 074EF4 7F0403C4 E4D20008 */ swc1 $f18, 8($a2) /* 074EF8 7F0403C8 8C8E0000 */ lw $t6, ($a0) /* 074EFC 7F0403CC 8C990004 */ lw $t9, 4($a0) /* 074F00 7F0403D0 8C8A0008 */ lw $t2, 8($a0) /* 074F04 7F0403D4 448E2000 */ mtc1 $t6, $f4 /* 074F08 7F0403D8 8C8D000C */ lw $t5, 0xc($a0) /* 074F0C 7F0403DC 46802020 */ cvt.s.w $f0, $f4 /* 074F10 7F0403E0 46004281 */ sub.s $f10, $f8, $f0 /* 074F14 7F0403E4 44994000 */ mtc1 $t9, $f8 /* 074F18 7F0403E8 460A3402 */ mul.s $f16, $f6, $f10 /* 074F1C 7F0403EC 46008480 */ add.s $f18, $f16, $f0 /* 074F20 7F0403F0 46804020 */ cvt.s.w $f0, $f8 /* 074F24 7F0403F4 4600910D */ trunc.w.s $f4, $f18 /* 074F28 7F0403F8 44182000 */ mfc1 $t8, $f4 /* 074F2C 7F0403FC 00000000 */ nop /* 074F30 7F040400 AC980000 */ sw $t8, ($a0) /* 074F34 7F040404 C4CA0004 */ lwc1 $f10, 4($a2) /* 074F38 7F040408 C4C6000C */ lwc1 $f6, 0xc($a2) /* 074F3C 7F04040C 46005401 */ sub.s $f16, $f10, $f0 /* 074F40 7F040410 448A5000 */ mtc1 $t2, $f10 /* 074F44 7F040414 46103482 */ mul.s $f18, $f6, $f16 /* 074F48 7F040418 46009100 */ add.s $f4, $f18, $f0 /* 074F4C 7F04041C 46805020 */ cvt.s.w $f0, $f10 /* 074F50 7F040420 4600220D */ trunc.w.s $f8, $f4 /* 074F54 7F040424 44094000 */ mfc1 $t1, $f8 /* 074F58 7F040428 00000000 */ nop /* 074F5C 7F04042C AC890004 */ sw $t1, 4($a0) /* 074F60 7F040430 C4D00008 */ lwc1 $f16, 8($a2) /* 074F64 7F040434 C4C6000C */ lwc1 $f6, 0xc($a2) /* 074F68 7F040438 46008481 */ sub.s $f18, $f16, $f0 /* 074F6C 7F04043C 448D8000 */ mtc1 $t5, $f16 /* 074F70 7F040440 46123102 */ mul.s $f4, $f6, $f18 /* 074F74 7F040444 46002200 */ add.s $f8, $f4, $f0 /* 074F78 7F040448 46808020 */ cvt.s.w $f0, $f16 /* 074F7C 7F04044C 4600428D */ trunc.w.s $f10, $f8 /* 074F80 7F040450 46001481 */ sub.s $f18, $f2, $f0 /* 074F84 7F040454 440C5000 */ mfc1 $t4, $f10 /* 074F88 7F040458 00000000 */ nop /* 074F8C 7F04045C AC8C0008 */ sw $t4, 8($a0) /* 074F90 7F040460 C4C6000C */ lwc1 $f6, 0xc($a2) /* 074F94 7F040464 46123102 */ mul.s $f4, $f6, $f18 /* 074F98 7F040468 46002200 */ add.s $f8, $f4, $f0 /* 074F9C 7F04046C 4600428D */ trunc.w.s $f10, $f8 /* 074FA0 7F040470 440F5000 */ mfc1 $t7, $f10 /* 074FA4 7F040474 00000000 */ nop /* 074FA8 7F040478 AC8F000C */ sw $t7, 0xc($a0) .L7F04047C: /* 074FAC 7F04047C 03E00008 */ jr $ra /* 074FB0 7F040480 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040484(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040484 /* 074FB4 7F040484 27BDFF98 */ addiu $sp, $sp, -0x68 /* 074FB8 7F040488 AFBF001C */ sw $ra, 0x1c($sp) /* 074FBC 7F04048C AFB00018 */ sw $s0, 0x18($sp) /* 074FC0 7F040490 8C8E0068 */ lw $t6, 0x68($a0) /* 074FC4 7F040494 00808025 */ move $s0, $a0 /* 074FC8 7F040498 51C00028 */ beql $t6, $zero, .L7F04053C /* 074FCC 7F04049C 8FBF001C */ lw $ra, 0x1c($sp) /* 074FD0 7F0404A0 0FC1001E */ jal sub_GAME_7F040078 /* 074FD4 7F0404A4 00000000 */ nop /* 074FD8 7F0404A8 AFA20064 */ sw $v0, 0x64($sp) /* 074FDC 7F0404AC 26040018 */ addiu $a0, $s0, 0x18 /* 074FE0 7F0404B0 0FC16008 */ jal matrix_4x4_copy /* 074FE4 7F0404B4 27A50024 */ addiu $a1, $sp, 0x24 /* 074FE8 7F0404B8 26040058 */ addiu $a0, $s0, 0x58 /* 074FEC 7F0404BC 0FC16266 */ jal matrix_4x4_set_position /* 074FF0 7F0404C0 27A50024 */ addiu $a1, $sp, 0x24 /* 074FF4 7F0404C4 8E070068 */ lw $a3, 0x68($s0) /* 074FF8 7F0404C8 8FA40064 */ lw $a0, 0x64($sp) /* 074FFC 7F0404CC 27A50024 */ addiu $a1, $sp, 0x24 /* 075000 7F0404D0 0FC0FD50 */ jal sub_GAME_7F03F540 /* 075004 7F0404D4 24E60004 */ addiu $a2, $a3, 4 /* 075008 7F0404D8 8FA40064 */ lw $a0, 0x64($sp) /* 07500C 7F0404DC 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 075010 7F0404E0 27A50024 */ addiu $a1, $sp, 0x24 /* 075014 7F0404E4 C604005C */ lwc1 $f4, 0x5c($s0) /* 075018 7F0404E8 8E0F0068 */ lw $t7, 0x68($s0) /* 07501C 7F0404EC 27A50024 */ addiu $a1, $sp, 0x24 /* 075020 7F0404F0 46040180 */ add.s $f6, $f0, $f4 /* 075024 7F0404F4 E5E60048 */ swc1 $f6, 0x48($t7) /* 075028 7F0404F8 0FC0FA97 */ jal sub_GAME_7F03EA5C /* 07502C 7F0404FC 8FA40064 */ lw $a0, 0x64($sp) /* 075030 7F040500 C608005C */ lwc1 $f8, 0x5c($s0) /* 075034 7F040504 8E180068 */ lw $t8, 0x68($s0) /* 075038 7F040508 24010028 */ li $at, 40 /* 07503C 7F04050C 46080280 */ add.s $f10, $f0, $f8 /* 075040 7F040510 E70A0044 */ swc1 $f10, 0x44($t8) /* 075044 7F040514 92190003 */ lbu $t9, 3($s0) /* 075048 7F040518 57210008 */ bnel $t9, $at, .L7F04053C /* 07504C 7F04051C 8FBF001C */ lw $ra, 0x1c($sp) /* 075050 7F040520 8E070068 */ lw $a3, 0x68($s0) /* 075054 7F040524 3C014348 */ li $at, 0x43480000 # 200.000000 /* 075058 7F040528 44819000 */ mtc1 $at, $f18 /* 07505C 7F04052C C4F00048 */ lwc1 $f16, 0x48($a3) /* 075060 7F040530 46128101 */ sub.s $f4, $f16, $f18 /* 075064 7F040534 E4E40048 */ swc1 $f4, 0x48($a3) /* 075068 7F040538 8FBF001C */ lw $ra, 0x1c($sp) .L7F04053C: /* 07506C 7F04053C 8FB00018 */ lw $s0, 0x18($sp) /* 075070 7F040540 27BD0068 */ addiu $sp, $sp, 0x68 /* 075074 7F040544 03E00008 */ jr $ra /* 075078 7F040548 00000000 */ nop ) #endif #ifdef NONMATCHING void init_standard_object(void) { } #else GLOBAL_ASM( .text glabel init_standard_object /* 07507C 7F04054C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 075080 7F040550 AFB10018 */ sw $s1, 0x18($sp) /* 075084 7F040554 AFB00014 */ sw $s0, 0x14($sp) /* 075088 7F040558 00808025 */ move $s0, $a0 /* 07508C 7F04055C 00C08825 */ move $s1, $a2 /* 075090 7F040560 14C00007 */ bnez $a2, .L7F040580 /* 075094 7F040564 AFBF001C */ sw $ra, 0x1c($sp) /* 075098 7F040568 AFA50024 */ sw $a1, 0x24($sp) /* 07509C 7F04056C 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 0750A0 7F040570 AFA7002C */ sw $a3, 0x2c($sp) /* 0750A4 7F040574 8FA50024 */ lw $a1, 0x24($sp) /* 0750A8 7F040578 8FA7002C */ lw $a3, 0x2c($sp) /* 0750AC 7F04057C 00408825 */ move $s1, $v0 .L7F040580: /* 0750B0 7F040580 14E0000C */ bnez $a3, .L7F0405B4 /* 0750B4 7F040584 00000000 */ nop /* 0750B8 7F040588 920E0003 */ lbu $t6, 3($s0) /* 0750BC 7F04058C 24010028 */ li $at, 40 /* 0750C0 7F040590 15C10005 */ bne $t6, $at, .L7F0405A8 /* 0750C4 7F040594 00000000 */ nop /* 0750C8 7F040598 0FC1B08F */ jal get_aircraft_obj_instance_controller /* 0750CC 7F04059C 00A02025 */ move $a0, $a1 /* 0750D0 7F0405A0 10000004 */ b .L7F0405B4 /* 0750D4 7F0405A4 00403825 */ move $a3, $v0 .L7F0405A8: /* 0750D8 7F0405A8 0FC1B025 */ jal get_obj_instance_controller_for_header /* 0750DC 7F0405AC 00A02025 */ move $a0, $a1 /* 0750E0 7F0405B0 00403825 */ move $a3, $v0 .L7F0405B4: /* 0750E4 7F0405B4 12200039 */ beqz $s1, .L7F04069C /* 0750E8 7F0405B8 00000000 */ nop /* 0750EC 7F0405BC 10E00037 */ beqz $a3, .L7F04069C /* 0750F0 7F0405C0 00000000 */ nop /* 0750F4 7F0405C4 8E0F0008 */ lw $t7, 8($s0) /* 0750F8 7F0405C8 AE070014 */ sw $a3, 0x14($s0) /* 0750FC 7F0405CC AE000068 */ sw $zero, 0x68($s0) /* 075100 7F0405D0 31F80100 */ andi $t8, $t7, 0x100 /* 075104 7F0405D4 13000008 */ beqz $t8, .L7F0405F8 /* 075108 7F0405D8 24040050 */ li $a0, 80 /* 07510C 7F0405DC 0C0025C8 */ jal mempAllocBytesInBank /* 075110 7F0405E0 24050004 */ li $a1, 4 /* 075114 7F0405E4 92190002 */ lbu $t9, 2($s0) /* 075118 7F0405E8 AE020068 */ sw $v0, 0x68($s0) /* 07511C 7F0405EC 37280008 */ ori $t0, $t9, 8 /* 075120 7F0405F0 10000004 */ b .L7F040604 /* 075124 7F0405F4 A2080002 */ sb $t0, 2($s0) .L7F0405F8: /* 075128 7F0405F8 92090002 */ lbu $t1, 2($s0) /* 07512C 7F0405FC 312AFFF7 */ andi $t2, $t1, 0xfff7 /* 075130 7F040600 A20A0002 */ sb $t2, 2($s0) .L7F040604: /* 075134 7F040604 44800000 */ mtc1 $zero, $f0 /* 075138 7F040608 8E0C0014 */ lw $t4, 0x14($s0) /* 07513C 7F04060C AE110010 */ sw $s1, 0x10($s0) /* 075140 7F040610 AE00006C */ sw $zero, 0x6c($s0) /* 075144 7F040614 A2000078 */ sb $zero, 0x78($s0) /* 075148 7F040618 A2000079 */ sb $zero, 0x79($s0) /* 07514C 7F04061C A200007A */ sb $zero, 0x7a($s0) /* 075150 7F040620 A200007B */ sb $zero, 0x7b($s0) /* 075154 7F040624 A200007C */ sb $zero, 0x7c($s0) /* 075158 7F040628 A200007D */ sb $zero, 0x7d($s0) /* 07515C 7F04062C A200007E */ sb $zero, 0x7e($s0) /* 075160 7F040630 A200007F */ sb $zero, 0x7f($s0) /* 075164 7F040634 240BFFFF */ li $t3, -1 /* 075168 7F040638 E6000070 */ swc1 $f0, 0x70($s0) /* 07516C 7F04063C A58B0000 */ sh $t3, ($t4) /* 075170 7F040640 8E0D0014 */ lw $t5, 0x14($s0) /* 075174 7F040644 3C058004 */ lui $a1, %hi(PitemZ_entries+8) /* 075178 7F040648 ADA00004 */ sw $zero, 4($t5) /* 07517C 7F04064C 860E0004 */ lh $t6, 4($s0) /* 075180 7F040650 8E040014 */ lw $a0, 0x14($s0) /* 075184 7F040654 000E7880 */ sll $t7, $t6, 2 /* 075188 7F040658 01EE7823 */ subu $t7, $t7, $t6 /* 07518C 7F04065C 000F7880 */ sll $t7, $t7, 2 /* 075190 7F040660 00AF2821 */ addu $a1, $a1, $t7 /* 075194 7F040664 0FC1B39E */ jal set_obj_instance_controller_scale /* 075198 7F040668 8CA5A230 */ lw $a1, %lo(PitemZ_entries+8)($a1) /* 07519C 7F04066C 44800000 */ mtc1 $zero, $f0 /* 0751A0 7F040670 24180001 */ li $t8, 1 /* 0751A4 7F040674 A2380000 */ sb $t8, ($s1) /* 0751A8 7F040678 AE300004 */ sw $s0, 4($s1) /* 0751AC 7F04067C E6200008 */ swc1 $f0, 8($s1) /* 0751B0 7F040680 E6000058 */ swc1 $f0, 0x58($s0) /* 0751B4 7F040684 E620000C */ swc1 $f0, 0xc($s1) /* 0751B8 7F040688 E600005C */ swc1 $f0, 0x5c($s0) /* 0751BC 7F04068C E6200010 */ swc1 $f0, 0x10($s1) /* 0751C0 7F040690 E6000060 */ swc1 $f0, 0x60($s0) /* 0751C4 7F040694 10000012 */ b .L7F0406E0 /* 0751C8 7F040698 AE200014 */ sw $zero, 0x14($s1) .L7F04069C: /* 0751CC 7F04069C 10E0000B */ beqz $a3, .L7F0406CC /* 0751D0 7F0406A0 00000000 */ nop /* 0751D4 7F0406A4 92190003 */ lbu $t9, 3($s0) /* 0751D8 7F0406A8 24010028 */ li $at, 40 /* 0751DC 7F0406AC 17210005 */ bne $t9, $at, .L7F0406C4 /* 0751E0 7F0406B0 00000000 */ nop /* 0751E4 7F0406B4 0FC1B0FE */ jal set_aircraft_obj_inst_scale_to_zero /* 0751E8 7F0406B8 00E02025 */ move $a0, $a3 /* 0751EC 7F0406BC 10000003 */ b .L7F0406CC /* 0751F0 7F0406C0 00000000 */ nop .L7F0406C4: /* 0751F4 7F0406C4 0FC1B08D */ jal set_obj_instance_scale_to_zero /* 0751F8 7F0406C8 00E02025 */ move $a0, $a3 .L7F0406CC: /* 0751FC 7F0406CC 52200005 */ beql $s1, $zero, .L7F0406E4 /* 075200 7F0406D0 8FBF001C */ lw $ra, 0x1c($sp) /* 075204 7F0406D4 0FC0E921 */ jal set_last_obj_pos_data /* 075208 7F0406D8 02202025 */ move $a0, $s1 /* 07520C 7F0406DC 00008825 */ move $s1, $zero .L7F0406E0: /* 075210 7F0406E0 8FBF001C */ lw $ra, 0x1c($sp) .L7F0406E4: /* 075214 7F0406E4 02201025 */ move $v0, $s1 /* 075218 7F0406E8 8FB10018 */ lw $s1, 0x18($sp) /* 07521C 7F0406EC 8FB00014 */ lw $s0, 0x14($sp) /* 075220 7F0406F0 03E00008 */ jr $ra /* 075224 7F0406F4 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F0406F8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0406F8 /* 075228 7F0406F8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 07522C 7F0406FC AFBF0014 */ sw $ra, 0x14($sp) /* 075230 7F040700 00003025 */ move $a2, $zero /* 075234 7F040704 0FC10153 */ jal init_standard_object /* 075238 7F040708 00003825 */ move $a3, $zero /* 07523C 7F04070C 8FBF0014 */ lw $ra, 0x14($sp) /* 075240 7F040710 27BD0018 */ addiu $sp, $sp, 0x18 /* 075244 7F040714 03E00008 */ jr $ra /* 075248 7F040718 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04071C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04071C /* 07524C 7F04071C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 075250 7F040720 AFBF0014 */ sw $ra, 0x14($sp) /* 075254 7F040724 848E0004 */ lh $t6, 4($a0) /* 075258 7F040728 3C058004 */ lui $a1, %hi(PitemZ_entries) /* 07525C 7F04072C 000E7880 */ sll $t7, $t6, 2 /* 075260 7F040730 01EE7823 */ subu $t7, $t7, $t6 /* 075264 7F040734 000F7880 */ sll $t7, $t7, 2 /* 075268 7F040738 00AF2821 */ addu $a1, $a1, $t7 /* 07526C 7F04073C 0FC101BE */ jal sub_GAME_7F0406F8 /* 075270 7F040740 8CA5A228 */ lw $a1, %lo(PitemZ_entries)($a1) /* 075274 7F040744 8FBF0014 */ lw $ra, 0x14($sp) /* 075278 7F040748 27BD0018 */ addiu $sp, $sp, 0x18 /* 07527C 7F04074C 03E00008 */ jr $ra /* 075280 7F040750 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040754(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040754 /* 075284 7F040754 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 075288 7F040758 AFBF001C */ sw $ra, 0x1c($sp) /* 07528C 7F04075C AFB00018 */ sw $s0, 0x18($sp) /* 075290 7F040760 AFA5002C */ sw $a1, 0x2c($sp) /* 075294 7F040764 AFA70034 */ sw $a3, 0x34($sp) /* 075298 7F040768 8C820010 */ lw $v0, 0x10($a0) /* 07529C 7F04076C 00808025 */ move $s0, $a0 /* 0752A0 7F040770 26050018 */ addiu $a1, $s0, 0x18 /* 0752A4 7F040774 00C02025 */ move $a0, $a2 /* 0752A8 7F040778 0FC16008 */ jal matrix_4x4_copy /* 0752AC 7F04077C AFA20024 */ sw $v0, 0x24($sp) /* 0752B0 7F040780 8FA3002C */ lw $v1, 0x2c($sp) /* 0752B4 7F040784 8FA20024 */ lw $v0, 0x24($sp) /* 0752B8 7F040788 2605007C */ addiu $a1, $s0, 0x7c /* 0752BC 7F04078C C4600000 */ lwc1 $f0, ($v1) /* 0752C0 7F040790 E4400008 */ swc1 $f0, 8($v0) /* 0752C4 7F040794 E6000058 */ swc1 $f0, 0x58($s0) /* 0752C8 7F040798 C4600004 */ lwc1 $f0, 4($v1) /* 0752CC 7F04079C E440000C */ swc1 $f0, 0xc($v0) /* 0752D0 7F0407A0 E600005C */ swc1 $f0, 0x5c($s0) /* 0752D4 7F0407A4 C4600008 */ lwc1 $f0, 8($v1) /* 0752D8 7F0407A8 E4400010 */ swc1 $f0, 0x10($v0) /* 0752DC 7F0407AC E6000060 */ swc1 $f0, 0x60($s0) /* 0752E0 7F0407B0 8FAE0034 */ lw $t6, 0x34($sp) /* 0752E4 7F0407B4 AC4E0014 */ sw $t6, 0x14($v0) /* 0752E8 7F0407B8 0FC100AD */ jal sub_GAME_7F0402B4 /* 0752EC 7F0407BC 8E040010 */ lw $a0, 0x10($s0) /* 0752F0 7F0407C0 920F007C */ lbu $t7, 0x7c($s0) /* 0752F4 7F0407C4 9218007D */ lbu $t8, 0x7d($s0) /* 0752F8 7F0407C8 9219007E */ lbu $t9, 0x7e($s0) /* 0752FC 7F0407CC 9208007F */ lbu $t0, 0x7f($s0) /* 075300 7F0407D0 A20F0078 */ sb $t7, 0x78($s0) /* 075304 7F0407D4 A2180079 */ sb $t8, 0x79($s0) /* 075308 7F0407D8 A219007A */ sb $t9, 0x7a($s0) /* 07530C 7F0407DC A208007B */ sb $t0, 0x7b($s0) /* 075310 7F0407E0 8FBF001C */ lw $ra, 0x1c($sp) /* 075314 7F0407E4 8FB00018 */ lw $s0, 0x18($sp) /* 075318 7F0407E8 27BD0028 */ addiu $sp, $sp, 0x28 /* 07531C 7F0407EC 03E00008 */ jr $ra /* 075320 7F0407F0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0407F4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0407F4 /* 075324 7F0407F4 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 075328 7F0407F8 AFBF001C */ sw $ra, 0x1c($sp) /* 07532C 7F0407FC AFB00018 */ sw $s0, 0x18($sp) /* 075330 7F040800 AFA40028 */ sw $a0, 0x28($sp) /* 075334 7F040804 AFA60030 */ sw $a2, 0x30($sp) /* 075338 7F040808 AFA70034 */ sw $a3, 0x34($sp) /* 07533C 7F04080C 8C8F0014 */ lw $t7, 0x14($a0) /* 075340 7F040810 00A08025 */ move $s0, $a1 /* 075344 7F040814 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 075348 7F040818 8DE40008 */ lw $a0, 8($t7) /* 07534C 7F04081C AFA20020 */ sw $v0, 0x20($sp) /* 075350 7F040820 8E060008 */ lw $a2, 8($s0) /* 075354 7F040824 8E050000 */ lw $a1, ($s0) /* 075358 7F040828 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 07535C 7F04082C 8FA40034 */ lw $a0, 0x34($sp) /* 075360 7F040830 3C014080 */ li $at, 0x40800000 # 4.000000 /* 075364 7F040834 44812000 */ mtc1 $at, $f4 /* 075368 7F040838 00000000 */ nop /* 07536C 7F04083C 46040180 */ add.s $f6, $f0, $f4 /* 075370 7F040840 E6060004 */ swc1 $f6, 4($s0) /* 075374 7F040844 8FA50030 */ lw $a1, 0x30($sp) /* 075378 7F040848 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 07537C 7F04084C 8FA40020 */ lw $a0, 0x20($sp) /* 075380 7F040850 C6080004 */ lwc1 $f8, 4($s0) /* 075384 7F040854 02002825 */ move $a1, $s0 /* 075388 7F040858 46004281 */ sub.s $f10, $f8, $f0 /* 07538C 7F04085C E60A0004 */ swc1 $f10, 4($s0) /* 075390 7F040860 8FA70034 */ lw $a3, 0x34($sp) /* 075394 7F040864 8FA60030 */ lw $a2, 0x30($sp) /* 075398 7F040868 0FC101D5 */ jal sub_GAME_7F040754 /* 07539C 7F04086C 8FA40028 */ lw $a0, 0x28($sp) /* 0753A0 7F040870 0FC10121 */ jal sub_GAME_7F040484 /* 0753A4 7F040874 8FA40028 */ lw $a0, 0x28($sp) /* 0753A8 7F040878 8FBF001C */ lw $ra, 0x1c($sp) /* 0753AC 7F04087C 8FB00018 */ lw $s0, 0x18($sp) /* 0753B0 7F040880 27BD0028 */ addiu $sp, $sp, 0x28 /* 0753B4 7F040884 03E00008 */ jr $ra /* 0753B8 7F040888 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04088C(void) { } #else GLOBAL_ASM( .late_rodata glabel D_800529D0 .word 0xA000000 /*"\n"*/ glabel D_800529D4 .word 0x2E0A0000 /*".\n"*/ glabel D_800529D8 .word 0, 0, 0, 0, 0, 0, 0, 0 .word 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 glabel D_80052A38 .word 0 glabel D_80052A3C .word 0 glabel D_80052A40 .word 0xA000000 /*"\n"*/ glabel D_80052A44 .word 0x3A0A0000 /*":\n"*/ glabel D_80052A48 .word 0x3d4ccccd /*0.050000001*/ .late_rodata glabel D_80052A4C .word 0x40490fdb /*3.1415927*/ .text glabel sub_GAME_7F04088C /* 0753BC 7F04088C 27BDFF58 */ addiu $sp, $sp, -0xa8 /* 0753C0 7F040890 AFBF0024 */ sw $ra, 0x24($sp) /* 0753C4 7F040894 AFB00020 */ sw $s0, 0x20($sp) /* 0753C8 7F040898 AFA500AC */ sw $a1, 0xac($sp) /* 0753CC 7F04089C AFA600B0 */ sw $a2, 0xb0($sp) /* 0753D0 7F0408A0 AFA700B4 */ sw $a3, 0xb4($sp) /* 0753D4 7F0408A4 8C8E0014 */ lw $t6, 0x14($a0) /* 0753D8 7F0408A8 00808025 */ move $s0, $a0 /* 0753DC 7F0408AC 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 0753E0 7F0408B0 8DC40008 */ lw $a0, 8($t6) /* 0753E4 7F0408B4 AFA200A0 */ sw $v0, 0xa0($sp) /* 0753E8 7F0408B8 0FC0FA19 */ jal sub_GAME_7F03E864 /* 0753EC 7F0408BC 00402025 */ move $a0, $v0 /* 0753F0 7F0408C0 8FA400A0 */ lw $a0, 0xa0($sp) /* 0753F4 7F0408C4 0FC0FA1B */ jal sub_GAME_7F03E86C /* 0753F8 7F0408C8 E7A0009C */ swc1 $f0, 0x9c($sp) /* 0753FC 7F0408CC 8FA700B4 */ lw $a3, 0xb4($sp) /* 075400 7F0408D0 E7A00098 */ swc1 $f0, 0x98($sp) /* 075404 7F0408D4 C7A2009C */ lwc1 $f2, 0x9c($sp) /* 075408 7F0408D8 AFA70088 */ sw $a3, 0x88($sp) /* 07540C 7F0408DC 8E020008 */ lw $v0, 8($s0) /* 075410 7F0408E0 3C018005 */ lui $at, %hi(D_80052A4C) /* 075414 7F0408E4 27A50048 */ addiu $a1, $sp, 0x48 /* 075418 7F0408E8 304F0004 */ andi $t7, $v0, 4 /* 07541C 7F0408EC 11E00018 */ beqz $t7, .L7F040950 /* 075420 7F0408F0 30580008 */ andi $t8, $v0, 8 /* 075424 7F0408F4 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 075428 7F0408F8 C42C2A4C */ lwc1 $f12, %lo(D_80052A4C)($at) /* 07542C 7F0408FC 8FA400B0 */ lw $a0, 0xb0($sp) /* 075430 7F040900 0FC1601A */ jal matrix_4x4_multiply_in_place /* 075434 7F040904 27A50048 */ addiu $a1, $sp, 0x48 /* 075438 7F040908 C7A00098 */ lwc1 $f0, 0x98($sp) /* 07543C 7F04090C C7A60058 */ lwc1 $f6, 0x58($sp) /* 075440 7F040910 8FA200B8 */ lw $v0, 0xb8($sp) /* 075444 7F040914 C7B2005C */ lwc1 $f18, 0x5c($sp) /* 075448 7F040918 46003202 */ mul.s $f8, $f6, $f0 /* 07544C 7F04091C C4440000 */ lwc1 $f4, ($v0) /* 075450 7F040920 46009182 */ mul.s $f6, $f18, $f0 /* 075454 7F040924 46082281 */ sub.s $f10, $f4, $f8 /* 075458 7F040928 E7AA008C */ swc1 $f10, 0x8c($sp) /* 07545C 7F04092C C4500004 */ lwc1 $f16, 4($v0) /* 075460 7F040930 C7AA0060 */ lwc1 $f10, 0x60($sp) /* 075464 7F040934 46068101 */ sub.s $f4, $f16, $f6 /* 075468 7F040938 46005482 */ mul.s $f18, $f10, $f0 /* 07546C 7F04093C E7A40090 */ swc1 $f4, 0x90($sp) /* 075470 7F040940 C4480008 */ lwc1 $f8, 8($v0) /* 075474 7F040944 46124401 */ sub.s $f16, $f8, $f18 /* 075478 7F040948 10000068 */ b .L7F040AEC /* 07547C 7F04094C E7B00094 */ swc1 $f16, 0x94($sp) .L7F040950: /* 075480 7F040950 13000017 */ beqz $t8, .L7F0409B0 /* 075484 7F040954 8FA200AC */ lw $v0, 0xac($sp) /* 075488 7F040958 8FA400B0 */ lw $a0, 0xb0($sp) /* 07548C 7F04095C 27A50048 */ addiu $a1, $sp, 0x48 /* 075490 7F040960 0FC16008 */ jal matrix_4x4_copy /* 075494 7F040964 E7A2009C */ swc1 $f2, 0x9c($sp) /* 075498 7F040968 C7A2009C */ lwc1 $f2, 0x9c($sp) /* 07549C 7F04096C C7A40058 */ lwc1 $f4, 0x58($sp) /* 0754A0 7F040970 8FA200B8 */ lw $v0, 0xb8($sp) /* 0754A4 7F040974 C7B0005C */ lwc1 $f16, 0x5c($sp) /* 0754A8 7F040978 46022282 */ mul.s $f10, $f4, $f2 /* 0754AC 7F04097C C4460000 */ lwc1 $f6, ($v0) /* 0754B0 7F040980 46028102 */ mul.s $f4, $f16, $f2 /* 0754B4 7F040984 460A3201 */ sub.s $f8, $f6, $f10 /* 0754B8 7F040988 E7A8008C */ swc1 $f8, 0x8c($sp) /* 0754BC 7F04098C C4520004 */ lwc1 $f18, 4($v0) /* 0754C0 7F040990 C7A80060 */ lwc1 $f8, 0x60($sp) /* 0754C4 7F040994 46049181 */ sub.s $f6, $f18, $f4 /* 0754C8 7F040998 46024402 */ mul.s $f16, $f8, $f2 /* 0754CC 7F04099C E7A60090 */ swc1 $f6, 0x90($sp) /* 0754D0 7F0409A0 C44A0008 */ lwc1 $f10, 8($v0) /* 0754D4 7F0409A4 46105481 */ sub.s $f18, $f10, $f16 /* 0754D8 7F0409A8 10000050 */ b .L7F040AEC /* 0754DC 7F0409AC E7B20094 */ swc1 $f18, 0x94($sp) .L7F0409B0: /* 0754E0 7F0409B0 8C450000 */ lw $a1, ($v0) /* 0754E4 7F0409B4 8C460008 */ lw $a2, 8($v0) /* 0754E8 7F0409B8 E7A2009C */ swc1 $f2, 0x9c($sp) /* 0754EC 7F0409BC 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 0754F0 7F0409C0 00E02025 */ move $a0, $a3 /* 0754F4 7F0409C4 8FA400B0 */ lw $a0, 0xb0($sp) /* 0754F8 7F0409C8 27A50048 */ addiu $a1, $sp, 0x48 /* 0754FC 7F0409CC 0FC16008 */ jal matrix_4x4_copy /* 075500 7F0409D0 E7A00040 */ swc1 $f0, 0x40($sp) /* 075504 7F0409D4 C7A2009C */ lwc1 $f2, 0x9c($sp) /* 075508 7F0409D8 C7A60058 */ lwc1 $f6, 0x58($sp) /* 07550C 7F0409DC 8FA200B8 */ lw $v0, 0xb8($sp) /* 075510 7F0409E0 C7B20060 */ lwc1 $f18, 0x60($sp) /* 075514 7F0409E4 46023202 */ mul.s $f8, $f6, $f2 /* 075518 7F0409E8 C4440000 */ lwc1 $f4, ($v0) /* 07551C 7F0409EC 8FB900B4 */ lw $t9, 0xb4($sp) /* 075520 7F0409F0 46029182 */ mul.s $f6, $f18, $f2 /* 075524 7F0409F4 8FA400AC */ lw $a0, 0xac($sp) /* 075528 7F0409F8 46082281 */ sub.s $f10, $f4, $f8 /* 07552C 7F0409FC E7AA008C */ swc1 $f10, 0x8c($sp) /* 075530 7F040A00 C4500008 */ lwc1 $f16, 8($v0) /* 075534 7F040A04 46068101 */ sub.s $f4, $f16, $f6 /* 075538 7F040A08 E7A40094 */ swc1 $f4, 0x94($sp) /* 07553C 7F040A0C 0FC0FEAC */ jal sub_GAME_7F03FAB0 /* 075540 7F040A10 93250003 */ lbu $a1, 3($t9) /* 075544 7F040A14 C7A2009C */ lwc1 $f2, 0x9c($sp) /* 075548 7F040A18 1040002D */ beqz $v0, .L7F040AD0 /* 07554C 7F040A1C C7AC0040 */ lwc1 $f12, 0x40($sp) /* 075550 7F040A20 8C440010 */ lw $a0, 0x10($v0) /* 075554 7F040A24 27A80030 */ addiu $t0, $sp, 0x30 /* 075558 7F040A28 AFA80010 */ sw $t0, 0x10($sp) /* 07555C 7F040A2C E7AC0040 */ swc1 $f12, 0x40($sp) /* 075560 7F040A30 E7A2009C */ swc1 $f2, 0x9c($sp) /* 075564 7F040A34 27A5003C */ addiu $a1, $sp, 0x3c /* 075568 7F040A38 27A60038 */ addiu $a2, $sp, 0x38 /* 07556C 7F040A3C 0FC0F308 */ jal sub_GAME_7F03CC20 /* 075570 7F040A40 27A70034 */ addiu $a3, $sp, 0x34 /* 075574 7F040A44 C7AC0040 */ lwc1 $f12, 0x40($sp) /* 075578 7F040A48 C7A80034 */ lwc1 $f8, 0x34($sp) /* 07557C 7F040A4C C7A2009C */ lwc1 $f2, 0x9c($sp) /* 075580 7F040A50 C7B00098 */ lwc1 $f16, 0x98($sp) /* 075584 7F040A54 4608603C */ c.lt.s $f12, $f8 /* 075588 7F040A58 00000000 */ nop /* 07558C 7F040A5C 45020015 */ bc1fl .L7F040AB4 /* 075590 7F040A60 C7AA005C */ lwc1 $f10, 0x5c($sp) /* 075594 7F040A64 46028181 */ sub.s $f6, $f16, $f2 /* 075598 7F040A68 C7B2005C */ lwc1 $f18, 0x5c($sp) /* 07559C 7F040A6C 3C014080 */ li $at, 0x40800000 # 4.000000 /* 0755A0 7F040A70 C7AA0030 */ lwc1 $f10, 0x30($sp) /* 0755A4 7F040A74 46069102 */ mul.s $f4, $f18, $f6 /* 0755A8 7F040A78 44813000 */ mtc1 $at, $f6 /* 0755AC 7F040A7C 460C2400 */ add.s $f16, $f4, $f12 /* 0755B0 7F040A80 46068100 */ add.s $f4, $f16, $f6 /* 0755B4 7F040A84 4604503C */ c.lt.s $f10, $f4 /* 0755B8 7F040A88 00000000 */ nop /* 0755BC 7F040A8C 45020009 */ bc1fl .L7F040AB4 /* 0755C0 7F040A90 C7AA005C */ lwc1 $f10, 0x5c($sp) /* 0755C4 7F040A94 46029402 */ mul.s $f16, $f18, $f2 /* 0755C8 7F040A98 46104181 */ sub.s $f6, $f8, $f16 /* 0755CC 7F040A9C E7A60090 */ swc1 $f6, 0x90($sp) /* 0755D0 7F040AA0 8E090064 */ lw $t1, 0x64($s0) /* 0755D4 7F040AA4 352A8000 */ ori $t2, $t1, 0x8000 /* 0755D8 7F040AA8 10000010 */ b .L7F040AEC /* 0755DC 7F040AAC AE0A0064 */ sw $t2, 0x64($s0) /* 0755E0 7F040AB0 C7AA005C */ lwc1 $f10, 0x5c($sp) .L7F040AB4: /* 0755E4 7F040AB4 3C014080 */ li $at, 0x40800000 # 4.000000 /* 0755E8 7F040AB8 44814000 */ mtc1 $at, $f8 /* 0755EC 7F040ABC 46025102 */ mul.s $f4, $f10, $f2 /* 0755F0 7F040AC0 46046481 */ sub.s $f18, $f12, $f4 /* 0755F4 7F040AC4 46089400 */ add.s $f16, $f18, $f8 /* 0755F8 7F040AC8 10000008 */ b .L7F040AEC /* 0755FC 7F040ACC E7B00090 */ swc1 $f16, 0x90($sp) .L7F040AD0: /* 075600 7F040AD0 C7A6005C */ lwc1 $f6, 0x5c($sp) /* 075604 7F040AD4 3C014080 */ li $at, 0x40800000 # 4.000000 /* 075608 7F040AD8 44819000 */ mtc1 $at, $f18 /* 07560C 7F040ADC 46023282 */ mul.s $f10, $f6, $f2 /* 075610 7F040AE0 460A6101 */ sub.s $f4, $f12, $f10 /* 075614 7F040AE4 46122200 */ add.s $f8, $f4, $f18 /* 075618 7F040AE8 E7A80090 */ swc1 $f8, 0x90($sp) .L7F040AEC: /* 07561C 7F040AEC 8E0B000C */ lw $t3, 0xc($s0) /* 075620 7F040AF0 8FA200AC */ lw $v0, 0xac($sp) /* 075624 7F040AF4 27A40088 */ addiu $a0, $sp, 0x88 /* 075628 7F040AF8 316C0001 */ andi $t4, $t3, 1 /* 07562C 7F040AFC 1580000E */ bnez $t4, .L7F040B38 /* 075630 7F040B00 8FA7008C */ lw $a3, 0x8c($sp) /* 075634 7F040B04 C7B00094 */ lwc1 $f16, 0x94($sp) /* 075638 7F040B08 8C450000 */ lw $a1, ($v0) /* 07563C 7F040B0C 8C460008 */ lw $a2, 8($v0) /* 075640 7F040B10 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 075644 7F040B14 E7B00010 */ swc1 $f16, 0x10($sp) /* 075648 7F040B18 10400007 */ beqz $v0, .L7F040B38 /* 07564C 7F040B1C 02002025 */ move $a0, $s0 /* 075650 7F040B20 27A5008C */ addiu $a1, $sp, 0x8c /* 075654 7F040B24 27A60048 */ addiu $a2, $sp, 0x48 /* 075658 7F040B28 0FC101D5 */ jal sub_GAME_7F040754 /* 07565C 7F040B2C 8FA70088 */ lw $a3, 0x88($sp) /* 075660 7F040B30 10000014 */ b .L7F040B84 /* 075664 7F040B34 00000000 */ nop .L7F040B38: /* 075668 7F040B38 02002025 */ move $a0, $s0 /* 07566C 7F040B3C 8FA500AC */ lw $a1, 0xac($sp) /* 075670 7F040B40 27A60048 */ addiu $a2, $sp, 0x48 /* 075674 7F040B44 0FC101D5 */ jal sub_GAME_7F040754 /* 075678 7F040B48 8FA700B4 */ lw $a3, 0xb4($sp) /* 07567C 7F040B4C 8E0D000C */ lw $t5, 0xc($s0) /* 075680 7F040B50 C7A6008C */ lwc1 $f6, 0x8c($sp) /* 075684 7F040B54 31AE0001 */ andi $t6, $t5, 1 /* 075688 7F040B58 55C00006 */ bnezl $t6, .L7F040B74 /* 07568C 7F040B5C E6060058 */ swc1 $f6, 0x58($s0) /* 075690 7F040B60 8E0F0008 */ lw $t7, 8($s0) /* 075694 7F040B64 31F81000 */ andi $t8, $t7, 0x1000 /* 075698 7F040B68 13000006 */ beqz $t8, .L7F040B84 /* 07569C 7F040B6C 00000000 */ nop /* 0756A0 7F040B70 E6060058 */ swc1 $f6, 0x58($s0) .L7F040B74: /* 0756A4 7F040B74 C7AA0090 */ lwc1 $f10, 0x90($sp) /* 0756A8 7F040B78 E60A005C */ swc1 $f10, 0x5c($s0) /* 0756AC 7F040B7C C7A40094 */ lwc1 $f4, 0x94($sp) /* 0756B0 7F040B80 E6040060 */ swc1 $f4, 0x60($s0) .L7F040B84: /* 0756B4 7F040B84 0FC10121 */ jal sub_GAME_7F040484 /* 0756B8 7F040B88 02002025 */ move $a0, $s0 /* 0756BC 7F040B8C 8FBF0024 */ lw $ra, 0x24($sp) /* 0756C0 7F040B90 8FB00020 */ lw $s0, 0x20($sp) /* 0756C4 7F040B94 27BD00A8 */ addiu $sp, $sp, 0xa8 /* 0756C8 7F040B98 03E00008 */ jr $ra /* 0756CC 7F040B9C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040BA0(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A50 .word 0x4096cbe4 /*4.712389*/ glabel D_80052A54 .word 0x40490fdb /*3.1415927*/ .text glabel sub_GAME_7F040BA0 /* 0756D0 7F040BA0 27BDFF38 */ addiu $sp, $sp, -0xc8 /* 0756D4 7F040BA4 AFBF0024 */ sw $ra, 0x24($sp) /* 0756D8 7F040BA8 AFB00020 */ sw $s0, 0x20($sp) /* 0756DC 7F040BAC AFA500CC */ sw $a1, 0xcc($sp) /* 0756E0 7F040BB0 AFA600D0 */ sw $a2, 0xd0($sp) /* 0756E4 7F040BB4 AFA700D4 */ sw $a3, 0xd4($sp) /* 0756E8 7F040BB8 8C8E0014 */ lw $t6, 0x14($a0) /* 0756EC 7F040BBC 00808025 */ move $s0, $a0 /* 0756F0 7F040BC0 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 0756F4 7F040BC4 8DC40008 */ lw $a0, 8($t6) /* 0756F8 7F040BC8 0FC0FA1D */ jal sub_GAME_7F03E874 /* 0756FC 7F040BCC 00402025 */ move $a0, $v0 /* 075700 7F040BD0 8FAF00D4 */ lw $t7, 0xd4($sp) /* 075704 7F040BD4 3C018005 */ lui $at, %hi(D_80052A50) /* 075708 7F040BD8 E7A000BC */ swc1 $f0, 0xbc($sp) /* 07570C 7F040BDC C42C2A50 */ lwc1 $f12, %lo(D_80052A50)($at) /* 075710 7F040BE0 27A5006C */ addiu $a1, $sp, 0x6c /* 075714 7F040BE4 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 075718 7F040BE8 AFAF00AC */ sw $t7, 0xac($sp) /* 07571C 7F040BEC 3C018005 */ lui $at, %hi(D_80052A54) /* 075720 7F040BF0 C42C2A54 */ lwc1 $f12, %lo(D_80052A54)($at) /* 075724 7F040BF4 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 075728 7F040BF8 27A5002C */ addiu $a1, $sp, 0x2c /* 07572C 7F040BFC 27A4002C */ addiu $a0, $sp, 0x2c /* 075730 7F040C00 0FC1601A */ jal matrix_4x4_multiply_in_place /* 075734 7F040C04 27A5006C */ addiu $a1, $sp, 0x6c /* 075738 7F040C08 8FA400D0 */ lw $a0, 0xd0($sp) /* 07573C 7F040C0C 0FC1601A */ jal matrix_4x4_multiply_in_place /* 075740 7F040C10 27A5006C */ addiu $a1, $sp, 0x6c /* 075744 7F040C14 C7A000BC */ lwc1 $f0, 0xbc($sp) /* 075748 7F040C18 C7A6008C */ lwc1 $f6, 0x8c($sp) /* 07574C 7F040C1C 8FA200D8 */ lw $v0, 0xd8($sp) /* 075750 7F040C20 C7B20090 */ lwc1 $f18, 0x90($sp) /* 075754 7F040C24 46003202 */ mul.s $f8, $f6, $f0 /* 075758 7F040C28 C4440000 */ lwc1 $f4, ($v0) /* 07575C 7F040C2C 27A400AC */ addiu $a0, $sp, 0xac /* 075760 7F040C30 46009182 */ mul.s $f6, $f18, $f0 /* 075764 7F040C34 46082281 */ sub.s $f10, $f4, $f8 /* 075768 7F040C38 E7AA00B0 */ swc1 $f10, 0xb0($sp) /* 07576C 7F040C3C C4500004 */ lwc1 $f16, 4($v0) /* 075770 7F040C40 C7AA0094 */ lwc1 $f10, 0x94($sp) /* 075774 7F040C44 8FA700B0 */ lw $a3, 0xb0($sp) /* 075778 7F040C48 46068101 */ sub.s $f4, $f16, $f6 /* 07577C 7F040C4C 46005482 */ mul.s $f18, $f10, $f0 /* 075780 7F040C50 E7A400B4 */ swc1 $f4, 0xb4($sp) /* 075784 7F040C54 C4480008 */ lwc1 $f8, 8($v0) /* 075788 7F040C58 8FA200CC */ lw $v0, 0xcc($sp) /* 07578C 7F040C5C 46124401 */ sub.s $f16, $f8, $f18 /* 075790 7F040C60 E7B000B8 */ swc1 $f16, 0xb8($sp) /* 075794 7F040C64 8E18000C */ lw $t8, 0xc($s0) /* 075798 7F040C68 C7A600B8 */ lwc1 $f6, 0xb8($sp) /* 07579C 7F040C6C 33190001 */ andi $t9, $t8, 1 /* 0757A0 7F040C70 5720000E */ bnezl $t9, .L7F040CAC /* 0757A4 7F040C74 02002025 */ move $a0, $s0 /* 0757A8 7F040C78 8C450000 */ lw $a1, ($v0) /* 0757AC 7F040C7C 8C460008 */ lw $a2, 8($v0) /* 0757B0 7F040C80 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 0757B4 7F040C84 E7A60010 */ swc1 $f6, 0x10($sp) /* 0757B8 7F040C88 10400007 */ beqz $v0, .L7F040CA8 /* 0757BC 7F040C8C 02002025 */ move $a0, $s0 /* 0757C0 7F040C90 27A500B0 */ addiu $a1, $sp, 0xb0 /* 0757C4 7F040C94 27A6006C */ addiu $a2, $sp, 0x6c /* 0757C8 7F040C98 0FC101D5 */ jal sub_GAME_7F040754 /* 0757CC 7F040C9C 8FA700AC */ lw $a3, 0xac($sp) /* 0757D0 7F040CA0 1000000C */ b .L7F040CD4 /* 0757D4 7F040CA4 00000000 */ nop .L7F040CA8: /* 0757D8 7F040CA8 02002025 */ move $a0, $s0 .L7F040CAC: /* 0757DC 7F040CAC 8FA500CC */ lw $a1, 0xcc($sp) /* 0757E0 7F040CB0 27A6006C */ addiu $a2, $sp, 0x6c /* 0757E4 7F040CB4 0FC101D5 */ jal sub_GAME_7F040754 /* 0757E8 7F040CB8 8FA700D4 */ lw $a3, 0xd4($sp) /* 0757EC 7F040CBC C7A400B0 */ lwc1 $f4, 0xb0($sp) /* 0757F0 7F040CC0 E6040058 */ swc1 $f4, 0x58($s0) /* 0757F4 7F040CC4 C7AA00B4 */ lwc1 $f10, 0xb4($sp) /* 0757F8 7F040CC8 E60A005C */ swc1 $f10, 0x5c($s0) /* 0757FC 7F040CCC C7A800B8 */ lwc1 $f8, 0xb8($sp) /* 075800 7F040CD0 E6080060 */ swc1 $f8, 0x60($s0) .L7F040CD4: /* 075804 7F040CD4 0FC10121 */ jal sub_GAME_7F040484 /* 075808 7F040CD8 02002025 */ move $a0, $s0 /* 07580C 7F040CDC 8FBF0024 */ lw $ra, 0x24($sp) /* 075810 7F040CE0 8FB00020 */ lw $s0, 0x20($sp) /* 075814 7F040CE4 27BD00C8 */ addiu $sp, $sp, 0xc8 /* 075818 7F040CE8 03E00008 */ jr $ra /* 07581C 7F040CEC 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040CF0(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040CF0 /* 075820 7F040CF0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 075824 7F040CF4 AFBF0014 */ sw $ra, 0x14($sp) /* 075828 7F040CF8 8C820004 */ lw $v0, 4($a0) /* 07582C 7F040CFC 8C430064 */ lw $v1, 0x64($v0) /* 075830 7F040D00 306E0040 */ andi $t6, $v1, 0x40 /* 075834 7F040D04 11C00015 */ beqz $t6, .L7F040D5C /* 075838 7F040D08 30780080 */ andi $t8, $v1, 0x80 /* 07583C 7F040D0C 8C44006C */ lw $a0, 0x6c($v0) /* 075840 7F040D10 5080000E */ beql $a0, $zero, .L7F040D4C /* 075844 7F040D14 2401FFBF */ li $at, -65 /* 075848 7F040D18 8C850044 */ lw $a1, 0x44($a0) /* 07584C 7F040D1C 10A00006 */ beqz $a1, .L7F040D38 /* 075850 7F040D20 00000000 */ nop /* 075854 7F040D24 00A02025 */ move $a0, $a1 /* 075858 7F040D28 0FC0FEDC */ jal sub_GAME_7F03FB70 /* 07585C 7F040D2C AFA2001C */ sw $v0, 0x1c($sp) /* 075860 7F040D30 8FA2001C */ lw $v0, 0x1c($sp) /* 075864 7F040D34 8C44006C */ lw $a0, 0x6c($v0) .L7F040D38: /* 075868 7F040D38 0FC0FFA2 */ jal sub_GAME_7F03FE88 /* 07586C 7F040D3C AFA2001C */ sw $v0, 0x1c($sp) /* 075870 7F040D40 8FA2001C */ lw $v0, 0x1c($sp) /* 075874 7F040D44 8C430064 */ lw $v1, 0x64($v0) /* 075878 7F040D48 2401FFBF */ li $at, -65 .L7F040D4C: /* 07587C 7F040D4C 00617824 */ and $t7, $v1, $at /* 075880 7F040D50 AC40006C */ sw $zero, 0x6c($v0) /* 075884 7F040D54 1000000C */ b .L7F040D88 /* 075888 7F040D58 AC4F0064 */ sw $t7, 0x64($v0) .L7F040D5C: /* 07588C 7F040D5C 5300000B */ beql $t8, $zero, .L7F040D8C /* 075890 7F040D60 8FBF0014 */ lw $ra, 0x14($sp) /* 075894 7F040D64 8C44006C */ lw $a0, 0x6c($v0) /* 075898 7F040D68 0FC0FEDC */ jal sub_GAME_7F03FB70 /* 07589C 7F040D6C AFA2001C */ sw $v0, 0x1c($sp) /* 0758A0 7F040D70 8FA2001C */ lw $v0, 0x1c($sp) /* 0758A4 7F040D74 2401FF7F */ li $at, -129 /* 0758A8 7F040D78 8C590064 */ lw $t9, 0x64($v0) /* 0758AC 7F040D7C AC40006C */ sw $zero, 0x6c($v0) /* 0758B0 7F040D80 03214024 */ and $t0, $t9, $at /* 0758B4 7F040D84 AC480064 */ sw $t0, 0x64($v0) .L7F040D88: /* 0758B8 7F040D88 8FBF0014 */ lw $ra, 0x14($sp) .L7F040D8C: /* 0758BC 7F040D8C 27BD0020 */ addiu $sp, $sp, 0x20 /* 0758C0 7F040D90 03E00008 */ jr $ra /* 0758C4 7F040D94 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F040D98(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F040D98 /* 0758C8 7F040D98 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0758CC 7F040D9C AFBF0024 */ sw $ra, 0x24($sp) /* 0758D0 7F040DA0 AFB20020 */ sw $s2, 0x20($sp) /* 0758D4 7F040DA4 AFB1001C */ sw $s1, 0x1c($sp) /* 0758D8 7F040DA8 AFB00018 */ sw $s0, 0x18($sp) /* 0758DC 7F040DAC AFA5002C */ sw $a1, 0x2c($sp) /* 0758E0 7F040DB0 90820003 */ lbu $v0, 3($a0) /* 0758E4 7F040DB4 2401000D */ li $at, 13 /* 0758E8 7F040DB8 00C08025 */ move $s0, $a2 /* 0758EC 7F040DBC 14410015 */ bne $v0, $at, .L7F040E14 /* 0758F0 7F040DC0 00809025 */ move $s2, $a0 /* 0758F4 7F040DC4 8C8400C4 */ lw $a0, 0xc4($a0) /* 0758F8 7F040DC8 50800008 */ beql $a0, $zero, .L7F040DEC /* 0758FC 7F040DCC 8E4400C8 */ lw $a0, 0xc8($s2) /* 075900 7F040DD0 0C00237C */ jal sfxGetArg0Unk3F /* 075904 7F040DD4 00000000 */ nop /* 075908 7F040DD8 50400004 */ beql $v0, $zero, .L7F040DEC /* 07590C 7F040DDC 8E4400C8 */ lw $a0, 0xc8($s2) /* 075910 7F040DE0 0C002408 */ jal sfxDeactivate /* 075914 7F040DE4 8E4400C4 */ lw $a0, 0xc4($s2) /* 075918 7F040DE8 8E4400C8 */ lw $a0, 0xc8($s2) .L7F040DEC: /* 07591C 7F040DEC 5080004E */ beql $a0, $zero, .L7F040F28 /* 075920 7F040DF0 8E510010 */ lw $s1, 0x10($s2) /* 075924 7F040DF4 0C00237C */ jal sfxGetArg0Unk3F /* 075928 7F040DF8 00000000 */ nop /* 07592C 7F040DFC 5040004A */ beql $v0, $zero, .L7F040F28 /* 075930 7F040E00 8E510010 */ lw $s1, 0x10($s2) /* 075934 7F040E04 0C002408 */ jal sfxDeactivate /* 075938 7F040E08 8E4400C8 */ lw $a0, 0xc8($s2) /* 07593C 7F040E0C 10000046 */ b .L7F040F28 /* 075940 7F040E10 8E510010 */ lw $s1, 0x10($s2) .L7F040E14: /* 075944 7F040E14 24010008 */ li $at, 8 /* 075948 7F040E18 54410008 */ bnel $v0, $at, .L7F040E3C /* 07594C 7F040E1C 24010001 */ li $at, 1 /* 075950 7F040E20 8E420084 */ lw $v0, 0x84($s2) /* 075954 7F040E24 50400040 */ beql $v0, $zero, .L7F040F28 /* 075958 7F040E28 8E510010 */ lw $s1, 0x10($s2) /* 07595C 7F040E2C AC400084 */ sw $zero, 0x84($v0) /* 075960 7F040E30 1000003C */ b .L7F040F24 /* 075964 7F040E34 AE400084 */ sw $zero, 0x84($s2) /* 075968 7F040E38 24010001 */ li $at, 1 .L7F040E3C: /* 07596C 7F040E3C 54410016 */ bnel $v0, $at, .L7F040E98 /* 075970 7F040E40 2401002F */ li $at, 47 /* 075974 7F040E44 8E4400F4 */ lw $a0, 0xf4($s2) /* 075978 7F040E48 50800008 */ beql $a0, $zero, .L7F040E6C /* 07597C 7F040E4C 8E4400F8 */ lw $a0, 0xf8($s2) /* 075980 7F040E50 0C00237C */ jal sfxGetArg0Unk3F /* 075984 7F040E54 00000000 */ nop /* 075988 7F040E58 50400004 */ beql $v0, $zero, .L7F040E6C /* 07598C 7F040E5C 8E4400F8 */ lw $a0, 0xf8($s2) /* 075990 7F040E60 0C002408 */ jal sfxDeactivate /* 075994 7F040E64 8E4400F4 */ lw $a0, 0xf4($s2) /* 075998 7F040E68 8E4400F8 */ lw $a0, 0xf8($s2) .L7F040E6C: /* 07599C 7F040E6C 5080002E */ beql $a0, $zero, .L7F040F28 /* 0759A0 7F040E70 8E510010 */ lw $s1, 0x10($s2) /* 0759A4 7F040E74 0C00237C */ jal sfxGetArg0Unk3F /* 0759A8 7F040E78 00000000 */ nop /* 0759AC 7F040E7C 5040002A */ beql $v0, $zero, .L7F040F28 /* 0759B0 7F040E80 8E510010 */ lw $s1, 0x10($s2) /* 0759B4 7F040E84 0C002408 */ jal sfxDeactivate /* 0759B8 7F040E88 8E4400F8 */ lw $a0, 0xf8($s2) /* 0759BC 7F040E8C 10000026 */ b .L7F040F28 /* 0759C0 7F040E90 8E510010 */ lw $s1, 0x10($s2) /* 0759C4 7F040E94 2401002F */ li $at, 47 .L7F040E98: /* 0759C8 7F040E98 54410009 */ bnel $v0, $at, .L7F040EC0 /* 0759CC 7F040E9C 24010028 */ li $at, 40 /* 0759D0 7F040EA0 8E44008C */ lw $a0, 0x8c($s2) /* 0759D4 7F040EA4 04820020 */ bltzl $a0, .L7F040F28 /* 0759D8 7F040EA8 8E510010 */ lw $s1, 0x10($s2) /* 0759DC 7F040EAC 0FC2E76F */ jal sub_GAME_7F0B9DBC /* 0759E0 7F040EB0 24050001 */ li $a1, 1 /* 0759E4 7F040EB4 1000001C */ b .L7F040F28 /* 0759E8 7F040EB8 8E510010 */ lw $s1, 0x10($s2) /* 0759EC 7F040EBC 24010028 */ li $at, 40 .L7F040EC0: /* 0759F0 7F040EC0 5441000D */ bnel $v0, $at, .L7F040EF8 /* 0759F4 7F040EC4 24010027 */ li $at, 39 /* 0759F8 7F040EC8 8E4400B0 */ lw $a0, 0xb0($s2) /* 0759FC 7F040ECC 50800016 */ beql $a0, $zero, .L7F040F28 /* 075A00 7F040ED0 8E510010 */ lw $s1, 0x10($s2) /* 075A04 7F040ED4 0C00237C */ jal sfxGetArg0Unk3F /* 075A08 7F040ED8 00000000 */ nop /* 075A0C 7F040EDC 50400012 */ beql $v0, $zero, .L7F040F28 /* 075A10 7F040EE0 8E510010 */ lw $s1, 0x10($s2) /* 075A14 7F040EE4 0C002408 */ jal sfxDeactivate /* 075A18 7F040EE8 8E4400B0 */ lw $a0, 0xb0($s2) /* 075A1C 7F040EEC 1000000E */ b .L7F040F28 /* 075A20 7F040EF0 8E510010 */ lw $s1, 0x10($s2) /* 075A24 7F040EF4 24010027 */ li $at, 39 .L7F040EF8: /* 075A28 7F040EF8 5441000B */ bnel $v0, $at, .L7F040F28 /* 075A2C 7F040EFC 8E510010 */ lw $s1, 0x10($s2) /* 075A30 7F040F00 8E4400AC */ lw $a0, 0xac($s2) /* 075A34 7F040F04 50800008 */ beql $a0, $zero, .L7F040F28 /* 075A38 7F040F08 8E510010 */ lw $s1, 0x10($s2) /* 075A3C 7F040F0C 0C00237C */ jal sfxGetArg0Unk3F /* 075A40 7F040F10 00000000 */ nop /* 075A44 7F040F14 50400004 */ beql $v0, $zero, .L7F040F28 /* 075A48 7F040F18 8E510010 */ lw $s1, 0x10($s2) /* 075A4C 7F040F1C 0C002408 */ jal sfxDeactivate /* 075A50 7F040F20 8E4400AC */ lw $a0, 0xac($s2) .L7F040F24: /* 075A54 7F040F24 8E510010 */ lw $s1, 0x10($s2) .L7F040F28: /* 075A58 7F040F28 12200038 */ beqz $s1, .L7F04100C /* 075A5C 7F040F2C 02202025 */ move $a0, $s1 /* 075A60 7F040F30 0FC28333 */ jal sub_GAME_7F0A0CCC /* 075A64 7F040F34 00002825 */ move $a1, $zero /* 075A68 7F040F38 8E440010 */ lw $a0, 0x10($s2) /* 075A6C 7F040F3C 0FC28333 */ jal sub_GAME_7F0A0CCC /* 075A70 7F040F40 24050001 */ li $a1, 1 /* 075A74 7F040F44 56000032 */ bnezl $s0, .L7F041010 /* 075A78 7F040F48 8FBF0024 */ lw $ra, 0x24($sp) /* 075A7C 7F040F4C 0FC1033C */ jal sub_GAME_7F040CF0 /* 075A80 7F040F50 8E440010 */ lw $a0, 0x10($s2) /* 075A84 7F040F54 8E510010 */ lw $s1, 0x10($s2) /* 075A88 7F040F58 8E2E001C */ lw $t6, 0x1c($s1) /* 075A8C 7F040F5C 11C00004 */ beqz $t6, .L7F040F70 /* 075A90 7F040F60 00000000 */ nop /* 075A94 7F040F64 0FC13011 */ jal sub_GAME_7F04C044 /* 075A98 7F040F68 02202025 */ move $a0, $s1 /* 075A9C 7F040F6C 8E510010 */ lw $s1, 0x10($s2) .L7F040F70: /* 075AA0 7F040F70 0FC0F863 */ jal sub_GAME_7F03E18C /* 075AA4 7F040F74 02202025 */ move $a0, $s1 /* 075AA8 7F040F78 8E510010 */ lw $s1, 0x10($s2) /* 075AAC 7F040F7C 8E300020 */ lw $s0, 0x20($s1) /* 075AB0 7F040F80 52000009 */ beql $s0, $zero, .L7F040FA8 /* 075AB4 7F040F84 922F0000 */ lbu $t7, ($s1) .L7F040F88: /* 075AB8 7F040F88 8E110024 */ lw $s1, 0x24($s0) /* 075ABC 7F040F8C 8E040004 */ lw $a0, 4($s0) /* 075AC0 7F040F90 0FC10409 */ jal sub_GAME_7F041024 /* 075AC4 7F040F94 24050001 */ li $a1, 1 /* 075AC8 7F040F98 1620FFFB */ bnez $s1, .L7F040F88 /* 075ACC 7F040F9C 02208025 */ move $s0, $s1 /* 075AD0 7F040FA0 8E510010 */ lw $s1, 0x10($s2) /* 075AD4 7F040FA4 922F0000 */ lbu $t7, ($s1) .L7F040FA8: /* 075AD8 7F040FA8 24010002 */ li $at, 2 /* 075ADC 7F040FAC 51E10004 */ beql $t7, $at, .L7F040FC0 /* 075AE0 7F040FB0 92580003 */ lbu $t8, 3($s2) /* 075AE4 7F040FB4 0FC1437A */ jal sub_GAME_7F050DE8 /* 075AE8 7F040FB8 8E440014 */ lw $a0, 0x14($s2) /* 075AEC 7F040FBC 92580003 */ lbu $t8, 3($s2) .L7F040FC0: /* 075AF0 7F040FC0 24010028 */ li $at, 40 /* 075AF4 7F040FC4 17010005 */ bne $t8, $at, .L7F040FDC /* 075AF8 7F040FC8 00000000 */ nop /* 075AFC 7F040FCC 0FC1B0FE */ jal set_aircraft_obj_inst_scale_to_zero /* 075B00 7F040FD0 8E440014 */ lw $a0, 0x14($s2) /* 075B04 7F040FD4 10000004 */ b .L7F040FE8 /* 075B08 7F040FD8 8FB9002C */ lw $t9, 0x2c($sp) .L7F040FDC: /* 075B0C 7F040FDC 0FC1B08D */ jal set_obj_instance_scale_to_zero /* 075B10 7F040FE0 8E440014 */ lw $a0, 0x14($s2) /* 075B14 7F040FE4 8FB9002C */ lw $t9, 0x2c($sp) .L7F040FE8: /* 075B18 7F040FE8 53200008 */ beql $t9, $zero, .L7F04100C /* 075B1C 7F040FEC AE400010 */ sw $zero, 0x10($s2) /* 075B20 7F040FF0 0FC0E94E */ jal sub_GAME_7F03A538 /* 075B24 7F040FF4 8E440010 */ lw $a0, 0x10($s2) /* 075B28 7F040FF8 0FC0E905 */ jal unset_stateflag_0x04_for_posdata /* 075B2C 7F040FFC 8E440010 */ lw $a0, 0x10($s2) /* 075B30 7F041000 0FC0E921 */ jal set_last_obj_pos_data /* 075B34 7F041004 8E440010 */ lw $a0, 0x10($s2) /* 075B38 7F041008 AE400010 */ sw $zero, 0x10($s2) .L7F04100C: /* 075B3C 7F04100C 8FBF0024 */ lw $ra, 0x24($sp) .L7F041010: /* 075B40 7F041010 8FB00018 */ lw $s0, 0x18($sp) /* 075B44 7F041014 8FB1001C */ lw $s1, 0x1c($sp) /* 075B48 7F041018 8FB20020 */ lw $s2, 0x20($sp) /* 075B4C 7F04101C 03E00008 */ jr $ra /* 075B50 7F041020 27BD0028 */ addiu $sp, $sp, 0x28 ) #endif #ifdef NONMATCHING void sub_GAME_7F041024(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041024 /* 075B54 7F041024 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 075B58 7F041028 AFBF0014 */ sw $ra, 0x14($sp) /* 075B5C 7F04102C 0FC10366 */ jal sub_GAME_7F040D98 /* 075B60 7F041030 00003025 */ move $a2, $zero /* 075B64 7F041034 8FBF0014 */ lw $ra, 0x14($sp) /* 075B68 7F041038 27BD0018 */ addiu $sp, $sp, 0x18 /* 075B6C 7F04103C 03E00008 */ jr $ra /* 075B70 7F041040 00000000 */ nop ) #endif #ifdef NONMATCHING void if_a0_plus_3_is_4_then_10_else_20(void) { } #else GLOBAL_ASM( .text glabel if_a0_plus_3_is_4_then_10_else_20 /* 075B74 7F041044 908E0003 */ lbu $t6, 3($a0) /* 075B78 7F041048 24010004 */ li $at, 4 /* 075B7C 7F04104C 15C10004 */ bne $t6, $at, .L7F041060 /* 075B80 7F041050 3C0141A0 */ li $at, 0x41A00000 # 20.000000 /* 075B84 7F041054 44810000 */ mtc1 $at, $f0 /* 075B88 7F041058 03E00008 */ jr $ra /* 075B8C 7F04105C 00000000 */ nop .L7F041060: /* 075B90 7F041060 3C014120 */ li $at, 0x41200000 # 10.000000 /* 075B94 7F041064 44810000 */ mtc1 $at, $f0 /* 075B98 7F041068 00000000 */ nop /* 075B9C 7F04106C 03E00008 */ jr $ra /* 075BA0 7F041070 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F041074(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041074 /* 075BA4 7F041074 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 075BA8 7F041078 AFA70024 */ sw $a3, 0x24($sp) /* 075BAC 7F04107C C48A0000 */ lwc1 $f10, ($a0) /* 075BB0 7F041080 C4C80000 */ lwc1 $f8, ($a2) /* 075BB4 7F041084 00001025 */ move $v0, $zero /* 075BB8 7F041088 460A4181 */ sub.s $f6, $f8, $f10 /* 075BBC 7F04108C E7A6000C */ swc1 $f6, 0xc($sp) /* 075BC0 7F041090 C4880004 */ lwc1 $f8, 4($a0) /* 075BC4 7F041094 C4C40004 */ lwc1 $f4, 4($a2) /* 075BC8 7F041098 46082281 */ sub.s $f10, $f4, $f8 /* 075BCC 7F04109C E7AA0010 */ swc1 $f10, 0x10($sp) /* 075BD0 7F0410A0 C4840008 */ lwc1 $f4, 8($a0) /* 075BD4 7F0410A4 C4C60008 */ lwc1 $f6, 8($a2) /* 075BD8 7F0410A8 C7AA000C */ lwc1 $f10, 0xc($sp) /* 075BDC 7F0410AC 46043201 */ sub.s $f8, $f6, $f4 /* 075BE0 7F0410B0 C7A40010 */ lwc1 $f4, 0x10($sp) /* 075BE4 7F0410B4 E7A80014 */ swc1 $f8, 0x14($sp) /* 075BE8 7F0410B8 C4AC0000 */ lwc1 $f12, ($a1) /* 075BEC 7F0410BC C4AE0004 */ lwc1 $f14, 4($a1) /* 075BF0 7F0410C0 C4A20008 */ lwc1 $f2, 8($a1) /* 075BF4 7F0410C4 460A6182 */ mul.s $f6, $f12, $f10 /* 075BF8 7F0410C8 E7AA0000 */ swc1 $f10, ($sp) /* 075BFC 7F0410CC 46047202 */ mul.s $f8, $f14, $f4 /* 075C00 7F0410D0 46083180 */ add.s $f6, $f6, $f8 /* 075C04 7F0410D4 C7A80014 */ lwc1 $f8, 0x14($sp) /* 075C08 7F0410D8 46024282 */ mul.s $f10, $f8, $f2 /* 075C0C 7F0410DC 46065000 */ add.s $f0, $f10, $f6 /* 075C10 7F0410E0 44805000 */ mtc1 $zero, $f10 /* 075C14 7F0410E4 00000000 */ nop /* 075C18 7F0410E8 4600503C */ c.lt.s $f10, $f0 /* 075C1C 7F0410EC 00000000 */ nop /* 075C20 7F0410F0 45000019 */ bc1f .L7F041158 /* 075C24 7F0410F4 00000000 */ nop /* 075C28 7F0410F8 460C6182 */ mul.s $f6, $f12, $f12 /* 075C2C 7F0410FC 00000000 */ nop /* 075C30 7F041100 460E7282 */ mul.s $f10, $f14, $f14 /* 075C34 7F041104 460A3180 */ add.s $f6, $f6, $f10 /* 075C38 7F041108 46021282 */ mul.s $f10, $f2, $f2 /* 075C3C 7F04110C 46065400 */ add.s $f16, $f10, $f6 /* 075C40 7F041110 C7AA0000 */ lwc1 $f10, ($sp) /* 075C44 7F041114 460A5182 */ mul.s $f6, $f10, $f10 /* 075C48 7F041118 00000000 */ nop /* 075C4C 7F04111C 46042282 */ mul.s $f10, $f4, $f4 /* 075C50 7F041120 460A3100 */ add.s $f4, $f6, $f10 /* 075C54 7F041124 46084182 */ mul.s $f6, $f8, $f8 /* 075C58 7F041128 C7A80024 */ lwc1 $f8, 0x24($sp) /* 075C5C 7F04112C 46000282 */ mul.s $f10, $f0, $f0 /* 075C60 7F041130 46043480 */ add.s $f18, $f6, $f4 /* 075C64 7F041134 46084182 */ mul.s $f6, $f8, $f8 /* 075C68 7F041138 46069101 */ sub.s $f4, $f18, $f6 /* 075C6C 7F04113C 46102202 */ mul.s $f8, $f4, $f16 /* 075C70 7F041140 460A403E */ c.le.s $f8, $f10 /* 075C74 7F041144 00000000 */ nop /* 075C78 7F041148 45000003 */ bc1f .L7F041158 /* 075C7C 7F04114C 00000000 */ nop /* 075C80 7F041150 10000001 */ b .L7F041158 /* 075C84 7F041154 24020001 */ li $v0, 1 .L7F041158: /* 075C88 7F041158 03E00008 */ jr $ra /* 075C8C 7F04115C 27BD0018 */ addiu $sp, $sp, 0x18 ) #endif #ifdef NONMATCHING void sub_GAME_7F041160(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041160 /* 075C90 7F041160 27BDFF58 */ addiu $sp, $sp, -0xa8 /* 075C94 7F041164 AFBF0044 */ sw $ra, 0x44($sp) /* 075C98 7F041168 AFB70040 */ sw $s7, 0x40($sp) /* 075C9C 7F04116C AFB6003C */ sw $s6, 0x3c($sp) /* 075CA0 7F041170 AFB50038 */ sw $s5, 0x38($sp) /* 075CA4 7F041174 AFB40034 */ sw $s4, 0x34($sp) /* 075CA8 7F041178 AFB30030 */ sw $s3, 0x30($sp) /* 075CAC 7F04117C AFB2002C */ sw $s2, 0x2c($sp) /* 075CB0 7F041180 AFB10028 */ sw $s1, 0x28($sp) /* 075CB4 7F041184 AFB00024 */ sw $s0, 0x24($sp) /* 075CB8 7F041188 AFA700B4 */ sw $a3, 0xb4($sp) /* 075CBC 7F04118C 8C970014 */ lw $s7, 0x14($a0) /* 075CC0 7F041190 AFA0009C */ sw $zero, 0x9c($sp) /* 075CC4 7F041194 AFA00064 */ sw $zero, 0x64($sp) /* 075CC8 7F041198 908E0003 */ lbu $t6, 3($a0) /* 075CCC 7F04119C 24010001 */ li $at, 1 /* 075CD0 7F0411A0 00A08825 */ move $s1, $a1 /* 075CD4 7F0411A4 15C1001A */ bne $t6, $at, .L7F041210 /* 075CD8 7F0411A8 00C09825 */ move $s3, $a2 /* 075CDC 7F0411AC 248400D0 */ addiu $a0, $a0, 0xd0 /* 075CE0 7F0411B0 8EE5000C */ lw $a1, 0xc($s7) /* 075CE4 7F0411B4 02203025 */ move $a2, $s1 /* 075CE8 7F0411B8 0FC1D1F4 */ jal sub_GAME_7F0747D0 /* 075CEC 7F0411BC 02603825 */ move $a3, $s3 /* 075CF0 7F0411C0 8EEF0008 */ lw $t7, 8($s7) /* 075CF4 7F0411C4 00408025 */ move $s0, $v0 /* 075CF8 7F0411C8 27B4006C */ addiu $s4, $sp, 0x6c /* 075CFC 7F0411CC 8DF80000 */ lw $t8, ($t7) /* 075D00 7F0411D0 27B50068 */ addiu $s5, $sp, 0x68 /* 075D04 7F0411D4 18400025 */ blez $v0, .L7F04126C /* 075D08 7F0411D8 AFB8009C */ sw $t8, 0x9c($sp) /* 075D0C 7F0411DC 27B60064 */ addiu $s6, $sp, 0x64 /* 075D10 7F0411E0 AFB60018 */ sw $s6, 0x18($sp) /* 075D14 7F0411E4 02E02025 */ move $a0, $s7 /* 075D18 7F0411E8 03002825 */ move $a1, $t8 /* 075D1C 7F0411EC 02203025 */ move $a2, $s1 /* 075D20 7F0411F0 02603825 */ move $a3, $s3 /* 075D24 7F0411F4 AFB40010 */ sw $s4, 0x10($sp) /* 075D28 7F0411F8 0FC1366C */ jal sub_GAME_7F04D9B0 /* 075D2C 7F0411FC AFB50014 */ sw $s5, 0x14($sp) /* 075D30 7F041200 1440001A */ bnez $v0, .L7F04126C /* 075D34 7F041204 00000000 */ nop /* 075D38 7F041208 10000018 */ b .L7F04126C /* 075D3C 7F04120C 00008025 */ move $s0, $zero .L7F041210: /* 075D40 7F041210 27B60064 */ addiu $s6, $sp, 0x64 /* 075D44 7F041214 27B50068 */ addiu $s5, $sp, 0x68 /* 075D48 7F041218 27B4006C */ addiu $s4, $sp, 0x6c /* 075D4C 7F04121C 27B2009C */ addiu $s2, $sp, 0x9c /* 075D50 7F041220 02E02025 */ move $a0, $s7 .L7F041224: /* 075D54 7F041224 02202825 */ move $a1, $s1 /* 075D58 7F041228 02603025 */ move $a2, $s3 /* 075D5C 7F04122C 0FC1D4BF */ jal sub_GAME_7F0752FC /* 075D60 7F041230 02403825 */ move $a3, $s2 /* 075D64 7F041234 1840000B */ blez $v0, .L7F041264 /* 075D68 7F041238 00408025 */ move $s0, $v0 /* 075D6C 7F04123C 02E02025 */ move $a0, $s7 /* 075D70 7F041240 8FA5009C */ lw $a1, 0x9c($sp) /* 075D74 7F041244 02203025 */ move $a2, $s1 /* 075D78 7F041248 02603825 */ move $a3, $s3 /* 075D7C 7F04124C AFB40010 */ sw $s4, 0x10($sp) /* 075D80 7F041250 AFB50014 */ sw $s5, 0x14($sp) /* 075D84 7F041254 0FC1366C */ jal sub_GAME_7F04D9B0 /* 075D88 7F041258 AFB60018 */ sw $s6, 0x18($sp) /* 075D8C 7F04125C 14400003 */ bnez $v0, .L7F04126C /* 075D90 7F041260 00000000 */ nop .L7F041264: /* 075D94 7F041264 5E00FFEF */ bgtzl $s0, .L7F041224 /* 075D98 7F041268 02E02025 */ move $a0, $s7 .L7F04126C: /* 075D9C 7F04126C 1A000059 */ blez $s0, .L7F0413D4 /* 075DA0 7F041270 00001025 */ move $v0, $zero /* 075DA4 7F041274 C7A4006C */ lwc1 $f4, 0x6c($sp) /* 075DA8 7F041278 8FA500B4 */ lw $a1, 0xb4($sp) /* 075DAC 7F04127C 8EF9000C */ lw $t9, 0xc($s7) /* 075DB0 7F041280 8FA80068 */ lw $t0, 0x68($sp) /* 075DB4 7F041284 E4A40000 */ swc1 $f4, ($a1) /* 075DB8 7F041288 C7A60070 */ lwc1 $f6, 0x70($sp) /* 075DBC 7F04128C 00084980 */ sll $t1, $t0, 6 /* 075DC0 7F041290 03298821 */ addu $s1, $t9, $t1 /* 075DC4 7F041294 E4A60004 */ swc1 $f6, 4($a1) /* 075DC8 7F041298 C7A80074 */ lwc1 $f8, 0x74($sp) /* 075DCC 7F04129C 02202025 */ move $a0, $s1 /* 075DD0 7F0412A0 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 075DD4 7F0412A4 E4A80008 */ swc1 $f8, 8($a1) /* 075DD8 7F0412A8 0FC1E111 */ jal sub_GAME_7F078444 /* 075DDC 7F0412AC 00000000 */ nop /* 075DE0 7F0412B0 00402025 */ move $a0, $v0 /* 075DE4 7F0412B4 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 075DE8 7F0412B8 8FA500B4 */ lw $a1, 0xb4($sp) /* 075DEC 7F0412BC 8FB000B8 */ lw $s0, 0xb8($sp) /* 075DF0 7F0412C0 C7AA0078 */ lwc1 $f10, 0x78($sp) /* 075DF4 7F0412C4 02202025 */ move $a0, $s1 /* 075DF8 7F0412C8 02002825 */ move $a1, $s0 /* 075DFC 7F0412CC E60A0000 */ swc1 $f10, ($s0) /* 075E00 7F0412D0 C7B0007C */ lwc1 $f16, 0x7c($sp) /* 075E04 7F0412D4 E6100004 */ swc1 $f16, 4($s0) /* 075E08 7F0412D8 C7B20080 */ lwc1 $f18, 0x80($sp) /* 075E0C 7F0412DC 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 075E10 7F0412E0 E6120008 */ swc1 $f18, 8($s0) /* 075E14 7F0412E4 C6020000 */ lwc1 $f2, ($s0) /* 075E18 7F0412E8 C6640000 */ lwc1 $f4, ($s3) /* 075E1C 7F0412EC C60C0004 */ lwc1 $f12, 4($s0) /* 075E20 7F0412F0 C6680004 */ lwc1 $f8, 4($s3) /* 075E24 7F0412F4 46041182 */ mul.s $f6, $f2, $f4 /* 075E28 7F0412F8 C6000008 */ lwc1 $f0, 8($s0) /* 075E2C 7F0412FC C6720008 */ lwc1 $f18, 8($s3) /* 075E30 7F041300 46086282 */ mul.s $f10, $f12, $f8 /* 075E34 7F041304 44807000 */ mtc1 $zero, $f14 /* 075E38 7F041308 46009102 */ mul.s $f4, $f18, $f0 /* 075E3C 7F04130C 460A3400 */ add.s $f16, $f6, $f10 /* 075E40 7F041310 46102200 */ add.s $f8, $f4, $f16 /* 075E44 7F041314 4608703C */ c.lt.s $f14, $f8 /* 075E48 7F041318 00000000 */ nop /* 075E4C 7F04131C 45000007 */ bc1f .L7F04133C /* 075E50 7F041320 00000000 */ nop /* 075E54 7F041324 46001187 */ neg.s $f6, $f2 /* 075E58 7F041328 46006287 */ neg.s $f10, $f12 /* 075E5C 7F04132C 46000487 */ neg.s $f18, $f0 /* 075E60 7F041330 E6060000 */ swc1 $f6, ($s0) /* 075E64 7F041334 E60A0004 */ swc1 $f10, 4($s0) /* 075E68 7F041338 E6120008 */ swc1 $f18, 8($s0) .L7F04133C: /* 075E6C 7F04133C 0FC1E111 */ jal sub_GAME_7F078444 /* 075E70 7F041340 00000000 */ nop /* 075E74 7F041344 00402025 */ move $a0, $v0 /* 075E78 7F041348 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 075E7C 7F04134C 02002825 */ move $a1, $s0 /* 075E80 7F041350 44807000 */ mtc1 $zero, $f14 /* 075E84 7F041354 C6040000 */ lwc1 $f4, ($s0) /* 075E88 7F041358 02002025 */ move $a0, $s0 /* 075E8C 7F04135C 26050004 */ addiu $a1, $s0, 4 /* 075E90 7F041360 46047032 */ c.eq.s $f14, $f4 /* 075E94 7F041364 00000000 */ nop /* 075E98 7F041368 4500000C */ bc1f .L7F04139C /* 075E9C 7F04136C 00000000 */ nop /* 075EA0 7F041370 C6100004 */ lwc1 $f16, 4($s0) /* 075EA4 7F041374 46107032 */ c.eq.s $f14, $f16 /* 075EA8 7F041378 00000000 */ nop /* 075EAC 7F04137C 45000007 */ bc1f .L7F04139C /* 075EB0 7F041380 00000000 */ nop /* 075EB4 7F041384 C6080008 */ lwc1 $f8, 8($s0) /* 075EB8 7F041388 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 075EBC 7F04138C 46087032 */ c.eq.s $f14, $f8 /* 075EC0 7F041390 00000000 */ nop /* 075EC4 7F041394 45030006 */ bc1tl .L7F0413B0 /* 075EC8 7F041398 44813000 */ mtc1 $at, $f6 .L7F04139C: /* 075ECC 7F04139C 0C007DD4 */ jal guNormalize /* 075ED0 7F0413A0 26060008 */ addiu $a2, $s0, 8 /* 075ED4 7F0413A4 10000005 */ b .L7F0413BC /* 075ED8 7F0413A8 8FAB00BC */ lw $t3, 0xbc($sp) /* 075EDC 7F0413AC 44813000 */ mtc1 $at, $f6 .L7F0413B0: /* 075EE0 7F0413B0 00000000 */ nop /* 075EE4 7F0413B4 E6060008 */ swc1 $f6, 8($s0) /* 075EE8 7F0413B8 8FAB00BC */ lw $t3, 0xbc($sp) .L7F0413BC: /* 075EEC 7F0413BC 24020001 */ li $v0, 1 /* 075EF0 7F0413C0 AD770000 */ sw $s7, ($t3) /* 075EF4 7F0413C4 8FAD00C0 */ lw $t5, 0xc0($sp) /* 075EF8 7F0413C8 8FAC0064 */ lw $t4, 0x64($sp) /* 075EFC 7F0413CC 10000001 */ b .L7F0413D4 /* 075F00 7F0413D0 ADAC0000 */ sw $t4, ($t5) .L7F0413D4: /* 075F04 7F0413D4 8FBF0044 */ lw $ra, 0x44($sp) /* 075F08 7F0413D8 8FB00024 */ lw $s0, 0x24($sp) /* 075F0C 7F0413DC 8FB10028 */ lw $s1, 0x28($sp) /* 075F10 7F0413E0 8FB2002C */ lw $s2, 0x2c($sp) /* 075F14 7F0413E4 8FB30030 */ lw $s3, 0x30($sp) /* 075F18 7F0413E8 8FB40034 */ lw $s4, 0x34($sp) /* 075F1C 7F0413EC 8FB50038 */ lw $s5, 0x38($sp) /* 075F20 7F0413F0 8FB6003C */ lw $s6, 0x3c($sp) /* 075F24 7F0413F4 8FB70040 */ lw $s7, 0x40($sp) /* 075F28 7F0413F8 03E00008 */ jr $ra /* 075F2C 7F0413FC 27BD00A8 */ addiu $sp, $sp, 0xa8 ) #endif #ifdef NONMATCHING void sub_GAME_7F041400(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041400 /* 075F30 7F041400 27BDFF28 */ addiu $sp, $sp, -0xd8 /* 075F34 7F041404 AFB50044 */ sw $s5, 0x44($sp) /* 075F38 7F041408 AFB40040 */ sw $s4, 0x40($sp) /* 075F3C 7F04140C F7B40028 */ sdc1 $f20, 0x28($sp) /* 075F40 7F041410 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 075F44 7F041414 00C0A025 */ move $s4, $a2 /* 075F48 7F041418 00A0A825 */ move $s5, $a1 /* 075F4C 7F04141C AFBF0054 */ sw $ra, 0x54($sp) /* 075F50 7F041420 AFA700E4 */ sw $a3, 0xe4($sp) /* 075F54 7F041424 4481A000 */ mtc1 $at, $f20 /* 075F58 7F041428 240EFFFF */ li $t6, -1 /* 075F5C 7F04142C 27AF00C8 */ addiu $t7, $sp, 0xc8 /* 075F60 7F041430 AFBE0050 */ sw $fp, 0x50($sp) /* 075F64 7F041434 AFB7004C */ sw $s7, 0x4c($sp) /* 075F68 7F041438 AFB60048 */ sw $s6, 0x48($sp) /* 075F6C 7F04143C AFB3003C */ sw $s3, 0x3c($sp) /* 075F70 7F041440 AFB20038 */ sw $s2, 0x38($sp) /* 075F74 7F041444 AFB10034 */ sw $s1, 0x34($sp) /* 075F78 7F041448 AFB00030 */ sw $s0, 0x30($sp) /* 075F7C 7F04144C AFA400D8 */ sw $a0, 0xd8($sp) /* 075F80 7F041450 AFAE0094 */ sw $t6, 0x94($sp) /* 075F84 7F041454 AFAF0010 */ sw $t7, 0x10($sp) /* 075F88 7F041458 27A700CC */ addiu $a3, $sp, 0xcc /* 075F8C 7F04145C 27A500D4 */ addiu $a1, $sp, 0xd4 /* 075F90 7F041460 0FC0F308 */ jal sub_GAME_7F03CC20 /* 075F94 7F041464 27A600D0 */ addiu $a2, $sp, 0xd0 /* 075F98 7F041468 8FB800D0 */ lw $t8, 0xd0($sp) /* 075F9C 7F04146C C7A400CC */ lwc1 $f4, 0xcc($sp) /* 075FA0 7F041470 5B0000CD */ blezl $t8, .L7F0417A8 /* 075FA4 7F041474 00001025 */ move $v0, $zero /* 075FA8 7F041478 C6A00004 */ lwc1 $f0, 4($s5) /* 075FAC 7F04147C C7A800C8 */ lwc1 $f8, 0xc8($sp) /* 075FB0 7F041480 4600203C */ c.lt.s $f4, $f0 /* 075FB4 7F041484 00000000 */ nop /* 075FB8 7F041488 45020007 */ bc1fl .L7F0414A8 /* 075FBC 7F04148C 4608003C */ c.lt.s $f0, $f8 /* 075FC0 7F041490 C6860004 */ lwc1 $f6, 4($s4) /* 075FC4 7F041494 4606203C */ c.lt.s $f4, $f6 /* 075FC8 7F041498 00000000 */ nop /* 075FCC 7F04149C 450300C2 */ bc1tl .L7F0417A8 /* 075FD0 7F0414A0 00001025 */ move $v0, $zero /* 075FD4 7F0414A4 4608003C */ c.lt.s $f0, $f8 .L7F0414A8: /* 075FD8 7F0414A8 00000000 */ nop /* 075FDC 7F0414AC 45020007 */ bc1fl .L7F0414CC /* 075FE0 7F0414B0 C6B00000 */ lwc1 $f16, ($s5) /* 075FE4 7F0414B4 C68A0004 */ lwc1 $f10, 4($s4) /* 075FE8 7F0414B8 4608503C */ c.lt.s $f10, $f8 /* 075FEC 7F0414BC 00000000 */ nop /* 075FF0 7F0414C0 450300B9 */ bc1tl .L7F0417A8 /* 075FF4 7F0414C4 00001025 */ move $v0, $zero /* 075FF8 7F0414C8 C6B00000 */ lwc1 $f16, ($s5) .L7F0414CC: /* 075FFC 7F0414CC 8FB900D0 */ lw $t9, 0xd0($sp) /* 076000 7F0414D0 00008025 */ move $s0, $zero /* 076004 7F0414D4 E7B000A0 */ swc1 $f16, 0xa0($sp) /* 076008 7F0414D8 C6B20008 */ lwc1 $f18, 8($s5) /* 07600C 7F0414DC E7B200A4 */ swc1 $f18, 0xa4($sp) /* 076010 7F0414E0 C6840000 */ lwc1 $f4, ($s4) /* 076014 7F0414E4 E7A40098 */ swc1 $f4, 0x98($sp) /* 076018 7F0414E8 C6860008 */ lwc1 $f6, 8($s4) /* 07601C 7F0414EC 1B200043 */ blez $t9, .L7F0415FC /* 076020 7F0414F0 E7A6009C */ swc1 $f6, 0x9c($sp) /* 076024 7F0414F4 00008825 */ move $s1, $zero /* 076028 7F0414F8 27BE00B0 */ addiu $fp, $sp, 0xb0 /* 07602C 7F0414FC 27B70098 */ addiu $s7, $sp, 0x98 /* 076030 7F041500 27B600A0 */ addiu $s6, $sp, 0xa0 /* 076034 7F041504 8FA800D0 */ lw $t0, 0xd0($sp) .L7F041508: /* 076038 7F041508 26130001 */ addiu $s3, $s0, 1 /* 07603C 7F04150C 8FA900D4 */ lw $t1, 0xd4($sp) /* 076040 7F041510 0268001A */ div $zero, $s3, $t0 /* 076044 7F041514 01311821 */ addu $v1, $t1, $s1 /* 076048 7F041518 C46A0000 */ lwc1 $f10, ($v1) /* 07604C 7F04151C C6AC0000 */ lwc1 $f12, ($s5) /* 076050 7F041520 C6AE0008 */ lwc1 $f14, 8($s5) /* 076054 7F041524 8E860000 */ lw $a2, ($s4) /* 076058 7F041528 8E870008 */ lw $a3, 8($s4) /* 07605C 7F04152C E7AA0010 */ swc1 $f10, 0x10($sp) /* 076060 7F041530 C4680004 */ lwc1 $f8, 4($v1) /* 076064 7F041534 00001010 */ mfhi $v0 /* 076068 7F041538 000250C0 */ sll $t2, $v0, 3 /* 07606C 7F04153C 012A2021 */ addu $a0, $t1, $t2 /* 076070 7F041540 E7A80014 */ swc1 $f8, 0x14($sp) /* 076074 7F041544 C4900000 */ lwc1 $f16, ($a0) /* 076078 7F041548 15000002 */ bnez $t0, .L7F041554 /* 07607C 7F04154C 00000000 */ nop /* 076080 7F041550 0007000D */ break 7 .L7F041554: /* 076084 7F041554 2401FFFF */ li $at, -1 /* 076088 7F041558 15010004 */ bne $t0, $at, .L7F04156C /* 07608C 7F04155C 3C018000 */ lui $at, 0x8000 /* 076090 7F041560 16610002 */ bne $s3, $at, .L7F04156C /* 076094 7F041564 00000000 */ nop /* 076098 7F041568 0006000D */ break 6 .L7F04156C: /* 07609C 7F04156C E7B00018 */ swc1 $f16, 0x18($sp) /* 0760A0 7F041570 C4920004 */ lwc1 $f18, 4($a0) /* 0760A4 7F041574 00409025 */ move $s2, $v0 /* 0760A8 7F041578 0FC2C1A2 */ jal sub_GAME_7F0B0688 /* 0760AC 7F04157C E7B2001C */ swc1 $f18, 0x1c($sp) /* 0760B0 7F041580 50400019 */ beql $v0, $zero, .L7F0415E8 /* 0760B4 7F041584 8FAD00D0 */ lw $t5, 0xd0($sp) /* 0760B8 7F041588 8FAB00D4 */ lw $t3, 0xd4($sp) /* 0760BC 7F04158C 001260C0 */ sll $t4, $s2, 3 /* 0760C0 7F041590 02C02025 */ move $a0, $s6 /* 0760C4 7F041594 01711821 */ addu $v1, $t3, $s1 /* 0760C8 7F041598 C4640000 */ lwc1 $f4, ($v1) /* 0760CC 7F04159C 016C1021 */ addu $v0, $t3, $t4 /* 0760D0 7F0415A0 02E02825 */ move $a1, $s7 /* 0760D4 7F0415A4 E7A400B0 */ swc1 $f4, 0xb0($sp) /* 0760D8 7F0415A8 C4660004 */ lwc1 $f6, 4($v1) /* 0760DC 7F0415AC 03C03025 */ move $a2, $fp /* 0760E0 7F0415B0 27A700A8 */ addiu $a3, $sp, 0xa8 /* 0760E4 7F0415B4 E7A600B4 */ swc1 $f6, 0xb4($sp) /* 0760E8 7F0415B8 C44A0000 */ lwc1 $f10, ($v0) /* 0760EC 7F0415BC E7AA00A8 */ swc1 $f10, 0xa8($sp) /* 0760F0 7F0415C0 C4480004 */ lwc1 $f8, 4($v0) /* 0760F4 7F0415C4 0FC2CC80 */ jal sub_GAME_7F0B3200 /* 0760F8 7F0415C8 E7A800AC */ swc1 $f8, 0xac($sp) /* 0760FC 7F0415CC 4614003C */ c.lt.s $f0, $f20 /* 076100 7F0415D0 00000000 */ nop /* 076104 7F0415D4 45020004 */ bc1fl .L7F0415E8 /* 076108 7F0415D8 8FAD00D0 */ lw $t5, 0xd0($sp) /* 07610C 7F0415DC 46000506 */ mov.s $f20, $f0 /* 076110 7F0415E0 AFB00094 */ sw $s0, 0x94($sp) /* 076114 7F0415E4 8FAD00D0 */ lw $t5, 0xd0($sp) .L7F0415E8: /* 076118 7F0415E8 02608025 */ move $s0, $s3 /* 07611C 7F0415EC 26310008 */ addiu $s1, $s1, 8 /* 076120 7F0415F0 026D082A */ slt $at, $s3, $t5 /* 076124 7F0415F4 5420FFC4 */ bnezl $at, .L7F041508 /* 076128 7F0415F8 8FA800D0 */ lw $t0, 0xd0($sp) .L7F0415FC: /* 07612C 7F0415FC 8FAE0094 */ lw $t6, 0x94($sp) /* 076130 7F041600 8FAF00D4 */ lw $t7, 0xd4($sp) /* 076134 7F041604 27A40088 */ addiu $a0, $sp, 0x88 /* 076138 7F041608 19C00066 */ blez $t6, .L7F0417A4 /* 07613C 7F04160C 000EC0C0 */ sll $t8, $t6, 3 /* 076140 7F041610 8FA800D0 */ lw $t0, 0xd0($sp) /* 076144 7F041614 25D90001 */ addiu $t9, $t6, 1 /* 076148 7F041618 01F81021 */ addu $v0, $t7, $t8 /* 07614C 7F04161C 0328001A */ div $zero, $t9, $t0 /* 076150 7F041620 4480A000 */ mtc1 $zero, $f20 /* 076154 7F041624 C4500000 */ lwc1 $f16, ($v0) /* 076158 7F041628 00004810 */ mfhi $t1 /* 07615C 7F04162C E7B4008C */ swc1 $f20, 0x8c($sp) /* 076160 7F041630 E7B00088 */ swc1 $f16, 0x88($sp) /* 076164 7F041634 C4520004 */ lwc1 $f18, 4($v0) /* 076168 7F041638 000950C0 */ sll $t2, $t1, 3 /* 07616C 7F04163C 01EA1821 */ addu $v1, $t7, $t2 /* 076170 7F041640 E7B20090 */ swc1 $f18, 0x90($sp) /* 076174 7F041644 C4640000 */ lwc1 $f4, ($v1) /* 076178 7F041648 E7B40080 */ swc1 $f20, 0x80($sp) /* 07617C 7F04164C 27AB006C */ addiu $t3, $sp, 0x6c /* 076180 7F041650 E7A4007C */ swc1 $f4, 0x7c($sp) /* 076184 7F041654 C4660004 */ lwc1 $f6, 4($v1) /* 076188 7F041658 15000002 */ bnez $t0, .L7F041664 /* 07618C 7F04165C 00000000 */ nop /* 076190 7F041660 0007000D */ break 7 .L7F041664: /* 076194 7F041664 2401FFFF */ li $at, -1 /* 076198 7F041668 15010004 */ bne $t0, $at, .L7F04167C /* 07619C 7F04166C 3C018000 */ li $at, 0x80000000 # -0.000000 /* 0761A0 7F041670 17210002 */ bne $t9, $at, .L7F04167C /* 0761A4 7F041674 00000000 */ nop /* 0761A8 7F041678 0006000D */ break 6 .L7F04167C: /* 0761AC 7F04167C AFAB0010 */ sw $t3, 0x10($sp) /* 0761B0 7F041680 27A5007C */ addiu $a1, $sp, 0x7c /* 0761B4 7F041684 02A03025 */ move $a2, $s5 /* 0761B8 7F041688 8FA700E4 */ lw $a3, 0xe4($sp) /* 0761BC 7F04168C 0FC0984C */ jal sub_GAME_7F026130 /* 0761C0 7F041690 E7A60084 */ swc1 $f6, 0x84($sp) /* 0761C4 7F041694 C7AA006C */ lwc1 $f10, 0x6c($sp) /* 0761C8 7F041698 C6A80000 */ lwc1 $f8, ($s5) /* 0761CC 7F04169C 8FA500E4 */ lw $a1, 0xe4($sp) /* 0761D0 7F0416A0 C7A60070 */ lwc1 $f6, 0x70($sp) /* 0761D4 7F0416A4 46085401 */ sub.s $f16, $f10, $f8 /* 0761D8 7F0416A8 C6AA0004 */ lwc1 $f10, 4($s5) /* 0761DC 7F0416AC C4B20000 */ lwc1 $f18, ($a1) /* 0761E0 7F0416B0 8FA300F0 */ lw $v1, 0xf0($sp) /* 0761E4 7F0416B4 460A3201 */ sub.s $f8, $f6, $f10 /* 0761E8 7F0416B8 46128102 */ mul.s $f4, $f16, $f18 /* 0761EC 7F0416BC C4B00004 */ lwc1 $f16, 4($a1) /* 0761F0 7F0416C0 C7AA0074 */ lwc1 $f10, 0x74($sp) /* 0761F4 7F0416C4 8FA200E8 */ lw $v0, 0xe8($sp) /* 0761F8 7F0416C8 46104482 */ mul.s $f18, $f8, $f16 /* 0761FC 7F0416CC C6A80008 */ lwc1 $f8, 8($s5) /* 076200 7F0416D0 8FA400EC */ lw $a0, 0xec($sp) /* 076204 7F0416D4 46085401 */ sub.s $f16, $f10, $f8 /* 076208 7F0416D8 C46A0000 */ lwc1 $f10, ($v1) /* 07620C 7F0416DC 46122180 */ add.s $f6, $f4, $f18 /* 076210 7F0416E0 C4A40008 */ lwc1 $f4, 8($a1) /* 076214 7F0416E4 46102482 */ mul.s $f18, $f4, $f16 /* 076218 7F0416E8 46069000 */ add.s $f0, $f18, $f6 /* 07621C 7F0416EC 460A003C */ c.lt.s $f0, $f10 /* 076220 7F0416F0 00000000 */ nop /* 076224 7F0416F4 4502002C */ bc1fl .L7F0417A8 /* 076228 7F0416F8 00001025 */ move $v0, $zero /* 07622C 7F0416FC E4600000 */ swc1 $f0, ($v1) /* 076230 7F041700 C7A8006C */ lwc1 $f8, 0x6c($sp) /* 076234 7F041704 E4480000 */ swc1 $f8, ($v0) /* 076238 7F041708 C7A40070 */ lwc1 $f4, 0x70($sp) /* 07623C 7F04170C E4440004 */ swc1 $f4, 4($v0) /* 076240 7F041710 C7B00074 */ lwc1 $f16, 0x74($sp) /* 076244 7F041714 E4500008 */ swc1 $f16, 8($v0) /* 076248 7F041718 C4B20000 */ lwc1 $f18, ($a1) /* 07624C 7F04171C E4940004 */ swc1 $f20, 4($a0) /* 076250 7F041720 46009187 */ neg.s $f6, $f18 /* 076254 7F041724 E4860000 */ swc1 $f6, ($a0) /* 076258 7F041728 C4840000 */ lwc1 $f4, ($a0) /* 07625C 7F04172C C4AA0008 */ lwc1 $f10, 8($a1) /* 076260 7F041730 24850004 */ addiu $a1, $a0, 4 /* 076264 7F041734 4604A032 */ c.eq.s $f20, $f4 /* 076268 7F041738 46005207 */ neg.s $f8, $f10 /* 07626C 7F04173C 45000007 */ bc1f .L7F04175C /* 076270 7F041740 E4880008 */ swc1 $f8, 8($a0) /* 076274 7F041744 C4900008 */ lwc1 $f16, 8($a0) /* 076278 7F041748 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07627C 7F04174C 4610A032 */ c.eq.s $f20, $f16 /* 076280 7F041750 00000000 */ nop /* 076284 7F041754 45030006 */ bc1tl .L7F041770 /* 076288 7F041758 44819000 */ mtc1 $at, $f18 .L7F04175C: /* 07628C 7F04175C 0C007DD4 */ jal guNormalize /* 076290 7F041760 24860008 */ addiu $a2, $a0, 8 /* 076294 7F041764 10000005 */ b .L7F04177C /* 076298 7F041768 8FAC00D8 */ lw $t4, 0xd8($sp) /* 07629C 7F04176C 44819000 */ mtc1 $at, $f18 .L7F041770: /* 0762A0 7F041770 00000000 */ nop /* 0762A4 7F041774 E4920008 */ swc1 $f18, 8($a0) /* 0762A8 7F041778 8FAC00D8 */ lw $t4, 0xd8($sp) .L7F04177C: /* 0762AC 7F04177C 3C018003 */ lui $at, %hi(D_80030B0C) /* 0762B0 7F041780 24020001 */ li $v0, 1 /* 0762B4 7F041784 AC2C0B0C */ sw $t4, %lo(D_80030B0C)($at) /* 0762B8 7F041788 3C018003 */ lui $at, %hi(bodypartshot) /* 0762BC 7F04178C AC200B10 */ sw $zero, %lo(bodypartshot)($at) /* 0762C0 7F041790 3C018007 */ lui $at, %hi(objinst) /* 0762C4 7F041794 AC205B70 */ sw $zero, %lo(objinst)($at) /* 0762C8 7F041798 3C018007 */ lui $at, %hi(dword_CODE_bss_80075B74) /* 0762CC 7F04179C 10000002 */ b .L7F0417A8 /* 0762D0 7F0417A0 AC205B74 */ sw $zero, %lo(dword_CODE_bss_80075B74)($at) .L7F0417A4: /* 0762D4 7F0417A4 00001025 */ move $v0, $zero .L7F0417A8: /* 0762D8 7F0417A8 8FBF0054 */ lw $ra, 0x54($sp) /* 0762DC 7F0417AC D7B40028 */ ldc1 $f20, 0x28($sp) /* 0762E0 7F0417B0 8FB00030 */ lw $s0, 0x30($sp) /* 0762E4 7F0417B4 8FB10034 */ lw $s1, 0x34($sp) /* 0762E8 7F0417B8 8FB20038 */ lw $s2, 0x38($sp) /* 0762EC 7F0417BC 8FB3003C */ lw $s3, 0x3c($sp) /* 0762F0 7F0417C0 8FB40040 */ lw $s4, 0x40($sp) /* 0762F4 7F0417C4 8FB50044 */ lw $s5, 0x44($sp) /* 0762F8 7F0417C8 8FB60048 */ lw $s6, 0x48($sp) /* 0762FC 7F0417CC 8FB7004C */ lw $s7, 0x4c($sp) /* 076300 7F0417D0 8FBE0050 */ lw $fp, 0x50($sp) /* 076304 7F0417D4 03E00008 */ jr $ra /* 076308 7F0417D8 27BD00D8 */ addiu $sp, $sp, 0xd8 ) #endif #ifdef NONMATCHING void sub_GAME_7F0417DC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0417DC /* 07630C 7F0417DC 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 076310 7F0417E0 AFB00028 */ sw $s0, 0x28($sp) /* 076314 7F0417E4 00808025 */ move $s0, $a0 /* 076318 7F0417E8 AFBF0034 */ sw $ra, 0x34($sp) /* 07631C 7F0417EC AFB20030 */ sw $s2, 0x30($sp) /* 076320 7F0417F0 AFB1002C */ sw $s1, 0x2c($sp) /* 076324 7F0417F4 AFA60060 */ sw $a2, 0x60($sp) /* 076328 7F0417F8 8C840014 */ lw $a0, 0x14($a0) /* 07632C 7F0417FC 00A08825 */ move $s1, $a1 /* 076330 7F041800 00E09025 */ move $s2, $a3 /* 076334 7F041804 0FC1B403 */ jal getinstsize /* 076338 7F041808 AFA40054 */ sw $a0, 0x54($sp) /* 07633C 7F04180C 8E020010 */ lw $v0, 0x10($s0) /* 076340 7F041810 44801000 */ mtc1 $zero, $f2 /* 076344 7F041814 8C4E001C */ lw $t6, 0x1c($v0) /* 076348 7F041818 55C00013 */ bnezl $t6, .L7F041868 /* 07634C 7F04181C 46000207 */ neg.s $f8, $f0 /* 076350 7F041820 C6040058 */ lwc1 $f4, 0x58($s0) /* 076354 7F041824 C6260000 */ lwc1 $f6, ($s1) /* 076358 7F041828 C608005C */ lwc1 $f8, 0x5c($s0) /* 07635C 7F04182C C62A0004 */ lwc1 $f10, 4($s1) /* 076360 7F041830 46062301 */ sub.s $f12, $f4, $f6 /* 076364 7F041834 C6460000 */ lwc1 $f6, ($s2) /* 076368 7F041838 C6240008 */ lwc1 $f4, 8($s1) /* 07636C 7F04183C 460A4381 */ sub.s $f14, $f8, $f10 /* 076370 7F041840 C6120060 */ lwc1 $f18, 0x60($s0) /* 076374 7F041844 46066202 */ mul.s $f8, $f12, $f6 /* 076378 7F041848 C64A0004 */ lwc1 $f10, 4($s2) /* 07637C 7F04184C 46049401 */ sub.s $f16, $f18, $f4 /* 076380 7F041850 C6460008 */ lwc1 $f6, 8($s2) /* 076384 7F041854 460A7482 */ mul.s $f18, $f14, $f10 /* 076388 7F041858 46124100 */ add.s $f4, $f8, $f18 /* 07638C 7F04185C 46103282 */ mul.s $f10, $f6, $f16 /* 076390 7F041860 46045080 */ add.s $f2, $f10, $f4 /* 076394 7F041864 46000207 */ neg.s $f8, $f0 .L7F041868: /* 076398 7F041868 C7B20068 */ lwc1 $f18, 0x68($sp) /* 07639C 7F04186C 4602403E */ c.le.s $f8, $f2 /* 0763A0 7F041870 00000000 */ nop /* 0763A4 7F041874 45020055 */ bc1fl .L7F0419CC /* 0763A8 7F041878 00001025 */ move $v0, $zero /* 0763AC 7F04187C 46009180 */ add.s $f6, $f18, $f0 /* 0763B0 7F041880 4606103E */ c.le.s $f2, $f6 /* 0763B4 7F041884 00000000 */ nop /* 0763B8 7F041888 45020050 */ bc1fl .L7F0419CC /* 0763BC 7F04188C 00001025 */ move $v0, $zero /* 0763C0 7F041890 904F0001 */ lbu $t7, 1($v0) /* 0763C4 7F041894 8FA5006C */ lw $a1, 0x6c($sp) /* 0763C8 7F041898 8FA60070 */ lw $a2, 0x70($sp) /* 0763CC 7F04189C 31F80002 */ andi $t8, $t7, 2 /* 0763D0 7F0418A0 1300002A */ beqz $t8, .L7F04194C /* 0763D4 7F0418A4 8FA40054 */ lw $a0, 0x54($sp) /* 0763D8 7F0418A8 8FB90078 */ lw $t9, 0x78($sp) /* 0763DC 7F0418AC 8FA90080 */ lw $t1, 0x80($sp) /* 0763E0 7F0418B0 8FAA0084 */ lw $t2, 0x84($sp) /* 0763E4 7F0418B4 02002025 */ move $a0, $s0 /* 0763E8 7F0418B8 8FA70074 */ lw $a3, 0x74($sp) /* 0763EC 7F0418BC AFB90010 */ sw $t9, 0x10($sp) /* 0763F0 7F0418C0 AFA90014 */ sw $t1, 0x14($sp) /* 0763F4 7F0418C4 0FC10458 */ jal sub_GAME_7F041160 /* 0763F8 7F0418C8 AFAA0018 */ sw $t2, 0x18($sp) /* 0763FC 7F0418CC 1040003E */ beqz $v0, .L7F0419C8 /* 076400 7F0418D0 8FA30074 */ lw $v1, 0x74($sp) /* 076404 7F0418D4 C46A0000 */ lwc1 $f10, ($v1) /* 076408 7F0418D8 C6240000 */ lwc1 $f4, ($s1) /* 07640C 7F0418DC C4680004 */ lwc1 $f8, 4($v1) /* 076410 7F0418E0 C6320004 */ lwc1 $f18, 4($s1) /* 076414 7F0418E4 46045301 */ sub.s $f12, $f10, $f4 /* 076418 7F0418E8 C6440000 */ lwc1 $f4, ($s2) /* 07641C 7F0418EC C62A0008 */ lwc1 $f10, 8($s1) /* 076420 7F0418F0 46124381 */ sub.s $f14, $f8, $f18 /* 076424 7F0418F4 C4660008 */ lwc1 $f6, 8($v1) /* 076428 7F0418F8 46046202 */ mul.s $f8, $f12, $f4 /* 07642C 7F0418FC C6520004 */ lwc1 $f18, 4($s2) /* 076430 7F041900 460A3401 */ sub.s $f16, $f6, $f10 /* 076434 7F041904 C6440008 */ lwc1 $f4, 8($s2) /* 076438 7F041908 46127182 */ mul.s $f6, $f14, $f18 /* 07643C 7F04190C 46064280 */ add.s $f10, $f8, $f6 /* 076440 7F041910 46102482 */ mul.s $f18, $f4, $f16 /* 076444 7F041914 44804000 */ mtc1 $zero, $f8 /* 076448 7F041918 C7A60068 */ lwc1 $f6, 0x68($sp) /* 07644C 7F04191C 460A9080 */ add.s $f2, $f18, $f10 /* 076450 7F041920 4602403E */ c.le.s $f8, $f2 /* 076454 7F041924 00000000 */ nop /* 076458 7F041928 45020028 */ bc1fl .L7F0419CC /* 07645C 7F04192C 00001025 */ move $v0, $zero /* 076460 7F041930 4606103E */ c.le.s $f2, $f6 /* 076464 7F041934 8FA8007C */ lw $t0, 0x7c($sp) /* 076468 7F041938 24020001 */ li $v0, 1 /* 07646C 7F04193C 45020023 */ bc1fl .L7F0419CC /* 076470 7F041940 00001025 */ move $v0, $zero /* 076474 7F041944 10000021 */ b .L7F0419CC /* 076478 7F041948 E5020000 */ swc1 $f2, ($t0) .L7F04194C: /* 07647C 7F04194C 0FC1B403 */ jal getinstsize /* 076480 7F041950 AFA2003C */ sw $v0, 0x3c($sp) /* 076484 7F041954 44070000 */ mfc1 $a3, $f0 /* 076488 7F041958 02202025 */ move $a0, $s1 /* 07648C 7F04195C 02402825 */ move $a1, $s2 /* 076490 7F041960 0FC1041D */ jal sub_GAME_7F041074 /* 076494 7F041964 26060058 */ addiu $a2, $s0, 0x58 /* 076498 7F041968 10400017 */ beqz $v0, .L7F0419C8 /* 07649C 7F04196C 8FA30074 */ lw $v1, 0x74($sp) /* 0764A0 7F041970 8FA8007C */ lw $t0, 0x7c($sp) /* 0764A4 7F041974 C7A40068 */ lwc1 $f4, 0x68($sp) /* 0764A8 7F041978 02202825 */ move $a1, $s1 /* 0764AC 7F04197C 02403825 */ move $a3, $s2 /* 0764B0 7F041980 E5040000 */ swc1 $f4, ($t0) /* 0764B4 7F041984 8FAB0078 */ lw $t3, 0x78($sp) /* 0764B8 7F041988 AFA30010 */ sw $v1, 0x10($sp) /* 0764BC 7F04198C 8FA60060 */ lw $a2, 0x60($sp) /* 0764C0 7F041990 8FA4003C */ lw $a0, 0x3c($sp) /* 0764C4 7F041994 AFA80018 */ sw $t0, 0x18($sp) /* 0764C8 7F041998 0FC10500 */ jal sub_GAME_7F041400 /* 0764CC 7F04199C AFAB0014 */ sw $t3, 0x14($sp) /* 0764D0 7F0419A0 10400009 */ beqz $v0, .L7F0419C8 /* 0764D4 7F0419A4 8FAC0054 */ lw $t4, 0x54($sp) /* 0764D8 7F0419A8 8FAD0080 */ lw $t5, 0x80($sp) /* 0764DC 7F0419AC 24020001 */ li $v0, 1 /* 0764E0 7F0419B0 ADAC0000 */ sw $t4, ($t5) /* 0764E4 7F0419B4 8D8E0008 */ lw $t6, 8($t4) /* 0764E8 7F0419B8 8FB80084 */ lw $t8, 0x84($sp) /* 0764EC 7F0419BC 8DCF0000 */ lw $t7, ($t6) /* 0764F0 7F0419C0 10000002 */ b .L7F0419CC /* 0764F4 7F0419C4 AF0F0000 */ sw $t7, ($t8) .L7F0419C8: /* 0764F8 7F0419C8 00001025 */ move $v0, $zero .L7F0419CC: /* 0764FC 7F0419CC 8FBF0034 */ lw $ra, 0x34($sp) /* 076500 7F0419D0 8FB00028 */ lw $s0, 0x28($sp) /* 076504 7F0419D4 8FB1002C */ lw $s1, 0x2c($sp) /* 076508 7F0419D8 8FB20030 */ lw $s2, 0x30($sp) /* 07650C 7F0419DC 03E00008 */ jr $ra /* 076510 7F0419E0 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #ifdef NONMATCHING void sub_GAME_7F0419E4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0419E4 /* 076514 7F0419E4 27BDFF68 */ addiu $sp, $sp, -0x98 /* 076518 7F0419E8 AFBF0064 */ sw $ra, 0x64($sp) /* 07651C 7F0419EC AFBE0060 */ sw $fp, 0x60($sp) /* 076520 7F0419F0 AFB7005C */ sw $s7, 0x5c($sp) /* 076524 7F0419F4 AFB60058 */ sw $s6, 0x58($sp) /* 076528 7F0419F8 AFB50054 */ sw $s5, 0x54($sp) /* 07652C 7F0419FC AFB40050 */ sw $s4, 0x50($sp) /* 076530 7F041A00 AFB3004C */ sw $s3, 0x4c($sp) /* 076534 7F041A04 AFB20048 */ sw $s2, 0x48($sp) /* 076538 7F041A08 AFB10044 */ sw $s1, 0x44($sp) /* 07653C 7F041A0C AFB00040 */ sw $s0, 0x40($sp) /* 076540 7F041A10 F7B40038 */ sdc1 $f20, 0x38($sp) /* 076544 7F041A14 8C830010 */ lw $v1, 0x10($a0) /* 076548 7F041A18 C7B400A8 */ lwc1 $f20, 0xa8($sp) /* 07654C 7F041A1C 8FB700AC */ lw $s7, 0xac($sp) /* 076550 7F041A20 8FBE00B0 */ lw $fp, 0xb0($sp) /* 076554 7F041A24 27AE008C */ addiu $t6, $sp, 0x8c /* 076558 7F041A28 27AF0080 */ addiu $t7, $sp, 0x80 /* 07655C 7F041A2C 27B8007C */ addiu $t8, $sp, 0x7c /* 076560 7F041A30 27B90078 */ addiu $t9, $sp, 0x78 /* 076564 7F041A34 27A80074 */ addiu $t0, $sp, 0x74 /* 076568 7F041A38 00808025 */ move $s0, $a0 /* 07656C 7F041A3C 00A09825 */ move $s3, $a1 /* 076570 7F041A40 00C0A025 */ move $s4, $a2 /* 076574 7F041A44 00E0A825 */ move $s5, $a3 /* 076578 7F041A48 0000B025 */ move $s6, $zero /* 07657C 7F041A4C AFA8002C */ sw $t0, 0x2c($sp) /* 076580 7F041A50 AFB90028 */ sw $t9, 0x28($sp) /* 076584 7F041A54 AFB80024 */ sw $t8, 0x24($sp) /* 076588 7F041A58 AFAF0020 */ sw $t7, 0x20($sp) /* 07658C 7F041A5C AFAE001C */ sw $t6, 0x1c($sp) /* 076590 7F041A60 AFA3006C */ sw $v1, 0x6c($sp) /* 076594 7F041A64 E7B40010 */ swc1 $f20, 0x10($sp) /* 076598 7F041A68 AFB70014 */ sw $s7, 0x14($sp) /* 07659C 7F041A6C 0FC105F7 */ jal sub_GAME_7F0417DC /* 0765A0 7F041A70 AFBE0018 */ sw $fp, 0x18($sp) /* 0765A4 7F041A74 10400024 */ beqz $v0, .L7F041B08 /* 0765A8 7F041A78 8FA3006C */ lw $v1, 0x6c($sp) /* 0765AC 7F041A7C 8FA900BC */ lw $t1, 0xbc($sp) /* 0765B0 7F041A80 C7A4007C */ lwc1 $f4, 0x7c($sp) /* 0765B4 7F041A84 8FB100B4 */ lw $s1, 0xb4($sp) /* 0765B8 7F041A88 C5260000 */ lwc1 $f6, ($t1) /* 0765BC 7F041A8C 8FB200B8 */ lw $s2, 0xb8($sp) /* 0765C0 7F041A90 4606203C */ c.lt.s $f4, $f6 /* 0765C4 7F041A94 00000000 */ nop /* 0765C8 7F041A98 4502001C */ bc1fl .L7F041B0C /* 0765CC 7F041A9C 906E0001 */ lbu $t6, 1($v1) /* 0765D0 7F041AA0 E5240000 */ swc1 $f4, ($t1) /* 0765D4 7F041AA4 C7A8008C */ lwc1 $f8, 0x8c($sp) /* 0765D8 7F041AA8 3C018003 */ lui $at, %hi(D_80030B0C) /* 0765DC 7F041AAC 240BFFFF */ li $t3, -1 /* 0765E0 7F041AB0 E6280000 */ swc1 $f8, ($s1) /* 0765E4 7F041AB4 C7AA0090 */ lwc1 $f10, 0x90($sp) /* 0765E8 7F041AB8 24160001 */ li $s6, 1 /* 0765EC 7F041ABC E62A0004 */ swc1 $f10, 4($s1) /* 0765F0 7F041AC0 C7B00094 */ lwc1 $f16, 0x94($sp) /* 0765F4 7F041AC4 E6300008 */ swc1 $f16, 8($s1) /* 0765F8 7F041AC8 C7B20080 */ lwc1 $f18, 0x80($sp) /* 0765FC 7F041ACC E6520000 */ swc1 $f18, ($s2) /* 076600 7F041AD0 C7A60084 */ lwc1 $f6, 0x84($sp) /* 076604 7F041AD4 E6460004 */ swc1 $f6, 4($s2) /* 076608 7F041AD8 C7A40088 */ lwc1 $f4, 0x88($sp) /* 07660C 7F041ADC E6440008 */ swc1 $f4, 8($s2) /* 076610 7F041AE0 8E0A0010 */ lw $t2, 0x10($s0) /* 076614 7F041AE4 8FAC0078 */ lw $t4, 0x78($sp) /* 076618 7F041AE8 8FAD0074 */ lw $t5, 0x74($sp) /* 07661C 7F041AEC AC2A0B0C */ sw $t2, %lo(D_80030B0C)($at) /* 076620 7F041AF0 3C018003 */ lui $at, %hi(bodypartshot) /* 076624 7F041AF4 AC2B0B10 */ sw $t3, %lo(bodypartshot)($at) /* 076628 7F041AF8 3C018007 */ lui $at, %hi(objinst) /* 07662C 7F041AFC AC2C5B70 */ sw $t4, %lo(objinst)($at) /* 076630 7F041B00 3C018007 */ lui $at, %hi(dword_CODE_bss_80075B74) /* 076634 7F041B04 AC2D5B74 */ sw $t5, %lo(dword_CODE_bss_80075B74)($at) .L7F041B08: /* 076638 7F041B08 906E0001 */ lbu $t6, 1($v1) .L7F041B0C: /* 07663C 7F041B0C 8FB100B4 */ lw $s1, 0xb4($sp) /* 076640 7F041B10 8FB200B8 */ lw $s2, 0xb8($sp) /* 076644 7F041B14 31CF0002 */ andi $t7, $t6, 2 /* 076648 7F041B18 51E0001A */ beql $t7, $zero, .L7F041B84 /* 07664C 7F041B1C 8FBF0064 */ lw $ra, 0x64($sp) /* 076650 7F041B20 8C700020 */ lw $s0, 0x20($v1) /* 076654 7F041B24 52000017 */ beql $s0, $zero, .L7F041B84 /* 076658 7F041B28 8FBF0064 */ lw $ra, 0x64($sp) /* 07665C 7F041B2C 92180001 */ lbu $t8, 1($s0) .L7F041B30: /* 076660 7F041B30 02602825 */ move $a1, $s3 /* 076664 7F041B34 02803025 */ move $a2, $s4 /* 076668 7F041B38 33190002 */ andi $t9, $t8, 2 /* 07666C 7F041B3C 1320000D */ beqz $t9, .L7F041B74 /* 076670 7F041B40 02A03825 */ move $a3, $s5 /* 076674 7F041B44 8E040004 */ lw $a0, 4($s0) /* 076678 7F041B48 8FA800BC */ lw $t0, 0xbc($sp) /* 07667C 7F041B4C AFB20020 */ sw $s2, 0x20($sp) /* 076680 7F041B50 AFB1001C */ sw $s1, 0x1c($sp) /* 076684 7F041B54 AFBE0018 */ sw $fp, 0x18($sp) /* 076688 7F041B58 AFB70014 */ sw $s7, 0x14($sp) /* 07668C 7F041B5C E7B40010 */ swc1 $f20, 0x10($sp) /* 076690 7F041B60 0FC10679 */ jal sub_GAME_7F0419E4 /* 076694 7F041B64 AFA80024 */ sw $t0, 0x24($sp) /* 076698 7F041B68 50400003 */ beql $v0, $zero, .L7F041B78 /* 07669C 7F041B6C 8E100024 */ lw $s0, 0x24($s0) /* 0766A0 7F041B70 24160001 */ li $s6, 1 .L7F041B74: /* 0766A4 7F041B74 8E100024 */ lw $s0, 0x24($s0) .L7F041B78: /* 0766A8 7F041B78 5600FFED */ bnezl $s0, .L7F041B30 /* 0766AC 7F041B7C 92180001 */ lbu $t8, 1($s0) /* 0766B0 7F041B80 8FBF0064 */ lw $ra, 0x64($sp) .L7F041B84: /* 0766B4 7F041B84 02C01025 */ move $v0, $s6 /* 0766B8 7F041B88 8FB60058 */ lw $s6, 0x58($sp) /* 0766BC 7F041B8C D7B40038 */ ldc1 $f20, 0x38($sp) /* 0766C0 7F041B90 8FB00040 */ lw $s0, 0x40($sp) /* 0766C4 7F041B94 8FB10044 */ lw $s1, 0x44($sp) /* 0766C8 7F041B98 8FB20048 */ lw $s2, 0x48($sp) /* 0766CC 7F041B9C 8FB3004C */ lw $s3, 0x4c($sp) /* 0766D0 7F041BA0 8FB40050 */ lw $s4, 0x50($sp) /* 0766D4 7F041BA4 8FB50054 */ lw $s5, 0x54($sp) /* 0766D8 7F041BA8 8FB7005C */ lw $s7, 0x5c($sp) /* 0766DC 7F041BAC 8FBE0060 */ lw $fp, 0x60($sp) /* 0766E0 7F041BB0 03E00008 */ jr $ra /* 0766E4 7F041BB4 27BD0098 */ addiu $sp, $sp, 0x98 ) #endif #ifdef NONMATCHING void sub_GAME_7F041BB8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041BB8 /* 0766E8 7F041BB8 27BDFF98 */ addiu $sp, $sp, -0x68 /* 0766EC 7F041BBC AFA70074 */ sw $a3, 0x74($sp) /* 0766F0 7F041BC0 AFBF002C */ sw $ra, 0x2c($sp) /* 0766F4 7F041BC4 AFB20028 */ sw $s2, 0x28($sp) /* 0766F8 7F041BC8 AFB10024 */ sw $s1, 0x24($sp) /* 0766FC 7F041BCC AFB00020 */ sw $s0, 0x20($sp) /* 076700 7F041BD0 AFA40068 */ sw $a0, 0x68($sp) /* 076704 7F041BD4 00803825 */ move $a3, $a0 /* 076708 7F041BD8 8C920018 */ lw $s2, 0x18($a0) /* 07670C 7F041BDC 8C84001C */ lw $a0, 0x1c($a0) /* 076710 7F041BE0 00C08025 */ move $s0, $a2 /* 076714 7F041BE4 00A08825 */ move $s1, $a1 /* 076718 7F041BE8 0FC1B403 */ jal getinstsize /* 07671C 7F041BEC AFA70068 */ sw $a3, 0x68($sp) /* 076720 7F041BF0 C6440008 */ lwc1 $f4, 8($s2) /* 076724 7F041BF4 C6260000 */ lwc1 $f6, ($s1) /* 076728 7F041BF8 C648000C */ lwc1 $f8, 0xc($s2) /* 07672C 7F041BFC C62A0004 */ lwc1 $f10, 4($s1) /* 076730 7F041C00 46062081 */ sub.s $f2, $f4, $f6 /* 076734 7F041C04 C6060000 */ lwc1 $f6, ($s0) /* 076738 7F041C08 C6240008 */ lwc1 $f4, 8($s1) /* 07673C 7F041C0C 460A4301 */ sub.s $f12, $f8, $f10 /* 076740 7F041C10 C6520010 */ lwc1 $f18, 0x10($s2) /* 076744 7F041C14 46061202 */ mul.s $f8, $f2, $f6 /* 076748 7F041C18 C60A0004 */ lwc1 $f10, 4($s0) /* 07674C 7F041C1C 46049381 */ sub.s $f14, $f18, $f4 /* 076750 7F041C20 C6060008 */ lwc1 $f6, 8($s0) /* 076754 7F041C24 460A6482 */ mul.s $f18, $f12, $f10 /* 076758 7F041C28 46124100 */ add.s $f4, $f8, $f18 /* 07675C 7F041C2C 460E3282 */ mul.s $f10, $f6, $f14 /* 076760 7F041C30 C7B20074 */ lwc1 $f18, 0x74($sp) /* 076764 7F041C34 46000207 */ neg.s $f8, $f0 /* 076768 7F041C38 46045400 */ add.s $f16, $f10, $f4 /* 07676C 7F041C3C 4610403E */ c.le.s $f8, $f16 /* 076770 7F041C40 00000000 */ nop /* 076774 7F041C44 4502006B */ bc1fl .L7F041DF4 /* 076778 7F041C48 00001025 */ move $v0, $zero /* 07677C 7F041C4C 46009180 */ add.s $f6, $f18, $f0 /* 076780 7F041C50 4606803E */ c.le.s $f16, $f6 /* 076784 7F041C54 00000000 */ nop /* 076788 7F041C58 45020066 */ bc1fl .L7F041DF4 /* 07678C 7F041C5C 00001025 */ move $v0, $zero /* 076790 7F041C60 924E0001 */ lbu $t6, 1($s2) /* 076794 7F041C64 8FB80068 */ lw $t8, 0x68($sp) /* 076798 7F041C68 27A40038 */ addiu $a0, $sp, 0x38 /* 07679C 7F041C6C 31CF0002 */ andi $t7, $t6, 2 /* 0767A0 7F041C70 11E0005F */ beqz $t7, .L7F041DF0 /* 0767A4 7F041C74 27A70040 */ addiu $a3, $sp, 0x40 /* 0767A8 7F041C78 8F190020 */ lw $t9, 0x20($t8) /* 0767AC 7F041C7C 27A8003C */ addiu $t0, $sp, 0x3c /* 0767B0 7F041C80 AFA80010 */ sw $t0, 0x10($sp) /* 0767B4 7F041C84 8FA50078 */ lw $a1, 0x78($sp) /* 0767B8 7F041C88 8FA6007C */ lw $a2, 0x7c($sp) /* 0767BC 7F041C8C 0FC1B004 */ jal sub_GAME_7F06C010 /* 0767C0 7F041C90 AFB90038 */ sw $t9, 0x38($sp) /* 0767C4 7F041C94 18400056 */ blez $v0, .L7F041DF0 /* 0767C8 7F041C98 AFA20044 */ sw $v0, 0x44($sp) /* 0767CC 7F041C9C 8FA40040 */ lw $a0, 0x40($sp) /* 0767D0 7F041CA0 8FA5003C */ lw $a1, 0x3c($sp) /* 0767D4 7F041CA4 0FC1B198 */ jal sub_GAME_7F06C660 /* 0767D8 7F041CA8 00003025 */ move $a2, $zero /* 0767DC 7F041CAC 8FA30078 */ lw $v1, 0x78($sp) /* 0767E0 7F041CB0 C44A0030 */ lwc1 $f10, 0x30($v0) /* 0767E4 7F041CB4 8FA7007C */ lw $a3, 0x7c($sp) /* 0767E8 7F041CB8 C4640000 */ lwc1 $f4, ($v1) /* 0767EC 7F041CBC C4480034 */ lwc1 $f8, 0x34($v0) /* 0767F0 7F041CC0 C4720004 */ lwc1 $f18, 4($v1) /* 0767F4 7F041CC4 46045081 */ sub.s $f2, $f10, $f4 /* 0767F8 7F041CC8 C4E40000 */ lwc1 $f4, ($a3) /* 0767FC 7F041CCC C4460038 */ lwc1 $f6, 0x38($v0) /* 076800 7F041CD0 46124301 */ sub.s $f12, $f8, $f18 /* 076804 7F041CD4 C46A0008 */ lwc1 $f10, 8($v1) /* 076808 7F041CD8 46041202 */ mul.s $f8, $f2, $f4 /* 07680C 7F041CDC C4F20004 */ lwc1 $f18, 4($a3) /* 076810 7F041CE0 460A3381 */ sub.s $f14, $f6, $f10 /* 076814 7F041CE4 C4E40008 */ lwc1 $f4, 8($a3) /* 076818 7F041CE8 46126182 */ mul.s $f6, $f12, $f18 /* 07681C 7F041CEC 8FA50088 */ lw $a1, 0x88($sp) /* 076820 7F041CF0 8FA20080 */ lw $v0, 0x80($sp) /* 076824 7F041CF4 460E2482 */ mul.s $f18, $f4, $f14 /* 076828 7F041CF8 8FA40084 */ lw $a0, 0x84($sp) /* 07682C 7F041CFC 46064280 */ add.s $f10, $f8, $f6 /* 076830 7F041D00 C4A80000 */ lwc1 $f8, ($a1) /* 076834 7F041D04 460A9000 */ add.s $f0, $f18, $f10 /* 076838 7F041D08 4608003C */ c.lt.s $f0, $f8 /* 07683C 7F041D0C 00000000 */ nop /* 076840 7F041D10 45020038 */ bc1fl .L7F041DF4 /* 076844 7F041D14 00001025 */ move $v0, $zero /* 076848 7F041D18 E4A00000 */ swc1 $f0, ($a1) /* 07684C 7F041D1C C6060000 */ lwc1 $f6, ($s0) /* 076850 7F041D20 C6320000 */ lwc1 $f18, ($s1) /* 076854 7F041D24 44801000 */ mtc1 $zero, $f2 /* 076858 7F041D28 46003102 */ mul.s $f4, $f6, $f0 /* 07685C 7F041D2C 24850004 */ addiu $a1, $a0, 4 /* 076860 7F041D30 46122280 */ add.s $f10, $f4, $f18 /* 076864 7F041D34 E44A0000 */ swc1 $f10, ($v0) /* 076868 7F041D38 C6080004 */ lwc1 $f8, 4($s0) /* 07686C 7F041D3C C6240004 */ lwc1 $f4, 4($s1) /* 076870 7F041D40 46004182 */ mul.s $f6, $f8, $f0 /* 076874 7F041D44 46043480 */ add.s $f18, $f6, $f4 /* 076878 7F041D48 E4520004 */ swc1 $f18, 4($v0) /* 07687C 7F041D4C C60A0008 */ lwc1 $f10, 8($s0) /* 076880 7F041D50 C6260008 */ lwc1 $f6, 8($s1) /* 076884 7F041D54 46005202 */ mul.s $f8, $f10, $f0 /* 076888 7F041D58 46064100 */ add.s $f4, $f8, $f6 /* 07688C 7F041D5C E4440008 */ swc1 $f4, 8($v0) /* 076890 7F041D60 C6120000 */ lwc1 $f18, ($s0) /* 076894 7F041D64 E4820004 */ swc1 $f2, 4($a0) /* 076898 7F041D68 46009287 */ neg.s $f10, $f18 /* 07689C 7F041D6C E48A0000 */ swc1 $f10, ($a0) /* 0768A0 7F041D70 C4840000 */ lwc1 $f4, ($a0) /* 0768A4 7F041D74 C6080008 */ lwc1 $f8, 8($s0) /* 0768A8 7F041D78 46041032 */ c.eq.s $f2, $f4 /* 0768AC 7F041D7C 46004187 */ neg.s $f6, $f8 /* 0768B0 7F041D80 45000007 */ bc1f .L7F041DA0 /* 0768B4 7F041D84 E4860008 */ swc1 $f6, 8($a0) /* 0768B8 7F041D88 C4920008 */ lwc1 $f18, 8($a0) /* 0768BC 7F041D8C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0768C0 7F041D90 46121032 */ c.eq.s $f2, $f18 /* 0768C4 7F041D94 00000000 */ nop /* 0768C8 7F041D98 45030006 */ bc1tl .L7F041DB4 /* 0768CC 7F041D9C 44815000 */ mtc1 $at, $f10 .L7F041DA0: /* 0768D0 7F041DA0 0C007DD4 */ jal guNormalize /* 0768D4 7F041DA4 24860008 */ addiu $a2, $a0, 8 /* 0768D8 7F041DA8 10000005 */ b .L7F041DC0 /* 0768DC 7F041DAC 8FA90044 */ lw $t1, 0x44($sp) /* 0768E0 7F041DB0 44815000 */ mtc1 $at, $f10 .L7F041DB4: /* 0768E4 7F041DB4 00000000 */ nop /* 0768E8 7F041DB8 E48A0008 */ swc1 $f10, 8($a0) /* 0768EC 7F041DBC 8FA90044 */ lw $t1, 0x44($sp) .L7F041DC0: /* 0768F0 7F041DC0 3C018003 */ lui $at, %hi(D_80030B0C) /* 0768F4 7F041DC4 AC320B0C */ sw $s2, %lo(D_80030B0C)($at) /* 0768F8 7F041DC8 8FAA0040 */ lw $t2, 0x40($sp) /* 0768FC 7F041DCC 3C018003 */ lui $at, %hi(bodypartshot) /* 076900 7F041DD0 AC290B10 */ sw $t1, %lo(bodypartshot)($at) /* 076904 7F041DD4 3C018007 */ lui $at, %hi(objinst) /* 076908 7F041DD8 8FAB003C */ lw $t3, 0x3c($sp) /* 07690C 7F041DDC AC2A5B70 */ sw $t2, %lo(objinst)($at) /* 076910 7F041DE0 3C018007 */ lui $at, %hi(dword_CODE_bss_80075B74) /* 076914 7F041DE4 24020001 */ li $v0, 1 /* 076918 7F041DE8 10000002 */ b .L7F041DF4 /* 07691C 7F041DEC AC2B5B74 */ sw $t3, %lo(dword_CODE_bss_80075B74)($at) .L7F041DF0: /* 076920 7F041DF0 00001025 */ move $v0, $zero .L7F041DF4: /* 076924 7F041DF4 8FBF002C */ lw $ra, 0x2c($sp) /* 076928 7F041DF8 8FB00020 */ lw $s0, 0x20($sp) /* 07692C 7F041DFC 8FB10024 */ lw $s1, 0x24($sp) /* 076930 7F041E00 8FB20028 */ lw $s2, 0x28($sp) /* 076934 7F041E04 03E00008 */ jr $ra /* 076938 7F041E08 27BD0068 */ addiu $sp, $sp, 0x68 ) #endif #ifdef NONMATCHING void sub_GAME_7F041E0C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F041E0C /* 07693C 7F041E0C 27BDFF48 */ addiu $sp, $sp, -0xb8 /* 076940 7F041E10 AFBF005C */ sw $ra, 0x5c($sp) /* 076944 7F041E14 AFB40048 */ sw $s4, 0x48($sp) /* 076948 7F041E18 AFB20040 */ sw $s2, 0x40($sp) /* 07694C 7F041E1C 00E09025 */ move $s2, $a3 /* 076950 7F041E20 00A0A025 */ move $s4, $a1 /* 076954 7F041E24 AFBE0058 */ sw $fp, 0x58($sp) /* 076958 7F041E28 AFB70054 */ sw $s7, 0x54($sp) /* 07695C 7F041E2C AFB60050 */ sw $s6, 0x50($sp) /* 076960 7F041E30 AFB5004C */ sw $s5, 0x4c($sp) /* 076964 7F041E34 AFB30044 */ sw $s3, 0x44($sp) /* 076968 7F041E38 AFB1003C */ sw $s1, 0x3c($sp) /* 07696C 7F041E3C AFB00038 */ sw $s0, 0x38($sp) /* 076970 7F041E40 F7B40030 */ sdc1 $f20, 0x30($sp) /* 076974 7F041E44 AFA400B8 */ sw $a0, 0xb8($sp) /* 076978 7F041E48 AFA600C0 */ sw $a2, 0xc0($sp) /* 07697C 7F041E4C AFA000B4 */ sw $zero, 0xb4($sp) /* 076980 7F041E50 0FC1F3A1 */ jal get_ptr_for_players_tank /* 076984 7F041E54 AFA000A4 */ sw $zero, 0xa4($sp) /* 076988 7F041E58 8FA300C0 */ lw $v1, 0xc0($sp) /* 07698C 7F041E5C AFA20074 */ sw $v0, 0x74($sp) /* 076990 7F041E60 C6860000 */ lwc1 $f6, ($s4) /* 076994 7F041E64 C4640000 */ lwc1 $f4, ($v1) /* 076998 7F041E68 46062201 */ sub.s $f8, $f4, $f6 /* 07699C 7F041E6C E7A80098 */ swc1 $f8, 0x98($sp) /* 0769A0 7F041E70 C6900004 */ lwc1 $f16, 4($s4) /* 0769A4 7F041E74 C46A0004 */ lwc1 $f10, 4($v1) /* 0769A8 7F041E78 46105481 */ sub.s $f18, $f10, $f16 /* 0769AC 7F041E7C C7AA0098 */ lwc1 $f10, 0x98($sp) /* 0769B0 7F041E80 E7B2009C */ swc1 $f18, 0x9c($sp) /* 0769B4 7F041E84 C6860008 */ lwc1 $f6, 8($s4) /* 0769B8 7F041E88 C4640008 */ lwc1 $f4, 8($v1) /* 0769BC 7F041E8C 460A5402 */ mul.s $f16, $f10, $f10 /* 0769C0 7F041E90 C7B2009C */ lwc1 $f18, 0x9c($sp) /* 0769C4 7F041E94 46062201 */ sub.s $f8, $f4, $f6 /* 0769C8 7F041E98 46129102 */ mul.s $f4, $f18, $f18 /* 0769CC 7F041E9C E7A800A0 */ swc1 $f8, 0xa0($sp) /* 0769D0 7F041EA0 C7A800A0 */ lwc1 $f8, 0xa0($sp) /* 0769D4 7F041EA4 46084282 */ mul.s $f10, $f8, $f8 /* 0769D8 7F041EA8 46048180 */ add.s $f6, $f16, $f4 /* 0769DC 7F041EAC 0C007DF8 */ jal sqrtf /* 0769E0 7F041EB0 46065300 */ add.s $f12, $f10, $f6 /* 0769E4 7F041EB4 44809000 */ mtc1 $zero, $f18 /* 0769E8 7F041EB8 46000506 */ mov.s $f20, $f0 /* 0769EC 7F041EBC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0769F0 7F041EC0 46120032 */ c.eq.s $f0, $f18 /* 0769F4 7F041EC4 00000000 */ nop /* 0769F8 7F041EC8 45020004 */ bc1fl .L7F041EDC /* 0769FC 7F041ECC 44818000 */ mtc1 $at, $f16 /* 076A00 7F041ED0 100000D1 */ b .L7F042218 /* 076A04 7F041ED4 00001025 */ move $v0, $zero /* 076A08 7F041ED8 44818000 */ mtc1 $at, $f16 .L7F041EDC: /* 076A0C 7F041EDC C7A40098 */ lwc1 $f4, 0x98($sp) /* 076A10 7F041EE0 C7AA009C */ lwc1 $f10, 0x9c($sp) /* 076A14 7F041EE4 46148003 */ div.s $f0, $f16, $f20 /* 076A18 7F041EE8 C7B200A0 */ lwc1 $f18, 0xa0($sp) /* 076A1C 7F041EEC 46002202 */ mul.s $f8, $f4, $f0 /* 076A20 7F041EF0 00000000 */ nop /* 076A24 7F041EF4 46005182 */ mul.s $f6, $f10, $f0 /* 076A28 7F041EF8 00000000 */ nop /* 076A2C 7F041EFC 46009402 */ mul.s $f16, $f18, $f0 /* 076A30 7F041F00 E7A80098 */ swc1 $f8, 0x98($sp) /* 076A34 7F041F04 E7A6009C */ swc1 $f6, 0x9c($sp) /* 076A38 7F041F08 E7B000A0 */ swc1 $f16, 0xa0($sp) /* 076A3C 7F041F0C C6840000 */ lwc1 $f4, ($s4) /* 076A40 7F041F10 E7A40088 */ swc1 $f4, 0x88($sp) /* 076A44 7F041F14 C6880004 */ lwc1 $f8, 4($s4) /* 076A48 7F041F18 E7A8008C */ swc1 $f8, 0x8c($sp) /* 076A4C 7F041F1C C68A0008 */ lwc1 $f10, 8($s4) /* 076A50 7F041F20 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 076A54 7F041F24 E7AA0090 */ swc1 $f10, 0x90($sp) /* 076A58 7F041F28 00402025 */ move $a0, $v0 /* 076A5C 7F041F2C 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 076A60 7F041F30 27A50088 */ addiu $a1, $sp, 0x88 /* 076A64 7F041F34 C7A60098 */ lwc1 $f6, 0x98($sp) /* 076A68 7F041F38 C7B2009C */ lwc1 $f18, 0x9c($sp) /* 076A6C 7F041F3C C7B000A0 */ lwc1 $f16, 0xa0($sp) /* 076A70 7F041F40 E7A6007C */ swc1 $f6, 0x7c($sp) /* 076A74 7F041F44 E7B20080 */ swc1 $f18, 0x80($sp) /* 076A78 7F041F48 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 076A7C 7F041F4C E7B00084 */ swc1 $f16, 0x84($sp) /* 076A80 7F041F50 00402025 */ move $a0, $v0 /* 076A84 7F041F54 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 076A88 7F041F58 27A5007C */ addiu $a1, $sp, 0x7c /* 076A8C 7F041F5C 12400099 */ beqz $s2, .L7F0421C4 /* 076A90 7F041F60 E7B400A8 */ swc1 $f20, 0xa8($sp) /* 076A94 7F041F64 0FC0F8FF */ jal sub_GAME_7F03E3FC /* 076A98 7F041F68 8FA400D0 */ lw $a0, 0xd0($sp) /* 076A9C 7F041F6C 3C138007 */ lui $s3, %hi(ptr_list_object_lookup_indices) /* 076AA0 7F041F70 8E739C30 */ lw $s3, %lo(ptr_list_object_lookup_indices)($s3) /* 076AA4 7F041F74 27BE00A8 */ addiu $fp, $sp, 0xa8 /* 076AA8 7F041F78 27B70098 */ addiu $s7, $sp, 0x98 /* 076AAC 7F041F7C 86620000 */ lh $v0, ($s3) /* 076AB0 7F041F80 8FB600CC */ lw $s6, 0xcc($sp) /* 076AB4 7F041F84 8FB500C8 */ lw $s5, 0xc8($sp) /* 076AB8 7F041F88 0440008E */ bltz $v0, .L7F0421C4 /* 076ABC 7F041F8C 00027080 */ sll $t6, $v0, 2 .L7F041F90: /* 076AC0 7F041F90 01C27023 */ subu $t6, $t6, $v0 /* 076AC4 7F041F94 000E7080 */ sll $t6, $t6, 2 /* 076AC8 7F041F98 8FB800B8 */ lw $t8, 0xb8($sp) /* 076ACC 7F041F9C 01C27021 */ addu $t6, $t6, $v0 /* 076AD0 7F041FA0 3C0F8007 */ lui $t7, %hi(pos_data_entry) /* 076AD4 7F041FA4 25EF9C38 */ addiu $t7, %lo(pos_data_entry) # addiu $t7, $t7, -0x63c8 /* 076AD8 7F041FA8 000E7080 */ sll $t6, $t6, 2 /* 076ADC 7F041FAC 01CF8021 */ addu $s0, $t6, $t7 /* 076AE0 7F041FB0 52180081 */ beql $s0, $t8, .L7F0421B8 /* 076AE4 7F041FB4 86620002 */ lh $v0, 2($s3) /* 076AE8 7F041FB8 92020000 */ lbu $v0, ($s0) /* 076AEC 7F041FBC 24010001 */ li $at, 1 /* 076AF0 7F041FC0 10410005 */ beq $v0, $at, .L7F041FD8 /* 076AF4 7F041FC4 24010004 */ li $at, 4 /* 076AF8 7F041FC8 10410003 */ beq $v0, $at, .L7F041FD8 /* 076AFC 7F041FCC 24010002 */ li $at, 2 /* 076B00 7F041FD0 54410030 */ bnel $v0, $at, .L7F042094 /* 076B04 7F041FD4 24010003 */ li $at, 3 .L7F041FD8: /* 076B08 7F041FD8 8E110004 */ lw $s1, 4($s0) /* 076B0C 7F041FDC 8E390064 */ lw $t9, 0x64($s1) /* 076B10 7F041FE0 33280008 */ andi $t0, $t9, 8 /* 076B14 7F041FE4 55000074 */ bnezl $t0, .L7F0421B8 /* 076B18 7F041FE8 86620002 */ lh $v0, 2($s3) /* 076B1C 7F041FEC 8E29000C */ lw $t1, 0xc($s1) /* 076B20 7F041FF0 24010002 */ li $at, 2 /* 076B24 7F041FF4 00095180 */ sll $t2, $t1, 6 /* 076B28 7F041FF8 0542006F */ bltzl $t2, .L7F0421B8 /* 076B2C 7F041FFC 86620002 */ lh $v0, 2($s3) /* 076B30 7F042000 1441000B */ bne $v0, $at, .L7F042030 /* 076B34 7F042004 324D0001 */ andi $t5, $s2, 1 /* 076B38 7F042008 324B0002 */ andi $t3, $s2, 2 /* 076B3C 7F04200C 5560000B */ bnezl $t3, .L7F04203C /* 076B40 7F042010 8FAE0074 */ lw $t6, 0x74($sp) /* 076B44 7F042014 0FC0F67B */ jal sub_GAME_7F03D9EC /* 076B48 7F042018 02002025 */ move $a0, $s0 /* 076B4C 7F04201C 00526024 */ and $t4, $v0, $s2 /* 076B50 7F042020 55800006 */ bnezl $t4, .L7F04203C /* 076B54 7F042024 8FAE0074 */ lw $t6, 0x74($sp) /* 076B58 7F042028 10000063 */ b .L7F0421B8 /* 076B5C 7F04202C 86620002 */ lh $v0, 2($s3) .L7F042030: /* 076B60 7F042030 51A00061 */ beql $t5, $zero, .L7F0421B8 /* 076B64 7F042034 86620002 */ lh $v0, 2($s3) /* 076B68 7F042038 8FAE0074 */ lw $t6, 0x74($sp) .L7F04203C: /* 076B6C 7F04203C 02202025 */ move $a0, $s1 /* 076B70 7F042040 02802825 */ move $a1, $s4 /* 076B74 7F042044 160E0004 */ bne $s0, $t6, .L7F042058 /* 076B78 7F042048 8FA600C0 */ lw $a2, 0xc0($sp) /* 076B7C 7F04204C 922F0002 */ lbu $t7, 2($s1) /* 076B80 7F042050 31F80020 */ andi $t8, $t7, 0x20 /* 076B84 7F042054 17000057 */ bnez $t8, .L7F0421B4 .L7F042058: /* 076B88 7F042058 27B90088 */ addiu $t9, $sp, 0x88 /* 076B8C 7F04205C 27A8007C */ addiu $t0, $sp, 0x7c /* 076B90 7F042060 AFA80018 */ sw $t0, 0x18($sp) /* 076B94 7F042064 AFB90014 */ sw $t9, 0x14($sp) /* 076B98 7F042068 02E03825 */ move $a3, $s7 /* 076B9C 7F04206C E7B40010 */ swc1 $f20, 0x10($sp) /* 076BA0 7F042070 AFB5001C */ sw $s5, 0x1c($sp) /* 076BA4 7F042074 AFB60020 */ sw $s6, 0x20($sp) /* 076BA8 7F042078 0FC10679 */ jal sub_GAME_7F0419E4 /* 076BAC 7F04207C AFBE0024 */ sw $fp, 0x24($sp) /* 076BB0 7F042080 1040004C */ beqz $v0, .L7F0421B4 /* 076BB4 7F042084 24090001 */ li $t1, 1 /* 076BB8 7F042088 1000004A */ b .L7F0421B4 /* 076BBC 7F04208C AFA900A4 */ sw $t1, 0xa4($sp) /* 076BC0 7F042090 24010003 */ li $at, 3 .L7F042094: /* 076BC4 7F042094 10410005 */ beq $v0, $at, .L7F0420AC /* 076BC8 7F042098 24010006 */ li $at, 6 /* 076BCC 7F04209C 5441002F */ bnel $v0, $at, .L7F04215C /* 076BD0 7F0420A0 24010006 */ li $at, 6 /* 076BD4 7F0420A4 8E0A0004 */ lw $t2, 4($s0) /* 076BD8 7F0420A8 1140002B */ beqz $t2, .L7F042158 .L7F0420AC: /* 076BDC 7F0420AC 24010006 */ li $at, 6 /* 076BE0 7F0420B0 1441000F */ bne $v0, $at, .L7F0420F0 /* 076BE4 7F0420B4 8E110004 */ lw $s1, 4($s0) /* 076BE8 7F0420B8 0FC26C57 */ jal sub_GAME_7F09B15C /* 076BEC 7F0420BC 02002025 */ move $a0, $s0 /* 076BF0 7F0420C0 00025880 */ sll $t3, $v0, 2 /* 076BF4 7F0420C4 3C0C8008 */ lui $t4, %hi(ptr_BONDdata_p1) /* 076BF8 7F0420C8 018B6021 */ addu $t4, $t4, $t3 /* 076BFC 7F0420CC 8D8C9EE0 */ lw $t4, %lo(ptr_BONDdata_p1)($t4) /* 076C00 7F0420D0 324E0004 */ andi $t6, $s2, 4 /* 076C04 7F0420D4 8D8D00AC */ lw $t5, 0xac($t4) /* 076C08 7F0420D8 51A00037 */ beql $t5, $zero, .L7F0421B8 /* 076C0C 7F0420DC 86620002 */ lh $v0, 2($s3) /* 076C10 7F0420E0 55C0000E */ bnezl $t6, .L7F04211C /* 076C14 7F0420E4 4407A000 */ mfc1 $a3, $f20 /* 076C18 7F0420E8 10000033 */ b .L7F0421B8 /* 076C1C 7F0420EC 86620002 */ lh $v0, 2($s3) .L7F0420F0: /* 076C20 7F0420F0 24010003 */ li $at, 3 /* 076C24 7F0420F4 54410009 */ bnel $v0, $at, .L7F04211C /* 076C28 7F0420F8 4407A000 */ mfc1 $a3, $f20 /* 076C2C 7F0420FC 962F0012 */ lhu $t7, 0x12($s1) /* 076C30 7F042100 32590008 */ andi $t9, $s2, 8 /* 076C34 7F042104 31F80100 */ andi $t8, $t7, 0x100 /* 076C38 7F042108 5700002B */ bnezl $t8, .L7F0421B8 /* 076C3C 7F04210C 86620002 */ lh $v0, 2($s3) /* 076C40 7F042110 53200029 */ beql $t9, $zero, .L7F0421B8 /* 076C44 7F042114 86620002 */ lh $v0, 2($s3) /* 076C48 7F042118 4407A000 */ mfc1 $a3, $f20 .L7F04211C: /* 076C4C 7F04211C 27A80088 */ addiu $t0, $sp, 0x88 /* 076C50 7F042120 27A9007C */ addiu $t1, $sp, 0x7c /* 076C54 7F042124 AFA90014 */ sw $t1, 0x14($sp) /* 076C58 7F042128 AFA80010 */ sw $t0, 0x10($sp) /* 076C5C 7F04212C 02202025 */ move $a0, $s1 /* 076C60 7F042130 02802825 */ move $a1, $s4 /* 076C64 7F042134 02E03025 */ move $a2, $s7 /* 076C68 7F042138 AFB50018 */ sw $s5, 0x18($sp) /* 076C6C 7F04213C AFB6001C */ sw $s6, 0x1c($sp) /* 076C70 7F042140 0FC106EE */ jal sub_GAME_7F041BB8 /* 076C74 7F042144 AFBE0020 */ sw $fp, 0x20($sp) /* 076C78 7F042148 1040001A */ beqz $v0, .L7F0421B4 /* 076C7C 7F04214C 240A0001 */ li $t2, 1 /* 076C80 7F042150 10000018 */ b .L7F0421B4 /* 076C84 7F042154 AFAA00A4 */ sw $t2, 0xa4($sp) .L7F042158: /* 076C88 7F042158 24010006 */ li $at, 6 .L7F04215C: /* 076C8C 7F04215C 54410016 */ bnel $v0, $at, .L7F0421B8 /* 076C90 7F042160 86620002 */ lh $v0, 2($s3) /* 076C94 7F042164 0FC26C57 */ jal sub_GAME_7F09B15C /* 076C98 7F042168 02002025 */ move $a0, $s0 /* 076C9C 7F04216C 00025880 */ sll $t3, $v0, 2 /* 076CA0 7F042170 3C0C8008 */ lui $t4, %hi(ptr_BONDdata_p1) /* 076CA4 7F042174 018B6021 */ addu $t4, $t4, $t3 /* 076CA8 7F042178 8D8C9EE0 */ lw $t4, %lo(ptr_BONDdata_p1)($t4) /* 076CAC 7F04217C 02002025 */ move $a0, $s0 /* 076CB0 7F042180 02802825 */ move $a1, $s4 /* 076CB4 7F042184 8D8D00AC */ lw $t5, 0xac($t4) /* 076CB8 7F042188 8FA600C0 */ lw $a2, 0xc0($sp) /* 076CBC 7F04218C 02E03825 */ move $a3, $s7 /* 076CC0 7F042190 51A00009 */ beql $t5, $zero, .L7F0421B8 /* 076CC4 7F042194 86620002 */ lh $v0, 2($s3) /* 076CC8 7F042198 AFB50010 */ sw $s5, 0x10($sp) /* 076CCC 7F04219C AFB60014 */ sw $s6, 0x14($sp) /* 076CD0 7F0421A0 0FC10500 */ jal sub_GAME_7F041400 /* 076CD4 7F0421A4 AFBE0018 */ sw $fp, 0x18($sp) /* 076CD8 7F0421A8 10400002 */ beqz $v0, .L7F0421B4 /* 076CDC 7F0421AC 240E0001 */ li $t6, 1 /* 076CE0 7F0421B0 AFAE00A4 */ sw $t6, 0xa4($sp) .L7F0421B4: /* 076CE4 7F0421B4 86620002 */ lh $v0, 2($s3) .L7F0421B8: /* 076CE8 7F0421B8 26730002 */ addiu $s3, $s3, 2 /* 076CEC 7F0421BC 0443FF74 */ bgezl $v0, .L7F041F90 /* 076CF0 7F0421C0 00027080 */ sll $t6, $v0, 2 .L7F0421C4: /* 076CF4 7F0421C4 8FAF00A4 */ lw $t7, 0xa4($sp) /* 076CF8 7F0421C8 3C028007 */ lui $v0, %hi(flt_CODE_bss_80075B78) /* 076CFC 7F0421CC 24425B78 */ addiu $v0, %lo(flt_CODE_bss_80075B78) # addiu $v0, $v0, 0x5b78 /* 076D00 7F0421D0 11E00010 */ beqz $t7, .L7F042214 /* 076D04 7F0421D4 3C038007 */ lui $v1, %hi(flt_CODE_bss_80075B88) /* 076D08 7F0421D8 C7A40098 */ lwc1 $f4, 0x98($sp) /* 076D0C 7F0421DC C7A8009C */ lwc1 $f8, 0x9c($sp) /* 076D10 7F0421E0 C7AA00A0 */ lwc1 $f10, 0xa0($sp) /* 076D14 7F0421E4 C7A6007C */ lwc1 $f6, 0x7c($sp) /* 076D18 7F0421E8 C7B20080 */ lwc1 $f18, 0x80($sp) /* 076D1C 7F0421EC C7B00084 */ lwc1 $f16, 0x84($sp) /* 076D20 7F0421F0 24635B88 */ addiu $v1, %lo(flt_CODE_bss_80075B88) # addiu $v1, $v1, 0x5b88 /* 076D24 7F0421F4 24180001 */ li $t8, 1 /* 076D28 7F0421F8 AFB800B4 */ sw $t8, 0xb4($sp) /* 076D2C 7F0421FC E4440000 */ swc1 $f4, ($v0) /* 076D30 7F042200 E4480004 */ swc1 $f8, 4($v0) /* 076D34 7F042204 E44A0008 */ swc1 $f10, 8($v0) /* 076D38 7F042208 E4660000 */ swc1 $f6, ($v1) /* 076D3C 7F04220C E4720004 */ swc1 $f18, 4($v1) /* 076D40 7F042210 E4700008 */ swc1 $f16, 8($v1) .L7F042214: /* 076D44 7F042214 8FA200B4 */ lw $v0, 0xb4($sp) .L7F042218: /* 076D48 7F042218 8FBF005C */ lw $ra, 0x5c($sp) /* 076D4C 7F04221C D7B40030 */ ldc1 $f20, 0x30($sp) /* 076D50 7F042220 8FB00038 */ lw $s0, 0x38($sp) /* 076D54 7F042224 8FB1003C */ lw $s1, 0x3c($sp) /* 076D58 7F042228 8FB20040 */ lw $s2, 0x40($sp) /* 076D5C 7F04222C 8FB30044 */ lw $s3, 0x44($sp) /* 076D60 7F042230 8FB40048 */ lw $s4, 0x48($sp) /* 076D64 7F042234 8FB5004C */ lw $s5, 0x4c($sp) /* 076D68 7F042238 8FB60050 */ lw $s6, 0x50($sp) /* 076D6C 7F04223C 8FB70054 */ lw $s7, 0x54($sp) /* 076D70 7F042240 8FBE0058 */ lw $fp, 0x58($sp) /* 076D74 7F042244 03E00008 */ jr $ra /* 076D78 7F042248 27BD00B8 */ addiu $sp, $sp, 0xb8 ) #endif #ifdef NONMATCHING void handles_projectile_motion(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A58 .word 0x3dcccccd /*0.1*/ .text glabel handles_projectile_motion /* 076D7C 7F04224C 27BDFD50 */ addiu $sp, $sp, -0x2b0 /* 076D80 7F042250 AFBF003C */ sw $ra, 0x3c($sp) /* 076D84 7F042254 AFB30038 */ sw $s3, 0x38($sp) /* 076D88 7F042258 AFB20034 */ sw $s2, 0x34($sp) /* 076D8C 7F04225C AFB10030 */ sw $s1, 0x30($sp) /* 076D90 7F042260 AFB0002C */ sw $s0, 0x2c($sp) /* 076D94 7F042264 F7B40020 */ sdc1 $f20, 0x20($sp) /* 076D98 7F042268 8C820010 */ lw $v0, 0x10($a0) /* 076D9C 7F04226C 240F0001 */ li $t7, 1 /* 076DA0 7F042270 3C018003 */ lui $at, %hi(D_80030B0C) /* 076DA4 7F042274 8C4E0014 */ lw $t6, 0x14($v0) /* 076DA8 7F042278 AFAF02A4 */ sw $t7, 0x2a4($sp) /* 076DAC 7F04227C AC200B0C */ sw $zero, %lo(D_80030B0C)($at) /* 076DB0 7F042280 AFAE02A8 */ sw $t6, 0x2a8($sp) /* 076DB4 7F042284 C4840058 */ lwc1 $f4, 0x58($a0) /* 076DB8 7F042288 C4A00000 */ lwc1 $f0, ($a1) /* 076DBC 7F04228C 00E08025 */ move $s0, $a3 /* 076DC0 7F042290 00A08825 */ move $s1, $a1 /* 076DC4 7F042294 46040032 */ c.eq.s $f0, $f4 /* 076DC8 7F042298 00809025 */ move $s2, $a0 /* 076DCC 7F04229C 00C09825 */ move $s3, $a2 /* 076DD0 7F0422A0 4502000E */ bc1fl .L7F0422DC /* 076DD4 7F0422A4 E7A00268 */ swc1 $f0, 0x268($sp) /* 076DD8 7F0422A8 C4A60004 */ lwc1 $f6, 4($a1) /* 076DDC 7F0422AC C488005C */ lwc1 $f8, 0x5c($a0) /* 076DE0 7F0422B0 46083032 */ c.eq.s $f6, $f8 /* 076DE4 7F0422B4 00000000 */ nop /* 076DE8 7F0422B8 45020008 */ bc1fl .L7F0422DC /* 076DEC 7F0422BC E7A00268 */ swc1 $f0, 0x268($sp) /* 076DF0 7F0422C0 C4AA0008 */ lwc1 $f10, 8($a1) /* 076DF4 7F0422C4 C4900060 */ lwc1 $f16, 0x60($a0) /* 076DF8 7F0422C8 46105032 */ c.eq.s $f10, $f16 /* 076DFC 7F0422CC 00000000 */ nop /* 076E00 7F0422D0 450301C6 */ bc1tl .L7F0429EC /* 076E04 7F0422D4 8FBF003C */ lw $ra, 0x3c($sp) /* 076E08 7F0422D8 E7A00268 */ swc1 $f0, 0x268($sp) .L7F0422DC: /* 076E0C 7F0422DC C6320004 */ lwc1 $f18, 4($s1) /* 076E10 7F0422E0 E7B2026C */ swc1 $f18, 0x26c($sp) /* 076E14 7F0422E4 C6240008 */ lwc1 $f4, 8($s1) /* 076E18 7F0422E8 E7A40270 */ swc1 $f4, 0x270($sp) /* 076E1C 7F0422EC 8E580064 */ lw $t8, 0x64($s2) /* 076E20 7F0422F0 33190080 */ andi $t9, $t8, 0x80 /* 076E24 7F0422F4 532001BD */ beql $t9, $zero, .L7F0429EC /* 076E28 7F0422F8 8FBF003C */ lw $ra, 0x3c($sp) /* 076E2C 7F0422FC 8E49006C */ lw $t1, 0x6c($s2) /* 076E30 7F042300 26440058 */ addiu $a0, $s2, 0x58 /* 076E34 7F042304 27A50268 */ addiu $a1, $sp, 0x268 /* 076E38 7F042308 8D2A0000 */ lw $t2, ($t1) /* 076E3C 7F04230C 27A70074 */ addiu $a3, $sp, 0x74 /* 076E40 7F042310 27AC007C */ addiu $t4, $sp, 0x7c /* 076E44 7F042314 314B0004 */ andi $t3, $t2, 4 /* 076E48 7F042318 116001B3 */ beqz $t3, .L7F0429E8 /* 076E4C 7F04231C 27AD0260 */ addiu $t5, $sp, 0x260 /* 076E50 7F042320 AFA00260 */ sw $zero, 0x260($sp) /* 076E54 7F042324 8E46006C */ lw $a2, 0x6c($s2) /* 076E58 7F042328 240E0014 */ li $t6, 20 /* 076E5C 7F04232C AFAE0018 */ sw $t6, 0x18($sp) /* 076E60 7F042330 AFB102B4 */ sw $s1, 0x2b4($sp) /* 076E64 7F042334 AFA40048 */ sw $a0, 0x48($sp) /* 076E68 7F042338 AFA202AC */ sw $v0, 0x2ac($sp) /* 076E6C 7F04233C AFAD0014 */ sw $t5, 0x14($sp) /* 076E70 7F042340 AFAC0010 */ sw $t4, 0x10($sp) /* 076E74 7F042344 0FC2D2AD */ jal sub_GAME_7F0B4AB4 /* 076E78 7F042348 24C600CC */ addiu $a2, $a2, 0xcc /* 076E7C 7F04234C 8FA30260 */ lw $v1, 0x260($sp) /* 076E80 7F042350 27B8007C */ addiu $t8, $sp, 0x7c /* 076E84 7F042354 24050064 */ li $a1, 100 /* 076E88 7F042358 28610015 */ slti $at, $v1, 0x15 /* 076E8C 7F04235C 54200003 */ bnezl $at, .L7F04236C /* 076E90 7F042360 00037880 */ sll $t7, $v1, 2 /* 076E94 7F042364 24030014 */ li $v1, 20 /* 076E98 7F042368 00037880 */ sll $t7, $v1, 2 .L7F04236C: /* 076E9C 7F04236C 01F82021 */ addu $a0, $t7, $t8 /* 076EA0 7F042370 0FC2E3A6 */ jal sub_GAME_7F0B8E98 /* 076EA4 7F042374 AFA30260 */ sw $v1, 0x260($sp) /* 076EA8 7F042378 8FA30260 */ lw $v1, 0x260($sp) /* 076EAC 7F04237C 2419FFFF */ li $t9, -1 /* 076EB0 7F042380 27B1007C */ addiu $s1, $sp, 0x7c /* 076EB4 7F042384 00621821 */ addu $v1, $v1, $v0 /* 076EB8 7F042388 00034880 */ sll $t1, $v1, 2 /* 076EBC 7F04238C 03A95021 */ addu $t2, $sp, $t1 /* 076EC0 7F042390 AD59007C */ sw $t9, 0x7c($t2) /* 076EC4 7F042394 8FAB007C */ lw $t3, 0x7c($sp) /* 076EC8 7F042398 AFA30260 */ sw $v1, 0x260($sp) /* 076ECC 7F04239C 0562009E */ bltzl $t3, .L7F042618 /* 076ED0 7F0423A0 8FAD02A4 */ lw $t5, 0x2a4($sp) /* 076ED4 7F0423A4 4480A000 */ mtc1 $zero, $f20 /* 076ED8 7F0423A8 8E260000 */ lw $a2, ($s1) /* 076EDC 7F0423AC 8FA40048 */ lw $a0, 0x48($sp) .L7F0423B0: /* 076EE0 7F0423B0 27A50268 */ addiu $a1, $sp, 0x268 /* 076EE4 7F0423B4 0FC2DE9E */ jal sub_GAME_7F0B7A78 /* 076EE8 7F0423B8 27A70274 */ addiu $a3, $sp, 0x274 /* 076EEC 7F0423BC 50400092 */ beql $v0, $zero, .L7F042608 /* 076EF0 7F0423C0 8E260004 */ lw $a2, 4($s1) /* 076EF4 7F0423C4 0FC2D20C */ jal get_room_data_float2 /* 076EF8 7F0423C8 00000000 */ nop /* 076EFC 7F0423CC C7A60274 */ lwc1 $f6, 0x274($sp) /* 076F00 7F0423D0 C7AA0278 */ lwc1 $f10, 0x278($sp) /* 076F04 7F0423D4 C7B2027C */ lwc1 $f18, 0x27c($sp) /* 076F08 7F0423D8 46003202 */ mul.s $f8, $f6, $f0 /* 076F0C 7F0423DC C7A60268 */ lwc1 $f6, 0x268($sp) /* 076F10 7F0423E0 46005402 */ mul.s $f16, $f10, $f0 /* 076F14 7F0423E4 C7AA0268 */ lwc1 $f10, 0x268($sp) /* 076F18 7F0423E8 46009102 */ mul.s $f4, $f18, $f0 /* 076F1C 7F0423EC E7A80274 */ swc1 $f8, 0x274($sp) /* 076F20 7F0423F0 E7B00278 */ swc1 $f16, 0x278($sp) /* 076F24 7F0423F4 E7A4027C */ swc1 $f4, 0x27c($sp) /* 076F28 7F0423F8 C64C0058 */ lwc1 $f12, 0x58($s2) /* 076F2C 7F0423FC 4606603E */ c.le.s $f12, $f6 /* 076F30 7F042400 00000000 */ nop /* 076F34 7F042404 4502000A */ bc1fl .L7F042430 /* 076F38 7F042408 460C503E */ c.le.s $f10, $f12 /* 076F3C 7F04240C 4606403E */ c.le.s $f8, $f6 /* 076F40 7F042410 00000000 */ nop /* 076F44 7F042414 45020006 */ bc1fl .L7F042430 /* 076F48 7F042418 460C503E */ c.le.s $f10, $f12 /* 076F4C 7F04241C 4608603E */ c.le.s $f12, $f8 /* 076F50 7F042420 00000000 */ nop /* 076F54 7F042424 4503000E */ bc1tl .L7F042460 /* 076F58 7F042428 C642005C */ lwc1 $f2, 0x5c($s2) /* 076F5C 7F04242C 460C503E */ c.le.s $f10, $f12 .L7F042430: /* 076F60 7F042430 C7B00274 */ lwc1 $f16, 0x274($sp) /* 076F64 7F042434 45020074 */ bc1fl .L7F042608 /* 076F68 7F042438 8E260004 */ lw $a2, 4($s1) /* 076F6C 7F04243C 4610503E */ c.le.s $f10, $f16 /* 076F70 7F042440 00000000 */ nop /* 076F74 7F042444 45020070 */ bc1fl .L7F042608 /* 076F78 7F042448 8E260004 */ lw $a2, 4($s1) /* 076F7C 7F04244C 460C803E */ c.le.s $f16, $f12 /* 076F80 7F042450 00000000 */ nop /* 076F84 7F042454 4502006C */ bc1fl .L7F042608 /* 076F88 7F042458 8E260004 */ lw $a2, 4($s1) /* 076F8C 7F04245C C642005C */ lwc1 $f2, 0x5c($s2) .L7F042460: /* 076F90 7F042460 C7B2026C */ lwc1 $f18, 0x26c($sp) /* 076F94 7F042464 C7A40278 */ lwc1 $f4, 0x278($sp) /* 076F98 7F042468 C7A6026C */ lwc1 $f6, 0x26c($sp) /* 076F9C 7F04246C 4612103E */ c.le.s $f2, $f18 /* 076FA0 7F042470 00000000 */ nop /* 076FA4 7F042474 4502000A */ bc1fl .L7F0424A0 /* 076FA8 7F042478 4602303E */ c.le.s $f6, $f2 /* 076FAC 7F04247C 4612203E */ c.le.s $f4, $f18 /* 076FB0 7F042480 00000000 */ nop /* 076FB4 7F042484 45020006 */ bc1fl .L7F0424A0 /* 076FB8 7F042488 4602303E */ c.le.s $f6, $f2 /* 076FBC 7F04248C 4604103E */ c.le.s $f2, $f4 /* 076FC0 7F042490 00000000 */ nop /* 076FC4 7F042494 4503000E */ bc1tl .L7F0424D0 /* 076FC8 7F042498 C6400060 */ lwc1 $f0, 0x60($s2) /* 076FCC 7F04249C 4602303E */ c.le.s $f6, $f2 .L7F0424A0: /* 076FD0 7F0424A0 C7A80278 */ lwc1 $f8, 0x278($sp) /* 076FD4 7F0424A4 45020058 */ bc1fl .L7F042608 /* 076FD8 7F0424A8 8E260004 */ lw $a2, 4($s1) /* 076FDC 7F0424AC 4608303E */ c.le.s $f6, $f8 /* 076FE0 7F0424B0 00000000 */ nop /* 076FE4 7F0424B4 45020054 */ bc1fl .L7F042608 /* 076FE8 7F0424B8 8E260004 */ lw $a2, 4($s1) /* 076FEC 7F0424BC 4602403E */ c.le.s $f8, $f2 /* 076FF0 7F0424C0 00000000 */ nop /* 076FF4 7F0424C4 45020050 */ bc1fl .L7F042608 /* 076FF8 7F0424C8 8E260004 */ lw $a2, 4($s1) /* 076FFC 7F0424CC C6400060 */ lwc1 $f0, 0x60($s2) .L7F0424D0: /* 077000 7F0424D0 C7AA0270 */ lwc1 $f10, 0x270($sp) /* 077004 7F0424D4 C7B0027C */ lwc1 $f16, 0x27c($sp) /* 077008 7F0424D8 C7B20270 */ lwc1 $f18, 0x270($sp) /* 07700C 7F0424DC 460A003E */ c.le.s $f0, $f10 /* 077010 7F0424E0 00000000 */ nop /* 077014 7F0424E4 4502000A */ bc1fl .L7F042510 /* 077018 7F0424E8 4600903E */ c.le.s $f18, $f0 /* 07701C 7F0424EC 460A803E */ c.le.s $f16, $f10 /* 077020 7F0424F0 00000000 */ nop /* 077024 7F0424F4 45020006 */ bc1fl .L7F042510 /* 077028 7F0424F8 4600903E */ c.le.s $f18, $f0 /* 07702C 7F0424FC 4610003E */ c.le.s $f0, $f16 /* 077030 7F042500 00000000 */ nop /* 077034 7F042504 4503000E */ bc1tl .L7F042540 /* 077038 7F042508 C7A60274 */ lwc1 $f6, 0x274($sp) /* 07703C 7F04250C 4600903E */ c.le.s $f18, $f0 .L7F042510: /* 077040 7F042510 C7A4027C */ lwc1 $f4, 0x27c($sp) /* 077044 7F042514 4502003C */ bc1fl .L7F042608 /* 077048 7F042518 8E260004 */ lw $a2, 4($s1) /* 07704C 7F04251C 4604903E */ c.le.s $f18, $f4 /* 077050 7F042520 00000000 */ nop /* 077054 7F042524 45020038 */ bc1fl .L7F042608 /* 077058 7F042528 8E260004 */ lw $a2, 4($s1) /* 07705C 7F04252C 4600203E */ c.le.s $f4, $f0 /* 077060 7F042530 00000000 */ nop /* 077064 7F042534 45020034 */ bc1fl .L7F042608 /* 077068 7F042538 8E260004 */ lw $a2, 4($s1) /* 07706C 7F04253C C7A60274 */ lwc1 $f6, 0x274($sp) .L7F042540: /* 077070 7F042540 C7A80278 */ lwc1 $f8, 0x278($sp) /* 077074 7F042544 46066032 */ c.eq.s $f12, $f6 /* 077078 7F042548 00000000 */ nop /* 07707C 7F04254C 4502000A */ bc1fl .L7F042578 /* 077080 7F042550 C7B00274 */ lwc1 $f16, 0x274($sp) /* 077084 7F042554 46081032 */ c.eq.s $f2, $f8 /* 077088 7F042558 C7AA027C */ lwc1 $f10, 0x27c($sp) /* 07708C 7F04255C 45020006 */ bc1fl .L7F042578 /* 077090 7F042560 C7B00274 */ lwc1 $f16, 0x274($sp) /* 077094 7F042564 460A0032 */ c.eq.s $f0, $f10 /* 077098 7F042568 00000000 */ nop /* 07709C 7F04256C 45030026 */ bc1tl .L7F042608 /* 0770A0 7F042570 8E260004 */ lw $a2, 4($s1) /* 0770A4 7F042574 C7B00274 */ lwc1 $f16, 0x274($sp) .L7F042578: /* 0770A8 7F042578 AFA002A4 */ sw $zero, 0x2a4($sp) /* 0770AC 7F04257C 02002025 */ move $a0, $s0 /* 0770B0 7F042580 E6700000 */ swc1 $f16, ($s3) /* 0770B4 7F042584 C7B20278 */ lwc1 $f18, 0x278($sp) /* 0770B8 7F042588 26050004 */ addiu $a1, $s0, 4 /* 0770BC 7F04258C E6720004 */ swc1 $f18, 4($s3) /* 0770C0 7F042590 C7A4027C */ lwc1 $f4, 0x27c($sp) /* 0770C4 7F042594 E6640008 */ swc1 $f4, 8($s3) /* 0770C8 7F042598 C7A60280 */ lwc1 $f6, 0x280($sp) /* 0770CC 7F04259C E6060000 */ swc1 $f6, ($s0) /* 0770D0 7F0425A0 C6100000 */ lwc1 $f16, ($s0) /* 0770D4 7F0425A4 C7A80284 */ lwc1 $f8, 0x284($sp) /* 0770D8 7F0425A8 4610A032 */ c.eq.s $f20, $f16 /* 0770DC 7F0425AC E6080004 */ swc1 $f8, 4($s0) /* 0770E0 7F0425B0 C7AA0288 */ lwc1 $f10, 0x288($sp) /* 0770E4 7F0425B4 4500000C */ bc1f .L7F0425E8 /* 0770E8 7F0425B8 E60A0008 */ swc1 $f10, 8($s0) /* 0770EC 7F0425BC C6120004 */ lwc1 $f18, 4($s0) /* 0770F0 7F0425C0 4612A032 */ c.eq.s $f20, $f18 /* 0770F4 7F0425C4 00000000 */ nop /* 0770F8 7F0425C8 45000007 */ bc1f .L7F0425E8 /* 0770FC 7F0425CC 00000000 */ nop /* 077100 7F0425D0 C6040008 */ lwc1 $f4, 8($s0) /* 077104 7F0425D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077108 7F0425D8 4604A032 */ c.eq.s $f20, $f4 /* 07710C 7F0425DC 00000000 */ nop /* 077110 7F0425E0 45030006 */ bc1tl .L7F0425FC /* 077114 7F0425E4 44813000 */ mtc1 $at, $f6 .L7F0425E8: /* 077118 7F0425E8 0C007DD4 */ jal guNormalize /* 07711C 7F0425EC 26060008 */ addiu $a2, $s0, 8 /* 077120 7F0425F0 10000005 */ b .L7F042608 /* 077124 7F0425F4 8E260004 */ lw $a2, 4($s1) /* 077128 7F0425F8 44813000 */ mtc1 $at, $f6 .L7F0425FC: /* 07712C 7F0425FC 00000000 */ nop /* 077130 7F042600 E6060008 */ swc1 $f6, 8($s0) /* 077134 7F042604 8E260004 */ lw $a2, 4($s1) .L7F042608: /* 077138 7F042608 26310004 */ addiu $s1, $s1, 4 /* 07713C 7F04260C 04C3FF68 */ bgezl $a2, .L7F0423B0 /* 077140 7F042610 8FA40048 */ lw $a0, 0x48($sp) /* 077144 7F042614 8FAD02A4 */ lw $t5, 0x2a4($sp) .L7F042618: /* 077148 7F042618 8FA202B4 */ lw $v0, 0x2b4($sp) /* 07714C 7F04261C 55A00037 */ bnezl $t5, .L7F0426FC /* 077150 7F042620 27AE007C */ addiu $t6, $sp, 0x7c /* 077154 7F042624 C4480000 */ lwc1 $f8, ($v0) /* 077158 7F042628 C64A0058 */ lwc1 $f10, 0x58($s2) /* 07715C 7F04262C 460A4401 */ sub.s $f16, $f8, $f10 /* 077160 7F042630 E7B00064 */ swc1 $f16, 0x64($sp) /* 077164 7F042634 C644005C */ lwc1 $f4, 0x5c($s2) /* 077168 7F042638 C4520004 */ lwc1 $f18, 4($v0) /* 07716C 7F04263C 46049181 */ sub.s $f6, $f18, $f4 /* 077170 7F042640 C7B20064 */ lwc1 $f18, 0x64($sp) /* 077174 7F042644 E7A60068 */ swc1 $f6, 0x68($sp) /* 077178 7F042648 C64A0060 */ lwc1 $f10, 0x60($s2) /* 07717C 7F04264C C4480008 */ lwc1 $f8, 8($v0) /* 077180 7F042650 46129102 */ mul.s $f4, $f18, $f18 /* 077184 7F042654 C7A60068 */ lwc1 $f6, 0x68($sp) /* 077188 7F042658 460A4401 */ sub.s $f16, $f8, $f10 /* 07718C 7F04265C 46063202 */ mul.s $f8, $f6, $f6 /* 077190 7F042660 E7B0006C */ swc1 $f16, 0x6c($sp) /* 077194 7F042664 C7B0006C */ lwc1 $f16, 0x6c($sp) /* 077198 7F042668 46108482 */ mul.s $f18, $f16, $f16 /* 07719C 7F04266C 46082280 */ add.s $f10, $f4, $f8 /* 0771A0 7F042670 0C007DF8 */ jal sqrtf /* 0771A4 7F042674 460A9300 */ add.s $f12, $f18, $f10 /* 0771A8 7F042678 3C018005 */ lui $at, %hi(D_80052A58) # -0.000000 /* 0771AC 7F04267C C42C2A58 */ lwc1 $f12, %lo(D_80052A58)($at) /* 0771B0 7F042680 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 0771B4 7F042684 C7A40064 */ lwc1 $f4, 0x64($sp) /* 0771B8 7F042688 4600603C */ c.lt.s $f12, $f0 /* 0771BC 7F04268C 00000000 */ nop /* 0771C0 7F042690 45020004 */ bc1fl .L7F0426A4 /* 0771C4 7F042694 44811000 */ mtc1 $at, $f2 /* 0771C8 7F042698 10000003 */ b .L7F0426A8 /* 0771CC 7F04269C 46006083 */ div.s $f2, $f12, $f0 /* 0771D0 7F0426A0 44811000 */ mtc1 $at, $f2 .L7F0426A4: /* 0771D4 7F0426A4 00000000 */ nop .L7F0426A8: /* 0771D8 7F0426A8 46041202 */ mul.s $f8, $f2, $f4 /* 0771DC 7F0426AC C6660000 */ lwc1 $f6, ($s3) /* 0771E0 7F0426B0 C6720004 */ lwc1 $f18, 4($s3) /* 0771E4 7F0426B4 46083401 */ sub.s $f16, $f6, $f8 /* 0771E8 7F0426B8 C6680008 */ lwc1 $f8, 8($s3) /* 0771EC 7F0426BC E6700000 */ swc1 $f16, ($s3) /* 0771F0 7F0426C0 C7AA0068 */ lwc1 $f10, 0x68($sp) /* 0771F4 7F0426C4 460A1102 */ mul.s $f4, $f2, $f10 /* 0771F8 7F0426C8 46049181 */ sub.s $f6, $f18, $f4 /* 0771FC 7F0426CC C6640000 */ lwc1 $f4, ($s3) /* 077200 7F0426D0 E6660004 */ swc1 $f6, 4($s3) /* 077204 7F0426D4 C7B0006C */ lwc1 $f16, 0x6c($sp) /* 077208 7F0426D8 46101282 */ mul.s $f10, $f2, $f16 /* 07720C 7F0426DC 460A4481 */ sub.s $f18, $f8, $f10 /* 077210 7F0426E0 E6720008 */ swc1 $f18, 8($s3) /* 077214 7F0426E4 E7A40268 */ swc1 $f4, 0x268($sp) /* 077218 7F0426E8 C6660004 */ lwc1 $f6, 4($s3) /* 07721C 7F0426EC E7A6026C */ swc1 $f6, 0x26c($sp) /* 077220 7F0426F0 C6700008 */ lwc1 $f16, 8($s3) /* 077224 7F0426F4 E7B00270 */ swc1 $f16, 0x270($sp) /* 077228 7F0426F8 27AE007C */ addiu $t6, $sp, 0x7c .L7F0426FC: /* 07722C 7F0426FC AFAE0018 */ sw $t6, 0x18($sp) /* 077230 7F042700 8FA402AC */ lw $a0, 0x2ac($sp) /* 077234 7F042704 8FA50048 */ lw $a1, 0x48($sp) /* 077238 7F042708 27A60268 */ addiu $a2, $sp, 0x268 /* 07723C 7F04270C 2407001F */ li $a3, 31 /* 077240 7F042710 AFB30010 */ sw $s3, 0x10($sp) /* 077244 7F042714 0FC10783 */ jal sub_GAME_7F041E0C /* 077248 7F042718 AFB00014 */ sw $s0, 0x14($sp) /* 07724C 7F04271C 14400036 */ bnez $v0, .L7F0427F8 /* 077250 7F042720 8FAB02C4 */ lw $t3, 0x2c4($sp) /* 077254 7F042724 8FAF02A4 */ lw $t7, 0x2a4($sp) /* 077258 7F042728 8FB802C0 */ lw $t8, 0x2c0($sp) /* 07725C 7F04272C 8FAD02A4 */ lw $t5, 0x2a4($sp) /* 077260 7F042730 55E00016 */ bnezl $t7, .L7F04278C /* 077264 7F042734 24100001 */ li $s0, 1 /* 077268 7F042738 53000014 */ beql $t8, $zero, .L7F04278C /* 07726C 7F04273C 24100001 */ li $s0, 1 /* 077270 7F042740 8FA902C4 */ lw $t1, 0x2c4($sp) /* 077274 7F042744 24190002 */ li $t9, 2 /* 077278 7F042748 AFB902A4 */ sw $t9, 0x2a4($sp) /* 07727C 7F04274C 1520000C */ bnez $t1, .L7F042780 /* 077280 7F042750 8FA40048 */ lw $a0, 0x48($sp) /* 077284 7F042754 8E46006C */ lw $a2, 0x6c($s2) /* 077288 7F042758 27AA007C */ addiu $t2, $sp, 0x7c /* 07728C 7F04275C 27AB0260 */ addiu $t3, $sp, 0x260 /* 077290 7F042760 240C0014 */ li $t4, 20 /* 077294 7F042764 AFAC0018 */ sw $t4, 0x18($sp) /* 077298 7F042768 AFAB0014 */ sw $t3, 0x14($sp) /* 07729C 7F04276C AFAA0010 */ sw $t2, 0x10($sp) /* 0772A0 7F042770 02602825 */ move $a1, $s3 /* 0772A4 7F042774 27A70074 */ addiu $a3, $sp, 0x74 /* 0772A8 7F042778 0FC2D2AD */ jal sub_GAME_7F0B4AB4 /* 0772AC 7F04277C 24C600CC */ addiu $a2, $a2, 0xcc .L7F042780: /* 0772B0 7F042780 1000003A */ b .L7F04286C /* 0772B4 7F042784 8FA902A4 */ lw $t1, 0x2a4($sp) /* 0772B8 7F042788 24100001 */ li $s0, 1 .L7F04278C: /* 0772BC 7F04278C 11B00003 */ beq $t5, $s0, .L7F04279C /* 0772C0 7F042790 8FAE02C4 */ lw $t6, 0x2c4($sp) /* 0772C4 7F042794 55C00035 */ bnezl $t6, .L7F04286C /* 0772C8 7F042798 8FA902A4 */ lw $t1, 0x2a4($sp) .L7F04279C: /* 0772CC 7F04279C 8FAF02A4 */ lw $t7, 0x2a4($sp) /* 0772D0 7F0427A0 8FA40048 */ lw $a0, 0x48($sp) /* 0772D4 7F0427A4 27A50268 */ addiu $a1, $sp, 0x268 /* 0772D8 7F0427A8 11F0000A */ beq $t7, $s0, .L7F0427D4 /* 0772DC 7F0427AC 27A70074 */ addiu $a3, $sp, 0x74 /* 0772E0 7F0427B0 8E46006C */ lw $a2, 0x6c($s2) /* 0772E4 7F0427B4 27B8007C */ addiu $t8, $sp, 0x7c /* 0772E8 7F0427B8 27B90260 */ addiu $t9, $sp, 0x260 /* 0772EC 7F0427BC 24090014 */ li $t1, 20 /* 0772F0 7F0427C0 AFA90018 */ sw $t1, 0x18($sp) /* 0772F4 7F0427C4 AFB90014 */ sw $t9, 0x14($sp) /* 0772F8 7F0427C8 AFB80010 */ sw $t8, 0x10($sp) /* 0772FC 7F0427CC 0FC2D2AD */ jal sub_GAME_7F0B4AB4 /* 077300 7F0427D0 24C600CC */ addiu $a2, $a2, 0xcc .L7F0427D4: /* 077304 7F0427D4 C7A80268 */ lwc1 $f8, 0x268($sp) /* 077308 7F0427D8 E6480058 */ swc1 $f8, 0x58($s2) /* 07730C 7F0427DC C7AA0270 */ lwc1 $f10, 0x270($sp) /* 077310 7F0427E0 E64A0060 */ swc1 $f10, 0x60($s2) /* 077314 7F0427E4 8FAA02AC */ lw $t2, 0x2ac($sp) /* 077318 7F0427E8 C7A0026C */ lwc1 $f0, 0x26c($sp) /* 07731C 7F0427EC E540000C */ swc1 $f0, 0xc($t2) /* 077320 7F0427F0 1000001D */ b .L7F042868 /* 077324 7F0427F4 E640005C */ swc1 $f0, 0x5c($s2) .L7F0427F8: /* 077328 7F0427F8 1560001B */ bnez $t3, .L7F042868 /* 07732C 7F0427FC 27A50268 */ addiu $a1, $sp, 0x268 /* 077330 7F042800 C6520058 */ lwc1 $f18, 0x58($s2) /* 077334 7F042804 27AC007C */ addiu $t4, $sp, 0x7c /* 077338 7F042808 27AD0260 */ addiu $t5, $sp, 0x260 /* 07733C 7F04280C E7B20268 */ swc1 $f18, 0x268($sp) /* 077340 7F042810 C6440060 */ lwc1 $f4, 0x60($s2) /* 077344 7F042814 240E0014 */ li $t6, 20 /* 077348 7F042818 8FA40048 */ lw $a0, 0x48($sp) /* 07734C 7F04281C E7A40270 */ swc1 $f4, 0x270($sp) /* 077350 7F042820 8E46006C */ lw $a2, 0x6c($s2) /* 077354 7F042824 AFAE0018 */ sw $t6, 0x18($sp) /* 077358 7F042828 AFAD0014 */ sw $t5, 0x14($sp) /* 07735C 7F04282C AFAC0010 */ sw $t4, 0x10($sp) /* 077360 7F042830 27A70074 */ addiu $a3, $sp, 0x74 /* 077364 7F042834 0FC2D2AD */ jal sub_GAME_7F0B4AB4 /* 077368 7F042838 24C600CC */ addiu $a2, $a2, 0xcc /* 07736C 7F04283C C7A0026C */ lwc1 $f0, 0x26c($sp) /* 077370 7F042840 8FAF02AC */ lw $t7, 0x2ac($sp) /* 077374 7F042844 24190002 */ li $t9, 2 /* 077378 7F042848 E5E0000C */ swc1 $f0, 0xc($t7) /* 07737C 7F04284C E640005C */ swc1 $f0, 0x5c($s2) /* 077380 7F042850 8FB802C0 */ lw $t8, 0x2c0($sp) /* 077384 7F042854 53000004 */ beql $t8, $zero, .L7F042868 /* 077388 7F042858 AFA002A4 */ sw $zero, 0x2a4($sp) /* 07738C 7F04285C 10000002 */ b .L7F042868 /* 077390 7F042860 AFB902A4 */ sw $t9, 0x2a4($sp) /* 077394 7F042864 AFA002A4 */ sw $zero, 0x2a4($sp) .L7F042868: /* 077398 7F042868 8FA902A4 */ lw $t1, 0x2a4($sp) .L7F04286C: /* 07739C 7F04286C 24100001 */ li $s0, 1 /* 0773A0 7F042870 8FAA02C4 */ lw $t2, 0x2c4($sp) /* 0773A4 7F042874 51300004 */ beql $t1, $s0, .L7F042888 /* 0773A8 7F042878 8E4B006C */ lw $t3, 0x6c($s2) /* 0773AC 7F04287C 5540005B */ bnezl $t2, .L7F0429EC /* 0773B0 7F042880 8FBF003C */ lw $ra, 0x3c($sp) /* 0773B4 7F042884 8E4B006C */ lw $t3, 0x6c($s2) .L7F042888: /* 0773B8 7F042888 00004025 */ move $t0, $zero /* 0773BC 7F04288C 8D620000 */ lw $v0, ($t3) /* 0773C0 7F042890 304C0008 */ andi $t4, $v0, 8 /* 0773C4 7F042894 15800028 */ bnez $t4, .L7F042938 /* 0773C8 7F042898 01801025 */ move $v0, $t4 /* 0773CC 7F04289C 8FA202AC */ lw $v0, 0x2ac($sp) /* 0773D0 7F0428A0 27A402A8 */ addiu $a0, $sp, 0x2a8 /* 0773D4 7F0428A4 8C4D0014 */ lw $t5, 0x14($v0) /* 0773D8 7F0428A8 AFAD02A8 */ sw $t5, 0x2a8($sp) /* 0773DC 7F0428AC C6460060 */ lwc1 $f6, 0x60($s2) /* 0773E0 7F0428B0 8E470058 */ lw $a3, 0x58($s2) /* 0773E4 7F0428B4 8C460010 */ lw $a2, 0x10($v0) /* 0773E8 7F0428B8 8C450008 */ lw $a1, 8($v0) /* 0773EC 7F0428BC AFA00264 */ sw $zero, 0x264($sp) /* 0773F0 7F0428C0 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 0773F4 7F0428C4 E7A60010 */ swc1 $f6, 0x10($sp) /* 0773F8 7F0428C8 1450000F */ bne $v0, $s0, .L7F042908 /* 0773FC 7F0428CC 8FA80264 */ lw $t0, 0x264($sp) /* 077400 7F0428D0 8FAE02A8 */ lw $t6, 0x2a8($sp) /* 077404 7F0428D4 8FA302AC */ lw $v1, 0x2ac($sp) /* 077408 7F0428D8 51C0000C */ beql $t6, $zero, .L7F04290C /* 07740C 7F0428DC 8E43006C */ lw $v1, 0x6c($s2) /* 077410 7F0428E0 AC6E0014 */ sw $t6, 0x14($v1) /* 077414 7F0428E4 C6500058 */ lwc1 $f16, 0x58($s2) /* 077418 7F0428E8 E4700008 */ swc1 $f16, 8($v1) /* 07741C 7F0428EC C6480060 */ lwc1 $f8, 0x60($s2) /* 077420 7F0428F0 E4680010 */ swc1 $f8, 0x10($v1) /* 077424 7F0428F4 8E4F006C */ lw $t7, 0x6c($s2) /* 077428 7F0428F8 8DE20000 */ lw $v0, ($t7) /* 07742C 7F0428FC 30580008 */ andi $t8, $v0, 8 /* 077430 7F042900 1000000D */ b .L7F042938 /* 077434 7F042904 03001025 */ move $v0, $t8 .L7F042908: /* 077438 7F042908 8E43006C */ lw $v1, 0x6c($s2) .L7F04290C: /* 07743C 7F04290C 8C790000 */ lw $t9, ($v1) /* 077440 7F042910 37290008 */ ori $t1, $t9, 8 /* 077444 7F042914 AC690000 */ sw $t1, ($v1) /* 077448 7F042918 8FAA02AC */ lw $t2, 0x2ac($sp) /* 07744C 7F04291C 914B0001 */ lbu $t3, 1($t2) /* 077450 7F042920 356C0008 */ ori $t4, $t3, 8 /* 077454 7F042924 A14C0001 */ sb $t4, 1($t2) /* 077458 7F042928 8E4D006C */ lw $t5, 0x6c($s2) /* 07745C 7F04292C 8DA20000 */ lw $v0, ($t5) /* 077460 7F042930 304E0008 */ andi $t6, $v0, 8 /* 077464 7F042934 01C01025 */ move $v0, $t6 .L7F042938: /* 077468 7F042938 10400016 */ beqz $v0, .L7F042994 /* 07746C 7F04293C 8FA40048 */ lw $a0, 0x48($sp) /* 077470 7F042940 27A50074 */ addiu $a1, $sp, 0x74 /* 077474 7F042944 00003025 */ move $a2, $zero /* 077478 7F042948 0FC2BC83 */ jal sub_GAME_7F0AF20C /* 07747C 7F04294C AFA80264 */ sw $t0, 0x264($sp) /* 077480 7F042950 8FA80264 */ lw $t0, 0x264($sp) /* 077484 7F042954 1040000F */ beqz $v0, .L7F042994 /* 077488 7F042958 AFA202A8 */ sw $v0, 0x2a8($sp) /* 07748C 7F04295C 8FA402AC */ lw $a0, 0x2ac($sp) /* 077490 7F042960 2401FFF7 */ li $at, -9 /* 077494 7F042964 AC820014 */ sw $v0, 0x14($a0) /* 077498 7F042968 C64A0058 */ lwc1 $f10, 0x58($s2) /* 07749C 7F04296C E48A0008 */ swc1 $f10, 8($a0) /* 0774A0 7F042970 C6520060 */ lwc1 $f18, 0x60($s2) /* 0774A4 7F042974 E4920010 */ swc1 $f18, 0x10($a0) /* 0774A8 7F042978 8E43006C */ lw $v1, 0x6c($s2) /* 0774AC 7F04297C 8C6F0000 */ lw $t7, ($v1) /* 0774B0 7F042980 01E1C024 */ and $t8, $t7, $at /* 0774B4 7F042984 AC780000 */ sw $t8, ($v1) /* 0774B8 7F042988 90990001 */ lbu $t9, 1($a0) /* 0774BC 7F04298C 03214824 */ and $t1, $t9, $at /* 0774C0 7F042990 A0890001 */ sb $t1, 1($a0) .L7F042994: /* 0774C4 7F042994 93AB0074 */ lbu $t3, 0x74($sp) /* 0774C8 7F042998 240400FF */ li $a0, 255 /* 0774CC 7F04299C 27AC0074 */ addiu $t4, $sp, 0x74 /* 0774D0 7F0429A0 108B000D */ beq $a0, $t3, .L7F0429D8 /* 0774D4 7F0429A4 010C1021 */ addu $v0, $t0, $t4 /* 0774D8 7F0429A8 90430000 */ lbu $v1, ($v0) /* 0774DC 7F0429AC 24050007 */ li $a1, 7 /* 0774E0 7F0429B0 8E4A006C */ lw $t2, 0x6c($s2) .L7F0429B4: /* 0774E4 7F0429B4 24420001 */ addiu $v0, $v0, 1 /* 0774E8 7F0429B8 01486821 */ addu $t5, $t2, $t0 /* 0774EC 7F0429BC A1A300CC */ sb $v1, 0xcc($t5) /* 0774F0 7F0429C0 90430000 */ lbu $v1, ($v0) /* 0774F4 7F0429C4 25080001 */ addiu $t0, $t0, 1 /* 0774F8 7F0429C8 50830004 */ beql $a0, $v1, .L7F0429DC /* 0774FC 7F0429CC 8E4F006C */ lw $t7, 0x6c($s2) /* 077500 7F0429D0 5505FFF8 */ bnel $t0, $a1, .L7F0429B4 /* 077504 7F0429D4 8E4A006C */ lw $t2, 0x6c($s2) .L7F0429D8: /* 077508 7F0429D8 8E4F006C */ lw $t7, 0x6c($s2) .L7F0429DC: /* 07750C 7F0429DC 240E00FF */ li $t6, 255 /* 077510 7F0429E0 01E8C021 */ addu $t8, $t7, $t0 /* 077514 7F0429E4 A30E00CC */ sb $t6, 0xcc($t8) .L7F0429E8: /* 077518 7F0429E8 8FBF003C */ lw $ra, 0x3c($sp) .L7F0429EC: /* 07751C 7F0429EC 8FA202A4 */ lw $v0, 0x2a4($sp) /* 077520 7F0429F0 D7B40020 */ ldc1 $f20, 0x20($sp) /* 077524 7F0429F4 8FB0002C */ lw $s0, 0x2c($sp) /* 077528 7F0429F8 8FB10030 */ lw $s1, 0x30($sp) /* 07752C 7F0429FC 8FB20034 */ lw $s2, 0x34($sp) /* 077530 7F042A00 8FB30038 */ lw $s3, 0x38($sp) /* 077534 7F042A04 03E00008 */ jr $ra /* 077538 7F042A08 27BD02B0 */ addiu $sp, $sp, 0x2b0 ) #endif #ifdef NONMATCHING void sub_GAME_7F042A0C(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A5C .word 0x3f7d70a4 /*0.99000001*/ .text glabel sub_GAME_7F042A0C /* 07753C 7F042A0C 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 077540 7F042A10 AFBF0034 */ sw $ra, 0x34($sp) /* 077544 7F042A14 AFB00030 */ sw $s0, 0x30($sp) /* 077548 7F042A18 AFA600C8 */ sw $a2, 0xc8($sp) /* 07754C 7F042A1C AFA700CC */ sw $a3, 0xcc($sp) /* 077550 7F042A20 8C900010 */ lw $s0, 0x10($a0) /* 077554 7F042A24 8E0E0014 */ lw $t6, 0x14($s0) /* 077558 7F042A28 AFA500C4 */ sw $a1, 0xc4($sp) /* 07755C 7F042A2C AFA400C0 */ sw $a0, 0xc0($sp) /* 077560 7F042A30 0FC10411 */ jal if_a0_plus_3_is_4_then_10_else_20 /* 077564 7F042A34 AFAE00B8 */ sw $t6, 0xb8($sp) /* 077568 7F042A38 8FA500C4 */ lw $a1, 0xc4($sp) /* 07756C 7F042A3C 240F0001 */ li $t7, 1 /* 077570 7F042A40 3C018003 */ lui $at, %hi(D_80030B0C) /* 077574 7F042A44 E7A000B4 */ swc1 $f0, 0xb4($sp) /* 077578 7F042A48 AFAF00B0 */ sw $t7, 0xb0($sp) /* 07757C 7F042A4C AC200B0C */ sw $zero, %lo(D_80030B0C)($at) /* 077580 7F042A50 C6040008 */ lwc1 $f4, 8($s0) /* 077584 7F042A54 C4A20000 */ lwc1 $f2, ($a1) /* 077588 7F042A58 46041032 */ c.eq.s $f2, $f4 /* 07758C 7F042A5C 00000000 */ nop /* 077590 7F042A60 4502000E */ bc1fl .L7F042A9C /* 077594 7F042A64 E7A20098 */ swc1 $f2, 0x98($sp) /* 077598 7F042A68 C4A60004 */ lwc1 $f6, 4($a1) /* 07759C 7F042A6C C608000C */ lwc1 $f8, 0xc($s0) /* 0775A0 7F042A70 46083032 */ c.eq.s $f6, $f8 /* 0775A4 7F042A74 00000000 */ nop /* 0775A8 7F042A78 45020008 */ bc1fl .L7F042A9C /* 0775AC 7F042A7C E7A20098 */ swc1 $f2, 0x98($sp) /* 0775B0 7F042A80 C4AA0008 */ lwc1 $f10, 8($a1) /* 0775B4 7F042A84 C6100010 */ lwc1 $f16, 0x10($s0) /* 0775B8 7F042A88 46105032 */ c.eq.s $f10, $f16 /* 0775BC 7F042A8C 00000000 */ nop /* 0775C0 7F042A90 45030104 */ bc1tl .L7F042EA4 /* 0775C4 7F042A94 8FBF0034 */ lw $ra, 0x34($sp) /* 0775C8 7F042A98 E7A20098 */ swc1 $f2, 0x98($sp) .L7F042A9C: /* 0775CC 7F042A9C C4B20004 */ lwc1 $f18, 4($a1) /* 0775D0 7F042AA0 8FB800C0 */ lw $t8, 0xc0($sp) /* 0775D4 7F042AA4 E7B2009C */ swc1 $f18, 0x9c($sp) /* 0775D8 7F042AA8 C4A40008 */ lwc1 $f4, 8($a1) /* 0775DC 7F042AAC E7A400A0 */ swc1 $f4, 0xa0($sp) /* 0775E0 7F042AB0 8F190064 */ lw $t9, 0x64($t8) /* 0775E4 7F042AB4 33280080 */ andi $t0, $t9, 0x80 /* 0775E8 7F042AB8 510000FA */ beql $t0, $zero, .L7F042EA4 /* 0775EC 7F042ABC 8FBF0034 */ lw $ra, 0x34($sp) /* 0775F0 7F042AC0 8E040014 */ lw $a0, 0x14($s0) /* 0775F4 7F042AC4 8E050008 */ lw $a1, 8($s0) /* 0775F8 7F042AC8 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 0775FC 7F042ACC 8E060010 */ lw $a2, 0x10($s0) /* 077600 7F042AD0 8FA900C0 */ lw $t1, 0xc0($sp) /* 077604 7F042AD4 C7AA009C */ lwc1 $f10, 0x9c($sp) /* 077608 7F042AD8 8D2A006C */ lw $t2, 0x6c($t1) /* 07760C 7F042ADC 8D4B0000 */ lw $t3, ($t2) /* 077610 7F042AE0 316C0040 */ andi $t4, $t3, 0x40 /* 077614 7F042AE4 55800008 */ bnezl $t4, .L7F042B08 /* 077618 7F042AE8 C602000C */ lwc1 $f2, 0xc($s0) /* 07761C 7F042AEC 44809000 */ mtc1 $zero, $f18 /* 077620 7F042AF0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077624 7F042AF4 44818000 */ mtc1 $at, $f16 /* 077628 7F042AF8 E7B20090 */ swc1 $f18, 0x90($sp) /* 07762C 7F042AFC 10000010 */ b .L7F042B40 /* 077630 7F042B00 E7B0008C */ swc1 $f16, 0x8c($sp) /* 077634 7F042B04 C602000C */ lwc1 $f2, 0xc($s0) .L7F042B08: /* 077638 7F042B08 C7A4009C */ lwc1 $f4, 0x9c($sp) /* 07763C 7F042B0C 4602503C */ c.lt.s $f10, $f2 /* 077640 7F042B10 00000000 */ nop /* 077644 7F042B14 45020007 */ bc1fl .L7F042B34 /* 077648 7F042B18 46002181 */ sub.s $f6, $f4, $f0 /* 07764C 7F042B1C 46001401 */ sub.s $f16, $f2, $f0 /* 077650 7F042B20 46005481 */ sub.s $f18, $f10, $f0 /* 077654 7F042B24 E7B00090 */ swc1 $f16, 0x90($sp) /* 077658 7F042B28 10000005 */ b .L7F042B40 /* 07765C 7F042B2C E7B2008C */ swc1 $f18, 0x8c($sp) /* 077660 7F042B30 46002181 */ sub.s $f6, $f4, $f0 .L7F042B34: /* 077664 7F042B34 46001201 */ sub.s $f8, $f2, $f0 /* 077668 7F042B38 E7A60090 */ swc1 $f6, 0x90($sp) /* 07766C 7F042B3C E7A8008C */ swc1 $f8, 0x8c($sp) .L7F042B40: /* 077670 7F042B40 0FC2C731 */ jal sub_GAME_7F0B1CC4 /* 077674 7F042B44 00000000 */ nop /* 077678 7F042B48 8E050008 */ lw $a1, 8($s0) /* 07767C 7F042B4C 8E060010 */ lw $a2, 0x10($s0) /* 077680 7F042B50 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077684 7F042B54 44813000 */ mtc1 $at, $f6 /* 077688 7F042B58 C7B000A0 */ lwc1 $f16, 0xa0($sp) /* 07768C 7F042B5C C7AA0090 */ lwc1 $f10, 0x90($sp) /* 077690 7F042B60 C7B2008C */ lwc1 $f18, 0x8c($sp) /* 077694 7F042B64 44802000 */ mtc1 $zero, $f4 /* 077698 7F042B68 240D001F */ li $t5, 31 /* 07769C 7F042B6C AFAD0014 */ sw $t5, 0x14($sp) /* 0776A0 7F042B70 27A400B8 */ addiu $a0, $sp, 0xb8 /* 0776A4 7F042B74 8FA70098 */ lw $a3, 0x98($sp) /* 0776A8 7F042B78 E7B00010 */ swc1 $f16, 0x10($sp) /* 0776AC 7F042B7C E7A60024 */ swc1 $f6, 0x24($sp) /* 0776B0 7F042B80 E7AA0018 */ swc1 $f10, 0x18($sp) /* 0776B4 7F042B84 E7B2001C */ swc1 $f18, 0x1c($sp) /* 0776B8 7F042B88 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 0776BC 7F042B8C E7A40020 */ swc1 $f4, 0x20($sp) /* 0776C0 7F042B90 1040001D */ beqz $v0, .L7F042C08 /* 0776C4 7F042B94 8FAE00B8 */ lw $t6, 0xb8($sp) /* 0776C8 7F042B98 11C0001B */ beqz $t6, .L7F042C08 /* 0776CC 7F042B9C 27A400B8 */ addiu $a0, $sp, 0xb8 /* 0776D0 7F042BA0 C7A80090 */ lwc1 $f8, 0x90($sp) /* 0776D4 7F042BA4 C7B0008C */ lwc1 $f16, 0x8c($sp) /* 0776D8 7F042BA8 240F001F */ li $t7, 31 /* 0776DC 7F042BAC AFAF0010 */ sw $t7, 0x10($sp) /* 0776E0 7F042BB0 8FA50098 */ lw $a1, 0x98($sp) /* 0776E4 7F042BB4 8FA600A0 */ lw $a2, 0xa0($sp) /* 0776E8 7F042BB8 8FA700B4 */ lw $a3, 0xb4($sp) /* 0776EC 7F042BBC E7A80014 */ swc1 $f8, 0x14($sp) /* 0776F0 7F042BC0 0FC2C62E */ jal sub_GAME_7F0B18B8 /* 0776F4 7F042BC4 E7B00018 */ swc1 $f16, 0x18($sp) /* 0776F8 7F042BC8 0441000F */ bgez $v0, .L7F042C08 /* 0776FC 7F042BCC C7AA0098 */ lwc1 $f10, 0x98($sp) /* 077700 7F042BD0 8FA200C0 */ lw $v0, 0xc0($sp) /* 077704 7F042BD4 E44A0058 */ swc1 $f10, 0x58($v0) /* 077708 7F042BD8 C7B200A0 */ lwc1 $f18, 0xa0($sp) /* 07770C 7F042BDC E4520060 */ swc1 $f18, 0x60($v0) /* 077710 7F042BE0 8FB800B8 */ lw $t8, 0xb8($sp) /* 077714 7F042BE4 AE180014 */ sw $t8, 0x14($s0) /* 077718 7F042BE8 C7A40098 */ lwc1 $f4, 0x98($sp) /* 07771C 7F042BEC E6040008 */ swc1 $f4, 8($s0) /* 077720 7F042BF0 C7A600A0 */ lwc1 $f6, 0xa0($sp) /* 077724 7F042BF4 E6060010 */ swc1 $f6, 0x10($s0) /* 077728 7F042BF8 C7A0009C */ lwc1 $f0, 0x9c($sp) /* 07772C 7F042BFC E600000C */ swc1 $f0, 0xc($s0) /* 077730 7F042C00 100000A7 */ b .L7F042EA0 /* 077734 7F042C04 E440005C */ swc1 $f0, 0x5c($v0) .L7F042C08: /* 077738 7F042C08 27A40080 */ addiu $a0, $sp, 0x80 /* 07773C 7F042C0C 0FC2CA2C */ jal sub_GAME_7F0B28B0 /* 077740 7F042C10 27A50074 */ addiu $a1, $sp, 0x74 /* 077744 7F042C14 C7A8007C */ lwc1 $f8, 0x7c($sp) /* 077748 7F042C18 C7B00088 */ lwc1 $f16, 0x88($sp) /* 07774C 7F042C1C 8FA400CC */ lw $a0, 0xcc($sp) /* 077750 7F042C20 44801000 */ mtc1 $zero, $f2 /* 077754 7F042C24 46104281 */ sub.s $f10, $f8, $f16 /* 077758 7F042C28 24850004 */ addiu $a1, $a0, 4 /* 07775C 7F042C2C E4820004 */ swc1 $f2, 4($a0) /* 077760 7F042C30 E48A0000 */ swc1 $f10, ($a0) /* 077764 7F042C34 C4880000 */ lwc1 $f8, ($a0) /* 077768 7F042C38 C7A40074 */ lwc1 $f4, 0x74($sp) /* 07776C 7F042C3C C7B20080 */ lwc1 $f18, 0x80($sp) /* 077770 7F042C40 46081032 */ c.eq.s $f2, $f8 /* 077774 7F042C44 46049181 */ sub.s $f6, $f18, $f4 /* 077778 7F042C48 45000007 */ bc1f .L7F042C68 /* 07777C 7F042C4C E4860008 */ swc1 $f6, 8($a0) /* 077780 7F042C50 C4900008 */ lwc1 $f16, 8($a0) /* 077784 7F042C54 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077788 7F042C58 46101032 */ c.eq.s $f2, $f16 /* 07778C 7F042C5C 00000000 */ nop /* 077790 7F042C60 45030006 */ bc1tl .L7F042C7C /* 077794 7F042C64 44815000 */ mtc1 $at, $f10 .L7F042C68: /* 077798 7F042C68 0C007DD4 */ jal guNormalize /* 07779C 7F042C6C 24860008 */ addiu $a2, $a0, 8 /* 0777A0 7F042C70 10000005 */ b .L7F042C88 /* 0777A4 7F042C74 C6000008 */ lwc1 $f0, 8($s0) /* 0777A8 7F042C78 44815000 */ mtc1 $at, $f10 .L7F042C7C: /* 0777AC 7F042C7C 00000000 */ nop /* 0777B0 7F042C80 E48A0008 */ swc1 $f10, 8($a0) /* 0777B4 7F042C84 C6000008 */ lwc1 $f0, 8($s0) .L7F042C88: /* 0777B8 7F042C88 C7B20098 */ lwc1 $f18, 0x98($sp) /* 0777BC 7F042C8C C7A4009C */ lwc1 $f4, 0x9c($sp) /* 0777C0 7F042C90 C7AA0098 */ lwc1 $f10, 0x98($sp) /* 0777C4 7F042C94 46009032 */ c.eq.s $f18, $f0 /* 0777C8 7F042C98 00000000 */ nop /* 0777CC 7F042C9C 4502000F */ bc1fl .L7F042CDC /* 0777D0 7F042CA0 46005481 */ sub.s $f18, $f10, $f0 /* 0777D4 7F042CA4 C606000C */ lwc1 $f6, 0xc($s0) /* 0777D8 7F042CA8 C7A800A0 */ lwc1 $f8, 0xa0($sp) /* 0777DC 7F042CAC 46062032 */ c.eq.s $f4, $f6 /* 0777E0 7F042CB0 00000000 */ nop /* 0777E4 7F042CB4 45020009 */ bc1fl .L7F042CDC /* 0777E8 7F042CB8 46005481 */ sub.s $f18, $f10, $f0 /* 0777EC 7F042CBC C6100010 */ lwc1 $f16, 0x10($s0) /* 0777F0 7F042CC0 8FA200C8 */ lw $v0, 0xc8($sp) /* 0777F4 7F042CC4 C7B20098 */ lwc1 $f18, 0x98($sp) /* 0777F8 7F042CC8 46104032 */ c.eq.s $f8, $f16 /* 0777FC 7F042CCC 00000000 */ nop /* 077800 7F042CD0 4503006A */ bc1tl .L7F042E7C /* 077804 7F042CD4 E4520000 */ swc1 $f18, ($v0) /* 077808 7F042CD8 46005481 */ sub.s $f18, $f10, $f0 .L7F042CDC: /* 07780C 7F042CDC C7A4009C */ lwc1 $f4, 0x9c($sp) /* 077810 7F042CE0 C7B000A0 */ lwc1 $f16, 0xa0($sp) /* 077814 7F042CE4 26040008 */ addiu $a0, $s0, 8 /* 077818 7F042CE8 E7B200A4 */ swc1 $f18, 0xa4($sp) /* 07781C 7F042CEC C606000C */ lwc1 $f6, 0xc($s0) /* 077820 7F042CF0 27A500A4 */ addiu $a1, $sp, 0xa4 /* 077824 7F042CF4 8FA600C8 */ lw $a2, 0xc8($sp) /* 077828 7F042CF8 46062201 */ sub.s $f8, $f4, $f6 /* 07782C 7F042CFC E7A800A8 */ swc1 $f8, 0xa8($sp) /* 077830 7F042D00 C60A0010 */ lwc1 $f10, 0x10($s0) /* 077834 7F042D04 460A8481 */ sub.s $f18, $f16, $f10 /* 077838 7F042D08 0FC09893 */ jal sub_GAME_7F02624C /* 07783C 7F042D0C E7B200AC */ swc1 $f18, 0xac($sp) /* 077840 7F042D10 C7A400B4 */ lwc1 $f4, 0xb4($sp) /* 077844 7F042D14 C7B00080 */ lwc1 $f16, 0x80($sp) /* 077848 7F042D18 C7AA0088 */ lwc1 $f10, 0x88($sp) /* 07784C 7F042D1C E7A4005C */ swc1 $f4, 0x5c($sp) /* 077850 7F042D20 C6060008 */ lwc1 $f6, 8($s0) /* 077854 7F042D24 C7B20074 */ lwc1 $f18, 0x74($sp) /* 077858 7F042D28 C7A4007C */ lwc1 $f4, 0x7c($sp) /* 07785C 7F042D2C E7A60060 */ swc1 $f6, 0x60($sp) /* 077860 7F042D30 C6080010 */ lwc1 $f8, 0x10($s0) /* 077864 7F042D34 E7B00054 */ swc1 $f16, 0x54($sp) /* 077868 7F042D38 E7AA0058 */ swc1 $f10, 0x58($sp) /* 07786C 7F042D3C E7B2004C */ swc1 $f18, 0x4c($sp) /* 077870 7F042D40 E7A40050 */ swc1 $f4, 0x50($sp) /* 077874 7F042D44 E7A80064 */ swc1 $f8, 0x64($sp) /* 077878 7F042D48 C6080008 */ lwc1 $f8, 8($s0) /* 07787C 7F042D4C C7A60098 */ lwc1 $f6, 0x98($sp) /* 077880 7F042D50 C7AA00A0 */ lwc1 $f10, 0xa0($sp) /* 077884 7F042D54 27A4005C */ addiu $a0, $sp, 0x5c /* 077888 7F042D58 46083401 */ sub.s $f16, $f6, $f8 /* 07788C 7F042D5C 27A50054 */ addiu $a1, $sp, 0x54 /* 077890 7F042D60 27A6004C */ addiu $a2, $sp, 0x4c /* 077894 7F042D64 27A70044 */ addiu $a3, $sp, 0x44 /* 077898 7F042D68 E7B00044 */ swc1 $f16, 0x44($sp) /* 07789C 7F042D6C C6120010 */ lwc1 $f18, 0x10($s0) /* 0778A0 7F042D70 46125101 */ sub.s $f4, $f10, $f18 /* 0778A4 7F042D74 0FC2CCF7 */ jal sub_GAME_7F0B33DC /* 0778A8 7F042D78 E7A40048 */ swc1 $f4, 0x48($sp) /* 0778AC 7F042D7C C7A80044 */ lwc1 $f8, 0x44($sp) /* 0778B0 7F042D80 3C018005 */ lui $at, %hi(D_80052A5C) /* 0778B4 7F042D84 C4222A5C */ lwc1 $f2, %lo(D_80052A5C)($at) /* 0778B8 7F042D88 46004402 */ mul.s $f16, $f8, $f0 /* 0778BC 7F042D8C 8E190014 */ lw $t9, 0x14($s0) /* 0778C0 7F042D90 C7A4009C */ lwc1 $f4, 0x9c($sp) /* 0778C4 7F042D94 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0778C8 7F042D98 AFB900B8 */ sw $t9, 0xb8($sp) /* 0778CC 7F042D9C C6060008 */ lwc1 $f6, 8($s0) /* 0778D0 7F042DA0 E7A4006C */ swc1 $f4, 0x6c($sp) /* 0778D4 7F042DA4 46028282 */ mul.s $f10, $f16, $f2 /* 0778D8 7F042DA8 C7B00048 */ lwc1 $f16, 0x48($sp) /* 0778DC 7F042DAC 2408001F */ li $t0, 31 /* 0778E0 7F042DB0 27A400B8 */ addiu $a0, $sp, 0xb8 /* 0778E4 7F042DB4 460A3480 */ add.s $f18, $f6, $f10 /* 0778E8 7F042DB8 46008182 */ mul.s $f6, $f16, $f0 /* 0778EC 7F042DBC C7B00090 */ lwc1 $f16, 0x90($sp) /* 0778F0 7F042DC0 E7B20068 */ swc1 $f18, 0x68($sp) /* 0778F4 7F042DC4 C6080010 */ lwc1 $f8, 0x10($s0) /* 0778F8 7F042DC8 8FA70068 */ lw $a3, 0x68($sp) /* 0778FC 7F042DCC 46023282 */ mul.s $f10, $f6, $f2 /* 077900 7F042DD0 C7A6008C */ lwc1 $f6, 0x8c($sp) /* 077904 7F042DD4 460A4480 */ add.s $f18, $f8, $f10 /* 077908 7F042DD8 44815000 */ mtc1 $at, $f10 /* 07790C 7F042DDC 44804000 */ mtc1 $zero, $f8 /* 077910 7F042DE0 E7B20070 */ swc1 $f18, 0x70($sp) /* 077914 7F042DE4 8E060010 */ lw $a2, 0x10($s0) /* 077918 7F042DE8 8E050008 */ lw $a1, 8($s0) /* 07791C 7F042DEC C7A40070 */ lwc1 $f4, 0x70($sp) /* 077920 7F042DF0 AFA80014 */ sw $t0, 0x14($sp) /* 077924 7F042DF4 E7B00018 */ swc1 $f16, 0x18($sp) /* 077928 7F042DF8 E7A6001C */ swc1 $f6, 0x1c($sp) /* 07792C 7F042DFC E7AA0024 */ swc1 $f10, 0x24($sp) /* 077930 7F042E00 E7A80020 */ swc1 $f8, 0x20($sp) /* 077934 7F042E04 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 077938 7F042E08 E7A40010 */ swc1 $f4, 0x10($sp) /* 07793C 7F042E0C 1040001F */ beqz $v0, .L7F042E8C /* 077940 7F042E10 8FA900B8 */ lw $t1, 0xb8($sp) /* 077944 7F042E14 1120001D */ beqz $t1, .L7F042E8C /* 077948 7F042E18 27A400B8 */ addiu $a0, $sp, 0xb8 /* 07794C 7F042E1C C7B20090 */ lwc1 $f18, 0x90($sp) /* 077950 7F042E20 C7A4008C */ lwc1 $f4, 0x8c($sp) /* 077954 7F042E24 240A001F */ li $t2, 31 /* 077958 7F042E28 AFAA0010 */ sw $t2, 0x10($sp) /* 07795C 7F042E2C 8FA50068 */ lw $a1, 0x68($sp) /* 077960 7F042E30 8FA60070 */ lw $a2, 0x70($sp) /* 077964 7F042E34 8FA700B4 */ lw $a3, 0xb4($sp) /* 077968 7F042E38 E7B20014 */ swc1 $f18, 0x14($sp) /* 07796C 7F042E3C 0FC2C62E */ jal sub_GAME_7F0B18B8 /* 077970 7F042E40 E7A40018 */ swc1 $f4, 0x18($sp) /* 077974 7F042E44 04410011 */ bgez $v0, .L7F042E8C /* 077978 7F042E48 C7B00068 */ lwc1 $f16, 0x68($sp) /* 07797C 7F042E4C 8FAB00C0 */ lw $t3, 0xc0($sp) /* 077980 7F042E50 E5700058 */ swc1 $f16, 0x58($t3) /* 077984 7F042E54 C7A60070 */ lwc1 $f6, 0x70($sp) /* 077988 7F042E58 E5660060 */ swc1 $f6, 0x60($t3) /* 07798C 7F042E5C 8FAC00B8 */ lw $t4, 0xb8($sp) /* 077990 7F042E60 AE0C0014 */ sw $t4, 0x14($s0) /* 077994 7F042E64 C7A80068 */ lwc1 $f8, 0x68($sp) /* 077998 7F042E68 E6080008 */ swc1 $f8, 8($s0) /* 07799C 7F042E6C C7AA0070 */ lwc1 $f10, 0x70($sp) /* 0779A0 7F042E70 10000006 */ b .L7F042E8C /* 0779A4 7F042E74 E60A0010 */ swc1 $f10, 0x10($s0) /* 0779A8 7F042E78 E4520000 */ swc1 $f18, ($v0) .L7F042E7C: /* 0779AC 7F042E7C C7A4009C */ lwc1 $f4, 0x9c($sp) /* 0779B0 7F042E80 E4440004 */ swc1 $f4, 4($v0) /* 0779B4 7F042E84 C7B000A0 */ lwc1 $f16, 0xa0($sp) /* 0779B8 7F042E88 E4500008 */ swc1 $f16, 8($v0) .L7F042E8C: /* 0779BC 7F042E8C C7A0006C */ lwc1 $f0, 0x6c($sp) /* 0779C0 7F042E90 E600000C */ swc1 $f0, 0xc($s0) /* 0779C4 7F042E94 8FAD00C0 */ lw $t5, 0xc0($sp) /* 0779C8 7F042E98 E5A0005C */ swc1 $f0, 0x5c($t5) /* 0779CC 7F042E9C AFA000B0 */ sw $zero, 0xb0($sp) .L7F042EA0: /* 0779D0 7F042EA0 8FBF0034 */ lw $ra, 0x34($sp) .L7F042EA4: /* 0779D4 7F042EA4 8FA200B0 */ lw $v0, 0xb0($sp) /* 0779D8 7F042EA8 8FB00030 */ lw $s0, 0x30($sp) /* 0779DC 7F042EAC 03E00008 */ jr $ra /* 0779E0 7F042EB0 27BD00C0 */ addiu $sp, $sp, 0xc0 ) #endif #ifdef NONMATCHING void sub_GAME_7F042EB4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F042EB4 /* 0779E4 7F042EB4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0779E8 7F042EB8 AFBF001C */ sw $ra, 0x1c($sp) /* 0779EC 7F042EBC 8C8E0064 */ lw $t6, 0x64($a0) /* 0779F0 7F042EC0 8FAB0030 */ lw $t3, 0x30($sp) /* 0779F4 7F042EC4 31CF0080 */ andi $t7, $t6, 0x80 /* 0779F8 7F042EC8 11E0000D */ beqz $t7, .L7F042F00 /* 0779FC 7F042ECC 00000000 */ nop /* 077A00 7F042ED0 8C98006C */ lw $t8, 0x6c($a0) /* 077A04 7F042ED4 8FA90030 */ lw $t1, 0x30($sp) /* 077A08 7F042ED8 8F190000 */ lw $t9, ($t8) /* 077A0C 7F042EDC 33280004 */ andi $t0, $t9, 4 /* 077A10 7F042EE0 11000007 */ beqz $t0, .L7F042F00 /* 077A14 7F042EE4 00000000 */ nop /* 077A18 7F042EE8 8FAA0034 */ lw $t2, 0x34($sp) /* 077A1C 7F042EEC AFA90010 */ sw $t1, 0x10($sp) /* 077A20 7F042EF0 0FC10893 */ jal handles_projectile_motion /* 077A24 7F042EF4 AFAA0014 */ sw $t2, 0x14($sp) /* 077A28 7F042EF8 10000004 */ b .L7F042F0C /* 077A2C 7F042EFC 8FBF001C */ lw $ra, 0x1c($sp) .L7F042F00: /* 077A30 7F042F00 0FC10A83 */ jal sub_GAME_7F042A0C /* 077A34 7F042F04 AFAB0010 */ sw $t3, 0x10($sp) /* 077A38 7F042F08 8FBF001C */ lw $ra, 0x1c($sp) .L7F042F0C: /* 077A3C 7F042F0C 27BD0020 */ addiu $sp, $sp, 0x20 /* 077A40 7F042F10 03E00008 */ jr $ra /* 077A44 7F042F14 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F042F18(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F042F18 /* 077A48 7F042F18 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 077A4C 7F042F1C 3C038005 */ lui $v1, %hi(clock_timer) /* 077A50 7F042F20 24638374 */ addiu $v1, %lo(clock_timer) # addiu $v1, $v1, -0x7c8c /* 077A54 7F042F24 8C6E0000 */ lw $t6, ($v1) /* 077A58 7F042F28 F7B40008 */ sdc1 $f20, 8($sp) /* 077A5C 7F042F2C 4487A000 */ mtc1 $a3, $f20 /* 077A60 7F042F30 F7BA0020 */ sdc1 $f26, 0x20($sp) /* 077A64 7F042F34 F7B80018 */ sdc1 $f24, 0x18($sp) /* 077A68 7F042F38 F7B60010 */ sdc1 $f22, 0x10($sp) /* 077A6C 7F042F3C 44857000 */ mtc1 $a1, $f14 /* 077A70 7F042F40 C4C00000 */ lwc1 $f0, ($a2) /* 077A74 7F042F44 19C0006A */ blez $t6, .L7F0430F0 /* 077A78 7F042F48 00001025 */ move $v0, $zero /* 077A7C 7F042F4C 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 077A80 7F042F50 4481D000 */ mtc1 $at, $f26 /* 077A84 7F042F54 4480C000 */ mtc1 $zero, $f24 /* 077A88 7F042F58 C7B2003C */ lwc1 $f18, 0x3c($sp) /* 077A8C 7F042F5C C7A20038 */ lwc1 $f2, 0x38($sp) /* 077A90 7F042F60 C4900000 */ lwc1 $f16, ($a0) .L7F042F64: /* 077A94 7F042F64 46107301 */ sub.s $f12, $f14, $f16 /* 077A98 7F042F68 460CC03C */ c.lt.s $f24, $f12 /* 077A9C 7F042F6C 00000000 */ nop /* 077AA0 7F042F70 4502002E */ bc1fl .L7F04302C /* 077AA4 7F042F74 4618003C */ c.lt.s $f0, $f24 /* 077AA8 7F042F78 4600C03C */ c.lt.s $f24, $f0 /* 077AAC 7F042F7C 00000000 */ nop /* 077AB0 7F042F80 45020011 */ bc1fl .L7F042FC8 /* 077AB4 7F042F84 4612003C */ c.lt.s $f0, $f18 /* 077AB8 7F042F88 46000102 */ mul.s $f4, $f0, $f0 /* 077ABC 7F042F8C 00000000 */ nop /* 077AC0 7F042F90 461A2182 */ mul.s $f6, $f4, $f26 /* 077AC4 7F042F94 46023203 */ div.s $f8, $f6, $f2 /* 077AC8 7F042F98 4608603E */ c.le.s $f12, $f8 /* 077ACC 7F042F9C 00000000 */ nop /* 077AD0 7F042FA0 45000008 */ bc1f .L7F042FC4 /* 077AD4 7F042FA4 00000000 */ nop /* 077AD8 7F042FA8 46020001 */ sub.s $f0, $f0, $f2 /* 077ADC 7F042FAC 4602003C */ c.lt.s $f0, $f2 /* 077AE0 7F042FB0 00000000 */ nop /* 077AE4 7F042FB4 45020014 */ bc1fl .L7F043008 /* 077AE8 7F042FB8 4600603E */ c.le.s $f12, $f0 /* 077AEC 7F042FBC 10000011 */ b .L7F043004 /* 077AF0 7F042FC0 46001006 */ mov.s $f0, $f2 .L7F042FC4: /* 077AF4 7F042FC4 4612003C */ c.lt.s $f0, $f18 .L7F042FC8: /* 077AF8 7F042FC8 00000000 */ nop /* 077AFC 7F042FCC 4502000E */ bc1fl .L7F043008 /* 077B00 7F042FD0 4600603E */ c.le.s $f12, $f0 /* 077B04 7F042FD4 4618003C */ c.lt.s $f0, $f24 /* 077B08 7F042FD8 00000000 */ nop /* 077B0C 7F042FDC 45020004 */ bc1fl .L7F042FF0 /* 077B10 7F042FE0 46140000 */ add.s $f0, $f0, $f20 /* 077B14 7F042FE4 10000002 */ b .L7F042FF0 /* 077B18 7F042FE8 46020000 */ add.s $f0, $f0, $f2 /* 077B1C 7F042FEC 46140000 */ add.s $f0, $f0, $f20 .L7F042FF0: /* 077B20 7F042FF0 4600903C */ c.lt.s $f18, $f0 /* 077B24 7F042FF4 00000000 */ nop /* 077B28 7F042FF8 45020003 */ bc1fl .L7F043008 /* 077B2C 7F042FFC 4600603E */ c.le.s $f12, $f0 /* 077B30 7F043000 46009006 */ mov.s $f0, $f18 .L7F043004: /* 077B34 7F043004 4600603E */ c.le.s $f12, $f0 .L7F043008: /* 077B38 7F043008 00000000 */ nop /* 077B3C 7F04300C 45020004 */ bc1fl .L7F043020 /* 077B40 7F043010 46008280 */ add.s $f10, $f16, $f0 /* 077B44 7F043014 10000036 */ b .L7F0430F0 /* 077B48 7F043018 E48E0000 */ swc1 $f14, ($a0) /* 077B4C 7F04301C 46008280 */ add.s $f10, $f16, $f0 .L7F043020: /* 077B50 7F043020 1000002E */ b .L7F0430DC /* 077B54 7F043024 E48A0000 */ swc1 $f10, ($a0) /* 077B58 7F043028 4618003C */ c.lt.s $f0, $f24 .L7F04302C: /* 077B5C 7F04302C 00000000 */ nop /* 077B60 7F043030 45020012 */ bc1fl .L7F04307C /* 077B64 7F043034 46009587 */ neg.s $f22, $f18 /* 077B68 7F043038 46000102 */ mul.s $f4, $f0, $f0 /* 077B6C 7F04303C 46006287 */ neg.s $f10, $f12 /* 077B70 7F043040 461A2182 */ mul.s $f6, $f4, $f26 /* 077B74 7F043044 46023203 */ div.s $f8, $f6, $f2 /* 077B78 7F043048 4608503E */ c.le.s $f10, $f8 /* 077B7C 7F04304C 00000000 */ nop /* 077B80 7F043050 4502000A */ bc1fl .L7F04307C /* 077B84 7F043054 46009587 */ neg.s $f22, $f18 /* 077B88 7F043058 46020000 */ add.s $f0, $f0, $f2 /* 077B8C 7F04305C 46001587 */ neg.s $f22, $f2 /* 077B90 7F043060 4600B03C */ c.lt.s $f22, $f0 /* 077B94 7F043064 00000000 */ nop /* 077B98 7F043068 45020015 */ bc1fl .L7F0430C0 /* 077B9C 7F04306C 460C003E */ c.le.s $f0, $f12 /* 077BA0 7F043070 10000012 */ b .L7F0430BC /* 077BA4 7F043074 4600B006 */ mov.s $f0, $f22 /* 077BA8 7F043078 46009587 */ neg.s $f22, $f18 .L7F04307C: /* 077BAC 7F04307C 4600B03C */ c.lt.s $f22, $f0 /* 077BB0 7F043080 00000000 */ nop /* 077BB4 7F043084 4502000E */ bc1fl .L7F0430C0 /* 077BB8 7F043088 460C003E */ c.le.s $f0, $f12 /* 077BBC 7F04308C 4600C03C */ c.lt.s $f24, $f0 /* 077BC0 7F043090 00000000 */ nop /* 077BC4 7F043094 45020004 */ bc1fl .L7F0430A8 /* 077BC8 7F043098 46140001 */ sub.s $f0, $f0, $f20 /* 077BCC 7F04309C 10000002 */ b .L7F0430A8 /* 077BD0 7F0430A0 46020001 */ sub.s $f0, $f0, $f2 /* 077BD4 7F0430A4 46140001 */ sub.s $f0, $f0, $f20 .L7F0430A8: /* 077BD8 7F0430A8 4616003C */ c.lt.s $f0, $f22 /* 077BDC 7F0430AC 00000000 */ nop /* 077BE0 7F0430B0 45020003 */ bc1fl .L7F0430C0 /* 077BE4 7F0430B4 460C003E */ c.le.s $f0, $f12 /* 077BE8 7F0430B8 4600B006 */ mov.s $f0, $f22 .L7F0430BC: /* 077BEC 7F0430BC 460C003E */ c.le.s $f0, $f12 .L7F0430C0: /* 077BF0 7F0430C0 00000000 */ nop /* 077BF4 7F0430C4 45020004 */ bc1fl .L7F0430D8 /* 077BF8 7F0430C8 46008100 */ add.s $f4, $f16, $f0 /* 077BFC 7F0430CC 10000008 */ b .L7F0430F0 /* 077C00 7F0430D0 E48E0000 */ swc1 $f14, ($a0) /* 077C04 7F0430D4 46008100 */ add.s $f4, $f16, $f0 .L7F0430D8: /* 077C08 7F0430D8 E4840000 */ swc1 $f4, ($a0) .L7F0430DC: /* 077C0C 7F0430DC 8C6F0000 */ lw $t7, ($v1) /* 077C10 7F0430E0 24420001 */ addiu $v0, $v0, 1 /* 077C14 7F0430E4 004F082A */ slt $at, $v0, $t7 /* 077C18 7F0430E8 5420FF9E */ bnezl $at, .L7F042F64 /* 077C1C 7F0430EC C4900000 */ lwc1 $f16, ($a0) .L7F0430F0: /* 077C20 7F0430F0 E4C00000 */ swc1 $f0, ($a2) /* 077C24 7F0430F4 D7BA0020 */ ldc1 $f26, 0x20($sp) /* 077C28 7F0430F8 D7B80018 */ ldc1 $f24, 0x18($sp) /* 077C2C 7F0430FC D7B60010 */ ldc1 $f22, 0x10($sp) /* 077C30 7F043100 D7B40008 */ ldc1 $f20, 8($sp) /* 077C34 7F043104 03E00008 */ jr $ra /* 077C38 7F043108 27BD0028 */ addiu $sp, $sp, 0x28 ) #endif #ifdef NONMATCHING void sub_GAME_7F04310C(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A60 .word 0xc0490fdb /*-3.1415927*/ glabel D_80052A64 .word 0x40c90fdb /*6.2831855*/ glabel D_80052A68 .word 0x40490fdb /*3.1415927*/ glabel D_80052A6C .word 0x40c90fdb /*6.2831855*/ glabel D_80052A70 .word 0x40c90fdb /*6.2831855*/ .text glabel sub_GAME_7F04310C /* 077C3C 7F04310C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 077C40 7F043110 AFBF001C */ sw $ra, 0x1c($sp) /* 077C44 7F043114 44856000 */ mtc1 $a1, $f12 /* 077C48 7F043118 C4840000 */ lwc1 $f4, ($a0) /* 077C4C 7F04311C 3C018005 */ lui $at, %hi(D_80052A60) /* 077C50 7F043120 C4262A60 */ lwc1 $f6, %lo(D_80052A60)($at) /* 077C54 7F043124 46046001 */ sub.s $f0, $f12, $f4 /* 077C58 7F043128 44877000 */ mtc1 $a3, $f14 /* 077C5C 7F04312C 3C018005 */ lui $at, %hi(D_80052A68) /* 077C60 7F043130 C7B00030 */ lwc1 $f16, 0x30($sp) /* 077C64 7F043134 4606003C */ c.lt.s $f0, $f6 /* 077C68 7F043138 44077000 */ mfc1 $a3, $f14 /* 077C6C 7F04313C 45000005 */ bc1f .L7F043154 /* 077C70 7F043140 00000000 */ nop /* 077C74 7F043144 3C018005 */ lui $at, %hi(D_80052A68) /* 077C78 7F043148 C4282A64 */ lwc1 $f8, %lo(D_80052A64)($at) /* 077C7C 7F04314C 10000009 */ b .L7F043174 /* 077C80 7F043150 46086300 */ add.s $f12, $f12, $f8 .L7F043154: /* 077C84 7F043154 C42A2A68 */ lwc1 $f10, %lo(D_80052A68)($at) /* 077C88 7F043158 3C018005 */ lui $at, %hi(D_80052A6C) /* 077C8C 7F04315C 4600503E */ c.le.s $f10, $f0 /* 077C90 7F043160 00000000 */ nop /* 077C94 7F043164 45020004 */ bc1fl .L7F043178 /* 077C98 7F043168 C7B20034 */ lwc1 $f18, 0x34($sp) /* 077C9C 7F04316C C4222A6C */ lwc1 $f2, %lo(D_80052A6C)($at) /* 077CA0 7F043170 46026301 */ sub.s $f12, $f12, $f2 .L7F043174: /* 077CA4 7F043174 C7B20034 */ lwc1 $f18, 0x34($sp) .L7F043178: /* 077CA8 7F043178 44056000 */ mfc1 $a1, $f12 /* 077CAC 7F04317C E7B00010 */ swc1 $f16, 0x10($sp) /* 077CB0 7F043180 AFA40020 */ sw $a0, 0x20($sp) /* 077CB4 7F043184 0FC10BC6 */ jal sub_GAME_7F042F18 /* 077CB8 7F043188 E7B20014 */ swc1 $f18, 0x14($sp) /* 077CBC 7F04318C 8FA40020 */ lw $a0, 0x20($sp) /* 077CC0 7F043190 44802000 */ mtc1 $zero, $f4 /* 077CC4 7F043194 3C018005 */ lui $at, %hi(D_80052A70) /* 077CC8 7F043198 C4800000 */ lwc1 $f0, ($a0) /* 077CCC 7F04319C C4222A70 */ lwc1 $f2, %lo(D_80052A70)($at) /* 077CD0 7F0431A0 4604003C */ c.lt.s $f0, $f4 /* 077CD4 7F0431A4 00000000 */ nop /* 077CD8 7F0431A8 45020005 */ bc1fl .L7F0431C0 /* 077CDC 7F0431AC 4600103E */ c.le.s $f2, $f0 /* 077CE0 7F0431B0 46020180 */ add.s $f6, $f0, $f2 /* 077CE4 7F0431B4 E4860000 */ swc1 $f6, ($a0) /* 077CE8 7F0431B8 C4800000 */ lwc1 $f0, ($a0) /* 077CEC 7F0431BC 4600103E */ c.le.s $f2, $f0 .L7F0431C0: /* 077CF0 7F0431C0 00000000 */ nop /* 077CF4 7F0431C4 45020004 */ bc1fl .L7F0431D8 /* 077CF8 7F0431C8 8FBF001C */ lw $ra, 0x1c($sp) /* 077CFC 7F0431CC 46020201 */ sub.s $f8, $f0, $f2 /* 077D00 7F0431D0 E4880000 */ swc1 $f8, ($a0) /* 077D04 7F0431D4 8FBF001C */ lw $ra, 0x1c($sp) .L7F0431D8: /* 077D08 7F0431D8 27BD0020 */ addiu $sp, $sp, 0x20 /* 077D0C 7F0431DC 03E00008 */ jr $ra /* 077D10 7F0431E0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0431E4(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A74 .word 0x40c90fdb /*6.2831855*/ glabel D_80052A78 .word 0x3d4ccccd /*0.050000001*/ glabel D_80052A7C .word 0x40c90fdb /*6.2831855*/ glabel D_80052A80 .word 0x3d4ccccd /*0.050000001*/ glabel D_80052A84 .word 0x3cf5c28f /*0.029999999*/ glabel D_80052A88 .word 0x3e19999a /*0.15000001*/ .text glabel sub_GAME_7F0431E4 /* 077D14 7F0431E4 27BDFEE8 */ addiu $sp, $sp, -0x118 /* 077D18 7F0431E8 AFBF001C */ sw $ra, 0x1c($sp) /* 077D1C 7F0431EC AFB10018 */ sw $s1, 0x18($sp) /* 077D20 7F0431F0 AFB00014 */ sw $s0, 0x14($sp) /* 077D24 7F0431F4 AFA5011C */ sw $a1, 0x11c($sp) /* 077D28 7F0431F8 8C8E0064 */ lw $t6, 0x64($a0) /* 077D2C 7F0431FC 3C01FFFE */ li $at, 0xFFFE0000 # -nan /* 077D30 7F043200 3421FFFF */ ori $at, (0xFFFEFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 077D34 7F043204 01C17824 */ and $t7, $t6, $at /* 077D38 7F043208 31F90080 */ andi $t9, $t7, 0x80 /* 077D3C 7F04320C 00808825 */ move $s1, $a0 /* 077D40 7F043210 1320010A */ beqz $t9, .L7F04363C /* 077D44 7F043214 AC8F0064 */ sw $t7, 0x64($a0) /* 077D48 7F043218 90880003 */ lbu $t0, 3($a0) /* 077D4C 7F04321C 8C90006C */ lw $s0, 0x6c($a0) /* 077D50 7F043220 24010001 */ li $at, 1 /* 077D54 7F043224 15010009 */ bne $t0, $at, .L7F04324C /* 077D58 7F043228 26240018 */ addiu $a0, $s1, 0x18 /* 077D5C 7F04322C 0FC0FEDC */ jal sub_GAME_7F03FB70 /* 077D60 7F043230 02002025 */ move $a0, $s0 /* 077D64 7F043234 8E290064 */ lw $t1, 0x64($s1) /* 077D68 7F043238 2401FF7F */ li $at, -129 /* 077D6C 7F04323C AE20006C */ sw $zero, 0x6c($s1) /* 077D70 7F043240 01215024 */ and $t2, $t1, $at /* 077D74 7F043244 100000FD */ b .L7F04363C /* 077D78 7F043248 AE2A0064 */ sw $t2, 0x64($s1) .L7F04324C: /* 077D7C 7F04324C 8E0B0000 */ lw $t3, ($s0) /* 077D80 7F043250 2401FFFE */ li $at, -2 /* 077D84 7F043254 AE000088 */ sw $zero, 0x88($s0) /* 077D88 7F043258 01616024 */ and $t4, $t3, $at /* 077D8C 7F04325C 2401FFFB */ li $at, -5 /* 077D90 7F043260 AE0C0000 */ sw $t4, ($s0) /* 077D94 7F043264 01817024 */ and $t6, $t4, $at /* 077D98 7F043268 AE0E0000 */ sw $t6, ($s0) /* 077D9C 7F04326C AFA40028 */ sw $a0, 0x28($sp) /* 077DA0 7F043270 0FC16218 */ jal matrix_4x4_get_rotation_around_xyz /* 077DA4 7F043274 27A5010C */ addiu $a1, $sp, 0x10c /* 077DA8 7F043278 27A4010C */ addiu $a0, $sp, 0x10c /* 077DAC 7F04327C 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 077DB0 7F043280 27A500CC */ addiu $a1, $sp, 0xcc /* 077DB4 7F043284 26050068 */ addiu $a1, $s0, 0x68 /* 077DB8 7F043288 AFA50024 */ sw $a1, 0x24($sp) /* 077DBC 7F04328C 0FC16CFD */ jal quaternion_set_rotation_around_xyzf /* 077DC0 7F043290 27A4010C */ addiu $a0, $sp, 0x10c /* 077DC4 7F043294 27A400CC */ addiu $a0, $sp, 0xcc /* 077DC8 7F043298 0FC1674E */ jal matrix_4x4_set_rotation_inverse /* 077DCC 7F04329C 27A5008C */ addiu $a1, $sp, 0x8c /* 077DD0 7F0432A0 27A4008C */ addiu $a0, $sp, 0x8c /* 077DD4 7F0432A4 8FA50028 */ lw $a1, 0x28($sp) /* 077DD8 7F0432A8 0FC16032 */ jal matrix_4x4_multiply /* 077DDC 7F0432AC 27A6004C */ addiu $a2, $sp, 0x4c /* 077DE0 7F0432B0 C7A2004C */ lwc1 $f2, 0x4c($sp) /* 077DE4 7F0432B4 C7AE0050 */ lwc1 $f14, 0x50($sp) /* 077DE8 7F0432B8 C7A00054 */ lwc1 $f0, 0x54($sp) /* 077DEC 7F0432BC 46021102 */ mul.s $f4, $f2, $f2 /* 077DF0 7F0432C0 00000000 */ nop /* 077DF4 7F0432C4 460E7182 */ mul.s $f6, $f14, $f14 /* 077DF8 7F0432C8 46062200 */ add.s $f8, $f4, $f6 /* 077DFC 7F0432CC 46000282 */ mul.s $f10, $f0, $f0 /* 077E00 7F0432D0 0C007DF8 */ jal sqrtf /* 077E04 7F0432D4 46085300 */ add.s $f12, $f10, $f8 /* 077E08 7F0432D8 E60000C0 */ swc1 $f0, 0xc0($s0) /* 077E0C 7F0432DC C7A4005C */ lwc1 $f4, 0x5c($sp) /* 077E10 7F0432E0 C7AA0060 */ lwc1 $f10, 0x60($sp) /* 077E14 7F0432E4 46042182 */ mul.s $f6, $f4, $f4 /* 077E18 7F0432E8 00000000 */ nop /* 077E1C 7F0432EC 460A5202 */ mul.s $f8, $f10, $f10 /* 077E20 7F0432F0 C7AA0064 */ lwc1 $f10, 0x64($sp) /* 077E24 7F0432F4 46083100 */ add.s $f4, $f6, $f8 /* 077E28 7F0432F8 460A5182 */ mul.s $f6, $f10, $f10 /* 077E2C 7F0432FC 0C007DF8 */ jal sqrtf /* 077E30 7F043300 46043300 */ add.s $f12, $f6, $f4 /* 077E34 7F043304 E60000C4 */ swc1 $f0, 0xc4($s0) /* 077E38 7F043308 C7A8006C */ lwc1 $f8, 0x6c($sp) /* 077E3C 7F04330C C7A60070 */ lwc1 $f6, 0x70($sp) /* 077E40 7F043310 46084282 */ mul.s $f10, $f8, $f8 /* 077E44 7F043314 00000000 */ nop /* 077E48 7F043318 46063102 */ mul.s $f4, $f6, $f6 /* 077E4C 7F04331C C7A60074 */ lwc1 $f6, 0x74($sp) /* 077E50 7F043320 46045200 */ add.s $f8, $f10, $f4 /* 077E54 7F043324 46063282 */ mul.s $f10, $f6, $f6 /* 077E58 7F043328 0C007DF8 */ jal sqrtf /* 077E5C 7F04332C 46085300 */ add.s $f12, $f10, $f8 /* 077E60 7F043330 E60000C8 */ swc1 $f0, 0xc8($s0) /* 077E64 7F043334 44808000 */ mtc1 $zero, $f16 /* 077E68 7F043338 C6220018 */ lwc1 $f2, 0x18($s1) /* 077E6C 7F04333C C62E0020 */ lwc1 $f14, 0x20($s1) /* 077E70 7F043340 46101032 */ c.eq.s $f2, $f16 /* 077E74 7F043344 00000000 */ nop /* 077E78 7F043348 45000005 */ bc1f .L7F043360 /* 077E7C 7F04334C 00000000 */ nop /* 077E80 7F043350 46107032 */ c.eq.s $f14, $f16 /* 077E84 7F043354 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077E88 7F043358 45030013 */ bc1tl .L7F0433A8 /* 077E8C 7F04335C 44817000 */ mtc1 $at, $f14 .L7F043360: /* 077E90 7F043360 46021102 */ mul.s $f4, $f2, $f2 /* 077E94 7F043364 E7A20048 */ swc1 $f2, 0x48($sp) /* 077E98 7F043368 E7AE0044 */ swc1 $f14, 0x44($sp) /* 077E9C 7F04336C 460E7182 */ mul.s $f6, $f14, $f14 /* 077EA0 7F043370 0C007DF8 */ jal sqrtf /* 077EA4 7F043374 46062300 */ add.s $f12, $f4, $f6 /* 077EA8 7F043378 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 077EAC 7F04337C 44819000 */ mtc1 $at, $f18 /* 077EB0 7F043380 C7A20048 */ lwc1 $f2, 0x48($sp) /* 077EB4 7F043384 C7AE0044 */ lwc1 $f14, 0x44($sp) /* 077EB8 7F043388 46009303 */ div.s $f12, $f18, $f0 /* 077EBC 7F04338C 44808000 */ mtc1 $zero, $f16 /* 077EC0 7F043390 460C1082 */ mul.s $f2, $f2, $f12 /* 077EC4 7F043394 00000000 */ nop /* 077EC8 7F043398 460C7382 */ mul.s $f14, $f14, $f12 /* 077ECC 7F04339C 10000004 */ b .L7F0433B0 /* 077ED0 7F0433A0 00000000 */ nop /* 077ED4 7F0433A4 44817000 */ mtc1 $at, $f14 .L7F0433A8: /* 077ED8 7F0433A8 44819000 */ mtc1 $at, $f18 /* 077EDC 7F0433AC 46008086 */ mov.s $f2, $f16 .L7F0433B0: /* 077EE0 7F0433B0 E7A2008C */ swc1 $f2, 0x8c($sp) /* 077EE4 7F0433B4 E7B00090 */ swc1 $f16, 0x90($sp) /* 077EE8 7F0433B8 E7AE0094 */ swc1 $f14, 0x94($sp) /* 077EEC 7F0433BC E7B00098 */ swc1 $f16, 0x98($sp) /* 077EF0 7F0433C0 C62A002C */ lwc1 $f10, 0x2c($s1) /* 077EF4 7F0433C4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 /* 077EF8 7F0433C8 27A4008C */ addiu $a0, $sp, 0x8c /* 077EFC 7F0433CC 460A803E */ c.le.s $f16, $f10 /* 077F00 7F0433D0 27A5010C */ addiu $a1, $sp, 0x10c /* 077F04 7F0433D4 4502000C */ bc1fl .L7F043408 /* 077F08 7F0433D8 44812000 */ mtc1 $at, $f4 /* 077F0C 7F0433DC 46007207 */ neg.s $f8, $f14 /* 077F10 7F0433E0 E7B0009C */ swc1 $f16, 0x9c($sp) /* 077F14 7F0433E4 E7B200A0 */ swc1 $f18, 0xa0($sp) /* 077F18 7F0433E8 E7B000A4 */ swc1 $f16, 0xa4($sp) /* 077F1C 7F0433EC E7B000A8 */ swc1 $f16, 0xa8($sp) /* 077F20 7F0433F0 E7A800AC */ swc1 $f8, 0xac($sp) /* 077F24 7F0433F4 E7B000B0 */ swc1 $f16, 0xb0($sp) /* 077F28 7F0433F8 E7A200B4 */ swc1 $f2, 0xb4($sp) /* 077F2C 7F0433FC 1000000B */ b .L7F04342C /* 077F30 7F043400 E7B000B8 */ swc1 $f16, 0xb8($sp) /* 077F34 7F043404 44812000 */ mtc1 $at, $f4 .L7F043408: /* 077F38 7F043408 46001187 */ neg.s $f6, $f2 /* 077F3C 7F04340C E7B0009C */ swc1 $f16, 0x9c($sp) /* 077F40 7F043410 E7B000A4 */ swc1 $f16, 0xa4($sp) /* 077F44 7F043414 E7B000A8 */ swc1 $f16, 0xa8($sp) /* 077F48 7F043418 E7AE00AC */ swc1 $f14, 0xac($sp) /* 077F4C 7F04341C E7B000B0 */ swc1 $f16, 0xb0($sp) /* 077F50 7F043420 E7A600B4 */ swc1 $f6, 0xb4($sp) /* 077F54 7F043424 E7B000B8 */ swc1 $f16, 0xb8($sp) /* 077F58 7F043428 E7A400A0 */ swc1 $f4, 0xa0($sp) .L7F04342C: /* 077F5C 7F04342C E7B000BC */ swc1 $f16, 0xbc($sp) /* 077F60 7F043430 E7B000C0 */ swc1 $f16, 0xc0($sp) /* 077F64 7F043434 E7B000C4 */ swc1 $f16, 0xc4($sp) /* 077F68 7F043438 0FC16218 */ jal matrix_4x4_get_rotation_around_xyz /* 077F6C 7F04343C E7B200C8 */ swc1 $f18, 0xc8($sp) /* 077F70 7F043440 26050078 */ addiu $a1, $s0, 0x78 /* 077F74 7F043444 AFA50028 */ sw $a1, 0x28($sp) /* 077F78 7F043448 0FC16CFD */ jal quaternion_set_rotation_around_xyzf /* 077F7C 7F04344C 27A4010C */ addiu $a0, $sp, 0x10c /* 077F80 7F043450 8FA50028 */ lw $a1, 0x28($sp) /* 077F84 7F043454 0FC16F84 */ jal quaternion_ensure_shortest_path /* 077F88 7F043458 8FA40024 */ lw $a0, 0x24($sp) /* 077F8C 7F04345C 44808000 */ mtc1 $zero, $f16 /* 077F90 7F043460 00000000 */ nop /* 077F94 7F043464 E6100060 */ swc1 $f16, 0x60($s0) /* 077F98 7F043468 C7A800CC */ lwc1 $f8, 0xcc($sp) /* 077F9C 7F04346C C7AA008C */ lwc1 $f10, 0x8c($sp) /* 077FA0 7F043470 C7A60090 */ lwc1 $f6, 0x90($sp) /* 077FA4 7F043474 46085102 */ mul.s $f4, $f10, $f8 /* 077FA8 7F043478 C7AA00D0 */ lwc1 $f10, 0xd0($sp) /* 077FAC 7F04347C 460A3202 */ mul.s $f8, $f6, $f10 /* 077FB0 7F043480 C7AA00D4 */ lwc1 $f10, 0xd4($sp) /* 077FB4 7F043484 46082180 */ add.s $f6, $f4, $f8 /* 077FB8 7F043488 C7A40094 */ lwc1 $f4, 0x94($sp) /* 077FBC 7F04348C 46045202 */ mul.s $f8, $f10, $f4 /* 077FC0 7F043490 0FC16B2C */ jal acosf /* 077FC4 7F043494 46064300 */ add.s $f12, $f8, $f6 /* 077FC8 7F043498 44808000 */ mtc1 $zero, $f16 /* 077FCC 7F04349C 46000486 */ mov.s $f18, $f0 /* 077FD0 7F0434A0 4600803C */ c.lt.s $f16, $f0 /* 077FD4 7F0434A4 00000000 */ nop /* 077FD8 7F0434A8 45020018 */ bc1fl .L7F04350C /* 077FDC 7F0434AC 4600803C */ c.lt.s $f16, $f0 /* 077FE0 7F0434B0 C622001C */ lwc1 $f2, 0x1c($s1) /* 077FE4 7F0434B4 8FA2011C */ lw $v0, 0x11c($sp) /* 077FE8 7F0434B8 4602803C */ c.lt.s $f16, $f2 /* 077FEC 7F0434BC 00000000 */ nop /* 077FF0 7F0434C0 45020012 */ bc1fl .L7F04350C /* 077FF4 7F0434C4 4600803C */ c.lt.s $f16, $f0 /* 077FF8 7F0434C8 C44A0004 */ lwc1 $f10, 4($v0) /* 077FFC 7F0434CC 3C014080 */ li $at, 0x40800000 # 4.000000 /* 078000 7F0434D0 4602503C */ c.lt.s $f10, $f2 /* 078004 7F0434D4 00000000 */ nop /* 078008 7F0434D8 4502000C */ bc1fl .L7F04350C /* 07800C 7F0434DC 4600803C */ c.lt.s $f16, $f0 /* 078010 7F0434E0 44812000 */ mtc1 $at, $f4 /* 078014 7F0434E4 3C018005 */ lui $at, %hi(D_80052A74) /* 078018 7F0434E8 C4262A74 */ lwc1 $f6, %lo(D_80052A74)($at) /* 07801C 7F0434EC 46040202 */ mul.s $f8, $f0, $f4 /* 078020 7F0434F0 3C018005 */ lui $at, %hi(D_80052A78) /* 078024 7F0434F4 C4242A78 */ lwc1 $f4, %lo(D_80052A78)($at) /* 078028 7F0434F8 46064283 */ div.s $f10, $f8, $f6 /* 07802C 7F0434FC 460A2203 */ div.s $f8, $f4, $f10 /* 078030 7F043500 10000037 */ b .L7F0435E0 /* 078034 7F043504 E6080064 */ swc1 $f8, 0x64($s0) /* 078038 7F043508 4600803C */ c.lt.s $f16, $f0 .L7F04350C: /* 07803C 7F04350C 8FA2011C */ lw $v0, 0x11c($sp) /* 078040 7F043510 C622001C */ lwc1 $f2, 0x1c($s1) /* 078044 7F043514 45000013 */ bc1f .L7F043564 /* 078048 7F043518 C44E0004 */ lwc1 $f14, 4($v0) /* 07804C 7F04351C 4610103C */ c.lt.s $f2, $f16 /* 078050 7F043520 00000000 */ nop /* 078054 7F043524 45020010 */ bc1fl .L7F043568 /* 078058 7F043528 C62A0020 */ lwc1 $f10, 0x20($s1) /* 07805C 7F04352C 460E103C */ c.lt.s $f2, $f14 /* 078060 7F043530 3C014080 */ li $at, 0x40800000 # 4.000000 /* 078064 7F043534 4502000C */ bc1fl .L7F043568 /* 078068 7F043538 C62A0020 */ lwc1 $f10, 0x20($s1) /* 07806C 7F04353C 44813000 */ mtc1 $at, $f6 /* 078070 7F043540 3C018005 */ lui $at, %hi(D_80052A7C) /* 078074 7F043544 C42A2A7C */ lwc1 $f10, %lo(D_80052A7C)($at) /* 078078 7F043548 46060102 */ mul.s $f4, $f0, $f6 /* 07807C 7F04354C 3C018005 */ lui $at, %hi(D_80052A80) /* 078080 7F043550 C4262A80 */ lwc1 $f6, %lo(D_80052A80)($at) /* 078084 7F043554 460A2203 */ div.s $f8, $f4, $f10 /* 078088 7F043558 46083103 */ div.s $f4, $f6, $f8 /* 07808C 7F04355C 10000020 */ b .L7F0435E0 /* 078090 7F043560 E6040064 */ swc1 $f4, 0x64($s0) .L7F043564: /* 078094 7F043564 C62A0020 */ lwc1 $f10, 0x20($s1) .L7F043568: /* 078098 7F043568 C4460008 */ lwc1 $f6, 8($v0) /* 07809C 7F04356C C4440000 */ lwc1 $f4, ($v0) /* 0780A0 7F043570 8E2F0014 */ lw $t7, 0x14($s1) /* 0780A4 7F043574 46065202 */ mul.s $f8, $f10, $f6 /* 0780A8 7F043578 C62A0018 */ lwc1 $f10, 0x18($s1) /* 0780AC 7F04357C C5E00014 */ lwc1 $f0, 0x14($t7) /* 0780B0 7F043580 E7B20030 */ swc1 $f18, 0x30($sp) /* 0780B4 7F043584 460A2182 */ mul.s $f6, $f4, $f10 /* 0780B8 7F043588 00000000 */ nop /* 0780BC 7F04358C 46027102 */ mul.s $f4, $f14, $f2 /* 0780C0 7F043590 46043280 */ add.s $f10, $f6, $f4 /* 0780C4 7F043594 46000102 */ mul.s $f4, $f0, $f0 /* 0780C8 7F043598 460A4180 */ add.s $f6, $f8, $f10 /* 0780CC 7F04359C 0FC16B2C */ jal acosf /* 0780D0 7F0435A0 46043303 */ div.s $f12, $f6, $f4 /* 0780D4 7F0435A4 44808000 */ mtc1 $zero, $f16 /* 0780D8 7F0435A8 C7B20030 */ lwc1 $f18, 0x30($sp) /* 0780DC 7F0435AC 3C018005 */ lui $at, %hi(global_timer_delta) /* 0780E0 7F0435B0 C4288378 */ lwc1 $f8, %lo(global_timer_delta)($at) /* 0780E4 7F0435B4 46109032 */ c.eq.s $f18, $f16 /* 0780E8 7F0435B8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0780EC 7F0435BC 46080083 */ div.s $f2, $f0, $f8 /* 0780F0 7F0435C0 45030005 */ bc1tl .L7F0435D8 /* 0780F4 7F0435C4 44813000 */ mtc1 $at, $f6 /* 0780F8 7F0435C8 46121283 */ div.s $f10, $f2, $f18 /* 0780FC 7F0435CC 10000004 */ b .L7F0435E0 /* 078100 7F0435D0 E60A0064 */ swc1 $f10, 0x64($s0) /* 078104 7F0435D4 44813000 */ mtc1 $at, $f6 .L7F0435D8: /* 078108 7F0435D8 00000000 */ nop /* 07810C 7F0435DC E6060064 */ swc1 $f6, 0x64($s0) .L7F0435E0: /* 078110 7F0435E0 C6000064 */ lwc1 $f0, 0x64($s0) /* 078114 7F0435E4 3C018005 */ lui $at, %hi(D_80052A84) /* 078118 7F0435E8 4610003C */ c.lt.s $f0, $f16 /* 07811C 7F0435EC 00000000 */ nop /* 078120 7F0435F0 45000004 */ bc1f .L7F043604 /* 078124 7F0435F4 00000000 */ nop /* 078128 7F0435F8 46000107 */ neg.s $f4, $f0 /* 07812C 7F0435FC E6040064 */ swc1 $f4, 0x64($s0) /* 078130 7F043600 C6000064 */ lwc1 $f0, 0x64($s0) .L7F043604: /* 078134 7F043604 C4222A84 */ lwc1 $f2, %lo(D_80052A84)($at) /* 078138 7F043608 3C018005 */ lui $at, %hi(D_80052A88) /* 07813C 7F04360C 4602003C */ c.lt.s $f0, $f2 /* 078140 7F043610 00000000 */ nop /* 078144 7F043614 45000003 */ bc1f .L7F043624 /* 078148 7F043618 00000000 */ nop /* 07814C 7F04361C 10000007 */ b .L7F04363C /* 078150 7F043620 E6020064 */ swc1 $f2, 0x64($s0) .L7F043624: /* 078154 7F043624 C4222A88 */ lwc1 $f2, %lo(D_80052A88)($at) /* 078158 7F043628 4600103C */ c.lt.s $f2, $f0 /* 07815C 7F04362C 00000000 */ nop /* 078160 7F043630 45020003 */ bc1fl .L7F043640 /* 078164 7F043634 8FBF001C */ lw $ra, 0x1c($sp) /* 078168 7F043638 E6020064 */ swc1 $f2, 0x64($s0) .L7F04363C: /* 07816C 7F04363C 8FBF001C */ lw $ra, 0x1c($sp) .L7F043640: /* 078170 7F043640 8FB00014 */ lw $s0, 0x14($sp) /* 078174 7F043644 8FB10018 */ lw $s1, 0x18($sp) /* 078178 7F043648 03E00008 */ jr $ra /* 07817C 7F04364C 27BD0118 */ addiu $sp, $sp, 0x118 ) #endif #ifdef NONMATCHING void sub_GAME_7F043650(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F043650 /* 078180 7F043650 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 078184 7F043654 AFBF001C */ sw $ra, 0x1c($sp) /* 078188 7F043658 AFB00018 */ sw $s0, 0x18($sp) /* 07818C 7F04365C 8C820064 */ lw $v0, 0x64($a0) /* 078190 7F043660 00808025 */ move $s0, $a0 /* 078194 7F043664 304E0080 */ andi $t6, $v0, 0x80 /* 078198 7F043668 51C0006F */ beql $t6, $zero, .L7F043828 /* 07819C 7F04366C 8FBF001C */ lw $ra, 0x1c($sp) /* 0781A0 7F043670 8C83006C */ lw $v1, 0x6c($a0) /* 0781A4 7F043674 2401FFDF */ li $at, -33 /* 0781A8 7F043678 8C6F0000 */ lw $t7, ($v1) /* 0781AC 7F04367C 31F80001 */ andi $t8, $t7, 1 /* 0781B0 7F043680 53000052 */ beql $t8, $zero, .L7F0437CC /* 0781B4 7F043684 00414024 */ and $t0, $v0, $at /* 0781B8 7F043688 8C790090 */ lw $t9, 0x90($v1) /* 0781BC 7F04368C 30480020 */ andi $t0, $v0, 0x20 /* 0781C0 7F043690 5F20004E */ bgtzl $t9, .L7F0437CC /* 0781C4 7F043694 00414024 */ and $t0, $v0, $at /* 0781C8 7F043698 1100004B */ beqz $t0, .L7F0437C8 /* 0781CC 7F04369C 3C0A8003 */ lui $t2, %hi(Throwing_knife_SFX) /* 0781D0 7F0436A0 254A0B2C */ addiu $t2, %lo(Throwing_knife_SFX) # addiu $t2, $t2, 0xb2c /* 0781D4 7F0436A4 8D410000 */ lw $at, ($t2) /* 0781D8 7F0436A8 27A90038 */ addiu $t1, $sp, 0x38 /* 0781DC 7F0436AC AD210000 */ sw $at, ($t1) /* 0781E0 7F0436B0 95410004 */ lhu $at, 4($t2) /* 0781E4 7F0436B4 A5210004 */ sh $at, 4($t1) /* 0781E8 7F0436B8 8C8D006C */ lw $t5, 0x6c($a0) /* 0781EC 7F0436BC 8DAE00A4 */ lw $t6, 0xa4($t5) /* 0781F0 7F0436C0 0C002914 */ jal get_random_value /* 0781F4 7F0436C4 AFAE0034 */ sw $t6, 0x34($sp) /* 0781F8 7F0436C8 24010003 */ li $at, 3 /* 0781FC 7F0436CC 0041001B */ divu $zero, $v0, $at /* 078200 7F0436D0 00007810 */ mfhi $t7 /* 078204 7F0436D4 AFAF0030 */ sw $t7, 0x30($sp) /* 078208 7F0436D8 8E03006C */ lw $v1, 0x6c($s0) /* 07820C 7F0436DC 3C198005 */ lui $t9, %hi(global_timer) /* 078210 7F0436E0 8F39837C */ lw $t9, %lo(global_timer)($t9) /* 078214 7F0436E4 8C7800A0 */ lw $t8, 0xa0($v1) /* 078218 7F0436E8 8FA70034 */ lw $a3, 0x34($sp) /* 07821C 7F0436EC 2728FFFA */ addiu $t0, $t9, -6 /* 078220 7F0436F0 0308082A */ slt $at, $t8, $t0 /* 078224 7F0436F4 1020000D */ beqz $at, .L7F04372C /* 078228 7F0436F8 00075880 */ sll $t3, $a3, 2 /* 07822C 7F0436FC 006B4821 */ addu $t1, $v1, $t3 /* 078230 7F043700 8D240098 */ lw $a0, 0x98($t1) /* 078234 7F043704 5080000A */ beql $a0, $zero, .L7F043730 /* 078238 7F043708 8FA70034 */ lw $a3, 0x34($sp) /* 07823C 7F04370C 0C00237C */ jal sfxGetArg0Unk3F /* 078240 7F043710 AFAB002C */ sw $t3, 0x2c($sp) /* 078244 7F043714 10400005 */ beqz $v0, .L7F04372C /* 078248 7F043718 8FA7002C */ lw $a3, 0x2c($sp) /* 07824C 7F04371C 8E0A006C */ lw $t2, 0x6c($s0) /* 078250 7F043720 01476021 */ addu $t4, $t2, $a3 /* 078254 7F043724 0C002408 */ jal sfxDeactivate /* 078258 7F043728 8D840098 */ lw $a0, 0x98($t4) .L7F04372C: /* 07825C 7F04372C 8FA70034 */ lw $a3, 0x34($sp) .L7F043730: /* 078260 7F043730 8E0E006C */ lw $t6, 0x6c($s0) /* 078264 7F043734 00076880 */ sll $t5, $a3, 2 /* 078268 7F043738 01CD7821 */ addu $t7, $t6, $t5 /* 07826C 7F04373C 8DF90098 */ lw $t9, 0x98($t7) /* 078270 7F043740 57200039 */ bnezl $t9, .L7F043828 /* 078274 7F043744 8FBF001C */ lw $ra, 0x1c($sp) /* 078278 7F043748 0FC2FF01 */ jal get_controls_locked_flag /* 07827C 7F04374C AFAD002C */ sw $t5, 0x2c($sp) /* 078280 7F043750 14400034 */ bnez $v0, .L7F043824 /* 078284 7F043754 8FA7002C */ lw $a3, 0x2c($sp) /* 078288 7F043758 8FB80030 */ lw $t8, 0x30($sp) /* 07828C 7F04375C 8E0B006C */ lw $t3, 0x6c($s0) /* 078290 7F043760 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 078294 7F043764 00184040 */ sll $t0, $t8, 1 /* 078298 7F043768 03A82821 */ addu $a1, $sp, $t0 /* 07829C 7F04376C 84A50038 */ lh $a1, 0x38($a1) /* 0782A0 7F043770 01673021 */ addu $a2, $t3, $a3 /* 0782A4 7F043774 24C60098 */ addiu $a2, $a2, 0x98 /* 0782A8 7F043778 AFA7002C */ sw $a3, 0x2c($sp) /* 0782AC 7F04377C 0C002382 */ jal play_sfx_a1 /* 0782B0 7F043780 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0782B4 7F043784 8FA7002C */ lw $a3, 0x2c($sp) /* 0782B8 7F043788 8E09006C */ lw $t1, 0x6c($s0) /* 0782BC 7F04378C 8E050010 */ lw $a1, 0x10($s0) /* 0782C0 7F043790 01275021 */ addu $t2, $t1, $a3 /* 0782C4 7F043794 8D440098 */ lw $a0, 0x98($t2) /* 0782C8 7F043798 0FC14E84 */ jal sub_GAME_7F053A10 /* 0782CC 7F04379C 24A50008 */ addiu $a1, $a1, 8 /* 0782D0 7F0437A0 3C0C8005 */ lui $t4, %hi(global_timer) /* 0782D4 7F0437A4 8D8C837C */ lw $t4, %lo(global_timer)($t4) /* 0782D8 7F0437A8 8E0D006C */ lw $t5, 0x6c($s0) /* 0782DC 7F0437AC 240F0001 */ li $t7, 1 /* 0782E0 7F0437B0 ADAC00A0 */ sw $t4, 0xa0($t5) /* 0782E4 7F0437B4 8FAE0034 */ lw $t6, 0x34($sp) /* 0782E8 7F0437B8 8E18006C */ lw $t8, 0x6c($s0) /* 0782EC 7F0437BC 01EEC823 */ subu $t9, $t7, $t6 /* 0782F0 7F0437C0 10000018 */ b .L7F043824 /* 0782F4 7F0437C4 AF1900A4 */ sw $t9, 0xa4($t8) .L7F0437C8: /* 0782F8 7F0437C8 00414024 */ and $t0, $v0, $at .L7F0437CC: /* 0782FC 7F0437CC AE080064 */ sw $t0, 0x64($s0) /* 078300 7F0437D0 8C640098 */ lw $a0, 0x98($v1) /* 078304 7F0437D4 50800009 */ beql $a0, $zero, .L7F0437FC /* 078308 7F0437D8 8E09006C */ lw $t1, 0x6c($s0) /* 07830C 7F0437DC 0C00237C */ jal sfxGetArg0Unk3F /* 078310 7F0437E0 00000000 */ nop /* 078314 7F0437E4 50400005 */ beql $v0, $zero, .L7F0437FC /* 078318 7F0437E8 8E09006C */ lw $t1, 0x6c($s0) /* 07831C 7F0437EC 8E0B006C */ lw $t3, 0x6c($s0) /* 078320 7F0437F0 0C002408 */ jal sfxDeactivate /* 078324 7F0437F4 8D640098 */ lw $a0, 0x98($t3) /* 078328 7F0437F8 8E09006C */ lw $t1, 0x6c($s0) .L7F0437FC: /* 07832C 7F0437FC 8D24009C */ lw $a0, 0x9c($t1) /* 078330 7F043800 50800009 */ beql $a0, $zero, .L7F043828 /* 078334 7F043804 8FBF001C */ lw $ra, 0x1c($sp) /* 078338 7F043808 0C00237C */ jal sfxGetArg0Unk3F /* 07833C 7F04380C 00000000 */ nop /* 078340 7F043810 50400005 */ beql $v0, $zero, .L7F043828 /* 078344 7F043814 8FBF001C */ lw $ra, 0x1c($sp) /* 078348 7F043818 8E0A006C */ lw $t2, 0x6c($s0) /* 07834C 7F04381C 0C002408 */ jal sfxDeactivate /* 078350 7F043820 8D44009C */ lw $a0, 0x9c($t2) .L7F043824: /* 078354 7F043824 8FBF001C */ lw $ra, 0x1c($sp) .L7F043828: /* 078358 7F043828 8FB00018 */ lw $s0, 0x18($sp) /* 07835C 7F04382C 27BD0040 */ addiu $sp, $sp, 0x40 /* 078360 7F043830 03E00008 */ jr $ra /* 078364 7F043834 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F043838(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052A8C .word 0xbfc90fdb /*-1.5707964*/ glabel D_80052A90 .word 0xbfc90fdb /*-1.5707964*/ .text glabel sub_GAME_7F043838 /* 078368 7F043838 27BDFED8 */ addiu $sp, $sp, -0x128 /* 07836C 7F04383C AFBF0014 */ sw $ra, 0x14($sp) /* 078370 7F043840 AFA5012C */ sw $a1, 0x12c($sp) /* 078374 7F043844 C4820000 */ lwc1 $f2, ($a0) /* 078378 7F043848 C48E0004 */ lwc1 $f14, 4($a0) /* 07837C 7F04384C C4800008 */ lwc1 $f0, 8($a0) /* 078380 7F043850 46021102 */ mul.s $f4, $f2, $f2 /* 078384 7F043854 AFA40128 */ sw $a0, 0x128($sp) /* 078388 7F043858 460E7182 */ mul.s $f6, $f14, $f14 /* 07838C 7F04385C 46062200 */ add.s $f8, $f4, $f6 /* 078390 7F043860 46000282 */ mul.s $f10, $f0, $f0 /* 078394 7F043864 0C007DF8 */ jal sqrtf /* 078398 7F043868 46085300 */ add.s $f12, $f10, $f8 /* 07839C 7F04386C 8FA40128 */ lw $a0, 0x128($sp) /* 0783A0 7F043870 44801000 */ mtc1 $zero, $f2 /* 0783A4 7F043874 C4840000 */ lwc1 $f4, ($a0) /* 0783A8 7F043878 C4860004 */ lwc1 $f6, 4($a0) /* 0783AC 7F04387C C48A0008 */ lwc1 $f10, 8($a0) /* 0783B0 7F043880 46002383 */ div.s $f14, $f4, $f0 /* 0783B4 7F043884 46003483 */ div.s $f18, $f6, $f0 /* 0783B8 7F043888 46027032 */ c.eq.s $f14, $f2 /* 0783BC 7F04388C 00000000 */ nop /* 0783C0 7F043890 4500000C */ bc1f .L7F0438C4 /* 0783C4 7F043894 46005403 */ div.s $f16, $f10, $f0 /* 0783C8 7F043898 46028032 */ c.eq.s $f16, $f2 /* 0783CC 7F04389C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0783D0 7F0438A0 45000008 */ bc1f .L7F0438C4 /* 0783D4 7F0438A4 00000000 */ nop /* 0783D8 7F0438A8 44814000 */ mtc1 $at, $f8 /* 0783DC 7F0438AC E7A20124 */ swc1 $f2, 0x124($sp) /* 0783E0 7F0438B0 E7A20120 */ swc1 $f2, 0x120($sp) /* 0783E4 7F0438B4 E7B2011C */ swc1 $f18, 0x11c($sp) /* 0783E8 7F0438B8 E7A20114 */ swc1 $f2, 0x114($sp) /* 0783EC 7F0438BC 10000016 */ b .L7F043918 /* 0783F0 7F0438C0 E7A80118 */ swc1 $f8, 0x118($sp) .L7F0438C4: /* 0783F4 7F0438C4 460E7102 */ mul.s $f4, $f14, $f14 /* 0783F8 7F0438C8 E7AE010C */ swc1 $f14, 0x10c($sp) /* 0783FC 7F0438CC E7B00104 */ swc1 $f16, 0x104($sp) /* 078400 7F0438D0 46108182 */ mul.s $f6, $f16, $f16 /* 078404 7F0438D4 E7B20108 */ swc1 $f18, 0x108($sp) /* 078408 7F0438D8 0C007DF8 */ jal sqrtf /* 07840C 7F0438DC 46062300 */ add.s $f12, $f4, $f6 /* 078410 7F0438E0 C7AE010C */ lwc1 $f14, 0x10c($sp) /* 078414 7F0438E4 C7B00104 */ lwc1 $f16, 0x104($sp) /* 078418 7F0438E8 C7B20108 */ lwc1 $f18, 0x108($sp) /* 07841C 7F0438EC 46007083 */ div.s $f2, $f14, $f0 /* 078420 7F0438F0 46000107 */ neg.s $f4, $f0 /* 078424 7F0438F4 E7A40120 */ swc1 $f4, 0x120($sp) /* 078428 7F0438F8 46008303 */ div.s $f12, $f16, $f0 /* 07842C 7F0438FC 46029202 */ mul.s $f8, $f18, $f2 /* 078430 7F043900 46001287 */ neg.s $f10, $f2 /* 078434 7F043904 E7AA0114 */ swc1 $f10, 0x114($sp) /* 078438 7F043908 E7A80124 */ swc1 $f8, 0x124($sp) /* 07843C 7F04390C 460C9182 */ mul.s $f6, $f18, $f12 /* 078440 7F043910 E7AC0118 */ swc1 $f12, 0x118($sp) /* 078444 7F043914 E7A6011C */ swc1 $f6, 0x11c($sp) .L7F043918: /* 078448 7F043918 C7AC0118 */ lwc1 $f12, 0x118($sp) /* 07844C 7F04391C 0FC16A8C */ jal atan2f /* 078450 7F043920 C7AE0114 */ lwc1 $f14, 0x114($sp) /* 078454 7F043924 E7A000F4 */ swc1 $f0, 0xf4($sp) /* 078458 7F043928 46000307 */ neg.s $f12, $f0 /* 07845C 7F04392C 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 078460 7F043930 27A500B0 */ addiu $a1, $sp, 0xb0 /* 078464 7F043934 C7AA0124 */ lwc1 $f10, 0x124($sp) /* 078468 7F043938 C7A80120 */ lwc1 $f8, 0x120($sp) /* 07846C 7F04393C C7A4011C */ lwc1 $f4, 0x11c($sp) /* 078470 7F043940 27A400B0 */ addiu $a0, $sp, 0xb0 /* 078474 7F043944 27A50024 */ addiu $a1, $sp, 0x24 /* 078478 7F043948 E7AA0024 */ swc1 $f10, 0x24($sp) /* 07847C 7F04394C E7A80028 */ swc1 $f8, 0x28($sp) /* 078480 7F043950 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 078484 7F043954 E7A4002C */ swc1 $f4, 0x2c($sp) /* 078488 7F043958 C7AC0024 */ lwc1 $f12, 0x24($sp) /* 07848C 7F04395C 0FC16A8C */ jal atan2f /* 078490 7F043960 C7AE0028 */ lwc1 $f14, 0x28($sp) /* 078494 7F043964 3C018005 */ lui $at, %hi(D_80052A8C) /* 078498 7F043968 C4262A8C */ lwc1 $f6, %lo(D_80052A8C)($at) /* 07849C 7F04396C C7AA00F4 */ lwc1 $f10, 0xf4($sp) /* 0784A0 7F043970 E7A000F0 */ swc1 $f0, 0xf0($sp) /* 0784A4 7F043974 27A50070 */ addiu $a1, $sp, 0x70 /* 0784A8 7F043978 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 0784AC 7F04397C 460A3300 */ add.s $f12, $f6, $f10 /* 0784B0 7F043980 3C018005 */ lui $at, %hi(D_80052A90) /* 0784B4 7F043984 C4282A90 */ lwc1 $f8, %lo(D_80052A90)($at) /* 0784B8 7F043988 C7A400F0 */ lwc1 $f4, 0xf0($sp) /* 0784BC 7F04398C 27A50030 */ addiu $a1, $sp, 0x30 /* 0784C0 7F043990 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 0784C4 7F043994 46044301 */ sub.s $f12, $f8, $f4 /* 0784C8 7F043998 27A40070 */ addiu $a0, $sp, 0x70 /* 0784CC 7F04399C 27A50030 */ addiu $a1, $sp, 0x30 /* 0784D0 7F0439A0 0FC16032 */ jal matrix_4x4_multiply /* 0784D4 7F0439A4 8FA6012C */ lw $a2, 0x12c($sp) /* 0784D8 7F0439A8 8FBF0014 */ lw $ra, 0x14($sp) /* 0784DC 7F0439AC 27BD0128 */ addiu $sp, $sp, 0x128 /* 0784E0 7F0439B0 03E00008 */ jr $ra /* 0784E4 7F0439B4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0439B8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0439B8 /* 0784E8 7F0439B8 27BDFF98 */ addiu $sp, $sp, -0x68 /* 0784EC 7F0439BC AFB00018 */ sw $s0, 0x18($sp) /* 0784F0 7F0439C0 00808025 */ move $s0, $a0 /* 0784F4 7F0439C4 AFBF001C */ sw $ra, 0x1c($sp) /* 0784F8 7F0439C8 AFA5006C */ sw $a1, 0x6c($sp) /* 0784FC 7F0439CC AFA60070 */ sw $a2, 0x70($sp) /* 078500 7F0439D0 27A50028 */ addiu $a1, $sp, 0x28 /* 078504 7F0439D4 0FC10E0E */ jal sub_GAME_7F043838 /* 078508 7F0439D8 00E02025 */ move $a0, $a3 /* 07850C 7F0439DC 8E0E0014 */ lw $t6, 0x14($s0) /* 078510 7F0439E0 27A50028 */ addiu $a1, $sp, 0x28 /* 078514 7F0439E4 0FC1629F */ jal matrix_scalar_multiply /* 078518 7F0439E8 C5CC0014 */ lwc1 $f12, 0x14($t6) /* 07851C 7F0439EC 02002025 */ move $a0, $s0 /* 078520 7F0439F0 8FA5006C */ lw $a1, 0x6c($sp) /* 078524 7F0439F4 27A60028 */ addiu $a2, $sp, 0x28 /* 078528 7F0439F8 0FC101D5 */ jal sub_GAME_7F040754 /* 07852C 7F0439FC 8FA70070 */ lw $a3, 0x70($sp) /* 078530 7F043A00 8E0F0014 */ lw $t7, 0x14($s0) /* 078534 7F043A04 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 078538 7F043A08 8DE40008 */ lw $a0, 8($t7) /* 07853C 7F043A0C 0FC0FA19 */ jal sub_GAME_7F03E864 /* 078540 7F043A10 00402025 */ move $a0, $v0 /* 078544 7F043A14 C6060028 */ lwc1 $f6, 0x28($s0) /* 078548 7F043A18 C6040058 */ lwc1 $f4, 0x58($s0) /* 07854C 7F043A1C C612002C */ lwc1 $f18, 0x2c($s0) /* 078550 7F043A20 46060202 */ mul.s $f8, $f0, $f6 /* 078554 7F043A24 C610005C */ lwc1 $f16, 0x5c($s0) /* 078558 7F043A28 02002025 */ move $a0, $s0 /* 07855C 7F043A2C 46120182 */ mul.s $f6, $f0, $f18 /* 078560 7F043A30 46082281 */ sub.s $f10, $f4, $f8 /* 078564 7F043A34 C6080060 */ lwc1 $f8, 0x60($s0) /* 078568 7F043A38 46068101 */ sub.s $f4, $f16, $f6 /* 07856C 7F043A3C E60A0058 */ swc1 $f10, 0x58($s0) /* 078570 7F043A40 C60A0030 */ lwc1 $f10, 0x30($s0) /* 078574 7F043A44 E604005C */ swc1 $f4, 0x5c($s0) /* 078578 7F043A48 460A0482 */ mul.s $f18, $f0, $f10 /* 07857C 7F043A4C 46124401 */ sub.s $f16, $f8, $f18 /* 078580 7F043A50 0FC10121 */ jal sub_GAME_7F040484 /* 078584 7F043A54 E6100060 */ swc1 $f16, 0x60($s0) /* 078588 7F043A58 8FBF001C */ lw $ra, 0x1c($sp) /* 07858C 7F043A5C 8FB00018 */ lw $s0, 0x18($sp) /* 078590 7F043A60 27BD0068 */ addiu $sp, $sp, 0x68 /* 078594 7F043A64 03E00008 */ jr $ra /* 078598 7F043A68 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F043A6C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F043A6C /* 07859C 7F043A6C 27BDFF10 */ addiu $sp, $sp, -0xf0 /* 0785A0 7F043A70 AFBF001C */ sw $ra, 0x1c($sp) /* 0785A4 7F043A74 AFB10018 */ sw $s1, 0x18($sp) /* 0785A8 7F043A78 AFB00014 */ sw $s0, 0x14($sp) /* 0785AC 7F043A7C AFA500F4 */ sw $a1, 0xf4($sp) /* 0785B0 7F043A80 AFA600F8 */ sw $a2, 0xf8($sp) /* 0785B4 7F043A84 AFA700FC */ sw $a3, 0xfc($sp) /* 0785B8 7F043A88 90AF0001 */ lbu $t7, 1($a1) /* 0785BC 7F043A8C 00808825 */ move $s1, $a0 /* 0785C0 7F043A90 31F80002 */ andi $t8, $t7, 2 /* 0785C4 7F043A94 53000034 */ beql $t8, $zero, .L7F043B68 /* 0785C8 7F043A98 00001025 */ move $v0, $zero /* 0785CC 7F043A9C 0FC0FFA6 */ jal sub_GAME_7F03FE98 /* 0785D0 7F043AA0 8C900004 */ lw $s0, 4($a0) /* 0785D4 7F043AA4 1040002F */ beqz $v0, .L7F043B64 /* 0785D8 7F043AA8 AE02006C */ sw $v0, 0x6c($s0) /* 0785DC 7F043AAC 8FA400F8 */ lw $a0, 0xf8($sp) /* 0785E0 7F043AB0 8FA500FC */ lw $a1, 0xfc($sp) /* 0785E4 7F043AB4 0FC1B198 */ jal sub_GAME_7F06C660 /* 0785E8 7F043AB8 00003025 */ move $a2, $zero /* 0785EC 7F043ABC AFA20028 */ sw $v0, 0x28($sp) /* 0785F0 7F043AC0 8E190064 */ lw $t9, 0x64($s0) /* 0785F4 7F043AC4 02202025 */ move $a0, $s1 /* 0785F8 7F043AC8 37280040 */ ori $t0, $t9, 0x40 /* 0785FC 7F043ACC 0FC0F863 */ jal sub_GAME_7F03E18C /* 078600 7F043AD0 AE080064 */ sw $t0, 0x64($s0) /* 078604 7F043AD4 0FC0E94E */ jal sub_GAME_7F03A538 /* 078608 7F043AD8 02202025 */ move $a0, $s1 /* 07860C 7F043ADC 0FC0E905 */ jal unset_stateflag_0x04_for_posdata /* 078610 7F043AE0 02202025 */ move $a0, $s1 /* 078614 7F043AE4 8FA900F8 */ lw $t1, 0xf8($sp) /* 078618 7F043AE8 8E0A0014 */ lw $t2, 0x14($s0) /* 07861C 7F043AEC 02202025 */ move $a0, $s1 /* 078620 7F043AF0 AD490018 */ sw $t1, 0x18($t2) /* 078624 7F043AF4 8E0C0014 */ lw $t4, 0x14($s0) /* 078628 7F043AF8 8FAB00FC */ lw $t3, 0xfc($sp) /* 07862C 7F043AFC AD8B001C */ sw $t3, 0x1c($t4) /* 078630 7F043B00 0FC0E969 */ jal sub_GAME_7F03A5A4 /* 078634 7F043B04 8FA500F4 */ lw $a1, 0xf4($sp) /* 078638 7F043B08 27B100AC */ addiu $s1, $sp, 0xac /* 07863C 7F043B0C 02202825 */ move $a1, $s1 /* 078640 7F043B10 0FC16008 */ jal matrix_4x4_copy /* 078644 7F043B14 26040018 */ addiu $a0, $s0, 0x18 /* 078648 7F043B18 26040058 */ addiu $a0, $s0, 0x58 /* 07864C 7F043B1C 0FC16266 */ jal matrix_4x4_set_position /* 078650 7F043B20 02202825 */ move $a1, $s1 /* 078654 7F043B24 0FC1E111 */ jal sub_GAME_7F078444 /* 078658 7F043B28 00000000 */ nop /* 07865C 7F043B2C 00402025 */ move $a0, $v0 /* 078660 7F043B30 8FA50028 */ lw $a1, 0x28($sp) /* 078664 7F043B34 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 078668 7F043B38 27A6006C */ addiu $a2, $sp, 0x6c /* 07866C 7F043B3C 27A4006C */ addiu $a0, $sp, 0x6c /* 078670 7F043B40 0FC167EE */ jal sub_GAME_7F059FB8 /* 078674 7F043B44 27A5002C */ addiu $a1, $sp, 0x2c /* 078678 7F043B48 8E06006C */ lw $a2, 0x6c($s0) /* 07867C 7F043B4C 27A4002C */ addiu $a0, $sp, 0x2c /* 078680 7F043B50 02202825 */ move $a1, $s1 /* 078684 7F043B54 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 078688 7F043B58 24C60004 */ addiu $a2, $a2, 4 /* 07868C 7F043B5C 10000002 */ b .L7F043B68 /* 078690 7F043B60 24020001 */ li $v0, 1 .L7F043B64: /* 078694 7F043B64 00001025 */ move $v0, $zero .L7F043B68: /* 078698 7F043B68 8FBF001C */ lw $ra, 0x1c($sp) /* 07869C 7F043B6C 8FB00014 */ lw $s0, 0x14($sp) /* 0786A0 7F043B70 8FB10018 */ lw $s1, 0x18($sp) /* 0786A4 7F043B74 03E00008 */ jr $ra /* 0786A8 7F043B78 27BD00F0 */ addiu $sp, $sp, 0xf0 ) #endif #ifdef NONMATCHING void generate_explosion_at_position(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .text glabel generate_explosion_at_position /* 0786AC 7F043B7C 27BDFFA0 */ addiu $sp, $sp, -0x60 /* 0786B0 7F043B80 AFBF002C */ sw $ra, 0x2c($sp) /* 0786B4 7F043B84 AFB00028 */ sw $s0, 0x28($sp) /* 0786B8 7F043B88 AFA50064 */ sw $a1, 0x64($sp) /* 0786BC 7F043B8C 8C880004 */ lw $t0, 4($a0) /* 0786C0 7F043B90 3C010006 */ lui $at, 6 /* 0786C4 7F043B94 00808025 */ move $s0, $a0 /* 0786C8 7F043B98 8D0E0064 */ lw $t6, 0x64($t0) /* 0786CC 7F043B9C 2619002C */ addiu $t9, $s0, 0x2c /* 0786D0 7F043BA0 01C17824 */ and $t7, $t6, $at /* 0786D4 7F043BA4 000FC442 */ srl $t8, $t7, 0x11 /* 0786D8 7F043BA8 AFB80058 */ sw $t8, 0x58($sp) /* 0786DC 7F043BAC 8C86001C */ lw $a2, 0x1c($a0) /* 0786E0 7F043BB0 00002025 */ move $a0, $zero /* 0786E4 7F043BB4 50C00056 */ beql $a2, $zero, .L7F043D10 /* 0786E8 7F043BB8 8D020008 */ lw $v0, 8($t0) /* 0786EC 7F043BBC 8CC2001C */ lw $v0, 0x1c($a2) /* 0786F0 7F043BC0 00C01825 */ move $v1, $a2 /* 0786F4 7F043BC4 50400006 */ beql $v0, $zero, .L7F043BE0 /* 0786F8 7F043BC8 8C790014 */ lw $t9, 0x14($v1) /* 0786FC 7F043BCC 00401825 */ move $v1, $v0 .L7F043BD0: /* 078700 7F043BD0 8C42001C */ lw $v0, 0x1c($v0) /* 078704 7F043BD4 5440FFFE */ bnezl $v0, .L7F043BD0 /* 078708 7F043BD8 00401825 */ move $v1, $v0 /* 07870C 7F043BDC 8C790014 */ lw $t9, 0x14($v1) .L7F043BE0: /* 078710 7F043BE0 AFB90050 */ sw $t9, 0x50($sp) /* 078714 7F043BE4 92090001 */ lbu $t1, 1($s0) /* 078718 7F043BE8 312A0002 */ andi $t2, $t1, 2 /* 07871C 7F043BEC 51400014 */ beql $t2, $zero, .L7F043C40 /* 078720 7F043BF0 C46A0008 */ lwc1 $f10, 8($v1) /* 078724 7F043BF4 8D040014 */ lw $a0, 0x14($t0) /* 078728 7F043BF8 AFA8005C */ sw $t0, 0x5c($sp) /* 07872C 7F043BFC 0FC1B1A8 */ jal getsubmatrix /* 078730 7F043C00 AFA30054 */ sw $v1, 0x54($sp) /* 078734 7F043C04 C4440030 */ lwc1 $f4, 0x30($v0) /* 078738 7F043C08 E7A40044 */ swc1 $f4, 0x44($sp) /* 07873C 7F043C0C C4460034 */ lwc1 $f6, 0x34($v0) /* 078740 7F043C10 E7A60048 */ swc1 $f6, 0x48($sp) /* 078744 7F043C14 C4480038 */ lwc1 $f8, 0x38($v0) /* 078748 7F043C18 0FC1E111 */ jal sub_GAME_7F078444 /* 07874C 7F043C1C E7A8004C */ swc1 $f8, 0x4c($sp) /* 078750 7F043C20 27B00044 */ addiu $s0, $sp, 0x44 /* 078754 7F043C24 02002825 */ move $a1, $s0 /* 078758 7F043C28 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07875C 7F043C2C 00402025 */ move $a0, $v0 /* 078760 7F043C30 8FA30054 */ lw $v1, 0x54($sp) /* 078764 7F043C34 10000008 */ b .L7F043C58 /* 078768 7F043C38 8FA8005C */ lw $t0, 0x5c($sp) /* 07876C 7F043C3C C46A0008 */ lwc1 $f10, 8($v1) .L7F043C40: /* 078770 7F043C40 27B00044 */ addiu $s0, $sp, 0x44 /* 078774 7F043C44 E7AA0044 */ swc1 $f10, 0x44($sp) /* 078778 7F043C48 C470000C */ lwc1 $f16, 0xc($v1) /* 07877C 7F043C4C E7B00048 */ swc1 $f16, 0x48($sp) /* 078780 7F043C50 C4720010 */ lwc1 $f18, 0x10($v1) /* 078784 7F043C54 E7B2004C */ swc1 $f18, 0x4c($sp) .L7F043C58: /* 078788 7F043C58 906B0001 */ lbu $t3, 1($v1) /* 07878C 7F043C5C 27A40050 */ addiu $a0, $sp, 0x50 /* 078790 7F043C60 8FA70044 */ lw $a3, 0x44($sp) /* 078794 7F043C64 316C0008 */ andi $t4, $t3, 8 /* 078798 7F043C68 1580001A */ bnez $t4, .L7F043CD4 /* 07879C 7F043C6C C7A4004C */ lwc1 $f4, 0x4c($sp) /* 0787A0 7F043C70 8C650008 */ lw $a1, 8($v1) /* 0787A4 7F043C74 8C660010 */ lw $a2, 0x10($v1) /* 0787A8 7F043C78 AFA8005C */ sw $t0, 0x5c($sp) /* 0787AC 7F043C7C AFA30054 */ sw $v1, 0x54($sp) /* 0787B0 7F043C80 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 0787B4 7F043C84 E7A40010 */ swc1 $f4, 0x10($sp) /* 0787B8 7F043C88 8FA30054 */ lw $v1, 0x54($sp) /* 0787BC 7F043C8C 10400011 */ beqz $v0, .L7F043CD4 /* 0787C0 7F043C90 8FA8005C */ lw $t0, 0x5c($sp) /* 0787C4 7F043C94 8D0D0008 */ lw $t5, 8($t0) /* 0787C8 7F043C98 8FB80058 */ lw $t8, 0x58($sp) /* 0787CC 7F043C9C 2479002C */ addiu $t9, $v1, 0x2c /* 0787D0 7F043CA0 31AE000E */ andi $t6, $t5, 0xe /* 0787D4 7F043CA4 2DCF0001 */ sltiu $t7, $t6, 1 /* 0787D8 7F043CA8 AFAF0010 */ sw $t7, 0x10($sp) /* 0787DC 7F043CAC AFB90018 */ sw $t9, 0x18($sp) /* 0787E0 7F043CB0 AFA0001C */ sw $zero, 0x1c($sp) /* 0787E4 7F043CB4 00002025 */ move $a0, $zero /* 0787E8 7F043CB8 02002825 */ move $a1, $s0 /* 0787EC 7F043CBC 8FA60050 */ lw $a2, 0x50($sp) /* 0787F0 7F043CC0 87A70066 */ lh $a3, 0x66($sp) /* 0787F4 7F043CC4 0FC27094 */ jal sub_GAME_7F09C250 /* 0787F8 7F043CC8 AFB80014 */ sw $t8, 0x14($sp) /* 0787FC 7F043CCC 10000024 */ b .L7F043D60 /* 078800 7F043CD0 8FBF002C */ lw $ra, 0x2c($sp) .L7F043CD4: /* 078804 7F043CD4 8FA90058 */ lw $t1, 0x58($sp) /* 078808 7F043CD8 246A002C */ addiu $t2, $v1, 0x2c /* 07880C 7F043CDC 240B0001 */ li $t3, 1 /* 078810 7F043CE0 AFAB001C */ sw $t3, 0x1c($sp) /* 078814 7F043CE4 AFAA0018 */ sw $t2, 0x18($sp) /* 078818 7F043CE8 00002025 */ move $a0, $zero /* 07881C 7F043CEC 02002825 */ move $a1, $s0 /* 078820 7F043CF0 8FA60050 */ lw $a2, 0x50($sp) /* 078824 7F043CF4 87A70066 */ lh $a3, 0x66($sp) /* 078828 7F043CF8 AFA00010 */ sw $zero, 0x10($sp) /* 07882C 7F043CFC 0FC27094 */ jal sub_GAME_7F09C250 /* 078830 7F043D00 AFA90014 */ sw $t1, 0x14($sp) /* 078834 7F043D04 10000016 */ b .L7F043D60 /* 078838 7F043D08 8FBF002C */ lw $ra, 0x2c($sp) /* 07883C 7F043D0C 8D020008 */ lw $v0, 8($t0) .L7F043D10: /* 078840 7F043D10 304C000E */ andi $t4, $v0, 0xe /* 078844 7F043D14 2D820001 */ sltiu $v0, $t4, 1 /* 078848 7F043D18 50400005 */ beql $v0, $zero, .L7F043D30 /* 07884C 7F043D1C 8FB80058 */ lw $t8, 0x58($sp) /* 078850 7F043D20 92020001 */ lbu $v0, 1($s0) /* 078854 7F043D24 304E0008 */ andi $t6, $v0, 8 /* 078858 7F043D28 2DC20001 */ sltiu $v0, $t6, 1 /* 07885C 7F043D2C 8FB80058 */ lw $t8, 0x58($sp) .L7F043D30: /* 078860 7F043D30 8E060014 */ lw $a2, 0x14($s0) /* 078864 7F043D34 AFB90018 */ sw $t9, 0x18($sp) /* 078868 7F043D38 AFA20010 */ sw $v0, 0x10($sp) /* 07886C 7F043D3C AFB80014 */ sw $t8, 0x14($sp) /* 078870 7F043D40 92090001 */ lbu $t1, 1($s0) /* 078874 7F043D44 25050058 */ addiu $a1, $t0, 0x58 /* 078878 7F043D48 87A70066 */ lh $a3, 0x66($sp) /* 07887C 7F043D4C 312A0008 */ andi $t2, $t1, 8 /* 078880 7F043D50 000A582B */ sltu $t3, $zero, $t2 /* 078884 7F043D54 0FC27094 */ jal sub_GAME_7F09C250 /* 078888 7F043D58 AFAB001C */ sw $t3, 0x1c($sp) /* 07888C 7F043D5C 8FBF002C */ lw $ra, 0x2c($sp) .L7F043D60: /* 078890 7F043D60 8FB00028 */ lw $s0, 0x28($sp) /* 078894 7F043D64 27BD0060 */ addiu $sp, $sp, 0x60 /* 078898 7F043D68 03E00008 */ jr $ra /* 07889C 7F043D6C 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .text glabel generate_explosion_at_position /* 0789EC 7F043E7C 27BDFFA0 */ addiu $sp, $sp, -0x60 /* 0789F0 7F043E80 AFBF002C */ sw $ra, 0x2c($sp) /* 0789F4 7F043E84 AFB00028 */ sw $s0, 0x28($sp) /* 0789F8 7F043E88 AFA50064 */ sw $a1, 0x64($sp) /* 0789FC 7F043E8C 8C880004 */ lw $t0, 4($a0) /* 078A00 7F043E90 3C010006 */ lui $at, 6 /* 078A04 7F043E94 00808025 */ move $s0, $a0 /* 078A08 7F043E98 8D0E0064 */ lw $t6, 0x64($t0) /* 078A0C 7F043E9C 2619002C */ addiu $t9, $s0, 0x2c /* 078A10 7F043EA0 01C17824 */ and $t7, $t6, $at /* 078A14 7F043EA4 000FC442 */ srl $t8, $t7, 0x11 /* 078A18 7F043EA8 AFB80058 */ sw $t8, 0x58($sp) /* 078A1C 7F043EAC 8C86001C */ lw $a2, 0x1c($a0) /* 078A20 7F043EB0 00002025 */ move $a0, $zero /* 078A24 7F043EB4 50C00056 */ beql $a2, $zero, .L7F044010 /* 078A28 7F043EB8 8D020008 */ lw $v0, 8($t0) /* 078A2C 7F043EBC 8CC2001C */ lw $v0, 0x1c($a2) /* 078A30 7F043EC0 00C01825 */ move $v1, $a2 /* 078A34 7F043EC4 50400006 */ beql $v0, $zero, .L7F043EE0 /* 078A38 7F043EC8 8C790014 */ lw $t9, 0x14($v1) /* 078A3C 7F043ECC 00401825 */ move $v1, $v0 .L7F043ED0: /* 078A40 7F043ED0 8C42001C */ lw $v0, 0x1c($v0) /* 078A44 7F043ED4 5440FFFE */ bnezl $v0, .L7F043ED0 /* 078A48 7F043ED8 00401825 */ move $v1, $v0 /* 078A4C 7F043EDC 8C790014 */ lw $t9, 0x14($v1) .L7F043EE0: /* 078A50 7F043EE0 AFB9004C */ sw $t9, 0x4c($sp) /* 078A54 7F043EE4 92090001 */ lbu $t1, 1($s0) /* 078A58 7F043EE8 312A0002 */ andi $t2, $t1, 2 /* 078A5C 7F043EEC 51400014 */ beql $t2, $zero, .L7F043F40 /* 078A60 7F043EF0 C46A0008 */ lwc1 $f10, 8($v1) /* 078A64 7F043EF4 8D040014 */ lw $a0, 0x14($t0) /* 078A68 7F043EF8 AFA8005C */ sw $t0, 0x5c($sp) /* 078A6C 7F043EFC 0FC1B324 */ jal getsubmatrix /* 078A70 7F043F00 AFA30050 */ sw $v1, 0x50($sp) /* 078A74 7F043F04 C4440030 */ lwc1 $f4, 0x30($v0) /* 078A78 7F043F08 E7A40040 */ swc1 $f4, 0x40($sp) /* 078A7C 7F043F0C C4460034 */ lwc1 $f6, 0x34($v0) /* 078A80 7F043F10 E7A60044 */ swc1 $f6, 0x44($sp) /* 078A84 7F043F14 C4480038 */ lwc1 $f8, 0x38($v0) /* 078A88 7F043F18 0FC1E28D */ jal sub_GAME_7F078444 /* 078A8C 7F043F1C E7A80048 */ swc1 $f8, 0x48($sp) /* 078A90 7F043F20 27B00040 */ addiu $s0, $sp, 0x40 /* 078A94 7F043F24 02002825 */ move $a1, $s0 /* 078A98 7F043F28 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 078A9C 7F043F2C 00402025 */ move $a0, $v0 /* 078AA0 7F043F30 8FA30050 */ lw $v1, 0x50($sp) /* 078AA4 7F043F34 10000008 */ b .L7F043F58 /* 078AA8 7F043F38 8FA8005C */ lw $t0, 0x5c($sp) /* 078AAC 7F043F3C C46A0008 */ lwc1 $f10, 8($v1) .L7F043F40: /* 078AB0 7F043F40 27B00040 */ addiu $s0, $sp, 0x40 /* 078AB4 7F043F44 E7AA0040 */ swc1 $f10, 0x40($sp) /* 078AB8 7F043F48 C470000C */ lwc1 $f16, 0xc($v1) /* 078ABC 7F043F4C E7B00044 */ swc1 $f16, 0x44($sp) /* 078AC0 7F043F50 C4720010 */ lwc1 $f18, 0x10($v1) /* 078AC4 7F043F54 E7B20048 */ swc1 $f18, 0x48($sp) .L7F043F58: /* 078AC8 7F043F58 906B0001 */ lbu $t3, 1($v1) /* 078ACC 7F043F5C 27A4004C */ addiu $a0, $sp, 0x4c /* 078AD0 7F043F60 8FA70040 */ lw $a3, 0x40($sp) /* 078AD4 7F043F64 316C0008 */ andi $t4, $t3, 8 /* 078AD8 7F043F68 1580001A */ bnez $t4, .L7F043FD4 /* 078ADC 7F043F6C C7A40048 */ lwc1 $f4, 0x48($sp) /* 078AE0 7F043F70 8C650008 */ lw $a1, 8($v1) /* 078AE4 7F043F74 8C660010 */ lw $a2, 0x10($v1) /* 078AE8 7F043F78 AFA8005C */ sw $t0, 0x5c($sp) /* 078AEC 7F043F7C AFA30050 */ sw $v1, 0x50($sp) /* 078AF0 7F043F80 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 078AF4 7F043F84 E7A40010 */ swc1 $f4, 0x10($sp) /* 078AF8 7F043F88 8FA30050 */ lw $v1, 0x50($sp) /* 078AFC 7F043F8C 10400011 */ beqz $v0, .L7F043FD4 /* 078B00 7F043F90 8FA8005C */ lw $t0, 0x5c($sp) /* 078B04 7F043F94 8D0D0008 */ lw $t5, 8($t0) /* 078B08 7F043F98 8FB80058 */ lw $t8, 0x58($sp) /* 078B0C 7F043F9C 2479002C */ addiu $t9, $v1, 0x2c /* 078B10 7F043FA0 31AE000E */ andi $t6, $t5, 0xe /* 078B14 7F043FA4 2DCF0001 */ sltiu $t7, $t6, 1 /* 078B18 7F043FA8 AFAF0010 */ sw $t7, 0x10($sp) /* 078B1C 7F043FAC AFB90018 */ sw $t9, 0x18($sp) /* 078B20 7F043FB0 AFA0001C */ sw $zero, 0x1c($sp) /* 078B24 7F043FB4 00002025 */ move $a0, $zero /* 078B28 7F043FB8 02002825 */ move $a1, $s0 /* 078B2C 7F043FBC 8FA6004C */ lw $a2, 0x4c($sp) /* 078B30 7F043FC0 87A70066 */ lh $a3, 0x66($sp) /* 078B34 7F043FC4 0FC2737C */ jal sub_GAME_7F09C250 /* 078B38 7F043FC8 AFB80014 */ sw $t8, 0x14($sp) /* 078B3C 7F043FCC 10000024 */ b .L7F044060 /* 078B40 7F043FD0 00401825 */ move $v1, $v0 .L7F043FD4: /* 078B44 7F043FD4 8FA90058 */ lw $t1, 0x58($sp) /* 078B48 7F043FD8 246A002C */ addiu $t2, $v1, 0x2c /* 078B4C 7F043FDC 240B0001 */ li $t3, 1 /* 078B50 7F043FE0 AFAB001C */ sw $t3, 0x1c($sp) /* 078B54 7F043FE4 AFAA0018 */ sw $t2, 0x18($sp) /* 078B58 7F043FE8 00002025 */ move $a0, $zero /* 078B5C 7F043FEC 02002825 */ move $a1, $s0 /* 078B60 7F043FF0 8FA6004C */ lw $a2, 0x4c($sp) /* 078B64 7F043FF4 87A70066 */ lh $a3, 0x66($sp) /* 078B68 7F043FF8 AFA00010 */ sw $zero, 0x10($sp) /* 078B6C 7F043FFC 0FC2737C */ jal sub_GAME_7F09C250 /* 078B70 7F044000 AFA90014 */ sw $t1, 0x14($sp) /* 078B74 7F044004 10000016 */ b .L7F044060 /* 078B78 7F044008 00401825 */ move $v1, $v0 /* 078B7C 7F04400C 8D020008 */ lw $v0, 8($t0) .L7F044010: /* 078B80 7F044010 304C000E */ andi $t4, $v0, 0xe /* 078B84 7F044014 2D820001 */ sltiu $v0, $t4, 1 /* 078B88 7F044018 50400005 */ beql $v0, $zero, .L7F044030 /* 078B8C 7F04401C 8FB80058 */ lw $t8, 0x58($sp) /* 078B90 7F044020 92020001 */ lbu $v0, 1($s0) /* 078B94 7F044024 304E0008 */ andi $t6, $v0, 8 /* 078B98 7F044028 2DC20001 */ sltiu $v0, $t6, 1 /* 078B9C 7F04402C 8FB80058 */ lw $t8, 0x58($sp) .L7F044030: /* 078BA0 7F044030 8E060014 */ lw $a2, 0x14($s0) /* 078BA4 7F044034 AFB90018 */ sw $t9, 0x18($sp) /* 078BA8 7F044038 AFA20010 */ sw $v0, 0x10($sp) /* 078BAC 7F04403C AFB80014 */ sw $t8, 0x14($sp) /* 078BB0 7F044040 92090001 */ lbu $t1, 1($s0) /* 078BB4 7F044044 25050058 */ addiu $a1, $t0, 0x58 /* 078BB8 7F044048 87A70066 */ lh $a3, 0x66($sp) /* 078BBC 7F04404C 312A0008 */ andi $t2, $t1, 8 /* 078BC0 7F044050 000A582B */ sltu $t3, $zero, $t2 /* 078BC4 7F044054 0FC2737C */ jal sub_GAME_7F09C250 /* 078BC8 7F044058 AFAB001C */ sw $t3, 0x1c($sp) /* 078BCC 7F04405C 00401825 */ move $v1, $v0 .L7F044060: /* 078BD0 7F044060 8FBF002C */ lw $ra, 0x2c($sp) /* 078BD4 7F044064 8FB00028 */ lw $s0, 0x28($sp) /* 078BD8 7F044068 27BD0060 */ addiu $sp, $sp, 0x60 /* 078BDC 7F04406C 03E00008 */ jr $ra /* 078BE0 7F044070 00601025 */ move $v0, $v1 ) #endif #endif #ifdef NONMATCHING void handle_thrown_explosive_detonation(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata glabel D_80052A94 .word 0x47742400 /*62500.0*/ .text glabel handle_thrown_explosive_detonation /* 0788A0 7F043D70 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0788A4 7F043D74 AFBF0014 */ sw $ra, 0x14($sp) /* 0788A8 7F043D78 AFA40020 */ sw $a0, 0x20($sp) /* 0788AC 7F043D7C 8C870004 */ lw $a3, 4($a0) /* 0788B0 7F043D80 0FC26C54 */ jal get_cur_playernum /* 0788B4 7F043D84 AFA7001C */ sw $a3, 0x1c($sp) /* 0788B8 7F043D88 0FC26D36 */ jal sub_GAME_7F09B4D8 /* 0788BC 7F043D8C 00402025 */ move $a0, $v0 /* 0788C0 7F043D90 14400117 */ bnez $v0, .L7F0441F0 /* 0788C4 7F043D94 8FA7001C */ lw $a3, 0x1c($sp) /* 0788C8 7F043D98 90E20003 */ lbu $v0, 3($a3) /* 0788CC 7F043D9C 24010007 */ li $at, 7 /* 0788D0 7F043DA0 5441000F */ bnel $v0, $at, .L7F043DE0 /* 0788D4 7F043DA4 24010008 */ li $at, 8 /* 0788D8 7F043DA8 8CEF0008 */ lw $t7, 8($a3) /* 0788DC 7F043DAC 8FA40020 */ lw $a0, 0x20($sp) /* 0788E0 7F043DB0 2405000C */ li $a1, 12 /* 0788E4 7F043DB4 000FC0C0 */ sll $t8, $t7, 3 /* 0788E8 7F043DB8 0703010E */ bgezl $t8, .L7F0441F4 /* 0788EC 7F043DBC 8FBF0014 */ lw $ra, 0x14($sp) /* 0788F0 7F043DC0 0FC10EDF */ jal generate_explosion_at_position /* 0788F4 7F043DC4 AFA7001C */ sw $a3, 0x1c($sp) /* 0788F8 7F043DC8 8FA7001C */ lw $a3, 0x1c($sp) /* 0788FC 7F043DCC 8CF90064 */ lw $t9, 0x64($a3) /* 078900 7F043DD0 37280004 */ ori $t0, $t9, 4 /* 078904 7F043DD4 10000106 */ b .L7F0441F0 /* 078908 7F043DD8 ACE80064 */ sw $t0, 0x64($a3) /* 07890C 7F043DDC 24010008 */ li $at, 8 .L7F043DE0: /* 078910 7F043DE0 14410103 */ bne $v0, $at, .L7F0441F0 /* 078914 7F043DE4 8FA90020 */ lw $t1, 0x20($sp) /* 078918 7F043DE8 8D260004 */ lw $a2, 4($t1) /* 07891C 7F043DEC 2401001A */ li $at, 26 /* 078920 7F043DF0 80C30080 */ lb $v1, 0x80($a2) /* 078924 7F043DF4 10610003 */ beq $v1, $at, .L7F043E04 /* 078928 7F043DF8 24010057 */ li $at, 87 /* 07892C 7F043DFC 5461001B */ bnel $v1, $at, .L7F043E6C /* 078930 7F043E00 24010056 */ li $at, 86 .L7F043E04: /* 078934 7F043E04 84C20082 */ lh $v0, 0x82($a2) /* 078938 7F043E08 3C0A8005 */ lui $t2, %hi(clock_timer) /* 07893C 7F043E0C 04420017 */ bltzl $v0, .L7F043E6C /* 078940 7F043E10 24010056 */ li $at, 86 /* 078944 7F043E14 8D4A8374 */ lw $t2, %lo(clock_timer)($t2) /* 078948 7F043E18 004A5823 */ subu $t3, $v0, $t2 /* 07894C 7F043E1C A4CB0082 */ sh $t3, 0x82($a2) /* 078950 7F043E20 84CC0082 */ lh $t4, 0x82($a2) /* 078954 7F043E24 8FA40020 */ lw $a0, 0x20($sp) /* 078958 7F043E28 058300F2 */ bgezl $t4, .L7F0441F4 /* 07895C 7F043E2C 8FBF0014 */ lw $ra, 0x14($sp) /* 078960 7F043E30 8CED000C */ lw $t5, 0xc($a3) /* 078964 7F043E34 2405000D */ li $a1, 13 /* 078968 7F043E38 000D7000 */ sll $t6, $t5, 0 /* 07896C 7F043E3C 05C10003 */ bgez $t6, .L7F043E4C /* 078970 7F043E40 00000000 */ nop /* 078974 7F043E44 10000001 */ b .L7F043E4C /* 078978 7F043E48 24050011 */ li $a1, 17 .L7F043E4C: /* 07897C 7F043E4C 0FC10EDF */ jal generate_explosion_at_position /* 078980 7F043E50 AFA7001C */ sw $a3, 0x1c($sp) /* 078984 7F043E54 8FA7001C */ lw $a3, 0x1c($sp) /* 078988 7F043E58 8CEF0064 */ lw $t7, 0x64($a3) /* 07898C 7F043E5C 35F80004 */ ori $t8, $t7, 4 /* 078990 7F043E60 100000E3 */ b .L7F0441F0 /* 078994 7F043E64 ACF80064 */ sw $t8, 0x64($a3) /* 078998 7F043E68 24010056 */ li $at, 86 .L7F043E6C: /* 07899C 7F043E6C 54610014 */ bnel $v1, $at, .L7F043EC0 /* 0789A0 7F043E70 24010022 */ li $at, 34 /* 0789A4 7F043E74 84D90082 */ lh $t9, 0x82($a2) /* 0789A8 7F043E78 8FA40020 */ lw $a0, 0x20($sp) /* 0789AC 7F043E7C 572000DD */ bnezl $t9, .L7F0441F4 /* 0789B0 7F043E80 8FBF0014 */ lw $ra, 0x14($sp) /* 0789B4 7F043E84 8CE8000C */ lw $t0, 0xc($a3) /* 0789B8 7F043E88 2405000D */ li $a1, 13 /* 0789BC 7F043E8C 00084800 */ sll $t1, $t0, 0 /* 0789C0 7F043E90 05210003 */ bgez $t1, .L7F043EA0 /* 0789C4 7F043E94 00000000 */ nop /* 0789C8 7F043E98 10000001 */ b .L7F043EA0 /* 0789CC 7F043E9C 24050011 */ li $a1, 17 .L7F043EA0: /* 0789D0 7F043EA0 0FC10EDF */ jal generate_explosion_at_position /* 0789D4 7F043EA4 AFA7001C */ sw $a3, 0x1c($sp) /* 0789D8 7F043EA8 8FA7001C */ lw $a3, 0x1c($sp) /* 0789DC 7F043EAC 8CEA0064 */ lw $t2, 0x64($a3) /* 0789E0 7F043EB0 354B0004 */ ori $t3, $t2, 4 /* 0789E4 7F043EB4 100000CE */ b .L7F0441F0 /* 0789E8 7F043EB8 ACEB0064 */ sw $t3, 0x64($a3) /* 0789EC 7F043EBC 24010022 */ li $at, 34 .L7F043EC0: /* 0789F0 7F043EC0 54610014 */ bnel $v1, $at, .L7F043F14 /* 0789F4 7F043EC4 2401001B */ li $at, 27 /* 0789F8 7F043EC8 84CC0082 */ lh $t4, 0x82($a2) /* 0789FC 7F043ECC 8FA40020 */ lw $a0, 0x20($sp) /* 078A00 7F043ED0 24050011 */ li $a1, 17 /* 078A04 7F043ED4 558000C7 */ bnezl $t4, .L7F0441F4 /* 078A08 7F043ED8 8FBF0014 */ lw $ra, 0x14($sp) /* 078A0C 7F043EDC 0FC10EDF */ jal generate_explosion_at_position /* 078A10 7F043EE0 AFA7001C */ sw $a3, 0x1c($sp) /* 078A14 7F043EE4 8FA7001C */ lw $a3, 0x1c($sp) /* 078A18 7F043EE8 24040078 */ li $a0, 120 /* 078A1C 7F043EEC 8CED0064 */ lw $t5, 0x64($a3) /* 078A20 7F043EF0 35AE0004 */ ori $t6, $t5, 4 /* 078A24 7F043EF4 0FC22FF1 */ jal trigger_explosions_around_player /* 078A28 7F043EF8 ACEE0064 */ sw $t6, 0x64($a3) /* 078A2C 7F043EFC 24040002 */ li $a0, 2 /* 078A30 7F043F00 0FC15858 */ jal set_unset_clock_lock_bits /* 078A34 7F043F04 00002825 */ move $a1, $zero /* 078A38 7F043F08 100000BA */ b .L7F0441F4 /* 078A3C 7F043F0C 8FBF0014 */ lw $ra, 0x14($sp) /* 078A40 7F043F10 2401001B */ li $at, 27 .L7F043F14: /* 078A44 7F043F14 10610003 */ beq $v1, $at, .L7F043F24 /* 078A48 7F043F18 24010021 */ li $at, 33 /* 078A4C 7F043F1C 5461001F */ bnel $v1, $at, .L7F043F9C /* 078A50 7F043F20 2401001D */ li $at, 29 .L7F043F24: /* 078A54 7F043F24 84C20082 */ lh $v0, 0x82($a2) /* 078A58 7F043F28 3C0F8005 */ lui $t7, %hi(clock_timer) /* 078A5C 7F043F2C 0442001B */ bltzl $v0, .L7F043F9C /* 078A60 7F043F30 2401001D */ li $at, 29 /* 078A64 7F043F34 8DEF8374 */ lw $t7, %lo(clock_timer)($t7) /* 078A68 7F043F38 004FC023 */ subu $t8, $v0, $t7 /* 078A6C 7F043F3C A4D80082 */ sh $t8, 0x82($a2) /* 078A70 7F043F40 84D90082 */ lh $t9, 0x82($a2) /* 078A74 7F043F44 8FA40020 */ lw $a0, 0x20($sp) /* 078A78 7F043F48 072300AA */ bgezl $t9, .L7F0441F4 /* 078A7C 7F043F4C 8FBF0014 */ lw $ra, 0x14($sp) /* 078A80 7F043F50 8CE8000C */ lw $t0, 0xc($a3) /* 078A84 7F043F54 2405000D */ li $a1, 13 /* 078A88 7F043F58 00084800 */ sll $t1, $t0, 0 /* 078A8C 7F043F5C 05210003 */ bgez $t1, .L7F043F6C /* 078A90 7F043F60 00000000 */ nop /* 078A94 7F043F64 10000001 */ b .L7F043F6C /* 078A98 7F043F68 24050011 */ li $a1, 17 .L7F043F6C: /* 078A9C 7F043F6C AFA60018 */ sw $a2, 0x18($sp) /* 078AA0 7F043F70 0FC10EDF */ jal generate_explosion_at_position /* 078AA4 7F043F74 AFA7001C */ sw $a3, 0x1c($sp) /* 078AA8 7F043F78 8FA60018 */ lw $a2, 0x18($sp) /* 078AAC 7F043F7C 8FA7001C */ lw $a3, 0x1c($sp) /* 078AB0 7F043F80 240AFFFF */ li $t2, -1 /* 078AB4 7F043F84 A4CA0082 */ sh $t2, 0x82($a2) /* 078AB8 7F043F88 8CEB0064 */ lw $t3, 0x64($a3) /* 078ABC 7F043F8C 356C0004 */ ori $t4, $t3, 4 /* 078AC0 7F043F90 10000097 */ b .L7F0441F0 /* 078AC4 7F043F94 ACEC0064 */ sw $t4, 0x64($a3) /* 078AC8 7F043F98 2401001D */ li $at, 29 .L7F043F9C: /* 078ACC 7F043F9C 54610049 */ bnel $v1, $at, .L7F0440C4 /* 078AD0 7F043FA0 2401001C */ li $at, 28 /* 078AD4 7F043FA4 3C038003 */ lui $v1, %hi(D_80030AF4) /* 078AD8 7F043FA8 8C630AF4 */ lw $v1, %lo(D_80030AF4)($v1) /* 078ADC 7F043FAC 3C088005 */ lui $t0, %hi(clock_timer) /* 078AE0 7F043FB0 5060000C */ beql $v1, $zero, .L7F043FE4 /* 078AE4 7F043FB4 84C20082 */ lh $v0, 0x82($a2) /* 078AE8 7F043FB8 8CE20064 */ lw $v0, 0x64($a3) /* 078AEC 7F043FBC 3C010006 */ lui $at, 6 /* 078AF0 7F043FC0 240F0001 */ li $t7, 1 /* 078AF4 7F043FC4 00416824 */ and $t5, $v0, $at /* 078AF8 7F043FC8 000D7442 */ srl $t6, $t5, 0x11 /* 078AFC 7F043FCC 01CFC004 */ sllv $t8, $t7, $t6 /* 078B00 7F043FD0 0078C824 */ and $t9, $v1, $t8 /* 078B04 7F043FD4 53200003 */ beql $t9, $zero, .L7F043FE4 /* 078B08 7F043FD8 84C20082 */ lh $v0, 0x82($a2) /* 078B0C 7F043FDC A4C00082 */ sh $zero, 0x82($a2) /* 078B10 7F043FE0 84C20082 */ lh $v0, 0x82($a2) .L7F043FE4: /* 078B14 7F043FE4 28410002 */ slti $at, $v0, 2 /* 078B18 7F043FE8 1420000B */ bnez $at, .L7F044018 /* 078B1C 7F043FEC 00000000 */ nop /* 078B20 7F043FF0 8D088374 */ lw $t0, %lo(clock_timer)($t0) /* 078B24 7F043FF4 240B0001 */ li $t3, 1 /* 078B28 7F043FF8 00484823 */ subu $t1, $v0, $t0 /* 078B2C 7F043FFC A4C90082 */ sh $t1, 0x82($a2) /* 078B30 7F044000 84CA0082 */ lh $t2, 0x82($a2) /* 078B34 7F044004 29410002 */ slti $at, $t2, 2 /* 078B38 7F044008 5020007A */ beql $at, $zero, .L7F0441F4 /* 078B3C 7F04400C 8FBF0014 */ lw $ra, 0x14($sp) /* 078B40 7F044010 10000077 */ b .L7F0441F0 /* 078B44 7F044014 A4CB0082 */ sh $t3, 0x82($a2) .L7F044018: /* 078B48 7F044018 54400076 */ bnezl $v0, .L7F0441F4 /* 078B4C 7F04401C 8FBF0014 */ lw $ra, 0x14($sp) /* 078B50 7F044020 8CEC000C */ lw $t4, 0xc($a3) /* 078B54 7F044024 8FA40020 */ lw $a0, 0x20($sp) /* 078B58 7F044028 24050011 */ li $a1, 17 /* 078B5C 7F04402C 000C6800 */ sll $t5, $t4, 0 /* 078B60 7F044030 05A30008 */ bgezl $t5, .L7F044054 /* 078B64 7F044034 AFA60018 */ sw $a2, 0x18($sp) /* 078B68 7F044038 AFA60018 */ sw $a2, 0x18($sp) /* 078B6C 7F04403C 0FC10EDF */ jal generate_explosion_at_position /* 078B70 7F044040 AFA7001C */ sw $a3, 0x1c($sp) /* 078B74 7F044044 8FA60018 */ lw $a2, 0x18($sp) /* 078B78 7F044048 10000017 */ b .L7F0440A8 /* 078B7C 7F04404C 8FA7001C */ lw $a3, 0x1c($sp) /* 078B80 7F044050 AFA60018 */ sw $a2, 0x18($sp) .L7F044054: /* 078B84 7F044054 0C001A57 */ jal get_stage_num /* 078B88 7F044058 AFA7001C */ sw $a3, 0x1c($sp) /* 078B8C 7F04405C 24010022 */ li $at, 34 /* 078B90 7F044060 8FA60018 */ lw $a2, 0x18($sp) /* 078B94 7F044064 14410009 */ bne $v0, $at, .L7F04408C /* 078B98 7F044068 8FA7001C */ lw $a3, 0x1c($sp) /* 078B9C 7F04406C 8FA40020 */ lw $a0, 0x20($sp) /* 078BA0 7F044070 24050013 */ li $a1, 19 /* 078BA4 7F044074 AFA60018 */ sw $a2, 0x18($sp) /* 078BA8 7F044078 0FC10EDF */ jal generate_explosion_at_position /* 078BAC 7F04407C AFA7001C */ sw $a3, 0x1c($sp) /* 078BB0 7F044080 8FA60018 */ lw $a2, 0x18($sp) /* 078BB4 7F044084 10000008 */ b .L7F0440A8 /* 078BB8 7F044088 8FA7001C */ lw $a3, 0x1c($sp) .L7F04408C: /* 078BBC 7F04408C 8FA40020 */ lw $a0, 0x20($sp) /* 078BC0 7F044090 2405000D */ li $a1, 13 /* 078BC4 7F044094 AFA60018 */ sw $a2, 0x18($sp) /* 078BC8 7F044098 0FC10EDF */ jal generate_explosion_at_position /* 078BCC 7F04409C AFA7001C */ sw $a3, 0x1c($sp) /* 078BD0 7F0440A0 8FA60018 */ lw $a2, 0x18($sp) /* 078BD4 7F0440A4 8FA7001C */ lw $a3, 0x1c($sp) .L7F0440A8: /* 078BD8 7F0440A8 240EFFFF */ li $t6, -1 /* 078BDC 7F0440AC A4CE0082 */ sh $t6, 0x82($a2) /* 078BE0 7F0440B0 8CEF0064 */ lw $t7, 0x64($a3) /* 078BE4 7F0440B4 35F80004 */ ori $t8, $t7, 4 /* 078BE8 7F0440B8 1000004D */ b .L7F0441F0 /* 078BEC 7F0440BC ACF80064 */ sw $t8, 0x64($a3) /* 078BF0 7F0440C0 2401001C */ li $at, 28 .L7F0440C4: /* 078BF4 7F0440C4 5461004B */ bnel $v1, $at, .L7F0441F4 /* 078BF8 7F0440C8 8FBF0014 */ lw $ra, 0x14($sp) /* 078BFC 7F0440CC 84C20082 */ lh $v0, 0x82($a2) /* 078C00 7F0440D0 3C198005 */ lui $t9, %hi(clock_timer) /* 078C04 7F0440D4 28410002 */ slti $at, $v0, 2 /* 078C08 7F0440D8 54200012 */ bnezl $at, .L7F044124 /* 078C0C 7F0440DC 24010001 */ li $at, 1 /* 078C10 7F0440E0 8F398374 */ lw $t9, %lo(clock_timer)($t9) /* 078C14 7F0440E4 240A0001 */ li $t2, 1 /* 078C18 7F0440E8 00C02025 */ move $a0, $a2 /* 078C1C 7F0440EC 00594023 */ subu $t0, $v0, $t9 /* 078C20 7F0440F0 A4C80082 */ sh $t0, 0x82($a2) /* 078C24 7F0440F4 84C90082 */ lh $t1, 0x82($a2) /* 078C28 7F0440F8 29210002 */ slti $at, $t1, 2 /* 078C2C 7F0440FC 50200027 */ beql $at, $zero, .L7F04419C /* 078C30 7F044100 84CC0082 */ lh $t4, 0x82($a2) /* 078C34 7F044104 A4CA0082 */ sh $t2, 0x82($a2) /* 078C38 7F044108 AFA7001C */ sw $a3, 0x1c($sp) /* 078C3C 7F04410C 0FC146D7 */ jal add_obj_to_temp_proxmine_table /* 078C40 7F044110 AFA60018 */ sw $a2, 0x18($sp) /* 078C44 7F044114 8FA60018 */ lw $a2, 0x18($sp) /* 078C48 7F044118 1000001F */ b .L7F044198 /* 078C4C 7F04411C 8FA7001C */ lw $a3, 0x1c($sp) /* 078C50 7F044120 24010001 */ li $at, 1 .L7F044124: /* 078C54 7F044124 5441001D */ bnel $v0, $at, .L7F04419C /* 078C58 7F044128 84CC0082 */ lh $t4, 0x82($a2) /* 078C5C 7F04412C AFA60018 */ sw $a2, 0x18($sp) /* 078C60 7F044130 0FC225E6 */ jal get_curplayer_positiondata /* 078C64 7F044134 AFA7001C */ sw $a3, 0x1c($sp) /* 078C68 7F044138 8FAB0020 */ lw $t3, 0x20($sp) /* 078C6C 7F04413C C4440008 */ lwc1 $f4, 8($v0) /* 078C70 7F044140 C448000C */ lwc1 $f8, 0xc($v0) /* 078C74 7F044144 C5660008 */ lwc1 $f6, 8($t3) /* 078C78 7F044148 C56A000C */ lwc1 $f10, 0xc($t3) /* 078C7C 7F04414C C4500010 */ lwc1 $f16, 0x10($v0) /* 078C80 7F044150 46062001 */ sub.s $f0, $f4, $f6 /* 078C84 7F044154 C5720010 */ lwc1 $f18, 0x10($t3) /* 078C88 7F044158 3C018005 */ lui $at, %hi(D_80052A94) /* 078C8C 7F04415C 460A4081 */ sub.s $f2, $f8, $f10 /* 078C90 7F044160 46000102 */ mul.s $f4, $f0, $f0 /* 078C94 7F044164 8FA60018 */ lw $a2, 0x18($sp) /* 078C98 7F044168 46128301 */ sub.s $f12, $f16, $f18 /* 078C9C 7F04416C 46021182 */ mul.s $f6, $f2, $f2 /* 078CA0 7F044170 C4322A94 */ lwc1 $f18, %lo(D_80052A94)($at) /* 078CA4 7F044174 8FA7001C */ lw $a3, 0x1c($sp) /* 078CA8 7F044178 460C6282 */ mul.s $f10, $f12, $f12 /* 078CAC 7F04417C 46062200 */ add.s $f8, $f4, $f6 /* 078CB0 7F044180 460A4400 */ add.s $f16, $f8, $f10 /* 078CB4 7F044184 4612803C */ c.lt.s $f16, $f18 /* 078CB8 7F044188 00000000 */ nop /* 078CBC 7F04418C 45020003 */ bc1fl .L7F04419C /* 078CC0 7F044190 84CC0082 */ lh $t4, 0x82($a2) /* 078CC4 7F044194 A4C00082 */ sh $zero, 0x82($a2) .L7F044198: /* 078CC8 7F044198 84CC0082 */ lh $t4, 0x82($a2) .L7F04419C: /* 078CCC 7F04419C 8FA40020 */ lw $a0, 0x20($sp) /* 078CD0 7F0441A0 55800014 */ bnezl $t4, .L7F0441F4 /* 078CD4 7F0441A4 8FBF0014 */ lw $ra, 0x14($sp) /* 078CD8 7F0441A8 8CED000C */ lw $t5, 0xc($a3) /* 078CDC 7F0441AC 2405000D */ li $a1, 13 /* 078CE0 7F0441B0 000D7000 */ sll $t6, $t5, 0 /* 078CE4 7F0441B4 05C10003 */ bgez $t6, .L7F0441C4 /* 078CE8 7F0441B8 00000000 */ nop /* 078CEC 7F0441BC 10000001 */ b .L7F0441C4 /* 078CF0 7F0441C0 24050011 */ li $a1, 17 .L7F0441C4: /* 078CF4 7F0441C4 AFA60018 */ sw $a2, 0x18($sp) /* 078CF8 7F0441C8 0FC10EDF */ jal generate_explosion_at_position /* 078CFC 7F0441CC AFA7001C */ sw $a3, 0x1c($sp) /* 078D00 7F0441D0 8FA40018 */ lw $a0, 0x18($sp) /* 078D04 7F0441D4 8FA7001C */ lw $a3, 0x1c($sp) /* 078D08 7F0441D8 240FFFFF */ li $t7, -1 /* 078D0C 7F0441DC A48F0082 */ sh $t7, 0x82($a0) /* 078D10 7F0441E0 8CF80064 */ lw $t8, 0x64($a3) /* 078D14 7F0441E4 37190004 */ ori $t9, $t8, 4 /* 078D18 7F0441E8 0FC146E5 */ jal remove_obj_from_temp_proxmine_table /* 078D1C 7F0441EC ACF90064 */ sw $t9, 0x64($a3) .L7F0441F0: /* 078D20 7F0441F0 8FBF0014 */ lw $ra, 0x14($sp) .L7F0441F4: /* 078D24 7F0441F4 27BD0020 */ addiu $sp, $sp, 0x20 /* 078D28 7F0441F8 03E00008 */ jr $ra /* 078D2C 7F0441FC 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata glabel D_80052A94 .word 0x47742400 /*62500.0*/ .text glabel handle_thrown_explosive_detonation /* 078BE4 7F044074 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 078BE8 7F044078 AFBF0014 */ sw $ra, 0x14($sp) /* 078BEC 7F04407C AFA40030 */ sw $a0, 0x30($sp) /* 078BF0 7F044080 8C870004 */ lw $a3, 4($a0) /* 078BF4 7F044084 0FC26F3C */ jal get_cur_playernum /* 078BF8 7F044088 AFA7002C */ sw $a3, 0x2c($sp) /* 078BFC 7F04408C 0FC2701E */ jal sub_GAME_7F09B4D8 /* 078C00 7F044090 00402025 */ move $a0, $v0 /* 078C04 7F044094 14400110 */ bnez $v0, .L7F0444D8 /* 078C08 7F044098 8FA7002C */ lw $a3, 0x2c($sp) /* 078C0C 7F04409C 90E20003 */ lbu $v0, 3($a3) /* 078C10 7F0440A0 24010007 */ li $at, 7 /* 078C14 7F0440A4 5441000F */ bnel $v0, $at, .L7F0440E4 /* 078C18 7F0440A8 24010008 */ li $at, 8 /* 078C1C 7F0440AC 8CEF0008 */ lw $t7, 8($a3) /* 078C20 7F0440B0 8FA40030 */ lw $a0, 0x30($sp) /* 078C24 7F0440B4 2405000C */ li $a1, 12 /* 078C28 7F0440B8 000FC0C0 */ sll $t8, $t7, 3 /* 078C2C 7F0440BC 07030107 */ bgezl $t8, .L7F0444DC /* 078C30 7F0440C0 8FBF0014 */ lw $ra, 0x14($sp) /* 078C34 7F0440C4 0FC10F9F */ jal generate_explosion_at_position /* 078C38 7F0440C8 AFA7002C */ sw $a3, 0x2c($sp) /* 078C3C 7F0440CC 8FA7002C */ lw $a3, 0x2c($sp) /* 078C40 7F0440D0 8CF90064 */ lw $t9, 0x64($a3) /* 078C44 7F0440D4 37280004 */ ori $t0, $t9, 4 /* 078C48 7F0440D8 100000FF */ b .L7F0444D8 /* 078C4C 7F0440DC ACE80064 */ sw $t0, 0x64($a3) /* 078C50 7F0440E0 24010008 */ li $at, 8 .L7F0440E4: /* 078C54 7F0440E4 144100FC */ bne $v0, $at, .L7F0444D8 /* 078C58 7F0440E8 8FA90030 */ lw $t1, 0x30($sp) /* 078C5C 7F0440EC 8D260004 */ lw $a2, 4($t1) /* 078C60 7F0440F0 2401001A */ li $at, 26 /* 078C64 7F0440F4 80C30080 */ lb $v1, 0x80($a2) /* 078C68 7F0440F8 10610003 */ beq $v1, $at, .L7F044108 /* 078C6C 7F0440FC 24010057 */ li $at, 87 /* 078C70 7F044100 5461001B */ bnel $v1, $at, .L7F044170 /* 078C74 7F044104 24010056 */ li $at, 86 .L7F044108: /* 078C78 7F044108 84C20082 */ lh $v0, 0x82($a2) /* 078C7C 7F04410C 3C0A8005 */ lui $t2, %hi(clock_timer) # $t2, 0x8005 /* 078C80 7F044110 04420017 */ bltzl $v0, .L7F044170 /* 078C84 7F044114 24010056 */ li $at, 86 /* 078C88 7F044118 8D4A83A4 */ lw $t2, %lo(clock_timer)($t2) /* 078C8C 7F04411C 004A5823 */ subu $t3, $v0, $t2 /* 078C90 7F044120 A4CB0082 */ sh $t3, 0x82($a2) /* 078C94 7F044124 84CC0082 */ lh $t4, 0x82($a2) /* 078C98 7F044128 8FA40030 */ lw $a0, 0x30($sp) /* 078C9C 7F04412C 058300EB */ bgezl $t4, .L7F0444DC /* 078CA0 7F044130 8FBF0014 */ lw $ra, 0x14($sp) /* 078CA4 7F044134 8CED000C */ lw $t5, 0xc($a3) /* 078CA8 7F044138 2405000D */ li $a1, 13 /* 078CAC 7F04413C 000D7000 */ sll $t6, $t5, 0 /* 078CB0 7F044140 05C10003 */ bgez $t6, .L7F044150 /* 078CB4 7F044144 00000000 */ nop /* 078CB8 7F044148 10000001 */ b .L7F044150 /* 078CBC 7F04414C 24050011 */ li $a1, 17 .L7F044150: /* 078CC0 7F044150 0FC10F9F */ jal generate_explosion_at_position /* 078CC4 7F044154 AFA7002C */ sw $a3, 0x2c($sp) /* 078CC8 7F044158 8FA7002C */ lw $a3, 0x2c($sp) /* 078CCC 7F04415C 8CEF0064 */ lw $t7, 0x64($a3) /* 078CD0 7F044160 35F80004 */ ori $t8, $t7, 4 /* 078CD4 7F044164 100000DC */ b .L7F0444D8 /* 078CD8 7F044168 ACF80064 */ sw $t8, 0x64($a3) /* 078CDC 7F04416C 24010056 */ li $at, 86 .L7F044170: /* 078CE0 7F044170 54610014 */ bnel $v1, $at, .L7F0441C4 /* 078CE4 7F044174 24010022 */ li $at, 34 /* 078CE8 7F044178 84D90082 */ lh $t9, 0x82($a2) /* 078CEC 7F04417C 8FA40030 */ lw $a0, 0x30($sp) /* 078CF0 7F044180 572000D6 */ bnezl $t9, .L7F0444DC /* 078CF4 7F044184 8FBF0014 */ lw $ra, 0x14($sp) /* 078CF8 7F044188 8CE8000C */ lw $t0, 0xc($a3) /* 078CFC 7F04418C 2405000D */ li $a1, 13 /* 078D00 7F044190 00084800 */ sll $t1, $t0, 0 /* 078D04 7F044194 05210003 */ bgez $t1, .L7F0441A4 /* 078D08 7F044198 00000000 */ nop /* 078D0C 7F04419C 10000001 */ b .L7F0441A4 /* 078D10 7F0441A0 24050011 */ li $a1, 17 .L7F0441A4: /* 078D14 7F0441A4 0FC10F9F */ jal generate_explosion_at_position /* 078D18 7F0441A8 AFA7002C */ sw $a3, 0x2c($sp) /* 078D1C 7F0441AC 8FA7002C */ lw $a3, 0x2c($sp) /* 078D20 7F0441B0 8CEA0064 */ lw $t2, 0x64($a3) /* 078D24 7F0441B4 354B0004 */ ori $t3, $t2, 4 /* 078D28 7F0441B8 100000C7 */ b .L7F0444D8 /* 078D2C 7F0441BC ACEB0064 */ sw $t3, 0x64($a3) /* 078D30 7F0441C0 24010022 */ li $at, 34 .L7F0441C4: /* 078D34 7F0441C4 54610014 */ bnel $v1, $at, .L7F044218 /* 078D38 7F0441C8 2401001B */ li $at, 27 /* 078D3C 7F0441CC 84CC0082 */ lh $t4, 0x82($a2) /* 078D40 7F0441D0 8FA40030 */ lw $a0, 0x30($sp) /* 078D44 7F0441D4 24050011 */ li $a1, 17 /* 078D48 7F0441D8 558000C0 */ bnezl $t4, .L7F0444DC /* 078D4C 7F0441DC 8FBF0014 */ lw $ra, 0x14($sp) /* 078D50 7F0441E0 0FC10F9F */ jal generate_explosion_at_position /* 078D54 7F0441E4 AFA7002C */ sw $a3, 0x2c($sp) /* 078D58 7F0441E8 8FA7002C */ lw $a3, 0x2c($sp) /* 078D5C 7F0441EC 24040078 */ li $a0, 120 /* 078D60 7F0441F0 8CED0064 */ lw $t5, 0x64($a3) /* 078D64 7F0441F4 35AE0004 */ ori $t6, $t5, 4 /* 078D68 7F0441F8 0FC23213 */ jal trigger_explosions_around_player /* 078D6C 7F0441FC ACEE0064 */ sw $t6, 0x64($a3) /* 078D70 7F044200 24040002 */ li $a0, 2 /* 078D74 7F044204 0FC15997 */ jal set_unset_clock_lock_bits /* 078D78 7F044208 00002825 */ move $a1, $zero /* 078D7C 7F04420C 100000B3 */ b .L7F0444DC /* 078D80 7F044210 8FBF0014 */ lw $ra, 0x14($sp) /* 078D84 7F044214 2401001B */ li $at, 27 .L7F044218: /* 078D88 7F044218 10610003 */ beq $v1, $at, .L7F044228 /* 078D8C 7F04421C 24010021 */ li $at, 33 /* 078D90 7F044220 54610020 */ bnel $v1, $at, .L7F0442A4 /* 078D94 7F044224 2401001D */ li $at, 29 .L7F044228: /* 078D98 7F044228 84C20082 */ lh $v0, 0x82($a2) /* 078D9C 7F04422C 3C0F8005 */ lui $t7, %hi(clock_timer) # $t7, 0x8005 /* 078DA0 7F044230 0442001C */ bltzl $v0, .L7F0442A4 /* 078DA4 7F044234 2401001D */ li $at, 29 /* 078DA8 7F044238 8DEF83A4 */ lw $t7, %lo(clock_timer)($t7) /* 078DAC 7F04423C 004FC023 */ subu $t8, $v0, $t7 /* 078DB0 7F044240 A4D80082 */ sh $t8, 0x82($a2) /* 078DB4 7F044244 84D90082 */ lh $t9, 0x82($a2) /* 078DB8 7F044248 8FA40030 */ lw $a0, 0x30($sp) /* 078DBC 7F04424C 072300A3 */ bgezl $t9, .L7F0444DC /* 078DC0 7F044250 8FBF0014 */ lw $ra, 0x14($sp) /* 078DC4 7F044254 8CE8000C */ lw $t0, 0xc($a3) /* 078DC8 7F044258 2405000D */ li $a1, 13 /* 078DCC 7F04425C 00084800 */ sll $t1, $t0, 0 /* 078DD0 7F044260 05210003 */ bgez $t1, .L7F044270 /* 078DD4 7F044264 00000000 */ nop /* 078DD8 7F044268 10000001 */ b .L7F044270 /* 078DDC 7F04426C 24050011 */ li $a1, 17 .L7F044270: /* 078DE0 7F044270 AFA60028 */ sw $a2, 0x28($sp) /* 078DE4 7F044274 0FC10F9F */ jal generate_explosion_at_position /* 078DE8 7F044278 AFA7002C */ sw $a3, 0x2c($sp) /* 078DEC 7F04427C 8FA60028 */ lw $a2, 0x28($sp) /* 078DF0 7F044280 10400095 */ beqz $v0, .L7F0444D8 /* 078DF4 7F044284 8FA7002C */ lw $a3, 0x2c($sp) /* 078DF8 7F044288 240AFFFF */ li $t2, -1 /* 078DFC 7F04428C A4CA0082 */ sh $t2, 0x82($a2) /* 078E00 7F044290 8CEB0064 */ lw $t3, 0x64($a3) /* 078E04 7F044294 356C0004 */ ori $t4, $t3, 4 /* 078E08 7F044298 1000008F */ b .L7F0444D8 /* 078E0C 7F04429C ACEC0064 */ sw $t4, 0x64($a3) /* 078E10 7F0442A0 2401001D */ li $at, 29 .L7F0442A4: /* 078E14 7F0442A4 5461003F */ bnel $v1, $at, .L7F0443A4 /* 078E18 7F0442A8 2401001C */ li $at, 28 /* 078E1C 7F0442AC 3C038003 */ lui $v1, %hi(D_80030AF4) # $v1, 0x8003 /* 078E20 7F0442B0 8C630B34 */ lw $v1, %lo(D_80030AF4)($v1) /* 078E24 7F0442B4 3C088005 */ lui $t0, %hi(clock_timer) # $t0, 0x8005 /* 078E28 7F0442B8 5060000C */ beql $v1, $zero, .L7F0442EC /* 078E2C 7F0442BC 84C20082 */ lh $v0, 0x82($a2) /* 078E30 7F0442C0 8CE20064 */ lw $v0, 0x64($a3) /* 078E34 7F0442C4 3C010006 */ lui $at, 6 /* 078E38 7F0442C8 240F0001 */ li $t7, 1 /* 078E3C 7F0442CC 00416824 */ and $t5, $v0, $at /* 078E40 7F0442D0 000D7442 */ srl $t6, $t5, 0x11 /* 078E44 7F0442D4 01CFC004 */ sllv $t8, $t7, $t6 /* 078E48 7F0442D8 0078C824 */ and $t9, $v1, $t8 /* 078E4C 7F0442DC 53200003 */ beql $t9, $zero, .L7F0442EC /* 078E50 7F0442E0 84C20082 */ lh $v0, 0x82($a2) /* 078E54 7F0442E4 A4C00082 */ sh $zero, 0x82($a2) /* 078E58 7F0442E8 84C20082 */ lh $v0, 0x82($a2) .L7F0442EC: /* 078E5C 7F0442EC 28410002 */ slti $at, $v0, 2 /* 078E60 7F0442F0 1420000B */ bnez $at, .L7F044320 /* 078E64 7F0442F4 00000000 */ nop /* 078E68 7F0442F8 8D0883A4 */ lw $t0, %lo(clock_timer)($t0) /* 078E6C 7F0442FC 240B0001 */ li $t3, 1 /* 078E70 7F044300 00484823 */ subu $t1, $v0, $t0 /* 078E74 7F044304 A4C90082 */ sh $t1, 0x82($a2) /* 078E78 7F044308 84CA0082 */ lh $t2, 0x82($a2) /* 078E7C 7F04430C 29410002 */ slti $at, $t2, 2 /* 078E80 7F044310 50200072 */ beql $at, $zero, .L7F0444DC /* 078E84 7F044314 8FBF0014 */ lw $ra, 0x14($sp) /* 078E88 7F044318 1000006F */ b .L7F0444D8 /* 078E8C 7F04431C A4CB0082 */ sh $t3, 0x82($a2) .L7F044320: /* 078E90 7F044320 5440006E */ bnezl $v0, .L7F0444DC /* 078E94 7F044324 8FBF0014 */ lw $ra, 0x14($sp) /* 078E98 7F044328 8CEC000C */ lw $t4, 0xc($a3) /* 078E9C 7F04432C 2405000D */ li $a1, 13 /* 078EA0 7F044330 000C6800 */ sll $t5, $t4, 0 /* 078EA4 7F044334 05A30004 */ bgezl $t5, .L7F044348 /* 078EA8 7F044338 AFA5001C */ sw $a1, 0x1c($sp) /* 078EAC 7F04433C 1000000B */ b .L7F04436C /* 078EB0 7F044340 24050011 */ li $a1, 17 /* 078EB4 7F044344 AFA5001C */ sw $a1, 0x1c($sp) .L7F044348: /* 078EB8 7F044348 AFA60028 */ sw $a2, 0x28($sp) /* 078EBC 7F04434C 0C001A57 */ jal get_stage_num /* 078EC0 7F044350 AFA7002C */ sw $a3, 0x2c($sp) /* 078EC4 7F044354 24010022 */ li $at, 34 /* 078EC8 7F044358 8FA5001C */ lw $a1, 0x1c($sp) /* 078ECC 7F04435C 8FA60028 */ lw $a2, 0x28($sp) /* 078ED0 7F044360 14410002 */ bne $v0, $at, .L7F04436C /* 078ED4 7F044364 8FA7002C */ lw $a3, 0x2c($sp) /* 078ED8 7F044368 24050013 */ li $a1, 19 .L7F04436C: /* 078EDC 7F04436C 8FA40030 */ lw $a0, 0x30($sp) /* 078EE0 7F044370 AFA60028 */ sw $a2, 0x28($sp) /* 078EE4 7F044374 0FC10F9F */ jal generate_explosion_at_position /* 078EE8 7F044378 AFA7002C */ sw $a3, 0x2c($sp) /* 078EEC 7F04437C 8FA60028 */ lw $a2, 0x28($sp) /* 078EF0 7F044380 10400055 */ beqz $v0, .L7F0444D8 /* 078EF4 7F044384 8FA7002C */ lw $a3, 0x2c($sp) /* 078EF8 7F044388 240EFFFF */ li $t6, -1 /* 078EFC 7F04438C A4CE0082 */ sh $t6, 0x82($a2) /* 078F00 7F044390 8CEF0064 */ lw $t7, 0x64($a3) /* 078F04 7F044394 35F80004 */ ori $t8, $t7, 4 /* 078F08 7F044398 1000004F */ b .L7F0444D8 /* 078F0C 7F04439C ACF80064 */ sw $t8, 0x64($a3) /* 078F10 7F0443A0 2401001C */ li $at, 28 .L7F0443A4: /* 078F14 7F0443A4 5461004D */ bnel $v1, $at, .L7F0444DC /* 078F18 7F0443A8 8FBF0014 */ lw $ra, 0x14($sp) /* 078F1C 7F0443AC 84C20082 */ lh $v0, 0x82($a2) /* 078F20 7F0443B0 3C198005 */ lui $t9, %hi(clock_timer) # $t9, 0x8005 /* 078F24 7F0443B4 28410002 */ slti $at, $v0, 2 /* 078F28 7F0443B8 54200012 */ bnezl $at, .L7F044404 /* 078F2C 7F0443BC 24010001 */ li $at, 1 /* 078F30 7F0443C0 8F3983A4 */ lw $t9, %lo(clock_timer)($t9) /* 078F34 7F0443C4 240A0001 */ li $t2, 1 /* 078F38 7F0443C8 00C02025 */ move $a0, $a2 /* 078F3C 7F0443CC 00594023 */ subu $t0, $v0, $t9 /* 078F40 7F0443D0 A4C80082 */ sh $t0, 0x82($a2) /* 078F44 7F0443D4 84C90082 */ lh $t1, 0x82($a2) /* 078F48 7F0443D8 29210002 */ slti $at, $t1, 2 /* 078F4C 7F0443DC 50200027 */ beql $at, $zero, .L7F04447C /* 078F50 7F0443E0 84CC0082 */ lh $t4, 0x82($a2) /* 078F54 7F0443E4 A4CA0082 */ sh $t2, 0x82($a2) /* 078F58 7F0443E8 AFA7002C */ sw $a3, 0x2c($sp) /* 078F5C 7F0443EC 0FC14816 */ jal add_obj_to_temp_proxmine_table /* 078F60 7F0443F0 AFA60028 */ sw $a2, 0x28($sp) /* 078F64 7F0443F4 8FA60028 */ lw $a2, 0x28($sp) /* 078F68 7F0443F8 1000001F */ b .L7F044478 /* 078F6C 7F0443FC 8FA7002C */ lw $a3, 0x2c($sp) /* 078F70 7F044400 24010001 */ li $at, 1 .L7F044404: /* 078F74 7F044404 5441001D */ bnel $v0, $at, .L7F04447C /* 078F78 7F044408 84CC0082 */ lh $t4, 0x82($a2) /* 078F7C 7F04440C AFA60028 */ sw $a2, 0x28($sp) /* 078F80 7F044410 0FC2279B */ jal get_curplayer_positiondata /* 078F84 7F044414 AFA7002C */ sw $a3, 0x2c($sp) /* 078F88 7F044418 8FAB0030 */ lw $t3, 0x30($sp) /* 078F8C 7F04441C C4440008 */ lwc1 $f4, 8($v0) /* 078F90 7F044420 C448000C */ lwc1 $f8, 0xc($v0) /* 078F94 7F044424 C5660008 */ lwc1 $f6, 8($t3) /* 078F98 7F044428 C56A000C */ lwc1 $f10, 0xc($t3) /* 078F9C 7F04442C C4500010 */ lwc1 $f16, 0x10($v0) /* 078FA0 7F044430 46062001 */ sub.s $f0, $f4, $f6 /* 078FA4 7F044434 C5720010 */ lwc1 $f18, 0x10($t3) /* 078FA8 7F044438 3C018005 */ lui $at, %hi(D_80052A94) # $at, 0x8005 /* 078FAC 7F04443C 460A4081 */ sub.s $f2, $f8, $f10 /* 078FB0 7F044440 46000102 */ mul.s $f4, $f0, $f0 /* 078FB4 7F044444 8FA60028 */ lw $a2, 0x28($sp) /* 078FB8 7F044448 46128301 */ sub.s $f12, $f16, $f18 /* 078FBC 7F04444C 46021182 */ mul.s $f6, $f2, $f2 /* 078FC0 7F044450 C4322AC4 */ lwc1 $f18, %lo(D_80052A94)($at) /* 078FC4 7F044454 8FA7002C */ lw $a3, 0x2c($sp) /* 078FC8 7F044458 460C6282 */ mul.s $f10, $f12, $f12 /* 078FCC 7F04445C 46062200 */ add.s $f8, $f4, $f6 /* 078FD0 7F044460 460A4400 */ add.s $f16, $f8, $f10 /* 078FD4 7F044464 4612803C */ c.lt.s $f16, $f18 /* 078FD8 7F044468 00000000 */ nop /* 078FDC 7F04446C 45020003 */ bc1fl .L7F04447C /* 078FE0 7F044470 84CC0082 */ lh $t4, 0x82($a2) /* 078FE4 7F044474 A4C00082 */ sh $zero, 0x82($a2) .L7F044478: /* 078FE8 7F044478 84CC0082 */ lh $t4, 0x82($a2) .L7F04447C: /* 078FEC 7F04447C 8FA40030 */ lw $a0, 0x30($sp) /* 078FF0 7F044480 55800016 */ bnezl $t4, .L7F0444DC /* 078FF4 7F044484 8FBF0014 */ lw $ra, 0x14($sp) /* 078FF8 7F044488 8CED000C */ lw $t5, 0xc($a3) /* 078FFC 7F04448C 2405000D */ li $a1, 13 /* 079000 7F044490 000D7000 */ sll $t6, $t5, 0 /* 079004 7F044494 05C10003 */ bgez $t6, .L7F0444A4 /* 079008 7F044498 00000000 */ nop /* 07900C 7F04449C 10000001 */ b .L7F0444A4 /* 079010 7F0444A0 24050011 */ li $a1, 17 .L7F0444A4: /* 079014 7F0444A4 AFA60028 */ sw $a2, 0x28($sp) /* 079018 7F0444A8 0FC10F9F */ jal generate_explosion_at_position /* 07901C 7F0444AC AFA7002C */ sw $a3, 0x2c($sp) /* 079020 7F0444B0 8FA60028 */ lw $a2, 0x28($sp) /* 079024 7F0444B4 10400008 */ beqz $v0, .L7F0444D8 /* 079028 7F0444B8 8FA7002C */ lw $a3, 0x2c($sp) /* 07902C 7F0444BC 240FFFFF */ li $t7, -1 /* 079030 7F0444C0 A4CF0082 */ sh $t7, 0x82($a2) /* 079034 7F0444C4 8CF80064 */ lw $t8, 0x64($a3) /* 079038 7F0444C8 00C02025 */ move $a0, $a2 /* 07903C 7F0444CC 37190004 */ ori $t9, $t8, 4 /* 079040 7F0444D0 0FC14824 */ jal remove_obj_from_temp_proxmine_table /* 079044 7F0444D4 ACF90064 */ sw $t9, 0x64($a3) .L7F0444D8: /* 079048 7F0444D8 8FBF0014 */ lw $ra, 0x14($sp) .L7F0444DC: /* 07904C 7F0444DC 27BD0030 */ addiu $sp, $sp, 0x30 /* 079050 7F0444E0 03E00008 */ jr $ra /* 079054 7F0444E4 00000000 */ nop ) #endif #endif #ifdef NONMATCHING void sub_GAME_7F044200(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F044200 /* 078D30 7F044200 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 078D34 7F044204 AFBF001C */ sw $ra, 0x1c($sp) /* 078D38 7F044208 AFB10018 */ sw $s1, 0x18($sp) /* 078D3C 7F04420C AFB00014 */ sw $s0, 0x14($sp) /* 078D40 7F044210 8C900020 */ lw $s0, 0x20($a0) /* 078D44 7F044214 52000009 */ beql $s0, $zero, .L7F04423C /* 078D48 7F044218 8FBF001C */ lw $ra, 0x1c($sp) .L7F04421C: /* 078D4C 7F04421C 8E110024 */ lw $s1, 0x24($s0) /* 078D50 7F044220 0FC11080 */ jal sub_GAME_7F044200 /* 078D54 7F044224 02002025 */ move $a0, $s0 /* 078D58 7F044228 0FC1304C */ jal sub_GAME_7F04C130 /* 078D5C 7F04422C 02002025 */ move $a0, $s0 /* 078D60 7F044230 1620FFFA */ bnez $s1, .L7F04421C /* 078D64 7F044234 02208025 */ move $s0, $s1 /* 078D68 7F044238 8FBF001C */ lw $ra, 0x1c($sp) .L7F04423C: /* 078D6C 7F04423C 8FB00014 */ lw $s0, 0x14($sp) /* 078D70 7F044240 8FB10018 */ lw $s1, 0x18($sp) /* 078D74 7F044244 03E00008 */ jr $ra /* 078D78 7F044248 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F04424C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04424C /* 078D7C 7F04424C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 078D80 7F044250 AFBF001C */ sw $ra, 0x1c($sp) /* 078D84 7F044254 AFB10018 */ sw $s1, 0x18($sp) /* 078D88 7F044258 AFB00014 */ sw $s0, 0x14($sp) /* 078D8C 7F04425C 8C870004 */ lw $a3, 4($a0) /* 078D90 7F044260 00808825 */ move $s1, $a0 /* 078D94 7F044264 8CEE0064 */ lw $t6, 0x64($a3) /* 078D98 7F044268 31CF0004 */ andi $t7, $t6, 4 /* 078D9C 7F04426C 51E0000A */ beql $t7, $zero, .L7F044298 /* 078DA0 7F044270 92390001 */ lbu $t9, 1($s1) /* 078DA4 7F044274 90E60002 */ lbu $a2, 2($a3) /* 078DA8 7F044278 00E02025 */ move $a0, $a3 /* 078DAC 7F04427C 24050001 */ li $a1, 1 /* 078DB0 7F044280 30D80004 */ andi $t8, $a2, 4 /* 078DB4 7F044284 0FC10366 */ jal sub_GAME_7F040D98 /* 078DB8 7F044288 03003025 */ move $a2, $t8 /* 078DBC 7F04428C 1000000F */ b .L7F0442CC /* 078DC0 7F044290 8FBF001C */ lw $ra, 0x1c($sp) /* 078DC4 7F044294 92390001 */ lbu $t9, 1($s1) .L7F044298: /* 078DC8 7F044298 02202025 */ move $a0, $s1 /* 078DCC 7F04429C 3328FFFD */ andi $t0, $t9, 0xfffd /* 078DD0 7F0442A0 0FC10F5C */ jal handle_thrown_explosive_detonation /* 078DD4 7F0442A4 A2280001 */ sb $t0, 1($s1) /* 078DD8 7F0442A8 8E300020 */ lw $s0, 0x20($s1) /* 078DDC 7F0442AC 52000007 */ beql $s0, $zero, .L7F0442CC /* 078DE0 7F0442B0 8FBF001C */ lw $ra, 0x1c($sp) .L7F0442B4: /* 078DE4 7F0442B4 8E110024 */ lw $s1, 0x24($s0) /* 078DE8 7F0442B8 0FC11093 */ jal sub_GAME_7F04424C /* 078DEC 7F0442BC 02002025 */ move $a0, $s0 /* 078DF0 7F0442C0 1620FFFC */ bnez $s1, .L7F0442B4 /* 078DF4 7F0442C4 02208025 */ move $s0, $s1 /* 078DF8 7F0442C8 8FBF001C */ lw $ra, 0x1c($sp) .L7F0442CC: /* 078DFC 7F0442CC 8FB00014 */ lw $s0, 0x14($sp) /* 078E00 7F0442D0 8FB10018 */ lw $s1, 0x18($sp) /* 078E04 7F0442D4 03E00008 */ jr $ra /* 078E08 7F0442D8 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F0442DC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0442DC /* 078E0C 7F0442DC 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 078E10 7F0442E0 AFBF0024 */ sw $ra, 0x24($sp) /* 078E14 7F0442E4 AFB20020 */ sw $s2, 0x20($sp) /* 078E18 7F0442E8 AFB1001C */ sw $s1, 0x1c($sp) /* 078E1C 7F0442EC AFB00018 */ sw $s0, 0x18($sp) /* 078E20 7F0442F0 8C910004 */ lw $s1, 4($a0) /* 078E24 7F0442F4 00809025 */ move $s2, $a0 /* 078E28 7F0442F8 8E220064 */ lw $v0, 0x64($s1) /* 078E2C 7F0442FC 8E300014 */ lw $s0, 0x14($s1) /* 078E30 7F044300 304E0004 */ andi $t6, $v0, 4 /* 078E34 7F044304 51C0000A */ beql $t6, $zero, .L7F044330 /* 078E38 7F044308 8E05001C */ lw $a1, 0x1c($s0) /* 078E3C 7F04430C 92260002 */ lbu $a2, 2($s1) /* 078E40 7F044310 02202025 */ move $a0, $s1 /* 078E44 7F044314 24050001 */ li $a1, 1 /* 078E48 7F044318 30CF0004 */ andi $t7, $a2, 4 /* 078E4C 7F04431C 0FC10366 */ jal sub_GAME_7F040D98 /* 078E50 7F044320 01E03025 */ move $a2, $t7 /* 078E54 7F044324 10000036 */ b .L7F044400 /* 078E58 7F044328 8FBF0024 */ lw $ra, 0x24($sp) /* 078E5C 7F04432C 8E05001C */ lw $a1, 0x1c($s0) .L7F044330: /* 078E60 7F044330 30580040 */ andi $t8, $v0, 0x40 /* 078E64 7F044334 50A00025 */ beql $a1, $zero, .L7F0443CC /* 078E68 7F044338 924C0001 */ lbu $t4, 1($s2) /* 078E6C 7F04433C 13000022 */ beqz $t8, .L7F0443C8 /* 078E70 7F044340 00003025 */ move $a2, $zero /* 078E74 7F044344 0FC1B198 */ jal sub_GAME_7F06C660 /* 078E78 7F044348 8E040018 */ lw $a0, 0x18($s0) /* 078E7C 7F04434C AFA2002C */ sw $v0, 0x2c($sp) /* 078E80 7F044350 92590001 */ lbu $t9, 1($s2) /* 078E84 7F044354 37280002 */ ori $t0, $t9, 2 /* 078E88 7F044358 A2480001 */ sb $t0, 1($s2) /* 078E8C 7F04435C 8E090008 */ lw $t1, 8($s0) /* 078E90 7F044360 8524000E */ lh $a0, 0xe($t1) /* 078E94 7F044364 00045180 */ sll $t2, $a0, 6 /* 078E98 7F044368 0FC2F5C5 */ jal sub_GAME_7F0BD714 /* 078E9C 7F04436C 01402025 */ move $a0, $t2 /* 078EA0 7F044370 AE02000C */ sw $v0, 0xc($s0) /* 078EA4 7F044374 8E25006C */ lw $a1, 0x6c($s1) /* 078EA8 7F044378 8FA4002C */ lw $a0, 0x2c($sp) /* 078EAC 7F04437C 00403025 */ move $a2, $v0 /* 078EB0 7F044380 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 078EB4 7F044384 24A50004 */ addiu $a1, $a1, 4 /* 078EB8 7F044388 8E0B0008 */ lw $t3, 8($s0) /* 078EBC 7F04438C 02002025 */ move $a0, $s0 /* 078EC0 7F044390 0FC1BBA9 */ jal sub_GAME_7F06EEA4 /* 078EC4 7F044394 8D650000 */ lw $a1, ($t3) /* 078EC8 7F044398 0FC10F5C */ jal handle_thrown_explosive_detonation /* 078ECC 7F04439C 02402025 */ move $a0, $s2 /* 078ED0 7F0443A0 8E510020 */ lw $s1, 0x20($s2) /* 078ED4 7F0443A4 52200016 */ beql $s1, $zero, .L7F044400 /* 078ED8 7F0443A8 8FBF0024 */ lw $ra, 0x24($sp) .L7F0443AC: /* 078EDC 7F0443AC 8E300024 */ lw $s0, 0x24($s1) /* 078EE0 7F0443B0 0FC110B7 */ jal sub_GAME_7F0442DC /* 078EE4 7F0443B4 02202025 */ move $a0, $s1 /* 078EE8 7F0443B8 1600FFFC */ bnez $s0, .L7F0443AC /* 078EEC 7F0443BC 02008825 */ move $s1, $s0 /* 078EF0 7F0443C0 1000000F */ b .L7F044400 /* 078EF4 7F0443C4 8FBF0024 */ lw $ra, 0x24($sp) .L7F0443C8: /* 078EF8 7F0443C8 924C0001 */ lbu $t4, 1($s2) .L7F0443CC: /* 078EFC 7F0443CC 02402025 */ move $a0, $s2 /* 078F00 7F0443D0 318DFFFD */ andi $t5, $t4, 0xfffd /* 078F04 7F0443D4 0FC10F5C */ jal handle_thrown_explosive_detonation /* 078F08 7F0443D8 A24D0001 */ sb $t5, 1($s2) /* 078F0C 7F0443DC 8E510020 */ lw $s1, 0x20($s2) /* 078F10 7F0443E0 52200007 */ beql $s1, $zero, .L7F044400 /* 078F14 7F0443E4 8FBF0024 */ lw $ra, 0x24($sp) .L7F0443E8: /* 078F18 7F0443E8 8E300024 */ lw $s0, 0x24($s1) /* 078F1C 7F0443EC 0FC11093 */ jal sub_GAME_7F04424C /* 078F20 7F0443F0 02202025 */ move $a0, $s1 /* 078F24 7F0443F4 1600FFFC */ bnez $s0, .L7F0443E8 /* 078F28 7F0443F8 02008825 */ move $s1, $s0 /* 078F2C 7F0443FC 8FBF0024 */ lw $ra, 0x24($sp) .L7F044400: /* 078F30 7F044400 8FB00018 */ lw $s0, 0x18($sp) /* 078F34 7F044404 8FB1001C */ lw $s1, 0x1c($sp) /* 078F38 7F044408 8FB20020 */ lw $s2, 0x20($sp) /* 078F3C 7F04440C 03E00008 */ jr $ra /* 078F40 7F044410 27BD0040 */ addiu $sp, $sp, 0x40 ) #endif #ifdef NONMATCHING void sub_GAME_7F044414(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F044414 /* 078F44 7F044414 27BDFF48 */ addiu $sp, $sp, -0xb8 /* 078F48 7F044418 AFB50044 */ sw $s5, 0x44($sp) /* 078F4C 7F04441C AFB20038 */ sw $s2, 0x38($sp) /* 078F50 7F044420 AFB10034 */ sw $s1, 0x34($sp) /* 078F54 7F044424 AFB00030 */ sw $s0, 0x30($sp) /* 078F58 7F044428 00A08025 */ move $s0, $a1 /* 078F5C 7F04442C 00E08825 */ move $s1, $a3 /* 078F60 7F044430 00809025 */ move $s2, $a0 /* 078F64 7F044434 00C0A825 */ move $s5, $a2 /* 078F68 7F044438 AFBF004C */ sw $ra, 0x4c($sp) /* 078F6C 7F04443C AFB60048 */ sw $s6, 0x48($sp) /* 078F70 7F044440 AFB40040 */ sw $s4, 0x40($sp) /* 078F74 7F044444 AFB3003C */ sw $s3, 0x3c($sp) /* 078F78 7F044448 F7B80028 */ sdc1 $f24, 0x28($sp) /* 078F7C 7F04444C F7B60020 */ sdc1 $f22, 0x20($sp) /* 078F80 7F044450 F7B40018 */ sdc1 $f20, 0x18($sp) /* 078F84 7F044454 18A0008A */ blez $a1, .L7F044680 /* 078F88 7F044458 00004025 */ move $t0, $zero /* 078F8C 7F04445C 4480C000 */ mtc1 $zero, $f24 /* 078F90 7F044460 4480B800 */ mtc1 $zero, $f23 /* 078F94 7F044464 4480B000 */ mtc1 $zero, $f22 /* 078F98 7F044468 00809825 */ move $s3, $a0 /* 078F9C 7F04446C D7B40088 */ ldc1 $f20, 0x88($sp) /* 078FA0 7F044470 27B60074 */ addiu $s6, $sp, 0x74 .L7F044474: /* 078FA4 7F044474 25140001 */ addiu $s4, $t0, 1 /* 078FA8 7F044478 0290001A */ div $zero, $s4, $s0 /* 078FAC 7F04447C 00002810 */ mfhi $a1 /* 078FB0 7F044480 000570C0 */ sll $t6, $a1, 3 /* 078FB4 7F044484 024E1021 */ addu $v0, $s2, $t6 /* 078FB8 7F044488 C4460004 */ lwc1 $f6, 4($v0) /* 078FBC 7F04448C C6640004 */ lwc1 $f4, 4($s3) /* 078FC0 7F044490 C44A0000 */ lwc1 $f10, ($v0) /* 078FC4 7F044494 46003221 */ cvt.d.s $f8, $f6 /* 078FC8 7F044498 46002021 */ cvt.d.s $f0, $f4 /* 078FCC 7F04449C C6620000 */ lwc1 $f2, ($s3) /* 078FD0 7F0444A0 46204301 */ sub.d $f12, $f8, $f0 /* 078FD4 7F0444A4 16000002 */ bnez $s0, .L7F0444B0 /* 078FD8 7F0444A8 00000000 */ nop /* 078FDC 7F0444AC 0007000D */ break 7 .L7F0444B0: /* 078FE0 7F0444B0 2401FFFF */ li $at, -1 /* 078FE4 7F0444B4 16010004 */ bne $s0, $at, .L7F0444C8 /* 078FE8 7F0444B8 3C018000 */ lui $at, 0x8000 /* 078FEC 7F0444BC 16810002 */ bne $s4, $at, .L7F0444C8 /* 078FF0 7F0444C0 00000000 */ nop /* 078FF4 7F0444C4 0006000D */ break 6 .L7F0444C8: /* 078FF8 7F0444C8 46366032 */ c.eq.d $f12, $f22 /* 078FFC 7F0444CC 24AF0001 */ addiu $t7, $a1, 1 /* 079000 7F0444D0 460054A1 */ cvt.d.s $f18, $f10 /* 079004 7F0444D4 46001421 */ cvt.d.s $f16, $f2 /* 079008 7F0444D8 45000011 */ bc1f .L7F044520 /* 07900C 7F0444DC 46328381 */ sub.d $f14, $f16, $f18 /* 079010 7F0444E0 46367032 */ c.eq.d $f14, $f22 /* 079014 7F0444E4 00000000 */ nop /* 079018 7F0444E8 4500000D */ bc1f .L7F044520 /* 07901C 7F0444EC 00000000 */ nop /* 079020 7F0444F0 E7A20074 */ swc1 $f2, 0x74($sp) /* 079024 7F0444F4 E7B80078 */ swc1 $f24, 0x78($sp) /* 079028 7F0444F8 C6640004 */ lwc1 $f4, 4($s3) /* 07902C 7F0444FC 02C02025 */ move $a0, $s6 /* 079030 7F044500 02A02825 */ move $a1, $s5 /* 079034 7F044504 02203025 */ move $a2, $s1 /* 079038 7F044508 0FC0F336 */ jal sub_GAME_7F03CCD8 /* 07903C 7F04450C E7A4007C */ swc1 $f4, 0x7c($sp) /* 079040 7F044510 50400058 */ beql $v0, $zero, .L7F044674 /* 079044 7F044514 02804025 */ move $t0, $s4 /* 079048 7F044518 1000005A */ b .L7F044684 /* 07904C 7F04451C 00001025 */ move $v0, $zero .L7F044520: /* 079050 7F044520 01F0001A */ div $zero, $t7, $s0 /* 079054 7F044524 462E0182 */ mul.d $f6, $f0, $f14 /* 079058 7F044528 00001010 */ mfhi $v0 /* 07905C 7F04452C 00401825 */ move $v1, $v0 /* 079060 7F044530 00002025 */ move $a0, $zero /* 079064 7F044534 462C8202 */ mul.d $f8, $f16, $f12 /* 079068 7F044538 46283080 */ add.d $f2, $f6, $f8 /* 07906C 7F04453C 16000002 */ bnez $s0, .L7F044548 /* 079070 7F044540 00000000 */ nop /* 079074 7F044544 0007000D */ break 7 .L7F044548: /* 079078 7F044548 2401FFFF */ li $at, -1 /* 07907C 7F04454C 16010004 */ bne $s0, $at, .L7F044560 /* 079080 7F044550 3C018000 */ lui $at, 0x8000 /* 079084 7F044554 15E10002 */ bne $t7, $at, .L7F044560 /* 079088 7F044558 00000000 */ nop /* 07908C 7F04455C 0006000D */ break 6 .L7F044560: /* 079090 7F044560 1102001D */ beq $t0, $v0, .L7F0445D8 /* 079094 7F044564 00000000 */ nop /* 079098 7F044568 0003C0C0 */ sll $t8, $v1, 3 .L7F04456C: /* 07909C 7F04456C 02581021 */ addu $v0, $s2, $t8 /* 0790A0 7F044570 C44A0004 */ lwc1 $f10, 4($v0) /* 0790A4 7F044574 C4460000 */ lwc1 $f6, ($v0) /* 0790A8 7F044578 460054A1 */ cvt.d.s $f18, $f10 /* 0790AC 7F04457C 46003221 */ cvt.d.s $f8, $f6 /* 0790B0 7F044580 462E9102 */ mul.d $f4, $f18, $f14 /* 0790B4 7F044584 00000000 */ nop /* 0790B8 7F044588 462C4282 */ mul.d $f10, $f8, $f12 /* 0790BC 7F04458C 462A2500 */ add.d $f20, $f4, $f10 /* 0790C0 7F044590 4622A032 */ c.eq.d $f20, $f2 /* 0790C4 7F044594 00000000 */ nop /* 0790C8 7F044598 4500000F */ bc1f .L7F0445D8 /* 0790CC 7F04459C 00000000 */ nop /* 0790D0 7F0445A0 24790001 */ addiu $t9, $v1, 1 /* 0790D4 7F0445A4 0330001A */ div $zero, $t9, $s0 /* 0790D8 7F0445A8 00001810 */ mfhi $v1 /* 0790DC 7F0445AC 16000002 */ bnez $s0, .L7F0445B8 /* 0790E0 7F0445B0 00000000 */ nop /* 0790E4 7F0445B4 0007000D */ break 7 .L7F0445B8: /* 0790E8 7F0445B8 2401FFFF */ li $at, -1 /* 0790EC 7F0445BC 16010004 */ bne $s0, $at, .L7F0445D0 /* 0790F0 7F0445C0 3C018000 */ lui $at, 0x8000 /* 0790F4 7F0445C4 17210002 */ bne $t9, $at, .L7F0445D0 /* 0790F8 7F0445C8 00000000 */ nop /* 0790FC 7F0445CC 0006000D */ break 6 .L7F0445D0: /* 079100 7F0445D0 5468FFE6 */ bnel $v1, $t0, .L7F04456C /* 079104 7F0445D4 0003C0C0 */ sll $t8, $v1, 3 .L7F0445D8: /* 079108 7F0445D8 1A200021 */ blez $s1, .L7F044660 /* 07910C 7F0445DC 00000000 */ nop /* 079110 7F0445E0 02A01025 */ move $v0, $s5 .L7F0445E4: /* 079114 7F0445E4 C4520004 */ lwc1 $f18, 4($v0) /* 079118 7F0445E8 C4440000 */ lwc1 $f4, ($v0) /* 07911C 7F0445EC 4622A032 */ c.eq.d $f20, $f2 /* 079120 7F0445F0 460091A1 */ cvt.d.s $f6, $f18 /* 079124 7F0445F4 460022A1 */ cvt.d.s $f10, $f4 /* 079128 7F0445F8 462E3202 */ mul.d $f8, $f6, $f14 /* 07912C 7F0445FC 00000000 */ nop /* 079130 7F044600 462C5482 */ mul.d $f18, $f10, $f12 /* 079134 7F044604 45000003 */ bc1f .L7F044614 /* 079138 7F044608 46324000 */ add.d $f0, $f8, $f18 /* 07913C 7F04460C 46201181 */ sub.d $f6, $f2, $f0 /* 079140 7F044610 46223500 */ add.d $f20, $f6, $f2 .L7F044614: /* 079144 7F044614 4622003C */ c.lt.d $f0, $f2 /* 079148 7F044618 00000000 */ nop /* 07914C 7F04461C 45020006 */ bc1fl .L7F044638 /* 079150 7F044620 4620103C */ c.lt.d $f2, $f0 /* 079154 7F044624 4622A03C */ c.lt.d $f20, $f2 /* 079158 7F044628 00000000 */ nop /* 07915C 7F04462C 4501000C */ bc1t .L7F044660 /* 079160 7F044630 00000000 */ nop /* 079164 7F044634 4620103C */ c.lt.d $f2, $f0 .L7F044638: /* 079168 7F044638 00000000 */ nop /* 07916C 7F04463C 45020006 */ bc1fl .L7F044658 /* 079170 7F044640 24840001 */ addiu $a0, $a0, 1 /* 079174 7F044644 4634103C */ c.lt.d $f2, $f20 /* 079178 7F044648 00000000 */ nop /* 07917C 7F04464C 45010004 */ bc1t .L7F044660 /* 079180 7F044650 00000000 */ nop /* 079184 7F044654 24840001 */ addiu $a0, $a0, 1 .L7F044658: /* 079188 7F044658 1491FFE2 */ bne $a0, $s1, .L7F0445E4 /* 07918C 7F04465C 24420008 */ addiu $v0, $v0, 8 .L7F044660: /* 079190 7F044660 54910004 */ bnel $a0, $s1, .L7F044674 /* 079194 7F044664 02804025 */ move $t0, $s4 /* 079198 7F044668 10000006 */ b .L7F044684 /* 07919C 7F04466C 24020001 */ li $v0, 1 /* 0791A0 7F044670 02804025 */ move $t0, $s4 .L7F044674: /* 0791A4 7F044674 1690FF7F */ bne $s4, $s0, .L7F044474 /* 0791A8 7F044678 26730008 */ addiu $s3, $s3, 8 /* 0791AC 7F04467C F7B40088 */ sdc1 $f20, 0x88($sp) .L7F044680: /* 0791B0 7F044680 00001025 */ move $v0, $zero .L7F044684: /* 0791B4 7F044684 8FBF004C */ lw $ra, 0x4c($sp) /* 0791B8 7F044688 D7B40018 */ ldc1 $f20, 0x18($sp) /* 0791BC 7F04468C D7B60020 */ ldc1 $f22, 0x20($sp) /* 0791C0 7F044690 D7B80028 */ ldc1 $f24, 0x28($sp) /* 0791C4 7F044694 8FB00030 */ lw $s0, 0x30($sp) /* 0791C8 7F044698 8FB10034 */ lw $s1, 0x34($sp) /* 0791CC 7F04469C 8FB20038 */ lw $s2, 0x38($sp) /* 0791D0 7F0446A0 8FB3003C */ lw $s3, 0x3c($sp) /* 0791D4 7F0446A4 8FB40040 */ lw $s4, 0x40($sp) /* 0791D8 7F0446A8 8FB50044 */ lw $s5, 0x44($sp) /* 0791DC 7F0446AC 8FB60048 */ lw $s6, 0x48($sp) /* 0791E0 7F0446B0 03E00008 */ jr $ra /* 0791E4 7F0446B4 27BD00B8 */ addiu $sp, $sp, 0xb8 ) #endif #ifdef NONMATCHING void sub_GAME_7F0446B8(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .text glabel sub_GAME_7F0446B8 /* 0791E8 7F0446B8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0791EC 7F0446BC AFBF0014 */ sw $ra, 0x14($sp) /* 0791F0 7F0446C0 AFA40018 */ sw $a0, 0x18($sp) /* 0791F4 7F0446C4 AFA5001C */ sw $a1, 0x1c($sp) /* 0791F8 7F0446C8 AFA60020 */ sw $a2, 0x20($sp) /* 0791FC 7F0446CC 0FC11105 */ jal sub_GAME_7F044414 /* 079200 7F0446D0 AFA70024 */ sw $a3, 0x24($sp) /* 079204 7F0446D4 10400003 */ beqz $v0, .L7F0446E4 /* 079208 7F0446D8 8FA40020 */ lw $a0, 0x20($sp) /* 07920C 7F0446DC 1000000A */ b .L7F044708 /* 079210 7F0446E0 00001025 */ move $v0, $zero .L7F0446E4: /* 079214 7F0446E4 8FA50024 */ lw $a1, 0x24($sp) /* 079218 7F0446E8 8FA60018 */ lw $a2, 0x18($sp) /* 07921C 7F0446EC 0FC11105 */ jal sub_GAME_7F044414 /* 079220 7F0446F0 8FA7001C */ lw $a3, 0x1c($sp) /* 079224 7F0446F4 50400004 */ beql $v0, $zero, .L7F044708 /* 079228 7F0446F8 24020001 */ li $v0, 1 /* 07922C 7F0446FC 10000002 */ b .L7F044708 /* 079230 7F044700 00001025 */ move $v0, $zero /* 079234 7F044704 24020001 */ li $v0, 1 .L7F044708: /* 079238 7F044708 8FBF0014 */ lw $ra, 0x14($sp) /* 07923C 7F04470C 27BD0018 */ addiu $sp, $sp, 0x18 /* 079240 7F044710 03E00008 */ jr $ra /* 079244 7F044714 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .text glabel sub_GAME_7F0446B8 /* 079510 7F0449A0 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 079514 7F0449A4 AFB60038 */ sw $s6, 0x38($sp) /* 079518 7F0449A8 AFB50034 */ sw $s5, 0x34($sp) /* 07951C 7F0449AC AFB40030 */ sw $s4, 0x30($sp) /* 079520 7F0449B0 AFB3002C */ sw $s3, 0x2c($sp) /* 079524 7F0449B4 AFB10024 */ sw $s1, 0x24($sp) /* 079528 7F0449B8 00A09825 */ move $s3, $a1 /* 07952C 7F0449BC 00E0A025 */ move $s4, $a3 /* 079530 7F0449C0 0080A825 */ move $s5, $a0 /* 079534 7F0449C4 00C0B025 */ move $s6, $a2 /* 079538 7F0449C8 AFBF003C */ sw $ra, 0x3c($sp) /* 07953C 7F0449CC AFB20028 */ sw $s2, 0x28($sp) /* 079540 7F0449D0 AFB00020 */ sw $s0, 0x20($sp) /* 079544 7F0449D4 F7B40018 */ sdc1 $f20, 0x18($sp) /* 079548 7F0449D8 18A00014 */ blez $a1, .Ljp7F044A2C /* 07954C 7F0449DC 00008825 */ move $s1, $zero /* 079550 7F0449E0 4480A000 */ mtc1 $zero, $f20 /* 079554 7F0449E4 00808025 */ move $s0, $a0 /* 079558 7F0449E8 27B20048 */ addiu $s2, $sp, 0x48 .Ljp7F0449EC: /* 07955C 7F0449EC C6040000 */ lwc1 $f4, ($s0) /* 079560 7F0449F0 E7B4004C */ swc1 $f20, 0x4c($sp) /* 079564 7F0449F4 02402025 */ move $a0, $s2 /* 079568 7F0449F8 E7A40048 */ swc1 $f4, 0x48($sp) /* 07956C 7F0449FC C6060004 */ lwc1 $f6, 4($s0) /* 079570 7F044A00 02C02825 */ move $a1, $s6 /* 079574 7F044A04 02803025 */ move $a2, $s4 /* 079578 7F044A08 0FC0F3F6 */ jal sub_GAME_7F03CCD8 /* 07957C 7F044A0C E7A60050 */ swc1 $f6, 0x50($sp) /* 079580 7F044A10 10400003 */ beqz $v0, .Ljp7F044A20 /* 079584 7F044A14 26310001 */ addiu $s1, $s1, 1 /* 079588 7F044A18 10000029 */ b .Ljp7F044AC0 /* 07958C 7F044A1C 24020001 */ li $v0, 1 .Ljp7F044A20: /* 079590 7F044A20 1633FFF2 */ bne $s1, $s3, .Ljp7F0449EC /* 079594 7F044A24 26100008 */ addiu $s0, $s0, 8 /* 079598 7F044A28 00008825 */ move $s1, $zero .Ljp7F044A2C: /* 07959C 7F044A2C 4480A000 */ mtc1 $zero, $f20 /* 0795A0 7F044A30 1A800011 */ blez $s4, .Ljp7F044A78 /* 0795A4 7F044A34 27B20048 */ addiu $s2, $sp, 0x48 /* 0795A8 7F044A38 02C08025 */ move $s0, $s6 .Ljp7F044A3C: /* 0795AC 7F044A3C C6080000 */ lwc1 $f8, ($s0) /* 0795B0 7F044A40 E7B4004C */ swc1 $f20, 0x4c($sp) /* 0795B4 7F044A44 02402025 */ move $a0, $s2 /* 0795B8 7F044A48 E7A80048 */ swc1 $f8, 0x48($sp) /* 0795BC 7F044A4C C60A0004 */ lwc1 $f10, 4($s0) /* 0795C0 7F044A50 02A02825 */ move $a1, $s5 /* 0795C4 7F044A54 02603025 */ move $a2, $s3 /* 0795C8 7F044A58 0FC0F3F6 */ jal sub_GAME_7F03CCD8 /* 0795CC 7F044A5C E7AA0050 */ swc1 $f10, 0x50($sp) /* 0795D0 7F044A60 10400003 */ beqz $v0, .Ljp7F044A70 /* 0795D4 7F044A64 26310001 */ addiu $s1, $s1, 1 /* 0795D8 7F044A68 10000015 */ b .Ljp7F044AC0 /* 0795DC 7F044A6C 24020001 */ li $v0, 1 .Ljp7F044A70: /* 0795E0 7F044A70 1634FFF2 */ bne $s1, $s4, .Ljp7F044A3C /* 0795E4 7F044A74 26100008 */ addiu $s0, $s0, 8 .Ljp7F044A78: /* 0795E8 7F044A78 02A02025 */ move $a0, $s5 /* 0795EC 7F044A7C 02602825 */ move $a1, $s3 /* 0795F0 7F044A80 02C03025 */ move $a2, $s6 /* 0795F4 7F044A84 0FC111BF */ jal sub_GAME_7F044414 /* 0795F8 7F044A88 02803825 */ move $a3, $s4 /* 0795FC 7F044A8C 10400003 */ beqz $v0, .Ljp7F044A9C /* 079600 7F044A90 02C02025 */ move $a0, $s6 /* 079604 7F044A94 1000000A */ b .Ljp7F044AC0 /* 079608 7F044A98 00001025 */ move $v0, $zero .Ljp7F044A9C: /* 07960C 7F044A9C 02802825 */ move $a1, $s4 /* 079610 7F044AA0 02A03025 */ move $a2, $s5 /* 079614 7F044AA4 0FC111BF */ jal sub_GAME_7F044414 /* 079618 7F044AA8 02603825 */ move $a3, $s3 /* 07961C 7F044AAC 50400004 */ beql $v0, $zero, .Ljp7F044AC0 /* 079620 7F044AB0 24020001 */ li $v0, 1 /* 079624 7F044AB4 10000002 */ b .Ljp7F044AC0 /* 079628 7F044AB8 00001025 */ move $v0, $zero /* 07962C 7F044ABC 24020001 */ li $v0, 1 .Ljp7F044AC0: /* 079630 7F044AC0 8FBF003C */ lw $ra, 0x3c($sp) /* 079634 7F044AC4 D7B40018 */ ldc1 $f20, 0x18($sp) /* 079638 7F044AC8 8FB00020 */ lw $s0, 0x20($sp) /* 07963C 7F044ACC 8FB10024 */ lw $s1, 0x24($sp) /* 079640 7F044AD0 8FB20028 */ lw $s2, 0x28($sp) /* 079644 7F044AD4 8FB3002C */ lw $s3, 0x2c($sp) /* 079648 7F044AD8 8FB40030 */ lw $s4, 0x30($sp) /* 07964C 7F044ADC 8FB50034 */ lw $s5, 0x34($sp) /* 079650 7F044AE0 8FB60038 */ lw $s6, 0x38($sp) /* 079654 7F044AE4 03E00008 */ jr $ra /* 079658 7F044AE8 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #endif #ifdef NONMATCHING void sub_GAME_7F044718(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F044718 /* 079248 7F044718 27BDFF98 */ addiu $sp, $sp, -0x68 /* 07924C 7F04471C AFB40060 */ sw $s4, 0x60($sp) /* 079250 7F044720 AFB3005C */ sw $s3, 0x5c($sp) /* 079254 7F044724 F7BC0040 */ sdc1 $f28, 0x40($sp) /* 079258 7F044728 4485E000 */ mtc1 $a1, $f28 /* 07925C 7F04472C AFBF0064 */ sw $ra, 0x64($sp) /* 079260 7F044730 AFB20058 */ sw $s2, 0x58($sp) /* 079264 7F044734 AFB10054 */ sw $s1, 0x54($sp) /* 079268 7F044738 AFB00050 */ sw $s0, 0x50($sp) /* 07926C 7F04473C F7BE0048 */ sdc1 $f30, 0x48($sp) /* 079270 7F044740 F7BA0038 */ sdc1 $f26, 0x38($sp) /* 079274 7F044744 F7B80030 */ sdc1 $f24, 0x30($sp) /* 079278 7F044748 F7B60028 */ sdc1 $f22, 0x28($sp) /* 07927C 7F04474C F7B40020 */ sdc1 $f20, 0x20($sp) /* 079280 7F044750 00E09825 */ move $s3, $a3 /* 079284 7F044754 00C0A025 */ move $s4, $a2 /* 079288 7F044758 C4960000 */ lwc1 $f22, ($a0) /* 07928C 7F04475C C4980008 */ lwc1 $f24, 8($a0) /* 079290 7F044760 18E00042 */ blez $a3, .L7F04486C /* 079294 7F044764 00001025 */ move $v0, $zero /* 079298 7F044768 4480F000 */ mtc1 $zero, $f30 /* 07929C 7F04476C 00C08825 */ move $s1, $a2 .L7F044770: /* 0792A0 7F044770 24520001 */ addiu $s2, $v0, 1 /* 0792A4 7F044774 0253001A */ div $zero, $s2, $s3 /* 0792A8 7F044778 00007010 */ mfhi $t6 /* 0792AC 7F04477C 000E78C0 */ sll $t7, $t6, 3 /* 0792B0 7F044780 028F8021 */ addu $s0, $s4, $t7 /* 0792B4 7F044784 8E060000 */ lw $a2, ($s0) /* 0792B8 7F044788 8E070004 */ lw $a3, 4($s0) /* 0792BC 7F04478C C62C0000 */ lwc1 $f12, ($s1) /* 0792C0 7F044790 C62E0004 */ lwc1 $f14, 4($s1) /* 0792C4 7F044794 16600002 */ bnez $s3, .L7F0447A0 /* 0792C8 7F044798 00000000 */ nop /* 0792CC 7F04479C 0007000D */ break 7 .L7F0447A0: /* 0792D0 7F0447A0 2401FFFF */ li $at, -1 /* 0792D4 7F0447A4 16610004 */ bne $s3, $at, .L7F0447B8 /* 0792D8 7F0447A8 3C018000 */ lui $at, 0x8000 /* 0792DC 7F0447AC 16410002 */ bne $s2, $at, .L7F0447B8 /* 0792E0 7F0447B0 00000000 */ nop /* 0792E4 7F0447B4 0006000D */ break 6 .L7F0447B8: /* 0792E8 7F0447B8 E7B80014 */ swc1 $f24, 0x14($sp) /* 0792EC 7F0447BC 0FC2C5B1 */ jal sub_GAME_7F0B16C4 /* 0792F0 7F0447C0 E7B60010 */ swc1 $f22, 0x10($sp) /* 0792F4 7F0447C4 461E003C */ c.lt.s $f0, $f30 /* 0792F8 7F0447C8 4406B000 */ mfc1 $a2, $f22 /* 0792FC 7F0447CC 4407C000 */ mfc1 $a3, $f24 /* 079300 7F0447D0 46000506 */ mov.s $f20, $f0 /* 079304 7F0447D4 45020003 */ bc1fl .L7F0447E4 /* 079308 7F0447D8 C62C0000 */ lwc1 $f12, ($s1) /* 07930C 7F0447DC 46000507 */ neg.s $f20, $f0 /* 079310 7F0447E0 C62C0000 */ lwc1 $f12, ($s1) .L7F0447E4: /* 079314 7F0447E4 0FC2C5E5 */ jal sub_GAME_7F0B1794 /* 079318 7F0447E8 C62E0004 */ lwc1 $f14, 4($s1) /* 07931C 7F0447EC 4406B000 */ mfc1 $a2, $f22 /* 079320 7F0447F0 4407C000 */ mfc1 $a3, $f24 /* 079324 7F0447F4 46000686 */ mov.s $f26, $f0 /* 079328 7F0447F8 C60C0000 */ lwc1 $f12, ($s0) /* 07932C 7F0447FC 0FC2C5E5 */ jal sub_GAME_7F0B1794 /* 079330 7F044800 C60E0004 */ lwc1 $f14, 4($s0) /* 079334 7F044804 461CA03C */ c.lt.s $f20, $f28 /* 079338 7F044808 00000000 */ nop /* 07933C 7F04480C 45020015 */ bc1fl .L7F044864 /* 079340 7F044810 02401025 */ move $v0, $s2 /* 079344 7F044814 461CD03C */ c.lt.s $f26, $f28 /* 079348 7F044818 00000000 */ nop /* 07934C 7F04481C 4501000E */ bc1t .L7F044858 /* 079350 7F044820 00000000 */ nop /* 079354 7F044824 461C003C */ c.lt.s $f0, $f28 /* 079358 7F044828 00000000 */ nop /* 07935C 7F04482C 4501000A */ bc1t .L7F044858 /* 079360 7F044830 00000000 */ nop /* 079364 7F044834 C62C0000 */ lwc1 $f12, ($s1) /* 079368 7F044838 C62E0004 */ lwc1 $f14, 4($s1) /* 07936C 7F04483C 8E060000 */ lw $a2, ($s0) /* 079370 7F044840 8E070004 */ lw $a3, 4($s0) /* 079374 7F044844 E7B80014 */ swc1 $f24, 0x14($sp) /* 079378 7F044848 0FC2C5F9 */ jal sub_GAME_7F0B17E4 /* 07937C 7F04484C E7B60010 */ swc1 $f22, 0x10($sp) /* 079380 7F044850 50400004 */ beql $v0, $zero, .L7F044864 /* 079384 7F044854 02401025 */ move $v0, $s2 .L7F044858: /* 079388 7F044858 10000005 */ b .L7F044870 /* 07938C 7F04485C 24020001 */ li $v0, 1 /* 079390 7F044860 02401025 */ move $v0, $s2 .L7F044864: /* 079394 7F044864 1653FFC2 */ bne $s2, $s3, .L7F044770 /* 079398 7F044868 26310008 */ addiu $s1, $s1, 8 .L7F04486C: /* 07939C 7F04486C 00001025 */ move $v0, $zero .L7F044870: /* 0793A0 7F044870 8FBF0064 */ lw $ra, 0x64($sp) /* 0793A4 7F044874 D7B40020 */ ldc1 $f20, 0x20($sp) /* 0793A8 7F044878 D7B60028 */ ldc1 $f22, 0x28($sp) /* 0793AC 7F04487C D7B80030 */ ldc1 $f24, 0x30($sp) /* 0793B0 7F044880 D7BA0038 */ ldc1 $f26, 0x38($sp) /* 0793B4 7F044884 D7BC0040 */ ldc1 $f28, 0x40($sp) /* 0793B8 7F044888 D7BE0048 */ ldc1 $f30, 0x48($sp) /* 0793BC 7F04488C 8FB00050 */ lw $s0, 0x50($sp) /* 0793C0 7F044890 8FB10054 */ lw $s1, 0x54($sp) /* 0793C4 7F044894 8FB20058 */ lw $s2, 0x58($sp) /* 0793C8 7F044898 8FB3005C */ lw $s3, 0x5c($sp) /* 0793CC 7F04489C 8FB40060 */ lw $s4, 0x60($sp) /* 0793D0 7F0448A0 03E00008 */ jr $ra /* 0793D4 7F0448A4 27BD0068 */ addiu $sp, $sp, 0x68 ) #endif #ifdef NONMATCHING void sub_GAME_7F0448A8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0448A8 /* 0793D8 7F0448A8 27BDFF60 */ addiu $sp, $sp, -0xa0 /* 0793DC 7F0448AC AFBF0034 */ sw $ra, 0x34($sp) /* 0793E0 7F0448B0 AFB50030 */ sw $s5, 0x30($sp) /* 0793E4 7F0448B4 27AE008C */ addiu $t6, $sp, 0x8c /* 0793E8 7F0448B8 0080A825 */ move $s5, $a0 /* 0793EC 7F0448BC AFB4002C */ sw $s4, 0x2c($sp) /* 0793F0 7F0448C0 AFB30028 */ sw $s3, 0x28($sp) /* 0793F4 7F0448C4 AFB20024 */ sw $s2, 0x24($sp) /* 0793F8 7F0448C8 AFB10020 */ sw $s1, 0x20($sp) /* 0793FC 7F0448CC AFB0001C */ sw $s0, 0x1c($sp) /* 079400 7F0448D0 AFAE0010 */ sw $t6, 0x10($sp) /* 079404 7F0448D4 27A50098 */ addiu $a1, $sp, 0x98 /* 079408 7F0448D8 27A60094 */ addiu $a2, $sp, 0x94 /* 07940C 7F0448DC 0FC0F308 */ jal sub_GAME_7F03CC20 /* 079410 7F0448E0 27A70090 */ addiu $a3, $sp, 0x90 /* 079414 7F0448E4 8FAF0094 */ lw $t7, 0x94($sp) /* 079418 7F0448E8 27B0006C */ addiu $s0, $sp, 0x6c /* 07941C 7F0448EC 02A02025 */ move $a0, $s5 /* 079420 7F0448F0 1DE00003 */ bgtz $t7, .L7F044900 /* 079424 7F0448F4 00000000 */ nop /* 079428 7F0448F8 10000086 */ b .L7F044B14 /* 07942C 7F0448FC 24020001 */ li $v0, 1 .L7F044900: /* 079430 7F044900 0FC0F2E3 */ jal sub_GAME_7F03CB8C /* 079434 7F044904 02002825 */ move $a1, $s0 /* 079438 7F044908 0FC0F8FF */ jal sub_GAME_7F03E3FC /* 07943C 7F04490C 02002025 */ move $a0, $s0 /* 079440 7F044910 3C138007 */ lui $s3, %hi(ptr_list_object_lookup_indices) /* 079444 7F044914 8E739C30 */ lw $s3, %lo(ptr_list_object_lookup_indices)($s3) /* 079448 7F044918 24140002 */ li $s4, 2 /* 07944C 7F04491C 86620000 */ lh $v0, ($s3) /* 079450 7F044920 0440007B */ bltz $v0, .L7F044B10 /* 079454 7F044924 0002C080 */ sll $t8, $v0, 2 .L7F044928: /* 079458 7F044928 0302C023 */ subu $t8, $t8, $v0 /* 07945C 7F04492C 0018C080 */ sll $t8, $t8, 2 /* 079460 7F044930 0302C021 */ addu $t8, $t8, $v0 /* 079464 7F044934 3C198007 */ lui $t9, %hi(pos_data_entry) /* 079468 7F044938 27399C38 */ addiu $t9, %lo(pos_data_entry) # addiu $t9, $t9, -0x63c8 /* 07946C 7F04493C 0018C080 */ sll $t8, $t8, 2 /* 079470 7F044940 03199021 */ addu $s2, $t8, $t9 /* 079474 7F044944 5255006F */ beql $s2, $s5, .L7F044B04 /* 079478 7F044948 86620002 */ lh $v0, 2($s3) /* 07947C 7F04494C 92420000 */ lbu $v0, ($s2) /* 079480 7F044950 24010006 */ li $at, 6 /* 079484 7F044954 10410003 */ beq $v0, $at, .L7F044964 /* 079488 7F044958 24010003 */ li $at, 3 /* 07948C 7F04495C 5441003C */ bnel $v0, $at, .L7F044A50 /* 079490 7F044960 24010001 */ li $at, 1 .L7F044964: /* 079494 7F044964 8E420004 */ lw $v0, 4($s2) /* 079498 7F044968 02402025 */ move $a0, $s2 /* 07949C 7F04496C 27A5005C */ addiu $a1, $sp, 0x5c /* 0794A0 7F044970 10400005 */ beqz $v0, .L7F044988 /* 0794A4 7F044974 27A60064 */ addiu $a2, $sp, 0x64 /* 0794A8 7F044978 8C480014 */ lw $t0, 0x14($v0) /* 0794AC 7F04497C 31090400 */ andi $t1, $t0, 0x400 /* 0794B0 7F044980 55200060 */ bnezl $t1, .L7F044B04 /* 0794B4 7F044984 86620002 */ lh $v0, 2($s3) .L7F044988: /* 0794B8 7F044988 0FC0F3E2 */ jal sub_GAME_7F03CF88 /* 0794BC 7F04498C 27A70060 */ addiu $a3, $sp, 0x60 /* 0794C0 7F044990 0FC0F3FA */ jal sub_GAME_7F03CFE8 /* 0794C4 7F044994 02402025 */ move $a0, $s2 /* 0794C8 7F044998 C7A20060 */ lwc1 $f2, 0x60($sp) /* 0794CC 7F04499C C7A80090 */ lwc1 $f8, 0x90($sp) /* 0794D0 7F0449A0 C7A40064 */ lwc1 $f4, 0x64($sp) /* 0794D4 7F0449A4 46001080 */ add.s $f2, $f2, $f0 /* 0794D8 7F0449A8 C7AA008C */ lwc1 $f10, 0x8c($sp) /* 0794DC 7F0449AC 46002180 */ add.s $f6, $f4, $f0 /* 0794E0 7F0449B0 E7A20060 */ swc1 $f2, 0x60($sp) /* 0794E4 7F0449B4 4608103E */ c.le.s $f2, $f8 /* 0794E8 7F0449B8 E7A60064 */ swc1 $f6, 0x64($sp) /* 0794EC 7F0449BC 45020051 */ bc1fl .L7F044B04 /* 0794F0 7F0449C0 86620002 */ lh $v0, 2($s3) /* 0794F4 7F0449C4 4606503E */ c.le.s $f10, $f6 /* 0794F8 7F0449C8 26510008 */ addiu $s1, $s2, 8 /* 0794FC 7F0449CC 24100001 */ li $s0, 1 /* 079500 7F0449D0 02202025 */ move $a0, $s1 /* 079504 7F0449D4 4500004A */ bc1f .L7F044B00 /* 079508 7F0449D8 8FA50098 */ lw $a1, 0x98($sp) /* 07950C 7F0449DC 0FC0F336 */ jal sub_GAME_7F03CCD8 /* 079510 7F0449E0 8FA60094 */ lw $a2, 0x94($sp) /* 079514 7F0449E4 10400002 */ beqz $v0, .L7F0449F0 /* 079518 7F0449E8 02202025 */ move $a0, $s1 /* 07951C 7F0449EC 00008025 */ move $s0, $zero .L7F0449F0: /* 079520 7F0449F0 12000007 */ beqz $s0, .L7F044A10 /* 079524 7F0449F4 8FA5005C */ lw $a1, 0x5c($sp) /* 079528 7F0449F8 8FA60098 */ lw $a2, 0x98($sp) /* 07952C 7F0449FC 0FC111C6 */ jal sub_GAME_7F044718 /* 079530 7F044A00 8FA70094 */ lw $a3, 0x94($sp) /* 079534 7F044A04 10400002 */ beqz $v0, .L7F044A10 /* 079538 7F044A08 00000000 */ nop /* 07953C 7F044A0C 00008025 */ move $s0, $zero .L7F044A10: /* 079540 7F044A10 5600003C */ bnezl $s0, .L7F044B04 /* 079544 7F044A14 86620002 */ lh $v0, 2($s3) /* 079548 7F044A18 924A0000 */ lbu $t2, ($s2) /* 07954C 7F044A1C 24010003 */ li $at, 3 /* 079550 7F044A20 15410008 */ bne $t2, $at, .L7F044A44 /* 079554 7F044A24 00000000 */ nop /* 079558 7F044A28 92AB0000 */ lbu $t3, ($s5) /* 07955C 7F044A2C 168B0005 */ bne $s4, $t3, .L7F044A44 /* 079560 7F044A30 00000000 */ nop /* 079564 7F044A34 8E420004 */ lw $v0, 4($s2) /* 079568 7F044A38 944C0012 */ lhu $t4, 0x12($v0) /* 07956C 7F044A3C 358D0010 */ ori $t5, $t4, 0x10 /* 079570 7F044A40 A44D0012 */ sh $t5, 0x12($v0) .L7F044A44: /* 079574 7F044A44 10000033 */ b .L7F044B14 /* 079578 7F044A48 00001025 */ move $v0, $zero /* 07957C 7F044A4C 24010001 */ li $at, 1 .L7F044A50: /* 079580 7F044A50 10410005 */ beq $v0, $at, .L7F044A68 /* 079584 7F044A54 24010004 */ li $at, 4 /* 079588 7F044A58 50410004 */ beql $v0, $at, .L7F044A6C /* 07958C 7F044A5C 92AE0000 */ lbu $t6, ($s5) /* 079590 7F044A60 56820028 */ bnel $s4, $v0, .L7F044B04 /* 079594 7F044A64 86620002 */ lh $v0, 2($s3) .L7F044A68: /* 079598 7F044A68 92AE0000 */ lbu $t6, ($s5) .L7F044A6C: /* 07959C 7F044A6C 02402025 */ move $a0, $s2 /* 0795A0 7F044A70 27A5004C */ addiu $a1, $sp, 0x4c /* 0795A4 7F044A74 168E0009 */ bne $s4, $t6, .L7F044A9C /* 0795A8 7F044A78 27A60048 */ addiu $a2, $sp, 0x48 /* 0795AC 7F044A7C 52820021 */ beql $s4, $v0, .L7F044B04 /* 0795B0 7F044A80 86620002 */ lh $v0, 2($s3) /* 0795B4 7F044A84 8E4F0004 */ lw $t7, 4($s2) /* 0795B8 7F044A88 2401002B */ li $at, 43 /* 0795BC 7F044A8C 91E20003 */ lbu $v0, 3($t7) /* 0795C0 7F044A90 1041001B */ beq $v0, $at, .L7F044B00 /* 0795C4 7F044A94 24010028 */ li $at, 40 /* 0795C8 7F044A98 10410019 */ beq $v0, $at, .L7F044B00 .L7F044A9C: /* 0795CC 7F044A9C 27B80040 */ addiu $t8, $sp, 0x40 /* 0795D0 7F044AA0 AFB80010 */ sw $t8, 0x10($sp) /* 0795D4 7F044AA4 0FC0F308 */ jal sub_GAME_7F03CC20 /* 0795D8 7F044AA8 27A70044 */ addiu $a3, $sp, 0x44 /* 0795DC 7F044AAC 8FA50048 */ lw $a1, 0x48($sp) /* 0795E0 7F044AB0 C7B00090 */ lwc1 $f16, 0x90($sp) /* 0795E4 7F044AB4 C7B20040 */ lwc1 $f18, 0x40($sp) /* 0795E8 7F044AB8 58A00012 */ blezl $a1, .L7F044B04 /* 0795EC 7F044ABC 86620002 */ lh $v0, 2($s3) /* 0795F0 7F044AC0 4610903E */ c.le.s $f18, $f16 /* 0795F4 7F044AC4 C7A40044 */ lwc1 $f4, 0x44($sp) /* 0795F8 7F044AC8 C7A8008C */ lwc1 $f8, 0x8c($sp) /* 0795FC 7F044ACC 4502000D */ bc1fl .L7F044B04 /* 079600 7F044AD0 86620002 */ lh $v0, 2($s3) /* 079604 7F044AD4 4604403E */ c.le.s $f8, $f4 /* 079608 7F044AD8 8FA4004C */ lw $a0, 0x4c($sp) /* 07960C 7F044ADC 8FA60098 */ lw $a2, 0x98($sp) /* 079610 7F044AE0 45020008 */ bc1fl .L7F044B04 /* 079614 7F044AE4 86620002 */ lh $v0, 2($s3) /* 079618 7F044AE8 0FC111AE */ jal sub_GAME_7F0446B8 /* 07961C 7F044AEC 8FA70094 */ lw $a3, 0x94($sp) /* 079620 7F044AF0 50400004 */ beql $v0, $zero, .L7F044B04 /* 079624 7F044AF4 86620002 */ lh $v0, 2($s3) /* 079628 7F044AF8 10000006 */ b .L7F044B14 /* 07962C 7F044AFC 00001025 */ move $v0, $zero .L7F044B00: /* 079630 7F044B00 86620002 */ lh $v0, 2($s3) .L7F044B04: /* 079634 7F044B04 26730002 */ addiu $s3, $s3, 2 /* 079638 7F044B08 0443FF87 */ bgezl $v0, .L7F044928 /* 07963C 7F044B0C 0002C080 */ sll $t8, $v0, 2 .L7F044B10: /* 079640 7F044B10 24020001 */ li $v0, 1 .L7F044B14: /* 079644 7F044B14 8FBF0034 */ lw $ra, 0x34($sp) /* 079648 7F044B18 8FB0001C */ lw $s0, 0x1c($sp) /* 07964C 7F044B1C 8FB10020 */ lw $s1, 0x20($sp) /* 079650 7F044B20 8FB20024 */ lw $s2, 0x24($sp) /* 079654 7F044B24 8FB30028 */ lw $s3, 0x28($sp) /* 079658 7F044B28 8FB4002C */ lw $s4, 0x2c($sp) /* 07965C 7F044B2C 8FB50030 */ lw $s5, 0x30($sp) /* 079660 7F044B30 03E00008 */ jr $ra /* 079664 7F044B34 27BD00A0 */ addiu $sp, $sp, 0xa0 ) #endif #ifdef NONMATCHING void sub_GAME_7F044B38(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F044B38 /* 079668 7F044B38 27BDFEA8 */ addiu $sp, $sp, -0x158 /* 07966C 7F044B3C AFBF0024 */ sw $ra, 0x24($sp) /* 079670 7F044B40 AFB10020 */ sw $s1, 0x20($sp) /* 079674 7F044B44 AFB0001C */ sw $s0, 0x1c($sp) /* 079678 7F044B48 8C830014 */ lw $v1, 0x14($a0) /* 07967C 7F044B4C 8C910010 */ lw $s1, 0x10($a0) /* 079680 7F044B50 24180001 */ li $t8, 1 /* 079684 7F044B54 8C790008 */ lw $t9, 8($v1) /* 079688 7F044B58 00808025 */ move $s0, $a0 /* 07968C 7F044B5C 27A500C8 */ addiu $a1, $sp, 0xc8 /* 079690 7F044B60 8F220008 */ lw $v0, 8($t9) /* 079694 7F044B64 8C480004 */ lw $t0, 4($v0) /* 079698 7F044B68 8D090004 */ lw $t1, 4($t0) /* 07969C 7F044B6C AFA90148 */ sw $t1, 0x148($sp) /* 0796A0 7F044B70 8C4A0008 */ lw $t2, 8($v0) /* 0796A4 7F044B74 8D4B0004 */ lw $t3, 4($t2) /* 0796A8 7F044B78 AFAB0144 */ sw $t3, 0x144($sp) /* 0796AC 7F044B7C 8C4C000C */ lw $t4, 0xc($v0) /* 0796B0 7F044B80 8D8D0004 */ lw $t5, 4($t4) /* 0796B4 7F044B84 AFAD0140 */ sw $t5, 0x140($sp) /* 0796B8 7F044B88 8C4E0010 */ lw $t6, 0x10($v0) /* 0796BC 7F044B8C 8DCF0004 */ lw $t7, 4($t6) /* 0796C0 7F044B90 AFB80108 */ sw $t8, 0x108($sp) /* 0796C4 7F044B94 AFAF013C */ sw $t7, 0x13c($sp) /* 0796C8 7F044B98 8C590018 */ lw $t9, 0x18($v0) /* 0796CC 7F044B9C 8F280004 */ lw $t0, 4($t9) /* 0796D0 7F044BA0 AFA800C0 */ sw $t0, 0xc0($sp) /* 0796D4 7F044BA4 C48C00A0 */ lwc1 $f12, 0xa0($a0) /* 0796D8 7F044BA8 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 0796DC 7F044BAC AFA30154 */ sw $v1, 0x154($sp) /* 0796E0 7F044BB0 8FA90154 */ lw $t1, 0x154($sp) /* 0796E4 7F044BB4 27A500C8 */ addiu $a1, $sp, 0xc8 /* 0796E8 7F044BB8 0FC1629F */ jal matrix_scalar_multiply /* 0796EC 7F044BBC C52C0014 */ lwc1 $f12, 0x14($t1) /* 0796F0 7F044BC0 26040058 */ addiu $a0, $s0, 0x58 /* 0796F4 7F044BC4 0FC16266 */ jal matrix_4x4_set_position /* 0796F8 7F044BC8 27A500C8 */ addiu $a1, $sp, 0xc8 /* 0796FC 7F044BCC 27A400C8 */ addiu $a0, $sp, 0xc8 /* 079700 7F044BD0 8FA50148 */ lw $a1, 0x148($sp) /* 079704 7F044BD4 0FC16106 */ jal matrix_4x4_transform_vector /* 079708 7F044BD8 27A60130 */ addiu $a2, $sp, 0x130 /* 07970C 7F044BDC 27A400C8 */ addiu $a0, $sp, 0xc8 /* 079710 7F044BE0 8FA50144 */ lw $a1, 0x144($sp) /* 079714 7F044BE4 0FC16106 */ jal matrix_4x4_transform_vector /* 079718 7F044BE8 27A60124 */ addiu $a2, $sp, 0x124 /* 07971C 7F044BEC 27A400C8 */ addiu $a0, $sp, 0xc8 /* 079720 7F044BF0 8FA50140 */ lw $a1, 0x140($sp) /* 079724 7F044BF4 0FC16106 */ jal matrix_4x4_transform_vector /* 079728 7F044BF8 27A60118 */ addiu $a2, $sp, 0x118 /* 07972C 7F044BFC 27A400C8 */ addiu $a0, $sp, 0xc8 /* 079730 7F044C00 8FA5013C */ lw $a1, 0x13c($sp) /* 079734 7F044C04 0FC16106 */ jal matrix_4x4_transform_vector /* 079738 7F044C08 27A6010C */ addiu $a2, $sp, 0x10c /* 07973C 7F044C0C 8E2A0014 */ lw $t2, 0x14($s1) /* 079740 7F044C10 C7A80138 */ lwc1 $f8, 0x138($sp) /* 079744 7F044C14 27A400C4 */ addiu $a0, $sp, 0xc4 /* 079748 7F044C18 AFAA00C4 */ sw $t2, 0xc4($sp) /* 07974C 7F044C1C 8E260010 */ lw $a2, 0x10($s1) /* 079750 7F044C20 8E250008 */ lw $a1, 8($s1) /* 079754 7F044C24 8FA70130 */ lw $a3, 0x130($sp) /* 079758 7F044C28 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07975C 7F044C2C E7A80010 */ swc1 $f8, 0x10($sp) /* 079760 7F044C30 10400006 */ beqz $v0, .L7F044C4C /* 079764 7F044C34 8FA400C4 */ lw $a0, 0xc4($sp) /* 079768 7F044C38 8FA50130 */ lw $a1, 0x130($sp) /* 07976C 7F044C3C 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 079770 7F044C40 8FA60138 */ lw $a2, 0x138($sp) /* 079774 7F044C44 10000002 */ b .L7F044C50 /* 079778 7F044C48 E7A00134 */ swc1 $f0, 0x134($sp) .L7F044C4C: /* 07977C 7F044C4C AFA00108 */ sw $zero, 0x108($sp) .L7F044C50: /* 079780 7F044C50 8E2B0014 */ lw $t3, 0x14($s1) /* 079784 7F044C54 C7A6012C */ lwc1 $f6, 0x12c($sp) /* 079788 7F044C58 27A400C4 */ addiu $a0, $sp, 0xc4 /* 07978C 7F044C5C AFAB00C4 */ sw $t3, 0xc4($sp) /* 079790 7F044C60 8E260010 */ lw $a2, 0x10($s1) /* 079794 7F044C64 8E250008 */ lw $a1, 8($s1) /* 079798 7F044C68 8FA70124 */ lw $a3, 0x124($sp) /* 07979C 7F044C6C 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 0797A0 7F044C70 E7A60010 */ swc1 $f6, 0x10($sp) /* 0797A4 7F044C74 10400006 */ beqz $v0, .L7F044C90 /* 0797A8 7F044C78 8FA400C4 */ lw $a0, 0xc4($sp) /* 0797AC 7F044C7C 8FA50124 */ lw $a1, 0x124($sp) /* 0797B0 7F044C80 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 0797B4 7F044C84 8FA6012C */ lw $a2, 0x12c($sp) /* 0797B8 7F044C88 10000002 */ b .L7F044C94 /* 0797BC 7F044C8C E7A00128 */ swc1 $f0, 0x128($sp) .L7F044C90: /* 0797C0 7F044C90 AFA00108 */ sw $zero, 0x108($sp) .L7F044C94: /* 0797C4 7F044C94 8E2C0014 */ lw $t4, 0x14($s1) /* 0797C8 7F044C98 C7A40120 */ lwc1 $f4, 0x120($sp) /* 0797CC 7F044C9C 27A400C4 */ addiu $a0, $sp, 0xc4 /* 0797D0 7F044CA0 AFAC00C4 */ sw $t4, 0xc4($sp) /* 0797D4 7F044CA4 8E260010 */ lw $a2, 0x10($s1) /* 0797D8 7F044CA8 8E250008 */ lw $a1, 8($s1) /* 0797DC 7F044CAC 8FA70118 */ lw $a3, 0x118($sp) /* 0797E0 7F044CB0 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 0797E4 7F044CB4 E7A40010 */ swc1 $f4, 0x10($sp) /* 0797E8 7F044CB8 10400006 */ beqz $v0, .L7F044CD4 /* 0797EC 7F044CBC 8FA400C4 */ lw $a0, 0xc4($sp) /* 0797F0 7F044CC0 8FA50118 */ lw $a1, 0x118($sp) /* 0797F4 7F044CC4 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 0797F8 7F044CC8 8FA60120 */ lw $a2, 0x120($sp) /* 0797FC 7F044CCC 10000002 */ b .L7F044CD8 /* 079800 7F044CD0 E7A0011C */ swc1 $f0, 0x11c($sp) .L7F044CD4: /* 079804 7F044CD4 AFA00108 */ sw $zero, 0x108($sp) .L7F044CD8: /* 079808 7F044CD8 8E2D0014 */ lw $t5, 0x14($s1) /* 07980C 7F044CDC C7AA0114 */ lwc1 $f10, 0x114($sp) /* 079810 7F044CE0 27A400C4 */ addiu $a0, $sp, 0xc4 /* 079814 7F044CE4 AFAD00C4 */ sw $t5, 0xc4($sp) /* 079818 7F044CE8 8E260010 */ lw $a2, 0x10($s1) /* 07981C 7F044CEC 8E250008 */ lw $a1, 8($s1) /* 079820 7F044CF0 8FA7010C */ lw $a3, 0x10c($sp) /* 079824 7F044CF4 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 079828 7F044CF8 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07982C 7F044CFC 10400006 */ beqz $v0, .L7F044D18 /* 079830 7F044D00 8FA400C4 */ lw $a0, 0xc4($sp) /* 079834 7F044D04 8FA5010C */ lw $a1, 0x10c($sp) /* 079838 7F044D08 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 07983C 7F044D0C 8FA60114 */ lw $a2, 0x114($sp) /* 079840 7F044D10 10000002 */ b .L7F044D1C /* 079844 7F044D14 E7A00110 */ swc1 $f0, 0x110($sp) .L7F044D18: /* 079848 7F044D18 AFA00108 */ sw $zero, 0x108($sp) .L7F044D1C: /* 07984C 7F044D1C 8FAE0108 */ lw $t6, 0x108($sp) /* 079850 7F044D20 26040018 */ addiu $a0, $s0, 0x18 /* 079854 7F044D24 27A600BC */ addiu $a2, $sp, 0xbc /* 079858 7F044D28 11C0010E */ beqz $t6, .L7F045164 /* 07985C 7F044D2C 00802825 */ move $a1, $a0 /* 079860 7F044D30 C7B20124 */ lwc1 $f18, 0x124($sp) /* 079864 7F044D34 C7B00130 */ lwc1 $f16, 0x130($sp) /* 079868 7F044D38 C7AE0128 */ lwc1 $f14, 0x128($sp) /* 07986C 7F044D3C C7AC0134 */ lwc1 $f12, 0x134($sp) /* 079870 7F044D40 46109401 */ sub.s $f16, $f18, $f16 /* 079874 7F044D44 C7B2012C */ lwc1 $f18, 0x12c($sp) /* 079878 7F044D48 C7AA0138 */ lwc1 $f10, 0x138($sp) /* 07987C 7F044D4C 460C7301 */ sub.s $f12, $f14, $f12 /* 079880 7F044D50 E7B000B4 */ swc1 $f16, 0xb4($sp) /* 079884 7F044D54 27A400B4 */ addiu $a0, $sp, 0xb4 /* 079888 7F044D58 460A9281 */ sub.s $f10, $f18, $f10 /* 07988C 7F044D5C E7AC00B8 */ swc1 $f12, 0xb8($sp) /* 079890 7F044D60 27A500B8 */ addiu $a1, $sp, 0xb8 /* 079894 7F044D64 0C007DD4 */ jal guNormalize /* 079898 7F044D68 E7AA00BC */ swc1 $f10, 0xbc($sp) /* 07989C 7F044D6C C7B2010C */ lwc1 $f18, 0x10c($sp) /* 0798A0 7F044D70 C7B00124 */ lwc1 $f16, 0x124($sp) /* 0798A4 7F044D74 C7AE0110 */ lwc1 $f14, 0x110($sp) /* 0798A8 7F044D78 C7AC0128 */ lwc1 $f12, 0x128($sp) /* 0798AC 7F044D7C 46109401 */ sub.s $f16, $f18, $f16 /* 0798B0 7F044D80 C7B20114 */ lwc1 $f18, 0x114($sp) /* 0798B4 7F044D84 C7AA012C */ lwc1 $f10, 0x12c($sp) /* 0798B8 7F044D88 460C7301 */ sub.s $f12, $f14, $f12 /* 0798BC 7F044D8C E7B000A8 */ swc1 $f16, 0xa8($sp) /* 0798C0 7F044D90 27A400A8 */ addiu $a0, $sp, 0xa8 /* 0798C4 7F044D94 460A9281 */ sub.s $f10, $f18, $f10 /* 0798C8 7F044D98 E7AC00AC */ swc1 $f12, 0xac($sp) /* 0798CC 7F044D9C 27A500AC */ addiu $a1, $sp, 0xac /* 0798D0 7F044DA0 27A600B0 */ addiu $a2, $sp, 0xb0 /* 0798D4 7F044DA4 0C007DD4 */ jal guNormalize /* 0798D8 7F044DA8 E7AA00B0 */ swc1 $f10, 0xb0($sp) /* 0798DC 7F044DAC C7B20118 */ lwc1 $f18, 0x118($sp) /* 0798E0 7F044DB0 C7B0010C */ lwc1 $f16, 0x10c($sp) /* 0798E4 7F044DB4 C7AE011C */ lwc1 $f14, 0x11c($sp) /* 0798E8 7F044DB8 C7AC0110 */ lwc1 $f12, 0x110($sp) /* 0798EC 7F044DBC 46109401 */ sub.s $f16, $f18, $f16 /* 0798F0 7F044DC0 C7B20120 */ lwc1 $f18, 0x120($sp) /* 0798F4 7F044DC4 C7AA0114 */ lwc1 $f10, 0x114($sp) /* 0798F8 7F044DC8 460C7301 */ sub.s $f12, $f14, $f12 /* 0798FC 7F044DCC E7B0009C */ swc1 $f16, 0x9c($sp) /* 079900 7F044DD0 27A4009C */ addiu $a0, $sp, 0x9c /* 079904 7F044DD4 460A9281 */ sub.s $f10, $f18, $f10 /* 079908 7F044DD8 E7AC00A0 */ swc1 $f12, 0xa0($sp) /* 07990C 7F044DDC 27A500A0 */ addiu $a1, $sp, 0xa0 /* 079910 7F044DE0 27A600A4 */ addiu $a2, $sp, 0xa4 /* 079914 7F044DE4 0C007DD4 */ jal guNormalize /* 079918 7F044DE8 E7AA00A4 */ swc1 $f10, 0xa4($sp) /* 07991C 7F044DEC C7B20130 */ lwc1 $f18, 0x130($sp) /* 079920 7F044DF0 C7B00118 */ lwc1 $f16, 0x118($sp) /* 079924 7F044DF4 C7AE0134 */ lwc1 $f14, 0x134($sp) /* 079928 7F044DF8 C7AC011C */ lwc1 $f12, 0x11c($sp) /* 07992C 7F044DFC 46109401 */ sub.s $f16, $f18, $f16 /* 079930 7F044E00 C7B20138 */ lwc1 $f18, 0x138($sp) /* 079934 7F044E04 C7AA0120 */ lwc1 $f10, 0x120($sp) /* 079938 7F044E08 460C7301 */ sub.s $f12, $f14, $f12 /* 07993C 7F044E0C E7B00090 */ swc1 $f16, 0x90($sp) /* 079940 7F044E10 27A40090 */ addiu $a0, $sp, 0x90 /* 079944 7F044E14 460A9281 */ sub.s $f10, $f18, $f10 /* 079948 7F044E18 E7AC0094 */ swc1 $f12, 0x94($sp) /* 07994C 7F044E1C 27A50094 */ addiu $a1, $sp, 0x94 /* 079950 7F044E20 27A60098 */ addiu $a2, $sp, 0x98 /* 079954 7F044E24 0C007DD4 */ jal guNormalize /* 079958 7F044E28 E7AA0098 */ swc1 $f10, 0x98($sp) /* 07995C 7F044E2C C7A800BC */ lwc1 $f8, 0xbc($sp) /* 079960 7F044E30 C7A600A8 */ lwc1 $f6, 0xa8($sp) /* 079964 7F044E34 C7AA00B0 */ lwc1 $f10, 0xb0($sp) /* 079968 7F044E38 E7A80028 */ swc1 $f8, 0x28($sp) /* 07996C 7F044E3C 46064102 */ mul.s $f4, $f8, $f6 /* 079970 7F044E40 C7A800B4 */ lwc1 $f8, 0xb4($sp) /* 079974 7F044E44 E7A6002C */ swc1 $f6, 0x2c($sp) /* 079978 7F044E48 E7AA0034 */ swc1 $f10, 0x34($sp) /* 07997C 7F044E4C 46085182 */ mul.s $f6, $f10, $f8 /* 079980 7F044E50 E7A80030 */ swc1 $f8, 0x30($sp) /* 079984 7F044E54 C7A800A4 */ lwc1 $f8, 0xa4($sp) /* 079988 7F044E58 46062001 */ sub.s $f0, $f4, $f6 /* 07998C 7F044E5C C7A4009C */ lwc1 $f4, 0x9c($sp) /* 079990 7F044E60 46045182 */ mul.s $f6, $f10, $f4 /* 079994 7F044E64 C7AA002C */ lwc1 $f10, 0x2c($sp) /* 079998 7F044E68 E7A4002C */ swc1 $f4, 0x2c($sp) /* 07999C 7F044E6C 460A4102 */ mul.s $f4, $f8, $f10 /* 0799A0 7F044E70 46043381 */ sub.s $f14, $f6, $f4 /* 0799A4 7F044E74 C7A60090 */ lwc1 $f6, 0x90($sp) /* 0799A8 7F044E78 4600703E */ c.le.s $f14, $f0 /* 0799AC 7F044E7C 00000000 */ nop /* 0799B0 7F044E80 45020023 */ bc1fl .L7F044F10 /* 0799B4 7F044E84 C7A600A4 */ lwc1 $f6, 0xa4($sp) /* 0799B8 7F044E88 46064102 */ mul.s $f4, $f8, $f6 /* 0799BC 7F044E8C E7AA0038 */ swc1 $f10, 0x38($sp) /* 0799C0 7F044E90 C7AA002C */ lwc1 $f10, 0x2c($sp) /* 0799C4 7F044E94 C7A80098 */ lwc1 $f8, 0x98($sp) /* 0799C8 7F044E98 460A4282 */ mul.s $f10, $f8, $f10 /* 0799CC 7F044E9C 460A2101 */ sub.s $f4, $f4, $f10 /* 0799D0 7F044EA0 C7AA0030 */ lwc1 $f10, 0x30($sp) /* 0799D4 7F044EA4 4600203E */ c.le.s $f4, $f0 /* 0799D8 7F044EA8 00000000 */ nop /* 0799DC 7F044EAC 45020018 */ bc1fl .L7F044F10 /* 0799E0 7F044EB0 C7A600A4 */ lwc1 $f6, 0xa4($sp) /* 0799E4 7F044EB4 460A4102 */ mul.s $f4, $f8, $f10 /* 0799E8 7F044EB8 C7A80028 */ lwc1 $f8, 0x28($sp) /* 0799EC 7F044EBC C7AC00B8 */ lwc1 $f12, 0xb8($sp) /* 0799F0 7F044EC0 46064182 */ mul.s $f6, $f8, $f6 /* 0799F4 7F044EC4 46062101 */ sub.s $f4, $f4, $f6 /* 0799F8 7F044EC8 C7A60034 */ lwc1 $f6, 0x34($sp) /* 0799FC 7F044ECC 4600203E */ c.le.s $f4, $f0 /* 079A00 7F044ED0 00000000 */ nop /* 079A04 7F044ED4 4502000E */ bc1fl .L7F044F10 /* 079A08 7F044ED8 C7A600A4 */ lwc1 $f6, 0xa4($sp) /* 079A0C 7F044EDC 46066102 */ mul.s $f4, $f12, $f6 /* 079A10 7F044EE0 C7A200AC */ lwc1 $f2, 0xac($sp) /* 079A14 7F044EE4 E7A00078 */ swc1 $f0, 0x78($sp) /* 079A18 7F044EE8 46081182 */ mul.s $f6, $f2, $f8 /* 079A1C 7F044EEC 46062201 */ sub.s $f8, $f4, $f6 /* 079A20 7F044EF0 46025102 */ mul.s $f4, $f10, $f2 /* 079A24 7F044EF4 C7A60038 */ lwc1 $f6, 0x38($sp) /* 079A28 7F044EF8 E7A80074 */ swc1 $f8, 0x74($sp) /* 079A2C 7F044EFC 460C3202 */ mul.s $f8, $f6, $f12 /* 079A30 7F044F00 46082281 */ sub.s $f10, $f4, $f8 /* 079A34 7F044F04 10000045 */ b .L7F04501C /* 079A38 7F044F08 E7AA007C */ swc1 $f10, 0x7c($sp) /* 079A3C 7F044F0C C7A600A4 */ lwc1 $f6, 0xa4($sp) .L7F044F10: /* 079A40 7F044F10 C7A40090 */ lwc1 $f4, 0x90($sp) /* 079A44 7F044F14 C7AA0098 */ lwc1 $f10, 0x98($sp) /* 079A48 7F044F18 E7A60038 */ swc1 $f6, 0x38($sp) /* 079A4C 7F044F1C 46043202 */ mul.s $f8, $f6, $f4 /* 079A50 7F044F20 C7A6009C */ lwc1 $f6, 0x9c($sp) /* 079A54 7F044F24 E7A40034 */ swc1 $f4, 0x34($sp) /* 079A58 7F044F28 46065102 */ mul.s $f4, $f10, $f6 /* 079A5C 7F044F2C 46044001 */ sub.s $f0, $f8, $f4 /* 079A60 7F044F30 C7A800B4 */ lwc1 $f8, 0xb4($sp) /* 079A64 7F044F34 46085102 */ mul.s $f4, $f10, $f8 /* 079A68 7F044F38 C7A80034 */ lwc1 $f8, 0x34($sp) /* 079A6C 7F044F3C C7AA00BC */ lwc1 $f10, 0xbc($sp) /* 079A70 7F044F40 460E003E */ c.le.s $f0, $f14 /* 079A74 7F044F44 46085282 */ mul.s $f10, $f10, $f8 /* 079A78 7F044F48 45000013 */ bc1f .L7F044F98 /* 079A7C 7F044F4C 460A2081 */ sub.s $f2, $f4, $f10 /* 079A80 7F044F50 460E103E */ c.le.s $f2, $f14 /* 079A84 7F044F54 C7A80038 */ lwc1 $f8, 0x38($sp) /* 079A88 7F044F58 45020010 */ bc1fl .L7F044F9C /* 079A8C 7F044F5C 4600103E */ c.le.s $f2, $f0 /* 079A90 7F044F60 C7A200AC */ lwc1 $f2, 0xac($sp) /* 079A94 7F044F64 C7AC00A0 */ lwc1 $f12, 0xa0($sp) /* 079A98 7F044F68 C7AA00B0 */ lwc1 $f10, 0xb0($sp) /* 079A9C 7F044F6C 46081102 */ mul.s $f4, $f2, $f8 /* 079AA0 7F044F70 E7AE0078 */ swc1 $f14, 0x78($sp) /* 079AA4 7F044F74 460A6202 */ mul.s $f8, $f12, $f10 /* 079AA8 7F044F78 46082281 */ sub.s $f10, $f4, $f8 /* 079AAC 7F044F7C C7A400A8 */ lwc1 $f4, 0xa8($sp) /* 079AB0 7F044F80 460C2202 */ mul.s $f8, $f4, $f12 /* 079AB4 7F044F84 E7AA0074 */ swc1 $f10, 0x74($sp) /* 079AB8 7F044F88 46023282 */ mul.s $f10, $f6, $f2 /* 079ABC 7F044F8C 460A4101 */ sub.s $f4, $f8, $f10 /* 079AC0 7F044F90 10000022 */ b .L7F04501C /* 079AC4 7F044F94 E7A4007C */ swc1 $f4, 0x7c($sp) .L7F044F98: /* 079AC8 7F044F98 4600103E */ c.le.s $f2, $f0 .L7F044F9C: /* 079ACC 7F044F9C C7AC00A0 */ lwc1 $f12, 0xa0($sp) /* 079AD0 7F044FA0 C7AE0094 */ lwc1 $f14, 0x94($sp) /* 079AD4 7F044FA4 C7A400BC */ lwc1 $f4, 0xbc($sp) /* 079AD8 7F044FA8 45000010 */ bc1f .L7F044FEC /* 079ADC 7F044FAC C7A60098 */ lwc1 $f6, 0x98($sp) /* 079AE0 7F044FB0 C7A60098 */ lwc1 $f6, 0x98($sp) /* 079AE4 7F044FB4 C7AE0094 */ lwc1 $f14, 0x94($sp) /* 079AE8 7F044FB8 C7AA00A4 */ lwc1 $f10, 0xa4($sp) /* 079AEC 7F044FBC 46066202 */ mul.s $f8, $f12, $f6 /* 079AF0 7F044FC0 E7A00078 */ swc1 $f0, 0x78($sp) /* 079AF4 7F044FC4 460A7102 */ mul.s $f4, $f14, $f10 /* 079AF8 7F044FC8 C7AA009C */ lwc1 $f10, 0x9c($sp) /* 079AFC 7F044FCC 46044181 */ sub.s $f6, $f8, $f4 /* 079B00 7F044FD0 460E5202 */ mul.s $f8, $f10, $f14 /* 079B04 7F044FD4 C7A40090 */ lwc1 $f4, 0x90($sp) /* 079B08 7F044FD8 E7A60074 */ swc1 $f6, 0x74($sp) /* 079B0C 7F044FDC 460C2182 */ mul.s $f6, $f4, $f12 /* 079B10 7F044FE0 46064281 */ sub.s $f10, $f8, $f6 /* 079B14 7F044FE4 1000000D */ b .L7F04501C /* 079B18 7F044FE8 E7AA007C */ swc1 $f10, 0x7c($sp) .L7F044FEC: /* 079B1C 7F044FEC 46047202 */ mul.s $f8, $f14, $f4 /* 079B20 7F044FF0 C7AC00B8 */ lwc1 $f12, 0xb8($sp) /* 079B24 7F044FF4 E7A20078 */ swc1 $f2, 0x78($sp) /* 079B28 7F044FF8 46066282 */ mul.s $f10, $f12, $f6 /* 079B2C 7F044FFC C7A60090 */ lwc1 $f6, 0x90($sp) /* 079B30 7F045000 460A4101 */ sub.s $f4, $f8, $f10 /* 079B34 7F045004 460C3202 */ mul.s $f8, $f6, $f12 /* 079B38 7F045008 C7AA00B4 */ lwc1 $f10, 0xb4($sp) /* 079B3C 7F04500C E7A40074 */ swc1 $f4, 0x74($sp) /* 079B40 7F045010 460E5102 */ mul.s $f4, $f10, $f14 /* 079B44 7F045014 46044181 */ sub.s $f6, $f8, $f4 /* 079B48 7F045018 E7A6007C */ swc1 $f6, 0x7c($sp) .L7F04501C: /* 079B4C 7F04501C 0FC15FAB */ jal sinf /* 079B50 7F045020 C60C00A0 */ lwc1 $f12, 0xa0($s0) /* 079B54 7F045024 44805000 */ mtc1 $zero, $f10 /* 079B58 7F045028 E7A00068 */ swc1 $f0, 0x68($sp) /* 079B5C 7F04502C E7AA006C */ swc1 $f10, 0x6c($sp) /* 079B60 7F045030 0FC15FA8 */ jal cosf /* 079B64 7F045034 C60C00A0 */ lwc1 $f12, 0xa0($s0) /* 079B68 7F045038 26040018 */ addiu $a0, $s0, 0x18 /* 079B6C 7F04503C E7A00070 */ swc1 $f0, 0x70($sp) /* 079B70 7F045040 0FC15FF4 */ jal matrix_4x4_set_identity /* 079B74 7F045044 AFA40058 */ sw $a0, 0x58($sp) /* 079B78 7F045048 C7A80074 */ lwc1 $f8, 0x74($sp) /* 079B7C 7F04504C 8FA50058 */ lw $a1, 0x58($sp) /* 079B80 7F045050 E6080028 */ swc1 $f8, 0x28($s0) /* 079B84 7F045054 C7A40078 */ lwc1 $f4, 0x78($sp) /* 079B88 7F045058 C6100028 */ lwc1 $f16, 0x28($s0) /* 079B8C 7F04505C E604002C */ swc1 $f4, 0x2c($s0) /* 079B90 7F045060 C7A6007C */ lwc1 $f6, 0x7c($sp) /* 079B94 7F045064 C60E002C */ lwc1 $f14, 0x2c($s0) /* 079B98 7F045068 E6060030 */ swc1 $f6, 0x30($s0) /* 079B9C 7F04506C C7AA0070 */ lwc1 $f10, 0x70($sp) /* 079BA0 7F045070 C7A4006C */ lwc1 $f4, 0x6c($sp) /* 079BA4 7F045074 C6000030 */ lwc1 $f0, 0x30($s0) /* 079BA8 7F045078 460A7202 */ mul.s $f8, $f14, $f10 /* 079BAC 7F04507C 00000000 */ nop /* 079BB0 7F045080 46002182 */ mul.s $f6, $f4, $f0 /* 079BB4 7F045084 46064281 */ sub.s $f10, $f8, $f6 /* 079BB8 7F045088 E60A0018 */ swc1 $f10, 0x18($s0) /* 079BBC 7F04508C C7A40068 */ lwc1 $f4, 0x68($sp) /* 079BC0 7F045090 C7A60070 */ lwc1 $f6, 0x70($sp) /* 079BC4 7F045094 46040202 */ mul.s $f8, $f0, $f4 /* 079BC8 7F045098 00000000 */ nop /* 079BCC 7F04509C 46103282 */ mul.s $f10, $f6, $f16 /* 079BD0 7F0450A0 460A4101 */ sub.s $f4, $f8, $f10 /* 079BD4 7F0450A4 E604001C */ swc1 $f4, 0x1c($s0) /* 079BD8 7F0450A8 C7A6006C */ lwc1 $f6, 0x6c($sp) /* 079BDC 7F0450AC C7AA0068 */ lwc1 $f10, 0x68($sp) /* 079BE0 7F0450B0 46068202 */ mul.s $f8, $f16, $f6 /* 079BE4 7F0450B4 00000000 */ nop /* 079BE8 7F0450B8 460E5102 */ mul.s $f4, $f10, $f14 /* 079BEC 7F0450BC C60A001C */ lwc1 $f10, 0x1c($s0) /* 079BF0 7F0450C0 46044181 */ sub.s $f6, $f8, $f4 /* 079BF4 7F0450C4 E6060020 */ swc1 $f6, 0x20($s0) /* 079BF8 7F0450C8 E7AA0048 */ swc1 $f10, 0x48($sp) /* 079BFC 7F0450CC C7A80048 */ lwc1 $f8, 0x48($sp) /* 079C00 7F0450D0 C6020020 */ lwc1 $f2, 0x20($s0) /* 079C04 7F0450D4 C6120018 */ lwc1 $f18, 0x18($s0) /* 079C08 7F0450D8 46004102 */ mul.s $f4, $f8, $f0 /* 079C0C 7F0450DC 00000000 */ nop /* 079C10 7F0450E0 46027182 */ mul.s $f6, $f14, $f2 /* 079C14 7F0450E4 46062281 */ sub.s $f10, $f4, $f6 /* 079C18 7F0450E8 46101202 */ mul.s $f8, $f2, $f16 /* 079C1C 7F0450EC 00000000 */ nop /* 079C20 7F0450F0 46120102 */ mul.s $f4, $f0, $f18 /* 079C24 7F0450F4 E60A0038 */ swc1 $f10, 0x38($s0) /* 079C28 7F0450F8 460E9282 */ mul.s $f10, $f18, $f14 /* 079C2C 7F0450FC 46044181 */ sub.s $f6, $f8, $f4 /* 079C30 7F045100 E606003C */ swc1 $f6, 0x3c($s0) /* 079C34 7F045104 C7A80048 */ lwc1 $f8, 0x48($sp) /* 079C38 7F045108 46088102 */ mul.s $f4, $f16, $f8 /* 079C3C 7F04510C 46045181 */ sub.s $f6, $f10, $f4 /* 079C40 7F045110 E6060040 */ swc1 $f6, 0x40($s0) /* 079C44 7F045114 8FAF0154 */ lw $t7, 0x154($sp) /* 079C48 7F045118 C5EC0014 */ lwc1 $f12, 0x14($t7) /* 079C4C 7F04511C 0FC1629F */ jal matrix_scalar_multiply /* 079C50 7F045120 AFA50058 */ sw $a1, 0x58($sp) /* 079C54 7F045124 8FA40058 */ lw $a0, 0x58($sp) /* 079C58 7F045128 8FA50148 */ lw $a1, 0x148($sp) /* 079C5C 7F04512C 0FC16106 */ jal matrix_4x4_transform_vector /* 079C60 7F045130 27A60124 */ addiu $a2, $sp, 0x124 /* 079C64 7F045134 0FC0FA19 */ jal sub_GAME_7F03E864 /* 079C68 7F045138 8FA400C0 */ lw $a0, 0xc0($sp) /* 079C6C 7F04513C 8FB80154 */ lw $t8, 0x154($sp) /* 079C70 7F045140 C7A80134 */ lwc1 $f8, 0x134($sp) /* 079C74 7F045144 C70A0014 */ lwc1 $f10, 0x14($t8) /* 079C78 7F045148 460A0102 */ mul.s $f4, $f0, $f10 /* 079C7C 7F04514C C7AA0128 */ lwc1 $f10, 0x128($sp) /* 079C80 7F045150 46044181 */ sub.s $f6, $f8, $f4 /* 079C84 7F045154 460A3081 */ sub.s $f2, $f6, $f10 /* 079C88 7F045158 E622000C */ swc1 $f2, 0xc($s1) /* 079C8C 7F04515C 10000019 */ b .L7F0451C4 /* 079C90 7F045160 E602005C */ swc1 $f2, 0x5c($s0) .L7F045164: /* 079C94 7F045164 C60C00A0 */ lwc1 $f12, 0xa0($s0) /* 079C98 7F045168 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 079C9C 7F04516C AFA40058 */ sw $a0, 0x58($sp) /* 079CA0 7F045170 8FB90154 */ lw $t9, 0x154($sp) /* 079CA4 7F045174 8FA50058 */ lw $a1, 0x58($sp) /* 079CA8 7F045178 0FC1629F */ jal matrix_scalar_multiply /* 079CAC 7F04517C C72C0014 */ lwc1 $f12, 0x14($t9) /* 079CB0 7F045180 8E240014 */ lw $a0, 0x14($s1) /* 079CB4 7F045184 8E250008 */ lw $a1, 8($s1) /* 079CB8 7F045188 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 079CBC 7F04518C 8E260010 */ lw $a2, 0x10($s1) /* 079CC0 7F045190 E7A0005C */ swc1 $f0, 0x5c($sp) /* 079CC4 7F045194 0FC0FA19 */ jal sub_GAME_7F03E864 /* 079CC8 7F045198 8FA400C0 */ lw $a0, 0xc0($sp) /* 079CCC 7F04519C 8FA80148 */ lw $t0, 0x148($sp) /* 079CD0 7F0451A0 8FA90154 */ lw $t1, 0x154($sp) /* 079CD4 7F0451A4 C5080004 */ lwc1 $f8, 4($t0) /* 079CD8 7F0451A8 C5260014 */ lwc1 $f6, 0x14($t1) /* 079CDC 7F0451AC 46004100 */ add.s $f4, $f8, $f0 /* 079CE0 7F0451B0 C7A8005C */ lwc1 $f8, 0x5c($sp) /* 079CE4 7F0451B4 46062282 */ mul.s $f10, $f4, $f6 /* 079CE8 7F0451B8 460A4081 */ sub.s $f2, $f8, $f10 /* 079CEC 7F0451BC E622000C */ swc1 $f2, 0xc($s1) /* 079CF0 7F0451C0 E602005C */ swc1 $f2, 0x5c($s0) .L7F0451C4: /* 079CF4 7F0451C4 8FBF0024 */ lw $ra, 0x24($sp) /* 079CF8 7F0451C8 8FA20108 */ lw $v0, 0x108($sp) /* 079CFC 7F0451CC 8FB0001C */ lw $s0, 0x1c($sp) /* 079D00 7F0451D0 8FB10020 */ lw $s1, 0x20($sp) /* 079D04 7F0451D4 03E00008 */ jr $ra /* 079D08 7F0451D8 27BD0158 */ addiu $sp, $sp, 0x158 ) #endif #ifdef NONMATCHING void sub_GAME_7F0451DC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0451DC /* 079D0C 7F0451DC 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 079D10 7F0451E0 AFBF0014 */ sw $ra, 0x14($sp) /* 079D14 7F0451E4 AFA5001C */ sw $a1, 0x1c($sp) /* 079D18 7F0451E8 AFA60020 */ sw $a2, 0x20($sp) /* 079D1C 7F0451EC AFA70024 */ sw $a3, 0x24($sp) /* 079D20 7F0451F0 0FC225E6 */ jal get_curplayer_positiondata /* 079D24 7F0451F4 AFA40018 */ sw $a0, 0x18($sp) /* 079D28 7F0451F8 8FA40018 */ lw $a0, 0x18($sp) /* 079D2C 7F0451FC C4460008 */ lwc1 $f6, 8($v0) /* 079D30 7F045200 C44A000C */ lwc1 $f10, 0xc($v0) /* 079D34 7F045204 C4840000 */ lwc1 $f4, ($a0) /* 079D38 7F045208 C4880004 */ lwc1 $f8, 4($a0) /* 079D3C 7F04520C C4520010 */ lwc1 $f18, 0x10($v0) /* 079D40 7F045210 46062001 */ sub.s $f0, $f4, $f6 /* 079D44 7F045214 C4900008 */ lwc1 $f16, 8($a0) /* 079D48 7F045218 460A4081 */ sub.s $f2, $f8, $f10 /* 079D4C 7F04521C 46000102 */ mul.s $f4, $f0, $f0 /* 079D50 7F045220 46128381 */ sub.s $f14, $f16, $f18 /* 079D54 7F045224 46021182 */ mul.s $f6, $f2, $f2 /* 079D58 7F045228 46062200 */ add.s $f8, $f4, $f6 /* 079D5C 7F04522C 460E7282 */ mul.s $f10, $f14, $f14 /* 079D60 7F045230 0C007DF8 */ jal sqrtf /* 079D64 7F045234 460A4300 */ add.s $f12, $f8, $f10 /* 079D68 7F045238 C7AC0020 */ lwc1 $f12, 0x20($sp) /* 079D6C 7F04523C C7A2001C */ lwc1 $f2, 0x1c($sp) /* 079D70 7F045240 8FBF0014 */ lw $ra, 0x14($sp) /* 079D74 7F045244 4600603C */ c.lt.s $f12, $f0 /* 079D78 7F045248 00000000 */ nop /* 079D7C 7F04524C 45020004 */ bc1fl .L7F045260 /* 079D80 7F045250 4602003C */ c.lt.s $f0, $f2 /* 079D84 7F045254 1000001C */ b .L7F0452C8 /* 079D88 7F045258 240300FF */ li $v1, 255 /* 079D8C 7F04525C 4602003C */ c.lt.s $f0, $f2 .L7F045260: /* 079D90 7F045260 C7AE0024 */ lwc1 $f14, 0x24($sp) /* 079D94 7F045264 C7B00024 */ lwc1 $f16, 0x24($sp) /* 079D98 7F045268 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 079D9C 7F04526C 4502000A */ bc1fl .L7F045298 /* 079DA0 7F045270 44815000 */ mtc1 $at, $f10 /* 079DA4 7F045274 3C01437F */ li $at, 0x437F0000 # 255.000000 /* 079DA8 7F045278 44819000 */ mtc1 $at, $f18 /* 079DAC 7F04527C 00000000 */ nop /* 079DB0 7F045280 46128102 */ mul.s $f4, $f16, $f18 /* 079DB4 7F045284 4600218D */ trunc.w.s $f6, $f4 /* 079DB8 7F045288 44033000 */ mfc1 $v1, $f6 /* 079DBC 7F04528C 1000000F */ b .L7F0452CC /* 079DC0 7F045290 00601025 */ move $v0, $v1 /* 079DC4 7F045294 44815000 */ mtc1 $at, $f10 .L7F045298: /* 079DC8 7F045298 46020201 */ sub.s $f8, $f0, $f2 /* 079DCC 7F04529C 3C01437F */ li $at, 0x437F0000 # 255.000000 /* 079DD0 7F0452A0 460E5401 */ sub.s $f16, $f10, $f14 /* 079DD4 7F0452A4 46026101 */ sub.s $f4, $f12, $f2 /* 079DD8 7F0452A8 46104482 */ mul.s $f18, $f8, $f16 /* 079DDC 7F0452AC 44814000 */ mtc1 $at, $f8 /* 079DE0 7F0452B0 46049183 */ div.s $f6, $f18, $f4 /* 079DE4 7F0452B4 460E3280 */ add.s $f10, $f6, $f14 /* 079DE8 7F0452B8 46085402 */ mul.s $f16, $f10, $f8 /* 079DEC 7F0452BC 4600848D */ trunc.w.s $f18, $f16 /* 079DF0 7F0452C0 44039000 */ mfc1 $v1, $f18 /* 079DF4 7F0452C4 00000000 */ nop .L7F0452C8: /* 079DF8 7F0452C8 00601025 */ move $v0, $v1 .L7F0452CC: /* 079DFC 7F0452CC 03E00008 */ jr $ra /* 079E00 7F0452D0 27BD0018 */ addiu $sp, $sp, 0x18 ) #endif #ifdef NONMATCHING void object_interaction(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata glabel rocket_initial_gravity_modifier .word 0x3e8e38e4 /*0.27777779*/ glabel D_80052A9C .word 0x3c360b61 /*0.011111111*/ glabel D_80052AA0 .word 0x3d8f5c29 /*0.07*/ glabel prop_projectile_gravity_modifier .word 0x3e8e38e4 /*0.27777779*/ glabel D_80052AA8 .word 0x400e38e4 /*2.2222223*/ glabel D_80052AAC .word 0x46d9038c /*27777.773*/ glabel D_80052AB0 .word 0x3f8ccccd /*1.1*/ glabel D_80052AB4 .word 0x3f666666 /*0.89999998*/ glabel D_80052AB8 .word 0x3f666666 /*0.89999998*/ glabel D_80052ABC .word 0x3dcccccd /*0.1*/ glabel D_80052AC0 .word 0xbdcccccd /*-0.1*/ glabel D_80052AC4 .word 0xbdcccccd /*-0.1*/ glabel D_80052AC8 .word 0x40c90fdb /*6.2831855*/ glabel D_80052ACC .word 0x40c90fdb /*6.2831855*/ glabel D_80052AD0 .word 0x40490fdb /*3.1415927*/ glabel D_80052AD4 .word 0x3f490fdb /*0.78539819*/ glabel D_80052AD8 .word 0xbf490fdb /*-0.78539819*/ glabel D_80052ADC .word 0x40c90fdb /*6.2831855*/ glabel D_80052AE0 .word 0x3a2b92a6 /*0.00065449846*/ glabel D_80052AE4 .word 0x3a2b92a6 /*0.00065449846*/ glabel D_80052AE8 .word 0x40c90fdb /*6.2831855*/ glabel D_80052AEC .word 0x37433637 /*0.000011635529*/ glabel D_80052AF0 .word 0x40c90fdb /*6.2831855*/ glabel D_80052AF4 .word 0x3a3702d4 /*0.00069813174*/ glabel D_80052AF8 .word 0x36c33637 /*0.0000058177643*/ glabel D_80052AFC .word 0x39b702d4 /*0.00034906587*/ glabel D_80052B00 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B04 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B08 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B0C .word 0x40490fdb /*3.1415927*/ glabel D_80052B10 .word 0x3f9c61ab /*1.2217306*/ glabel D_80052B14 .word 0xbf9c61ab /*-1.2217306*/ glabel D_80052B18 .word 0xc0490fdb /*-3.1415927*/ glabel D_80052B1C .word 0x40490fdb /*3.1415927*/ glabel D_80052B20 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B24 .word 0x3f4ccccd /*0.80000001*/ glabel D_80052B28 .word 0xc0490fdb /*-3.1415927*/ glabel D_80052B2C .word 0x40490fdb /*3.1415927*/ glabel D_80052B30 .word 0x3a64c389 /*0.00087266468*/ glabel D_80052B34 .word 0x3a64c389 /*0.00087266468*/ glabel D_80052B38 .word 0x40490fdb /*3.1415927*/ glabel D_80052B3C .word 0x3f1930a7 /*0.59839863*/ glabel D_80052B40 .word 0x3c236719 /*0.0099733109*/ glabel D_80052B44 .word 0x3f7d70a4 /*0.99000001*/ glabel D_80052B48 .word 0x38d1b717 /*0.000099999997*/ glabel D_80052B4C .word 0x3964c389 /*0.00021816617*/ glabel D_80052B50 .word 0x3bd67750 /*0.0065449849*/ glabel D_80052B54 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B58 .word 0x3964c389 /*0.00021816617*/ glabel D_80052B5C .word 0xb964c389 /*-0.00021816617*/ glabel D_80052B60 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B64 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B68 .word 0x3e99999a /*0.30000001*/ glabel D_80052B6C .word 0x3fc90fdb /*1.5707964*/ glabel D_80052B70 .word 0x3fc90fdb /*1.5707964*/ glabel D_80052B74 .word 0x3e23d70a /*0.16*/ glabel D_80052B78 .word 0x461c4000 /*10000.0*/ glabel D_80052B7C .word 0x453b8000 /*3000.0*/ glabel D_80052B80 .word 0x3f19999a /*0.60000002*/ glabel D_80052B84 .word 0x3e99999a /*0.30000001*/ glabel D_80052B88 .word 0xbdcccccd /*-0.1*/ glabel D_80052B8C .word 0x3e4ccccd /*0.2*/ glabel D_80052B90 .word 0x453b8000 /*3000.0*/ glabel D_80052B94 .word 0x453b8000 /*3000.0*/ .text glabel object_interaction /* 079E04 7F0452D4 27BDF958 */ addiu $sp, $sp, -0x6a8 /* 079E08 7F0452D8 AFBF0054 */ sw $ra, 0x54($sp) /* 079E0C 7F0452DC AFB40050 */ sw $s4, 0x50($sp) /* 079E10 7F0452E0 AFB3004C */ sw $s3, 0x4c($sp) /* 079E14 7F0452E4 AFB20048 */ sw $s2, 0x48($sp) /* 079E18 7F0452E8 AFB10044 */ sw $s1, 0x44($sp) /* 079E1C 7F0452EC AFB00040 */ sw $s0, 0x40($sp) /* 079E20 7F0452F0 F7B60038 */ sdc1 $f22, 0x38($sp) /* 079E24 7F0452F4 F7B40030 */ sdc1 $f20, 0x30($sp) /* 079E28 7F0452F8 8C910004 */ lw $s1, 4($a0) /* 079E2C 7F0452FC 4480B000 */ mtc1 $zero, $f22 /* 079E30 7F045300 00809825 */ move $s3, $a0 /* 079E34 7F045304 8E340014 */ lw $s4, 0x14($s1) /* 079E38 7F045308 AFA00690 */ sw $zero, 0x690($sp) /* 079E3C 7F04530C AFA00680 */ sw $zero, 0x680($sp) /* 079E40 7F045310 0FC26919 */ jal get_num_players /* 079E44 7F045314 E7B6067C */ swc1 $f22, 0x67c($sp) /* 079E48 7F045318 240C0001 */ li $t4, 1 /* 079E4C 7F04531C AFA20674 */ sw $v0, 0x674($sp) /* 079E50 7F045320 AFAC0670 */ sw $t4, 0x670($sp) /* 079E54 7F045324 8E230064 */ lw $v1, 0x64($s1) /* 079E58 7F045328 306E0004 */ andi $t6, $v1, 4 /* 079E5C 7F04532C 11C00009 */ beqz $t6, .L7F045354 /* 079E60 7F045330 306F0008 */ andi $t7, $v1, 8 /* 079E64 7F045334 92260002 */ lbu $a2, 2($s1) /* 079E68 7F045338 02202025 */ move $a0, $s1 /* 079E6C 7F04533C 00002825 */ move $a1, $zero /* 079E70 7F045340 30CD0004 */ andi $t5, $a2, 4 /* 079E74 7F045344 0FC10366 */ jal sub_GAME_7F040D98 /* 079E78 7F045348 01A03025 */ move $a2, $t5 /* 079E7C 7F04534C 100011F8 */ b .L7F049B30 /* 079E80 7F045350 24020001 */ li $v0, 1 .L7F045354: /* 079E84 7F045354 11E00005 */ beqz $t7, .L7F04536C /* 079E88 7F045358 30680080 */ andi $t0, $v1, 0x80 /* 079E8C 7F04535C 2401FFF7 */ li $at, -9 /* 079E90 7F045360 0061C024 */ and $t8, $v1, $at /* 079E94 7F045364 1000000B */ b .L7F045394 /* 079E98 7F045368 AE380064 */ sw $t8, 0x64($s1) .L7F04536C: /* 079E9C 7F04536C 5100000A */ beql $t0, $zero, .L7F045398 /* 079EA0 7F045370 24010001 */ li $at, 1 /* 079EA4 7F045374 92690001 */ lbu $t1, 1($s3) /* 079EA8 7F045378 24020003 */ li $v0, 3 /* 079EAC 7F04537C 312BFFFD */ andi $t3, $t1, 0xfffd /* 079EB0 7F045380 A26B0001 */ sb $t3, 1($s3) /* 079EB4 7F045384 8E390064 */ lw $t9, 0x64($s1) /* 079EB8 7F045388 372A0008 */ ori $t2, $t9, 8 /* 079EBC 7F04538C 100011E8 */ b .L7F049B30 /* 079EC0 7F045390 AE2A0064 */ sw $t2, 0x64($s1) .L7F045394: /* 079EC4 7F045394 24010001 */ li $at, 1 .L7F045398: /* 079EC8 7F045398 14410003 */ bne $v0, $at, .L7F0453A8 /* 079ECC 7F04539C 240C0001 */ li $t4, 1 /* 079ED0 7F0453A0 10000015 */ b .L7F0453F8 /* 079ED4 7F0453A4 AFAC0678 */ sw $t4, 0x678($sp) .L7F0453A8: /* 079ED8 7F0453A8 0FC26C54 */ jal get_cur_playernum /* 079EDC 7F0453AC 00000000 */ nop /* 079EE0 7F0453B0 0FC26D36 */ jal sub_GAME_7F09B4D8 /* 079EE4 7F0453B4 00402025 */ move $a0, $v0 /* 079EE8 7F0453B8 2C4E0001 */ sltiu $t6, $v0, 1 /* 079EEC 7F0453BC AFAE0678 */ sw $t6, 0x678($sp) /* 079EF0 7F0453C0 8E2D0064 */ lw $t5, 0x64($s1) /* 079EF4 7F0453C4 31AF0080 */ andi $t7, $t5, 0x80 /* 079EF8 7F0453C8 51E0000C */ beql $t7, $zero, .L7F0453FC /* 079EFC 7F0453CC 8FAB0678 */ lw $t3, 0x678($sp) /* 079F00 7F0453D0 8E22006C */ lw $v0, 0x6c($s1) /* 079F04 7F0453D4 3C188008 */ lui $t8, %hi(pPlayer) /* 079F08 7F0453D8 8C430088 */ lw $v1, 0x88($v0) /* 079F0C 7F0453DC 50600007 */ beql $v1, $zero, .L7F0453FC /* 079F10 7F0453E0 8FAB0678 */ lw $t3, 0x678($sp) /* 079F14 7F0453E4 8F18A0B0 */ lw $t8, %lo(pPlayer)($t8) /* 079F18 7F0453E8 8F0800A8 */ lw $t0, 0xa8($t8) /* 079F1C 7F0453EC 01034826 */ xor $t1, $t0, $v1 /* 079F20 7F0453F0 2D290001 */ sltiu $t1, $t1, 1 /* 079F24 7F0453F4 AFA90678 */ sw $t1, 0x678($sp) .L7F0453F8: /* 079F28 7F0453F8 8FAB0678 */ lw $t3, 0x678($sp) .L7F0453FC: /* 079F2C 7F0453FC 51600B8C */ beql $t3, $zero, .L7F048230 /* 079F30 7F045400 92220003 */ lbu $v0, 3($s1) /* 079F34 7F045404 8E390064 */ lw $t9, 0x64($s1) /* 079F38 7F045408 332A0080 */ andi $t2, $t9, 0x80 /* 079F3C 7F04540C 51400483 */ beql $t2, $zero, .L7F04661C /* 079F40 7F045410 8FAD0690 */ lw $t5, 0x690($sp) /* 079F44 7F045414 8E30006C */ lw $s0, 0x6c($s1) /* 079F48 7F045418 3C0E8005 */ lui $t6, %hi(clock_timer) /* 079F4C 7F04541C 8DCE8374 */ lw $t6, %lo(clock_timer)($t6) /* 079F50 7F045420 8E0C00E0 */ lw $t4, 0xe0($s0) /* 079F54 7F045424 018E6821 */ addu $t5, $t4, $t6 /* 079F58 7F045428 29A10961 */ slti $at, $t5, 0x961 /* 079F5C 7F04542C 14200004 */ bnez $at, .L7F045440 /* 079F60 7F045430 AE0D00E0 */ sw $t5, 0xe0($s0) /* 079F64 7F045434 8E380064 */ lw $t8, 0x64($s1) /* 079F68 7F045438 37080004 */ ori $t0, $t8, 4 /* 079F6C 7F04543C AE280064 */ sw $t0, 0x64($s1) .L7F045440: /* 079F70 7F045440 8E090000 */ lw $t1, ($s0) /* 079F74 7F045444 312B0100 */ andi $t3, $t1, 0x100 /* 079F78 7F045448 5160002F */ beql $t3, $zero, .L7F045508 /* 079F7C 7F04544C C6260058 */ lwc1 $f6, 0x58($s1) /* 079F80 7F045450 92390003 */ lbu $t9, 3($s1) /* 079F84 7F045454 24010008 */ li $at, 8 /* 079F88 7F045458 24120001 */ li $s2, 1 /* 079F8C 7F04545C 57210008 */ bnel $t9, $at, .L7F045480 /* 079F90 7F045460 8E040088 */ lw $a0, 0x88($s0) /* 079F94 7F045464 AFB10648 */ sw $s1, 0x648($sp) /* 079F98 7F045468 822A0080 */ lb $t2, 0x80($s1) /* 079F9C 7F04546C 24010056 */ li $at, 86 /* 079FA0 7F045470 55410003 */ bnel $t2, $at, .L7F045480 /* 079FA4 7F045474 8E040088 */ lw $a0, 0x88($s0) /* 079FA8 7F045478 00009025 */ move $s2, $zero /* 079FAC 7F04547C 8E040088 */ lw $a0, 0x88($s0) .L7F045480: /* 079FB0 7F045480 50800004 */ beql $a0, $zero, .L7F045494 /* 079FB4 7F045484 02202025 */ move $a0, $s1 /* 079FB8 7F045488 0FC0F416 */ jal sub_GAME_7F03D058 /* 079FBC 7F04548C 00002825 */ move $a1, $zero /* 079FC0 7F045490 02202025 */ move $a0, $s1 .L7F045494: /* 079FC4 7F045494 260500D4 */ addiu $a1, $s0, 0xd4 /* 079FC8 7F045498 27A6064C */ addiu $a2, $sp, 0x64c /* 079FCC 7F04549C 27A70658 */ addiu $a3, $sp, 0x658 /* 079FD0 7F0454A0 AFA00010 */ sw $zero, 0x10($sp) /* 079FD4 7F0454A4 0FC10BAD */ jal sub_GAME_7F042EB4 /* 079FD8 7F0454A8 AFB20014 */ sw $s2, 0x14($sp) /* 079FDC 7F0454AC AFA20664 */ sw $v0, 0x664($sp) /* 079FE0 7F0454B0 8E040088 */ lw $a0, 0x88($s0) /* 079FE4 7F0454B4 50800004 */ beql $a0, $zero, .L7F0454C8 /* 079FE8 7F0454B8 8FAC0664 */ lw $t4, 0x664($sp) /* 079FEC 7F0454BC 0FC0F416 */ jal sub_GAME_7F03D058 /* 079FF0 7F0454C0 24050001 */ li $a1, 1 /* 079FF4 7F0454C4 8FAC0664 */ lw $t4, 0x664($sp) .L7F0454C8: /* 079FF8 7F0454C8 24010001 */ li $at, 1 /* 079FFC 7F0454CC 8FA20648 */ lw $v0, 0x648($sp) /* 07A000 7F0454D0 51810009 */ beql $t4, $at, .L7F0454F8 /* 07A004 7F0454D4 8E0D0000 */ lw $t5, ($s0) /* 07A008 7F0454D8 50400007 */ beql $v0, $zero, .L7F0454F8 /* 07A00C 7F0454DC 8E0D0000 */ lw $t5, ($s0) /* 07A010 7F0454E0 804E0080 */ lb $t6, 0x80($v0) /* 07A014 7F0454E4 24010056 */ li $at, 86 /* 07A018 7F0454E8 55C10003 */ bnel $t6, $at, .L7F0454F8 /* 07A01C 7F0454EC 8E0D0000 */ lw $t5, ($s0) /* 07A020 7F0454F0 A4400082 */ sh $zero, 0x82($v0) /* 07A024 7F0454F4 8E0D0000 */ lw $t5, ($s0) .L7F0454F8: /* 07A028 7F0454F8 2401FEFF */ li $at, -257 /* 07A02C 7F0454FC 01A17824 */ and $t7, $t5, $at /* 07A030 7F045500 AE0F0000 */ sw $t7, ($s0) /* 07A034 7F045504 C6260058 */ lwc1 $f6, 0x58($s1) .L7F045508: /* 07A038 7F045508 3C188005 */ lui $t8, %hi(clock_timer) /* 07A03C 7F04550C 3C013F80 */ lui $at, 0x3f80 /* 07A040 7F045510 E7A60694 */ swc1 $f6, 0x694($sp) /* 07A044 7F045514 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07A048 7F045518 E7AA0698 */ swc1 $f10, 0x698($sp) /* 07A04C 7F04551C C6240060 */ lwc1 $f4, 0x60($s1) /* 07A050 7F045520 E7A4069C */ swc1 $f4, 0x69c($sp) /* 07A054 7F045524 8E0200BC */ lw $v0, 0xbc($s0) /* 07A058 7F045528 58400005 */ blezl $v0, .L7F045540 /* 07A05C 7F04552C 8E29006C */ lw $t1, 0x6c($s1) /* 07A060 7F045530 8F188374 */ lw $t8, %lo(clock_timer)($t8) /* 07A064 7F045534 00584023 */ subu $t0, $v0, $t8 /* 07A068 7F045538 AE0800BC */ sw $t0, 0xbc($s0) /* 07A06C 7F04553C 8E29006C */ lw $t1, 0x6c($s1) .L7F045540: /* 07A070 7F045540 8D2B0000 */ lw $t3, ($t1) /* 07A074 7F045544 31790001 */ andi $t9, $t3, 1 /* 07A078 7F045548 53200351 */ beql $t9, $zero, .L7F046290 /* 07A07C 7F04554C C6000060 */ lwc1 $f0, 0x60($s0) /* 07A080 7F045550 0FC1001E */ jal sub_GAME_7F040078 /* 07A084 7F045554 02202025 */ move $a0, $s1 /* 07A088 7F045558 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07A08C 7F04555C 44814000 */ mtc1 $at, $f8 /* 07A090 7F045560 3C078005 */ lui $a3, %hi(clock_timer) /* 07A094 7F045564 24E78374 */ addiu $a3, %lo(clock_timer) # addiu $a3, $a3, -0x7c8c /* 07A098 7F045568 AFA20640 */ sw $v0, 0x640($sp) /* 07A09C 7F04556C AFA00610 */ sw $zero, 0x610($sp) /* 07A0A0 7F045570 AFA0060C */ sw $zero, 0x60c($sp) /* 07A0A4 7F045574 AFA00604 */ sw $zero, 0x604($sp) /* 07A0A8 7F045578 E7A80638 */ swc1 $f8, 0x638($sp) /* 07A0AC 7F04557C 8E0A00A8 */ lw $t2, 0xa8($s0) /* 07A0B0 7F045580 8CEC0000 */ lw $t4, ($a3) /* 07A0B4 7F045584 C634005C */ lwc1 $f20, 0x5c($s1) /* 07A0B8 7F045588 00009025 */ move $s2, $zero /* 07A0BC 7F04558C 014C7021 */ addu $t6, $t2, $t4 /* 07A0C0 7F045590 AE0E00A8 */ sw $t6, 0xa8($s0) /* 07A0C4 7F045594 C6260018 */ lwc1 $f6, 0x18($s1) /* 07A0C8 7F045598 3C018005 */ lui $at, %hi(rocket_initial_gravity_modifier) /* 07A0CC 7F04559C E7A6062C */ swc1 $f6, 0x62c($sp) /* 07A0D0 7F0455A0 C62A001C */ lwc1 $f10, 0x1c($s1) /* 07A0D4 7F0455A4 E7AA0630 */ swc1 $f10, 0x630($sp) /* 07A0D8 7F0455A8 C6240020 */ lwc1 $f4, 0x20($s1) /* 07A0DC 7F0455AC E7A40634 */ swc1 $f4, 0x634($sp) /* 07A0E0 7F0455B0 8E030000 */ lw $v1, ($s0) /* 07A0E4 7F0455B4 306D0020 */ andi $t5, $v1, 0x20 /* 07A0E8 7F0455B8 11A0004B */ beqz $t5, .L7F0456E8 /* 07A0EC 7F0455BC 00000000 */ nop /* 07A0F0 7F0455C0 C4322A98 */ lwc1 $f18, %lo(rocket_initial_gravity_modifier)($at) /* 07A0F4 7F0455C4 C600001C */ lwc1 $f0, 0x1c($s0) /* 07A0F8 7F0455C8 3C028005 */ lui $v0, %hi(global_timer_delta) /* 07A0FC 7F0455CC 24428378 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07A100 7F0455D0 4612003C */ c.lt.s $f0, $f18 /* 07A104 7F0455D4 00000000 */ nop /* 07A108 7F0455D8 4502001C */ bc1fl .L7F04564C /* 07A10C 7F0455DC C60000B0 */ lwc1 $f0, 0xb0($s0) /* 07A110 7F0455E0 C6080014 */ lwc1 $f8, 0x14($s0) /* 07A114 7F0455E4 C4460000 */ lwc1 $f6, ($v0) /* 07A118 7F0455E8 C60400B4 */ lwc1 $f4, 0xb4($s0) /* 07A11C 7F0455EC 3C018005 */ lui $at, %hi(D_80052A9C) /* 07A120 7F0455F0 46064282 */ mul.s $f10, $f8, $f6 /* 07A124 7F0455F4 460A2200 */ add.s $f8, $f4, $f10 /* 07A128 7F0455F8 E60800B4 */ swc1 $f8, 0xb4($s0) /* 07A12C 7F0455FC C4440000 */ lwc1 $f4, ($v0) /* 07A130 7F045600 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07A134 7F045604 C60800B0 */ lwc1 $f8, 0xb0($s0) /* 07A138 7F045608 46043282 */ mul.s $f10, $f6, $f4 /* 07A13C 7F04560C 460A4180 */ add.s $f6, $f8, $f10 /* 07A140 7F045610 E60600B0 */ swc1 $f6, 0xb0($s0) /* 07A144 7F045614 C4480000 */ lwc1 $f8, ($v0) /* 07A148 7F045618 C4242A9C */ lwc1 $f4, %lo(D_80052A9C)($at) /* 07A14C 7F04561C 46082282 */ mul.s $f10, $f4, $f8 /* 07A150 7F045620 460A0180 */ add.s $f6, $f0, $f10 /* 07A154 7F045624 E606001C */ swc1 $f6, 0x1c($s0) /* 07A158 7F045628 C604001C */ lwc1 $f4, 0x1c($s0) /* 07A15C 7F04562C 4604903C */ c.lt.s $f18, $f4 /* 07A160 7F045630 00000000 */ nop /* 07A164 7F045634 45000002 */ bc1f .L7F045640 /* 07A168 7F045638 00000000 */ nop /* 07A16C 7F04563C E612001C */ swc1 $f18, 0x1c($s0) .L7F045640: /* 07A170 7F045640 10000029 */ b .L7F0456E8 /* 07A174 7F045644 8E030000 */ lw $v1, ($s0) /* 07A178 7F045648 C60000B0 */ lwc1 $f0, 0xb0($s0) .L7F04564C: /* 07A17C 7F04564C C7A80698 */ lwc1 $f8, 0x698($sp) /* 07A180 7F045650 4600403C */ c.lt.s $f8, $f0 /* 07A184 7F045654 00000000 */ nop /* 07A188 7F045658 45000019 */ bc1f .L7F0456C0 /* 07A18C 7F04565C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07A190 7F045660 C4268378 */ lwc1 $f6, %lo(global_timer_delta)($at) /* 07A194 7F045664 C60A0014 */ lwc1 $f10, 0x14($s0) /* 07A198 7F045668 C60800B4 */ lwc1 $f8, 0xb4($s0) /* 07A19C 7F04566C 46065102 */ mul.s $f4, $f10, $f6 /* 07A1A0 7F045670 46044280 */ add.s $f10, $f8, $f4 /* 07A1A4 7F045674 E60A00B4 */ swc1 $f10, 0xb4($s0) /* 07A1A8 7F045678 C4288378 */ lwc1 $f8, %lo(global_timer_delta)($at) /* 07A1AC 7F04567C C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07A1B0 7F045680 3C018005 */ lui $at, %hi(D_80052AA0) /* 07A1B4 7F045684 46083102 */ mul.s $f4, $f6, $f8 /* 07A1B8 7F045688 46040280 */ add.s $f10, $f0, $f4 /* 07A1BC 7F04568C E60A00B0 */ swc1 $f10, 0xb0($s0) /* 07A1C0 7F045690 C7A80698 */ lwc1 $f8, 0x698($sp) /* 07A1C4 7F045694 C60600B0 */ lwc1 $f6, 0xb0($s0) /* 07A1C8 7F045698 C42A2AA0 */ lwc1 $f10, %lo(D_80052AA0)($at) /* 07A1CC 7F04569C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07A1D0 7F0456A0 46083101 */ sub.s $f4, $f6, $f8 /* 07A1D4 7F0456A4 46045182 */ mul.s $f6, $f10, $f4 /* 07A1D8 7F0456A8 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07A1DC 7F0456AC 460A3102 */ mul.s $f4, $f6, $f10 /* 07A1E0 7F0456B0 46044180 */ add.s $f6, $f8, $f4 /* 07A1E4 7F0456B4 E7A60698 */ swc1 $f6, 0x698($sp) /* 07A1E8 7F0456B8 1000000B */ b .L7F0456E8 /* 07A1EC 7F0456BC 8E030000 */ lw $v1, ($s0) .L7F0456C0: /* 07A1F0 7F0456C0 E7A00698 */ swc1 $f0, 0x698($sp) /* 07A1F4 7F0456C4 8E0F0000 */ lw $t7, ($s0) /* 07A1F8 7F0456C8 2401FFDF */ li $at, -33 /* 07A1FC 7F0456CC C60A00B4 */ lwc1 $f10, 0xb4($s0) /* 07A200 7F0456D0 01E1C024 */ and $t8, $t7, $at /* 07A204 7F0456D4 AE180000 */ sw $t8, ($s0) /* 07A208 7F0456D8 37030010 */ ori $v1, $t8, 0x10 /* 07A20C 7F0456DC E616001C */ swc1 $f22, 0x1c($s0) /* 07A210 7F0456E0 AE030000 */ sw $v1, ($s0) /* 07A214 7F0456E4 E60A0008 */ swc1 $f10, 8($s0) .L7F0456E8: /* 07A218 7F0456E8 3C028005 */ lui $v0, %hi(global_timer_delta) /* 07A21C 7F0456EC 24428378 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07A220 7F0456F0 3C018005 */ lui $at, %hi(prop_projectile_gravity_modifier) /* 07A224 7F0456F4 306B0010 */ andi $t3, $v1, 0x10 /* 07A228 7F0456F8 C4322AA4 */ lwc1 $f18, %lo(prop_projectile_gravity_modifier)($at) /* 07A22C 7F0456FC C4420000 */ lwc1 $f2, ($v0) /* 07A230 7F045700 C600001C */ lwc1 $f0, 0x1c($s0) /* 07A234 7F045704 15600015 */ bnez $t3, .L7F04575C /* 07A238 7F045708 C6100014 */ lwc1 $f16, 0x14($s0) /* 07A23C 7F04570C 46008100 */ add.s $f4, $f16, $f0 /* 07A240 7F045710 C6080008 */ lwc1 $f8, 8($s0) /* 07A244 7F045714 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A248 7F045718 46022182 */ mul.s $f6, $f4, $f2 /* 07A24C 7F04571C 46064280 */ add.s $f10, $f8, $f6 /* 07A250 7F045720 E60A0008 */ swc1 $f10, 8($s0) /* 07A254 7F045724 C4420000 */ lwc1 $f2, ($v0) /* 07A258 7F045728 C60C0008 */ lwc1 $f12, 8($s0) /* 07A25C 7F04572C 44815000 */ mtc1 $at, $f10 /* 07A260 7F045730 46029102 */ mul.s $f4, $f18, $f2 /* 07A264 7F045734 46046381 */ sub.s $f14, $f12, $f4 /* 07A268 7F045738 460E6200 */ add.s $f8, $f12, $f14 /* 07A26C 7F04573C 46081182 */ mul.s $f6, $f2, $f8 /* 07A270 7F045740 C7A80698 */ lwc1 $f8, 0x698($sp) /* 07A274 7F045744 460A3102 */ mul.s $f4, $f6, $f10 /* 07A278 7F045748 46044180 */ add.s $f6, $f8, $f4 /* 07A27C 7F04574C E7A60698 */ swc1 $f6, 0x698($sp) /* 07A280 7F045750 E60E0008 */ swc1 $f14, 8($s0) /* 07A284 7F045754 1000000C */ b .L7F045788 /* 07A288 7F045758 C4420000 */ lwc1 $f2, ($v0) .L7F04575C: /* 07A28C 7F04575C 46008200 */ add.s $f8, $f16, $f0 /* 07A290 7F045760 C60A0008 */ lwc1 $f10, 8($s0) /* 07A294 7F045764 46024102 */ mul.s $f4, $f8, $f2 /* 07A298 7F045768 46045180 */ add.s $f6, $f10, $f4 /* 07A29C 7F04576C E6060008 */ swc1 $f6, 8($s0) /* 07A2A0 7F045770 C60A0008 */ lwc1 $f10, 8($s0) /* 07A2A4 7F045774 C4420000 */ lwc1 $f2, ($v0) /* 07A2A8 7F045778 C7A80698 */ lwc1 $f8, 0x698($sp) /* 07A2AC 7F04577C 46025102 */ mul.s $f4, $f10, $f2 /* 07A2B0 7F045780 46044180 */ add.s $f6, $f8, $f4 /* 07A2B4 7F045784 E7A60698 */ swc1 $f6, 0x698($sp) .L7F045788: /* 07A2B8 7F045788 C6080010 */ lwc1 $f8, 0x10($s0) /* 07A2BC 7F04578C C60A0004 */ lwc1 $f10, 4($s0) /* 07A2C0 7F045790 26240018 */ addiu $a0, $s1, 0x18 /* 07A2C4 7F045794 46024102 */ mul.s $f4, $f8, $f2 /* 07A2C8 7F045798 C6080018 */ lwc1 $f8, 0x18($s0) /* 07A2CC 7F04579C 26050020 */ addiu $a1, $s0, 0x20 /* 07A2D0 7F0457A0 46045180 */ add.s $f6, $f10, $f4 /* 07A2D4 7F0457A4 E6060004 */ swc1 $f6, 4($s0) /* 07A2D8 7F0457A8 C44A0000 */ lwc1 $f10, ($v0) /* 07A2DC 7F0457AC C606000C */ lwc1 $f6, 0xc($s0) /* 07A2E0 7F0457B0 460A4102 */ mul.s $f4, $f8, $f10 /* 07A2E4 7F0457B4 46043200 */ add.s $f8, $f6, $f4 /* 07A2E8 7F0457B8 C6060004 */ lwc1 $f6, 4($s0) /* 07A2EC 7F0457BC E608000C */ swc1 $f8, 0xc($s0) /* 07A2F0 7F0457C0 C4420000 */ lwc1 $f2, ($v0) /* 07A2F4 7F0457C4 C7AA0694 */ lwc1 $f10, 0x694($sp) /* 07A2F8 7F0457C8 8CE60000 */ lw $a2, ($a3) /* 07A2FC 7F0457CC 46023102 */ mul.s $f4, $f6, $f2 /* 07A300 7F0457D0 C7A6069C */ lwc1 $f6, 0x69c($sp) /* 07A304 7F0457D4 46045200 */ add.s $f8, $f10, $f4 /* 07A308 7F0457D8 E7A80694 */ swc1 $f8, 0x694($sp) /* 07A30C 7F0457DC C60A000C */ lwc1 $f10, 0xc($s0) /* 07A310 7F0457E0 AFA5006C */ sw $a1, 0x6c($sp) /* 07A314 7F0457E4 AFA40070 */ sw $a0, 0x70($sp) /* 07A318 7F0457E8 46025102 */ mul.s $f4, $f10, $f2 /* 07A31C 7F0457EC 46043200 */ add.s $f8, $f6, $f4 /* 07A320 7F0457F0 0FC15F7E */ jal sub_GAME_7F057DF8 /* 07A324 7F0457F4 E7A8069C */ swc1 $f8, 0x69c($sp) /* 07A328 7F0457F8 92390003 */ lbu $t9, 3($s1) /* 07A32C 7F0457FC 24010008 */ li $at, 8 /* 07A330 7F045800 57210013 */ bnel $t9, $at, .L7F045850 /* 07A334 7F045804 8E040088 */ lw $a0, 0x88($s0) /* 07A338 7F045808 82220080 */ lb $v0, 0x80($s1) /* 07A33C 7F04580C 2401001D */ li $at, 29 /* 07A340 7F045810 1041000D */ beq $v0, $at, .L7F045848 /* 07A344 7F045814 2401001B */ li $at, 27 /* 07A348 7F045818 1041000B */ beq $v0, $at, .L7F045848 /* 07A34C 7F04581C 2401001C */ li $at, 28 /* 07A350 7F045820 10410009 */ beq $v0, $at, .L7F045848 /* 07A354 7F045824 24010021 */ li $at, 33 /* 07A358 7F045828 10410007 */ beq $v0, $at, .L7F045848 /* 07A35C 7F04582C 2401002F */ li $at, 47 /* 07A360 7F045830 10410005 */ beq $v0, $at, .L7F045848 /* 07A364 7F045834 24010030 */ li $at, 48 /* 07A368 7F045838 10410003 */ beq $v0, $at, .L7F045848 /* 07A36C 7F04583C 24010022 */ li $at, 34 /* 07A370 7F045840 54410003 */ bnel $v0, $at, .L7F045850 /* 07A374 7F045844 8E040088 */ lw $a0, 0x88($s0) .L7F045848: /* 07A378 7F045848 24120001 */ li $s2, 1 /* 07A37C 7F04584C 8E040088 */ lw $a0, 0x88($s0) .L7F045850: /* 07A380 7F045850 50800004 */ beql $a0, $zero, .L7F045864 /* 07A384 7F045854 02202025 */ move $a0, $s1 /* 07A388 7F045858 0FC0F416 */ jal sub_GAME_7F03D058 /* 07A38C 7F04585C 00002825 */ move $a1, $zero /* 07A390 7F045860 02202025 */ move $a0, $s1 .L7F045864: /* 07A394 7F045864 27A50694 */ addiu $a1, $sp, 0x694 /* 07A398 7F045868 27A60614 */ addiu $a2, $sp, 0x614 /* 07A39C 7F04586C 27A70620 */ addiu $a3, $sp, 0x620 /* 07A3A0 7F045870 AFB20010 */ sw $s2, 0x10($sp) /* 07A3A4 7F045874 0FC10BAD */ jal sub_GAME_7F042EB4 /* 07A3A8 7F045878 AFA00014 */ sw $zero, 0x14($sp) /* 07A3AC 7F04587C AFA20664 */ sw $v0, 0x664($sp) /* 07A3B0 7F045880 8E040088 */ lw $a0, 0x88($s0) /* 07A3B4 7F045884 50800004 */ beql $a0, $zero, .L7F045898 /* 07A3B8 7F045888 8FAC0664 */ lw $t4, 0x664($sp) /* 07A3BC 7F04588C 0FC0F416 */ jal sub_GAME_7F03D058 /* 07A3C0 7F045890 24050001 */ li $a1, 1 /* 07A3C4 7F045894 8FAC0664 */ lw $t4, 0x664($sp) .L7F045898: /* 07A3C8 7F045898 240A0001 */ li $t2, 1 /* 07A3CC 7F04589C 24010002 */ li $at, 2 /* 07A3D0 7F0458A0 15810042 */ bne $t4, $at, .L7F0459AC /* 07A3D4 7F0458A4 AFAA0690 */ sw $t2, 0x690($sp) /* 07A3D8 7F0458A8 3C038003 */ lui $v1, %hi(D_80030B0C) /* 07A3DC 7F0458AC 8C630B0C */ lw $v1, %lo(D_80030B0C)($v1) /* 07A3E0 7F0458B0 10600007 */ beqz $v1, .L7F0458D0 /* 07A3E4 7F0458B4 00000000 */ nop /* 07A3E8 7F0458B8 90620000 */ lbu $v0, ($v1) /* 07A3EC 7F0458BC 24010003 */ li $at, 3 /* 07A3F0 7F0458C0 1041003A */ beq $v0, $at, .L7F0459AC /* 07A3F4 7F0458C4 24010006 */ li $at, 6 /* 07A3F8 7F0458C8 50410039 */ beql $v0, $at, .L7F0459B0 /* 07A3FC 7F0458CC 8FAC0604 */ lw $t4, 0x604($sp) .L7F0458D0: /* 07A400 7F0458D0 10600007 */ beqz $v1, .L7F0458F0 /* 07A404 7F0458D4 00002025 */ move $a0, $zero /* 07A408 7F0458D8 8C620004 */ lw $v0, 4($v1) /* 07A40C 7F0458DC 8C4E0064 */ lw $t6, 0x64($v0) /* 07A410 7F0458E0 31CD0080 */ andi $t5, $t6, 0x80 /* 07A414 7F0458E4 11A00002 */ beqz $t5, .L7F0458F0 /* 07A418 7F0458E8 00000000 */ nop /* 07A41C 7F0458EC 24040001 */ li $a0, 1 .L7F0458F0: /* 07A420 7F0458F0 5480002F */ bnezl $a0, .L7F0459B0 /* 07A424 7F0458F4 8FAC0604 */ lw $t4, 0x604($sp) /* 07A428 7F0458F8 0FC0FEDC */ jal sub_GAME_7F03FB70 /* 07A42C 7F0458FC 02002025 */ move $a0, $s0 /* 07A430 7F045900 8E2F0064 */ lw $t7, 0x64($s1) /* 07A434 7F045904 2401FF7F */ li $at, -129 /* 07A438 7F045908 AE20006C */ sw $zero, 0x6c($s1) /* 07A43C 7F04590C 01E1C024 */ and $t8, $t7, $at /* 07A440 7F045910 AE380064 */ sw $t8, 0x64($s1) /* 07A444 7F045914 92620001 */ lbu $v0, 1($s3) /* 07A448 7F045918 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07A44C 7F04591C 240500F1 */ li $a1, 241 /* 07A450 7F045920 30480008 */ andi $t0, $v0, 8 /* 07A454 7F045924 11000003 */ beqz $t0, .L7F045934 /* 07A458 7F045928 00003025 */ move $a2, $zero /* 07A45C 7F04592C 34490010 */ ori $t1, $v0, 0x10 /* 07A460 7F045930 A2690001 */ sb $t1, 1($s3) .L7F045934: /* 07A464 7F045934 0C002382 */ jal play_sfx_a1 /* 07A468 7F045938 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07A46C 7F04593C 00402025 */ move $a0, $v0 /* 07A470 7F045940 0FC14E84 */ jal sub_GAME_7F053A10 /* 07A474 7F045944 26650008 */ addiu $a1, $s3, 8 /* 07A478 7F045948 8E6B0014 */ lw $t3, 0x14($s3) /* 07A47C 7F04594C 82240080 */ lb $a0, 0x80($s1) /* 07A480 7F045950 0FC15DFA */ jal sub_GAME_7F0577E8 /* 07A484 7F045954 91650003 */ lbu $a1, 3($t3) /* 07A488 7F045958 02202025 */ move $a0, $s1 /* 07A48C 7F04595C 27A50614 */ addiu $a1, $sp, 0x614 /* 07A490 7F045960 8E660014 */ lw $a2, 0x14($s3) /* 07A494 7F045964 0FC10E6E */ jal sub_GAME_7F0439B8 /* 07A498 7F045968 27A70620 */ addiu $a3, $sp, 0x620 /* 07A49C 7F04596C 3C058003 */ lui $a1, %hi(D_80030B0C) /* 07A4A0 7F045970 8CA50B0C */ lw $a1, %lo(D_80030B0C)($a1) /* 07A4A4 7F045974 02602025 */ move $a0, $s3 /* 07A4A8 7F045978 3C068007 */ lui $a2, %hi(objinst) /* 07A4AC 7F04597C 10A0000B */ beqz $a1, .L7F0459AC /* 07A4B0 7F045980 3C078007 */ lui $a3, %hi(dword_CODE_bss_80075B74) /* 07A4B4 7F045984 8E720014 */ lw $s2, 0x14($s3) /* 07A4B8 7F045988 8CC65B70 */ lw $a2, %lo(objinst)($a2) /* 07A4BC 7F04598C 0FC10E9B */ jal sub_GAME_7F043A6C /* 07A4C0 7F045990 8CE75B74 */ lw $a3, %lo(dword_CODE_bss_80075B74)($a3) /* 07A4C4 7F045994 10400005 */ beqz $v0, .L7F0459AC /* 07A4C8 7F045998 24190005 */ li $t9, 5 /* 07A4CC 7F04599C AE720014 */ sw $s2, 0x14($s3) /* 07A4D0 7F0459A0 240A0001 */ li $t2, 1 /* 07A4D4 7F0459A4 AFB90680 */ sw $t9, 0x680($sp) /* 07A4D8 7F0459A8 AFAA0604 */ sw $t2, 0x604($sp) .L7F0459AC: /* 07A4DC 7F0459AC 8FAC0604 */ lw $t4, 0x604($sp) .L7F0459B0: /* 07A4E0 7F0459B0 158000EC */ bnez $t4, .L7F045D64 /* 07A4E4 7F0459B4 3C128003 */ lui $s2, %hi(D_80030B0C) /* 07A4E8 7F0459B8 8E520B0C */ lw $s2, %lo(D_80030B0C)($s2) /* 07A4EC 7F0459BC 524000EA */ beql $s2, $zero, .L7F045D68 /* 07A4F0 7F0459C0 8FAC0604 */ lw $t4, 0x604($sp) /* 07A4F4 7F0459C4 922E0003 */ lbu $t6, 3($s1) /* 07A4F8 7F0459C8 24010008 */ li $at, 8 /* 07A4FC 7F0459CC 55C100E6 */ bnel $t6, $at, .L7F045D68 /* 07A500 7F0459D0 8FAC0604 */ lw $t4, 0x604($sp) /* 07A504 7F0459D4 82220080 */ lb $v0, 0x80($s1) /* 07A508 7F0459D8 24010003 */ li $at, 3 /* 07A50C 7F0459DC 544100C3 */ bnel $v0, $at, .L7F045CEC /* 07A510 7F0459E0 24010056 */ li $at, 86 /* 07A514 7F0459E4 92420000 */ lbu $v0, ($s2) /* 07A518 7F0459E8 24010003 */ li $at, 3 /* 07A51C 7F0459EC 1041000D */ beq $v0, $at, .L7F045A24 /* 07A520 7F0459F0 24010006 */ li $at, 6 /* 07A524 7F0459F4 544100DC */ bnel $v0, $at, .L7F045D68 /* 07A528 7F0459F8 8FAC0604 */ lw $t4, 0x604($sp) /* 07A52C 7F0459FC 8E4D0004 */ lw $t5, 4($s2) /* 07A530 7F045A00 51A000D9 */ beql $t5, $zero, .L7F045D68 /* 07A534 7F045A04 8FAC0604 */ lw $t4, 0x604($sp) /* 07A538 7F045A08 0FC26C57 */ jal sub_GAME_7F09B15C /* 07A53C 7F045A0C 02402025 */ move $a0, $s2 /* 07A540 7F045A10 0FC26C54 */ jal get_cur_playernum /* 07A544 7F045A14 00409025 */ move $s2, $v0 /* 07A548 7F045A18 105200D2 */ beq $v0, $s2, .L7F045D64 /* 07A54C 7F045A1C 3C128003 */ lui $s2, %hi(D_80030B0C) /* 07A550 7F045A20 8E520B0C */ lw $s2, %lo(D_80030B0C)($s2) .L7F045A24: /* 07A554 7F045A24 8E22006C */ lw $v0, 0x6c($s1) /* 07A558 7F045A28 8E440004 */ lw $a0, 4($s2) /* 07A55C 7F045A2C 8C4F0000 */ lw $t7, ($v0) /* 07A560 7F045A30 31F80001 */ andi $t8, $t7, 1 /* 07A564 7F045A34 530000CC */ beql $t8, $zero, .L7F045D68 /* 07A568 7F045A38 8FAC0604 */ lw $t4, 0x604($sp) /* 07A56C 7F045A3C 8C480090 */ lw $t0, 0x90($v0) /* 07A570 7F045A40 5D0000C9 */ bgtzl $t0, .L7F045D68 /* 07A574 7F045A44 8FAC0604 */ lw $t4, 0x604($sp) /* 07A578 7F045A48 8E290064 */ lw $t1, 0x64($s1) /* 07A57C 7F045A4C 3C068007 */ lui $a2, %hi(flt_CODE_bss_80075B78) /* 07A580 7F045A50 24C65B78 */ addiu $a2, %lo(flt_CODE_bss_80075B78) # addiu $a2, $a2, 0x5b78 /* 07A584 7F045A54 312B0020 */ andi $t3, $t1, 0x20 /* 07A588 7F045A58 116000C2 */ beqz $t3, .L7F045D64 /* 07A58C 7F045A5C 3C058003 */ lui $a1, %hi(bodypartshot) /* 07A590 7F045A60 82270080 */ lb $a3, 0x80($s1) /* 07A594 7F045A64 24190001 */ li $t9, 1 /* 07A598 7F045A68 AFB90010 */ sw $t9, 0x10($sp) /* 07A59C 7F045A6C 0FC09C9F */ jal handles_shot_actors /* 07A5A0 7F045A70 8CA50B10 */ lw $a1, %lo(bodypartshot)($a1) /* 07A5A4 7F045A74 104000BB */ beqz $v0, .L7F045D64 /* 07A5A8 7F045A78 240A0001 */ li $t2, 1 /* 07A5AC 7F045A7C AFAA0604 */ sw $t2, 0x604($sp) /* 07A5B0 7F045A80 C610008C */ lwc1 $f16, 0x8c($s0) /* 07A5B4 7F045A84 C7AA0620 */ lwc1 $f10, 0x620($sp) /* 07A5B8 7F045A88 4610B03C */ c.lt.s $f22, $f16 /* 07A5BC 7F045A8C 00000000 */ nop /* 07A5C0 7F045A90 4502001D */ bc1fl .L7F045B08 /* 07A5C4 7F045A94 8E0C0000 */ lw $t4, ($s0) /* 07A5C8 7F045A98 C6020004 */ lwc1 $f2, 4($s0) /* 07A5CC 7F045A9C C60C0008 */ lwc1 $f12, 8($s0) /* 07A5D0 7F045AA0 C7A40624 */ lwc1 $f4, 0x624($sp) /* 07A5D4 7F045AA4 460A1182 */ mul.s $f6, $f2, $f10 /* 07A5D8 7F045AA8 C600000C */ lwc1 $f0, 0xc($s0) /* 07A5DC 7F045AAC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07A5E0 7F045AB0 46046202 */ mul.s $f8, $f12, $f4 /* 07A5E4 7F045AB4 46083100 */ add.s $f4, $f6, $f8 /* 07A5E8 7F045AB8 C7A60628 */ lwc1 $f6, 0x628($sp) /* 07A5EC 7F045ABC 46003202 */ mul.s $f8, $f6, $f0 /* 07A5F0 7F045AC0 44813000 */ mtc1 $at, $f6 /* 07A5F4 7F045AC4 46044380 */ add.s $f14, $f8, $f4 /* 07A5F8 7F045AC8 46068200 */ add.s $f8, $f16, $f6 /* 07A5FC 7F045ACC 46004107 */ neg.s $f4, $f8 /* 07A600 7F045AD0 46047382 */ mul.s $f14, $f14, $f4 /* 07A604 7F045AD4 00000000 */ nop /* 07A608 7F045AD8 460A7182 */ mul.s $f6, $f14, $f10 /* 07A60C 7F045ADC 46061200 */ add.s $f8, $f2, $f6 /* 07A610 7F045AE0 E6080004 */ swc1 $f8, 4($s0) /* 07A614 7F045AE4 C7A40624 */ lwc1 $f4, 0x624($sp) /* 07A618 7F045AE8 46047282 */ mul.s $f10, $f14, $f4 /* 07A61C 7F045AEC 460A6180 */ add.s $f6, $f12, $f10 /* 07A620 7F045AF0 E6060008 */ swc1 $f6, 8($s0) /* 07A624 7F045AF4 C7A80628 */ lwc1 $f8, 0x628($sp) /* 07A628 7F045AF8 46087102 */ mul.s $f4, $f14, $f8 /* 07A62C 7F045AFC 46040280 */ add.s $f10, $f0, $f4 /* 07A630 7F045B00 E60A000C */ swc1 $f10, 0xc($s0) /* 07A634 7F045B04 8E0C0000 */ lw $t4, ($s0) .L7F045B08: /* 07A638 7F045B08 318E0200 */ andi $t6, $t4, 0x200 /* 07A63C 7F045B0C 55C00004 */ bnezl $t6, .L7F045B20 /* 07A640 7F045B10 8E0D0090 */ lw $t5, 0x90($s0) /* 07A644 7F045B14 0FC15EB0 */ jal sub_GAME_7F057AC0 /* 07A648 7F045B18 8FA4006C */ lw $a0, 0x6c($sp) /* 07A64C 7F045B1C 8E0D0090 */ lw $t5, 0x90($s0) .L7F045B20: /* 07A650 7F045B20 3C058003 */ lui $a1, %hi(D_80030B0C) /* 07A654 7F045B24 2406FFFF */ li $a2, -1 /* 07A658 7F045B28 25AF0001 */ addiu $t7, $t5, 1 /* 07A65C 7F045B2C AE0F0090 */ sw $t7, 0x90($s0) /* 07A660 7F045B30 8CA50B0C */ lw $a1, %lo(D_80030B0C)($a1) /* 07A664 7F045B34 0FC19107 */ jal recall_joy2_hits_edit_detail_edit_flag /* 07A668 7F045B38 82240080 */ lb $a0, 0x80($s1) /* 07A66C 7F045B3C 3C188003 */ lui $t8, %hi(D_80030B0C) /* 07A670 7F045B40 8F180B0C */ lw $t8, %lo(D_80030B0C)($t8) /* 07A674 7F045B44 3C028003 */ lui $v0, %hi(bodypartshot) /* 07A678 7F045B48 93080001 */ lbu $t0, 1($t8) /* 07A67C 7F045B4C 31090002 */ andi $t1, $t0, 2 /* 07A680 7F045B50 51200085 */ beql $t1, $zero, .L7F045D68 /* 07A684 7F045B54 8FAC0604 */ lw $t4, 0x604($sp) /* 07A688 7F045B58 8C420B10 */ lw $v0, %lo(bodypartshot)($v0) /* 07A68C 7F045B5C 24010064 */ li $at, 100 /* 07A690 7F045B60 10410080 */ beq $v0, $at, .L7F045D64 /* 07A694 7F045B64 2401006E */ li $at, 110 /* 07A698 7F045B68 1041007E */ beq $v0, $at, .L7F045D64 /* 07A69C 7F045B6C 3C048007 */ lui $a0, %hi(objinst) /* 07A6A0 7F045B70 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) /* 07A6A4 7F045B74 8CA55B74 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07A6A8 7F045B78 8C845B70 */ lw $a0, %lo(objinst)($a0) /* 07A6AC 7F045B7C 0FC1B198 */ jal sub_GAME_7F06C660 /* 07A6B0 7F045B80 00003025 */ move $a2, $zero /* 07A6B4 7F045B84 C7A60614 */ lwc1 $f6, 0x614($sp) /* 07A6B8 7F045B88 C7A80618 */ lwc1 $f8, 0x618($sp) /* 07A6BC 7F045B8C C7A4061C */ lwc1 $f4, 0x61c($sp) /* 07A6C0 7F045B90 00409025 */ move $s2, $v0 /* 07A6C4 7F045B94 E7A605CC */ swc1 $f6, 0x5cc($sp) /* 07A6C8 7F045B98 E7A805D0 */ swc1 $f8, 0x5d0($sp) /* 07A6CC 7F045B9C 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07A6D0 7F045BA0 E7A405D4 */ swc1 $f4, 0x5d4($sp) /* 07A6D4 7F045BA4 00402025 */ move $a0, $v0 /* 07A6D8 7F045BA8 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07A6DC 7F045BAC 27A505CC */ addiu $a1, $sp, 0x5cc /* 07A6E0 7F045BB0 C7AA05CC */ lwc1 $f10, 0x5cc($sp) /* 07A6E4 7F045BB4 C6460030 */ lwc1 $f6, 0x30($s2) /* 07A6E8 7F045BB8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A6EC 7F045BBC 44810000 */ mtc1 $at, $f0 /* 07A6F0 7F045BC0 46065201 */ sub.s $f8, $f10, $f6 /* 07A6F4 7F045BC4 3C048007 */ lui $a0, %hi(objinst) /* 07A6F8 7F045BC8 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) /* 07A6FC 7F045BCC 8CA55B74 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07A700 7F045BD0 46004102 */ mul.s $f4, $f8, $f0 /* 07A704 7F045BD4 C7A805D0 */ lwc1 $f8, 0x5d0($sp) /* 07A708 7F045BD8 8C845B70 */ lw $a0, %lo(objinst)($a0) /* 07A70C 7F045BDC 46045180 */ add.s $f6, $f10, $f4 /* 07A710 7F045BE0 E7A605CC */ swc1 $f6, 0x5cc($sp) /* 07A714 7F045BE4 C64A0034 */ lwc1 $f10, 0x34($s2) /* 07A718 7F045BE8 460A4101 */ sub.s $f4, $f8, $f10 /* 07A71C 7F045BEC 46002182 */ mul.s $f6, $f4, $f0 /* 07A720 7F045BF0 C7A405D4 */ lwc1 $f4, 0x5d4($sp) /* 07A724 7F045BF4 46064280 */ add.s $f10, $f8, $f6 /* 07A728 7F045BF8 E7AA05D0 */ swc1 $f10, 0x5d0($sp) /* 07A72C 7F045BFC C6480038 */ lwc1 $f8, 0x38($s2) /* 07A730 7F045C00 46082181 */ sub.s $f6, $f4, $f8 /* 07A734 7F045C04 46003282 */ mul.s $f10, $f6, $f0 /* 07A738 7F045C08 460A2200 */ add.s $f8, $f4, $f10 /* 07A73C 7F045C0C 0FC1B3A4 */ jal getjointsize /* 07A740 7F045C10 E7A805D4 */ swc1 $f8, 0x5d4($sp) /* 07A744 7F045C14 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A748 7F045C18 44813000 */ mtc1 $at, $f6 /* 07A74C 7F045C1C 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B88) /* 07A750 7F045C20 C42A5B88 */ lwc1 $f10, %lo(flt_CODE_bss_80075B88)($at) /* 07A754 7F045C24 46060102 */ mul.s $f4, $f0, $f6 /* 07A758 7F045C28 C7A605CC */ lwc1 $f6, 0x5cc($sp) /* 07A75C 7F045C2C 3C048007 */ lui $a0, %hi(objinst) /* 07A760 7F045C30 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) /* 07A764 7F045C34 8CA55B74 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07A768 7F045C38 8C845B70 */ lw $a0, %lo(objinst)($a0) /* 07A76C 7F045C3C 460A2202 */ mul.s $f8, $f4, $f10 /* 07A770 7F045C40 46083101 */ sub.s $f4, $f6, $f8 /* 07A774 7F045C44 0FC1B3A4 */ jal getjointsize /* 07A778 7F045C48 E7A405CC */ swc1 $f4, 0x5cc($sp) /* 07A77C 7F045C4C 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A780 7F045C50 44815000 */ mtc1 $at, $f10 /* 07A784 7F045C54 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B8C) /* 07A788 7F045C58 C4285B8C */ lwc1 $f8, %lo(flt_CODE_bss_80075B8C)($at) /* 07A78C 7F045C5C 460A0182 */ mul.s $f6, $f0, $f10 /* 07A790 7F045C60 C7AA05D0 */ lwc1 $f10, 0x5d0($sp) /* 07A794 7F045C64 3C048007 */ lui $a0, %hi(objinst) /* 07A798 7F045C68 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) /* 07A79C 7F045C6C 8CA55B74 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07A7A0 7F045C70 8C845B70 */ lw $a0, %lo(objinst)($a0) /* 07A7A4 7F045C74 46083102 */ mul.s $f4, $f6, $f8 /* 07A7A8 7F045C78 46045181 */ sub.s $f6, $f10, $f4 /* 07A7AC 7F045C7C 0FC1B3A4 */ jal getjointsize /* 07A7B0 7F045C80 E7A605D0 */ swc1 $f6, 0x5d0($sp) /* 07A7B4 7F045C84 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A7B8 7F045C88 44814000 */ mtc1 $at, $f8 /* 07A7BC 7F045C8C 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B90) /* 07A7C0 7F045C90 C4245B90 */ lwc1 $f4, %lo(flt_CODE_bss_80075B90)($at) /* 07A7C4 7F045C94 46080282 */ mul.s $f10, $f0, $f8 /* 07A7C8 7F045C98 C7A805D4 */ lwc1 $f8, 0x5d4($sp) /* 07A7CC 7F045C9C 02402025 */ move $a0, $s2 /* 07A7D0 7F045CA0 27A5058C */ addiu $a1, $sp, 0x58c /* 07A7D4 7F045CA4 46045182 */ mul.s $f6, $f10, $f4 /* 07A7D8 7F045CA8 46064281 */ sub.s $f10, $f8, $f6 /* 07A7DC 7F045CAC 0FC16799 */ jal sub_GAME_7F059E64 /* 07A7E0 7F045CB0 E7AA05D4 */ swc1 $f10, 0x5d4($sp) /* 07A7E4 7F045CB4 27A4058C */ addiu $a0, $sp, 0x58c /* 07A7E8 7F045CB8 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07A7EC 7F045CBC 27A505CC */ addiu $a1, $sp, 0x5cc /* 07A7F0 7F045CC0 3C048007 */ lui $a0, %hi(objinst) /* 07A7F4 7F045CC4 3C058003 */ lui $a1, %hi(bodypartshot) /* 07A7F8 7F045CC8 3C068007 */ lui $a2, %hi(dword_CODE_bss_80075B74) /* 07A7FC 7F045CCC 8CC65B74 */ lw $a2, %lo(dword_CODE_bss_80075B74)($a2) /* 07A800 7F045CD0 8CA50B10 */ lw $a1, %lo(bodypartshot)($a1) /* 07A804 7F045CD4 8C845B70 */ lw $a0, %lo(objinst)($a0) /* 07A808 7F045CD8 0FC08877 */ jal sub_GAME_7F0221DC /* 07A80C 7F045CDC 27A705CC */ addiu $a3, $sp, 0x5cc /* 07A810 7F045CE0 10000021 */ b .L7F045D68 /* 07A814 7F045CE4 8FAC0604 */ lw $t4, 0x604($sp) /* 07A818 7F045CE8 24010056 */ li $at, 86 .L7F045CEC: /* 07A81C 7F045CEC 5441001E */ bnel $v0, $at, .L7F045D68 /* 07A820 7F045CF0 8FAC0604 */ lw $t4, 0x604($sp) /* 07A824 7F045CF4 92420000 */ lbu $v0, ($s2) /* 07A828 7F045CF8 240B0001 */ li $t3, 1 /* 07A82C 7F045CFC 24010003 */ li $at, 3 /* 07A830 7F045D00 14410008 */ bne $v0, $at, .L7F045D24 /* 07A834 7F045D04 AFAB0604 */ sw $t3, 0x604($sp) /* 07A838 7F045D08 8E440004 */ lw $a0, 4($s2) /* 07A83C 7F045D0C 26250058 */ addiu $a1, $s1, 0x58 /* 07A840 7F045D10 3C064000 */ lui $a2, 0x4000 /* 07A844 7F045D14 0FC09E01 */ jal sub_GAME_7F027804 /* 07A848 7F045D18 24070001 */ li $a3, 1 /* 07A84C 7F045D1C 10000011 */ b .L7F045D64 /* 07A850 7F045D20 A6200082 */ sh $zero, 0x82($s1) .L7F045D24: /* 07A854 7F045D24 24010001 */ li $at, 1 /* 07A858 7F045D28 10410004 */ beq $v0, $at, .L7F045D3C /* 07A85C 7F045D2C 3C0542C8 */ lui $a1, 0x42c8 /* 07A860 7F045D30 24010004 */ li $at, 4 /* 07A864 7F045D34 5441000B */ bnel $v0, $at, .L7F045D64 /* 07A868 7F045D38 A6200082 */ sh $zero, 0x82($s1) .L7F045D3C: /* 07A86C 7F045D3C 8E220064 */ lw $v0, 0x64($s1) /* 07A870 7F045D40 3C010006 */ lui $at, 6 /* 07A874 7F045D44 8E440004 */ lw $a0, 4($s2) /* 07A878 7F045D48 0041C824 */ and $t9, $v0, $at /* 07A87C 7F045D4C 00195442 */ srl $t2, $t9, 0x11 /* 07A880 7F045D50 AFAA0010 */ sw $t2, 0x10($sp) /* 07A884 7F045D54 26260058 */ addiu $a2, $s1, 0x58 /* 07A888 7F045D58 0FC13842 */ jal maybe_detonate_object /* 07A88C 7F045D5C 24070056 */ li $a3, 86 /* 07A890 7F045D60 A6200082 */ sh $zero, 0x82($s1) .L7F045D64: /* 07A894 7F045D64 8FAC0604 */ lw $t4, 0x604($sp) .L7F045D68: /* 07A898 7F045D68 5580010B */ bnezl $t4, .L7F046198 /* 07A89C 7F045D6C 8E2A0064 */ lw $t2, 0x64($s1) /* 07A8A0 7F045D70 8FAE0664 */ lw $t6, 0x664($sp) /* 07A8A4 7F045D74 55C00031 */ bnezl $t6, .L7F045E3C /* 07A8A8 7F045D78 8E0F0000 */ lw $t7, ($s0) /* 07A8AC 7F045D7C C610008C */ lwc1 $f16, 0x8c($s0) /* 07A8B0 7F045D80 C7A40620 */ lwc1 $f4, 0x620($sp) /* 07A8B4 7F045D84 4610B03C */ c.lt.s $f22, $f16 /* 07A8B8 7F045D88 00000000 */ nop /* 07A8BC 7F045D8C 4502002B */ bc1fl .L7F045E3C /* 07A8C0 7F045D90 8E0F0000 */ lw $t7, ($s0) /* 07A8C4 7F045D94 C6020004 */ lwc1 $f2, 4($s0) /* 07A8C8 7F045D98 C60C0008 */ lwc1 $f12, 8($s0) /* 07A8CC 7F045D9C C7A60624 */ lwc1 $f6, 0x624($sp) /* 07A8D0 7F045DA0 46041202 */ mul.s $f8, $f2, $f4 /* 07A8D4 7F045DA4 C600000C */ lwc1 $f0, 0xc($s0) /* 07A8D8 7F045DA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07A8DC 7F045DAC 46066282 */ mul.s $f10, $f12, $f6 /* 07A8E0 7F045DB0 4616603E */ c.le.s $f12, $f22 /* 07A8E4 7F045DB4 460A4180 */ add.s $f6, $f8, $f10 /* 07A8E8 7F045DB8 C7A80628 */ lwc1 $f8, 0x628($sp) /* 07A8EC 7F045DBC 46004282 */ mul.s $f10, $f8, $f0 /* 07A8F0 7F045DC0 44814000 */ mtc1 $at, $f8 /* 07A8F4 7F045DC4 46065380 */ add.s $f14, $f10, $f6 /* 07A8F8 7F045DC8 46088280 */ add.s $f10, $f16, $f8 /* 07A8FC 7F045DCC 46005187 */ neg.s $f6, $f10 /* 07A900 7F045DD0 46067382 */ mul.s $f14, $f14, $f6 /* 07A904 7F045DD4 00000000 */ nop /* 07A908 7F045DD8 46047202 */ mul.s $f8, $f14, $f4 /* 07A90C 7F045DDC 46081280 */ add.s $f10, $f2, $f8 /* 07A910 7F045DE0 E60A0004 */ swc1 $f10, 4($s0) /* 07A914 7F045DE4 C7A60624 */ lwc1 $f6, 0x624($sp) /* 07A918 7F045DE8 46067102 */ mul.s $f4, $f14, $f6 /* 07A91C 7F045DEC 46046200 */ add.s $f8, $f12, $f4 /* 07A920 7F045DF0 E6080008 */ swc1 $f8, 8($s0) /* 07A924 7F045DF4 C7AA0628 */ lwc1 $f10, 0x628($sp) /* 07A928 7F045DF8 460A7182 */ mul.s $f6, $f14, $f10 /* 07A92C 7F045DFC 46060100 */ add.s $f4, $f0, $f6 /* 07A930 7F045E00 4500000D */ bc1f .L7F045E38 /* 07A934 7F045E04 E604000C */ swc1 $f4, 0xc($s0) /* 07A938 7F045E08 C6080008 */ lwc1 $f8, 8($s0) /* 07A93C 7F045E0C 240D0001 */ li $t5, 1 /* 07A940 7F045E10 4608B03E */ c.le.s $f22, $f8 /* 07A944 7F045E14 00000000 */ nop /* 07A948 7F045E18 45030007 */ bc1tl .L7F045E38 /* 07A94C 7F045E1C AFAD060C */ sw $t5, 0x60c($sp) /* 07A950 7F045E20 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07A954 7F045E24 460AA03E */ c.le.s $f20, $f10 /* 07A958 7F045E28 00000000 */ nop /* 07A95C 7F045E2C 45020003 */ bc1fl .L7F045E3C /* 07A960 7F045E30 8E0F0000 */ lw $t7, ($s0) /* 07A964 7F045E34 AFAD060C */ sw $t5, 0x60c($sp) .L7F045E38: /* 07A968 7F045E38 8E0F0000 */ lw $t7, ($s0) .L7F045E3C: /* 07A96C 7F045E3C C7B4063C */ lwc1 $f20, 0x63c($sp) /* 07A970 7F045E40 31F80008 */ andi $t8, $t7, 8 /* 07A974 7F045E44 17000014 */ bnez $t8, .L7F045E98 /* 07A978 7F045E48 00000000 */ nop /* 07A97C 7F045E4C 8E640014 */ lw $a0, 0x14($s3) /* 07A980 7F045E50 8E650008 */ lw $a1, 8($s3) /* 07A984 7F045E54 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 07A988 7F045E58 8E660010 */ lw $a2, 0x10($s3) /* 07A98C 7F045E5C 46000506 */ mov.s $f20, $f0 /* 07A990 7F045E60 8FA40640 */ lw $a0, 0x640($sp) /* 07A994 7F045E64 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 07A998 7F045E68 8FA50070 */ lw $a1, 0x70($sp) /* 07A99C 7F045E6C 4600A101 */ sub.s $f4, $f20, $f0 /* 07A9A0 7F045E70 E7A00638 */ swc1 $f0, 0x638($sp) /* 07A9A4 7F045E74 C666000C */ lwc1 $f6, 0xc($s3) /* 07A9A8 7F045E78 00004025 */ move $t0, $zero /* 07A9AC 7F045E7C 4604303C */ c.lt.s $f6, $f4 /* 07A9B0 7F045E80 00000000 */ nop /* 07A9B4 7F045E84 45000002 */ bc1f .L7F045E90 /* 07A9B8 7F045E88 00000000 */ nop /* 07A9BC 7F045E8C 24080001 */ li $t0, 1 .L7F045E90: /* 07A9C0 7F045E90 10000001 */ b .L7F045E98 /* 07A9C4 7F045E94 AFA80610 */ sw $t0, 0x610($sp) .L7F045E98: /* 07A9C8 7F045E98 8FA90610 */ lw $t1, 0x610($sp) /* 07A9CC 7F045E9C 8FAB0664 */ lw $t3, 0x664($sp) /* 07A9D0 7F045EA0 55200004 */ bnezl $t1, .L7F045EB4 /* 07A9D4 7F045EA4 8E190000 */ lw $t9, ($s0) /* 07A9D8 7F045EA8 5560000B */ bnezl $t3, .L7F045ED8 /* 07A9DC 7F045EAC 8FAD0610 */ lw $t5, 0x610($sp) /* 07A9E0 7F045EB0 8E190000 */ lw $t9, ($s0) .L7F045EB4: /* 07A9E4 7F045EB4 332A0200 */ andi $t2, $t9, 0x200 /* 07A9E8 7F045EB8 55400004 */ bnezl $t2, .L7F045ECC /* 07A9EC 7F045EBC 8E0C0090 */ lw $t4, 0x90($s0) /* 07A9F0 7F045EC0 0FC15EB0 */ jal sub_GAME_7F057AC0 /* 07A9F4 7F045EC4 8FA4006C */ lw $a0, 0x6c($sp) /* 07A9F8 7F045EC8 8E0C0090 */ lw $t4, 0x90($s0) .L7F045ECC: /* 07A9FC 7F045ECC 258E0001 */ addiu $t6, $t4, 1 /* 07AA00 7F045ED0 AE0E0090 */ sw $t6, 0x90($s0) /* 07AA04 7F045ED4 8FAD0610 */ lw $t5, 0x610($sp) .L7F045ED8: /* 07AA08 7F045ED8 8FAF060C */ lw $t7, 0x60c($sp) /* 07AA0C 7F045EDC 8FB80610 */ lw $t8, 0x610($sp) /* 07AA10 7F045EE0 15A00003 */ bnez $t5, .L7F045EF0 /* 07AA14 7F045EE4 00000000 */ nop /* 07AA18 7F045EE8 51E0003A */ beql $t7, $zero, .L7F045FD4 /* 07AA1C 7F045EEC 922C0003 */ lbu $t4, 3($s1) .L7F045EF0: /* 07AA20 7F045EF0 13000009 */ beqz $t8, .L7F045F18 /* 07AA24 7F045EF4 C7A40618 */ lwc1 $f4, 0x618($sp) /* 07AA28 7F045EF8 C7A80638 */ lwc1 $f8, 0x638($sp) /* 07AA2C 7F045EFC 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07AA30 7F045F00 44813000 */ mtc1 $at, $f6 /* 07AA34 7F045F04 4608A281 */ sub.s $f10, $f20, $f8 /* 07AA38 7F045F08 46065000 */ add.s $f0, $f10, $f6 /* 07AA3C 7F045F0C E660000C */ swc1 $f0, 0xc($s3) /* 07AA40 7F045F10 10000008 */ b .L7F045F34 /* 07AA44 7F045F14 E620005C */ swc1 $f0, 0x5c($s1) .L7F045F18: /* 07AA48 7F045F18 C7A80638 */ lwc1 $f8, 0x638($sp) /* 07AA4C 7F045F1C 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07AA50 7F045F20 44813000 */ mtc1 $at, $f6 /* 07AA54 7F045F24 46082281 */ sub.s $f10, $f4, $f8 /* 07AA58 7F045F28 46065080 */ add.s $f2, $f10, $f6 /* 07AA5C 7F045F2C E662000C */ swc1 $f2, 0xc($s3) /* 07AA60 7F045F30 E622005C */ swc1 $f2, 0x5c($s1) .L7F045F34: /* 07AA64 7F045F34 8E230064 */ lw $v1, 0x64($s1) /* 07AA68 7F045F38 02202025 */ move $a0, $s1 /* 07AA6C 7F045F3C 000343C0 */ sll $t0, $v1, 0xf /* 07AA70 7F045F40 05000002 */ bltz $t0, .L7F045F4C /* 07AA74 7F045F44 34690100 */ ori $t1, $v1, 0x100 /* 07AA78 7F045F48 AE290064 */ sw $t1, 0x64($s1) .L7F045F4C: /* 07AA7C 7F045F4C C610008C */ lwc1 $f16, 0x8c($s0) /* 07AA80 7F045F50 4610B03C */ c.lt.s $f22, $f16 /* 07AA84 7F045F54 00000000 */ nop /* 07AA88 7F045F58 4500001B */ bc1f .L7F045FC8 /* 07AA8C 7F045F5C 00000000 */ nop /* 07AA90 7F045F60 C6040008 */ lwc1 $f4, 8($s0) /* 07AA94 7F045F64 46008207 */ neg.s $f8, $f16 /* 07AA98 7F045F68 3C018005 */ lui $at, %hi(D_80052AA8) /* 07AA9C 7F045F6C 46082282 */ mul.s $f10, $f4, $f8 /* 07AAA0 7F045F70 C4202AA8 */ lwc1 $f0, %lo(D_80052AA8)($at) /* 07AAA4 7F045F74 E60A0008 */ swc1 $f10, 8($s0) /* 07AAA8 7F045F78 C6060008 */ lwc1 $f6, 8($s0) /* 07AAAC 7F045F7C 4600303C */ c.lt.s $f6, $f0 /* 07AAB0 7F045F80 00000000 */ nop /* 07AAB4 7F045F84 45020013 */ bc1fl .L7F045FD4 /* 07AAB8 7F045F88 922C0003 */ lbu $t4, 3($s1) /* 07AABC 7F045F8C 8E0B0000 */ lw $t3, ($s0) /* 07AAC0 7F045F90 02202025 */ move $a0, $s1 /* 07AAC4 7F045F94 31790002 */ andi $t9, $t3, 2 /* 07AAC8 7F045F98 13200007 */ beqz $t9, .L7F045FB8 /* 07AACC 7F045F9C 00000000 */ nop /* 07AAD0 7F045FA0 8E0A0090 */ lw $t2, 0x90($s0) /* 07AAD4 7F045FA4 24010001 */ li $at, 1 /* 07AAD8 7F045FA8 15410003 */ bne $t2, $at, .L7F045FB8 /* 07AADC 7F045FAC 00000000 */ nop /* 07AAE0 7F045FB0 10000007 */ b .L7F045FD0 /* 07AAE4 7F045FB4 E6000008 */ swc1 $f0, 8($s0) .L7F045FB8: /* 07AAE8 7F045FB8 0FC10C79 */ jal sub_GAME_7F0431E4 /* 07AAEC 7F045FBC 27A5062C */ addiu $a1, $sp, 0x62c /* 07AAF0 7F045FC0 10000004 */ b .L7F045FD4 /* 07AAF4 7F045FC4 922C0003 */ lbu $t4, 3($s1) .L7F045FC8: /* 07AAF8 7F045FC8 0FC10C79 */ jal sub_GAME_7F0431E4 /* 07AAFC 7F045FCC 27A5062C */ addiu $a1, $sp, 0x62c .L7F045FD0: /* 07AB00 7F045FD0 922C0003 */ lbu $t4, 3($s1) .L7F045FD4: /* 07AB04 7F045FD4 24010008 */ li $at, 8 /* 07AB08 7F045FD8 5581006F */ bnel $t4, $at, .L7F046198 /* 07AB0C 7F045FDC 8E2A0064 */ lw $t2, 0x64($s1) /* 07AB10 7F045FE0 82220080 */ lb $v0, 0x80($s1) /* 07AB14 7F045FE4 24010003 */ li $at, 3 /* 07AB18 7F045FE8 54410006 */ bnel $v0, $at, .L7F046004 /* 07AB1C 7F045FEC 24010056 */ li $at, 86 /* 07AB20 7F045FF0 0FC10D94 */ jal sub_GAME_7F043650 /* 07AB24 7F045FF4 02202025 */ move $a0, $s1 /* 07AB28 7F045FF8 10000042 */ b .L7F046104 /* 07AB2C 7F045FFC 8FB80664 */ lw $t8, 0x664($sp) /* 07AB30 7F046000 24010056 */ li $at, 86 .L7F046004: /* 07AB34 7F046004 1441002D */ bne $v0, $at, .L7F0460BC /* 07AB38 7F046008 8FAE0664 */ lw $t6, 0x664($sp) /* 07AB3C 7F04600C 11C00003 */ beqz $t6, .L7F04601C /* 07AB40 7F046010 8FAD0610 */ lw $t5, 0x610($sp) /* 07AB44 7F046014 51A00004 */ beql $t5, $zero, .L7F046028 /* 07AB48 7F046018 C6020004 */ lwc1 $f2, 4($s0) .L7F04601C: /* 07AB4C 7F04601C 10000038 */ b .L7F046100 /* 07AB50 7F046020 A6200082 */ sh $zero, 0x82($s1) /* 07AB54 7F046024 C6020004 */ lwc1 $f2, 4($s0) .L7F046028: /* 07AB58 7F046028 C60C0008 */ lwc1 $f12, 8($s0) /* 07AB5C 7F04602C C600000C */ lwc1 $f0, 0xc($s0) /* 07AB60 7F046030 46021102 */ mul.s $f4, $f2, $f2 /* 07AB64 7F046034 3C018005 */ lui $at, %hi(D_80052AAC) /* 07AB68 7F046038 26240058 */ addiu $a0, $s1, 0x58 /* 07AB6C 7F04603C 460C6202 */ mul.s $f8, $f12, $f12 /* 07AB70 7F046040 24060008 */ li $a2, 8 /* 07AB74 7F046044 46000182 */ mul.s $f6, $f0, $f0 /* 07AB78 7F046048 46082280 */ add.s $f10, $f4, $f8 /* 07AB7C 7F04604C C4242AAC */ lwc1 $f4, %lo(D_80052AAC)($at) /* 07AB80 7F046050 460A3380 */ add.s $f14, $f6, $f10 /* 07AB84 7F046054 460E203C */ c.lt.s $f4, $f14 /* 07AB88 7F046058 00000000 */ nop /* 07AB8C 7F04605C 45020005 */ bc1fl .L7F046074 /* 07AB90 7F046060 8E0F00A8 */ lw $t7, 0xa8($s0) /* 07AB94 7F046064 E6160010 */ swc1 $f22, 0x10($s0) /* 07AB98 7F046068 E6160014 */ swc1 $f22, 0x14($s0) /* 07AB9C 7F04606C E6160018 */ swc1 $f22, 0x18($s0) /* 07ABA0 7F046070 8E0F00A8 */ lw $t7, 0xa8($s0) .L7F046074: /* 07ABA4 7F046074 29E1012D */ slti $at, $t7, 0x12d /* 07ABA8 7F046078 54200008 */ bnezl $at, .L7F04609C /* 07ABAC 7F04607C 92690001 */ lbu $t1, 1($s3) /* 07ABB0 7F046080 8E180000 */ lw $t8, ($s0) /* 07ABB4 7F046084 2401FFCF */ li $at, -49 /* 07ABB8 7F046088 E616001C */ swc1 $f22, 0x1c($s0) /* 07ABBC 7F04608C 03014024 */ and $t0, $t8, $at /* 07ABC0 7F046090 1000001B */ b .L7F046100 /* 07ABC4 7F046094 AE080000 */ sw $t0, ($s0) /* 07ABC8 7F046098 92690001 */ lbu $t1, 1($s3) .L7F04609C: /* 07ABCC 7F04609C 8E650014 */ lw $a1, 0x14($s3) /* 07ABD0 7F0460A0 2667002C */ addiu $a3, $s3, 0x2c /* 07ABD4 7F0460A4 312B0008 */ andi $t3, $t1, 8 /* 07ABD8 7F0460A8 000BC82B */ sltu $t9, $zero, $t3 /* 07ABDC 7F0460AC 0FC279C0 */ jal sub_GAME_7F09E700 /* 07ABE0 7F0460B0 AFB90010 */ sw $t9, 0x10($sp) /* 07ABE4 7F0460B4 10000013 */ b .L7F046104 /* 07ABE8 7F0460B8 8FB80664 */ lw $t8, 0x664($sp) .L7F0460BC: /* 07ABEC 7F0460BC 24010057 */ li $at, 87 /* 07ABF0 7F0460C0 1441000F */ bne $v0, $at, .L7F046100 /* 07ABF4 7F0460C4 8FAA0610 */ lw $t2, 0x610($sp) /* 07ABF8 7F0460C8 15400003 */ bnez $t2, .L7F0460D8 /* 07ABFC 7F0460CC 8FAC060C */ lw $t4, 0x60c($sp) /* 07AC00 7F0460D0 11800003 */ beqz $t4, .L7F0460E0 /* 07AC04 7F0460D4 26240058 */ addiu $a0, $s1, 0x58 .L7F0460D8: /* 07AC08 7F0460D8 10000009 */ b .L7F046100 /* 07AC0C 7F0460DC A6200082 */ sh $zero, 0x82($s1) .L7F0460E0: /* 07AC10 7F0460E0 926E0001 */ lbu $t6, 1($s3) /* 07AC14 7F0460E4 8E650014 */ lw $a1, 0x14($s3) /* 07AC18 7F0460E8 24060009 */ li $a2, 9 /* 07AC1C 7F0460EC 31CD0008 */ andi $t5, $t6, 8 /* 07AC20 7F0460F0 000D782B */ sltu $t7, $zero, $t5 /* 07AC24 7F0460F4 AFAF0010 */ sw $t7, 0x10($sp) /* 07AC28 7F0460F8 0FC279C0 */ jal sub_GAME_7F09E700 /* 07AC2C 7F0460FC 2667002C */ addiu $a3, $s3, 0x2c .L7F046100: /* 07AC30 7F046100 8FB80664 */ lw $t8, 0x664($sp) .L7F046104: /* 07AC34 7F046104 3C128005 */ lui $s2, %hi(D_80048380) /* 07AC38 7F046108 26528380 */ addiu $s2, %lo(D_80048380) # addiu $s2, $s2, -0x7c80 /* 07AC3C 7F04610C 13000003 */ beqz $t8, .L7F04611C /* 07AC40 7F046110 8FA80610 */ lw $t0, 0x610($sp) /* 07AC44 7F046114 51000020 */ beql $t0, $zero, .L7F046198 /* 07AC48 7F046118 8E2A0064 */ lw $t2, 0x64($s1) .L7F04611C: /* 07AC4C 7F04611C 8E420000 */ lw $v0, ($s2) /* 07AC50 7F046120 8E0900AC */ lw $t1, 0xac($s0) /* 07AC54 7F046124 244BFFFE */ addiu $t3, $v0, -2 /* 07AC58 7F046128 012B082A */ slt $at, $t1, $t3 /* 07AC5C 7F04612C 50200019 */ beql $at, $zero, .L7F046194 /* 07AC60 7F046130 AE0200AC */ sw $v0, 0xac($s0) /* 07AC64 7F046134 82220080 */ lb $v0, 0x80($s1) /* 07AC68 7F046138 26790008 */ addiu $t9, $s3, 8 /* 07AC6C 7F04613C 24010003 */ li $at, 3 /* 07AC70 7F046140 10410004 */ beq $v0, $at, .L7F046154 /* 07AC74 7F046144 AFB90070 */ sw $t9, 0x70($sp) /* 07AC78 7F046148 24010002 */ li $at, 2 /* 07AC7C 7F04614C 14410008 */ bne $v0, $at, .L7F046170 /* 07AC80 7F046150 3C048006 */ lui $a0, %hi(ptr_sfx_buf) .L7F046154: /* 07AC84 7F046154 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07AC88 7F046158 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07AC8C 7F04615C 24050003 */ li $a1, 3 /* 07AC90 7F046160 0C002382 */ jal play_sfx_a1 /* 07AC94 7F046164 00003025 */ move $a2, $zero /* 07AC98 7F046168 10000006 */ b .L7F046184 /* 07AC9C 7F04616C 00402025 */ move $a0, $v0 .L7F046170: /* 07ACA0 7F046170 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07ACA4 7F046174 2405002D */ li $a1, 45 /* 07ACA8 7F046178 0C002382 */ jal play_sfx_a1 /* 07ACAC 7F04617C 00003025 */ move $a2, $zero /* 07ACB0 7F046180 00402025 */ move $a0, $v0 .L7F046184: /* 07ACB4 7F046184 0FC14E84 */ jal sub_GAME_7F053A10 /* 07ACB8 7F046188 8FA50070 */ lw $a1, 0x70($sp) /* 07ACBC 7F04618C 8E420000 */ lw $v0, ($s2) /* 07ACC0 7F046190 AE0200AC */ sw $v0, 0xac($s0) .L7F046194: /* 07ACC4 7F046194 8E2A0064 */ lw $t2, 0x64($s1) .L7F046198: /* 07ACC8 7F046198 3C128005 */ lui $s2, %hi(D_80048380) /* 07ACCC 7F04619C 26528380 */ addiu $s2, %lo(D_80048380) # addiu $s2, $s2, -0x7c80 /* 07ACD0 7F0461A0 314C0080 */ andi $t4, $t2, 0x80 /* 07ACD4 7F0461A4 5180011D */ beql $t4, $zero, .L7F04661C /* 07ACD8 7F0461A8 8FAD0690 */ lw $t5, 0x690($sp) /* 07ACDC 7F0461AC 8E0E0000 */ lw $t6, ($s0) /* 07ACE0 7F0461B0 31CD0400 */ andi $t5, $t6, 0x400 /* 07ACE4 7F0461B4 51A00119 */ beql $t5, $zero, .L7F04661C /* 07ACE8 7F0461B8 8FAD0690 */ lw $t5, 0x690($sp) /* 07ACEC 7F0461BC 8E420000 */ lw $v0, ($s2) /* 07ACF0 7F0461C0 3C0143C8 */ li $at, 0x43C80000 # 400.000000 /* 07ACF4 7F0461C4 27B00564 */ addiu $s0, $sp, 0x564 /* 07ACF8 7F0461C8 304F0007 */ andi $t7, $v0, 7 /* 07ACFC 7F0461CC 15E00112 */ bnez $t7, .L7F046618 /* 07AD00 7F0461D0 00002025 */ move $a0, $zero /* 07AD04 7F0461D4 44810000 */ mtc1 $at, $f0 /* 07AD08 7F0461D8 C6280058 */ lwc1 $f8, 0x58($s1) /* 07AD0C 7F0461DC 3C0144E1 */ li $at, 0x44E10000 # 1800.000000 /* 07AD10 7F0461E0 44812000 */ mtc1 $at, $f4 /* 07AD14 7F0461E4 46004180 */ add.s $f6, $f8, $f0 /* 07AD18 7F0461E8 3058000F */ andi $t8, $v0, 0xf /* 07AD1C 7F0461EC E7A60564 */ swc1 $f6, 0x564($sp) /* 07AD20 7F0461F0 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07AD24 7F0461F4 46045201 */ sub.s $f8, $f10, $f4 /* 07AD28 7F0461F8 E7A80568 */ swc1 $f8, 0x568($sp) /* 07AD2C 7F0461FC C6260060 */ lwc1 $f6, 0x60($s1) /* 07AD30 7F046200 17000005 */ bnez $t8, .L7F046218 /* 07AD34 7F046204 E7A6056C */ swc1 $f6, 0x56c($sp) /* 07AD38 7F046208 C7AA056C */ lwc1 $f10, 0x56c($sp) /* 07AD3C 7F04620C 46005100 */ add.s $f4, $f10, $f0 /* 07AD40 7F046210 10000004 */ b .L7F046224 /* 07AD44 7F046214 E7A4056C */ swc1 $f4, 0x56c($sp) .L7F046218: /* 07AD48 7F046218 C7A8056C */ lwc1 $f8, 0x56c($sp) /* 07AD4C 7F04621C 46004181 */ sub.s $f6, $f8, $f0 /* 07AD50 7F046220 E7A6056C */ swc1 $f6, 0x56c($sp) .L7F046224: /* 07AD54 7F046224 8E220010 */ lw $v0, 0x10($s1) /* 07AD58 7F046228 02002825 */ move $a1, $s0 /* 07AD5C 7F04622C 24070014 */ li $a3, 20 /* 07AD60 7F046230 8C460014 */ lw $a2, 0x14($v0) /* 07AD64 7F046234 2448002C */ addiu $t0, $v0, 0x2c /* 07AD68 7F046238 AFA80018 */ sw $t0, 0x18($sp) /* 07AD6C 7F04623C AFA0001C */ sw $zero, 0x1c($sp) /* 07AD70 7F046240 AFA00014 */ sw $zero, 0x14($sp) /* 07AD74 7F046244 0FC27094 */ jal sub_GAME_7F09C250 /* 07AD78 7F046248 AFA00010 */ sw $zero, 0x10($sp) /* 07AD7C 7F04624C 8E490000 */ lw $t1, ($s2) /* 07AD80 7F046250 24010028 */ li $at, 40 /* 07AD84 7F046254 02002025 */ move $a0, $s0 /* 07AD88 7F046258 0121001A */ div $zero, $t1, $at /* 07AD8C 7F04625C 00005810 */ mfhi $t3 /* 07AD90 7F046260 556000EE */ bnezl $t3, .L7F04661C /* 07AD94 7F046264 8FAD0690 */ lw $t5, 0x690($sp) /* 07AD98 7F046268 8E220010 */ lw $v0, 0x10($s1) /* 07AD9C 7F04626C 24190001 */ li $t9, 1 /* 07ADA0 7F046270 2406000A */ li $a2, 10 /* 07ADA4 7F046274 8C450014 */ lw $a1, 0x14($v0) /* 07ADA8 7F046278 AFB90010 */ sw $t9, 0x10($sp) /* 07ADAC 7F04627C 0FC279C0 */ jal sub_GAME_7F09E700 /* 07ADB0 7F046280 2447002C */ addiu $a3, $v0, 0x2c /* 07ADB4 7F046284 100000E5 */ b .L7F04661C /* 07ADB8 7F046288 8FAD0690 */ lw $t5, 0x690($sp) /* 07ADBC 7F04628C C6000060 */ lwc1 $f0, 0x60($s0) .L7F046290: /* 07ADC0 7F046290 44815000 */ mtc1 $at, $f10 /* 07ADC4 7F046294 24120001 */ li $s2, 1 /* 07ADC8 7F046298 3C018005 */ lui $at, %hi(global_timer_delta) /* 07ADCC 7F04629C 460A003C */ c.lt.s $f0, $f10 /* 07ADD0 7F0462A0 26040068 */ addiu $a0, $s0, 0x68 /* 07ADD4 7F0462A4 26050078 */ addiu $a1, $s0, 0x78 /* 07ADD8 7F0462A8 45020031 */ bc1fl .L7F046370 /* 07ADDC 7F0462AC C60A0004 */ lwc1 $f10, 4($s0) /* 07ADE0 7F0462B0 C6020064 */ lwc1 $f2, 0x64($s0) /* 07ADE4 7F0462B4 C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07ADE8 7F0462B8 3C0A8005 */ lui $t2, %hi(clock_timer) /* 07ADEC 7F0462BC 3C018005 */ lui $at, %hi(D_80052AB0) /* 07ADF0 7F0462C0 46041202 */ mul.s $f8, $f2, $f4 /* 07ADF4 7F0462C4 27B20550 */ addiu $s2, $sp, 0x550 /* 07ADF8 7F0462C8 46080180 */ add.s $f6, $f0, $f8 /* 07ADFC 7F0462CC E6060060 */ swc1 $f6, 0x60($s0) /* 07AE00 7F0462D0 8D4A8374 */ lw $t2, %lo(clock_timer)($t2) /* 07AE04 7F0462D4 59400005 */ blezl $t2, .L7F0462EC /* 07AE08 7F0462D8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AE0C 7F0462DC C42A2AB0 */ lwc1 $f10, %lo(D_80052AB0)($at) /* 07AE10 7F0462E0 460A1102 */ mul.s $f4, $f2, $f10 /* 07AE14 7F0462E4 E6040064 */ swc1 $f4, 0x64($s0) /* 07AE18 7F0462E8 3C013F80 */ li $at, 0x3F800000 # 1.000000 .L7F0462EC: /* 07AE1C 7F0462EC 44814000 */ mtc1 $at, $f8 /* 07AE20 7F0462F0 C6000060 */ lwc1 $f0, 0x60($s0) /* 07AE24 7F0462F4 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AE28 7F0462F8 4600403C */ c.lt.s $f8, $f0 /* 07AE2C 7F0462FC 00000000 */ nop /* 07AE30 7F046300 45030006 */ bc1tl .L7F04631C /* 07AE34 7F046304 44813000 */ mtc1 $at, $f6 /* 07AE38 7F046308 8E0C0000 */ lw $t4, ($s0) /* 07AE3C 7F04630C 318E0008 */ andi $t6, $t4, 8 /* 07AE40 7F046310 51C00006 */ beql $t6, $zero, .L7F04632C /* 07AE44 7F046314 44060000 */ mfc1 $a2, $f0 /* 07AE48 7F046318 44813000 */ mtc1 $at, $f6 .L7F04631C: /* 07AE4C 7F04631C 00000000 */ nop /* 07AE50 7F046320 E6060060 */ swc1 $f6, 0x60($s0) /* 07AE54 7F046324 C6000060 */ lwc1 $f0, 0x60($s0) /* 07AE58 7F046328 44060000 */ mfc1 $a2, $f0 .L7F04632C: /* 07AE5C 7F04632C 0FC16E82 */ jal quaternion_slerp /* 07AE60 7F046330 02403825 */ move $a3, $s2 /* 07AE64 7F046334 26250018 */ addiu $a1, $s1, 0x18 /* 07AE68 7F046338 AFA50070 */ sw $a1, 0x70($sp) /* 07AE6C 7F04633C 0FC16D8A */ jal quaternion_to_matrix /* 07AE70 7F046340 02402025 */ move $a0, $s2 /* 07AE74 7F046344 C60C00C0 */ lwc1 $f12, 0xc0($s0) /* 07AE78 7F046348 0FC1626D */ jal matrix_column_1_scalar_multiply /* 07AE7C 7F04634C 8FA50070 */ lw $a1, 0x70($sp) /* 07AE80 7F046350 C60C00C4 */ lwc1 $f12, 0xc4($s0) /* 07AE84 7F046354 0FC16279 */ jal matrix_column_2_scalar_multiply /* 07AE88 7F046358 8FA50070 */ lw $a1, 0x70($sp) /* 07AE8C 7F04635C C60C00C8 */ lwc1 $f12, 0xc8($s0) /* 07AE90 7F046360 0FC16293 */ jal matrix_column_3_scalar_multiply_2 /* 07AE94 7F046364 8FA50070 */ lw $a1, 0x70($sp) /* 07AE98 7F046368 00009025 */ move $s2, $zero /* 07AE9C 7F04636C C60A0004 */ lwc1 $f10, 4($s0) .L7F046370: /* 07AEA0 7F046370 460AB032 */ c.eq.s $f22, $f10 /* 07AEA4 7F046374 00000000 */ nop /* 07AEA8 7F046378 4502000F */ bc1fl .L7F0463B8 /* 07AEAC 7F04637C 8E0D0000 */ lw $t5, ($s0) /* 07AEB0 7F046380 C604000C */ lwc1 $f4, 0xc($s0) /* 07AEB4 7F046384 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AEB8 7F046388 4604B032 */ c.eq.s $f22, $f4 /* 07AEBC 7F04638C 00000000 */ nop /* 07AEC0 7F046390 45020009 */ bc1fl .L7F0463B8 /* 07AEC4 7F046394 8E0D0000 */ lw $t5, ($s0) /* 07AEC8 7F046398 C6080060 */ lwc1 $f8, 0x60($s0) /* 07AECC 7F04639C 44813000 */ mtc1 $at, $f6 /* 07AED0 7F0463A0 00000000 */ nop /* 07AED4 7F0463A4 4606403C */ c.lt.s $f8, $f6 /* 07AED8 7F0463A8 00000000 */ nop /* 07AEDC 7F0463AC 45000088 */ bc1f .L7F0465D0 /* 07AEE0 7F0463B0 00000000 */ nop /* 07AEE4 7F0463B4 8E0D0000 */ lw $t5, ($s0) .L7F0463B8: /* 07AEE8 7F0463B8 02202025 */ move $a0, $s1 /* 07AEEC 7F0463BC 26380018 */ addiu $t8, $s1, 0x18 /* 07AEF0 7F0463C0 31AF0008 */ andi $t7, $t5, 8 /* 07AEF4 7F0463C4 15E00082 */ bnez $t7, .L7F0465D0 /* 07AEF8 7F0463C8 00000000 */ nop /* 07AEFC 7F0463CC AFB80070 */ sw $t8, 0x70($sp) /* 07AF00 7F0463D0 0FC1001E */ jal sub_GAME_7F040078 /* 07AF04 7F0463D4 00009025 */ move $s2, $zero /* 07AF08 7F0463D8 3C038005 */ lui $v1, %hi(clock_timer) /* 07AF0C 7F0463DC 8C638374 */ lw $v1, %lo(clock_timer)($v1) /* 07AF10 7F0463E0 AFA2054C */ sw $v0, 0x54c($sp) /* 07AF14 7F0463E4 00002025 */ move $a0, $zero /* 07AF18 7F0463E8 18600048 */ blez $v1, .L7F04650C /* 07AF1C 7F0463EC 3C018005 */ lui $at, %hi(D_80052AB4) /* 07AF20 7F0463F0 C42E2AB4 */ lwc1 $f14, %lo(D_80052AB4)($at) /* 07AF24 7F0463F4 C7AA0694 */ lwc1 $f10, 0x694($sp) .L7F0463F8: /* 07AF28 7F0463F8 C6040004 */ lwc1 $f4, 4($s0) /* 07AF2C 7F0463FC C7A6069C */ lwc1 $f6, 0x69c($sp) /* 07AF30 7F046400 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AF34 7F046404 46045200 */ add.s $f8, $f10, $f4 /* 07AF38 7F046408 E7A80694 */ swc1 $f8, 0x694($sp) /* 07AF3C 7F04640C C60A000C */ lwc1 $f10, 0xc($s0) /* 07AF40 7F046410 460A3100 */ add.s $f4, $f6, $f10 /* 07AF44 7F046414 44813000 */ mtc1 $at, $f6 /* 07AF48 7F046418 E7A4069C */ swc1 $f4, 0x69c($sp) /* 07AF4C 7F04641C C6080060 */ lwc1 $f8, 0x60($s0) /* 07AF50 7F046420 4608303E */ c.le.s $f6, $f8 /* 07AF54 7F046424 00000000 */ nop /* 07AF58 7F046428 45020035 */ bc1fl .L7F046500 /* 07AF5C 7F04642C 24840001 */ addiu $a0, $a0, 1 /* 07AF60 7F046430 C60A0094 */ lwc1 $f10, 0x94($s0) /* 07AF64 7F046434 460AB03C */ c.lt.s $f22, $f10 /* 07AF68 7F046438 00000000 */ nop /* 07AF6C 7F04643C 45020027 */ bc1fl .L7F0464DC /* 07AF70 7F046440 C6060004 */ lwc1 $f6, 4($s0) /* 07AF74 7F046444 C600000C */ lwc1 $f0, 0xc($s0) /* 07AF78 7F046448 C6020004 */ lwc1 $f2, 4($s0) /* 07AF7C 7F04644C AFA40548 */ sw $a0, 0x548($sp) /* 07AF80 7F046450 46000102 */ mul.s $f4, $f0, $f0 /* 07AF84 7F046454 00000000 */ nop /* 07AF88 7F046458 46021202 */ mul.s $f8, $f2, $f2 /* 07AF8C 7F04645C 0C007DF8 */ jal sqrtf /* 07AF90 7F046460 46082300 */ add.s $f12, $f4, $f8 /* 07AF94 7F046464 3C018005 */ lui $at, %hi(D_80052AB8) /* 07AF98 7F046468 C42E2AB8 */ lwc1 $f14, %lo(D_80052AB8)($at) /* 07AF9C 7F04646C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07AFA0 7F046470 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07AFA4 7F046474 C6060094 */ lwc1 $f6, 0x94($s0) /* 07AFA8 7F046478 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AFAC 7F04647C 44814000 */ mtc1 $at, $f8 /* 07AFB0 7F046480 460A3102 */ mul.s $f4, $f6, $f10 /* 07AFB4 7F046484 8FA40548 */ lw $a0, 0x548($sp) /* 07AFB8 7F046488 3C038005 */ lui $v1, %hi(clock_timer) /* 07AFBC 7F04648C 46002303 */ div.s $f12, $f4, $f0 /* 07AFC0 7F046490 460C403E */ c.le.s $f8, $f12 /* 07AFC4 7F046494 00000000 */ nop /* 07AFC8 7F046498 45020005 */ bc1fl .L7F0464B0 /* 07AFCC 7F04649C C6020004 */ lwc1 $f2, 4($s0) /* 07AFD0 7F0464A0 E6160004 */ swc1 $f22, 4($s0) /* 07AFD4 7F0464A4 1000000A */ b .L7F0464D0 /* 07AFD8 7F0464A8 E616000C */ swc1 $f22, 0xc($s0) /* 07AFDC 7F0464AC C6020004 */ lwc1 $f2, 4($s0) .L7F0464B0: /* 07AFE0 7F0464B0 C600000C */ lwc1 $f0, 0xc($s0) /* 07AFE4 7F0464B4 460C1182 */ mul.s $f6, $f2, $f12 /* 07AFE8 7F0464B8 00000000 */ nop /* 07AFEC 7F0464BC 460C0102 */ mul.s $f4, $f0, $f12 /* 07AFF0 7F0464C0 46061281 */ sub.s $f10, $f2, $f6 /* 07AFF4 7F0464C4 46040201 */ sub.s $f8, $f0, $f4 /* 07AFF8 7F0464C8 E60A0004 */ swc1 $f10, 4($s0) /* 07AFFC 7F0464CC E608000C */ swc1 $f8, 0xc($s0) .L7F0464D0: /* 07B000 7F0464D0 1000000A */ b .L7F0464FC /* 07B004 7F0464D4 8C638374 */ lw $v1, %lo(clock_timer)($v1) /* 07B008 7F0464D8 C6060004 */ lwc1 $f6, 4($s0) .L7F0464DC: /* 07B00C 7F0464DC C604000C */ lwc1 $f4, 0xc($s0) /* 07B010 7F0464E0 3C038005 */ lui $v1, %hi(clock_timer) /* 07B014 7F0464E4 460E3282 */ mul.s $f10, $f6, $f14 /* 07B018 7F0464E8 00000000 */ nop /* 07B01C 7F0464EC 460E2202 */ mul.s $f8, $f4, $f14 /* 07B020 7F0464F0 E60A0004 */ swc1 $f10, 4($s0) /* 07B024 7F0464F4 E608000C */ swc1 $f8, 0xc($s0) /* 07B028 7F0464F8 8C638374 */ lw $v1, %lo(clock_timer)($v1) .L7F0464FC: /* 07B02C 7F0464FC 24840001 */ addiu $a0, $a0, 1 .L7F046500: /* 07B030 7F046500 0083082A */ slt $at, $a0, $v1 /* 07B034 7F046504 5420FFBC */ bnezl $at, .L7F0463F8 /* 07B038 7F046508 C7AA0694 */ lwc1 $f10, 0x694($sp) .L7F04650C: /* 07B03C 7F04650C 02202025 */ move $a0, $s1 /* 07B040 7F046510 27A50694 */ addiu $a1, $sp, 0x694 /* 07B044 7F046514 27A60530 */ addiu $a2, $sp, 0x530 /* 07B048 7F046518 27A7053C */ addiu $a3, $sp, 0x53c /* 07B04C 7F04651C AFA00010 */ sw $zero, 0x10($sp) /* 07B050 7F046520 0FC10BAD */ jal sub_GAME_7F042EB4 /* 07B054 7F046524 AFA00014 */ sw $zero, 0x14($sp) /* 07B058 7F046528 24080001 */ li $t0, 1 /* 07B05C 7F04652C AFA80690 */ sw $t0, 0x690($sp) /* 07B060 7F046530 8E660010 */ lw $a2, 0x10($s3) /* 07B064 7F046534 8E650008 */ lw $a1, 8($s3) /* 07B068 7F046538 0FC2CA5C */ jal sub_GAME_7F0B2970 /* 07B06C 7F04653C 8E640014 */ lw $a0, 0x14($s3) /* 07B070 7F046540 46000506 */ mov.s $f20, $f0 /* 07B074 7F046544 8FA4054C */ lw $a0, 0x54c($sp) /* 07B078 7F046548 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 07B07C 7F04654C 8FA50070 */ lw $a1, 0x70($sp) /* 07B080 7F046550 3C018005 */ lui $at, %hi(D_80052ABC) /* 07B084 7F046554 C42E2ABC */ lwc1 $f14, %lo(D_80052ABC)($at) /* 07B088 7F046558 4600A181 */ sub.s $f6, $f20, $f0 /* 07B08C 7F04655C 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07B090 7F046560 44815000 */ mtc1 $at, $f10 /* 07B094 7F046564 3C018005 */ lui $at, %hi(D_80052AC0) /* 07B098 7F046568 460A3300 */ add.s $f12, $f6, $f10 /* 07B09C 7F04656C E66C000C */ swc1 $f12, 0xc($s3) /* 07B0A0 7F046570 E62C005C */ swc1 $f12, 0x5c($s1) /* 07B0A4 7F046574 C6020004 */ lwc1 $f2, 4($s0) /* 07B0A8 7F046578 460E103C */ c.lt.s $f2, $f14 /* 07B0AC 7F04657C 00000000 */ nop /* 07B0B0 7F046580 45000013 */ bc1f .L7F0465D0 /* 07B0B4 7F046584 00000000 */ nop /* 07B0B8 7F046588 C4242AC0 */ lwc1 $f4, %lo(D_80052AC0)($at) /* 07B0BC 7F04658C 4602203C */ c.lt.s $f4, $f2 /* 07B0C0 7F046590 00000000 */ nop /* 07B0C4 7F046594 4500000E */ bc1f .L7F0465D0 /* 07B0C8 7F046598 00000000 */ nop /* 07B0CC 7F04659C C600000C */ lwc1 $f0, 0xc($s0) /* 07B0D0 7F0465A0 3C018005 */ lui $at, %hi(D_80052AC4) /* 07B0D4 7F0465A4 460E003C */ c.lt.s $f0, $f14 /* 07B0D8 7F0465A8 00000000 */ nop /* 07B0DC 7F0465AC 45000008 */ bc1f .L7F0465D0 /* 07B0E0 7F0465B0 00000000 */ nop /* 07B0E4 7F0465B4 C4282AC4 */ lwc1 $f8, %lo(D_80052AC4)($at) /* 07B0E8 7F0465B8 4600403C */ c.lt.s $f8, $f0 /* 07B0EC 7F0465BC 00000000 */ nop /* 07B0F0 7F0465C0 45000003 */ bc1f .L7F0465D0 /* 07B0F4 7F0465C4 00000000 */ nop /* 07B0F8 7F0465C8 E616000C */ swc1 $f22, 0xc($s0) /* 07B0FC 7F0465CC E6160004 */ swc1 $f22, 4($s0) .L7F0465D0: /* 07B100 7F0465D0 16400005 */ bnez $s2, .L7F0465E8 /* 07B104 7F0465D4 00000000 */ nop /* 07B108 7F0465D8 8E090000 */ lw $t1, ($s0) /* 07B10C 7F0465DC 312B0008 */ andi $t3, $t1, 8 /* 07B110 7F0465E0 5160000E */ beql $t3, $zero, .L7F04661C /* 07B114 7F0465E4 8FAD0690 */ lw $t5, 0x690($sp) .L7F0465E8: /* 07B118 7F0465E8 0FC0FEDC */ jal sub_GAME_7F03FB70 /* 07B11C 7F0465EC 02002025 */ move $a0, $s0 /* 07B120 7F0465F0 8E390064 */ lw $t9, 0x64($s1) /* 07B124 7F0465F4 2401FF7F */ li $at, -129 /* 07B128 7F0465F8 AE20006C */ sw $zero, 0x6c($s1) /* 07B12C 7F0465FC 03215024 */ and $t2, $t9, $at /* 07B130 7F046600 AE2A0064 */ sw $t2, 0x64($s1) /* 07B134 7F046604 92620001 */ lbu $v0, 1($s3) /* 07B138 7F046608 304C0008 */ andi $t4, $v0, 8 /* 07B13C 7F04660C 11800002 */ beqz $t4, .L7F046618 /* 07B140 7F046610 344E0010 */ ori $t6, $v0, 0x10 /* 07B144 7F046614 A26E0001 */ sb $t6, 1($s3) .L7F046618: /* 07B148 7F046618 8FAD0690 */ lw $t5, 0x690($sp) .L7F04661C: /* 07B14C 7F04661C 11A0000B */ beqz $t5, .L7F04664C /* 07B150 7F046620 262F0058 */ addiu $t7, $s1, 0x58 /* 07B154 7F046624 AFAF0070 */ sw $t7, 0x70($sp) /* 07B158 7F046628 0FC10121 */ jal sub_GAME_7F040484 /* 07B15C 7F04662C 02202025 */ move $a0, $s1 /* 07B160 7F046630 0FC15B28 */ jal sub_GAME_7F056CA0 /* 07B164 7F046634 02202025 */ move $a0, $s1 /* 07B168 7F046638 8E240010 */ lw $a0, 0x10($s1) /* 07B16C 7F04663C 0FC100AD */ jal sub_GAME_7F0402B4 /* 07B170 7F046640 2625007C */ addiu $a1, $s1, 0x7c /* 07B174 7F046644 0FC146F3 */ jal detonate_proxmine_In_range /* 07B178 7F046648 8FA40070 */ lw $a0, 0x70($sp) .L7F04664C: /* 07B17C 7F04664C 92220003 */ lbu $v0, 3($s1) /* 07B180 7F046650 24010001 */ li $at, 1 /* 07B184 7F046654 54410052 */ bnel $v0, $at, .L7F0467A0 /* 07B188 7F046658 24010006 */ li $at, 6 /* 07B18C 7F04665C 8E700004 */ lw $s0, 4($s3) /* 07B190 7F046660 3C188005 */ lui $t8, %hi(global_timer) /* 07B194 7F046664 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07B198 7F046668 E7A6067C */ swc1 $f6, 0x67c($sp) /* 07B19C 7F04666C 8E0200EC */ lw $v0, 0xec($s0) /* 07B1A0 7F046670 58400012 */ blezl $v0, .L7F0466BC /* 07B1A4 7F046674 820C00BC */ lb $t4, 0xbc($s0) /* 07B1A8 7F046678 8F18837C */ lw $t8, %lo(global_timer)($t8) /* 07B1AC 7F04667C 8E0800A0 */ lw $t0, 0xa0($s0) /* 07B1B0 7F046680 03084823 */ subu $t1, $t8, $t0 /* 07B1B4 7F046684 0049082A */ slt $at, $v0, $t1 /* 07B1B8 7F046688 5020000C */ beql $at, $zero, .L7F0466BC /* 07B1BC 7F04668C 820C00BC */ lb $t4, 0xbc($s0) /* 07B1C0 7F046690 820B00BC */ lb $t3, 0xbc($s0) /* 07B1C4 7F046694 55600009 */ bnezl $t3, .L7F0466BC /* 07B1C8 7F046698 820C00BC */ lb $t4, 0xbc($s0) /* 07B1CC 7F04669C 8E190008 */ lw $t9, 8($s0) /* 07B1D0 7F0466A0 02002025 */ move $a0, $s0 /* 07B1D4 7F0466A4 00195000 */ sll $t2, $t9, 0 /* 07B1D8 7F0466A8 05420004 */ bltzl $t2, .L7F0466BC /* 07B1DC 7F0466AC 820C00BC */ lb $t4, 0xbc($s0) /* 07B1E0 7F0466B0 0FC15262 */ jal set_door_state /* 07B1E4 7F0466B4 24050002 */ li $a1, 2 /* 07B1E8 7F0466B8 820C00BC */ lb $t4, 0xbc($s0) .L7F0466BC: /* 07B1EC 7F0466BC 24010003 */ li $at, 3 /* 07B1F0 7F0466C0 5581001B */ bnel $t4, $at, .L7F046730 /* 07B1F4 7F0466C4 960D009A */ lhu $t5, 0x9a($s0) /* 07B1F8 7F0466C8 8E0200C8 */ lw $v0, 0xc8($s0) /* 07B1FC 7F0466CC 24030001 */ li $v1, 1 /* 07B200 7F0466D0 02002025 */ move $a0, $s0 /* 07B204 7F0466D4 10400011 */ beqz $v0, .L7F04671C /* 07B208 7F0466D8 00000000 */ nop /* 07B20C 7F0466DC 1050000F */ beq $v0, $s0, .L7F04671C /* 07B210 7F0466E0 00000000 */ nop /* 07B214 7F0466E4 804E00BC */ lb $t6, 0xbc($v0) .L7F0466E8: /* 07B218 7F0466E8 55C00007 */ bnezl $t6, .L7F046708 /* 07B21C 7F0466EC 00001825 */ move $v1, $zero /* 07B220 7F0466F0 C44A00B4 */ lwc1 $f10, 0xb4($v0) /* 07B224 7F0466F4 460AB03C */ c.lt.s $f22, $f10 /* 07B228 7F0466F8 00000000 */ nop /* 07B22C 7F0466FC 45020003 */ bc1fl .L7F04670C /* 07B230 7F046700 8C4200C8 */ lw $v0, 0xc8($v0) /* 07B234 7F046704 00001825 */ move $v1, $zero .L7F046708: /* 07B238 7F046708 8C4200C8 */ lw $v0, 0xc8($v0) .L7F04670C: /* 07B23C 7F04670C 10400003 */ beqz $v0, .L7F04671C /* 07B240 7F046710 00000000 */ nop /* 07B244 7F046714 5450FFF4 */ bnel $v0, $s0, .L7F0466E8 /* 07B248 7F046718 804E00BC */ lb $t6, 0xbc($v0) .L7F04671C: /* 07B24C 7F04671C 50600004 */ beql $v1, $zero, .L7F046730 /* 07B250 7F046720 960D009A */ lhu $t5, 0x9a($s0) /* 07B254 7F046724 0FC15229 */ jal sub_GAME_7F0548A4 /* 07B258 7F046728 24050001 */ li $a1, 1 /* 07B25C 7F04672C 960D009A */ lhu $t5, 0x9a($s0) .L7F046730: /* 07B260 7F046730 24010008 */ li $at, 8 /* 07B264 7F046734 15A1000B */ bne $t5, $at, .L7F046764 /* 07B268 7F046738 00000000 */ nop /* 07B26C 7F04673C 0FC15288 */ jal sub_GAME_7F054A20 /* 07B270 7F046740 02002025 */ move $a0, $s0 /* 07B274 7F046744 10400007 */ beqz $v0, .L7F046764 /* 07B278 7F046748 00000000 */ nop /* 07B27C 7F04674C 0FC0F9C6 */ jal sub_GAME_7F03E718 /* 07B280 7F046750 02002025 */ move $a0, $s0 /* 07B284 7F046754 10400003 */ beqz $v0, .L7F046764 /* 07B288 7F046758 00000000 */ nop /* 07B28C 7F04675C 0FC15667 */ jal sub_GAME_7F05599C /* 07B290 7F046760 02602025 */ move $a0, $s3 .L7F046764: /* 07B294 7F046764 3C188005 */ lui $t8, %hi(global_timer) /* 07B298 7F046768 8F18837C */ lw $t8, %lo(global_timer)($t8) /* 07B29C 7F04676C 8E0F00FC */ lw $t7, 0xfc($s0) /* 07B2A0 7F046770 3C088005 */ lui $t0, %hi(clock_timer) /* 07B2A4 7F046774 01F8082A */ slt $at, $t7, $t8 /* 07B2A8 7F046778 14200004 */ bnez $at, .L7F04678C /* 07B2AC 7F04677C 00000000 */ nop /* 07B2B0 7F046780 8D088374 */ lw $t0, %lo(clock_timer)($t0) /* 07B2B4 7F046784 550006AA */ bnezl $t0, .L7F048230 /* 07B2B8 7F046788 92220003 */ lbu $v0, 3($s1) .L7F04678C: /* 07B2BC 7F04678C 0FC153ED */ jal sub_GAME_7F054FB4 /* 07B2C0 7F046790 02002025 */ move $a0, $s0 /* 07B2C4 7F046794 100006A6 */ b .L7F048230 /* 07B2C8 7F046798 92220003 */ lbu $v0, 3($s1) /* 07B2CC 7F04679C 24010006 */ li $at, 6 .L7F0467A0: /* 07B2D0 7F0467A0 54410130 */ bnel $v0, $at, .L7F046C64 /* 07B2D4 7F0467A4 2401000D */ li $at, 13 /* 07B2D8 7F0467A8 8E290008 */ lw $t1, 8($s1) /* 07B2DC 7F0467AC 000958C0 */ sll $t3, $t1, 3 /* 07B2E0 7F0467B0 0562012C */ bltzl $t3, .L7F046C64 /* 07B2E4 7F0467B4 2401000D */ li $at, 13 /* 07B2E8 7F0467B8 8E700004 */ lw $s0, 4($s3) /* 07B2EC 7F0467BC 8E1900D4 */ lw $t9, 0xd4($s0) /* 07B2F0 7F0467C0 53200004 */ beql $t9, $zero, .L7F0467D4 /* 07B2F4 7F0467C4 C61200D0 */ lwc1 $f18, 0xd0($s0) /* 07B2F8 7F0467C8 10000002 */ b .L7F0467D4 /* 07B2FC 7F0467CC C61200CC */ lwc1 $f18, 0xcc($s0) /* 07B300 7F0467D0 C61200D0 */ lwc1 $f18, 0xd0($s0) .L7F0467D4: /* 07B304 7F0467D4 0FC225E6 */ jal get_curplayer_positiondata /* 07B308 7F0467D8 E7B20518 */ swc1 $f18, 0x518($sp) /* 07B30C 7F0467DC AFA20514 */ sw $v0, 0x514($sp) /* 07B310 7F0467E0 C6280058 */ lwc1 $f8, 0x58($s1) /* 07B314 7F0467E4 C4440008 */ lwc1 $f4, 8($v0) /* 07B318 7F0467E8 C60000E8 */ lwc1 $f0, 0xe8($s0) /* 07B31C 7F0467EC C62A005C */ lwc1 $f10, 0x5c($s1) /* 07B320 7F0467F0 46082301 */ sub.s $f12, $f4, $f8 /* 07B324 7F0467F4 C446000C */ lwc1 $f6, 0xc($v0) /* 07B328 7F0467F8 C6280060 */ lwc1 $f8, 0x60($s1) /* 07B32C 7F0467FC 4600B03C */ c.lt.s $f22, $f0 /* 07B330 7F046800 C4440010 */ lwc1 $f4, 0x10($v0) /* 07B334 7F046804 C7B20518 */ lwc1 $f18, 0x518($sp) /* 07B338 7F046808 24120001 */ li $s2, 1 /* 07B33C 7F04680C 460A3081 */ sub.s $f2, $f6, $f10 /* 07B340 7F046810 4500000E */ bc1f .L7F04684C /* 07B344 7F046814 46082381 */ sub.s $f14, $f4, $f8 /* 07B348 7F046818 46000182 */ mul.s $f6, $f0, $f0 /* 07B34C 7F04681C 00000000 */ nop /* 07B350 7F046820 460C6282 */ mul.s $f10, $f12, $f12 /* 07B354 7F046824 00000000 */ nop /* 07B358 7F046828 46021102 */ mul.s $f4, $f2, $f2 /* 07B35C 7F04682C 46045200 */ add.s $f8, $f10, $f4 /* 07B360 7F046830 460E7282 */ mul.s $f10, $f14, $f14 /* 07B364 7F046834 460A4100 */ add.s $f4, $f8, $f10 /* 07B368 7F046838 4604303C */ c.lt.s $f6, $f4 /* 07B36C 7F04683C 00000000 */ nop /* 07B370 7F046840 45000002 */ bc1f .L7F04684C /* 07B374 7F046844 00000000 */ nop /* 07B378 7F046848 00009025 */ move $s2, $zero .L7F04684C: /* 07B37C 7F04684C 8E2A0008 */ lw $t2, 8($s1) /* 07B380 7F046850 000A6080 */ sll $t4, $t2, 2 /* 07B384 7F046854 05810002 */ bgez $t4, .L7F046860 /* 07B388 7F046858 00000000 */ nop /* 07B38C 7F04685C 00009025 */ move $s2, $zero .L7F046860: /* 07B390 7F046860 1240003A */ beqz $s2, .L7F04694C /* 07B394 7F046864 00000000 */ nop /* 07B398 7F046868 0FC16A8C */ jal atan2f /* 07B39C 7F04686C E7B20518 */ swc1 $f18, 0x518($sp) /* 07B3A0 7F046870 C60200C8 */ lwc1 $f2, 0xc8($s0) /* 07B3A4 7F046874 C7B20518 */ lwc1 $f18, 0x518($sp) /* 07B3A8 7F046878 3C018005 */ lui $at, %hi(D_80052ACC) /* 07B3AC 7F04687C 4616103C */ c.lt.s $f2, $f22 /* 07B3B0 7F046880 00000000 */ nop /* 07B3B4 7F046884 45000005 */ bc1f .L7F04689C /* 07B3B8 7F046888 00000000 */ nop /* 07B3BC 7F04688C 3C018005 */ lui $at, %hi(D_80052AC8) /* 07B3C0 7F046890 C4342AC8 */ lwc1 $f20, %lo(D_80052AC8)($at) /* 07B3C4 7F046894 10000007 */ b .L7F0468B4 /* 07B3C8 7F046898 46141080 */ add.s $f2, $f2, $f20 .L7F04689C: /* 07B3CC 7F04689C C4342ACC */ lwc1 $f20, %lo(D_80052ACC)($at) /* 07B3D0 7F0468A0 4602A03E */ c.le.s $f20, $f2 /* 07B3D4 7F0468A4 00000000 */ nop /* 07B3D8 7F0468A8 45020003 */ bc1fl .L7F0468B8 /* 07B3DC 7F0468AC C60800C4 */ lwc1 $f8, 0xc4($s0) /* 07B3E0 7F0468B0 46141081 */ sub.s $f2, $f2, $f20 .L7F0468B4: /* 07B3E4 7F0468B4 C60800C4 */ lwc1 $f8, 0xc4($s0) .L7F0468B8: /* 07B3E8 7F0468B8 3C018005 */ lui $at, %hi(D_80052AD0) /* 07B3EC 7F0468BC 46081080 */ add.s $f2, $f2, $f8 /* 07B3F0 7F0468C0 4602A03E */ c.le.s $f20, $f2 /* 07B3F4 7F0468C4 00000000 */ nop /* 07B3F8 7F0468C8 45020003 */ bc1fl .L7F0468D8 /* 07B3FC 7F0468CC 4602003C */ c.lt.s $f0, $f2 /* 07B400 7F0468D0 46141081 */ sub.s $f2, $f2, $f20 /* 07B404 7F0468D4 4602003C */ c.lt.s $f0, $f2 .L7F0468D8: /* 07B408 7F0468D8 46020381 */ sub.s $f14, $f0, $f2 /* 07B40C 7F0468DC 45000002 */ bc1f .L7F0468E8 /* 07B410 7F0468E0 46007306 */ mov.s $f12, $f14 /* 07B414 7F0468E4 46147300 */ add.s $f12, $f14, $f20 .L7F0468E8: /* 07B418 7F0468E8 C4202AD0 */ lwc1 $f0, %lo(D_80052AD0)($at) /* 07B41C 7F0468EC 3C018005 */ lui $at, %hi(D_80052AD4) /* 07B420 7F0468F0 46006301 */ sub.s $f12, $f12, $f0 /* 07B424 7F0468F4 4616603C */ c.lt.s $f12, $f22 /* 07B428 7F0468F8 00000000 */ nop /* 07B42C 7F0468FC 45020003 */ bc1fl .L7F04690C /* 07B430 7F046900 460C003C */ c.lt.s $f0, $f12 /* 07B434 7F046904 46146300 */ add.s $f12, $f12, $f20 /* 07B438 7F046908 460C003C */ c.lt.s $f0, $f12 .L7F04690C: /* 07B43C 7F04690C 00000000 */ nop /* 07B440 7F046910 45000002 */ bc1f .L7F04691C /* 07B444 7F046914 00000000 */ nop /* 07B448 7F046918 46146301 */ sub.s $f12, $f12, $f20 .L7F04691C: /* 07B44C 7F04691C C42A2AD4 */ lwc1 $f10, %lo(D_80052AD4)($at) /* 07B450 7F046920 3C018005 */ lui $at, %hi(D_80052AD8) /* 07B454 7F046924 460C503C */ c.lt.s $f10, $f12 /* 07B458 7F046928 00000000 */ nop /* 07B45C 7F04692C 45030007 */ bc1tl .L7F04694C /* 07B460 7F046930 00009025 */ move $s2, $zero /* 07B464 7F046934 C4262AD8 */ lwc1 $f6, %lo(D_80052AD8)($at) /* 07B468 7F046938 4606603C */ c.lt.s $f12, $f6 /* 07B46C 7F04693C 00000000 */ nop /* 07B470 7F046940 45000002 */ bc1f .L7F04694C /* 07B474 7F046944 00000000 */ nop /* 07B478 7F046948 00009025 */ move $s2, $zero .L7F04694C: /* 07B47C 7F04694C 12400034 */ beqz $s2, .L7F046A20 /* 07B480 7F046950 00002825 */ move $a1, $zero /* 07B484 7F046954 8E6E0014 */ lw $t6, 0x14($s3) /* 07B488 7F046958 E7B20518 */ swc1 $f18, 0x518($sp) /* 07B48C 7F04695C 8FA40514 */ lw $a0, 0x514($sp) /* 07B490 7F046960 0FC2280F */ jal sub_GAME_7F08A03C /* 07B494 7F046964 AFAE04F0 */ sw $t6, 0x4f0($sp) /* 07B498 7F046968 8FA20514 */ lw $v0, 0x514($sp) /* 07B49C 7F04696C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 07B4A0 7F046970 8E650008 */ lw $a1, 8($s3) /* 07B4A4 7F046974 C4440010 */ lwc1 $f4, 0x10($v0) /* 07B4A8 7F046978 8E660010 */ lw $a2, 0x10($s3) /* 07B4AC 7F04697C 8C470008 */ lw $a3, 8($v0) /* 07B4B0 7F046980 44814000 */ mtc1 $at, $f8 /* 07B4B4 7F046984 44815000 */ mtc1 $at, $f10 /* 07B4B8 7F046988 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B4BC 7F04698C 44813000 */ mtc1 $at, $f6 /* 07B4C0 7F046990 240D001B */ li $t5, 27 /* 07B4C4 7F046994 AFAD0014 */ sw $t5, 0x14($sp) /* 07B4C8 7F046998 E7B60020 */ swc1 $f22, 0x20($sp) /* 07B4CC 7F04699C 27A404F0 */ addiu $a0, $sp, 0x4f0 /* 07B4D0 7F0469A0 E7A40010 */ swc1 $f4, 0x10($sp) /* 07B4D4 7F0469A4 E7A80018 */ swc1 $f8, 0x18($sp) /* 07B4D8 7F0469A8 E7AA001C */ swc1 $f10, 0x1c($sp) /* 07B4DC 7F0469AC 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 07B4E0 7F0469B0 E7A60024 */ swc1 $f6, 0x24($sp) /* 07B4E4 7F0469B4 10400015 */ beqz $v0, .L7F046A0C /* 07B4E8 7F0469B8 C7B20518 */ lwc1 $f18, 0x518($sp) /* 07B4EC 7F0469BC 3C188005 */ lui $t8, %hi(clock_timer) /* 07B4F0 7F0469C0 8F188374 */ lw $t8, %lo(clock_timer)($t8) /* 07B4F4 7F0469C4 8E0F00E0 */ lw $t7, 0xe0($s0) /* 07B4F8 7F0469C8 3C014396 */ li $at, 0x43960000 # 300.000000 /* 07B4FC 7F0469CC 44812000 */ mtc1 $at, $f4 /* 07B500 7F0469D0 01F84021 */ addu $t0, $t7, $t8 /* 07B504 7F0469D4 AE0800E0 */ sw $t0, 0xe0($s0) /* 07B508 7F0469D8 3C018003 */ lui $at, %hi(D_80030B14) /* 07B50C 7F0469DC C4280B14 */ lwc1 $f8, %lo(D_80030B14)($at) /* 07B510 7F0469E0 46082282 */ mul.s $f10, $f4, $f8 /* 07B514 7F0469E4 4600518D */ trunc.w.s $f6, $f10 /* 07B518 7F0469E8 44193000 */ mfc1 $t9, $f6 /* 07B51C 7F0469EC 00000000 */ nop /* 07B520 7F0469F0 0119082A */ slt $at, $t0, $t9 /* 07B524 7F0469F4 54200006 */ bnezl $at, .L7F046A10 /* 07B528 7F0469F8 8FA40514 */ lw $a0, 0x514($sp) /* 07B52C 7F0469FC 0FC15772 */ jal start_alarm /* 07B530 7F046A00 E7B20518 */ swc1 $f18, 0x518($sp) /* 07B534 7F046A04 C7B20518 */ lwc1 $f18, 0x518($sp) /* 07B538 7F046A08 AE0000E0 */ sw $zero, 0xe0($s0) .L7F046A0C: /* 07B53C 7F046A0C 8FA40514 */ lw $a0, 0x514($sp) .L7F046A10: /* 07B540 7F046A10 24050001 */ li $a1, 1 /* 07B544 7F046A14 0FC2280F */ jal sub_GAME_7F08A03C /* 07B548 7F046A18 E7B20518 */ swc1 $f18, 0x518($sp) /* 07B54C 7F046A1C C7B20518 */ lwc1 $f18, 0x518($sp) .L7F046A20: /* 07B550 7F046A20 C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07B554 7F046A24 4612703C */ c.lt.s $f14, $f18 /* 07B558 7F046A28 00000000 */ nop /* 07B55C 7F046A2C 45020047 */ bc1fl .L7F046B4C /* 07B560 7F046A30 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B564 7F046A34 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B568 7F046A38 3C018005 */ lui $at, %hi(D_80052AE0) /* 07B56C 7F046A3C C4302AE0 */ lwc1 $f16, %lo(D_80052AE0)($at) /* 07B570 7F046A40 46000102 */ mul.s $f4, $f0, $f0 /* 07B574 7F046A44 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07B578 7F046A48 44814000 */ mtc1 $at, $f8 /* 07B57C 7F046A4C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B580 7F046A50 46082282 */ mul.s $f10, $f4, $f8 /* 07B584 7F046A54 46105083 */ div.s $f2, $f10, $f16 /* 07B588 7F046A58 46029181 */ sub.s $f6, $f18, $f2 /* 07B58C 7F046A5C 460E303E */ c.le.s $f6, $f14 /* 07B590 7F046A60 00000000 */ nop /* 07B594 7F046A64 4502000F */ bc1fl .L7F046AA4 /* 07B598 7F046A68 C60C00DC */ lwc1 $f12, 0xdc($s0) /* 07B59C 7F046A6C C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07B5A0 7F046A70 46048202 */ mul.s $f8, $f16, $f4 /* 07B5A4 7F046A74 46080281 */ sub.s $f10, $f0, $f8 /* 07B5A8 7F046A78 E60A00D8 */ swc1 $f10, 0xd8($s0) /* 07B5AC 7F046A7C C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B5B0 7F046A80 4610003C */ c.lt.s $f0, $f16 /* 07B5B4 7F046A84 00000000 */ nop /* 07B5B8 7F046A88 45000003 */ bc1f .L7F046A98 /* 07B5BC 7F046A8C 00000000 */ nop /* 07B5C0 7F046A90 E61000D8 */ swc1 $f16, 0xd8($s0) /* 07B5C4 7F046A94 C60000D8 */ lwc1 $f0, 0xd8($s0) .L7F046A98: /* 07B5C8 7F046A98 1000001D */ b .L7F046B10 /* 07B5CC 7F046A9C C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07B5D0 7F046AA0 C60C00DC */ lwc1 $f12, 0xdc($s0) .L7F046AA4: /* 07B5D4 7F046AA4 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B5D8 7F046AA8 460C003C */ c.lt.s $f0, $f12 /* 07B5DC 7F046AAC 00000000 */ nop /* 07B5E0 7F046AB0 45000017 */ bc1f .L7F046B10 /* 07B5E4 7F046AB4 00000000 */ nop /* 07B5E8 7F046AB8 C4268378 */ lwc1 $f6, %lo(global_timer_delta)($at) /* 07B5EC 7F046ABC 46068102 */ mul.s $f4, $f16, $f6 /* 07B5F0 7F046AC0 46040080 */ add.s $f2, $f0, $f4 /* 07B5F4 7F046AC4 4602603C */ c.lt.s $f12, $f2 /* 07B5F8 7F046AC8 00000000 */ nop /* 07B5FC 7F046ACC 45000002 */ bc1f .L7F046AD8 /* 07B600 7F046AD0 00000000 */ nop /* 07B604 7F046AD4 46006086 */ mov.s $f2, $f12 .L7F046AD8: /* 07B608 7F046AD8 46021202 */ mul.s $f8, $f2, $f2 /* 07B60C 7F046ADC 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07B610 7F046AE0 44815000 */ mtc1 $at, $f10 /* 07B614 7F046AE4 00000000 */ nop /* 07B618 7F046AE8 460A4182 */ mul.s $f6, $f8, $f10 /* 07B61C 7F046AEC 46103103 */ div.s $f4, $f6, $f16 /* 07B620 7F046AF0 46049201 */ sub.s $f8, $f18, $f4 /* 07B624 7F046AF4 4608703C */ c.lt.s $f14, $f8 /* 07B628 7F046AF8 00000000 */ nop /* 07B62C 7F046AFC 45000004 */ bc1f .L7F046B10 /* 07B630 7F046B00 00000000 */ nop /* 07B634 7F046B04 E60200D8 */ swc1 $f2, 0xd8($s0) /* 07B638 7F046B08 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B63C 7F046B0C C60E00C8 */ lwc1 $f14, 0xc8($s0) .L7F046B10: /* 07B640 7F046B10 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B644 7F046B14 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07B648 7F046B18 460A0182 */ mul.s $f6, $f0, $f10 /* 07B64C 7F046B1C 46067100 */ add.s $f4, $f14, $f6 /* 07B650 7F046B20 E60400C8 */ swc1 $f4, 0xc8($s0) /* 07B654 7F046B24 C60800C8 */ lwc1 $f8, 0xc8($s0) /* 07B658 7F046B28 4608903E */ c.le.s $f18, $f8 /* 07B65C 7F046B2C 00000000 */ nop /* 07B660 7F046B30 450205BF */ bc1fl .L7F048230 /* 07B664 7F046B34 92220003 */ lbu $v0, 3($s1) /* 07B668 7F046B38 E61200C8 */ swc1 $f18, 0xc8($s0) /* 07B66C 7F046B3C E61600D8 */ swc1 $f22, 0xd8($s0) /* 07B670 7F046B40 100005BA */ b .L7F04822C /* 07B674 7F046B44 AE0000D4 */ sw $zero, 0xd4($s0) /* 07B678 7F046B48 C60000D8 */ lwc1 $f0, 0xd8($s0) .L7F046B4C: /* 07B67C 7F046B4C 3C018005 */ lui $at, %hi(D_80052AE4) /* 07B680 7F046B50 C4302AE4 */ lwc1 $f16, %lo(D_80052AE4)($at) /* 07B684 7F046B54 46000282 */ mul.s $f10, $f0, $f0 /* 07B688 7F046B58 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07B68C 7F046B5C 44813000 */ mtc1 $at, $f6 /* 07B690 7F046B60 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B694 7F046B64 240A0001 */ li $t2, 1 /* 07B698 7F046B68 46065102 */ mul.s $f4, $f10, $f6 /* 07B69C 7F046B6C 46102083 */ div.s $f2, $f4, $f16 /* 07B6A0 7F046B70 46029200 */ add.s $f8, $f18, $f2 /* 07B6A4 7F046B74 4608703E */ c.le.s $f14, $f8 /* 07B6A8 7F046B78 00000000 */ nop /* 07B6AC 7F046B7C 4502000F */ bc1fl .L7F046BBC /* 07B6B0 7F046B80 C60C00DC */ lwc1 $f12, 0xdc($s0) /* 07B6B4 7F046B84 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07B6B8 7F046B88 460A8182 */ mul.s $f6, $f16, $f10 /* 07B6BC 7F046B8C 46060101 */ sub.s $f4, $f0, $f6 /* 07B6C0 7F046B90 E60400D8 */ swc1 $f4, 0xd8($s0) /* 07B6C4 7F046B94 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B6C8 7F046B98 4610003C */ c.lt.s $f0, $f16 /* 07B6CC 7F046B9C 00000000 */ nop /* 07B6D0 7F046BA0 45000003 */ bc1f .L7F046BB0 /* 07B6D4 7F046BA4 00000000 */ nop /* 07B6D8 7F046BA8 E61000D8 */ swc1 $f16, 0xd8($s0) /* 07B6DC 7F046BAC C60000D8 */ lwc1 $f0, 0xd8($s0) .L7F046BB0: /* 07B6E0 7F046BB0 1000001D */ b .L7F046C28 /* 07B6E4 7F046BB4 C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07B6E8 7F046BB8 C60C00DC */ lwc1 $f12, 0xdc($s0) .L7F046BBC: /* 07B6EC 7F046BBC 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B6F0 7F046BC0 460C003C */ c.lt.s $f0, $f12 /* 07B6F4 7F046BC4 00000000 */ nop /* 07B6F8 7F046BC8 45000017 */ bc1f .L7F046C28 /* 07B6FC 7F046BCC 00000000 */ nop /* 07B700 7F046BD0 C4288378 */ lwc1 $f8, %lo(global_timer_delta)($at) /* 07B704 7F046BD4 46088282 */ mul.s $f10, $f16, $f8 /* 07B708 7F046BD8 460A0080 */ add.s $f2, $f0, $f10 /* 07B70C 7F046BDC 4602603C */ c.lt.s $f12, $f2 /* 07B710 7F046BE0 00000000 */ nop /* 07B714 7F046BE4 45000002 */ bc1f .L7F046BF0 /* 07B718 7F046BE8 00000000 */ nop /* 07B71C 7F046BEC 46006086 */ mov.s $f2, $f12 .L7F046BF0: /* 07B720 7F046BF0 46021182 */ mul.s $f6, $f2, $f2 /* 07B724 7F046BF4 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07B728 7F046BF8 44812000 */ mtc1 $at, $f4 /* 07B72C 7F046BFC 00000000 */ nop /* 07B730 7F046C00 46043202 */ mul.s $f8, $f6, $f4 /* 07B734 7F046C04 46104283 */ div.s $f10, $f8, $f16 /* 07B738 7F046C08 460A9180 */ add.s $f6, $f18, $f10 /* 07B73C 7F046C0C 460E303C */ c.lt.s $f6, $f14 /* 07B740 7F046C10 00000000 */ nop /* 07B744 7F046C14 45000004 */ bc1f .L7F046C28 /* 07B748 7F046C18 00000000 */ nop /* 07B74C 7F046C1C E60200D8 */ swc1 $f2, 0xd8($s0) /* 07B750 7F046C20 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B754 7F046C24 C60E00C8 */ lwc1 $f14, 0xc8($s0) .L7F046C28: /* 07B758 7F046C28 3C018005 */ lui $at, %hi(global_timer_delta) /* 07B75C 7F046C2C C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07B760 7F046C30 46040202 */ mul.s $f8, $f0, $f4 /* 07B764 7F046C34 46087281 */ sub.s $f10, $f14, $f8 /* 07B768 7F046C38 E60A00C8 */ swc1 $f10, 0xc8($s0) /* 07B76C 7F046C3C C60600C8 */ lwc1 $f6, 0xc8($s0) /* 07B770 7F046C40 4612303E */ c.le.s $f6, $f18 /* 07B774 7F046C44 00000000 */ nop /* 07B778 7F046C48 45020579 */ bc1fl .L7F048230 /* 07B77C 7F046C4C 92220003 */ lbu $v0, 3($s1) /* 07B780 7F046C50 E61200C8 */ swc1 $f18, 0xc8($s0) /* 07B784 7F046C54 E61600D8 */ swc1 $f22, 0xd8($s0) /* 07B788 7F046C58 10000574 */ b .L7F04822C /* 07B78C 7F046C5C AE0A00D4 */ sw $t2, 0xd4($s0) /* 07B790 7F046C60 2401000D */ li $at, 13 .L7F046C64: /* 07B794 7F046C64 5441023F */ bnel $v0, $at, .L7F047564 /* 07B798 7F046C68 24010027 */ li $at, 39 /* 07B79C 7F046C6C 8E2C0008 */ lw $t4, 8($s1) /* 07B7A0 7F046C70 000C70C0 */ sll $t6, $t4, 3 /* 07B7A4 7F046C74 05C2023B */ bltzl $t6, .L7F047564 /* 07B7A8 7F046C78 24010027 */ li $at, 39 /* 07B7AC 7F046C7C 0FC225E6 */ jal get_curplayer_positiondata /* 07B7B0 7F046C80 8E700004 */ lw $s0, 4($s3) /* 07B7B4 7F046C84 AFA004AC */ sw $zero, 0x4ac($sp) /* 07B7B8 7F046C88 AFA004A8 */ sw $zero, 0x4a8($sp) /* 07B7BC 7F046C8C AFA004A4 */ sw $zero, 0x4a4($sp) /* 07B7C0 7F046C90 8E23000C */ lw $v1, 0xc($s1) /* 07B7C4 7F046C94 00409025 */ move $s2, $v0 /* 07B7C8 7F046C98 00036800 */ sll $t5, $v1, 0 /* 07B7CC 7F046C9C 05A10056 */ bgez $t5, .L7F046DF8 /* 07B7D0 7F046CA0 00037840 */ sll $t7, $v1, 1 /* 07B7D4 7F046CA4 05E30008 */ bgezl $t7, .L7F046CC8 /* 07B7D8 7F046CA8 C6020084 */ lwc1 $f2, 0x84($s0) /* 07B7DC 7F046CAC C6080090 */ lwc1 $f8, 0x90($s0) /* 07B7E0 7F046CB0 C604009C */ lwc1 $f4, 0x9c($s0) /* 07B7E4 7F046CB4 E6080084 */ swc1 $f8, 0x84($s0) /* 07B7E8 7F046CB8 C6020084 */ lwc1 $f2, 0x84($s0) /* 07B7EC 7F046CBC 10000036 */ b .L7F046D98 /* 07B7F0 7F046CC0 E6040098 */ swc1 $f4, 0x98($s0) /* 07B7F4 7F046CC4 C6020084 */ lwc1 $f2, 0x84($s0) .L7F046CC8: /* 07B7F8 7F046CC8 C60A0090 */ lwc1 $f10, 0x90($s0) /* 07B7FC 7F046CCC 460A1032 */ c.eq.s $f2, $f10 /* 07B800 7F046CD0 00000000 */ nop /* 07B804 7F046CD4 45000030 */ bc1f .L7F046D98 /* 07B808 7F046CD8 00000000 */ nop /* 07B80C 7F046CDC C6060098 */ lwc1 $f6, 0x98($s0) /* 07B810 7F046CE0 C604009C */ lwc1 $f4, 0x9c($s0) /* 07B814 7F046CE4 46043032 */ c.eq.s $f6, $f4 /* 07B818 7F046CE8 00000000 */ nop /* 07B81C 7F046CEC 4500002A */ bc1f .L7F046D98 /* 07B820 7F046CF0 00000000 */ nop /* 07B824 7F046CF4 0C002914 */ jal get_random_value /* 07B828 7F046CF8 00000000 */ nop /* 07B82C 7F046CFC 44824000 */ mtc1 $v0, $f8 /* 07B830 7F046D00 3C018005 */ lui $at, %hi(D_80052AE8) /* 07B834 7F046D04 C4342AE8 */ lwc1 $f20, %lo(D_80052AE8)($at) /* 07B838 7F046D08 04410005 */ bgez $v0, .L7F046D20 /* 07B83C 7F046D0C 468042A0 */ cvt.s.w $f10, $f8 /* 07B840 7F046D10 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07B844 7F046D14 44813000 */ mtc1 $at, $f6 /* 07B848 7F046D18 00000000 */ nop /* 07B84C 7F046D1C 46065280 */ add.s $f10, $f10, $f6 .L7F046D20: /* 07B850 7F046D20 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07B854 7F046D24 44812000 */ mtc1 $at, $f4 /* 07B858 7F046D28 3C01421C */ li $at, 0x421C0000 # 39.000000 /* 07B85C 7F046D2C 44813000 */ mtc1 $at, $f6 /* 07B860 7F046D30 46045202 */ mul.s $f8, $f10, $f4 /* 07B864 7F046D34 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B868 7F046D38 44812000 */ mtc1 $at, $f4 /* 07B86C 7F046D3C 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07B870 7F046D40 46064282 */ mul.s $f10, $f8, $f6 /* 07B874 7F046D44 46045200 */ add.s $f8, $f10, $f4 /* 07B878 7F046D48 44815000 */ mtc1 $at, $f10 /* 07B87C 7F046D4C 46144182 */ mul.s $f6, $f8, $f20 /* 07B880 7F046D50 460A3103 */ div.s $f4, $f6, $f10 /* 07B884 7F046D54 0C002914 */ jal get_random_value /* 07B888 7F046D58 E6040098 */ swc1 $f4, 0x98($s0) /* 07B88C 7F046D5C 44824000 */ mtc1 $v0, $f8 /* 07B890 7F046D60 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07B894 7F046D64 04410004 */ bgez $v0, .L7F046D78 /* 07B898 7F046D68 468041A0 */ cvt.s.w $f6, $f8 /* 07B89C 7F046D6C 44815000 */ mtc1 $at, $f10 /* 07B8A0 7F046D70 00000000 */ nop /* 07B8A4 7F046D74 460A3180 */ add.s $f6, $f6, $f10 .L7F046D78: /* 07B8A8 7F046D78 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07B8AC 7F046D7C 44812000 */ mtc1 $at, $f4 /* 07B8B0 7F046D80 00000000 */ nop /* 07B8B4 7F046D84 46043202 */ mul.s $f8, $f6, $f4 /* 07B8B8 7F046D88 00000000 */ nop /* 07B8BC 7F046D8C 46144282 */ mul.s $f10, $f8, $f20 /* 07B8C0 7F046D90 E60A0084 */ swc1 $f10, 0x84($s0) /* 07B8C4 7F046D94 C6020084 */ lwc1 $f2, 0x84($s0) .L7F046D98: /* 07B8C8 7F046D98 3C018005 */ lui $at, %hi(D_80052AEC) /* 07B8CC 7F046D9C C4202AEC */ lwc1 $f0, %lo(D_80052AEC)($at) /* 07B8D0 7F046DA0 3C018005 */ lui $at, %hi(D_80052AF4) /* 07B8D4 7F046DA4 C4262AF4 */ lwc1 $f6, %lo(D_80052AF4)($at) /* 07B8D8 7F046DA8 44051000 */ mfc1 $a1, $f2 /* 07B8DC 7F046DAC 44070000 */ mfc1 $a3, $f0 /* 07B8E0 7F046DB0 26040090 */ addiu $a0, $s0, 0x90 /* 07B8E4 7F046DB4 26060094 */ addiu $a2, $s0, 0x94 /* 07B8E8 7F046DB8 E7A00010 */ swc1 $f0, 0x10($sp) /* 07B8EC 7F046DBC 0FC10C43 */ jal sub_GAME_7F04310C /* 07B8F0 7F046DC0 E7A60014 */ swc1 $f6, 0x14($sp) /* 07B8F4 7F046DC4 3C018005 */ lui $at, %hi(D_80052AF8) /* 07B8F8 7F046DC8 C4202AF8 */ lwc1 $f0, %lo(D_80052AF8)($at) /* 07B8FC 7F046DCC 3C018005 */ lui $at, %hi(D_80052AFC) /* 07B900 7F046DD0 C4242AFC */ lwc1 $f4, %lo(D_80052AFC)($at) /* 07B904 7F046DD4 8E050098 */ lw $a1, 0x98($s0) /* 07B908 7F046DD8 44070000 */ mfc1 $a3, $f0 /* 07B90C 7F046DDC 2604009C */ addiu $a0, $s0, 0x9c /* 07B910 7F046DE0 260600A0 */ addiu $a2, $s0, 0xa0 /* 07B914 7F046DE4 E7A00010 */ swc1 $f0, 0x10($sp) /* 07B918 7F046DE8 0FC10C43 */ jal sub_GAME_7F04310C /* 07B91C 7F046DEC E7A40014 */ swc1 $f4, 0x14($sp) /* 07B920 7F046DF0 1000050F */ b .L7F048230 /* 07B924 7F046DF4 92220003 */ lbu $v0, 3($s1) .L7F046DF8: /* 07B928 7F046DF8 C6480008 */ lwc1 $f8, 8($s2) /* 07B92C 7F046DFC C62A0058 */ lwc1 $f10, 0x58($s1) /* 07B930 7F046E00 C646000C */ lwc1 $f6, 0xc($s2) /* 07B934 7F046E04 C624005C */ lwc1 $f4, 0x5c($s1) /* 07B938 7F046E08 460A4001 */ sub.s $f0, $f8, $f10 /* 07B93C 7F046E0C 3C0141A0 */ li $at, 0x41A00000 # 20.000000 /* 07B940 7F046E10 44815000 */ mtc1 $at, $f10 /* 07B944 7F046E14 46043201 */ sub.s $f8, $f6, $f4 /* 07B948 7F046E18 460A4181 */ sub.s $f6, $f8, $f10 /* 07B94C 7F046E1C 46000282 */ mul.s $f10, $f0, $f0 /* 07B950 7F046E20 E7A604C0 */ swc1 $f6, 0x4c0($sp) /* 07B954 7F046E24 C6280060 */ lwc1 $f8, 0x60($s1) /* 07B958 7F046E28 C6440010 */ lwc1 $f4, 0x10($s2) /* 07B95C 7F046E2C E7A004C4 */ swc1 $f0, 0x4c4($sp) /* 07B960 7F046E30 46082081 */ sub.s $f2, $f4, $f8 /* 07B964 7F046E34 46021182 */ mul.s $f6, $f2, $f2 /* 07B968 7F046E38 E7A204BC */ swc1 $f2, 0x4bc($sp) /* 07B96C 7F046E3C 46065500 */ add.s $f20, $f10, $f6 /* 07B970 7F046E40 E7B404B8 */ swc1 $f20, 0x4b8($sp) /* 07B974 7F046E44 0C007DF8 */ jal sqrtf /* 07B978 7F046E48 4600A306 */ mov.s $f12, $f20 /* 07B97C 7F046E4C E7A004B0 */ swc1 $f0, 0x4b0($sp) /* 07B980 7F046E50 8E380008 */ lw $t8, 8($s1) /* 07B984 7F046E54 46000086 */ mov.s $f2, $f0 /* 07B988 7F046E58 00184100 */ sll $t0, $t8, 4 /* 07B98C 7F046E5C 05030008 */ bgezl $t0, .L7F046E80 /* 07B990 7F046E60 C7AC04B8 */ lwc1 $f12, 0x4b8($sp) /* 07B994 7F046E64 C7A004C0 */ lwc1 $f0, 0x4c0($sp) /* 07B998 7F046E68 46000102 */ mul.s $f4, $f0, $f0 /* 07B99C 7F046E6C 4604A300 */ add.s $f12, $f20, $f4 /* 07B9A0 7F046E70 0C007DF8 */ jal sqrtf /* 07B9A4 7F046E74 E7AC04B8 */ swc1 $f12, 0x4b8($sp) /* 07B9A8 7F046E78 46000086 */ mov.s $f2, $f0 /* 07B9AC 7F046E7C C7AC04B8 */ lwc1 $f12, 0x4b8($sp) .L7F046E80: /* 07B9B0 7F046E80 0FC0B491 */ jal sub_GAME_7F02D244 /* 07B9B4 7F046E84 E7A204B4 */ swc1 $f2, 0x4b4($sp) /* 07B9B8 7F046E88 E7A004A0 */ swc1 $f0, 0x4a0($sp) /* 07B9BC 7F046E8C C6080098 */ lwc1 $f8, 0x98($s0) /* 07B9C0 7F046E90 C6100084 */ lwc1 $f16, 0x84($s0) /* 07B9C4 7F046E94 C7A204B4 */ lwc1 $f2, 0x4b4($sp) /* 07B9C8 7F046E98 E7A804D4 */ swc1 $f8, 0x4d4($sp) /* 07B9CC 7F046E9C C60A00A8 */ lwc1 $f10, 0xa8($s0) /* 07B9D0 7F046EA0 460A103E */ c.le.s $f2, $f10 /* 07B9D4 7F046EA4 00000000 */ nop /* 07B9D8 7F046EA8 45020096 */ bc1fl .L7F047104 /* 07B9DC 7F046EAC 8FAC04AC */ lw $t4, 0x4ac($sp) /* 07B9E0 7F046EB0 C7AC04C4 */ lwc1 $f12, 0x4c4($sp) /* 07B9E4 7F046EB4 C7AE04BC */ lwc1 $f14, 0x4bc($sp) /* 07B9E8 7F046EB8 0FC16A8C */ jal atan2f /* 07B9EC 7F046EBC E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07B9F0 7F046EC0 E7A0049C */ swc1 $f0, 0x49c($sp) /* 07B9F4 7F046EC4 C7AC04C0 */ lwc1 $f12, 0x4c0($sp) /* 07B9F8 7F046EC8 0FC16A8C */ jal atan2f /* 07B9FC 7F046ECC C7AE04B0 */ lwc1 $f14, 0x4b0($sp) /* 07BA00 7F046ED0 E7A00498 */ swc1 $f0, 0x498($sp) /* 07BA04 7F046ED4 8E220008 */ lw $v0, 8($s1) /* 07BA08 7F046ED8 C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BA0C 7F046EDC 24190001 */ li $t9, 1 /* 07BA10 7F046EE0 00025840 */ sll $t3, $v0, 1 /* 07BA14 7F046EE4 05600003 */ bltz $t3, .L7F046EF4 /* 07BA18 7F046EE8 00024880 */ sll $t1, $v0, 2 /* 07BA1C 7F046EEC 05210005 */ bgez $t1, .L7F046F04 /* 07BA20 7F046EF0 C7A6049C */ lwc1 $f6, 0x49c($sp) .L7F046EF4: /* 07BA24 7F046EF4 3C018005 */ lui $at, %hi(D_80052B00) /* 07BA28 7F046EF8 C4342B00 */ lwc1 $f20, %lo(D_80052B00)($at) /* 07BA2C 7F046EFC 10000027 */ b .L7F046F9C /* 07BA30 7F046F00 AFB904AC */ sw $t9, 0x4ac($sp) .L7F046F04: /* 07BA34 7F046F04 C6040090 */ lwc1 $f4, 0x90($s0) /* 07BA38 7F046F08 3C018005 */ lui $at, %hi(D_80052B04) /* 07BA3C 7F046F0C 46043301 */ sub.s $f12, $f6, $f4 /* 07BA40 7F046F10 4616603C */ c.lt.s $f12, $f22 /* 07BA44 7F046F14 00000000 */ nop /* 07BA48 7F046F18 45000003 */ bc1f .L7F046F28 /* 07BA4C 7F046F1C 00000000 */ nop /* 07BA50 7F046F20 C4342B04 */ lwc1 $f20, %lo(D_80052B04)($at) /* 07BA54 7F046F24 46146300 */ add.s $f12, $f12, $f20 .L7F046F28: /* 07BA58 7F046F28 3C018005 */ lui $at, %hi(D_80052B08) /* 07BA5C 7F046F2C C4342B08 */ lwc1 $f20, %lo(D_80052B08)($at) /* 07BA60 7F046F30 3C018005 */ lui $at, %hi(D_80052B0C) /* 07BA64 7F046F34 C4282B0C */ lwc1 $f8, %lo(D_80052B0C)($at) /* 07BA68 7F046F38 3C018005 */ lui $at, %hi(D_80052B10) /* 07BA6C 7F046F3C 460C403C */ c.lt.s $f8, $f12 /* 07BA70 7F046F40 00000000 */ nop /* 07BA74 7F046F44 45020003 */ bc1fl .L7F046F54 /* 07BA78 7F046F48 C60A009C */ lwc1 $f10, 0x9c($s0) /* 07BA7C 7F046F4C 46146301 */ sub.s $f12, $f12, $f20 /* 07BA80 7F046F50 C60A009C */ lwc1 $f10, 0x9c($s0) .L7F046F54: /* 07BA84 7F046F54 460A0081 */ sub.s $f2, $f0, $f10 /* 07BA88 7F046F58 4616103C */ c.lt.s $f2, $f22 /* 07BA8C 7F046F5C 00000000 */ nop /* 07BA90 7F046F60 45000001 */ bc1f .L7F046F68 /* 07BA94 7F046F64 00000000 */ nop .L7F046F68: /* 07BA98 7F046F68 C4262B10 */ lwc1 $f6, %lo(D_80052B10)($at) /* 07BA9C 7F046F6C 3C018005 */ lui $at, %hi(D_80052B14) /* 07BAA0 7F046F70 4606603C */ c.lt.s $f12, $f6 /* 07BAA4 7F046F74 00000000 */ nop /* 07BAA8 7F046F78 45020009 */ bc1fl .L7F046FA0 /* 07BAAC 7F046F7C 8FAC04AC */ lw $t4, 0x4ac($sp) /* 07BAB0 7F046F80 C4242B14 */ lwc1 $f4, %lo(D_80052B14)($at) /* 07BAB4 7F046F84 240A0001 */ li $t2, 1 /* 07BAB8 7F046F88 460C203C */ c.lt.s $f4, $f12 /* 07BABC 7F046F8C 00000000 */ nop /* 07BAC0 7F046F90 45020003 */ bc1fl .L7F046FA0 /* 07BAC4 7F046F94 8FAC04AC */ lw $t4, 0x4ac($sp) /* 07BAC8 7F046F98 AFAA04AC */ sw $t2, 0x4ac($sp) .L7F046F9C: /* 07BACC 7F046F9C 8FAC04AC */ lw $t4, 0x4ac($sp) .L7F046FA0: /* 07BAD0 7F046FA0 C7A8049C */ lwc1 $f8, 0x49c($sp) /* 07BAD4 7F046FA4 02402025 */ move $a0, $s2 /* 07BAD8 7F046FA8 11800055 */ beqz $t4, .L7F047100 /* 07BADC 7F046FAC 00002825 */ move $a1, $zero /* 07BAE0 7F046FB0 C60A0084 */ lwc1 $f10, 0x84($s0) /* 07BAE4 7F046FB4 3C018005 */ lui $at, %hi(D_80052B18) /* 07BAE8 7F046FB8 C4262B18 */ lwc1 $f6, %lo(D_80052B18)($at) /* 07BAEC 7F046FBC 460A4001 */ sub.s $f0, $f8, $f10 /* 07BAF0 7F046FC0 8E6E0014 */ lw $t6, 0x14($s3) /* 07BAF4 7F046FC4 3C018005 */ lui $at, %hi(D_80052B1C) /* 07BAF8 7F046FC8 4606003C */ c.lt.s $f0, $f6 /* 07BAFC 7F046FCC AFAE0490 */ sw $t6, 0x490($sp) /* 07BB00 7F046FD0 45000003 */ bc1f .L7F046FE0 /* 07BB04 7F046FD4 00000000 */ nop /* 07BB08 7F046FD8 10000007 */ b .L7F046FF8 /* 07BB0C 7F046FDC 46140000 */ add.s $f0, $f0, $f20 .L7F046FE0: /* 07BB10 7F046FE0 C4242B1C */ lwc1 $f4, %lo(D_80052B1C)($at) /* 07BB14 7F046FE4 4600203E */ c.le.s $f4, $f0 /* 07BB18 7F046FE8 00000000 */ nop /* 07BB1C 7F046FEC 45020003 */ bc1fl .L7F046FFC /* 07BB20 7F046FF0 E7A00494 */ swc1 $f0, 0x494($sp) /* 07BB24 7F046FF4 46140001 */ sub.s $f0, $f0, $f20 .L7F046FF8: /* 07BB28 7F046FF8 E7A00494 */ swc1 $f0, 0x494($sp) .L7F046FFC: /* 07BB2C 7F046FFC 0FC2280F */ jal sub_GAME_7F08A03C /* 07BB30 7F047000 E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BB34 7F047004 C7A00494 */ lwc1 $f0, 0x494($sp) /* 07BB38 7F047008 C6080088 */ lwc1 $f8, 0x88($s0) /* 07BB3C 7F04700C C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BB40 7F047010 4608003E */ c.le.s $f0, $f8 /* 07BB44 7F047014 00000000 */ nop /* 07BB48 7F047018 45020027 */ bc1fl .L7F0470B8 /* 07BB4C 7F04701C 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BB50 7F047020 C60A008C */ lwc1 $f10, 0x8c($s0) /* 07BB54 7F047024 240D001B */ li $t5, 27 /* 07BB58 7F047028 4600503E */ c.le.s $f10, $f0 /* 07BB5C 7F04702C 00000000 */ nop /* 07BB60 7F047030 45020021 */ bc1fl .L7F0470B8 /* 07BB64 7F047034 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BB68 7F047038 C6460010 */ lwc1 $f6, 0x10($s2) /* 07BB6C 7F04703C 8E650008 */ lw $a1, 8($s3) /* 07BB70 7F047040 8E660010 */ lw $a2, 0x10($s3) /* 07BB74 7F047044 8E470008 */ lw $a3, 8($s2) /* 07BB78 7F047048 AFAD0014 */ sw $t5, 0x14($sp) /* 07BB7C 7F04704C E7A60010 */ swc1 $f6, 0x10($sp) /* 07BB80 7F047050 C660000C */ lwc1 $f0, 0xc($s3) /* 07BB84 7F047054 27A40490 */ addiu $a0, $sp, 0x490 /* 07BB88 7F047058 E7A00018 */ swc1 $f0, 0x18($sp) /* 07BB8C 7F04705C E7A0001C */ swc1 $f0, 0x1c($sp) /* 07BB90 7F047060 C642000C */ lwc1 $f2, 0xc($s2) /* 07BB94 7F047064 E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BB98 7F047068 E7A20020 */ swc1 $f2, 0x20($sp) /* 07BB9C 7F04706C 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 07BBA0 7F047070 E7A20024 */ swc1 $f2, 0x24($sp) /* 07BBA4 7F047074 1040000F */ beqz $v0, .L7F0470B4 /* 07BBA8 7F047078 C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BBAC 7F04707C 8FAF0490 */ lw $t7, 0x490($sp) /* 07BBB0 7F047080 8E580014 */ lw $t8, 0x14($s2) /* 07BBB4 7F047084 55F8000C */ bnel $t7, $t8, .L7F0470B8 /* 07BBB8 7F047088 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BBBC 7F04708C 8E280008 */ lw $t0, 8($s1) /* 07BBC0 7F047090 3C012000 */ lui $at, 0x2000 /* 07BBC4 7F047094 24090001 */ li $t1, 1 /* 07BBC8 7F047098 01015825 */ or $t3, $t0, $at /* 07BBCC 7F04709C AE2B0008 */ sw $t3, 8($s1) /* 07BBD0 7F0470A0 C7A40498 */ lwc1 $f4, 0x498($sp) /* 07BBD4 7F0470A4 AFA904A4 */ sw $t1, 0x4a4($sp) /* 07BBD8 7F0470A8 C7B0049C */ lwc1 $f16, 0x49c($sp) /* 07BBDC 7F0470AC 1000000F */ b .L7F0470EC /* 07BBE0 7F0470B0 E7A404D4 */ swc1 $f4, 0x4d4($sp) .L7F0470B4: /* 07BBE4 7F0470B4 8E0200B8 */ lw $v0, 0xb8($s0) .L7F0470B8: /* 07BBE8 7F0470B8 3C198005 */ lui $t9, %hi(global_timer) /* 07BBEC 7F0470BC 0442000B */ bltzl $v0, .L7F0470EC /* 07BBF0 7F0470C0 AFA004AC */ sw $zero, 0x4ac($sp) /* 07BBF4 7F0470C4 8F39837C */ lw $t9, %lo(global_timer)($t9) /* 07BBF8 7F0470C8 272AFF88 */ addiu $t2, $t9, -0x78 /* 07BBFC 7F0470CC 0142082A */ slt $at, $t2, $v0 /* 07BC00 7F0470D0 50200006 */ beql $at, $zero, .L7F0470EC /* 07BC04 7F0470D4 AFA004AC */ sw $zero, 0x4ac($sp) /* 07BC08 7F0470D8 C608009C */ lwc1 $f8, 0x9c($s0) /* 07BC0C 7F0470DC C6100090 */ lwc1 $f16, 0x90($s0) /* 07BC10 7F0470E0 10000002 */ b .L7F0470EC /* 07BC14 7F0470E4 E7A804D4 */ swc1 $f8, 0x4d4($sp) /* 07BC18 7F0470E8 AFA004AC */ sw $zero, 0x4ac($sp) .L7F0470EC: /* 07BC1C 7F0470EC 02402025 */ move $a0, $s2 /* 07BC20 7F0470F0 24050001 */ li $a1, 1 /* 07BC24 7F0470F4 0FC2280F */ jal sub_GAME_7F08A03C /* 07BC28 7F0470F8 E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BC2C 7F0470FC C7B004D8 */ lwc1 $f16, 0x4d8($sp) .L7F047100: /* 07BC30 7F047100 8FAC04AC */ lw $t4, 0x4ac($sp) .L7F047104: /* 07BC34 7F047104 3C018005 */ lui $at, %hi(D_80052B20) /* 07BC38 7F047108 C4342B20 */ lwc1 $f20, %lo(D_80052B20)($at) /* 07BC3C 7F04710C 51800007 */ beql $t4, $zero, .L7F04712C /* 07BC40 7F047110 8E0E00D0 */ lw $t6, 0xd0($s0) /* 07BC44 7F047114 C7AC04B8 */ lwc1 $f12, 0x4b8($sp) /* 07BC48 7F047118 0FC0B491 */ jal sub_GAME_7F02D244 /* 07BC4C 7F04711C E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BC50 7F047120 C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BC54 7F047124 E7A004A0 */ swc1 $f0, 0x4a0($sp) /* 07BC58 7F047128 8E0E00D0 */ lw $t6, 0xd0($s0) .L7F04712C: /* 07BC5C 7F04712C 11C0001F */ beqz $t6, .L7F0471AC /* 07BC60 7F047130 3C0D8005 */ lui $t5, %hi(global_timer) /* 07BC64 7F047134 8DAD837C */ lw $t5, %lo(global_timer)($t5) /* 07BC68 7F047138 24010078 */ li $at, 120 /* 07BC6C 7F04713C E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BC70 7F047140 01A1001A */ div $zero, $t5, $at /* 07BC74 7F047144 00007810 */ mfhi $t7 /* 07BC78 7F047148 448F5000 */ mtc1 $t7, $f10 /* 07BC7C 7F04714C 3C0142F0 */ li $at, 0x42F00000 # 120.000000 /* 07BC80 7F047150 44814000 */ mtc1 $at, $f8 /* 07BC84 7F047154 468051A0 */ cvt.s.w $f6, $f10 /* 07BC88 7F047158 46143102 */ mul.s $f4, $f6, $f20 /* 07BC8C 7F04715C 0FC15FAB */ jal sinf /* 07BC90 7F047160 46082303 */ div.s $f12, $f4, $f8 /* 07BC94 7F047164 3C018005 */ lui $at, %hi(D_80052B24) /* 07BC98 7F047168 C4262B24 */ lwc1 $f6, %lo(D_80052B24)($at) /* 07BC9C 7F04716C C7AA04A0 */ lwc1 $f10, 0x4a0($sp) /* 07BCA0 7F047170 C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BCA4 7F047174 46065102 */ mul.s $f4, $f10, $f6 /* 07BCA8 7F047178 00000000 */ nop /* 07BCAC 7F04717C 46002202 */ mul.s $f8, $f4, $f0 /* 07BCB0 7F047180 46088400 */ add.s $f16, $f16, $f8 /* 07BCB4 7F047184 4616803C */ c.lt.s $f16, $f22 /* 07BCB8 7F047188 00000000 */ nop /* 07BCBC 7F04718C 45000002 */ bc1f .L7F047198 /* 07BCC0 7F047190 00000000 */ nop /* 07BCC4 7F047194 46148400 */ add.s $f16, $f16, $f20 .L7F047198: /* 07BCC8 7F047198 4610A03E */ c.le.s $f20, $f16 /* 07BCCC 7F04719C 00000000 */ nop /* 07BCD0 7F0471A0 45020003 */ bc1fl .L7F0471B0 /* 07BCD4 7F0471A4 C6020084 */ lwc1 $f2, 0x84($s0) /* 07BCD8 7F0471A8 46148401 */ sub.s $f16, $f16, $f20 .L7F0471AC: /* 07BCDC 7F0471AC C6020084 */ lwc1 $f2, 0x84($s0) .L7F0471B0: /* 07BCE0 7F0471B0 3C018005 */ lui $at, %hi(D_80052B28) /* 07BCE4 7F0471B4 C42A2B28 */ lwc1 $f10, %lo(D_80052B28)($at) /* 07BCE8 7F0471B8 46028001 */ sub.s $f0, $f16, $f2 /* 07BCEC 7F0471BC 26040090 */ addiu $a0, $s0, 0x90 /* 07BCF0 7F0471C0 460A003C */ c.lt.s $f0, $f10 /* 07BCF4 7F0471C4 00000000 */ nop /* 07BCF8 7F0471C8 45000003 */ bc1f .L7F0471D8 /* 07BCFC 7F0471CC 00000000 */ nop /* 07BD00 7F0471D0 10000008 */ b .L7F0471F4 /* 07BD04 7F0471D4 46140000 */ add.s $f0, $f0, $f20 .L7F0471D8: /* 07BD08 7F0471D8 3C018005 */ lui $at, %hi(D_80052B2C) /* 07BD0C 7F0471DC C4262B2C */ lwc1 $f6, %lo(D_80052B2C)($at) /* 07BD10 7F0471E0 4600303E */ c.le.s $f6, $f0 /* 07BD14 7F0471E4 00000000 */ nop /* 07BD18 7F0471E8 45020003 */ bc1fl .L7F0471F8 /* 07BD1C 7F0471EC C60C0088 */ lwc1 $f12, 0x88($s0) /* 07BD20 7F0471F0 46140001 */ sub.s $f0, $f0, $f20 .L7F0471F4: /* 07BD24 7F0471F4 C60C0088 */ lwc1 $f12, 0x88($s0) .L7F0471F8: /* 07BD28 7F0471F8 3C018005 */ lui $at, %hi(D_80052B30) /* 07BD2C 7F0471FC 4600603C */ c.lt.s $f12, $f0 /* 07BD30 7F047200 00000000 */ nop /* 07BD34 7F047204 45020004 */ bc1fl .L7F047218 /* 07BD38 7F047208 C60C008C */ lwc1 $f12, 0x8c($s0) /* 07BD3C 7F04720C 10000007 */ b .L7F04722C /* 07BD40 7F047210 460C1400 */ add.s $f16, $f2, $f12 /* 07BD44 7F047214 C60C008C */ lwc1 $f12, 0x8c($s0) .L7F047218: /* 07BD48 7F047218 460C003C */ c.lt.s $f0, $f12 /* 07BD4C 7F04721C 00000000 */ nop /* 07BD50 7F047220 45020003 */ bc1fl .L7F047230 /* 07BD54 7F047224 4616803C */ c.lt.s $f16, $f22 /* 07BD58 7F047228 460C1400 */ add.s $f16, $f2, $f12 .L7F04722C: /* 07BD5C 7F04722C 4616803C */ c.lt.s $f16, $f22 .L7F047230: /* 07BD60 7F047230 00000000 */ nop /* 07BD64 7F047234 45020003 */ bc1fl .L7F047244 /* 07BD68 7F047238 4610A03E */ c.le.s $f20, $f16 /* 07BD6C 7F04723C 46148400 */ add.s $f16, $f16, $f20 /* 07BD70 7F047240 4610A03E */ c.le.s $f20, $f16 .L7F047244: /* 07BD74 7F047244 00000000 */ nop /* 07BD78 7F047248 45000002 */ bc1f .L7F047254 /* 07BD7C 7F04724C 00000000 */ nop /* 07BD80 7F047250 46148401 */ sub.s $f16, $f16, $f20 .L7F047254: /* 07BD84 7F047254 C4202B30 */ lwc1 $f0, %lo(D_80052B30)($at) /* 07BD88 7F047258 44058000 */ mfc1 $a1, $f16 /* 07BD8C 7F04725C 26060094 */ addiu $a2, $s0, 0x94 /* 07BD90 7F047260 E7A00010 */ swc1 $f0, 0x10($sp) /* 07BD94 7F047264 C60400A4 */ lwc1 $f4, 0xa4($s0) /* 07BD98 7F047268 44070000 */ mfc1 $a3, $f0 /* 07BD9C 7F04726C E7B004D8 */ swc1 $f16, 0x4d8($sp) /* 07BDA0 7F047270 0FC10C43 */ jal sub_GAME_7F04310C /* 07BDA4 7F047274 E7A40014 */ swc1 $f4, 0x14($sp) /* 07BDA8 7F047278 3C018005 */ lui $at, %hi(D_80052B34) /* 07BDAC 7F04727C C4202B34 */ lwc1 $f0, %lo(D_80052B34)($at) /* 07BDB0 7F047280 2604009C */ addiu $a0, $s0, 0x9c /* 07BDB4 7F047284 8FA504D4 */ lw $a1, 0x4d4($sp) /* 07BDB8 7F047288 E7A00010 */ swc1 $f0, 0x10($sp) /* 07BDBC 7F04728C C60800A4 */ lwc1 $f8, 0xa4($s0) /* 07BDC0 7F047290 44070000 */ mfc1 $a3, $f0 /* 07BDC4 7F047294 260600A0 */ addiu $a2, $s0, 0xa0 /* 07BDC8 7F047298 0FC10C43 */ jal sub_GAME_7F04310C /* 07BDCC 7F04729C E7A80014 */ swc1 $f8, 0x14($sp) /* 07BDD0 7F0472A0 C7B004D8 */ lwc1 $f16, 0x4d8($sp) /* 07BDD4 7F0472A4 C60A0090 */ lwc1 $f10, 0x90($s0) /* 07BDD8 7F0472A8 3C018005 */ lui $at, %hi(D_80052B38) /* 07BDDC 7F0472AC C7A604D4 */ lwc1 $f6, 0x4d4($sp) /* 07BDE0 7F0472B0 460A8301 */ sub.s $f12, $f16, $f10 /* 07BDE4 7F0472B4 4616603C */ c.lt.s $f12, $f22 /* 07BDE8 7F0472B8 00000000 */ nop /* 07BDEC 7F0472BC 45000002 */ bc1f .L7F0472C8 /* 07BDF0 7F0472C0 00000000 */ nop /* 07BDF4 7F0472C4 46146300 */ add.s $f12, $f12, $f20 .L7F0472C8: /* 07BDF8 7F0472C8 C4202B38 */ lwc1 $f0, %lo(D_80052B38)($at) /* 07BDFC 7F0472CC 460C003C */ c.lt.s $f0, $f12 /* 07BE00 7F0472D0 00000000 */ nop /* 07BE04 7F0472D4 45020003 */ bc1fl .L7F0472E4 /* 07BE08 7F0472D8 C604009C */ lwc1 $f4, 0x9c($s0) /* 07BE0C 7F0472DC 46146301 */ sub.s $f12, $f12, $f20 /* 07BE10 7F0472E0 C604009C */ lwc1 $f4, 0x9c($s0) .L7F0472E4: /* 07BE14 7F0472E4 46043081 */ sub.s $f2, $f6, $f4 /* 07BE18 7F0472E8 4616103C */ c.lt.s $f2, $f22 /* 07BE1C 7F0472EC 00000000 */ nop /* 07BE20 7F0472F0 45020003 */ bc1fl .L7F047300 /* 07BE24 7F0472F4 4602003C */ c.lt.s $f0, $f2 /* 07BE28 7F0472F8 46141080 */ add.s $f2, $f2, $f20 /* 07BE2C 7F0472FC 4602003C */ c.lt.s $f0, $f2 .L7F047300: /* 07BE30 7F047300 00000000 */ nop /* 07BE34 7F047304 45020003 */ bc1fl .L7F047314 /* 07BE38 7F047308 AE0000D0 */ sw $zero, 0xd0($s0) /* 07BE3C 7F04730C 46141081 */ sub.s $f2, $f2, $f20 /* 07BE40 7F047310 AE0000D0 */ sw $zero, 0xd0($s0) .L7F047314: /* 07BE44 7F047314 8FB804AC */ lw $t8, 0x4ac($sp) /* 07BE48 7F047318 C7A804A0 */ lwc1 $f8, 0x4a0($sp) /* 07BE4C 7F04731C 53000047 */ beql $t8, $zero, .L7F04743C /* 07BE50 7F047320 8FB904A8 */ lw $t9, 0x4a8($sp) /* 07BE54 7F047324 4608603C */ c.lt.s $f12, $f8 /* 07BE58 7F047328 C7AA04A0 */ lwc1 $f10, 0x4a0($sp) /* 07BE5C 7F04732C 4502001B */ bc1fl .L7F04739C /* 07BE60 7F047330 460A5000 */ add.s $f0, $f10, $f10 /* 07BE64 7F047334 46004007 */ neg.s $f0, $f8 /* 07BE68 7F047338 460C003C */ c.lt.s $f0, $f12 /* 07BE6C 7F04733C 00000000 */ nop /* 07BE70 7F047340 45020016 */ bc1fl .L7F04739C /* 07BE74 7F047344 460A5000 */ add.s $f0, $f10, $f10 /* 07BE78 7F047348 4608103C */ c.lt.s $f2, $f8 /* 07BE7C 7F04734C 00000000 */ nop /* 07BE80 7F047350 45020012 */ bc1fl .L7F04739C /* 07BE84 7F047354 460A5000 */ add.s $f0, $f10, $f10 /* 07BE88 7F047358 4602003C */ c.lt.s $f0, $f2 /* 07BE8C 7F04735C 24080001 */ li $t0, 1 /* 07BE90 7F047360 4502000E */ bc1fl .L7F04739C /* 07BE94 7F047364 460A5000 */ add.s $f0, $f10, $f10 /* 07BE98 7F047368 AE0800D0 */ sw $t0, 0xd0($s0) /* 07BE9C 7F04736C 8FA904A4 */ lw $t1, 0x4a4($sp) /* 07BEA0 7F047370 240B0001 */ li $t3, 1 /* 07BEA4 7F047374 AFAB04A8 */ sw $t3, 0x4a8($sp) /* 07BEA8 7F047378 1120002F */ beqz $t1, .L7F047438 /* 07BEAC 7F04737C 3C198005 */ lui $t9, %hi(global_timer) /* 07BEB0 7F047380 8F39837C */ lw $t9, %lo(global_timer)($t9) /* 07BEB4 7F047384 3C0A8005 */ lui $t2, %hi(global_timer) /* 07BEB8 7F047388 AE1900B8 */ sw $t9, 0xb8($s0) /* 07BEBC 7F04738C 8D4A837C */ lw $t2, %lo(global_timer)($t2) /* 07BEC0 7F047390 10000029 */ b .L7F047438 /* 07BEC4 7F047394 AE0A00BC */ sw $t2, 0xbc($s0) /* 07BEC8 7F047398 460A5000 */ add.s $f0, $f10, $f10 .L7F04739C: /* 07BECC 7F04739C 4600603C */ c.lt.s $f12, $f0 /* 07BED0 7F0473A0 00000000 */ nop /* 07BED4 7F0473A4 45020018 */ bc1fl .L7F047408 /* 07BED8 7F0473A8 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BEDC 7F0473AC 46000387 */ neg.s $f14, $f0 /* 07BEE0 7F0473B0 460C703C */ c.lt.s $f14, $f12 /* 07BEE4 7F0473B4 00000000 */ nop /* 07BEE8 7F0473B8 45020013 */ bc1fl .L7F047408 /* 07BEEC 7F0473BC 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BEF0 7F0473C0 4600103C */ c.lt.s $f2, $f0 /* 07BEF4 7F0473C4 00000000 */ nop /* 07BEF8 7F0473C8 4502000F */ bc1fl .L7F047408 /* 07BEFC 7F0473CC 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BF00 7F0473D0 4602703C */ c.lt.s $f14, $f2 /* 07BF04 7F0473D4 240C0001 */ li $t4, 1 /* 07BF08 7F0473D8 4502000B */ bc1fl .L7F047408 /* 07BF0C 7F0473DC 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BF10 7F0473E0 AE0C00D0 */ sw $t4, 0xd0($s0) /* 07BF14 7F0473E4 8FAD04A4 */ lw $t5, 0x4a4($sp) /* 07BF18 7F0473E8 240E0001 */ li $t6, 1 /* 07BF1C 7F0473EC AFAE04A8 */ sw $t6, 0x4a8($sp) /* 07BF20 7F0473F0 11A00011 */ beqz $t5, .L7F047438 /* 07BF24 7F0473F4 3C0F8005 */ lui $t7, %hi(global_timer) /* 07BF28 7F0473F8 8DEF837C */ lw $t7, %lo(global_timer)($t7) /* 07BF2C 7F0473FC 1000000E */ b .L7F047438 /* 07BF30 7F047400 AE0F00B8 */ sw $t7, 0xb8($s0) /* 07BF34 7F047404 8E0200B8 */ lw $v0, 0xb8($s0) .L7F047408: /* 07BF38 7F047408 3C188005 */ lui $t8, %hi(global_timer) /* 07BF3C 7F04740C 0442000B */ bltzl $v0, .L7F04743C /* 07BF40 7F047410 8FB904A8 */ lw $t9, 0x4a8($sp) /* 07BF44 7F047414 8F18837C */ lw $t8, %lo(global_timer)($t8) /* 07BF48 7F047418 240B0001 */ li $t3, 1 /* 07BF4C 7F04741C 24090001 */ li $t1, 1 /* 07BF50 7F047420 2708FF88 */ addiu $t0, $t8, -0x78 /* 07BF54 7F047424 0102082A */ slt $at, $t0, $v0 /* 07BF58 7F047428 50200004 */ beql $at, $zero, .L7F04743C /* 07BF5C 7F04742C 8FB904A8 */ lw $t9, 0x4a8($sp) /* 07BF60 7F047430 AE0B00D0 */ sw $t3, 0xd0($s0) /* 07BF64 7F047434 AFA904A8 */ sw $t1, 0x4a8($sp) .L7F047438: /* 07BF68 7F047438 8FB904A8 */ lw $t9, 0x4a8($sp) .L7F04743C: /* 07BF6C 7F04743C 3C018005 */ lui $at, %hi(D_80052B3C) /* 07BF70 7F047440 53200013 */ beql $t9, $zero, .L7F047490 /* 07BF74 7F047444 C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07BF78 7F047448 C4202B3C */ lwc1 $f0, %lo(D_80052B3C)($at) /* 07BF7C 7F04744C 3C018005 */ lui $at, %hi(D_80052B40) /* 07BF80 7F047450 C4262B40 */ lwc1 $f6, %lo(D_80052B40)($at) /* 07BF84 7F047454 3C018005 */ lui $at, %hi(global_timer_delta) /* 07BF88 7F047458 C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07BF8C 7F04745C C60A00B0 */ lwc1 $f10, 0xb0($s0) /* 07BF90 7F047460 46043202 */ mul.s $f8, $f6, $f4 /* 07BF94 7F047464 46085180 */ add.s $f6, $f10, $f8 /* 07BF98 7F047468 E60600B0 */ swc1 $f6, 0xb0($s0) /* 07BF9C 7F04746C C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07BFA0 7F047470 4602003C */ c.lt.s $f0, $f2 /* 07BFA4 7F047474 00000000 */ nop /* 07BFA8 7F047478 45020023 */ bc1fl .L7F047508 /* 07BFAC 7F04747C 4602B03C */ c.lt.s $f22, $f2 /* 07BFB0 7F047480 E60000B0 */ swc1 $f0, 0xb0($s0) /* 07BFB4 7F047484 1000001F */ b .L7F047504 /* 07BFB8 7F047488 C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07BFBC 7F04748C C60200B0 */ lwc1 $f2, 0xb0($s0) .L7F047490: /* 07BFC0 7F047490 3C0A8005 */ lui $t2, %hi(clock_timer) /* 07BFC4 7F047494 4602B03C */ c.lt.s $f22, $f2 /* 07BFC8 7F047498 00000000 */ nop /* 07BFCC 7F04749C 4502001A */ bc1fl .L7F047508 /* 07BFD0 7F0474A0 4602B03C */ c.lt.s $f22, $f2 /* 07BFD4 7F0474A4 8D4A8374 */ lw $t2, %lo(clock_timer)($t2) /* 07BFD8 7F0474A8 00001025 */ move $v0, $zero /* 07BFDC 7F0474AC 3C018005 */ lui $at, %hi(D_80052B44) /* 07BFE0 7F0474B0 1940000C */ blez $t2, .L7F0474E4 /* 07BFE4 7F0474B4 00000000 */ nop /* 07BFE8 7F0474B8 C4202B44 */ lwc1 $f0, %lo(D_80052B44)($at) /* 07BFEC 7F0474BC C60400B0 */ lwc1 $f4, 0xb0($s0) .L7F0474C0: /* 07BFF0 7F0474C0 3C0C8005 */ lui $t4, %hi(clock_timer) /* 07BFF4 7F0474C4 24420001 */ addiu $v0, $v0, 1 /* 07BFF8 7F0474C8 46002282 */ mul.s $f10, $f4, $f0 /* 07BFFC 7F0474CC E60A00B0 */ swc1 $f10, 0xb0($s0) /* 07C000 7F0474D0 8D8C8374 */ lw $t4, %lo(clock_timer)($t4) /* 07C004 7F0474D4 004C082A */ slt $at, $v0, $t4 /* 07C008 7F0474D8 5420FFF9 */ bnezl $at, .L7F0474C0 /* 07C00C 7F0474DC C60400B0 */ lwc1 $f4, 0xb0($s0) /* 07C010 7F0474E0 C60200B0 */ lwc1 $f2, 0xb0($s0) .L7F0474E4: /* 07C014 7F0474E4 3C018005 */ lui $at, %hi(D_80052B48) /* 07C018 7F0474E8 C4282B48 */ lwc1 $f8, %lo(D_80052B48)($at) /* 07C01C 7F0474EC 4608103E */ c.le.s $f2, $f8 /* 07C020 7F0474F0 00000000 */ nop /* 07C024 7F0474F4 45020004 */ bc1fl .L7F047508 /* 07C028 7F0474F8 4602B03C */ c.lt.s $f22, $f2 /* 07C02C 7F0474FC E61600B0 */ swc1 $f22, 0xb0($s0) /* 07C030 7F047500 C60200B0 */ lwc1 $f2, 0xb0($s0) .L7F047504: /* 07C034 7F047504 4602B03C */ c.lt.s $f22, $f2 .L7F047508: /* 07C038 7F047508 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C03C 7F04750C 45020348 */ bc1fl .L7F048230 /* 07C040 7F047510 92220003 */ lbu $v0, 3($s1) /* 07C044 7F047514 C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07C048 7F047518 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07C04C 7F04751C 46041282 */ mul.s $f10, $f2, $f4 /* 07C050 7F047520 460A3200 */ add.s $f8, $f6, $f10 /* 07C054 7F047524 E60800B4 */ swc1 $f8, 0xb4($s0) /* 07C058 7F047528 C60000B4 */ lwc1 $f0, 0xb4($s0) /* 07C05C 7F04752C 4600A03E */ c.le.s $f20, $f0 /* 07C060 7F047530 00000000 */ nop /* 07C064 7F047534 4502033E */ bc1fl .L7F048230 /* 07C068 7F047538 92220003 */ lbu $v0, 3($s1) /* 07C06C 7F04753C 46140101 */ sub.s $f4, $f0, $f20 .L7F047540: /* 07C070 7F047540 E60400B4 */ swc1 $f4, 0xb4($s0) /* 07C074 7F047544 C60000B4 */ lwc1 $f0, 0xb4($s0) /* 07C078 7F047548 4600A03E */ c.le.s $f20, $f0 /* 07C07C 7F04754C 00000000 */ nop /* 07C080 7F047550 4503FFFB */ bc1tl .L7F047540 /* 07C084 7F047554 46140101 */ sub.s $f4, $f0, $f20 /* 07C088 7F047558 10000335 */ b .L7F048230 /* 07C08C 7F04755C 92220003 */ lbu $v0, 3($s1) /* 07C090 7F047560 24010027 */ li $at, 39 .L7F047564: /* 07C094 7F047564 14410255 */ bne $v0, $at, .L7F047EBC /* 07C098 7F047568 02202025 */ move $a0, $s1 /* 07C09C 7F04756C C62600A0 */ lwc1 $f6, 0xa0($s1) /* 07C0A0 7F047570 AFA00478 */ sw $zero, 0x478($sp) /* 07C0A4 7F047574 24050001 */ li $a1, 1 /* 07C0A8 7F047578 0FC0D521 */ jal parse_handle_actionblocks /* 07C0AC 7F04757C E7A6047C */ swc1 $f6, 0x47c($sp) /* 07C0B0 7F047580 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07C0B4 7F047584 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C0B8 7F047588 460EB03E */ c.le.s $f22, $f14 /* 07C0BC 7F04758C 00000000 */ nop /* 07C0C0 7F047590 45020016 */ bc1fl .L7F0475EC /* 07C0C4 7F047594 8E2E000C */ lw $t6, 0xc($s1) /* 07C0C8 7F047598 C4228378 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C0CC 7F04759C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C0D0 7F0475A0 4602703E */ c.le.s $f14, $f2 /* 07C0D4 7F0475A4 00000000 */ nop /* 07C0D8 7F0475A8 45020006 */ bc1fl .L7F0475C4 /* 07C0DC 7F0475AC C6200088 */ lwc1 $f0, 0x88($s1) /* 07C0E0 7F0475B0 C62A0094 */ lwc1 $f10, 0x94($s1) /* 07C0E4 7F0475B4 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07C0E8 7F0475B8 10000008 */ b .L7F0475DC /* 07C0EC 7F0475BC E62A0088 */ swc1 $f10, 0x88($s1) /* 07C0F0 7F0475C0 C6200088 */ lwc1 $f0, 0x88($s1) .L7F0475C4: /* 07C0F4 7F0475C4 C6280094 */ lwc1 $f8, 0x94($s1) /* 07C0F8 7F0475C8 46004101 */ sub.s $f4, $f8, $f0 /* 07C0FC 7F0475CC 46022182 */ mul.s $f6, $f4, $f2 /* 07C100 7F0475D0 460E3283 */ div.s $f10, $f6, $f14 /* 07C104 7F0475D4 460A0200 */ add.s $f8, $f0, $f10 /* 07C108 7F0475D8 E6280088 */ swc1 $f8, 0x88($s1) .L7F0475DC: /* 07C10C 7F0475DC C4248378 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07C110 7F0475E0 46047181 */ sub.s $f6, $f14, $f4 /* 07C114 7F0475E4 E6260098 */ swc1 $f6, 0x98($s1) /* 07C118 7F0475E8 8E2E000C */ lw $t6, 0xc($s1) .L7F0475EC: /* 07C11C 7F0475EC 00008025 */ move $s0, $zero /* 07C120 7F0475F0 000E6B00 */ sll $t5, $t6, 0xc /* 07C124 7F0475F4 05A00014 */ bltz $t5, .L7F047648 /* 07C128 7F0475F8 00000000 */ nop /* 07C12C 7F0475FC 0FC13BCD */ jal check_if_object_has_not_been_destroyed /* 07C130 7F047600 02202025 */ move $a0, $s1 /* 07C134 7F047604 10400010 */ beqz $v0, .L7F047648 /* 07C138 7F047608 00000000 */ nop /* 07C13C 7F04760C C62A0088 */ lwc1 $f10, 0x88($s1) /* 07C140 7F047610 26240058 */ addiu $a0, $s1, 0x58 /* 07C144 7F047614 3C0544FA */ lui $a1, 0x44fa /* 07C148 7F047618 460AB03C */ c.lt.s $f22, $f10 /* 07C14C 7F04761C 3C06453B */ lui $a2, (0x453B8000 >> 16) # lui $a2, 0x453b /* 07C150 7F047620 45010006 */ bc1t .L7F04763C /* 07C154 7F047624 00000000 */ nop /* 07C158 7F047628 C6280094 */ lwc1 $f8, 0x94($s1) /* 07C15C 7F04762C 4608B03C */ c.lt.s $f22, $f8 /* 07C160 7F047630 00000000 */ nop /* 07C164 7F047634 45000004 */ bc1f .L7F047648 /* 07C168 7F047638 00000000 */ nop .L7F04763C: /* 07C16C 7F04763C 0FC14E25 */ jal sub_GAME_7F053894 /* 07C170 7F047640 34C68000 */ ori $a2, (0x453B8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 07C174 7F047644 00408025 */ move $s0, $v0 .L7F047648: /* 07C178 7F047648 5A000019 */ blezl $s0, .L7F0476B0 /* 07C17C 7F04764C 8E2400AC */ lw $a0, 0xac($s1) /* 07C180 7F047650 8E2400AC */ lw $a0, 0xac($s1) /* 07C184 7F047654 10800005 */ beqz $a0, .L7F04766C /* 07C188 7F047658 00000000 */ nop /* 07C18C 7F04765C 0C00237C */ jal sfxGetArg0Unk3F /* 07C190 7F047660 00000000 */ nop /* 07C194 7F047664 5440000A */ bnezl $v0, .L7F047690 /* 07C198 7F047668 8E2400AC */ lw $a0, 0xac($s1) .L7F04766C: /* 07C19C 7F04766C 0FC2FF01 */ jal get_controls_locked_flag /* 07C1A0 7F047670 00000000 */ nop /* 07C1A4 7F047674 14400005 */ bnez $v0, .L7F04768C /* 07C1A8 7F047678 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07C1AC 7F04767C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07C1B0 7F047680 24050041 */ li $a1, 65 /* 07C1B4 7F047684 0C002382 */ jal play_sfx_a1 /* 07C1B8 7F047688 262600AC */ addiu $a2, $s1, 0xac .L7F04768C: /* 07C1BC 7F04768C 8E2400AC */ lw $a0, 0xac($s1) .L7F047690: /* 07C1C0 7F047690 24050008 */ li $a1, 8 /* 07C1C4 7F047694 5080000F */ beql $a0, $zero, .L7F0476D4 /* 07C1C8 7F047698 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C1CC 7F04769C 0C002461 */ jal sfx_c_70009184 /* 07C1D0 7F0476A0 02003025 */ move $a2, $s0 /* 07C1D4 7F0476A4 1000000B */ b .L7F0476D4 /* 07C1D8 7F0476A8 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C1DC 7F0476AC 8E2400AC */ lw $a0, 0xac($s1) .L7F0476B0: /* 07C1E0 7F0476B0 50800008 */ beql $a0, $zero, .L7F0476D4 /* 07C1E4 7F0476B4 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C1E8 7F0476B8 0C00237C */ jal sfxGetArg0Unk3F /* 07C1EC 7F0476BC 00000000 */ nop /* 07C1F0 7F0476C0 50400004 */ beql $v0, $zero, .L7F0476D4 /* 07C1F4 7F0476C4 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C1F8 7F0476C8 0C002408 */ jal sfxDeactivate /* 07C1FC 7F0476CC 8E2400AC */ lw $a0, 0xac($s1) /* 07C200 7F0476D0 8E2400A4 */ lw $a0, 0xa4($s1) .L7F0476D4: /* 07C204 7F0476D4 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) /* 07C208 7F0476D8 5080002A */ beql $a0, $zero, .L7F047784 /* 07C20C 7F0476DC 8E2B0008 */ lw $t3, 8($s1) /* 07C210 7F0476E0 8E3800A8 */ lw $t8, 0xa8($s1) /* 07C214 7F0476E4 8C8F0000 */ lw $t7, ($a0) /* 07C218 7F0476E8 24A55D00 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d00 /* 07C21C 7F0476EC 00184080 */ sll $t0, $t8, 2 /* 07C220 7F0476F0 01E81021 */ addu $v0, $t7, $t0 /* 07C224 7F0476F4 8C4B0000 */ lw $t3, ($v0) /* 07C228 7F0476F8 8CB90000 */ lw $t9, ($a1) /* 07C22C 7F0476FC 8CAE0018 */ lw $t6, 0x18($a1) /* 07C230 7F047700 000B4900 */ sll $t1, $t3, 4 /* 07C234 7F047704 01391821 */ addu $v1, $t1, $t9 /* 07C238 7F047708 8C6A0000 */ lw $t2, ($v1) /* 07C23C 7F04770C C6260058 */ lwc1 $f6, 0x58($s1) /* 07C240 7F047710 C6280060 */ lwc1 $f8, 0x60($s1) /* 07C244 7F047714 000A6080 */ sll $t4, $t2, 2 /* 07C248 7F047718 018A6023 */ subu $t4, $t4, $t2 /* 07C24C 7F04771C 000C6080 */ sll $t4, $t4, 2 /* 07C250 7F047720 018A6023 */ subu $t4, $t4, $t2 /* 07C254 7F047724 000C6080 */ sll $t4, $t4, 2 /* 07C258 7F047728 018E3021 */ addu $a2, $t4, $t6 /* 07C25C 7F04772C C4C40000 */ lwc1 $f4, ($a2) /* 07C260 7F047730 C4CA0008 */ lwc1 $f10, 8($a2) /* 07C264 7F047734 AFA60478 */ sw $a2, 0x478($sp) /* 07C268 7F047738 46062301 */ sub.s $f12, $f4, $f6 /* 07C26C 7F04773C 0FC16A8C */ jal atan2f /* 07C270 7F047740 46085381 */ sub.s $f14, $f10, $f8 /* 07C274 7F047744 E7A0047C */ swc1 $f0, 0x47c($sp) /* 07C278 7F047748 8E2D0008 */ lw $t5, 8($s1) /* 07C27C 7F04774C 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07C280 7F047750 C7A4047C */ lwc1 $f4, 0x47c($sp) /* 07C284 7F047754 000DC080 */ sll $t8, $t5, 2 /* 07C288 7F047758 07010018 */ bgez $t8, .L7F0477BC /* 07C28C 7F04775C 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07C290 7F047760 8E2F0008 */ lw $t7, 8($s1) /* 07C294 7F047764 E62400A0 */ swc1 $f4, 0xa0($s1) /* 07C298 7F047768 02202025 */ move $a0, $s1 /* 07C29C 7F04776C 01E14024 */ and $t0, $t7, $at /* 07C2A0 7F047770 0FC112CE */ jal sub_GAME_7F044B38 /* 07C2A4 7F047774 AE280008 */ sw $t0, 8($s1) /* 07C2A8 7F047778 10000011 */ b .L7F0477C0 /* 07C2AC 7F04777C C6260088 */ lwc1 $f6, 0x88($s1) /* 07C2B0 7F047780 8E2B0008 */ lw $t3, 8($s1) .L7F047784: /* 07C2B4 7F047784 000B4880 */ sll $t1, $t3, 2 /* 07C2B8 7F047788 0523000D */ bgezl $t1, .L7F0477C0 /* 07C2BC 7F04778C C6260088 */ lwc1 $f6, 0x88($s1) /* 07C2C0 7F047790 C62C0038 */ lwc1 $f12, 0x38($s1) /* 07C2C4 7F047794 0FC16A8C */ jal atan2f /* 07C2C8 7F047798 C62E0040 */ lwc1 $f14, 0x40($s1) /* 07C2CC 7F04779C 8E390008 */ lw $t9, 8($s1) /* 07C2D0 7F0477A0 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07C2D4 7F0477A4 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07C2D8 7F0477A8 03215024 */ and $t2, $t9, $at /* 07C2DC 7F0477AC E62000A0 */ swc1 $f0, 0xa0($s1) /* 07C2E0 7F0477B0 AE2A0008 */ sw $t2, 8($s1) /* 07C2E4 7F0477B4 0FC112CE */ jal sub_GAME_7F044B38 /* 07C2E8 7F0477B8 02202025 */ move $a0, $s1 .L7F0477BC: /* 07C2EC 7F0477BC C6260088 */ lwc1 $f6, 0x88($s1) .L7F0477C0: /* 07C2F0 7F0477C0 4606B03C */ c.lt.s $f22, $f6 /* 07C2F4 7F0477C4 00000000 */ nop /* 07C2F8 7F0477C8 450201AC */ bc1fl .L7F047E7C /* 07C2FC 7F0477CC 8E280008 */ lw $t0, 8($s1) /* 07C300 7F0477D0 8E6C0014 */ lw $t4, 0x14($s3) /* 07C304 7F0477D4 8FAE0478 */ lw $t6, 0x478($sp) /* 07C308 7F0477D8 4600B386 */ mov.s $f14, $f22 /* 07C30C 7F0477DC AFAC0468 */ sw $t4, 0x468($sp) /* 07C310 7F0477E0 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C314 7F0477E4 E7AC0438 */ swc1 $f12, 0x438($sp) /* 07C318 7F0477E8 C62A009C */ lwc1 $f10, 0x9c($s1) /* 07C31C 7F0477EC 11C00013 */ beqz $t6, .L7F04783C /* 07C320 7F0477F0 E7AA0434 */ swc1 $f10, 0x434($sp) /* 07C324 7F0477F4 262D0058 */ addiu $t5, $s1, 0x58 /* 07C328 7F0477F8 AFAD0070 */ sw $t5, 0x70($sp) /* 07C32C 7F0477FC 0FC15FAB */ jal sinf /* 07C330 7F047800 E7AE0430 */ swc1 $f14, 0x430($sp) /* 07C334 7F047804 E7A0043C */ swc1 $f0, 0x43c($sp) /* 07C338 7F047808 E7B60440 */ swc1 $f22, 0x440($sp) /* 07C33C 7F04780C 0FC15FA8 */ jal cosf /* 07C340 7F047810 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C344 7F047814 E7A00444 */ swc1 $f0, 0x444($sp) /* 07C348 7F047818 8FA40070 */ lw $a0, 0x70($sp) /* 07C34C 7F04781C 27A5043C */ addiu $a1, $sp, 0x43c /* 07C350 7F047820 8FA60478 */ lw $a2, 0x478($sp) /* 07C354 7F047824 0FC0BF0D */ jal sub_GAME_7F02FC34 /* 07C358 7F047828 3C074120 */ lui $a3, 0x4120 /* 07C35C 7F04782C 10400003 */ beqz $v0, .L7F04783C /* 07C360 7F047830 C7AE0430 */ lwc1 $f14, 0x430($sp) /* 07C364 7F047834 C62800A0 */ lwc1 $f8, 0xa0($s1) /* 07C368 7F047838 E7A8047C */ swc1 $f8, 0x47c($sp) .L7F04783C: /* 07C36C 7F04783C 3C018005 */ lui $at, %hi(D_80052B4C) /* 07C370 7F047840 C4242B4C */ lwc1 $f4, %lo(D_80052B4C)($at) /* 07C374 7F047844 3C018005 */ lui $at, %hi(D_80052B50) /* 07C378 7F047848 C4262B50 */ lwc1 $f6, %lo(D_80052B50)($at) /* 07C37C 7F04784C 3C0738E4 */ lui $a3, (0x38E4C389 >> 16) # lui $a3, 0x38e4 /* 07C380 7F047850 34E7C389 */ ori $a3, (0x38E4C389 & 0xFFFF) # ori $a3, $a3, 0xc389 /* 07C384 7F047854 262400A0 */ addiu $a0, $s1, 0xa0 /* 07C388 7F047858 8FA5047C */ lw $a1, 0x47c($sp) /* 07C38C 7F04785C 2626009C */ addiu $a2, $s1, 0x9c /* 07C390 7F047860 E7AE0430 */ swc1 $f14, 0x430($sp) /* 07C394 7F047864 E7A40010 */ swc1 $f4, 0x10($sp) /* 07C398 7F047868 0FC10C43 */ jal sub_GAME_7F04310C /* 07C39C 7F04786C E7A60014 */ swc1 $f6, 0x14($sp) /* 07C3A0 7F047870 3C018005 */ lui $at, %hi(D_80052B54) /* 07C3A4 7F047874 C4342B54 */ lwc1 $f20, %lo(D_80052B54)($at) /* 07C3A8 7F047878 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C3AC 7F04787C C7AE0430 */ lwc1 $f14, 0x430($sp) /* 07C3B0 7F047880 3C018005 */ lui $at, %hi(D_80052B58) /* 07C3B4 7F047884 460CA03E */ c.le.s $f20, $f12 /* 07C3B8 7F047888 00000000 */ nop /* 07C3BC 7F04788C 45020009 */ bc1fl .L7F0478B4 /* 07C3C0 7F047890 4616603C */ c.lt.s $f12, $f22 /* 07C3C4 7F047894 46146281 */ sub.s $f10, $f12, $f20 .L7F047898: /* 07C3C8 7F047898 E62A00A0 */ swc1 $f10, 0xa0($s1) /* 07C3CC 7F04789C C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C3D0 7F0478A0 460CA03E */ c.le.s $f20, $f12 /* 07C3D4 7F0478A4 00000000 */ nop /* 07C3D8 7F0478A8 4503FFFB */ bc1tl .L7F047898 /* 07C3DC 7F0478AC 46146281 */ sub.s $f10, $f12, $f20 /* 07C3E0 7F0478B0 4616603C */ c.lt.s $f12, $f22 .L7F0478B4: /* 07C3E4 7F0478B4 00000000 */ nop /* 07C3E8 7F0478B8 45020009 */ bc1fl .L7F0478E0 /* 07C3EC 7F0478BC C7A4047C */ lwc1 $f4, 0x47c($sp) /* 07C3F0 7F0478C0 46146200 */ add.s $f8, $f12, $f20 .L7F0478C4: /* 07C3F4 7F0478C4 E62800A0 */ swc1 $f8, 0xa0($s1) /* 07C3F8 7F0478C8 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C3FC 7F0478CC 4616603C */ c.lt.s $f12, $f22 /* 07C400 7F0478D0 00000000 */ nop /* 07C404 7F0478D4 4503FFFB */ bc1tl .L7F0478C4 /* 07C408 7F0478D8 46146200 */ add.s $f8, $f12, $f20 /* 07C40C 7F0478DC C7A4047C */ lwc1 $f4, 0x47c($sp) .L7F0478E0: /* 07C410 7F0478E0 460C2032 */ c.eq.s $f4, $f12 /* 07C414 7F0478E4 00000000 */ nop /* 07C418 7F0478E8 4502000F */ bc1fl .L7F047928 /* 07C41C 7F0478EC 8E980008 */ lw $t8, 8($s4) /* 07C420 7F0478F0 C620009C */ lwc1 $f0, 0x9c($s1) /* 07C424 7F0478F4 C4262B58 */ lwc1 $f6, %lo(D_80052B58)($at) /* 07C428 7F0478F8 3C018005 */ lui $at, %hi(D_80052B5C) /* 07C42C 7F0478FC 4606003E */ c.le.s $f0, $f6 /* 07C430 7F047900 00000000 */ nop /* 07C434 7F047904 45020008 */ bc1fl .L7F047928 /* 07C438 7F047908 8E980008 */ lw $t8, 8($s4) /* 07C43C 7F04790C C42A2B5C */ lwc1 $f10, %lo(D_80052B5C)($at) /* 07C440 7F047910 4600503E */ c.le.s $f10, $f0 /* 07C444 7F047914 00000000 */ nop /* 07C448 7F047918 45020003 */ bc1fl .L7F047928 /* 07C44C 7F04791C 8E980008 */ lw $t8, 8($s4) /* 07C450 7F047920 E636009C */ swc1 $f22, 0x9c($s1) /* 07C454 7F047924 8E980008 */ lw $t8, 8($s4) .L7F047928: /* 07C458 7F047928 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C45C 7F04792C C4228378 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C460 7F047930 8F0F0008 */ lw $t7, 8($t8) /* 07C464 7F047934 C7A40438 */ lwc1 $f4, 0x438($sp) /* 07C468 7F047938 4602B03C */ c.lt.s $f22, $f2 /* 07C46C 7F04793C 8DE8000C */ lw $t0, 0xc($t7) /* 07C470 7F047940 45000004 */ bc1f .L7F047954 /* 07C474 7F047944 8D100004 */ lw $s0, 4($t0) /* 07C478 7F047948 C62800A0 */ lwc1 $f8, 0xa0($s1) /* 07C47C 7F04794C 46044181 */ sub.s $f6, $f8, $f4 /* 07C480 7F047950 46023383 */ div.s $f14, $f6, $f2 .L7F047954: /* 07C484 7F047954 4616703C */ c.lt.s $f14, $f22 /* 07C488 7F047958 00000000 */ nop /* 07C48C 7F04795C 45000002 */ bc1f .L7F047968 /* 07C490 7F047960 00000000 */ nop /* 07C494 7F047964 46147380 */ add.s $f14, $f14, $f20 .L7F047968: /* 07C498 7F047968 0FC15FAB */ jal sinf /* 07C49C 7F04796C 46007306 */ mov.s $f12, $f14 /* 07C4A0 7F047970 C60A0008 */ lwc1 $f10, 8($s0) /* 07C4A4 7F047974 C6880014 */ lwc1 $f8, 0x14($s4) /* 07C4A8 7F047978 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C4AC 7F04797C 46085102 */ mul.s $f4, $f10, $f8 /* 07C4B0 7F047980 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07C4B4 7F047984 46040182 */ mul.s $f6, $f0, $f4 /* 07C4B8 7F047988 00000000 */ nop /* 07C4BC 7F04798C 460A3202 */ mul.s $f8, $f6, $f10 /* 07C4C0 7F047990 E7A80460 */ swc1 $f8, 0x460($sp) /* 07C4C4 7F047994 0FC15FAB */ jal sinf /* 07C4C8 7F047998 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C4CC 7F04799C E7A0043C */ swc1 $f0, 0x43c($sp) /* 07C4D0 7F0479A0 E7B60440 */ swc1 $f22, 0x440($sp) /* 07C4D4 7F0479A4 0FC15FA8 */ jal cosf /* 07C4D8 7F0479A8 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C4DC 7F0479AC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07C4E0 7F0479B0 44817000 */ mtc1 $at, $f14 /* 07C4E4 7F0479B4 E7A00444 */ swc1 $f0, 0x444($sp) /* 07C4E8 7F0479B8 3C018005 */ lui $at, %hi(global_timer_delta) /* 07C4EC 7F0479BC C4228378 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C4F0 7F0479C0 C6240088 */ lwc1 $f4, 0x88($s1) /* 07C4F4 7F0479C4 C7AA043C */ lwc1 $f10, 0x43c($sp) /* 07C4F8 7F0479C8 C7AC0460 */ lwc1 $f12, 0x460($sp) /* 07C4FC 7F0479CC 46022182 */ mul.s $f6, $f4, $f2 /* 07C500 7F0479D0 C6240058 */ lwc1 $f4, 0x58($s1) /* 07C504 7F0479D4 27B00468 */ addiu $s0, $sp, 0x468 /* 07C508 7F0479D8 240B001F */ li $t3, 31 /* 07C50C 7F0479DC 02002025 */ move $a0, $s0 /* 07C510 7F0479E0 460A3202 */ mul.s $f8, $f6, $f10 /* 07C514 7F0479E4 46082180 */ add.s $f6, $f4, $f8 /* 07C518 7F0479E8 C7A40444 */ lwc1 $f4, 0x444($sp) /* 07C51C 7F0479EC 460C2202 */ mul.s $f8, $f4, $f12 /* 07C520 7F0479F0 46083181 */ sub.s $f6, $f6, $f8 /* 07C524 7F0479F4 E7A60694 */ swc1 $f6, 0x694($sp) /* 07C528 7F0479F8 C628005C */ lwc1 $f8, 0x5c($s1) /* 07C52C 7F0479FC 44073000 */ mfc1 $a3, $f6 /* 07C530 7F047A00 E7A80698 */ swc1 $f8, 0x698($sp) /* 07C534 7F047A04 C6280088 */ lwc1 $f8, 0x88($s1) /* 07C538 7F047A08 46024202 */ mul.s $f8, $f8, $f2 /* 07C53C 7F047A0C 00000000 */ nop /* 07C540 7F047A10 46044202 */ mul.s $f8, $f8, $f4 /* 07C544 7F047A14 C6240060 */ lwc1 $f4, 0x60($s1) /* 07C548 7F047A18 46082100 */ add.s $f4, $f4, $f8 /* 07C54C 7F047A1C 460C5202 */ mul.s $f8, $f10, $f12 /* 07C550 7F047A20 46044280 */ add.s $f10, $f8, $f4 /* 07C554 7F047A24 E7AA069C */ swc1 $f10, 0x69c($sp) /* 07C558 7F047A28 8E660010 */ lw $a2, 0x10($s3) /* 07C55C 7F047A2C 8E650008 */ lw $a1, 8($s3) /* 07C560 7F047A30 E7B60020 */ swc1 $f22, 0x20($sp) /* 07C564 7F047A34 E7B60018 */ swc1 $f22, 0x18($sp) /* 07C568 7F047A38 AFAB0014 */ sw $t3, 0x14($sp) /* 07C56C 7F047A3C E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C570 7F047A40 E7AE0024 */ swc1 $f14, 0x24($sp) /* 07C574 7F047A44 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 07C578 7F047A48 E7AE001C */ swc1 $f14, 0x1c($sp) /* 07C57C 7F047A4C 104000FA */ beqz $v0, .L7F047E38 /* 07C580 7F047A50 02002025 */ move $a0, $s0 /* 07C584 7F047A54 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07C588 7F047A58 44814000 */ mtc1 $at, $f8 /* 07C58C 7F047A5C 2409001F */ li $t1, 31 /* 07C590 7F047A60 AFA90010 */ sw $t1, 0x10($sp) /* 07C594 7F047A64 8FA50694 */ lw $a1, 0x694($sp) /* 07C598 7F047A68 8FA6069C */ lw $a2, 0x69c($sp) /* 07C59C 7F047A6C 3C074120 */ lui $a3, 0x4120 /* 07C5A0 7F047A70 E7B60014 */ swc1 $f22, 0x14($sp) /* 07C5A4 7F047A74 0FC2C62E */ jal sub_GAME_7F0B18B8 /* 07C5A8 7F047A78 E7A80018 */ swc1 $f8, 0x18($sp) /* 07C5AC 7F047A7C 044300EF */ bgezl $v0, .L7F047E3C /* 07C5B0 7F047A80 C6260098 */ lwc1 $f6, 0x98($s1) /* 07C5B4 7F047A84 8E790014 */ lw $t9, 0x14($s3) /* 07C5B8 7F047A88 8FAA0468 */ lw $t2, 0x468($sp) /* 07C5BC 7F047A8C 02202025 */ move $a0, $s1 /* 07C5C0 7F047A90 AFB9044C */ sw $t9, 0x44c($sp) /* 07C5C4 7F047A94 C6640008 */ lwc1 $f4, 8($s3) /* 07C5C8 7F047A98 E7A40450 */ swc1 $f4, 0x450($sp) /* 07C5CC 7F047A9C C666000C */ lwc1 $f6, 0xc($s3) /* 07C5D0 7F047AA0 E7A60454 */ swc1 $f6, 0x454($sp) /* 07C5D4 7F047AA4 C66A0010 */ lwc1 $f10, 0x10($s3) /* 07C5D8 7F047AA8 E7AA0458 */ swc1 $f10, 0x458($sp) /* 07C5DC 7F047AAC AE6A0014 */ sw $t2, 0x14($s3) /* 07C5E0 7F047AB0 C7A20694 */ lwc1 $f2, 0x694($sp) /* 07C5E4 7F047AB4 E6620008 */ swc1 $f2, 8($s3) /* 07C5E8 7F047AB8 E6220058 */ swc1 $f2, 0x58($s1) /* 07C5EC 7F047ABC C7A2069C */ lwc1 $f2, 0x69c($sp) /* 07C5F0 7F047AC0 E6620010 */ swc1 $f2, 0x10($s3) /* 07C5F4 7F047AC4 0FC10121 */ jal sub_GAME_7F040484 /* 07C5F8 7F047AC8 E6220060 */ swc1 $f2, 0x60($s1) /* 07C5FC 7F047ACC 0FC15B28 */ jal sub_GAME_7F056CA0 /* 07C600 7F047AD0 02202025 */ move $a0, $s1 /* 07C604 7F047AD4 0FC1122A */ jal sub_GAME_7F0448A8 /* 07C608 7F047AD8 02602025 */ move $a0, $s3 /* 07C60C 7F047ADC 10400092 */ beqz $v0, .L7F047D28 /* 07C610 7F047AE0 00409025 */ move $s2, $v0 /* 07C614 7F047AE4 8E8C0008 */ lw $t4, 8($s4) /* 07C618 7F047AE8 C6280018 */ lwc1 $f8, 0x18($s1) /* 07C61C 7F047AEC 02002025 */ move $a0, $s0 /* 07C620 7F047AF0 8D8E0008 */ lw $t6, 8($t4) /* 07C624 7F047AF4 8DCD0028 */ lw $t5, 0x28($t6) /* 07C628 7F047AF8 8DA20004 */ lw $v0, 4($t5) /* 07C62C 7F047AFC C4440004 */ lwc1 $f4, 4($v0) /* 07C630 7F047B00 46044182 */ mul.s $f6, $f8, $f4 /* 07C634 7F047B04 E7A60424 */ swc1 $f6, 0x424($sp) /* 07C638 7F047B08 C62A0020 */ lwc1 $f10, 0x20($s1) /* 07C63C 7F047B0C C4480004 */ lwc1 $f8, 4($v0) /* 07C640 7F047B10 46085102 */ mul.s $f4, $f10, $f8 /* 07C644 7F047B14 E7A4042C */ swc1 $f4, 0x42c($sp) /* 07C648 7F047B18 C6260018 */ lwc1 $f6, 0x18($s1) /* 07C64C 7F047B1C C44A0008 */ lwc1 $f10, 8($v0) /* 07C650 7F047B20 460A3202 */ mul.s $f8, $f6, $f10 /* 07C654 7F047B24 E7A80418 */ swc1 $f8, 0x418($sp) /* 07C658 7F047B28 C6240020 */ lwc1 $f4, 0x20($s1) /* 07C65C 7F047B2C C4460008 */ lwc1 $f6, 8($v0) /* 07C660 7F047B30 46062282 */ mul.s $f10, $f4, $f6 /* 07C664 7F047B34 E7AA0420 */ swc1 $f10, 0x420($sp) /* 07C668 7F047B38 C6280038 */ lwc1 $f8, 0x38($s1) /* 07C66C 7F047B3C C4440014 */ lwc1 $f4, 0x14($v0) /* 07C670 7F047B40 46044182 */ mul.s $f6, $f8, $f4 /* 07C674 7F047B44 E7A6040C */ swc1 $f6, 0x40c($sp) /* 07C678 7F047B48 C62A0040 */ lwc1 $f10, 0x40($s1) /* 07C67C 7F047B4C C4480014 */ lwc1 $f8, 0x14($v0) /* 07C680 7F047B50 46085102 */ mul.s $f4, $f10, $f8 /* 07C684 7F047B54 E7A40414 */ swc1 $f4, 0x414($sp) /* 07C688 7F047B58 C6260038 */ lwc1 $f6, 0x38($s1) /* 07C68C 7F047B5C C44A0018 */ lwc1 $f10, 0x18($v0) /* 07C690 7F047B60 460A3202 */ mul.s $f8, $f6, $f10 /* 07C694 7F047B64 E7A80400 */ swc1 $f8, 0x400($sp) /* 07C698 7F047B68 C6240040 */ lwc1 $f4, 0x40($s1) /* 07C69C 7F047B6C C4460018 */ lwc1 $f6, 0x18($v0) /* 07C6A0 7F047B70 C7A8040C */ lwc1 $f8, 0x40c($sp) /* 07C6A4 7F047B74 46062282 */ mul.s $f10, $f4, $f6 /* 07C6A8 7F047B78 C7A40424 */ lwc1 $f4, 0x424($sp) /* 07C6AC 7F047B7C E7AA0408 */ swc1 $f10, 0x408($sp) /* 07C6B0 7F047B80 8E780014 */ lw $t8, 0x14($s3) /* 07C6B4 7F047B84 AFB80468 */ sw $t8, 0x468($sp) /* 07C6B8 7F047B88 C6600008 */ lwc1 $f0, 8($s3) /* 07C6BC 7F047B8C C6620010 */ lwc1 $f2, 0x10($s3) /* 07C6C0 7F047B90 46040180 */ add.s $f6, $f0, $f4 /* 07C6C4 7F047B94 C7A40414 */ lwc1 $f4, 0x414($sp) /* 07C6C8 7F047B98 44050000 */ mfc1 $a1, $f0 /* 07C6CC 7F047B9C 44061000 */ mfc1 $a2, $f2 /* 07C6D0 7F047BA0 46064280 */ add.s $f10, $f8, $f6 /* 07C6D4 7F047BA4 C7A8042C */ lwc1 $f8, 0x42c($sp) /* 07C6D8 7F047BA8 46081180 */ add.s $f6, $f2, $f8 /* 07C6DC 7F047BAC 44075000 */ mfc1 $a3, $f10 /* 07C6E0 7F047BB0 46062280 */ add.s $f10, $f4, $f6 /* 07C6E4 7F047BB4 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07C6E8 7F047BB8 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C6EC 7F047BBC 10400059 */ beqz $v0, .L7F047D24 /* 07C6F0 7F047BC0 C7A40424 */ lwc1 $f4, 0x424($sp) /* 07C6F4 7F047BC4 C6600008 */ lwc1 $f0, 8($s3) /* 07C6F8 7F047BC8 C7A8040C */ lwc1 $f8, 0x40c($sp) /* 07C6FC 7F047BCC C6620010 */ lwc1 $f2, 0x10($s3) /* 07C700 7F047BD0 46040180 */ add.s $f6, $f0, $f4 /* 07C704 7F047BD4 C7A40414 */ lwc1 $f4, 0x414($sp) /* 07C708 7F047BD8 02002025 */ move $a0, $s0 /* 07C70C 7F047BDC 46064280 */ add.s $f10, $f8, $f6 /* 07C710 7F047BE0 C7A6042C */ lwc1 $f6, 0x42c($sp) /* 07C714 7F047BE4 44055000 */ mfc1 $a1, $f10 /* 07C718 7F047BE8 46061280 */ add.s $f10, $f2, $f6 /* 07C71C 7F047BEC 460A2180 */ add.s $f6, $f4, $f10 /* 07C720 7F047BF0 C7AA0418 */ lwc1 $f10, 0x418($sp) /* 07C724 7F047BF4 44063000 */ mfc1 $a2, $f6 /* 07C728 7F047BF8 460A0180 */ add.s $f6, $f0, $f10 /* 07C72C 7F047BFC 46064280 */ add.s $f10, $f8, $f6 /* 07C730 7F047C00 C7A80420 */ lwc1 $f8, 0x420($sp) /* 07C734 7F047C04 46081180 */ add.s $f6, $f2, $f8 /* 07C738 7F047C08 44075000 */ mfc1 $a3, $f10 /* 07C73C 7F047C0C 46062280 */ add.s $f10, $f4, $f6 /* 07C740 7F047C10 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07C744 7F047C14 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C748 7F047C18 10400042 */ beqz $v0, .L7F047D24 /* 07C74C 7F047C1C C7A40418 */ lwc1 $f4, 0x418($sp) /* 07C750 7F047C20 C6680008 */ lwc1 $f8, 8($s3) /* 07C754 7F047C24 C7A6040C */ lwc1 $f6, 0x40c($sp) /* 07C758 7F047C28 02002025 */ move $a0, $s0 /* 07C75C 7F047C2C 46044000 */ add.s $f0, $f8, $f4 /* 07C760 7F047C30 C7A40420 */ lwc1 $f4, 0x420($sp) /* 07C764 7F047C34 C6680010 */ lwc1 $f8, 0x10($s3) /* 07C768 7F047C38 46003280 */ add.s $f10, $f6, $f0 /* 07C76C 7F047C3C C7A60414 */ lwc1 $f6, 0x414($sp) /* 07C770 7F047C40 46044080 */ add.s $f2, $f8, $f4 /* 07C774 7F047C44 44055000 */ mfc1 $a1, $f10 /* 07C778 7F047C48 C7A80400 */ lwc1 $f8, 0x400($sp) /* 07C77C 7F047C4C 46023280 */ add.s $f10, $f6, $f2 /* 07C780 7F047C50 C7A60408 */ lwc1 $f6, 0x408($sp) /* 07C784 7F047C54 46004100 */ add.s $f4, $f8, $f0 /* 07C788 7F047C58 44065000 */ mfc1 $a2, $f10 /* 07C78C 7F047C5C 46023280 */ add.s $f10, $f6, $f2 /* 07C790 7F047C60 44072000 */ mfc1 $a3, $f4 /* 07C794 7F047C64 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07C798 7F047C68 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C79C 7F047C6C 1040002D */ beqz $v0, .L7F047D24 /* 07C7A0 7F047C70 C7A40418 */ lwc1 $f4, 0x418($sp) /* 07C7A4 7F047C74 C6600008 */ lwc1 $f0, 8($s3) /* 07C7A8 7F047C78 C7A80400 */ lwc1 $f8, 0x400($sp) /* 07C7AC 7F047C7C C6620010 */ lwc1 $f2, 0x10($s3) /* 07C7B0 7F047C80 46040180 */ add.s $f6, $f0, $f4 /* 07C7B4 7F047C84 C7A40408 */ lwc1 $f4, 0x408($sp) /* 07C7B8 7F047C88 02002025 */ move $a0, $s0 /* 07C7BC 7F047C8C 46064280 */ add.s $f10, $f8, $f6 /* 07C7C0 7F047C90 C7A60420 */ lwc1 $f6, 0x420($sp) /* 07C7C4 7F047C94 44055000 */ mfc1 $a1, $f10 /* 07C7C8 7F047C98 46061280 */ add.s $f10, $f2, $f6 /* 07C7CC 7F047C9C 460A2180 */ add.s $f6, $f4, $f10 /* 07C7D0 7F047CA0 C7AA0424 */ lwc1 $f10, 0x424($sp) /* 07C7D4 7F047CA4 44063000 */ mfc1 $a2, $f6 /* 07C7D8 7F047CA8 460A0180 */ add.s $f6, $f0, $f10 /* 07C7DC 7F047CAC 46064280 */ add.s $f10, $f8, $f6 /* 07C7E0 7F047CB0 C7A8042C */ lwc1 $f8, 0x42c($sp) /* 07C7E4 7F047CB4 46081180 */ add.s $f6, $f2, $f8 /* 07C7E8 7F047CB8 44075000 */ mfc1 $a3, $f10 /* 07C7EC 7F047CBC 46062280 */ add.s $f10, $f4, $f6 /* 07C7F0 7F047CC0 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07C7F4 7F047CC4 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C7F8 7F047CC8 10400016 */ beqz $v0, .L7F047D24 /* 07C7FC 7F047CCC C7A40424 */ lwc1 $f4, 0x424($sp) /* 07C800 7F047CD0 C6680008 */ lwc1 $f8, 8($s3) /* 07C804 7F047CD4 C7A60400 */ lwc1 $f6, 0x400($sp) /* 07C808 7F047CD8 02002025 */ move $a0, $s0 /* 07C80C 7F047CDC 46044000 */ add.s $f0, $f8, $f4 /* 07C810 7F047CE0 C7A4042C */ lwc1 $f4, 0x42c($sp) /* 07C814 7F047CE4 C6680010 */ lwc1 $f8, 0x10($s3) /* 07C818 7F047CE8 46003280 */ add.s $f10, $f6, $f0 /* 07C81C 7F047CEC C7A60408 */ lwc1 $f6, 0x408($sp) /* 07C820 7F047CF0 46044080 */ add.s $f2, $f8, $f4 /* 07C824 7F047CF4 44055000 */ mfc1 $a1, $f10 /* 07C828 7F047CF8 C7A8040C */ lwc1 $f8, 0x40c($sp) /* 07C82C 7F047CFC 46023280 */ add.s $f10, $f6, $f2 /* 07C830 7F047D00 C7A60414 */ lwc1 $f6, 0x414($sp) /* 07C834 7F047D04 46004100 */ add.s $f4, $f8, $f0 /* 07C838 7F047D08 44065000 */ mfc1 $a2, $f10 /* 07C83C 7F047D0C 46023280 */ add.s $f10, $f6, $f2 /* 07C840 7F047D10 44072000 */ mfc1 $a3, $f4 /* 07C844 7F047D14 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07C848 7F047D18 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C84C 7F047D1C 14400002 */ bnez $v0, .L7F047D28 /* 07C850 7F047D20 00000000 */ nop .L7F047D24: /* 07C854 7F047D24 00009025 */ move $s2, $zero .L7F047D28: /* 07C858 7F047D28 12400023 */ beqz $s2, .L7F047DB8 /* 07C85C 7F047D2C 02202025 */ move $a0, $s1 /* 07C860 7F047D30 262F0058 */ addiu $t7, $s1, 0x58 /* 07C864 7F047D34 AFAF0070 */ sw $t7, 0x70($sp) /* 07C868 7F047D38 0FC112CE */ jal sub_GAME_7F044B38 /* 07C86C 7F047D3C 2630007C */ addiu $s0, $s1, 0x7c /* 07C870 7F047D40 02602025 */ move $a0, $s3 /* 07C874 7F047D44 0FC100AD */ jal sub_GAME_7F0402B4 /* 07C878 7F047D48 02002825 */ move $a1, $s0 /* 07C87C 7F047D4C 0FC146F3 */ jal detonate_proxmine_In_range /* 07C880 7F047D50 8FA40070 */ lw $a0, 0x70($sp) /* 07C884 7F047D54 8FA80478 */ lw $t0, 0x478($sp) /* 07C888 7F047D58 27A40450 */ addiu $a0, $sp, 0x450 /* 07C88C 7F047D5C 27A50694 */ addiu $a1, $sp, 0x694 /* 07C890 7F047D60 11000054 */ beqz $t0, .L7F047EB4 /* 07C894 7F047D64 01003025 */ move $a2, $t0 /* 07C898 7F047D68 0FC0BF54 */ jal sub_GAME_7F02FD50 /* 07C89C 7F047D6C 3C0742C8 */ lui $a3, 0x42c8 /* 07C8A0 7F047D70 10400050 */ beqz $v0, .L7F047EB4 /* 07C8A4 7F047D74 00000000 */ nop /* 07C8A8 7F047D78 8E2B00A8 */ lw $t3, 0xa8($s1) /* 07C8AC 7F047D7C 8E3900A4 */ lw $t9, 0xa4($s1) /* 07C8B0 7F047D80 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07C8B4 7F047D84 25690001 */ addiu $t1, $t3, 1 /* 07C8B8 7F047D88 AE2900A8 */ sw $t1, 0xa8($s1) /* 07C8BC 7F047D8C 8F2A0000 */ lw $t2, ($t9) /* 07C8C0 7F047D90 00097080 */ sll $t6, $t1, 2 /* 07C8C4 7F047D94 014E6821 */ addu $t5, $t2, $t6 /* 07C8C8 7F047D98 8DB80000 */ lw $t8, ($t5) /* 07C8CC 7F047D9C 07010045 */ bgez $t8, .L7F047EB4 /* 07C8D0 7F047DA0 00000000 */ nop /* 07C8D4 7F047DA4 44814000 */ mtc1 $at, $f8 /* 07C8D8 7F047DA8 AE2000A4 */ sw $zero, 0xa4($s1) /* 07C8DC 7F047DAC E6360094 */ swc1 $f22, 0x94($s1) /* 07C8E0 7F047DB0 10000040 */ b .L7F047EB4 /* 07C8E4 7F047DB4 E6280098 */ swc1 $f8, 0x98($s1) .L7F047DB8: /* 07C8E8 7F047DB8 C6240098 */ lwc1 $f4, 0x98($s1) /* 07C8EC 7F047DBC 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07C8F0 7F047DC0 4616203C */ c.lt.s $f4, $f22 /* 07C8F4 7F047DC4 00000000 */ nop /* 07C8F8 7F047DC8 45020006 */ bc1fl .L7F047DE4 /* 07C8FC 7F047DCC E6360088 */ swc1 $f22, 0x88($s1) /* 07C900 7F047DD0 C6260088 */ lwc1 $f6, 0x88($s1) /* 07C904 7F047DD4 44815000 */ mtc1 $at, $f10 /* 07C908 7F047DD8 E6260094 */ swc1 $f6, 0x94($s1) /* 07C90C 7F047DDC E62A0098 */ swc1 $f10, 0x98($s1) /* 07C910 7F047DE0 E6360088 */ swc1 $f22, 0x88($s1) .L7F047DE4: /* 07C914 7F047DE4 C7A80438 */ lwc1 $f8, 0x438($sp) /* 07C918 7F047DE8 02202025 */ move $a0, $s1 /* 07C91C 7F047DEC E62800A0 */ swc1 $f8, 0xa0($s1) /* 07C920 7F047DF0 C7A40434 */ lwc1 $f4, 0x434($sp) /* 07C924 7F047DF4 E624009C */ swc1 $f4, 0x9c($s1) /* 07C928 7F047DF8 8FAF044C */ lw $t7, 0x44c($sp) /* 07C92C 7F047DFC AE6F0014 */ sw $t7, 0x14($s3) /* 07C930 7F047E00 C7A20450 */ lwc1 $f2, 0x450($sp) /* 07C934 7F047E04 E6620008 */ swc1 $f2, 8($s3) /* 07C938 7F047E08 E6220058 */ swc1 $f2, 0x58($s1) /* 07C93C 7F047E0C C7A20454 */ lwc1 $f2, 0x454($sp) /* 07C940 7F047E10 E662000C */ swc1 $f2, 0xc($s3) /* 07C944 7F047E14 E622005C */ swc1 $f2, 0x5c($s1) /* 07C948 7F047E18 C7A20458 */ lwc1 $f2, 0x458($sp) /* 07C94C 7F047E1C E6620010 */ swc1 $f2, 0x10($s3) /* 07C950 7F047E20 0FC10121 */ jal sub_GAME_7F040484 /* 07C954 7F047E24 E6220060 */ swc1 $f2, 0x60($s1) /* 07C958 7F047E28 0FC15B28 */ jal sub_GAME_7F056CA0 /* 07C95C 7F047E2C 02202025 */ move $a0, $s1 /* 07C960 7F047E30 10000020 */ b .L7F047EB4 /* 07C964 7F047E34 00000000 */ nop .L7F047E38: /* 07C968 7F047E38 C6260098 */ lwc1 $f6, 0x98($s1) .L7F047E3C: /* 07C96C 7F047E3C 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07C970 7F047E40 4616303C */ c.lt.s $f6, $f22 /* 07C974 7F047E44 00000000 */ nop /* 07C978 7F047E48 45020006 */ bc1fl .L7F047E64 /* 07C97C 7F047E4C E6360088 */ swc1 $f22, 0x88($s1) /* 07C980 7F047E50 C62A0088 */ lwc1 $f10, 0x88($s1) /* 07C984 7F047E54 44814000 */ mtc1 $at, $f8 /* 07C988 7F047E58 E62A0094 */ swc1 $f10, 0x94($s1) /* 07C98C 7F047E5C E6280098 */ swc1 $f8, 0x98($s1) /* 07C990 7F047E60 E6360088 */ swc1 $f22, 0x88($s1) .L7F047E64: /* 07C994 7F047E64 C7A40438 */ lwc1 $f4, 0x438($sp) /* 07C998 7F047E68 E62400A0 */ swc1 $f4, 0xa0($s1) /* 07C99C 7F047E6C C7A60434 */ lwc1 $f6, 0x434($sp) /* 07C9A0 7F047E70 10000010 */ b .L7F047EB4 /* 07C9A4 7F047E74 E626009C */ swc1 $f6, 0x9c($s1) /* 07C9A8 7F047E78 8E280008 */ lw $t0, 8($s1) .L7F047E7C: /* 07C9AC 7F047E7C 00085880 */ sll $t3, $t0, 2 /* 07C9B0 7F047E80 0561000C */ bgez $t3, .L7F047EB4 /* 07C9B4 7F047E84 00000000 */ nop /* 07C9B8 7F047E88 C62C0038 */ lwc1 $f12, 0x38($s1) /* 07C9BC 7F047E8C 0FC16A8C */ jal atan2f /* 07C9C0 7F047E90 C62E0040 */ lwc1 $f14, 0x40($s1) /* 07C9C4 7F047E94 8E290008 */ lw $t1, 8($s1) /* 07C9C8 7F047E98 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07C9CC 7F047E9C 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07C9D0 7F047EA0 0121C824 */ and $t9, $t1, $at /* 07C9D4 7F047EA4 E62000A0 */ swc1 $f0, 0xa0($s1) /* 07C9D8 7F047EA8 AE390008 */ sw $t9, 8($s1) /* 07C9DC 7F047EAC 0FC112CE */ jal sub_GAME_7F044B38 /* 07C9E0 7F047EB0 02202025 */ move $a0, $s1 .L7F047EB4: /* 07C9E4 7F047EB4 100000DE */ b .L7F048230 /* 07C9E8 7F047EB8 92220003 */ lbu $v0, 3($s1) .L7F047EBC: /* 07C9EC 7F047EBC 24010028 */ li $at, 40 /* 07C9F0 7F047EC0 144100DA */ bne $v0, $at, .L7F04822C /* 07C9F4 7F047EC4 02202025 */ move $a0, $s1 /* 07C9F8 7F047EC8 0FC0D521 */ jal parse_handle_actionblocks /* 07C9FC 7F047ECC 24050001 */ li $a1, 1 /* 07CA00 7F047ED0 8E300014 */ lw $s0, 0x14($s1) /* 07CA04 7F047ED4 26250058 */ addiu $a1, $s1, 0x58 /* 07CA08 7F047ED8 8E0C0020 */ lw $t4, 0x20($s0) /* 07CA0C 7F047EDC 02002025 */ move $a0, $s0 /* 07CA10 7F047EE0 51800065 */ beql $t4, $zero, .L7F048078 /* 07CA14 7F047EE4 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07CA18 7F047EE8 0FC1B303 */ jal setsuboffset /* 07CA1C 7F047EEC AFA50070 */ sw $a1, 0x70($sp) /* 07CA20 7F047EF0 8E300014 */ lw $s0, 0x14($s1) /* 07CA24 7F047EF4 3C0E8003 */ lui $t6, %hi(animation_table_ptrs2+4) /* 07CA28 7F047EF8 8DCEA050 */ lw $t6, %lo(animation_table_ptrs2+4)($t6) /* 07CA2C 7F047EFC 8E0A0020 */ lw $t2, 0x20($s0) /* 07CA30 7F047F00 3C054127 */ lui $a1, (0x4127020C >> 16) # lui $a1, 0x4127 /* 07CA34 7F047F04 02002025 */ move $a0, $s0 /* 07CA38 7F047F08 154E0009 */ bne $t2, $t6, .L7F047F30 /* 07CA3C 7F047F0C 00000000 */ nop /* 07CA40 7F047F10 0FC1B3A1 */ jal sub_GAME_7F06CE84 /* 07CA44 7F047F14 34A5020C */ ori $a1, (0x4127020C & 0xFFFF) # ori $a1, $a1, 0x20c /* 07CA48 7F047F18 3C054049 */ lui $a1, (0x40490FDB >> 16) # lui $a1, 0x4049 /* 07CA4C 7F047F1C 34A50FDB */ ori $a1, (0x40490FDB & 0xFFFF) # ori $a1, $a1, 0xfdb /* 07CA50 7F047F20 0FC1B34F */ jal setsubroty /* 07CA54 7F047F24 8E240014 */ lw $a0, 0x14($s1) /* 07CA58 7F047F28 10000024 */ b .L7F047FBC /* 07CA5C 7F047F2C 00000000 */ nop .L7F047F30: /* 07CA60 7F047F30 0C001A57 */ jal get_stage_num /* 07CA64 7F047F34 00000000 */ nop /* 07CA68 7F047F38 24010016 */ li $at, 22 /* 07CA6C 7F047F3C 1441000A */ bne $v0, $at, .L7F047F68 /* 07CA70 7F047F40 3C053F85 */ lui $a1, (0x3F859B3D >> 16) # lui $a1, 0x3f85 /* 07CA74 7F047F44 8E240014 */ lw $a0, 0x14($s1) /* 07CA78 7F047F48 0FC1B3A1 */ jal sub_GAME_7F06CE84 /* 07CA7C 7F047F4C 34A59B3D */ ori $a1, (0x3F859B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CA80 7F047F50 3C054016 */ lui $a1, (0x4016CBE4 >> 16) # lui $a1, 0x4016 /* 07CA84 7F047F54 34A5CBE4 */ ori $a1, (0x4016CBE4 & 0xFFFF) # ori $a1, $a1, 0xcbe4 /* 07CA88 7F047F58 0FC1B34F */ jal setsubroty /* 07CA8C 7F047F5C 8E240014 */ lw $a0, 0x14($s1) /* 07CA90 7F047F60 10000016 */ b .L7F047FBC /* 07CA94 7F047F64 00000000 */ nop .L7F047F68: /* 07CA98 7F047F68 0C001A57 */ jal get_stage_num /* 07CA9C 7F047F6C 00000000 */ nop /* 07CAA0 7F047F70 2401001A */ li $at, 26 /* 07CAA4 7F047F74 1441000B */ bne $v0, $at, .L7F047FA4 /* 07CAA8 7F047F78 3C053F85 */ lui $a1, 0x3f85 /* 07CAAC 7F047F7C 3C053F85 */ lui $a1, (0x3F859B3D >> 16) # lui $a1, 0x3f85 /* 07CAB0 7F047F80 34A59B3D */ ori $a1, (0x3F859B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CAB4 7F047F84 0FC1B3A1 */ jal sub_GAME_7F06CE84 /* 07CAB8 7F047F88 8E240014 */ lw $a0, 0x14($s1) /* 07CABC 7F047F8C 3C05407B */ lui $a1, (0x407B9B3D >> 16) # lui $a1, 0x407b /* 07CAC0 7F047F90 34A553D1 */ ori $a1, (0x407B53D1 & 0xFFFF) # ori $a1, $a1, 0x53d1 /* 07CAC4 7F047F94 0FC1B34F */ jal setsubroty /* 07CAC8 7F047F98 8E240014 */ lw $a0, 0x14($s1) /* 07CACC 7F047F9C 10000007 */ b .L7F047FBC /* 07CAD0 7F047FA0 00000000 */ nop .L7F047FA4: /* 07CAD4 7F047FA4 8E240014 */ lw $a0, 0x14($s1) /* 07CAD8 7F047FA8 0FC1B3A1 */ jal sub_GAME_7F06CE84 /* 07CADC 7F047FAC 34A59B3D */ ori $a1, (0x407B9B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CAE0 7F047FB0 4405B000 */ mfc1 $a1, $f22 /* 07CAE4 7F047FB4 0FC1B34F */ jal setsubroty /* 07CAE8 7F047FB8 8E240014 */ lw $a0, 0x14($s1) .L7F047FBC: /* 07CAEC 7F047FBC 3C058005 */ lui $a1, %hi(clock_timer) /* 07CAF0 7F047FC0 8CA58374 */ lw $a1, %lo(clock_timer)($a1) /* 07CAF4 7F047FC4 8E240014 */ lw $a0, 0x14($s1) /* 07CAF8 7F047FC8 0FC1C2BB */ jal sub_GAME_7F070AEC /* 07CAFC 7F047FCC 24060001 */ li $a2, 1 /* 07CB00 7F047FD0 0FC1B5AC */ jal subcalcpos /* 07CB04 7F047FD4 8E240014 */ lw $a0, 0x14($s1) /* 07CB08 7F047FD8 8E240014 */ lw $a0, 0x14($s1) /* 07CB0C 7F047FDC 0FC1B2E6 */ jal getsuboffset /* 07CB10 7F047FE0 8FA50070 */ lw $a1, 0x70($sp) /* 07CB14 7F047FE4 C62A0058 */ lwc1 $f10, 0x58($s1) /* 07CB18 7F047FE8 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) /* 07CB1C 7F047FEC 24A55D00 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d00 /* 07CB20 7F047FF0 E66A0008 */ swc1 $f10, 8($s3) /* 07CB24 7F047FF4 C6280060 */ lwc1 $f8, 0x60($s1) /* 07CB28 7F047FF8 E6680010 */ swc1 $f8, 0x10($s3) /* 07CB2C 7F047FFC 86220006 */ lh $v0, 6($s1) /* 07CB30 7F048000 28412710 */ slti $at, $v0, 0x2710 /* 07CB34 7F048004 1020000B */ beqz $at, .L7F048034 /* 07CB38 7F048008 00027900 */ sll $t7, $v0, 4 /* 07CB3C 7F04800C 00026880 */ sll $t5, $v0, 2 /* 07CB40 7F048010 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) /* 07CB44 7F048014 01A26823 */ subu $t5, $t5, $v0 /* 07CB48 7F048018 24A55D00 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d00 /* 07CB4C 7F04801C 000D6880 */ sll $t5, $t5, 2 /* 07CB50 7F048020 8CB80018 */ lw $t8, 0x18($a1) /* 07CB54 7F048024 01A26823 */ subu $t5, $t5, $v0 /* 07CB58 7F048028 000D6880 */ sll $t5, $t5, 2 /* 07CB5C 7F04802C 10000008 */ b .L7F048050 /* 07CB60 7F048030 01B81821 */ addu $v1, $t5, $t8 .L7F048034: /* 07CB64 7F048034 8CA8001C */ lw $t0, 0x1c($a1) /* 07CB68 7F048038 01E27821 */ addu $t7, $t7, $v0 /* 07CB6C 7F04803C 000F7880 */ sll $t7, $t7, 2 /* 07CB70 7F048040 3C01FFF5 */ lui $at, (0xFFF59FC0 >> 16) # lui $at, 0xfff5 /* 07CB74 7F048044 34219FC0 */ ori $at, (0xFFF59FC0 & 0xFFFF) # ori $at, $at, 0x9fc0 /* 07CB78 7F048048 01E81821 */ addu $v1, $t7, $t0 /* 07CB7C 7F04804C 00611821 */ addu $v1, $v1, $at .L7F048050: /* 07CB80 7F048050 C624005C */ lwc1 $f4, 0x5c($s1) /* 07CB84 7F048054 C4660004 */ lwc1 $f6, 4($v1) /* 07CB88 7F048058 46062280 */ add.s $f10, $f4, $f6 /* 07CB8C 7F04805C E66A000C */ swc1 $f10, 0xc($s3) /* 07CB90 7F048060 C668000C */ lwc1 $f8, 0xc($s3) /* 07CB94 7F048064 8E240014 */ lw $a0, 0x14($s1) /* 07CB98 7F048068 E628005C */ swc1 $f8, 0x5c($s1) /* 07CB9C 7F04806C 0FC1B303 */ jal setsuboffset /* 07CBA0 7F048070 8FA50070 */ lw $a1, 0x70($sp) /* 07CBA4 7F048074 C62C00A0 */ lwc1 $f12, 0xa0($s1) .L7F048078: /* 07CBA8 7F048078 3C018005 */ lui $at, %hi(global_timer_delta) /* 07CBAC 7F04807C 460CB03E */ c.le.s $f22, $f12 /* 07CBB0 7F048080 00000000 */ nop /* 07CBB4 7F048084 45020016 */ bc1fl .L7F0480E0 /* 07CBB8 7F048088 C6200094 */ lwc1 $f0, 0x94($s1) /* 07CBBC 7F04808C C4228378 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07CBC0 7F048090 3C018005 */ lui $at, %hi(global_timer_delta) /* 07CBC4 7F048094 4602603E */ c.le.s $f12, $f2 /* 07CBC8 7F048098 00000000 */ nop /* 07CBCC 7F04809C 45020006 */ bc1fl .L7F0480B8 /* 07CBD0 7F0480A0 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07CBD4 7F0480A4 C624009C */ lwc1 $f4, 0x9c($s1) /* 07CBD8 7F0480A8 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07CBDC 7F0480AC 10000008 */ b .L7F0480D0 /* 07CBE0 7F0480B0 E6240098 */ swc1 $f4, 0x98($s1) /* 07CBE4 7F0480B4 C62E0098 */ lwc1 $f14, 0x98($s1) .L7F0480B8: /* 07CBE8 7F0480B8 C626009C */ lwc1 $f6, 0x9c($s1) /* 07CBEC 7F0480BC 460E3281 */ sub.s $f10, $f6, $f14 /* 07CBF0 7F0480C0 46025202 */ mul.s $f8, $f10, $f2 /* 07CBF4 7F0480C4 460C4103 */ div.s $f4, $f8, $f12 /* 07CBF8 7F0480C8 46047180 */ add.s $f6, $f14, $f4 /* 07CBFC 7F0480CC E6260098 */ swc1 $f6, 0x98($s1) .L7F0480D0: /* 07CC00 7F0480D0 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07CC04 7F0480D4 460A6201 */ sub.s $f8, $f12, $f10 /* 07CC08 7F0480D8 E62800A0 */ swc1 $f8, 0xa0($s1) /* 07CC0C 7F0480DC C6200094 */ lwc1 $f0, 0x94($s1) .L7F0480E0: /* 07CC10 7F0480E0 3C018005 */ lui $at, %hi(global_timer_delta) /* 07CC14 7F0480E4 4600B03E */ c.le.s $f22, $f0 /* 07CC18 7F0480E8 00000000 */ nop /* 07CC1C 7F0480EC 45020016 */ bc1fl .L7F048148 /* 07CC20 7F0480F0 8E2B000C */ lw $t3, 0xc($s1) /* 07CC24 7F0480F4 C4228378 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07CC28 7F0480F8 3C018005 */ lui $at, %hi(global_timer_delta) /* 07CC2C 7F0480FC 4602003E */ c.le.s $f0, $f2 /* 07CC30 7F048100 00000000 */ nop /* 07CC34 7F048104 45020006 */ bc1fl .L7F048120 /* 07CC38 7F048108 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07CC3C 7F04810C C6240090 */ lwc1 $f4, 0x90($s1) /* 07CC40 7F048110 C6200094 */ lwc1 $f0, 0x94($s1) /* 07CC44 7F048114 10000008 */ b .L7F048138 /* 07CC48 7F048118 E624008C */ swc1 $f4, 0x8c($s1) /* 07CC4C 7F04811C C62C008C */ lwc1 $f12, 0x8c($s1) .L7F048120: /* 07CC50 7F048120 C6260090 */ lwc1 $f6, 0x90($s1) /* 07CC54 7F048124 460C3281 */ sub.s $f10, $f6, $f12 /* 07CC58 7F048128 46025202 */ mul.s $f8, $f10, $f2 /* 07CC5C 7F04812C 46004103 */ div.s $f4, $f8, $f0 /* 07CC60 7F048130 46046180 */ add.s $f6, $f12, $f4 /* 07CC64 7F048134 E626008C */ swc1 $f6, 0x8c($s1) .L7F048138: /* 07CC68 7F048138 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07CC6C 7F04813C 460A0201 */ sub.s $f8, $f0, $f10 /* 07CC70 7F048140 E6280094 */ swc1 $f8, 0x94($s1) /* 07CC74 7F048144 8E2B000C */ lw $t3, 0xc($s1) .L7F048148: /* 07CC78 7F048148 00008025 */ move $s0, $zero /* 07CC7C 7F04814C 000B4B00 */ sll $t1, $t3, 0xc /* 07CC80 7F048150 05200014 */ bltz $t1, .L7F0481A4 /* 07CC84 7F048154 00000000 */ nop /* 07CC88 7F048158 0FC13BCD */ jal check_if_object_has_not_been_destroyed /* 07CC8C 7F04815C 02202025 */ move $a0, $s1 /* 07CC90 7F048160 10400010 */ beqz $v0, .L7F0481A4 /* 07CC94 7F048164 00000000 */ nop /* 07CC98 7F048168 C624008C */ lwc1 $f4, 0x8c($s1) /* 07CC9C 7F04816C 4604B032 */ c.eq.s $f22, $f4 /* 07CCA0 7F048170 00000000 */ nop /* 07CCA4 7F048174 4501000B */ bc1t .L7F0481A4 /* 07CCA8 7F048178 00000000 */ nop /* 07CCAC 7F04817C 8E390008 */ lw $t9, 8($s1) /* 07CCB0 7F048180 3C05459C */ lui $a1, (0x459C4000 >> 16) # lui $a1, 0x459c /* 07CCB4 7F048184 34A54000 */ ori $a1, (0x459C4000 & 0xFFFF) # ori $a1, $a1, 0x4000 /* 07CCB8 7F048188 00196080 */ sll $t4, $t9, 2 /* 07CCBC 7F04818C 05800005 */ bltz $t4, .L7F0481A4 /* 07CCC0 7F048190 26240058 */ addiu $a0, $s1, 0x58 /* 07CCC4 7F048194 3C0645BB */ lui $a2, (0x45BB8000 >> 16) # lui $a2, 0x45bb /* 07CCC8 7F048198 0FC14E25 */ jal sub_GAME_7F053894 /* 07CCCC 7F04819C 34C68000 */ ori $a2, (0x45BB8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 07CCD0 7F0481A0 00408025 */ move $s0, $v0 .L7F0481A4: /* 07CCD4 7F0481A4 5A000019 */ blezl $s0, .L7F04820C /* 07CCD8 7F0481A8 8E2400B0 */ lw $a0, 0xb0($s1) /* 07CCDC 7F0481AC 8E2400B0 */ lw $a0, 0xb0($s1) /* 07CCE0 7F0481B0 10800005 */ beqz $a0, .L7F0481C8 /* 07CCE4 7F0481B4 00000000 */ nop /* 07CCE8 7F0481B8 0C00237C */ jal sfxGetArg0Unk3F /* 07CCEC 7F0481BC 00000000 */ nop /* 07CCF0 7F0481C0 5440000A */ bnezl $v0, .L7F0481EC /* 07CCF4 7F0481C4 8E2400B0 */ lw $a0, 0xb0($s1) .L7F0481C8: /* 07CCF8 7F0481C8 0FC2FF01 */ jal get_controls_locked_flag /* 07CCFC 7F0481CC 00000000 */ nop /* 07CD00 7F0481D0 14400005 */ bnez $v0, .L7F0481E8 /* 07CD04 7F0481D4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07CD08 7F0481D8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07CD0C 7F0481DC 2405003A */ li $a1, 58 /* 07CD10 7F0481E0 0C002382 */ jal play_sfx_a1 /* 07CD14 7F0481E4 262600B0 */ addiu $a2, $s1, 0xb0 .L7F0481E8: /* 07CD18 7F0481E8 8E2400B0 */ lw $a0, 0xb0($s1) .L7F0481EC: /* 07CD1C 7F0481EC 24050008 */ li $a1, 8 /* 07CD20 7F0481F0 5080000F */ beql $a0, $zero, .L7F048230 /* 07CD24 7F0481F4 92220003 */ lbu $v0, 3($s1) /* 07CD28 7F0481F8 0C002461 */ jal sfx_c_70009184 /* 07CD2C 7F0481FC 02003025 */ move $a2, $s0 /* 07CD30 7F048200 1000000B */ b .L7F048230 /* 07CD34 7F048204 92220003 */ lbu $v0, 3($s1) /* 07CD38 7F048208 8E2400B0 */ lw $a0, 0xb0($s1) .L7F04820C: /* 07CD3C 7F04820C 50800008 */ beql $a0, $zero, .L7F048230 /* 07CD40 7F048210 92220003 */ lbu $v0, 3($s1) /* 07CD44 7F048214 0C00237C */ jal sfxGetArg0Unk3F /* 07CD48 7F048218 00000000 */ nop /* 07CD4C 7F04821C 50400004 */ beql $v0, $zero, .L7F048230 /* 07CD50 7F048220 92220003 */ lbu $v0, 3($s1) /* 07CD54 7F048224 0C002408 */ jal sfxDeactivate /* 07CD58 7F048228 8E2400B0 */ lw $a0, 0xb0($s1) .L7F04822C: /* 07CD5C 7F04822C 92220003 */ lbu $v0, 3($s1) .L7F048230: /* 07CD60 7F048230 3C018005 */ lui $at, %hi(D_80052B64) /* 07CD64 7F048234 C4342B64 */ lwc1 $f20, %lo(D_80052B64)($at) /* 07CD68 7F048238 2401002F */ li $at, 47 /* 07CD6C 7F04823C 54410020 */ bnel $v0, $at, .L7F0482C0 /* 07CD70 7F048240 24010001 */ li $at, 1 /* 07CD74 7F048244 8E700004 */ lw $s0, 4($s3) /* 07CD78 7F048248 26240058 */ addiu $a0, $s1, 0x58 /* 07CD7C 7F04824C 8E0A0080 */ lw $t2, 0x80($s0) /* 07CD80 7F048250 8E0E0084 */ lw $t6, 0x84($s0) /* 07CD84 7F048254 8E070090 */ lw $a3, 0x90($s0) /* 07CD88 7F048258 448A3000 */ mtc1 $t2, $f6 /* 07CD8C 7F04825C 448E5000 */ mtc1 $t6, $f10 /* 07CD90 7F048260 468031A0 */ cvt.s.w $f6, $f6 /* 07CD94 7F048264 468052A0 */ cvt.s.w $f10, $f10 /* 07CD98 7F048268 44053000 */ mfc1 $a1, $f6 /* 07CD9C 7F04826C 44065000 */ mfc1 $a2, $f10 /* 07CDA0 7F048270 0FC11477 */ jal sub_GAME_7F0451DC /* 07CDA4 7F048274 00000000 */ nop /* 07CDA8 7F048278 8E04008C */ lw $a0, 0x8c($s0) /* 07CDAC 7F04827C AE020088 */ sw $v0, 0x88($s0) /* 07CDB0 7F048280 8FAD0674 */ lw $t5, 0x674($sp) /* 07CDB4 7F048284 0480000B */ bltz $a0, .L7F0482B4 /* 07CDB8 7F048288 24010001 */ li $at, 1 /* 07CDBC 7F04828C 15A10009 */ bne $t5, $at, .L7F0482B4 /* 07CDC0 7F048290 240100FF */ li $at, 255 /* 07CDC4 7F048294 14410005 */ bne $v0, $at, .L7F0482AC /* 07CDC8 7F048298 00000000 */ nop /* 07CDCC 7F04829C 0FC2E76F */ jal sub_GAME_7F0B9DBC /* 07CDD0 7F0482A0 00002825 */ move $a1, $zero /* 07CDD4 7F0482A4 10000003 */ b .L7F0482B4 /* 07CDD8 7F0482A8 00000000 */ nop .L7F0482AC: /* 07CDDC 7F0482AC 0FC2E76F */ jal sub_GAME_7F0B9DBC /* 07CDE0 7F0482B0 24050001 */ li $a1, 1 .L7F0482B4: /* 07CDE4 7F0482B4 1000003B */ b .L7F0483A4 /* 07CDE8 7F0482B8 AFA00670 */ sw $zero, 0x670($sp) /* 07CDEC 7F0482BC 24010001 */ li $at, 1 .L7F0482C0: /* 07CDF0 7F0482C0 54410039 */ bnel $v0, $at, .L7F0483A8 /* 07CDF4 7F0482C4 922F0003 */ lbu $t7, 3($s1) /* 07CDF8 7F0482C8 962F0098 */ lhu $t7, 0x98($s1) /* 07CDFC 7F0482CC 31E80002 */ andi $t0, $t7, 2 /* 07CE00 7F0482D0 51000035 */ beql $t0, $zero, .L7F0483A8 /* 07CE04 7F0482D4 922F0003 */ lbu $t7, 3($s1) /* 07CE08 7F0482D8 8E700004 */ lw $s0, 4($s3) /* 07CE0C 7F0482DC 4407B000 */ mfc1 $a3, $f22 /* 07CE10 7F0482E0 24120001 */ li $s2, 1 /* 07CE14 7F0482E4 8E0B00C0 */ lw $t3, 0xc0($s0) /* 07CE18 7F0482E8 8E0900C4 */ lw $t1, 0xc4($s0) /* 07CE1C 7F0482EC 26240058 */ addiu $a0, $s1, 0x58 /* 07CE20 7F0482F0 448B4000 */ mtc1 $t3, $f8 /* 07CE24 7F0482F4 44892000 */ mtc1 $t1, $f4 /* 07CE28 7F0482F8 46804220 */ cvt.s.w $f8, $f8 /* 07CE2C 7F0482FC 46802120 */ cvt.s.w $f4, $f4 /* 07CE30 7F048300 44054000 */ mfc1 $a1, $f8 /* 07CE34 7F048304 44062000 */ mfc1 $a2, $f4 /* 07CE38 7F048308 0FC11477 */ jal sub_GAME_7F0451DC /* 07CE3C 7F04830C 00000000 */ nop /* 07CE40 7F048310 A60200BE */ sh $v0, 0xbe($s0) /* 07CE44 7F048314 8FB90674 */ lw $t9, 0x674($sp) /* 07CE48 7F048318 24010001 */ li $at, 1 /* 07CE4C 7F04831C 57210022 */ bnel $t9, $at, .L7F0483A8 /* 07CE50 7F048320 922F0003 */ lbu $t7, 3($s1) /* 07CE54 7F048324 860C00BE */ lh $t4, 0xbe($s0) /* 07CE58 7F048328 240100FF */ li $at, 255 /* 07CE5C 7F04832C 55810007 */ bnel $t4, $at, .L7F04834C /* 07CE60 7F048330 00009025 */ move $s2, $zero /* 07CE64 7F048334 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07CE68 7F048338 4606B03C */ c.lt.s $f22, $f6 /* 07CE6C 7F04833C 00000000 */ nop /* 07CE70 7F048340 45020003 */ bc1fl .L7F048350 /* 07CE74 7F048344 8E820008 */ lw $v0, 8($s4) /* 07CE78 7F048348 00009025 */ move $s2, $zero .L7F04834C: /* 07CE7C 7F04834C 8E820008 */ lw $v0, 8($s4) .L7F048350: /* 07CE80 7F048350 3C0A8004 */ lui $t2, %hi(prop_door_related) /* 07CE84 7F048354 254AA1DC */ addiu $t2, %lo(prop_door_related) # addiu $t2, $t2, -0x5e24 /* 07CE88 7F048358 8C4E0004 */ lw $t6, 4($v0) /* 07CE8C 7F04835C 154E0009 */ bne $t2, $t6, .L7F048384 /* 07CE90 7F048360 00000000 */ nop /* 07CE94 7F048364 8C4D0008 */ lw $t5, 8($v0) /* 07CE98 7F048368 02802025 */ move $a0, $s4 /* 07CE9C 7F04836C 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07CEA0 7F048370 8DA50004 */ lw $a1, 4($t5) /* 07CEA4 7F048374 8C580000 */ lw $t8, ($v0) /* 07CEA8 7F048378 17000002 */ bnez $t8, .L7F048384 /* 07CEAC 7F04837C 00000000 */ nop /* 07CEB0 7F048380 00009025 */ move $s2, $zero .L7F048384: /* 07CEB4 7F048384 12400005 */ beqz $s2, .L7F04839C /* 07CEB8 7F048388 00000000 */ nop /* 07CEBC 7F04838C 0FC14D71 */ jal sub_GAME_7F0535C4 /* 07CEC0 7F048390 02002025 */ move $a0, $s0 /* 07CEC4 7F048394 10000004 */ b .L7F0483A8 /* 07CEC8 7F048398 922F0003 */ lbu $t7, 3($s1) .L7F04839C: /* 07CECC 7F04839C 0FC14D66 */ jal sub_GAME_7F053598 /* 07CED0 7F0483A0 02002025 */ move $a0, $s0 .L7F0483A4: /* 07CED4 7F0483A4 922F0003 */ lbu $t7, 3($s1) .L7F0483A8: /* 07CED8 7F0483A8 2410002D */ li $s0, 45 /* 07CEDC 7F0483AC 560F0008 */ bnel $s0, $t7, .L7F0483D0 /* 07CEE0 7F0483B0 8E23000C */ lw $v1, 0xc($s1) /* 07CEE4 7F0483B4 0FC1F3A1 */ jal get_ptr_for_players_tank /* 07CEE8 7F0483B8 00000000 */ nop /* 07CEEC 7F0483BC 54530004 */ bnel $v0, $s3, .L7F0483D0 /* 07CEF0 7F0483C0 8E23000C */ lw $v1, 0xc($s1) /* 07CEF4 7F0483C4 10000019 */ b .L7F04842C /* 07CEF8 7F0483C8 24030001 */ li $v1, 1 /* 07CEFC 7F0483CC 8E23000C */ lw $v1, 0xc($s1) .L7F0483D0: /* 07CF00 7F0483D0 00034140 */ sll $t0, $v1, 5 /* 07CF04 7F0483D4 05030004 */ bgezl $t0, .L7F0483E8 /* 07CF08 7F0483D8 8E2B0064 */ lw $t3, 0x64($s1) /* 07CF0C 7F0483DC 10000013 */ b .L7F04842C /* 07CF10 7F0483E0 24030001 */ li $v1, 1 /* 07CF14 7F0483E4 8E2B0064 */ lw $t3, 0x64($s1) .L7F0483E8: /* 07CF18 7F0483E8 0003CB00 */ sll $t9, $v1, 0xc /* 07CF1C 7F0483EC 00001825 */ move $v1, $zero /* 07CF20 7F0483F0 31690800 */ andi $t1, $t3, 0x800 /* 07CF24 7F0483F4 1520000D */ bnez $t1, .L7F04842C /* 07CF28 7F0483F8 00000000 */ nop /* 07CF2C 7F0483FC 0720000B */ bltz $t9, .L7F04842C /* 07CF30 7F048400 02802025 */ move $a0, $s4 /* 07CF34 7F048404 262C0058 */ addiu $t4, $s1, 0x58 /* 07CF38 7F048408 0FC1B403 */ jal getinstsize /* 07CF3C 7F04840C AFAC0070 */ sw $t4, 0x70($sp) /* 07CF40 7F048410 44060000 */ mfc1 $a2, $f0 /* 07CF44 7F048414 02602025 */ move $a0, $s3 /* 07CF48 7F048418 8FA50070 */ lw $a1, 0x70($sp) /* 07CF4C 7F04841C 0FC1535B */ jal sub_GAME_7F054D6C /* 07CF50 7F048420 8FA70670 */ lw $a3, 0x670($sp) /* 07CF54 7F048424 10000001 */ b .L7F04842C /* 07CF58 7F048428 00401825 */ move $v1, $v0 .L7F04842C: /* 07CF5C 7F04842C 1060037A */ beqz $v1, .L7F049218 /* 07CF60 7F048430 8FAA0678 */ lw $t2, 0x678($sp) /* 07CF64 7F048434 11400003 */ beqz $t2, .L7F048444 /* 07CF68 7F048438 26240078 */ addiu $a0, $s1, 0x78 /* 07CF6C 7F04843C 0FC100C4 */ jal update_color_shading /* 07CF70 7F048440 2625007C */ addiu $a1, $s1, 0x7c .L7F048444: /* 07CF74 7F048444 926E0001 */ lbu $t6, 1($s3) /* 07CF78 7F048448 35CD0002 */ ori $t5, $t6, 2 /* 07CF7C 7F04844C A26D0001 */ sb $t5, 1($s3) /* 07CF80 7F048450 8E980008 */ lw $t8, 8($s4) /* 07CF84 7F048454 8704000E */ lh $a0, 0xe($t8) /* 07CF88 7F048458 00047980 */ sll $t7, $a0, 6 /* 07CF8C 7F04845C 0FC2F5C5 */ jal sub_GAME_7F0BD714 /* 07CF90 7F048460 01E02025 */ move $a0, $t7 /* 07CF94 7F048464 AE82000C */ sw $v0, 0xc($s4) /* 07CF98 7F048468 92280003 */ lbu $t0, 3($s1) /* 07CF9C 7F04846C 24010001 */ li $at, 1 /* 07CFA0 7F048470 00409025 */ move $s2, $v0 /* 07CFA4 7F048474 150100AD */ bne $t0, $at, .L7F04872C /* 07CFA8 7F048478 26240018 */ addiu $a0, $s1, 0x18 /* 07CFAC 7F04847C 8E640004 */ lw $a0, 4($s3) /* 07CFB0 7F048480 00402825 */ move $a1, $v0 /* 07CFB4 7F048484 0FC149BB */ jal sub_GAME_7F0526EC /* 07CFB8 7F048488 AFA4039C */ sw $a0, 0x39c($sp) /* 07CFBC 7F04848C 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07CFC0 7F048490 00000000 */ nop /* 07CFC4 7F048494 00402025 */ move $a0, $v0 /* 07CFC8 7F048498 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07CFCC 7F04849C 02402825 */ move $a1, $s2 /* 07CFD0 7F0484A0 8E820008 */ lw $v0, 8($s4) /* 07CFD4 7F0484A4 3C0B8004 */ lui $t3, %hi(prop_eyelid_door_related) /* 07CFD8 7F0484A8 256BA100 */ addiu $t3, %lo(prop_eyelid_door_related) # addiu $t3, $t3, -0x5f00 /* 07CFDC 7F0484AC 8C430004 */ lw $v1, 4($v0) /* 07CFE0 7F0484B0 3C0D8004 */ lui $t5, %hi(prop_iris_door_related) /* 07CFE4 7F0484B4 8FA6039C */ lw $a2, 0x39c($sp) /* 07CFE8 7F0484B8 15630025 */ bne $t3, $v1, .L7F048550 /* 07CFEC 7F0484BC 25ADA15C */ addiu $t5, %lo(prop_iris_door_related) # addiu $t5, $t5, -0x5ea4 /* 07CFF0 7F0484C0 C4CA00B4 */ lwc1 $f10, 0xb4($a2) /* 07CFF4 7F0484C4 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07CFF8 7F0484C8 44812000 */ mtc1 $at, $f4 /* 07CFFC 7F0484CC 46145202 */ mul.s $f8, $f10, $f20 /* 07D000 7F0484D0 8C490008 */ lw $t1, 8($v0) /* 07D004 7F0484D4 26450040 */ addiu $a1, $s2, 0x40 /* 07D008 7F0484D8 8D390004 */ lw $t9, 4($t1) /* 07D00C 7F0484DC 46044183 */ div.s $f6, $f8, $f4 /* 07D010 7F0484E0 8F300004 */ lw $s0, 4($t9) /* 07D014 7F0484E4 AFA5006C */ sw $a1, 0x6c($sp) /* 07D018 7F0484E8 4606A301 */ sub.s $f12, $f20, $f6 /* 07D01C 7F0484EC 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07D020 7F0484F0 E7AC0394 */ swc1 $f12, 0x394($sp) /* 07D024 7F0484F4 02002025 */ move $a0, $s0 /* 07D028 7F0484F8 0FC16266 */ jal matrix_4x4_set_position /* 07D02C 7F0484FC 8FA5006C */ lw $a1, 0x6c($sp) /* 07D030 7F048500 02402025 */ move $a0, $s2 /* 07D034 7F048504 0FC1601A */ jal matrix_4x4_multiply_in_place /* 07D038 7F048508 8FA5006C */ lw $a1, 0x6c($sp) /* 07D03C 7F04850C 8E8C0008 */ lw $t4, 8($s4) /* 07D040 7F048510 C7AA0394 */ lwc1 $f10, 0x394($sp) /* 07D044 7F048514 26450080 */ addiu $a1, $s2, 0x80 /* 07D048 7F048518 8D8A0008 */ lw $t2, 8($t4) /* 07D04C 7F04851C 460AA301 */ sub.s $f12, $f20, $f10 /* 07D050 7F048520 8D4E0008 */ lw $t6, 8($t2) /* 07D054 7F048524 8DD00004 */ lw $s0, 4($t6) /* 07D058 7F048528 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07D05C 7F04852C AFA50068 */ sw $a1, 0x68($sp) /* 07D060 7F048530 02002025 */ move $a0, $s0 /* 07D064 7F048534 0FC16266 */ jal matrix_4x4_set_position /* 07D068 7F048538 8FA50068 */ lw $a1, 0x68($sp) /* 07D06C 7F04853C 02402025 */ move $a0, $s2 /* 07D070 7F048540 0FC1601A */ jal matrix_4x4_multiply_in_place /* 07D074 7F048544 8FA50068 */ lw $a1, 0x68($sp) /* 07D078 7F048548 1000031F */ b .L7F0491C8 /* 07D07C 7F04854C 8E8F0008 */ lw $t7, 8($s4) .L7F048550: /* 07D080 7F048550 55A3031D */ bnel $t5, $v1, .L7F0491C8 /* 07D084 7F048554 8E8F0008 */ lw $t7, 8($s4) /* 07D088 7F048558 C4C200B4 */ lwc1 $f2, 0xb4($a2) /* 07D08C 7F04855C 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07D090 7F048560 44812000 */ mtc1 $at, $f4 /* 07D094 7F048564 46141202 */ mul.s $f8, $f2, $f20 /* 07D098 7F048568 3C018005 */ lui $at, %hi(D_80052B68) /* 07D09C 7F04856C C42A2B68 */ lwc1 $f10, %lo(D_80052B68)($at) /* 07D0A0 7F048570 4600B386 */ mov.s $f14, $f22 /* 07D0A4 7F048574 46044183 */ div.s $f6, $f8, $f4 /* 07D0A8 7F048578 E7A60384 */ swc1 $f6, 0x384($sp) /* 07D0AC 7F04857C C4CC0084 */ lwc1 $f12, 0x84($a2) /* 07D0B0 7F048580 460A6002 */ mul.s $f0, $f12, $f10 /* 07D0B4 7F048584 4602003C */ c.lt.s $f0, $f2 /* 07D0B8 7F048588 00000000 */ nop /* 07D0BC 7F04858C 4502001F */ bc1fl .L7F04860C /* 07D0C0 7F048590 8FA80678 */ lw $t0, 0x678($sp) /* 07D0C4 7F048594 46001201 */ sub.s $f8, $f2, $f0 /* 07D0C8 7F048598 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07D0CC 7F04859C 8FB80678 */ lw $t8, 0x678($sp) /* 07D0D0 7F0485A0 46006181 */ sub.s $f6, $f12, $f0 /* 07D0D4 7F0485A4 46086102 */ mul.s $f4, $f12, $f8 /* 07D0D8 7F0485A8 46062283 */ div.s $f10, $f4, $f6 /* 07D0DC 7F0485AC 44812000 */ mtc1 $at, $f4 /* 07D0E0 7F0485B0 46145202 */ mul.s $f8, $f10, $f20 /* 07D0E4 7F0485B4 46044383 */ div.s $f14, $f8, $f4 /* 07D0E8 7F0485B8 13000011 */ beqz $t8, .L7F048600 /* 07D0EC 7F0485BC E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D0F0 7F0485C0 C7A6067C */ lwc1 $f6, 0x67c($sp) /* 07D0F4 7F0485C4 E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D0F8 7F0485C8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07D0FC 7F0485CC 4600303E */ c.le.s $f6, $f0 /* 07D100 7F0485D0 240500CA */ li $a1, 202 /* 07D104 7F0485D4 00003025 */ move $a2, $zero /* 07D108 7F0485D8 266F0008 */ addiu $t7, $s3, 8 /* 07D10C 7F0485DC 45000008 */ bc1f .L7F048600 /* 07D110 7F0485E0 00000000 */ nop /* 07D114 7F0485E4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07D118 7F0485E8 AFAF0070 */ sw $t7, 0x70($sp) /* 07D11C 7F0485EC 0C002382 */ jal play_sfx_a1 /* 07D120 7F0485F0 E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D124 7F0485F4 00402025 */ move $a0, $v0 /* 07D128 7F0485F8 0FC14E84 */ jal sub_GAME_7F053A10 /* 07D12C 7F0485FC 8FA50070 */ lw $a1, 0x70($sp) .L7F048600: /* 07D130 7F048600 10000016 */ b .L7F04865C /* 07D134 7F048604 AFA0038C */ sw $zero, 0x38c($sp) /* 07D138 7F048608 8FA80678 */ lw $t0, 0x678($sp) .L7F04860C: /* 07D13C 7F04860C E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D140 7F048610 51000012 */ beql $t0, $zero, .L7F04865C /* 07D144 7F048614 AFA0038C */ sw $zero, 0x38c($sp) /* 07D148 7F048618 C7AA067C */ lwc1 $f10, 0x67c($sp) /* 07D14C 7F04861C E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D150 7F048620 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07D154 7F048624 460A003C */ c.lt.s $f0, $f10 /* 07D158 7F048628 240500CB */ li $a1, 203 /* 07D15C 7F04862C 00003025 */ move $a2, $zero /* 07D160 7F048630 266B0008 */ addiu $t3, $s3, 8 /* 07D164 7F048634 45020009 */ bc1fl .L7F04865C /* 07D168 7F048638 AFA0038C */ sw $zero, 0x38c($sp) /* 07D16C 7F04863C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07D170 7F048640 AFAB0070 */ sw $t3, 0x70($sp) /* 07D174 7F048644 0C002382 */ jal play_sfx_a1 /* 07D178 7F048648 E7AE0380 */ swc1 $f14, 0x380($sp) /* 07D17C 7F04864C 00402025 */ move $a0, $v0 /* 07D180 7F048650 0FC14E84 */ jal sub_GAME_7F053A10 /* 07D184 7F048654 8FA50070 */ lw $a1, 0x70($sp) /* 07D188 7F048658 AFA0038C */ sw $zero, 0x38c($sp) .L7F04865C: /* 07D18C 7F04865C 8E890008 */ lw $t1, 8($s4) /* 07D190 7F048660 8FA3038C */ lw $v1, 0x38c($sp) /* 07D194 7F048664 C7AC0380 */ lwc1 $f12, 0x380($sp) /* 07D198 7F048668 8D390008 */ lw $t9, 8($t1) /* 07D19C 7F04866C 00031040 */ sll $v0, $v1, 1 /* 07D1A0 7F048670 00026080 */ sll $t4, $v0, 2 /* 07D1A4 7F048674 032C5021 */ addu $t2, $t9, $t4 /* 07D1A8 7F048678 8D4E0004 */ lw $t6, 4($t2) /* 07D1AC 7F04867C 0002C180 */ sll $t8, $v0, 6 /* 07D1B0 7F048680 02582821 */ addu $a1, $s2, $t8 /* 07D1B4 7F048684 8DCD0004 */ lw $t5, 4($t6) /* 07D1B8 7F048688 AFA20074 */ sw $v0, 0x74($sp) /* 07D1BC 7F04868C 24A50040 */ addiu $a1, $a1, 0x40 /* 07D1C0 7F048690 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 07D1C4 7F048694 AFAD0390 */ sw $t5, 0x390($sp) /* 07D1C8 7F048698 8FAF0074 */ lw $t7, 0x74($sp) /* 07D1CC 7F04869C 8FB0038C */ lw $s0, 0x38c($sp) /* 07D1D0 7F0486A0 8FA40390 */ lw $a0, 0x390($sp) /* 07D1D4 7F0486A4 000F4180 */ sll $t0, $t7, 6 /* 07D1D8 7F0486A8 02482821 */ addu $a1, $s2, $t0 /* 07D1DC 7F0486AC 24A50040 */ addiu $a1, $a1, 0x40 /* 07D1E0 7F0486B0 0FC16266 */ jal matrix_4x4_set_position /* 07D1E4 7F0486B4 AFA50070 */ sw $a1, 0x70($sp) /* 07D1E8 7F0486B8 02402025 */ move $a0, $s2 /* 07D1EC 7F0486BC 0FC1601A */ jal matrix_4x4_multiply_in_place /* 07D1F0 7F0486C0 8FA50070 */ lw $a1, 0x70($sp) /* 07D1F4 7F0486C4 8E8B0008 */ lw $t3, 8($s4) /* 07D1F8 7F0486C8 8FA20074 */ lw $v0, 0x74($sp) /* 07D1FC 7F0486CC C7AC0384 */ lwc1 $f12, 0x384($sp) /* 07D200 7F0486D0 8D690008 */ lw $t1, 8($t3) /* 07D204 7F0486D4 24420002 */ addiu $v0, $v0, 2 /* 07D208 7F0486D8 0002C880 */ sll $t9, $v0, 2 /* 07D20C 7F0486DC 01396021 */ addu $t4, $t1, $t9 /* 07D210 7F0486E0 8D8A0000 */ lw $t2, ($t4) /* 07D214 7F0486E4 00026980 */ sll $t5, $v0, 6 /* 07D218 7F0486E8 024D2821 */ addu $a1, $s2, $t5 /* 07D21C 7F0486EC 8D4E0004 */ lw $t6, 4($t2) /* 07D220 7F0486F0 AFA5006C */ sw $a1, 0x6c($sp) /* 07D224 7F0486F4 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 07D228 7F0486F8 AFAE0390 */ sw $t6, 0x390($sp) /* 07D22C 7F0486FC 8FA40390 */ lw $a0, 0x390($sp) /* 07D230 7F048700 0FC16266 */ jal matrix_4x4_set_position /* 07D234 7F048704 8FA5006C */ lw $a1, 0x6c($sp) /* 07D238 7F048708 8FA40070 */ lw $a0, 0x70($sp) /* 07D23C 7F04870C 0FC1601A */ jal matrix_4x4_multiply_in_place /* 07D240 7F048710 8FA5006C */ lw $a1, 0x6c($sp) /* 07D244 7F048714 26100001 */ addiu $s0, $s0, 1 /* 07D248 7F048718 24010006 */ li $at, 6 /* 07D24C 7F04871C 1601FFCF */ bne $s0, $at, .L7F04865C /* 07D250 7F048720 AFB0038C */ sw $s0, 0x38c($sp) /* 07D254 7F048724 100002A8 */ b .L7F0491C8 /* 07D258 7F048728 8E8F0008 */ lw $t7, 8($s4) .L7F04872C: /* 07D25C 7F04872C 26380058 */ addiu $t8, $s1, 0x58 /* 07D260 7F048730 AFB80070 */ sw $t8, 0x70($sp) /* 07D264 7F048734 0FC16008 */ jal matrix_4x4_copy /* 07D268 7F048738 27A503A4 */ addiu $a1, $sp, 0x3a4 /* 07D26C 7F04873C 8FA40070 */ lw $a0, 0x70($sp) /* 07D270 7F048740 0FC16266 */ jal matrix_4x4_set_position /* 07D274 7F048744 27A503A4 */ addiu $a1, $sp, 0x3a4 /* 07D278 7F048748 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07D27C 7F04874C 00000000 */ nop /* 07D280 7F048750 00402025 */ move $a0, $v0 /* 07D284 7F048754 27A503A4 */ addiu $a1, $sp, 0x3a4 /* 07D288 7F048758 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 07D28C 7F04875C 02403025 */ move $a2, $s2 /* 07D290 7F048760 92220003 */ lbu $v0, 3($s1) /* 07D294 7F048764 24010006 */ li $at, 6 /* 07D298 7F048768 27A50320 */ addiu $a1, $sp, 0x320 /* 07D29C 7F04876C 5441002D */ bnel $v0, $at, .L7F048824 /* 07D2A0 7F048770 2401000D */ li $at, 13 /* 07D2A4 7F048774 8E620004 */ lw $v0, 4($s3) /* 07D2A8 7F048778 8E8F0008 */ lw $t7, 8($s4) /* 07D2AC 7F04877C C44C00C8 */ lwc1 $f12, 0xc8($v0) /* 07D2B0 7F048780 8DE80008 */ lw $t0, 8($t7) /* 07D2B4 7F048784 4616603C */ c.lt.s $f12, $f22 /* 07D2B8 7F048788 8D0B0000 */ lw $t3, ($t0) /* 07D2BC 7F04878C 45000003 */ bc1f .L7F04879C /* 07D2C0 7F048790 8D700004 */ lw $s0, 4($t3) /* 07D2C4 7F048794 10000006 */ b .L7F0487B0 /* 07D2C8 7F048798 46146300 */ add.s $f12, $f12, $f20 .L7F04879C: /* 07D2CC 7F04879C 460CA03E */ c.le.s $f20, $f12 /* 07D2D0 7F0487A0 00000000 */ nop /* 07D2D4 7F0487A4 45000002 */ bc1f .L7F0487B0 /* 07D2D8 7F0487A8 00000000 */ nop /* 07D2DC 7F0487AC 46146301 */ sub.s $f12, $f12, $f20 .L7F0487B0: /* 07D2E0 7F0487B0 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07D2E4 7F0487B4 AFA20370 */ sw $v0, 0x370($sp) /* 07D2E8 7F0487B8 8FA20370 */ lw $v0, 0x370($sp) /* 07D2EC 7F0487BC 26460040 */ addiu $a2, $s2, 0x40 /* 07D2F0 7F0487C0 AFA6006C */ sw $a2, 0x6c($sp) /* 07D2F4 7F0487C4 27A40320 */ addiu $a0, $sp, 0x320 /* 07D2F8 7F0487C8 0FC16032 */ jal matrix_4x4_multiply /* 07D2FC 7F0487CC 24450084 */ addiu $a1, $v0, 0x84 /* 07D300 7F0487D0 C6080000 */ lwc1 $f8, ($s0) /* 07D304 7F0487D4 27B20360 */ addiu $s2, $sp, 0x360 /* 07D308 7F0487D8 02402825 */ move $a1, $s2 /* 07D30C 7F0487DC E7A80360 */ swc1 $f8, 0x360($sp) /* 07D310 7F0487E0 C6040004 */ lwc1 $f4, 4($s0) /* 07D314 7F0487E4 27A403A4 */ addiu $a0, $sp, 0x3a4 /* 07D318 7F0487E8 E7A40364 */ swc1 $f4, 0x364($sp) /* 07D31C 7F0487EC C6060008 */ lwc1 $f6, 8($s0) /* 07D320 7F0487F0 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07D324 7F0487F4 E7A60368 */ swc1 $f6, 0x368($sp) /* 07D328 7F0487F8 02402025 */ move $a0, $s2 /* 07D32C 7F0487FC 0FC16266 */ jal matrix_4x4_set_position /* 07D330 7F048800 8FA5006C */ lw $a1, 0x6c($sp) /* 07D334 7F048804 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07D338 7F048808 00000000 */ nop /* 07D33C 7F04880C 00402025 */ move $a0, $v0 /* 07D340 7F048810 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D344 7F048814 8FA5006C */ lw $a1, 0x6c($sp) /* 07D348 7F048818 1000026B */ b .L7F0491C8 /* 07D34C 7F04881C 8E8F0008 */ lw $t7, 8($s4) /* 07D350 7F048820 2401000D */ li $at, 13 .L7F048824: /* 07D354 7F048824 5441007F */ bnel $v0, $at, .L7F048A24 /* 07D358 7F048828 24010008 */ li $at, 8 /* 07D35C 7F04882C 8E620004 */ lw $v0, 4($s3) /* 07D360 7F048830 3C018005 */ lui $at, %hi(D_80052B6C) /* 07D364 7F048834 C4282B6C */ lwc1 $f8, %lo(D_80052B6C)($at) /* 07D368 7F048838 C44A0090 */ lwc1 $f10, 0x90($v0) /* 07D36C 7F04883C C444009C */ lwc1 $f4, 0x9c($v0) /* 07D370 7F048840 46085300 */ add.s $f12, $f10, $f8 /* 07D374 7F048844 46002187 */ neg.s $f6, $f4 /* 07D378 7F048848 460CA03E */ c.le.s $f20, $f12 /* 07D37C 7F04884C E7A60300 */ swc1 $f6, 0x300($sp) /* 07D380 7F048850 45020003 */ bc1fl .L7F048860 /* 07D384 7F048854 8E890008 */ lw $t1, 8($s4) /* 07D388 7F048858 46146301 */ sub.s $f12, $f12, $f20 /* 07D38C 7F04885C 8E890008 */ lw $t1, 8($s4) .L7F048860: /* 07D390 7F048860 27A403A4 */ addiu $a0, $sp, 0x3a4 /* 07D394 7F048864 27A50308 */ addiu $a1, $sp, 0x308 /* 07D398 7F048868 8D390008 */ lw $t9, 8($t1) /* 07D39C 7F04886C 8F2C0004 */ lw $t4, 4($t9) /* 07D3A0 7F048870 8D900004 */ lw $s0, 4($t4) /* 07D3A4 7F048874 C60A0000 */ lwc1 $f10, ($s0) /* 07D3A8 7F048878 E7AA0308 */ swc1 $f10, 0x308($sp) /* 07D3AC 7F04887C C6080004 */ lwc1 $f8, 4($s0) /* 07D3B0 7F048880 E7A8030C */ swc1 $f8, 0x30c($sp) /* 07D3B4 7F048884 C6040008 */ lwc1 $f4, 8($s0) /* 07D3B8 7F048888 E7AC0304 */ swc1 $f12, 0x304($sp) /* 07D3BC 7F04888C AFA20318 */ sw $v0, 0x318($sp) /* 07D3C0 7F048890 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07D3C4 7F048894 E7A40310 */ swc1 $f4, 0x310($sp) /* 07D3C8 7F048898 26450040 */ addiu $a1, $s2, 0x40 /* 07D3CC 7F04889C C7AC0304 */ lwc1 $f12, 0x304($sp) /* 07D3D0 7F0488A0 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07D3D4 7F0488A4 AFA5006C */ sw $a1, 0x6c($sp) /* 07D3D8 7F0488A8 27A40308 */ addiu $a0, $sp, 0x308 /* 07D3DC 7F0488AC 0FC16266 */ jal matrix_4x4_set_position /* 07D3E0 7F0488B0 8FA5006C */ lw $a1, 0x6c($sp) /* 07D3E4 7F0488B4 8FAA0318 */ lw $t2, 0x318($sp) /* 07D3E8 7F0488B8 8FA5006C */ lw $a1, 0x6c($sp) /* 07D3EC 7F0488BC 8D4E0014 */ lw $t6, 0x14($t2) /* 07D3F0 7F0488C0 0FC1629F */ jal matrix_scalar_multiply /* 07D3F4 7F0488C4 C5CC0014 */ lwc1 $f12, 0x14($t6) /* 07D3F8 7F0488C8 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07D3FC 7F0488CC 00000000 */ nop /* 07D400 7F0488D0 00402025 */ move $a0, $v0 /* 07D404 7F0488D4 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D408 7F0488D8 8FA5006C */ lw $a1, 0x6c($sp) /* 07D40C 7F0488DC 8E8D0008 */ lw $t5, 8($s4) /* 07D410 7F0488E0 26450080 */ addiu $a1, $s2, 0x80 /* 07D414 7F0488E4 C7AC0300 */ lwc1 $f12, 0x300($sp) /* 07D418 7F0488E8 8DB80008 */ lw $t8, 8($t5) /* 07D41C 7F0488EC 8F0F0008 */ lw $t7, 8($t8) /* 07D420 7F0488F0 8DF00004 */ lw $s0, 4($t7) /* 07D424 7F0488F4 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 07D428 7F0488F8 AFA50068 */ sw $a1, 0x68($sp) /* 07D42C 7F0488FC 02002025 */ move $a0, $s0 /* 07D430 7F048900 0FC16266 */ jal matrix_4x4_set_position /* 07D434 7F048904 8FA50068 */ lw $a1, 0x68($sp) /* 07D438 7F048908 8FA4006C */ lw $a0, 0x6c($sp) /* 07D43C 7F04890C 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D440 7F048910 8FA50068 */ lw $a1, 0x68($sp) /* 07D444 7F048914 8E880008 */ lw $t0, 8($s4) /* 07D448 7F048918 02802025 */ move $a0, $s4 /* 07D44C 7F04891C 8D030008 */ lw $v1, 8($t0) /* 07D450 7F048920 8C65000C */ lw $a1, 0xc($v1) /* 07D454 7F048924 50A00016 */ beql $a1, $zero, .L7F048980 /* 07D458 7F048928 8C650010 */ lw $a1, 0x10($v1) /* 07D45C 7F04892C 0FC1B198 */ jal sub_GAME_7F06C660 /* 07D460 7F048930 00003025 */ move $a2, $zero /* 07D464 7F048934 AFA202FC */ sw $v0, 0x2fc($sp) /* 07D468 7F048938 8E8B0008 */ lw $t3, 8($s4) /* 07D46C 7F04893C 8FAC0318 */ lw $t4, 0x318($sp) /* 07D470 7F048940 00402825 */ move $a1, $v0 /* 07D474 7F048944 8D690008 */ lw $t1, 8($t3) /* 07D478 7F048948 C58C00B4 */ lwc1 $f12, 0xb4($t4) /* 07D47C 7F04894C 8D39000C */ lw $t9, 0xc($t1) /* 07D480 7F048950 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07D484 7F048954 8F300004 */ lw $s0, 4($t9) /* 07D488 7F048958 8FB202FC */ lw $s2, 0x2fc($sp) /* 07D48C 7F04895C 02002025 */ move $a0, $s0 /* 07D490 7F048960 0FC16266 */ jal matrix_4x4_set_position /* 07D494 7F048964 02402825 */ move $a1, $s2 /* 07D498 7F048968 8FA40068 */ lw $a0, 0x68($sp) /* 07D49C 7F04896C 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D4A0 7F048970 02402825 */ move $a1, $s2 /* 07D4A4 7F048974 8E8A0008 */ lw $t2, 8($s4) /* 07D4A8 7F048978 8D430008 */ lw $v1, 8($t2) /* 07D4AC 7F04897C 8C650010 */ lw $a1, 0x10($v1) .L7F048980: /* 07D4B0 7F048980 02802025 */ move $a0, $s4 /* 07D4B4 7F048984 50A00010 */ beql $a1, $zero, .L7F0489C8 /* 07D4B8 7F048988 8C650018 */ lw $a1, 0x18($v1) /* 07D4BC 7F04898C 0FC1B198 */ jal sub_GAME_7F06C660 /* 07D4C0 7F048990 00003025 */ move $a2, $zero /* 07D4C4 7F048994 8E8E0008 */ lw $t6, 8($s4) /* 07D4C8 7F048998 00409025 */ move $s2, $v0 /* 07D4CC 7F04899C 00402825 */ move $a1, $v0 /* 07D4D0 7F0489A0 8DCD0008 */ lw $t5, 8($t6) /* 07D4D4 7F0489A4 8DB80010 */ lw $t8, 0x10($t5) /* 07D4D8 7F0489A8 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07D4DC 7F0489AC 8F040004 */ lw $a0, 4($t8) /* 07D4E0 7F0489B0 8FA40068 */ lw $a0, 0x68($sp) /* 07D4E4 7F0489B4 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D4E8 7F0489B8 02402825 */ move $a1, $s2 /* 07D4EC 7F0489BC 8E8F0008 */ lw $t7, 8($s4) /* 07D4F0 7F0489C0 8DE30008 */ lw $v1, 8($t7) /* 07D4F4 7F0489C4 8C650018 */ lw $a1, 0x18($v1) .L7F0489C8: /* 07D4F8 7F0489C8 02802025 */ move $a0, $s4 /* 07D4FC 7F0489CC 50A001FE */ beql $a1, $zero, .L7F0491C8 /* 07D500 7F0489D0 8E8F0008 */ lw $t7, 8($s4) /* 07D504 7F0489D4 0FC1B198 */ jal sub_GAME_7F06C660 /* 07D508 7F0489D8 00003025 */ move $a2, $zero /* 07D50C 7F0489DC 8E880008 */ lw $t0, 8($s4) /* 07D510 7F0489E0 8FB90318 */ lw $t9, 0x318($sp) /* 07D514 7F0489E4 00409025 */ move $s2, $v0 /* 07D518 7F0489E8 8D0B0008 */ lw $t3, 8($t0) /* 07D51C 7F0489EC 00402825 */ move $a1, $v0 /* 07D520 7F0489F0 C72C00B4 */ lwc1 $f12, 0xb4($t9) /* 07D524 7F0489F4 8D690018 */ lw $t1, 0x18($t3) /* 07D528 7F0489F8 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07D52C 7F0489FC 8D300004 */ lw $s0, 4($t1) /* 07D530 7F048A00 02002025 */ move $a0, $s0 /* 07D534 7F048A04 0FC16266 */ jal matrix_4x4_set_position /* 07D538 7F048A08 02402825 */ move $a1, $s2 /* 07D53C 7F048A0C 8FA40068 */ lw $a0, 0x68($sp) /* 07D540 7F048A10 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D544 7F048A14 02402825 */ move $a1, $s2 /* 07D548 7F048A18 100001EB */ b .L7F0491C8 /* 07D54C 7F048A1C 8E8F0008 */ lw $t7, 8($s4) /* 07D550 7F048A20 24010008 */ li $at, 8 .L7F048A24: /* 07D554 7F048A24 54410017 */ bnel $v0, $at, .L7F048A84 /* 07D558 7F048A28 2401000C */ li $at, 12 /* 07D55C 7F048A2C 8E8C0008 */ lw $t4, 8($s4) /* 07D560 7F048A30 24020001 */ li $v0, 1 /* 07D564 7F048A34 26440040 */ addiu $a0, $s2, 0x40 /* 07D568 7F048A38 858A000E */ lh $t2, 0xe($t4) /* 07D56C 7F048A3C 29410002 */ slti $at, $t2, 2 /* 07D570 7F048A40 542001E1 */ bnezl $at, .L7F0491C8 /* 07D574 7F048A44 8E8F0008 */ lw $t7, 8($s4) /* 07D578 7F048A48 AFA202F8 */ sw $v0, 0x2f8($sp) .L7F048A4C: /* 07D57C 7F048A4C 0FC15FF4 */ jal matrix_4x4_set_identity /* 07D580 7F048A50 AFA40074 */ sw $a0, 0x74($sp) /* 07D584 7F048A54 8E8E0008 */ lw $t6, 8($s4) /* 07D588 7F048A58 8FA202F8 */ lw $v0, 0x2f8($sp) /* 07D58C 7F048A5C 8FA40074 */ lw $a0, 0x74($sp) /* 07D590 7F048A60 85CD000E */ lh $t5, 0xe($t6) /* 07D594 7F048A64 24420001 */ addiu $v0, $v0, 1 /* 07D598 7F048A68 24840040 */ addiu $a0, $a0, 0x40 /* 07D59C 7F048A6C 004D082A */ slt $at, $v0, $t5 /* 07D5A0 7F048A70 5420FFF6 */ bnezl $at, .L7F048A4C /* 07D5A4 7F048A74 AFA202F8 */ sw $v0, 0x2f8($sp) /* 07D5A8 7F048A78 100001D3 */ b .L7F0491C8 /* 07D5AC 7F048A7C 8E8F0008 */ lw $t7, 8($s4) /* 07D5B0 7F048A80 2401000C */ li $at, 12 .L7F048A84: /* 07D5B4 7F048A84 5441002C */ bnel $v0, $at, .L7F048B38 /* 07D5B8 7F048A88 24010027 */ li $at, 39 /* 07D5BC 7F048A8C 8E980008 */ lw $t8, 8($s4) /* 07D5C0 7F048A90 26450040 */ addiu $a1, $s2, 0x40 /* 07D5C4 7F048A94 8F0F0008 */ lw $t7, 8($t8) /* 07D5C8 7F048A98 8DE80000 */ lw $t0, ($t7) /* 07D5CC 7F048A9C 8D040004 */ lw $a0, 4($t0) /* 07D5D0 7F048AA0 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07D5D4 7F048AA4 AFA5006C */ sw $a1, 0x6c($sp) /* 07D5D8 7F048AA8 02402025 */ move $a0, $s2 /* 07D5DC 7F048AAC 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D5E0 7F048AB0 8FA5006C */ lw $a1, 0x6c($sp) /* 07D5E4 7F048AB4 8E8B0008 */ lw $t3, 8($s4) /* 07D5E8 7F048AB8 26450080 */ addiu $a1, $s2, 0x80 /* 07D5EC 7F048ABC 8D690008 */ lw $t1, 8($t3) /* 07D5F0 7F048AC0 8D390004 */ lw $t9, 4($t1) /* 07D5F4 7F048AC4 8F240004 */ lw $a0, 4($t9) /* 07D5F8 7F048AC8 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07D5FC 7F048ACC AFA50068 */ sw $a1, 0x68($sp) /* 07D600 7F048AD0 02402025 */ move $a0, $s2 /* 07D604 7F048AD4 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D608 7F048AD8 8FA50068 */ lw $a1, 0x68($sp) /* 07D60C 7F048ADC 8E8C0008 */ lw $t4, 8($s4) /* 07D610 7F048AE0 264500C0 */ addiu $a1, $s2, 0xc0 /* 07D614 7F048AE4 8D8A0008 */ lw $t2, 8($t4) /* 07D618 7F048AE8 8D4E0008 */ lw $t6, 8($t2) /* 07D61C 7F048AEC 8DC40004 */ lw $a0, 4($t6) /* 07D620 7F048AF0 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07D624 7F048AF4 AFA50074 */ sw $a1, 0x74($sp) /* 07D628 7F048AF8 02402025 */ move $a0, $s2 /* 07D62C 7F048AFC 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D630 7F048B00 8FA50074 */ lw $a1, 0x74($sp) /* 07D634 7F048B04 8E8D0008 */ lw $t5, 8($s4) /* 07D638 7F048B08 26500100 */ addiu $s0, $s2, 0x100 /* 07D63C 7F048B0C 02002825 */ move $a1, $s0 /* 07D640 7F048B10 8DB80008 */ lw $t8, 8($t5) /* 07D644 7F048B14 8F0F000C */ lw $t7, 0xc($t8) /* 07D648 7F048B18 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07D64C 7F048B1C 8DE40004 */ lw $a0, 4($t7) /* 07D650 7F048B20 02402025 */ move $a0, $s2 /* 07D654 7F048B24 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D658 7F048B28 02002825 */ move $a1, $s0 /* 07D65C 7F048B2C 100001A6 */ b .L7F0491C8 /* 07D660 7F048B30 8E8F0008 */ lw $t7, 8($s4) /* 07D664 7F048B34 24010027 */ li $at, 39 .L7F048B38: /* 07D668 7F048B38 544100B9 */ bnel $v0, $at, .L7F048E20 /* 07D66C 7F048B3C 24010028 */ li $at, 40 /* 07D670 7F048B40 8E880008 */ lw $t0, 8($s4) /* 07D674 7F048B44 8FAF0678 */ lw $t7, 0x678($sp) /* 07D678 7F048B48 4600B006 */ mov.s $f0, $f22 /* 07D67C 7F048B4C 8D030008 */ lw $v1, 8($t0) /* 07D680 7F048B50 8C6B0004 */ lw $t3, 4($v1) /* 07D684 7F048B54 8D690004 */ lw $t1, 4($t3) /* 07D688 7F048B58 AFA90260 */ sw $t1, 0x260($sp) /* 07D68C 7F048B5C 8C790008 */ lw $t9, 8($v1) /* 07D690 7F048B60 8F2C0004 */ lw $t4, 4($t9) /* 07D694 7F048B64 AFAC025C */ sw $t4, 0x25c($sp) /* 07D698 7F048B68 8C6E0010 */ lw $t6, 0x10($v1) /* 07D69C 7F048B6C 8C6A000C */ lw $t2, 0xc($v1) /* 07D6A0 7F048B70 8DCD0004 */ lw $t5, 4($t6) /* 07D6A4 7F048B74 8D500004 */ lw $s0, 4($t2) /* 07D6A8 7F048B78 AFAD0254 */ sw $t5, 0x254($sp) /* 07D6AC 7F048B7C 8C780018 */ lw $t8, 0x18($v1) /* 07D6B0 7F048B80 C6840014 */ lwc1 $f4, 0x14($s4) /* 07D6B4 7F048B84 8F020004 */ lw $v0, 4($t8) /* 07D6B8 7F048B88 C4460010 */ lwc1 $f6, 0x10($v0) /* 07D6BC 7F048B8C C44A000C */ lwc1 $f10, 0xc($v0) /* 07D6C0 7F048B90 460A3201 */ sub.s $f8, $f6, $f10 /* 07D6C4 7F048B94 46044082 */ mul.s $f2, $f8, $f4 /* 07D6C8 7F048B98 11E00026 */ beqz $t7, .L7F048C34 /* 07D6CC 7F048B9C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07D6D0 7F048BA0 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07D6D4 7F048BA4 C6260088 */ lwc1 $f6, 0x88($s1) /* 07D6D8 7F048BA8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07D6DC 7F048BAC 460A3202 */ mul.s $f8, $f6, $f10 /* 07D6E0 7F048BB0 44815000 */ mtc1 $at, $f10 /* 07D6E4 7F048BB4 46144102 */ mul.s $f4, $f8, $f20 /* 07D6E8 7F048BB8 00000000 */ nop /* 07D6EC 7F048BBC 46141182 */ mul.s $f6, $f2, $f20 /* 07D6F0 7F048BC0 00000000 */ nop /* 07D6F4 7F048BC4 460A3202 */ mul.s $f8, $f6, $f10 /* 07D6F8 7F048BC8 C626008C */ lwc1 $f6, 0x8c($s1) /* 07D6FC 7F048BCC 46082003 */ div.s $f0, $f4, $f8 /* 07D700 7F048BD0 46003280 */ add.s $f10, $f6, $f0 /* 07D704 7F048BD4 E62A008C */ swc1 $f10, 0x8c($s1) /* 07D708 7F048BD8 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D70C 7F048BDC 460CA03E */ c.le.s $f20, $f12 /* 07D710 7F048BE0 00000000 */ nop /* 07D714 7F048BE4 45000008 */ bc1f .L7F048C08 /* 07D718 7F048BE8 00000000 */ nop /* 07D71C 7F048BEC 46146101 */ sub.s $f4, $f12, $f20 .L7F048BF0: /* 07D720 7F048BF0 E624008C */ swc1 $f4, 0x8c($s1) /* 07D724 7F048BF4 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D728 7F048BF8 460CA03E */ c.le.s $f20, $f12 /* 07D72C 7F048BFC 00000000 */ nop /* 07D730 7F048C00 4503FFFB */ bc1tl .L7F048BF0 /* 07D734 7F048C04 46146101 */ sub.s $f4, $f12, $f20 .L7F048C08: /* 07D738 7F048C08 4616603C */ c.lt.s $f12, $f22 /* 07D73C 7F048C0C 00000000 */ nop /* 07D740 7F048C10 45020009 */ bc1fl .L7F048C38 /* 07D744 7F048C14 C626008C */ lwc1 $f6, 0x8c($s1) /* 07D748 7F048C18 46146200 */ add.s $f8, $f12, $f20 .L7F048C1C: /* 07D74C 7F048C1C E628008C */ swc1 $f8, 0x8c($s1) /* 07D750 7F048C20 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D754 7F048C24 4616603C */ c.lt.s $f12, $f22 /* 07D758 7F048C28 00000000 */ nop /* 07D75C 7F048C2C 4503FFFB */ bc1tl .L7F048C1C /* 07D760 7F048C30 46146200 */ add.s $f8, $f12, $f20 .L7F048C34: /* 07D764 7F048C34 C626008C */ lwc1 $f6, 0x8c($s1) .L7F048C38: /* 07D768 7F048C38 46003280 */ add.s $f10, $f6, $f0 /* 07D76C 7F048C3C E62A008C */ swc1 $f10, 0x8c($s1) /* 07D770 7F048C40 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D774 7F048C44 460CA03E */ c.le.s $f20, $f12 /* 07D778 7F048C48 00000000 */ nop /* 07D77C 7F048C4C 45020009 */ bc1fl .L7F048C74 /* 07D780 7F048C50 4616603C */ c.lt.s $f12, $f22 /* 07D784 7F048C54 46146101 */ sub.s $f4, $f12, $f20 .L7F048C58: /* 07D788 7F048C58 E624008C */ swc1 $f4, 0x8c($s1) /* 07D78C 7F048C5C C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D790 7F048C60 460CA03E */ c.le.s $f20, $f12 /* 07D794 7F048C64 00000000 */ nop /* 07D798 7F048C68 4503FFFB */ bc1tl .L7F048C58 /* 07D79C 7F048C6C 46146101 */ sub.s $f4, $f12, $f20 /* 07D7A0 7F048C70 4616603C */ c.lt.s $f12, $f22 .L7F048C74: /* 07D7A4 7F048C74 00000000 */ nop /* 07D7A8 7F048C78 45000008 */ bc1f .L7F048C9C /* 07D7AC 7F048C7C 00000000 */ nop /* 07D7B0 7F048C80 46146200 */ add.s $f8, $f12, $f20 .L7F048C84: /* 07D7B4 7F048C84 E628008C */ swc1 $f8, 0x8c($s1) /* 07D7B8 7F048C88 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D7BC 7F048C8C 4616603C */ c.lt.s $f12, $f22 /* 07D7C0 7F048C90 00000000 */ nop /* 07D7C4 7F048C94 4503FFFB */ bc1tl .L7F048C84 /* 07D7C8 7F048C98 46146200 */ add.s $f8, $f12, $f20 .L7F048C9C: /* 07D7CC 7F048C9C 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07D7D0 7F048CA0 27A502AC */ addiu $a1, $sp, 0x2ac /* 07D7D4 7F048CA4 C6260088 */ lwc1 $f6, 0x88($s1) /* 07D7D8 7F048CA8 4606B03C */ c.lt.s $f22, $f6 /* 07D7DC 7F048CAC 00000000 */ nop /* 07D7E0 7F048CB0 4502002B */ bc1fl .L7F048D60 /* 07D7E4 7F048CB4 C62C0090 */ lwc1 $f12, 0x90($s1) /* 07D7E8 7F048CB8 8FA80260 */ lw $t0, 0x260($sp) /* 07D7EC 7F048CBC C60A0008 */ lwc1 $f10, 8($s0) /* 07D7F0 7F048CC0 C62C009C */ lwc1 $f12, 0x9c($s1) /* 07D7F4 7F048CC4 C5040008 */ lwc1 $f4, 8($t0) /* 07D7F8 7F048CC8 C6860014 */ lwc1 $f6, 0x14($s4) /* 07D7FC 7F048CCC 4616603C */ c.lt.s $f12, $f22 /* 07D800 7F048CD0 46045201 */ sub.s $f8, $f10, $f4 /* 07D804 7F048CD4 46064082 */ mul.s $f2, $f8, $f6 /* 07D808 7F048CD8 45020003 */ bc1fl .L7F048CE8 /* 07D80C 7F048CDC E7A20250 */ swc1 $f2, 0x250($sp) /* 07D810 7F048CE0 46006307 */ neg.s $f12, $f12 /* 07D814 7F048CE4 E7A20250 */ swc1 $f2, 0x250($sp) .L7F048CE8: /* 07D818 7F048CE8 0FC15FAB */ jal sinf /* 07D81C 7F048CEC E7AC024C */ swc1 $f12, 0x24c($sp) /* 07D820 7F048CF0 C7A20250 */ lwc1 $f2, 0x250($sp) /* 07D824 7F048CF4 C7AC024C */ lwc1 $f12, 0x24c($sp) /* 07D828 7F048CF8 46020282 */ mul.s $f10, $f0, $f2 /* 07D82C 7F048CFC 0FC15FA8 */ jal cosf /* 07D830 7F048D00 E7AA0248 */ swc1 $f10, 0x248($sp) /* 07D834 7F048D04 C7A20250 */ lwc1 $f2, 0x250($sp) /* 07D838 7F048D08 C6280088 */ lwc1 $f8, 0x88($s1) /* 07D83C 7F048D0C C7AC0248 */ lwc1 $f12, 0x248($sp) /* 07D840 7F048D10 46020102 */ mul.s $f4, $f0, $f2 /* 07D844 7F048D14 46081181 */ sub.s $f6, $f2, $f8 /* 07D848 7F048D18 0FC16A8C */ jal atan2f /* 07D84C 7F048D1C 46062381 */ sub.s $f14, $f4, $f6 /* 07D850 7F048D20 C7A2024C */ lwc1 $f2, 0x24c($sp) /* 07D854 7F048D24 E6200090 */ swc1 $f0, 0x90($s1) /* 07D858 7F048D28 4602003C */ c.lt.s $f0, $f2 /* 07D85C 7F048D2C 00000000 */ nop /* 07D860 7F048D30 45020003 */ bc1fl .L7F048D40 /* 07D864 7F048D34 C62A009C */ lwc1 $f10, 0x9c($s1) /* 07D868 7F048D38 E6220090 */ swc1 $f2, 0x90($s1) /* 07D86C 7F048D3C C62A009C */ lwc1 $f10, 0x9c($s1) .L7F048D40: /* 07D870 7F048D40 460AB03C */ c.lt.s $f22, $f10 /* 07D874 7F048D44 00000000 */ nop /* 07D878 7F048D48 45020005 */ bc1fl .L7F048D60 /* 07D87C 7F048D4C C62C0090 */ lwc1 $f12, 0x90($s1) /* 07D880 7F048D50 C6280090 */ lwc1 $f8, 0x90($s1) /* 07D884 7F048D54 4608A101 */ sub.s $f4, $f20, $f8 /* 07D888 7F048D58 E6240090 */ swc1 $f4, 0x90($s1) /* 07D88C 7F048D5C C62C0090 */ lwc1 $f12, 0x90($s1) .L7F048D60: /* 07D890 7F048D60 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07D894 7F048D64 27A5026C */ addiu $a1, $sp, 0x26c /* 07D898 7F048D68 264500C0 */ addiu $a1, $s2, 0xc0 /* 07D89C 7F048D6C AFA50074 */ sw $a1, 0x74($sp) /* 07D8A0 7F048D70 0FC16008 */ jal matrix_4x4_copy /* 07D8A4 7F048D74 27A402AC */ addiu $a0, $sp, 0x2ac /* 07D8A8 7F048D78 02002025 */ move $a0, $s0 /* 07D8AC 7F048D7C 0FC16266 */ jal matrix_4x4_set_position /* 07D8B0 7F048D80 8FA50074 */ lw $a1, 0x74($sp) /* 07D8B4 7F048D84 02402025 */ move $a0, $s2 /* 07D8B8 7F048D88 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D8BC 7F048D8C 8FA50074 */ lw $a1, 0x74($sp) /* 07D8C0 7F048D90 26500100 */ addiu $s0, $s2, 0x100 /* 07D8C4 7F048D94 02002825 */ move $a1, $s0 /* 07D8C8 7F048D98 0FC16008 */ jal matrix_4x4_copy /* 07D8CC 7F048D9C 27A402AC */ addiu $a0, $sp, 0x2ac /* 07D8D0 7F048DA0 8FA40254 */ lw $a0, 0x254($sp) /* 07D8D4 7F048DA4 0FC16266 */ jal matrix_4x4_set_position /* 07D8D8 7F048DA8 02002825 */ move $a1, $s0 /* 07D8DC 7F048DAC 02402025 */ move $a0, $s2 /* 07D8E0 7F048DB0 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D8E4 7F048DB4 02002825 */ move $a1, $s0 /* 07D8E8 7F048DB8 27A4026C */ addiu $a0, $sp, 0x26c /* 07D8EC 7F048DBC 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D8F0 7F048DC0 27A502AC */ addiu $a1, $sp, 0x2ac /* 07D8F4 7F048DC4 26450040 */ addiu $a1, $s2, 0x40 /* 07D8F8 7F048DC8 AFA5006C */ sw $a1, 0x6c($sp) /* 07D8FC 7F048DCC 0FC16008 */ jal matrix_4x4_copy /* 07D900 7F048DD0 27A402AC */ addiu $a0, $sp, 0x2ac /* 07D904 7F048DD4 8FA40260 */ lw $a0, 0x260($sp) /* 07D908 7F048DD8 0FC16266 */ jal matrix_4x4_set_position /* 07D90C 7F048DDC 8FA5006C */ lw $a1, 0x6c($sp) /* 07D910 7F048DE0 02402025 */ move $a0, $s2 /* 07D914 7F048DE4 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D918 7F048DE8 8FA5006C */ lw $a1, 0x6c($sp) /* 07D91C 7F048DEC 26450080 */ addiu $a1, $s2, 0x80 /* 07D920 7F048DF0 AFA50068 */ sw $a1, 0x68($sp) /* 07D924 7F048DF4 0FC16008 */ jal matrix_4x4_copy /* 07D928 7F048DF8 27A402AC */ addiu $a0, $sp, 0x2ac /* 07D92C 7F048DFC 8FA4025C */ lw $a0, 0x25c($sp) /* 07D930 7F048E00 0FC16266 */ jal matrix_4x4_set_position /* 07D934 7F048E04 8FA50068 */ lw $a1, 0x68($sp) /* 07D938 7F048E08 02402025 */ move $a0, $s2 /* 07D93C 7F048E0C 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D940 7F048E10 8FA50068 */ lw $a1, 0x68($sp) /* 07D944 7F048E14 100000EC */ b .L7F0491C8 /* 07D948 7F048E18 8E8F0008 */ lw $t7, 8($s4) /* 07D94C 7F048E1C 24010028 */ li $at, 40 .L7F048E20: /* 07D950 7F048E20 14410086 */ bne $v0, $at, .L7F04903C /* 07D954 7F048E24 00000000 */ nop /* 07D958 7F048E28 8E8B0008 */ lw $t3, 8($s4) /* 07D95C 7F048E2C 3C0A8005 */ lui $t2, %hi(clock_timer) /* 07D960 7F048E30 8D4A8374 */ lw $t2, %lo(clock_timer)($t2) /* 07D964 7F048E34 8D690008 */ lw $t1, 8($t3) /* 07D968 7F048E38 8FAE0678 */ lw $t6, 0x678($sp) /* 07D96C 7F048E3C 27B001B0 */ addiu $s0, $sp, 0x1b0 /* 07D970 7F048E40 8D390008 */ lw $t9, 8($t1) /* 07D974 7F048E44 3C0F8003 */ lui $t7, %hi(D_80030B34) /* 07D978 7F048E48 02402025 */ move $a0, $s2 /* 07D97C 7F048E4C 8F2C0004 */ lw $t4, 4($t9) /* 07D980 7F048E50 26450040 */ addiu $a1, $s2, 0x40 /* 07D984 7F048E54 1940001E */ blez $t2, .L7F048ED0 /* 07D988 7F048E58 AFAC01FC */ sw $t4, 0x1fc($sp) /* 07D98C 7F048E5C 51C0001D */ beql $t6, $zero, .L7F048ED4 /* 07D990 7F048E60 8E2D0014 */ lw $t5, 0x14($s1) /* 07D994 7F048E64 C6260088 */ lwc1 $f6, 0x88($s1) /* 07D998 7F048E68 C62A008C */ lwc1 $f10, 0x8c($s1) /* 07D99C 7F048E6C 460A3200 */ add.s $f8, $f6, $f10 /* 07D9A0 7F048E70 E6280088 */ swc1 $f8, 0x88($s1) /* 07D9A4 7F048E74 C6200088 */ lwc1 $f0, 0x88($s1) /* 07D9A8 7F048E78 4600A03E */ c.le.s $f20, $f0 /* 07D9AC 7F048E7C 00000000 */ nop /* 07D9B0 7F048E80 45020009 */ bc1fl .L7F048EA8 /* 07D9B4 7F048E84 4616003C */ c.lt.s $f0, $f22 /* 07D9B8 7F048E88 46140101 */ sub.s $f4, $f0, $f20 .L7F048E8C: /* 07D9BC 7F048E8C E6240088 */ swc1 $f4, 0x88($s1) /* 07D9C0 7F048E90 C6200088 */ lwc1 $f0, 0x88($s1) /* 07D9C4 7F048E94 4600A03E */ c.le.s $f20, $f0 /* 07D9C8 7F048E98 00000000 */ nop /* 07D9CC 7F048E9C 4503FFFB */ bc1tl .L7F048E8C /* 07D9D0 7F048EA0 46140101 */ sub.s $f4, $f0, $f20 /* 07D9D4 7F048EA4 4616003C */ c.lt.s $f0, $f22 .L7F048EA8: /* 07D9D8 7F048EA8 00000000 */ nop /* 07D9DC 7F048EAC 45020009 */ bc1fl .L7F048ED4 /* 07D9E0 7F048EB0 8E2D0014 */ lw $t5, 0x14($s1) /* 07D9E4 7F048EB4 46140180 */ add.s $f6, $f0, $f20 .L7F048EB8: /* 07D9E8 7F048EB8 E6260088 */ swc1 $f6, 0x88($s1) /* 07D9EC 7F048EBC C6200088 */ lwc1 $f0, 0x88($s1) /* 07D9F0 7F048EC0 4616003C */ c.lt.s $f0, $f22 /* 07D9F4 7F048EC4 00000000 */ nop /* 07D9F8 7F048EC8 4503FFFB */ bc1tl .L7F048EB8 /* 07D9FC 7F048ECC 46140180 */ add.s $f6, $f0, $f20 .L7F048ED0: /* 07DA00 7F048ED0 8E2D0014 */ lw $t5, 0x14($s1) .L7F048ED4: /* 07DA04 7F048ED4 25EF0B34 */ addiu $t7, %lo(D_80030B34) # addiu $t7, $t7, 0xb34 /* 07DA08 7F048ED8 25EB003C */ addiu $t3, $t7, 0x3c /* 07DA0C 7F048EDC 8DB80020 */ lw $t8, 0x20($t5) /* 07DA10 7F048EE0 02004825 */ move $t1, $s0 /* 07DA14 7F048EE4 13000015 */ beqz $t8, .L7F048F3C /* 07DA18 7F048EE8 00000000 */ nop .L7F048EEC: /* 07DA1C 7F048EEC 8DE10000 */ lw $at, ($t7) /* 07DA20 7F048EF0 25EF000C */ addiu $t7, $t7, 0xc /* 07DA24 7F048EF4 2529000C */ addiu $t1, $t1, 0xc /* 07DA28 7F048EF8 AD21FFF4 */ sw $at, -0xc($t1) /* 07DA2C 7F048EFC 8DE1FFF8 */ lw $at, -8($t7) /* 07DA30 7F048F00 AD21FFF8 */ sw $at, -8($t1) /* 07DA34 7F048F04 8DE1FFFC */ lw $at, -4($t7) /* 07DA38 7F048F08 15EBFFF8 */ bne $t7, $t3, .L7F048EEC /* 07DA3C 7F048F0C AD21FFFC */ sw $at, -4($t1) /* 07DA40 7F048F10 8DE10000 */ lw $at, ($t7) /* 07DA44 7F048F14 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 07DA48 7F048F18 AD210000 */ sw $at, ($t1) /* 07DA4C 7F048F1C AFA201B0 */ sw $v0, 0x1b0($sp) /* 07DA50 7F048F20 AFB201C0 */ sw $s2, 0x1c0($sp) /* 07DA54 7F048F24 8E250014 */ lw $a1, 0x14($s1) /* 07DA58 7F048F28 0FC1BCBE */ jal subcalcmatrices /* 07DA5C 7F048F2C 02002025 */ move $a0, $s0 /* 07DA60 7F048F30 26590040 */ addiu $t9, $s2, 0x40 /* 07DA64 7F048F34 10000003 */ b .L7F048F44 /* 07DA68 7F048F38 AFB9006C */ sw $t9, 0x6c($sp) .L7F048F3C: /* 07DA6C 7F048F3C 0FC16008 */ jal matrix_4x4_copy /* 07DA70 7F048F40 AFA5006C */ sw $a1, 0x6c($sp) .L7F048F44: /* 07DA74 7F048F44 8E2C0008 */ lw $t4, 8($s1) /* 07DA78 7F048F48 27A50200 */ addiu $a1, $sp, 0x200 /* 07DA7C 7F048F4C 000C5080 */ sll $t2, $t4, 2 /* 07DA80 7F048F50 05410006 */ bgez $t2, .L7F048F6C /* 07DA84 7F048F54 00000000 */ nop /* 07DA88 7F048F58 C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DA8C 7F048F5C 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 07DA90 7F048F60 27A50200 */ addiu $a1, $sp, 0x200 /* 07DA94 7F048F64 10000004 */ b .L7F048F78 /* 07DA98 7F048F68 26450080 */ addiu $a1, $s2, 0x80 .L7F048F6C: /* 07DA9C 7F048F6C 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07DAA0 7F048F70 C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DAA4 7F048F74 26450080 */ addiu $a1, $s2, 0x80 .L7F048F78: /* 07DAA8 7F048F78 AFA50068 */ sw $a1, 0x68($sp) /* 07DAAC 7F048F7C 0FC16008 */ jal matrix_4x4_copy /* 07DAB0 7F048F80 27A40200 */ addiu $a0, $sp, 0x200 /* 07DAB4 7F048F84 8FA401FC */ lw $a0, 0x1fc($sp) /* 07DAB8 7F048F88 0FC16266 */ jal matrix_4x4_set_position /* 07DABC 7F048F8C 8FA50068 */ lw $a1, 0x68($sp) /* 07DAC0 7F048F90 8FA4006C */ lw $a0, 0x6c($sp) /* 07DAC4 7F048F94 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DAC8 7F048F98 8FA50068 */ lw $a1, 0x68($sp) /* 07DACC 7F048F9C 8E8E0008 */ lw $t6, 8($s4) /* 07DAD0 7F048FA0 02802025 */ move $a0, $s4 /* 07DAD4 7F048FA4 00003025 */ move $a2, $zero /* 07DAD8 7F048FA8 8DC30008 */ lw $v1, 8($t6) /* 07DADC 7F048FAC 8C65000C */ lw $a1, 0xc($v1) /* 07DAE0 7F048FB0 50A00013 */ beql $a1, $zero, .L7F049000 /* 07DAE4 7F048FB4 8C650010 */ lw $a1, 0x10($v1) /* 07DAE8 7F048FB8 0FC1B198 */ jal sub_GAME_7F06C660 /* 07DAEC 7F048FBC 8CB20004 */ lw $s2, 4($a1) /* 07DAF0 7F048FC0 00408025 */ move $s0, $v0 /* 07DAF4 7F048FC4 C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DAF8 7F048FC8 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07DAFC 7F048FCC 27A50200 */ addiu $a1, $sp, 0x200 /* 07DB00 7F048FD0 27A40200 */ addiu $a0, $sp, 0x200 /* 07DB04 7F048FD4 0FC16008 */ jal matrix_4x4_copy /* 07DB08 7F048FD8 02002825 */ move $a1, $s0 /* 07DB0C 7F048FDC 02402025 */ move $a0, $s2 /* 07DB10 7F048FE0 0FC16266 */ jal matrix_4x4_set_position /* 07DB14 7F048FE4 02002825 */ move $a1, $s0 /* 07DB18 7F048FE8 8FA4006C */ lw $a0, 0x6c($sp) /* 07DB1C 7F048FEC 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DB20 7F048FF0 02002825 */ move $a1, $s0 /* 07DB24 7F048FF4 8E8D0008 */ lw $t5, 8($s4) /* 07DB28 7F048FF8 8DA30008 */ lw $v1, 8($t5) /* 07DB2C 7F048FFC 8C650010 */ lw $a1, 0x10($v1) .L7F049000: /* 07DB30 7F049000 02802025 */ move $a0, $s4 /* 07DB34 7F049004 00003025 */ move $a2, $zero /* 07DB38 7F049008 50A0006F */ beql $a1, $zero, .L7F0491C8 /* 07DB3C 7F04900C 8E8F0008 */ lw $t7, 8($s4) /* 07DB40 7F049010 0FC1B198 */ jal sub_GAME_7F06C660 /* 07DB44 7F049014 8CB20004 */ lw $s2, 4($a1) /* 07DB48 7F049018 00408025 */ move $s0, $v0 /* 07DB4C 7F04901C 02402025 */ move $a0, $s2 /* 07DB50 7F049020 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07DB54 7F049024 00402825 */ move $a1, $v0 /* 07DB58 7F049028 8FA4006C */ lw $a0, 0x6c($sp) /* 07DB5C 7F04902C 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DB60 7F049030 02002825 */ move $a1, $s0 /* 07DB64 7F049034 10000064 */ b .L7F0491C8 /* 07DB68 7F049038 8E8F0008 */ lw $t7, 8($s4) .L7F04903C: /* 07DB6C 7F04903C 16020061 */ bne $s0, $v0, .L7F0491C4 /* 07DB70 7F049040 26450040 */ addiu $a1, $s2, 0x40 /* 07DB74 7F049044 8E980008 */ lw $t8, 8($s4) /* 07DB78 7F049048 8F030008 */ lw $v1, 8($t8) /* 07DB7C 7F04904C 8C6B000C */ lw $t3, 0xc($v1) /* 07DB80 7F049050 8C680004 */ lw $t0, 4($v1) /* 07DB84 7F049054 8D6F0004 */ lw $t7, 4($t3) /* 07DB88 7F049058 8D100004 */ lw $s0, 4($t0) /* 07DB8C 7F04905C AFAF0164 */ sw $t7, 0x164($sp) /* 07DB90 7F049060 8C690010 */ lw $t1, 0x10($v1) /* 07DB94 7F049064 8D390004 */ lw $t9, 4($t1) /* 07DB98 7F049068 AFB90160 */ sw $t9, 0x160($sp) /* 07DB9C 7F04906C 8C6C0008 */ lw $t4, 8($v1) /* 07DBA0 7F049070 8D8A0004 */ lw $t2, 4($t4) /* 07DBA4 7F049074 AFAA015C */ sw $t2, 0x15c($sp) /* 07DBA8 7F049078 8C6E0018 */ lw $t6, 0x18($v1) /* 07DBAC 7F04907C 8DCD0004 */ lw $t5, 4($t6) /* 07DBB0 7F049080 AFAD0158 */ sw $t5, 0x158($sp) /* 07DBB4 7F049084 C62E00C8 */ lwc1 $f14, 0xc8($s1) /* 07DBB8 7F049088 46007387 */ neg.s $f14, $f14 /* 07DBBC 7F04908C 4616703C */ c.lt.s $f14, $f22 /* 07DBC0 7F049090 00000000 */ nop /* 07DBC4 7F049094 45020003 */ bc1fl .L7F0490A4 /* 07DBC8 7F049098 C62C00CC */ lwc1 $f12, 0xcc($s1) /* 07DBCC 7F04909C 46147380 */ add.s $f14, $f14, $f20 /* 07DBD0 7F0490A0 C62C00CC */ lwc1 $f12, 0xcc($s1) .L7F0490A4: /* 07DBD4 7F0490A4 46006307 */ neg.s $f12, $f12 /* 07DBD8 7F0490A8 4616603C */ c.lt.s $f12, $f22 /* 07DBDC 7F0490AC 00000000 */ nop /* 07DBE0 7F0490B0 45020003 */ bc1fl .L7F0490C0 /* 07DBE4 7F0490B4 AFA5006C */ sw $a1, 0x6c($sp) /* 07DBE8 7F0490B8 46146300 */ add.s $f12, $f12, $f20 /* 07DBEC 7F0490BC AFA5006C */ sw $a1, 0x6c($sp) .L7F0490C0: /* 07DBF0 7F0490C0 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07DBF4 7F0490C4 E7AE0154 */ swc1 $f14, 0x154($sp) /* 07DBF8 7F0490C8 02002025 */ move $a0, $s0 /* 07DBFC 7F0490CC 0FC16266 */ jal matrix_4x4_set_position /* 07DC00 7F0490D0 8FA5006C */ lw $a1, 0x6c($sp) /* 07DC04 7F0490D4 02402025 */ move $a0, $s2 /* 07DC08 7F0490D8 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DC0C 7F0490DC 8FA5006C */ lw $a1, 0x6c($sp) /* 07DC10 7F0490E0 264500C0 */ addiu $a1, $s2, 0xc0 /* 07DC14 7F0490E4 C7AC0154 */ lwc1 $f12, 0x154($sp) /* 07DC18 7F0490E8 0FC1615C */ jal matrix_4x4_set_rotation_around_x /* 07DC1C 7F0490EC AFA50074 */ sw $a1, 0x74($sp) /* 07DC20 7F0490F0 8FA40164 */ lw $a0, 0x164($sp) /* 07DC24 7F0490F4 0FC16266 */ jal matrix_4x4_set_position /* 07DC28 7F0490F8 8FA50074 */ lw $a1, 0x74($sp) /* 07DC2C 7F0490FC 8FA4006C */ lw $a0, 0x6c($sp) /* 07DC30 7F049100 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DC34 7F049104 8FA50074 */ lw $a1, 0x74($sp) /* 07DC38 7F049108 3C018005 */ lui $at, %hi(D_80052B70) /* 07DC3C 7F04910C 26500100 */ addiu $s0, $s2, 0x100 /* 07DC40 7F049110 02002825 */ move $a1, $s0 /* 07DC44 7F049114 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 07DC48 7F049118 C42C2B70 */ lwc1 $f12, %lo(D_80052B70)($at) /* 07DC4C 7F04911C 8FA40160 */ lw $a0, 0x160($sp) /* 07DC50 7F049120 0FC16266 */ jal matrix_4x4_set_position /* 07DC54 7F049124 02002825 */ move $a1, $s0 /* 07DC58 7F049128 8FA40074 */ lw $a0, 0x74($sp) /* 07DC5C 7F04912C 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DC60 7F049130 02002825 */ move $a1, $s0 /* 07DC64 7F049134 26450080 */ addiu $a1, $s2, 0x80 /* 07DC68 7F049138 AFA50068 */ sw $a1, 0x68($sp) /* 07DC6C 7F04913C 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 07DC70 7F049140 8FA4015C */ lw $a0, 0x15c($sp) /* 07DC74 7F049144 8FA4006C */ lw $a0, 0x6c($sp) /* 07DC78 7F049148 0FC16026 */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DC7C 7F04914C 8FA50068 */ lw $a1, 0x68($sp) /* 07DC80 7F049150 0FC1E111 */ jal sub_GAME_7F078444 /* 07DC84 7F049154 00000000 */ nop /* 07DC88 7F049158 27B0016C */ addiu $s0, $sp, 0x16c /* 07DC8C 7F04915C 02003025 */ move $a2, $s0 /* 07DC90 7F049160 00402025 */ move $a0, $v0 /* 07DC94 7F049164 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 07DC98 7F049168 8FA5006C */ lw $a1, 0x6c($sp) /* 07DC9C 7F04916C 8FA40158 */ lw $a0, 0x158($sp) /* 07DCA0 7F049170 02002825 */ move $a1, $s0 /* 07DCA4 7F049174 26260084 */ addiu $a2, $s1, 0x84 /* 07DCA8 7F049178 0FC0FD50 */ jal sub_GAME_7F03F540 /* 07DCAC 7F04917C 26270080 */ addiu $a3, $s1, 0x80 /* 07DCB0 7F049180 8E980008 */ lw $t8, 8($s4) /* 07DCB4 7F049184 8F030008 */ lw $v1, 8($t8) /* 07DCB8 7F049188 8C65001C */ lw $a1, 0x1c($v1) /* 07DCBC 7F04918C 50A00008 */ beql $a1, $zero, .L7F0491B0 /* 07DCC0 7F049190 8C650020 */ lw $a1, 0x20($v1) /* 07DCC4 7F049194 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07DCC8 7F049198 02802025 */ move $a0, $s4 /* 07DCCC 7F04919C 8E2800C4 */ lw $t0, 0xc4($s1) /* 07DCD0 7F0491A0 A4480000 */ sh $t0, ($v0) /* 07DCD4 7F0491A4 8E8B0008 */ lw $t3, 8($s4) /* 07DCD8 7F0491A8 8D630008 */ lw $v1, 8($t3) /* 07DCDC 7F0491AC 8C650020 */ lw $a1, 0x20($v1) .L7F0491B0: /* 07DCE0 7F0491B0 50A00005 */ beql $a1, $zero, .L7F0491C8 /* 07DCE4 7F0491B4 8E8F0008 */ lw $t7, 8($s4) /* 07DCE8 7F0491B8 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07DCEC 7F0491BC 02802025 */ move $a0, $s4 /* 07DCF0 7F0491C0 AC400000 */ sw $zero, ($v0) .L7F0491C4: /* 07DCF4 7F0491C4 8E8F0008 */ lw $t7, 8($s4) .L7F0491C8: /* 07DCF8 7F0491C8 02802025 */ move $a0, $s4 /* 07DCFC 7F0491CC 0FC1BBA9 */ jal sub_GAME_7F06EEA4 /* 07DD00 7F0491D0 8DE50000 */ lw $a1, ($t7) /* 07DD04 7F0491D4 8E89000C */ lw $t1, 0xc($s4) /* 07DD08 7F0491D8 02602025 */ move $a0, $s3 /* 07DD0C 7F0491DC C52A0038 */ lwc1 $f10, 0x38($t1) /* 07DD10 7F0491E0 46005207 */ neg.s $f8, $f10 /* 07DD14 7F0491E4 0FC10F5C */ jal handle_thrown_explosive_detonation /* 07DD18 7F0491E8 E6680018 */ swc1 $f8, 0x18($s3) /* 07DD1C 7F0491EC 8E640020 */ lw $a0, 0x20($s3) /* 07DD20 7F0491F0 50800018 */ beql $a0, $zero, .L7F049254 /* 07DD24 7F0491F4 8E230064 */ lw $v1, 0x64($s1) /* 07DD28 7F0491F8 8C820024 */ lw $v0, 0x24($a0) .L7F0491FC: /* 07DD2C 7F0491FC 0FC110B7 */ jal sub_GAME_7F0442DC /* 07DD30 7F049200 AFA20684 */ sw $v0, 0x684($sp) /* 07DD34 7F049204 8FA40684 */ lw $a0, 0x684($sp) /* 07DD38 7F049208 5480FFFC */ bnezl $a0, .L7F0491FC /* 07DD3C 7F04920C 8C820024 */ lw $v0, 0x24($a0) /* 07DD40 7F049210 10000010 */ b .L7F049254 /* 07DD44 7F049214 8E230064 */ lw $v1, 0x64($s1) .L7F049218: /* 07DD48 7F049218 92790001 */ lbu $t9, 1($s3) /* 07DD4C 7F04921C 02602025 */ move $a0, $s3 /* 07DD50 7F049220 332CFFFD */ andi $t4, $t9, 0xfffd /* 07DD54 7F049224 0FC10F5C */ jal handle_thrown_explosive_detonation /* 07DD58 7F049228 A26C0001 */ sb $t4, 1($s3) /* 07DD5C 7F04922C 8E640020 */ lw $a0, 0x20($s3) /* 07DD60 7F049230 50800008 */ beql $a0, $zero, .L7F049254 /* 07DD64 7F049234 8E230064 */ lw $v1, 0x64($s1) /* 07DD68 7F049238 8C820024 */ lw $v0, 0x24($a0) .L7F04923C: /* 07DD6C 7F04923C 0FC11093 */ jal sub_GAME_7F04424C /* 07DD70 7F049240 AFA20684 */ sw $v0, 0x684($sp) /* 07DD74 7F049244 8FA40684 */ lw $a0, 0x684($sp) /* 07DD78 7F049248 5480FFFC */ bnezl $a0, .L7F04923C /* 07DD7C 7F04924C 8C820024 */ lw $v0, 0x24($a0) /* 07DD80 7F049250 8E230064 */ lw $v1, 0x64($s1) .L7F049254: /* 07DD84 7F049254 2401FEFF */ li $at, -257 /* 07DD88 7F049258 266D0008 */ addiu $t5, $s3, 8 /* 07DD8C 7F04925C 306A0100 */ andi $t2, $v1, 0x100 /* 07DD90 7F049260 1140001F */ beqz $t2, .L7F0492E0 /* 07DD94 7F049264 00617024 */ and $t6, $v1, $at /* 07DD98 7F049268 AE2E0064 */ sw $t6, 0x64($s1) /* 07DD9C 7F04926C 0C002914 */ jal get_random_value /* 07DDA0 7F049270 AFAD0070 */ sw $t5, 0x70($sp) /* 07DDA4 7F049274 44822000 */ mtc1 $v0, $f4 /* 07DDA8 7F049278 02202025 */ move $a0, $s1 /* 07DDAC 7F04927C 04410005 */ bgez $v0, .L7F049294 /* 07DDB0 7F049280 468021A0 */ cvt.s.w $f6, $f4 /* 07DDB4 7F049284 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07DDB8 7F049288 44815000 */ mtc1 $at, $f10 /* 07DDBC 7F04928C 00000000 */ nop /* 07DDC0 7F049290 460A3180 */ add.s $f6, $f6, $f10 .L7F049294: /* 07DDC4 7F049294 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07DDC8 7F049298 44814000 */ mtc1 $at, $f8 /* 07DDCC 7F04929C 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07DDD0 7F0492A0 44815000 */ mtc1 $at, $f10 /* 07DDD4 7F0492A4 46083102 */ mul.s $f4, $f6, $f8 /* 07DDD8 7F0492A8 3C014000 */ li $at, 0x40000000 # 2.000000 /* 07DDDC 7F0492AC 44814000 */ mtc1 $at, $f8 /* 07DDE0 7F0492B0 8E380064 */ lw $t8, 0x64($s1) /* 07DDE4 7F0492B4 3C010006 */ lui $at, 6 /* 07DDE8 7F0492B8 8FA60070 */ lw $a2, 0x70($sp) /* 07DDEC 7F0492BC 03014024 */ and $t0, $t8, $at /* 07DDF0 7F0492C0 460A2182 */ mul.s $f6, $f4, $f10 /* 07DDF4 7F0492C4 00003825 */ move $a3, $zero /* 07DDF8 7F0492C8 00085C42 */ srl $t3, $t0, 0x11 /* 07DDFC 7F0492CC AFAB0010 */ sw $t3, 0x10($sp) /* 07DE00 7F0492D0 46083100 */ add.s $f4, $f6, $f8 /* 07DE04 7F0492D4 44052000 */ mfc1 $a1, $f4 /* 07DE08 7F0492D8 0FC13842 */ jal maybe_detonate_object /* 07DE0C 7F0492DC 00000000 */ nop .L7F0492E0: /* 07DE10 7F0492E0 8FAF0678 */ lw $t7, 0x678($sp) /* 07DE14 7F0492E4 51E0020D */ beql $t7, $zero, .L7F049B1C /* 07DE18 7F0492E8 8FA90680 */ lw $t1, 0x680($sp) /* 07DE1C 7F0492EC 92220003 */ lbu $v0, 3($s1) /* 07DE20 7F0492F0 24010001 */ li $at, 1 /* 07DE24 7F0492F4 54410006 */ bnel $v0, $at, .L7F049310 /* 07DE28 7F0492F8 2401000D */ li $at, 13 /* 07DE2C 7F0492FC 0FC14E8F */ jal sub_GAME_7F053A3C /* 07DE30 7F049300 8E640004 */ lw $a0, 4($s3) /* 07DE34 7F049304 10000202 */ b .L7F049B10 /* 07DE38 7F049308 00000000 */ nop /* 07DE3C 7F04930C 2401000D */ li $at, 13 .L7F049310: /* 07DE40 7F049310 144101FF */ bne $v0, $at, .L7F049B10 /* 07DE44 7F049314 00000000 */ nop /* 07DE48 7F049318 0FC2FF01 */ jal get_controls_locked_flag /* 07DE4C 7F04931C 00000000 */ nop /* 07DE50 7F049320 144001FB */ bnez $v0, .L7F049B10 /* 07DE54 7F049324 00000000 */ nop /* 07DE58 7F049328 8E700004 */ lw $s0, 4($s3) /* 07DE5C 7F04932C AFA0013C */ sw $zero, 0x13c($sp) /* 07DE60 7F049330 AFA00138 */ sw $zero, 0x138($sp) /* 07DE64 7F049334 8E0900D0 */ lw $t1, 0xd0($s0) /* 07DE68 7F049338 512001E4 */ beql $t1, $zero, .L7F049ACC /* 07DE6C 7F04933C 8E980008 */ lw $t8, 8($s4) /* 07DE70 7F049340 8E390008 */ lw $t9, 8($s1) /* 07DE74 7F049344 001960C0 */ sll $t4, $t9, 3 /* 07DE78 7F049348 058201E0 */ bltzl $t4, .L7F049ACC /* 07DE7C 7F04934C 8E980008 */ lw $t8, 8($s4) /* 07DE80 7F049350 8E0A00AC */ lw $t2, 0xac($s0) /* 07DE84 7F049354 3C0C8005 */ lui $t4, %hi(global_timer) /* 07DE88 7F049358 254E0001 */ addiu $t6, $t2, 1 /* 07DE8C 7F04935C 31CD0001 */ andi $t5, $t6, 1 /* 07DE90 7F049360 AE0E00AC */ sw $t6, 0xac($s0) /* 07DE94 7F049364 2DB80001 */ sltiu $t8, $t5, 1 /* 07DE98 7F049368 AFB8013C */ sw $t8, 0x13c($sp) /* 07DE9C 7F04936C 8E880008 */ lw $t0, 8($s4) /* 07DEA0 7F049370 39A90001 */ xori $t1, $t5, 1 /* 07DEA4 7F049374 2D290001 */ sltiu $t1, $t1, 1 /* 07DEA8 7F049378 8D0B0008 */ lw $t3, 8($t0) /* 07DEAC 7F04937C 8D6F0014 */ lw $t7, 0x14($t3) /* 07DEB0 7F049380 51E00003 */ beql $t7, $zero, .L7F049390 /* 07DEB4 7F049384 8E1900C0 */ lw $t9, 0xc0($s0) /* 07DEB8 7F049388 AFA90138 */ sw $t1, 0x138($sp) /* 07DEBC 7F04938C 8E1900C0 */ lw $t9, 0xc0($s0) .L7F049390: /* 07DEC0 7F049390 8D8C837C */ lw $t4, %lo(global_timer)($t4) /* 07DEC4 7F049394 032C082A */ slt $at, $t9, $t4 /* 07DEC8 7F049398 50200032 */ beql $at, $zero, .L7F049464 /* 07DECC 7F04939C 8FAF013C */ lw $t7, 0x13c($sp) /* 07DED0 7F0493A0 8E0400C4 */ lw $a0, 0xc4($s0) /* 07DED4 7F0493A4 50800008 */ beql $a0, $zero, .L7F0493C8 /* 07DED8 7F0493A8 8E0400C8 */ lw $a0, 0xc8($s0) /* 07DEDC 7F0493AC 0C00237C */ jal sfxGetArg0Unk3F /* 07DEE0 7F0493B0 00000000 */ nop /* 07DEE4 7F0493B4 50400004 */ beql $v0, $zero, .L7F0493C8 /* 07DEE8 7F0493B8 8E0400C8 */ lw $a0, 0xc8($s0) /* 07DEEC 7F0493BC 0C002408 */ jal sfxDeactivate /* 07DEF0 7F0493C0 8E0400C4 */ lw $a0, 0xc4($s0) /* 07DEF4 7F0493C4 8E0400C8 */ lw $a0, 0xc8($s0) .L7F0493C8: /* 07DEF8 7F0493C8 50800008 */ beql $a0, $zero, .L7F0493EC /* 07DEFC 7F0493CC 8E0A00C4 */ lw $t2, 0xc4($s0) /* 07DF00 7F0493D0 0C00237C */ jal sfxGetArg0Unk3F /* 07DF04 7F0493D4 00000000 */ nop /* 07DF08 7F0493D8 50400004 */ beql $v0, $zero, .L7F0493EC /* 07DF0C 7F0493DC 8E0A00C4 */ lw $t2, 0xc4($s0) /* 07DF10 7F0493E0 0C002408 */ jal sfxDeactivate /* 07DF14 7F0493E4 8E0400C8 */ lw $a0, 0xc8($s0) /* 07DF18 7F0493E8 8E0A00C4 */ lw $t2, 0xc4($s0) .L7F0493EC: /* 07DF1C 7F0493EC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07DF20 7F0493F0 240500FD */ li $a1, 253 /* 07DF24 7F0493F4 1540000A */ bnez $t2, .L7F049420 /* 07DF28 7F0493F8 260600C4 */ addiu $a2, $s0, 0xc4 /* 07DF2C 7F0493FC 266E0008 */ addiu $t6, $s3, 8 /* 07DF30 7F049400 AFAE0070 */ sw $t6, 0x70($sp) /* 07DF34 7F049404 0C002382 */ jal play_sfx_a1 /* 07DF38 7F049408 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07DF3C 7F04940C 8E0400C4 */ lw $a0, 0xc4($s0) /* 07DF40 7F049410 0FC14E84 */ jal sub_GAME_7F053A10 /* 07DF44 7F049414 8FA50070 */ lw $a1, 0x70($sp) /* 07DF48 7F049418 1000000D */ b .L7F049450 /* 07DF4C 7F04941C 00000000 */ nop .L7F049420: /* 07DF50 7F049420 8E0D00C8 */ lw $t5, 0xc8($s0) /* 07DF54 7F049424 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 07DF58 7F049428 240500FD */ li $a1, 253 /* 07DF5C 7F04942C 15A00008 */ bnez $t5, .L7F049450 /* 07DF60 7F049430 260600C8 */ addiu $a2, $s0, 0xc8 /* 07DF64 7F049434 26780008 */ addiu $t8, $s3, 8 /* 07DF68 7F049438 AFB80070 */ sw $t8, 0x70($sp) /* 07DF6C 7F04943C 0C002382 */ jal play_sfx_a1 /* 07DF70 7F049440 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07DF74 7F049444 8E0400C8 */ lw $a0, 0xc8($s0) /* 07DF78 7F049448 0FC14E84 */ jal sub_GAME_7F053A10 /* 07DF7C 7F04944C 8FA50070 */ lw $a1, 0x70($sp) .L7F049450: /* 07DF80 7F049450 3C088005 */ lui $t0, %hi(global_timer) /* 07DF84 7F049454 8D08837C */ lw $t0, %lo(global_timer)($t0) /* 07DF88 7F049458 250B0002 */ addiu $t3, $t0, 2 /* 07DF8C 7F04945C AE0B00C0 */ sw $t3, 0xc0($s0) /* 07DF90 7F049460 8FAF013C */ lw $t7, 0x13c($sp) .L7F049464: /* 07DF94 7F049464 8FA90138 */ lw $t1, 0x138($sp) /* 07DF98 7F049468 24190001 */ li $t9, 1 /* 07DF9C 7F04946C 55E00004 */ bnezl $t7, .L7F049480 /* 07DFA0 7F049470 AFB9011C */ sw $t9, 0x11c($sp) /* 07DFA4 7F049474 51200195 */ beql $t1, $zero, .L7F049ACC /* 07DFA8 7F049478 8E980008 */ lw $t8, 8($s4) /* 07DFAC 7F04947C AFB9011C */ sw $t9, 0x11c($sp) .L7F049480: /* 07DFB0 7F049480 AFA0010C */ sw $zero, 0x10c($sp) /* 07DFB4 7F049484 8E6C0014 */ lw $t4, 0x14($s3) /* 07DFB8 7F049488 AFAC0108 */ sw $t4, 0x108($sp) /* 07DFBC 7F04948C 8E0A00AC */ lw $t2, 0xac($s0) /* 07DFC0 7F049490 314E0003 */ andi $t6, $t2, 3 /* 07DFC4 7F049494 2DCD0001 */ sltiu $t5, $t6, 1 /* 07DFC8 7F049498 0FC225E6 */ jal get_curplayer_positiondata /* 07DFCC 7F04949C AFAD0104 */ sw $t5, 0x104($sp) /* 07DFD0 7F0494A0 AFA20100 */ sw $v0, 0x100($sp) /* 07DFD4 7F0494A4 8E980008 */ lw $t8, 8($s4) /* 07DFD8 7F0494A8 24040005 */ li $a0, 5 /* 07DFDC 7F0494AC 8F030008 */ lw $v1, 8($t8) /* 07DFE0 7F0494B0 8C68001C */ lw $t0, 0x1c($v1) /* 07DFE4 7F0494B4 51000007 */ beql $t0, $zero, .L7F0494D4 /* 07DFE8 7F0494B8 92690001 */ lbu $t1, 1($s3) /* 07DFEC 7F0494BC 8E0B00AC */ lw $t3, 0xac($s0) /* 07DFF0 7F0494C0 316F0007 */ andi $t7, $t3, 7 /* 07DFF4 7F0494C4 55E00003 */ bnezl $t7, .L7F0494D4 /* 07DFF8 7F0494C8 92690001 */ lbu $t1, 1($s3) /* 07DFFC 7F0494CC 24040007 */ li $a0, 7 /* 07E000 7F0494D0 92690001 */ lbu $t1, 1($s3) .L7F0494D4: /* 07E004 7F0494D4 31390002 */ andi $t9, $t1, 2 /* 07E008 7F0494D8 1320002D */ beqz $t9, .L7F049590 /* 07E00C 7F0494DC 00048880 */ sll $s1, $a0, 2 /* 07E010 7F0494E0 00716021 */ addu $t4, $v1, $s1 /* 07E014 7F0494E4 8D850000 */ lw $a1, ($t4) /* 07E018 7F0494E8 02802025 */ move $a0, $s4 /* 07E01C 7F0494EC 50A00029 */ beql $a1, $zero, .L7F049594 /* 07E020 7F0494F0 C6640008 */ lwc1 $f4, 8($s3) /* 07E024 7F0494F4 0FC1B198 */ jal sub_GAME_7F06C660 /* 07E028 7F0494F8 00003025 */ move $a2, $zero /* 07E02C 7F0494FC 8E8A0008 */ lw $t2, 8($s4) /* 07E030 7F049500 00409025 */ move $s2, $v0 /* 07E034 7F049504 8D4E0008 */ lw $t6, 8($t2) /* 07E038 7F049508 01D16821 */ addu $t5, $t6, $s1 /* 07E03C 7F04950C 8DB80000 */ lw $t8, ($t5) /* 07E040 7F049510 8F030004 */ lw $v1, 4($t8) /* 07E044 7F049514 C46A0000 */ lwc1 $f10, ($v1) /* 07E048 7F049518 E7AA012C */ swc1 $f10, 0x12c($sp) /* 07E04C 7F04951C C4660004 */ lwc1 $f6, 4($v1) /* 07E050 7F049520 E7A60130 */ swc1 $f6, 0x130($sp) /* 07E054 7F049524 C4680008 */ lwc1 $f8, 8($v1) /* 07E058 7F049528 0FC1E111 */ jal sub_GAME_7F078444 /* 07E05C 7F04952C E7A80134 */ swc1 $f8, 0x134($sp) /* 07E060 7F049530 27B100B8 */ addiu $s1, $sp, 0xb8 /* 07E064 7F049534 02203025 */ move $a2, $s1 /* 07E068 7F049538 00402025 */ move $a0, $v0 /* 07E06C 7F04953C 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 07E070 7F049540 02402825 */ move $a1, $s2 /* 07E074 7F049544 02202025 */ move $a0, $s1 /* 07E078 7F049548 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 07E07C 7F04954C 27A5012C */ addiu $a1, $sp, 0x12c /* 07E080 7F049550 C7A40134 */ lwc1 $f4, 0x134($sp) /* 07E084 7F049554 8E650008 */ lw $a1, 8($s3) /* 07E088 7F049558 8E660010 */ lw $a2, 0x10($s3) /* 07E08C 7F04955C 27A40108 */ addiu $a0, $sp, 0x108 /* 07E090 7F049560 8FA7012C */ lw $a3, 0x12c($sp) /* 07E094 7F049564 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 07E098 7F049568 E7A40010 */ swc1 $f4, 0x10($sp) /* 07E09C 7F04956C 1440000E */ bnez $v0, .L7F0495A8 /* 07E0A0 7F049570 00000000 */ nop /* 07E0A4 7F049574 C66A0008 */ lwc1 $f10, 8($s3) /* 07E0A8 7F049578 E7AA012C */ swc1 $f10, 0x12c($sp) /* 07E0AC 7F04957C C666000C */ lwc1 $f6, 0xc($s3) /* 07E0B0 7F049580 E7A60130 */ swc1 $f6, 0x130($sp) /* 07E0B4 7F049584 C6680010 */ lwc1 $f8, 0x10($s3) /* 07E0B8 7F049588 10000007 */ b .L7F0495A8 /* 07E0BC 7F04958C E7A80134 */ swc1 $f8, 0x134($sp) .L7F049590: /* 07E0C0 7F049590 C6640008 */ lwc1 $f4, 8($s3) .L7F049594: /* 07E0C4 7F049594 E7A4012C */ swc1 $f4, 0x12c($sp) /* 07E0C8 7F049598 C66A000C */ lwc1 $f10, 0xc($s3) /* 07E0CC 7F04959C E7AA0130 */ swc1 $f10, 0x130($sp) /* 07E0D0 7F0495A0 C6660010 */ lwc1 $f6, 0x10($s3) /* 07E0D4 7F0495A4 E7A60134 */ swc1 $f6, 0x134($sp) .L7F0495A8: /* 07E0D8 7F0495A8 0FC15FA8 */ jal cosf /* 07E0DC 7F0495AC C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E0E0 7F0495B0 C60C0090 */ lwc1 $f12, 0x90($s0) /* 07E0E4 7F0495B4 0FC15FAB */ jal sinf /* 07E0E8 7F0495B8 E7A0007C */ swc1 $f0, 0x7c($sp) /* 07E0EC 7F0495BC C7A2007C */ lwc1 $f2, 0x7c($sp) /* 07E0F0 7F0495C0 46020202 */ mul.s $f8, $f0, $f2 /* 07E0F4 7F0495C4 E7A80120 */ swc1 $f8, 0x120($sp) /* 07E0F8 7F0495C8 0FC15FAB */ jal sinf /* 07E0FC 7F0495CC C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E100 7F0495D0 E7A00124 */ swc1 $f0, 0x124($sp) /* 07E104 7F0495D4 0FC15FA8 */ jal cosf /* 07E108 7F0495D8 C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E10C 7F0495DC C60C0090 */ lwc1 $f12, 0x90($s0) /* 07E110 7F0495E0 0FC15FA8 */ jal cosf /* 07E114 7F0495E4 E7A0007C */ swc1 $f0, 0x7c($sp) /* 07E118 7F0495E8 C7A2007C */ lwc1 $f2, 0x7c($sp) /* 07E11C 7F0495EC 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07E120 7F0495F0 44816000 */ mtc1 $at, $f12 /* 07E124 7F0495F4 46020382 */ mul.s $f14, $f0, $f2 /* 07E128 7F0495F8 C7A40120 */ lwc1 $f4, 0x120($sp) /* 07E12C 7F0495FC C7A6012C */ lwc1 $f6, 0x12c($sp) /* 07E130 7F049600 460C2282 */ mul.s $f10, $f4, $f12 /* 07E134 7F049604 C7A40124 */ lwc1 $f4, 0x124($sp) /* 07E138 7F049608 E7AE0128 */ swc1 $f14, 0x128($sp) /* 07E13C 7F04960C 46065200 */ add.s $f8, $f10, $f6 /* 07E140 7F049610 460C2282 */ mul.s $f10, $f4, $f12 /* 07E144 7F049614 C7A60130 */ lwc1 $f6, 0x130($sp) /* 07E148 7F049618 460C7102 */ mul.s $f4, $f14, $f12 /* 07E14C 7F04961C E7A80110 */ swc1 $f8, 0x110($sp) /* 07E150 7F049620 46065200 */ add.s $f8, $f10, $f6 /* 07E154 7F049624 C7AA0134 */ lwc1 $f10, 0x134($sp) /* 07E158 7F049628 460A2180 */ add.s $f6, $f4, $f10 /* 07E15C 7F04962C E7A80114 */ swc1 $f8, 0x114($sp) /* 07E160 7F049630 0FC2C731 */ jal sub_GAME_7F0B1CC4 /* 07E164 7F049634 E7A60118 */ swc1 $f6, 0x118($sp) /* 07E168 7F049638 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 07E16C 7F04963C 44810000 */ mtc1 $at, $f0 /* 07E170 7F049640 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E174 7F049644 44812000 */ mtc1 $at, $f4 /* 07E178 7F049648 C7A80118 */ lwc1 $f8, 0x118($sp) /* 07E17C 7F04964C 24080002 */ li $t0, 2 /* 07E180 7F049650 AFA80014 */ sw $t0, 0x14($sp) /* 07E184 7F049654 27A40108 */ addiu $a0, $sp, 0x108 /* 07E188 7F049658 8FA5012C */ lw $a1, 0x12c($sp) /* 07E18C 7F04965C 8FA60134 */ lw $a2, 0x134($sp) /* 07E190 7F049660 8FA70110 */ lw $a3, 0x110($sp) /* 07E194 7F049664 E7B60020 */ swc1 $f22, 0x20($sp) /* 07E198 7F049668 E7A00018 */ swc1 $f0, 0x18($sp) /* 07E19C 7F04966C E7A0001C */ swc1 $f0, 0x1c($sp) /* 07E1A0 7F049670 E7A80010 */ swc1 $f8, 0x10($sp) /* 07E1A4 7F049674 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 07E1A8 7F049678 E7A40024 */ swc1 $f4, 0x24($sp) /* 07E1AC 7F04967C 14400017 */ bnez $v0, .L7F0496DC /* 07E1B0 7F049680 27A60110 */ addiu $a2, $sp, 0x110 /* 07E1B4 7F049684 27A4012C */ addiu $a0, $sp, 0x12c /* 07E1B8 7F049688 0FC09893 */ jal sub_GAME_7F02624C /* 07E1BC 7F04968C 27A50120 */ addiu $a1, $sp, 0x120 /* 07E1C0 7F049690 3C0141D0 */ li $at, 0x41D00000 # 26.000000 /* 07E1C4 7F049694 44818000 */ mtc1 $at, $f16 /* 07E1C8 7F049698 C7A60120 */ lwc1 $f6, 0x120($sp) /* 07E1CC 7F04969C C7AA0110 */ lwc1 $f10, 0x110($sp) /* 07E1D0 7F0496A0 C7AE0128 */ lwc1 $f14, 0x128($sp) /* 07E1D4 7F0496A4 46068202 */ mul.s $f8, $f16, $f6 /* 07E1D8 7F0496A8 C7A60114 */ lwc1 $f6, 0x114($sp) /* 07E1DC 7F0496AC 8FAB0108 */ lw $t3, 0x108($sp) /* 07E1E0 7F0496B0 AFAB010C */ sw $t3, 0x10c($sp) /* 07E1E4 7F0496B4 46085101 */ sub.s $f4, $f10, $f8 /* 07E1E8 7F0496B8 C7AA0124 */ lwc1 $f10, 0x124($sp) /* 07E1EC 7F0496BC 460A8202 */ mul.s $f8, $f16, $f10 /* 07E1F0 7F0496C0 E7A40110 */ swc1 $f4, 0x110($sp) /* 07E1F4 7F0496C4 C7AA0118 */ lwc1 $f10, 0x118($sp) /* 07E1F8 7F0496C8 46083101 */ sub.s $f4, $f6, $f8 /* 07E1FC 7F0496CC 460E8182 */ mul.s $f6, $f16, $f14 /* 07E200 7F0496D0 E7A40114 */ swc1 $f4, 0x114($sp) /* 07E204 7F0496D4 46065201 */ sub.s $f8, $f10, $f6 /* 07E208 7F0496D8 E7A80118 */ swc1 $f8, 0x118($sp) .L7F0496DC: /* 07E20C 7F0496DC 3C0F8005 */ lui $t7, %hi(global_timer) /* 07E210 7F0496E0 8DEF837C */ lw $t7, %lo(global_timer)($t7) /* 07E214 7F0496E4 8E0900BC */ lw $t1, 0xbc($s0) /* 07E218 7F0496E8 27B10110 */ addiu $s1, $sp, 0x110 /* 07E21C 7F0496EC 8FA50100 */ lw $a1, 0x100($sp) /* 07E220 7F0496F0 15E90052 */ bne $t7, $t1, .L7F04983C /* 07E224 7F0496F4 C7AA012C */ lwc1 $f10, 0x12c($sp) /* 07E228 7F0496F8 C4A40008 */ lwc1 $f4, 8($a1) /* 07E22C 7F0496FC C4A6000C */ lwc1 $f6, 0xc($a1) /* 07E230 7F049700 C7A80130 */ lwc1 $f8, 0x130($sp) /* 07E234 7F049704 460A2001 */ sub.s $f0, $f4, $f10 /* 07E238 7F049708 C4A40010 */ lwc1 $f4, 0x10($a1) /* 07E23C 7F04970C E7AA0058 */ swc1 $f10, 0x58($sp) /* 07E240 7F049710 46083081 */ sub.s $f2, $f6, $f8 /* 07E244 7F049714 C7A60134 */ lwc1 $f6, 0x134($sp) /* 07E248 7F049718 46062301 */ sub.s $f12, $f4, $f6 /* 07E24C 7F04971C 46000102 */ mul.s $f4, $f0, $f0 /* 07E250 7F049720 00000000 */ nop /* 07E254 7F049724 46021282 */ mul.s $f10, $f2, $f2 /* 07E258 7F049728 460A2100 */ add.s $f4, $f4, $f10 /* 07E25C 7F04972C 460C6282 */ mul.s $f10, $f12, $f12 /* 07E260 7F049730 460A2500 */ add.s $f20, $f4, $f10 /* 07E264 7F049734 C7AA0058 */ lwc1 $f10, 0x58($sp) /* 07E268 7F049738 C7A40110 */ lwc1 $f4, 0x110($sp) /* 07E26C 7F04973C 460A2001 */ sub.s $f0, $f4, $f10 /* 07E270 7F049740 C7A40114 */ lwc1 $f4, 0x114($sp) /* 07E274 7F049744 C7AA0118 */ lwc1 $f10, 0x118($sp) /* 07E278 7F049748 46082081 */ sub.s $f2, $f4, $f8 /* 07E27C 7F04974C 46000102 */ mul.s $f4, $f0, $f0 /* 07E280 7F049750 46065301 */ sub.s $f12, $f10, $f6 /* 07E284 7F049754 46021202 */ mul.s $f8, $f2, $f2 /* 07E288 7F049758 46082280 */ add.s $f10, $f4, $f8 /* 07E28C 7F04975C 460C6182 */ mul.s $f6, $f12, $f12 /* 07E290 7F049760 46065100 */ add.s $f4, $f10, $f6 /* 07E294 7F049764 4604A03E */ c.le.s $f20, $f4 /* 07E298 7F049768 00000000 */ nop /* 07E29C 7F04976C 45000033 */ bc1f .L7F04983C /* 07E2A0 7F049770 00000000 */ nop /* 07E2A4 7F049774 0FC227A9 */ jal check_if_bond_is_invincible /* 07E2A8 7F049778 00000000 */ nop /* 07E2AC 7F04977C 54400030 */ bnezl $v0, .L7F049840 /* 07E2B0 7F049780 8FB9011C */ lw $t9, 0x11c($sp) /* 07E2B4 7F049784 0C007DF8 */ jal sqrtf /* 07E2B8 7F049788 4600A306 */ mov.s $f12, $f20 /* 07E2BC 7F04978C 3C014348 */ li $at, 0x43480000 # 200.000000 /* 07E2C0 7F049790 44816000 */ mtc1 $at, $f12 /* 07E2C4 7F049794 3C018005 */ lui $at, %hi(D_80052B74) /* 07E2C8 7F049798 C4282B74 */ lwc1 $f8, %lo(D_80052B74)($at) /* 07E2CC 7F04979C 3C018005 */ lui $at, %hi(global_timer_delta) /* 07E2D0 7F0497A0 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07E2D4 7F0497A4 3C018003 */ lui $at, %hi(D_80030B1C) /* 07E2D8 7F0497A8 4600603C */ c.lt.s $f12, $f0 /* 07E2DC 7F0497AC 460A4182 */ mul.s $f6, $f8, $f10 /* 07E2E0 7F0497B0 C4240B1C */ lwc1 $f4, %lo(D_80030B1C)($at) /* 07E2E4 7F0497B4 46043082 */ mul.s $f2, $f6, $f4 /* 07E2E8 7F0497B8 45020005 */ bc1fl .L7F0497D0 /* 07E2EC 7F0497BC C60A00D4 */ lwc1 $f10, 0xd4($s0) /* 07E2F0 7F0497C0 46006203 */ div.s $f8, $f12, $f0 /* 07E2F4 7F0497C4 46081082 */ mul.s $f2, $f2, $f8 /* 07E2F8 7F0497C8 00000000 */ nop /* 07E2FC 7F0497CC C60A00D4 */ lwc1 $f10, 0xd4($s0) .L7F0497D0: /* 07E300 7F0497D0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E304 7F0497D4 44814000 */ mtc1 $at, $f8 /* 07E308 7F0497D8 46025180 */ add.s $f6, $f10, $f2 /* 07E30C 7F0497DC E60600D4 */ swc1 $f6, 0xd4($s0) /* 07E310 7F0497E0 C60400D4 */ lwc1 $f4, 0xd4($s0) /* 07E314 7F0497E4 4604403E */ c.le.s $f8, $f4 /* 07E318 7F0497E8 00000000 */ nop /* 07E31C 7F0497EC 45020014 */ bc1fl .L7F049840 /* 07E320 7F0497F0 8FB9011C */ lw $t9, 0x11c($sp) /* 07E324 7F0497F4 0FC177E1 */ jal bondwalkGetItemDestructionAmount /* 07E328 7F0497F8 2404000E */ li $a0, 14 /* 07E32C 7F0497FC 3C013E00 */ li $at, 0x3E000000 # 0.125000 /* 07E330 7F049800 44815000 */ mtc1 $at, $f10 /* 07E334 7F049804 3C018003 */ lui $at, %hi(D_80030B20) /* 07E338 7F049808 C4240B20 */ lwc1 $f4, %lo(D_80030B20)($at) /* 07E33C 7F04980C 460A0182 */ mul.s $f6, $f0, $f10 /* 07E340 7F049810 C60E0090 */ lwc1 $f14, 0x90($s0) /* 07E344 7F049814 2406FFFF */ li $a2, -1 /* 07E348 7F049818 24070001 */ li $a3, 1 /* 07E34C 7F04981C 46043302 */ mul.s $f12, $f6, $f4 /* 07E350 7F049820 0FC22793 */ jal sub_GAME_7F089E4C /* 07E354 7F049824 00000000 */ nop /* 07E358 7F049828 0FC227A9 */ jal check_if_bond_is_invincible /* 07E35C 7F04982C E61600D4 */ swc1 $f22, 0xd4($s0) /* 07E360 7F049830 50400003 */ beql $v0, $zero, .L7F049840 /* 07E364 7F049834 8FB9011C */ lw $t9, 0x11c($sp) /* 07E368 7F049838 AFA0011C */ sw $zero, 0x11c($sp) .L7F04983C: /* 07E36C 7F04983C 8FB9011C */ lw $t9, 0x11c($sp) .L7F049840: /* 07E370 7F049840 3C0141D0 */ li $at, 0x41D00000 # 26.000000 /* 07E374 7F049844 44818000 */ mtc1 $at, $f16 /* 07E378 7F049848 1320000F */ beqz $t9, .L7F049888 /* 07E37C 7F04984C 8FA50100 */ lw $a1, 0x100($sp) /* 07E380 7F049850 8FAC010C */ lw $t4, 0x10c($sp) /* 07E384 7F049854 02202025 */ move $a0, $s1 /* 07E388 7F049858 24050001 */ li $a1, 1 /* 07E38C 7F04985C 51800005 */ beql $t4, $zero, .L7F049874 /* 07E390 7F049860 2404000E */ li $a0, 14 /* 07E394 7F049864 44068000 */ mfc1 $a2, $f16 /* 07E398 7F049868 0FC28F87 */ jal sub_GAME_7F0A3E1C /* 07E39C 7F04986C 91870003 */ lbu $a3, 3($t4) /* 07E3A0 7F049870 2404000E */ li $a0, 14 .L7F049874: /* 07E3A4 7F049874 02202825 */ move $a1, $s1 /* 07E3A8 7F049878 0FC191DD */ jal recall_joy2_hits_edit_flag /* 07E3AC 7F04987C 2406FFFF */ li $a2, -1 /* 07E3B0 7F049880 1000000B */ b .L7F0498B0 /* 07E3B4 7F049884 8FAA0104 */ lw $t2, 0x104($sp) .L7F049888: /* 07E3B8 7F049888 C4A80008 */ lwc1 $f8, 8($a1) /* 07E3BC 7F04988C 2404000E */ li $a0, 14 /* 07E3C0 7F049890 2406FFFF */ li $a2, -1 /* 07E3C4 7F049894 E7A80110 */ swc1 $f8, 0x110($sp) /* 07E3C8 7F049898 C4AA000C */ lwc1 $f10, 0xc($a1) /* 07E3CC 7F04989C E7AA0114 */ swc1 $f10, 0x114($sp) /* 07E3D0 7F0498A0 C4A60010 */ lwc1 $f6, 0x10($a1) /* 07E3D4 7F0498A4 0FC19107 */ jal recall_joy2_hits_edit_detail_edit_flag /* 07E3D8 7F0498A8 E7A60118 */ swc1 $f6, 0x118($sp) /* 07E3DC 7F0498AC 8FAA0104 */ lw $t2, 0x104($sp) .L7F0498B0: /* 07E3E0 7F0498B0 C7A4012C */ lwc1 $f4, 0x12c($sp) /* 07E3E4 7F0498B4 51400085 */ beql $t2, $zero, .L7F049ACC /* 07E3E8 7F0498B8 8E980008 */ lw $t8, 8($s4) /* 07E3EC 7F0498BC 8E0300CC */ lw $v1, 0xcc($s0) /* 07E3F0 7F0498C0 E4640004 */ swc1 $f4, 4($v1) /* 07E3F4 7F0498C4 C7A80130 */ lwc1 $f8, 0x130($sp) /* 07E3F8 7F0498C8 C4640004 */ lwc1 $f4, 4($v1) /* 07E3FC 7F0498CC E4680008 */ swc1 $f8, 8($v1) /* 07E400 7F0498D0 C7AA0134 */ lwc1 $f10, 0x134($sp) /* 07E404 7F0498D4 E46A000C */ swc1 $f10, 0xc($v1) /* 07E408 7F0498D8 C7A60110 */ lwc1 $f6, 0x110($sp) /* 07E40C 7F0498DC 46043201 */ sub.s $f8, $f6, $f4 /* 07E410 7F0498E0 C4660008 */ lwc1 $f6, 8($v1) /* 07E414 7F0498E4 E4680010 */ swc1 $f8, 0x10($v1) /* 07E418 7F0498E8 C7AA0114 */ lwc1 $f10, 0x114($sp) /* 07E41C 7F0498EC C4620010 */ lwc1 $f2, 0x10($v1) /* 07E420 7F0498F0 46065101 */ sub.s $f4, $f10, $f6 /* 07E424 7F0498F4 C46A000C */ lwc1 $f10, 0xc($v1) /* 07E428 7F0498F8 E4640014 */ swc1 $f4, 0x14($v1) /* 07E42C 7F0498FC C7A80118 */ lwc1 $f8, 0x118($sp) /* 07E430 7F049900 46021102 */ mul.s $f4, $f2, $f2 /* 07E434 7F049904 C46E0014 */ lwc1 $f14, 0x14($v1) /* 07E438 7F049908 460A4181 */ sub.s $f6, $f8, $f10 /* 07E43C 7F04990C 460E7202 */ mul.s $f8, $f14, $f14 /* 07E440 7F049910 E4660018 */ swc1 $f6, 0x18($v1) /* 07E444 7F049914 C4600018 */ lwc1 $f0, 0x18($v1) /* 07E448 7F049918 AFA30090 */ sw $v1, 0x90($sp) /* 07E44C 7F04991C 46000182 */ mul.s $f6, $f0, $f0 /* 07E450 7F049920 46082280 */ add.s $f10, $f4, $f8 /* 07E454 7F049924 0C007DF8 */ jal sqrtf /* 07E458 7F049928 460A3300 */ add.s $f12, $f6, $f10 /* 07E45C 7F04992C 3C018005 */ lui $at, %hi(D_80052B78) /* 07E460 7F049930 C42E2B78 */ lwc1 $f14, %lo(D_80052B78)($at) /* 07E464 7F049934 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E468 7F049938 44812000 */ mtc1 $at, $f4 /* 07E46C 7F04993C 8FA30090 */ lw $v1, 0x90($sp) /* 07E470 7F049940 4600703C */ c.lt.s $f14, $f0 /* 07E474 7F049944 46000306 */ mov.s $f12, $f0 /* 07E478 7F049948 46002083 */ div.s $f2, $f4, $f0 /* 07E47C 7F04994C C4680010 */ lwc1 $f8, 0x10($v1) /* 07E480 7F049950 C46A0014 */ lwc1 $f10, 0x14($v1) /* 07E484 7F049954 3C0143FA */ li $at, 0x43FA0000 # 500.000000 /* 07E488 7F049958 44810000 */ mtc1 $at, $f0 /* 07E48C 7F04995C 46024182 */ mul.s $f6, $f8, $f2 /* 07E490 7F049960 C4680018 */ lwc1 $f8, 0x18($v1) /* 07E494 7F049964 46025102 */ mul.s $f4, $f10, $f2 /* 07E498 7F049968 E4660010 */ swc1 $f6, 0x10($v1) /* 07E49C 7F04996C 46024182 */ mul.s $f6, $f8, $f2 /* 07E4A0 7F049970 E4640014 */ swc1 $f4, 0x14($v1) /* 07E4A4 7F049974 45000002 */ bc1f .L7F049980 /* 07E4A8 7F049978 E4660018 */ swc1 $f6, 0x18($v1) /* 07E4AC 7F04997C 46007306 */ mov.s $f12, $f14 .L7F049980: /* 07E4B0 7F049980 4600603C */ c.lt.s $f12, $f0 /* 07E4B4 7F049984 240E000E */ li $t6, 14 /* 07E4B8 7F049988 A0600000 */ sb $zero, ($v1) /* 07E4BC 7F04998C A06E0001 */ sb $t6, 1($v1) /* 07E4C0 7F049990 45000002 */ bc1f .L7F04999C /* 07E4C4 7F049994 E46C001C */ swc1 $f12, 0x1c($v1) /* 07E4C8 7F049998 46000306 */ mov.s $f12, $f0 .L7F04999C: /* 07E4CC 7F04999C 806D0001 */ lb $t5, 1($v1) /* 07E4D0 7F0499A0 24010016 */ li $at, 22 /* 07E4D4 7F0499A4 15A10026 */ bne $t5, $at, .L7F049A40 /* 07E4D8 7F0499A8 3C018005 */ lui $at, %hi(D_80052B7C) /* 07E4DC 7F0499AC C4222B7C */ lwc1 $f2, %lo(D_80052B7C)($at) /* 07E4E0 7F0499B0 3C013E80 */ li $at, 0x3E800000 # 0.250000 /* 07E4E4 7F0499B4 44815000 */ mtc1 $at, $f10 /* 07E4E8 7F0499B8 3C018005 */ lui $at, %hi(D_80052B80) /* 07E4EC 7F0499BC 460C5102 */ mul.s $f4, $f10, $f12 /* 07E4F0 7F0499C0 E4640020 */ swc1 $f4, 0x20($v1) /* 07E4F4 7F0499C4 C4282B80 */ lwc1 $f8, %lo(D_80052B80)($at) /* 07E4F8 7F0499C8 460C4002 */ mul.s $f0, $f8, $f12 /* 07E4FC 7F0499CC 4600103C */ c.lt.s $f2, $f0 /* 07E500 7F0499D0 E4600024 */ swc1 $f0, 0x24($v1) /* 07E504 7F0499D4 45020003 */ bc1fl .L7F0499E4 /* 07E508 7F0499D8 AFA30090 */ sw $v1, 0x90($sp) /* 07E50C 7F0499DC E4620024 */ swc1 $f2, 0x24($v1) /* 07E510 7F0499E0 AFA30090 */ sw $v1, 0x90($sp) .L7F0499E4: /* 07E514 7F0499E4 0C002914 */ jal get_random_value /* 07E518 7F0499E8 E7AC0094 */ swc1 $f12, 0x94($sp) /* 07E51C 7F0499EC 44823000 */ mtc1 $v0, $f6 /* 07E520 7F0499F0 8FA30090 */ lw $v1, 0x90($sp) /* 07E524 7F0499F4 C7AC0094 */ lwc1 $f12, 0x94($sp) /* 07E528 7F0499F8 04410005 */ bgez $v0, .L7F049A10 /* 07E52C 7F0499FC 468032A0 */ cvt.s.w $f10, $f6 /* 07E530 7F049A00 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07E534 7F049A04 44812000 */ mtc1 $at, $f4 /* 07E538 7F049A08 00000000 */ nop /* 07E53C 7F049A0C 46045280 */ add.s $f10, $f10, $f4 .L7F049A10: /* 07E540 7F049A10 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07E544 7F049A14 44814000 */ mtc1 $at, $f8 /* 07E548 7F049A18 3C018005 */ lui $at, %hi(D_80052B84) /* 07E54C 7F049A1C C4242B84 */ lwc1 $f4, %lo(D_80052B84)($at) /* 07E550 7F049A20 46085182 */ mul.s $f6, $f10, $f8 /* 07E554 7F049A24 3C018005 */ lui $at, %hi(D_80052B88) /* 07E558 7F049A28 C4282B88 */ lwc1 $f8, %lo(D_80052B88)($at) /* 07E55C 7F049A2C 46043282 */ mul.s $f10, $f6, $f4 /* 07E560 7F049A30 460A4181 */ sub.s $f6, $f8, $f10 /* 07E564 7F049A34 460C3102 */ mul.s $f4, $f6, $f12 /* 07E568 7F049A38 10000023 */ b .L7F049AC8 /* 07E56C 7F049A3C E4640028 */ swc1 $f4, 0x28($v1) .L7F049A40: /* 07E570 7F049A40 3C018005 */ lui $at, %hi(D_80052B8C) /* 07E574 7F049A44 C4282B8C */ lwc1 $f8, %lo(D_80052B8C)($at) /* 07E578 7F049A48 3C018005 */ lui $at, %hi(D_80052B90) /* 07E57C 7F049A4C 460C4002 */ mul.s $f0, $f8, $f12 /* 07E580 7F049A50 E4600020 */ swc1 $f0, 0x20($v1) /* 07E584 7F049A54 E4600024 */ swc1 $f0, 0x24($v1) /* 07E588 7F049A58 C42A2B90 */ lwc1 $f10, %lo(D_80052B90)($at) /* 07E58C 7F049A5C 3C018005 */ lui $at, %hi(D_80052B94) /* 07E590 7F049A60 4600503C */ c.lt.s $f10, $f0 /* 07E594 7F049A64 00000000 */ nop /* 07E598 7F049A68 45000003 */ bc1f .L7F049A78 /* 07E59C 7F049A6C 00000000 */ nop /* 07E5A0 7F049A70 C4262B94 */ lwc1 $f6, %lo(D_80052B94)($at) /* 07E5A4 7F049A74 E4660024 */ swc1 $f6, 0x24($v1) .L7F049A78: /* 07E5A8 7F049A78 0C002914 */ jal get_random_value /* 07E5AC 7F049A7C AFA30090 */ sw $v1, 0x90($sp) /* 07E5B0 7F049A80 44822000 */ mtc1 $v0, $f4 /* 07E5B4 7F049A84 8FA30090 */ lw $v1, 0x90($sp) /* 07E5B8 7F049A88 04410005 */ bgez $v0, .L7F049AA0 /* 07E5BC 7F049A8C 46802220 */ cvt.s.w $f8, $f4 /* 07E5C0 7F049A90 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07E5C4 7F049A94 44815000 */ mtc1 $at, $f10 /* 07E5C8 7F049A98 00000000 */ nop /* 07E5CC 7F049A9C 460A4200 */ add.s $f8, $f8, $f10 .L7F049AA0: /* 07E5D0 7F049AA0 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07E5D4 7F049AA4 44813000 */ mtc1 $at, $f6 /* 07E5D8 7F049AA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E5DC 7F049AAC 44815000 */ mtc1 $at, $f10 /* 07E5E0 7F049AB0 46064002 */ mul.s $f0, $f8, $f6 /* 07E5E4 7F049AB4 C4660020 */ lwc1 $f6, 0x20($v1) /* 07E5E8 7F049AB8 46000100 */ add.s $f4, $f0, $f0 /* 07E5EC 7F049ABC 460A2201 */ sub.s $f8, $f4, $f10 /* 07E5F0 7F049AC0 46064102 */ mul.s $f4, $f8, $f6 /* 07E5F4 7F049AC4 E4640028 */ swc1 $f4, 0x28($v1) .L7F049AC8: /* 07E5F8 7F049AC8 8E980008 */ lw $t8, 8($s4) .L7F049ACC: /* 07E5FC 7F049ACC 8F030008 */ lw $v1, 8($t8) /* 07E600 7F049AD0 8C650014 */ lw $a1, 0x14($v1) /* 07E604 7F049AD4 50A00008 */ beql $a1, $zero, .L7F049AF8 /* 07E608 7F049AD8 8C65001C */ lw $a1, 0x1c($v1) /* 07E60C 7F049ADC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07E610 7F049AE0 02802025 */ move $a0, $s4 /* 07E614 7F049AE4 8FA8013C */ lw $t0, 0x13c($sp) /* 07E618 7F049AE8 A4480000 */ sh $t0, ($v0) /* 07E61C 7F049AEC 8E8B0008 */ lw $t3, 8($s4) /* 07E620 7F049AF0 8D630008 */ lw $v1, 8($t3) /* 07E624 7F049AF4 8C65001C */ lw $a1, 0x1c($v1) .L7F049AF8: /* 07E628 7F049AF8 10A00005 */ beqz $a1, .L7F049B10 /* 07E62C 7F049AFC 00000000 */ nop /* 07E630 7F049B00 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07E634 7F049B04 02802025 */ move $a0, $s4 /* 07E638 7F049B08 8FAF0138 */ lw $t7, 0x138($sp) /* 07E63C 7F049B0C A44F0000 */ sh $t7, ($v0) .L7F049B10: /* 07E640 7F049B10 0FC11080 */ jal sub_GAME_7F044200 /* 07E644 7F049B14 02602025 */ move $a0, $s3 /* 07E648 7F049B18 8FA90680 */ lw $t1, 0x680($sp) .L7F049B1C: /* 07E64C 7F049B1C 24010005 */ li $at, 5 /* 07E650 7F049B20 55210003 */ bnel $t1, $at, .L7F049B30 /* 07E654 7F049B24 8FA20680 */ lw $v0, 0x680($sp) /* 07E658 7F049B28 AE600014 */ sw $zero, 0x14($s3) /* 07E65C 7F049B2C 8FA20680 */ lw $v0, 0x680($sp) .L7F049B30: /* 07E660 7F049B30 8FBF0054 */ lw $ra, 0x54($sp) /* 07E664 7F049B34 D7B40030 */ ldc1 $f20, 0x30($sp) /* 07E668 7F049B38 D7B60038 */ ldc1 $f22, 0x38($sp) /* 07E66C 7F049B3C 8FB00040 */ lw $s0, 0x40($sp) /* 07E670 7F049B40 8FB10044 */ lw $s1, 0x44($sp) /* 07E674 7F049B44 8FB20048 */ lw $s2, 0x48($sp) /* 07E678 7F049B48 8FB3004C */ lw $s3, 0x4c($sp) /* 07E67C 7F049B4C 8FB40050 */ lw $s4, 0x50($sp) /* 07E680 7F049B50 03E00008 */ jr $ra /* 07E684 7F049B54 27BD06A8 */ addiu $sp, $sp, 0x6a8 ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata glabel rocket_initial_gravity_modifier .word 0x3e8e38e4 /*0.27777779*/ glabel D_80052A9C .word 0x3c360b61 /*0.011111111*/ glabel D_80052AA0 .word 0x3d8f5c29 /*0.07*/ glabel prop_projectile_gravity_modifier .word 0x3e8e38e4 /*0.27777779*/ glabel D_80052AA8 .word 0x400e38e4 /*2.2222223*/ glabel D_80052AAC .word 0x46d9038c /*27777.773*/ glabel D_80052AB0 .word 0x3f8ccccd /*1.1*/ glabel D_80052AB4 .word 0x3f666666 /*0.89999998*/ glabel D_80052AB8 .word 0x3f666666 /*0.89999998*/ glabel D_80052ABC .word 0x3dcccccd /*0.1*/ glabel D_80052AC0 .word 0xbdcccccd /*-0.1*/ glabel D_80052AC4 .word 0xbdcccccd /*-0.1*/ glabel D_80052AC8 .word 0x40c90fdb /*6.2831855*/ glabel D_80052ACC .word 0x40c90fdb /*6.2831855*/ glabel D_80052AD0 .word 0x40490fdb /*3.1415927*/ glabel D_80052AD4 .word 0x3f490fdb /*0.78539819*/ glabel D_80052AD8 .word 0xbf490fdb /*-0.78539819*/ glabel D_80052ADC .word 0x40c90fdb /*6.2831855*/ glabel D_80052AE0 .word 0x3a2b92a6 /*0.00065449846*/ glabel D_80052AE4 .word 0x3a2b92a6 /*0.00065449846*/ glabel D_80052AE8 .word 0x40c90fdb /*6.2831855*/ glabel D_80052AEC .word 0x37433637 /*0.000011635529*/ glabel D_80052AF0 .word 0x40c90fdb /*6.2831855*/ glabel D_80052AF4 .word 0x3a3702d4 /*0.00069813174*/ glabel D_80052AF8 .word 0x36c33637 /*0.0000058177643*/ glabel D_80052AFC .word 0x39b702d4 /*0.00034906587*/ glabel D_80052B00 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B04 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B08 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B0C .word 0x40490fdb /*3.1415927*/ glabel D_80052B10 .word 0x3f9c61ab /*1.2217306*/ glabel D_80052B14 .word 0xbf9c61ab /*-1.2217306*/ glabel D_80052B18 .word 0xc0490fdb /*-3.1415927*/ glabel D_80052B1C .word 0x40490fdb /*3.1415927*/ glabel D_80052B20 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B24 .word 0x3f4ccccd /*0.80000001*/ glabel D_80052B28 .word 0xc0490fdb /*-3.1415927*/ glabel D_80052B2C .word 0x40490fdb /*3.1415927*/ glabel D_80052B30 .word 0x3a64c389 /*0.00087266468*/ glabel D_80052B34 .word 0x3a64c389 /*0.00087266468*/ glabel D_80052B38 .word 0x40490fdb /*3.1415927*/ glabel D_80052B3C .word 0x3f1930a7 /*0.59839863*/ glabel D_80052B40 .word 0x3c236719 /*0.0099733109*/ glabel D_80052B44 .word 0x3f7d70a4 /*0.99000001*/ glabel D_80052B48 .word 0x38d1b717 /*0.000099999997*/ glabel D_80052B4C .word 0x3964c389 /*0.00021816617*/ glabel D_80052B50 .word 0x3bd67750 /*0.0065449849*/ glabel D_80052B54 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B58 .word 0x3964c389 /*0.00021816617*/ glabel D_80052B5C .word 0xb964c389 /*-0.00021816617*/ glabel D_80052B60 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B64 .word 0x40c90fdb /*6.2831855*/ glabel D_80052B68 .word 0x3e99999a /*0.30000001*/ glabel D_80052B6C .word 0x3fc90fdb /*1.5707964*/ glabel D_80052B70 .word 0x3fc90fdb /*1.5707964*/ glabel D_80052B74 .word 0x3e23d70a /*0.16*/ glabel D_80052B78 .word 0x461c4000 /*10000.0*/ glabel D_80052B7C .word 0x453b8000 /*3000.0*/ glabel D_80052B80 .word 0x3f19999a /*0.60000002*/ glabel D_80052B84 .word 0x3e99999a /*0.30000001*/ glabel D_80052B88 .word 0xbdcccccd /*-0.1*/ glabel D_80052B8C .word 0x3e4ccccd /*0.2*/ glabel D_80052B90 .word 0x453b8000 /*3000.0*/ glabel D_80052B94 .word 0x453b8000 /*3000.0*/ .text glabel object_interaction /* 07A218 7F0456A8 27BDF950 */ addiu $sp, $sp, -0x6b0 /* 07A21C 7F0456AC AFBF0054 */ sw $ra, 0x54($sp) /* 07A220 7F0456B0 AFB40050 */ sw $s4, 0x50($sp) /* 07A224 7F0456B4 AFB3004C */ sw $s3, 0x4c($sp) /* 07A228 7F0456B8 AFB20048 */ sw $s2, 0x48($sp) /* 07A22C 7F0456BC AFB10044 */ sw $s1, 0x44($sp) /* 07A230 7F0456C0 AFB00040 */ sw $s0, 0x40($sp) /* 07A234 7F0456C4 F7B60038 */ sdc1 $f22, 0x38($sp) /* 07A238 7F0456C8 F7B40030 */ sdc1 $f20, 0x30($sp) /* 07A23C 7F0456CC 8C910004 */ lw $s1, 4($a0) /* 07A240 7F0456D0 4480B000 */ mtc1 $zero, $f22 /* 07A244 7F0456D4 00809825 */ move $s3, $a0 /* 07A248 7F0456D8 8E340014 */ lw $s4, 0x14($s1) /* 07A24C 7F0456DC AFA00698 */ sw $zero, 0x698($sp) /* 07A250 7F0456E0 AFA00688 */ sw $zero, 0x688($sp) /* 07A254 7F0456E4 0FC26C01 */ jal get_num_players /* 07A258 7F0456E8 E7B60684 */ swc1 $f22, 0x684($sp) /* 07A25C 7F0456EC 240F0001 */ li $t7, 1 /* 07A260 7F0456F0 AFA2067C */ sw $v0, 0x67c($sp) /* 07A264 7F0456F4 AFAF0678 */ sw $t7, 0x678($sp) /* 07A268 7F0456F8 8E230064 */ lw $v1, 0x64($s1) /* 07A26C 7F0456FC 30790004 */ andi $t9, $v1, 4 /* 07A270 7F045700 13200009 */ beqz $t9, .Ljp7F045728 /* 07A274 7F045704 30680008 */ andi $t0, $v1, 8 /* 07A278 7F045708 92260002 */ lbu $a2, 2($s1) /* 07A27C 7F04570C 02202025 */ move $a0, $s1 /* 07A280 7F045710 00002825 */ move $a1, $zero /* 07A284 7F045714 30D80004 */ andi $t8, $a2, 4 /* 07A288 7F045718 0FC10426 */ jal sub_GAME_7F040D98 /* 07A28C 7F04571C 03003025 */ move $a2, $t8 /* 07A290 7F045720 10001204 */ b .Ljp7F049F34 /* 07A294 7F045724 24020001 */ li $v0, 1 .Ljp7F045728: /* 07A298 7F045728 11000005 */ beqz $t0, .Ljp7F045740 /* 07A29C 7F04572C 306B0080 */ andi $t3, $v1, 0x80 /* 07A2A0 7F045730 2401FFF7 */ li $at, -9 /* 07A2A4 7F045734 00614824 */ and $t1, $v1, $at /* 07A2A8 7F045738 1000000B */ b .Ljp7F045768 /* 07A2AC 7F04573C AE290064 */ sw $t1, 0x64($s1) .Ljp7F045740: /* 07A2B0 7F045740 5160000A */ beql $t3, $zero, .Ljp7F04576C /* 07A2B4 7F045744 24010001 */ li $at, 1 /* 07A2B8 7F045748 926C0001 */ lbu $t4, 1($s3) /* 07A2BC 7F04574C 24020003 */ li $v0, 3 /* 07A2C0 7F045750 318EFFFD */ andi $t6, $t4, 0xfffd /* 07A2C4 7F045754 A26E0001 */ sb $t6, 1($s3) /* 07A2C8 7F045758 8E2A0064 */ lw $t2, 0x64($s1) /* 07A2CC 7F04575C 354D0008 */ ori $t5, $t2, 8 /* 07A2D0 7F045760 100011F4 */ b .Ljp7F049F34 /* 07A2D4 7F045764 AE2D0064 */ sw $t5, 0x64($s1) .Ljp7F045768: /* 07A2D8 7F045768 24010001 */ li $at, 1 .Ljp7F04576C: /* 07A2DC 7F04576C 14410003 */ bne $v0, $at, .Ljp7F04577C /* 07A2E0 7F045770 240F0001 */ li $t7, 1 /* 07A2E4 7F045774 10000019 */ b .Ljp7F0457DC /* 07A2E8 7F045778 AFAF0680 */ sw $t7, 0x680($sp) .Ljp7F04577C: /* 07A2EC 7F04577C 0FC26F3C */ jal get_cur_playernum /* 07A2F0 7F045780 00000000 */ nop /* 07A2F4 7F045784 0FC2701E */ jal sub_GAME_7F09B4D8 /* 07A2F8 7F045788 00402025 */ move $a0, $v0 /* 07A2FC 7F04578C 2C590001 */ sltiu $t9, $v0, 1 /* 07A300 7F045790 AFB90680 */ sw $t9, 0x680($sp) /* 07A304 7F045794 8E380064 */ lw $t8, 0x64($s1) /* 07A308 7F045798 33080080 */ andi $t0, $t8, 0x80 /* 07A30C 7F04579C 51000010 */ beql $t0, $zero, .Ljp7F0457E0 /* 07A310 7F0457A0 8FAA0680 */ lw $t2, 0x680($sp) /* 07A314 7F0457A4 8E30006C */ lw $s0, 0x6c($s1) /* 07A318 7F0457A8 8E040088 */ lw $a0, 0x88($s0) /* 07A31C 7F0457AC 5080000C */ beql $a0, $zero, .Ljp7F0457E0 /* 07A320 7F0457B0 8FAA0680 */ lw $t2, 0x680($sp) /* 07A324 7F0457B4 0FC26F3F */ jal sub_GAME_7F09B15C /* 07A328 7F0457B8 00000000 */ nop /* 07A32C 7F0457BC 04400007 */ bltz $v0, .Ljp7F0457DC /* 07A330 7F0457C0 3C098008 */ lui $t1, %hi(pPlayer) # $t1, 0x8008 /* 07A334 7F0457C4 8D29A120 */ lw $t1, %lo(pPlayer)($t1) /* 07A338 7F0457C8 8E0C0088 */ lw $t4, 0x88($s0) /* 07A33C 7F0457CC 8D2B00A8 */ lw $t3, 0xa8($t1) /* 07A340 7F0457D0 016C7026 */ xor $t6, $t3, $t4 /* 07A344 7F0457D4 2DCE0001 */ sltiu $t6, $t6, 1 /* 07A348 7F0457D8 AFAE0680 */ sw $t6, 0x680($sp) .Ljp7F0457DC: /* 07A34C 7F0457DC 8FAA0680 */ lw $t2, 0x680($sp) .Ljp7F0457E0: /* 07A350 7F0457E0 51400B94 */ beql $t2, $zero, .Ljp7F048634 /* 07A354 7F0457E4 92220003 */ lbu $v0, 3($s1) /* 07A358 7F0457E8 8E2D0064 */ lw $t5, 0x64($s1) /* 07A35C 7F0457EC 31AF0080 */ andi $t7, $t5, 0x80 /* 07A360 7F0457F0 51E0048B */ beql $t7, $zero, .Ljp7F046A20 /* 07A364 7F0457F4 8FAB0698 */ lw $t3, 0x698($sp) /* 07A368 7F0457F8 8E30006C */ lw $s0, 0x6c($s1) /* 07A36C 7F0457FC 3C188005 */ lui $t8, %hi(clock_timer) # $t8, 0x8005 /* 07A370 7F045800 8F1883A4 */ lw $t8, %lo(clock_timer)($t8) /* 07A374 7F045804 8E1900E0 */ lw $t9, 0xe0($s0) /* 07A378 7F045808 03384021 */ addu $t0, $t9, $t8 /* 07A37C 7F04580C 29010961 */ slti $at, $t0, 0x961 /* 07A380 7F045810 14200004 */ bnez $at, .Ljp7F045824 /* 07A384 7F045814 AE0800E0 */ sw $t0, 0xe0($s0) /* 07A388 7F045818 8E2B0064 */ lw $t3, 0x64($s1) /* 07A38C 7F04581C 356C0004 */ ori $t4, $t3, 4 /* 07A390 7F045820 AE2C0064 */ sw $t4, 0x64($s1) .Ljp7F045824: /* 07A394 7F045824 8E0E0000 */ lw $t6, ($s0) /* 07A398 7F045828 31CA0100 */ andi $t2, $t6, 0x100 /* 07A39C 7F04582C 5140002F */ beql $t2, $zero, .Ljp7F0458EC /* 07A3A0 7F045830 C6260058 */ lwc1 $f6, 0x58($s1) /* 07A3A4 7F045834 922D0003 */ lbu $t5, 3($s1) /* 07A3A8 7F045838 24010008 */ li $at, 8 /* 07A3AC 7F04583C 24120001 */ li $s2, 1 /* 07A3B0 7F045840 55A10008 */ bnel $t5, $at, .Ljp7F045864 /* 07A3B4 7F045844 8E040088 */ lw $a0, 0x88($s0) /* 07A3B8 7F045848 AFB10650 */ sw $s1, 0x650($sp) /* 07A3BC 7F04584C 822F0080 */ lb $t7, 0x80($s1) /* 07A3C0 7F045850 24010056 */ li $at, 86 /* 07A3C4 7F045854 55E10003 */ bnel $t7, $at, .Ljp7F045864 /* 07A3C8 7F045858 8E040088 */ lw $a0, 0x88($s0) /* 07A3CC 7F04585C 00009025 */ move $s2, $zero /* 07A3D0 7F045860 8E040088 */ lw $a0, 0x88($s0) .Ljp7F045864: /* 07A3D4 7F045864 50800004 */ beql $a0, $zero, .Ljp7F045878 /* 07A3D8 7F045868 02202025 */ move $a0, $s1 /* 07A3DC 7F04586C 0FC0F4D6 */ jal sub_GAME_7F03D058 /* 07A3E0 7F045870 00002825 */ move $a1, $zero /* 07A3E4 7F045874 02202025 */ move $a0, $s1 .Ljp7F045878: /* 07A3E8 7F045878 260500D4 */ addiu $a1, $s0, 0xd4 /* 07A3EC 7F04587C 27A60654 */ addiu $a2, $sp, 0x654 /* 07A3F0 7F045880 27A70660 */ addiu $a3, $sp, 0x660 /* 07A3F4 7F045884 AFA00010 */ sw $zero, 0x10($sp) /* 07A3F8 7F045888 0FC10C6D */ jal sub_GAME_7F042EB4 /* 07A3FC 7F04588C AFB20014 */ sw $s2, 0x14($sp) /* 07A400 7F045890 AFA2066C */ sw $v0, 0x66c($sp) /* 07A404 7F045894 8E040088 */ lw $a0, 0x88($s0) /* 07A408 7F045898 50800004 */ beql $a0, $zero, .Ljp7F0458AC /* 07A40C 7F04589C 8FB9066C */ lw $t9, 0x66c($sp) /* 07A410 7F0458A0 0FC0F4D6 */ jal sub_GAME_7F03D058 /* 07A414 7F0458A4 24050001 */ li $a1, 1 /* 07A418 7F0458A8 8FB9066C */ lw $t9, 0x66c($sp) .Ljp7F0458AC: /* 07A41C 7F0458AC 24010001 */ li $at, 1 /* 07A420 7F0458B0 8FA20650 */ lw $v0, 0x650($sp) /* 07A424 7F0458B4 53210009 */ beql $t9, $at, .Ljp7F0458DC /* 07A428 7F0458B8 8E080000 */ lw $t0, ($s0) /* 07A42C 7F0458BC 50400007 */ beql $v0, $zero, .Ljp7F0458DC /* 07A430 7F0458C0 8E080000 */ lw $t0, ($s0) /* 07A434 7F0458C4 80580080 */ lb $t8, 0x80($v0) /* 07A438 7F0458C8 24010056 */ li $at, 86 /* 07A43C 7F0458CC 57010003 */ bnel $t8, $at, .Ljp7F0458DC /* 07A440 7F0458D0 8E080000 */ lw $t0, ($s0) /* 07A444 7F0458D4 A4400082 */ sh $zero, 0x82($v0) /* 07A448 7F0458D8 8E080000 */ lw $t0, ($s0) .Ljp7F0458DC: /* 07A44C 7F0458DC 2401FEFF */ li $at, -257 /* 07A450 7F0458E0 01014824 */ and $t1, $t0, $at /* 07A454 7F0458E4 AE090000 */ sw $t1, ($s0) /* 07A458 7F0458E8 C6260058 */ lwc1 $f6, 0x58($s1) .Ljp7F0458EC: /* 07A45C 7F0458EC 3C0B8005 */ lui $t3, %hi(clock_timer) # $t3, 0x8005 /* 07A460 7F0458F0 3C013F80 */ lui $at, 0x3f80 /* 07A464 7F0458F4 E7A6069C */ swc1 $f6, 0x69c($sp) /* 07A468 7F0458F8 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07A46C 7F0458FC E7AA06A0 */ swc1 $f10, 0x6a0($sp) /* 07A470 7F045900 C6240060 */ lwc1 $f4, 0x60($s1) /* 07A474 7F045904 E7A406A4 */ swc1 $f4, 0x6a4($sp) /* 07A478 7F045908 8E0200BC */ lw $v0, 0xbc($s0) /* 07A47C 7F04590C 58400005 */ blezl $v0, .Ljp7F045924 /* 07A480 7F045910 8E2E006C */ lw $t6, 0x6c($s1) /* 07A484 7F045914 8D6B83A4 */ lw $t3, %lo(clock_timer)($t3) /* 07A488 7F045918 004B6023 */ subu $t4, $v0, $t3 /* 07A48C 7F04591C AE0C00BC */ sw $t4, 0xbc($s0) /* 07A490 7F045920 8E2E006C */ lw $t6, 0x6c($s1) .Ljp7F045924: /* 07A494 7F045924 8DCA0000 */ lw $t2, ($t6) /* 07A498 7F045928 314D0001 */ andi $t5, $t2, 1 /* 07A49C 7F04592C 51A00351 */ beql $t5, $zero, .Ljp7F046674 /* 07A4A0 7F045930 C6000060 */ lwc1 $f0, 0x60($s0) /* 07A4A4 7F045934 0FC100DE */ jal sub_GAME_7F040078 /* 07A4A8 7F045938 02202025 */ move $a0, $s1 /* 07A4AC 7F04593C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07A4B0 7F045940 44814000 */ mtc1 $at, $f8 /* 07A4B4 7F045944 3C078005 */ lui $a3, %hi(clock_timer) # $a3, 0x8005 /* 07A4B8 7F045948 24E783A4 */ addiu $a3, %lo(clock_timer) # addiu $a3, $a3, -0x7c5c /* 07A4BC 7F04594C AFA20648 */ sw $v0, 0x648($sp) /* 07A4C0 7F045950 AFA00618 */ sw $zero, 0x618($sp) /* 07A4C4 7F045954 AFA00614 */ sw $zero, 0x614($sp) /* 07A4C8 7F045958 AFA0060C */ sw $zero, 0x60c($sp) /* 07A4CC 7F04595C E7A80640 */ swc1 $f8, 0x640($sp) /* 07A4D0 7F045960 8E0F00A8 */ lw $t7, 0xa8($s0) /* 07A4D4 7F045964 8CF90000 */ lw $t9, ($a3) /* 07A4D8 7F045968 C634005C */ lwc1 $f20, 0x5c($s1) /* 07A4DC 7F04596C 00009025 */ move $s2, $zero /* 07A4E0 7F045970 01F9C021 */ addu $t8, $t7, $t9 /* 07A4E4 7F045974 AE1800A8 */ sw $t8, 0xa8($s0) /* 07A4E8 7F045978 C6260018 */ lwc1 $f6, 0x18($s1) /* 07A4EC 7F04597C 3C018005 */ lui $at, %hi(rocket_initial_gravity_modifier) # $at, 0x8005 /* 07A4F0 7F045980 E7A60634 */ swc1 $f6, 0x634($sp) /* 07A4F4 7F045984 C62A001C */ lwc1 $f10, 0x1c($s1) /* 07A4F8 7F045988 E7AA0638 */ swc1 $f10, 0x638($sp) /* 07A4FC 7F04598C C6240020 */ lwc1 $f4, 0x20($s1) /* 07A500 7F045990 E7A4063C */ swc1 $f4, 0x63c($sp) /* 07A504 7F045994 8E030000 */ lw $v1, ($s0) /* 07A508 7F045998 30680020 */ andi $t0, $v1, 0x20 /* 07A50C 7F04599C 1100004B */ beqz $t0, .Ljp7F045ACC /* 07A510 7F0459A0 00000000 */ nop /* 07A514 7F0459A4 C4322AC8 */ lwc1 $f18, %lo(rocket_initial_gravity_modifier)($at) /* 07A518 7F0459A8 C600001C */ lwc1 $f0, 0x1c($s0) /* 07A51C 7F0459AC 3C028005 */ lui $v0, %hi(global_timer_delta) # $v0, 0x8005 /* 07A520 7F0459B0 244283B4 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c4c /* 07A524 7F0459B4 4612003C */ c.lt.s $f0, $f18 /* 07A528 7F0459B8 00000000 */ nop /* 07A52C 7F0459BC 4502001C */ bc1fl .Ljp7F045A30 /* 07A530 7F0459C0 C60000B0 */ lwc1 $f0, 0xb0($s0) /* 07A534 7F0459C4 C6080014 */ lwc1 $f8, 0x14($s0) /* 07A538 7F0459C8 C4460000 */ lwc1 $f6, ($v0) /* 07A53C 7F0459CC C60400B4 */ lwc1 $f4, 0xb4($s0) /* 07A540 7F0459D0 3C018005 */ lui $at, %hi(D_80052A9C) # $at, 0x8005 /* 07A544 7F0459D4 46064282 */ mul.s $f10, $f8, $f6 /* 07A548 7F0459D8 460A2200 */ add.s $f8, $f4, $f10 /* 07A54C 7F0459DC E60800B4 */ swc1 $f8, 0xb4($s0) /* 07A550 7F0459E0 C4440000 */ lwc1 $f4, ($v0) /* 07A554 7F0459E4 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07A558 7F0459E8 C60800B0 */ lwc1 $f8, 0xb0($s0) /* 07A55C 7F0459EC 46043282 */ mul.s $f10, $f6, $f4 /* 07A560 7F0459F0 460A4180 */ add.s $f6, $f8, $f10 /* 07A564 7F0459F4 E60600B0 */ swc1 $f6, 0xb0($s0) /* 07A568 7F0459F8 C4480000 */ lwc1 $f8, ($v0) /* 07A56C 7F0459FC C4242ACC */ lwc1 $f4, %lo(D_80052A9C)($at) /* 07A570 7F045A00 46082282 */ mul.s $f10, $f4, $f8 /* 07A574 7F045A04 460A0180 */ add.s $f6, $f0, $f10 /* 07A578 7F045A08 E606001C */ swc1 $f6, 0x1c($s0) /* 07A57C 7F045A0C C604001C */ lwc1 $f4, 0x1c($s0) /* 07A580 7F045A10 4604903C */ c.lt.s $f18, $f4 /* 07A584 7F045A14 00000000 */ nop /* 07A588 7F045A18 45000002 */ bc1f .Ljp7F045A24 /* 07A58C 7F045A1C 00000000 */ nop /* 07A590 7F045A20 E612001C */ swc1 $f18, 0x1c($s0) .Ljp7F045A24: /* 07A594 7F045A24 10000029 */ b .Ljp7F045ACC /* 07A598 7F045A28 8E030000 */ lw $v1, ($s0) /* 07A59C 7F045A2C C60000B0 */ lwc1 $f0, 0xb0($s0) .Ljp7F045A30: /* 07A5A0 7F045A30 C7A806A0 */ lwc1 $f8, 0x6a0($sp) /* 07A5A4 7F045A34 4600403C */ c.lt.s $f8, $f0 /* 07A5A8 7F045A38 00000000 */ nop /* 07A5AC 7F045A3C 45000019 */ bc1f .Ljp7F045AA4 /* 07A5B0 7F045A40 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07A5B4 7F045A44 C42683B4 */ lwc1 $f6, %lo(global_timer_delta)($at) /* 07A5B8 7F045A48 C60A0014 */ lwc1 $f10, 0x14($s0) /* 07A5BC 7F045A4C C60800B4 */ lwc1 $f8, 0xb4($s0) /* 07A5C0 7F045A50 46065102 */ mul.s $f4, $f10, $f6 /* 07A5C4 7F045A54 46044280 */ add.s $f10, $f8, $f4 /* 07A5C8 7F045A58 E60A00B4 */ swc1 $f10, 0xb4($s0) /* 07A5CC 7F045A5C C42883B4 */ lwc1 $f8, %lo(global_timer_delta)($at) /* 07A5D0 7F045A60 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07A5D4 7F045A64 3C018005 */ lui $at, %hi(D_80052AA0) # $at, 0x8005 /* 07A5D8 7F045A68 46083102 */ mul.s $f4, $f6, $f8 /* 07A5DC 7F045A6C 46040280 */ add.s $f10, $f0, $f4 /* 07A5E0 7F045A70 E60A00B0 */ swc1 $f10, 0xb0($s0) /* 07A5E4 7F045A74 C7A806A0 */ lwc1 $f8, 0x6a0($sp) /* 07A5E8 7F045A78 C60600B0 */ lwc1 $f6, 0xb0($s0) /* 07A5EC 7F045A7C C42A2AD0 */ lwc1 $f10, %lo(D_80052AA0)($at) /* 07A5F0 7F045A80 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07A5F4 7F045A84 46083101 */ sub.s $f4, $f6, $f8 /* 07A5F8 7F045A88 46045182 */ mul.s $f6, $f10, $f4 /* 07A5FC 7F045A8C C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07A600 7F045A90 460A3102 */ mul.s $f4, $f6, $f10 /* 07A604 7F045A94 46044180 */ add.s $f6, $f8, $f4 /* 07A608 7F045A98 E7A606A0 */ swc1 $f6, 0x6a0($sp) /* 07A60C 7F045A9C 1000000B */ b .Ljp7F045ACC /* 07A610 7F045AA0 8E030000 */ lw $v1, ($s0) .Ljp7F045AA4: /* 07A614 7F045AA4 E7A006A0 */ swc1 $f0, 0x6a0($sp) /* 07A618 7F045AA8 8E090000 */ lw $t1, ($s0) /* 07A61C 7F045AAC 2401FFDF */ li $at, -33 /* 07A620 7F045AB0 C60A00B4 */ lwc1 $f10, 0xb4($s0) /* 07A624 7F045AB4 01215824 */ and $t3, $t1, $at /* 07A628 7F045AB8 AE0B0000 */ sw $t3, ($s0) /* 07A62C 7F045ABC 35630010 */ ori $v1, $t3, 0x10 /* 07A630 7F045AC0 E616001C */ swc1 $f22, 0x1c($s0) /* 07A634 7F045AC4 AE030000 */ sw $v1, ($s0) /* 07A638 7F045AC8 E60A0008 */ swc1 $f10, 8($s0) .Ljp7F045ACC: /* 07A63C 7F045ACC 3C028005 */ lui $v0, %hi(global_timer_delta) # $v0, 0x8005 /* 07A640 7F045AD0 244283B4 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c4c /* 07A644 7F045AD4 3C018005 */ lui $at, %hi(prop_projectile_gravity_modifier) # $at, 0x8005 /* 07A648 7F045AD8 306A0010 */ andi $t2, $v1, 0x10 /* 07A64C 7F045ADC C4322AD4 */ lwc1 $f18, %lo(prop_projectile_gravity_modifier)($at) /* 07A650 7F045AE0 C4420000 */ lwc1 $f2, ($v0) /* 07A654 7F045AE4 C600001C */ lwc1 $f0, 0x1c($s0) /* 07A658 7F045AE8 15400015 */ bnez $t2, .Ljp7F045B40 /* 07A65C 7F045AEC C6100014 */ lwc1 $f16, 0x14($s0) /* 07A660 7F045AF0 46008100 */ add.s $f4, $f16, $f0 /* 07A664 7F045AF4 C6080008 */ lwc1 $f8, 8($s0) /* 07A668 7F045AF8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07A66C 7F045AFC 46022182 */ mul.s $f6, $f4, $f2 /* 07A670 7F045B00 46064280 */ add.s $f10, $f8, $f6 /* 07A674 7F045B04 E60A0008 */ swc1 $f10, 8($s0) /* 07A678 7F045B08 C4420000 */ lwc1 $f2, ($v0) /* 07A67C 7F045B0C C60C0008 */ lwc1 $f12, 8($s0) /* 07A680 7F045B10 44815000 */ mtc1 $at, $f10 /* 07A684 7F045B14 46029102 */ mul.s $f4, $f18, $f2 /* 07A688 7F045B18 46046381 */ sub.s $f14, $f12, $f4 /* 07A68C 7F045B1C 460E6200 */ add.s $f8, $f12, $f14 /* 07A690 7F045B20 46081182 */ mul.s $f6, $f2, $f8 /* 07A694 7F045B24 C7A806A0 */ lwc1 $f8, 0x6a0($sp) /* 07A698 7F045B28 460A3102 */ mul.s $f4, $f6, $f10 /* 07A69C 7F045B2C 46044180 */ add.s $f6, $f8, $f4 /* 07A6A0 7F045B30 E7A606A0 */ swc1 $f6, 0x6a0($sp) /* 07A6A4 7F045B34 E60E0008 */ swc1 $f14, 8($s0) /* 07A6A8 7F045B38 1000000C */ b .Ljp7F045B6C /* 07A6AC 7F045B3C C4420000 */ lwc1 $f2, ($v0) .Ljp7F045B40: /* 07A6B0 7F045B40 46008200 */ add.s $f8, $f16, $f0 /* 07A6B4 7F045B44 C60A0008 */ lwc1 $f10, 8($s0) /* 07A6B8 7F045B48 46024102 */ mul.s $f4, $f8, $f2 /* 07A6BC 7F045B4C 46045180 */ add.s $f6, $f10, $f4 /* 07A6C0 7F045B50 E6060008 */ swc1 $f6, 8($s0) /* 07A6C4 7F045B54 C60A0008 */ lwc1 $f10, 8($s0) /* 07A6C8 7F045B58 C4420000 */ lwc1 $f2, ($v0) /* 07A6CC 7F045B5C C7A806A0 */ lwc1 $f8, 0x6a0($sp) /* 07A6D0 7F045B60 46025102 */ mul.s $f4, $f10, $f2 /* 07A6D4 7F045B64 46044180 */ add.s $f6, $f8, $f4 /* 07A6D8 7F045B68 E7A606A0 */ swc1 $f6, 0x6a0($sp) .Ljp7F045B6C: /* 07A6DC 7F045B6C C6080010 */ lwc1 $f8, 0x10($s0) /* 07A6E0 7F045B70 C60A0004 */ lwc1 $f10, 4($s0) /* 07A6E4 7F045B74 26240018 */ addiu $a0, $s1, 0x18 /* 07A6E8 7F045B78 46024102 */ mul.s $f4, $f8, $f2 /* 07A6EC 7F045B7C C6080018 */ lwc1 $f8, 0x18($s0) /* 07A6F0 7F045B80 26050020 */ addiu $a1, $s0, 0x20 /* 07A6F4 7F045B84 46045180 */ add.s $f6, $f10, $f4 /* 07A6F8 7F045B88 E6060004 */ swc1 $f6, 4($s0) /* 07A6FC 7F045B8C C44A0000 */ lwc1 $f10, ($v0) /* 07A700 7F045B90 C606000C */ lwc1 $f6, 0xc($s0) /* 07A704 7F045B94 460A4102 */ mul.s $f4, $f8, $f10 /* 07A708 7F045B98 46043200 */ add.s $f8, $f6, $f4 /* 07A70C 7F045B9C C6060004 */ lwc1 $f6, 4($s0) /* 07A710 7F045BA0 E608000C */ swc1 $f8, 0xc($s0) /* 07A714 7F045BA4 C4420000 */ lwc1 $f2, ($v0) /* 07A718 7F045BA8 C7AA069C */ lwc1 $f10, 0x69c($sp) /* 07A71C 7F045BAC 8CE60000 */ lw $a2, ($a3) /* 07A720 7F045BB0 46023102 */ mul.s $f4, $f6, $f2 /* 07A724 7F045BB4 C7A606A4 */ lwc1 $f6, 0x6a4($sp) /* 07A728 7F045BB8 46045200 */ add.s $f8, $f10, $f4 /* 07A72C 7F045BBC E7A8069C */ swc1 $f8, 0x69c($sp) /* 07A730 7F045BC0 C60A000C */ lwc1 $f10, 0xc($s0) /* 07A734 7F045BC4 AFA50070 */ sw $a1, 0x70($sp) /* 07A738 7F045BC8 AFA40074 */ sw $a0, 0x74($sp) /* 07A73C 7F045BCC 46025102 */ mul.s $f4, $f10, $f2 /* 07A740 7F045BD0 46043200 */ add.s $f8, $f6, $f4 /* 07A744 7F045BD4 0FC160C6 */ jal sub_GAME_7F057DF8 /* 07A748 7F045BD8 E7A806A4 */ swc1 $f8, 0x6a4($sp) /* 07A74C 7F045BDC 922D0003 */ lbu $t5, 3($s1) /* 07A750 7F045BE0 24010008 */ li $at, 8 /* 07A754 7F045BE4 55A10013 */ bnel $t5, $at, .Ljp7F045C34 /* 07A758 7F045BE8 8E040088 */ lw $a0, 0x88($s0) /* 07A75C 7F045BEC 82220080 */ lb $v0, 0x80($s1) /* 07A760 7F045BF0 2401001D */ li $at, 29 /* 07A764 7F045BF4 1041000D */ beq $v0, $at, .Ljp7F045C2C /* 07A768 7F045BF8 2401001B */ li $at, 27 /* 07A76C 7F045BFC 1041000B */ beq $v0, $at, .Ljp7F045C2C /* 07A770 7F045C00 2401001C */ li $at, 28 /* 07A774 7F045C04 10410009 */ beq $v0, $at, .Ljp7F045C2C /* 07A778 7F045C08 24010021 */ li $at, 33 /* 07A77C 7F045C0C 10410007 */ beq $v0, $at, .Ljp7F045C2C /* 07A780 7F045C10 2401002F */ li $at, 47 /* 07A784 7F045C14 10410005 */ beq $v0, $at, .Ljp7F045C2C /* 07A788 7F045C18 24010030 */ li $at, 48 /* 07A78C 7F045C1C 10410003 */ beq $v0, $at, .Ljp7F045C2C /* 07A790 7F045C20 24010022 */ li $at, 34 /* 07A794 7F045C24 54410003 */ bnel $v0, $at, .Ljp7F045C34 /* 07A798 7F045C28 8E040088 */ lw $a0, 0x88($s0) .Ljp7F045C2C: /* 07A79C 7F045C2C 24120001 */ li $s2, 1 /* 07A7A0 7F045C30 8E040088 */ lw $a0, 0x88($s0) .Ljp7F045C34: /* 07A7A4 7F045C34 50800004 */ beql $a0, $zero, .Ljp7F045C48 /* 07A7A8 7F045C38 02202025 */ move $a0, $s1 /* 07A7AC 7F045C3C 0FC0F4D6 */ jal sub_GAME_7F03D058 /* 07A7B0 7F045C40 00002825 */ move $a1, $zero /* 07A7B4 7F045C44 02202025 */ move $a0, $s1 .Ljp7F045C48: /* 07A7B8 7F045C48 27A5069C */ addiu $a1, $sp, 0x69c /* 07A7BC 7F045C4C 27A6061C */ addiu $a2, $sp, 0x61c /* 07A7C0 7F045C50 27A70628 */ addiu $a3, $sp, 0x628 /* 07A7C4 7F045C54 AFB20010 */ sw $s2, 0x10($sp) /* 07A7C8 7F045C58 0FC10C6D */ jal sub_GAME_7F042EB4 /* 07A7CC 7F045C5C AFA00014 */ sw $zero, 0x14($sp) /* 07A7D0 7F045C60 AFA2066C */ sw $v0, 0x66c($sp) /* 07A7D4 7F045C64 8E040088 */ lw $a0, 0x88($s0) /* 07A7D8 7F045C68 50800004 */ beql $a0, $zero, .Ljp7F045C7C /* 07A7DC 7F045C6C 8FB9066C */ lw $t9, 0x66c($sp) /* 07A7E0 7F045C70 0FC0F4D6 */ jal sub_GAME_7F03D058 /* 07A7E4 7F045C74 24050001 */ li $a1, 1 /* 07A7E8 7F045C78 8FB9066C */ lw $t9, 0x66c($sp) .Ljp7F045C7C: /* 07A7EC 7F045C7C 240F0001 */ li $t7, 1 /* 07A7F0 7F045C80 24010002 */ li $at, 2 /* 07A7F4 7F045C84 17210042 */ bne $t9, $at, .Ljp7F045D90 /* 07A7F8 7F045C88 AFAF0698 */ sw $t7, 0x698($sp) /* 07A7FC 7F045C8C 3C038003 */ lui $v1, %hi(D_80030B0C) # $v1, 0x8003 /* 07A800 7F045C90 8C630B4C */ lw $v1, %lo(D_80030B0C)($v1) /* 07A804 7F045C94 10600007 */ beqz $v1, .Ljp7F045CB4 /* 07A808 7F045C98 00000000 */ nop /* 07A80C 7F045C9C 90620000 */ lbu $v0, ($v1) /* 07A810 7F045CA0 24010003 */ li $at, 3 /* 07A814 7F045CA4 1041003A */ beq $v0, $at, .Ljp7F045D90 /* 07A818 7F045CA8 24010006 */ li $at, 6 /* 07A81C 7F045CAC 50410039 */ beql $v0, $at, .Ljp7F045D94 /* 07A820 7F045CB0 8FB9060C */ lw $t9, 0x60c($sp) .Ljp7F045CB4: /* 07A824 7F045CB4 10600007 */ beqz $v1, .Ljp7F045CD4 /* 07A828 7F045CB8 00002025 */ move $a0, $zero /* 07A82C 7F045CBC 8C620004 */ lw $v0, 4($v1) /* 07A830 7F045CC0 8C580064 */ lw $t8, 0x64($v0) /* 07A834 7F045CC4 33080080 */ andi $t0, $t8, 0x80 /* 07A838 7F045CC8 11000002 */ beqz $t0, .Ljp7F045CD4 /* 07A83C 7F045CCC 00000000 */ nop /* 07A840 7F045CD0 24040001 */ li $a0, 1 .Ljp7F045CD4: /* 07A844 7F045CD4 5480002F */ bnezl $a0, .Ljp7F045D94 /* 07A848 7F045CD8 8FB9060C */ lw $t9, 0x60c($sp) /* 07A84C 7F045CDC 0FC0FF9C */ jal sub_GAME_7F03FB70 /* 07A850 7F045CE0 02002025 */ move $a0, $s0 /* 07A854 7F045CE4 8E290064 */ lw $t1, 0x64($s1) /* 07A858 7F045CE8 2401FF7F */ li $at, -129 /* 07A85C 7F045CEC AE20006C */ sw $zero, 0x6c($s1) /* 07A860 7F045CF0 01215824 */ and $t3, $t1, $at /* 07A864 7F045CF4 AE2B0064 */ sw $t3, 0x64($s1) /* 07A868 7F045CF8 92620001 */ lbu $v0, 1($s3) /* 07A86C 7F045CFC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07A870 7F045D00 240500F1 */ li $a1, 241 /* 07A874 7F045D04 304C0008 */ andi $t4, $v0, 8 /* 07A878 7F045D08 11800003 */ beqz $t4, .Ljp7F045D18 /* 07A87C 7F045D0C 00003025 */ move $a2, $zero /* 07A880 7F045D10 344E0010 */ ori $t6, $v0, 0x10 /* 07A884 7F045D14 A26E0001 */ sb $t6, 1($s3) .Ljp7F045D18: /* 07A888 7F045D18 0C002386 */ jal play_sfx_a1 /* 07A88C 7F045D1C 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07A890 7F045D20 00402025 */ move $a0, $v0 /* 07A894 7F045D24 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07A898 7F045D28 26650008 */ addiu $a1, $s3, 8 /* 07A89C 7F045D2C 8E6A0014 */ lw $t2, 0x14($s3) /* 07A8A0 7F045D30 82240080 */ lb $a0, 0x80($s1) /* 07A8A4 7F045D34 0FC15F41 */ jal sub_GAME_7F0577E8 /* 07A8A8 7F045D38 91450003 */ lbu $a1, 3($t2) /* 07A8AC 7F045D3C 02202025 */ move $a0, $s1 /* 07A8B0 7F045D40 27A5061C */ addiu $a1, $sp, 0x61c /* 07A8B4 7F045D44 8E660014 */ lw $a2, 0x14($s3) /* 07A8B8 7F045D48 0FC10F2E */ jal sub_GAME_7F0439B8 /* 07A8BC 7F045D4C 27A70628 */ addiu $a3, $sp, 0x628 /* 07A8C0 7F045D50 3C058003 */ lui $a1, %hi(D_80030B0C) # $a1, 0x8003 /* 07A8C4 7F045D54 8CA50B4C */ lw $a1, %lo(D_80030B0C)($a1) /* 07A8C8 7F045D58 02602025 */ move $a0, $s3 /* 07A8CC 7F045D5C 3C068007 */ lui $a2, %hi(objinst) # $a2, 0x8007 /* 07A8D0 7F045D60 10A0000B */ beqz $a1, .Ljp7F045D90 /* 07A8D4 7F045D64 3C078007 */ lui $a3, %hi(dword_CODE_bss_80075B74) # $a3, 0x8007 /* 07A8D8 7F045D68 8E720014 */ lw $s2, 0x14($s3) /* 07A8DC 7F045D6C 8CC65BB0 */ lw $a2, %lo(objinst)($a2) /* 07A8E0 7F045D70 0FC10F5B */ jal sub_GAME_7F043A6C /* 07A8E4 7F045D74 8CE75BB4 */ lw $a3, %lo(dword_CODE_bss_80075B74)($a3) /* 07A8E8 7F045D78 10400005 */ beqz $v0, .Ljp7F045D90 /* 07A8EC 7F045D7C 240D0005 */ li $t5, 5 /* 07A8F0 7F045D80 AE720014 */ sw $s2, 0x14($s3) /* 07A8F4 7F045D84 240F0001 */ li $t7, 1 /* 07A8F8 7F045D88 AFAD0688 */ sw $t5, 0x688($sp) /* 07A8FC 7F045D8C AFAF060C */ sw $t7, 0x60c($sp) .Ljp7F045D90: /* 07A900 7F045D90 8FB9060C */ lw $t9, 0x60c($sp) .Ljp7F045D94: /* 07A904 7F045D94 172000EC */ bnez $t9, .Ljp7F046148 /* 07A908 7F045D98 3C128003 */ lui $s2, %hi(D_80030B0C) # $s2, 0x8003 /* 07A90C 7F045D9C 8E520B4C */ lw $s2, %lo(D_80030B0C)($s2) /* 07A910 7F045DA0 524000EA */ beql $s2, $zero, .Ljp7F04614C /* 07A914 7F045DA4 8FB9060C */ lw $t9, 0x60c($sp) /* 07A918 7F045DA8 92380003 */ lbu $t8, 3($s1) /* 07A91C 7F045DAC 24010008 */ li $at, 8 /* 07A920 7F045DB0 570100E6 */ bnel $t8, $at, .Ljp7F04614C /* 07A924 7F045DB4 8FB9060C */ lw $t9, 0x60c($sp) /* 07A928 7F045DB8 82220080 */ lb $v0, 0x80($s1) /* 07A92C 7F045DBC 24010003 */ li $at, 3 /* 07A930 7F045DC0 544100C3 */ bnel $v0, $at, .Ljp7F0460D0 /* 07A934 7F045DC4 24010056 */ li $at, 86 /* 07A938 7F045DC8 92420000 */ lbu $v0, ($s2) /* 07A93C 7F045DCC 24010003 */ li $at, 3 /* 07A940 7F045DD0 1041000D */ beq $v0, $at, .Ljp7F045E08 /* 07A944 7F045DD4 24010006 */ li $at, 6 /* 07A948 7F045DD8 544100DC */ bnel $v0, $at, .Ljp7F04614C /* 07A94C 7F045DDC 8FB9060C */ lw $t9, 0x60c($sp) /* 07A950 7F045DE0 8E480004 */ lw $t0, 4($s2) /* 07A954 7F045DE4 510000D9 */ beql $t0, $zero, .Ljp7F04614C /* 07A958 7F045DE8 8FB9060C */ lw $t9, 0x60c($sp) /* 07A95C 7F045DEC 0FC26F3F */ jal sub_GAME_7F09B15C /* 07A960 7F045DF0 02402025 */ move $a0, $s2 /* 07A964 7F045DF4 0FC26F3C */ jal get_cur_playernum /* 07A968 7F045DF8 00409025 */ move $s2, $v0 /* 07A96C 7F045DFC 105200D2 */ beq $v0, $s2, .Ljp7F046148 /* 07A970 7F045E00 3C128003 */ lui $s2, %hi(D_80030B0C) # $s2, 0x8003 /* 07A974 7F045E04 8E520B4C */ lw $s2, %lo(D_80030B0C)($s2) .Ljp7F045E08: /* 07A978 7F045E08 8E22006C */ lw $v0, 0x6c($s1) /* 07A97C 7F045E0C 8E440004 */ lw $a0, 4($s2) /* 07A980 7F045E10 8C490000 */ lw $t1, ($v0) /* 07A984 7F045E14 312B0001 */ andi $t3, $t1, 1 /* 07A988 7F045E18 516000CC */ beql $t3, $zero, .Ljp7F04614C /* 07A98C 7F045E1C 8FB9060C */ lw $t9, 0x60c($sp) /* 07A990 7F045E20 8C4C0090 */ lw $t4, 0x90($v0) /* 07A994 7F045E24 5D8000C9 */ bgtzl $t4, .Ljp7F04614C /* 07A998 7F045E28 8FB9060C */ lw $t9, 0x60c($sp) /* 07A99C 7F045E2C 8E2E0064 */ lw $t6, 0x64($s1) /* 07A9A0 7F045E30 3C068007 */ lui $a2, %hi(flt_CODE_bss_80075B78) # $a2, 0x8007 /* 07A9A4 7F045E34 24C65BB8 */ addiu $a2, %lo(flt_CODE_bss_80075B78) # addiu $a2, $a2, 0x5bb8 /* 07A9A8 7F045E38 31CA0020 */ andi $t2, $t6, 0x20 /* 07A9AC 7F045E3C 114000C2 */ beqz $t2, .Ljp7F046148 /* 07A9B0 7F045E40 3C058003 */ lui $a1, %hi(bodypartshot) # $a1, 0x8003 /* 07A9B4 7F045E44 82270080 */ lb $a3, 0x80($s1) /* 07A9B8 7F045E48 240D0001 */ li $t5, 1 /* 07A9BC 7F045E4C AFAD0010 */ sw $t5, 0x10($sp) /* 07A9C0 7F045E50 0FC09D61 */ jal handles_shot_actors /* 07A9C4 7F045E54 8CA50B50 */ lw $a1, %lo(bodypartshot)($a1) /* 07A9C8 7F045E58 104000BB */ beqz $v0, .Ljp7F046148 /* 07A9CC 7F045E5C 240F0001 */ li $t7, 1 /* 07A9D0 7F045E60 AFAF060C */ sw $t7, 0x60c($sp) /* 07A9D4 7F045E64 C610008C */ lwc1 $f16, 0x8c($s0) /* 07A9D8 7F045E68 C7AA0628 */ lwc1 $f10, 0x628($sp) /* 07A9DC 7F045E6C 4610B03C */ c.lt.s $f22, $f16 /* 07A9E0 7F045E70 00000000 */ nop /* 07A9E4 7F045E74 4502001D */ bc1fl .Ljp7F045EEC /* 07A9E8 7F045E78 8E190000 */ lw $t9, ($s0) /* 07A9EC 7F045E7C C6020004 */ lwc1 $f2, 4($s0) /* 07A9F0 7F045E80 C60C0008 */ lwc1 $f12, 8($s0) /* 07A9F4 7F045E84 C7A4062C */ lwc1 $f4, 0x62c($sp) /* 07A9F8 7F045E88 460A1182 */ mul.s $f6, $f2, $f10 /* 07A9FC 7F045E8C C600000C */ lwc1 $f0, 0xc($s0) /* 07AA00 7F045E90 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AA04 7F045E94 46046202 */ mul.s $f8, $f12, $f4 /* 07AA08 7F045E98 46083100 */ add.s $f4, $f6, $f8 /* 07AA0C 7F045E9C C7A60630 */ lwc1 $f6, 0x630($sp) /* 07AA10 7F045EA0 46003202 */ mul.s $f8, $f6, $f0 /* 07AA14 7F045EA4 44813000 */ mtc1 $at, $f6 /* 07AA18 7F045EA8 46044380 */ add.s $f14, $f8, $f4 /* 07AA1C 7F045EAC 46068200 */ add.s $f8, $f16, $f6 /* 07AA20 7F045EB0 46004107 */ neg.s $f4, $f8 /* 07AA24 7F045EB4 46047382 */ mul.s $f14, $f14, $f4 /* 07AA28 7F045EB8 00000000 */ nop /* 07AA2C 7F045EBC 460A7182 */ mul.s $f6, $f14, $f10 /* 07AA30 7F045EC0 46061200 */ add.s $f8, $f2, $f6 /* 07AA34 7F045EC4 E6080004 */ swc1 $f8, 4($s0) /* 07AA38 7F045EC8 C7A4062C */ lwc1 $f4, 0x62c($sp) /* 07AA3C 7F045ECC 46047282 */ mul.s $f10, $f14, $f4 /* 07AA40 7F045ED0 460A6180 */ add.s $f6, $f12, $f10 /* 07AA44 7F045ED4 E6060008 */ swc1 $f6, 8($s0) /* 07AA48 7F045ED8 C7A80630 */ lwc1 $f8, 0x630($sp) /* 07AA4C 7F045EDC 46087102 */ mul.s $f4, $f14, $f8 /* 07AA50 7F045EE0 46040280 */ add.s $f10, $f0, $f4 /* 07AA54 7F045EE4 E60A000C */ swc1 $f10, 0xc($s0) /* 07AA58 7F045EE8 8E190000 */ lw $t9, ($s0) .Ljp7F045EEC: /* 07AA5C 7F045EEC 33380200 */ andi $t8, $t9, 0x200 /* 07AA60 7F045EF0 57000004 */ bnezl $t8, .Ljp7F045F04 /* 07AA64 7F045EF4 8E080090 */ lw $t0, 0x90($s0) /* 07AA68 7F045EF8 0FC15FF8 */ jal sub_GAME_7F057AC0 /* 07AA6C 7F045EFC 8FA40070 */ lw $a0, 0x70($sp) /* 07AA70 7F045F00 8E080090 */ lw $t0, 0x90($s0) .Ljp7F045F04: /* 07AA74 7F045F04 3C058003 */ lui $a1, %hi(D_80030B0C) # $a1, 0x8003 /* 07AA78 7F045F08 2406FFFF */ li $a2, -1 /* 07AA7C 7F045F0C 25090001 */ addiu $t1, $t0, 1 /* 07AA80 7F045F10 AE090090 */ sw $t1, 0x90($s0) /* 07AA84 7F045F14 8CA50B4C */ lw $a1, %lo(D_80030B0C)($a1) /* 07AA88 7F045F18 0FC19252 */ jal recall_joy2_hits_edit_detail_edit_flag /* 07AA8C 7F045F1C 82240080 */ lb $a0, 0x80($s1) /* 07AA90 7F045F20 3C0B8003 */ lui $t3, %hi(D_80030B0C) # $t3, 0x8003 /* 07AA94 7F045F24 8D6B0B4C */ lw $t3, %lo(D_80030B0C)($t3) /* 07AA98 7F045F28 3C028003 */ lui $v0, %hi(bodypartshot) # $v0, 0x8003 /* 07AA9C 7F045F2C 916C0001 */ lbu $t4, 1($t3) /* 07AAA0 7F045F30 318E0002 */ andi $t6, $t4, 2 /* 07AAA4 7F045F34 51C00085 */ beql $t6, $zero, .Ljp7F04614C /* 07AAA8 7F045F38 8FB9060C */ lw $t9, 0x60c($sp) /* 07AAAC 7F045F3C 8C420B50 */ lw $v0, %lo(bodypartshot)($v0) /* 07AAB0 7F045F40 24010064 */ li $at, 100 /* 07AAB4 7F045F44 10410080 */ beq $v0, $at, .Ljp7F046148 /* 07AAB8 7F045F48 2401006E */ li $at, 110 /* 07AABC 7F045F4C 1041007E */ beq $v0, $at, .Ljp7F046148 /* 07AAC0 7F045F50 3C048007 */ lui $a0, %hi(objinst) # $a0, 0x8007 /* 07AAC4 7F045F54 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) # $a1, 0x8007 /* 07AAC8 7F045F58 8CA55BB4 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07AACC 7F045F5C 8C845BB0 */ lw $a0, %lo(objinst)($a0) /* 07AAD0 7F045F60 0FC1B314 */ jal sub_GAME_7F06C660 /* 07AAD4 7F045F64 00003025 */ move $a2, $zero /* 07AAD8 7F045F68 C7A6061C */ lwc1 $f6, 0x61c($sp) /* 07AADC 7F045F6C C7A80620 */ lwc1 $f8, 0x620($sp) /* 07AAE0 7F045F70 C7A40624 */ lwc1 $f4, 0x624($sp) /* 07AAE4 7F045F74 00409025 */ move $s2, $v0 /* 07AAE8 7F045F78 E7A605D4 */ swc1 $f6, 0x5d4($sp) /* 07AAEC 7F045F7C E7A805D8 */ swc1 $f8, 0x5d8($sp) /* 07AAF0 7F045F80 0FC1E26D */ jal get_BONDdata_field_10CC /* 07AAF4 7F045F84 E7A405DC */ swc1 $f4, 0x5dc($sp) /* 07AAF8 7F045F88 00402025 */ move $a0, $v0 /* 07AAFC 7F045F8C 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 07AB00 7F045F90 27A505D4 */ addiu $a1, $sp, 0x5d4 /* 07AB04 7F045F94 C7AA05D4 */ lwc1 $f10, 0x5d4($sp) /* 07AB08 7F045F98 C6460030 */ lwc1 $f6, 0x30($s2) /* 07AB0C 7F045F9C 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07AB10 7F045FA0 44810000 */ mtc1 $at, $f0 /* 07AB14 7F045FA4 46065201 */ sub.s $f8, $f10, $f6 /* 07AB18 7F045FA8 3C048007 */ lui $a0, %hi(objinst) # $a0, 0x8007 /* 07AB1C 7F045FAC 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) # $a1, 0x8007 /* 07AB20 7F045FB0 8CA55BB4 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07AB24 7F045FB4 46004102 */ mul.s $f4, $f8, $f0 /* 07AB28 7F045FB8 C7A805D8 */ lwc1 $f8, 0x5d8($sp) /* 07AB2C 7F045FBC 8C845BB0 */ lw $a0, %lo(objinst)($a0) /* 07AB30 7F045FC0 46045180 */ add.s $f6, $f10, $f4 /* 07AB34 7F045FC4 E7A605D4 */ swc1 $f6, 0x5d4($sp) /* 07AB38 7F045FC8 C64A0034 */ lwc1 $f10, 0x34($s2) /* 07AB3C 7F045FCC 460A4101 */ sub.s $f4, $f8, $f10 /* 07AB40 7F045FD0 46002182 */ mul.s $f6, $f4, $f0 /* 07AB44 7F045FD4 C7A405DC */ lwc1 $f4, 0x5dc($sp) /* 07AB48 7F045FD8 46064280 */ add.s $f10, $f8, $f6 /* 07AB4C 7F045FDC E7AA05D8 */ swc1 $f10, 0x5d8($sp) /* 07AB50 7F045FE0 C6480038 */ lwc1 $f8, 0x38($s2) /* 07AB54 7F045FE4 46082181 */ sub.s $f6, $f4, $f8 /* 07AB58 7F045FE8 46003282 */ mul.s $f10, $f6, $f0 /* 07AB5C 7F045FEC 460A2200 */ add.s $f8, $f4, $f10 /* 07AB60 7F045FF0 0FC1B520 */ jal getjointsize /* 07AB64 7F045FF4 E7A805DC */ swc1 $f8, 0x5dc($sp) /* 07AB68 7F045FF8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07AB6C 7F045FFC 44813000 */ mtc1 $at, $f6 /* 07AB70 7F046000 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B88) # $at, 0x8007 /* 07AB74 7F046004 C42A5BC8 */ lwc1 $f10, %lo(flt_CODE_bss_80075B88)($at) /* 07AB78 7F046008 46060102 */ mul.s $f4, $f0, $f6 /* 07AB7C 7F04600C C7A605D4 */ lwc1 $f6, 0x5d4($sp) /* 07AB80 7F046010 3C048007 */ lui $a0, %hi(objinst) # $a0, 0x8007 /* 07AB84 7F046014 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) # $a1, 0x8007 /* 07AB88 7F046018 8CA55BB4 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07AB8C 7F04601C 8C845BB0 */ lw $a0, %lo(objinst)($a0) /* 07AB90 7F046020 460A2202 */ mul.s $f8, $f4, $f10 /* 07AB94 7F046024 46083101 */ sub.s $f4, $f6, $f8 /* 07AB98 7F046028 0FC1B520 */ jal getjointsize /* 07AB9C 7F04602C E7A405D4 */ swc1 $f4, 0x5d4($sp) /* 07ABA0 7F046030 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07ABA4 7F046034 44815000 */ mtc1 $at, $f10 /* 07ABA8 7F046038 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B8C) # $at, 0x8007 /* 07ABAC 7F04603C C4285BCC */ lwc1 $f8, %lo(flt_CODE_bss_80075B8C)($at) /* 07ABB0 7F046040 460A0182 */ mul.s $f6, $f0, $f10 /* 07ABB4 7F046044 C7AA05D8 */ lwc1 $f10, 0x5d8($sp) /* 07ABB8 7F046048 3C048007 */ lui $a0, %hi(objinst) # $a0, 0x8007 /* 07ABBC 7F04604C 3C058007 */ lui $a1, %hi(dword_CODE_bss_80075B74) # $a1, 0x8007 /* 07ABC0 7F046050 8CA55BB4 */ lw $a1, %lo(dword_CODE_bss_80075B74)($a1) /* 07ABC4 7F046054 8C845BB0 */ lw $a0, %lo(objinst)($a0) /* 07ABC8 7F046058 46083102 */ mul.s $f4, $f6, $f8 /* 07ABCC 7F04605C 46045181 */ sub.s $f6, $f10, $f4 /* 07ABD0 7F046060 0FC1B520 */ jal getjointsize /* 07ABD4 7F046064 E7A605D8 */ swc1 $f6, 0x5d8($sp) /* 07ABD8 7F046068 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07ABDC 7F04606C 44814000 */ mtc1 $at, $f8 /* 07ABE0 7F046070 3C018007 */ lui $at, %hi(flt_CODE_bss_80075B90) # $at, 0x8007 /* 07ABE4 7F046074 C4245BD0 */ lwc1 $f4, %lo(flt_CODE_bss_80075B90)($at) /* 07ABE8 7F046078 46080282 */ mul.s $f10, $f0, $f8 /* 07ABEC 7F04607C C7A805DC */ lwc1 $f8, 0x5dc($sp) /* 07ABF0 7F046080 02402025 */ move $a0, $s2 /* 07ABF4 7F046084 27A50594 */ addiu $a1, $sp, 0x594 /* 07ABF8 7F046088 46045182 */ mul.s $f6, $f10, $f4 /* 07ABFC 7F04608C 46064281 */ sub.s $f10, $f8, $f6 /* 07AC00 7F046090 0FC168E1 */ jal sub_GAME_7F059E64 /* 07AC04 7F046094 E7AA05DC */ swc1 $f10, 0x5dc($sp) /* 07AC08 7F046098 27A40594 */ addiu $a0, $sp, 0x594 /* 07AC0C 7F04609C 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 07AC10 7F0460A0 27A505D4 */ addiu $a1, $sp, 0x5d4 /* 07AC14 7F0460A4 3C048007 */ lui $a0, %hi(objinst) # $a0, 0x8007 /* 07AC18 7F0460A8 3C058003 */ lui $a1, %hi(bodypartshot) # $a1, 0x8003 /* 07AC1C 7F0460AC 3C068007 */ lui $a2, %hi(dword_CODE_bss_80075B74) # $a2, 0x8007 /* 07AC20 7F0460B0 8CC65BB4 */ lw $a2, %lo(dword_CODE_bss_80075B74)($a2) /* 07AC24 7F0460B4 8CA50B50 */ lw $a1, %lo(bodypartshot)($a1) /* 07AC28 7F0460B8 8C845BB0 */ lw $a0, %lo(objinst)($a0) /* 07AC2C 7F0460BC 0FC08931 */ jal sub_GAME_7F0221DC /* 07AC30 7F0460C0 27A705D4 */ addiu $a3, $sp, 0x5d4 /* 07AC34 7F0460C4 10000021 */ b .Ljp7F04614C /* 07AC38 7F0460C8 8FB9060C */ lw $t9, 0x60c($sp) /* 07AC3C 7F0460CC 24010056 */ li $at, 86 .Ljp7F0460D0: /* 07AC40 7F0460D0 5441001E */ bnel $v0, $at, .Ljp7F04614C /* 07AC44 7F0460D4 8FB9060C */ lw $t9, 0x60c($sp) /* 07AC48 7F0460D8 92420000 */ lbu $v0, ($s2) /* 07AC4C 7F0460DC 240A0001 */ li $t2, 1 /* 07AC50 7F0460E0 24010003 */ li $at, 3 /* 07AC54 7F0460E4 14410008 */ bne $v0, $at, .Ljp7F046108 /* 07AC58 7F0460E8 AFAA060C */ sw $t2, 0x60c($sp) /* 07AC5C 7F0460EC 8E440004 */ lw $a0, 4($s2) /* 07AC60 7F0460F0 26250058 */ addiu $a1, $s1, 0x58 /* 07AC64 7F0460F4 3C064000 */ lui $a2, 0x4000 /* 07AC68 7F0460F8 0FC09EC3 */ jal sub_GAME_7F027804 /* 07AC6C 7F0460FC 24070001 */ li $a3, 1 /* 07AC70 7F046100 10000011 */ b .Ljp7F046148 /* 07AC74 7F046104 A6200082 */ sh $zero, 0x82($s1) .Ljp7F046108: /* 07AC78 7F046108 24010001 */ li $at, 1 /* 07AC7C 7F04610C 10410004 */ beq $v0, $at, .Ljp7F046120 /* 07AC80 7F046110 3C0542C8 */ lui $a1, 0x42c8 /* 07AC84 7F046114 24010004 */ li $at, 4 /* 07AC88 7F046118 5441000B */ bnel $v0, $at, .Ljp7F046148 /* 07AC8C 7F04611C A6200082 */ sh $zero, 0x82($s1) .Ljp7F046120: /* 07AC90 7F046120 8E220064 */ lw $v0, 0x64($s1) /* 07AC94 7F046124 3C010006 */ lui $at, 6 /* 07AC98 7F046128 8E440004 */ lw $a0, 4($s2) /* 07AC9C 7F04612C 00416824 */ and $t5, $v0, $at /* 07ACA0 7F046130 000D7C42 */ srl $t7, $t5, 0x11 /* 07ACA4 7F046134 AFAF0010 */ sw $t7, 0x10($sp) /* 07ACA8 7F046138 26260058 */ addiu $a2, $s1, 0x58 /* 07ACAC 7F04613C 0FC13943 */ jal maybe_detonate_object /* 07ACB0 7F046140 24070056 */ li $a3, 86 /* 07ACB4 7F046144 A6200082 */ sh $zero, 0x82($s1) .Ljp7F046148: /* 07ACB8 7F046148 8FB9060C */ lw $t9, 0x60c($sp) .Ljp7F04614C: /* 07ACBC 7F04614C 5720010B */ bnezl $t9, .Ljp7F04657C /* 07ACC0 7F046150 8E2F0064 */ lw $t7, 0x64($s1) /* 07ACC4 7F046154 8FB8066C */ lw $t8, 0x66c($sp) /* 07ACC8 7F046158 57000031 */ bnezl $t8, .Ljp7F046220 /* 07ACCC 7F04615C 8E090000 */ lw $t1, ($s0) /* 07ACD0 7F046160 C610008C */ lwc1 $f16, 0x8c($s0) /* 07ACD4 7F046164 C7A40628 */ lwc1 $f4, 0x628($sp) /* 07ACD8 7F046168 4610B03C */ c.lt.s $f22, $f16 /* 07ACDC 7F04616C 00000000 */ nop /* 07ACE0 7F046170 4502002B */ bc1fl .Ljp7F046220 /* 07ACE4 7F046174 8E090000 */ lw $t1, ($s0) /* 07ACE8 7F046178 C6020004 */ lwc1 $f2, 4($s0) /* 07ACEC 7F04617C C60C0008 */ lwc1 $f12, 8($s0) /* 07ACF0 7F046180 C7A6062C */ lwc1 $f6, 0x62c($sp) /* 07ACF4 7F046184 46041202 */ mul.s $f8, $f2, $f4 /* 07ACF8 7F046188 C600000C */ lwc1 $f0, 0xc($s0) /* 07ACFC 7F04618C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07AD00 7F046190 46066282 */ mul.s $f10, $f12, $f6 /* 07AD04 7F046194 4616603E */ c.le.s $f12, $f22 /* 07AD08 7F046198 460A4180 */ add.s $f6, $f8, $f10 /* 07AD0C 7F04619C C7A80630 */ lwc1 $f8, 0x630($sp) /* 07AD10 7F0461A0 46004282 */ mul.s $f10, $f8, $f0 /* 07AD14 7F0461A4 44814000 */ mtc1 $at, $f8 /* 07AD18 7F0461A8 46065380 */ add.s $f14, $f10, $f6 /* 07AD1C 7F0461AC 46088280 */ add.s $f10, $f16, $f8 /* 07AD20 7F0461B0 46005187 */ neg.s $f6, $f10 /* 07AD24 7F0461B4 46067382 */ mul.s $f14, $f14, $f6 /* 07AD28 7F0461B8 00000000 */ nop /* 07AD2C 7F0461BC 46047202 */ mul.s $f8, $f14, $f4 /* 07AD30 7F0461C0 46081280 */ add.s $f10, $f2, $f8 /* 07AD34 7F0461C4 E60A0004 */ swc1 $f10, 4($s0) /* 07AD38 7F0461C8 C7A6062C */ lwc1 $f6, 0x62c($sp) /* 07AD3C 7F0461CC 46067102 */ mul.s $f4, $f14, $f6 /* 07AD40 7F0461D0 46046200 */ add.s $f8, $f12, $f4 /* 07AD44 7F0461D4 E6080008 */ swc1 $f8, 8($s0) /* 07AD48 7F0461D8 C7AA0630 */ lwc1 $f10, 0x630($sp) /* 07AD4C 7F0461DC 460A7182 */ mul.s $f6, $f14, $f10 /* 07AD50 7F0461E0 46060100 */ add.s $f4, $f0, $f6 /* 07AD54 7F0461E4 4500000D */ bc1f .Ljp7F04621C /* 07AD58 7F0461E8 E604000C */ swc1 $f4, 0xc($s0) /* 07AD5C 7F0461EC C6080008 */ lwc1 $f8, 8($s0) /* 07AD60 7F0461F0 24080001 */ li $t0, 1 /* 07AD64 7F0461F4 4608B03E */ c.le.s $f22, $f8 /* 07AD68 7F0461F8 00000000 */ nop /* 07AD6C 7F0461FC 45030007 */ bc1tl .Ljp7F04621C /* 07AD70 7F046200 AFA80614 */ sw $t0, 0x614($sp) /* 07AD74 7F046204 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07AD78 7F046208 460AA03E */ c.le.s $f20, $f10 /* 07AD7C 7F04620C 00000000 */ nop /* 07AD80 7F046210 45020003 */ bc1fl .Ljp7F046220 /* 07AD84 7F046214 8E090000 */ lw $t1, ($s0) /* 07AD88 7F046218 AFA80614 */ sw $t0, 0x614($sp) .Ljp7F04621C: /* 07AD8C 7F04621C 8E090000 */ lw $t1, ($s0) .Ljp7F046220: /* 07AD90 7F046220 C7B40644 */ lwc1 $f20, 0x644($sp) /* 07AD94 7F046224 312B0008 */ andi $t3, $t1, 8 /* 07AD98 7F046228 15600014 */ bnez $t3, .Ljp7F04627C /* 07AD9C 7F04622C 00000000 */ nop /* 07ADA0 7F046230 8E640014 */ lw $a0, 0x14($s3) /* 07ADA4 7F046234 8E650008 */ lw $a1, 8($s3) /* 07ADA8 7F046238 0FC2CD48 */ jal sub_GAME_7F0B2970 /* 07ADAC 7F04623C 8E660010 */ lw $a2, 0x10($s3) /* 07ADB0 7F046240 46000506 */ mov.s $f20, $f0 /* 07ADB4 7F046244 8FA40648 */ lw $a0, 0x648($sp) /* 07ADB8 7F046248 0FC0FB2F */ jal sub_GAME_7F03E9BC /* 07ADBC 7F04624C 8FA50074 */ lw $a1, 0x74($sp) /* 07ADC0 7F046250 4600A101 */ sub.s $f4, $f20, $f0 /* 07ADC4 7F046254 E7A00640 */ swc1 $f0, 0x640($sp) /* 07ADC8 7F046258 C666000C */ lwc1 $f6, 0xc($s3) /* 07ADCC 7F04625C 00006025 */ move $t4, $zero /* 07ADD0 7F046260 4604303C */ c.lt.s $f6, $f4 /* 07ADD4 7F046264 00000000 */ nop /* 07ADD8 7F046268 45000002 */ bc1f .Ljp7F046274 /* 07ADDC 7F04626C 00000000 */ nop /* 07ADE0 7F046270 240C0001 */ li $t4, 1 .Ljp7F046274: /* 07ADE4 7F046274 10000001 */ b .Ljp7F04627C /* 07ADE8 7F046278 AFAC0618 */ sw $t4, 0x618($sp) .Ljp7F04627C: /* 07ADEC 7F04627C 8FAE0618 */ lw $t6, 0x618($sp) /* 07ADF0 7F046280 8FAA066C */ lw $t2, 0x66c($sp) /* 07ADF4 7F046284 55C00004 */ bnezl $t6, .Ljp7F046298 /* 07ADF8 7F046288 8E0D0000 */ lw $t5, ($s0) /* 07ADFC 7F04628C 5540000B */ bnezl $t2, .Ljp7F0462BC /* 07AE00 7F046290 8FA80618 */ lw $t0, 0x618($sp) /* 07AE04 7F046294 8E0D0000 */ lw $t5, ($s0) .Ljp7F046298: /* 07AE08 7F046298 31AF0200 */ andi $t7, $t5, 0x200 /* 07AE0C 7F04629C 55E00004 */ bnezl $t7, .Ljp7F0462B0 /* 07AE10 7F0462A0 8E190090 */ lw $t9, 0x90($s0) /* 07AE14 7F0462A4 0FC15FF8 */ jal sub_GAME_7F057AC0 /* 07AE18 7F0462A8 8FA40070 */ lw $a0, 0x70($sp) /* 07AE1C 7F0462AC 8E190090 */ lw $t9, 0x90($s0) .Ljp7F0462B0: /* 07AE20 7F0462B0 27380001 */ addiu $t8, $t9, 1 /* 07AE24 7F0462B4 AE180090 */ sw $t8, 0x90($s0) /* 07AE28 7F0462B8 8FA80618 */ lw $t0, 0x618($sp) .Ljp7F0462BC: /* 07AE2C 7F0462BC 8FA90614 */ lw $t1, 0x614($sp) /* 07AE30 7F0462C0 8FAB0618 */ lw $t3, 0x618($sp) /* 07AE34 7F0462C4 15000003 */ bnez $t0, .Ljp7F0462D4 /* 07AE38 7F0462C8 00000000 */ nop /* 07AE3C 7F0462CC 5120003A */ beql $t1, $zero, .Ljp7F0463B8 /* 07AE40 7F0462D0 92390003 */ lbu $t9, 3($s1) .Ljp7F0462D4: /* 07AE44 7F0462D4 11600009 */ beqz $t3, .Ljp7F0462FC /* 07AE48 7F0462D8 C7A40620 */ lwc1 $f4, 0x620($sp) /* 07AE4C 7F0462DC C7A80640 */ lwc1 $f8, 0x640($sp) /* 07AE50 7F0462E0 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07AE54 7F0462E4 44813000 */ mtc1 $at, $f6 /* 07AE58 7F0462E8 4608A281 */ sub.s $f10, $f20, $f8 /* 07AE5C 7F0462EC 46065000 */ add.s $f0, $f10, $f6 /* 07AE60 7F0462F0 E660000C */ swc1 $f0, 0xc($s3) /* 07AE64 7F0462F4 10000008 */ b .Ljp7F046318 /* 07AE68 7F0462F8 E620005C */ swc1 $f0, 0x5c($s1) .Ljp7F0462FC: /* 07AE6C 7F0462FC C7A80640 */ lwc1 $f8, 0x640($sp) /* 07AE70 7F046300 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07AE74 7F046304 44813000 */ mtc1 $at, $f6 /* 07AE78 7F046308 46082281 */ sub.s $f10, $f4, $f8 /* 07AE7C 7F04630C 46065080 */ add.s $f2, $f10, $f6 /* 07AE80 7F046310 E662000C */ swc1 $f2, 0xc($s3) /* 07AE84 7F046314 E622005C */ swc1 $f2, 0x5c($s1) .Ljp7F046318: /* 07AE88 7F046318 8E230064 */ lw $v1, 0x64($s1) /* 07AE8C 7F04631C 02202025 */ move $a0, $s1 /* 07AE90 7F046320 000363C0 */ sll $t4, $v1, 0xf /* 07AE94 7F046324 05800002 */ bltz $t4, .Ljp7F046330 /* 07AE98 7F046328 346E0100 */ ori $t6, $v1, 0x100 /* 07AE9C 7F04632C AE2E0064 */ sw $t6, 0x64($s1) .Ljp7F046330: /* 07AEA0 7F046330 C610008C */ lwc1 $f16, 0x8c($s0) /* 07AEA4 7F046334 4610B03C */ c.lt.s $f22, $f16 /* 07AEA8 7F046338 00000000 */ nop /* 07AEAC 7F04633C 4500001B */ bc1f .Ljp7F0463AC /* 07AEB0 7F046340 00000000 */ nop /* 07AEB4 7F046344 C6040008 */ lwc1 $f4, 8($s0) /* 07AEB8 7F046348 46008207 */ neg.s $f8, $f16 /* 07AEBC 7F04634C 3C018005 */ lui $at, %hi(D_80052AA8) # $at, 0x8005 /* 07AEC0 7F046350 46082282 */ mul.s $f10, $f4, $f8 /* 07AEC4 7F046354 C4202AD8 */ lwc1 $f0, %lo(D_80052AA8)($at) /* 07AEC8 7F046358 E60A0008 */ swc1 $f10, 8($s0) /* 07AECC 7F04635C C6060008 */ lwc1 $f6, 8($s0) /* 07AED0 7F046360 4600303C */ c.lt.s $f6, $f0 /* 07AED4 7F046364 00000000 */ nop /* 07AED8 7F046368 45020013 */ bc1fl .Ljp7F0463B8 /* 07AEDC 7F04636C 92390003 */ lbu $t9, 3($s1) /* 07AEE0 7F046370 8E0A0000 */ lw $t2, ($s0) /* 07AEE4 7F046374 02202025 */ move $a0, $s1 /* 07AEE8 7F046378 314D0002 */ andi $t5, $t2, 2 /* 07AEEC 7F04637C 11A00007 */ beqz $t5, .Ljp7F04639C /* 07AEF0 7F046380 00000000 */ nop /* 07AEF4 7F046384 8E0F0090 */ lw $t7, 0x90($s0) /* 07AEF8 7F046388 24010001 */ li $at, 1 /* 07AEFC 7F04638C 15E10003 */ bne $t7, $at, .Ljp7F04639C /* 07AF00 7F046390 00000000 */ nop /* 07AF04 7F046394 10000007 */ b .Ljp7F0463B4 /* 07AF08 7F046398 E6000008 */ swc1 $f0, 8($s0) .Ljp7F04639C: /* 07AF0C 7F04639C 0FC10D39 */ jal sub_GAME_7F0431E4 /* 07AF10 7F0463A0 27A50634 */ addiu $a1, $sp, 0x634 /* 07AF14 7F0463A4 10000004 */ b .Ljp7F0463B8 /* 07AF18 7F0463A8 92390003 */ lbu $t9, 3($s1) .Ljp7F0463AC: /* 07AF1C 7F0463AC 0FC10D39 */ jal sub_GAME_7F0431E4 /* 07AF20 7F0463B0 27A50634 */ addiu $a1, $sp, 0x634 .Ljp7F0463B4: /* 07AF24 7F0463B4 92390003 */ lbu $t9, 3($s1) .Ljp7F0463B8: /* 07AF28 7F0463B8 24010008 */ li $at, 8 /* 07AF2C 7F0463BC 5721006F */ bnel $t9, $at, .Ljp7F04657C /* 07AF30 7F0463C0 8E2F0064 */ lw $t7, 0x64($s1) /* 07AF34 7F0463C4 82220080 */ lb $v0, 0x80($s1) /* 07AF38 7F0463C8 24010003 */ li $at, 3 /* 07AF3C 7F0463CC 54410006 */ bnel $v0, $at, .Ljp7F0463E8 /* 07AF40 7F0463D0 24010056 */ li $at, 86 /* 07AF44 7F0463D4 0FC10E54 */ jal sub_GAME_7F043650 /* 07AF48 7F0463D8 02202025 */ move $a0, $s1 /* 07AF4C 7F0463DC 10000042 */ b .Ljp7F0464E8 /* 07AF50 7F0463E0 8FAB066C */ lw $t3, 0x66c($sp) /* 07AF54 7F0463E4 24010056 */ li $at, 86 .Ljp7F0463E8: /* 07AF58 7F0463E8 1441002D */ bne $v0, $at, .Ljp7F0464A0 /* 07AF5C 7F0463EC 8FB8066C */ lw $t8, 0x66c($sp) /* 07AF60 7F0463F0 13000003 */ beqz $t8, .Ljp7F046400 /* 07AF64 7F0463F4 8FA80618 */ lw $t0, 0x618($sp) /* 07AF68 7F0463F8 51000004 */ beql $t0, $zero, .Ljp7F04640C /* 07AF6C 7F0463FC C6020004 */ lwc1 $f2, 4($s0) .Ljp7F046400: /* 07AF70 7F046400 10000038 */ b .Ljp7F0464E4 /* 07AF74 7F046404 A6200082 */ sh $zero, 0x82($s1) /* 07AF78 7F046408 C6020004 */ lwc1 $f2, 4($s0) .Ljp7F04640C: /* 07AF7C 7F04640C C60C0008 */ lwc1 $f12, 8($s0) /* 07AF80 7F046410 C600000C */ lwc1 $f0, 0xc($s0) /* 07AF84 7F046414 46021102 */ mul.s $f4, $f2, $f2 /* 07AF88 7F046418 3C018005 */ lui $at, %hi(D_80052AAC) /* 07AF8C 7F04641C 26240058 */ addiu $a0, $s1, 0x58 /* 07AF90 7F046420 460C6202 */ mul.s $f8, $f12, $f12 /* 07AF94 7F046424 24060008 */ li $a2, 8 /* 07AF98 7F046428 46000182 */ mul.s $f6, $f0, $f0 /* 07AF9C 7F04642C 46082280 */ add.s $f10, $f4, $f8 /* 07AFA0 7F046430 C4242ADC */ lwc1 $f4, %lo(D_80052AAC)($at) /* 07AFA4 7F046434 460A3380 */ add.s $f14, $f6, $f10 /* 07AFA8 7F046438 460E203C */ c.lt.s $f4, $f14 /* 07AFAC 7F04643C 00000000 */ nop /* 07AFB0 7F046440 45020005 */ bc1fl .Ljp7F046458 /* 07AFB4 7F046444 8E0900A8 */ lw $t1, 0xa8($s0) /* 07AFB8 7F046448 E6160010 */ swc1 $f22, 0x10($s0) /* 07AFBC 7F04644C E6160014 */ swc1 $f22, 0x14($s0) /* 07AFC0 7F046450 E6160018 */ swc1 $f22, 0x18($s0) /* 07AFC4 7F046454 8E0900A8 */ lw $t1, 0xa8($s0) .Ljp7F046458: /* 07AFC8 7F046458 2921012D */ slti $at, $t1, 0x12d /* 07AFCC 7F04645C 54200008 */ bnezl $at, .Ljp7F046480 /* 07AFD0 7F046460 926E0001 */ lbu $t6, 1($s3) /* 07AFD4 7F046464 8E0B0000 */ lw $t3, ($s0) /* 07AFD8 7F046468 2401FFCF */ li $at, -49 /* 07AFDC 7F04646C E616001C */ swc1 $f22, 0x1c($s0) /* 07AFE0 7F046470 01616024 */ and $t4, $t3, $at /* 07AFE4 7F046474 1000001B */ b .Ljp7F0464E4 /* 07AFE8 7F046478 AE0C0000 */ sw $t4, ($s0) /* 07AFEC 7F04647C 926E0001 */ lbu $t6, 1($s3) .Ljp7F046480: /* 07AFF0 7F046480 8E650014 */ lw $a1, 0x14($s3) /* 07AFF4 7F046484 2667002C */ addiu $a3, $s3, 0x2c /* 07AFF8 7F046488 31CA0008 */ andi $t2, $t6, 8 /* 07AFFC 7F04648C 000A682B */ sltu $t5, $zero, $t2 /* 07B000 7F046490 0FC27CA9 */ jal sub_GAME_7F09E700 /* 07B004 7F046494 AFAD0010 */ sw $t5, 0x10($sp) /* 07B008 7F046498 10000013 */ b .Ljp7F0464E8 /* 07B00C 7F04649C 8FAB066C */ lw $t3, 0x66c($sp) .Ljp7F0464A0: /* 07B010 7F0464A0 24010057 */ li $at, 87 /* 07B014 7F0464A4 1441000F */ bne $v0, $at, .Ljp7F0464E4 /* 07B018 7F0464A8 8FAF0618 */ lw $t7, 0x618($sp) /* 07B01C 7F0464AC 15E00003 */ bnez $t7, .Ljp7F0464BC /* 07B020 7F0464B0 8FB90614 */ lw $t9, 0x614($sp) /* 07B024 7F0464B4 13200003 */ beqz $t9, .Ljp7F0464C4 /* 07B028 7F0464B8 26240058 */ addiu $a0, $s1, 0x58 .Ljp7F0464BC: /* 07B02C 7F0464BC 10000009 */ b .Ljp7F0464E4 /* 07B030 7F0464C0 A6200082 */ sh $zero, 0x82($s1) .Ljp7F0464C4: /* 07B034 7F0464C4 92780001 */ lbu $t8, 1($s3) /* 07B038 7F0464C8 8E650014 */ lw $a1, 0x14($s3) /* 07B03C 7F0464CC 24060009 */ li $a2, 9 /* 07B040 7F0464D0 33080008 */ andi $t0, $t8, 8 /* 07B044 7F0464D4 0008482B */ sltu $t1, $zero, $t0 /* 07B048 7F0464D8 AFA90010 */ sw $t1, 0x10($sp) /* 07B04C 7F0464DC 0FC27CA9 */ jal sub_GAME_7F09E700 /* 07B050 7F0464E0 2667002C */ addiu $a3, $s3, 0x2c .Ljp7F0464E4: /* 07B054 7F0464E4 8FAB066C */ lw $t3, 0x66c($sp) .Ljp7F0464E8: /* 07B058 7F0464E8 3C128005 */ lui $s2, %hi(D_80048380) # $s2, 0x8005 /* 07B05C 7F0464EC 265283B0 */ addiu $s2, %lo(D_80048380) # addiu $s2, $s2, -0x7c50 /* 07B060 7F0464F0 11600003 */ beqz $t3, .Ljp7F046500 /* 07B064 7F0464F4 8FAC0618 */ lw $t4, 0x618($sp) /* 07B068 7F0464F8 51800020 */ beql $t4, $zero, .Ljp7F04657C /* 07B06C 7F0464FC 8E2F0064 */ lw $t7, 0x64($s1) .Ljp7F046500: /* 07B070 7F046500 8E420000 */ lw $v0, ($s2) /* 07B074 7F046504 8E0E00AC */ lw $t6, 0xac($s0) /* 07B078 7F046508 244AFFFE */ addiu $t2, $v0, -2 /* 07B07C 7F04650C 01CA082A */ slt $at, $t6, $t2 /* 07B080 7F046510 50200019 */ beql $at, $zero, .Ljp7F046578 /* 07B084 7F046514 AE0200AC */ sw $v0, 0xac($s0) /* 07B088 7F046518 82220080 */ lb $v0, 0x80($s1) /* 07B08C 7F04651C 266D0008 */ addiu $t5, $s3, 8 /* 07B090 7F046520 24010003 */ li $at, 3 /* 07B094 7F046524 10410004 */ beq $v0, $at, .Ljp7F046538 /* 07B098 7F046528 AFAD0074 */ sw $t5, 0x74($sp) /* 07B09C 7F04652C 24010002 */ li $at, 2 /* 07B0A0 7F046530 14410008 */ bne $v0, $at, .Ljp7F046554 /* 07B0A4 7F046534 3C048006 */ lui $a0, %hi(ptr_sfx_buf) .Ljp7F046538: /* 07B0A8 7F046538 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07B0AC 7F04653C 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07B0B0 7F046540 24050003 */ li $a1, 3 /* 07B0B4 7F046544 0C002386 */ jal play_sfx_a1 /* 07B0B8 7F046548 00003025 */ move $a2, $zero /* 07B0BC 7F04654C 10000006 */ b .Ljp7F046568 /* 07B0C0 7F046550 00402025 */ move $a0, $v0 .Ljp7F046554: /* 07B0C4 7F046554 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07B0C8 7F046558 2405002D */ li $a1, 45 /* 07B0CC 7F04655C 0C002386 */ jal play_sfx_a1 /* 07B0D0 7F046560 00003025 */ move $a2, $zero /* 07B0D4 7F046564 00402025 */ move $a0, $v0 .Ljp7F046568: /* 07B0D8 7F046568 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07B0DC 7F04656C 8FA50074 */ lw $a1, 0x74($sp) /* 07B0E0 7F046570 8E420000 */ lw $v0, ($s2) /* 07B0E4 7F046574 AE0200AC */ sw $v0, 0xac($s0) .Ljp7F046578: /* 07B0E8 7F046578 8E2F0064 */ lw $t7, 0x64($s1) .Ljp7F04657C: /* 07B0EC 7F04657C 3C128005 */ lui $s2, %hi(D_80048380) # $s2, 0x8005 /* 07B0F0 7F046580 265283B0 */ addiu $s2, %lo(D_80048380) # addiu $s2, $s2, -0x7c50 /* 07B0F4 7F046584 31F90080 */ andi $t9, $t7, 0x80 /* 07B0F8 7F046588 53200125 */ beql $t9, $zero, .Ljp7F046A20 /* 07B0FC 7F04658C 8FAB0698 */ lw $t3, 0x698($sp) /* 07B100 7F046590 8E180000 */ lw $t8, ($s0) /* 07B104 7F046594 33080400 */ andi $t0, $t8, 0x400 /* 07B108 7F046598 51000121 */ beql $t0, $zero, .Ljp7F046A20 /* 07B10C 7F04659C 8FAB0698 */ lw $t3, 0x698($sp) /* 07B110 7F0465A0 8E420000 */ lw $v0, ($s2) /* 07B114 7F0465A4 3C0143C8 */ li $at, 0x43C80000 # 400.000000 /* 07B118 7F0465A8 27B0056C */ addiu $s0, $sp, 0x56c /* 07B11C 7F0465AC 30490007 */ andi $t1, $v0, 7 /* 07B120 7F0465B0 1520011A */ bnez $t1, .Ljp7F046A1C /* 07B124 7F0465B4 00002025 */ move $a0, $zero /* 07B128 7F0465B8 44810000 */ mtc1 $at, $f0 /* 07B12C 7F0465BC C6280058 */ lwc1 $f8, 0x58($s1) /* 07B130 7F0465C0 3C0144E1 */ li $at, 0x44E10000 # 1800.000000 /* 07B134 7F0465C4 44812000 */ mtc1 $at, $f4 /* 07B138 7F0465C8 46004180 */ add.s $f6, $f8, $f0 /* 07B13C 7F0465CC 304B000F */ andi $t3, $v0, 0xf /* 07B140 7F0465D0 E7A6056C */ swc1 $f6, 0x56c($sp) /* 07B144 7F0465D4 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07B148 7F0465D8 46045201 */ sub.s $f8, $f10, $f4 /* 07B14C 7F0465DC E7A80570 */ swc1 $f8, 0x570($sp) /* 07B150 7F0465E0 C6260060 */ lwc1 $f6, 0x60($s1) /* 07B154 7F0465E4 15600005 */ bnez $t3, .Ljp7F0465FC /* 07B158 7F0465E8 E7A60574 */ swc1 $f6, 0x574($sp) /* 07B15C 7F0465EC C7AA0574 */ lwc1 $f10, 0x574($sp) /* 07B160 7F0465F0 46005100 */ add.s $f4, $f10, $f0 /* 07B164 7F0465F4 10000004 */ b .Ljp7F046608 /* 07B168 7F0465F8 E7A40574 */ swc1 $f4, 0x574($sp) .Ljp7F0465FC: /* 07B16C 7F0465FC C7A80574 */ lwc1 $f8, 0x574($sp) /* 07B170 7F046600 46004181 */ sub.s $f6, $f8, $f0 /* 07B174 7F046604 E7A60574 */ swc1 $f6, 0x574($sp) .Ljp7F046608: /* 07B178 7F046608 8E220010 */ lw $v0, 0x10($s1) /* 07B17C 7F04660C 02002825 */ move $a1, $s0 /* 07B180 7F046610 24070014 */ li $a3, 20 /* 07B184 7F046614 8C460014 */ lw $a2, 0x14($v0) /* 07B188 7F046618 244C002C */ addiu $t4, $v0, 0x2c /* 07B18C 7F04661C AFAC0018 */ sw $t4, 0x18($sp) /* 07B190 7F046620 AFA0001C */ sw $zero, 0x1c($sp) /* 07B194 7F046624 AFA00014 */ sw $zero, 0x14($sp) /* 07B198 7F046628 0FC2737C */ jal sub_GAME_7F09C250 /* 07B19C 7F04662C AFA00010 */ sw $zero, 0x10($sp) /* 07B1A0 7F046630 8E4E0000 */ lw $t6, ($s2) /* 07B1A4 7F046634 24010028 */ li $at, 40 /* 07B1A8 7F046638 02002025 */ move $a0, $s0 /* 07B1AC 7F04663C 01C1001A */ div $zero, $t6, $at /* 07B1B0 7F046640 00005010 */ mfhi $t2 /* 07B1B4 7F046644 554000F6 */ bnezl $t2, .Ljp7F046A20 /* 07B1B8 7F046648 8FAB0698 */ lw $t3, 0x698($sp) /* 07B1BC 7F04664C 8E220010 */ lw $v0, 0x10($s1) /* 07B1C0 7F046650 240D0001 */ li $t5, 1 /* 07B1C4 7F046654 2406000A */ li $a2, 10 /* 07B1C8 7F046658 8C450014 */ lw $a1, 0x14($v0) /* 07B1CC 7F04665C AFAD0010 */ sw $t5, 0x10($sp) /* 07B1D0 7F046660 0FC27CA9 */ jal sub_GAME_7F09E700 /* 07B1D4 7F046664 2447002C */ addiu $a3, $v0, 0x2c /* 07B1D8 7F046668 100000ED */ b .Ljp7F046A20 /* 07B1DC 7F04666C 8FAB0698 */ lw $t3, 0x698($sp) /* 07B1E0 7F046670 C6000060 */ lwc1 $f0, 0x60($s0) .Ljp7F046674: /* 07B1E4 7F046674 44815000 */ mtc1 $at, $f10 /* 07B1E8 7F046678 24120001 */ li $s2, 1 /* 07B1EC 7F04667C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07B1F0 7F046680 460A003C */ c.lt.s $f0, $f10 /* 07B1F4 7F046684 26040068 */ addiu $a0, $s0, 0x68 /* 07B1F8 7F046688 26050078 */ addiu $a1, $s0, 0x78 /* 07B1FC 7F04668C 45020031 */ bc1fl .Ljp7F046754 /* 07B200 7F046690 C60A0004 */ lwc1 $f10, 4($s0) /* 07B204 7F046694 C6020064 */ lwc1 $f2, 0x64($s0) /* 07B208 7F046698 C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07B20C 7F04669C 3C0F8005 */ lui $t7, %hi(clock_timer) # $t7, 0x8005 /* 07B210 7F0466A0 3C018005 */ lui $at, %hi(D_80052AB0) /* 07B214 7F0466A4 46041202 */ mul.s $f8, $f2, $f4 /* 07B218 7F0466A8 27B20558 */ addiu $s2, $sp, 0x558 /* 07B21C 7F0466AC 46080180 */ add.s $f6, $f0, $f8 /* 07B220 7F0466B0 E6060060 */ swc1 $f6, 0x60($s0) /* 07B224 7F0466B4 8DEF83A4 */ lw $t7, %lo(clock_timer)($t7) /* 07B228 7F0466B8 59E00005 */ blezl $t7, .Ljp7F0466D0 /* 07B22C 7F0466BC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B230 7F0466C0 C42A2AE0 */ lwc1 $f10, %lo(D_80052AB0)($at) /* 07B234 7F0466C4 460A1102 */ mul.s $f4, $f2, $f10 /* 07B238 7F0466C8 E6040064 */ swc1 $f4, 0x64($s0) /* 07B23C 7F0466CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 .Ljp7F0466D0: /* 07B240 7F0466D0 44814000 */ mtc1 $at, $f8 /* 07B244 7F0466D4 C6000060 */ lwc1 $f0, 0x60($s0) /* 07B248 7F0466D8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B24C 7F0466DC 4600403C */ c.lt.s $f8, $f0 /* 07B250 7F0466E0 00000000 */ nop /* 07B254 7F0466E4 45030006 */ bc1tl .Ljp7F046700 /* 07B258 7F0466E8 44813000 */ mtc1 $at, $f6 /* 07B25C 7F0466EC 8E190000 */ lw $t9, ($s0) /* 07B260 7F0466F0 33380008 */ andi $t8, $t9, 8 /* 07B264 7F0466F4 53000006 */ beql $t8, $zero, .Ljp7F046710 /* 07B268 7F0466F8 44060000 */ mfc1 $a2, $f0 /* 07B26C 7F0466FC 44813000 */ mtc1 $at, $f6 .Ljp7F046700: /* 07B270 7F046700 00000000 */ nop /* 07B274 7F046704 E6060060 */ swc1 $f6, 0x60($s0) /* 07B278 7F046708 C6000060 */ lwc1 $f0, 0x60($s0) /* 07B27C 7F04670C 44060000 */ mfc1 $a2, $f0 .Ljp7F046710: /* 07B280 7F046710 0FC16FCA */ jal quaternion_slerp /* 07B284 7F046714 02403825 */ move $a3, $s2 /* 07B288 7F046718 26250018 */ addiu $a1, $s1, 0x18 /* 07B28C 7F04671C AFA50074 */ sw $a1, 0x74($sp) /* 07B290 7F046720 0FC16ED2 */ jal quaternion_to_matrix /* 07B294 7F046724 02402025 */ move $a0, $s2 /* 07B298 7F046728 C60C00C0 */ lwc1 $f12, 0xc0($s0) /* 07B29C 7F04672C 0FC163B5 */ jal matrix_column_1_scalar_multiply /* 07B2A0 7F046730 8FA50074 */ lw $a1, 0x74($sp) /* 07B2A4 7F046734 C60C00C4 */ lwc1 $f12, 0xc4($s0) /* 07B2A8 7F046738 0FC163C1 */ jal matrix_column_2_scalar_multiply /* 07B2AC 7F04673C 8FA50074 */ lw $a1, 0x74($sp) /* 07B2B0 7F046740 C60C00C8 */ lwc1 $f12, 0xc8($s0) /* 07B2B4 7F046744 0FC163DB */ jal matrix_column_3_scalar_multiply_2 /* 07B2B8 7F046748 8FA50074 */ lw $a1, 0x74($sp) /* 07B2BC 7F04674C 00009025 */ move $s2, $zero /* 07B2C0 7F046750 C60A0004 */ lwc1 $f10, 4($s0) .Ljp7F046754: /* 07B2C4 7F046754 460AB032 */ c.eq.s $f22, $f10 /* 07B2C8 7F046758 00000000 */ nop /* 07B2CC 7F04675C 4502000F */ bc1fl .Ljp7F04679C /* 07B2D0 7F046760 8E080000 */ lw $t0, ($s0) /* 07B2D4 7F046764 C604000C */ lwc1 $f4, 0xc($s0) /* 07B2D8 7F046768 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B2DC 7F04676C 4604B032 */ c.eq.s $f22, $f4 /* 07B2E0 7F046770 00000000 */ nop /* 07B2E4 7F046774 45020009 */ bc1fl .Ljp7F04679C /* 07B2E8 7F046778 8E080000 */ lw $t0, ($s0) /* 07B2EC 7F04677C C6080060 */ lwc1 $f8, 0x60($s0) /* 07B2F0 7F046780 44813000 */ mtc1 $at, $f6 /* 07B2F4 7F046784 00000000 */ nop /* 07B2F8 7F046788 4606403C */ c.lt.s $f8, $f6 /* 07B2FC 7F04678C 00000000 */ nop /* 07B300 7F046790 45000088 */ bc1f .Ljp7F0469B4 /* 07B304 7F046794 00000000 */ nop /* 07B308 7F046798 8E080000 */ lw $t0, ($s0) .Ljp7F04679C: /* 07B30C 7F04679C 02202025 */ move $a0, $s1 /* 07B310 7F0467A0 262B0018 */ addiu $t3, $s1, 0x18 /* 07B314 7F0467A4 31090008 */ andi $t1, $t0, 8 /* 07B318 7F0467A8 15200082 */ bnez $t1, .Ljp7F0469B4 /* 07B31C 7F0467AC 00000000 */ nop /* 07B320 7F0467B0 AFAB0074 */ sw $t3, 0x74($sp) /* 07B324 7F0467B4 0FC100DE */ jal sub_GAME_7F040078 /* 07B328 7F0467B8 00009025 */ move $s2, $zero /* 07B32C 7F0467BC 3C038005 */ lui $v1, %hi(clock_timer) # $v1, 0x8005 /* 07B330 7F0467C0 8C6383A4 */ lw $v1, %lo(clock_timer)($v1) /* 07B334 7F0467C4 AFA20554 */ sw $v0, 0x554($sp) /* 07B338 7F0467C8 00002025 */ move $a0, $zero /* 07B33C 7F0467CC 18600048 */ blez $v1, .Ljp7F0468F0 /* 07B340 7F0467D0 3C018005 */ lui $at, %hi(D_80052AB4) # $at, 0x8005 /* 07B344 7F0467D4 C42E2AE4 */ lwc1 $f14, %lo(D_80052AB4)($at) /* 07B348 7F0467D8 C7AA069C */ lwc1 $f10, 0x69c($sp) .Ljp7F0467DC: /* 07B34C 7F0467DC C6040004 */ lwc1 $f4, 4($s0) /* 07B350 7F0467E0 C7A606A4 */ lwc1 $f6, 0x6a4($sp) /* 07B354 7F0467E4 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B358 7F0467E8 46045200 */ add.s $f8, $f10, $f4 /* 07B35C 7F0467EC E7A8069C */ swc1 $f8, 0x69c($sp) /* 07B360 7F0467F0 C60A000C */ lwc1 $f10, 0xc($s0) /* 07B364 7F0467F4 460A3100 */ add.s $f4, $f6, $f10 /* 07B368 7F0467F8 44813000 */ mtc1 $at, $f6 /* 07B36C 7F0467FC E7A406A4 */ swc1 $f4, 0x6a4($sp) /* 07B370 7F046800 C6080060 */ lwc1 $f8, 0x60($s0) /* 07B374 7F046804 4608303E */ c.le.s $f6, $f8 /* 07B378 7F046808 00000000 */ nop /* 07B37C 7F04680C 45020035 */ bc1fl .Ljp7F0468E4 /* 07B380 7F046810 24840001 */ addiu $a0, $a0, 1 /* 07B384 7F046814 C60A0094 */ lwc1 $f10, 0x94($s0) /* 07B388 7F046818 460AB03C */ c.lt.s $f22, $f10 /* 07B38C 7F04681C 00000000 */ nop /* 07B390 7F046820 45020027 */ bc1fl .Ljp7F0468C0 /* 07B394 7F046824 C6060004 */ lwc1 $f6, 4($s0) /* 07B398 7F046828 C600000C */ lwc1 $f0, 0xc($s0) /* 07B39C 7F04682C C6020004 */ lwc1 $f2, 4($s0) /* 07B3A0 7F046830 AFA40550 */ sw $a0, 0x550($sp) /* 07B3A4 7F046834 46000102 */ mul.s $f4, $f0, $f0 /* 07B3A8 7F046838 00000000 */ nop /* 07B3AC 7F04683C 46021202 */ mul.s $f8, $f2, $f2 /* 07B3B0 7F046840 0C007E08 */ jal sqrtf /* 07B3B4 7F046844 46082300 */ add.s $f12, $f4, $f8 /* 07B3B8 7F046848 3C018005 */ lui $at, %hi(D_80052AB8) # $at, 0x8005 /* 07B3BC 7F04684C C42E2AE8 */ lwc1 $f14, %lo(D_80052AB8)($at) /* 07B3C0 7F046850 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07B3C4 7F046854 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07B3C8 7F046858 C6060094 */ lwc1 $f6, 0x94($s0) /* 07B3CC 7F04685C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B3D0 7F046860 44814000 */ mtc1 $at, $f8 /* 07B3D4 7F046864 460A3102 */ mul.s $f4, $f6, $f10 /* 07B3D8 7F046868 8FA40550 */ lw $a0, 0x550($sp) /* 07B3DC 7F04686C 3C038005 */ lui $v1, %hi(clock_timer) # $v1, 0x8005 /* 07B3E0 7F046870 46002303 */ div.s $f12, $f4, $f0 /* 07B3E4 7F046874 460C403E */ c.le.s $f8, $f12 /* 07B3E8 7F046878 00000000 */ nop /* 07B3EC 7F04687C 45020005 */ bc1fl .Ljp7F046894 /* 07B3F0 7F046880 C6020004 */ lwc1 $f2, 4($s0) /* 07B3F4 7F046884 E6160004 */ swc1 $f22, 4($s0) /* 07B3F8 7F046888 1000000A */ b .Ljp7F0468B4 /* 07B3FC 7F04688C E616000C */ swc1 $f22, 0xc($s0) /* 07B400 7F046890 C6020004 */ lwc1 $f2, 4($s0) .Ljp7F046894: /* 07B404 7F046894 C600000C */ lwc1 $f0, 0xc($s0) /* 07B408 7F046898 460C1182 */ mul.s $f6, $f2, $f12 /* 07B40C 7F04689C 00000000 */ nop /* 07B410 7F0468A0 460C0102 */ mul.s $f4, $f0, $f12 /* 07B414 7F0468A4 46061281 */ sub.s $f10, $f2, $f6 /* 07B418 7F0468A8 46040201 */ sub.s $f8, $f0, $f4 /* 07B41C 7F0468AC E60A0004 */ swc1 $f10, 4($s0) /* 07B420 7F0468B0 E608000C */ swc1 $f8, 0xc($s0) .Ljp7F0468B4: /* 07B424 7F0468B4 1000000A */ b .Ljp7F0468E0 /* 07B428 7F0468B8 8C6383A4 */ lw $v1, %lo(clock_timer)($v1) /* 07B42C 7F0468BC C6060004 */ lwc1 $f6, 4($s0) .Ljp7F0468C0: /* 07B430 7F0468C0 C604000C */ lwc1 $f4, 0xc($s0) /* 07B434 7F0468C4 3C038005 */ lui $v1, %hi(clock_timer) # $v1, 0x8005 /* 07B438 7F0468C8 460E3282 */ mul.s $f10, $f6, $f14 /* 07B43C 7F0468CC 00000000 */ nop /* 07B440 7F0468D0 460E2202 */ mul.s $f8, $f4, $f14 /* 07B444 7F0468D4 E60A0004 */ swc1 $f10, 4($s0) /* 07B448 7F0468D8 E608000C */ swc1 $f8, 0xc($s0) /* 07B44C 7F0468DC 8C6383A4 */ lw $v1, %lo(clock_timer)($v1) .Ljp7F0468E0: /* 07B450 7F0468E0 24840001 */ addiu $a0, $a0, 1 .Ljp7F0468E4: /* 07B454 7F0468E4 0083082A */ slt $at, $a0, $v1 /* 07B458 7F0468E8 5420FFBC */ bnezl $at, .Ljp7F0467DC /* 07B45C 7F0468EC C7AA069C */ lwc1 $f10, 0x69c($sp) .Ljp7F0468F0: /* 07B460 7F0468F0 02202025 */ move $a0, $s1 /* 07B464 7F0468F4 27A5069C */ addiu $a1, $sp, 0x69c /* 07B468 7F0468F8 27A60538 */ addiu $a2, $sp, 0x538 /* 07B46C 7F0468FC 27A70544 */ addiu $a3, $sp, 0x544 /* 07B470 7F046900 AFA00010 */ sw $zero, 0x10($sp) /* 07B474 7F046904 0FC10C6D */ jal sub_GAME_7F042EB4 /* 07B478 7F046908 AFA00014 */ sw $zero, 0x14($sp) /* 07B47C 7F04690C 240C0001 */ li $t4, 1 /* 07B480 7F046910 AFAC0698 */ sw $t4, 0x698($sp) /* 07B484 7F046914 8E660010 */ lw $a2, 0x10($s3) /* 07B488 7F046918 8E650008 */ lw $a1, 8($s3) /* 07B48C 7F04691C 0FC2CD48 */ jal sub_GAME_7F0B2970 /* 07B490 7F046920 8E640014 */ lw $a0, 0x14($s3) /* 07B494 7F046924 46000506 */ mov.s $f20, $f0 /* 07B498 7F046928 8FA40554 */ lw $a0, 0x554($sp) /* 07B49C 7F04692C 0FC0FB2F */ jal sub_GAME_7F03E9BC /* 07B4A0 7F046930 8FA50074 */ lw $a1, 0x74($sp) /* 07B4A4 7F046934 3C018005 */ lui $at, %hi(D_80052ABC) # $at, 0x8005 /* 07B4A8 7F046938 C42E2AEC */ lwc1 $f14, %lo(D_80052ABC)($at) /* 07B4AC 7F04693C 4600A181 */ sub.s $f6, $f20, $f0 /* 07B4B0 7F046940 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07B4B4 7F046944 44815000 */ mtc1 $at, $f10 /* 07B4B8 7F046948 3C018005 */ lui $at, %hi(D_80052AC0) # $at, 0x8005 /* 07B4BC 7F04694C 460A3300 */ add.s $f12, $f6, $f10 /* 07B4C0 7F046950 E66C000C */ swc1 $f12, 0xc($s3) /* 07B4C4 7F046954 E62C005C */ swc1 $f12, 0x5c($s1) /* 07B4C8 7F046958 C6020004 */ lwc1 $f2, 4($s0) /* 07B4CC 7F04695C 460E103C */ c.lt.s $f2, $f14 /* 07B4D0 7F046960 00000000 */ nop /* 07B4D4 7F046964 45000013 */ bc1f .Ljp7F0469B4 /* 07B4D8 7F046968 00000000 */ nop /* 07B4DC 7F04696C C4242AF0 */ lwc1 $f4, %lo(D_80052AC0)($at) /* 07B4E0 7F046970 4602203C */ c.lt.s $f4, $f2 /* 07B4E4 7F046974 00000000 */ nop /* 07B4E8 7F046978 4500000E */ bc1f .Ljp7F0469B4 /* 07B4EC 7F04697C 00000000 */ nop /* 07B4F0 7F046980 C600000C */ lwc1 $f0, 0xc($s0) /* 07B4F4 7F046984 3C018005 */ lui $at, %hi(D_80052AC4) # $at, 0x8005 /* 07B4F8 7F046988 460E003C */ c.lt.s $f0, $f14 /* 07B4FC 7F04698C 00000000 */ nop /* 07B500 7F046990 45000008 */ bc1f .Ljp7F0469B4 /* 07B504 7F046994 00000000 */ nop /* 07B508 7F046998 C4282AF4 */ lwc1 $f8, %lo(D_80052AC4)($at) /* 07B50C 7F04699C 4600403C */ c.lt.s $f8, $f0 /* 07B510 7F0469A0 00000000 */ nop /* 07B514 7F0469A4 45000003 */ bc1f .Ljp7F0469B4 /* 07B518 7F0469A8 00000000 */ nop /* 07B51C 7F0469AC E616000C */ swc1 $f22, 0xc($s0) /* 07B520 7F0469B0 E6160004 */ swc1 $f22, 4($s0) .Ljp7F0469B4: /* 07B524 7F0469B4 16400005 */ bnez $s2, .Ljp7F0469CC /* 07B528 7F0469B8 00000000 */ nop /* 07B52C 7F0469BC 8E0E0000 */ lw $t6, ($s0) /* 07B530 7F0469C0 31CA0008 */ andi $t2, $t6, 8 /* 07B534 7F0469C4 51400016 */ beql $t2, $zero, .Ljp7F046A20 /* 07B538 7F0469C8 8FAB0698 */ lw $t3, 0x698($sp) .Ljp7F0469CC: /* 07B53C 7F0469CC 0FC0FF9C */ jal sub_GAME_7F03FB70 /* 07B540 7F0469D0 02002025 */ move $a0, $s0 /* 07B544 7F0469D4 8E2D0064 */ lw $t5, 0x64($s1) /* 07B548 7F0469D8 2401FF7F */ li $at, -129 /* 07B54C 7F0469DC AE20006C */ sw $zero, 0x6c($s1) /* 07B550 7F0469E0 01A17824 */ and $t7, $t5, $at /* 07B554 7F0469E4 AE2F0064 */ sw $t7, 0x64($s1) /* 07B558 7F0469E8 92620001 */ lbu $v0, 1($s3) /* 07B55C 7F0469EC 30590008 */ andi $t9, $v0, 8 /* 07B560 7F0469F0 13200002 */ beqz $t9, .Ljp7F0469FC /* 07B564 7F0469F4 34580010 */ ori $t8, $v0, 0x10 /* 07B568 7F0469F8 A2780001 */ sb $t8, 1($s3) .Ljp7F0469FC: /* 07B56C 7F0469FC 92280003 */ lbu $t0, 3($s1) /* 07B570 7F046A00 24010008 */ li $at, 8 /* 07B574 7F046A04 55010006 */ bnel $t0, $at, .Ljp7F046A20 /* 07B578 7F046A08 8FAB0698 */ lw $t3, 0x698($sp) /* 07B57C 7F046A0C 8E690014 */ lw $t1, 0x14($s3) /* 07B580 7F046A10 82240080 */ lb $a0, 0x80($s1) /* 07B584 7F046A14 0FC15F41 */ jal sub_GAME_7F0577E8 /* 07B588 7F046A18 91250003 */ lbu $a1, 3($t1) .Ljp7F046A1C: /* 07B58C 7F046A1C 8FAB0698 */ lw $t3, 0x698($sp) .Ljp7F046A20: /* 07B590 7F046A20 1160000B */ beqz $t3, .Ljp7F046A50 /* 07B594 7F046A24 262C0058 */ addiu $t4, $s1, 0x58 /* 07B598 7F046A28 AFAC0074 */ sw $t4, 0x74($sp) /* 07B59C 7F046A2C 0FC101E1 */ jal sub_GAME_7F040484 /* 07B5A0 7F046A30 02202025 */ move $a0, $s1 /* 07B5A4 7F046A34 0FC15C68 */ jal sub_GAME_7F056CA0 /* 07B5A8 7F046A38 02202025 */ move $a0, $s1 /* 07B5AC 7F046A3C 8E240010 */ lw $a0, 0x10($s1) /* 07B5B0 7F046A40 0FC1016D */ jal sub_GAME_7F0402B4 /* 07B5B4 7F046A44 2625007C */ addiu $a1, $s1, 0x7c /* 07B5B8 7F046A48 0FC14832 */ jal detonate_proxmine_In_range /* 07B5BC 7F046A4C 8FA40074 */ lw $a0, 0x74($sp) .Ljp7F046A50: /* 07B5C0 7F046A50 92220003 */ lbu $v0, 3($s1) /* 07B5C4 7F046A54 24010001 */ li $at, 1 /* 07B5C8 7F046A58 54410052 */ bnel $v0, $at, .Ljp7F046BA4 /* 07B5CC 7F046A5C 24010006 */ li $at, 6 /* 07B5D0 7F046A60 8E700004 */ lw $s0, 4($s3) /* 07B5D4 7F046A64 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07B5D8 7F046A68 E7A60684 */ swc1 $f6, 0x684($sp) /* 07B5DC 7F046A6C 8E0200EC */ lw $v0, 0xec($s0) /* 07B5E0 7F046A70 58400013 */ blezl $v0, .Ljp7F046AC0 /* 07B5E4 7F046A74 820800BC */ lb $t0, 0xbc($s0) /* 07B5E8 7F046A78 820E00BC */ lb $t6, 0xbc($s0) /* 07B5EC 7F046A7C 55C00010 */ bnezl $t6, .Ljp7F046AC0 /* 07B5F0 7F046A80 820800BC */ lb $t0, 0xbc($s0) /* 07B5F4 7F046A84 8E0A0008 */ lw $t2, 8($s0) /* 07B5F8 7F046A88 3C0F8005 */ lui $t7, %hi(global_timer) # $t7, 0x8005 /* 07B5FC 7F046A8C 000A6800 */ sll $t5, $t2, 0 /* 07B600 7F046A90 05A2000B */ bltzl $t5, .Ljp7F046AC0 /* 07B604 7F046A94 820800BC */ lb $t0, 0xbc($s0) /* 07B608 7F046A98 8DEF83AC */ lw $t7, %lo(global_timer)($t7) /* 07B60C 7F046A9C 8E1900A0 */ lw $t9, 0xa0($s0) /* 07B610 7F046AA0 02002025 */ move $a0, $s0 /* 07B614 7F046AA4 01F9C023 */ subu $t8, $t7, $t9 /* 07B618 7F046AA8 0058082A */ slt $at, $v0, $t8 /* 07B61C 7F046AAC 50200004 */ beql $at, $zero, .Ljp7F046AC0 /* 07B620 7F046AB0 820800BC */ lb $t0, 0xbc($s0) /* 07B624 7F046AB4 0FC153A1 */ jal set_door_state /* 07B628 7F046AB8 24050002 */ li $a1, 2 /* 07B62C 7F046ABC 820800BC */ lb $t0, 0xbc($s0) .Ljp7F046AC0: /* 07B630 7F046AC0 24010003 */ li $at, 3 /* 07B634 7F046AC4 5501001B */ bnel $t0, $at, .Ljp7F046B34 /* 07B638 7F046AC8 960B009A */ lhu $t3, 0x9a($s0) /* 07B63C 7F046ACC 8E0200C8 */ lw $v0, 0xc8($s0) /* 07B640 7F046AD0 24030001 */ li $v1, 1 /* 07B644 7F046AD4 02002025 */ move $a0, $s0 /* 07B648 7F046AD8 10400011 */ beqz $v0, .Ljp7F046B20 /* 07B64C 7F046ADC 00000000 */ nop /* 07B650 7F046AE0 1050000F */ beq $v0, $s0, .Ljp7F046B20 /* 07B654 7F046AE4 00000000 */ nop /* 07B658 7F046AE8 804900BC */ lb $t1, 0xbc($v0) .Ljp7F046AEC: /* 07B65C 7F046AEC 55200007 */ bnezl $t1, .Ljp7F046B0C /* 07B660 7F046AF0 00001825 */ move $v1, $zero /* 07B664 7F046AF4 C44A00B4 */ lwc1 $f10, 0xb4($v0) /* 07B668 7F046AF8 460AB03C */ c.lt.s $f22, $f10 /* 07B66C 7F046AFC 00000000 */ nop /* 07B670 7F046B00 45020003 */ bc1fl .Ljp7F046B10 /* 07B674 7F046B04 8C4200C8 */ lw $v0, 0xc8($v0) /* 07B678 7F046B08 00001825 */ move $v1, $zero .Ljp7F046B0C: /* 07B67C 7F046B0C 8C4200C8 */ lw $v0, 0xc8($v0) .Ljp7F046B10: /* 07B680 7F046B10 10400003 */ beqz $v0, .Ljp7F046B20 /* 07B684 7F046B14 00000000 */ nop /* 07B688 7F046B18 5450FFF4 */ bnel $v0, $s0, .Ljp7F046AEC /* 07B68C 7F046B1C 804900BC */ lb $t1, 0xbc($v0) .Ljp7F046B20: /* 07B690 7F046B20 50600004 */ beql $v1, $zero, .Ljp7F046B34 /* 07B694 7F046B24 960B009A */ lhu $t3, 0x9a($s0) /* 07B698 7F046B28 0FC15368 */ jal sub_GAME_7F0548A4 /* 07B69C 7F046B2C 24050001 */ li $a1, 1 /* 07B6A0 7F046B30 960B009A */ lhu $t3, 0x9a($s0) .Ljp7F046B34: /* 07B6A4 7F046B34 24010008 */ li $at, 8 /* 07B6A8 7F046B38 1561000B */ bne $t3, $at, .Ljp7F046B68 /* 07B6AC 7F046B3C 00000000 */ nop /* 07B6B0 7F046B40 0FC153C7 */ jal sub_GAME_7F054A20 /* 07B6B4 7F046B44 02002025 */ move $a0, $s0 /* 07B6B8 7F046B48 10400007 */ beqz $v0, .Ljp7F046B68 /* 07B6BC 7F046B4C 00000000 */ nop /* 07B6C0 7F046B50 0FC0FA86 */ jal sub_GAME_7F03E718 /* 07B6C4 7F046B54 02002025 */ move $a0, $s0 /* 07B6C8 7F046B58 10400003 */ beqz $v0, .Ljp7F046B68 /* 07B6CC 7F046B5C 00000000 */ nop /* 07B6D0 7F046B60 0FC157A6 */ jal sub_GAME_7F05599C /* 07B6D4 7F046B64 02602025 */ move $a0, $s3 .Ljp7F046B68: /* 07B6D8 7F046B68 3C0E8005 */ lui $t6, %hi(global_timer) # $t6, 0x8005 /* 07B6DC 7F046B6C 8DCE83AC */ lw $t6, %lo(global_timer)($t6) /* 07B6E0 7F046B70 8E0C00FC */ lw $t4, 0xfc($s0) /* 07B6E4 7F046B74 3C0A8005 */ lui $t2, %hi(clock_timer) # $t2, 0x8005 /* 07B6E8 7F046B78 018E082A */ slt $at, $t4, $t6 /* 07B6EC 7F046B7C 14200004 */ bnez $at, .Ljp7F046B90 /* 07B6F0 7F046B80 00000000 */ nop /* 07B6F4 7F046B84 8D4A83A4 */ lw $t2, %lo(clock_timer)($t2) /* 07B6F8 7F046B88 554006AA */ bnezl $t2, .Ljp7F048634 /* 07B6FC 7F046B8C 92220003 */ lbu $v0, 3($s1) .Ljp7F046B90: /* 07B700 7F046B90 0FC1552C */ jal sub_GAME_7F054FB4 /* 07B704 7F046B94 02002025 */ move $a0, $s0 /* 07B708 7F046B98 100006A6 */ b .Ljp7F048634 /* 07B70C 7F046B9C 92220003 */ lbu $v0, 3($s1) /* 07B710 7F046BA0 24010006 */ li $at, 6 .Ljp7F046BA4: /* 07B714 7F046BA4 54410130 */ bnel $v0, $at, .Ljp7F047068 /* 07B718 7F046BA8 2401000D */ li $at, 13 /* 07B71C 7F046BAC 8E2D0008 */ lw $t5, 8($s1) /* 07B720 7F046BB0 000D78C0 */ sll $t7, $t5, 3 /* 07B724 7F046BB4 05E2012C */ bltzl $t7, .Ljp7F047068 /* 07B728 7F046BB8 2401000D */ li $at, 13 /* 07B72C 7F046BBC 8E700004 */ lw $s0, 4($s3) /* 07B730 7F046BC0 8E1900D4 */ lw $t9, 0xd4($s0) /* 07B734 7F046BC4 53200004 */ beql $t9, $zero, .Ljp7F046BD8 /* 07B738 7F046BC8 C61200D0 */ lwc1 $f18, 0xd0($s0) /* 07B73C 7F046BCC 10000002 */ b .Ljp7F046BD8 /* 07B740 7F046BD0 C61200CC */ lwc1 $f18, 0xcc($s0) /* 07B744 7F046BD4 C61200D0 */ lwc1 $f18, 0xd0($s0) .Ljp7F046BD8: /* 07B748 7F046BD8 0FC2279B */ jal get_curplayer_positiondata /* 07B74C 7F046BDC E7B2051C */ swc1 $f18, 0x51c($sp) /* 07B750 7F046BE0 AFA20518 */ sw $v0, 0x518($sp) /* 07B754 7F046BE4 C6280058 */ lwc1 $f8, 0x58($s1) /* 07B758 7F046BE8 C4440008 */ lwc1 $f4, 8($v0) /* 07B75C 7F046BEC C60000E8 */ lwc1 $f0, 0xe8($s0) /* 07B760 7F046BF0 C62A005C */ lwc1 $f10, 0x5c($s1) /* 07B764 7F046BF4 46082301 */ sub.s $f12, $f4, $f8 /* 07B768 7F046BF8 C446000C */ lwc1 $f6, 0xc($v0) /* 07B76C 7F046BFC C6280060 */ lwc1 $f8, 0x60($s1) /* 07B770 7F046C00 4600B03C */ c.lt.s $f22, $f0 /* 07B774 7F046C04 C4440010 */ lwc1 $f4, 0x10($v0) /* 07B778 7F046C08 C7B2051C */ lwc1 $f18, 0x51c($sp) /* 07B77C 7F046C0C 24120001 */ li $s2, 1 /* 07B780 7F046C10 460A3081 */ sub.s $f2, $f6, $f10 /* 07B784 7F046C14 4500000E */ bc1f .Ljp7F046C50 /* 07B788 7F046C18 46082381 */ sub.s $f14, $f4, $f8 /* 07B78C 7F046C1C 46000182 */ mul.s $f6, $f0, $f0 /* 07B790 7F046C20 00000000 */ nop /* 07B794 7F046C24 460C6282 */ mul.s $f10, $f12, $f12 /* 07B798 7F046C28 00000000 */ nop /* 07B79C 7F046C2C 46021102 */ mul.s $f4, $f2, $f2 /* 07B7A0 7F046C30 46045200 */ add.s $f8, $f10, $f4 /* 07B7A4 7F046C34 460E7282 */ mul.s $f10, $f14, $f14 /* 07B7A8 7F046C38 460A4100 */ add.s $f4, $f8, $f10 /* 07B7AC 7F046C3C 4604303C */ c.lt.s $f6, $f4 /* 07B7B0 7F046C40 00000000 */ nop /* 07B7B4 7F046C44 45000002 */ bc1f .Ljp7F046C50 /* 07B7B8 7F046C48 00000000 */ nop /* 07B7BC 7F046C4C 00009025 */ move $s2, $zero .Ljp7F046C50: /* 07B7C0 7F046C50 8E380008 */ lw $t8, 8($s1) /* 07B7C4 7F046C54 00184080 */ sll $t0, $t8, 2 /* 07B7C8 7F046C58 05010002 */ bgez $t0, .Ljp7F046C64 /* 07B7CC 7F046C5C 00000000 */ nop /* 07B7D0 7F046C60 00009025 */ move $s2, $zero .Ljp7F046C64: /* 07B7D4 7F046C64 1240003A */ beqz $s2, .Ljp7F046D50 /* 07B7D8 7F046C68 00000000 */ nop /* 07B7DC 7F046C6C 0FC16BD4 */ jal atan2f /* 07B7E0 7F046C70 E7B2051C */ swc1 $f18, 0x51c($sp) /* 07B7E4 7F046C74 C60200C8 */ lwc1 $f2, 0xc8($s0) /* 07B7E8 7F046C78 C7B2051C */ lwc1 $f18, 0x51c($sp) /* 07B7EC 7F046C7C 3C018005 */ lui $at, %hi(D_80052ACC) /* 07B7F0 7F046C80 4616103C */ c.lt.s $f2, $f22 /* 07B7F4 7F046C84 00000000 */ nop /* 07B7F8 7F046C88 45000005 */ bc1f .Ljp7F046CA0 /* 07B7FC 7F046C8C 00000000 */ nop /* 07B800 7F046C90 3C018005 */ lui $at, %hi(D_80052AC8) # $at, 0x8005 /* 07B804 7F046C94 C4342AF8 */ lwc1 $f20, %lo(D_80052AC8)($at) /* 07B808 7F046C98 10000007 */ b .Ljp7F046CB8 /* 07B80C 7F046C9C 46141080 */ add.s $f2, $f2, $f20 .Ljp7F046CA0: /* 07B810 7F046CA0 C4342AFC */ lwc1 $f20, %lo(D_80052ACC)($at) /* 07B814 7F046CA4 4602A03E */ c.le.s $f20, $f2 /* 07B818 7F046CA8 00000000 */ nop /* 07B81C 7F046CAC 45020003 */ bc1fl .Ljp7F046CBC /* 07B820 7F046CB0 C60800C4 */ lwc1 $f8, 0xc4($s0) /* 07B824 7F046CB4 46141081 */ sub.s $f2, $f2, $f20 .Ljp7F046CB8: /* 07B828 7F046CB8 C60800C4 */ lwc1 $f8, 0xc4($s0) .Ljp7F046CBC: /* 07B82C 7F046CBC 3C018005 */ lui $at, %hi(D_80052AD0) # $at, 0x8005 /* 07B830 7F046CC0 46081080 */ add.s $f2, $f2, $f8 /* 07B834 7F046CC4 4602A03E */ c.le.s $f20, $f2 /* 07B838 7F046CC8 00000000 */ nop /* 07B83C 7F046CCC 45020003 */ bc1fl .Ljp7F046CDC /* 07B840 7F046CD0 4602003C */ c.lt.s $f0, $f2 /* 07B844 7F046CD4 46141081 */ sub.s $f2, $f2, $f20 /* 07B848 7F046CD8 4602003C */ c.lt.s $f0, $f2 .Ljp7F046CDC: /* 07B84C 7F046CDC 46020381 */ sub.s $f14, $f0, $f2 /* 07B850 7F046CE0 45000002 */ bc1f .Ljp7F046CEC /* 07B854 7F046CE4 46007306 */ mov.s $f12, $f14 /* 07B858 7F046CE8 46147300 */ add.s $f12, $f14, $f20 .Ljp7F046CEC: /* 07B85C 7F046CEC C4202B00 */ lwc1 $f0, %lo(D_80052AD0)($at) /* 07B860 7F046CF0 3C018005 */ lui $at, %hi(D_80052AD4) # $at, 0x8005 /* 07B864 7F046CF4 46006301 */ sub.s $f12, $f12, $f0 /* 07B868 7F046CF8 4616603C */ c.lt.s $f12, $f22 /* 07B86C 7F046CFC 00000000 */ nop /* 07B870 7F046D00 45020003 */ bc1fl .Ljp7F046D10 /* 07B874 7F046D04 460C003C */ c.lt.s $f0, $f12 /* 07B878 7F046D08 46146300 */ add.s $f12, $f12, $f20 /* 07B87C 7F046D0C 460C003C */ c.lt.s $f0, $f12 .Ljp7F046D10: /* 07B880 7F046D10 00000000 */ nop /* 07B884 7F046D14 45000002 */ bc1f .Ljp7F046D20 /* 07B888 7F046D18 00000000 */ nop /* 07B88C 7F046D1C 46146301 */ sub.s $f12, $f12, $f20 .Ljp7F046D20: /* 07B890 7F046D20 C42A2B04 */ lwc1 $f10, %lo(D_80052AD4)($at) /* 07B894 7F046D24 3C018005 */ lui $at, %hi(D_80052AD8) /* 07B898 7F046D28 460C503C */ c.lt.s $f10, $f12 /* 07B89C 7F046D2C 00000000 */ nop /* 07B8A0 7F046D30 45030007 */ bc1tl .Ljp7F046D50 /* 07B8A4 7F046D34 00009025 */ move $s2, $zero /* 07B8A8 7F046D38 C4262B08 */ lwc1 $f6, %lo(D_80052AD8)($at) /* 07B8AC 7F046D3C 4606603C */ c.lt.s $f12, $f6 /* 07B8B0 7F046D40 00000000 */ nop /* 07B8B4 7F046D44 45000002 */ bc1f .Ljp7F046D50 /* 07B8B8 7F046D48 00000000 */ nop /* 07B8BC 7F046D4C 00009025 */ move $s2, $zero .Ljp7F046D50: /* 07B8C0 7F046D50 12400034 */ beqz $s2, .Ljp7F046E24 /* 07B8C4 7F046D54 00002825 */ move $a1, $zero /* 07B8C8 7F046D58 8E690014 */ lw $t1, 0x14($s3) /* 07B8CC 7F046D5C E7B2051C */ swc1 $f18, 0x51c($sp) /* 07B8D0 7F046D60 8FA40518 */ lw $a0, 0x518($sp) /* 07B8D4 7F046D64 0FC229DD */ jal sub_GAME_7F08A03C /* 07B8D8 7F046D68 AFA904F4 */ sw $t1, 0x4f4($sp) /* 07B8DC 7F046D6C 8FA20518 */ lw $v0, 0x518($sp) /* 07B8E0 7F046D70 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 07B8E4 7F046D74 8E650008 */ lw $a1, 8($s3) /* 07B8E8 7F046D78 C4440010 */ lwc1 $f4, 0x10($v0) /* 07B8EC 7F046D7C 8E660010 */ lw $a2, 0x10($s3) /* 07B8F0 7F046D80 8C470008 */ lw $a3, 8($v0) /* 07B8F4 7F046D84 44814000 */ mtc1 $at, $f8 /* 07B8F8 7F046D88 44815000 */ mtc1 $at, $f10 /* 07B8FC 7F046D8C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07B900 7F046D90 44813000 */ mtc1 $at, $f6 /* 07B904 7F046D94 240B001B */ li $t3, 27 /* 07B908 7F046D98 AFAB0014 */ sw $t3, 0x14($sp) /* 07B90C 7F046D9C E7B60020 */ swc1 $f22, 0x20($sp) /* 07B910 7F046DA0 27A404F4 */ addiu $a0, $sp, 0x4f4 /* 07B914 7F046DA4 E7A40010 */ swc1 $f4, 0x10($sp) /* 07B918 7F046DA8 E7A80018 */ swc1 $f8, 0x18($sp) /* 07B91C 7F046DAC E7AA001C */ swc1 $f10, 0x1c($sp) /* 07B920 7F046DB0 0FC2C675 */ jal sub_GAME_7F0B0E24 /* 07B924 7F046DB4 E7A60024 */ swc1 $f6, 0x24($sp) /* 07B928 7F046DB8 10400015 */ beqz $v0, .Ljp7F046E10 /* 07B92C 7F046DBC C7B2051C */ lwc1 $f18, 0x51c($sp) /* 07B930 7F046DC0 3C0E8005 */ lui $t6, %hi(clock_timer) # $t6, 0x8005 /* 07B934 7F046DC4 8DCE83A4 */ lw $t6, %lo(clock_timer)($t6) /* 07B938 7F046DC8 8E0C00E0 */ lw $t4, 0xe0($s0) /* 07B93C 7F046DCC 3C014396 */ li $at, 0x43960000 # 300.000000 /* 07B940 7F046DD0 44812000 */ mtc1 $at, $f4 /* 07B944 7F046DD4 018E5021 */ addu $t2, $t4, $t6 /* 07B948 7F046DD8 AE0A00E0 */ sw $t2, 0xe0($s0) /* 07B94C 7F046DDC 3C018003 */ lui $at, %hi(D_80030B14) # $at, 0x8003 /* 07B950 7F046DE0 C4280B54 */ lwc1 $f8, %lo(D_80030B14)($at) /* 07B954 7F046DE4 46082282 */ mul.s $f10, $f4, $f8 /* 07B958 7F046DE8 4600518D */ trunc.w.s $f6, $f10 /* 07B95C 7F046DEC 44193000 */ mfc1 $t9, $f6 /* 07B960 7F046DF0 00000000 */ nop /* 07B964 7F046DF4 0159082A */ slt $at, $t2, $t9 /* 07B968 7F046DF8 54200006 */ bnezl $at, .Ljp7F046E14 /* 07B96C 7F046DFC 8FA40518 */ lw $a0, 0x518($sp) /* 07B970 7F046E00 0FC158B1 */ jal start_alarm /* 07B974 7F046E04 E7B2051C */ swc1 $f18, 0x51c($sp) /* 07B978 7F046E08 C7B2051C */ lwc1 $f18, 0x51c($sp) /* 07B97C 7F046E0C AE0000E0 */ sw $zero, 0xe0($s0) .Ljp7F046E10: /* 07B980 7F046E10 8FA40518 */ lw $a0, 0x518($sp) .Ljp7F046E14: /* 07B984 7F046E14 24050001 */ li $a1, 1 /* 07B988 7F046E18 0FC229DD */ jal sub_GAME_7F08A03C /* 07B98C 7F046E1C E7B2051C */ swc1 $f18, 0x51c($sp) /* 07B990 7F046E20 C7B2051C */ lwc1 $f18, 0x51c($sp) .Ljp7F046E24: /* 07B994 7F046E24 C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07B998 7F046E28 4612703C */ c.lt.s $f14, $f18 /* 07B99C 7F046E2C 00000000 */ nop /* 07B9A0 7F046E30 45020047 */ bc1fl .Ljp7F046F50 /* 07B9A4 7F046E34 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B9A8 7F046E38 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B9AC 7F046E3C 3C018005 */ lui $at, %hi(D_80052AE0) # $at, 0x8005 /* 07B9B0 7F046E40 C4302B10 */ lwc1 $f16, %lo(D_80052AE0)($at) /* 07B9B4 7F046E44 46000102 */ mul.s $f4, $f0, $f0 /* 07B9B8 7F046E48 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07B9BC 7F046E4C 44814000 */ mtc1 $at, $f8 /* 07B9C0 7F046E50 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07B9C4 7F046E54 46082282 */ mul.s $f10, $f4, $f8 /* 07B9C8 7F046E58 46105083 */ div.s $f2, $f10, $f16 /* 07B9CC 7F046E5C 46029181 */ sub.s $f6, $f18, $f2 /* 07B9D0 7F046E60 460E303E */ c.le.s $f6, $f14 /* 07B9D4 7F046E64 00000000 */ nop /* 07B9D8 7F046E68 4502000F */ bc1fl .Ljp7F046EA8 /* 07B9DC 7F046E6C C60C00DC */ lwc1 $f12, 0xdc($s0) /* 07B9E0 7F046E70 C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07B9E4 7F046E74 46048202 */ mul.s $f8, $f16, $f4 /* 07B9E8 7F046E78 46080281 */ sub.s $f10, $f0, $f8 /* 07B9EC 7F046E7C E60A00D8 */ swc1 $f10, 0xd8($s0) /* 07B9F0 7F046E80 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07B9F4 7F046E84 4610003C */ c.lt.s $f0, $f16 /* 07B9F8 7F046E88 00000000 */ nop /* 07B9FC 7F046E8C 45000003 */ bc1f .Ljp7F046E9C /* 07BA00 7F046E90 00000000 */ nop /* 07BA04 7F046E94 E61000D8 */ swc1 $f16, 0xd8($s0) /* 07BA08 7F046E98 C60000D8 */ lwc1 $f0, 0xd8($s0) .Ljp7F046E9C: /* 07BA0C 7F046E9C 1000001D */ b .Ljp7F046F14 /* 07BA10 7F046EA0 C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07BA14 7F046EA4 C60C00DC */ lwc1 $f12, 0xdc($s0) .Ljp7F046EA8: /* 07BA18 7F046EA8 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07BA1C 7F046EAC 460C003C */ c.lt.s $f0, $f12 /* 07BA20 7F046EB0 00000000 */ nop /* 07BA24 7F046EB4 45000017 */ bc1f .Ljp7F046F14 /* 07BA28 7F046EB8 00000000 */ nop /* 07BA2C 7F046EBC C42683B4 */ lwc1 $f6, %lo(global_timer_delta)($at) /* 07BA30 7F046EC0 46068102 */ mul.s $f4, $f16, $f6 /* 07BA34 7F046EC4 46040080 */ add.s $f2, $f0, $f4 /* 07BA38 7F046EC8 4602603C */ c.lt.s $f12, $f2 /* 07BA3C 7F046ECC 00000000 */ nop /* 07BA40 7F046ED0 45000002 */ bc1f .Ljp7F046EDC /* 07BA44 7F046ED4 00000000 */ nop /* 07BA48 7F046ED8 46006086 */ mov.s $f2, $f12 .Ljp7F046EDC: /* 07BA4C 7F046EDC 46021202 */ mul.s $f8, $f2, $f2 /* 07BA50 7F046EE0 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07BA54 7F046EE4 44815000 */ mtc1 $at, $f10 /* 07BA58 7F046EE8 00000000 */ nop /* 07BA5C 7F046EEC 460A4182 */ mul.s $f6, $f8, $f10 /* 07BA60 7F046EF0 46103103 */ div.s $f4, $f6, $f16 /* 07BA64 7F046EF4 46049201 */ sub.s $f8, $f18, $f4 /* 07BA68 7F046EF8 4608703C */ c.lt.s $f14, $f8 /* 07BA6C 7F046EFC 00000000 */ nop /* 07BA70 7F046F00 45000004 */ bc1f .Ljp7F046F14 /* 07BA74 7F046F04 00000000 */ nop /* 07BA78 7F046F08 E60200D8 */ swc1 $f2, 0xd8($s0) /* 07BA7C 7F046F0C C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07BA80 7F046F10 C60E00C8 */ lwc1 $f14, 0xc8($s0) .Ljp7F046F14: /* 07BA84 7F046F14 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07BA88 7F046F18 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07BA8C 7F046F1C 460A0182 */ mul.s $f6, $f0, $f10 /* 07BA90 7F046F20 46067100 */ add.s $f4, $f14, $f6 /* 07BA94 7F046F24 E60400C8 */ swc1 $f4, 0xc8($s0) /* 07BA98 7F046F28 C60800C8 */ lwc1 $f8, 0xc8($s0) /* 07BA9C 7F046F2C 4608903E */ c.le.s $f18, $f8 /* 07BAA0 7F046F30 00000000 */ nop /* 07BAA4 7F046F34 450205BF */ bc1fl .Ljp7F048634 /* 07BAA8 7F046F38 92220003 */ lbu $v0, 3($s1) /* 07BAAC 7F046F3C E61200C8 */ swc1 $f18, 0xc8($s0) /* 07BAB0 7F046F40 E61600D8 */ swc1 $f22, 0xd8($s0) /* 07BAB4 7F046F44 100005BA */ b .Ljp7F048630 /* 07BAB8 7F046F48 AE0000D4 */ sw $zero, 0xd4($s0) /* 07BABC 7F046F4C C60000D8 */ lwc1 $f0, 0xd8($s0) .Ljp7F046F50: /* 07BAC0 7F046F50 3C018005 */ lui $at, %hi(D_80052AE4) # $at, 0x8005 /* 07BAC4 7F046F54 C4302B14 */ lwc1 $f16, %lo(D_80052AE4)($at) /* 07BAC8 7F046F58 46000282 */ mul.s $f10, $f0, $f0 /* 07BACC 7F046F5C 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07BAD0 7F046F60 44813000 */ mtc1 $at, $f6 /* 07BAD4 7F046F64 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07BAD8 7F046F68 24180001 */ li $t8, 1 /* 07BADC 7F046F6C 46065102 */ mul.s $f4, $f10, $f6 /* 07BAE0 7F046F70 46102083 */ div.s $f2, $f4, $f16 /* 07BAE4 7F046F74 46029200 */ add.s $f8, $f18, $f2 /* 07BAE8 7F046F78 4608703E */ c.le.s $f14, $f8 /* 07BAEC 7F046F7C 00000000 */ nop /* 07BAF0 7F046F80 4502000F */ bc1fl .Ljp7F046FC0 /* 07BAF4 7F046F84 C60C00DC */ lwc1 $f12, 0xdc($s0) /* 07BAF8 7F046F88 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07BAFC 7F046F8C 460A8182 */ mul.s $f6, $f16, $f10 /* 07BB00 7F046F90 46060101 */ sub.s $f4, $f0, $f6 /* 07BB04 7F046F94 E60400D8 */ swc1 $f4, 0xd8($s0) /* 07BB08 7F046F98 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07BB0C 7F046F9C 4610003C */ c.lt.s $f0, $f16 /* 07BB10 7F046FA0 00000000 */ nop /* 07BB14 7F046FA4 45000003 */ bc1f .Ljp7F046FB4 /* 07BB18 7F046FA8 00000000 */ nop /* 07BB1C 7F046FAC E61000D8 */ swc1 $f16, 0xd8($s0) /* 07BB20 7F046FB0 C60000D8 */ lwc1 $f0, 0xd8($s0) .Ljp7F046FB4: /* 07BB24 7F046FB4 1000001D */ b .Ljp7F04702C /* 07BB28 7F046FB8 C60E00C8 */ lwc1 $f14, 0xc8($s0) /* 07BB2C 7F046FBC C60C00DC */ lwc1 $f12, 0xdc($s0) .Ljp7F046FC0: /* 07BB30 7F046FC0 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07BB34 7F046FC4 460C003C */ c.lt.s $f0, $f12 /* 07BB38 7F046FC8 00000000 */ nop /* 07BB3C 7F046FCC 45000017 */ bc1f .Ljp7F04702C /* 07BB40 7F046FD0 00000000 */ nop /* 07BB44 7F046FD4 C42883B4 */ lwc1 $f8, %lo(global_timer_delta)($at) /* 07BB48 7F046FD8 46088282 */ mul.s $f10, $f16, $f8 /* 07BB4C 7F046FDC 460A0080 */ add.s $f2, $f0, $f10 /* 07BB50 7F046FE0 4602603C */ c.lt.s $f12, $f2 /* 07BB54 7F046FE4 00000000 */ nop /* 07BB58 7F046FE8 45000002 */ bc1f .Ljp7F046FF4 /* 07BB5C 7F046FEC 00000000 */ nop /* 07BB60 7F046FF0 46006086 */ mov.s $f2, $f12 .Ljp7F046FF4: /* 07BB64 7F046FF4 46021182 */ mul.s $f6, $f2, $f2 /* 07BB68 7F046FF8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07BB6C 7F046FFC 44812000 */ mtc1 $at, $f4 /* 07BB70 7F047000 00000000 */ nop /* 07BB74 7F047004 46043202 */ mul.s $f8, $f6, $f4 /* 07BB78 7F047008 46104283 */ div.s $f10, $f8, $f16 /* 07BB7C 7F04700C 460A9180 */ add.s $f6, $f18, $f10 /* 07BB80 7F047010 460E303C */ c.lt.s $f6, $f14 /* 07BB84 7F047014 00000000 */ nop /* 07BB88 7F047018 45000004 */ bc1f .Ljp7F04702C /* 07BB8C 7F04701C 00000000 */ nop /* 07BB90 7F047020 E60200D8 */ swc1 $f2, 0xd8($s0) /* 07BB94 7F047024 C60000D8 */ lwc1 $f0, 0xd8($s0) /* 07BB98 7F047028 C60E00C8 */ lwc1 $f14, 0xc8($s0) .Ljp7F04702C: /* 07BB9C 7F04702C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07BBA0 7F047030 C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07BBA4 7F047034 46040202 */ mul.s $f8, $f0, $f4 /* 07BBA8 7F047038 46087281 */ sub.s $f10, $f14, $f8 /* 07BBAC 7F04703C E60A00C8 */ swc1 $f10, 0xc8($s0) /* 07BBB0 7F047040 C60600C8 */ lwc1 $f6, 0xc8($s0) /* 07BBB4 7F047044 4612303E */ c.le.s $f6, $f18 /* 07BBB8 7F047048 00000000 */ nop /* 07BBBC 7F04704C 45020579 */ bc1fl .Ljp7F048634 /* 07BBC0 7F047050 92220003 */ lbu $v0, 3($s1) /* 07BBC4 7F047054 E61200C8 */ swc1 $f18, 0xc8($s0) /* 07BBC8 7F047058 E61600D8 */ swc1 $f22, 0xd8($s0) /* 07BBCC 7F04705C 10000574 */ b .Ljp7F048630 /* 07BBD0 7F047060 AE1800D4 */ sw $t8, 0xd4($s0) /* 07BBD4 7F047064 2401000D */ li $at, 13 .Ljp7F047068: /* 07BBD8 7F047068 5441023F */ bnel $v0, $at, .Ljp7F047968 /* 07BBDC 7F04706C 24010027 */ li $at, 39 /* 07BBE0 7F047070 8E280008 */ lw $t0, 8($s1) /* 07BBE4 7F047074 000848C0 */ sll $t1, $t0, 3 /* 07BBE8 7F047078 0522023B */ bltzl $t1, .Ljp7F047968 /* 07BBEC 7F04707C 24010027 */ li $at, 39 /* 07BBF0 7F047080 0FC2279B */ jal get_curplayer_positiondata /* 07BBF4 7F047084 8E700004 */ lw $s0, 4($s3) /* 07BBF8 7F047088 AFA004B0 */ sw $zero, 0x4b0($sp) /* 07BBFC 7F04708C AFA004AC */ sw $zero, 0x4ac($sp) /* 07BC00 7F047090 AFA004A8 */ sw $zero, 0x4a8($sp) /* 07BC04 7F047094 8E23000C */ lw $v1, 0xc($s1) /* 07BC08 7F047098 00409025 */ move $s2, $v0 /* 07BC0C 7F04709C 00035800 */ sll $t3, $v1, 0 /* 07BC10 7F0470A0 05610056 */ bgez $t3, .Ljp7F0471FC /* 07BC14 7F0470A4 00036040 */ sll $t4, $v1, 1 /* 07BC18 7F0470A8 05830008 */ bgezl $t4, .Ljp7F0470CC /* 07BC1C 7F0470AC C6020084 */ lwc1 $f2, 0x84($s0) /* 07BC20 7F0470B0 C6080090 */ lwc1 $f8, 0x90($s0) /* 07BC24 7F0470B4 C604009C */ lwc1 $f4, 0x9c($s0) /* 07BC28 7F0470B8 E6080084 */ swc1 $f8, 0x84($s0) /* 07BC2C 7F0470BC C6020084 */ lwc1 $f2, 0x84($s0) /* 07BC30 7F0470C0 10000036 */ b .Ljp7F04719C /* 07BC34 7F0470C4 E6040098 */ swc1 $f4, 0x98($s0) /* 07BC38 7F0470C8 C6020084 */ lwc1 $f2, 0x84($s0) .Ljp7F0470CC: /* 07BC3C 7F0470CC C60A0090 */ lwc1 $f10, 0x90($s0) /* 07BC40 7F0470D0 460A1032 */ c.eq.s $f2, $f10 /* 07BC44 7F0470D4 00000000 */ nop /* 07BC48 7F0470D8 45000030 */ bc1f .Ljp7F04719C /* 07BC4C 7F0470DC 00000000 */ nop /* 07BC50 7F0470E0 C6060098 */ lwc1 $f6, 0x98($s0) /* 07BC54 7F0470E4 C604009C */ lwc1 $f4, 0x9c($s0) /* 07BC58 7F0470E8 46043032 */ c.eq.s $f6, $f4 /* 07BC5C 7F0470EC 00000000 */ nop /* 07BC60 7F0470F0 4500002A */ bc1f .Ljp7F04719C /* 07BC64 7F0470F4 00000000 */ nop /* 07BC68 7F0470F8 0C002918 */ jal get_random_value /* 07BC6C 7F0470FC 00000000 */ nop /* 07BC70 7F047100 44824000 */ mtc1 $v0, $f8 /* 07BC74 7F047104 3C018005 */ lui $at, %hi(D_80052AE8) # $at, 0x8005 /* 07BC78 7F047108 C4342B18 */ lwc1 $f20, %lo(D_80052AE8)($at) /* 07BC7C 7F04710C 04410005 */ bgez $v0, .Ljp7F047124 /* 07BC80 7F047110 468042A0 */ cvt.s.w $f10, $f8 /* 07BC84 7F047114 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07BC88 7F047118 44813000 */ mtc1 $at, $f6 /* 07BC8C 7F04711C 00000000 */ nop /* 07BC90 7F047120 46065280 */ add.s $f10, $f10, $f6 .Ljp7F047124: /* 07BC94 7F047124 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07BC98 7F047128 44812000 */ mtc1 $at, $f4 /* 07BC9C 7F04712C 3C01421C */ li $at, 0x421C0000 # 39.000000 /* 07BCA0 7F047130 44813000 */ mtc1 $at, $f6 /* 07BCA4 7F047134 46045202 */ mul.s $f8, $f10, $f4 /* 07BCA8 7F047138 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07BCAC 7F04713C 44812000 */ mtc1 $at, $f4 /* 07BCB0 7F047140 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07BCB4 7F047144 46064282 */ mul.s $f10, $f8, $f6 /* 07BCB8 7F047148 46045200 */ add.s $f8, $f10, $f4 /* 07BCBC 7F04714C 44815000 */ mtc1 $at, $f10 /* 07BCC0 7F047150 46144182 */ mul.s $f6, $f8, $f20 /* 07BCC4 7F047154 460A3103 */ div.s $f4, $f6, $f10 /* 07BCC8 7F047158 0C002918 */ jal get_random_value /* 07BCCC 7F04715C E6040098 */ swc1 $f4, 0x98($s0) /* 07BCD0 7F047160 44824000 */ mtc1 $v0, $f8 /* 07BCD4 7F047164 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07BCD8 7F047168 04410004 */ bgez $v0, .Ljp7F04717C /* 07BCDC 7F04716C 468041A0 */ cvt.s.w $f6, $f8 /* 07BCE0 7F047170 44815000 */ mtc1 $at, $f10 /* 07BCE4 7F047174 00000000 */ nop /* 07BCE8 7F047178 460A3180 */ add.s $f6, $f6, $f10 .Ljp7F04717C: /* 07BCEC 7F04717C 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07BCF0 7F047180 44812000 */ mtc1 $at, $f4 /* 07BCF4 7F047184 00000000 */ nop /* 07BCF8 7F047188 46043202 */ mul.s $f8, $f6, $f4 /* 07BCFC 7F04718C 00000000 */ nop /* 07BD00 7F047190 46144282 */ mul.s $f10, $f8, $f20 /* 07BD04 7F047194 E60A0084 */ swc1 $f10, 0x84($s0) /* 07BD08 7F047198 C6020084 */ lwc1 $f2, 0x84($s0) .Ljp7F04719C: /* 07BD0C 7F04719C 3C018005 */ lui $at, %hi(D_80052AEC) # $at, 0x8005 /* 07BD10 7F0471A0 C4202B1C */ lwc1 $f0, %lo(D_80052AEC)($at) /* 07BD14 7F0471A4 3C018005 */ lui $at, %hi(D_80052AF4) # $at, 0x8005 /* 07BD18 7F0471A8 C4262B24 */ lwc1 $f6, %lo(D_80052AF4)($at) /* 07BD1C 7F0471AC 44051000 */ mfc1 $a1, $f2 /* 07BD20 7F0471B0 44070000 */ mfc1 $a3, $f0 /* 07BD24 7F0471B4 26040090 */ addiu $a0, $s0, 0x90 /* 07BD28 7F0471B8 26060094 */ addiu $a2, $s0, 0x94 /* 07BD2C 7F0471BC E7A00010 */ swc1 $f0, 0x10($sp) /* 07BD30 7F0471C0 0FC10D03 */ jal sub_GAME_7F04310C /* 07BD34 7F0471C4 E7A60014 */ swc1 $f6, 0x14($sp) /* 07BD38 7F0471C8 3C018005 */ lui $at, %hi(D_80052AF8) # $at, 0x8005 /* 07BD3C 7F0471CC C4202B28 */ lwc1 $f0, %lo(D_80052AF8)($at) /* 07BD40 7F0471D0 3C018005 */ lui $at, %hi(D_80052AFC) # $at, 0x8005 /* 07BD44 7F0471D4 C4242B2C */ lwc1 $f4, %lo(D_80052AFC)($at) /* 07BD48 7F0471D8 8E050098 */ lw $a1, 0x98($s0) /* 07BD4C 7F0471DC 44070000 */ mfc1 $a3, $f0 /* 07BD50 7F0471E0 2604009C */ addiu $a0, $s0, 0x9c /* 07BD54 7F0471E4 260600A0 */ addiu $a2, $s0, 0xa0 /* 07BD58 7F0471E8 E7A00010 */ swc1 $f0, 0x10($sp) /* 07BD5C 7F0471EC 0FC10D03 */ jal sub_GAME_7F04310C /* 07BD60 7F0471F0 E7A40014 */ swc1 $f4, 0x14($sp) /* 07BD64 7F0471F4 1000050F */ b .Ljp7F048634 /* 07BD68 7F0471F8 92220003 */ lbu $v0, 3($s1) .Ljp7F0471FC: /* 07BD6C 7F0471FC C6480008 */ lwc1 $f8, 8($s2) /* 07BD70 7F047200 C62A0058 */ lwc1 $f10, 0x58($s1) /* 07BD74 7F047204 C646000C */ lwc1 $f6, 0xc($s2) /* 07BD78 7F047208 C624005C */ lwc1 $f4, 0x5c($s1) /* 07BD7C 7F04720C 460A4001 */ sub.s $f0, $f8, $f10 /* 07BD80 7F047210 3C0141A0 */ li $at, 0x41A00000 # 20.000000 /* 07BD84 7F047214 44815000 */ mtc1 $at, $f10 /* 07BD88 7F047218 46043201 */ sub.s $f8, $f6, $f4 /* 07BD8C 7F04721C 460A4181 */ sub.s $f6, $f8, $f10 /* 07BD90 7F047220 46000282 */ mul.s $f10, $f0, $f0 /* 07BD94 7F047224 E7A604C4 */ swc1 $f6, 0x4c4($sp) /* 07BD98 7F047228 C6280060 */ lwc1 $f8, 0x60($s1) /* 07BD9C 7F04722C C6440010 */ lwc1 $f4, 0x10($s2) /* 07BDA0 7F047230 E7A004C8 */ swc1 $f0, 0x4c8($sp) /* 07BDA4 7F047234 46082081 */ sub.s $f2, $f4, $f8 /* 07BDA8 7F047238 46021182 */ mul.s $f6, $f2, $f2 /* 07BDAC 7F04723C E7A204C0 */ swc1 $f2, 0x4c0($sp) /* 07BDB0 7F047240 46065500 */ add.s $f20, $f10, $f6 /* 07BDB4 7F047244 E7B404BC */ swc1 $f20, 0x4bc($sp) /* 07BDB8 7F047248 0C007E08 */ jal sqrtf /* 07BDBC 7F04724C 4600A306 */ mov.s $f12, $f20 /* 07BDC0 7F047250 E7A004B4 */ swc1 $f0, 0x4b4($sp) /* 07BDC4 7F047254 8E2E0008 */ lw $t6, 8($s1) /* 07BDC8 7F047258 46000086 */ mov.s $f2, $f0 /* 07BDCC 7F04725C 000E5100 */ sll $t2, $t6, 4 /* 07BDD0 7F047260 05430008 */ bgezl $t2, .Ljp7F047284 /* 07BDD4 7F047264 C7AC04BC */ lwc1 $f12, 0x4bc($sp) /* 07BDD8 7F047268 C7A004C4 */ lwc1 $f0, 0x4c4($sp) /* 07BDDC 7F04726C 46000102 */ mul.s $f4, $f0, $f0 /* 07BDE0 7F047270 4604A300 */ add.s $f12, $f20, $f4 /* 07BDE4 7F047274 0C007E08 */ jal sqrtf /* 07BDE8 7F047278 E7AC04BC */ swc1 $f12, 0x4bc($sp) /* 07BDEC 7F04727C 46000086 */ mov.s $f2, $f0 /* 07BDF0 7F047280 C7AC04BC */ lwc1 $f12, 0x4bc($sp) .Ljp7F047284: /* 07BDF4 7F047284 0FC0B553 */ jal sub_GAME_7F02D244 /* 07BDF8 7F047288 E7A204B8 */ swc1 $f2, 0x4b8($sp) /* 07BDFC 7F04728C E7A004A4 */ swc1 $f0, 0x4a4($sp) /* 07BE00 7F047290 C6080098 */ lwc1 $f8, 0x98($s0) /* 07BE04 7F047294 C6100084 */ lwc1 $f16, 0x84($s0) /* 07BE08 7F047298 C7A204B8 */ lwc1 $f2, 0x4b8($sp) /* 07BE0C 7F04729C E7A804D8 */ swc1 $f8, 0x4d8($sp) /* 07BE10 7F0472A0 C60A00A8 */ lwc1 $f10, 0xa8($s0) /* 07BE14 7F0472A4 460A103E */ c.le.s $f2, $f10 /* 07BE18 7F0472A8 00000000 */ nop /* 07BE1C 7F0472AC 45020096 */ bc1fl .Ljp7F047508 /* 07BE20 7F0472B0 8FA804B0 */ lw $t0, 0x4b0($sp) /* 07BE24 7F0472B4 C7AC04C8 */ lwc1 $f12, 0x4c8($sp) /* 07BE28 7F0472B8 C7AE04C0 */ lwc1 $f14, 0x4c0($sp) /* 07BE2C 7F0472BC 0FC16BD4 */ jal atan2f /* 07BE30 7F0472C0 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07BE34 7F0472C4 E7A004A0 */ swc1 $f0, 0x4a0($sp) /* 07BE38 7F0472C8 C7AC04C4 */ lwc1 $f12, 0x4c4($sp) /* 07BE3C 7F0472CC 0FC16BD4 */ jal atan2f /* 07BE40 7F0472D0 C7AE04B4 */ lwc1 $f14, 0x4b4($sp) /* 07BE44 7F0472D4 E7A0049C */ swc1 $f0, 0x49c($sp) /* 07BE48 7F0472D8 8E220008 */ lw $v0, 8($s1) /* 07BE4C 7F0472DC C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07BE50 7F0472E0 24190001 */ li $t9, 1 /* 07BE54 7F0472E4 00027840 */ sll $t7, $v0, 1 /* 07BE58 7F0472E8 05E00003 */ bltz $t7, .Ljp7F0472F8 /* 07BE5C 7F0472EC 00026880 */ sll $t5, $v0, 2 /* 07BE60 7F0472F0 05A10005 */ bgez $t5, .Ljp7F047308 /* 07BE64 7F0472F4 C7A604A0 */ lwc1 $f6, 0x4a0($sp) .Ljp7F0472F8: /* 07BE68 7F0472F8 3C018005 */ lui $at, %hi(D_80052B00) # $at, 0x8005 /* 07BE6C 7F0472FC C4342B30 */ lwc1 $f20, %lo(D_80052B00)($at) /* 07BE70 7F047300 10000027 */ b .Ljp7F0473A0 /* 07BE74 7F047304 AFB904B0 */ sw $t9, 0x4b0($sp) .Ljp7F047308: /* 07BE78 7F047308 C6040090 */ lwc1 $f4, 0x90($s0) /* 07BE7C 7F04730C 3C018005 */ lui $at, %hi(D_80052B04) # $at, 0x8005 /* 07BE80 7F047310 46043301 */ sub.s $f12, $f6, $f4 /* 07BE84 7F047314 4616603C */ c.lt.s $f12, $f22 /* 07BE88 7F047318 00000000 */ nop /* 07BE8C 7F04731C 45000003 */ bc1f .Ljp7F04732C /* 07BE90 7F047320 00000000 */ nop /* 07BE94 7F047324 C4342B34 */ lwc1 $f20, %lo(D_80052B04)($at) /* 07BE98 7F047328 46146300 */ add.s $f12, $f12, $f20 .Ljp7F04732C: /* 07BE9C 7F04732C 3C018005 */ lui $at, %hi(D_80052B08) # $at, 0x8005 /* 07BEA0 7F047330 C4342B38 */ lwc1 $f20, %lo(D_80052B08)($at) /* 07BEA4 7F047334 3C018005 */ lui $at, %hi(D_80052B0C) # $at, 0x8005 /* 07BEA8 7F047338 C4282B3C */ lwc1 $f8, %lo(D_80052B0C)($at) /* 07BEAC 7F04733C 3C018005 */ lui $at, %hi(D_80052B10) # $at, 0x8005 /* 07BEB0 7F047340 460C403C */ c.lt.s $f8, $f12 /* 07BEB4 7F047344 00000000 */ nop /* 07BEB8 7F047348 45020003 */ bc1fl .Ljp7F047358 /* 07BEBC 7F04734C C60A009C */ lwc1 $f10, 0x9c($s0) /* 07BEC0 7F047350 46146301 */ sub.s $f12, $f12, $f20 /* 07BEC4 7F047354 C60A009C */ lwc1 $f10, 0x9c($s0) .Ljp7F047358: /* 07BEC8 7F047358 460A0081 */ sub.s $f2, $f0, $f10 /* 07BECC 7F04735C 4616103C */ c.lt.s $f2, $f22 /* 07BED0 7F047360 00000000 */ nop /* 07BED4 7F047364 45000001 */ bc1f .Ljp7F04736C /* 07BED8 7F047368 00000000 */ nop .Ljp7F04736C: /* 07BEDC 7F04736C C4262B40 */ lwc1 $f6, %lo(D_80052B10)($at) /* 07BEE0 7F047370 3C018005 */ lui $at, %hi(D_80052B14) # $at, 0x8005 /* 07BEE4 7F047374 4606603C */ c.lt.s $f12, $f6 /* 07BEE8 7F047378 00000000 */ nop /* 07BEEC 7F04737C 45020009 */ bc1fl .Ljp7F0473A4 /* 07BEF0 7F047380 8FA804B0 */ lw $t0, 0x4b0($sp) /* 07BEF4 7F047384 C4242B44 */ lwc1 $f4, %lo(D_80052B14)($at) /* 07BEF8 7F047388 24180001 */ li $t8, 1 /* 07BEFC 7F04738C 460C203C */ c.lt.s $f4, $f12 /* 07BF00 7F047390 00000000 */ nop /* 07BF04 7F047394 45020003 */ bc1fl .Ljp7F0473A4 /* 07BF08 7F047398 8FA804B0 */ lw $t0, 0x4b0($sp) /* 07BF0C 7F04739C AFB804B0 */ sw $t8, 0x4b0($sp) .Ljp7F0473A0: /* 07BF10 7F0473A0 8FA804B0 */ lw $t0, 0x4b0($sp) .Ljp7F0473A4: /* 07BF14 7F0473A4 C7A804A0 */ lwc1 $f8, 0x4a0($sp) /* 07BF18 7F0473A8 02402025 */ move $a0, $s2 /* 07BF1C 7F0473AC 11000055 */ beqz $t0, .Ljp7F047504 /* 07BF20 7F0473B0 00002825 */ move $a1, $zero /* 07BF24 7F0473B4 C60A0084 */ lwc1 $f10, 0x84($s0) /* 07BF28 7F0473B8 3C018005 */ lui $at, %hi(D_80052B18) # $at, 0x8005 /* 07BF2C 7F0473BC C4262B48 */ lwc1 $f6, %lo(D_80052B18)($at) /* 07BF30 7F0473C0 460A4001 */ sub.s $f0, $f8, $f10 /* 07BF34 7F0473C4 8E690014 */ lw $t1, 0x14($s3) /* 07BF38 7F0473C8 3C018005 */ lui $at, %hi(D_80052B1C) # $at, 0x8005 /* 07BF3C 7F0473CC 4606003C */ c.lt.s $f0, $f6 /* 07BF40 7F0473D0 AFA90494 */ sw $t1, 0x494($sp) /* 07BF44 7F0473D4 45000003 */ bc1f .Ljp7F0473E4 /* 07BF48 7F0473D8 00000000 */ nop /* 07BF4C 7F0473DC 10000007 */ b .Ljp7F0473FC /* 07BF50 7F0473E0 46140000 */ add.s $f0, $f0, $f20 .Ljp7F0473E4: /* 07BF54 7F0473E4 C4242B4C */ lwc1 $f4, %lo(D_80052B1C)($at) /* 07BF58 7F0473E8 4600203E */ c.le.s $f4, $f0 /* 07BF5C 7F0473EC 00000000 */ nop /* 07BF60 7F0473F0 45020003 */ bc1fl .Ljp7F047400 /* 07BF64 7F0473F4 E7A00498 */ swc1 $f0, 0x498($sp) /* 07BF68 7F0473F8 46140001 */ sub.s $f0, $f0, $f20 .Ljp7F0473FC: /* 07BF6C 7F0473FC E7A00498 */ swc1 $f0, 0x498($sp) .Ljp7F047400: /* 07BF70 7F047400 0FC229DD */ jal sub_GAME_7F08A03C /* 07BF74 7F047404 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07BF78 7F047408 C7A00498 */ lwc1 $f0, 0x498($sp) /* 07BF7C 7F04740C C6080088 */ lwc1 $f8, 0x88($s0) /* 07BF80 7F047410 C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07BF84 7F047414 4608003E */ c.le.s $f0, $f8 /* 07BF88 7F047418 00000000 */ nop /* 07BF8C 7F04741C 45020027 */ bc1fl .Ljp7F0474BC /* 07BF90 7F047420 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BF94 7F047424 C60A008C */ lwc1 $f10, 0x8c($s0) /* 07BF98 7F047428 240B001B */ li $t3, 27 /* 07BF9C 7F04742C 4600503E */ c.le.s $f10, $f0 /* 07BFA0 7F047430 00000000 */ nop /* 07BFA4 7F047434 45020021 */ bc1fl .Ljp7F0474BC /* 07BFA8 7F047438 8E0200B8 */ lw $v0, 0xb8($s0) /* 07BFAC 7F04743C C6460010 */ lwc1 $f6, 0x10($s2) /* 07BFB0 7F047440 8E650008 */ lw $a1, 8($s3) /* 07BFB4 7F047444 8E660010 */ lw $a2, 0x10($s3) /* 07BFB8 7F047448 8E470008 */ lw $a3, 8($s2) /* 07BFBC 7F04744C AFAB0014 */ sw $t3, 0x14($sp) /* 07BFC0 7F047450 E7A60010 */ swc1 $f6, 0x10($sp) /* 07BFC4 7F047454 C660000C */ lwc1 $f0, 0xc($s3) /* 07BFC8 7F047458 27A40494 */ addiu $a0, $sp, 0x494 /* 07BFCC 7F04745C E7A00018 */ swc1 $f0, 0x18($sp) /* 07BFD0 7F047460 E7A0001C */ swc1 $f0, 0x1c($sp) /* 07BFD4 7F047464 C642000C */ lwc1 $f2, 0xc($s2) /* 07BFD8 7F047468 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07BFDC 7F04746C E7A20020 */ swc1 $f2, 0x20($sp) /* 07BFE0 7F047470 0FC2C675 */ jal sub_GAME_7F0B0E24 /* 07BFE4 7F047474 E7A20024 */ swc1 $f2, 0x24($sp) /* 07BFE8 7F047478 1040000F */ beqz $v0, .Ljp7F0474B8 /* 07BFEC 7F04747C C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07BFF0 7F047480 8FAC0494 */ lw $t4, 0x494($sp) /* 07BFF4 7F047484 8E4E0014 */ lw $t6, 0x14($s2) /* 07BFF8 7F047488 558E000C */ bnel $t4, $t6, .Ljp7F0474BC /* 07BFFC 7F04748C 8E0200B8 */ lw $v0, 0xb8($s0) /* 07C000 7F047490 8E2A0008 */ lw $t2, 8($s1) /* 07C004 7F047494 3C012000 */ lui $at, 0x2000 /* 07C008 7F047498 240D0001 */ li $t5, 1 /* 07C00C 7F04749C 01417825 */ or $t7, $t2, $at /* 07C010 7F0474A0 AE2F0008 */ sw $t7, 8($s1) /* 07C014 7F0474A4 C7A4049C */ lwc1 $f4, 0x49c($sp) /* 07C018 7F0474A8 AFAD04A8 */ sw $t5, 0x4a8($sp) /* 07C01C 7F0474AC C7B004A0 */ lwc1 $f16, 0x4a0($sp) /* 07C020 7F0474B0 1000000F */ b .Ljp7F0474F0 /* 07C024 7F0474B4 E7A404D8 */ swc1 $f4, 0x4d8($sp) .Ljp7F0474B8: /* 07C028 7F0474B8 8E0200B8 */ lw $v0, 0xb8($s0) .Ljp7F0474BC: /* 07C02C 7F0474BC 3C198005 */ lui $t9, %hi(global_timer) # $t9, 0x8005 /* 07C030 7F0474C0 0442000B */ bltzl $v0, .Ljp7F0474F0 /* 07C034 7F0474C4 AFA004B0 */ sw $zero, 0x4b0($sp) /* 07C038 7F0474C8 8F3983AC */ lw $t9, %lo(global_timer)($t9) /* 07C03C 7F0474CC 2738FF88 */ addiu $t8, $t9, -0x78 /* 07C040 7F0474D0 0302082A */ slt $at, $t8, $v0 /* 07C044 7F0474D4 50200006 */ beql $at, $zero, .Ljp7F0474F0 /* 07C048 7F0474D8 AFA004B0 */ sw $zero, 0x4b0($sp) /* 07C04C 7F0474DC C608009C */ lwc1 $f8, 0x9c($s0) /* 07C050 7F0474E0 C6100090 */ lwc1 $f16, 0x90($s0) /* 07C054 7F0474E4 10000002 */ b .Ljp7F0474F0 /* 07C058 7F0474E8 E7A804D8 */ swc1 $f8, 0x4d8($sp) /* 07C05C 7F0474EC AFA004B0 */ sw $zero, 0x4b0($sp) .Ljp7F0474F0: /* 07C060 7F0474F0 02402025 */ move $a0, $s2 /* 07C064 7F0474F4 24050001 */ li $a1, 1 /* 07C068 7F0474F8 0FC229DD */ jal sub_GAME_7F08A03C /* 07C06C 7F0474FC E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07C070 7F047500 C7B004DC */ lwc1 $f16, 0x4dc($sp) .Ljp7F047504: /* 07C074 7F047504 8FA804B0 */ lw $t0, 0x4b0($sp) .Ljp7F047508: /* 07C078 7F047508 3C018005 */ lui $at, %hi(D_80052B20) # $at, 0x8005 /* 07C07C 7F04750C C4342B50 */ lwc1 $f20, %lo(D_80052B20)($at) /* 07C080 7F047510 51000007 */ beql $t0, $zero, .Ljp7F047530 /* 07C084 7F047514 8E0900D0 */ lw $t1, 0xd0($s0) /* 07C088 7F047518 C7AC04BC */ lwc1 $f12, 0x4bc($sp) /* 07C08C 7F04751C 0FC0B553 */ jal sub_GAME_7F02D244 /* 07C090 7F047520 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07C094 7F047524 C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07C098 7F047528 E7A004A4 */ swc1 $f0, 0x4a4($sp) /* 07C09C 7F04752C 8E0900D0 */ lw $t1, 0xd0($s0) .Ljp7F047530: /* 07C0A0 7F047530 1120001F */ beqz $t1, .Ljp7F0475B0 /* 07C0A4 7F047534 3C0B8005 */ lui $t3, %hi(global_timer) # $t3, 0x8005 /* 07C0A8 7F047538 8D6B83AC */ lw $t3, %lo(global_timer)($t3) /* 07C0AC 7F04753C 24010078 */ li $at, 120 /* 07C0B0 7F047540 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07C0B4 7F047544 0161001A */ div $zero, $t3, $at /* 07C0B8 7F047548 00006010 */ mfhi $t4 /* 07C0BC 7F04754C 448C5000 */ mtc1 $t4, $f10 /* 07C0C0 7F047550 3C0142F0 */ li $at, 0x42F00000 # 120.000000 /* 07C0C4 7F047554 44814000 */ mtc1 $at, $f8 /* 07C0C8 7F047558 468051A0 */ cvt.s.w $f6, $f10 /* 07C0CC 7F04755C 46143102 */ mul.s $f4, $f6, $f20 /* 07C0D0 7F047560 0FC160F3 */ jal sinf /* 07C0D4 7F047564 46082303 */ div.s $f12, $f4, $f8 /* 07C0D8 7F047568 3C018005 */ lui $at, %hi(D_80052B24) # $at, 0x8005 /* 07C0DC 7F04756C C4262B54 */ lwc1 $f6, %lo(D_80052B24)($at) /* 07C0E0 7F047570 C7AA04A4 */ lwc1 $f10, 0x4a4($sp) /* 07C0E4 7F047574 C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07C0E8 7F047578 46065102 */ mul.s $f4, $f10, $f6 /* 07C0EC 7F04757C 00000000 */ nop /* 07C0F0 7F047580 46002202 */ mul.s $f8, $f4, $f0 /* 07C0F4 7F047584 46088400 */ add.s $f16, $f16, $f8 /* 07C0F8 7F047588 4616803C */ c.lt.s $f16, $f22 /* 07C0FC 7F04758C 00000000 */ nop /* 07C100 7F047590 45000002 */ bc1f .Ljp7F04759C /* 07C104 7F047594 00000000 */ nop /* 07C108 7F047598 46148400 */ add.s $f16, $f16, $f20 .Ljp7F04759C: /* 07C10C 7F04759C 4610A03E */ c.le.s $f20, $f16 /* 07C110 7F0475A0 00000000 */ nop /* 07C114 7F0475A4 45020003 */ bc1fl .Ljp7F0475B4 /* 07C118 7F0475A8 C6020084 */ lwc1 $f2, 0x84($s0) /* 07C11C 7F0475AC 46148401 */ sub.s $f16, $f16, $f20 .Ljp7F0475B0: /* 07C120 7F0475B0 C6020084 */ lwc1 $f2, 0x84($s0) .Ljp7F0475B4: /* 07C124 7F0475B4 3C018005 */ lui $at, %hi(D_80052B28) # $at, 0x8005 /* 07C128 7F0475B8 C42A2B58 */ lwc1 $f10, %lo(D_80052B28)($at) /* 07C12C 7F0475BC 46028001 */ sub.s $f0, $f16, $f2 /* 07C130 7F0475C0 26040090 */ addiu $a0, $s0, 0x90 /* 07C134 7F0475C4 460A003C */ c.lt.s $f0, $f10 /* 07C138 7F0475C8 00000000 */ nop /* 07C13C 7F0475CC 45000003 */ bc1f .Ljp7F0475DC /* 07C140 7F0475D0 00000000 */ nop /* 07C144 7F0475D4 10000008 */ b .Ljp7F0475F8 /* 07C148 7F0475D8 46140000 */ add.s $f0, $f0, $f20 .Ljp7F0475DC: /* 07C14C 7F0475DC 3C018005 */ lui $at, %hi(D_80052B2C) # $at, 0x8005 /* 07C150 7F0475E0 C4262B5C */ lwc1 $f6, %lo(D_80052B2C)($at) /* 07C154 7F0475E4 4600303E */ c.le.s $f6, $f0 /* 07C158 7F0475E8 00000000 */ nop /* 07C15C 7F0475EC 45020003 */ bc1fl .Ljp7F0475FC /* 07C160 7F0475F0 C60C0088 */ lwc1 $f12, 0x88($s0) /* 07C164 7F0475F4 46140001 */ sub.s $f0, $f0, $f20 .Ljp7F0475F8: /* 07C168 7F0475F8 C60C0088 */ lwc1 $f12, 0x88($s0) .Ljp7F0475FC: /* 07C16C 7F0475FC 3C018005 */ lui $at, %hi(D_80052B30) # $at, 0x8005 /* 07C170 7F047600 4600603C */ c.lt.s $f12, $f0 /* 07C174 7F047604 00000000 */ nop /* 07C178 7F047608 45020004 */ bc1fl .Ljp7F04761C /* 07C17C 7F04760C C60C008C */ lwc1 $f12, 0x8c($s0) /* 07C180 7F047610 10000007 */ b .Ljp7F047630 /* 07C184 7F047614 460C1400 */ add.s $f16, $f2, $f12 /* 07C188 7F047618 C60C008C */ lwc1 $f12, 0x8c($s0) .Ljp7F04761C: /* 07C18C 7F04761C 460C003C */ c.lt.s $f0, $f12 /* 07C190 7F047620 00000000 */ nop /* 07C194 7F047624 45020003 */ bc1fl .Ljp7F047634 /* 07C198 7F047628 4616803C */ c.lt.s $f16, $f22 /* 07C19C 7F04762C 460C1400 */ add.s $f16, $f2, $f12 .Ljp7F047630: /* 07C1A0 7F047630 4616803C */ c.lt.s $f16, $f22 .Ljp7F047634: /* 07C1A4 7F047634 00000000 */ nop /* 07C1A8 7F047638 45020003 */ bc1fl .Ljp7F047648 /* 07C1AC 7F04763C 4610A03E */ c.le.s $f20, $f16 /* 07C1B0 7F047640 46148400 */ add.s $f16, $f16, $f20 /* 07C1B4 7F047644 4610A03E */ c.le.s $f20, $f16 .Ljp7F047648: /* 07C1B8 7F047648 00000000 */ nop /* 07C1BC 7F04764C 45000002 */ bc1f .Ljp7F047658 /* 07C1C0 7F047650 00000000 */ nop /* 07C1C4 7F047654 46148401 */ sub.s $f16, $f16, $f20 .Ljp7F047658: /* 07C1C8 7F047658 C4202B60 */ lwc1 $f0, %lo(D_80052B30)($at) /* 07C1CC 7F04765C 44058000 */ mfc1 $a1, $f16 /* 07C1D0 7F047660 26060094 */ addiu $a2, $s0, 0x94 /* 07C1D4 7F047664 E7A00010 */ swc1 $f0, 0x10($sp) /* 07C1D8 7F047668 C60400A4 */ lwc1 $f4, 0xa4($s0) /* 07C1DC 7F04766C 44070000 */ mfc1 $a3, $f0 /* 07C1E0 7F047670 E7B004DC */ swc1 $f16, 0x4dc($sp) /* 07C1E4 7F047674 0FC10D03 */ jal sub_GAME_7F04310C /* 07C1E8 7F047678 E7A40014 */ swc1 $f4, 0x14($sp) /* 07C1EC 7F04767C 3C018005 */ lui $at, %hi(D_80052B34) # $at, 0x8005 /* 07C1F0 7F047680 C4202B64 */ lwc1 $f0, %lo(D_80052B34)($at) /* 07C1F4 7F047684 2604009C */ addiu $a0, $s0, 0x9c /* 07C1F8 7F047688 8FA504D8 */ lw $a1, 0x4d8($sp) /* 07C1FC 7F04768C E7A00010 */ swc1 $f0, 0x10($sp) /* 07C200 7F047690 C60800A4 */ lwc1 $f8, 0xa4($s0) /* 07C204 7F047694 44070000 */ mfc1 $a3, $f0 /* 07C208 7F047698 260600A0 */ addiu $a2, $s0, 0xa0 /* 07C20C 7F04769C 0FC10D03 */ jal sub_GAME_7F04310C /* 07C210 7F0476A0 E7A80014 */ swc1 $f8, 0x14($sp) /* 07C214 7F0476A4 C7B004DC */ lwc1 $f16, 0x4dc($sp) /* 07C218 7F0476A8 C60A0090 */ lwc1 $f10, 0x90($s0) /* 07C21C 7F0476AC 3C018005 */ lui $at, %hi(D_80052B38) # $at, 0x8005 /* 07C220 7F0476B0 C7A604D8 */ lwc1 $f6, 0x4d8($sp) /* 07C224 7F0476B4 460A8301 */ sub.s $f12, $f16, $f10 /* 07C228 7F0476B8 4616603C */ c.lt.s $f12, $f22 /* 07C22C 7F0476BC 00000000 */ nop /* 07C230 7F0476C0 45000002 */ bc1f .Ljp7F0476CC /* 07C234 7F0476C4 00000000 */ nop /* 07C238 7F0476C8 46146300 */ add.s $f12, $f12, $f20 .Ljp7F0476CC: /* 07C23C 7F0476CC C4202B68 */ lwc1 $f0, %lo(D_80052B38)($at) /* 07C240 7F0476D0 460C003C */ c.lt.s $f0, $f12 /* 07C244 7F0476D4 00000000 */ nop /* 07C248 7F0476D8 45020003 */ bc1fl .Ljp7F0476E8 /* 07C24C 7F0476DC C604009C */ lwc1 $f4, 0x9c($s0) /* 07C250 7F0476E0 46146301 */ sub.s $f12, $f12, $f20 /* 07C254 7F0476E4 C604009C */ lwc1 $f4, 0x9c($s0) .Ljp7F0476E8: /* 07C258 7F0476E8 46043081 */ sub.s $f2, $f6, $f4 /* 07C25C 7F0476EC 4616103C */ c.lt.s $f2, $f22 /* 07C260 7F0476F0 00000000 */ nop /* 07C264 7F0476F4 45020003 */ bc1fl .Ljp7F047704 /* 07C268 7F0476F8 4602003C */ c.lt.s $f0, $f2 /* 07C26C 7F0476FC 46141080 */ add.s $f2, $f2, $f20 /* 07C270 7F047700 4602003C */ c.lt.s $f0, $f2 .Ljp7F047704: /* 07C274 7F047704 00000000 */ nop /* 07C278 7F047708 45020003 */ bc1fl .Ljp7F047718 /* 07C27C 7F04770C AE0000D0 */ sw $zero, 0xd0($s0) /* 07C280 7F047710 46141081 */ sub.s $f2, $f2, $f20 /* 07C284 7F047714 AE0000D0 */ sw $zero, 0xd0($s0) .Ljp7F047718: /* 07C288 7F047718 8FAE04B0 */ lw $t6, 0x4b0($sp) /* 07C28C 7F04771C C7A804A4 */ lwc1 $f8, 0x4a4($sp) /* 07C290 7F047720 51C00047 */ beql $t6, $zero, .Ljp7F047840 /* 07C294 7F047724 8FB904AC */ lw $t9, 0x4ac($sp) /* 07C298 7F047728 4608603C */ c.lt.s $f12, $f8 /* 07C29C 7F04772C C7AA04A4 */ lwc1 $f10, 0x4a4($sp) /* 07C2A0 7F047730 4502001B */ bc1fl .Ljp7F0477A0 /* 07C2A4 7F047734 460A5000 */ add.s $f0, $f10, $f10 /* 07C2A8 7F047738 46004007 */ neg.s $f0, $f8 /* 07C2AC 7F04773C 460C003C */ c.lt.s $f0, $f12 /* 07C2B0 7F047740 00000000 */ nop /* 07C2B4 7F047744 45020016 */ bc1fl .Ljp7F0477A0 /* 07C2B8 7F047748 460A5000 */ add.s $f0, $f10, $f10 /* 07C2BC 7F04774C 4608103C */ c.lt.s $f2, $f8 /* 07C2C0 7F047750 00000000 */ nop /* 07C2C4 7F047754 45020012 */ bc1fl .Ljp7F0477A0 /* 07C2C8 7F047758 460A5000 */ add.s $f0, $f10, $f10 /* 07C2CC 7F04775C 4602003C */ c.lt.s $f0, $f2 /* 07C2D0 7F047760 240A0001 */ li $t2, 1 /* 07C2D4 7F047764 4502000E */ bc1fl .Ljp7F0477A0 /* 07C2D8 7F047768 460A5000 */ add.s $f0, $f10, $f10 /* 07C2DC 7F04776C AE0A00D0 */ sw $t2, 0xd0($s0) /* 07C2E0 7F047770 8FAD04A8 */ lw $t5, 0x4a8($sp) /* 07C2E4 7F047774 240F0001 */ li $t7, 1 /* 07C2E8 7F047778 AFAF04AC */ sw $t7, 0x4ac($sp) /* 07C2EC 7F04777C 11A0002F */ beqz $t5, .Ljp7F04783C /* 07C2F0 7F047780 3C198005 */ lui $t9, %hi(global_timer) # $t9, 0x8005 /* 07C2F4 7F047784 8F3983AC */ lw $t9, %lo(global_timer)($t9) /* 07C2F8 7F047788 3C188005 */ lui $t8, %hi(global_timer) # $t8, 0x8005 /* 07C2FC 7F04778C AE1900B8 */ sw $t9, 0xb8($s0) /* 07C300 7F047790 8F1883AC */ lw $t8, %lo(global_timer)($t8) /* 07C304 7F047794 10000029 */ b .Ljp7F04783C /* 07C308 7F047798 AE1800BC */ sw $t8, 0xbc($s0) /* 07C30C 7F04779C 460A5000 */ add.s $f0, $f10, $f10 .Ljp7F0477A0: /* 07C310 7F0477A0 4600603C */ c.lt.s $f12, $f0 /* 07C314 7F0477A4 00000000 */ nop /* 07C318 7F0477A8 45020018 */ bc1fl .Ljp7F04780C /* 07C31C 7F0477AC 8E0200B8 */ lw $v0, 0xb8($s0) /* 07C320 7F0477B0 46000387 */ neg.s $f14, $f0 /* 07C324 7F0477B4 460C703C */ c.lt.s $f14, $f12 /* 07C328 7F0477B8 00000000 */ nop /* 07C32C 7F0477BC 45020013 */ bc1fl .Ljp7F04780C /* 07C330 7F0477C0 8E0200B8 */ lw $v0, 0xb8($s0) /* 07C334 7F0477C4 4600103C */ c.lt.s $f2, $f0 /* 07C338 7F0477C8 00000000 */ nop /* 07C33C 7F0477CC 4502000F */ bc1fl .Ljp7F04780C /* 07C340 7F0477D0 8E0200B8 */ lw $v0, 0xb8($s0) /* 07C344 7F0477D4 4602703C */ c.lt.s $f14, $f2 /* 07C348 7F0477D8 24080001 */ li $t0, 1 /* 07C34C 7F0477DC 4502000B */ bc1fl .Ljp7F04780C /* 07C350 7F0477E0 8E0200B8 */ lw $v0, 0xb8($s0) /* 07C354 7F0477E4 AE0800D0 */ sw $t0, 0xd0($s0) /* 07C358 7F0477E8 8FAB04A8 */ lw $t3, 0x4a8($sp) /* 07C35C 7F0477EC 24090001 */ li $t1, 1 /* 07C360 7F0477F0 AFA904AC */ sw $t1, 0x4ac($sp) /* 07C364 7F0477F4 11600011 */ beqz $t3, .Ljp7F04783C /* 07C368 7F0477F8 3C0C8005 */ lui $t4, %hi(global_timer) # $t4, 0x8005 /* 07C36C 7F0477FC 8D8C83AC */ lw $t4, %lo(global_timer)($t4) /* 07C370 7F047800 1000000E */ b .Ljp7F04783C /* 07C374 7F047804 AE0C00B8 */ sw $t4, 0xb8($s0) /* 07C378 7F047808 8E0200B8 */ lw $v0, 0xb8($s0) .Ljp7F04780C: /* 07C37C 7F04780C 3C0E8005 */ lui $t6, %hi(global_timer) # $t6, 0x8005 /* 07C380 7F047810 0442000B */ bltzl $v0, .Ljp7F047840 /* 07C384 7F047814 8FB904AC */ lw $t9, 0x4ac($sp) /* 07C388 7F047818 8DCE83AC */ lw $t6, %lo(global_timer)($t6) /* 07C38C 7F04781C 240F0001 */ li $t7, 1 /* 07C390 7F047820 240D0001 */ li $t5, 1 /* 07C394 7F047824 25CAFF88 */ addiu $t2, $t6, -0x78 /* 07C398 7F047828 0142082A */ slt $at, $t2, $v0 /* 07C39C 7F04782C 50200004 */ beql $at, $zero, .Ljp7F047840 /* 07C3A0 7F047830 8FB904AC */ lw $t9, 0x4ac($sp) /* 07C3A4 7F047834 AE0F00D0 */ sw $t7, 0xd0($s0) /* 07C3A8 7F047838 AFAD04AC */ sw $t5, 0x4ac($sp) .Ljp7F04783C: /* 07C3AC 7F04783C 8FB904AC */ lw $t9, 0x4ac($sp) .Ljp7F047840: /* 07C3B0 7F047840 3C018005 */ lui $at, %hi(D_80052B3C) # $at, 0x8005 /* 07C3B4 7F047844 53200013 */ beql $t9, $zero, .Ljp7F047894 /* 07C3B8 7F047848 C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07C3BC 7F04784C C4202B6C */ lwc1 $f0, %lo(D_80052B3C)($at) /* 07C3C0 7F047850 3C018005 */ lui $at, %hi(D_80052B40) # $at, 0x8005 /* 07C3C4 7F047854 C4262B70 */ lwc1 $f6, %lo(D_80052B40)($at) /* 07C3C8 7F047858 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C3CC 7F04785C C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07C3D0 7F047860 C60A00B0 */ lwc1 $f10, 0xb0($s0) /* 07C3D4 7F047864 46043202 */ mul.s $f8, $f6, $f4 /* 07C3D8 7F047868 46085180 */ add.s $f6, $f10, $f8 /* 07C3DC 7F04786C E60600B0 */ swc1 $f6, 0xb0($s0) /* 07C3E0 7F047870 C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07C3E4 7F047874 4602003C */ c.lt.s $f0, $f2 /* 07C3E8 7F047878 00000000 */ nop /* 07C3EC 7F04787C 45020023 */ bc1fl .Ljp7F04790C /* 07C3F0 7F047880 4602B03C */ c.lt.s $f22, $f2 /* 07C3F4 7F047884 E60000B0 */ swc1 $f0, 0xb0($s0) /* 07C3F8 7F047888 1000001F */ b .Ljp7F047908 /* 07C3FC 7F04788C C60200B0 */ lwc1 $f2, 0xb0($s0) /* 07C400 7F047890 C60200B0 */ lwc1 $f2, 0xb0($s0) .Ljp7F047894: /* 07C404 7F047894 3C188005 */ lui $t8, %hi(clock_timer) # $t8, 0x8005 /* 07C408 7F047898 4602B03C */ c.lt.s $f22, $f2 /* 07C40C 7F04789C 00000000 */ nop /* 07C410 7F0478A0 4502001A */ bc1fl .Ljp7F04790C /* 07C414 7F0478A4 4602B03C */ c.lt.s $f22, $f2 /* 07C418 7F0478A8 8F1883A4 */ lw $t8, %lo(clock_timer)($t8) /* 07C41C 7F0478AC 00001025 */ move $v0, $zero /* 07C420 7F0478B0 3C018005 */ lui $at, %hi(D_80052B44) # $at, 0x8005 /* 07C424 7F0478B4 1B00000C */ blez $t8, .Ljp7F0478E8 /* 07C428 7F0478B8 00000000 */ nop /* 07C42C 7F0478BC C4202B74 */ lwc1 $f0, %lo(D_80052B44)($at) /* 07C430 7F0478C0 C60400B0 */ lwc1 $f4, 0xb0($s0) .Ljp7F0478C4: /* 07C434 7F0478C4 3C088005 */ lui $t0, %hi(clock_timer) # $t0, 0x8005 /* 07C438 7F0478C8 24420001 */ addiu $v0, $v0, 1 /* 07C43C 7F0478CC 46002282 */ mul.s $f10, $f4, $f0 /* 07C440 7F0478D0 E60A00B0 */ swc1 $f10, 0xb0($s0) /* 07C444 7F0478D4 8D0883A4 */ lw $t0, %lo(clock_timer)($t0) /* 07C448 7F0478D8 0048082A */ slt $at, $v0, $t0 /* 07C44C 7F0478DC 5420FFF9 */ bnezl $at, .Ljp7F0478C4 /* 07C450 7F0478E0 C60400B0 */ lwc1 $f4, 0xb0($s0) /* 07C454 7F0478E4 C60200B0 */ lwc1 $f2, 0xb0($s0) .Ljp7F0478E8: /* 07C458 7F0478E8 3C018005 */ lui $at, %hi(D_80052B48) # $at, 0x8005 /* 07C45C 7F0478EC C4282B78 */ lwc1 $f8, %lo(D_80052B48)($at) /* 07C460 7F0478F0 4608103E */ c.le.s $f2, $f8 /* 07C464 7F0478F4 00000000 */ nop /* 07C468 7F0478F8 45020004 */ bc1fl .Ljp7F04790C /* 07C46C 7F0478FC 4602B03C */ c.lt.s $f22, $f2 /* 07C470 7F047900 E61600B0 */ swc1 $f22, 0xb0($s0) /* 07C474 7F047904 C60200B0 */ lwc1 $f2, 0xb0($s0) .Ljp7F047908: /* 07C478 7F047908 4602B03C */ c.lt.s $f22, $f2 .Ljp7F04790C: /* 07C47C 7F04790C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C480 7F047910 45020348 */ bc1fl .Ljp7F048634 /* 07C484 7F047914 92220003 */ lbu $v0, 3($s1) /* 07C488 7F047918 C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07C48C 7F04791C C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07C490 7F047920 46041282 */ mul.s $f10, $f2, $f4 /* 07C494 7F047924 460A3200 */ add.s $f8, $f6, $f10 /* 07C498 7F047928 E60800B4 */ swc1 $f8, 0xb4($s0) /* 07C49C 7F04792C C60000B4 */ lwc1 $f0, 0xb4($s0) /* 07C4A0 7F047930 4600A03E */ c.le.s $f20, $f0 /* 07C4A4 7F047934 00000000 */ nop /* 07C4A8 7F047938 4502033E */ bc1fl .Ljp7F048634 /* 07C4AC 7F04793C 92220003 */ lbu $v0, 3($s1) /* 07C4B0 7F047940 46140101 */ sub.s $f4, $f0, $f20 .Ljp7F047944: /* 07C4B4 7F047944 E60400B4 */ swc1 $f4, 0xb4($s0) /* 07C4B8 7F047948 C60000B4 */ lwc1 $f0, 0xb4($s0) /* 07C4BC 7F04794C 4600A03E */ c.le.s $f20, $f0 /* 07C4C0 7F047950 00000000 */ nop /* 07C4C4 7F047954 4503FFFB */ bc1tl .Ljp7F047944 /* 07C4C8 7F047958 46140101 */ sub.s $f4, $f0, $f20 /* 07C4CC 7F04795C 10000335 */ b .Ljp7F048634 /* 07C4D0 7F047960 92220003 */ lbu $v0, 3($s1) /* 07C4D4 7F047964 24010027 */ li $at, 39 .Ljp7F047968: /* 07C4D8 7F047968 14410255 */ bne $v0, $at, .Ljp7F0482C0 /* 07C4DC 7F04796C 02202025 */ move $a0, $s1 /* 07C4E0 7F047970 C62600A0 */ lwc1 $f6, 0xa0($s1) /* 07C4E4 7F047974 AFA0047C */ sw $zero, 0x47c($sp) /* 07C4E8 7F047978 24050001 */ li $a1, 1 /* 07C4EC 7F04797C 0FC0D5E1 */ jal parse_handle_actionblocks /* 07C4F0 7F047980 E7A60480 */ swc1 $f6, 0x480($sp) /* 07C4F4 7F047984 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07C4F8 7F047988 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C4FC 7F04798C 460EB03E */ c.le.s $f22, $f14 /* 07C500 7F047990 00000000 */ nop /* 07C504 7F047994 45020016 */ bc1fl .Ljp7F0479F0 /* 07C508 7F047998 8E29000C */ lw $t1, 0xc($s1) /* 07C50C 7F04799C C42283B4 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C510 7F0479A0 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C514 7F0479A4 4602703E */ c.le.s $f14, $f2 /* 07C518 7F0479A8 00000000 */ nop /* 07C51C 7F0479AC 45020006 */ bc1fl .Ljp7F0479C8 /* 07C520 7F0479B0 C6200088 */ lwc1 $f0, 0x88($s1) /* 07C524 7F0479B4 C62A0094 */ lwc1 $f10, 0x94($s1) /* 07C528 7F0479B8 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07C52C 7F0479BC 10000008 */ b .Ljp7F0479E0 /* 07C530 7F0479C0 E62A0088 */ swc1 $f10, 0x88($s1) /* 07C534 7F0479C4 C6200088 */ lwc1 $f0, 0x88($s1) .Ljp7F0479C8: /* 07C538 7F0479C8 C6280094 */ lwc1 $f8, 0x94($s1) /* 07C53C 7F0479CC 46004101 */ sub.s $f4, $f8, $f0 /* 07C540 7F0479D0 46022182 */ mul.s $f6, $f4, $f2 /* 07C544 7F0479D4 460E3283 */ div.s $f10, $f6, $f14 /* 07C548 7F0479D8 460A0200 */ add.s $f8, $f0, $f10 /* 07C54C 7F0479DC E6280088 */ swc1 $f8, 0x88($s1) .Ljp7F0479E0: /* 07C550 7F0479E0 C42483B4 */ lwc1 $f4, %lo(global_timer_delta)($at) /* 07C554 7F0479E4 46047181 */ sub.s $f6, $f14, $f4 /* 07C558 7F0479E8 E6260098 */ swc1 $f6, 0x98($s1) /* 07C55C 7F0479EC 8E29000C */ lw $t1, 0xc($s1) .Ljp7F0479F0: /* 07C560 7F0479F0 00008025 */ move $s0, $zero /* 07C564 7F0479F4 00095B00 */ sll $t3, $t1, 0xc /* 07C568 7F0479F8 05600014 */ bltz $t3, .Ljp7F047A4C /* 07C56C 7F0479FC 00000000 */ nop /* 07C570 7F047A00 0FC13CCE */ jal check_if_object_has_not_been_destroyed /* 07C574 7F047A04 02202025 */ move $a0, $s1 /* 07C578 7F047A08 10400010 */ beqz $v0, .Ljp7F047A4C /* 07C57C 7F047A0C 00000000 */ nop /* 07C580 7F047A10 C62A0088 */ lwc1 $f10, 0x88($s1) /* 07C584 7F047A14 26240058 */ addiu $a0, $s1, 0x58 /* 07C588 7F047A18 3C0544FA */ lui $a1, 0x44fa /* 07C58C 7F047A1C 460AB03C */ c.lt.s $f22, $f10 /* 07C590 7F047A20 3C06453B */ lui $a2, (0x453B8000 >> 16) # lui $a2, 0x453b /* 07C594 7F047A24 45010006 */ bc1t .Ljp7F047A40 /* 07C598 7F047A28 00000000 */ nop /* 07C59C 7F047A2C C6280094 */ lwc1 $f8, 0x94($s1) /* 07C5A0 7F047A30 4608B03C */ c.lt.s $f22, $f8 /* 07C5A4 7F047A34 00000000 */ nop /* 07C5A8 7F047A38 45000004 */ bc1f .Ljp7F047A4C /* 07C5AC 7F047A3C 00000000 */ nop .Ljp7F047A40: /* 07C5B0 7F047A40 0FC14F64 */ jal sub_GAME_7F053894 /* 07C5B4 7F047A44 34C68000 */ ori $a2, (0x453B8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 07C5B8 7F047A48 00408025 */ move $s0, $v0 .Ljp7F047A4C: /* 07C5BC 7F047A4C 5A000019 */ blezl $s0, .Ljp7F047AB4 /* 07C5C0 7F047A50 8E2400AC */ lw $a0, 0xac($s1) /* 07C5C4 7F047A54 8E2400AC */ lw $a0, 0xac($s1) /* 07C5C8 7F047A58 10800005 */ beqz $a0, .Ljp7F047A70 /* 07C5CC 7F047A5C 00000000 */ nop /* 07C5D0 7F047A60 0C002380 */ jal sfxGetArg0Unk3F /* 07C5D4 7F047A64 00000000 */ nop /* 07C5D8 7F047A68 5440000A */ bnezl $v0, .Ljp7F047A94 /* 07C5DC 7F047A6C 8E2400AC */ lw $a0, 0xac($s1) .Ljp7F047A70: /* 07C5E0 7F047A70 0FC3021B */ jal get_controls_locked_flag /* 07C5E4 7F047A74 00000000 */ nop /* 07C5E8 7F047A78 14400005 */ bnez $v0, .Ljp7F047A90 /* 07C5EC 7F047A7C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07C5F0 7F047A80 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07C5F4 7F047A84 24050041 */ li $a1, 65 /* 07C5F8 7F047A88 0C002386 */ jal play_sfx_a1 /* 07C5FC 7F047A8C 262600AC */ addiu $a2, $s1, 0xac .Ljp7F047A90: /* 07C600 7F047A90 8E2400AC */ lw $a0, 0xac($s1) .Ljp7F047A94: /* 07C604 7F047A94 24050008 */ li $a1, 8 /* 07C608 7F047A98 5080000F */ beql $a0, $zero, .Ljp7F047AD8 /* 07C60C 7F047A9C 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C610 7F047AA0 0C002465 */ jal sfx_c_70009184 /* 07C614 7F047AA4 02003025 */ move $a2, $s0 /* 07C618 7F047AA8 1000000B */ b .Ljp7F047AD8 /* 07C61C 7F047AAC 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C620 7F047AB0 8E2400AC */ lw $a0, 0xac($s1) .Ljp7F047AB4: /* 07C624 7F047AB4 50800008 */ beql $a0, $zero, .Ljp7F047AD8 /* 07C628 7F047AB8 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C62C 7F047ABC 0C002380 */ jal sfxGetArg0Unk3F /* 07C630 7F047AC0 00000000 */ nop /* 07C634 7F047AC4 50400004 */ beql $v0, $zero, .Ljp7F047AD8 /* 07C638 7F047AC8 8E2400A4 */ lw $a0, 0xa4($s1) /* 07C63C 7F047ACC 0C00240C */ jal sfxDeactivate /* 07C640 7F047AD0 8E2400AC */ lw $a0, 0xac($s1) /* 07C644 7F047AD4 8E2400A4 */ lw $a0, 0xa4($s1) .Ljp7F047AD8: /* 07C648 7F047AD8 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) # $a1, 0x8007 /* 07C64C 7F047ADC 5080002A */ beql $a0, $zero, .Ljp7F047B88 /* 07C650 7F047AE0 8E2F0008 */ lw $t7, 8($s1) /* 07C654 7F047AE4 8E2E00A8 */ lw $t6, 0xa8($s1) /* 07C658 7F047AE8 8C8C0000 */ lw $t4, ($a0) /* 07C65C 7F047AEC 24A55D40 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d40 /* 07C660 7F047AF0 000E5080 */ sll $t2, $t6, 2 /* 07C664 7F047AF4 018A1021 */ addu $v0, $t4, $t2 /* 07C668 7F047AF8 8C4F0000 */ lw $t7, ($v0) /* 07C66C 7F047AFC 8CB90000 */ lw $t9, ($a1) /* 07C670 7F047B00 8CA90018 */ lw $t1, 0x18($a1) /* 07C674 7F047B04 000F6900 */ sll $t5, $t7, 4 /* 07C678 7F047B08 01B91821 */ addu $v1, $t5, $t9 /* 07C67C 7F047B0C 8C780000 */ lw $t8, ($v1) /* 07C680 7F047B10 C6260058 */ lwc1 $f6, 0x58($s1) /* 07C684 7F047B14 C6280060 */ lwc1 $f8, 0x60($s1) /* 07C688 7F047B18 00184080 */ sll $t0, $t8, 2 /* 07C68C 7F047B1C 01184023 */ subu $t0, $t0, $t8 /* 07C690 7F047B20 00084080 */ sll $t0, $t0, 2 /* 07C694 7F047B24 01184023 */ subu $t0, $t0, $t8 /* 07C698 7F047B28 00084080 */ sll $t0, $t0, 2 /* 07C69C 7F047B2C 01093021 */ addu $a2, $t0, $t1 /* 07C6A0 7F047B30 C4C40000 */ lwc1 $f4, ($a2) /* 07C6A4 7F047B34 C4CA0008 */ lwc1 $f10, 8($a2) /* 07C6A8 7F047B38 AFA6047C */ sw $a2, 0x47c($sp) /* 07C6AC 7F047B3C 46062301 */ sub.s $f12, $f4, $f6 /* 07C6B0 7F047B40 0FC16BD4 */ jal atan2f /* 07C6B4 7F047B44 46085381 */ sub.s $f14, $f10, $f8 /* 07C6B8 7F047B48 E7A00480 */ swc1 $f0, 0x480($sp) /* 07C6BC 7F047B4C 8E2B0008 */ lw $t3, 8($s1) /* 07C6C0 7F047B50 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07C6C4 7F047B54 C7A40480 */ lwc1 $f4, 0x480($sp) /* 07C6C8 7F047B58 000B7080 */ sll $t6, $t3, 2 /* 07C6CC 7F047B5C 05C10018 */ bgez $t6, .Ljp7F047BC0 /* 07C6D0 7F047B60 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07C6D4 7F047B64 8E2C0008 */ lw $t4, 8($s1) /* 07C6D8 7F047B68 E62400A0 */ swc1 $f4, 0xa0($s1) /* 07C6DC 7F047B6C 02202025 */ move $a0, $s1 /* 07C6E0 7F047B70 01815024 */ and $t2, $t4, $at /* 07C6E4 7F047B74 0FC113C3 */ jal sub_GAME_7F044B38 /* 07C6E8 7F047B78 AE2A0008 */ sw $t2, 8($s1) /* 07C6EC 7F047B7C 10000011 */ b .Ljp7F047BC4 /* 07C6F0 7F047B80 C6260088 */ lwc1 $f6, 0x88($s1) /* 07C6F4 7F047B84 8E2F0008 */ lw $t7, 8($s1) .Ljp7F047B88: /* 07C6F8 7F047B88 000F6880 */ sll $t5, $t7, 2 /* 07C6FC 7F047B8C 05A3000D */ bgezl $t5, .Ljp7F047BC4 /* 07C700 7F047B90 C6260088 */ lwc1 $f6, 0x88($s1) /* 07C704 7F047B94 C62C0038 */ lwc1 $f12, 0x38($s1) /* 07C708 7F047B98 0FC16BD4 */ jal atan2f /* 07C70C 7F047B9C C62E0040 */ lwc1 $f14, 0x40($s1) /* 07C710 7F047BA0 8E390008 */ lw $t9, 8($s1) /* 07C714 7F047BA4 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07C718 7F047BA8 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07C71C 7F047BAC 0321C024 */ and $t8, $t9, $at /* 07C720 7F047BB0 E62000A0 */ swc1 $f0, 0xa0($s1) /* 07C724 7F047BB4 AE380008 */ sw $t8, 8($s1) /* 07C728 7F047BB8 0FC113C3 */ jal sub_GAME_7F044B38 /* 07C72C 7F047BBC 02202025 */ move $a0, $s1 .Ljp7F047BC0: /* 07C730 7F047BC0 C6260088 */ lwc1 $f6, 0x88($s1) .Ljp7F047BC4: /* 07C734 7F047BC4 4606B03C */ c.lt.s $f22, $f6 /* 07C738 7F047BC8 00000000 */ nop /* 07C73C 7F047BCC 450201AC */ bc1fl .Ljp7F048280 /* 07C740 7F047BD0 8E2A0008 */ lw $t2, 8($s1) /* 07C744 7F047BD4 8E680014 */ lw $t0, 0x14($s3) /* 07C748 7F047BD8 8FA9047C */ lw $t1, 0x47c($sp) /* 07C74C 7F047BDC 4600B386 */ mov.s $f14, $f22 /* 07C750 7F047BE0 AFA8046C */ sw $t0, 0x46c($sp) /* 07C754 7F047BE4 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C758 7F047BE8 E7AC043C */ swc1 $f12, 0x43c($sp) /* 07C75C 7F047BEC C62A009C */ lwc1 $f10, 0x9c($s1) /* 07C760 7F047BF0 11200013 */ beqz $t1, .Ljp7F047C40 /* 07C764 7F047BF4 E7AA0438 */ swc1 $f10, 0x438($sp) /* 07C768 7F047BF8 262B0058 */ addiu $t3, $s1, 0x58 /* 07C76C 7F047BFC AFAB0074 */ sw $t3, 0x74($sp) /* 07C770 7F047C00 0FC160F3 */ jal sinf /* 07C774 7F047C04 E7AE0434 */ swc1 $f14, 0x434($sp) /* 07C778 7F047C08 E7A00440 */ swc1 $f0, 0x440($sp) /* 07C77C 7F047C0C E7B60444 */ swc1 $f22, 0x444($sp) /* 07C780 7F047C10 0FC160F0 */ jal cosf /* 07C784 7F047C14 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C788 7F047C18 E7A00448 */ swc1 $f0, 0x448($sp) /* 07C78C 7F047C1C 8FA40074 */ lw $a0, 0x74($sp) /* 07C790 7F047C20 27A50440 */ addiu $a1, $sp, 0x440 /* 07C794 7F047C24 8FA6047C */ lw $a2, 0x47c($sp) /* 07C798 7F047C28 0FC0BFCD */ jal sub_GAME_7F02FC34 /* 07C79C 7F047C2C 3C074120 */ lui $a3, 0x4120 /* 07C7A0 7F047C30 10400003 */ beqz $v0, .Ljp7F047C40 /* 07C7A4 7F047C34 C7AE0434 */ lwc1 $f14, 0x434($sp) /* 07C7A8 7F047C38 C62800A0 */ lwc1 $f8, 0xa0($s1) /* 07C7AC 7F047C3C E7A80480 */ swc1 $f8, 0x480($sp) .Ljp7F047C40: /* 07C7B0 7F047C40 3C018005 */ lui $at, %hi(D_80052B4C) # $at, 0x8005 /* 07C7B4 7F047C44 C4242B7C */ lwc1 $f4, %lo(D_80052B4C)($at) /* 07C7B8 7F047C48 3C018005 */ lui $at, %hi(D_80052B50) # $at, 0x8005 /* 07C7BC 7F047C4C C4262B80 */ lwc1 $f6, %lo(D_80052B50)($at) /* 07C7C0 7F047C50 3C0738E4 */ lui $a3, (0x38E4C389 >> 16) # lui $a3, 0x38e4 /* 07C7C4 7F047C54 34E7C389 */ ori $a3, (0x38E4C389 & 0xFFFF) # ori $a3, $a3, 0xc389 /* 07C7C8 7F047C58 262400A0 */ addiu $a0, $s1, 0xa0 /* 07C7CC 7F047C5C 8FA50480 */ lw $a1, 0x480($sp) /* 07C7D0 7F047C60 2626009C */ addiu $a2, $s1, 0x9c /* 07C7D4 7F047C64 E7AE0434 */ swc1 $f14, 0x434($sp) /* 07C7D8 7F047C68 E7A40010 */ swc1 $f4, 0x10($sp) /* 07C7DC 7F047C6C 0FC10D03 */ jal sub_GAME_7F04310C /* 07C7E0 7F047C70 E7A60014 */ swc1 $f6, 0x14($sp) /* 07C7E4 7F047C74 3C018005 */ lui $at, %hi(D_80052B54) # $at, 0x8005 /* 07C7E8 7F047C78 C4342B84 */ lwc1 $f20, %lo(D_80052B54)($at) /* 07C7EC 7F047C7C C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C7F0 7F047C80 C7AE0434 */ lwc1 $f14, 0x434($sp) /* 07C7F4 7F047C84 3C018005 */ lui $at, %hi(D_80052B58) # $at, 0x8005 /* 07C7F8 7F047C88 460CA03E */ c.le.s $f20, $f12 /* 07C7FC 7F047C8C 00000000 */ nop /* 07C800 7F047C90 45020009 */ bc1fl .Ljp7F047CB8 /* 07C804 7F047C94 4616603C */ c.lt.s $f12, $f22 /* 07C808 7F047C98 46146281 */ sub.s $f10, $f12, $f20 .Ljp7F047C9C: /* 07C80C 7F047C9C E62A00A0 */ swc1 $f10, 0xa0($s1) /* 07C810 7F047CA0 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C814 7F047CA4 460CA03E */ c.le.s $f20, $f12 /* 07C818 7F047CA8 00000000 */ nop /* 07C81C 7F047CAC 4503FFFB */ bc1tl .Ljp7F047C9C /* 07C820 7F047CB0 46146281 */ sub.s $f10, $f12, $f20 /* 07C824 7F047CB4 4616603C */ c.lt.s $f12, $f22 .Ljp7F047CB8: /* 07C828 7F047CB8 00000000 */ nop /* 07C82C 7F047CBC 45020009 */ bc1fl .Ljp7F047CE4 /* 07C830 7F047CC0 C7A40480 */ lwc1 $f4, 0x480($sp) /* 07C834 7F047CC4 46146200 */ add.s $f8, $f12, $f20 .Ljp7F047CC8: /* 07C838 7F047CC8 E62800A0 */ swc1 $f8, 0xa0($s1) /* 07C83C 7F047CCC C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C840 7F047CD0 4616603C */ c.lt.s $f12, $f22 /* 07C844 7F047CD4 00000000 */ nop /* 07C848 7F047CD8 4503FFFB */ bc1tl .Ljp7F047CC8 /* 07C84C 7F047CDC 46146200 */ add.s $f8, $f12, $f20 /* 07C850 7F047CE0 C7A40480 */ lwc1 $f4, 0x480($sp) .Ljp7F047CE4: /* 07C854 7F047CE4 460C2032 */ c.eq.s $f4, $f12 /* 07C858 7F047CE8 00000000 */ nop /* 07C85C 7F047CEC 4502000F */ bc1fl .Ljp7F047D2C /* 07C860 7F047CF0 8E8E0008 */ lw $t6, 8($s4) /* 07C864 7F047CF4 C620009C */ lwc1 $f0, 0x9c($s1) /* 07C868 7F047CF8 C4262B88 */ lwc1 $f6, %lo(D_80052B58)($at) /* 07C86C 7F047CFC 3C018005 */ lui $at, %hi(D_80052B5C) # $at, 0x8005 /* 07C870 7F047D00 4606003E */ c.le.s $f0, $f6 /* 07C874 7F047D04 00000000 */ nop /* 07C878 7F047D08 45020008 */ bc1fl .Ljp7F047D2C /* 07C87C 7F047D0C 8E8E0008 */ lw $t6, 8($s4) /* 07C880 7F047D10 C42A2B8C */ lwc1 $f10, %lo(D_80052B5C)($at) /* 07C884 7F047D14 4600503E */ c.le.s $f10, $f0 /* 07C888 7F047D18 00000000 */ nop /* 07C88C 7F047D1C 45020003 */ bc1fl .Ljp7F047D2C /* 07C890 7F047D20 8E8E0008 */ lw $t6, 8($s4) /* 07C894 7F047D24 E636009C */ swc1 $f22, 0x9c($s1) /* 07C898 7F047D28 8E8E0008 */ lw $t6, 8($s4) .Ljp7F047D2C: /* 07C89C 7F047D2C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C8A0 7F047D30 C42283B4 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C8A4 7F047D34 8DCC0008 */ lw $t4, 8($t6) /* 07C8A8 7F047D38 C7A4043C */ lwc1 $f4, 0x43c($sp) /* 07C8AC 7F047D3C 4602B03C */ c.lt.s $f22, $f2 /* 07C8B0 7F047D40 8D8A000C */ lw $t2, 0xc($t4) /* 07C8B4 7F047D44 45000004 */ bc1f .Ljp7F047D58 /* 07C8B8 7F047D48 8D500004 */ lw $s0, 4($t2) /* 07C8BC 7F047D4C C62800A0 */ lwc1 $f8, 0xa0($s1) /* 07C8C0 7F047D50 46044181 */ sub.s $f6, $f8, $f4 /* 07C8C4 7F047D54 46023383 */ div.s $f14, $f6, $f2 .Ljp7F047D58: /* 07C8C8 7F047D58 4616703C */ c.lt.s $f14, $f22 /* 07C8CC 7F047D5C 00000000 */ nop /* 07C8D0 7F047D60 45000002 */ bc1f .Ljp7F047D6C /* 07C8D4 7F047D64 00000000 */ nop /* 07C8D8 7F047D68 46147380 */ add.s $f14, $f14, $f20 .Ljp7F047D6C: /* 07C8DC 7F047D6C 0FC160F3 */ jal sinf /* 07C8E0 7F047D70 46007306 */ mov.s $f12, $f14 /* 07C8E4 7F047D74 C60A0008 */ lwc1 $f10, 8($s0) /* 07C8E8 7F047D78 C6880014 */ lwc1 $f8, 0x14($s4) /* 07C8EC 7F047D7C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C8F0 7F047D80 46085102 */ mul.s $f4, $f10, $f8 /* 07C8F4 7F047D84 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07C8F8 7F047D88 46040182 */ mul.s $f6, $f0, $f4 /* 07C8FC 7F047D8C 00000000 */ nop /* 07C900 7F047D90 460A3202 */ mul.s $f8, $f6, $f10 /* 07C904 7F047D94 E7A80464 */ swc1 $f8, 0x464($sp) /* 07C908 7F047D98 0FC160F3 */ jal sinf /* 07C90C 7F047D9C C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C910 7F047DA0 E7A00440 */ swc1 $f0, 0x440($sp) /* 07C914 7F047DA4 E7B60444 */ swc1 $f22, 0x444($sp) /* 07C918 7F047DA8 0FC160F0 */ jal cosf /* 07C91C 7F047DAC C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07C920 7F047DB0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07C924 7F047DB4 44817000 */ mtc1 $at, $f14 /* 07C928 7F047DB8 E7A00448 */ swc1 $f0, 0x448($sp) /* 07C92C 7F047DBC 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07C930 7F047DC0 C42283B4 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07C934 7F047DC4 C6240088 */ lwc1 $f4, 0x88($s1) /* 07C938 7F047DC8 C7AA0440 */ lwc1 $f10, 0x440($sp) /* 07C93C 7F047DCC C7AC0464 */ lwc1 $f12, 0x464($sp) /* 07C940 7F047DD0 46022182 */ mul.s $f6, $f4, $f2 /* 07C944 7F047DD4 C6240058 */ lwc1 $f4, 0x58($s1) /* 07C948 7F047DD8 27B0046C */ addiu $s0, $sp, 0x46c /* 07C94C 7F047DDC 240F001F */ li $t7, 31 /* 07C950 7F047DE0 02002025 */ move $a0, $s0 /* 07C954 7F047DE4 460A3202 */ mul.s $f8, $f6, $f10 /* 07C958 7F047DE8 46082180 */ add.s $f6, $f4, $f8 /* 07C95C 7F047DEC C7A40448 */ lwc1 $f4, 0x448($sp) /* 07C960 7F047DF0 460C2202 */ mul.s $f8, $f4, $f12 /* 07C964 7F047DF4 46083181 */ sub.s $f6, $f6, $f8 /* 07C968 7F047DF8 E7A6069C */ swc1 $f6, 0x69c($sp) /* 07C96C 7F047DFC C628005C */ lwc1 $f8, 0x5c($s1) /* 07C970 7F047E00 44073000 */ mfc1 $a3, $f6 /* 07C974 7F047E04 E7A806A0 */ swc1 $f8, 0x6a0($sp) /* 07C978 7F047E08 C6280088 */ lwc1 $f8, 0x88($s1) /* 07C97C 7F047E0C 46024202 */ mul.s $f8, $f8, $f2 /* 07C980 7F047E10 00000000 */ nop /* 07C984 7F047E14 46044202 */ mul.s $f8, $f8, $f4 /* 07C988 7F047E18 C6240060 */ lwc1 $f4, 0x60($s1) /* 07C98C 7F047E1C 46082100 */ add.s $f4, $f4, $f8 /* 07C990 7F047E20 460C5202 */ mul.s $f8, $f10, $f12 /* 07C994 7F047E24 46044280 */ add.s $f10, $f8, $f4 /* 07C998 7F047E28 E7AA06A4 */ swc1 $f10, 0x6a4($sp) /* 07C99C 7F047E2C 8E660010 */ lw $a2, 0x10($s3) /* 07C9A0 7F047E30 8E650008 */ lw $a1, 8($s3) /* 07C9A4 7F047E34 E7B60020 */ swc1 $f22, 0x20($sp) /* 07C9A8 7F047E38 E7B60018 */ swc1 $f22, 0x18($sp) /* 07C9AC 7F047E3C AFAF0014 */ sw $t7, 0x14($sp) /* 07C9B0 7F047E40 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07C9B4 7F047E44 E7AE0024 */ swc1 $f14, 0x24($sp) /* 07C9B8 7F047E48 0FC2C675 */ jal sub_GAME_7F0B0E24 /* 07C9BC 7F047E4C E7AE001C */ swc1 $f14, 0x1c($sp) /* 07C9C0 7F047E50 104000FA */ beqz $v0, .Ljp7F04823C /* 07C9C4 7F047E54 02002025 */ move $a0, $s0 /* 07C9C8 7F047E58 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07C9CC 7F047E5C 44814000 */ mtc1 $at, $f8 /* 07C9D0 7F047E60 240D001F */ li $t5, 31 /* 07C9D4 7F047E64 AFAD0010 */ sw $t5, 0x10($sp) /* 07C9D8 7F047E68 8FA5069C */ lw $a1, 0x69c($sp) /* 07C9DC 7F047E6C 8FA606A4 */ lw $a2, 0x6a4($sp) /* 07C9E0 7F047E70 3C074120 */ lui $a3, 0x4120 /* 07C9E4 7F047E74 E7B60014 */ swc1 $f22, 0x14($sp) /* 07C9E8 7F047E78 0FC2C91A */ jal sub_GAME_7F0B18B8 /* 07C9EC 7F047E7C E7A80018 */ swc1 $f8, 0x18($sp) /* 07C9F0 7F047E80 044300EF */ bgezl $v0, .Ljp7F048240 /* 07C9F4 7F047E84 C6260098 */ lwc1 $f6, 0x98($s1) /* 07C9F8 7F047E88 8E790014 */ lw $t9, 0x14($s3) /* 07C9FC 7F047E8C 8FB8046C */ lw $t8, 0x46c($sp) /* 07CA00 7F047E90 02202025 */ move $a0, $s1 /* 07CA04 7F047E94 AFB90450 */ sw $t9, 0x450($sp) /* 07CA08 7F047E98 C6640008 */ lwc1 $f4, 8($s3) /* 07CA0C 7F047E9C E7A40454 */ swc1 $f4, 0x454($sp) /* 07CA10 7F047EA0 C666000C */ lwc1 $f6, 0xc($s3) /* 07CA14 7F047EA4 E7A60458 */ swc1 $f6, 0x458($sp) /* 07CA18 7F047EA8 C66A0010 */ lwc1 $f10, 0x10($s3) /* 07CA1C 7F047EAC E7AA045C */ swc1 $f10, 0x45c($sp) /* 07CA20 7F047EB0 AE780014 */ sw $t8, 0x14($s3) /* 07CA24 7F047EB4 C7A2069C */ lwc1 $f2, 0x69c($sp) /* 07CA28 7F047EB8 E6620008 */ swc1 $f2, 8($s3) /* 07CA2C 7F047EBC E6220058 */ swc1 $f2, 0x58($s1) /* 07CA30 7F047EC0 C7A206A4 */ lwc1 $f2, 0x6a4($sp) /* 07CA34 7F047EC4 E6620010 */ swc1 $f2, 0x10($s3) /* 07CA38 7F047EC8 0FC101E1 */ jal sub_GAME_7F040484 /* 07CA3C 7F047ECC E6220060 */ swc1 $f2, 0x60($s1) /* 07CA40 7F047ED0 0FC15C68 */ jal sub_GAME_7F056CA0 /* 07CA44 7F047ED4 02202025 */ move $a0, $s1 /* 07CA48 7F047ED8 0FC1131F */ jal sub_GAME_7F0448A8 /* 07CA4C 7F047EDC 02602025 */ move $a0, $s3 /* 07CA50 7F047EE0 10400092 */ beqz $v0, .Ljp7F04812C /* 07CA54 7F047EE4 00409025 */ move $s2, $v0 /* 07CA58 7F047EE8 8E880008 */ lw $t0, 8($s4) /* 07CA5C 7F047EEC C6280018 */ lwc1 $f8, 0x18($s1) /* 07CA60 7F047EF0 02002025 */ move $a0, $s0 /* 07CA64 7F047EF4 8D090008 */ lw $t1, 8($t0) /* 07CA68 7F047EF8 8D2B0028 */ lw $t3, 0x28($t1) /* 07CA6C 7F047EFC 8D620004 */ lw $v0, 4($t3) /* 07CA70 7F047F00 C4440004 */ lwc1 $f4, 4($v0) /* 07CA74 7F047F04 46044182 */ mul.s $f6, $f8, $f4 /* 07CA78 7F047F08 E7A60428 */ swc1 $f6, 0x428($sp) /* 07CA7C 7F047F0C C62A0020 */ lwc1 $f10, 0x20($s1) /* 07CA80 7F047F10 C4480004 */ lwc1 $f8, 4($v0) /* 07CA84 7F047F14 46085102 */ mul.s $f4, $f10, $f8 /* 07CA88 7F047F18 E7A40430 */ swc1 $f4, 0x430($sp) /* 07CA8C 7F047F1C C6260018 */ lwc1 $f6, 0x18($s1) /* 07CA90 7F047F20 C44A0008 */ lwc1 $f10, 8($v0) /* 07CA94 7F047F24 460A3202 */ mul.s $f8, $f6, $f10 /* 07CA98 7F047F28 E7A8041C */ swc1 $f8, 0x41c($sp) /* 07CA9C 7F047F2C C6240020 */ lwc1 $f4, 0x20($s1) /* 07CAA0 7F047F30 C4460008 */ lwc1 $f6, 8($v0) /* 07CAA4 7F047F34 46062282 */ mul.s $f10, $f4, $f6 /* 07CAA8 7F047F38 E7AA0424 */ swc1 $f10, 0x424($sp) /* 07CAAC 7F047F3C C6280038 */ lwc1 $f8, 0x38($s1) /* 07CAB0 7F047F40 C4440014 */ lwc1 $f4, 0x14($v0) /* 07CAB4 7F047F44 46044182 */ mul.s $f6, $f8, $f4 /* 07CAB8 7F047F48 E7A60410 */ swc1 $f6, 0x410($sp) /* 07CABC 7F047F4C C62A0040 */ lwc1 $f10, 0x40($s1) /* 07CAC0 7F047F50 C4480014 */ lwc1 $f8, 0x14($v0) /* 07CAC4 7F047F54 46085102 */ mul.s $f4, $f10, $f8 /* 07CAC8 7F047F58 E7A40418 */ swc1 $f4, 0x418($sp) /* 07CACC 7F047F5C C6260038 */ lwc1 $f6, 0x38($s1) /* 07CAD0 7F047F60 C44A0018 */ lwc1 $f10, 0x18($v0) /* 07CAD4 7F047F64 460A3202 */ mul.s $f8, $f6, $f10 /* 07CAD8 7F047F68 E7A80404 */ swc1 $f8, 0x404($sp) /* 07CADC 7F047F6C C6240040 */ lwc1 $f4, 0x40($s1) /* 07CAE0 7F047F70 C4460018 */ lwc1 $f6, 0x18($v0) /* 07CAE4 7F047F74 C7A80410 */ lwc1 $f8, 0x410($sp) /* 07CAE8 7F047F78 46062282 */ mul.s $f10, $f4, $f6 /* 07CAEC 7F047F7C C7A40428 */ lwc1 $f4, 0x428($sp) /* 07CAF0 7F047F80 E7AA040C */ swc1 $f10, 0x40c($sp) /* 07CAF4 7F047F84 8E6E0014 */ lw $t6, 0x14($s3) /* 07CAF8 7F047F88 AFAE046C */ sw $t6, 0x46c($sp) /* 07CAFC 7F047F8C C6600008 */ lwc1 $f0, 8($s3) /* 07CB00 7F047F90 C6620010 */ lwc1 $f2, 0x10($s3) /* 07CB04 7F047F94 46040180 */ add.s $f6, $f0, $f4 /* 07CB08 7F047F98 C7A40418 */ lwc1 $f4, 0x418($sp) /* 07CB0C 7F047F9C 44050000 */ mfc1 $a1, $f0 /* 07CB10 7F047FA0 44061000 */ mfc1 $a2, $f2 /* 07CB14 7F047FA4 46064280 */ add.s $f10, $f8, $f6 /* 07CB18 7F047FA8 C7A80430 */ lwc1 $f8, 0x430($sp) /* 07CB1C 7F047FAC 46081180 */ add.s $f6, $f2, $f8 /* 07CB20 7F047FB0 44075000 */ mfc1 $a3, $f10 /* 07CB24 7F047FB4 46062280 */ add.s $f10, $f4, $f6 /* 07CB28 7F047FB8 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07CB2C 7F047FBC E7AA0010 */ swc1 $f10, 0x10($sp) /* 07CB30 7F047FC0 10400059 */ beqz $v0, .Ljp7F048128 /* 07CB34 7F047FC4 C7A40428 */ lwc1 $f4, 0x428($sp) /* 07CB38 7F047FC8 C6600008 */ lwc1 $f0, 8($s3) /* 07CB3C 7F047FCC C7A80410 */ lwc1 $f8, 0x410($sp) /* 07CB40 7F047FD0 C6620010 */ lwc1 $f2, 0x10($s3) /* 07CB44 7F047FD4 46040180 */ add.s $f6, $f0, $f4 /* 07CB48 7F047FD8 C7A40418 */ lwc1 $f4, 0x418($sp) /* 07CB4C 7F047FDC 02002025 */ move $a0, $s0 /* 07CB50 7F047FE0 46064280 */ add.s $f10, $f8, $f6 /* 07CB54 7F047FE4 C7A60430 */ lwc1 $f6, 0x430($sp) /* 07CB58 7F047FE8 44055000 */ mfc1 $a1, $f10 /* 07CB5C 7F047FEC 46061280 */ add.s $f10, $f2, $f6 /* 07CB60 7F047FF0 460A2180 */ add.s $f6, $f4, $f10 /* 07CB64 7F047FF4 C7AA041C */ lwc1 $f10, 0x41c($sp) /* 07CB68 7F047FF8 44063000 */ mfc1 $a2, $f6 /* 07CB6C 7F047FFC 460A0180 */ add.s $f6, $f0, $f10 /* 07CB70 7F048000 46064280 */ add.s $f10, $f8, $f6 /* 07CB74 7F048004 C7A80424 */ lwc1 $f8, 0x424($sp) /* 07CB78 7F048008 46081180 */ add.s $f6, $f2, $f8 /* 07CB7C 7F04800C 44075000 */ mfc1 $a3, $f10 /* 07CB80 7F048010 46062280 */ add.s $f10, $f4, $f6 /* 07CB84 7F048014 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07CB88 7F048018 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07CB8C 7F04801C 10400042 */ beqz $v0, .Ljp7F048128 /* 07CB90 7F048020 C7A4041C */ lwc1 $f4, 0x41c($sp) /* 07CB94 7F048024 C6680008 */ lwc1 $f8, 8($s3) /* 07CB98 7F048028 C7A60410 */ lwc1 $f6, 0x410($sp) /* 07CB9C 7F04802C 02002025 */ move $a0, $s0 /* 07CBA0 7F048030 46044000 */ add.s $f0, $f8, $f4 /* 07CBA4 7F048034 C7A40424 */ lwc1 $f4, 0x424($sp) /* 07CBA8 7F048038 C6680010 */ lwc1 $f8, 0x10($s3) /* 07CBAC 7F04803C 46003280 */ add.s $f10, $f6, $f0 /* 07CBB0 7F048040 C7A60418 */ lwc1 $f6, 0x418($sp) /* 07CBB4 7F048044 46044080 */ add.s $f2, $f8, $f4 /* 07CBB8 7F048048 44055000 */ mfc1 $a1, $f10 /* 07CBBC 7F04804C C7A80404 */ lwc1 $f8, 0x404($sp) /* 07CBC0 7F048050 46023280 */ add.s $f10, $f6, $f2 /* 07CBC4 7F048054 C7A6040C */ lwc1 $f6, 0x40c($sp) /* 07CBC8 7F048058 46004100 */ add.s $f4, $f8, $f0 /* 07CBCC 7F04805C 44065000 */ mfc1 $a2, $f10 /* 07CBD0 7F048060 46023280 */ add.s $f10, $f6, $f2 /* 07CBD4 7F048064 44072000 */ mfc1 $a3, $f4 /* 07CBD8 7F048068 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07CBDC 7F04806C E7AA0010 */ swc1 $f10, 0x10($sp) /* 07CBE0 7F048070 1040002D */ beqz $v0, .Ljp7F048128 /* 07CBE4 7F048074 C7A4041C */ lwc1 $f4, 0x41c($sp) /* 07CBE8 7F048078 C6600008 */ lwc1 $f0, 8($s3) /* 07CBEC 7F04807C C7A80404 */ lwc1 $f8, 0x404($sp) /* 07CBF0 7F048080 C6620010 */ lwc1 $f2, 0x10($s3) /* 07CBF4 7F048084 46040180 */ add.s $f6, $f0, $f4 /* 07CBF8 7F048088 C7A4040C */ lwc1 $f4, 0x40c($sp) /* 07CBFC 7F04808C 02002025 */ move $a0, $s0 /* 07CC00 7F048090 46064280 */ add.s $f10, $f8, $f6 /* 07CC04 7F048094 C7A60424 */ lwc1 $f6, 0x424($sp) /* 07CC08 7F048098 44055000 */ mfc1 $a1, $f10 /* 07CC0C 7F04809C 46061280 */ add.s $f10, $f2, $f6 /* 07CC10 7F0480A0 460A2180 */ add.s $f6, $f4, $f10 /* 07CC14 7F0480A4 C7AA0428 */ lwc1 $f10, 0x428($sp) /* 07CC18 7F0480A8 44063000 */ mfc1 $a2, $f6 /* 07CC1C 7F0480AC 460A0180 */ add.s $f6, $f0, $f10 /* 07CC20 7F0480B0 46064280 */ add.s $f10, $f8, $f6 /* 07CC24 7F0480B4 C7A80430 */ lwc1 $f8, 0x430($sp) /* 07CC28 7F0480B8 46081180 */ add.s $f6, $f2, $f8 /* 07CC2C 7F0480BC 44075000 */ mfc1 $a3, $f10 /* 07CC30 7F0480C0 46062280 */ add.s $f10, $f4, $f6 /* 07CC34 7F0480C4 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07CC38 7F0480C8 E7AA0010 */ swc1 $f10, 0x10($sp) /* 07CC3C 7F0480CC 10400016 */ beqz $v0, .Ljp7F048128 /* 07CC40 7F0480D0 C7A40428 */ lwc1 $f4, 0x428($sp) /* 07CC44 7F0480D4 C6680008 */ lwc1 $f8, 8($s3) /* 07CC48 7F0480D8 C7A60404 */ lwc1 $f6, 0x404($sp) /* 07CC4C 7F0480DC 02002025 */ move $a0, $s0 /* 07CC50 7F0480E0 46044000 */ add.s $f0, $f8, $f4 /* 07CC54 7F0480E4 C7A40430 */ lwc1 $f4, 0x430($sp) /* 07CC58 7F0480E8 C6680010 */ lwc1 $f8, 0x10($s3) /* 07CC5C 7F0480EC 46003280 */ add.s $f10, $f6, $f0 /* 07CC60 7F0480F0 C7A6040C */ lwc1 $f6, 0x40c($sp) /* 07CC64 7F0480F4 46044080 */ add.s $f2, $f8, $f4 /* 07CC68 7F0480F8 44055000 */ mfc1 $a1, $f10 /* 07CC6C 7F0480FC C7A80410 */ lwc1 $f8, 0x410($sp) /* 07CC70 7F048100 46023280 */ add.s $f10, $f6, $f2 /* 07CC74 7F048104 C7A60418 */ lwc1 $f6, 0x418($sp) /* 07CC78 7F048108 46004100 */ add.s $f4, $f8, $f0 /* 07CC7C 7F04810C 44065000 */ mfc1 $a2, $f10 /* 07CC80 7F048110 46023280 */ add.s $f10, $f6, $f2 /* 07CC84 7F048114 44072000 */ mfc1 $a3, $f4 /* 07CC88 7F048118 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07CC8C 7F04811C E7AA0010 */ swc1 $f10, 0x10($sp) /* 07CC90 7F048120 14400002 */ bnez $v0, .Ljp7F04812C /* 07CC94 7F048124 00000000 */ nop .Ljp7F048128: /* 07CC98 7F048128 00009025 */ move $s2, $zero .Ljp7F04812C: /* 07CC9C 7F04812C 12400023 */ beqz $s2, .Ljp7F0481BC /* 07CCA0 7F048130 02202025 */ move $a0, $s1 /* 07CCA4 7F048134 262C0058 */ addiu $t4, $s1, 0x58 /* 07CCA8 7F048138 AFAC0074 */ sw $t4, 0x74($sp) /* 07CCAC 7F04813C 0FC113C3 */ jal sub_GAME_7F044B38 /* 07CCB0 7F048140 2630007C */ addiu $s0, $s1, 0x7c /* 07CCB4 7F048144 02602025 */ move $a0, $s3 /* 07CCB8 7F048148 0FC1016D */ jal sub_GAME_7F0402B4 /* 07CCBC 7F04814C 02002825 */ move $a1, $s0 /* 07CCC0 7F048150 0FC14832 */ jal detonate_proxmine_In_range /* 07CCC4 7F048154 8FA40074 */ lw $a0, 0x74($sp) /* 07CCC8 7F048158 8FAA047C */ lw $t2, 0x47c($sp) /* 07CCCC 7F04815C 27A40454 */ addiu $a0, $sp, 0x454 /* 07CCD0 7F048160 27A5069C */ addiu $a1, $sp, 0x69c /* 07CCD4 7F048164 11400054 */ beqz $t2, .Ljp7F0482B8 /* 07CCD8 7F048168 01403025 */ move $a2, $t2 /* 07CCDC 7F04816C 0FC0C014 */ jal sub_GAME_7F02FD50 /* 07CCE0 7F048170 3C0742C8 */ lui $a3, 0x42c8 /* 07CCE4 7F048174 10400050 */ beqz $v0, .Ljp7F0482B8 /* 07CCE8 7F048178 00000000 */ nop /* 07CCEC 7F04817C 8E2F00A8 */ lw $t7, 0xa8($s1) /* 07CCF0 7F048180 8E3900A4 */ lw $t9, 0xa4($s1) /* 07CCF4 7F048184 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07CCF8 7F048188 25ED0001 */ addiu $t5, $t7, 1 /* 07CCFC 7F04818C AE2D00A8 */ sw $t5, 0xa8($s1) /* 07CD00 7F048190 8F380000 */ lw $t8, ($t9) /* 07CD04 7F048194 000D4880 */ sll $t1, $t5, 2 /* 07CD08 7F048198 03095821 */ addu $t3, $t8, $t1 /* 07CD0C 7F04819C 8D6E0000 */ lw $t6, ($t3) /* 07CD10 7F0481A0 05C10045 */ bgez $t6, .Ljp7F0482B8 /* 07CD14 7F0481A4 00000000 */ nop /* 07CD18 7F0481A8 44814000 */ mtc1 $at, $f8 /* 07CD1C 7F0481AC AE2000A4 */ sw $zero, 0xa4($s1) /* 07CD20 7F0481B0 E6360094 */ swc1 $f22, 0x94($s1) /* 07CD24 7F0481B4 10000040 */ b .Ljp7F0482B8 /* 07CD28 7F0481B8 E6280098 */ swc1 $f8, 0x98($s1) .Ljp7F0481BC: /* 07CD2C 7F0481BC C6240098 */ lwc1 $f4, 0x98($s1) /* 07CD30 7F0481C0 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07CD34 7F0481C4 4616203C */ c.lt.s $f4, $f22 /* 07CD38 7F0481C8 00000000 */ nop /* 07CD3C 7F0481CC 45020006 */ bc1fl .Ljp7F0481E8 /* 07CD40 7F0481D0 E6360088 */ swc1 $f22, 0x88($s1) /* 07CD44 7F0481D4 C6260088 */ lwc1 $f6, 0x88($s1) /* 07CD48 7F0481D8 44815000 */ mtc1 $at, $f10 /* 07CD4C 7F0481DC E6260094 */ swc1 $f6, 0x94($s1) /* 07CD50 7F0481E0 E62A0098 */ swc1 $f10, 0x98($s1) /* 07CD54 7F0481E4 E6360088 */ swc1 $f22, 0x88($s1) .Ljp7F0481E8: /* 07CD58 7F0481E8 C7A8043C */ lwc1 $f8, 0x43c($sp) /* 07CD5C 7F0481EC 02202025 */ move $a0, $s1 /* 07CD60 7F0481F0 E62800A0 */ swc1 $f8, 0xa0($s1) /* 07CD64 7F0481F4 C7A40438 */ lwc1 $f4, 0x438($sp) /* 07CD68 7F0481F8 E624009C */ swc1 $f4, 0x9c($s1) /* 07CD6C 7F0481FC 8FAC0450 */ lw $t4, 0x450($sp) /* 07CD70 7F048200 AE6C0014 */ sw $t4, 0x14($s3) /* 07CD74 7F048204 C7A20454 */ lwc1 $f2, 0x454($sp) /* 07CD78 7F048208 E6620008 */ swc1 $f2, 8($s3) /* 07CD7C 7F04820C E6220058 */ swc1 $f2, 0x58($s1) /* 07CD80 7F048210 C7A20458 */ lwc1 $f2, 0x458($sp) /* 07CD84 7F048214 E662000C */ swc1 $f2, 0xc($s3) /* 07CD88 7F048218 E622005C */ swc1 $f2, 0x5c($s1) /* 07CD8C 7F04821C C7A2045C */ lwc1 $f2, 0x45c($sp) /* 07CD90 7F048220 E6620010 */ swc1 $f2, 0x10($s3) /* 07CD94 7F048224 0FC101E1 */ jal sub_GAME_7F040484 /* 07CD98 7F048228 E6220060 */ swc1 $f2, 0x60($s1) /* 07CD9C 7F04822C 0FC15C68 */ jal sub_GAME_7F056CA0 /* 07CDA0 7F048230 02202025 */ move $a0, $s1 /* 07CDA4 7F048234 10000020 */ b .Ljp7F0482B8 /* 07CDA8 7F048238 00000000 */ nop .Ljp7F04823C: /* 07CDAC 7F04823C C6260098 */ lwc1 $f6, 0x98($s1) .Ljp7F048240: /* 07CDB0 7F048240 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07CDB4 7F048244 4616303C */ c.lt.s $f6, $f22 /* 07CDB8 7F048248 00000000 */ nop /* 07CDBC 7F04824C 45020006 */ bc1fl .Ljp7F048268 /* 07CDC0 7F048250 E6360088 */ swc1 $f22, 0x88($s1) /* 07CDC4 7F048254 C62A0088 */ lwc1 $f10, 0x88($s1) /* 07CDC8 7F048258 44814000 */ mtc1 $at, $f8 /* 07CDCC 7F04825C E62A0094 */ swc1 $f10, 0x94($s1) /* 07CDD0 7F048260 E6280098 */ swc1 $f8, 0x98($s1) /* 07CDD4 7F048264 E6360088 */ swc1 $f22, 0x88($s1) .Ljp7F048268: /* 07CDD8 7F048268 C7A4043C */ lwc1 $f4, 0x43c($sp) /* 07CDDC 7F04826C E62400A0 */ swc1 $f4, 0xa0($s1) /* 07CDE0 7F048270 C7A60438 */ lwc1 $f6, 0x438($sp) /* 07CDE4 7F048274 10000010 */ b .Ljp7F0482B8 /* 07CDE8 7F048278 E626009C */ swc1 $f6, 0x9c($s1) /* 07CDEC 7F04827C 8E2A0008 */ lw $t2, 8($s1) .Ljp7F048280: /* 07CDF0 7F048280 000A7880 */ sll $t7, $t2, 2 /* 07CDF4 7F048284 05E1000C */ bgez $t7, .Ljp7F0482B8 /* 07CDF8 7F048288 00000000 */ nop /* 07CDFC 7F04828C C62C0038 */ lwc1 $f12, 0x38($s1) /* 07CE00 7F048290 0FC16BD4 */ jal atan2f /* 07CE04 7F048294 C62E0040 */ lwc1 $f14, 0x40($s1) /* 07CE08 7F048298 8E2D0008 */ lw $t5, 8($s1) /* 07CE0C 7F04829C 3C01DFFF */ lui $at, (0xDFFFFFFF >> 16) # lui $at, 0xdfff /* 07CE10 7F0482A0 3421FFFF */ ori $at, (0xDFFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 07CE14 7F0482A4 01A1C824 */ and $t9, $t5, $at /* 07CE18 7F0482A8 E62000A0 */ swc1 $f0, 0xa0($s1) /* 07CE1C 7F0482AC AE390008 */ sw $t9, 8($s1) /* 07CE20 7F0482B0 0FC113C3 */ jal sub_GAME_7F044B38 /* 07CE24 7F0482B4 02202025 */ move $a0, $s1 .Ljp7F0482B8: /* 07CE28 7F0482B8 100000DE */ b .Ljp7F048634 /* 07CE2C 7F0482BC 92220003 */ lbu $v0, 3($s1) .Ljp7F0482C0: /* 07CE30 7F0482C0 24010028 */ li $at, 40 /* 07CE34 7F0482C4 144100DA */ bne $v0, $at, .Ljp7F048630 /* 07CE38 7F0482C8 02202025 */ move $a0, $s1 /* 07CE3C 7F0482CC 0FC0D5E1 */ jal parse_handle_actionblocks /* 07CE40 7F0482D0 24050001 */ li $a1, 1 /* 07CE44 7F0482D4 8E300014 */ lw $s0, 0x14($s1) /* 07CE48 7F0482D8 26250058 */ addiu $a1, $s1, 0x58 /* 07CE4C 7F0482DC 8E080020 */ lw $t0, 0x20($s0) /* 07CE50 7F0482E0 02002025 */ move $a0, $s0 /* 07CE54 7F0482E4 51000065 */ beql $t0, $zero, .Ljp7F04847C /* 07CE58 7F0482E8 C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07CE5C 7F0482EC 0FC1B47F */ jal setsuboffset /* 07CE60 7F0482F0 AFA50074 */ sw $a1, 0x74($sp) /* 07CE64 7F0482F4 8E300014 */ lw $s0, 0x14($s1) /* 07CE68 7F0482F8 3C098003 */ lui $t1, %hi(animation_table_ptrs2+4) # $t1, 0x8003 /* 07CE6C 7F0482FC 8D29A090 */ lw $t1, %lo(animation_table_ptrs2+4)($t1) /* 07CE70 7F048300 8E180020 */ lw $t8, 0x20($s0) /* 07CE74 7F048304 3C054127 */ lui $a1, (0x4127020C >> 16) # lui $a1, 0x4127 /* 07CE78 7F048308 02002025 */ move $a0, $s0 /* 07CE7C 7F04830C 17090009 */ bne $t8, $t1, .Ljp7F048334 /* 07CE80 7F048310 00000000 */ nop /* 07CE84 7F048314 0FC1B51D */ jal sub_GAME_7F06CE84 /* 07CE88 7F048318 34A5020C */ ori $a1, (0x4127020C & 0xFFFF) # ori $a1, $a1, 0x20c /* 07CE8C 7F04831C 3C054049 */ lui $a1, (0x40490FDB >> 16) # lui $a1, 0x4049 /* 07CE90 7F048320 34A50FDB */ ori $a1, (0x40490FDB & 0xFFFF) # ori $a1, $a1, 0xfdb /* 07CE94 7F048324 0FC1B4CB */ jal setsubroty /* 07CE98 7F048328 8E240014 */ lw $a0, 0x14($s1) /* 07CE9C 7F04832C 10000024 */ b .Ljp7F0483C0 /* 07CEA0 7F048330 00000000 */ nop .Ljp7F048334: /* 07CEA4 7F048334 0C001A57 */ jal get_stage_num /* 07CEA8 7F048338 00000000 */ nop /* 07CEAC 7F04833C 24010016 */ li $at, 22 /* 07CEB0 7F048340 1441000A */ bne $v0, $at, .Ljp7F04836C /* 07CEB4 7F048344 3C053F85 */ lui $a1, (0x3F859B3D >> 16) # lui $a1, 0x3f85 /* 07CEB8 7F048348 8E240014 */ lw $a0, 0x14($s1) /* 07CEBC 7F04834C 0FC1B51D */ jal sub_GAME_7F06CE84 /* 07CEC0 7F048350 34A59B3D */ ori $a1, (0x3F859B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CEC4 7F048354 3C054016 */ lui $a1, (0x4016CBE4 >> 16) # lui $a1, 0x4016 /* 07CEC8 7F048358 34A5CBE4 */ ori $a1, (0x4016CBE4 & 0xFFFF) # ori $a1, $a1, 0xcbe4 /* 07CECC 7F04835C 0FC1B4CB */ jal setsubroty /* 07CED0 7F048360 8E240014 */ lw $a0, 0x14($s1) /* 07CED4 7F048364 10000016 */ b .Ljp7F0483C0 /* 07CED8 7F048368 00000000 */ nop .Ljp7F04836C: /* 07CEDC 7F04836C 0C001A57 */ jal get_stage_num /* 07CEE0 7F048370 00000000 */ nop /* 07CEE4 7F048374 2401001A */ li $at, 26 /* 07CEE8 7F048378 1441000B */ bne $v0, $at, .Ljp7F0483A8 /* 07CEEC 7F04837C 3C053F85 */ lui $a1, 0x3f85 /* 07CEF0 7F048380 3C053F85 */ lui $a1, (0x3F859B3D >> 16) # lui $a1, 0x3f85 /* 07CEF4 7F048384 34A59B3D */ ori $a1, (0x3F859B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CEF8 7F048388 0FC1B51D */ jal sub_GAME_7F06CE84 /* 07CEFC 7F04838C 8E240014 */ lw $a0, 0x14($s1) /* 07CF00 7F048390 3C05407B */ lui $a1, (0x407B9B3D >> 16) # lui $a1, 0x407b /* 07CF04 7F048394 34A553D1 */ ori $a1, (0x407B53D1 & 0xFFFF) # ori $a1, $a1, 0x53d1 /* 07CF08 7F048398 0FC1B4CB */ jal setsubroty /* 07CF0C 7F04839C 8E240014 */ lw $a0, 0x14($s1) /* 07CF10 7F0483A0 10000007 */ b .Ljp7F0483C0 /* 07CF14 7F0483A4 00000000 */ nop .Ljp7F0483A8: /* 07CF18 7F0483A8 8E240014 */ lw $a0, 0x14($s1) /* 07CF1C 7F0483AC 0FC1B51D */ jal sub_GAME_7F06CE84 /* 07CF20 7F0483B0 34A59B3D */ ori $a1, (0x407B9B3D & 0xFFFF) # ori $a1, $a1, 0x9b3d /* 07CF24 7F0483B4 4405B000 */ mfc1 $a1, $f22 /* 07CF28 7F0483B8 0FC1B4CB */ jal setsubroty /* 07CF2C 7F0483BC 8E240014 */ lw $a0, 0x14($s1) .Ljp7F0483C0: /* 07CF30 7F0483C0 3C058005 */ lui $a1, %hi(clock_timer) # $a1, 0x8005 /* 07CF34 7F0483C4 8CA583A4 */ lw $a1, %lo(clock_timer)($a1) /* 07CF38 7F0483C8 8E240014 */ lw $a0, 0x14($s1) /* 07CF3C 7F0483CC 0FC1C437 */ jal sub_GAME_7F070AEC /* 07CF40 7F0483D0 24060001 */ li $a2, 1 /* 07CF44 7F0483D4 0FC1B728 */ jal subcalcpos /* 07CF48 7F0483D8 8E240014 */ lw $a0, 0x14($s1) /* 07CF4C 7F0483DC 8E240014 */ lw $a0, 0x14($s1) /* 07CF50 7F0483E0 0FC1B462 */ jal getsuboffset /* 07CF54 7F0483E4 8FA50074 */ lw $a1, 0x74($sp) /* 07CF58 7F0483E8 C62A0058 */ lwc1 $f10, 0x58($s1) /* 07CF5C 7F0483EC 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) # $a1, 0x8007 /* 07CF60 7F0483F0 24A55D40 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d40 /* 07CF64 7F0483F4 E66A0008 */ swc1 $f10, 8($s3) /* 07CF68 7F0483F8 C6280060 */ lwc1 $f8, 0x60($s1) /* 07CF6C 7F0483FC E6680010 */ swc1 $f8, 0x10($s3) /* 07CF70 7F048400 86220006 */ lh $v0, 6($s1) /* 07CF74 7F048404 28412710 */ slti $at, $v0, 0x2710 /* 07CF78 7F048408 1020000B */ beqz $at, .Ljp7F048438 /* 07CF7C 7F04840C 00026100 */ sll $t4, $v0, 4 /* 07CF80 7F048410 00025880 */ sll $t3, $v0, 2 /* 07CF84 7F048414 3C058007 */ lui $a1, %hi(ptr_setup_path_tbl) # $a1, 0x8007 /* 07CF88 7F048418 01625823 */ subu $t3, $t3, $v0 /* 07CF8C 7F04841C 24A55D40 */ addiu $a1, %lo(ptr_setup_path_tbl) # addiu $a1, $a1, 0x5d40 /* 07CF90 7F048420 000B5880 */ sll $t3, $t3, 2 /* 07CF94 7F048424 8CAE0018 */ lw $t6, 0x18($a1) /* 07CF98 7F048428 01625823 */ subu $t3, $t3, $v0 /* 07CF9C 7F04842C 000B5880 */ sll $t3, $t3, 2 /* 07CFA0 7F048430 10000008 */ b .Ljp7F048454 /* 07CFA4 7F048434 016E1821 */ addu $v1, $t3, $t6 .Ljp7F048438: /* 07CFA8 7F048438 8CAA001C */ lw $t2, 0x1c($a1) /* 07CFAC 7F04843C 01826021 */ addu $t4, $t4, $v0 /* 07CFB0 7F048440 000C6080 */ sll $t4, $t4, 2 /* 07CFB4 7F048444 3C01FFF5 */ lui $at, (0xFFF59FC0 >> 16) # lui $at, 0xfff5 /* 07CFB8 7F048448 34219FC0 */ ori $at, (0xFFF59FC0 & 0xFFFF) # ori $at, $at, 0x9fc0 /* 07CFBC 7F04844C 018A1821 */ addu $v1, $t4, $t2 /* 07CFC0 7F048450 00611821 */ addu $v1, $v1, $at .Ljp7F048454: /* 07CFC4 7F048454 C624005C */ lwc1 $f4, 0x5c($s1) /* 07CFC8 7F048458 C4660004 */ lwc1 $f6, 4($v1) /* 07CFCC 7F04845C 46062280 */ add.s $f10, $f4, $f6 /* 07CFD0 7F048460 E66A000C */ swc1 $f10, 0xc($s3) /* 07CFD4 7F048464 C668000C */ lwc1 $f8, 0xc($s3) /* 07CFD8 7F048468 8E240014 */ lw $a0, 0x14($s1) /* 07CFDC 7F04846C E628005C */ swc1 $f8, 0x5c($s1) /* 07CFE0 7F048470 0FC1B47F */ jal setsuboffset /* 07CFE4 7F048474 8FA50074 */ lw $a1, 0x74($sp) /* 07CFE8 7F048478 C62C00A0 */ lwc1 $f12, 0xa0($s1) .Ljp7F04847C: /* 07CFEC 7F04847C 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07CFF0 7F048480 460CB03E */ c.le.s $f22, $f12 /* 07CFF4 7F048484 00000000 */ nop /* 07CFF8 7F048488 45020016 */ bc1fl .Ljp7F0484E4 /* 07CFFC 7F04848C C6200094 */ lwc1 $f0, 0x94($s1) /* 07D000 7F048490 C42283B4 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07D004 7F048494 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07D008 7F048498 4602603E */ c.le.s $f12, $f2 /* 07D00C 7F04849C 00000000 */ nop /* 07D010 7F0484A0 45020006 */ bc1fl .Ljp7F0484BC /* 07D014 7F0484A4 C62E0098 */ lwc1 $f14, 0x98($s1) /* 07D018 7F0484A8 C624009C */ lwc1 $f4, 0x9c($s1) /* 07D01C 7F0484AC C62C00A0 */ lwc1 $f12, 0xa0($s1) /* 07D020 7F0484B0 10000008 */ b .Ljp7F0484D4 /* 07D024 7F0484B4 E6240098 */ swc1 $f4, 0x98($s1) /* 07D028 7F0484B8 C62E0098 */ lwc1 $f14, 0x98($s1) .Ljp7F0484BC: /* 07D02C 7F0484BC C626009C */ lwc1 $f6, 0x9c($s1) /* 07D030 7F0484C0 460E3281 */ sub.s $f10, $f6, $f14 /* 07D034 7F0484C4 46025202 */ mul.s $f8, $f10, $f2 /* 07D038 7F0484C8 460C4103 */ div.s $f4, $f8, $f12 /* 07D03C 7F0484CC 46047180 */ add.s $f6, $f14, $f4 /* 07D040 7F0484D0 E6260098 */ swc1 $f6, 0x98($s1) .Ljp7F0484D4: /* 07D044 7F0484D4 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07D048 7F0484D8 460A6201 */ sub.s $f8, $f12, $f10 /* 07D04C 7F0484DC E62800A0 */ swc1 $f8, 0xa0($s1) /* 07D050 7F0484E0 C6200094 */ lwc1 $f0, 0x94($s1) .Ljp7F0484E4: /* 07D054 7F0484E4 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07D058 7F0484E8 4600B03E */ c.le.s $f22, $f0 /* 07D05C 7F0484EC 00000000 */ nop /* 07D060 7F0484F0 45020016 */ bc1fl .Ljp7F04854C /* 07D064 7F0484F4 8E2F000C */ lw $t7, 0xc($s1) /* 07D068 7F0484F8 C42283B4 */ lwc1 $f2, %lo(global_timer_delta)($at) /* 07D06C 7F0484FC 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07D070 7F048500 4602003E */ c.le.s $f0, $f2 /* 07D074 7F048504 00000000 */ nop /* 07D078 7F048508 45020006 */ bc1fl .Ljp7F048524 /* 07D07C 7F04850C C62C008C */ lwc1 $f12, 0x8c($s1) /* 07D080 7F048510 C6240090 */ lwc1 $f4, 0x90($s1) /* 07D084 7F048514 C6200094 */ lwc1 $f0, 0x94($s1) /* 07D088 7F048518 10000008 */ b .Ljp7F04853C /* 07D08C 7F04851C E624008C */ swc1 $f4, 0x8c($s1) /* 07D090 7F048520 C62C008C */ lwc1 $f12, 0x8c($s1) .Ljp7F048524: /* 07D094 7F048524 C6260090 */ lwc1 $f6, 0x90($s1) /* 07D098 7F048528 460C3281 */ sub.s $f10, $f6, $f12 /* 07D09C 7F04852C 46025202 */ mul.s $f8, $f10, $f2 /* 07D0A0 7F048530 46004103 */ div.s $f4, $f8, $f0 /* 07D0A4 7F048534 46046180 */ add.s $f6, $f12, $f4 /* 07D0A8 7F048538 E626008C */ swc1 $f6, 0x8c($s1) .Ljp7F04853C: /* 07D0AC 7F04853C C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07D0B0 7F048540 460A0201 */ sub.s $f8, $f0, $f10 /* 07D0B4 7F048544 E6280094 */ swc1 $f8, 0x94($s1) /* 07D0B8 7F048548 8E2F000C */ lw $t7, 0xc($s1) .Ljp7F04854C: /* 07D0BC 7F04854C 00008025 */ move $s0, $zero /* 07D0C0 7F048550 000F6B00 */ sll $t5, $t7, 0xc /* 07D0C4 7F048554 05A00014 */ bltz $t5, .Ljp7F0485A8 /* 07D0C8 7F048558 00000000 */ nop /* 07D0CC 7F04855C 0FC13CCE */ jal check_if_object_has_not_been_destroyed /* 07D0D0 7F048560 02202025 */ move $a0, $s1 /* 07D0D4 7F048564 10400010 */ beqz $v0, .Ljp7F0485A8 /* 07D0D8 7F048568 00000000 */ nop /* 07D0DC 7F04856C C624008C */ lwc1 $f4, 0x8c($s1) /* 07D0E0 7F048570 4604B032 */ c.eq.s $f22, $f4 /* 07D0E4 7F048574 00000000 */ nop /* 07D0E8 7F048578 4501000B */ bc1t .Ljp7F0485A8 /* 07D0EC 7F04857C 00000000 */ nop /* 07D0F0 7F048580 8E390008 */ lw $t9, 8($s1) /* 07D0F4 7F048584 3C05459C */ lui $a1, (0x459C4000 >> 16) # lui $a1, 0x459c /* 07D0F8 7F048588 34A54000 */ ori $a1, (0x459C4000 & 0xFFFF) # ori $a1, $a1, 0x4000 /* 07D0FC 7F04858C 00194080 */ sll $t0, $t9, 2 /* 07D100 7F048590 05000005 */ bltz $t0, .Ljp7F0485A8 /* 07D104 7F048594 26240058 */ addiu $a0, $s1, 0x58 /* 07D108 7F048598 3C0645BB */ lui $a2, (0x45BB8000 >> 16) # lui $a2, 0x45bb /* 07D10C 7F04859C 0FC14F64 */ jal sub_GAME_7F053894 /* 07D110 7F0485A0 34C68000 */ ori $a2, (0x45BB8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 07D114 7F0485A4 00408025 */ move $s0, $v0 .Ljp7F0485A8: /* 07D118 7F0485A8 5A000019 */ blezl $s0, .Ljp7F048610 /* 07D11C 7F0485AC 8E2400B0 */ lw $a0, 0xb0($s1) /* 07D120 7F0485B0 8E2400B0 */ lw $a0, 0xb0($s1) /* 07D124 7F0485B4 10800005 */ beqz $a0, .Ljp7F0485CC /* 07D128 7F0485B8 00000000 */ nop /* 07D12C 7F0485BC 0C002380 */ jal sfxGetArg0Unk3F /* 07D130 7F0485C0 00000000 */ nop /* 07D134 7F0485C4 5440000A */ bnezl $v0, .Ljp7F0485F0 /* 07D138 7F0485C8 8E2400B0 */ lw $a0, 0xb0($s1) .Ljp7F0485CC: /* 07D13C 7F0485CC 0FC3021B */ jal get_controls_locked_flag /* 07D140 7F0485D0 00000000 */ nop /* 07D144 7F0485D4 14400005 */ bnez $v0, .Ljp7F0485EC /* 07D148 7F0485D8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07D14C 7F0485DC 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07D150 7F0485E0 2405003A */ li $a1, 58 /* 07D154 7F0485E4 0C002386 */ jal play_sfx_a1 /* 07D158 7F0485E8 262600B0 */ addiu $a2, $s1, 0xb0 .Ljp7F0485EC: /* 07D15C 7F0485EC 8E2400B0 */ lw $a0, 0xb0($s1) .Ljp7F0485F0: /* 07D160 7F0485F0 24050008 */ li $a1, 8 /* 07D164 7F0485F4 5080000F */ beql $a0, $zero, .Ljp7F048634 /* 07D168 7F0485F8 92220003 */ lbu $v0, 3($s1) /* 07D16C 7F0485FC 0C002465 */ jal sfx_c_70009184 /* 07D170 7F048600 02003025 */ move $a2, $s0 /* 07D174 7F048604 1000000B */ b .Ljp7F048634 /* 07D178 7F048608 92220003 */ lbu $v0, 3($s1) /* 07D17C 7F04860C 8E2400B0 */ lw $a0, 0xb0($s1) .Ljp7F048610: /* 07D180 7F048610 50800008 */ beql $a0, $zero, .Ljp7F048634 /* 07D184 7F048614 92220003 */ lbu $v0, 3($s1) /* 07D188 7F048618 0C002380 */ jal sfxGetArg0Unk3F /* 07D18C 7F04861C 00000000 */ nop /* 07D190 7F048620 50400004 */ beql $v0, $zero, .Ljp7F048634 /* 07D194 7F048624 92220003 */ lbu $v0, 3($s1) /* 07D198 7F048628 0C00240C */ jal sfxDeactivate /* 07D19C 7F04862C 8E2400B0 */ lw $a0, 0xb0($s1) .Ljp7F048630: /* 07D1A0 7F048630 92220003 */ lbu $v0, 3($s1) .Ljp7F048634: /* 07D1A4 7F048634 3C018005 */ lui $at, %hi(D_80052B64) # $at, 0x8005 /* 07D1A8 7F048638 C4342B94 */ lwc1 $f20, %lo(D_80052B64)($at) /* 07D1AC 7F04863C 2401002F */ li $at, 47 /* 07D1B0 7F048640 54410020 */ bnel $v0, $at, .Ljp7F0486C4 /* 07D1B4 7F048644 24010001 */ li $at, 1 /* 07D1B8 7F048648 8E700004 */ lw $s0, 4($s3) /* 07D1BC 7F04864C 26240058 */ addiu $a0, $s1, 0x58 /* 07D1C0 7F048650 8E180080 */ lw $t8, 0x80($s0) /* 07D1C4 7F048654 8E090084 */ lw $t1, 0x84($s0) /* 07D1C8 7F048658 8E070090 */ lw $a3, 0x90($s0) /* 07D1CC 7F04865C 44983000 */ mtc1 $t8, $f6 /* 07D1D0 7F048660 44895000 */ mtc1 $t1, $f10 /* 07D1D4 7F048664 468031A0 */ cvt.s.w $f6, $f6 /* 07D1D8 7F048668 468052A0 */ cvt.s.w $f10, $f10 /* 07D1DC 7F04866C 44053000 */ mfc1 $a1, $f6 /* 07D1E0 7F048670 44065000 */ mfc1 $a2, $f10 /* 07D1E4 7F048674 0FC1156C */ jal sub_GAME_7F0451DC /* 07D1E8 7F048678 00000000 */ nop /* 07D1EC 7F04867C 8E04008C */ lw $a0, 0x8c($s0) /* 07D1F0 7F048680 AE020088 */ sw $v0, 0x88($s0) /* 07D1F4 7F048684 8FAB067C */ lw $t3, 0x67c($sp) /* 07D1F8 7F048688 0480000B */ bltz $a0, .Ljp7F0486B8 /* 07D1FC 7F04868C 24010001 */ li $at, 1 /* 07D200 7F048690 15610009 */ bne $t3, $at, .Ljp7F0486B8 /* 07D204 7F048694 240100FF */ li $at, 255 /* 07D208 7F048698 14410005 */ bne $v0, $at, .Ljp7F0486B0 /* 07D20C 7F04869C 00000000 */ nop /* 07D210 7F0486A0 0FC2EA5B */ jal sub_GAME_7F0B9DBC /* 07D214 7F0486A4 00002825 */ move $a1, $zero /* 07D218 7F0486A8 10000003 */ b .Ljp7F0486B8 /* 07D21C 7F0486AC 00000000 */ nop .Ljp7F0486B0: /* 07D220 7F0486B0 0FC2EA5B */ jal sub_GAME_7F0B9DBC /* 07D224 7F0486B4 24050001 */ li $a1, 1 .Ljp7F0486B8: /* 07D228 7F0486B8 1000003B */ b .Ljp7F0487A8 /* 07D22C 7F0486BC AFA00678 */ sw $zero, 0x678($sp) /* 07D230 7F0486C0 24010001 */ li $at, 1 .Ljp7F0486C4: /* 07D234 7F0486C4 54410039 */ bnel $v0, $at, .Ljp7F0487AC /* 07D238 7F0486C8 922C0003 */ lbu $t4, 3($s1) /* 07D23C 7F0486CC 962C0098 */ lhu $t4, 0x98($s1) /* 07D240 7F0486D0 318A0002 */ andi $t2, $t4, 2 /* 07D244 7F0486D4 51400035 */ beql $t2, $zero, .Ljp7F0487AC /* 07D248 7F0486D8 922C0003 */ lbu $t4, 3($s1) /* 07D24C 7F0486DC 8E700004 */ lw $s0, 4($s3) /* 07D250 7F0486E0 4407B000 */ mfc1 $a3, $f22 /* 07D254 7F0486E4 24120001 */ li $s2, 1 /* 07D258 7F0486E8 8E0F00C0 */ lw $t7, 0xc0($s0) /* 07D25C 7F0486EC 8E0D00C4 */ lw $t5, 0xc4($s0) /* 07D260 7F0486F0 26240058 */ addiu $a0, $s1, 0x58 /* 07D264 7F0486F4 448F4000 */ mtc1 $t7, $f8 /* 07D268 7F0486F8 448D2000 */ mtc1 $t5, $f4 /* 07D26C 7F0486FC 46804220 */ cvt.s.w $f8, $f8 /* 07D270 7F048700 46802120 */ cvt.s.w $f4, $f4 /* 07D274 7F048704 44054000 */ mfc1 $a1, $f8 /* 07D278 7F048708 44062000 */ mfc1 $a2, $f4 /* 07D27C 7F04870C 0FC1156C */ jal sub_GAME_7F0451DC /* 07D280 7F048710 00000000 */ nop /* 07D284 7F048714 A60200BE */ sh $v0, 0xbe($s0) /* 07D288 7F048718 8FB9067C */ lw $t9, 0x67c($sp) /* 07D28C 7F04871C 24010001 */ li $at, 1 /* 07D290 7F048720 57210022 */ bnel $t9, $at, .Ljp7F0487AC /* 07D294 7F048724 922C0003 */ lbu $t4, 3($s1) /* 07D298 7F048728 860800BE */ lh $t0, 0xbe($s0) /* 07D29C 7F04872C 240100FF */ li $at, 255 /* 07D2A0 7F048730 55010007 */ bnel $t0, $at, .Ljp7F048750 /* 07D2A4 7F048734 00009025 */ move $s2, $zero /* 07D2A8 7F048738 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 07D2AC 7F04873C 4606B03C */ c.lt.s $f22, $f6 /* 07D2B0 7F048740 00000000 */ nop /* 07D2B4 7F048744 45020003 */ bc1fl .Ljp7F048754 /* 07D2B8 7F048748 8E820008 */ lw $v0, 8($s4) /* 07D2BC 7F04874C 00009025 */ move $s2, $zero .Ljp7F048750: /* 07D2C0 7F048750 8E820008 */ lw $v0, 8($s4) .Ljp7F048754: /* 07D2C4 7F048754 3C188004 */ lui $t8, %hi(prop_door_related) # $t8, 0x8004 /* 07D2C8 7F048758 2718A20C */ addiu $t8, %lo(prop_door_related) # addiu $t8, $t8, -0x5df4 /* 07D2CC 7F04875C 8C490004 */ lw $t1, 4($v0) /* 07D2D0 7F048760 17090009 */ bne $t8, $t1, .Ljp7F048788 /* 07D2D4 7F048764 00000000 */ nop /* 07D2D8 7F048768 8C4B0008 */ lw $t3, 8($v0) /* 07D2DC 7F04876C 02802025 */ move $a0, $s4 /* 07D2E0 7F048770 0FC1B363 */ jal extract_id_from_object_structure_microcode /* 07D2E4 7F048774 8D650004 */ lw $a1, 4($t3) /* 07D2E8 7F048778 8C4E0000 */ lw $t6, ($v0) /* 07D2EC 7F04877C 15C00002 */ bnez $t6, .Ljp7F048788 /* 07D2F0 7F048780 00000000 */ nop /* 07D2F4 7F048784 00009025 */ move $s2, $zero .Ljp7F048788: /* 07D2F8 7F048788 12400005 */ beqz $s2, .Ljp7F0487A0 /* 07D2FC 7F04878C 00000000 */ nop /* 07D300 7F048790 0FC14EB0 */ jal sub_GAME_7F0535C4 /* 07D304 7F048794 02002025 */ move $a0, $s0 /* 07D308 7F048798 10000004 */ b .Ljp7F0487AC /* 07D30C 7F04879C 922C0003 */ lbu $t4, 3($s1) .Ljp7F0487A0: /* 07D310 7F0487A0 0FC14EA5 */ jal sub_GAME_7F053598 /* 07D314 7F0487A4 02002025 */ move $a0, $s0 .Ljp7F0487A8: /* 07D318 7F0487A8 922C0003 */ lbu $t4, 3($s1) .Ljp7F0487AC: /* 07D31C 7F0487AC 2410002D */ li $s0, 45 /* 07D320 7F0487B0 560C0008 */ bnel $s0, $t4, .Ljp7F0487D4 /* 07D324 7F0487B4 8E23000C */ lw $v1, 0xc($s1) /* 07D328 7F0487B8 0FC1F52A */ jal get_ptr_for_players_tank /* 07D32C 7F0487BC 00000000 */ nop /* 07D330 7F0487C0 54530004 */ bnel $v0, $s3, .Ljp7F0487D4 /* 07D334 7F0487C4 8E23000C */ lw $v1, 0xc($s1) /* 07D338 7F0487C8 10000019 */ b .Ljp7F048830 /* 07D33C 7F0487CC 24030001 */ li $v1, 1 /* 07D340 7F0487D0 8E23000C */ lw $v1, 0xc($s1) .Ljp7F0487D4: /* 07D344 7F0487D4 00035140 */ sll $t2, $v1, 5 /* 07D348 7F0487D8 05430004 */ bgezl $t2, .Ljp7F0487EC /* 07D34C 7F0487DC 8E2F0064 */ lw $t7, 0x64($s1) /* 07D350 7F0487E0 10000013 */ b .Ljp7F048830 /* 07D354 7F0487E4 24030001 */ li $v1, 1 /* 07D358 7F0487E8 8E2F0064 */ lw $t7, 0x64($s1) .Ljp7F0487EC: /* 07D35C 7F0487EC 0003CB00 */ sll $t9, $v1, 0xc /* 07D360 7F0487F0 00001825 */ move $v1, $zero /* 07D364 7F0487F4 31ED0800 */ andi $t5, $t7, 0x800 /* 07D368 7F0487F8 15A0000D */ bnez $t5, .Ljp7F048830 /* 07D36C 7F0487FC 00000000 */ nop /* 07D370 7F048800 0720000B */ bltz $t9, .Ljp7F048830 /* 07D374 7F048804 02802025 */ move $a0, $s4 /* 07D378 7F048808 26280058 */ addiu $t0, $s1, 0x58 /* 07D37C 7F04880C 0FC1B57F */ jal getinstsize /* 07D380 7F048810 AFA80074 */ sw $t0, 0x74($sp) /* 07D384 7F048814 44060000 */ mfc1 $a2, $f0 /* 07D388 7F048818 02602025 */ move $a0, $s3 /* 07D38C 7F04881C 8FA50074 */ lw $a1, 0x74($sp) /* 07D390 7F048820 0FC1549A */ jal sub_GAME_7F054D6C /* 07D394 7F048824 8FA70678 */ lw $a3, 0x678($sp) /* 07D398 7F048828 10000001 */ b .Ljp7F048830 /* 07D39C 7F04882C 00401825 */ move $v1, $v0 .Ljp7F048830: /* 07D3A0 7F048830 1060037A */ beqz $v1, .Ljp7F04961C /* 07D3A4 7F048834 8FB80680 */ lw $t8, 0x680($sp) /* 07D3A8 7F048838 13000003 */ beqz $t8, .Ljp7F048848 /* 07D3AC 7F04883C 26240078 */ addiu $a0, $s1, 0x78 /* 07D3B0 7F048840 0FC10184 */ jal update_color_shading /* 07D3B4 7F048844 2625007C */ addiu $a1, $s1, 0x7c .Ljp7F048848: /* 07D3B8 7F048848 92690001 */ lbu $t1, 1($s3) /* 07D3BC 7F04884C 352B0002 */ ori $t3, $t1, 2 /* 07D3C0 7F048850 A26B0001 */ sb $t3, 1($s3) /* 07D3C4 7F048854 8E8E0008 */ lw $t6, 8($s4) /* 07D3C8 7F048858 85C4000E */ lh $a0, 0xe($t6) /* 07D3CC 7F04885C 00046180 */ sll $t4, $a0, 6 /* 07D3D0 7F048860 0FC2F8B1 */ jal sub_GAME_7F0BD714 /* 07D3D4 7F048864 01802025 */ move $a0, $t4 /* 07D3D8 7F048868 AE82000C */ sw $v0, 0xc($s4) /* 07D3DC 7F04886C 922A0003 */ lbu $t2, 3($s1) /* 07D3E0 7F048870 24010001 */ li $at, 1 /* 07D3E4 7F048874 00409025 */ move $s2, $v0 /* 07D3E8 7F048878 154100AD */ bne $t2, $at, .Ljp7F048B30 /* 07D3EC 7F04887C 26240018 */ addiu $a0, $s1, 0x18 /* 07D3F0 7F048880 8E640004 */ lw $a0, 4($s3) /* 07D3F4 7F048884 00402825 */ move $a1, $v0 /* 07D3F8 7F048888 0FC14AFA */ jal sub_GAME_7F0526EC /* 07D3FC 7F04888C AFA403A0 */ sw $a0, 0x3a0($sp) /* 07D400 7F048890 0FC1E26D */ jal get_BONDdata_field_10CC /* 07D404 7F048894 00000000 */ nop /* 07D408 7F048898 00402025 */ move $a0, $v0 /* 07D40C 7F04889C 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D410 7F0488A0 02402825 */ move $a1, $s2 /* 07D414 7F0488A4 8E820008 */ lw $v0, 8($s4) /* 07D418 7F0488A8 3C0F8004 */ lui $t7, %hi(prop_eyelid_door_related) # $t7, 0x8004 /* 07D41C 7F0488AC 25EFA130 */ addiu $t7, %lo(prop_eyelid_door_related) # addiu $t7, $t7, -0x5ed0 /* 07D420 7F0488B0 8C430004 */ lw $v1, 4($v0) /* 07D424 7F0488B4 3C0B8004 */ lui $t3, %hi(prop_iris_door_related) # $t3, 0x8004 /* 07D428 7F0488B8 8FA603A0 */ lw $a2, 0x3a0($sp) /* 07D42C 7F0488BC 15E30025 */ bne $t7, $v1, .Ljp7F048954 /* 07D430 7F0488C0 256BA18C */ addiu $t3, %lo(prop_iris_door_related) # addiu $t3, $t3, -0x5e74 /* 07D434 7F0488C4 C4CA00B4 */ lwc1 $f10, 0xb4($a2) /* 07D438 7F0488C8 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07D43C 7F0488CC 44812000 */ mtc1 $at, $f4 /* 07D440 7F0488D0 46145202 */ mul.s $f8, $f10, $f20 /* 07D444 7F0488D4 8C4D0008 */ lw $t5, 8($v0) /* 07D448 7F0488D8 26450040 */ addiu $a1, $s2, 0x40 /* 07D44C 7F0488DC 8DB90004 */ lw $t9, 4($t5) /* 07D450 7F0488E0 46044183 */ div.s $f6, $f8, $f4 /* 07D454 7F0488E4 8F300004 */ lw $s0, 4($t9) /* 07D458 7F0488E8 AFA50070 */ sw $a1, 0x70($sp) /* 07D45C 7F0488EC 4606A301 */ sub.s $f12, $f20, $f6 /* 07D460 7F0488F0 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07D464 7F0488F4 E7AC0398 */ swc1 $f12, 0x398($sp) /* 07D468 7F0488F8 02002025 */ move $a0, $s0 /* 07D46C 7F0488FC 0FC163AE */ jal matrix_4x4_set_position /* 07D470 7F048900 8FA50070 */ lw $a1, 0x70($sp) /* 07D474 7F048904 02402025 */ move $a0, $s2 /* 07D478 7F048908 0FC16162 */ jal matrix_4x4_multiply_in_place /* 07D47C 7F04890C 8FA50070 */ lw $a1, 0x70($sp) /* 07D480 7F048910 8E880008 */ lw $t0, 8($s4) /* 07D484 7F048914 C7AA0398 */ lwc1 $f10, 0x398($sp) /* 07D488 7F048918 26450080 */ addiu $a1, $s2, 0x80 /* 07D48C 7F04891C 8D180008 */ lw $t8, 8($t0) /* 07D490 7F048920 460AA301 */ sub.s $f12, $f20, $f10 /* 07D494 7F048924 8F090008 */ lw $t1, 8($t8) /* 07D498 7F048928 8D300004 */ lw $s0, 4($t1) /* 07D49C 7F04892C 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07D4A0 7F048930 AFA5006C */ sw $a1, 0x6c($sp) /* 07D4A4 7F048934 02002025 */ move $a0, $s0 /* 07D4A8 7F048938 0FC163AE */ jal matrix_4x4_set_position /* 07D4AC 7F04893C 8FA5006C */ lw $a1, 0x6c($sp) /* 07D4B0 7F048940 02402025 */ move $a0, $s2 /* 07D4B4 7F048944 0FC16162 */ jal matrix_4x4_multiply_in_place /* 07D4B8 7F048948 8FA5006C */ lw $a1, 0x6c($sp) /* 07D4BC 7F04894C 1000031F */ b .Ljp7F0495CC /* 07D4C0 7F048950 8E8C0008 */ lw $t4, 8($s4) .Ljp7F048954: /* 07D4C4 7F048954 5563031D */ bnel $t3, $v1, .Ljp7F0495CC /* 07D4C8 7F048958 8E8C0008 */ lw $t4, 8($s4) /* 07D4CC 7F04895C C4C200B4 */ lwc1 $f2, 0xb4($a2) /* 07D4D0 7F048960 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07D4D4 7F048964 44812000 */ mtc1 $at, $f4 /* 07D4D8 7F048968 46141202 */ mul.s $f8, $f2, $f20 /* 07D4DC 7F04896C 3C018005 */ lui $at, %hi(D_80052B68) # $at, 0x8005 /* 07D4E0 7F048970 C42A2B98 */ lwc1 $f10, %lo(D_80052B68)($at) /* 07D4E4 7F048974 4600B386 */ mov.s $f14, $f22 /* 07D4E8 7F048978 46044183 */ div.s $f6, $f8, $f4 /* 07D4EC 7F04897C E7A60388 */ swc1 $f6, 0x388($sp) /* 07D4F0 7F048980 C4CC0084 */ lwc1 $f12, 0x84($a2) /* 07D4F4 7F048984 460A6002 */ mul.s $f0, $f12, $f10 /* 07D4F8 7F048988 4602003C */ c.lt.s $f0, $f2 /* 07D4FC 7F04898C 00000000 */ nop /* 07D500 7F048990 4502001F */ bc1fl .Ljp7F048A10 /* 07D504 7F048994 8FAA0680 */ lw $t2, 0x680($sp) /* 07D508 7F048998 46001201 */ sub.s $f8, $f2, $f0 /* 07D50C 7F04899C 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 07D510 7F0489A0 8FAE0680 */ lw $t6, 0x680($sp) /* 07D514 7F0489A4 46006181 */ sub.s $f6, $f12, $f0 /* 07D518 7F0489A8 46086102 */ mul.s $f4, $f12, $f8 /* 07D51C 7F0489AC 46062283 */ div.s $f10, $f4, $f6 /* 07D520 7F0489B0 44812000 */ mtc1 $at, $f4 /* 07D524 7F0489B4 46145202 */ mul.s $f8, $f10, $f20 /* 07D528 7F0489B8 46044383 */ div.s $f14, $f8, $f4 /* 07D52C 7F0489BC 11C00011 */ beqz $t6, .Ljp7F048A04 /* 07D530 7F0489C0 E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D534 7F0489C4 C7A60684 */ lwc1 $f6, 0x684($sp) /* 07D538 7F0489C8 E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D53C 7F0489CC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07D540 7F0489D0 4600303E */ c.le.s $f6, $f0 /* 07D544 7F0489D4 240500CA */ li $a1, 202 /* 07D548 7F0489D8 00003025 */ move $a2, $zero /* 07D54C 7F0489DC 266C0008 */ addiu $t4, $s3, 8 /* 07D550 7F0489E0 45000008 */ bc1f .Ljp7F048A04 /* 07D554 7F0489E4 00000000 */ nop /* 07D558 7F0489E8 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07D55C 7F0489EC AFAC0074 */ sw $t4, 0x74($sp) /* 07D560 7F0489F0 0C002386 */ jal play_sfx_a1 /* 07D564 7F0489F4 E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D568 7F0489F8 00402025 */ move $a0, $v0 /* 07D56C 7F0489FC 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07D570 7F048A00 8FA50074 */ lw $a1, 0x74($sp) .Ljp7F048A04: /* 07D574 7F048A04 10000016 */ b .Ljp7F048A60 /* 07D578 7F048A08 AFA00390 */ sw $zero, 0x390($sp) /* 07D57C 7F048A0C 8FAA0680 */ lw $t2, 0x680($sp) .Ljp7F048A10: /* 07D580 7F048A10 E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D584 7F048A14 51400012 */ beql $t2, $zero, .Ljp7F048A60 /* 07D588 7F048A18 AFA00390 */ sw $zero, 0x390($sp) /* 07D58C 7F048A1C C7AA0684 */ lwc1 $f10, 0x684($sp) /* 07D590 7F048A20 E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D594 7F048A24 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07D598 7F048A28 460A003C */ c.lt.s $f0, $f10 /* 07D59C 7F048A2C 240500CB */ li $a1, 203 /* 07D5A0 7F048A30 00003025 */ move $a2, $zero /* 07D5A4 7F048A34 266F0008 */ addiu $t7, $s3, 8 /* 07D5A8 7F048A38 45020009 */ bc1fl .Ljp7F048A60 /* 07D5AC 7F048A3C AFA00390 */ sw $zero, 0x390($sp) /* 07D5B0 7F048A40 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07D5B4 7F048A44 AFAF0074 */ sw $t7, 0x74($sp) /* 07D5B8 7F048A48 0C002386 */ jal play_sfx_a1 /* 07D5BC 7F048A4C E7AE0384 */ swc1 $f14, 0x384($sp) /* 07D5C0 7F048A50 00402025 */ move $a0, $v0 /* 07D5C4 7F048A54 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07D5C8 7F048A58 8FA50074 */ lw $a1, 0x74($sp) /* 07D5CC 7F048A5C AFA00390 */ sw $zero, 0x390($sp) .Ljp7F048A60: /* 07D5D0 7F048A60 8E8D0008 */ lw $t5, 8($s4) /* 07D5D4 7F048A64 8FA30390 */ lw $v1, 0x390($sp) /* 07D5D8 7F048A68 C7AC0384 */ lwc1 $f12, 0x384($sp) /* 07D5DC 7F048A6C 8DB90008 */ lw $t9, 8($t5) /* 07D5E0 7F048A70 00031040 */ sll $v0, $v1, 1 /* 07D5E4 7F048A74 00024080 */ sll $t0, $v0, 2 /* 07D5E8 7F048A78 0328C021 */ addu $t8, $t9, $t0 /* 07D5EC 7F048A7C 8F090004 */ lw $t1, 4($t8) /* 07D5F0 7F048A80 00027180 */ sll $t6, $v0, 6 /* 07D5F4 7F048A84 024E2821 */ addu $a1, $s2, $t6 /* 07D5F8 7F048A88 8D2B0004 */ lw $t3, 4($t1) /* 07D5FC 7F048A8C AFA20078 */ sw $v0, 0x78($sp) /* 07D600 7F048A90 24A50040 */ addiu $a1, $a1, 0x40 /* 07D604 7F048A94 0FC162EA */ jal matrix_4x4_set_rotation_around_z /* 07D608 7F048A98 AFAB0394 */ sw $t3, 0x394($sp) /* 07D60C 7F048A9C 8FAC0078 */ lw $t4, 0x78($sp) /* 07D610 7F048AA0 8FB00390 */ lw $s0, 0x390($sp) /* 07D614 7F048AA4 8FA40394 */ lw $a0, 0x394($sp) /* 07D618 7F048AA8 000C5180 */ sll $t2, $t4, 6 /* 07D61C 7F048AAC 024A2821 */ addu $a1, $s2, $t2 /* 07D620 7F048AB0 24A50040 */ addiu $a1, $a1, 0x40 /* 07D624 7F048AB4 0FC163AE */ jal matrix_4x4_set_position /* 07D628 7F048AB8 AFA50074 */ sw $a1, 0x74($sp) /* 07D62C 7F048ABC 02402025 */ move $a0, $s2 /* 07D630 7F048AC0 0FC16162 */ jal matrix_4x4_multiply_in_place /* 07D634 7F048AC4 8FA50074 */ lw $a1, 0x74($sp) /* 07D638 7F048AC8 8E8F0008 */ lw $t7, 8($s4) /* 07D63C 7F048ACC 8FA20078 */ lw $v0, 0x78($sp) /* 07D640 7F048AD0 C7AC0388 */ lwc1 $f12, 0x388($sp) /* 07D644 7F048AD4 8DED0008 */ lw $t5, 8($t7) /* 07D648 7F048AD8 24420002 */ addiu $v0, $v0, 2 /* 07D64C 7F048ADC 0002C880 */ sll $t9, $v0, 2 /* 07D650 7F048AE0 01B94021 */ addu $t0, $t5, $t9 /* 07D654 7F048AE4 8D180000 */ lw $t8, ($t0) /* 07D658 7F048AE8 00025980 */ sll $t3, $v0, 6 /* 07D65C 7F048AEC 024B2821 */ addu $a1, $s2, $t3 /* 07D660 7F048AF0 8F090004 */ lw $t1, 4($t8) /* 07D664 7F048AF4 AFA50070 */ sw $a1, 0x70($sp) /* 07D668 7F048AF8 0FC162EA */ jal matrix_4x4_set_rotation_around_z /* 07D66C 7F048AFC AFA90394 */ sw $t1, 0x394($sp) /* 07D670 7F048B00 8FA40394 */ lw $a0, 0x394($sp) /* 07D674 7F048B04 0FC163AE */ jal matrix_4x4_set_position /* 07D678 7F048B08 8FA50070 */ lw $a1, 0x70($sp) /* 07D67C 7F048B0C 8FA40074 */ lw $a0, 0x74($sp) /* 07D680 7F048B10 0FC16162 */ jal matrix_4x4_multiply_in_place /* 07D684 7F048B14 8FA50070 */ lw $a1, 0x70($sp) /* 07D688 7F048B18 26100001 */ addiu $s0, $s0, 1 /* 07D68C 7F048B1C 24010006 */ li $at, 6 /* 07D690 7F048B20 1601FFCF */ bne $s0, $at, .Ljp7F048A60 /* 07D694 7F048B24 AFB00390 */ sw $s0, 0x390($sp) /* 07D698 7F048B28 100002A8 */ b .Ljp7F0495CC /* 07D69C 7F048B2C 8E8C0008 */ lw $t4, 8($s4) .Ljp7F048B30: /* 07D6A0 7F048B30 262E0058 */ addiu $t6, $s1, 0x58 /* 07D6A4 7F048B34 AFAE0074 */ sw $t6, 0x74($sp) /* 07D6A8 7F048B38 0FC16150 */ jal matrix_4x4_copy /* 07D6AC 7F048B3C 27A503A8 */ addiu $a1, $sp, 0x3a8 /* 07D6B0 7F048B40 8FA40074 */ lw $a0, 0x74($sp) /* 07D6B4 7F048B44 0FC163AE */ jal matrix_4x4_set_position /* 07D6B8 7F048B48 27A503A8 */ addiu $a1, $sp, 0x3a8 /* 07D6BC 7F048B4C 0FC1E26D */ jal get_BONDdata_field_10CC /* 07D6C0 7F048B50 00000000 */ nop /* 07D6C4 7F048B54 00402025 */ move $a0, $v0 /* 07D6C8 7F048B58 27A503A8 */ addiu $a1, $sp, 0x3a8 /* 07D6CC 7F048B5C 0FC161AB */ jal matrix_4x4_multiply_homogeneous /* 07D6D0 7F048B60 02403025 */ move $a2, $s2 /* 07D6D4 7F048B64 92220003 */ lbu $v0, 3($s1) /* 07D6D8 7F048B68 24010006 */ li $at, 6 /* 07D6DC 7F048B6C 27A50324 */ addiu $a1, $sp, 0x324 /* 07D6E0 7F048B70 5441002D */ bnel $v0, $at, .Ljp7F048C28 /* 07D6E4 7F048B74 2401000D */ li $at, 13 /* 07D6E8 7F048B78 8E620004 */ lw $v0, 4($s3) /* 07D6EC 7F048B7C 8E8C0008 */ lw $t4, 8($s4) /* 07D6F0 7F048B80 C44C00C8 */ lwc1 $f12, 0xc8($v0) /* 07D6F4 7F048B84 8D8A0008 */ lw $t2, 8($t4) /* 07D6F8 7F048B88 4616603C */ c.lt.s $f12, $f22 /* 07D6FC 7F048B8C 8D4F0000 */ lw $t7, ($t2) /* 07D700 7F048B90 45000003 */ bc1f .Ljp7F048BA0 /* 07D704 7F048B94 8DF00004 */ lw $s0, 4($t7) /* 07D708 7F048B98 10000006 */ b .Ljp7F048BB4 /* 07D70C 7F048B9C 46146300 */ add.s $f12, $f12, $f20 .Ljp7F048BA0: /* 07D710 7F048BA0 460CA03E */ c.le.s $f20, $f12 /* 07D714 7F048BA4 00000000 */ nop /* 07D718 7F048BA8 45000002 */ bc1f .Ljp7F048BB4 /* 07D71C 7F048BAC 00000000 */ nop /* 07D720 7F048BB0 46146301 */ sub.s $f12, $f12, $f20 .Ljp7F048BB4: /* 07D724 7F048BB4 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07D728 7F048BB8 AFA20374 */ sw $v0, 0x374($sp) /* 07D72C 7F048BBC 8FA20374 */ lw $v0, 0x374($sp) /* 07D730 7F048BC0 26460040 */ addiu $a2, $s2, 0x40 /* 07D734 7F048BC4 AFA60070 */ sw $a2, 0x70($sp) /* 07D738 7F048BC8 27A40324 */ addiu $a0, $sp, 0x324 /* 07D73C 7F048BCC 0FC1617A */ jal matrix_4x4_multiply /* 07D740 7F048BD0 24450084 */ addiu $a1, $v0, 0x84 /* 07D744 7F048BD4 C6080000 */ lwc1 $f8, ($s0) /* 07D748 7F048BD8 27B20364 */ addiu $s2, $sp, 0x364 /* 07D74C 7F048BDC 02402825 */ move $a1, $s2 /* 07D750 7F048BE0 E7A80364 */ swc1 $f8, 0x364($sp) /* 07D754 7F048BE4 C6040004 */ lwc1 $f4, 4($s0) /* 07D758 7F048BE8 27A403A8 */ addiu $a0, $sp, 0x3a8 /* 07D75C 7F048BEC E7A40368 */ swc1 $f4, 0x368($sp) /* 07D760 7F048BF0 C6060008 */ lwc1 $f6, 8($s0) /* 07D764 7F048BF4 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 07D768 7F048BF8 E7A6036C */ swc1 $f6, 0x36c($sp) /* 07D76C 7F048BFC 02402025 */ move $a0, $s2 /* 07D770 7F048C00 0FC163AE */ jal matrix_4x4_set_position /* 07D774 7F048C04 8FA50070 */ lw $a1, 0x70($sp) /* 07D778 7F048C08 0FC1E26D */ jal get_BONDdata_field_10CC /* 07D77C 7F048C0C 00000000 */ nop /* 07D780 7F048C10 00402025 */ move $a0, $v0 /* 07D784 7F048C14 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D788 7F048C18 8FA50070 */ lw $a1, 0x70($sp) /* 07D78C 7F048C1C 1000026B */ b .Ljp7F0495CC /* 07D790 7F048C20 8E8C0008 */ lw $t4, 8($s4) /* 07D794 7F048C24 2401000D */ li $at, 13 .Ljp7F048C28: /* 07D798 7F048C28 5441007F */ bnel $v0, $at, .Ljp7F048E28 /* 07D79C 7F048C2C 24010008 */ li $at, 8 /* 07D7A0 7F048C30 8E620004 */ lw $v0, 4($s3) /* 07D7A4 7F048C34 3C018005 */ lui $at, %hi(D_80052B6C) # $at, 0x8005 /* 07D7A8 7F048C38 C4282B9C */ lwc1 $f8, %lo(D_80052B6C)($at) /* 07D7AC 7F048C3C C44A0090 */ lwc1 $f10, 0x90($v0) /* 07D7B0 7F048C40 C444009C */ lwc1 $f4, 0x9c($v0) /* 07D7B4 7F048C44 46085300 */ add.s $f12, $f10, $f8 /* 07D7B8 7F048C48 46002187 */ neg.s $f6, $f4 /* 07D7BC 7F048C4C 460CA03E */ c.le.s $f20, $f12 /* 07D7C0 7F048C50 E7A60304 */ swc1 $f6, 0x304($sp) /* 07D7C4 7F048C54 45020003 */ bc1fl .Ljp7F048C64 /* 07D7C8 7F048C58 8E8D0008 */ lw $t5, 8($s4) /* 07D7CC 7F048C5C 46146301 */ sub.s $f12, $f12, $f20 /* 07D7D0 7F048C60 8E8D0008 */ lw $t5, 8($s4) .Ljp7F048C64: /* 07D7D4 7F048C64 27A403A8 */ addiu $a0, $sp, 0x3a8 /* 07D7D8 7F048C68 27A5030C */ addiu $a1, $sp, 0x30c /* 07D7DC 7F048C6C 8DB90008 */ lw $t9, 8($t5) /* 07D7E0 7F048C70 8F280004 */ lw $t0, 4($t9) /* 07D7E4 7F048C74 8D100004 */ lw $s0, 4($t0) /* 07D7E8 7F048C78 C60A0000 */ lwc1 $f10, ($s0) /* 07D7EC 7F048C7C E7AA030C */ swc1 $f10, 0x30c($sp) /* 07D7F0 7F048C80 C6080004 */ lwc1 $f8, 4($s0) /* 07D7F4 7F048C84 E7A80310 */ swc1 $f8, 0x310($sp) /* 07D7F8 7F048C88 C6040008 */ lwc1 $f4, 8($s0) /* 07D7FC 7F048C8C E7AC0308 */ swc1 $f12, 0x308($sp) /* 07D800 7F048C90 AFA2031C */ sw $v0, 0x31c($sp) /* 07D804 7F048C94 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 07D808 7F048C98 E7A40314 */ swc1 $f4, 0x314($sp) /* 07D80C 7F048C9C 26450040 */ addiu $a1, $s2, 0x40 /* 07D810 7F048CA0 C7AC0308 */ lwc1 $f12, 0x308($sp) /* 07D814 7F048CA4 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07D818 7F048CA8 AFA50070 */ sw $a1, 0x70($sp) /* 07D81C 7F048CAC 27A4030C */ addiu $a0, $sp, 0x30c /* 07D820 7F048CB0 0FC163AE */ jal matrix_4x4_set_position /* 07D824 7F048CB4 8FA50070 */ lw $a1, 0x70($sp) /* 07D828 7F048CB8 8FB8031C */ lw $t8, 0x31c($sp) /* 07D82C 7F048CBC 8FA50070 */ lw $a1, 0x70($sp) /* 07D830 7F048CC0 8F090014 */ lw $t1, 0x14($t8) /* 07D834 7F048CC4 0FC163E7 */ jal matrix_scalar_multiply /* 07D838 7F048CC8 C52C0014 */ lwc1 $f12, 0x14($t1) /* 07D83C 7F048CCC 0FC1E26D */ jal get_BONDdata_field_10CC /* 07D840 7F048CD0 00000000 */ nop /* 07D844 7F048CD4 00402025 */ move $a0, $v0 /* 07D848 7F048CD8 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D84C 7F048CDC 8FA50070 */ lw $a1, 0x70($sp) /* 07D850 7F048CE0 8E8B0008 */ lw $t3, 8($s4) /* 07D854 7F048CE4 26450080 */ addiu $a1, $s2, 0x80 /* 07D858 7F048CE8 C7AC0304 */ lwc1 $f12, 0x304($sp) /* 07D85C 7F048CEC 8D6E0008 */ lw $t6, 8($t3) /* 07D860 7F048CF0 8DCC0008 */ lw $t4, 8($t6) /* 07D864 7F048CF4 8D900004 */ lw $s0, 4($t4) /* 07D868 7F048CF8 0FC162EA */ jal matrix_4x4_set_rotation_around_z /* 07D86C 7F048CFC AFA5006C */ sw $a1, 0x6c($sp) /* 07D870 7F048D00 02002025 */ move $a0, $s0 /* 07D874 7F048D04 0FC163AE */ jal matrix_4x4_set_position /* 07D878 7F048D08 8FA5006C */ lw $a1, 0x6c($sp) /* 07D87C 7F048D0C 8FA40070 */ lw $a0, 0x70($sp) /* 07D880 7F048D10 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D884 7F048D14 8FA5006C */ lw $a1, 0x6c($sp) /* 07D888 7F048D18 8E8A0008 */ lw $t2, 8($s4) /* 07D88C 7F048D1C 02802025 */ move $a0, $s4 /* 07D890 7F048D20 8D430008 */ lw $v1, 8($t2) /* 07D894 7F048D24 8C65000C */ lw $a1, 0xc($v1) /* 07D898 7F048D28 50A00016 */ beql $a1, $zero, .Ljp7F048D84 /* 07D89C 7F048D2C 8C650010 */ lw $a1, 0x10($v1) /* 07D8A0 7F048D30 0FC1B314 */ jal sub_GAME_7F06C660 /* 07D8A4 7F048D34 00003025 */ move $a2, $zero /* 07D8A8 7F048D38 AFA20300 */ sw $v0, 0x300($sp) /* 07D8AC 7F048D3C 8E8F0008 */ lw $t7, 8($s4) /* 07D8B0 7F048D40 8FA8031C */ lw $t0, 0x31c($sp) /* 07D8B4 7F048D44 00402825 */ move $a1, $v0 /* 07D8B8 7F048D48 8DED0008 */ lw $t5, 8($t7) /* 07D8BC 7F048D4C C50C00B4 */ lwc1 $f12, 0xb4($t0) /* 07D8C0 7F048D50 8DB9000C */ lw $t9, 0xc($t5) /* 07D8C4 7F048D54 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07D8C8 7F048D58 8F300004 */ lw $s0, 4($t9) /* 07D8CC 7F048D5C 8FB20300 */ lw $s2, 0x300($sp) /* 07D8D0 7F048D60 02002025 */ move $a0, $s0 /* 07D8D4 7F048D64 0FC163AE */ jal matrix_4x4_set_position /* 07D8D8 7F048D68 02402825 */ move $a1, $s2 /* 07D8DC 7F048D6C 8FA4006C */ lw $a0, 0x6c($sp) /* 07D8E0 7F048D70 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D8E4 7F048D74 02402825 */ move $a1, $s2 /* 07D8E8 7F048D78 8E980008 */ lw $t8, 8($s4) /* 07D8EC 7F048D7C 8F030008 */ lw $v1, 8($t8) /* 07D8F0 7F048D80 8C650010 */ lw $a1, 0x10($v1) .Ljp7F048D84: /* 07D8F4 7F048D84 02802025 */ move $a0, $s4 /* 07D8F8 7F048D88 50A00010 */ beql $a1, $zero, .Ljp7F048DCC /* 07D8FC 7F048D8C 8C650018 */ lw $a1, 0x18($v1) /* 07D900 7F048D90 0FC1B314 */ jal sub_GAME_7F06C660 /* 07D904 7F048D94 00003025 */ move $a2, $zero /* 07D908 7F048D98 8E890008 */ lw $t1, 8($s4) /* 07D90C 7F048D9C 00409025 */ move $s2, $v0 /* 07D910 7F048DA0 00402825 */ move $a1, $v0 /* 07D914 7F048DA4 8D2B0008 */ lw $t3, 8($t1) /* 07D918 7F048DA8 8D6E0010 */ lw $t6, 0x10($t3) /* 07D91C 7F048DAC 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07D920 7F048DB0 8DC40004 */ lw $a0, 4($t6) /* 07D924 7F048DB4 8FA4006C */ lw $a0, 0x6c($sp) /* 07D928 7F048DB8 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D92C 7F048DBC 02402825 */ move $a1, $s2 /* 07D930 7F048DC0 8E8C0008 */ lw $t4, 8($s4) /* 07D934 7F048DC4 8D830008 */ lw $v1, 8($t4) /* 07D938 7F048DC8 8C650018 */ lw $a1, 0x18($v1) .Ljp7F048DCC: /* 07D93C 7F048DCC 02802025 */ move $a0, $s4 /* 07D940 7F048DD0 50A001FE */ beql $a1, $zero, .Ljp7F0495CC /* 07D944 7F048DD4 8E8C0008 */ lw $t4, 8($s4) /* 07D948 7F048DD8 0FC1B314 */ jal sub_GAME_7F06C660 /* 07D94C 7F048DDC 00003025 */ move $a2, $zero /* 07D950 7F048DE0 8E8A0008 */ lw $t2, 8($s4) /* 07D954 7F048DE4 8FB9031C */ lw $t9, 0x31c($sp) /* 07D958 7F048DE8 00409025 */ move $s2, $v0 /* 07D95C 7F048DEC 8D4F0008 */ lw $t7, 8($t2) /* 07D960 7F048DF0 00402825 */ move $a1, $v0 /* 07D964 7F048DF4 C72C00B4 */ lwc1 $f12, 0xb4($t9) /* 07D968 7F048DF8 8DED0018 */ lw $t5, 0x18($t7) /* 07D96C 7F048DFC 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07D970 7F048E00 8DB00004 */ lw $s0, 4($t5) /* 07D974 7F048E04 02002025 */ move $a0, $s0 /* 07D978 7F048E08 0FC163AE */ jal matrix_4x4_set_position /* 07D97C 7F048E0C 02402825 */ move $a1, $s2 /* 07D980 7F048E10 8FA4006C */ lw $a0, 0x6c($sp) /* 07D984 7F048E14 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07D988 7F048E18 02402825 */ move $a1, $s2 /* 07D98C 7F048E1C 100001EB */ b .Ljp7F0495CC /* 07D990 7F048E20 8E8C0008 */ lw $t4, 8($s4) /* 07D994 7F048E24 24010008 */ li $at, 8 .Ljp7F048E28: /* 07D998 7F048E28 54410017 */ bnel $v0, $at, .Ljp7F048E88 /* 07D99C 7F048E2C 2401000C */ li $at, 12 /* 07D9A0 7F048E30 8E880008 */ lw $t0, 8($s4) /* 07D9A4 7F048E34 24020001 */ li $v0, 1 /* 07D9A8 7F048E38 26440040 */ addiu $a0, $s2, 0x40 /* 07D9AC 7F048E3C 8518000E */ lh $t8, 0xe($t0) /* 07D9B0 7F048E40 2B010002 */ slti $at, $t8, 2 /* 07D9B4 7F048E44 542001E1 */ bnezl $at, .Ljp7F0495CC /* 07D9B8 7F048E48 8E8C0008 */ lw $t4, 8($s4) /* 07D9BC 7F048E4C AFA202FC */ sw $v0, 0x2fc($sp) .Ljp7F048E50: /* 07D9C0 7F048E50 0FC1613C */ jal matrix_4x4_set_identity /* 07D9C4 7F048E54 AFA40078 */ sw $a0, 0x78($sp) /* 07D9C8 7F048E58 8E890008 */ lw $t1, 8($s4) /* 07D9CC 7F048E5C 8FA202FC */ lw $v0, 0x2fc($sp) /* 07D9D0 7F048E60 8FA40078 */ lw $a0, 0x78($sp) /* 07D9D4 7F048E64 852B000E */ lh $t3, 0xe($t1) /* 07D9D8 7F048E68 24420001 */ addiu $v0, $v0, 1 /* 07D9DC 7F048E6C 24840040 */ addiu $a0, $a0, 0x40 /* 07D9E0 7F048E70 004B082A */ slt $at, $v0, $t3 /* 07D9E4 7F048E74 5420FFF6 */ bnezl $at, .Ljp7F048E50 /* 07D9E8 7F048E78 AFA202FC */ sw $v0, 0x2fc($sp) /* 07D9EC 7F048E7C 100001D3 */ b .Ljp7F0495CC /* 07D9F0 7F048E80 8E8C0008 */ lw $t4, 8($s4) /* 07D9F4 7F048E84 2401000C */ li $at, 12 .Ljp7F048E88: /* 07D9F8 7F048E88 5441002C */ bnel $v0, $at, .Ljp7F048F3C /* 07D9FC 7F048E8C 24010027 */ li $at, 39 /* 07DA00 7F048E90 8E8E0008 */ lw $t6, 8($s4) /* 07DA04 7F048E94 26450040 */ addiu $a1, $s2, 0x40 /* 07DA08 7F048E98 8DCC0008 */ lw $t4, 8($t6) /* 07DA0C 7F048E9C 8D8A0000 */ lw $t2, ($t4) /* 07DA10 7F048EA0 8D440004 */ lw $a0, 4($t2) /* 07DA14 7F048EA4 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07DA18 7F048EA8 AFA50070 */ sw $a1, 0x70($sp) /* 07DA1C 7F048EAC 02402025 */ move $a0, $s2 /* 07DA20 7F048EB0 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DA24 7F048EB4 8FA50070 */ lw $a1, 0x70($sp) /* 07DA28 7F048EB8 8E8F0008 */ lw $t7, 8($s4) /* 07DA2C 7F048EBC 26450080 */ addiu $a1, $s2, 0x80 /* 07DA30 7F048EC0 8DED0008 */ lw $t5, 8($t7) /* 07DA34 7F048EC4 8DB90004 */ lw $t9, 4($t5) /* 07DA38 7F048EC8 8F240004 */ lw $a0, 4($t9) /* 07DA3C 7F048ECC 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07DA40 7F048ED0 AFA5006C */ sw $a1, 0x6c($sp) /* 07DA44 7F048ED4 02402025 */ move $a0, $s2 /* 07DA48 7F048ED8 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DA4C 7F048EDC 8FA5006C */ lw $a1, 0x6c($sp) /* 07DA50 7F048EE0 8E880008 */ lw $t0, 8($s4) /* 07DA54 7F048EE4 264500C0 */ addiu $a1, $s2, 0xc0 /* 07DA58 7F048EE8 8D180008 */ lw $t8, 8($t0) /* 07DA5C 7F048EEC 8F090008 */ lw $t1, 8($t8) /* 07DA60 7F048EF0 8D240004 */ lw $a0, 4($t1) /* 07DA64 7F048EF4 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07DA68 7F048EF8 AFA50078 */ sw $a1, 0x78($sp) /* 07DA6C 7F048EFC 02402025 */ move $a0, $s2 /* 07DA70 7F048F00 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DA74 7F048F04 8FA50078 */ lw $a1, 0x78($sp) /* 07DA78 7F048F08 8E8B0008 */ lw $t3, 8($s4) /* 07DA7C 7F048F0C 26500100 */ addiu $s0, $s2, 0x100 /* 07DA80 7F048F10 02002825 */ move $a1, $s0 /* 07DA84 7F048F14 8D6E0008 */ lw $t6, 8($t3) /* 07DA88 7F048F18 8DCC000C */ lw $t4, 0xc($t6) /* 07DA8C 7F048F1C 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07DA90 7F048F20 8D840004 */ lw $a0, 4($t4) /* 07DA94 7F048F24 02402025 */ move $a0, $s2 /* 07DA98 7F048F28 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DA9C 7F048F2C 02002825 */ move $a1, $s0 /* 07DAA0 7F048F30 100001A6 */ b .Ljp7F0495CC /* 07DAA4 7F048F34 8E8C0008 */ lw $t4, 8($s4) /* 07DAA8 7F048F38 24010027 */ li $at, 39 .Ljp7F048F3C: /* 07DAAC 7F048F3C 544100B9 */ bnel $v0, $at, .Ljp7F049224 /* 07DAB0 7F048F40 24010028 */ li $at, 40 /* 07DAB4 7F048F44 8E8A0008 */ lw $t2, 8($s4) /* 07DAB8 7F048F48 8FAC0680 */ lw $t4, 0x680($sp) /* 07DABC 7F048F4C 4600B006 */ mov.s $f0, $f22 /* 07DAC0 7F048F50 8D430008 */ lw $v1, 8($t2) /* 07DAC4 7F048F54 8C6F0004 */ lw $t7, 4($v1) /* 07DAC8 7F048F58 8DED0004 */ lw $t5, 4($t7) /* 07DACC 7F048F5C AFAD0264 */ sw $t5, 0x264($sp) /* 07DAD0 7F048F60 8C790008 */ lw $t9, 8($v1) /* 07DAD4 7F048F64 8F280004 */ lw $t0, 4($t9) /* 07DAD8 7F048F68 AFA80260 */ sw $t0, 0x260($sp) /* 07DADC 7F048F6C 8C690010 */ lw $t1, 0x10($v1) /* 07DAE0 7F048F70 8C78000C */ lw $t8, 0xc($v1) /* 07DAE4 7F048F74 8D2B0004 */ lw $t3, 4($t1) /* 07DAE8 7F048F78 8F100004 */ lw $s0, 4($t8) /* 07DAEC 7F048F7C AFAB0258 */ sw $t3, 0x258($sp) /* 07DAF0 7F048F80 8C6E0018 */ lw $t6, 0x18($v1) /* 07DAF4 7F048F84 C6840014 */ lwc1 $f4, 0x14($s4) /* 07DAF8 7F048F88 8DC20004 */ lw $v0, 4($t6) /* 07DAFC 7F048F8C C4460010 */ lwc1 $f6, 0x10($v0) /* 07DB00 7F048F90 C44A000C */ lwc1 $f10, 0xc($v0) /* 07DB04 7F048F94 460A3201 */ sub.s $f8, $f6, $f10 /* 07DB08 7F048F98 46044082 */ mul.s $f2, $f8, $f4 /* 07DB0C 7F048F9C 11800026 */ beqz $t4, .Ljp7F049038 /* 07DB10 7F048FA0 3C018005 */ lui $at, %hi(global_timer_delta) # $at, 0x8005 /* 07DB14 7F048FA4 C42A83B4 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07DB18 7F048FA8 C6260088 */ lwc1 $f6, 0x88($s1) /* 07DB1C 7F048FAC 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07DB20 7F048FB0 460A3202 */ mul.s $f8, $f6, $f10 /* 07DB24 7F048FB4 44815000 */ mtc1 $at, $f10 /* 07DB28 7F048FB8 46144102 */ mul.s $f4, $f8, $f20 /* 07DB2C 7F048FBC 00000000 */ nop /* 07DB30 7F048FC0 46141182 */ mul.s $f6, $f2, $f20 /* 07DB34 7F048FC4 00000000 */ nop /* 07DB38 7F048FC8 460A3202 */ mul.s $f8, $f6, $f10 /* 07DB3C 7F048FCC C626008C */ lwc1 $f6, 0x8c($s1) /* 07DB40 7F048FD0 46082003 */ div.s $f0, $f4, $f8 /* 07DB44 7F048FD4 46003280 */ add.s $f10, $f6, $f0 /* 07DB48 7F048FD8 E62A008C */ swc1 $f10, 0x8c($s1) /* 07DB4C 7F048FDC C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DB50 7F048FE0 460CA03E */ c.le.s $f20, $f12 /* 07DB54 7F048FE4 00000000 */ nop /* 07DB58 7F048FE8 45000008 */ bc1f .Ljp7F04900C /* 07DB5C 7F048FEC 00000000 */ nop /* 07DB60 7F048FF0 46146101 */ sub.s $f4, $f12, $f20 .Ljp7F048FF4: /* 07DB64 7F048FF4 E624008C */ swc1 $f4, 0x8c($s1) /* 07DB68 7F048FF8 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DB6C 7F048FFC 460CA03E */ c.le.s $f20, $f12 /* 07DB70 7F049000 00000000 */ nop /* 07DB74 7F049004 4503FFFB */ bc1tl .Ljp7F048FF4 /* 07DB78 7F049008 46146101 */ sub.s $f4, $f12, $f20 .Ljp7F04900C: /* 07DB7C 7F04900C 4616603C */ c.lt.s $f12, $f22 /* 07DB80 7F049010 00000000 */ nop /* 07DB84 7F049014 45020009 */ bc1fl .Ljp7F04903C /* 07DB88 7F049018 C626008C */ lwc1 $f6, 0x8c($s1) /* 07DB8C 7F04901C 46146200 */ add.s $f8, $f12, $f20 .Ljp7F049020: /* 07DB90 7F049020 E628008C */ swc1 $f8, 0x8c($s1) /* 07DB94 7F049024 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DB98 7F049028 4616603C */ c.lt.s $f12, $f22 /* 07DB9C 7F04902C 00000000 */ nop /* 07DBA0 7F049030 4503FFFB */ bc1tl .Ljp7F049020 /* 07DBA4 7F049034 46146200 */ add.s $f8, $f12, $f20 .Ljp7F049038: /* 07DBA8 7F049038 C626008C */ lwc1 $f6, 0x8c($s1) .Ljp7F04903C: /* 07DBAC 7F04903C 46003280 */ add.s $f10, $f6, $f0 /* 07DBB0 7F049040 E62A008C */ swc1 $f10, 0x8c($s1) /* 07DBB4 7F049044 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DBB8 7F049048 460CA03E */ c.le.s $f20, $f12 /* 07DBBC 7F04904C 00000000 */ nop /* 07DBC0 7F049050 45020009 */ bc1fl .Ljp7F049078 /* 07DBC4 7F049054 4616603C */ c.lt.s $f12, $f22 /* 07DBC8 7F049058 46146101 */ sub.s $f4, $f12, $f20 .Ljp7F04905C: /* 07DBCC 7F04905C E624008C */ swc1 $f4, 0x8c($s1) /* 07DBD0 7F049060 C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DBD4 7F049064 460CA03E */ c.le.s $f20, $f12 /* 07DBD8 7F049068 00000000 */ nop /* 07DBDC 7F04906C 4503FFFB */ bc1tl .Ljp7F04905C /* 07DBE0 7F049070 46146101 */ sub.s $f4, $f12, $f20 /* 07DBE4 7F049074 4616603C */ c.lt.s $f12, $f22 .Ljp7F049078: /* 07DBE8 7F049078 00000000 */ nop /* 07DBEC 7F04907C 45000008 */ bc1f .Ljp7F0490A0 /* 07DBF0 7F049080 00000000 */ nop /* 07DBF4 7F049084 46146200 */ add.s $f8, $f12, $f20 .Ljp7F049088: /* 07DBF8 7F049088 E628008C */ swc1 $f8, 0x8c($s1) /* 07DBFC 7F04908C C62C008C */ lwc1 $f12, 0x8c($s1) /* 07DC00 7F049090 4616603C */ c.lt.s $f12, $f22 /* 07DC04 7F049094 00000000 */ nop /* 07DC08 7F049098 4503FFFB */ bc1tl .Ljp7F049088 /* 07DC0C 7F04909C 46146200 */ add.s $f8, $f12, $f20 .Ljp7F0490A0: /* 07DC10 7F0490A0 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07DC14 7F0490A4 27A502B0 */ addiu $a1, $sp, 0x2b0 /* 07DC18 7F0490A8 C6260088 */ lwc1 $f6, 0x88($s1) /* 07DC1C 7F0490AC 4606B03C */ c.lt.s $f22, $f6 /* 07DC20 7F0490B0 00000000 */ nop /* 07DC24 7F0490B4 4502002B */ bc1fl .Ljp7F049164 /* 07DC28 7F0490B8 C62C0090 */ lwc1 $f12, 0x90($s1) /* 07DC2C 7F0490BC 8FAA0264 */ lw $t2, 0x264($sp) /* 07DC30 7F0490C0 C60A0008 */ lwc1 $f10, 8($s0) /* 07DC34 7F0490C4 C62C009C */ lwc1 $f12, 0x9c($s1) /* 07DC38 7F0490C8 C5440008 */ lwc1 $f4, 8($t2) /* 07DC3C 7F0490CC C6860014 */ lwc1 $f6, 0x14($s4) /* 07DC40 7F0490D0 4616603C */ c.lt.s $f12, $f22 /* 07DC44 7F0490D4 46045201 */ sub.s $f8, $f10, $f4 /* 07DC48 7F0490D8 46064082 */ mul.s $f2, $f8, $f6 /* 07DC4C 7F0490DC 45020003 */ bc1fl .Ljp7F0490EC /* 07DC50 7F0490E0 E7A20254 */ swc1 $f2, 0x254($sp) /* 07DC54 7F0490E4 46006307 */ neg.s $f12, $f12 /* 07DC58 7F0490E8 E7A20254 */ swc1 $f2, 0x254($sp) .Ljp7F0490EC: /* 07DC5C 7F0490EC 0FC160F3 */ jal sinf /* 07DC60 7F0490F0 E7AC0250 */ swc1 $f12, 0x250($sp) /* 07DC64 7F0490F4 C7A20254 */ lwc1 $f2, 0x254($sp) /* 07DC68 7F0490F8 C7AC0250 */ lwc1 $f12, 0x250($sp) /* 07DC6C 7F0490FC 46020282 */ mul.s $f10, $f0, $f2 /* 07DC70 7F049100 0FC160F0 */ jal cosf /* 07DC74 7F049104 E7AA024C */ swc1 $f10, 0x24c($sp) /* 07DC78 7F049108 C7A20254 */ lwc1 $f2, 0x254($sp) /* 07DC7C 7F04910C C6280088 */ lwc1 $f8, 0x88($s1) /* 07DC80 7F049110 C7AC024C */ lwc1 $f12, 0x24c($sp) /* 07DC84 7F049114 46020102 */ mul.s $f4, $f0, $f2 /* 07DC88 7F049118 46081181 */ sub.s $f6, $f2, $f8 /* 07DC8C 7F04911C 0FC16BD4 */ jal atan2f /* 07DC90 7F049120 46062381 */ sub.s $f14, $f4, $f6 /* 07DC94 7F049124 C7A20250 */ lwc1 $f2, 0x250($sp) /* 07DC98 7F049128 E6200090 */ swc1 $f0, 0x90($s1) /* 07DC9C 7F04912C 4602003C */ c.lt.s $f0, $f2 /* 07DCA0 7F049130 00000000 */ nop /* 07DCA4 7F049134 45020003 */ bc1fl .Ljp7F049144 /* 07DCA8 7F049138 C62A009C */ lwc1 $f10, 0x9c($s1) /* 07DCAC 7F04913C E6220090 */ swc1 $f2, 0x90($s1) /* 07DCB0 7F049140 C62A009C */ lwc1 $f10, 0x9c($s1) .Ljp7F049144: /* 07DCB4 7F049144 460AB03C */ c.lt.s $f22, $f10 /* 07DCB8 7F049148 00000000 */ nop /* 07DCBC 7F04914C 45020005 */ bc1fl .Ljp7F049164 /* 07DCC0 7F049150 C62C0090 */ lwc1 $f12, 0x90($s1) /* 07DCC4 7F049154 C6280090 */ lwc1 $f8, 0x90($s1) /* 07DCC8 7F049158 4608A101 */ sub.s $f4, $f20, $f8 /* 07DCCC 7F04915C E6240090 */ swc1 $f4, 0x90($s1) /* 07DCD0 7F049160 C62C0090 */ lwc1 $f12, 0x90($s1) .Ljp7F049164: /* 07DCD4 7F049164 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07DCD8 7F049168 27A50270 */ addiu $a1, $sp, 0x270 /* 07DCDC 7F04916C 264500C0 */ addiu $a1, $s2, 0xc0 /* 07DCE0 7F049170 AFA50078 */ sw $a1, 0x78($sp) /* 07DCE4 7F049174 0FC16150 */ jal matrix_4x4_copy /* 07DCE8 7F049178 27A402B0 */ addiu $a0, $sp, 0x2b0 /* 07DCEC 7F04917C 02002025 */ move $a0, $s0 /* 07DCF0 7F049180 0FC163AE */ jal matrix_4x4_set_position /* 07DCF4 7F049184 8FA50078 */ lw $a1, 0x78($sp) /* 07DCF8 7F049188 02402025 */ move $a0, $s2 /* 07DCFC 7F04918C 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DD00 7F049190 8FA50078 */ lw $a1, 0x78($sp) /* 07DD04 7F049194 26500100 */ addiu $s0, $s2, 0x100 /* 07DD08 7F049198 02002825 */ move $a1, $s0 /* 07DD0C 7F04919C 0FC16150 */ jal matrix_4x4_copy /* 07DD10 7F0491A0 27A402B0 */ addiu $a0, $sp, 0x2b0 /* 07DD14 7F0491A4 8FA40258 */ lw $a0, 0x258($sp) /* 07DD18 7F0491A8 0FC163AE */ jal matrix_4x4_set_position /* 07DD1C 7F0491AC 02002825 */ move $a1, $s0 /* 07DD20 7F0491B0 02402025 */ move $a0, $s2 /* 07DD24 7F0491B4 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DD28 7F0491B8 02002825 */ move $a1, $s0 /* 07DD2C 7F0491BC 27A40270 */ addiu $a0, $sp, 0x270 /* 07DD30 7F0491C0 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DD34 7F0491C4 27A502B0 */ addiu $a1, $sp, 0x2b0 /* 07DD38 7F0491C8 26450040 */ addiu $a1, $s2, 0x40 /* 07DD3C 7F0491CC AFA50070 */ sw $a1, 0x70($sp) /* 07DD40 7F0491D0 0FC16150 */ jal matrix_4x4_copy /* 07DD44 7F0491D4 27A402B0 */ addiu $a0, $sp, 0x2b0 /* 07DD48 7F0491D8 8FA40264 */ lw $a0, 0x264($sp) /* 07DD4C 7F0491DC 0FC163AE */ jal matrix_4x4_set_position /* 07DD50 7F0491E0 8FA50070 */ lw $a1, 0x70($sp) /* 07DD54 7F0491E4 02402025 */ move $a0, $s2 /* 07DD58 7F0491E8 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DD5C 7F0491EC 8FA50070 */ lw $a1, 0x70($sp) /* 07DD60 7F0491F0 26450080 */ addiu $a1, $s2, 0x80 /* 07DD64 7F0491F4 AFA5006C */ sw $a1, 0x6c($sp) /* 07DD68 7F0491F8 0FC16150 */ jal matrix_4x4_copy /* 07DD6C 7F0491FC 27A402B0 */ addiu $a0, $sp, 0x2b0 /* 07DD70 7F049200 8FA40260 */ lw $a0, 0x260($sp) /* 07DD74 7F049204 0FC163AE */ jal matrix_4x4_set_position /* 07DD78 7F049208 8FA5006C */ lw $a1, 0x6c($sp) /* 07DD7C 7F04920C 02402025 */ move $a0, $s2 /* 07DD80 7F049210 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DD84 7F049214 8FA5006C */ lw $a1, 0x6c($sp) /* 07DD88 7F049218 100000EC */ b .Ljp7F0495CC /* 07DD8C 7F04921C 8E8C0008 */ lw $t4, 8($s4) /* 07DD90 7F049220 24010028 */ li $at, 40 .Ljp7F049224: /* 07DD94 7F049224 14410086 */ bne $v0, $at, .Ljp7F049440 /* 07DD98 7F049228 00000000 */ nop /* 07DD9C 7F04922C 8E8F0008 */ lw $t7, 8($s4) /* 07DDA0 7F049230 3C188005 */ lui $t8, %hi(clock_timer) # $t8, 0x8005 /* 07DDA4 7F049234 8F1883A4 */ lw $t8, %lo(clock_timer)($t8) /* 07DDA8 7F049238 8DED0008 */ lw $t5, 8($t7) /* 07DDAC 7F04923C 8FA90680 */ lw $t1, 0x680($sp) /* 07DDB0 7F049240 27B001B4 */ addiu $s0, $sp, 0x1b4 /* 07DDB4 7F049244 8DB90008 */ lw $t9, 8($t5) /* 07DDB8 7F049248 3C0C8003 */ lui $t4, %hi(D_80030B34) # $t4, 0x8003 /* 07DDBC 7F04924C 02402025 */ move $a0, $s2 /* 07DDC0 7F049250 8F280004 */ lw $t0, 4($t9) /* 07DDC4 7F049254 26450040 */ addiu $a1, $s2, 0x40 /* 07DDC8 7F049258 1B00001E */ blez $t8, .Ljp7F0492D4 /* 07DDCC 7F04925C AFA80200 */ sw $t0, 0x200($sp) /* 07DDD0 7F049260 5120001D */ beql $t1, $zero, .Ljp7F0492D8 /* 07DDD4 7F049264 8E2B0014 */ lw $t3, 0x14($s1) /* 07DDD8 7F049268 C6260088 */ lwc1 $f6, 0x88($s1) /* 07DDDC 7F04926C C62A008C */ lwc1 $f10, 0x8c($s1) /* 07DDE0 7F049270 460A3200 */ add.s $f8, $f6, $f10 /* 07DDE4 7F049274 E6280088 */ swc1 $f8, 0x88($s1) /* 07DDE8 7F049278 C6200088 */ lwc1 $f0, 0x88($s1) /* 07DDEC 7F04927C 4600A03E */ c.le.s $f20, $f0 /* 07DDF0 7F049280 00000000 */ nop /* 07DDF4 7F049284 45020009 */ bc1fl .Ljp7F0492AC /* 07DDF8 7F049288 4616003C */ c.lt.s $f0, $f22 /* 07DDFC 7F04928C 46140101 */ sub.s $f4, $f0, $f20 .Ljp7F049290: /* 07DE00 7F049290 E6240088 */ swc1 $f4, 0x88($s1) /* 07DE04 7F049294 C6200088 */ lwc1 $f0, 0x88($s1) /* 07DE08 7F049298 4600A03E */ c.le.s $f20, $f0 /* 07DE0C 7F04929C 00000000 */ nop /* 07DE10 7F0492A0 4503FFFB */ bc1tl .Ljp7F049290 /* 07DE14 7F0492A4 46140101 */ sub.s $f4, $f0, $f20 /* 07DE18 7F0492A8 4616003C */ c.lt.s $f0, $f22 .Ljp7F0492AC: /* 07DE1C 7F0492AC 00000000 */ nop /* 07DE20 7F0492B0 45020009 */ bc1fl .Ljp7F0492D8 /* 07DE24 7F0492B4 8E2B0014 */ lw $t3, 0x14($s1) /* 07DE28 7F0492B8 46140180 */ add.s $f6, $f0, $f20 .Ljp7F0492BC: /* 07DE2C 7F0492BC E6260088 */ swc1 $f6, 0x88($s1) /* 07DE30 7F0492C0 C6200088 */ lwc1 $f0, 0x88($s1) /* 07DE34 7F0492C4 4616003C */ c.lt.s $f0, $f22 /* 07DE38 7F0492C8 00000000 */ nop /* 07DE3C 7F0492CC 4503FFFB */ bc1tl .Ljp7F0492BC /* 07DE40 7F0492D0 46140180 */ add.s $f6, $f0, $f20 .Ljp7F0492D4: /* 07DE44 7F0492D4 8E2B0014 */ lw $t3, 0x14($s1) .Ljp7F0492D8: /* 07DE48 7F0492D8 258C0B74 */ addiu $t4, %lo(D_80030B34) # addiu $t4, $t4, 0xb74 /* 07DE4C 7F0492DC 258F003C */ addiu $t7, $t4, 0x3c /* 07DE50 7F0492E0 8D6E0020 */ lw $t6, 0x20($t3) /* 07DE54 7F0492E4 02006825 */ move $t5, $s0 /* 07DE58 7F0492E8 11C00015 */ beqz $t6, .Ljp7F049340 /* 07DE5C 7F0492EC 00000000 */ nop .Ljp7F0492F0: /* 07DE60 7F0492F0 8D810000 */ lw $at, ($t4) /* 07DE64 7F0492F4 258C000C */ addiu $t4, $t4, 0xc /* 07DE68 7F0492F8 25AD000C */ addiu $t5, $t5, 0xc /* 07DE6C 7F0492FC ADA1FFF4 */ sw $at, -0xc($t5) /* 07DE70 7F049300 8D81FFF8 */ lw $at, -8($t4) /* 07DE74 7F049304 ADA1FFF8 */ sw $at, -8($t5) /* 07DE78 7F049308 8D81FFFC */ lw $at, -4($t4) /* 07DE7C 7F04930C 158FFFF8 */ bne $t4, $t7, .Ljp7F0492F0 /* 07DE80 7F049310 ADA1FFFC */ sw $at, -4($t5) /* 07DE84 7F049314 8D810000 */ lw $at, ($t4) /* 07DE88 7F049318 0FC1E26D */ jal get_BONDdata_field_10CC /* 07DE8C 7F04931C ADA10000 */ sw $at, ($t5) /* 07DE90 7F049320 AFA201B4 */ sw $v0, 0x1b4($sp) /* 07DE94 7F049324 AFB201C4 */ sw $s2, 0x1c4($sp) /* 07DE98 7F049328 8E250014 */ lw $a1, 0x14($s1) /* 07DE9C 7F04932C 0FC1BE3A */ jal subcalcmatrices /* 07DEA0 7F049330 02002025 */ move $a0, $s0 /* 07DEA4 7F049334 26590040 */ addiu $t9, $s2, 0x40 /* 07DEA8 7F049338 10000003 */ b .Ljp7F049348 /* 07DEAC 7F04933C AFB90070 */ sw $t9, 0x70($sp) .Ljp7F049340: /* 07DEB0 7F049340 0FC16150 */ jal matrix_4x4_copy /* 07DEB4 7F049344 AFA50070 */ sw $a1, 0x70($sp) .Ljp7F049348: /* 07DEB8 7F049348 8E280008 */ lw $t0, 8($s1) /* 07DEBC 7F04934C 27A50204 */ addiu $a1, $sp, 0x204 /* 07DEC0 7F049350 0008C080 */ sll $t8, $t0, 2 /* 07DEC4 7F049354 07010006 */ bgez $t8, .Ljp7F049370 /* 07DEC8 7F049358 00000000 */ nop /* 07DECC 7F04935C C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DED0 7F049360 0FC162EA */ jal matrix_4x4_set_rotation_around_z /* 07DED4 7F049364 27A50204 */ addiu $a1, $sp, 0x204 /* 07DED8 7F049368 10000004 */ b .Ljp7F04937C /* 07DEDC 7F04936C 26450080 */ addiu $a1, $s2, 0x80 .Ljp7F049370: /* 07DEE0 7F049370 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07DEE4 7F049374 C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DEE8 7F049378 26450080 */ addiu $a1, $s2, 0x80 .Ljp7F04937C: /* 07DEEC 7F04937C AFA5006C */ sw $a1, 0x6c($sp) /* 07DEF0 7F049380 0FC16150 */ jal matrix_4x4_copy /* 07DEF4 7F049384 27A40204 */ addiu $a0, $sp, 0x204 /* 07DEF8 7F049388 8FA40200 */ lw $a0, 0x200($sp) /* 07DEFC 7F04938C 0FC163AE */ jal matrix_4x4_set_position /* 07DF00 7F049390 8FA5006C */ lw $a1, 0x6c($sp) /* 07DF04 7F049394 8FA40070 */ lw $a0, 0x70($sp) /* 07DF08 7F049398 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DF0C 7F04939C 8FA5006C */ lw $a1, 0x6c($sp) /* 07DF10 7F0493A0 8E890008 */ lw $t1, 8($s4) /* 07DF14 7F0493A4 02802025 */ move $a0, $s4 /* 07DF18 7F0493A8 00003025 */ move $a2, $zero /* 07DF1C 7F0493AC 8D230008 */ lw $v1, 8($t1) /* 07DF20 7F0493B0 8C65000C */ lw $a1, 0xc($v1) /* 07DF24 7F0493B4 50A00013 */ beql $a1, $zero, .Ljp7F049404 /* 07DF28 7F0493B8 8C650010 */ lw $a1, 0x10($v1) /* 07DF2C 7F0493BC 0FC1B314 */ jal sub_GAME_7F06C660 /* 07DF30 7F0493C0 8CB20004 */ lw $s2, 4($a1) /* 07DF34 7F0493C4 00408025 */ move $s0, $v0 /* 07DF38 7F0493C8 C62C0088 */ lwc1 $f12, 0x88($s1) /* 07DF3C 7F0493CC 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07DF40 7F0493D0 27A50204 */ addiu $a1, $sp, 0x204 /* 07DF44 7F0493D4 27A40204 */ addiu $a0, $sp, 0x204 /* 07DF48 7F0493D8 0FC16150 */ jal matrix_4x4_copy /* 07DF4C 7F0493DC 02002825 */ move $a1, $s0 /* 07DF50 7F0493E0 02402025 */ move $a0, $s2 /* 07DF54 7F0493E4 0FC163AE */ jal matrix_4x4_set_position /* 07DF58 7F0493E8 02002825 */ move $a1, $s0 /* 07DF5C 7F0493EC 8FA40070 */ lw $a0, 0x70($sp) /* 07DF60 7F0493F0 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DF64 7F0493F4 02002825 */ move $a1, $s0 /* 07DF68 7F0493F8 8E8B0008 */ lw $t3, 8($s4) /* 07DF6C 7F0493FC 8D630008 */ lw $v1, 8($t3) /* 07DF70 7F049400 8C650010 */ lw $a1, 0x10($v1) .Ljp7F049404: /* 07DF74 7F049404 02802025 */ move $a0, $s4 /* 07DF78 7F049408 00003025 */ move $a2, $zero /* 07DF7C 7F04940C 50A0006F */ beql $a1, $zero, .Ljp7F0495CC /* 07DF80 7F049410 8E8C0008 */ lw $t4, 8($s4) /* 07DF84 7F049414 0FC1B314 */ jal sub_GAME_7F06C660 /* 07DF88 7F049418 8CB20004 */ lw $s2, 4($a1) /* 07DF8C 7F04941C 00408025 */ move $s0, $v0 /* 07DF90 7F049420 02402025 */ move $a0, $s2 /* 07DF94 7F049424 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07DF98 7F049428 00402825 */ move $a1, $v0 /* 07DF9C 7F04942C 8FA40070 */ lw $a0, 0x70($sp) /* 07DFA0 7F049430 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07DFA4 7F049434 02002825 */ move $a1, $s0 /* 07DFA8 7F049438 10000064 */ b .Ljp7F0495CC /* 07DFAC 7F04943C 8E8C0008 */ lw $t4, 8($s4) .Ljp7F049440: /* 07DFB0 7F049440 16020061 */ bne $s0, $v0, .Ljp7F0495C8 /* 07DFB4 7F049444 26450040 */ addiu $a1, $s2, 0x40 /* 07DFB8 7F049448 8E8E0008 */ lw $t6, 8($s4) /* 07DFBC 7F04944C 8DC30008 */ lw $v1, 8($t6) /* 07DFC0 7F049450 8C6F000C */ lw $t7, 0xc($v1) /* 07DFC4 7F049454 8C6A0004 */ lw $t2, 4($v1) /* 07DFC8 7F049458 8DEC0004 */ lw $t4, 4($t7) /* 07DFCC 7F04945C 8D500004 */ lw $s0, 4($t2) /* 07DFD0 7F049460 AFAC0168 */ sw $t4, 0x168($sp) /* 07DFD4 7F049464 8C6D0010 */ lw $t5, 0x10($v1) /* 07DFD8 7F049468 8DB90004 */ lw $t9, 4($t5) /* 07DFDC 7F04946C AFB90164 */ sw $t9, 0x164($sp) /* 07DFE0 7F049470 8C680008 */ lw $t0, 8($v1) /* 07DFE4 7F049474 8D180004 */ lw $t8, 4($t0) /* 07DFE8 7F049478 AFB80160 */ sw $t8, 0x160($sp) /* 07DFEC 7F04947C 8C690018 */ lw $t1, 0x18($v1) /* 07DFF0 7F049480 8D2B0004 */ lw $t3, 4($t1) /* 07DFF4 7F049484 AFAB015C */ sw $t3, 0x15c($sp) /* 07DFF8 7F049488 C62E00C8 */ lwc1 $f14, 0xc8($s1) /* 07DFFC 7F04948C 46007387 */ neg.s $f14, $f14 /* 07E000 7F049490 4616703C */ c.lt.s $f14, $f22 /* 07E004 7F049494 00000000 */ nop /* 07E008 7F049498 45020003 */ bc1fl .Ljp7F0494A8 /* 07E00C 7F04949C C62C00CC */ lwc1 $f12, 0xcc($s1) /* 07E010 7F0494A0 46147380 */ add.s $f14, $f14, $f20 /* 07E014 7F0494A4 C62C00CC */ lwc1 $f12, 0xcc($s1) .Ljp7F0494A8: /* 07E018 7F0494A8 46006307 */ neg.s $f12, $f12 /* 07E01C 7F0494AC 4616603C */ c.lt.s $f12, $f22 /* 07E020 7F0494B0 00000000 */ nop /* 07E024 7F0494B4 45020003 */ bc1fl .Ljp7F0494C4 /* 07E028 7F0494B8 AFA50070 */ sw $a1, 0x70($sp) /* 07E02C 7F0494BC 46146300 */ add.s $f12, $f12, $f20 /* 07E030 7F0494C0 AFA50070 */ sw $a1, 0x70($sp) .Ljp7F0494C4: /* 07E034 7F0494C4 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07E038 7F0494C8 E7AE0158 */ swc1 $f14, 0x158($sp) /* 07E03C 7F0494CC 02002025 */ move $a0, $s0 /* 07E040 7F0494D0 0FC163AE */ jal matrix_4x4_set_position /* 07E044 7F0494D4 8FA50070 */ lw $a1, 0x70($sp) /* 07E048 7F0494D8 02402025 */ move $a0, $s2 /* 07E04C 7F0494DC 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07E050 7F0494E0 8FA50070 */ lw $a1, 0x70($sp) /* 07E054 7F0494E4 264500C0 */ addiu $a1, $s2, 0xc0 /* 07E058 7F0494E8 C7AC0158 */ lwc1 $f12, 0x158($sp) /* 07E05C 7F0494EC 0FC162A4 */ jal matrix_4x4_set_rotation_around_x /* 07E060 7F0494F0 AFA50078 */ sw $a1, 0x78($sp) /* 07E064 7F0494F4 8FA40168 */ lw $a0, 0x168($sp) /* 07E068 7F0494F8 0FC163AE */ jal matrix_4x4_set_position /* 07E06C 7F0494FC 8FA50078 */ lw $a1, 0x78($sp) /* 07E070 7F049500 8FA40070 */ lw $a0, 0x70($sp) /* 07E074 7F049504 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07E078 7F049508 8FA50078 */ lw $a1, 0x78($sp) /* 07E07C 7F04950C 3C018005 */ lui $at, %hi(D_80052B70) # $at, 0x8005 /* 07E080 7F049510 26500100 */ addiu $s0, $s2, 0x100 /* 07E084 7F049514 02002825 */ move $a1, $s0 /* 07E088 7F049518 0FC162C7 */ jal matrix_4x4_set_rotation_around_y /* 07E08C 7F04951C C42C2BA0 */ lwc1 $f12, %lo(D_80052B70)($at) /* 07E090 7F049520 8FA40164 */ lw $a0, 0x164($sp) /* 07E094 7F049524 0FC163AE */ jal matrix_4x4_set_position /* 07E098 7F049528 02002825 */ move $a1, $s0 /* 07E09C 7F04952C 8FA40078 */ lw $a0, 0x78($sp) /* 07E0A0 7F049530 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07E0A4 7F049534 02002825 */ move $a1, $s0 /* 07E0A8 7F049538 26450080 */ addiu $a1, $s2, 0x80 /* 07E0AC 7F04953C AFA5006C */ sw $a1, 0x6c($sp) /* 07E0B0 7F049540 0FC163A1 */ jal matrix_4x4_set_identity_and_position /* 07E0B4 7F049544 8FA40160 */ lw $a0, 0x160($sp) /* 07E0B8 7F049548 8FA40070 */ lw $a0, 0x70($sp) /* 07E0BC 7F04954C 0FC1616E */ jal matrix_4x4_multiply_homogeneous_in_place /* 07E0C0 7F049550 8FA5006C */ lw $a1, 0x6c($sp) /* 07E0C4 7F049554 0FC1E28D */ jal sub_GAME_7F078444 /* 07E0C8 7F049558 00000000 */ nop /* 07E0CC 7F04955C 27B00170 */ addiu $s0, $sp, 0x170 /* 07E0D0 7F049560 02003025 */ move $a2, $s0 /* 07E0D4 7F049564 00402025 */ move $a0, $v0 /* 07E0D8 7F049568 0FC161AB */ jal matrix_4x4_multiply_homogeneous /* 07E0DC 7F04956C 8FA50070 */ lw $a1, 0x70($sp) /* 07E0E0 7F049570 8FA4015C */ lw $a0, 0x15c($sp) /* 07E0E4 7F049574 02002825 */ move $a1, $s0 /* 07E0E8 7F049578 26260084 */ addiu $a2, $s1, 0x84 /* 07E0EC 7F04957C 0FC0FE10 */ jal sub_GAME_7F03F540 /* 07E0F0 7F049580 26270080 */ addiu $a3, $s1, 0x80 /* 07E0F4 7F049584 8E8E0008 */ lw $t6, 8($s4) /* 07E0F8 7F049588 8DC30008 */ lw $v1, 8($t6) /* 07E0FC 7F04958C 8C65001C */ lw $a1, 0x1c($v1) /* 07E100 7F049590 50A00008 */ beql $a1, $zero, .Ljp7F0495B4 /* 07E104 7F049594 8C650020 */ lw $a1, 0x20($v1) /* 07E108 7F049598 0FC1B363 */ jal extract_id_from_object_structure_microcode /* 07E10C 7F04959C 02802025 */ move $a0, $s4 /* 07E110 7F0495A0 8E2A00C4 */ lw $t2, 0xc4($s1) /* 07E114 7F0495A4 A44A0000 */ sh $t2, ($v0) /* 07E118 7F0495A8 8E8F0008 */ lw $t7, 8($s4) /* 07E11C 7F0495AC 8DE30008 */ lw $v1, 8($t7) /* 07E120 7F0495B0 8C650020 */ lw $a1, 0x20($v1) .Ljp7F0495B4: /* 07E124 7F0495B4 50A00005 */ beql $a1, $zero, .Ljp7F0495CC /* 07E128 7F0495B8 8E8C0008 */ lw $t4, 8($s4) /* 07E12C 7F0495BC 0FC1B363 */ jal extract_id_from_object_structure_microcode /* 07E130 7F0495C0 02802025 */ move $a0, $s4 /* 07E134 7F0495C4 AC400000 */ sw $zero, ($v0) .Ljp7F0495C8: /* 07E138 7F0495C8 8E8C0008 */ lw $t4, 8($s4) .Ljp7F0495CC: /* 07E13C 7F0495CC 02802025 */ move $a0, $s4 /* 07E140 7F0495D0 0FC1BD25 */ jal sub_GAME_7F06EEA4 /* 07E144 7F0495D4 8D850000 */ lw $a1, ($t4) /* 07E148 7F0495D8 8E8D000C */ lw $t5, 0xc($s4) /* 07E14C 7F0495DC 02602025 */ move $a0, $s3 /* 07E150 7F0495E0 C5AA0038 */ lwc1 $f10, 0x38($t5) /* 07E154 7F0495E4 46005207 */ neg.s $f8, $f10 /* 07E158 7F0495E8 0FC1101D */ jal handle_thrown_explosive_detonation /* 07E15C 7F0495EC E6680018 */ swc1 $f8, 0x18($s3) /* 07E160 7F0495F0 8E640020 */ lw $a0, 0x20($s3) /* 07E164 7F0495F4 50800018 */ beql $a0, $zero, .Ljp7F049658 /* 07E168 7F0495F8 8E230064 */ lw $v1, 0x64($s1) /* 07E16C 7F0495FC 8C820024 */ lw $v0, 0x24($a0) .Ljp7F049600: /* 07E170 7F049600 0FC11171 */ jal sub_GAME_7F0442DC /* 07E174 7F049604 AFA2068C */ sw $v0, 0x68c($sp) /* 07E178 7F049608 8FA4068C */ lw $a0, 0x68c($sp) /* 07E17C 7F04960C 5480FFFC */ bnezl $a0, .Ljp7F049600 /* 07E180 7F049610 8C820024 */ lw $v0, 0x24($a0) /* 07E184 7F049614 10000010 */ b .Ljp7F049658 /* 07E188 7F049618 8E230064 */ lw $v1, 0x64($s1) .Ljp7F04961C: /* 07E18C 7F04961C 92790001 */ lbu $t9, 1($s3) /* 07E190 7F049620 02602025 */ move $a0, $s3 /* 07E194 7F049624 3328FFFD */ andi $t0, $t9, 0xfffd /* 07E198 7F049628 0FC1101D */ jal handle_thrown_explosive_detonation /* 07E19C 7F04962C A2680001 */ sb $t0, 1($s3) /* 07E1A0 7F049630 8E640020 */ lw $a0, 0x20($s3) /* 07E1A4 7F049634 50800008 */ beql $a0, $zero, .Ljp7F049658 /* 07E1A8 7F049638 8E230064 */ lw $v1, 0x64($s1) /* 07E1AC 7F04963C 8C820024 */ lw $v0, 0x24($a0) .Ljp7F049640: /* 07E1B0 7F049640 0FC1114D */ jal sub_GAME_7F04424C /* 07E1B4 7F049644 AFA2068C */ sw $v0, 0x68c($sp) /* 07E1B8 7F049648 8FA4068C */ lw $a0, 0x68c($sp) /* 07E1BC 7F04964C 5480FFFC */ bnezl $a0, .Ljp7F049640 /* 07E1C0 7F049650 8C820024 */ lw $v0, 0x24($a0) /* 07E1C4 7F049654 8E230064 */ lw $v1, 0x64($s1) .Ljp7F049658: /* 07E1C8 7F049658 2401FEFF */ li $at, -257 /* 07E1CC 7F04965C 266B0008 */ addiu $t3, $s3, 8 /* 07E1D0 7F049660 30780100 */ andi $t8, $v1, 0x100 /* 07E1D4 7F049664 1300001F */ beqz $t8, .Ljp7F0496E4 /* 07E1D8 7F049668 00614824 */ and $t1, $v1, $at /* 07E1DC 7F04966C AE290064 */ sw $t1, 0x64($s1) /* 07E1E0 7F049670 0C002918 */ jal get_random_value /* 07E1E4 7F049674 AFAB0074 */ sw $t3, 0x74($sp) /* 07E1E8 7F049678 44822000 */ mtc1 $v0, $f4 /* 07E1EC 7F04967C 02202025 */ move $a0, $s1 /* 07E1F0 7F049680 04410005 */ bgez $v0, .Ljp7F049698 /* 07E1F4 7F049684 468021A0 */ cvt.s.w $f6, $f4 /* 07E1F8 7F049688 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07E1FC 7F04968C 44815000 */ mtc1 $at, $f10 /* 07E200 7F049690 00000000 */ nop /* 07E204 7F049694 460A3180 */ add.s $f6, $f6, $f10 .Ljp7F049698: /* 07E208 7F049698 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07E20C 7F04969C 44814000 */ mtc1 $at, $f8 /* 07E210 7F0496A0 3C014080 */ li $at, 0x40800000 # 4.000000 /* 07E214 7F0496A4 44815000 */ mtc1 $at, $f10 /* 07E218 7F0496A8 46083102 */ mul.s $f4, $f6, $f8 /* 07E21C 7F0496AC 3C014000 */ li $at, 0x40000000 # 2.000000 /* 07E220 7F0496B0 44814000 */ mtc1 $at, $f8 /* 07E224 7F0496B4 8E2E0064 */ lw $t6, 0x64($s1) /* 07E228 7F0496B8 3C010006 */ lui $at, 6 /* 07E22C 7F0496BC 8FA60074 */ lw $a2, 0x74($sp) /* 07E230 7F0496C0 01C15024 */ and $t2, $t6, $at /* 07E234 7F0496C4 460A2182 */ mul.s $f6, $f4, $f10 /* 07E238 7F0496C8 00003825 */ move $a3, $zero /* 07E23C 7F0496CC 000A7C42 */ srl $t7, $t2, 0x11 /* 07E240 7F0496D0 AFAF0010 */ sw $t7, 0x10($sp) /* 07E244 7F0496D4 46083100 */ add.s $f4, $f6, $f8 /* 07E248 7F0496D8 44052000 */ mfc1 $a1, $f4 /* 07E24C 7F0496DC 0FC13943 */ jal maybe_detonate_object /* 07E250 7F0496E0 00000000 */ nop .Ljp7F0496E4: /* 07E254 7F0496E4 8FAC0680 */ lw $t4, 0x680($sp) /* 07E258 7F0496E8 5180020D */ beql $t4, $zero, .Ljp7F049F20 /* 07E25C 7F0496EC 8FAD0688 */ lw $t5, 0x688($sp) /* 07E260 7F0496F0 92220003 */ lbu $v0, 3($s1) /* 07E264 7F0496F4 24010001 */ li $at, 1 /* 07E268 7F0496F8 54410006 */ bnel $v0, $at, .Ljp7F049714 /* 07E26C 7F0496FC 2401000D */ li $at, 13 /* 07E270 7F049700 0FC14FCE */ jal sub_GAME_7F053A3C /* 07E274 7F049704 8E640004 */ lw $a0, 4($s3) /* 07E278 7F049708 10000202 */ b .Ljp7F049F14 /* 07E27C 7F04970C 00000000 */ nop /* 07E280 7F049710 2401000D */ li $at, 13 .Ljp7F049714: /* 07E284 7F049714 144101FF */ bne $v0, $at, .Ljp7F049F14 /* 07E288 7F049718 00000000 */ nop /* 07E28C 7F04971C 0FC3021B */ jal get_controls_locked_flag /* 07E290 7F049720 00000000 */ nop /* 07E294 7F049724 144001FB */ bnez $v0, .Ljp7F049F14 /* 07E298 7F049728 00000000 */ nop /* 07E29C 7F04972C 8E700004 */ lw $s0, 4($s3) /* 07E2A0 7F049730 AFA00140 */ sw $zero, 0x140($sp) /* 07E2A4 7F049734 AFA0013C */ sw $zero, 0x13c($sp) /* 07E2A8 7F049738 8E0D00D0 */ lw $t5, 0xd0($s0) /* 07E2AC 7F04973C 51A001E4 */ beql $t5, $zero, .Ljp7F049ED0 /* 07E2B0 7F049740 8E8E0008 */ lw $t6, 8($s4) /* 07E2B4 7F049744 8E390008 */ lw $t9, 8($s1) /* 07E2B8 7F049748 001940C0 */ sll $t0, $t9, 3 /* 07E2BC 7F04974C 050201E0 */ bltzl $t0, .Ljp7F049ED0 /* 07E2C0 7F049750 8E8E0008 */ lw $t6, 8($s4) /* 07E2C4 7F049754 8E1800AC */ lw $t8, 0xac($s0) /* 07E2C8 7F049758 3C088005 */ lui $t0, %hi(global_timer) # $t0, 0x8005 /* 07E2CC 7F04975C 27090001 */ addiu $t1, $t8, 1 /* 07E2D0 7F049760 312B0001 */ andi $t3, $t1, 1 /* 07E2D4 7F049764 AE0900AC */ sw $t1, 0xac($s0) /* 07E2D8 7F049768 2D6E0001 */ sltiu $t6, $t3, 1 /* 07E2DC 7F04976C AFAE0140 */ sw $t6, 0x140($sp) /* 07E2E0 7F049770 8E8A0008 */ lw $t2, 8($s4) /* 07E2E4 7F049774 396D0001 */ xori $t5, $t3, 1 /* 07E2E8 7F049778 2DAD0001 */ sltiu $t5, $t5, 1 /* 07E2EC 7F04977C 8D4F0008 */ lw $t7, 8($t2) /* 07E2F0 7F049780 8DEC0014 */ lw $t4, 0x14($t7) /* 07E2F4 7F049784 51800003 */ beql $t4, $zero, .Ljp7F049794 /* 07E2F8 7F049788 8E1900C0 */ lw $t9, 0xc0($s0) /* 07E2FC 7F04978C AFAD013C */ sw $t5, 0x13c($sp) /* 07E300 7F049790 8E1900C0 */ lw $t9, 0xc0($s0) .Ljp7F049794: /* 07E304 7F049794 8D0883AC */ lw $t0, %lo(global_timer)($t0) /* 07E308 7F049798 0328082A */ slt $at, $t9, $t0 /* 07E30C 7F04979C 50200032 */ beql $at, $zero, .Ljp7F049868 /* 07E310 7F0497A0 8FAC0140 */ lw $t4, 0x140($sp) /* 07E314 7F0497A4 8E0400C4 */ lw $a0, 0xc4($s0) /* 07E318 7F0497A8 50800008 */ beql $a0, $zero, .Ljp7F0497CC /* 07E31C 7F0497AC 8E0400C8 */ lw $a0, 0xc8($s0) /* 07E320 7F0497B0 0C002380 */ jal sfxGetArg0Unk3F /* 07E324 7F0497B4 00000000 */ nop /* 07E328 7F0497B8 50400004 */ beql $v0, $zero, .Ljp7F0497CC /* 07E32C 7F0497BC 8E0400C8 */ lw $a0, 0xc8($s0) /* 07E330 7F0497C0 0C00240C */ jal sfxDeactivate /* 07E334 7F0497C4 8E0400C4 */ lw $a0, 0xc4($s0) /* 07E338 7F0497C8 8E0400C8 */ lw $a0, 0xc8($s0) .Ljp7F0497CC: /* 07E33C 7F0497CC 50800008 */ beql $a0, $zero, .Ljp7F0497F0 /* 07E340 7F0497D0 8E1800C4 */ lw $t8, 0xc4($s0) /* 07E344 7F0497D4 0C002380 */ jal sfxGetArg0Unk3F /* 07E348 7F0497D8 00000000 */ nop /* 07E34C 7F0497DC 50400004 */ beql $v0, $zero, .Ljp7F0497F0 /* 07E350 7F0497E0 8E1800C4 */ lw $t8, 0xc4($s0) /* 07E354 7F0497E4 0C00240C */ jal sfxDeactivate /* 07E358 7F0497E8 8E0400C8 */ lw $a0, 0xc8($s0) /* 07E35C 7F0497EC 8E1800C4 */ lw $t8, 0xc4($s0) .Ljp7F0497F0: /* 07E360 7F0497F0 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07E364 7F0497F4 240500FD */ li $a1, 253 /* 07E368 7F0497F8 1700000A */ bnez $t8, .Ljp7F049824 /* 07E36C 7F0497FC 260600C4 */ addiu $a2, $s0, 0xc4 /* 07E370 7F049800 26690008 */ addiu $t1, $s3, 8 /* 07E374 7F049804 AFA90074 */ sw $t1, 0x74($sp) /* 07E378 7F049808 0C002386 */ jal play_sfx_a1 /* 07E37C 7F04980C 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07E380 7F049810 8E0400C4 */ lw $a0, 0xc4($s0) /* 07E384 7F049814 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07E388 7F049818 8FA50074 */ lw $a1, 0x74($sp) /* 07E38C 7F04981C 1000000D */ b .Ljp7F049854 /* 07E390 7F049820 00000000 */ nop .Ljp7F049824: /* 07E394 7F049824 8E0B00C8 */ lw $t3, 0xc8($s0) /* 07E398 7F049828 3C048006 */ lui $a0, %hi(ptr_sfx_buf) # $a0, 0x8006 /* 07E39C 7F04982C 240500FD */ li $a1, 253 /* 07E3A0 7F049830 15600008 */ bnez $t3, .Ljp7F049854 /* 07E3A4 7F049834 260600C8 */ addiu $a2, $s0, 0xc8 /* 07E3A8 7F049838 266E0008 */ addiu $t6, $s3, 8 /* 07E3AC 7F04983C AFAE0074 */ sw $t6, 0x74($sp) /* 07E3B0 7F049840 0C002386 */ jal play_sfx_a1 /* 07E3B4 7F049844 8C843760 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 07E3B8 7F049848 8E0400C8 */ lw $a0, 0xc8($s0) /* 07E3BC 7F04984C 0FC14FC3 */ jal sub_GAME_7F053A10 /* 07E3C0 7F049850 8FA50074 */ lw $a1, 0x74($sp) .Ljp7F049854: /* 07E3C4 7F049854 3C0A8005 */ lui $t2, %hi(global_timer) # $t2, 0x8005 /* 07E3C8 7F049858 8D4A83AC */ lw $t2, %lo(global_timer)($t2) /* 07E3CC 7F04985C 254F0002 */ addiu $t7, $t2, 2 /* 07E3D0 7F049860 AE0F00C0 */ sw $t7, 0xc0($s0) /* 07E3D4 7F049864 8FAC0140 */ lw $t4, 0x140($sp) .Ljp7F049868: /* 07E3D8 7F049868 8FAD013C */ lw $t5, 0x13c($sp) /* 07E3DC 7F04986C 24190001 */ li $t9, 1 /* 07E3E0 7F049870 55800004 */ bnezl $t4, .Ljp7F049884 /* 07E3E4 7F049874 AFB90120 */ sw $t9, 0x120($sp) /* 07E3E8 7F049878 51A00195 */ beql $t5, $zero, .Ljp7F049ED0 /* 07E3EC 7F04987C 8E8E0008 */ lw $t6, 8($s4) /* 07E3F0 7F049880 AFB90120 */ sw $t9, 0x120($sp) .Ljp7F049884: /* 07E3F4 7F049884 AFA00110 */ sw $zero, 0x110($sp) /* 07E3F8 7F049888 8E680014 */ lw $t0, 0x14($s3) /* 07E3FC 7F04988C AFA8010C */ sw $t0, 0x10c($sp) /* 07E400 7F049890 8E1800AC */ lw $t8, 0xac($s0) /* 07E404 7F049894 33090003 */ andi $t1, $t8, 3 /* 07E408 7F049898 2D2B0001 */ sltiu $t3, $t1, 1 /* 07E40C 7F04989C 0FC2279B */ jal get_curplayer_positiondata /* 07E410 7F0498A0 AFAB0108 */ sw $t3, 0x108($sp) /* 07E414 7F0498A4 AFA20104 */ sw $v0, 0x104($sp) /* 07E418 7F0498A8 8E8E0008 */ lw $t6, 8($s4) /* 07E41C 7F0498AC 24040005 */ li $a0, 5 /* 07E420 7F0498B0 8DC30008 */ lw $v1, 8($t6) /* 07E424 7F0498B4 8C6A001C */ lw $t2, 0x1c($v1) /* 07E428 7F0498B8 51400007 */ beql $t2, $zero, .Ljp7F0498D8 /* 07E42C 7F0498BC 926D0001 */ lbu $t5, 1($s3) /* 07E430 7F0498C0 8E0F00AC */ lw $t7, 0xac($s0) /* 07E434 7F0498C4 31EC0007 */ andi $t4, $t7, 7 /* 07E438 7F0498C8 55800003 */ bnezl $t4, .Ljp7F0498D8 /* 07E43C 7F0498CC 926D0001 */ lbu $t5, 1($s3) /* 07E440 7F0498D0 24040007 */ li $a0, 7 /* 07E444 7F0498D4 926D0001 */ lbu $t5, 1($s3) .Ljp7F0498D8: /* 07E448 7F0498D8 31B90002 */ andi $t9, $t5, 2 /* 07E44C 7F0498DC 1320002D */ beqz $t9, .Ljp7F049994 /* 07E450 7F0498E0 00048880 */ sll $s1, $a0, 2 /* 07E454 7F0498E4 00714021 */ addu $t0, $v1, $s1 /* 07E458 7F0498E8 8D050000 */ lw $a1, ($t0) /* 07E45C 7F0498EC 02802025 */ move $a0, $s4 /* 07E460 7F0498F0 50A00029 */ beql $a1, $zero, .Ljp7F049998 /* 07E464 7F0498F4 C6640008 */ lwc1 $f4, 8($s3) /* 07E468 7F0498F8 0FC1B314 */ jal sub_GAME_7F06C660 /* 07E46C 7F0498FC 00003025 */ move $a2, $zero /* 07E470 7F049900 8E980008 */ lw $t8, 8($s4) /* 07E474 7F049904 00409025 */ move $s2, $v0 /* 07E478 7F049908 8F090008 */ lw $t1, 8($t8) /* 07E47C 7F04990C 01315821 */ addu $t3, $t1, $s1 /* 07E480 7F049910 8D6E0000 */ lw $t6, ($t3) /* 07E484 7F049914 8DC30004 */ lw $v1, 4($t6) /* 07E488 7F049918 C46A0000 */ lwc1 $f10, ($v1) /* 07E48C 7F04991C E7AA0130 */ swc1 $f10, 0x130($sp) /* 07E490 7F049920 C4660004 */ lwc1 $f6, 4($v1) /* 07E494 7F049924 E7A60134 */ swc1 $f6, 0x134($sp) /* 07E498 7F049928 C4680008 */ lwc1 $f8, 8($v1) /* 07E49C 7F04992C 0FC1E28D */ jal sub_GAME_7F078444 /* 07E4A0 7F049930 E7A80138 */ swc1 $f8, 0x138($sp) /* 07E4A4 7F049934 27B100BC */ addiu $s1, $sp, 0xbc /* 07E4A8 7F049938 02203025 */ move $a2, $s1 /* 07E4AC 7F04993C 00402025 */ move $a0, $v0 /* 07E4B0 7F049940 0FC161AB */ jal matrix_4x4_multiply_homogeneous /* 07E4B4 7F049944 02402825 */ move $a1, $s2 /* 07E4B8 7F049948 02202025 */ move $a0, $s1 /* 07E4BC 7F04994C 0FC16265 */ jal matrix_4x4_transform_vector_in_place /* 07E4C0 7F049950 27A50130 */ addiu $a1, $sp, 0x130 /* 07E4C4 7F049954 C7A40138 */ lwc1 $f4, 0x138($sp) /* 07E4C8 7F049958 8E650008 */ lw $a1, 8($s3) /* 07E4CC 7F04995C 8E660010 */ lw $a2, 0x10($s3) /* 07E4D0 7F049960 27A4010C */ addiu $a0, $sp, 0x10c /* 07E4D4 7F049964 8FA70130 */ lw $a3, 0x130($sp) /* 07E4D8 7F049968 0FC2C5E5 */ jal sub_GAME_7F0B0BE4 /* 07E4DC 7F04996C E7A40010 */ swc1 $f4, 0x10($sp) /* 07E4E0 7F049970 1440000E */ bnez $v0, .Ljp7F0499AC /* 07E4E4 7F049974 00000000 */ nop /* 07E4E8 7F049978 C66A0008 */ lwc1 $f10, 8($s3) /* 07E4EC 7F04997C E7AA0130 */ swc1 $f10, 0x130($sp) /* 07E4F0 7F049980 C666000C */ lwc1 $f6, 0xc($s3) /* 07E4F4 7F049984 E7A60134 */ swc1 $f6, 0x134($sp) /* 07E4F8 7F049988 C6680010 */ lwc1 $f8, 0x10($s3) /* 07E4FC 7F04998C 10000007 */ b .Ljp7F0499AC /* 07E500 7F049990 E7A80138 */ swc1 $f8, 0x138($sp) .Ljp7F049994: /* 07E504 7F049994 C6640008 */ lwc1 $f4, 8($s3) .Ljp7F049998: /* 07E508 7F049998 E7A40130 */ swc1 $f4, 0x130($sp) /* 07E50C 7F04999C C66A000C */ lwc1 $f10, 0xc($s3) /* 07E510 7F0499A0 E7AA0134 */ swc1 $f10, 0x134($sp) /* 07E514 7F0499A4 C6660010 */ lwc1 $f6, 0x10($s3) /* 07E518 7F0499A8 E7A60138 */ swc1 $f6, 0x138($sp) .Ljp7F0499AC: /* 07E51C 7F0499AC 0FC160F0 */ jal cosf /* 07E520 7F0499B0 C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E524 7F0499B4 C60C0090 */ lwc1 $f12, 0x90($s0) /* 07E528 7F0499B8 0FC160F3 */ jal sinf /* 07E52C 7F0499BC E7A00080 */ swc1 $f0, 0x80($sp) /* 07E530 7F0499C0 C7A20080 */ lwc1 $f2, 0x80($sp) /* 07E534 7F0499C4 46020202 */ mul.s $f8, $f0, $f2 /* 07E538 7F0499C8 E7A80124 */ swc1 $f8, 0x124($sp) /* 07E53C 7F0499CC 0FC160F3 */ jal sinf /* 07E540 7F0499D0 C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E544 7F0499D4 E7A00128 */ swc1 $f0, 0x128($sp) /* 07E548 7F0499D8 0FC160F0 */ jal cosf /* 07E54C 7F0499DC C60C009C */ lwc1 $f12, 0x9c($s0) /* 07E550 7F0499E0 C60C0090 */ lwc1 $f12, 0x90($s0) /* 07E554 7F0499E4 0FC160F0 */ jal cosf /* 07E558 7F0499E8 E7A00080 */ swc1 $f0, 0x80($sp) /* 07E55C 7F0499EC C7A20080 */ lwc1 $f2, 0x80($sp) /* 07E560 7F0499F0 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07E564 7F0499F4 44816000 */ mtc1 $at, $f12 /* 07E568 7F0499F8 46020382 */ mul.s $f14, $f0, $f2 /* 07E56C 7F0499FC C7A40124 */ lwc1 $f4, 0x124($sp) /* 07E570 7F049A00 C7A60130 */ lwc1 $f6, 0x130($sp) /* 07E574 7F049A04 460C2282 */ mul.s $f10, $f4, $f12 /* 07E578 7F049A08 C7A40128 */ lwc1 $f4, 0x128($sp) /* 07E57C 7F049A0C E7AE012C */ swc1 $f14, 0x12c($sp) /* 07E580 7F049A10 46065200 */ add.s $f8, $f10, $f6 /* 07E584 7F049A14 460C2282 */ mul.s $f10, $f4, $f12 /* 07E588 7F049A18 C7A60134 */ lwc1 $f6, 0x134($sp) /* 07E58C 7F049A1C 460C7102 */ mul.s $f4, $f14, $f12 /* 07E590 7F049A20 E7A80114 */ swc1 $f8, 0x114($sp) /* 07E594 7F049A24 46065200 */ add.s $f8, $f10, $f6 /* 07E598 7F049A28 C7AA0138 */ lwc1 $f10, 0x138($sp) /* 07E59C 7F049A2C 460A2180 */ add.s $f6, $f4, $f10 /* 07E5A0 7F049A30 E7A80118 */ swc1 $f8, 0x118($sp) /* 07E5A4 7F049A34 0FC2CA1D */ jal sub_GAME_7F0B1CC4 /* 07E5A8 7F049A38 E7A6011C */ swc1 $f6, 0x11c($sp) /* 07E5AC 7F049A3C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 07E5B0 7F049A40 44810000 */ mtc1 $at, $f0 /* 07E5B4 7F049A44 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E5B8 7F049A48 44812000 */ mtc1 $at, $f4 /* 07E5BC 7F049A4C C7A8011C */ lwc1 $f8, 0x11c($sp) /* 07E5C0 7F049A50 240A0002 */ li $t2, 2 /* 07E5C4 7F049A54 AFAA0014 */ sw $t2, 0x14($sp) /* 07E5C8 7F049A58 27A4010C */ addiu $a0, $sp, 0x10c /* 07E5CC 7F049A5C 8FA50130 */ lw $a1, 0x130($sp) /* 07E5D0 7F049A60 8FA60138 */ lw $a2, 0x138($sp) /* 07E5D4 7F049A64 8FA70114 */ lw $a3, 0x114($sp) /* 07E5D8 7F049A68 E7B60020 */ swc1 $f22, 0x20($sp) /* 07E5DC 7F049A6C E7A00018 */ swc1 $f0, 0x18($sp) /* 07E5E0 7F049A70 E7A0001C */ swc1 $f0, 0x1c($sp) /* 07E5E4 7F049A74 E7A80010 */ swc1 $f8, 0x10($sp) /* 07E5E8 7F049A78 0FC2C675 */ jal sub_GAME_7F0B0E24 /* 07E5EC 7F049A7C E7A40024 */ swc1 $f4, 0x24($sp) /* 07E5F0 7F049A80 14400017 */ bnez $v0, .Ljp7F049AE0 /* 07E5F4 7F049A84 27A60114 */ addiu $a2, $sp, 0x114 /* 07E5F8 7F049A88 27A40130 */ addiu $a0, $sp, 0x130 /* 07E5FC 7F049A8C 0FC09955 */ jal sub_GAME_7F02624C /* 07E600 7F049A90 27A50124 */ addiu $a1, $sp, 0x124 /* 07E604 7F049A94 3C0141D0 */ li $at, 0x41D00000 # 26.000000 /* 07E608 7F049A98 44818000 */ mtc1 $at, $f16 /* 07E60C 7F049A9C C7A60124 */ lwc1 $f6, 0x124($sp) /* 07E610 7F049AA0 C7AA0114 */ lwc1 $f10, 0x114($sp) /* 07E614 7F049AA4 C7AE012C */ lwc1 $f14, 0x12c($sp) /* 07E618 7F049AA8 46068202 */ mul.s $f8, $f16, $f6 /* 07E61C 7F049AAC C7A60118 */ lwc1 $f6, 0x118($sp) /* 07E620 7F049AB0 8FAF010C */ lw $t7, 0x10c($sp) /* 07E624 7F049AB4 AFAF0110 */ sw $t7, 0x110($sp) /* 07E628 7F049AB8 46085101 */ sub.s $f4, $f10, $f8 /* 07E62C 7F049ABC C7AA0128 */ lwc1 $f10, 0x128($sp) /* 07E630 7F049AC0 460A8202 */ mul.s $f8, $f16, $f10 /* 07E634 7F049AC4 E7A40114 */ swc1 $f4, 0x114($sp) /* 07E638 7F049AC8 C7AA011C */ lwc1 $f10, 0x11c($sp) /* 07E63C 7F049ACC 46083101 */ sub.s $f4, $f6, $f8 /* 07E640 7F049AD0 460E8182 */ mul.s $f6, $f16, $f14 /* 07E644 7F049AD4 E7A40118 */ swc1 $f4, 0x118($sp) /* 07E648 7F049AD8 46065201 */ sub.s $f8, $f10, $f6 /* 07E64C 7F049ADC E7A8011C */ swc1 $f8, 0x11c($sp) .Ljp7F049AE0: /* 07E650 7F049AE0 3C0C8005 */ lui $t4, %hi(global_timer) # $t4, 0x8005 /* 07E654 7F049AE4 8D8C83AC */ lw $t4, %lo(global_timer)($t4) /* 07E658 7F049AE8 8E0D00BC */ lw $t5, 0xbc($s0) /* 07E65C 7F049AEC 27B10114 */ addiu $s1, $sp, 0x114 /* 07E660 7F049AF0 8FA50104 */ lw $a1, 0x104($sp) /* 07E664 7F049AF4 158D0052 */ bne $t4, $t5, .Ljp7F049C40 /* 07E668 7F049AF8 C7AA0130 */ lwc1 $f10, 0x130($sp) /* 07E66C 7F049AFC C4A40008 */ lwc1 $f4, 8($a1) /* 07E670 7F049B00 C4A6000C */ lwc1 $f6, 0xc($a1) /* 07E674 7F049B04 C7A80134 */ lwc1 $f8, 0x134($sp) /* 07E678 7F049B08 460A2001 */ sub.s $f0, $f4, $f10 /* 07E67C 7F049B0C C4A40010 */ lwc1 $f4, 0x10($a1) /* 07E680 7F049B10 E7AA0058 */ swc1 $f10, 0x58($sp) /* 07E684 7F049B14 46083081 */ sub.s $f2, $f6, $f8 /* 07E688 7F049B18 C7A60138 */ lwc1 $f6, 0x138($sp) /* 07E68C 7F049B1C 46062301 */ sub.s $f12, $f4, $f6 /* 07E690 7F049B20 46000102 */ mul.s $f4, $f0, $f0 /* 07E694 7F049B24 00000000 */ nop /* 07E698 7F049B28 46021282 */ mul.s $f10, $f2, $f2 /* 07E69C 7F049B2C 460A2100 */ add.s $f4, $f4, $f10 /* 07E6A0 7F049B30 460C6282 */ mul.s $f10, $f12, $f12 /* 07E6A4 7F049B34 460A2500 */ add.s $f20, $f4, $f10 /* 07E6A8 7F049B38 C7AA0058 */ lwc1 $f10, 0x58($sp) /* 07E6AC 7F049B3C C7A40114 */ lwc1 $f4, 0x114($sp) /* 07E6B0 7F049B40 460A2001 */ sub.s $f0, $f4, $f10 /* 07E6B4 7F049B44 C7A40118 */ lwc1 $f4, 0x118($sp) /* 07E6B8 7F049B48 C7AA011C */ lwc1 $f10, 0x11c($sp) /* 07E6BC 7F049B4C 46082081 */ sub.s $f2, $f4, $f8 /* 07E6C0 7F049B50 46000102 */ mul.s $f4, $f0, $f0 /* 07E6C4 7F049B54 46065301 */ sub.s $f12, $f10, $f6 /* 07E6C8 7F049B58 46021202 */ mul.s $f8, $f2, $f2 /* 07E6CC 7F049B5C 46082280 */ add.s $f10, $f4, $f8 /* 07E6D0 7F049B60 460C6182 */ mul.s $f6, $f12, $f12 /* 07E6D4 7F049B64 46065100 */ add.s $f4, $f10, $f6 /* 07E6D8 7F049B68 4604A03E */ c.le.s $f20, $f4 /* 07E6DC 7F049B6C 00000000 */ nop /* 07E6E0 7F049B70 45000033 */ bc1f .Ljp7F049C40 /* 07E6E4 7F049B74 00000000 */ nop /* 07E6E8 7F049B78 0FC2296B */ jal check_if_bond_is_invincible /* 07E6EC 7F049B7C 00000000 */ nop /* 07E6F0 7F049B80 54400030 */ bnezl $v0, .Ljp7F049C44 /* 07E6F4 7F049B84 8FB90120 */ lw $t9, 0x120($sp) /* 07E6F8 7F049B88 0C007E08 */ jal sqrtf /* 07E6FC 7F049B8C 4600A306 */ mov.s $f12, $f20 /* 07E700 7F049B90 3C014348 */ li $at, 0x43480000 # 200.000000 /* 07E704 7F049B94 44816000 */ mtc1 $at, $f12 /* 07E708 7F049B98 3C018005 */ lui $at, %hi(D_80052B74) # $at, 0x8005 /* 07E70C 7F049B9C C4282BA4 */ lwc1 $f8, %lo(D_80052B74)($at) /* 07E710 7F049BA0 3C018005 */ lui $at, %hi(jp_global_timer_delta) # $at, 0x8005 /* 07E714 7F049BA4 C42A83A8 */ lwc1 $f10, %lo(jp_global_timer_delta)($at) /* 07E718 7F049BA8 3C018003 */ lui $at, %hi(D_80030B1C) # $at, 0x8003 /* 07E71C 7F049BAC 4600603C */ c.lt.s $f12, $f0 /* 07E720 7F049BB0 460A4182 */ mul.s $f6, $f8, $f10 /* 07E724 7F049BB4 C4240B5C */ lwc1 $f4, %lo(D_80030B1C)($at) /* 07E728 7F049BB8 46043082 */ mul.s $f2, $f6, $f4 /* 07E72C 7F049BBC 45020005 */ bc1fl .Ljp7F049BD4 /* 07E730 7F049BC0 C60A00D4 */ lwc1 $f10, 0xd4($s0) /* 07E734 7F049BC4 46006203 */ div.s $f8, $f12, $f0 /* 07E738 7F049BC8 46081082 */ mul.s $f2, $f2, $f8 /* 07E73C 7F049BCC 00000000 */ nop /* 07E740 7F049BD0 C60A00D4 */ lwc1 $f10, 0xd4($s0) .Ljp7F049BD4: /* 07E744 7F049BD4 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E748 7F049BD8 44814000 */ mtc1 $at, $f8 /* 07E74C 7F049BDC 46025180 */ add.s $f6, $f10, $f2 /* 07E750 7F049BE0 E60600D4 */ swc1 $f6, 0xd4($s0) /* 07E754 7F049BE4 C60400D4 */ lwc1 $f4, 0xd4($s0) /* 07E758 7F049BE8 4604403E */ c.le.s $f8, $f4 /* 07E75C 7F049BEC 00000000 */ nop /* 07E760 7F049BF0 45020014 */ bc1fl .Ljp7F049C44 /* 07E764 7F049BF4 8FB90120 */ lw $t9, 0x120($sp) /* 07E768 7F049BF8 0FC17929 */ jal bondwalkGetItemDestructionAmount /* 07E76C 7F049BFC 2404000E */ li $a0, 14 /* 07E770 7F049C00 3C013E00 */ li $at, 0x3E000000 # 0.125000 /* 07E774 7F049C04 44815000 */ mtc1 $at, $f10 /* 07E778 7F049C08 3C018003 */ lui $at, %hi(D_80030B20) # $at, 0x8003 /* 07E77C 7F049C0C C4240B60 */ lwc1 $f4, %lo(D_80030B20)($at) /* 07E780 7F049C10 460A0182 */ mul.s $f6, $f0, $f10 /* 07E784 7F049C14 C60E0090 */ lwc1 $f14, 0x90($s0) /* 07E788 7F049C18 2406FFFF */ li $a2, -1 /* 07E78C 7F049C1C 24070001 */ li $a3, 1 /* 07E790 7F049C20 46043302 */ mul.s $f12, $f6, $f4 /* 07E794 7F049C24 0FC22955 */ jal sub_GAME_7F089E4C /* 07E798 7F049C28 00000000 */ nop /* 07E79C 7F049C2C 0FC2296B */ jal check_if_bond_is_invincible /* 07E7A0 7F049C30 E61600D4 */ swc1 $f22, 0xd4($s0) /* 07E7A4 7F049C34 50400003 */ beql $v0, $zero, .Ljp7F049C44 /* 07E7A8 7F049C38 8FB90120 */ lw $t9, 0x120($sp) /* 07E7AC 7F049C3C AFA00120 */ sw $zero, 0x120($sp) .Ljp7F049C40: /* 07E7B0 7F049C40 8FB90120 */ lw $t9, 0x120($sp) .Ljp7F049C44: /* 07E7B4 7F049C44 3C0141D0 */ li $at, 0x41D00000 # 26.000000 /* 07E7B8 7F049C48 44818000 */ mtc1 $at, $f16 /* 07E7BC 7F049C4C 1320000F */ beqz $t9, .Ljp7F049C8C /* 07E7C0 7F049C50 8FA50104 */ lw $a1, 0x104($sp) /* 07E7C4 7F049C54 8FA80110 */ lw $t0, 0x110($sp) /* 07E7C8 7F049C58 02202025 */ move $a0, $s1 /* 07E7CC 7F049C5C 24050001 */ li $a1, 1 /* 07E7D0 7F049C60 51000005 */ beql $t0, $zero, .Ljp7F049C78 /* 07E7D4 7F049C64 2404000E */ li $a0, 14 /* 07E7D8 7F049C68 44068000 */ mfc1 $a2, $f16 /* 07E7DC 7F049C6C 0FC2926F */ jal sub_GAME_7F0A3E1C /* 07E7E0 7F049C70 91070003 */ lbu $a3, 3($t0) /* 07E7E4 7F049C74 2404000E */ li $a0, 14 .Ljp7F049C78: /* 07E7E8 7F049C78 02202825 */ move $a1, $s1 /* 07E7EC 7F049C7C 0FC1932F */ jal recall_joy2_hits_edit_flag /* 07E7F0 7F049C80 2406FFFF */ li $a2, -1 /* 07E7F4 7F049C84 1000000B */ b .Ljp7F049CB4 /* 07E7F8 7F049C88 8FB80108 */ lw $t8, 0x108($sp) .Ljp7F049C8C: /* 07E7FC 7F049C8C C4A80008 */ lwc1 $f8, 8($a1) /* 07E800 7F049C90 2404000E */ li $a0, 14 /* 07E804 7F049C94 2406FFFF */ li $a2, -1 /* 07E808 7F049C98 E7A80114 */ swc1 $f8, 0x114($sp) /* 07E80C 7F049C9C C4AA000C */ lwc1 $f10, 0xc($a1) /* 07E810 7F049CA0 E7AA0118 */ swc1 $f10, 0x118($sp) /* 07E814 7F049CA4 C4A60010 */ lwc1 $f6, 0x10($a1) /* 07E818 7F049CA8 0FC19252 */ jal recall_joy2_hits_edit_detail_edit_flag /* 07E81C 7F049CAC E7A6011C */ swc1 $f6, 0x11c($sp) /* 07E820 7F049CB0 8FB80108 */ lw $t8, 0x108($sp) .Ljp7F049CB4: /* 07E824 7F049CB4 C7A40130 */ lwc1 $f4, 0x130($sp) /* 07E828 7F049CB8 53000085 */ beql $t8, $zero, .Ljp7F049ED0 /* 07E82C 7F049CBC 8E8E0008 */ lw $t6, 8($s4) /* 07E830 7F049CC0 8E0300CC */ lw $v1, 0xcc($s0) /* 07E834 7F049CC4 E4640004 */ swc1 $f4, 4($v1) /* 07E838 7F049CC8 C7A80134 */ lwc1 $f8, 0x134($sp) /* 07E83C 7F049CCC C4640004 */ lwc1 $f4, 4($v1) /* 07E840 7F049CD0 E4680008 */ swc1 $f8, 8($v1) /* 07E844 7F049CD4 C7AA0138 */ lwc1 $f10, 0x138($sp) /* 07E848 7F049CD8 E46A000C */ swc1 $f10, 0xc($v1) /* 07E84C 7F049CDC C7A60114 */ lwc1 $f6, 0x114($sp) /* 07E850 7F049CE0 46043201 */ sub.s $f8, $f6, $f4 /* 07E854 7F049CE4 C4660008 */ lwc1 $f6, 8($v1) /* 07E858 7F049CE8 E4680010 */ swc1 $f8, 0x10($v1) /* 07E85C 7F049CEC C7AA0118 */ lwc1 $f10, 0x118($sp) /* 07E860 7F049CF0 C4620010 */ lwc1 $f2, 0x10($v1) /* 07E864 7F049CF4 46065101 */ sub.s $f4, $f10, $f6 /* 07E868 7F049CF8 C46A000C */ lwc1 $f10, 0xc($v1) /* 07E86C 7F049CFC E4640014 */ swc1 $f4, 0x14($v1) /* 07E870 7F049D00 C7A8011C */ lwc1 $f8, 0x11c($sp) /* 07E874 7F049D04 46021102 */ mul.s $f4, $f2, $f2 /* 07E878 7F049D08 C46E0014 */ lwc1 $f14, 0x14($v1) /* 07E87C 7F049D0C 460A4181 */ sub.s $f6, $f8, $f10 /* 07E880 7F049D10 460E7202 */ mul.s $f8, $f14, $f14 /* 07E884 7F049D14 E4660018 */ swc1 $f6, 0x18($v1) /* 07E888 7F049D18 C4600018 */ lwc1 $f0, 0x18($v1) /* 07E88C 7F049D1C AFA30094 */ sw $v1, 0x94($sp) /* 07E890 7F049D20 46000182 */ mul.s $f6, $f0, $f0 /* 07E894 7F049D24 46082280 */ add.s $f10, $f4, $f8 /* 07E898 7F049D28 0C007E08 */ jal sqrtf /* 07E89C 7F049D2C 460A3300 */ add.s $f12, $f6, $f10 /* 07E8A0 7F049D30 3C018005 */ lui $at, %hi(D_80052B78) # $at, 0x8005 /* 07E8A4 7F049D34 C42E2BA8 */ lwc1 $f14, %lo(D_80052B78)($at) /* 07E8A8 7F049D38 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07E8AC 7F049D3C 44812000 */ mtc1 $at, $f4 /* 07E8B0 7F049D40 8FA30094 */ lw $v1, 0x94($sp) /* 07E8B4 7F049D44 4600703C */ c.lt.s $f14, $f0 /* 07E8B8 7F049D48 46000306 */ mov.s $f12, $f0 /* 07E8BC 7F049D4C 46002083 */ div.s $f2, $f4, $f0 /* 07E8C0 7F049D50 C4680010 */ lwc1 $f8, 0x10($v1) /* 07E8C4 7F049D54 C46A0014 */ lwc1 $f10, 0x14($v1) /* 07E8C8 7F049D58 3C0143FA */ li $at, 0x43FA0000 # 500.000000 /* 07E8CC 7F049D5C 44810000 */ mtc1 $at, $f0 /* 07E8D0 7F049D60 46024182 */ mul.s $f6, $f8, $f2 /* 07E8D4 7F049D64 C4680018 */ lwc1 $f8, 0x18($v1) /* 07E8D8 7F049D68 46025102 */ mul.s $f4, $f10, $f2 /* 07E8DC 7F049D6C E4660010 */ swc1 $f6, 0x10($v1) /* 07E8E0 7F049D70 46024182 */ mul.s $f6, $f8, $f2 /* 07E8E4 7F049D74 E4640014 */ swc1 $f4, 0x14($v1) /* 07E8E8 7F049D78 45000002 */ bc1f .Ljp7F049D84 /* 07E8EC 7F049D7C E4660018 */ swc1 $f6, 0x18($v1) /* 07E8F0 7F049D80 46007306 */ mov.s $f12, $f14 .Ljp7F049D84: /* 07E8F4 7F049D84 4600603C */ c.lt.s $f12, $f0 /* 07E8F8 7F049D88 2409000E */ li $t1, 14 /* 07E8FC 7F049D8C A0600000 */ sb $zero, ($v1) /* 07E900 7F049D90 A0690001 */ sb $t1, 1($v1) /* 07E904 7F049D94 45000002 */ bc1f .Ljp7F049DA0 /* 07E908 7F049D98 E46C001C */ swc1 $f12, 0x1c($v1) /* 07E90C 7F049D9C 46000306 */ mov.s $f12, $f0 .Ljp7F049DA0: /* 07E910 7F049DA0 806B0001 */ lb $t3, 1($v1) /* 07E914 7F049DA4 24010016 */ li $at, 22 /* 07E918 7F049DA8 15610026 */ bne $t3, $at, .Ljp7F049E44 /* 07E91C 7F049DAC 3C018005 */ lui $at, %hi(D_80052B7C) # $at, 0x8005 /* 07E920 7F049DB0 C4222BAC */ lwc1 $f2, %lo(D_80052B7C)($at) /* 07E924 7F049DB4 3C013E80 */ li $at, 0x3E800000 # 0.250000 /* 07E928 7F049DB8 44815000 */ mtc1 $at, $f10 /* 07E92C 7F049DBC 3C018005 */ lui $at, %hi(D_80052B80) # $at, 0x8005 /* 07E930 7F049DC0 460C5102 */ mul.s $f4, $f10, $f12 /* 07E934 7F049DC4 E4640020 */ swc1 $f4, 0x20($v1) /* 07E938 7F049DC8 C4282BB0 */ lwc1 $f8, %lo(D_80052B80)($at) /* 07E93C 7F049DCC 460C4002 */ mul.s $f0, $f8, $f12 /* 07E940 7F049DD0 4600103C */ c.lt.s $f2, $f0 /* 07E944 7F049DD4 E4600024 */ swc1 $f0, 0x24($v1) /* 07E948 7F049DD8 45020003 */ bc1fl .Ljp7F049DE8 /* 07E94C 7F049DDC AFA30094 */ sw $v1, 0x94($sp) /* 07E950 7F049DE0 E4620024 */ swc1 $f2, 0x24($v1) /* 07E954 7F049DE4 AFA30094 */ sw $v1, 0x94($sp) .Ljp7F049DE8: /* 07E958 7F049DE8 0C002918 */ jal get_random_value /* 07E95C 7F049DEC E7AC0098 */ swc1 $f12, 0x98($sp) /* 07E960 7F049DF0 44823000 */ mtc1 $v0, $f6 /* 07E964 7F049DF4 8FA30094 */ lw $v1, 0x94($sp) /* 07E968 7F049DF8 C7AC0098 */ lwc1 $f12, 0x98($sp) /* 07E96C 7F049DFC 04410005 */ bgez $v0, .Ljp7F049E14 /* 07E970 7F049E00 468032A0 */ cvt.s.w $f10, $f6 /* 07E974 7F049E04 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07E978 7F049E08 44812000 */ mtc1 $at, $f4 /* 07E97C 7F049E0C 00000000 */ nop /* 07E980 7F049E10 46045280 */ add.s $f10, $f10, $f4 .Ljp7F049E14: /* 07E984 7F049E14 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07E988 7F049E18 44814000 */ mtc1 $at, $f8 /* 07E98C 7F049E1C 3C018005 */ lui $at, %hi(D_80052B84) # $at, 0x8005 /* 07E990 7F049E20 C4242BB4 */ lwc1 $f4, %lo(D_80052B84)($at) /* 07E994 7F049E24 46085182 */ mul.s $f6, $f10, $f8 /* 07E998 7F049E28 3C018005 */ lui $at, %hi(D_80052B88) # $at, 0x8005 /* 07E99C 7F049E2C C4282BB8 */ lwc1 $f8, %lo(D_80052B88)($at) /* 07E9A0 7F049E30 46043282 */ mul.s $f10, $f6, $f4 /* 07E9A4 7F049E34 460A4181 */ sub.s $f6, $f8, $f10 /* 07E9A8 7F049E38 460C3102 */ mul.s $f4, $f6, $f12 /* 07E9AC 7F049E3C 10000023 */ b .Ljp7F049ECC /* 07E9B0 7F049E40 E4640028 */ swc1 $f4, 0x28($v1) .Ljp7F049E44: /* 07E9B4 7F049E44 3C018005 */ lui $at, %hi(D_80052B8C) # $at, 0x8005 /* 07E9B8 7F049E48 C4282BBC */ lwc1 $f8, %lo(D_80052B8C)($at) /* 07E9BC 7F049E4C 3C018005 */ lui $at, %hi(D_80052B90) # $at, 0x8005 /* 07E9C0 7F049E50 460C4002 */ mul.s $f0, $f8, $f12 /* 07E9C4 7F049E54 E4600020 */ swc1 $f0, 0x20($v1) /* 07E9C8 7F049E58 E4600024 */ swc1 $f0, 0x24($v1) /* 07E9CC 7F049E5C C42A2BC0 */ lwc1 $f10, %lo(D_80052B90)($at) /* 07E9D0 7F049E60 3C018005 */ lui $at, %hi(D_80052B94) # $at, 0x8005 /* 07E9D4 7F049E64 4600503C */ c.lt.s $f10, $f0 /* 07E9D8 7F049E68 00000000 */ nop /* 07E9DC 7F049E6C 45000003 */ bc1f .Ljp7F049E7C /* 07E9E0 7F049E70 00000000 */ nop /* 07E9E4 7F049E74 C4262BC4 */ lwc1 $f6, %lo(D_80052B94)($at) /* 07E9E8 7F049E78 E4660024 */ swc1 $f6, 0x24($v1) .Ljp7F049E7C: /* 07E9EC 7F049E7C 0C002918 */ jal get_random_value /* 07E9F0 7F049E80 AFA30094 */ sw $v1, 0x94($sp) /* 07E9F4 7F049E84 44822000 */ mtc1 $v0, $f4 /* 07E9F8 7F049E88 8FA30094 */ lw $v1, 0x94($sp) /* 07E9FC 7F049E8C 04410005 */ bgez $v0, .Ljp7F049EA4 /* 07EA00 7F049E90 46802220 */ cvt.s.w $f8, $f4 /* 07EA04 7F049E94 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EA08 7F049E98 44815000 */ mtc1 $at, $f10 /* 07EA0C 7F049E9C 00000000 */ nop /* 07EA10 7F049EA0 460A4200 */ add.s $f8, $f8, $f10 .Ljp7F049EA4: /* 07EA14 7F049EA4 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 07EA18 7F049EA8 44813000 */ mtc1 $at, $f6 /* 07EA1C 7F049EAC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07EA20 7F049EB0 44815000 */ mtc1 $at, $f10 /* 07EA24 7F049EB4 46064002 */ mul.s $f0, $f8, $f6 /* 07EA28 7F049EB8 C4660020 */ lwc1 $f6, 0x20($v1) /* 07EA2C 7F049EBC 46000100 */ add.s $f4, $f0, $f0 /* 07EA30 7F049EC0 460A2201 */ sub.s $f8, $f4, $f10 /* 07EA34 7F049EC4 46064102 */ mul.s $f4, $f8, $f6 /* 07EA38 7F049EC8 E4640028 */ swc1 $f4, 0x28($v1) .Ljp7F049ECC: /* 07EA3C 7F049ECC 8E8E0008 */ lw $t6, 8($s4) .Ljp7F049ED0: /* 07EA40 7F049ED0 8DC30008 */ lw $v1, 8($t6) /* 07EA44 7F049ED4 8C650014 */ lw $a1, 0x14($v1) /* 07EA48 7F049ED8 50A00008 */ beql $a1, $zero, .Ljp7F049EFC /* 07EA4C 7F049EDC 8C65001C */ lw $a1, 0x1c($v1) /* 07EA50 7F049EE0 0FC1B363 */ jal extract_id_from_object_structure_microcode /* 07EA54 7F049EE4 02802025 */ move $a0, $s4 /* 07EA58 7F049EE8 8FAA0140 */ lw $t2, 0x140($sp) /* 07EA5C 7F049EEC A44A0000 */ sh $t2, ($v0) /* 07EA60 7F049EF0 8E8F0008 */ lw $t7, 8($s4) /* 07EA64 7F049EF4 8DE30008 */ lw $v1, 8($t7) /* 07EA68 7F049EF8 8C65001C */ lw $a1, 0x1c($v1) .Ljp7F049EFC: /* 07EA6C 7F049EFC 10A00005 */ beqz $a1, .Ljp7F049F14 /* 07EA70 7F049F00 00000000 */ nop /* 07EA74 7F049F04 0FC1B363 */ jal extract_id_from_object_structure_microcode /* 07EA78 7F049F08 02802025 */ move $a0, $s4 /* 07EA7C 7F049F0C 8FAC013C */ lw $t4, 0x13c($sp) /* 07EA80 7F049F10 A44C0000 */ sh $t4, ($v0) .Ljp7F049F14: /* 07EA84 7F049F14 0FC1113A */ jal sub_GAME_7F044200 /* 07EA88 7F049F18 02602025 */ move $a0, $s3 /* 07EA8C 7F049F1C 8FAD0688 */ lw $t5, 0x688($sp) .Ljp7F049F20: /* 07EA90 7F049F20 24010005 */ li $at, 5 /* 07EA94 7F049F24 55A10003 */ bnel $t5, $at, .Ljp7F049F34 /* 07EA98 7F049F28 8FA20688 */ lw $v0, 0x688($sp) /* 07EA9C 7F049F2C AE600014 */ sw $zero, 0x14($s3) /* 07EAA0 7F049F30 8FA20688 */ lw $v0, 0x688($sp) .Ljp7F049F34: /* 07EAA4 7F049F34 8FBF0054 */ lw $ra, 0x54($sp) /* 07EAA8 7F049F38 D7B40030 */ ldc1 $f20, 0x30($sp) /* 07EAAC 7F049F3C D7B60038 */ ldc1 $f22, 0x38($sp) /* 07EAB0 7F049F40 8FB00040 */ lw $s0, 0x40($sp) /* 07EAB4 7F049F44 8FB10044 */ lw $s1, 0x44($sp) /* 07EAB8 7F049F48 8FB20048 */ lw $s2, 0x48($sp) /* 07EABC 7F049F4C 8FB3004C */ lw $s3, 0x4c($sp) /* 07EAC0 7F049F50 8FB40050 */ lw $s4, 0x50($sp) /* 07EAC4 7F049F54 03E00008 */ jr $ra /* 07EAC8 7F049F58 27BD06B0 */ addiu $sp, $sp, 0x6b0 ) #endif #endif #ifdef NONMATCHING void sub_GAME_7F049B58(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F049B58 /* 07E688 7F049B58 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 07E68C 7F049B5C AFBF0034 */ sw $ra, 0x34($sp) /* 07E690 7F049B60 AFB20020 */ sw $s2, 0x20($sp) /* 07E694 7F049B64 00809025 */ move $s2, $a0 /* 07E698 7F049B68 AFB60030 */ sw $s6, 0x30($sp) /* 07E69C 7F049B6C AFB5002C */ sw $s5, 0x2c($sp) /* 07E6A0 7F049B70 AFB40028 */ sw $s4, 0x28($sp) /* 07E6A4 7F049B74 AFB30024 */ sw $s3, 0x24($sp) /* 07E6A8 7F049B78 AFB1001C */ sw $s1, 0x1c($sp) /* 07E6AC 7F049B7C 0FC0E909 */ jal get_ptr_obj_pos_list_current_entry /* 07E6B0 7F049B80 AFB00018 */ sw $s0, 0x18($sp) /* 07E6B4 7F049B84 10400036 */ beqz $v0, .L7F049C60 /* 07E6B8 7F049B88 00408025 */ move $s0, $v0 /* 07E6BC 7F049B8C 24160006 */ li $s6, 6 /* 07E6C0 7F049B90 2415000D */ li $s5, 13 /* 07E6C4 7F049B94 24140001 */ li $s4, 1 /* 07E6C8 7F049B98 24130003 */ li $s3, 3 /* 07E6CC 7F049B9C 92020000 */ lbu $v0, ($s0) .L7F049BA0: /* 07E6D0 7F049BA0 02402025 */ move $a0, $s2 /* 07E6D4 7F049BA4 1662000B */ bne $s3, $v0, .L7F049BD4 /* 07E6D8 7F049BA8 00000000 */ nop /* 07E6DC 7F049BAC 8E110004 */ lw $s1, 4($s0) /* 07E6E0 7F049BB0 02803025 */ move $a2, $s4 /* 07E6E4 7F049BB4 0FC18786 */ jal sub_GAME_7F061E18 /* 07E6E8 7F049BB8 26250180 */ addiu $a1, $s1, 0x180 /* 07E6EC 7F049BBC 00402025 */ move $a0, $v0 /* 07E6F0 7F049BC0 262501AC */ addiu $a1, $s1, 0x1ac /* 07E6F4 7F049BC4 0FC18786 */ jal sub_GAME_7F061E18 /* 07E6F8 7F049BC8 02803025 */ move $a2, $s4 /* 07E6FC 7F049BCC 10000021 */ b .L7F049C54 /* 07E700 7F049BD0 00409025 */ move $s2, $v0 .L7F049BD4: /* 07E704 7F049BD4 1682000B */ bne $s4, $v0, .L7F049C04 /* 07E708 7F049BD8 00000000 */ nop /* 07E70C 7F049BDC 8E030004 */ lw $v1, 4($s0) /* 07E710 7F049BE0 02402025 */ move $a0, $s2 /* 07E714 7F049BE4 02803025 */ move $a2, $s4 /* 07E718 7F049BE8 906E0003 */ lbu $t6, 3($v1) /* 07E71C 7F049BEC 56AE001A */ bnel $s5, $t6, .L7F049C58 /* 07E720 7F049BF0 8E100024 */ lw $s0, 0x24($s0) /* 07E724 7F049BF4 0FC18786 */ jal sub_GAME_7F061E18 /* 07E728 7F049BF8 8C6500CC */ lw $a1, 0xcc($v1) /* 07E72C 7F049BFC 10000015 */ b .L7F049C54 /* 07E730 7F049C00 00409025 */ move $s2, $v0 .L7F049C04: /* 07E734 7F049C04 56C20014 */ bnel $s6, $v0, .L7F049C58 /* 07E738 7F049C08 8E100024 */ lw $s0, 0x24($s0) /* 07E73C 7F049C0C 8E0F0004 */ lw $t7, 4($s0) /* 07E740 7F049C10 51E00011 */ beql $t7, $zero, .L7F049C58 /* 07E744 7F049C14 8E100024 */ lw $s0, 0x24($s0) /* 07E748 7F049C18 0FC26C57 */ jal sub_GAME_7F09B15C /* 07E74C 7F049C1C 02002025 */ move $a0, $s0 /* 07E750 7F049C20 0FC26C54 */ jal get_cur_playernum /* 07E754 7F049C24 00408825 */ move $s1, $v0 /* 07E758 7F049C28 1051000A */ beq $v0, $s1, .L7F049C54 /* 07E75C 7F049C2C 02402025 */ move $a0, $s2 /* 07E760 7F049C30 8E110004 */ lw $s1, 4($s0) /* 07E764 7F049C34 02803025 */ move $a2, $s4 /* 07E768 7F049C38 0FC18786 */ jal sub_GAME_7F061E18 /* 07E76C 7F049C3C 26250180 */ addiu $a1, $s1, 0x180 /* 07E770 7F049C40 00402025 */ move $a0, $v0 /* 07E774 7F049C44 262501AC */ addiu $a1, $s1, 0x1ac /* 07E778 7F049C48 0FC18786 */ jal sub_GAME_7F061E18 /* 07E77C 7F049C4C 02803025 */ move $a2, $s4 /* 07E780 7F049C50 00409025 */ move $s2, $v0 .L7F049C54: /* 07E784 7F049C54 8E100024 */ lw $s0, 0x24($s0) .L7F049C58: /* 07E788 7F049C58 5600FFD1 */ bnezl $s0, .L7F049BA0 /* 07E78C 7F049C5C 92020000 */ lbu $v0, ($s0) .L7F049C60: /* 07E790 7F049C60 8FBF0034 */ lw $ra, 0x34($sp) /* 07E794 7F049C64 02401025 */ move $v0, $s2 /* 07E798 7F049C68 8FB20020 */ lw $s2, 0x20($sp) /* 07E79C 7F049C6C 8FB00018 */ lw $s0, 0x18($sp) /* 07E7A0 7F049C70 8FB1001C */ lw $s1, 0x1c($sp) /* 07E7A4 7F049C74 8FB30024 */ lw $s3, 0x24($sp) /* 07E7A8 7F049C78 8FB40028 */ lw $s4, 0x28($sp) /* 07E7AC 7F049C7C 8FB5002C */ lw $s5, 0x2c($sp) /* 07E7B0 7F049C80 8FB60030 */ lw $s6, 0x30($sp) /* 07E7B4 7F049C84 03E00008 */ jr $ra /* 07E7B8 7F049C88 27BD0038 */ addiu $sp, $sp, 0x38 ) #endif #ifdef NONMATCHING void save_ptr_monitor_ani_code_to_obj_ani_slot(void) { } #else GLOBAL_ASM( .text glabel save_ptr_monitor_ani_code_to_obj_ani_slot /* 07E7BC 7F049C8C AC850000 */ sw $a1, ($a0) /* 07E7C0 7F049C90 03E00008 */ jr $ra /* 07E7C4 7F049C94 A4800004 */ sh $zero, 4($a0) ) #endif #ifdef NONMATCHING void set_ptr_monitor_img_to_obj_ani_slot(void) { } #else GLOBAL_ASM( .late_rodata /*D:80052B98*/ glabel jpt_80052B98 .word def_7F049CC0 .word .L7F049CC8 .word .L7F049CD4 .word .L7F049CE0 .word .L7F049CEC .word .L7F049CF8 .word .L7F049D04 .word .L7F049D10 .word .L7F049D1C .word .L7F049D28 .word .L7F049D34 .word .L7F049D40 .word .L7F049D4C .word .L7F049D58 .word .L7F049D64 .word .L7F049D70 .word .L7F049D7C .word .L7F049D88 .word .L7F049D94 .word .L7F049DA0 .word .L7F049DAC .word .L7F049DB8 .word .L7F049DC4 .word .L7F049DD0 .word .L7F049DDC .word .L7F049DE8 .word .L7F049DF4 .word .L7F049E00 .word .L7F049E0C .word .L7F049E18 .word .L7F049E24 .word .L7F049E30 .word .L7F049E3C .word .L7F049E48 .word .L7F049E54 .word .L7F049E60 .word .L7F049E6C .word .L7F049E78 .word .L7F049E84 .word .L7F049E90 .word .L7F049E9C .word .L7F049EA8 .word .L7F049EB4 .word .L7F049EC0 .word .L7F049ECC .word .L7F049ED8 .word .L7F049EE4 .word .L7F049EF0 .word .L7F049EFC .word .L7F049F08 .word .L7F049F14 .word .L7F049F20 .text glabel set_ptr_monitor_img_to_obj_ani_slot /* 07E7C8 7F049C98 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 07E7CC 7F049C9C 3C068003 */ lui $a2, %hi(monitor_animation_microcode) /* 07E7D0 7F049CA0 2CA10034 */ sltiu $at, $a1, 0x34 /* 07E7D4 7F049CA4 AFBF0014 */ sw $ra, 0x14($sp) /* 07E7D8 7F049CA8 1020009F */ beqz $at, .L7F049F28 /* 07E7DC 7F049CAC 24C60B74 */ addiu $a2, %lo(monitor_animation_microcode) # addiu $a2, $a2, 0xb74 /* 07E7E0 7F049CB0 00057080 */ sll $t6, $a1, 2 /* 07E7E4 7F049CB4 3C018005 */ lui $at, %hi(jpt_80052B98) /* 07E7E8 7F049CB8 002E0821 */ addu $at, $at, $t6 /* 07E7EC 7F049CBC 8C2E2B98 */ lw $t6, %lo(jpt_80052B98)($at) /* 07E7F0 7F049CC0 01C00008 */ jr $t6 /* 07E7F4 7F049CC4 00000000 */ nop .L7F049CC8: /* 07E7F8 7F049CC8 3C068003 */ lui $a2, %hi(D_80030C00) /* 07E7FC 7F049CCC 10000096 */ b .L7F049F28 /* 07E800 7F049CD0 24C60C00 */ addiu $a2, %lo(D_80030C00) # addiu $a2, $a2, 0xc00 .L7F049CD4: /* 07E804 7F049CD4 3C068003 */ lui $a2, %hi(D_80030E24) /* 07E808 7F049CD8 10000093 */ b .L7F049F28 /* 07E80C 7F049CDC 24C60E24 */ addiu $a2, %lo(D_80030E24) # addiu $a2, $a2, 0xe24 .L7F049CE0: /* 07E810 7F049CE0 3C068003 */ lui $a2, %hi(D_80030F44) /* 07E814 7F049CE4 10000090 */ b .L7F049F28 /* 07E818 7F049CE8 24C60F44 */ addiu $a2, %lo(D_80030F44) # addiu $a2, $a2, 0xf44 .L7F049CEC: /* 07E81C 7F049CEC 3C068003 */ lui $a2, %hi(D_80031018) /* 07E820 7F049CF0 1000008D */ b .L7F049F28 /* 07E824 7F049CF4 24C61018 */ addiu $a2, %lo(D_80031018) # addiu $a2, $a2, 0x1018 .L7F049CF8: /* 07E828 7F049CF8 3C068003 */ lui $a2, %hi(D_80031074) /* 07E82C 7F049CFC 1000008A */ b .L7F049F28 /* 07E830 7F049D00 24C61074 */ addiu $a2, %lo(D_80031074) # addiu $a2, $a2, 0x1074 .L7F049D04: /* 07E834 7F049D04 3C068003 */ lui $a2, %hi(D_800310F0) /* 07E838 7F049D08 10000087 */ b .L7F049F28 /* 07E83C 7F049D0C 24C610F0 */ addiu $a2, %lo(D_800310F0) # addiu $a2, $a2, 0x10f0 .L7F049D10: /* 07E840 7F049D10 3C068003 */ lui $a2, %hi(D_8003118C) /* 07E844 7F049D14 10000084 */ b .L7F049F28 /* 07E848 7F049D18 24C6118C */ addiu $a2, %lo(D_8003118C) # addiu $a2, $a2, 0x118c .L7F049D1C: /* 07E84C 7F049D1C 3C068003 */ lui $a2, %hi(D_8003121C) /* 07E850 7F049D20 10000081 */ b .L7F049F28 /* 07E854 7F049D24 24C6121C */ addiu $a2, %lo(D_8003121C) # addiu $a2, $a2, 0x121c .L7F049D28: /* 07E858 7F049D28 3C068003 */ lui $a2, %hi(D_80031248) /* 07E85C 7F049D2C 1000007E */ b .L7F049F28 /* 07E860 7F049D30 24C61248 */ addiu $a2, %lo(D_80031248) # addiu $a2, $a2, 0x1248 .L7F049D34: /* 07E864 7F049D34 3C068003 */ lui $a2, %hi(D_80031274) /* 07E868 7F049D38 1000007B */ b .L7F049F28 /* 07E86C 7F049D3C 24C61274 */ addiu $a2, %lo(D_80031274) # addiu $a2, $a2, 0x1274 .L7F049D40: /* 07E870 7F049D40 3C068003 */ lui $a2, %hi(D_800312F4) /* 07E874 7F049D44 10000078 */ b .L7F049F28 /* 07E878 7F049D48 24C612F4 */ addiu $a2, %lo(D_800312F4) # addiu $a2, $a2, 0x12f4 .L7F049D4C: /* 07E87C 7F049D4C 3C068003 */ lui $a2, %hi(D_80031310) /* 07E880 7F049D50 10000075 */ b .L7F049F28 /* 07E884 7F049D54 24C61310 */ addiu $a2, %lo(D_80031310) # addiu $a2, $a2, 0x1310 .L7F049D58: /* 07E888 7F049D58 3C068003 */ lui $a2, %hi(D_80031490) /* 07E88C 7F049D5C 10000072 */ b .L7F049F28 /* 07E890 7F049D60 24C61490 */ addiu $a2, %lo(D_80031490) # addiu $a2, $a2, 0x1490 .L7F049D64: /* 07E894 7F049D64 3C068003 */ lui $a2, %hi(D_800314F8) /* 07E898 7F049D68 1000006F */ b .L7F049F28 /* 07E89C 7F049D6C 24C614F8 */ addiu $a2, %lo(D_800314F8) # addiu $a2, $a2, 0x14f8 .L7F049D70: /* 07E8A0 7F049D70 3C068003 */ lui $a2, %hi(D_80030EC8) /* 07E8A4 7F049D74 1000006C */ b .L7F049F28 /* 07E8A8 7F049D78 24C60EC8 */ addiu $a2, %lo(D_80030EC8) # addiu $a2, $a2, 0xec8 .L7F049D7C: /* 07E8AC 7F049D7C 3C068003 */ lui $a2, %hi(D_80031360) /* 07E8B0 7F049D80 10000069 */ b .L7F049F28 /* 07E8B4 7F049D84 24C61360 */ addiu $a2, %lo(D_80031360) # addiu $a2, $a2, 0x1360 .L7F049D88: /* 07E8B8 7F049D88 3C068003 */ lui $a2, %hi(D_8003156C) /* 07E8BC 7F049D8C 10000066 */ b .L7F049F28 /* 07E8C0 7F049D90 24C6156C */ addiu $a2, %lo(D_8003156C) # addiu $a2, $a2, 0x156c .L7F049D94: /* 07E8C4 7F049D94 3C068003 */ lui $a2, %hi(D_800315CC) /* 07E8C8 7F049D98 10000063 */ b .L7F049F28 /* 07E8CC 7F049D9C 24C615CC */ addiu $a2, %lo(D_800315CC) # addiu $a2, $a2, 0x15cc .L7F049DA0: /* 07E8D0 7F049DA0 3C068003 */ lui $a2, %hi(D_80031848) /* 07E8D4 7F049DA4 10000060 */ b .L7F049F28 /* 07E8D8 7F049DA8 24C61848 */ addiu $a2, %lo(D_80031848) # addiu $a2, $a2, 0x1848 .L7F049DAC: /* 07E8DC 7F049DAC 3C068003 */ lui $a2, %hi(D_80031898) /* 07E8E0 7F049DB0 1000005D */ b .L7F049F28 /* 07E8E4 7F049DB4 24C61898 */ addiu $a2, %lo(D_80031898) # addiu $a2, $a2, 0x1898 .L7F049DB8: /* 07E8E8 7F049DB8 3C068003 */ lui $a2, %hi(D_800318B8) /* 07E8EC 7F049DBC 1000005A */ b .L7F049F28 /* 07E8F0 7F049DC0 24C618B8 */ addiu $a2, %lo(D_800318B8) # addiu $a2, $a2, 0x18b8 .L7F049DC4: /* 07E8F4 7F049DC4 3C068003 */ lui $a2, %hi(D_8003191C) /* 07E8F8 7F049DC8 10000057 */ b .L7F049F28 /* 07E8FC 7F049DCC 24C6191C */ addiu $a2, %lo(D_8003191C) # addiu $a2, $a2, 0x191c .L7F049DD0: /* 07E900 7F049DD0 3C068003 */ lui $a2, %hi(D_80031950) /* 07E904 7F049DD4 10000054 */ b .L7F049F28 /* 07E908 7F049DD8 24C61950 */ addiu $a2, %lo(D_80031950) # addiu $a2, $a2, 0x1950 .L7F049DDC: /* 07E90C 7F049DDC 3C068003 */ lui $a2, %hi(D_800319D4) /* 07E910 7F049DE0 10000051 */ b .L7F049F28 /* 07E914 7F049DE4 24C619D4 */ addiu $a2, %lo(D_800319D4) # addiu $a2, $a2, 0x19d4 .L7F049DE8: /* 07E918 7F049DE8 3C068003 */ lui $a2, %hi(D_800319F0) /* 07E91C 7F049DEC 1000004E */ b .L7F049F28 /* 07E920 7F049DF0 24C619F0 */ addiu $a2, %lo(D_800319F0) # addiu $a2, $a2, 0x19f0 .L7F049DF4: /* 07E924 7F049DF4 3C068003 */ lui $a2, %hi(D_80031A0C) /* 07E928 7F049DF8 1000004B */ b .L7F049F28 /* 07E92C 7F049DFC 24C61A0C */ addiu $a2, %lo(D_80031A0C) # addiu $a2, $a2, 0x1a0c .L7F049E00: /* 07E930 7F049E00 3C068003 */ lui $a2, %hi(D_80031A28) /* 07E934 7F049E04 10000048 */ b .L7F049F28 /* 07E938 7F049E08 24C61A28 */ addiu $a2, %lo(D_80031A28) # addiu $a2, $a2, 0x1a28 .L7F049E0C: /* 07E93C 7F049E0C 3C068003 */ lui $a2, %hi(D_80031A44) /* 07E940 7F049E10 10000045 */ b .L7F049F28 /* 07E944 7F049E14 24C61A44 */ addiu $a2, %lo(D_80031A44) # addiu $a2, $a2, 0x1a44 .L7F049E18: /* 07E948 7F049E18 3C068003 */ lui $a2, %hi(D_80031A60) /* 07E94C 7F049E1C 10000042 */ b .L7F049F28 /* 07E950 7F049E20 24C61A60 */ addiu $a2, %lo(D_80031A60) # addiu $a2, $a2, 0x1a60 .L7F049E24: /* 07E954 7F049E24 3C068003 */ lui $a2, %hi(D_80031A7C) /* 07E958 7F049E28 1000003F */ b .L7F049F28 /* 07E95C 7F049E2C 24C61A7C */ addiu $a2, %lo(D_80031A7C) # addiu $a2, $a2, 0x1a7c .L7F049E30: /* 07E960 7F049E30 3C068003 */ lui $a2, %hi(D_80031A98) /* 07E964 7F049E34 1000003C */ b .L7F049F28 /* 07E968 7F049E38 24C61A98 */ addiu $a2, %lo(D_80031A98) # addiu $a2, $a2, 0x1a98 .L7F049E3C: /* 07E96C 7F049E3C 3C068003 */ lui $a2, %hi(D_80031AB4) /* 07E970 7F049E40 10000039 */ b .L7F049F28 /* 07E974 7F049E44 24C61AB4 */ addiu $a2, %lo(D_80031AB4) # addiu $a2, $a2, 0x1ab4 .L7F049E48: /* 07E978 7F049E48 3C068003 */ lui $a2, %hi(D_80031AD0) /* 07E97C 7F049E4C 10000036 */ b .L7F049F28 /* 07E980 7F049E50 24C61AD0 */ addiu $a2, %lo(D_80031AD0) # addiu $a2, $a2, 0x1ad0 .L7F049E54: /* 07E984 7F049E54 3C068003 */ lui $a2, %hi(D_80031AEC) /* 07E988 7F049E58 10000033 */ b .L7F049F28 /* 07E98C 7F049E5C 24C61AEC */ addiu $a2, %lo(D_80031AEC) # addiu $a2, $a2, 0x1aec .L7F049E60: /* 07E990 7F049E60 3C068003 */ lui $a2, %hi(D_80031B24) /* 07E994 7F049E64 10000030 */ b .L7F049F28 /* 07E998 7F049E68 24C61B24 */ addiu $a2, %lo(D_80031B24) # addiu $a2, $a2, 0x1b24 .L7F049E6C: /* 07E99C 7F049E6C 3C068003 */ lui $a2, %hi(D_80031B38) /* 07E9A0 7F049E70 1000002D */ b .L7F049F28 /* 07E9A4 7F049E74 24C61B38 */ addiu $a2, %lo(D_80031B38) # addiu $a2, $a2, 0x1b38 .L7F049E78: /* 07E9A8 7F049E78 3C068003 */ lui $a2, %hi(D_80031B4C) /* 07E9AC 7F049E7C 1000002A */ b .L7F049F28 /* 07E9B0 7F049E80 24C61B4C */ addiu $a2, %lo(D_80031B4C) # addiu $a2, $a2, 0x1b4c .L7F049E84: /* 07E9B4 7F049E84 3C068003 */ lui $a2, %hi(D_80031B60) /* 07E9B8 7F049E88 10000027 */ b .L7F049F28 /* 07E9BC 7F049E8C 24C61B60 */ addiu $a2, %lo(D_80031B60) # addiu $a2, $a2, 0x1b60 .L7F049E90: /* 07E9C0 7F049E90 3C068003 */ lui $a2, %hi(D_80031BB4) /* 07E9C4 7F049E94 10000024 */ b .L7F049F28 /* 07E9C8 7F049E98 24C61BB4 */ addiu $a2, %lo(D_80031BB4) # addiu $a2, $a2, 0x1bb4 .L7F049E9C: /* 07E9CC 7F049E9C 3C068003 */ lui $a2, %hi(D_80031BD0) /* 07E9D0 7F049EA0 10000021 */ b .L7F049F28 /* 07E9D4 7F049EA4 24C61BD0 */ addiu $a2, %lo(D_80031BD0) # addiu $a2, $a2, 0x1bd0 .L7F049EA8: /* 07E9D8 7F049EA8 3C068003 */ lui $a2, %hi(D_80031BEC) /* 07E9DC 7F049EAC 1000001E */ b .L7F049F28 /* 07E9E0 7F049EB0 24C61BEC */ addiu $a2, %lo(D_80031BEC) # addiu $a2, $a2, 0x1bec .L7F049EB4: /* 07E9E4 7F049EB4 3C068003 */ lui $a2, %hi(D_80031C08) /* 07E9E8 7F049EB8 1000001B */ b .L7F049F28 /* 07E9EC 7F049EBC 24C61C08 */ addiu $a2, %lo(D_80031C08) # addiu $a2, $a2, 0x1c08 .L7F049EC0: /* 07E9F0 7F049EC0 3C068003 */ lui $a2, %hi(D_80031C80) /* 07E9F4 7F049EC4 10000018 */ b .L7F049F28 /* 07E9F8 7F049EC8 24C61C80 */ addiu $a2, %lo(D_80031C80) # addiu $a2, $a2, 0x1c80 .L7F049ECC: /* 07E9FC 7F049ECC 3C068003 */ lui $a2, %hi(D_80031D30) /* 07EA00 7F049ED0 10000015 */ b .L7F049F28 /* 07EA04 7F049ED4 24C61D30 */ addiu $a2, %lo(D_80031D30) # addiu $a2, $a2, 0x1d30 .L7F049ED8: /* 07EA08 7F049ED8 3C068003 */ lui $a2, %hi(D_80031D58) /* 07EA0C 7F049EDC 10000012 */ b .L7F049F28 /* 07EA10 7F049EE0 24C61D58 */ addiu $a2, %lo(D_80031D58) # addiu $a2, $a2, 0x1d58 .L7F049EE4: /* 07EA14 7F049EE4 3C068003 */ lui $a2, %hi(D_80031DA8) /* 07EA18 7F049EE8 1000000F */ b .L7F049F28 /* 07EA1C 7F049EEC 24C61DA8 */ addiu $a2, %lo(D_80031DA8) # addiu $a2, $a2, 0x1da8 .L7F049EF0: /* 07EA20 7F049EF0 3C068003 */ lui $a2, %hi(D_80031DF4) /* 07EA24 7F049EF4 1000000C */ b .L7F049F28 /* 07EA28 7F049EF8 24C61DF4 */ addiu $a2, %lo(D_80031DF4) # addiu $a2, $a2, 0x1df4 .L7F049EFC: /* 07EA2C 7F049EFC 3C068003 */ lui $a2, %hi(D_80031E40) /* 07EA30 7F049F00 10000009 */ b .L7F049F28 /* 07EA34 7F049F04 24C61E40 */ addiu $a2, %lo(D_80031E40) # addiu $a2, $a2, 0x1e40 .L7F049F08: /* 07EA38 7F049F08 3C068003 */ lui $a2, %hi(D_80031E78) /* 07EA3C 7F049F0C 10000006 */ b .L7F049F28 /* 07EA40 7F049F10 24C61E78 */ addiu $a2, %lo(D_80031E78) # addiu $a2, $a2, 0x1e78 .L7F049F14: /* 07EA44 7F049F14 3C068003 */ lui $a2, %hi(D_80031EB0) /* 07EA48 7F049F18 10000003 */ b .L7F049F28 /* 07EA4C 7F049F1C 24C61EB0 */ addiu $a2, %lo(D_80031EB0) # addiu $a2, $a2, 0x1eb0 .L7F049F20: /* 07EA50 7F049F20 3C068003 */ lui $a2, %hi(D_80031EE8) /* 07EA54 7F049F24 24C61EE8 */ addiu $a2, %lo(D_80031EE8) # addiu $a2, $a2, 0x1ee8 def_7F049CC0: .L7F049F28: /* 07EA58 7F049F28 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 07EA5C 7F049F2C 00C02825 */ move $a1, $a2 /* 07EA60 7F049F30 8FBF0014 */ lw $ra, 0x14($sp) /* 07EA64 7F049F34 27BD0018 */ addiu $sp, $sp, 0x18 /* 07EA68 7F049F38 03E00008 */ jr $ra /* 07EA6C 7F049F3C 00000000 */ nop ) #endif #ifdef NONMATCHING void save_img_index_to_obj_ani_slot(void) { } #else GLOBAL_ASM( .text glabel save_img_index_to_obj_ani_slot /* 07EA70 7F049F40 03E00008 */ jr $ra /* 07EA74 7F049F44 AC850008 */ sw $a1, 8($a0) ) #endif #ifdef NONMATCHING void process_monitor_animation_microcode(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata glabel D_80052C68 .word 0x40c90fdb /*6.2831855*/ /*D:80052C6C*/ glabel jpt_80052C6C .word command00_reset_scroll_shift .word command01_horizontal_scroll .word command02_vertical_scroll .word command03_horizontal_pos .word command04_vertical_pos .word command05_zoomx .word command06_zoomy .word command07_use_image_from_global_monitor_table .word command08_halt_processing_for_time .word command09_jump .word command0A_jump_conditional .word command0B_restart .word command0C_break .word command0D_colour_transition .word command0E_set_rotation .word command0F_rotate glabel D_80052CAC .word 0x3fc90fdb /*1.5707964*/ glabel D_80052CB0 .word 0x3fb50481 /*1.4141999*/ glabel D_80052CB4 .word 0x3f59999a /*0.85000002*/ glabel D_80052CB8 .word 0x3e19999a /*0.15000001*/ glabel D_80052CBC .word 0x3e19999a /*0.15000001*/ glabel D_80052CC0 .word 0x3f666666 /*0.89999998*/ .text glabel process_monitor_animation_microcode /* 07EA78 7F049F48 27BDFF50 */ addiu $sp, $sp, -0xb0 /* 07EA7C 7F049F4C AFB10044 */ sw $s1, 0x44($sp) /* 07EA80 7F049F50 AFB00040 */ sw $s0, 0x40($sp) /* 07EA84 7F049F54 00C08025 */ move $s0, $a2 /* 07EA88 7F049F58 00A08825 */ move $s1, $a1 /* 07EA8C 7F049F5C AFBF004C */ sw $ra, 0x4c($sp) /* 07EA90 7F049F60 AFB20048 */ sw $s2, 0x48($sp) /* 07EA94 7F049F64 F7BA0038 */ sdc1 $f26, 0x38($sp) /* 07EA98 7F049F68 F7B80030 */ sdc1 $f24, 0x30($sp) /* 07EA9C 7F049F6C F7B60028 */ sdc1 $f22, 0x28($sp) /* 07EAA0 7F049F70 F7B40020 */ sdc1 $f20, 0x20($sp) /* 07EAA4 7F049F74 AFA400B0 */ sw $a0, 0xb0($sp) /* 07EAA8 7F049F78 10A0031E */ beqz $a1, .L7F04ABF4 /* 07EAAC 7F049F7C AFA700BC */ sw $a3, 0xbc($sp) /* 07EAB0 7F049F80 94AE0000 */ lhu $t6, ($a1) /* 07EAB4 7F049F84 24010018 */ li $at, 24 /* 07EAB8 7F049F88 31CF00FF */ andi $t7, $t6, 0xff /* 07EABC 7F049F8C 55E1031A */ bnel $t7, $at, .L7F04ABF8 /* 07EAC0 7F049F90 8FBF004C */ lw $ra, 0x4c($sp) /* 07EAC4 7F049F94 0FC2F5B1 */ jal sub_GAME_7F0BD6C4 /* 07EAC8 7F049F98 24040004 */ li $a0, 4 /* 07EACC 7F049F9C 8FB800BC */ lw $t8, 0xbc($sp) /* 07EAD0 7F049FA0 00409025 */ move $s2, $v0 /* 07EAD4 7F049FA4 8FA400B0 */ lw $a0, 0xb0($sp) /* 07EAD8 7F049FA8 27190008 */ addiu $t9, $t8, 8 /* 07EADC 7F049FAC AFB900BC */ sw $t9, 0xbc($sp) /* 07EAE0 7F049FB0 AFB800A8 */ sw $t8, 0xa8($sp) /* 07EAE4 7F049FB4 8E280004 */ lw $t0, 4($s1) /* 07EAE8 7F049FB8 02202825 */ move $a1, $s1 /* 07EAEC 7F049FBC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07EAF0 7F049FC0 AFA800A4 */ sw $t0, 0xa4($sp) /* 07EAF4 7F049FC4 3C018005 */ lui $at, %hi(D_80052C68) /* 07EAF8 7F049FC8 C43A2C68 */ lwc1 $f26, %lo(D_80052C68)($at) /* 07EAFC 7F049FCC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07EB00 7F049FD0 4481C000 */ mtc1 $at, $f24 /* 07EB04 7F049FD4 3C013A80 */ li $at, 0x3A800000 # 0.000977 /* 07EB08 7F049FD8 4481B000 */ mtc1 $at, $f22 /* 07EB0C 7F049FDC 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EB10 7F049FE0 44811000 */ mtc1 $at, $f2 /* 07EB14 7F049FE4 4480A000 */ mtc1 $zero, $f20 /* 07EB18 7F049FE8 AFA200A0 */ sw $v0, 0xa0($sp) /* 07EB1C 7F049FEC 00008825 */ move $s1, $zero /* 07EB20 7F049FF0 96020004 */ lhu $v0, 4($s0) .L7F049FF4: /* 07EB24 7F049FF4 8E090000 */ lw $t1, ($s0) /* 07EB28 7F049FF8 00025080 */ sll $t2, $v0, 2 /* 07EB2C 7F049FFC 012A1821 */ addu $v1, $t1, $t2 /* 07EB30 7F04A000 8C6B0000 */ lw $t3, ($v1) /* 07EB34 7F04A004 2D610010 */ sltiu $at, $t3, 0x10 /* 07EB38 7F04A008 10200117 */ beqz $at, .L7F04A468 /* 07EB3C 7F04A00C 000B5880 */ sll $t3, $t3, 2 /* 07EB40 7F04A010 3C018005 */ lui $at, %hi(jpt_80052C6C) /* 07EB44 7F04A014 002B0821 */ addu $at, $at, $t3 /* 07EB48 7F04A018 8C2B2C6C */ lw $t3, %lo(jpt_80052C6C)($at) /* 07EB4C 7F04A01C 01600008 */ jr $t3 /* 07EB50 7F04A020 00000000 */ nop command00_reset_scroll_shift: /* 07EB54 7F04A024 244C0001 */ addiu $t4, $v0, 1 /* 07EB58 7F04A028 E6140040 */ swc1 $f20, 0x40($s0) /* 07EB5C 7F04A02C E6140054 */ swc1 $f20, 0x54($s0) /* 07EB60 7F04A030 1000010D */ b .L7F04A468 /* 07EB64 7F04A034 A60C0004 */ sh $t4, 4($s0) command01_horizontal_scroll: /* 07EB68 7F04A038 E614003C */ swc1 $f20, 0x3c($s0) /* 07EB6C 7F04A03C 8C6D0008 */ lw $t5, 8($v1) /* 07EB70 7F04A040 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EB74 7F04A044 448D2000 */ mtc1 $t5, $f4 /* 07EB78 7F04A048 05A10004 */ bgez $t5, .L7F04A05C /* 07EB7C 7F04A04C 468021A0 */ cvt.s.w $f6, $f4 /* 07EB80 7F04A050 44814000 */ mtc1 $at, $f8 /* 07EB84 7F04A054 00000000 */ nop /* 07EB88 7F04A058 46083180 */ add.s $f6, $f6, $f8 .L7F04A05C: /* 07EB8C 7F04A05C 4606C283 */ div.s $f10, $f24, $f6 /* 07EB90 7F04A060 C6000038 */ lwc1 $f0, 0x38($s0) /* 07EB94 7F04A064 244F0003 */ addiu $t7, $v0, 3 /* 07EB98 7F04A068 E6000044 */ swc1 $f0, 0x44($s0) /* 07EB9C 7F04A06C E60A0040 */ swc1 $f10, 0x40($s0) /* 07EBA0 7F04A070 8C6E0004 */ lw $t6, 4($v1) /* 07EBA4 7F04A074 A60F0004 */ sh $t7, 4($s0) /* 07EBA8 7F04A078 448E9000 */ mtc1 $t6, $f18 /* 07EBAC 7F04A07C 00000000 */ nop /* 07EBB0 7F04A080 46809120 */ cvt.s.w $f4, $f18 /* 07EBB4 7F04A084 46162202 */ mul.s $f8, $f4, $f22 /* 07EBB8 7F04A088 46080180 */ add.s $f6, $f0, $f8 /* 07EBBC 7F04A08C 100000F6 */ b .L7F04A468 /* 07EBC0 7F04A090 E6060048 */ swc1 $f6, 0x48($s0) command02_vertical_scroll: /* 07EBC4 7F04A094 E6140050 */ swc1 $f20, 0x50($s0) /* 07EBC8 7F04A098 8C780008 */ lw $t8, 8($v1) /* 07EBCC 7F04A09C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EBD0 7F04A0A0 44985000 */ mtc1 $t8, $f10 /* 07EBD4 7F04A0A4 07010004 */ bgez $t8, .L7F04A0B8 /* 07EBD8 7F04A0A8 468054A0 */ cvt.s.w $f18, $f10 /* 07EBDC 7F04A0AC 44812000 */ mtc1 $at, $f4 /* 07EBE0 7F04A0B0 00000000 */ nop /* 07EBE4 7F04A0B4 46049480 */ add.s $f18, $f18, $f4 .L7F04A0B8: /* 07EBE8 7F04A0B8 4612C203 */ div.s $f8, $f24, $f18 /* 07EBEC 7F04A0BC C600004C */ lwc1 $f0, 0x4c($s0) /* 07EBF0 7F04A0C0 24480003 */ addiu $t0, $v0, 3 /* 07EBF4 7F04A0C4 E6000058 */ swc1 $f0, 0x58($s0) /* 07EBF8 7F04A0C8 E6080054 */ swc1 $f8, 0x54($s0) /* 07EBFC 7F04A0CC 8C790004 */ lw $t9, 4($v1) /* 07EC00 7F04A0D0 A6080004 */ sh $t0, 4($s0) /* 07EC04 7F04A0D4 44993000 */ mtc1 $t9, $f6 /* 07EC08 7F04A0D8 00000000 */ nop /* 07EC0C 7F04A0DC 468032A0 */ cvt.s.w $f10, $f6 /* 07EC10 7F04A0E0 46165102 */ mul.s $f4, $f10, $f22 /* 07EC14 7F04A0E4 46040480 */ add.s $f18, $f0, $f4 /* 07EC18 7F04A0E8 100000DF */ b .L7F04A468 /* 07EC1C 7F04A0EC E612005C */ swc1 $f18, 0x5c($s0) command03_horizontal_pos: /* 07EC20 7F04A0F0 E614003C */ swc1 $f20, 0x3c($s0) /* 07EC24 7F04A0F4 8C690008 */ lw $t1, 8($v1) /* 07EC28 7F04A0F8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EC2C 7F04A0FC 44894000 */ mtc1 $t1, $f8 /* 07EC30 7F04A100 05210004 */ bgez $t1, .L7F04A114 /* 07EC34 7F04A104 468041A0 */ cvt.s.w $f6, $f8 /* 07EC38 7F04A108 44815000 */ mtc1 $at, $f10 /* 07EC3C 7F04A10C 00000000 */ nop /* 07EC40 7F04A110 460A3180 */ add.s $f6, $f6, $f10 .L7F04A114: /* 07EC44 7F04A114 4606C103 */ div.s $f4, $f24, $f6 /* 07EC48 7F04A118 C6120038 */ lwc1 $f18, 0x38($s0) /* 07EC4C 7F04A11C 244B0003 */ addiu $t3, $v0, 3 /* 07EC50 7F04A120 E6120044 */ swc1 $f18, 0x44($s0) /* 07EC54 7F04A124 E6040040 */ swc1 $f4, 0x40($s0) /* 07EC58 7F04A128 8C6A0004 */ lw $t2, 4($v1) /* 07EC5C 7F04A12C A60B0004 */ sh $t3, 4($s0) /* 07EC60 7F04A130 448A4000 */ mtc1 $t2, $f8 /* 07EC64 7F04A134 00000000 */ nop /* 07EC68 7F04A138 468042A0 */ cvt.s.w $f10, $f8 /* 07EC6C 7F04A13C 46165182 */ mul.s $f6, $f10, $f22 /* 07EC70 7F04A140 100000C9 */ b .L7F04A468 /* 07EC74 7F04A144 E6060048 */ swc1 $f6, 0x48($s0) command04_vertical_pos: /* 07EC78 7F04A148 E6140050 */ swc1 $f20, 0x50($s0) /* 07EC7C 7F04A14C 8C6C0008 */ lw $t4, 8($v1) /* 07EC80 7F04A150 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EC84 7F04A154 448C2000 */ mtc1 $t4, $f4 /* 07EC88 7F04A158 05810004 */ bgez $t4, .L7F04A16C /* 07EC8C 7F04A15C 468024A0 */ cvt.s.w $f18, $f4 /* 07EC90 7F04A160 44814000 */ mtc1 $at, $f8 /* 07EC94 7F04A164 00000000 */ nop /* 07EC98 7F04A168 46089480 */ add.s $f18, $f18, $f8 .L7F04A16C: /* 07EC9C 7F04A16C 4612C283 */ div.s $f10, $f24, $f18 /* 07ECA0 7F04A170 C606004C */ lwc1 $f6, 0x4c($s0) /* 07ECA4 7F04A174 244E0003 */ addiu $t6, $v0, 3 /* 07ECA8 7F04A178 E6060058 */ swc1 $f6, 0x58($s0) /* 07ECAC 7F04A17C E60A0054 */ swc1 $f10, 0x54($s0) /* 07ECB0 7F04A180 8C6D0004 */ lw $t5, 4($v1) /* 07ECB4 7F04A184 A60E0004 */ sh $t6, 4($s0) /* 07ECB8 7F04A188 448D2000 */ mtc1 $t5, $f4 /* 07ECBC 7F04A18C 00000000 */ nop /* 07ECC0 7F04A190 46802220 */ cvt.s.w $f8, $f4 /* 07ECC4 7F04A194 46164482 */ mul.s $f18, $f8, $f22 /* 07ECC8 7F04A198 100000B3 */ b .L7F04A468 /* 07ECCC 7F04A19C E612005C */ swc1 $f18, 0x5c($s0) command05_zoomx: /* 07ECD0 7F04A1A0 E6140014 */ swc1 $f20, 0x14($s0) /* 07ECD4 7F04A1A4 8C6F0008 */ lw $t7, 8($v1) /* 07ECD8 7F04A1A8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07ECDC 7F04A1AC 448F5000 */ mtc1 $t7, $f10 /* 07ECE0 7F04A1B0 05E10004 */ bgez $t7, .L7F04A1C4 /* 07ECE4 7F04A1B4 468051A0 */ cvt.s.w $f6, $f10 /* 07ECE8 7F04A1B8 44812000 */ mtc1 $at, $f4 /* 07ECEC 7F04A1BC 00000000 */ nop /* 07ECF0 7F04A1C0 46043180 */ add.s $f6, $f6, $f4 .L7F04A1C4: /* 07ECF4 7F04A1C4 4606C203 */ div.s $f8, $f24, $f6 /* 07ECF8 7F04A1C8 C6120010 */ lwc1 $f18, 0x10($s0) /* 07ECFC 7F04A1CC 24590003 */ addiu $t9, $v0, 3 /* 07ED00 7F04A1D0 E612001C */ swc1 $f18, 0x1c($s0) /* 07ED04 7F04A1D4 E6080018 */ swc1 $f8, 0x18($s0) /* 07ED08 7F04A1D8 8C780004 */ lw $t8, 4($v1) /* 07ED0C 7F04A1DC A6190004 */ sh $t9, 4($s0) /* 07ED10 7F04A1E0 44985000 */ mtc1 $t8, $f10 /* 07ED14 7F04A1E4 00000000 */ nop /* 07ED18 7F04A1E8 46805120 */ cvt.s.w $f4, $f10 /* 07ED1C 7F04A1EC 46162182 */ mul.s $f6, $f4, $f22 /* 07ED20 7F04A1F0 1000009D */ b .L7F04A468 /* 07ED24 7F04A1F4 E6060020 */ swc1 $f6, 0x20($s0) command06_zoomy: /* 07ED28 7F04A1F8 E6140028 */ swc1 $f20, 0x28($s0) /* 07ED2C 7F04A1FC 8C680008 */ lw $t0, 8($v1) /* 07ED30 7F04A200 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07ED34 7F04A204 44884000 */ mtc1 $t0, $f8 /* 07ED38 7F04A208 05010004 */ bgez $t0, .L7F04A21C /* 07ED3C 7F04A20C 468044A0 */ cvt.s.w $f18, $f8 /* 07ED40 7F04A210 44815000 */ mtc1 $at, $f10 /* 07ED44 7F04A214 00000000 */ nop /* 07ED48 7F04A218 460A9480 */ add.s $f18, $f18, $f10 .L7F04A21C: /* 07ED4C 7F04A21C 4612C103 */ div.s $f4, $f24, $f18 /* 07ED50 7F04A220 C6060024 */ lwc1 $f6, 0x24($s0) /* 07ED54 7F04A224 244A0003 */ addiu $t2, $v0, 3 /* 07ED58 7F04A228 E6060030 */ swc1 $f6, 0x30($s0) /* 07ED5C 7F04A22C E604002C */ swc1 $f4, 0x2c($s0) /* 07ED60 7F04A230 8C690004 */ lw $t1, 4($v1) /* 07ED64 7F04A234 A60A0004 */ sh $t2, 4($s0) /* 07ED68 7F04A238 44894000 */ mtc1 $t1, $f8 /* 07ED6C 7F04A23C 00000000 */ nop /* 07ED70 7F04A240 468042A0 */ cvt.s.w $f10, $f8 /* 07ED74 7F04A244 46165482 */ mul.s $f18, $f10, $f22 /* 07ED78 7F04A248 10000087 */ b .L7F04A468 /* 07ED7C 7F04A24C E6120034 */ swc1 $f18, 0x34($s0) command07_use_image_from_global_monitor_table: /* 07ED80 7F04A250 02002025 */ move $a0, $s0 /* 07ED84 7F04A254 0FC127D0 */ jal save_img_index_to_obj_ani_slot /* 07ED88 7F04A258 8C650004 */ lw $a1, 4($v1) /* 07ED8C 7F04A25C 960B0004 */ lhu $t3, 4($s0) /* 07ED90 7F04A260 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07ED94 7F04A264 44811000 */ mtc1 $at, $f2 /* 07ED98 7F04A268 256C0002 */ addiu $t4, $t3, 2 /* 07ED9C 7F04A26C 1000007E */ b .L7F04A468 /* 07EDA0 7F04A270 A60C0004 */ sh $t4, 4($s0) command08_halt_processing_for_time: /* 07EDA4 7F04A274 86020006 */ lh $v0, 6($s0) /* 07EDA8 7F04A278 3C0D8005 */ lui $t5, %hi(clock_timer) /* 07EDAC 7F04A27C 0442000E */ bltzl $v0, .L7F04A2B8 /* 07EDB0 7F04A280 8C680004 */ lw $t0, 4($v1) /* 07EDB4 7F04A284 8DAD8374 */ lw $t5, %lo(clock_timer)($t5) /* 07EDB8 7F04A288 004D7023 */ subu $t6, $v0, $t5 /* 07EDBC 7F04A28C A60E0006 */ sh $t6, 6($s0) /* 07EDC0 7F04A290 860F0006 */ lh $t7, 6($s0) /* 07EDC4 7F04A294 05E20004 */ bltzl $t7, .L7F04A2A8 /* 07EDC8 7F04A298 96180004 */ lhu $t8, 4($s0) /* 07EDCC 7F04A29C 10000072 */ b .L7F04A468 /* 07EDD0 7F04A2A0 24110001 */ li $s1, 1 /* 07EDD4 7F04A2A4 96180004 */ lhu $t8, 4($s0) .L7F04A2A8: /* 07EDD8 7F04A2A8 27190002 */ addiu $t9, $t8, 2 /* 07EDDC 7F04A2AC 1000006E */ b .L7F04A468 /* 07EDE0 7F04A2B0 A6190004 */ sh $t9, 4($s0) /* 07EDE4 7F04A2B4 8C680004 */ lw $t0, 4($v1) .L7F04A2B8: /* 07EDE8 7F04A2B8 24110001 */ li $s1, 1 /* 07EDEC 7F04A2BC 1000006A */ b .L7F04A468 /* 07EDF0 7F04A2C0 A6080006 */ sh $t0, 6($s0) command09_jump: /* 07EDF4 7F04A2C4 02002025 */ move $a0, $s0 /* 07EDF8 7F04A2C8 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 07EDFC 7F04A2CC 8C650004 */ lw $a1, 4($v1) /* 07EE00 7F04A2D0 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE04 7F04A2D4 44811000 */ mtc1 $at, $f2 /* 07EE08 7F04A2D8 10000063 */ b .L7F04A468 /* 07EE0C 7F04A2DC 00000000 */ nop command0A_jump_conditional: /* 07EE10 7F04A2E0 0C002914 */ jal get_random_value /* 07EE14 7F04A2E4 AFA30094 */ sw $v1, 0x94($sp) /* 07EE18 7F04A2E8 8FA30094 */ lw $v1, 0x94($sp) /* 07EE1C 7F04A2EC 00024C02 */ srl $t1, $v0, 0x10 /* 07EE20 7F04A2F0 02002025 */ move $a0, $s0 /* 07EE24 7F04A2F4 8C6A0008 */ lw $t2, 8($v1) /* 07EE28 7F04A2F8 012A082B */ sltu $at, $t1, $t2 /* 07EE2C 7F04A2FC 50200008 */ beql $at, $zero, .L7F04A320 /* 07EE30 7F04A300 960B0004 */ lhu $t3, 4($s0) /* 07EE34 7F04A304 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 07EE38 7F04A308 8C650004 */ lw $a1, 4($v1) /* 07EE3C 7F04A30C 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE40 7F04A310 44811000 */ mtc1 $at, $f2 /* 07EE44 7F04A314 10000054 */ b .L7F04A468 /* 07EE48 7F04A318 00000000 */ nop /* 07EE4C 7F04A31C 960B0004 */ lhu $t3, 4($s0) .L7F04A320: /* 07EE50 7F04A320 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE54 7F04A324 44811000 */ mtc1 $at, $f2 /* 07EE58 7F04A328 256C0003 */ addiu $t4, $t3, 3 /* 07EE5C 7F04A32C A60C0004 */ sh $t4, 4($s0) /* 07EE60 7F04A330 1000004D */ b .L7F04A468 /* 07EE64 7F04A334 00000000 */ nop command0B_restart: /* 07EE68 7F04A338 1000004B */ b .L7F04A468 /* 07EE6C 7F04A33C A6000004 */ sh $zero, 4($s0) command0C_break: /* 07EE70 7F04A340 10000049 */ b .L7F04A468 /* 07EE74 7F04A344 24110001 */ li $s1, 1 command0D_colour_transition: /* 07EE78 7F04A348 E614006C */ swc1 $f20, 0x6c($s0) /* 07EE7C 7F04A34C 8C6D0008 */ lw $t5, 8($v1) /* 07EE80 7F04A350 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EE84 7F04A354 448D2000 */ mtc1 $t5, $f4 /* 07EE88 7F04A358 05A10004 */ bgez $t5, .L7F04A36C /* 07EE8C 7F04A35C 468021A0 */ cvt.s.w $f6, $f4 /* 07EE90 7F04A360 44814000 */ mtc1 $at, $f8 /* 07EE94 7F04A364 00000000 */ nop /* 07EE98 7F04A368 46083180 */ add.s $f6, $f6, $f8 .L7F04A36C: /* 07EE9C 7F04A36C 4606C283 */ div.s $f10, $f24, $f6 /* 07EEA0 7F04A370 920E0060 */ lbu $t6, 0x60($s0) /* 07EEA4 7F04A374 92080063 */ lbu $t0, 0x63($s0) /* 07EEA8 7F04A378 920C0066 */ lbu $t4, 0x66($s0) /* 07EEAC 7F04A37C A20E0061 */ sb $t6, 0x61($s0) /* 07EEB0 7F04A380 92180069 */ lbu $t8, 0x69($s0) /* 07EEB4 7F04A384 E60A0070 */ swc1 $f10, 0x70($s0) /* 07EEB8 7F04A388 8C6F0004 */ lw $t7, 4($v1) /* 07EEBC 7F04A38C A2080064 */ sb $t0, 0x64($s0) /* 07EEC0 7F04A390 000FCE02 */ srl $t9, $t7, 0x18 /* 07EEC4 7F04A394 A2190062 */ sb $t9, 0x62($s0) /* 07EEC8 7F04A398 8C690004 */ lw $t1, 4($v1) /* 07EECC 7F04A39C A20C0067 */ sb $t4, 0x67($s0) /* 07EED0 7F04A3A0 00095C02 */ srl $t3, $t1, 0x10 /* 07EED4 7F04A3A4 A20B0065 */ sb $t3, 0x65($s0) /* 07EED8 7F04A3A8 8C6D0004 */ lw $t5, 4($v1) /* 07EEDC 7F04A3AC A218006A */ sb $t8, 0x6a($s0) /* 07EEE0 7F04A3B0 24490003 */ addiu $t1, $v0, 3 /* 07EEE4 7F04A3B4 000D7A02 */ srl $t7, $t5, 8 /* 07EEE8 7F04A3B8 A20F0068 */ sb $t7, 0x68($s0) /* 07EEEC 7F04A3BC 8C680004 */ lw $t0, 4($v1) /* 07EEF0 7F04A3C0 A6090004 */ sh $t1, 4($s0) /* 07EEF4 7F04A3C4 10000028 */ b .L7F04A468 /* 07EEF8 7F04A3C8 A208006B */ sb $t0, 0x6b($s0) command0E_set_rotation: /* 07EEFC 7F04A3CC 8C6A0004 */ lw $t2, 4($v1) /* 07EF00 7F04A3D0 244B0002 */ addiu $t3, $v0, 2 /* 07EF04 7F04A3D4 A60B0004 */ sh $t3, 4($s0) /* 07EF08 7F04A3D8 448A9000 */ mtc1 $t2, $f18 /* 07EF0C 7F04A3DC 00000000 */ nop /* 07EF10 7F04A3E0 46809120 */ cvt.s.w $f4, $f18 /* 07EF14 7F04A3E4 461A2202 */ mul.s $f8, $f4, $f26 /* 07EF18 7F04A3E8 46024183 */ div.s $f6, $f8, $f2 /* 07EF1C 7F04A3EC 1000001E */ b .L7F04A468 /* 07EF20 7F04A3F0 E606000C */ swc1 $f6, 0xc($s0) command0F_rotate: /* 07EF24 7F04A3F4 8C6C0004 */ lw $t4, 4($v1) /* 07EF28 7F04A3F8 3C018005 */ lui $at, %hi(global_timer_delta) /* 07EF2C 7F04A3FC C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 07EF30 7F04A400 448C9000 */ mtc1 $t4, $f18 /* 07EF34 7F04A404 00000000 */ nop /* 07EF38 7F04A408 46809120 */ cvt.s.w $f4, $f18 /* 07EF3C 7F04A40C 46045202 */ mul.s $f8, $f10, $f4 /* 07EF40 7F04A410 C60A000C */ lwc1 $f10, 0xc($s0) /* 07EF44 7F04A414 461A4182 */ mul.s $f6, $f8, $f26 /* 07EF48 7F04A418 46023483 */ div.s $f18, $f6, $f2 /* 07EF4C 7F04A41C 46125100 */ add.s $f4, $f10, $f18 /* 07EF50 7F04A420 E604000C */ swc1 $f4, 0xc($s0) /* 07EF54 7F04A424 C60C000C */ lwc1 $f12, 0xc($s0) /* 07EF58 7F04A428 460CD03E */ c.le.s $f26, $f12 /* 07EF5C 7F04A42C 00000000 */ nop /* 07EF60 7F04A430 45020005 */ bc1fl .L7F04A448 /* 07EF64 7F04A434 4614603C */ c.lt.s $f12, $f20 /* 07EF68 7F04A438 461A6201 */ sub.s $f8, $f12, $f26 /* 07EF6C 7F04A43C E608000C */ swc1 $f8, 0xc($s0) /* 07EF70 7F04A440 C60C000C */ lwc1 $f12, 0xc($s0) /* 07EF74 7F04A444 4614603C */ c.lt.s $f12, $f20 .L7F04A448: /* 07EF78 7F04A448 00000000 */ nop /* 07EF7C 7F04A44C 45020004 */ bc1fl .L7F04A460 /* 07EF80 7F04A450 960D0004 */ lhu $t5, 4($s0) /* 07EF84 7F04A454 461A6180 */ add.s $f6, $f12, $f26 /* 07EF88 7F04A458 E606000C */ swc1 $f6, 0xc($s0) /* 07EF8C 7F04A45C 960D0004 */ lhu $t5, 4($s0) .L7F04A460: /* 07EF90 7F04A460 25AE0002 */ addiu $t6, $t5, 2 /* 07EF94 7F04A464 A60E0004 */ sh $t6, 4($s0) def_7F04A01C: .L7F04A468: /* 07EF98 7F04A468 5220FEE2 */ beql $s1, $zero, .L7F049FF4 /* 07EF9C 7F04A46C 96020004 */ lhu $v0, 4($s0) /* 07EFA0 7F04A470 C6000018 */ lwc1 $f0, 0x18($s0) /* 07EFA4 7F04A474 4600A03C */ c.lt.s $f20, $f0 /* 07EFA8 7F04A478 00000000 */ nop /* 07EFAC 7F04A47C 45000017 */ bc1f .L7F04A4DC /* 07EFB0 7F04A480 3C028005 */ lui $v0, %hi(global_timer_delta) /* 07EFB4 7F04A484 24428378 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07EFB8 7F04A488 C4520000 */ lwc1 $f18, ($v0) /* 07EFBC 7F04A48C C60A0014 */ lwc1 $f10, 0x14($s0) /* 07EFC0 7F04A490 46120102 */ mul.s $f4, $f0, $f18 /* 07EFC4 7F04A494 46045200 */ add.s $f8, $f10, $f4 /* 07EFC8 7F04A498 E6080014 */ swc1 $f8, 0x14($s0) /* 07EFCC 7F04A49C C6020014 */ lwc1 $f2, 0x14($s0) /* 07EFD0 7F04A4A0 4618103C */ c.lt.s $f2, $f24 /* 07EFD4 7F04A4A4 00000000 */ nop /* 07EFD8 7F04A4A8 45020009 */ bc1fl .L7F04A4D0 /* 07EFDC 7F04A4AC C6080020 */ lwc1 $f8, 0x20($s0) /* 07EFE0 7F04A4B0 C600001C */ lwc1 $f0, 0x1c($s0) /* 07EFE4 7F04A4B4 C6060020 */ lwc1 $f6, 0x20($s0) /* 07EFE8 7F04A4B8 46003481 */ sub.s $f18, $f6, $f0 /* 07EFEC 7F04A4BC 46029282 */ mul.s $f10, $f18, $f2 /* 07EFF0 7F04A4C0 460A0100 */ add.s $f4, $f0, $f10 /* 07EFF4 7F04A4C4 10000005 */ b .L7F04A4DC /* 07EFF8 7F04A4C8 E6040010 */ swc1 $f4, 0x10($s0) /* 07EFFC 7F04A4CC C6080020 */ lwc1 $f8, 0x20($s0) .L7F04A4D0: /* 07F000 7F04A4D0 E6180014 */ swc1 $f24, 0x14($s0) /* 07F004 7F04A4D4 E6140018 */ swc1 $f20, 0x18($s0) /* 07F008 7F04A4D8 E6080010 */ swc1 $f8, 0x10($s0) .L7F04A4DC: /* 07F00C 7F04A4DC C600002C */ lwc1 $f0, 0x2c($s0) /* 07F010 7F04A4E0 3C028005 */ lui $v0, %hi(global_timer_delta) /* 07F014 7F04A4E4 24428378 */ addiu $v0, %lo(global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07F018 7F04A4E8 4600A03C */ c.lt.s $f20, $f0 /* 07F01C 7F04A4EC 00000000 */ nop /* 07F020 7F04A4F0 45020017 */ bc1fl .L7F04A550 /* 07F024 7F04A4F4 C6000040 */ lwc1 $f0, 0x40($s0) /* 07F028 7F04A4F8 C4520000 */ lwc1 $f18, ($v0) /* 07F02C 7F04A4FC C6060028 */ lwc1 $f6, 0x28($s0) /* 07F030 7F04A500 46120282 */ mul.s $f10, $f0, $f18 /* 07F034 7F04A504 460A3100 */ add.s $f4, $f6, $f10 /* 07F038 7F04A508 E6040028 */ swc1 $f4, 0x28($s0) /* 07F03C 7F04A50C C6020028 */ lwc1 $f2, 0x28($s0) /* 07F040 7F04A510 4618103C */ c.lt.s $f2, $f24 /* 07F044 7F04A514 00000000 */ nop /* 07F048 7F04A518 45020009 */ bc1fl .L7F04A540 /* 07F04C 7F04A51C C6040034 */ lwc1 $f4, 0x34($s0) /* 07F050 7F04A520 C6000030 */ lwc1 $f0, 0x30($s0) /* 07F054 7F04A524 C6080034 */ lwc1 $f8, 0x34($s0) /* 07F058 7F04A528 46004481 */ sub.s $f18, $f8, $f0 /* 07F05C 7F04A52C 46029182 */ mul.s $f6, $f18, $f2 /* 07F060 7F04A530 46060280 */ add.s $f10, $f0, $f6 /* 07F064 7F04A534 10000005 */ b .L7F04A54C /* 07F068 7F04A538 E60A0024 */ swc1 $f10, 0x24($s0) /* 07F06C 7F04A53C C6040034 */ lwc1 $f4, 0x34($s0) .L7F04A540: /* 07F070 7F04A540 E6180028 */ swc1 $f24, 0x28($s0) /* 07F074 7F04A544 E614002C */ swc1 $f20, 0x2c($s0) /* 07F078 7F04A548 E6040024 */ swc1 $f4, 0x24($s0) .L7F04A54C: /* 07F07C 7F04A54C C6000040 */ lwc1 $f0, 0x40($s0) .L7F04A550: /* 07F080 7F04A550 4600A03C */ c.lt.s $f20, $f0 /* 07F084 7F04A554 00000000 */ nop /* 07F088 7F04A558 45020017 */ bc1fl .L7F04A5B8 /* 07F08C 7F04A55C C6000054 */ lwc1 $f0, 0x54($s0) /* 07F090 7F04A560 C4520000 */ lwc1 $f18, ($v0) /* 07F094 7F04A564 C608003C */ lwc1 $f8, 0x3c($s0) /* 07F098 7F04A568 46120182 */ mul.s $f6, $f0, $f18 /* 07F09C 7F04A56C 46064280 */ add.s $f10, $f8, $f6 /* 07F0A0 7F04A570 E60A003C */ swc1 $f10, 0x3c($s0) /* 07F0A4 7F04A574 C602003C */ lwc1 $f2, 0x3c($s0) /* 07F0A8 7F04A578 4618103C */ c.lt.s $f2, $f24 /* 07F0AC 7F04A57C 00000000 */ nop /* 07F0B0 7F04A580 45020009 */ bc1fl .L7F04A5A8 /* 07F0B4 7F04A584 C60A0048 */ lwc1 $f10, 0x48($s0) /* 07F0B8 7F04A588 C6000044 */ lwc1 $f0, 0x44($s0) /* 07F0BC 7F04A58C C6040048 */ lwc1 $f4, 0x48($s0) /* 07F0C0 7F04A590 46002481 */ sub.s $f18, $f4, $f0 /* 07F0C4 7F04A594 46029202 */ mul.s $f8, $f18, $f2 /* 07F0C8 7F04A598 46080180 */ add.s $f6, $f0, $f8 /* 07F0CC 7F04A59C 10000005 */ b .L7F04A5B4 /* 07F0D0 7F04A5A0 E6060038 */ swc1 $f6, 0x38($s0) /* 07F0D4 7F04A5A4 C60A0048 */ lwc1 $f10, 0x48($s0) .L7F04A5A8: /* 07F0D8 7F04A5A8 E618003C */ swc1 $f24, 0x3c($s0) /* 07F0DC 7F04A5AC E6140040 */ swc1 $f20, 0x40($s0) /* 07F0E0 7F04A5B0 E60A0038 */ swc1 $f10, 0x38($s0) .L7F04A5B4: /* 07F0E4 7F04A5B4 C6000054 */ lwc1 $f0, 0x54($s0) .L7F04A5B8: /* 07F0E8 7F04A5B8 4600A03C */ c.lt.s $f20, $f0 /* 07F0EC 7F04A5BC 00000000 */ nop /* 07F0F0 7F04A5C0 45020017 */ bc1fl .L7F04A620 /* 07F0F4 7F04A5C4 C6020070 */ lwc1 $f2, 0x70($s0) /* 07F0F8 7F04A5C8 C4520000 */ lwc1 $f18, ($v0) /* 07F0FC 7F04A5CC C6040050 */ lwc1 $f4, 0x50($s0) /* 07F100 7F04A5D0 46120202 */ mul.s $f8, $f0, $f18 /* 07F104 7F04A5D4 46082180 */ add.s $f6, $f4, $f8 /* 07F108 7F04A5D8 E6060050 */ swc1 $f6, 0x50($s0) /* 07F10C 7F04A5DC C6020050 */ lwc1 $f2, 0x50($s0) /* 07F110 7F04A5E0 4618103C */ c.lt.s $f2, $f24 /* 07F114 7F04A5E4 00000000 */ nop /* 07F118 7F04A5E8 45020009 */ bc1fl .L7F04A610 /* 07F11C 7F04A5EC C606005C */ lwc1 $f6, 0x5c($s0) /* 07F120 7F04A5F0 C6000058 */ lwc1 $f0, 0x58($s0) /* 07F124 7F04A5F4 C60A005C */ lwc1 $f10, 0x5c($s0) /* 07F128 7F04A5F8 46005481 */ sub.s $f18, $f10, $f0 /* 07F12C 7F04A5FC 46029102 */ mul.s $f4, $f18, $f2 /* 07F130 7F04A600 46040200 */ add.s $f8, $f0, $f4 /* 07F134 7F04A604 10000005 */ b .L7F04A61C /* 07F138 7F04A608 E608004C */ swc1 $f8, 0x4c($s0) /* 07F13C 7F04A60C C606005C */ lwc1 $f6, 0x5c($s0) .L7F04A610: /* 07F140 7F04A610 E6180050 */ swc1 $f24, 0x50($s0) /* 07F144 7F04A614 E6140054 */ swc1 $f20, 0x54($s0) /* 07F148 7F04A618 E606004C */ swc1 $f6, 0x4c($s0) .L7F04A61C: /* 07F14C 7F04A61C C6020070 */ lwc1 $f2, 0x70($s0) .L7F04A620: /* 07F150 7F04A620 4602A03C */ c.lt.s $f20, $f2 /* 07F154 7F04A624 00000000 */ nop /* 07F158 7F04A628 4502003F */ bc1fl .L7F04A728 /* 07F15C 7F04A62C 8FAA00A0 */ lw $t2, 0xa0($sp) /* 07F160 7F04A630 C4520000 */ lwc1 $f18, ($v0) /* 07F164 7F04A634 C60A006C */ lwc1 $f10, 0x6c($s0) /* 07F168 7F04A638 46121102 */ mul.s $f4, $f2, $f18 /* 07F16C 7F04A63C 46045200 */ add.s $f8, $f10, $f4 /* 07F170 7F04A640 E608006C */ swc1 $f8, 0x6c($s0) /* 07F174 7F04A644 C600006C */ lwc1 $f0, 0x6c($s0) /* 07F178 7F04A648 4618003C */ c.lt.s $f0, $f24 /* 07F17C 7F04A64C 00000000 */ nop /* 07F180 7F04A650 4502002B */ bc1fl .L7F04A700 /* 07F184 7F04A654 920F0062 */ lbu $t7, 0x62($s0) /* 07F188 7F04A658 92020061 */ lbu $v0, 0x61($s0) /* 07F18C 7F04A65C 920F0062 */ lbu $t7, 0x62($s0) /* 07F190 7F04A660 92030064 */ lbu $v1, 0x64($s0) /* 07F194 7F04A664 920A0065 */ lbu $t2, 0x65($s0) /* 07F198 7F04A668 01E2C023 */ subu $t8, $t7, $v0 /* 07F19C 7F04A66C 44983000 */ mtc1 $t8, $f6 /* 07F1A0 7F04A670 01435823 */ subu $t3, $t2, $v1 /* 07F1A4 7F04A674 448B4000 */ mtc1 $t3, $f8 /* 07F1A8 7F04A678 468034A0 */ cvt.s.w $f18, $f6 /* 07F1AC 7F04A67C 920F0068 */ lbu $t7, 0x68($s0) /* 07F1B0 7F04A680 92040067 */ lbu $a0, 0x67($s0) /* 07F1B4 7F04A684 920A006B */ lbu $t2, 0x6b($s0) /* 07F1B8 7F04A688 9205006A */ lbu $a1, 0x6a($s0) /* 07F1BC 7F04A68C 468041A0 */ cvt.s.w $f6, $f8 /* 07F1C0 7F04A690 46009282 */ mul.s $f10, $f18, $f0 /* 07F1C4 7F04A694 01E4C023 */ subu $t8, $t7, $a0 /* 07F1C8 7F04A698 01455823 */ subu $t3, $t2, $a1 /* 07F1CC 7F04A69C 46003482 */ mul.s $f18, $f6, $f0 /* 07F1D0 7F04A6A0 4600510D */ trunc.w.s $f4, $f10 /* 07F1D4 7F04A6A4 4600928D */ trunc.w.s $f10, $f18 /* 07F1D8 7F04A6A8 44082000 */ mfc1 $t0, $f4 /* 07F1DC 7F04A6AC 44982000 */ mtc1 $t8, $f4 /* 07F1E0 7F04A6B0 440D5000 */ mfc1 $t5, $f10 /* 07F1E4 7F04A6B4 46802220 */ cvt.s.w $f8, $f4 /* 07F1E8 7F04A6B8 448B5000 */ mtc1 $t3, $f10 /* 07F1EC 7F04A6BC 00484821 */ addu $t1, $v0, $t0 /* 07F1F0 7F04A6C0 006D7021 */ addu $t6, $v1, $t5 /* 07F1F4 7F04A6C4 A2090060 */ sb $t1, 0x60($s0) /* 07F1F8 7F04A6C8 46805120 */ cvt.s.w $f4, $f10 /* 07F1FC 7F04A6CC 46004182 */ mul.s $f6, $f8, $f0 /* 07F200 7F04A6D0 A20E0063 */ sb $t6, 0x63($s0) /* 07F204 7F04A6D4 46002202 */ mul.s $f8, $f4, $f0 /* 07F208 7F04A6D8 4600348D */ trunc.w.s $f18, $f6 /* 07F20C 7F04A6DC 4600418D */ trunc.w.s $f6, $f8 /* 07F210 7F04A6E0 44089000 */ mfc1 $t0, $f18 /* 07F214 7F04A6E4 440D3000 */ mfc1 $t5, $f6 /* 07F218 7F04A6E8 00884821 */ addu $t1, $a0, $t0 /* 07F21C 7F04A6EC A2090066 */ sb $t1, 0x66($s0) /* 07F220 7F04A6F0 00AD7021 */ addu $t6, $a1, $t5 /* 07F224 7F04A6F4 1000000B */ b .L7F04A724 /* 07F228 7F04A6F8 A20E0069 */ sb $t6, 0x69($s0) /* 07F22C 7F04A6FC 920F0062 */ lbu $t7, 0x62($s0) .L7F04A700: /* 07F230 7F04A700 92180065 */ lbu $t8, 0x65($s0) /* 07F234 7F04A704 92190068 */ lbu $t9, 0x68($s0) /* 07F238 7F04A708 9208006B */ lbu $t0, 0x6b($s0) /* 07F23C 7F04A70C E618006C */ swc1 $f24, 0x6c($s0) /* 07F240 7F04A710 E6140070 */ swc1 $f20, 0x70($s0) /* 07F244 7F04A714 A20F0060 */ sb $t7, 0x60($s0) /* 07F248 7F04A718 A2180063 */ sb $t8, 0x63($s0) /* 07F24C 7F04A71C A2190066 */ sb $t9, 0x66($s0) /* 07F250 7F04A720 A2080069 */ sb $t0, 0x69($s0) .L7F04A724: /* 07F254 7F04A724 8FAA00A0 */ lw $t2, 0xa0($sp) .L7F04A728: /* 07F258 7F04A728 8FA300A4 */ lw $v1, 0xa4($sp) /* 07F25C 7F04A72C 8FA900BC */ lw $t1, 0xbc($sp) /* 07F260 7F04A730 AD520000 */ sw $s2, ($t2) /* 07F264 7F04A734 3C0F8009 */ lui $t7, %hi(monitorimages) /* 07F268 7F04A738 AD490004 */ sw $t1, 4($t2) /* 07F26C 7F04A73C 8C6B0008 */ lw $t3, 8($v1) /* 07F270 7F04A740 8D610000 */ lw $at, ($t3) /* 07F274 7F04A744 AE410000 */ sw $at, ($s2) /* 07F278 7F04A748 8D6D0004 */ lw $t5, 4($t3) /* 07F27C 7F04A74C AE4D0004 */ sw $t5, 4($s2) /* 07F280 7F04A750 8D610008 */ lw $at, 8($t3) /* 07F284 7F04A754 AE410008 */ sw $at, 8($s2) /* 07F288 7F04A758 8D6D000C */ lw $t5, 0xc($t3) /* 07F28C 7F04A75C AE4D000C */ sw $t5, 0xc($s2) /* 07F290 7F04A760 8C6E0008 */ lw $t6, 8($v1) /* 07F294 7F04A764 8DC10010 */ lw $at, 0x10($t6) /* 07F298 7F04A768 AE410010 */ sw $at, 0x10($s2) /* 07F29C 7F04A76C 8DD80014 */ lw $t8, 0x14($t6) /* 07F2A0 7F04A770 AE580014 */ sw $t8, 0x14($s2) /* 07F2A4 7F04A774 8DC10018 */ lw $at, 0x18($t6) /* 07F2A8 7F04A778 AE410018 */ sw $at, 0x18($s2) /* 07F2AC 7F04A77C 8DD8001C */ lw $t8, 0x1c($t6) /* 07F2B0 7F04A780 AE58001C */ sw $t8, 0x1c($s2) /* 07F2B4 7F04A784 8C790008 */ lw $t9, 8($v1) /* 07F2B8 7F04A788 8F210020 */ lw $at, 0x20($t9) /* 07F2BC 7F04A78C AE410020 */ sw $at, 0x20($s2) /* 07F2C0 7F04A790 8F290024 */ lw $t1, 0x24($t9) /* 07F2C4 7F04A794 AE490024 */ sw $t1, 0x24($s2) /* 07F2C8 7F04A798 8F210028 */ lw $at, 0x28($t9) /* 07F2CC 7F04A79C AE410028 */ sw $at, 0x28($s2) /* 07F2D0 7F04A7A0 8F29002C */ lw $t1, 0x2c($t9) /* 07F2D4 7F04A7A4 AE49002C */ sw $t1, 0x2c($s2) /* 07F2D8 7F04A7A8 8C6A0008 */ lw $t2, 8($v1) /* 07F2DC 7F04A7AC 8D410030 */ lw $at, 0x30($t2) /* 07F2E0 7F04A7B0 AE410030 */ sw $at, 0x30($s2) /* 07F2E4 7F04A7B4 8D4B0034 */ lw $t3, 0x34($t2) /* 07F2E8 7F04A7B8 AE4B0034 */ sw $t3, 0x34($s2) /* 07F2EC 7F04A7BC 8D410038 */ lw $at, 0x38($t2) /* 07F2F0 7F04A7C0 AE410038 */ sw $at, 0x38($s2) /* 07F2F4 7F04A7C4 8D4B003C */ lw $t3, 0x3c($t2) /* 07F2F8 7F04A7C8 AE4B003C */ sw $t3, 0x3c($s2) /* 07F2FC 7F04A7CC 8E020008 */ lw $v0, 8($s0) /* 07F300 7F04A7D0 2C410064 */ sltiu $at, $v0, 0x64 /* 07F304 7F04A7D4 10200007 */ beqz $at, .L7F04A7F4 /* 07F308 7F04A7D8 00408825 */ move $s1, $v0 /* 07F30C 7F04A7DC 00026880 */ sll $t5, $v0, 2 /* 07F310 7F04A7E0 8DEFD120 */ lw $t7, %lo(monitorimages)($t7) /* 07F314 7F04A7E4 01A26823 */ subu $t5, $t5, $v0 /* 07F318 7F04A7E8 000D6880 */ sll $t5, $t5, 2 /* 07F31C 7F04A7EC 10000001 */ b .L7F04A7F4 /* 07F320 7F04A7F0 01AF8821 */ addu $s1, $t5, $t7 .L7F04A7F4: /* 07F324 7F04A7F4 122000A9 */ beqz $s1, .L7F04AA9C /* 07F328 7F04A7F8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07F32C 7F04A7FC 44810000 */ mtc1 $at, $f0 /* 07F330 7F04A800 C6120010 */ lwc1 $f18, 0x10($s0) /* 07F334 7F04A804 C60A0024 */ lwc1 $f10, 0x24($s0) /* 07F338 7F04A808 C60C000C */ lwc1 $f12, 0xc($s0) /* 07F33C 7F04A80C 46009582 */ mul.s $f22, $f18, $f0 /* 07F340 7F04A810 460CA032 */ c.eq.s $f20, $f12 /* 07F344 7F04A814 46005602 */ mul.s $f24, $f10, $f0 /* 07F348 7F04A818 4600B386 */ mov.s $f14, $f22 /* 07F34C 7F04A81C 45010015 */ bc1t .L7F04A874 /* 07F350 7F04A820 4600C406 */ mov.s $f16, $f24 /* 07F354 7F04A824 E7AE0054 */ swc1 $f14, 0x54($sp) /* 07F358 7F04A828 0FC15FA8 */ jal cosf /* 07F35C 7F04A82C E7B00050 */ swc1 $f16, 0x50($sp) /* 07F360 7F04A830 3C018005 */ lui $at, %hi(D_80052CB0) /* 07F364 7F04A834 C43A2CB0 */ lwc1 $f26, %lo(D_80052CB0)($at) /* 07F368 7F04A838 C60C000C */ lwc1 $f12, 0xc($s0) /* 07F36C 7F04A83C 461A0502 */ mul.s $f20, $f0, $f26 /* 07F370 7F04A840 0FC15FAB */ jal sinf /* 07F374 7F04A844 00000000 */ nop /* 07F378 7F04A848 4614B582 */ mul.s $f22, $f22, $f20 /* 07F37C 7F04A84C C7AE0054 */ lwc1 $f14, 0x54($sp) /* 07F380 7F04A850 C7B00050 */ lwc1 $f16, 0x50($sp) /* 07F384 7F04A854 461A0082 */ mul.s $f2, $f0, $f26 /* 07F388 7F04A858 00000000 */ nop /* 07F38C 7F04A85C 4602C602 */ mul.s $f24, $f24, $f2 /* 07F390 7F04A860 00000000 */ nop /* 07F394 7F04A864 46027382 */ mul.s $f14, $f14, $f2 /* 07F398 7F04A868 00000000 */ nop /* 07F39C 7F04A86C 46148402 */ mul.s $f16, $f16, $f20 /* 07F3A0 7F04A870 00000000 */ nop .L7F04A874: /* 07F3A4 7F04A874 922E0004 */ lbu $t6, 4($s1) /* 07F3A8 7F04A878 3C014200 */ li $at, 0x42000000 # 32.000000 /* 07F3AC 7F04A87C 44810000 */ mtc1 $at, $f0 /* 07F3B0 7F04A880 448E4000 */ mtc1 $t6, $f8 /* 07F3B4 7F04A884 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F3B8 7F04A888 05C10004 */ bgez $t6, .L7F04A89C /* 07F3BC 7F04A88C 468041A0 */ cvt.s.w $f6, $f8 /* 07F3C0 7F04A890 44819000 */ mtc1 $at, $f18 /* 07F3C4 7F04A894 00000000 */ nop /* 07F3C8 7F04A898 46123180 */ add.s $f6, $f6, $f18 .L7F04A89C: /* 07F3CC 7F04A89C C60A0038 */ lwc1 $f10, 0x38($s0) /* 07F3D0 7F04A8A0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F3D4 7F04A8A4 46165100 */ add.s $f4, $f10, $f22 /* 07F3D8 7F04A8A8 46043202 */ mul.s $f8, $f6, $f4 /* 07F3DC 7F04A8AC 00000000 */ nop /* 07F3E0 7F04A8B0 46004482 */ mul.s $f18, $f8, $f0 /* 07F3E4 7F04A8B4 4600928D */ trunc.w.s $f10, $f18 /* 07F3E8 7F04A8B8 44085000 */ mfc1 $t0, $f10 /* 07F3EC 7F04A8BC 00000000 */ nop /* 07F3F0 7F04A8C0 A6480008 */ sh $t0, 8($s2) /* 07F3F4 7F04A8C4 92390005 */ lbu $t9, 5($s1) /* 07F3F8 7F04A8C8 44993000 */ mtc1 $t9, $f6 /* 07F3FC 7F04A8CC 07210004 */ bgez $t9, .L7F04A8E0 /* 07F400 7F04A8D0 46803120 */ cvt.s.w $f4, $f6 /* 07F404 7F04A8D4 44814000 */ mtc1 $at, $f8 /* 07F408 7F04A8D8 00000000 */ nop /* 07F40C 7F04A8DC 46082100 */ add.s $f4, $f4, $f8 .L7F04A8E0: /* 07F410 7F04A8E0 C612004C */ lwc1 $f18, 0x4c($s0) /* 07F414 7F04A8E4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F418 7F04A8E8 46189280 */ add.s $f10, $f18, $f24 /* 07F41C 7F04A8EC 460A2182 */ mul.s $f6, $f4, $f10 /* 07F420 7F04A8F0 00000000 */ nop /* 07F424 7F04A8F4 46003202 */ mul.s $f8, $f6, $f0 /* 07F428 7F04A8F8 4600448D */ trunc.w.s $f18, $f8 /* 07F42C 7F04A8FC 440C9000 */ mfc1 $t4, $f18 /* 07F430 7F04A900 00000000 */ nop /* 07F434 7F04A904 A64C000A */ sh $t4, 0xa($s2) /* 07F438 7F04A908 922A0004 */ lbu $t2, 4($s1) /* 07F43C 7F04A90C 448A2000 */ mtc1 $t2, $f4 /* 07F440 7F04A910 05410004 */ bgez $t2, .L7F04A924 /* 07F444 7F04A914 468022A0 */ cvt.s.w $f10, $f4 /* 07F448 7F04A918 44813000 */ mtc1 $at, $f6 /* 07F44C 7F04A91C 00000000 */ nop /* 07F450 7F04A920 46065280 */ add.s $f10, $f10, $f6 .L7F04A924: /* 07F454 7F04A924 C6080038 */ lwc1 $f8, 0x38($s0) /* 07F458 7F04A928 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F45C 7F04A92C 460E4481 */ sub.s $f18, $f8, $f14 /* 07F460 7F04A930 46125102 */ mul.s $f4, $f10, $f18 /* 07F464 7F04A934 00000000 */ nop /* 07F468 7F04A938 46002182 */ mul.s $f6, $f4, $f0 /* 07F46C 7F04A93C 4600320D */ trunc.w.s $f8, $f6 /* 07F470 7F04A940 440D4000 */ mfc1 $t5, $f8 /* 07F474 7F04A944 00000000 */ nop /* 07F478 7F04A948 A64D0018 */ sh $t5, 0x18($s2) /* 07F47C 7F04A94C 922F0005 */ lbu $t7, 5($s1) /* 07F480 7F04A950 448F5000 */ mtc1 $t7, $f10 /* 07F484 7F04A954 05E10004 */ bgez $t7, .L7F04A968 /* 07F488 7F04A958 468054A0 */ cvt.s.w $f18, $f10 /* 07F48C 7F04A95C 44812000 */ mtc1 $at, $f4 /* 07F490 7F04A960 00000000 */ nop /* 07F494 7F04A964 46049480 */ add.s $f18, $f18, $f4 .L7F04A968: /* 07F498 7F04A968 C606004C */ lwc1 $f6, 0x4c($s0) /* 07F49C 7F04A96C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F4A0 7F04A970 46103200 */ add.s $f8, $f6, $f16 /* 07F4A4 7F04A974 46089282 */ mul.s $f10, $f18, $f8 /* 07F4A8 7F04A978 00000000 */ nop /* 07F4AC 7F04A97C 46005102 */ mul.s $f4, $f10, $f0 /* 07F4B0 7F04A980 4600218D */ trunc.w.s $f6, $f4 /* 07F4B4 7F04A984 44183000 */ mfc1 $t8, $f6 /* 07F4B8 7F04A988 00000000 */ nop /* 07F4BC 7F04A98C A658001A */ sh $t8, 0x1a($s2) /* 07F4C0 7F04A990 92280004 */ lbu $t0, 4($s1) /* 07F4C4 7F04A994 44889000 */ mtc1 $t0, $f18 /* 07F4C8 7F04A998 05010004 */ bgez $t0, .L7F04A9AC /* 07F4CC 7F04A99C 46809220 */ cvt.s.w $f8, $f18 /* 07F4D0 7F04A9A0 44815000 */ mtc1 $at, $f10 /* 07F4D4 7F04A9A4 00000000 */ nop /* 07F4D8 7F04A9A8 460A4200 */ add.s $f8, $f8, $f10 .L7F04A9AC: /* 07F4DC 7F04A9AC C6040038 */ lwc1 $f4, 0x38($s0) /* 07F4E0 7F04A9B0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F4E4 7F04A9B4 46162181 */ sub.s $f6, $f4, $f22 /* 07F4E8 7F04A9B8 46064482 */ mul.s $f18, $f8, $f6 /* 07F4EC 7F04A9BC 00000000 */ nop /* 07F4F0 7F04A9C0 46009282 */ mul.s $f10, $f18, $f0 /* 07F4F4 7F04A9C4 4600510D */ trunc.w.s $f4, $f10 /* 07F4F8 7F04A9C8 44092000 */ mfc1 $t1, $f4 /* 07F4FC 7F04A9CC 00000000 */ nop /* 07F500 7F04A9D0 A6490028 */ sh $t1, 0x28($s2) /* 07F504 7F04A9D4 922C0005 */ lbu $t4, 5($s1) /* 07F508 7F04A9D8 448C4000 */ mtc1 $t4, $f8 /* 07F50C 7F04A9DC 05810004 */ bgez $t4, .L7F04A9F0 /* 07F510 7F04A9E0 468041A0 */ cvt.s.w $f6, $f8 /* 07F514 7F04A9E4 44819000 */ mtc1 $at, $f18 /* 07F518 7F04A9E8 00000000 */ nop /* 07F51C 7F04A9EC 46123180 */ add.s $f6, $f6, $f18 .L7F04A9F0: /* 07F520 7F04A9F0 C60A004C */ lwc1 $f10, 0x4c($s0) /* 07F524 7F04A9F4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F528 7F04A9F8 46185101 */ sub.s $f4, $f10, $f24 /* 07F52C 7F04A9FC 46043202 */ mul.s $f8, $f6, $f4 /* 07F530 7F04AA00 00000000 */ nop /* 07F534 7F04AA04 46004482 */ mul.s $f18, $f8, $f0 /* 07F538 7F04AA08 4600928D */ trunc.w.s $f10, $f18 /* 07F53C 7F04AA0C 440B5000 */ mfc1 $t3, $f10 /* 07F540 7F04AA10 00000000 */ nop /* 07F544 7F04AA14 A64B002A */ sh $t3, 0x2a($s2) /* 07F548 7F04AA18 922D0004 */ lbu $t5, 4($s1) /* 07F54C 7F04AA1C 448D3000 */ mtc1 $t5, $f6 /* 07F550 7F04AA20 05A10004 */ bgez $t5, .L7F04AA34 /* 07F554 7F04AA24 46803120 */ cvt.s.w $f4, $f6 /* 07F558 7F04AA28 44814000 */ mtc1 $at, $f8 /* 07F55C 7F04AA2C 00000000 */ nop /* 07F560 7F04AA30 46082100 */ add.s $f4, $f4, $f8 .L7F04AA34: /* 07F564 7F04AA34 C6120038 */ lwc1 $f18, 0x38($s0) /* 07F568 7F04AA38 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F56C 7F04AA3C 460E9280 */ add.s $f10, $f18, $f14 /* 07F570 7F04AA40 460A2182 */ mul.s $f6, $f4, $f10 /* 07F574 7F04AA44 00000000 */ nop /* 07F578 7F04AA48 46003202 */ mul.s $f8, $f6, $f0 /* 07F57C 7F04AA4C 4600448D */ trunc.w.s $f18, $f8 /* 07F580 7F04AA50 440E9000 */ mfc1 $t6, $f18 /* 07F584 7F04AA54 00000000 */ nop /* 07F588 7F04AA58 A64E0038 */ sh $t6, 0x38($s2) /* 07F58C 7F04AA5C 92380005 */ lbu $t8, 5($s1) /* 07F590 7F04AA60 44982000 */ mtc1 $t8, $f4 /* 07F594 7F04AA64 07010004 */ bgez $t8, .L7F04AA78 /* 07F598 7F04AA68 468022A0 */ cvt.s.w $f10, $f4 /* 07F59C 7F04AA6C 44813000 */ mtc1 $at, $f6 /* 07F5A0 7F04AA70 00000000 */ nop /* 07F5A4 7F04AA74 46065280 */ add.s $f10, $f10, $f6 .L7F04AA78: /* 07F5A8 7F04AA78 C608004C */ lwc1 $f8, 0x4c($s0) /* 07F5AC 7F04AA7C 46104481 */ sub.s $f18, $f8, $f16 /* 07F5B0 7F04AA80 46125102 */ mul.s $f4, $f10, $f18 /* 07F5B4 7F04AA84 00000000 */ nop /* 07F5B8 7F04AA88 46002182 */ mul.s $f6, $f4, $f0 /* 07F5BC 7F04AA8C 4600320D */ trunc.w.s $f8, $f6 /* 07F5C0 7F04AA90 44194000 */ mfc1 $t9, $f8 /* 07F5C4 7F04AA94 00000000 */ nop /* 07F5C8 7F04AA98 A659003A */ sh $t9, 0x3a($s2) .L7F04AA9C: /* 07F5CC 7F04AA9C 92020060 */ lbu $v0, 0x60($s0) /* 07F5D0 7F04AAA0 240C0002 */ li $t4, 2 /* 07F5D4 7F04AAA4 3C0DB700 */ lui $t5, 0xb700 /* 07F5D8 7F04AAA8 A242003C */ sb $v0, 0x3c($s2) /* 07F5DC 7F04AAAC A242002C */ sb $v0, 0x2c($s2) /* 07F5E0 7F04AAB0 A242001C */ sb $v0, 0x1c($s2) /* 07F5E4 7F04AAB4 A242000C */ sb $v0, 0xc($s2) /* 07F5E8 7F04AAB8 92020063 */ lbu $v0, 0x63($s0) /* 07F5EC 7F04AABC 240F2000 */ li $t7, 8192 /* 07F5F0 7F04AAC0 27A400BC */ addiu $a0, $sp, 0xbc /* 07F5F4 7F04AAC4 A242003D */ sb $v0, 0x3d($s2) /* 07F5F8 7F04AAC8 A242002D */ sb $v0, 0x2d($s2) /* 07F5FC 7F04AACC A242001D */ sb $v0, 0x1d($s2) /* 07F600 7F04AAD0 A242000D */ sb $v0, 0xd($s2) /* 07F604 7F04AAD4 92030066 */ lbu $v1, 0x66($s0) /* 07F608 7F04AAD8 A243003E */ sb $v1, 0x3e($s2) /* 07F60C 7F04AADC A243002E */ sb $v1, 0x2e($s2) /* 07F610 7F04AAE0 A243001E */ sb $v1, 0x1e($s2) /* 07F614 7F04AAE4 A243000E */ sb $v1, 0xe($s2) /* 07F618 7F04AAE8 92020069 */ lbu $v0, 0x69($s0) /* 07F61C 7F04AAEC A242003F */ sb $v0, 0x3f($s2) /* 07F620 7F04AAF0 A242002F */ sb $v0, 0x2f($s2) /* 07F624 7F04AAF4 A242001F */ sb $v0, 0x1f($s2) /* 07F628 7F04AAF8 A242000F */ sb $v0, 0xf($s2) /* 07F62C 7F04AAFC 92090069 */ lbu $t1, 0x69($s0) /* 07F630 7F04AB00 292100FF */ slti $at, $t1, 0xff /* 07F634 7F04AB04 50200003 */ beql $at, $zero, .L7F04AB14 /* 07F638 7F04AB08 8FAA00BC */ lw $t2, 0xbc($sp) /* 07F63C 7F04AB0C AFAC00C4 */ sw $t4, 0xc4($sp) /* 07F640 7F04AB10 8FAA00BC */ lw $t2, 0xbc($sp) .L7F04AB14: /* 07F644 7F04AB14 240E0002 */ li $t6, 2 /* 07F648 7F04AB18 02202825 */ move $a1, $s1 /* 07F64C 7F04AB1C 254B0008 */ addiu $t3, $t2, 8 /* 07F650 7F04AB20 AFAB00BC */ sw $t3, 0xbc($sp) /* 07F654 7F04AB24 AD4F0004 */ sw $t7, 4($t2) /* 07F658 7F04AB28 AD4D0000 */ sw $t5, ($t2) /* 07F65C 7F04AB2C AFAE0010 */ sw $t6, 0x10($sp) /* 07F660 7F04AB30 8FA700C0 */ lw $a3, 0xc0($sp) /* 07F664 7F04AB34 0FC1DB5A */ jal likely_generate_DL_for_image_declaration /* 07F668 7F04AB38 8FA600C4 */ lw $a2, 0xc4($sp) /* 07F66C 7F04AB3C 8FB000BC */ lw $s0, 0xbc($sp) /* 07F670 7F04AB40 3C190102 */ lui $t9, (0x01020040 >> 16) # lui $t9, 0x102 /* 07F674 7F04AB44 37390040 */ ori $t9, (0x01020040 & 0xFFFF) # ori $t9, $t9, 0x40 /* 07F678 7F04AB48 26080008 */ addiu $t0, $s0, 8 /* 07F67C 7F04AB4C AFA800BC */ sw $t0, 0xbc($sp) /* 07F680 7F04AB50 AE190000 */ sw $t9, ($s0) /* 07F684 7F04AB54 8FA900B0 */ lw $t1, 0xb0($sp) /* 07F688 7F04AB58 0C003A2C */ jal osVirtualToPhysical /* 07F68C 7F04AB5C 8D24000C */ lw $a0, 0xc($t1) /* 07F690 7F04AB60 AE020004 */ sw $v0, 4($s0) /* 07F694 7F04AB64 8FB100BC */ lw $s1, 0xbc($sp) /* 07F698 7F04AB68 3C0BBC00 */ lui $t3, (0xBC001006 >> 16) # lui $t3, 0xbc00 /* 07F69C 7F04AB6C 356B1006 */ ori $t3, (0xBC001006 & 0xFFFF) # ori $t3, $t3, 0x1006 /* 07F6A0 7F04AB70 262A0008 */ addiu $t2, $s1, 8 /* 07F6A4 7F04AB74 AFAA00BC */ sw $t2, 0xbc($sp) /* 07F6A8 7F04AB78 02402025 */ move $a0, $s2 /* 07F6AC 7F04AB7C 0C003A2C */ jal osVirtualToPhysical /* 07F6B0 7F04AB80 AE2B0000 */ sw $t3, ($s1) /* 07F6B4 7F04AB84 AE220004 */ sw $v0, 4($s1) /* 07F6B8 7F04AB88 8FAD00BC */ lw $t5, 0xbc($sp) /* 07F6BC 7F04AB8C 3C0E0430 */ lui $t6, (0x04300040 >> 16) # lui $t6, 0x430 /* 07F6C0 7F04AB90 35CE0040 */ ori $t6, (0x04300040 & 0xFFFF) # ori $t6, $t6, 0x40 /* 07F6C4 7F04AB94 25AF0008 */ addiu $t7, $t5, 8 /* 07F6C8 7F04AB98 AFAF00BC */ sw $t7, 0xbc($sp) /* 07F6CC 7F04AB9C 3C180400 */ lui $t8, 0x400 /* 07F6D0 7F04ABA0 ADB80004 */ sw $t8, 4($t5) /* 07F6D4 7F04ABA4 ADAE0000 */ sw $t6, ($t5) /* 07F6D8 7F04ABA8 8FA800BC */ lw $t0, 0xbc($sp) /* 07F6DC 7F04ABAC 3C09B100 */ lui $t1, (0xB1000032 >> 16) # lui $t1, 0xb100 /* 07F6E0 7F04ABB0 35290032 */ ori $t1, (0xB1000032 & 0xFFFF) # ori $t1, $t1, 0x32 /* 07F6E4 7F04ABB4 25190008 */ addiu $t9, $t0, 8 /* 07F6E8 7F04ABB8 AFB900BC */ sw $t9, 0xbc($sp) /* 07F6EC 7F04ABBC 240C2010 */ li $t4, 8208 /* 07F6F0 7F04ABC0 AD0C0004 */ sw $t4, 4($t0) /* 07F6F4 7F04ABC4 AD090000 */ sw $t1, ($t0) /* 07F6F8 7F04ABC8 8FAA00BC */ lw $t2, 0xbc($sp) /* 07F6FC 7F04ABCC 3C0DB800 */ lui $t5, 0xb800 /* 07F700 7F04ABD0 3C0F0601 */ lui $t7, 0x601 /* 07F704 7F04ABD4 254B0008 */ addiu $t3, $t2, 8 /* 07F708 7F04ABD8 AFAB00BC */ sw $t3, 0xbc($sp) /* 07F70C 7F04ABDC AD400004 */ sw $zero, 4($t2) /* 07F710 7F04ABE0 AD4D0000 */ sw $t5, ($t2) /* 07F714 7F04ABE4 8FA600A8 */ lw $a2, 0xa8($sp) /* 07F718 7F04ABE8 ACCF0000 */ sw $t7, ($a2) /* 07F71C 7F04ABEC 8FAE00BC */ lw $t6, 0xbc($sp) /* 07F720 7F04ABF0 ACCE0004 */ sw $t6, 4($a2) .L7F04ABF4: /* 07F724 7F04ABF4 8FBF004C */ lw $ra, 0x4c($sp) .L7F04ABF8: /* 07F728 7F04ABF8 8FA200BC */ lw $v0, 0xbc($sp) /* 07F72C 7F04ABFC D7B40020 */ ldc1 $f20, 0x20($sp) /* 07F730 7F04AC00 D7B60028 */ ldc1 $f22, 0x28($sp) /* 07F734 7F04AC04 D7B80030 */ ldc1 $f24, 0x30($sp) /* 07F738 7F04AC08 D7BA0038 */ ldc1 $f26, 0x38($sp) /* 07F73C 7F04AC0C 8FB00040 */ lw $s0, 0x40($sp) /* 07F740 7F04AC10 8FB10044 */ lw $s1, 0x44($sp) /* 07F744 7F04AC14 8FB20048 */ lw $s2, 0x48($sp) /* 07F748 7F04AC18 03E00008 */ jr $ra /* 07F74C 7F04AC1C 27BD00B0 */ addiu $sp, $sp, 0xb0 ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata glabel D_80052C68 .word 0x40c90fdb /*6.2831855*/ /*D:80052C6C*/ glabel jpt_80052C6C .word command00_reset_scroll_shift .word command01_horizontal_scroll .word command02_vertical_scroll .word command03_horizontal_pos .word command04_vertical_pos .word command05_zoomx .word command06_zoomy .word command07_use_image_from_global_monitor_table .word command08_halt_processing_for_time .word command09_jump .word command0A_jump_conditional .word command0B_restart .word command0C_break .word command0D_colour_transition .word command0E_set_rotation .word command0F_rotate glabel D_80052CAC .word 0x3fc90fdb /*1.5707964*/ glabel D_80052CB0 .word 0x3fb50481 /*1.4141999*/ glabel D_80052CB4 .word 0x3f59999a /*0.85000002*/ glabel D_80052CB8 .word 0x3e19999a /*0.15000001*/ glabel D_80052CBC .word 0x3e19999a /*0.15000001*/ glabel D_80052CC0 .word 0x3f666666 /*0.89999998*/ .text glabel process_monitor_animation_microcode /* 07EA78 7F049F48 27BDFF50 */ addiu $sp, $sp, -0xb0 /* 07EA7C 7F049F4C AFB10044 */ sw $s1, 0x44($sp) /* 07EA80 7F049F50 AFB00040 */ sw $s0, 0x40($sp) /* 07EA84 7F049F54 00C08025 */ move $s0, $a2 /* 07EA88 7F049F58 00A08825 */ move $s1, $a1 /* 07EA8C 7F049F5C AFBF004C */ sw $ra, 0x4c($sp) /* 07EA90 7F049F60 AFB20048 */ sw $s2, 0x48($sp) /* 07EA94 7F049F64 F7BA0038 */ sdc1 $f26, 0x38($sp) /* 07EA98 7F049F68 F7B80030 */ sdc1 $f24, 0x30($sp) /* 07EA9C 7F049F6C F7B60028 */ sdc1 $f22, 0x28($sp) /* 07EAA0 7F049F70 F7B40020 */ sdc1 $f20, 0x20($sp) /* 07EAA4 7F049F74 AFA400B0 */ sw $a0, 0xb0($sp) /* 07EAA8 7F049F78 10A0031E */ beqz $a1, .L7F04ABF4 /* 07EAAC 7F049F7C AFA700BC */ sw $a3, 0xbc($sp) /* 07EAB0 7F049F80 94AE0000 */ lhu $t6, ($a1) /* 07EAB4 7F049F84 24010018 */ li $at, 24 /* 07EAB8 7F049F88 31CF00FF */ andi $t7, $t6, 0xff /* 07EABC 7F049F8C 55E1031A */ bnel $t7, $at, .L7F04ABF8 /* 07EAC0 7F049F90 8FBF004C */ lw $ra, 0x4c($sp) /* 07EAC4 7F049F94 0FC2F5B1 */ jal sub_GAME_7F0BD6C4 /* 07EAC8 7F049F98 24040004 */ li $a0, 4 /* 07EACC 7F049F9C 8FB800BC */ lw $t8, 0xbc($sp) /* 07EAD0 7F049FA0 00409025 */ move $s2, $v0 /* 07EAD4 7F049FA4 8FA400B0 */ lw $a0, 0xb0($sp) /* 07EAD8 7F049FA8 27190008 */ addiu $t9, $t8, 8 /* 07EADC 7F049FAC AFB900BC */ sw $t9, 0xbc($sp) /* 07EAE0 7F049FB0 AFB800A8 */ sw $t8, 0xa8($sp) /* 07EAE4 7F049FB4 8E280004 */ lw $t0, 4($s1) /* 07EAE8 7F049FB8 02202825 */ move $a1, $s1 /* 07EAEC 7F049FBC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 07EAF0 7F049FC0 AFA800A4 */ sw $t0, 0xa4($sp) /* 07EAF4 7F049FC4 3C018005 */ lui $at, %hi(D_80052C68) /* 07EAF8 7F049FC8 C43A2C68 */ lwc1 $f26, %lo(D_80052C68)($at) /* 07EAFC 7F049FCC 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 07EB00 7F049FD0 4481C000 */ mtc1 $at, $f24 /* 07EB04 7F049FD4 3C013A80 */ li $at, 0x3A800000 # 0.000977 /* 07EB08 7F049FD8 4481B000 */ mtc1 $at, $f22 /* 07EB0C 7F049FDC 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EB10 7F049FE0 44811000 */ mtc1 $at, $f2 /* 07EB14 7F049FE4 4480A000 */ mtc1 $zero, $f20 /* 07EB18 7F049FE8 AFA200A0 */ sw $v0, 0xa0($sp) /* 07EB1C 7F049FEC 00008825 */ move $s1, $zero /* 07EB20 7F049FF0 96020004 */ lhu $v0, 4($s0) .L7F049FF4: /* 07EB24 7F049FF4 8E090000 */ lw $t1, ($s0) /* 07EB28 7F049FF8 00025080 */ sll $t2, $v0, 2 /* 07EB2C 7F049FFC 012A1821 */ addu $v1, $t1, $t2 /* 07EB30 7F04A000 8C6B0000 */ lw $t3, ($v1) /* 07EB34 7F04A004 2D610010 */ sltiu $at, $t3, 0x10 /* 07EB38 7F04A008 10200117 */ beqz $at, .L7F04A468 /* 07EB3C 7F04A00C 000B5880 */ sll $t3, $t3, 2 /* 07EB40 7F04A010 3C018005 */ lui $at, %hi(jpt_80052C6C) /* 07EB44 7F04A014 002B0821 */ addu $at, $at, $t3 /* 07EB48 7F04A018 8C2B2C6C */ lw $t3, %lo(jpt_80052C6C)($at) /* 07EB4C 7F04A01C 01600008 */ jr $t3 /* 07EB50 7F04A020 00000000 */ nop command00_reset_scroll_shift: /* 07EB54 7F04A024 244C0001 */ addiu $t4, $v0, 1 /* 07EB58 7F04A028 E6140040 */ swc1 $f20, 0x40($s0) /* 07EB5C 7F04A02C E6140054 */ swc1 $f20, 0x54($s0) /* 07EB60 7F04A030 1000010D */ b .L7F04A468 /* 07EB64 7F04A034 A60C0004 */ sh $t4, 4($s0) command01_horizontal_scroll: /* 07EB68 7F04A038 E614003C */ swc1 $f20, 0x3c($s0) /* 07EB6C 7F04A03C 8C6D0008 */ lw $t5, 8($v1) /* 07EB70 7F04A040 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EB74 7F04A044 448D2000 */ mtc1 $t5, $f4 /* 07EB78 7F04A048 05A10004 */ bgez $t5, .L7F04A05C /* 07EB7C 7F04A04C 468021A0 */ cvt.s.w $f6, $f4 /* 07EB80 7F04A050 44814000 */ mtc1 $at, $f8 /* 07EB84 7F04A054 00000000 */ nop /* 07EB88 7F04A058 46083180 */ add.s $f6, $f6, $f8 .L7F04A05C: /* 07EB8C 7F04A05C 4606C283 */ div.s $f10, $f24, $f6 /* 07EB90 7F04A060 C6000038 */ lwc1 $f0, 0x38($s0) /* 07EB94 7F04A064 244F0003 */ addiu $t7, $v0, 3 /* 07EB98 7F04A068 E6000044 */ swc1 $f0, 0x44($s0) /* 07EB9C 7F04A06C E60A0040 */ swc1 $f10, 0x40($s0) /* 07EBA0 7F04A070 8C6E0004 */ lw $t6, 4($v1) /* 07EBA4 7F04A074 A60F0004 */ sh $t7, 4($s0) /* 07EBA8 7F04A078 448E9000 */ mtc1 $t6, $f18 /* 07EBAC 7F04A07C 00000000 */ nop /* 07EBB0 7F04A080 46809120 */ cvt.s.w $f4, $f18 /* 07EBB4 7F04A084 46162202 */ mul.s $f8, $f4, $f22 /* 07EBB8 7F04A088 46080180 */ add.s $f6, $f0, $f8 /* 07EBBC 7F04A08C 100000F6 */ b .L7F04A468 /* 07EBC0 7F04A090 E6060048 */ swc1 $f6, 0x48($s0) command02_vertical_scroll: /* 07EBC4 7F04A094 E6140050 */ swc1 $f20, 0x50($s0) /* 07EBC8 7F04A098 8C780008 */ lw $t8, 8($v1) /* 07EBCC 7F04A09C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EBD0 7F04A0A0 44985000 */ mtc1 $t8, $f10 /* 07EBD4 7F04A0A4 07010004 */ bgez $t8, .L7F04A0B8 /* 07EBD8 7F04A0A8 468054A0 */ cvt.s.w $f18, $f10 /* 07EBDC 7F04A0AC 44812000 */ mtc1 $at, $f4 /* 07EBE0 7F04A0B0 00000000 */ nop /* 07EBE4 7F04A0B4 46049480 */ add.s $f18, $f18, $f4 .L7F04A0B8: /* 07EBE8 7F04A0B8 4612C203 */ div.s $f8, $f24, $f18 /* 07EBEC 7F04A0BC C600004C */ lwc1 $f0, 0x4c($s0) /* 07EBF0 7F04A0C0 24480003 */ addiu $t0, $v0, 3 /* 07EBF4 7F04A0C4 E6000058 */ swc1 $f0, 0x58($s0) /* 07EBF8 7F04A0C8 E6080054 */ swc1 $f8, 0x54($s0) /* 07EBFC 7F04A0CC 8C790004 */ lw $t9, 4($v1) /* 07EC00 7F04A0D0 A6080004 */ sh $t0, 4($s0) /* 07EC04 7F04A0D4 44993000 */ mtc1 $t9, $f6 /* 07EC08 7F04A0D8 00000000 */ nop /* 07EC0C 7F04A0DC 468032A0 */ cvt.s.w $f10, $f6 /* 07EC10 7F04A0E0 46165102 */ mul.s $f4, $f10, $f22 /* 07EC14 7F04A0E4 46040480 */ add.s $f18, $f0, $f4 /* 07EC18 7F04A0E8 100000DF */ b .L7F04A468 /* 07EC1C 7F04A0EC E612005C */ swc1 $f18, 0x5c($s0) command03_horizontal_pos: /* 07EC20 7F04A0F0 E614003C */ swc1 $f20, 0x3c($s0) /* 07EC24 7F04A0F4 8C690008 */ lw $t1, 8($v1) /* 07EC28 7F04A0F8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EC2C 7F04A0FC 44894000 */ mtc1 $t1, $f8 /* 07EC30 7F04A100 05210004 */ bgez $t1, .L7F04A114 /* 07EC34 7F04A104 468041A0 */ cvt.s.w $f6, $f8 /* 07EC38 7F04A108 44815000 */ mtc1 $at, $f10 /* 07EC3C 7F04A10C 00000000 */ nop /* 07EC40 7F04A110 460A3180 */ add.s $f6, $f6, $f10 .L7F04A114: /* 07EC44 7F04A114 4606C103 */ div.s $f4, $f24, $f6 /* 07EC48 7F04A118 C6120038 */ lwc1 $f18, 0x38($s0) /* 07EC4C 7F04A11C 244B0003 */ addiu $t3, $v0, 3 /* 07EC50 7F04A120 E6120044 */ swc1 $f18, 0x44($s0) /* 07EC54 7F04A124 E6040040 */ swc1 $f4, 0x40($s0) /* 07EC58 7F04A128 8C6A0004 */ lw $t2, 4($v1) /* 07EC5C 7F04A12C A60B0004 */ sh $t3, 4($s0) /* 07EC60 7F04A130 448A4000 */ mtc1 $t2, $f8 /* 07EC64 7F04A134 00000000 */ nop /* 07EC68 7F04A138 468042A0 */ cvt.s.w $f10, $f8 /* 07EC6C 7F04A13C 46165182 */ mul.s $f6, $f10, $f22 /* 07EC70 7F04A140 100000C9 */ b .L7F04A468 /* 07EC74 7F04A144 E6060048 */ swc1 $f6, 0x48($s0) command04_vertical_pos: /* 07EC78 7F04A148 E6140050 */ swc1 $f20, 0x50($s0) /* 07EC7C 7F04A14C 8C6C0008 */ lw $t4, 8($v1) /* 07EC80 7F04A150 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EC84 7F04A154 448C2000 */ mtc1 $t4, $f4 /* 07EC88 7F04A158 05810004 */ bgez $t4, .L7F04A16C /* 07EC8C 7F04A15C 468024A0 */ cvt.s.w $f18, $f4 /* 07EC90 7F04A160 44814000 */ mtc1 $at, $f8 /* 07EC94 7F04A164 00000000 */ nop /* 07EC98 7F04A168 46089480 */ add.s $f18, $f18, $f8 .L7F04A16C: /* 07EC9C 7F04A16C 4612C283 */ div.s $f10, $f24, $f18 /* 07ECA0 7F04A170 C606004C */ lwc1 $f6, 0x4c($s0) /* 07ECA4 7F04A174 244E0003 */ addiu $t6, $v0, 3 /* 07ECA8 7F04A178 E6060058 */ swc1 $f6, 0x58($s0) /* 07ECAC 7F04A17C E60A0054 */ swc1 $f10, 0x54($s0) /* 07ECB0 7F04A180 8C6D0004 */ lw $t5, 4($v1) /* 07ECB4 7F04A184 A60E0004 */ sh $t6, 4($s0) /* 07ECB8 7F04A188 448D2000 */ mtc1 $t5, $f4 /* 07ECBC 7F04A18C 00000000 */ nop /* 07ECC0 7F04A190 46802220 */ cvt.s.w $f8, $f4 /* 07ECC4 7F04A194 46164482 */ mul.s $f18, $f8, $f22 /* 07ECC8 7F04A198 100000B3 */ b .L7F04A468 /* 07ECCC 7F04A19C E612005C */ swc1 $f18, 0x5c($s0) command05_zoomx: /* 07ECD0 7F04A1A0 E6140014 */ swc1 $f20, 0x14($s0) /* 07ECD4 7F04A1A4 8C6F0008 */ lw $t7, 8($v1) /* 07ECD8 7F04A1A8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07ECDC 7F04A1AC 448F5000 */ mtc1 $t7, $f10 /* 07ECE0 7F04A1B0 05E10004 */ bgez $t7, .L7F04A1C4 /* 07ECE4 7F04A1B4 468051A0 */ cvt.s.w $f6, $f10 /* 07ECE8 7F04A1B8 44812000 */ mtc1 $at, $f4 /* 07ECEC 7F04A1BC 00000000 */ nop /* 07ECF0 7F04A1C0 46043180 */ add.s $f6, $f6, $f4 .L7F04A1C4: /* 07ECF4 7F04A1C4 4606C203 */ div.s $f8, $f24, $f6 /* 07ECF8 7F04A1C8 C6120010 */ lwc1 $f18, 0x10($s0) /* 07ECFC 7F04A1CC 24590003 */ addiu $t9, $v0, 3 /* 07ED00 7F04A1D0 E612001C */ swc1 $f18, 0x1c($s0) /* 07ED04 7F04A1D4 E6080018 */ swc1 $f8, 0x18($s0) /* 07ED08 7F04A1D8 8C780004 */ lw $t8, 4($v1) /* 07ED0C 7F04A1DC A6190004 */ sh $t9, 4($s0) /* 07ED10 7F04A1E0 44985000 */ mtc1 $t8, $f10 /* 07ED14 7F04A1E4 00000000 */ nop /* 07ED18 7F04A1E8 46805120 */ cvt.s.w $f4, $f10 /* 07ED1C 7F04A1EC 46162182 */ mul.s $f6, $f4, $f22 /* 07ED20 7F04A1F0 1000009D */ b .L7F04A468 /* 07ED24 7F04A1F4 E6060020 */ swc1 $f6, 0x20($s0) command06_zoomy: /* 07ED28 7F04A1F8 E6140028 */ swc1 $f20, 0x28($s0) /* 07ED2C 7F04A1FC 8C680008 */ lw $t0, 8($v1) /* 07ED30 7F04A200 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07ED34 7F04A204 44884000 */ mtc1 $t0, $f8 /* 07ED38 7F04A208 05010004 */ bgez $t0, .L7F04A21C /* 07ED3C 7F04A20C 468044A0 */ cvt.s.w $f18, $f8 /* 07ED40 7F04A210 44815000 */ mtc1 $at, $f10 /* 07ED44 7F04A214 00000000 */ nop /* 07ED48 7F04A218 460A9480 */ add.s $f18, $f18, $f10 .L7F04A21C: /* 07ED4C 7F04A21C 4612C103 */ div.s $f4, $f24, $f18 /* 07ED50 7F04A220 C6060024 */ lwc1 $f6, 0x24($s0) /* 07ED54 7F04A224 244A0003 */ addiu $t2, $v0, 3 /* 07ED58 7F04A228 E6060030 */ swc1 $f6, 0x30($s0) /* 07ED5C 7F04A22C E604002C */ swc1 $f4, 0x2c($s0) /* 07ED60 7F04A230 8C690004 */ lw $t1, 4($v1) /* 07ED64 7F04A234 A60A0004 */ sh $t2, 4($s0) /* 07ED68 7F04A238 44894000 */ mtc1 $t1, $f8 /* 07ED6C 7F04A23C 00000000 */ nop /* 07ED70 7F04A240 468042A0 */ cvt.s.w $f10, $f8 /* 07ED74 7F04A244 46165482 */ mul.s $f18, $f10, $f22 /* 07ED78 7F04A248 10000087 */ b .L7F04A468 /* 07ED7C 7F04A24C E6120034 */ swc1 $f18, 0x34($s0) command07_use_image_from_global_monitor_table: /* 07ED80 7F04A250 02002025 */ move $a0, $s0 /* 07ED84 7F04A254 0FC127D0 */ jal save_img_index_to_obj_ani_slot /* 07ED88 7F04A258 8C650004 */ lw $a1, 4($v1) /* 07ED8C 7F04A25C 960B0004 */ lhu $t3, 4($s0) /* 07ED90 7F04A260 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07ED94 7F04A264 44811000 */ mtc1 $at, $f2 /* 07ED98 7F04A268 256C0002 */ addiu $t4, $t3, 2 /* 07ED9C 7F04A26C 1000007E */ b .L7F04A468 /* 07EDA0 7F04A270 A60C0004 */ sh $t4, 4($s0) command08_halt_processing_for_time: /* 07EDA4 7F04A274 86020006 */ lh $v0, 6($s0) /* 07EDA8 7F04A278 3C0D8005 */ lui $t5, %hi(clock_timer) /* 07EDAC 7F04A27C 0442000E */ bltzl $v0, .L7F04A2B8 /* 07EDB0 7F04A280 8C680004 */ lw $t0, 4($v1) /* 07EDB4 7F04A284 8DAD8374 */ lw $t5, %lo(clock_timer)($t5) /* 07EDB8 7F04A288 004D7023 */ subu $t6, $v0, $t5 /* 07EDBC 7F04A28C A60E0006 */ sh $t6, 6($s0) /* 07EDC0 7F04A290 860F0006 */ lh $t7, 6($s0) /* 07EDC4 7F04A294 05E20004 */ bltzl $t7, .L7F04A2A8 /* 07EDC8 7F04A298 96180004 */ lhu $t8, 4($s0) /* 07EDCC 7F04A29C 10000072 */ b .L7F04A468 /* 07EDD0 7F04A2A0 24110001 */ li $s1, 1 /* 07EDD4 7F04A2A4 96180004 */ lhu $t8, 4($s0) .L7F04A2A8: /* 07EDD8 7F04A2A8 27190002 */ addiu $t9, $t8, 2 /* 07EDDC 7F04A2AC 1000006E */ b .L7F04A468 /* 07EDE0 7F04A2B0 A6190004 */ sh $t9, 4($s0) /* 07EDE4 7F04A2B4 8C680004 */ lw $t0, 4($v1) .L7F04A2B8: /* 07EDE8 7F04A2B8 24110001 */ li $s1, 1 /* 07EDEC 7F04A2BC 1000006A */ b .L7F04A468 /* 07EDF0 7F04A2C0 A6080006 */ sh $t0, 6($s0) command09_jump: /* 07EDF4 7F04A2C4 02002025 */ move $a0, $s0 /* 07EDF8 7F04A2C8 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 07EDFC 7F04A2CC 8C650004 */ lw $a1, 4($v1) /* 07EE00 7F04A2D0 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE04 7F04A2D4 44811000 */ mtc1 $at, $f2 /* 07EE08 7F04A2D8 10000063 */ b .L7F04A468 /* 07EE0C 7F04A2DC 00000000 */ nop command0A_jump_conditional: /* 07EE10 7F04A2E0 0C002914 */ jal get_random_value /* 07EE14 7F04A2E4 AFA30094 */ sw $v1, 0x94($sp) /* 07EE18 7F04A2E8 8FA30094 */ lw $v1, 0x94($sp) /* 07EE1C 7F04A2EC 00024C02 */ srl $t1, $v0, 0x10 /* 07EE20 7F04A2F0 02002025 */ move $a0, $s0 /* 07EE24 7F04A2F4 8C6A0008 */ lw $t2, 8($v1) /* 07EE28 7F04A2F8 012A082B */ sltu $at, $t1, $t2 /* 07EE2C 7F04A2FC 50200008 */ beql $at, $zero, .L7F04A320 /* 07EE30 7F04A300 960B0004 */ lhu $t3, 4($s0) /* 07EE34 7F04A304 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 07EE38 7F04A308 8C650004 */ lw $a1, 4($v1) /* 07EE3C 7F04A30C 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE40 7F04A310 44811000 */ mtc1 $at, $f2 /* 07EE44 7F04A314 10000054 */ b .L7F04A468 /* 07EE48 7F04A318 00000000 */ nop /* 07EE4C 7F04A31C 960B0004 */ lhu $t3, 4($s0) .L7F04A320: /* 07EE50 7F04A320 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 07EE54 7F04A324 44811000 */ mtc1 $at, $f2 /* 07EE58 7F04A328 256C0003 */ addiu $t4, $t3, 3 /* 07EE5C 7F04A32C A60C0004 */ sh $t4, 4($s0) /* 07EE60 7F04A330 1000004D */ b .L7F04A468 /* 07EE64 7F04A334 00000000 */ nop command0B_restart: /* 07EE68 7F04A338 1000004B */ b .L7F04A468 /* 07EE6C 7F04A33C A6000004 */ sh $zero, 4($s0) command0C_break: /* 07EE70 7F04A340 10000049 */ b .L7F04A468 /* 07EE74 7F04A344 24110001 */ li $s1, 1 command0D_colour_transition: /* 07EE78 7F04A348 E614006C */ swc1 $f20, 0x6c($s0) /* 07EE7C 7F04A34C 8C6D0008 */ lw $t5, 8($v1) /* 07EE80 7F04A350 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07EE84 7F04A354 448D2000 */ mtc1 $t5, $f4 /* 07EE88 7F04A358 05A10004 */ bgez $t5, .L7F04A36C /* 07EE8C 7F04A35C 468021A0 */ cvt.s.w $f6, $f4 /* 07EE90 7F04A360 44814000 */ mtc1 $at, $f8 /* 07EE94 7F04A364 00000000 */ nop /* 07EE98 7F04A368 46083180 */ add.s $f6, $f6, $f8 .L7F04A36C: /* 07EE9C 7F04A36C 4606C283 */ div.s $f10, $f24, $f6 /* 07EEA0 7F04A370 920E0060 */ lbu $t6, 0x60($s0) /* 07EEA4 7F04A374 92080063 */ lbu $t0, 0x63($s0) /* 07EEA8 7F04A378 920C0066 */ lbu $t4, 0x66($s0) /* 07EEAC 7F04A37C A20E0061 */ sb $t6, 0x61($s0) /* 07EEB0 7F04A380 92180069 */ lbu $t8, 0x69($s0) /* 07EEB4 7F04A384 E60A0070 */ swc1 $f10, 0x70($s0) /* 07EEB8 7F04A388 8C6F0004 */ lw $t7, 4($v1) /* 07EEBC 7F04A38C A2080064 */ sb $t0, 0x64($s0) /* 07EEC0 7F04A390 000FCE02 */ srl $t9, $t7, 0x18 /* 07EEC4 7F04A394 A2190062 */ sb $t9, 0x62($s0) /* 07EEC8 7F04A398 8C690004 */ lw $t1, 4($v1) /* 07EECC 7F04A39C A20C0067 */ sb $t4, 0x67($s0) /* 07EED0 7F04A3A0 00095C02 */ srl $t3, $t1, 0x10 /* 07EED4 7F04A3A4 A20B0065 */ sb $t3, 0x65($s0) /* 07EED8 7F04A3A8 8C6D0004 */ lw $t5, 4($v1) /* 07EEDC 7F04A3AC A218006A */ sb $t8, 0x6a($s0) /* 07EEE0 7F04A3B0 24490003 */ addiu $t1, $v0, 3 /* 07EEE4 7F04A3B4 000D7A02 */ srl $t7, $t5, 8 /* 07EEE8 7F04A3B8 A20F0068 */ sb $t7, 0x68($s0) /* 07EEEC 7F04A3BC 8C680004 */ lw $t0, 4($v1) /* 07EEF0 7F04A3C0 A6090004 */ sh $t1, 4($s0) /* 07EEF4 7F04A3C4 10000028 */ b .L7F04A468 /* 07EEF8 7F04A3C8 A208006B */ sb $t0, 0x6b($s0) command0E_set_rotation: /* 07EEFC 7F04A3CC 8C6A0004 */ lw $t2, 4($v1) /* 07EF00 7F04A3D0 244B0002 */ addiu $t3, $v0, 2 /* 07EF04 7F04A3D4 A60B0004 */ sh $t3, 4($s0) /* 07EF08 7F04A3D8 448A9000 */ mtc1 $t2, $f18 /* 07EF0C 7F04A3DC 00000000 */ nop /* 07EF10 7F04A3E0 46809120 */ cvt.s.w $f4, $f18 /* 07EF14 7F04A3E4 461A2202 */ mul.s $f8, $f4, $f26 /* 07EF18 7F04A3E8 46024183 */ div.s $f6, $f8, $f2 /* 07EF1C 7F04A3EC 1000001E */ b .L7F04A468 /* 07EF20 7F04A3F0 E606000C */ swc1 $f6, 0xc($s0) command0F_rotate: /* 07EF24 7F04A3F4 8C6C0004 */ lw $t4, 4($v1) /* 07EF28 7F04A3F8 3C018005 */ lui $at, %hi(jp_global_timer_delta) /* 07EF2C 7F04A3FC C42A8378 */ lwc1 $f10, %lo(jp_global_timer_delta)($at) /* 07EF30 7F04A400 448C9000 */ mtc1 $t4, $f18 /* 07EF34 7F04A404 00000000 */ nop /* 07EF38 7F04A408 46809120 */ cvt.s.w $f4, $f18 /* 07EF3C 7F04A40C 46045202 */ mul.s $f8, $f10, $f4 /* 07EF40 7F04A410 C60A000C */ lwc1 $f10, 0xc($s0) /* 07EF44 7F04A414 461A4182 */ mul.s $f6, $f8, $f26 /* 07EF48 7F04A418 46023483 */ div.s $f18, $f6, $f2 /* 07EF4C 7F04A41C 46125100 */ add.s $f4, $f10, $f18 /* 07EF50 7F04A420 E604000C */ swc1 $f4, 0xc($s0) /* 07EF54 7F04A424 C60C000C */ lwc1 $f12, 0xc($s0) /* 07EF58 7F04A428 460CD03E */ c.le.s $f26, $f12 /* 07EF5C 7F04A42C 00000000 */ nop /* 07EF60 7F04A430 45020005 */ bc1fl .L7F04A448 /* 07EF64 7F04A434 4614603C */ c.lt.s $f12, $f20 /* 07EF68 7F04A438 461A6201 */ sub.s $f8, $f12, $f26 /* 07EF6C 7F04A43C E608000C */ swc1 $f8, 0xc($s0) /* 07EF70 7F04A440 C60C000C */ lwc1 $f12, 0xc($s0) /* 07EF74 7F04A444 4614603C */ c.lt.s $f12, $f20 .L7F04A448: /* 07EF78 7F04A448 00000000 */ nop /* 07EF7C 7F04A44C 45020004 */ bc1fl .L7F04A460 /* 07EF80 7F04A450 960D0004 */ lhu $t5, 4($s0) /* 07EF84 7F04A454 461A6180 */ add.s $f6, $f12, $f26 /* 07EF88 7F04A458 E606000C */ swc1 $f6, 0xc($s0) /* 07EF8C 7F04A45C 960D0004 */ lhu $t5, 4($s0) .L7F04A460: /* 07EF90 7F04A460 25AE0002 */ addiu $t6, $t5, 2 /* 07EF94 7F04A464 A60E0004 */ sh $t6, 4($s0) def_7F04A01C: .L7F04A468: /* 07EF98 7F04A468 5220FEE2 */ beql $s1, $zero, .L7F049FF4 /* 07EF9C 7F04A46C 96020004 */ lhu $v0, 4($s0) /* 07EFA0 7F04A470 C6000018 */ lwc1 $f0, 0x18($s0) /* 07EFA4 7F04A474 4600A03C */ c.lt.s $f20, $f0 /* 07EFA8 7F04A478 00000000 */ nop /* 07EFAC 7F04A47C 45000017 */ bc1f .L7F04A4DC /* 07EFB0 7F04A480 3C028005 */ lui $v0, %hi(jp_global_timer_delta) /* 07EFB4 7F04A484 24428378 */ addiu $v0, %lo(jp_global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07EFB8 7F04A488 C4520000 */ lwc1 $f18, ($v0) /* 07EFBC 7F04A48C C60A0014 */ lwc1 $f10, 0x14($s0) /* 07EFC0 7F04A490 46120102 */ mul.s $f4, $f0, $f18 /* 07EFC4 7F04A494 46045200 */ add.s $f8, $f10, $f4 /* 07EFC8 7F04A498 E6080014 */ swc1 $f8, 0x14($s0) /* 07EFCC 7F04A49C C6020014 */ lwc1 $f2, 0x14($s0) /* 07EFD0 7F04A4A0 4618103C */ c.lt.s $f2, $f24 /* 07EFD4 7F04A4A4 00000000 */ nop /* 07EFD8 7F04A4A8 45020009 */ bc1fl .L7F04A4D0 /* 07EFDC 7F04A4AC C6080020 */ lwc1 $f8, 0x20($s0) /* 07EFE0 7F04A4B0 C600001C */ lwc1 $f0, 0x1c($s0) /* 07EFE4 7F04A4B4 C6060020 */ lwc1 $f6, 0x20($s0) /* 07EFE8 7F04A4B8 46003481 */ sub.s $f18, $f6, $f0 /* 07EFEC 7F04A4BC 46029282 */ mul.s $f10, $f18, $f2 /* 07EFF0 7F04A4C0 460A0100 */ add.s $f4, $f0, $f10 /* 07EFF4 7F04A4C4 10000005 */ b .L7F04A4DC /* 07EFF8 7F04A4C8 E6040010 */ swc1 $f4, 0x10($s0) /* 07EFFC 7F04A4CC C6080020 */ lwc1 $f8, 0x20($s0) .L7F04A4D0: /* 07F000 7F04A4D0 E6180014 */ swc1 $f24, 0x14($s0) /* 07F004 7F04A4D4 E6140018 */ swc1 $f20, 0x18($s0) /* 07F008 7F04A4D8 E6080010 */ swc1 $f8, 0x10($s0) .L7F04A4DC: /* 07F00C 7F04A4DC C600002C */ lwc1 $f0, 0x2c($s0) /* 07F010 7F04A4E0 3C028005 */ lui $v0, %hi(jp_global_timer_delta) /* 07F014 7F04A4E4 24428378 */ addiu $v0, %lo(jp_global_timer_delta) # addiu $v0, $v0, -0x7c88 /* 07F018 7F04A4E8 4600A03C */ c.lt.s $f20, $f0 /* 07F01C 7F04A4EC 00000000 */ nop /* 07F020 7F04A4F0 45020017 */ bc1fl .L7F04A550 /* 07F024 7F04A4F4 C6000040 */ lwc1 $f0, 0x40($s0) /* 07F028 7F04A4F8 C4520000 */ lwc1 $f18, ($v0) /* 07F02C 7F04A4FC C6060028 */ lwc1 $f6, 0x28($s0) /* 07F030 7F04A500 46120282 */ mul.s $f10, $f0, $f18 /* 07F034 7F04A504 460A3100 */ add.s $f4, $f6, $f10 /* 07F038 7F04A508 E6040028 */ swc1 $f4, 0x28($s0) /* 07F03C 7F04A50C C6020028 */ lwc1 $f2, 0x28($s0) /* 07F040 7F04A510 4618103C */ c.lt.s $f2, $f24 /* 07F044 7F04A514 00000000 */ nop /* 07F048 7F04A518 45020009 */ bc1fl .L7F04A540 /* 07F04C 7F04A51C C6040034 */ lwc1 $f4, 0x34($s0) /* 07F050 7F04A520 C6000030 */ lwc1 $f0, 0x30($s0) /* 07F054 7F04A524 C6080034 */ lwc1 $f8, 0x34($s0) /* 07F058 7F04A528 46004481 */ sub.s $f18, $f8, $f0 /* 07F05C 7F04A52C 46029182 */ mul.s $f6, $f18, $f2 /* 07F060 7F04A530 46060280 */ add.s $f10, $f0, $f6 /* 07F064 7F04A534 10000005 */ b .L7F04A54C /* 07F068 7F04A538 E60A0024 */ swc1 $f10, 0x24($s0) /* 07F06C 7F04A53C C6040034 */ lwc1 $f4, 0x34($s0) .L7F04A540: /* 07F070 7F04A540 E6180028 */ swc1 $f24, 0x28($s0) /* 07F074 7F04A544 E614002C */ swc1 $f20, 0x2c($s0) /* 07F078 7F04A548 E6040024 */ swc1 $f4, 0x24($s0) .L7F04A54C: /* 07F07C 7F04A54C C6000040 */ lwc1 $f0, 0x40($s0) .L7F04A550: /* 07F080 7F04A550 4600A03C */ c.lt.s $f20, $f0 /* 07F084 7F04A554 00000000 */ nop /* 07F088 7F04A558 45020017 */ bc1fl .L7F04A5B8 /* 07F08C 7F04A55C C6000054 */ lwc1 $f0, 0x54($s0) /* 07F090 7F04A560 C4520000 */ lwc1 $f18, ($v0) /* 07F094 7F04A564 C608003C */ lwc1 $f8, 0x3c($s0) /* 07F098 7F04A568 46120182 */ mul.s $f6, $f0, $f18 /* 07F09C 7F04A56C 46064280 */ add.s $f10, $f8, $f6 /* 07F0A0 7F04A570 E60A003C */ swc1 $f10, 0x3c($s0) /* 07F0A4 7F04A574 C602003C */ lwc1 $f2, 0x3c($s0) /* 07F0A8 7F04A578 4618103C */ c.lt.s $f2, $f24 /* 07F0AC 7F04A57C 00000000 */ nop /* 07F0B0 7F04A580 45020009 */ bc1fl .L7F04A5A8 /* 07F0B4 7F04A584 C60A0048 */ lwc1 $f10, 0x48($s0) /* 07F0B8 7F04A588 C6000044 */ lwc1 $f0, 0x44($s0) /* 07F0BC 7F04A58C C6040048 */ lwc1 $f4, 0x48($s0) /* 07F0C0 7F04A590 46002481 */ sub.s $f18, $f4, $f0 /* 07F0C4 7F04A594 46029202 */ mul.s $f8, $f18, $f2 /* 07F0C8 7F04A598 46080180 */ add.s $f6, $f0, $f8 /* 07F0CC 7F04A59C 10000005 */ b .L7F04A5B4 /* 07F0D0 7F04A5A0 E6060038 */ swc1 $f6, 0x38($s0) /* 07F0D4 7F04A5A4 C60A0048 */ lwc1 $f10, 0x48($s0) .L7F04A5A8: /* 07F0D8 7F04A5A8 E618003C */ swc1 $f24, 0x3c($s0) /* 07F0DC 7F04A5AC E6140040 */ swc1 $f20, 0x40($s0) /* 07F0E0 7F04A5B0 E60A0038 */ swc1 $f10, 0x38($s0) .L7F04A5B4: /* 07F0E4 7F04A5B4 C6000054 */ lwc1 $f0, 0x54($s0) .L7F04A5B8: /* 07F0E8 7F04A5B8 4600A03C */ c.lt.s $f20, $f0 /* 07F0EC 7F04A5BC 00000000 */ nop /* 07F0F0 7F04A5C0 45020017 */ bc1fl .L7F04A620 /* 07F0F4 7F04A5C4 C6020070 */ lwc1 $f2, 0x70($s0) /* 07F0F8 7F04A5C8 C4520000 */ lwc1 $f18, ($v0) /* 07F0FC 7F04A5CC C6040050 */ lwc1 $f4, 0x50($s0) /* 07F100 7F04A5D0 46120202 */ mul.s $f8, $f0, $f18 /* 07F104 7F04A5D4 46082180 */ add.s $f6, $f4, $f8 /* 07F108 7F04A5D8 E6060050 */ swc1 $f6, 0x50($s0) /* 07F10C 7F04A5DC C6020050 */ lwc1 $f2, 0x50($s0) /* 07F110 7F04A5E0 4618103C */ c.lt.s $f2, $f24 /* 07F114 7F04A5E4 00000000 */ nop /* 07F118 7F04A5E8 45020009 */ bc1fl .L7F04A610 /* 07F11C 7F04A5EC C606005C */ lwc1 $f6, 0x5c($s0) /* 07F120 7F04A5F0 C6000058 */ lwc1 $f0, 0x58($s0) /* 07F124 7F04A5F4 C60A005C */ lwc1 $f10, 0x5c($s0) /* 07F128 7F04A5F8 46005481 */ sub.s $f18, $f10, $f0 /* 07F12C 7F04A5FC 46029102 */ mul.s $f4, $f18, $f2 /* 07F130 7F04A600 46040200 */ add.s $f8, $f0, $f4 /* 07F134 7F04A604 10000005 */ b .L7F04A61C /* 07F138 7F04A608 E608004C */ swc1 $f8, 0x4c($s0) /* 07F13C 7F04A60C C606005C */ lwc1 $f6, 0x5c($s0) .L7F04A610: /* 07F140 7F04A610 E6180050 */ swc1 $f24, 0x50($s0) /* 07F144 7F04A614 E6140054 */ swc1 $f20, 0x54($s0) /* 07F148 7F04A618 E606004C */ swc1 $f6, 0x4c($s0) .L7F04A61C: /* 07F14C 7F04A61C C6020070 */ lwc1 $f2, 0x70($s0) .L7F04A620: /* 07F150 7F04A620 4602A03C */ c.lt.s $f20, $f2 /* 07F154 7F04A624 00000000 */ nop /* 07F158 7F04A628 4502003F */ bc1fl .L7F04A728 /* 07F15C 7F04A62C 8FAA00A0 */ lw $t2, 0xa0($sp) /* 07F160 7F04A630 C4520000 */ lwc1 $f18, ($v0) /* 07F164 7F04A634 C60A006C */ lwc1 $f10, 0x6c($s0) /* 07F168 7F04A638 46121102 */ mul.s $f4, $f2, $f18 /* 07F16C 7F04A63C 46045200 */ add.s $f8, $f10, $f4 /* 07F170 7F04A640 E608006C */ swc1 $f8, 0x6c($s0) /* 07F174 7F04A644 C600006C */ lwc1 $f0, 0x6c($s0) /* 07F178 7F04A648 4618003C */ c.lt.s $f0, $f24 /* 07F17C 7F04A64C 00000000 */ nop /* 07F180 7F04A650 4502002B */ bc1fl .L7F04A700 /* 07F184 7F04A654 920F0062 */ lbu $t7, 0x62($s0) /* 07F188 7F04A658 92020061 */ lbu $v0, 0x61($s0) /* 07F18C 7F04A65C 920F0062 */ lbu $t7, 0x62($s0) /* 07F190 7F04A660 92030064 */ lbu $v1, 0x64($s0) /* 07F194 7F04A664 920A0065 */ lbu $t2, 0x65($s0) /* 07F198 7F04A668 01E2C023 */ subu $t8, $t7, $v0 /* 07F19C 7F04A66C 44983000 */ mtc1 $t8, $f6 /* 07F1A0 7F04A670 01435823 */ subu $t3, $t2, $v1 /* 07F1A4 7F04A674 448B4000 */ mtc1 $t3, $f8 /* 07F1A8 7F04A678 468034A0 */ cvt.s.w $f18, $f6 /* 07F1AC 7F04A67C 920F0068 */ lbu $t7, 0x68($s0) /* 07F1B0 7F04A680 92040067 */ lbu $a0, 0x67($s0) /* 07F1B4 7F04A684 920A006B */ lbu $t2, 0x6b($s0) /* 07F1B8 7F04A688 9205006A */ lbu $a1, 0x6a($s0) /* 07F1BC 7F04A68C 468041A0 */ cvt.s.w $f6, $f8 /* 07F1C0 7F04A690 46009282 */ mul.s $f10, $f18, $f0 /* 07F1C4 7F04A694 01E4C023 */ subu $t8, $t7, $a0 /* 07F1C8 7F04A698 01455823 */ subu $t3, $t2, $a1 /* 07F1CC 7F04A69C 46003482 */ mul.s $f18, $f6, $f0 /* 07F1D0 7F04A6A0 4600510D */ trunc.w.s $f4, $f10 /* 07F1D4 7F04A6A4 4600928D */ trunc.w.s $f10, $f18 /* 07F1D8 7F04A6A8 44082000 */ mfc1 $t0, $f4 /* 07F1DC 7F04A6AC 44982000 */ mtc1 $t8, $f4 /* 07F1E0 7F04A6B0 440D5000 */ mfc1 $t5, $f10 /* 07F1E4 7F04A6B4 46802220 */ cvt.s.w $f8, $f4 /* 07F1E8 7F04A6B8 448B5000 */ mtc1 $t3, $f10 /* 07F1EC 7F04A6BC 00484821 */ addu $t1, $v0, $t0 /* 07F1F0 7F04A6C0 006D7021 */ addu $t6, $v1, $t5 /* 07F1F4 7F04A6C4 A2090060 */ sb $t1, 0x60($s0) /* 07F1F8 7F04A6C8 46805120 */ cvt.s.w $f4, $f10 /* 07F1FC 7F04A6CC 46004182 */ mul.s $f6, $f8, $f0 /* 07F200 7F04A6D0 A20E0063 */ sb $t6, 0x63($s0) /* 07F204 7F04A6D4 46002202 */ mul.s $f8, $f4, $f0 /* 07F208 7F04A6D8 4600348D */ trunc.w.s $f18, $f6 /* 07F20C 7F04A6DC 4600418D */ trunc.w.s $f6, $f8 /* 07F210 7F04A6E0 44089000 */ mfc1 $t0, $f18 /* 07F214 7F04A6E4 440D3000 */ mfc1 $t5, $f6 /* 07F218 7F04A6E8 00884821 */ addu $t1, $a0, $t0 /* 07F21C 7F04A6EC A2090066 */ sb $t1, 0x66($s0) /* 07F220 7F04A6F0 00AD7021 */ addu $t6, $a1, $t5 /* 07F224 7F04A6F4 1000000B */ b .L7F04A724 /* 07F228 7F04A6F8 A20E0069 */ sb $t6, 0x69($s0) /* 07F22C 7F04A6FC 920F0062 */ lbu $t7, 0x62($s0) .L7F04A700: /* 07F230 7F04A700 92180065 */ lbu $t8, 0x65($s0) /* 07F234 7F04A704 92190068 */ lbu $t9, 0x68($s0) /* 07F238 7F04A708 9208006B */ lbu $t0, 0x6b($s0) /* 07F23C 7F04A70C E618006C */ swc1 $f24, 0x6c($s0) /* 07F240 7F04A710 E6140070 */ swc1 $f20, 0x70($s0) /* 07F244 7F04A714 A20F0060 */ sb $t7, 0x60($s0) /* 07F248 7F04A718 A2180063 */ sb $t8, 0x63($s0) /* 07F24C 7F04A71C A2190066 */ sb $t9, 0x66($s0) /* 07F250 7F04A720 A2080069 */ sb $t0, 0x69($s0) .L7F04A724: /* 07F254 7F04A724 8FAA00A0 */ lw $t2, 0xa0($sp) .L7F04A728: /* 07F258 7F04A728 8FA300A4 */ lw $v1, 0xa4($sp) /* 07F25C 7F04A72C 8FA900BC */ lw $t1, 0xbc($sp) /* 07F260 7F04A730 AD520000 */ sw $s2, ($t2) /* 07F264 7F04A734 3C0F8009 */ lui $t7, %hi(monitorimages) /* 07F268 7F04A738 AD490004 */ sw $t1, 4($t2) /* 07F26C 7F04A73C 8C6B0008 */ lw $t3, 8($v1) /* 07F270 7F04A740 8D610000 */ lw $at, ($t3) /* 07F274 7F04A744 AE410000 */ sw $at, ($s2) /* 07F278 7F04A748 8D6D0004 */ lw $t5, 4($t3) /* 07F27C 7F04A74C AE4D0004 */ sw $t5, 4($s2) /* 07F280 7F04A750 8D610008 */ lw $at, 8($t3) /* 07F284 7F04A754 AE410008 */ sw $at, 8($s2) /* 07F288 7F04A758 8D6D000C */ lw $t5, 0xc($t3) /* 07F28C 7F04A75C AE4D000C */ sw $t5, 0xc($s2) /* 07F290 7F04A760 8C6E0008 */ lw $t6, 8($v1) /* 07F294 7F04A764 8DC10010 */ lw $at, 0x10($t6) /* 07F298 7F04A768 AE410010 */ sw $at, 0x10($s2) /* 07F29C 7F04A76C 8DD80014 */ lw $t8, 0x14($t6) /* 07F2A0 7F04A770 AE580014 */ sw $t8, 0x14($s2) /* 07F2A4 7F04A774 8DC10018 */ lw $at, 0x18($t6) /* 07F2A8 7F04A778 AE410018 */ sw $at, 0x18($s2) /* 07F2AC 7F04A77C 8DD8001C */ lw $t8, 0x1c($t6) /* 07F2B0 7F04A780 AE58001C */ sw $t8, 0x1c($s2) /* 07F2B4 7F04A784 8C790008 */ lw $t9, 8($v1) /* 07F2B8 7F04A788 8F210020 */ lw $at, 0x20($t9) /* 07F2BC 7F04A78C AE410020 */ sw $at, 0x20($s2) /* 07F2C0 7F04A790 8F290024 */ lw $t1, 0x24($t9) /* 07F2C4 7F04A794 AE490024 */ sw $t1, 0x24($s2) /* 07F2C8 7F04A798 8F210028 */ lw $at, 0x28($t9) /* 07F2CC 7F04A79C AE410028 */ sw $at, 0x28($s2) /* 07F2D0 7F04A7A0 8F29002C */ lw $t1, 0x2c($t9) /* 07F2D4 7F04A7A4 AE49002C */ sw $t1, 0x2c($s2) /* 07F2D8 7F04A7A8 8C6A0008 */ lw $t2, 8($v1) /* 07F2DC 7F04A7AC 8D410030 */ lw $at, 0x30($t2) /* 07F2E0 7F04A7B0 AE410030 */ sw $at, 0x30($s2) /* 07F2E4 7F04A7B4 8D4B0034 */ lw $t3, 0x34($t2) /* 07F2E8 7F04A7B8 AE4B0034 */ sw $t3, 0x34($s2) /* 07F2EC 7F04A7BC 8D410038 */ lw $at, 0x38($t2) /* 07F2F0 7F04A7C0 AE410038 */ sw $at, 0x38($s2) /* 07F2F4 7F04A7C4 8D4B003C */ lw $t3, 0x3c($t2) /* 07F2F8 7F04A7C8 AE4B003C */ sw $t3, 0x3c($s2) /* 07F2FC 7F04A7CC 8E020008 */ lw $v0, 8($s0) /* 07F300 7F04A7D0 2C410064 */ sltiu $at, $v0, 0x64 /* 07F304 7F04A7D4 10200007 */ beqz $at, .L7F04A7F4 /* 07F308 7F04A7D8 00408825 */ move $s1, $v0 /* 07F30C 7F04A7DC 00026880 */ sll $t5, $v0, 2 /* 07F310 7F04A7E0 8DEFD120 */ lw $t7, %lo(monitorimages)($t7) /* 07F314 7F04A7E4 01A26823 */ subu $t5, $t5, $v0 /* 07F318 7F04A7E8 000D6880 */ sll $t5, $t5, 2 /* 07F31C 7F04A7EC 10000001 */ b .L7F04A7F4 /* 07F320 7F04A7F0 01AF8821 */ addu $s1, $t5, $t7 .L7F04A7F4: /* 07F324 7F04A7F4 122000A9 */ beqz $s1, .L7F04AA9C /* 07F328 7F04A7F8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 07F32C 7F04A7FC 44810000 */ mtc1 $at, $f0 /* 07F330 7F04A800 C6120010 */ lwc1 $f18, 0x10($s0) /* 07F334 7F04A804 C60A0024 */ lwc1 $f10, 0x24($s0) /* 07F338 7F04A808 C60C000C */ lwc1 $f12, 0xc($s0) /* 07F33C 7F04A80C 46009582 */ mul.s $f22, $f18, $f0 /* 07F340 7F04A810 460CA032 */ c.eq.s $f20, $f12 /* 07F344 7F04A814 46005602 */ mul.s $f24, $f10, $f0 /* 07F348 7F04A818 4600B386 */ mov.s $f14, $f22 /* 07F34C 7F04A81C 45010015 */ bc1t .L7F04A874 /* 07F350 7F04A820 4600C406 */ mov.s $f16, $f24 /* 07F354 7F04A824 E7AE0054 */ swc1 $f14, 0x54($sp) /* 07F358 7F04A828 0FC15FA8 */ jal cosf /* 07F35C 7F04A82C E7B00050 */ swc1 $f16, 0x50($sp) /* 07F360 7F04A830 3C018005 */ lui $at, %hi(D_80052CB0) /* 07F364 7F04A834 C43A2CB0 */ lwc1 $f26, %lo(D_80052CB0)($at) /* 07F368 7F04A838 C60C000C */ lwc1 $f12, 0xc($s0) /* 07F36C 7F04A83C 461A0502 */ mul.s $f20, $f0, $f26 /* 07F370 7F04A840 0FC15FAB */ jal sinf /* 07F374 7F04A844 00000000 */ nop /* 07F378 7F04A848 4614B582 */ mul.s $f22, $f22, $f20 /* 07F37C 7F04A84C C7AE0054 */ lwc1 $f14, 0x54($sp) /* 07F380 7F04A850 C7B00050 */ lwc1 $f16, 0x50($sp) /* 07F384 7F04A854 461A0082 */ mul.s $f2, $f0, $f26 /* 07F388 7F04A858 00000000 */ nop /* 07F38C 7F04A85C 4602C602 */ mul.s $f24, $f24, $f2 /* 07F390 7F04A860 00000000 */ nop /* 07F394 7F04A864 46027382 */ mul.s $f14, $f14, $f2 /* 07F398 7F04A868 00000000 */ nop /* 07F39C 7F04A86C 46148402 */ mul.s $f16, $f16, $f20 /* 07F3A0 7F04A870 00000000 */ nop .L7F04A874: /* 07F3A4 7F04A874 922E0004 */ lbu $t6, 4($s1) /* 07F3A8 7F04A878 3C014200 */ li $at, 0x42000000 # 32.000000 /* 07F3AC 7F04A87C 44810000 */ mtc1 $at, $f0 /* 07F3B0 7F04A880 448E4000 */ mtc1 $t6, $f8 /* 07F3B4 7F04A884 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F3B8 7F04A888 05C10004 */ bgez $t6, .L7F04A89C /* 07F3BC 7F04A88C 468041A0 */ cvt.s.w $f6, $f8 /* 07F3C0 7F04A890 44819000 */ mtc1 $at, $f18 /* 07F3C4 7F04A894 00000000 */ nop /* 07F3C8 7F04A898 46123180 */ add.s $f6, $f6, $f18 .L7F04A89C: /* 07F3CC 7F04A89C C60A0038 */ lwc1 $f10, 0x38($s0) /* 07F3D0 7F04A8A0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F3D4 7F04A8A4 46165100 */ add.s $f4, $f10, $f22 /* 07F3D8 7F04A8A8 46043202 */ mul.s $f8, $f6, $f4 /* 07F3DC 7F04A8AC 00000000 */ nop /* 07F3E0 7F04A8B0 46004482 */ mul.s $f18, $f8, $f0 /* 07F3E4 7F04A8B4 4600928D */ trunc.w.s $f10, $f18 /* 07F3E8 7F04A8B8 44085000 */ mfc1 $t0, $f10 /* 07F3EC 7F04A8BC 00000000 */ nop /* 07F3F0 7F04A8C0 A6480008 */ sh $t0, 8($s2) /* 07F3F4 7F04A8C4 92390005 */ lbu $t9, 5($s1) /* 07F3F8 7F04A8C8 44993000 */ mtc1 $t9, $f6 /* 07F3FC 7F04A8CC 07210004 */ bgez $t9, .L7F04A8E0 /* 07F400 7F04A8D0 46803120 */ cvt.s.w $f4, $f6 /* 07F404 7F04A8D4 44814000 */ mtc1 $at, $f8 /* 07F408 7F04A8D8 00000000 */ nop /* 07F40C 7F04A8DC 46082100 */ add.s $f4, $f4, $f8 .L7F04A8E0: /* 07F410 7F04A8E0 C612004C */ lwc1 $f18, 0x4c($s0) /* 07F414 7F04A8E4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F418 7F04A8E8 46189280 */ add.s $f10, $f18, $f24 /* 07F41C 7F04A8EC 460A2182 */ mul.s $f6, $f4, $f10 /* 07F420 7F04A8F0 00000000 */ nop /* 07F424 7F04A8F4 46003202 */ mul.s $f8, $f6, $f0 /* 07F428 7F04A8F8 4600448D */ trunc.w.s $f18, $f8 /* 07F42C 7F04A8FC 440C9000 */ mfc1 $t4, $f18 /* 07F430 7F04A900 00000000 */ nop /* 07F434 7F04A904 A64C000A */ sh $t4, 0xa($s2) /* 07F438 7F04A908 922A0004 */ lbu $t2, 4($s1) /* 07F43C 7F04A90C 448A2000 */ mtc1 $t2, $f4 /* 07F440 7F04A910 05410004 */ bgez $t2, .L7F04A924 /* 07F444 7F04A914 468022A0 */ cvt.s.w $f10, $f4 /* 07F448 7F04A918 44813000 */ mtc1 $at, $f6 /* 07F44C 7F04A91C 00000000 */ nop /* 07F450 7F04A920 46065280 */ add.s $f10, $f10, $f6 .L7F04A924: /* 07F454 7F04A924 C6080038 */ lwc1 $f8, 0x38($s0) /* 07F458 7F04A928 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F45C 7F04A92C 460E4481 */ sub.s $f18, $f8, $f14 /* 07F460 7F04A930 46125102 */ mul.s $f4, $f10, $f18 /* 07F464 7F04A934 00000000 */ nop /* 07F468 7F04A938 46002182 */ mul.s $f6, $f4, $f0 /* 07F46C 7F04A93C 4600320D */ trunc.w.s $f8, $f6 /* 07F470 7F04A940 440D4000 */ mfc1 $t5, $f8 /* 07F474 7F04A944 00000000 */ nop /* 07F478 7F04A948 A64D0018 */ sh $t5, 0x18($s2) /* 07F47C 7F04A94C 922F0005 */ lbu $t7, 5($s1) /* 07F480 7F04A950 448F5000 */ mtc1 $t7, $f10 /* 07F484 7F04A954 05E10004 */ bgez $t7, .L7F04A968 /* 07F488 7F04A958 468054A0 */ cvt.s.w $f18, $f10 /* 07F48C 7F04A95C 44812000 */ mtc1 $at, $f4 /* 07F490 7F04A960 00000000 */ nop /* 07F494 7F04A964 46049480 */ add.s $f18, $f18, $f4 .L7F04A968: /* 07F498 7F04A968 C606004C */ lwc1 $f6, 0x4c($s0) /* 07F49C 7F04A96C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F4A0 7F04A970 46103200 */ add.s $f8, $f6, $f16 /* 07F4A4 7F04A974 46089282 */ mul.s $f10, $f18, $f8 /* 07F4A8 7F04A978 00000000 */ nop /* 07F4AC 7F04A97C 46005102 */ mul.s $f4, $f10, $f0 /* 07F4B0 7F04A980 4600218D */ trunc.w.s $f6, $f4 /* 07F4B4 7F04A984 44183000 */ mfc1 $t8, $f6 /* 07F4B8 7F04A988 00000000 */ nop /* 07F4BC 7F04A98C A658001A */ sh $t8, 0x1a($s2) /* 07F4C0 7F04A990 92280004 */ lbu $t0, 4($s1) /* 07F4C4 7F04A994 44889000 */ mtc1 $t0, $f18 /* 07F4C8 7F04A998 05010004 */ bgez $t0, .L7F04A9AC /* 07F4CC 7F04A99C 46809220 */ cvt.s.w $f8, $f18 /* 07F4D0 7F04A9A0 44815000 */ mtc1 $at, $f10 /* 07F4D4 7F04A9A4 00000000 */ nop /* 07F4D8 7F04A9A8 460A4200 */ add.s $f8, $f8, $f10 .L7F04A9AC: /* 07F4DC 7F04A9AC C6040038 */ lwc1 $f4, 0x38($s0) /* 07F4E0 7F04A9B0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F4E4 7F04A9B4 46162181 */ sub.s $f6, $f4, $f22 /* 07F4E8 7F04A9B8 46064482 */ mul.s $f18, $f8, $f6 /* 07F4EC 7F04A9BC 00000000 */ nop /* 07F4F0 7F04A9C0 46009282 */ mul.s $f10, $f18, $f0 /* 07F4F4 7F04A9C4 4600510D */ trunc.w.s $f4, $f10 /* 07F4F8 7F04A9C8 44092000 */ mfc1 $t1, $f4 /* 07F4FC 7F04A9CC 00000000 */ nop /* 07F500 7F04A9D0 A6490028 */ sh $t1, 0x28($s2) /* 07F504 7F04A9D4 922C0005 */ lbu $t4, 5($s1) /* 07F508 7F04A9D8 448C4000 */ mtc1 $t4, $f8 /* 07F50C 7F04A9DC 05810004 */ bgez $t4, .L7F04A9F0 /* 07F510 7F04A9E0 468041A0 */ cvt.s.w $f6, $f8 /* 07F514 7F04A9E4 44819000 */ mtc1 $at, $f18 /* 07F518 7F04A9E8 00000000 */ nop /* 07F51C 7F04A9EC 46123180 */ add.s $f6, $f6, $f18 .L7F04A9F0: /* 07F520 7F04A9F0 C60A004C */ lwc1 $f10, 0x4c($s0) /* 07F524 7F04A9F4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F528 7F04A9F8 46185101 */ sub.s $f4, $f10, $f24 /* 07F52C 7F04A9FC 46043202 */ mul.s $f8, $f6, $f4 /* 07F530 7F04AA00 00000000 */ nop /* 07F534 7F04AA04 46004482 */ mul.s $f18, $f8, $f0 /* 07F538 7F04AA08 4600928D */ trunc.w.s $f10, $f18 /* 07F53C 7F04AA0C 440B5000 */ mfc1 $t3, $f10 /* 07F540 7F04AA10 00000000 */ nop /* 07F544 7F04AA14 A64B002A */ sh $t3, 0x2a($s2) /* 07F548 7F04AA18 922D0004 */ lbu $t5, 4($s1) /* 07F54C 7F04AA1C 448D3000 */ mtc1 $t5, $f6 /* 07F550 7F04AA20 05A10004 */ bgez $t5, .L7F04AA34 /* 07F554 7F04AA24 46803120 */ cvt.s.w $f4, $f6 /* 07F558 7F04AA28 44814000 */ mtc1 $at, $f8 /* 07F55C 7F04AA2C 00000000 */ nop /* 07F560 7F04AA30 46082100 */ add.s $f4, $f4, $f8 .L7F04AA34: /* 07F564 7F04AA34 C6120038 */ lwc1 $f18, 0x38($s0) /* 07F568 7F04AA38 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 07F56C 7F04AA3C 460E9280 */ add.s $f10, $f18, $f14 /* 07F570 7F04AA40 460A2182 */ mul.s $f6, $f4, $f10 /* 07F574 7F04AA44 00000000 */ nop /* 07F578 7F04AA48 46003202 */ mul.s $f8, $f6, $f0 /* 07F57C 7F04AA4C 4600448D */ trunc.w.s $f18, $f8 /* 07F580 7F04AA50 440E9000 */ mfc1 $t6, $f18 /* 07F584 7F04AA54 00000000 */ nop /* 07F588 7F04AA58 A64E0038 */ sh $t6, 0x38($s2) /* 07F58C 7F04AA5C 92380005 */ lbu $t8, 5($s1) /* 07F590 7F04AA60 44982000 */ mtc1 $t8, $f4 /* 07F594 7F04AA64 07010004 */ bgez $t8, .L7F04AA78 /* 07F598 7F04AA68 468022A0 */ cvt.s.w $f10, $f4 /* 07F59C 7F04AA6C 44813000 */ mtc1 $at, $f6 /* 07F5A0 7F04AA70 00000000 */ nop /* 07F5A4 7F04AA74 46065280 */ add.s $f10, $f10, $f6 .L7F04AA78: /* 07F5A8 7F04AA78 C608004C */ lwc1 $f8, 0x4c($s0) /* 07F5AC 7F04AA7C 46104481 */ sub.s $f18, $f8, $f16 /* 07F5B0 7F04AA80 46125102 */ mul.s $f4, $f10, $f18 /* 07F5B4 7F04AA84 00000000 */ nop /* 07F5B8 7F04AA88 46002182 */ mul.s $f6, $f4, $f0 /* 07F5BC 7F04AA8C 4600320D */ trunc.w.s $f8, $f6 /* 07F5C0 7F04AA90 44194000 */ mfc1 $t9, $f8 /* 07F5C4 7F04AA94 00000000 */ nop /* 07F5C8 7F04AA98 A659003A */ sh $t9, 0x3a($s2) .L7F04AA9C: /* 07F5CC 7F04AA9C 92020060 */ lbu $v0, 0x60($s0) /* 07F5D0 7F04AAA0 240C0002 */ li $t4, 2 /* 07F5D4 7F04AAA4 3C0DB700 */ lui $t5, 0xb700 /* 07F5D8 7F04AAA8 A242003C */ sb $v0, 0x3c($s2) /* 07F5DC 7F04AAAC A242002C */ sb $v0, 0x2c($s2) /* 07F5E0 7F04AAB0 A242001C */ sb $v0, 0x1c($s2) /* 07F5E4 7F04AAB4 A242000C */ sb $v0, 0xc($s2) /* 07F5E8 7F04AAB8 92020063 */ lbu $v0, 0x63($s0) /* 07F5EC 7F04AABC 240F2000 */ li $t7, 8192 /* 07F5F0 7F04AAC0 27A400BC */ addiu $a0, $sp, 0xbc /* 07F5F4 7F04AAC4 A242003D */ sb $v0, 0x3d($s2) /* 07F5F8 7F04AAC8 A242002D */ sb $v0, 0x2d($s2) /* 07F5FC 7F04AACC A242001D */ sb $v0, 0x1d($s2) /* 07F600 7F04AAD0 A242000D */ sb $v0, 0xd($s2) /* 07F604 7F04AAD4 92030066 */ lbu $v1, 0x66($s0) /* 07F608 7F04AAD8 A243003E */ sb $v1, 0x3e($s2) /* 07F60C 7F04AADC A243002E */ sb $v1, 0x2e($s2) /* 07F610 7F04AAE0 A243001E */ sb $v1, 0x1e($s2) /* 07F614 7F04AAE4 A243000E */ sb $v1, 0xe($s2) /* 07F618 7F04AAE8 92020069 */ lbu $v0, 0x69($s0) /* 07F61C 7F04AAEC A242003F */ sb $v0, 0x3f($s2) /* 07F620 7F04AAF0 A242002F */ sb $v0, 0x2f($s2) /* 07F624 7F04AAF4 A242001F */ sb $v0, 0x1f($s2) /* 07F628 7F04AAF8 A242000F */ sb $v0, 0xf($s2) /* 07F62C 7F04AAFC 92090069 */ lbu $t1, 0x69($s0) /* 07F630 7F04AB00 292100FF */ slti $at, $t1, 0xff /* 07F634 7F04AB04 50200003 */ beql $at, $zero, .L7F04AB14 /* 07F638 7F04AB08 8FAA00BC */ lw $t2, 0xbc($sp) /* 07F63C 7F04AB0C AFAC00C4 */ sw $t4, 0xc4($sp) /* 07F640 7F04AB10 8FAA00BC */ lw $t2, 0xbc($sp) .L7F04AB14: /* 07F644 7F04AB14 240E0002 */ li $t6, 2 /* 07F648 7F04AB18 02202825 */ move $a1, $s1 /* 07F64C 7F04AB1C 254B0008 */ addiu $t3, $t2, 8 /* 07F650 7F04AB20 AFAB00BC */ sw $t3, 0xbc($sp) /* 07F654 7F04AB24 AD4F0004 */ sw $t7, 4($t2) /* 07F658 7F04AB28 AD4D0000 */ sw $t5, ($t2) /* 07F65C 7F04AB2C AFAE0010 */ sw $t6, 0x10($sp) /* 07F660 7F04AB30 8FA700C0 */ lw $a3, 0xc0($sp) /* 07F664 7F04AB34 0FC1DB5A */ jal likely_generate_DL_for_image_declaration /* 07F668 7F04AB38 8FA600C4 */ lw $a2, 0xc4($sp) /* 07F66C 7F04AB3C 8FB000BC */ lw $s0, 0xbc($sp) /* 07F670 7F04AB40 3C190102 */ lui $t9, (0x01020040 >> 16) # lui $t9, 0x102 /* 07F674 7F04AB44 37390040 */ ori $t9, (0x01020040 & 0xFFFF) # ori $t9, $t9, 0x40 /* 07F678 7F04AB48 26080008 */ addiu $t0, $s0, 8 /* 07F67C 7F04AB4C AFA800BC */ sw $t0, 0xbc($sp) /* 07F680 7F04AB50 AE190000 */ sw $t9, ($s0) /* 07F684 7F04AB54 8FA900B0 */ lw $t1, 0xb0($sp) /* 07F688 7F04AB58 0C003A2C */ jal osVirtualToPhysical /* 07F68C 7F04AB5C 8D24000C */ lw $a0, 0xc($t1) /* 07F690 7F04AB60 AE020004 */ sw $v0, 4($s0) /* 07F694 7F04AB64 8FB100BC */ lw $s1, 0xbc($sp) /* 07F698 7F04AB68 3C0BBC00 */ lui $t3, (0xBC001006 >> 16) # lui $t3, 0xbc00 /* 07F69C 7F04AB6C 356B1006 */ ori $t3, (0xBC001006 & 0xFFFF) # ori $t3, $t3, 0x1006 /* 07F6A0 7F04AB70 262A0008 */ addiu $t2, $s1, 8 /* 07F6A4 7F04AB74 AFAA00BC */ sw $t2, 0xbc($sp) /* 07F6A8 7F04AB78 02402025 */ move $a0, $s2 /* 07F6AC 7F04AB7C 0C003A2C */ jal osVirtualToPhysical /* 07F6B0 7F04AB80 AE2B0000 */ sw $t3, ($s1) /* 07F6B4 7F04AB84 AE220004 */ sw $v0, 4($s1) /* 07F6B8 7F04AB88 8FAD00BC */ lw $t5, 0xbc($sp) /* 07F6BC 7F04AB8C 3C0E0430 */ lui $t6, (0x04300040 >> 16) # lui $t6, 0x430 /* 07F6C0 7F04AB90 35CE0040 */ ori $t6, (0x04300040 & 0xFFFF) # ori $t6, $t6, 0x40 /* 07F6C4 7F04AB94 25AF0008 */ addiu $t7, $t5, 8 /* 07F6C8 7F04AB98 AFAF00BC */ sw $t7, 0xbc($sp) /* 07F6CC 7F04AB9C 3C180400 */ lui $t8, 0x400 /* 07F6D0 7F04ABA0 ADB80004 */ sw $t8, 4($t5) /* 07F6D4 7F04ABA4 ADAE0000 */ sw $t6, ($t5) /* 07F6D8 7F04ABA8 8FA800BC */ lw $t0, 0xbc($sp) /* 07F6DC 7F04ABAC 3C09B100 */ lui $t1, (0xB1000032 >> 16) # lui $t1, 0xb100 /* 07F6E0 7F04ABB0 35290032 */ ori $t1, (0xB1000032 & 0xFFFF) # ori $t1, $t1, 0x32 /* 07F6E4 7F04ABB4 25190008 */ addiu $t9, $t0, 8 /* 07F6E8 7F04ABB8 AFB900BC */ sw $t9, 0xbc($sp) /* 07F6EC 7F04ABBC 240C2010 */ li $t4, 8208 /* 07F6F0 7F04ABC0 AD0C0004 */ sw $t4, 4($t0) /* 07F6F4 7F04ABC4 AD090000 */ sw $t1, ($t0) /* 07F6F8 7F04ABC8 8FAA00BC */ lw $t2, 0xbc($sp) /* 07F6FC 7F04ABCC 3C0DB800 */ lui $t5, 0xb800 /* 07F700 7F04ABD0 3C0F0601 */ lui $t7, 0x601 /* 07F704 7F04ABD4 254B0008 */ addiu $t3, $t2, 8 /* 07F708 7F04ABD8 AFAB00BC */ sw $t3, 0xbc($sp) /* 07F70C 7F04ABDC AD400004 */ sw $zero, 4($t2) /* 07F710 7F04ABE0 AD4D0000 */ sw $t5, ($t2) /* 07F714 7F04ABE4 8FA600A8 */ lw $a2, 0xa8($sp) /* 07F718 7F04ABE8 ACCF0000 */ sw $t7, ($a2) /* 07F71C 7F04ABEC 8FAE00BC */ lw $t6, 0xbc($sp) /* 07F720 7F04ABF0 ACCE0004 */ sw $t6, 4($a2) .L7F04ABF4: /* 07F724 7F04ABF4 8FBF004C */ lw $ra, 0x4c($sp) .L7F04ABF8: /* 07F728 7F04ABF8 8FA200BC */ lw $v0, 0xbc($sp) /* 07F72C 7F04ABFC D7B40020 */ ldc1 $f20, 0x20($sp) /* 07F730 7F04AC00 D7B60028 */ ldc1 $f22, 0x28($sp) /* 07F734 7F04AC04 D7B80030 */ ldc1 $f24, 0x30($sp) /* 07F738 7F04AC08 D7BA0038 */ ldc1 $f26, 0x38($sp) /* 07F73C 7F04AC0C 8FB00040 */ lw $s0, 0x40($sp) /* 07F740 7F04AC10 8FB10044 */ lw $s1, 0x44($sp) /* 07F744 7F04AC14 8FB20048 */ lw $s2, 0x48($sp) /* 07F748 7F04AC18 03E00008 */ jr $ra /* 07F74C 7F04AC1C 27BD00B0 */ addiu $sp, $sp, 0xb0 ) #endif #endif #ifdef NONMATCHING void sub_GAME_7F04AC20(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04AC20 /* 07F750 7F04AC20 27BDFF88 */ addiu $sp, $sp, -0x78 /* 07F754 7F04AC24 AFBF0024 */ sw $ra, 0x24($sp) /* 07F758 7F04AC28 AFB00020 */ sw $s0, 0x20($sp) /* 07F75C 7F04AC2C AFA40078 */ sw $a0, 0x78($sp) /* 07F760 7F04AC30 AFA60080 */ sw $a2, 0x80($sp) /* 07F764 7F04AC34 908F0001 */ lbu $t7, 1($a0) /* 07F768 7F04AC38 00A08025 */ move $s0, $a1 /* 07F76C 7F04AC3C 31F80002 */ andi $t8, $t7, 2 /* 07F770 7F04AC40 5300013F */ beql $t8, $zero, .L7F04B140 /* 07F774 7F04AC44 8FBF0024 */ lw $ra, 0x24($sp) /* 07F778 7F04AC48 8C990004 */ lw $t9, 4($a0) /* 07F77C 7F04AC4C AFB90074 */ sw $t9, 0x74($sp) /* 07F780 7F04AC50 8F280014 */ lw $t0, 0x14($t9) /* 07F784 7F04AC54 AFA80070 */ sw $t0, 0x70($sp) /* 07F788 7F04AC58 8F290008 */ lw $t1, 8($t9) /* 07F78C 7F04AC5C 312A0200 */ andi $t2, $t1, 0x200 /* 07F790 7F04AC60 000A582B */ sltu $t3, $zero, $t2 /* 07F794 7F04AC64 11600005 */ beqz $t3, .L7F04AC7C /* 07F798 7F04AC68 AFAB0028 */ sw $t3, 0x28($sp) /* 07F79C 7F04AC6C 0FC1E0E5 */ jal get_BONDdata_field_10E0 /* 07F7A0 7F04AC70 00000000 */ nop /* 07F7A4 7F04AC74 0002602B */ sltu $t4, $zero, $v0 /* 07F7A8 7F04AC78 AFAC0028 */ sw $t4, 0x28($sp) .L7F04AC7C: /* 07F7AC 7F04AC7C 8FAD0074 */ lw $t5, 0x74($sp) /* 07F7B0 7F04AC80 2401000A */ li $at, 10 /* 07F7B4 7F04AC84 8E07000C */ lw $a3, 0xc($s0) /* 07F7B8 7F04AC88 91A30003 */ lbu $v1, 3($t5) /* 07F7BC 7F04AC8C 54610022 */ bnel $v1, $at, .L7F04AD18 /* 07F7C0 7F04AC90 2401000B */ li $at, 11 /* 07F7C4 7F04AC94 8E0F0008 */ lw $t7, 8($s0) /* 07F7C8 7F04AC98 8FA40070 */ lw $a0, 0x70($sp) /* 07F7CC 7F04AC9C 31F80001 */ andi $t8, $t7, 1 /* 07F7D0 7F04ACA0 53000075 */ beql $t8, $zero, .L7F04AE78 /* 07F7D4 7F04ACA4 24010001 */ li $at, 1 /* 07F7D8 7F04ACA8 8DA8000C */ lw $t0, 0xc($t5) /* 07F7DC 7F04ACAC 8FAE0078 */ lw $t6, 0x78($sp) /* 07F7E0 7F04ACB0 8FA90074 */ lw $t1, 0x74($sp) /* 07F7E4 7F04ACB4 0008CBC0 */ sll $t9, $t0, 0xf /* 07F7E8 7F04ACB8 07210003 */ bgez $t9, .L7F04ACC8 /* 07F7EC 7F04ACBC 8DC20004 */ lw $v0, 4($t6) /* 07F7F0 7F04ACC0 10000008 */ b .L7F04ACE4 /* 07F7F4 7F04ACC4 00001825 */ move $v1, $zero .L7F04ACC8: /* 07F7F8 7F04ACC8 8D2A0008 */ lw $t2, 8($t1) /* 07F7FC 7F04ACCC 24030001 */ li $v1, 1 /* 07F800 7F04ACD0 000A58C0 */ sll $t3, $t2, 3 /* 07F804 7F04ACD4 05610003 */ bgez $t3, .L7F04ACE4 /* 07F808 7F04ACD8 00000000 */ nop /* 07F80C 7F04ACDC 10000001 */ b .L7F04ACE4 /* 07F810 7F04ACE0 24030008 */ li $v1, 8 .L7F04ACE4: /* 07F814 7F04ACE4 8C8F0008 */ lw $t7, 8($a0) /* 07F818 7F04ACE8 240E0001 */ li $t6, 1 /* 07F81C 7F04ACEC 24460080 */ addiu $a2, $v0, 0x80 /* 07F820 7F04ACF0 8DF80008 */ lw $t8, 8($t7) /* 07F824 7F04ACF4 8F050000 */ lw $a1, ($t8) /* 07F828 7F04ACF8 AFAE0014 */ sw $t6, 0x14($sp) /* 07F82C 7F04ACFC 0FC127D2 */ jal process_monitor_animation_microcode /* 07F830 7F04AD00 AFA30010 */ sw $v1, 0x10($sp) /* 07F834 7F04AD04 8FAD0074 */ lw $t5, 0x74($sp) /* 07F838 7F04AD08 00403825 */ move $a3, $v0 /* 07F83C 7F04AD0C 10000059 */ b .L7F04AE74 /* 07F840 7F04AD10 91A30003 */ lbu $v1, 3($t5) /* 07F844 7F04AD14 2401000B */ li $at, 11 .L7F04AD18: /* 07F848 7F04AD18 54610057 */ bnel $v1, $at, .L7F04AE78 /* 07F84C 7F04AD1C 24010001 */ li $at, 1 /* 07F850 7F04AD20 8E080008 */ lw $t0, 8($s0) /* 07F854 7F04AD24 8FAA0074 */ lw $t2, 0x74($sp) /* 07F858 7F04AD28 8FA40070 */ lw $a0, 0x70($sp) /* 07F85C 7F04AD2C 31190001 */ andi $t9, $t0, 1 /* 07F860 7F04AD30 53200051 */ beql $t9, $zero, .L7F04AE78 /* 07F864 7F04AD34 24010001 */ li $at, 1 /* 07F868 7F04AD38 8D4B000C */ lw $t3, 0xc($t2) /* 07F86C 7F04AD3C 8FA90078 */ lw $t1, 0x78($sp) /* 07F870 7F04AD40 8FAF0074 */ lw $t7, 0x74($sp) /* 07F874 7F04AD44 000B63C0 */ sll $t4, $t3, 0xf /* 07F878 7F04AD48 05810003 */ bgez $t4, .L7F04AD58 /* 07F87C 7F04AD4C 8D220004 */ lw $v0, 4($t1) /* 07F880 7F04AD50 10000008 */ b .L7F04AD74 /* 07F884 7F04AD54 00001825 */ move $v1, $zero .L7F04AD58: /* 07F888 7F04AD58 8DF80008 */ lw $t8, 8($t7) /* 07F88C 7F04AD5C 24030001 */ li $v1, 1 /* 07F890 7F04AD60 001870C0 */ sll $t6, $t8, 3 /* 07F894 7F04AD64 05C10003 */ bgez $t6, .L7F04AD74 /* 07F898 7F04AD68 00000000 */ nop /* 07F89C 7F04AD6C 10000001 */ b .L7F04AD74 /* 07F8A0 7F04AD70 24030008 */ li $v1, 8 .L7F04AD74: /* 07F8A4 7F04AD74 8C880008 */ lw $t0, 8($a0) /* 07F8A8 7F04AD78 24090001 */ li $t1, 1 /* 07F8AC 7F04AD7C 24460080 */ addiu $a2, $v0, 0x80 /* 07F8B0 7F04AD80 8D190008 */ lw $t9, 8($t0) /* 07F8B4 7F04AD84 8F250000 */ lw $a1, ($t9) /* 07F8B8 7F04AD88 AFA20058 */ sw $v0, 0x58($sp) /* 07F8BC 7F04AD8C AFA90014 */ sw $t1, 0x14($sp) /* 07F8C0 7F04AD90 0FC127D2 */ jal process_monitor_animation_microcode /* 07F8C4 7F04AD94 AFA30010 */ sw $v1, 0x10($sp) /* 07F8C8 7F04AD98 8FAA0074 */ lw $t2, 0x74($sp) /* 07F8CC 7F04AD9C 00403825 */ move $a3, $v0 /* 07F8D0 7F04ADA0 8FAF0074 */ lw $t7, 0x74($sp) /* 07F8D4 7F04ADA4 8D4B000C */ lw $t3, 0xc($t2) /* 07F8D8 7F04ADA8 8FA40070 */ lw $a0, 0x70($sp) /* 07F8DC 7F04ADAC 000B63C0 */ sll $t4, $t3, 0xf /* 07F8E0 7F04ADB0 05830004 */ bgezl $t4, .L7F04ADC4 /* 07F8E4 7F04ADB4 8DF80008 */ lw $t8, 8($t7) /* 07F8E8 7F04ADB8 10000009 */ b .L7F04ADE0 /* 07F8EC 7F04ADBC 00001825 */ move $v1, $zero /* 07F8F0 7F04ADC0 8DF80008 */ lw $t8, 8($t7) .L7F04ADC4: /* 07F8F4 7F04ADC4 3C013000 */ lui $at, 0x3000 /* 07F8F8 7F04ADC8 24030001 */ li $v1, 1 /* 07F8FC 7F04ADCC 03017024 */ and $t6, $t8, $at /* 07F900 7F04ADD0 11C00003 */ beqz $t6, .L7F04ADE0 /* 07F904 7F04ADD4 00000000 */ nop /* 07F908 7F04ADD8 10000001 */ b .L7F04ADE0 /* 07F90C 7F04ADDC 24030008 */ li $v1, 8 .L7F04ADE0: /* 07F910 7F04ADE0 8C880008 */ lw $t0, 8($a0) /* 07F914 7F04ADE4 8FA60058 */ lw $a2, 0x58($sp) /* 07F918 7F04ADE8 24090001 */ li $t1, 1 /* 07F91C 7F04ADEC 8D190008 */ lw $t9, 8($t0) /* 07F920 7F04ADF0 24C600F4 */ addiu $a2, $a2, 0xf4 /* 07F924 7F04ADF4 8F250004 */ lw $a1, 4($t9) /* 07F928 7F04ADF8 AFA30060 */ sw $v1, 0x60($sp) /* 07F92C 7F04ADFC AFA90014 */ sw $t1, 0x14($sp) /* 07F930 7F04AE00 0FC127D2 */ jal process_monitor_animation_microcode /* 07F934 7F04AE04 AFA30010 */ sw $v1, 0x10($sp) /* 07F938 7F04AE08 8FA40070 */ lw $a0, 0x70($sp) /* 07F93C 7F04AE0C 8FA30060 */ lw $v1, 0x60($sp) /* 07F940 7F04AE10 8FA60058 */ lw $a2, 0x58($sp) /* 07F944 7F04AE14 8C8B0008 */ lw $t3, 8($a0) /* 07F948 7F04AE18 240F0001 */ li $t7, 1 /* 07F94C 7F04AE1C 00403825 */ move $a3, $v0 /* 07F950 7F04AE20 8D6C0008 */ lw $t4, 8($t3) /* 07F954 7F04AE24 24C60168 */ addiu $a2, $a2, 0x168 /* 07F958 7F04AE28 8D850008 */ lw $a1, 8($t4) /* 07F95C 7F04AE2C AFAF0014 */ sw $t7, 0x14($sp) /* 07F960 7F04AE30 0FC127D2 */ jal process_monitor_animation_microcode /* 07F964 7F04AE34 AFA30010 */ sw $v1, 0x10($sp) /* 07F968 7F04AE38 8FA40070 */ lw $a0, 0x70($sp) /* 07F96C 7F04AE3C 8FA30060 */ lw $v1, 0x60($sp) /* 07F970 7F04AE40 8FA60058 */ lw $a2, 0x58($sp) /* 07F974 7F04AE44 8C8E0008 */ lw $t6, 8($a0) /* 07F978 7F04AE48 24080001 */ li $t0, 1 /* 07F97C 7F04AE4C 00403825 */ move $a3, $v0 /* 07F980 7F04AE50 8DCD0008 */ lw $t5, 8($t6) /* 07F984 7F04AE54 24C601DC */ addiu $a2, $a2, 0x1dc /* 07F988 7F04AE58 8DA5000C */ lw $a1, 0xc($t5) /* 07F98C 7F04AE5C AFA80014 */ sw $t0, 0x14($sp) /* 07F990 7F04AE60 0FC127D2 */ jal process_monitor_animation_microcode /* 07F994 7F04AE64 AFA30010 */ sw $v1, 0x10($sp) /* 07F998 7F04AE68 8FB90074 */ lw $t9, 0x74($sp) /* 07F99C 7F04AE6C 00403825 */ move $a3, $v0 /* 07F9A0 7F04AE70 93230003 */ lbu $v1, 3($t9) .L7F04AE74: /* 07F9A4 7F04AE74 24010001 */ li $at, 1 .L7F04AE78: /* 07F9A8 7F04AE78 1461001A */ bne $v1, $at, .L7F04AEE4 /* 07F9AC 7F04AE7C 8FA40074 */ lw $a0, 0x74($sp) /* 07F9B0 7F04AE80 8FA90078 */ lw $t1, 0x78($sp) /* 07F9B4 7F04AE84 00E01025 */ move $v0, $a3 /* 07F9B8 7F04AE88 3C0AB600 */ lui $t2, 0xb600 /* 07F9BC 7F04AE8C 8D230004 */ lw $v1, 4($t1) /* 07F9C0 7F04AE90 240B3000 */ li $t3, 12288 /* 07F9C4 7F04AE94 AC4B0004 */ sw $t3, 4($v0) /* 07F9C8 7F04AE98 AC4A0000 */ sw $t2, ($v0) /* 07F9CC 7F04AE9C 946C0098 */ lhu $t4, 0x98($v1) /* 07F9D0 7F04AEA0 24E70008 */ addiu $a3, $a3, 8 /* 07F9D4 7F04AEA4 24180002 */ li $t8, 2 /* 07F9D8 7F04AEA8 318F0008 */ andi $t7, $t4, 8 /* 07F9DC 7F04AEAC 11E00003 */ beqz $t7, .L7F04AEBC /* 07F9E0 7F04AEB0 240E0003 */ li $t6, 3 /* 07F9E4 7F04AEB4 10000002 */ b .L7F04AEC0 /* 07F9E8 7F04AEB8 AE18003C */ sw $t8, 0x3c($s0) .L7F04AEBC: /* 07F9EC 7F04AEBC AE0E003C */ sw $t6, 0x3c($s0) .L7F04AEC0: /* 07F9F0 7F04AEC0 8E0D0030 */ lw $t5, 0x30($s0) /* 07F9F4 7F04AEC4 24010009 */ li $at, 9 /* 07F9F8 7F04AEC8 55A1004B */ bnel $t5, $at, .L7F04AFF8 /* 07F9FC 7F04AECC 8FB90028 */ lw $t9, 0x28($sp) /* 07FA00 7F04AED0 8E080034 */ lw $t0, 0x34($s0) /* 07FA04 7F04AED4 2401FF00 */ li $at, -256 /* 07FA08 7F04AED8 0101C824 */ and $t9, $t0, $at /* 07FA0C 7F04AEDC 10000045 */ b .L7F04AFF4 /* 07FA10 7F04AEE0 AE190034 */ sw $t9, 0x34($s0) .L7F04AEE4: /* 07FA14 7F04AEE4 0FC12D1E */ jal sub_GAME_7F04B478 /* 07FA18 7F04AEE8 AFA70064 */ sw $a3, 0x64($sp) /* 07FA1C 7F04AEEC 8FA70064 */ lw $a3, 0x64($sp) /* 07FA20 7F04AEF0 1040000F */ beqz $v0, .L7F04AF30 /* 07FA24 7F04AEF4 00002825 */ move $a1, $zero /* 07FA28 7F04AEF8 8C430004 */ lw $v1, 4($v0) /* 07FA2C 7F04AEFC 8FA90074 */ lw $t1, 0x74($sp) /* 07FA30 7F04AF00 5060000C */ beql $v1, $zero, .L7F04AF34 /* 07FA34 7F04AF04 8FA40074 */ lw $a0, 0x74($sp) /* 07FA38 7F04AF08 8D2A0014 */ lw $t2, 0x14($t1) /* 07FA3C 7F04AF0C 946C001A */ lhu $t4, 0x1a($v1) /* 07FA40 7F04AF10 8C780008 */ lw $t8, 8($v1) /* 07FA44 7F04AF14 8D4B0010 */ lw $t3, 0x10($t2) /* 07FA48 7F04AF18 000C7880 */ sll $t7, $t4, 2 /* 07FA4C 7F04AF1C 016F1021 */ addu $v0, $t3, $t7 /* 07FA50 7F04AF20 8C4E0000 */ lw $t6, ($v0) /* 07FA54 7F04AF24 530E0003 */ beql $t8, $t6, .L7F04AF34 /* 07FA58 7F04AF28 8FA40074 */ lw $a0, 0x74($sp) /* 07FA5C 7F04AF2C 24050001 */ li $a1, 1 .L7F04AF30: /* 07FA60 7F04AF30 8FA40074 */ lw $a0, 0x74($sp) .L7F04AF34: /* 07FA64 7F04AF34 AFA50040 */ sw $a1, 0x40($sp) /* 07FA68 7F04AF38 0FC0FFF0 */ jal do_something_if_object_destroyed /* 07FA6C 7F04AF3C AFA70064 */ sw $a3, 0x64($sp) /* 07FA70 7F04AF40 8FA50040 */ lw $a1, 0x40($sp) /* 07FA74 7F04AF44 10400003 */ beqz $v0, .L7F04AF54 /* 07FA78 7F04AF48 8FA70064 */ lw $a3, 0x64($sp) /* 07FA7C 7F04AF4C 14A0000B */ bnez $a1, .L7F04AF7C /* 07FA80 7F04AF50 8FA40074 */ lw $a0, 0x74($sp) .L7F04AF54: /* 07FA84 7F04AF54 8E080030 */ lw $t0, 0x30($s0) /* 07FA88 7F04AF58 240D0003 */ li $t5, 3 /* 07FA8C 7F04AF5C 24010009 */ li $at, 9 /* 07FA90 7F04AF60 15010024 */ bne $t0, $at, .L7F04AFF4 /* 07FA94 7F04AF64 AE0D003C */ sw $t5, 0x3c($s0) /* 07FA98 7F04AF68 8E190034 */ lw $t9, 0x34($s0) /* 07FA9C 7F04AF6C 2401FF00 */ li $at, -256 /* 07FAA0 7F04AF70 03214824 */ and $t1, $t9, $at /* 07FAA4 7F04AF74 1000001F */ b .L7F04AFF4 /* 07FAA8 7F04AF78 AE090034 */ sw $t1, 0x34($s0) .L7F04AF7C: /* 07FAAC 7F04AF7C 0FC0FFF0 */ jal do_something_if_object_destroyed /* 07FAB0 7F04AF80 AFA70064 */ sw $a3, 0x64($sp) /* 07FAB4 7F04AF84 8E0C0030 */ lw $t4, 0x30($s0) /* 07FAB8 7F04AF88 8FA70064 */ lw $a3, 0x64($sp) /* 07FABC 7F04AF8C 240A0001 */ li $t2, 1 /* 07FAC0 7F04AF90 24010009 */ li $at, 9 /* 07FAC4 7F04AF94 15810012 */ bne $t4, $at, .L7F04AFE0 /* 07FAC8 7F04AF98 AE0A003C */ sw $t2, 0x3c($s0) /* 07FACC 7F04AF9C 00021880 */ sll $v1, $v0, 2 /* 07FAD0 7F04AFA0 00621823 */ subu $v1, $v1, $v0 /* 07FAD4 7F04AFA4 000318C0 */ sll $v1, $v1, 3 /* 07FAD8 7F04AFA8 00621821 */ addu $v1, $v1, $v0 /* 07FADC 7F04AFAC 00031840 */ sll $v1, $v1, 1 /* 07FAE0 7F04AFB0 24640064 */ addiu $a0, $v1, 0x64 /* 07FAE4 7F04AFB4 28810100 */ slti $at, $a0, 0x100 /* 07FAE8 7F04AFB8 54200003 */ bnezl $at, .L7F04AFC8 /* 07FAEC 7F04AFBC 8E0B0034 */ lw $t3, 0x34($s0) /* 07FAF0 7F04AFC0 240400FF */ li $a0, 255 /* 07FAF4 7F04AFC4 8E0B0034 */ lw $t3, 0x34($s0) .L7F04AFC8: /* 07FAF8 7F04AFC8 2401FF00 */ li $at, -256 /* 07FAFC 7F04AFCC 01617824 */ and $t7, $t3, $at /* 07FB00 7F04AFD0 AE0F0034 */ sw $t7, 0x34($s0) /* 07FB04 7F04AFD4 01E47025 */ or $t6, $t7, $a0 /* 07FB08 7F04AFD8 10000006 */ b .L7F04AFF4 /* 07FB0C 7F04AFDC AE0E0034 */ sw $t6, 0x34($s0) .L7F04AFE0: /* 07FB10 7F04AFE0 58400005 */ blezl $v0, .L7F04AFF8 /* 07FB14 7F04AFE4 8FB90028 */ lw $t9, 0x28($sp) /* 07FB18 7F04AFE8 8E0D0034 */ lw $t5, 0x34($s0) /* 07FB1C 7F04AFEC 35A8FF00 */ ori $t0, $t5, 0xff00 /* 07FB20 7F04AFF0 AE080034 */ sw $t0, 0x34($s0) .L7F04AFF4: /* 07FB24 7F04AFF4 8FB90028 */ lw $t9, 0x28($sp) .L7F04AFF8: /* 07FB28 7F04AFF8 3C090103 */ lui $t1, (0x01030040 >> 16) # lui $t1, 0x103 /* 07FB2C 7F04AFFC 35290040 */ ori $t1, (0x01030040 & 0xFFFF) # ori $t1, $t1, 0x40 /* 07FB30 7F04B000 13200009 */ beqz $t9, .L7F04B028 /* 07FB34 7F04B004 00E01825 */ move $v1, $a3 /* 07FB38 7F04B008 24E70008 */ addiu $a3, $a3, 8 /* 07FB3C 7F04B00C AC690000 */ sw $t1, ($v1) /* 07FB40 7F04B010 AFA70064 */ sw $a3, 0x64($sp) /* 07FB44 7F04B014 0FC1E0E5 */ jal get_BONDdata_field_10E0 /* 07FB48 7F04B018 AFA30034 */ sw $v1, 0x34($sp) /* 07FB4C 7F04B01C 8FA30034 */ lw $v1, 0x34($sp) /* 07FB50 7F04B020 8FA70064 */ lw $a3, 0x64($sp) /* 07FB54 7F04B024 AC620004 */ sw $v0, 4($v1) .L7F04B028: /* 07FB58 7F04B028 AE07000C */ sw $a3, 0xc($s0) /* 07FB5C 7F04B02C 8FA50070 */ lw $a1, 0x70($sp) /* 07FB60 7F04B030 0FC1D1A1 */ jal subdraw /* 07FB64 7F04B034 02002025 */ move $a0, $s0 /* 07FB68 7F04B038 8FA30074 */ lw $v1, 0x74($sp) /* 07FB6C 7F04B03C 8E07000C */ lw $a3, 0xc($s0) /* 07FB70 7F04B040 24010001 */ li $at, 1 /* 07FB74 7F04B044 906A0003 */ lbu $t2, 3($v1) /* 07FB78 7F04B048 3C0CB600 */ lui $t4, 0xb600 /* 07FB7C 7F04B04C 240B3000 */ li $t3, 12288 /* 07FB80 7F04B050 15410004 */ bne $t2, $at, .L7F04B064 /* 07FB84 7F04B054 00E01025 */ move $v0, $a3 /* 07FB88 7F04B058 24E70008 */ addiu $a3, $a3, 8 /* 07FB8C 7F04B05C AC4C0000 */ sw $t4, ($v0) /* 07FB90 7F04B060 AC4B0004 */ sw $t3, 4($v0) .L7F04B064: /* 07FB94 7F04B064 8FA60080 */ lw $a2, 0x80($sp) /* 07FB98 7F04B068 906F0002 */ lbu $t7, 2($v1) /* 07FB9C 7F04B06C 24180001 */ li $t8, 1 /* 07FBA0 7F04B070 00D87004 */ sllv $t6, $t8, $a2 /* 07FBA4 7F04B074 01EE6824 */ and $t5, $t7, $t6 /* 07FBA8 7F04B078 11A00005 */ beqz $t5, .L7F04B090 /* 07FBAC 7F04B07C 00E02025 */ move $a0, $a3 /* 07FBB0 7F04B080 0FC286A5 */ jal sub_GAME_7F0A1A94 /* 07FBB4 7F04B084 8FA50078 */ lw $a1, 0x78($sp) /* 07FBB8 7F04B088 00403825 */ move $a3, $v0 /* 07FBBC 7F04B08C 8FA60080 */ lw $a2, 0x80($sp) .L7F04B090: /* 07FBC0 7F04B090 8FA80028 */ lw $t0, 0x28($sp) /* 07FBC4 7F04B094 3C190103 */ lui $t9, (0x01030040 >> 16) # lui $t9, 0x103 /* 07FBC8 7F04B098 37390040 */ ori $t9, (0x01030040 & 0xFFFF) # ori $t9, $t9, 0x40 /* 07FBCC 7F04B09C 1100000A */ beqz $t0, .L7F04B0C8 /* 07FBD0 7F04B0A0 00E01825 */ move $v1, $a3 /* 07FBD4 7F04B0A4 24E70008 */ addiu $a3, $a3, 8 /* 07FBD8 7F04B0A8 AC790000 */ sw $t9, ($v1) /* 07FBDC 7F04B0AC AFA70064 */ sw $a3, 0x64($sp) /* 07FBE0 7F04B0B0 0FC1E0DD */ jal get_BONDdata_field_10D8 /* 07FBE4 7F04B0B4 AFA3002C */ sw $v1, 0x2c($sp) /* 07FBE8 7F04B0B8 8FA3002C */ lw $v1, 0x2c($sp) /* 07FBEC 7F04B0BC 8FA70064 */ lw $a3, 0x64($sp) /* 07FBF0 7F04B0C0 AC620004 */ sw $v0, 4($v1) /* 07FBF4 7F04B0C4 8FA60080 */ lw $a2, 0x80($sp) .L7F04B0C8: /* 07FBF8 7F04B0C8 AE07000C */ sw $a3, 0xc($s0) /* 07FBFC 7F04B0CC 8FA90078 */ lw $t1, 0x78($sp) /* 07FC00 7F04B0D0 8D240020 */ lw $a0, 0x20($t1) /* 07FC04 7F04B0D4 1080000A */ beqz $a0, .L7F04B100 /* 07FC08 7F04B0D8 00000000 */ nop /* 07FC0C 7F04B0DC 8FA60080 */ lw $a2, 0x80($sp) .L7F04B0E0: /* 07FC10 7F04B0E0 02002825 */ move $a1, $s0 /* 07FC14 7F04B0E4 0FC12B08 */ jal sub_GAME_7F04AC20 /* 07FC18 7F04B0E8 AFA40068 */ sw $a0, 0x68($sp) /* 07FC1C 7F04B0EC 8FA40068 */ lw $a0, 0x68($sp) /* 07FC20 7F04B0F0 8C840024 */ lw $a0, 0x24($a0) /* 07FC24 7F04B0F4 5480FFFA */ bnezl $a0, .L7F04B0E0 /* 07FC28 7F04B0F8 8FA60080 */ lw $a2, 0x80($sp) /* 07FC2C 7F04B0FC 8FA60080 */ lw $a2, 0x80($sp) .L7F04B100: /* 07FC30 7F04B100 10C0000E */ beqz $a2, .L7F04B13C /* 07FC34 7F04B104 8FAA0028 */ lw $t2, 0x28($sp) /* 07FC38 7F04B108 11400008 */ beqz $t2, .L7F04B12C /* 07FC3C 7F04B10C 8FA20070 */ lw $v0, 0x70($sp) /* 07FC40 7F04B110 8FA20070 */ lw $v0, 0x70($sp) /* 07FC44 7F04B114 8C4C0008 */ lw $t4, 8($v0) /* 07FC48 7F04B118 8C44000C */ lw $a0, 0xc($v0) /* 07FC4C 7F04B11C 0FC22FBB */ jal sub_GAME_7F08BEEC /* 07FC50 7F04B120 8585000E */ lh $a1, 0xe($t4) /* 07FC54 7F04B124 10000006 */ b .L7F04B140 /* 07FC58 7F04B128 8FBF0024 */ lw $ra, 0x24($sp) .L7F04B12C: /* 07FC5C 7F04B12C 8C4B0008 */ lw $t3, 8($v0) /* 07FC60 7F04B130 8C44000C */ lw $a0, 0xc($v0) /* 07FC64 7F04B134 0FC22F52 */ jal sub_GAME_7F08BD48 /* 07FC68 7F04B138 8565000E */ lh $a1, 0xe($t3) .L7F04B13C: /* 07FC6C 7F04B13C 8FBF0024 */ lw $ra, 0x24($sp) .L7F04B140: /* 07FC70 7F04B140 8FB00020 */ lw $s0, 0x20($sp) /* 07FC74 7F04B144 27BD0078 */ addiu $sp, $sp, 0x78 /* 07FC78 7F04B148 03E00008 */ jr $ra /* 07FC7C 7F04B14C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04B150(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04B150 /* 07FC80 7F04B150 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 07FC84 7F04B154 3C0F8003 */ lui $t7, %hi(D_80031FD0) /* 07FC88 7F04B158 AFBF0024 */ sw $ra, 0x24($sp) /* 07FC8C 7F04B15C AFB00020 */ sw $s0, 0x20($sp) /* 07FC90 7F04B160 AFA500C4 */ sw $a1, 0xc4($sp) /* 07FC94 7F04B164 AFA600C8 */ sw $a2, 0xc8($sp) /* 07FC98 7F04B168 25EF1FD0 */ addiu $t7, %lo(D_80031FD0) # addiu $t7, $t7, 0x1fd0 /* 07FC9C 7F04B16C 8C900004 */ lw $s0, 4($a0) /* 07FCA0 7F04B170 25E8003C */ addiu $t0, $t7, 0x3c /* 07FCA4 7F04B174 27AE0068 */ addiu $t6, $sp, 0x68 .L7F04B178: /* 07FCA8 7F04B178 8DE10000 */ lw $at, ($t7) /* 07FCAC 7F04B17C 25EF000C */ addiu $t7, $t7, 0xc /* 07FCB0 7F04B180 25CE000C */ addiu $t6, $t6, 0xc /* 07FCB4 7F04B184 ADC1FFF4 */ sw $at, -0xc($t6) /* 07FCB8 7F04B188 8DE1FFF8 */ lw $at, -8($t7) /* 07FCBC 7F04B18C ADC1FFF8 */ sw $at, -8($t6) /* 07FCC0 7F04B190 8DE1FFFC */ lw $at, -4($t7) /* 07FCC4 7F04B194 15E8FFF8 */ bne $t7, $t0, .L7F04B178 /* 07FCC8 7F04B198 ADC1FFFC */ sw $at, -4($t6) /* 07FCCC 7F04B19C 8DE10000 */ lw $at, ($t7) /* 07FCD0 7F04B1A0 240900FF */ li $t1, 255 /* 07FCD4 7F04B1A4 27A500B0 */ addiu $a1, $sp, 0xb0 /* 07FCD8 7F04B1A8 ADC10000 */ sw $at, ($t6) /* 07FCDC 7F04B1AC AFA9003C */ sw $t1, 0x3c($sp) /* 07FCE0 7F04B1B0 0FC2ECE9 */ jal if_sky_present_convert_values /* 07FCE4 7F04B1B4 AFA400C0 */ sw $a0, 0xc0($sp) /* 07FCE8 7F04B1B8 14400003 */ bnez $v0, .L7F04B1C8 /* 07FCEC 7F04B1BC AFA200AC */ sw $v0, 0xac($sp) /* 07FCF0 7F04B1C0 100000A8 */ b .L7F04B464 /* 07FCF4 7F04B1C4 8FA200C4 */ lw $v0, 0xc4($sp) .L7F04B1C8: /* 07FCF8 7F04B1C8 920A0003 */ lbu $t2, 3($s0) /* 07FCFC 7F04B1CC 2401002F */ li $at, 47 /* 07FD00 7F04B1D0 51410021 */ beql $t2, $at, .L7F04B258 /* 07FD04 7F04B1D4 8FAD003C */ lw $t5, 0x3c($sp) /* 07FD08 7F04B1D8 0FC1B403 */ jal getinstsize /* 07FD0C 7F04B1DC 8E040014 */ lw $a0, 0x14($s0) /* 07FD10 7F04B1E0 44050000 */ mfc1 $a1, $f0 /* 07FD14 7F04B1E4 0FC152E0 */ jal sub_GAME_7F054B80 /* 07FD18 7F04B1E8 8FA400C0 */ lw $a0, 0xc0($sp) /* 07FD1C 7F04B1EC 8FAB00C0 */ lw $t3, 0xc0($sp) /* 07FD20 7F04B1F0 46000086 */ mov.s $f2, $f0 /* 07FD24 7F04B1F4 85620002 */ lh $v0, 2($t3) /* 07FD28 7F04B1F8 1840000B */ blez $v0, .L7F04B228 /* 07FD2C 7F04B1FC 2841003C */ slti $at, $v0, 0x3c /* 07FD30 7F04B200 5020000A */ beql $at, $zero, .L7F04B22C /* 07FD34 7F04B204 3C01437F */ lui $at, 0x437f /* 07FD38 7F04B208 44822000 */ mtc1 $v0, $f4 /* 07FD3C 7F04B20C 3C014270 */ li $at, 0x42700000 # 60.000000 /* 07FD40 7F04B210 44816000 */ mtc1 $at, $f12 /* 07FD44 7F04B214 468021A0 */ cvt.s.w $f6, $f4 /* 07FD48 7F04B218 46066201 */ sub.s $f8, $f12, $f6 /* 07FD4C 7F04B21C 460C4283 */ div.s $f10, $f8, $f12 /* 07FD50 7F04B220 460A0082 */ mul.s $f2, $f0, $f10 /* 07FD54 7F04B224 00000000 */ nop .L7F04B228: /* 07FD58 7F04B228 3C01437F */ li $at, 0x437F0000 # 255.000000 .L7F04B22C: /* 07FD5C 7F04B22C 44818000 */ mtc1 $at, $f16 /* 07FD60 7F04B230 00000000 */ nop /* 07FD64 7F04B234 46101482 */ mul.s $f18, $f2, $f16 /* 07FD68 7F04B238 4600910D */ trunc.w.s $f4, $f18 /* 07FD6C 7F04B23C 44022000 */ mfc1 $v0, $f4 /* 07FD70 7F04B240 00000000 */ nop /* 07FD74 7F04B244 1C400003 */ bgtz $v0, .L7F04B254 /* 07FD78 7F04B248 AFA2003C */ sw $v0, 0x3c($sp) /* 07FD7C 7F04B24C 10000085 */ b .L7F04B464 /* 07FD80 7F04B250 8FA200C4 */ lw $v0, 0xc4($sp) .L7F04B254: /* 07FD84 7F04B254 8FAD003C */ lw $t5, 0x3c($sp) .L7F04B258: /* 07FD88 7F04B258 8FA800C8 */ lw $t0, 0xc8($sp) /* 07FD8C 7F04B25C 8FA400C0 */ lw $a0, 0xc0($sp) /* 07FD90 7F04B260 29A100FF */ slti $at, $t5, 0xff /* 07FD94 7F04B264 14200006 */ bnez $at, .L7F04B280 /* 07FD98 7F04B268 27A50058 */ addiu $a1, $sp, 0x58 /* 07FD9C 7F04B26C 8E19000C */ lw $t9, 0xc($s0) /* 07FDA0 7F04B270 8FAF00C8 */ lw $t7, 0xc8($sp) /* 07FDA4 7F04B274 0019C3C0 */ sll $t8, $t9, 0xf /* 07FDA8 7F04B278 07010007 */ bgez $t8, .L7F04B298 /* 07FDAC 7F04B27C 00000000 */ nop .L7F04B280: /* 07FDB0 7F04B280 15000003 */ bnez $t0, .L7F04B290 /* 07FDB4 7F04B284 00000000 */ nop /* 07FDB8 7F04B288 10000076 */ b .L7F04B464 /* 07FDBC 7F04B28C 8FA200C4 */ lw $v0, 0xc4($sp) .L7F04B290: /* 07FDC0 7F04B290 10000005 */ b .L7F04B2A8 /* 07FDC4 7F04B294 24030003 */ li $v1, 3 .L7F04B298: /* 07FDC8 7F04B298 15E00003 */ bnez $t7, .L7F04B2A8 /* 07FDCC 7F04B29C 24030002 */ li $v1, 2 /* 07FDD0 7F04B2A0 10000001 */ b .L7F04B2A8 /* 07FDD4 7F04B2A4 24030001 */ li $v1, 1 .L7F04B2A8: /* 07FDD8 7F04B2A8 0FC15299 */ jal sub_GAME_7F054A64 /* 07FDDC 7F04B2AC AFA30044 */ sw $v1, 0x44($sp) /* 07FDE0 7F04B2B0 1840000E */ blez $v0, .L7F04B2EC /* 07FDE4 7F04B2B4 8FA30044 */ lw $v1, 0x44($sp) /* 07FDE8 7F04B2B8 8E0E000C */ lw $t6, 0xc($s0) /* 07FDEC 7F04B2BC 8FA400C4 */ lw $a0, 0xc4($sp) /* 07FDF0 7F04B2C0 8FA50058 */ lw $a1, 0x58($sp) /* 07FDF4 7F04B2C4 000E4940 */ sll $t1, $t6, 5 /* 07FDF8 7F04B2C8 05200008 */ bltz $t1, .L7F04B2EC /* 07FDFC 7F04B2CC 8FA6005C */ lw $a2, 0x5c($sp) /* 07FE00 7F04B2D0 C7A60064 */ lwc1 $f6, 0x64($sp) /* 07FE04 7F04B2D4 8FA70060 */ lw $a3, 0x60($sp) /* 07FE08 7F04B2D8 AFA30044 */ sw $v1, 0x44($sp) /* 07FE0C 7F04B2DC 0FC2D3FD */ jal sub_GAME_7F0B4FF4 /* 07FE10 7F04B2E0 E7A60010 */ swc1 $f6, 0x10($sp) /* 07FE14 7F04B2E4 10000005 */ b .L7F04B2FC /* 07FE18 7F04B2E8 8FA30044 */ lw $v1, 0x44($sp) .L7F04B2EC: /* 07FE1C 7F04B2EC 8FA400C4 */ lw $a0, 0xc4($sp) /* 07FE20 7F04B2F0 0FC2D3ED */ jal sub_GAME_7F0B4FB4 /* 07FE24 7F04B2F4 AFA30044 */ sw $v1, 0x44($sp) /* 07FE28 7F04B2F8 8FA30044 */ lw $v1, 0x44($sp) .L7F04B2FC: /* 07FE2C 7F04B2FC AFA30070 */ sw $v1, 0x70($sp) /* 07FE30 7F04B300 8E0A000C */ lw $t2, 0xc($s0) /* 07FE34 7F04B304 8FAD003C */ lw $t5, 0x3c($sp) /* 07FE38 7F04B308 3C010001 */ lui $at, 1 /* 07FE3C 7F04B30C 01415824 */ and $t3, $t2, $at /* 07FE40 7F04B310 2D6C0001 */ sltiu $t4, $t3, 1 /* 07FE44 7F04B314 29A100FF */ slti $at, $t5, 0xff /* 07FE48 7F04B318 AFAC006C */ sw $t4, 0x6c($sp) /* 07FE4C 7F04B31C 10200005 */ beqz $at, .L7F04B334 /* 07FE50 7F04B320 AFA20074 */ sw $v0, 0x74($sp) /* 07FE54 7F04B324 24190005 */ li $t9, 5 /* 07FE58 7F04B328 AFB90098 */ sw $t9, 0x98($sp) /* 07FE5C 7F04B32C 10000017 */ b .L7F04B38C /* 07FE60 7F04B330 AFAD009C */ sw $t5, 0x9c($sp) .L7F04B334: /* 07FE64 7F04B334 24180009 */ li $t8, 9 /* 07FE68 7F04B338 AFB80098 */ sw $t8, 0x98($sp) /* 07FE6C 7F04B33C 92020003 */ lbu $v0, 3($s0) /* 07FE70 7F04B340 2401002F */ li $at, 47 /* 07FE74 7F04B344 54410006 */ bnel $v0, $at, .L7F04B360 /* 07FE78 7F04B348 24010001 */ li $at, 1 /* 07FE7C 7F04B34C 8E080088 */ lw $t0, 0x88($s0) /* 07FE80 7F04B350 00087A00 */ sll $t7, $t0, 8 /* 07FE84 7F04B354 1000000D */ b .L7F04B38C /* 07FE88 7F04B358 AFAF009C */ sw $t7, 0x9c($sp) /* 07FE8C 7F04B35C 24010001 */ li $at, 1 .L7F04B360: /* 07FE90 7F04B360 5441000A */ bnel $v0, $at, .L7F04B38C /* 07FE94 7F04B364 AFA0009C */ sw $zero, 0x9c($sp) /* 07FE98 7F04B368 960E0098 */ lhu $t6, 0x98($s0) /* 07FE9C 7F04B36C 31C90002 */ andi $t1, $t6, 2 /* 07FEA0 7F04B370 51200006 */ beql $t1, $zero, .L7F04B38C /* 07FEA4 7F04B374 AFA0009C */ sw $zero, 0x9c($sp) /* 07FEA8 7F04B378 860A00BE */ lh $t2, 0xbe($s0) /* 07FEAC 7F04B37C 000A5A00 */ sll $t3, $t2, 8 /* 07FEB0 7F04B380 10000002 */ b .L7F04B38C /* 07FEB4 7F04B384 AFAB009C */ sw $t3, 0x9c($sp) /* 07FEB8 7F04B388 AFA0009C */ sw $zero, 0x9c($sp) .L7F04B38C: /* 07FEBC 7F04B38C 0FC0FFD8 */ jal sub_GAME_7F03FF60 /* 07FEC0 7F04B390 02002025 */ move $a0, $s0 /* 07FEC4 7F04B394 00026080 */ sll $t4, $v0, 2 /* 07FEC8 7F04B398 01826021 */ addu $t4, $t4, $v0 /* 07FECC 7F04B39C 000C6080 */ sll $t4, $t4, 2 /* 07FED0 7F04B3A0 01826021 */ addu $t4, $t4, $v0 /* 07FED4 7F04B3A4 241900FF */ li $t9, 255 /* 07FED8 7F04B3A8 032C2023 */ subu $a0, $t9, $t4 /* 07FEDC 7F04B3AC 04810002 */ bgez $a0, .L7F04B3B8 /* 07FEE0 7F04B3B0 27A600B0 */ addiu $a2, $sp, 0xb0 /* 07FEE4 7F04B3B4 00002025 */ move $a0, $zero .L7F04B3B8: /* 07FEE8 7F04B3B8 920D0078 */ lbu $t5, 0x78($s0) /* 07FEEC 7F04B3BC 01A40019 */ multu $t5, $a0 /* 07FEF0 7F04B3C0 00026900 */ sll $t5, $v0, 4 /* 07FEF4 7F04B3C4 01A26823 */ subu $t5, $t5, $v0 /* 07FEF8 7F04B3C8 0000C012 */ mflo $t8 /* 07FEFC 7F04B3CC 00184203 */ sra $t0, $t8, 8 /* 07FF00 7F04B3D0 AFA80048 */ sw $t0, 0x48($sp) /* 07FF04 7F04B3D4 920F0079 */ lbu $t7, 0x79($s0) /* 07FF08 7F04B3D8 01E40019 */ multu $t7, $a0 /* 07FF0C 7F04B3DC 240F00FF */ li $t7, 255 /* 07FF10 7F04B3E0 00007012 */ mflo $t6 /* 07FF14 7F04B3E4 000E4A03 */ sra $t1, $t6, 8 /* 07FF18 7F04B3E8 AFA9004C */ sw $t1, 0x4c($sp) /* 07FF1C 7F04B3EC 920A007A */ lbu $t2, 0x7a($s0) /* 07FF20 7F04B3F0 01440019 */ multu $t2, $a0 /* 07FF24 7F04B3F4 27A40048 */ addiu $a0, $sp, 0x48 /* 07FF28 7F04B3F8 00005812 */ mflo $t3 /* 07FF2C 7F04B3FC 000BCA03 */ sra $t9, $t3, 8 /* 07FF30 7F04B400 AFB90050 */ sw $t9, 0x50($sp) /* 07FF34 7F04B404 920C007B */ lbu $t4, 0x7b($s0) /* 07FF38 7F04B408 018DC021 */ addu $t8, $t4, $t5 /* 07FF3C 7F04B40C 2B010100 */ slti $at, $t8, 0x100 /* 07FF40 7F04B410 14200002 */ bnez $at, .L7F04B41C /* 07FF44 7F04B414 AFB80054 */ sw $t8, 0x54($sp) /* 07FF48 7F04B418 AFAF0054 */ sw $t7, 0x54($sp) .L7F04B41C: /* 07FF4C 7F04B41C 0FC100E1 */ jal sub_GAME_7F040384 /* 07FF50 7F04B420 8FA500AC */ lw $a1, 0xac($sp) /* 07FF54 7F04B424 8FA90048 */ lw $t1, 0x48($sp) /* 07FF58 7F04B428 8FAE0054 */ lw $t6, 0x54($sp) /* 07FF5C 7F04B42C 8FB9004C */ lw $t9, 0x4c($sp) /* 07FF60 7F04B430 8FB80050 */ lw $t8, 0x50($sp) /* 07FF64 7F04B434 00095600 */ sll $t2, $t1, 0x18 /* 07FF68 7F04B438 01CA5825 */ or $t3, $t6, $t2 /* 07FF6C 7F04B43C 00196400 */ sll $t4, $t9, 0x10 /* 07FF70 7F04B440 016C6825 */ or $t5, $t3, $t4 /* 07FF74 7F04B444 00184200 */ sll $t0, $t8, 8 /* 07FF78 7F04B448 01A87825 */ or $t7, $t5, $t0 /* 07FF7C 7F04B44C AFAF00A0 */ sw $t7, 0xa0($sp) /* 07FF80 7F04B450 8FA400C0 */ lw $a0, 0xc0($sp) /* 07FF84 7F04B454 27A50068 */ addiu $a1, $sp, 0x68 /* 07FF88 7F04B458 0FC12B08 */ jal sub_GAME_7F04AC20 /* 07FF8C 7F04B45C 8FA600C8 */ lw $a2, 0xc8($sp) /* 07FF90 7F04B460 8FA20074 */ lw $v0, 0x74($sp) .L7F04B464: /* 07FF94 7F04B464 8FBF0024 */ lw $ra, 0x24($sp) /* 07FF98 7F04B468 8FB00020 */ lw $s0, 0x20($sp) /* 07FF9C 7F04B46C 27BD00C0 */ addiu $sp, $sp, 0xc0 /* 07FFA0 7F04B470 03E00008 */ jr $ra /* 07FFA4 7F04B474 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04B478(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04B478 /* 07FFA8 7F04B478 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 07FFAC 7F04B47C AFBF002C */ sw $ra, 0x2c($sp) /* 07FFB0 7F04B480 AFB50028 */ sw $s5, 0x28($sp) /* 07FFB4 7F04B484 AFB40024 */ sw $s4, 0x24($sp) /* 07FFB8 7F04B488 AFB30020 */ sw $s3, 0x20($sp) /* 07FFBC 7F04B48C AFB2001C */ sw $s2, 0x1c($sp) /* 07FFC0 7F04B490 AFB10018 */ sw $s1, 0x18($sp) /* 07FFC4 7F04B494 AFB00014 */ sw $s0, 0x14($sp) /* 07FFC8 7F04B498 8C8E0014 */ lw $t6, 0x14($a0) /* 07FFCC 7F04B49C 00808825 */ move $s1, $a0 /* 07FFD0 7F04B4A0 24120008 */ li $s2, 8 /* 07FFD4 7F04B4A4 8DC20008 */ lw $v0, 8($t6) /* 07FFD8 7F04B4A8 24130012 */ li $s3, 18 /* 07FFDC 7F04B4AC 24140017 */ li $s4, 23 /* 07FFE0 7F04B4B0 8C500000 */ lw $s0, ($v0) /* 07FFE4 7F04B4B4 24150018 */ li $s5, 24 /* 07FFE8 7F04B4B8 5200002C */ beql $s0, $zero, .L7F04B56C /* 07FFEC 7F04B4BC 00001025 */ move $v0, $zero /* 07FFF0 7F04B4C0 96020000 */ lhu $v0, ($s0) .L7F04B4C4: /* 07FFF4 7F04B4C4 02002825 */ move $a1, $s0 /* 07FFF8 7F04B4C8 304F00FF */ andi $t7, $v0, 0xff /* 07FFFC 7F04B4CC 11F2000B */ beq $t7, $s2, .L7F04B4FC /* 080000 7F04B4D0 00000000 */ nop /* 080004 7F04B4D4 11F3000D */ beq $t7, $s3, .L7F04B50C /* 080008 7F04B4D8 02002825 */ move $a1, $s0 /* 08000C 7F04B4DC 11F4000F */ beq $t7, $s4, .L7F04B51C /* 080010 7F04B4E0 02002825 */ move $a1, $s0 /* 080014 7F04B4E4 11F50003 */ beq $t7, $s5, .L7F04B4F4 /* 080018 7F04B4E8 00000000 */ nop /* 08001C 7F04B4EC 1000000E */ b .L7F04B528 /* 080020 7F04B4F0 8E020014 */ lw $v0, 0x14($s0) .L7F04B4F4: /* 080024 7F04B4F4 1000001D */ b .L7F04B56C /* 080028 7F04B4F8 02001025 */ move $v0, $s0 .L7F04B4FC: /* 08002C 7F04B4FC 0FC1BA5C */ jal sub_GAME_7F06E970 /* 080030 7F04B500 8E240014 */ lw $a0, 0x14($s1) /* 080034 7F04B504 10000008 */ b .L7F04B528 /* 080038 7F04B508 8E020014 */ lw $v0, 0x14($s0) .L7F04B50C: /* 08003C 7F04B50C 0FC1BA6F */ jal process_12_handle_switch /* 080040 7F04B510 8E240014 */ lw $a0, 0x14($s1) /* 080044 7F04B514 10000004 */ b .L7F04B528 /* 080048 7F04B518 8E020014 */ lw $v0, 0x14($s0) .L7F04B51C: /* 08004C 7F04B51C 0FC1BA82 */ jal process_17_pointer_to_head /* 080050 7F04B520 8E240014 */ lw $a0, 0x14($s1) /* 080054 7F04B524 8E020014 */ lw $v0, 0x14($s0) .L7F04B528: /* 080058 7F04B528 10400003 */ beqz $v0, .L7F04B538 /* 08005C 7F04B52C 00000000 */ nop /* 080060 7F04B530 1000000B */ b .L7F04B560 /* 080064 7F04B534 00408025 */ move $s0, $v0 .L7F04B538: /* 080068 7F04B538 12000009 */ beqz $s0, .L7F04B560 /* 08006C 7F04B53C 00000000 */ nop /* 080070 7F04B540 8E02000C */ lw $v0, 0xc($s0) .L7F04B544: /* 080074 7F04B544 50400004 */ beql $v0, $zero, .L7F04B558 /* 080078 7F04B548 8E100008 */ lw $s0, 8($s0) /* 08007C 7F04B54C 10000004 */ b .L7F04B560 /* 080080 7F04B550 00408025 */ move $s0, $v0 /* 080084 7F04B554 8E100008 */ lw $s0, 8($s0) .L7F04B558: /* 080088 7F04B558 5600FFFA */ bnezl $s0, .L7F04B544 /* 08008C 7F04B55C 8E02000C */ lw $v0, 0xc($s0) .L7F04B560: /* 080090 7F04B560 5600FFD8 */ bnezl $s0, .L7F04B4C4 /* 080094 7F04B564 96020000 */ lhu $v0, ($s0) /* 080098 7F04B568 00001025 */ move $v0, $zero .L7F04B56C: /* 08009C 7F04B56C 8FBF002C */ lw $ra, 0x2c($sp) /* 0800A0 7F04B570 8FB00014 */ lw $s0, 0x14($sp) /* 0800A4 7F04B574 8FB10018 */ lw $s1, 0x18($sp) /* 0800A8 7F04B578 8FB2001C */ lw $s2, 0x1c($sp) /* 0800AC 7F04B57C 8FB30020 */ lw $s3, 0x20($sp) /* 0800B0 7F04B580 8FB40024 */ lw $s4, 0x24($sp) /* 0800B4 7F04B584 8FB50028 */ lw $s5, 0x28($sp) /* 0800B8 7F04B588 03E00008 */ jr $ra /* 0800BC 7F04B58C 27BD0030 */ addiu $sp, $sp, 0x30 ) #endif #ifdef NONMATCHING void sub_GAME_7F04B590(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04B590 /* 0800C0 7F04B590 8C820004 */ lw $v0, 4($a0) /* 0800C4 7F04B594 3C0E8004 */ lui $t6, %hi(prop_console_one_screen_related) /* 0800C8 7F04B598 25CEA070 */ addiu $t6, %lo(prop_console_one_screen_related) # addiu $t6, $t6, -0x5f90 /* 0800CC 7F04B59C 15C20007 */ bne $t6, $v0, .L7F04B5BC /* 0800D0 7F04B5A0 3C198004 */ lui $t9, %hi(prop_console_four_screen_related) /* 0800D4 7F04B5A4 8C8F0008 */ lw $t7, 8($a0) /* 0800D8 7F04B5A8 8DF80000 */ lw $t8, ($t7) /* 0800DC 7F04B5AC 14B80003 */ bne $a1, $t8, .L7F04B5BC /* 0800E0 7F04B5B0 00000000 */ nop /* 0800E4 7F04B5B4 03E00008 */ jr $ra /* 0800E8 7F04B5B8 00001025 */ move $v0, $zero .L7F04B5BC: /* 0800EC 7F04B5BC 2739A084 */ addiu $t9, $t9, %lo(prop_console_four_screen_related) /* 0800F0 7F04B5C0 57220011 */ bnel $t9, $v0, .L7F04B608 /* 0800F4 7F04B5C4 24020001 */ li $v0, 1 /* 0800F8 7F04B5C8 8C820008 */ lw $v0, 8($a0) /* 0800FC 7F04B5CC 8C480000 */ lw $t0, ($v0) /* 080100 7F04B5D0 10A8000A */ beq $a1, $t0, .L7F04B5FC /* 080104 7F04B5D4 00000000 */ nop /* 080108 7F04B5D8 8C490004 */ lw $t1, 4($v0) /* 08010C 7F04B5DC 10A90007 */ beq $a1, $t1, .L7F04B5FC /* 080110 7F04B5E0 00000000 */ nop /* 080114 7F04B5E4 8C4A0008 */ lw $t2, 8($v0) /* 080118 7F04B5E8 10AA0004 */ beq $a1, $t2, .L7F04B5FC /* 08011C 7F04B5EC 00000000 */ nop /* 080120 7F04B5F0 8C4B000C */ lw $t3, 0xc($v0) /* 080124 7F04B5F4 54AB0004 */ bnel $a1, $t3, .L7F04B608 /* 080128 7F04B5F8 24020001 */ li $v0, 1 .L7F04B5FC: /* 08012C 7F04B5FC 03E00008 */ jr $ra /* 080130 7F04B600 00001025 */ move $v0, $zero /* 080134 7F04B604 24020001 */ li $v0, 1 .L7F04B608: /* 080138 7F04B608 03E00008 */ jr $ra /* 08013C 7F04B60C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04B610(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04B610 /* 080140 7F04B610 27BDFF68 */ addiu $sp, $sp, -0x98 /* 080144 7F04B614 AFB60030 */ sw $s6, 0x30($sp) /* 080148 7F04B618 AFB40028 */ sw $s4, 0x28($sp) /* 08014C 7F04B61C AFBF003C */ sw $ra, 0x3c($sp) /* 080150 7F04B620 AFBE0038 */ sw $fp, 0x38($sp) /* 080154 7F04B624 AFB70034 */ sw $s7, 0x34($sp) /* 080158 7F04B628 AFB5002C */ sw $s5, 0x2c($sp) /* 08015C 7F04B62C AFB30024 */ sw $s3, 0x24($sp) /* 080160 7F04B630 AFB20020 */ sw $s2, 0x20($sp) /* 080164 7F04B634 AFB1001C */ sw $s1, 0x1c($sp) /* 080168 7F04B638 AFB00018 */ sw $s0, 0x18($sp) /* 08016C 7F04B63C 3C14FFFE */ lui $s4, (0xFFFE7961 >> 16) # lui $s4, 0xfffe /* 080170 7F04B640 3C160001 */ li $s6, 0x00010000 # 0.000000 /* 080174 7F04B644 00A08025 */ move $s0, $a1 /* 080178 7F04B648 0080F025 */ move $fp, $a0 /* 08017C 7F04B64C 8C910014 */ lw $s1, 0x14($a0) /* 080180 7F04B650 36D6869F */ ori $s6, (0x0001869F & 0xFFFF) # ori $s6, $s6, 0x869f /* 080184 7F04B654 0FC12D1E */ jal sub_GAME_7F04B478 /* 080188 7F04B658 36947961 */ ori $s4, (0xFFFE7961 & 0xFFFF) # ori $s4, $s4, 0x7961 /* 08018C 7F04B65C 10400193 */ beqz $v0, .L7F04BCAC /* 080190 7F04B660 00402825 */ move $a1, $v0 /* 080194 7F04B664 8C550004 */ lw $s5, 4($v0) /* 080198 7F04B668 52A00191 */ beql $s5, $zero, .L7F04BCB0 /* 08019C 7F04B66C 8FBF003C */ lw $ra, 0x3c($sp) /* 0801A0 7F04B670 8FCE0014 */ lw $t6, 0x14($fp) /* 0801A4 7F04B674 0FC12D64 */ jal sub_GAME_7F04B590 /* 0801A8 7F04B678 8DC40008 */ lw $a0, 8($t6) /* 0801AC 7F04B67C 5040018C */ beql $v0, $zero, .L7F04BCB0 /* 0801B0 7F04B680 8FBF003C */ lw $ra, 0x3c($sp) /* 0801B4 7F04B684 96B8001A */ lhu $t8, 0x1a($s5) /* 0801B8 7F04B688 8E2F0010 */ lw $t7, 0x10($s1) /* 0801BC 7F04B68C 0018C880 */ sll $t9, $t8, 2 /* 0801C0 7F04B690 0C002914 */ jal get_random_value /* 0801C4 7F04B694 01F99821 */ addu $s3, $t7, $t9 /* 0801C8 7F04B698 30480001 */ andi $t0, $v0, 1 /* 0801CC 7F04B69C 1100000C */ beqz $t0, .L7F04B6D0 /* 0801D0 7F04B6A0 00104840 */ sll $t1, $s0, 1 /* 0801D4 7F04B6A4 AFA90040 */ sw $t1, 0x40($sp) /* 0801D8 7F04B6A8 87CA0004 */ lh $t2, 4($fp) /* 0801DC 7F04B6AC 3C0E8004 */ lui $t6, %hi(object_explosion_details+2) /* 0801E0 7F04B6B0 000A58C0 */ sll $t3, $t2, 3 /* 0801E4 7F04B6B4 016A5823 */ subu $t3, $t3, $t2 /* 0801E8 7F04B6B8 000B5840 */ sll $t3, $t3, 1 /* 0801EC 7F04B6BC 01696821 */ addu $t5, $t3, $t1 /* 0801F0 7F04B6C0 01CD7021 */ addu $t6, $t6, $t5 /* 0801F4 7F04B6C4 95CEB226 */ lhu $t6, %lo(object_explosion_details+2)($t6) /* 0801F8 7F04B6C8 1000000C */ b .L7F04B6FC /* 0801FC 7F04B6CC AFAE0078 */ sw $t6, 0x78($sp) .L7F04B6D0: /* 080200 7F04B6D0 87D80004 */ lh $t8, 4($fp) /* 080204 7F04B6D4 00101040 */ sll $v0, $s0, 1 /* 080208 7F04B6D8 3C088004 */ lui $t0, %hi(object_explosion_details+8) /* 08020C 7F04B6DC 001878C0 */ sll $t7, $t8, 3 /* 080210 7F04B6E0 01F87823 */ subu $t7, $t7, $t8 /* 080214 7F04B6E4 000F7840 */ sll $t7, $t7, 1 /* 080218 7F04B6E8 01E2C821 */ addu $t9, $t7, $v0 /* 08021C 7F04B6EC 01194021 */ addu $t0, $t0, $t9 /* 080220 7F04B6F0 9508B22C */ lhu $t0, %lo(object_explosion_details+8)($t0) /* 080224 7F04B6F4 AFA20040 */ sw $v0, 0x40($sp) /* 080228 7F04B6F8 AFA80078 */ sw $t0, 0x78($sp) .L7F04B6FC: /* 08022C 7F04B6FC 0FC243F1 */ jal get_debug_explosioninfo_flag /* 080230 7F04B700 00000000 */ nop /* 080234 7F04B704 14400003 */ bnez $v0, .L7F04B714 /* 080238 7F04B708 8FA90078 */ lw $t1, 0x78($sp) /* 08023C 7F04B70C 1520000B */ bnez $t1, .L7F04B73C /* 080240 7F04B710 00000000 */ nop .L7F04B714: /* 080244 7F04B714 0FC243F1 */ jal get_debug_explosioninfo_flag /* 080248 7F04B718 00000000 */ nop /* 08024C 7F04B71C 0C002914 */ jal get_random_value /* 080250 7F04B720 00000000 */ nop /* 080254 7F04B724 0FC243F1 */ jal get_debug_explosioninfo_flag /* 080258 7F04B728 AFA20078 */ sw $v0, 0x78($sp) /* 08025C 7F04B72C 10400003 */ beqz $v0, .L7F04B73C /* 080260 7F04B730 8FAA0078 */ lw $t2, 0x78($sp) /* 080264 7F04B734 314BFFFF */ andi $t3, $t2, 0xffff /* 080268 7F04B738 AFAB0078 */ sw $t3, 0x78($sp) .L7F04B73C: /* 08026C 7F04B73C 0FC28364 */ jal sub_GAME_7F0A0D90 /* 080270 7F04B740 8FC40010 */ lw $a0, 0x10($fp) /* 080274 7F04B744 87CC0004 */ lh $t4, 4($fp) /* 080278 7F04B748 2401004C */ li $at, 76 /* 08027C 7F04B74C 24170001 */ li $s7, 1 /* 080280 7F04B750 15810003 */ bne $t4, $at, .L7F04B760 /* 080284 7F04B754 00000000 */ nop /* 080288 7F04B758 10000001 */ b .L7F04B760 /* 08028C 7F04B75C 0000B825 */ move $s7, $zero .L7F04B760: /* 080290 7F04B760 0FC0FFF0 */ jal do_something_if_object_destroyed /* 080294 7F04B764 03C02025 */ move $a0, $fp /* 080298 7F04B768 86A4000C */ lh $a0, 0xc($s5) /* 08029C 7F04B76C 24050B0B */ li $a1, 2827 /* 0802A0 7F04B770 8E260008 */ lw $a2, 8($s1) /* 0802A4 7F04B774 0FC26F93 */ jal sub_GAME_7F09BE4C /* 0802A8 7F04B778 00403825 */ move $a3, $v0 /* 0802AC 7F04B77C 1040003A */ beqz $v0, .L7F04B868 /* 0802B0 7F04B780 00408025 */ move $s0, $v0 /* 0802B4 7F04B784 8E640000 */ lw $a0, ($s3) /* 0802B8 7F04B788 8EAD0008 */ lw $t5, 8($s5) /* 0802BC 7F04B78C 51A4001E */ beql $t5, $a0, .L7F04B808 /* 0802C0 7F04B790 86AA000C */ lh $t2, 0xc($s5) /* 0802C4 7F04B794 86AE000C */ lh $t6, 0xc($s5) /* 0802C8 7F04B798 00009025 */ move $s2, $zero /* 0802CC 7F04B79C 00008825 */ move $s1, $zero /* 0802D0 7F04B7A0 19C00014 */ blez $t6, .L7F04B7F4 /* 0802D4 7F04B7A4 00401825 */ move $v1, $v0 /* 0802D8 7F04B7A8 8E780000 */ lw $t8, ($s3) .L7F04B7AC: /* 0802DC 7F04B7AC 26520001 */ addiu $s2, $s2, 1 /* 0802E0 7F04B7B0 24630010 */ addiu $v1, $v1, 0x10 /* 0802E4 7F04B7B4 03117821 */ addu $t7, $t8, $s1 /* 0802E8 7F04B7B8 8DE10000 */ lw $at, ($t7) /* 0802EC 7F04B7BC 26310010 */ addiu $s1, $s1, 0x10 /* 0802F0 7F04B7C0 AC61FFF0 */ sw $at, -0x10($v1) /* 0802F4 7F04B7C4 8DE80004 */ lw $t0, 4($t7) /* 0802F8 7F04B7C8 AC68FFF4 */ sw $t0, -0xc($v1) /* 0802FC 7F04B7CC 8DE10008 */ lw $at, 8($t7) /* 080300 7F04B7D0 AC61FFF8 */ sw $at, -8($v1) /* 080304 7F04B7D4 8DE8000C */ lw $t0, 0xc($t7) /* 080308 7F04B7D8 AC68FFFC */ sw $t0, -4($v1) /* 08030C 7F04B7DC 86A9000C */ lh $t1, 0xc($s5) /* 080310 7F04B7E0 0249082A */ slt $at, $s2, $t1 /* 080314 7F04B7E4 5420FFF1 */ bnezl $at, .L7F04B7AC /* 080318 7F04B7E8 8E780000 */ lw $t8, ($s3) /* 08031C 7F04B7EC 8E640000 */ lw $a0, ($s3) /* 080320 7F04B7F0 00009025 */ move $s2, $zero .L7F04B7F4: /* 080324 7F04B7F4 0FC27011 */ jal sub_GAME_7F09C044 /* 080328 7F04B7F8 00000000 */ nop /* 08032C 7F04B7FC 10000018 */ b .L7F04B860 /* 080330 7F04B800 00000000 */ nop /* 080334 7F04B804 86AA000C */ lh $t2, 0xc($s5) .L7F04B808: /* 080338 7F04B808 00009025 */ move $s2, $zero /* 08033C 7F04B80C 00008825 */ move $s1, $zero /* 080340 7F04B810 19400013 */ blez $t2, .L7F04B860 /* 080344 7F04B814 00401825 */ move $v1, $v0 /* 080348 7F04B818 8EAB0008 */ lw $t3, 8($s5) .L7F04B81C: /* 08034C 7F04B81C 26520001 */ addiu $s2, $s2, 1 /* 080350 7F04B820 24630010 */ addiu $v1, $v1, 0x10 /* 080354 7F04B824 01716021 */ addu $t4, $t3, $s1 /* 080358 7F04B828 8D810000 */ lw $at, ($t4) /* 08035C 7F04B82C 26310010 */ addiu $s1, $s1, 0x10 /* 080360 7F04B830 AC61FFF0 */ sw $at, -0x10($v1) /* 080364 7F04B834 8D8E0004 */ lw $t6, 4($t4) /* 080368 7F04B838 AC6EFFF4 */ sw $t6, -0xc($v1) /* 08036C 7F04B83C 8D810008 */ lw $at, 8($t4) /* 080370 7F04B840 AC61FFF8 */ sw $at, -8($v1) /* 080374 7F04B844 8D8E000C */ lw $t6, 0xc($t4) /* 080378 7F04B848 AC6EFFFC */ sw $t6, -4($v1) /* 08037C 7F04B84C 86B8000C */ lh $t8, 0xc($s5) /* 080380 7F04B850 0258082A */ slt $at, $s2, $t8 /* 080384 7F04B854 5420FFF1 */ bnezl $at, .L7F04B81C /* 080388 7F04B858 8EAB0008 */ lw $t3, 8($s5) /* 08038C 7F04B85C 00009025 */ move $s2, $zero .L7F04B860: /* 080390 7F04B860 10000036 */ b .L7F04B93C /* 080394 7F04B864 AE700000 */ sw $s0, ($s3) .L7F04B868: /* 080398 7F04B868 8E640000 */ lw $a0, ($s3) /* 08039C 7F04B86C 8EB90008 */ lw $t9, 8($s5) /* 0803A0 7F04B870 13240008 */ beq $t9, $a0, .L7F04B894 /* 0803A4 7F04B874 00000000 */ nop /* 0803A8 7F04B878 0FC27011 */ jal sub_GAME_7F09C044 /* 0803AC 7F04B87C 00000000 */ nop /* 0803B0 7F04B880 8EAF0008 */ lw $t7, 8($s5) /* 0803B4 7F04B884 AE6F0000 */ sw $t7, ($s3) /* 0803B8 7F04B888 8FC80064 */ lw $t0, 0x64($fp) /* 0803BC 7F04B88C 35090004 */ ori $t1, $t0, 4 /* 0803C0 7F04B890 AFC90064 */ sw $t1, 0x64($fp) .L7F04B894: /* 0803C4 7F04B894 3C018005 */ lui $at, %hi(D_80052CB4) /* 0803C8 7F04B898 C4202CB4 */ lwc1 $f0, %lo(D_80052CB4)($at) /* 0803CC 7F04B89C C7C40028 */ lwc1 $f4, 0x28($fp) /* 0803D0 7F04B8A0 C7C8002C */ lwc1 $f8, 0x2c($fp) /* 0803D4 7F04B8A4 C7D00030 */ lwc1 $f16, 0x30($fp) /* 0803D8 7F04B8A8 46002182 */ mul.s $f6, $f4, $f0 /* 0803DC 7F04B8AC 00000000 */ nop /* 0803E0 7F04B8B0 46004282 */ mul.s $f10, $f8, $f0 /* 0803E4 7F04B8B4 00000000 */ nop /* 0803E8 7F04B8B8 46008482 */ mul.s $f18, $f16, $f0 /* 0803EC 7F04B8BC E7C60028 */ swc1 $f6, 0x28($fp) /* 0803F0 7F04B8C0 E7CA002C */ swc1 $f10, 0x2c($fp) /* 0803F4 7F04B8C4 12E000F9 */ beqz $s7, .L7F04BCAC /* 0803F8 7F04B8C8 E7D20030 */ swc1 $f18, 0x30($fp) /* 0803FC 7F04B8CC 8FC20014 */ lw $v0, 0x14($fp) /* 080400 7F04B8D0 C4440014 */ lwc1 $f4, 0x14($v0) /* 080404 7F04B8D4 8C440008 */ lw $a0, 8($v0) /* 080408 7F04B8D8 0FC0FFFE */ jal sub_GAME_7F03FFF8 /* 08040C 7F04B8DC E7A4005C */ swc1 $f4, 0x5c($sp) /* 080410 7F04B8E0 00408025 */ move $s0, $v0 /* 080414 7F04B8E4 0FC0FA19 */ jal sub_GAME_7F03E864 /* 080418 7F04B8E8 00402025 */ move $a0, $v0 /* 08041C 7F04B8EC C7A6005C */ lwc1 $f6, 0x5c($sp) /* 080420 7F04B8F0 3C018005 */ lui $at, %hi(D_80052CB8) /* 080424 7F04B8F4 C42A2CB8 */ lwc1 $f10, %lo(D_80052CB8)($at) /* 080428 7F04B8F8 46003202 */ mul.s $f8, $f6, $f0 /* 08042C 7F04B8FC 8FC20010 */ lw $v0, 0x10($fp) /* 080430 7F04B900 02002025 */ move $a0, $s0 /* 080434 7F04B904 C452000C */ lwc1 $f18, 0xc($v0) /* 080438 7F04B908 460A4402 */ mul.s $f16, $f8, $f10 /* 08043C 7F04B90C 46109100 */ add.s $f4, $f18, $f16 /* 080440 7F04B910 0FC0FA19 */ jal sub_GAME_7F03E864 /* 080444 7F04B914 E444000C */ swc1 $f4, 0xc($v0) /* 080448 7F04B918 C7A6005C */ lwc1 $f6, 0x5c($sp) /* 08044C 7F04B91C 3C018005 */ lui $at, %hi(D_80052CBC) /* 080450 7F04B920 C42A2CBC */ lwc1 $f10, %lo(D_80052CBC)($at) /* 080454 7F04B924 46003202 */ mul.s $f8, $f6, $f0 /* 080458 7F04B928 C7D0005C */ lwc1 $f16, 0x5c($fp) /* 08045C 7F04B92C 460A4482 */ mul.s $f18, $f8, $f10 /* 080460 7F04B930 46128100 */ add.s $f4, $f16, $f18 /* 080464 7F04B934 100000DD */ b .L7F04BCAC /* 080468 7F04B938 E7C4005C */ swc1 $f4, 0x5c($fp) .L7F04B93C: /* 08046C 7F04B93C 87C20004 */ lh $v0, 4($fp) /* 080470 7F04B940 24010026 */ li $at, 38 /* 080474 7F04B944 00008825 */ move $s1, $zero /* 080478 7F04B948 10410005 */ beq $v0, $at, .L7F04B960 /* 08047C 7F04B94C 24010027 */ li $at, 39 /* 080480 7F04B950 10410003 */ beq $v0, $at, .L7F04B960 /* 080484 7F04B954 24010055 */ li $at, 85 /* 080488 7F04B958 14410003 */ bne $v0, $at, .L7F04B968 /* 08048C 7F04B95C 240A0001 */ li $t2, 1 .L7F04B960: /* 080490 7F04B960 10000002 */ b .L7F04B96C /* 080494 7F04B964 AFA00070 */ sw $zero, 0x70($sp) .L7F04B968: /* 080498 7F04B968 AFAA0070 */ sw $t2, 0x70($sp) .L7F04B96C: /* 08049C 7F04B96C 86A4000C */ lh $a0, 0xc($s5) /* 0804A0 7F04B970 8FA50040 */ lw $a1, 0x40($sp) /* 0804A4 7F04B974 18800010 */ blez $a0, .L7F04B9B8 /* 0804A8 7F04B978 00041900 */ sll $v1, $a0, 4 /* 0804AC 7F04B97C 8E700000 */ lw $s0, ($s3) .L7F04B980: /* 0804B0 7F04B980 86020002 */ lh $v0, 2($s0) /* 0804B4 7F04B984 26310010 */ addiu $s1, $s1, 0x10 /* 0804B8 7F04B988 0056082A */ slt $at, $v0, $s6 /* 0804BC 7F04B98C 50200003 */ beql $at, $zero, .L7F04B99C /* 0804C0 7F04B990 0282082A */ slt $at, $s4, $v0 /* 0804C4 7F04B994 0040B025 */ move $s6, $v0 /* 0804C8 7F04B998 0282082A */ slt $at, $s4, $v0 .L7F04B99C: /* 0804CC 7F04B99C 50200003 */ beql $at, $zero, .L7F04B9AC /* 0804D0 7F04B9A0 0223082A */ slt $at, $s1, $v1 /* 0804D4 7F04B9A4 0040A025 */ move $s4, $v0 /* 0804D8 7F04B9A8 0223082A */ slt $at, $s1, $v1 .L7F04B9AC: /* 0804DC 7F04B9AC 1420FFF4 */ bnez $at, .L7F04B980 /* 0804E0 7F04B9B0 26100010 */ addiu $s0, $s0, 0x10 /* 0804E4 7F04B9B4 00009025 */ move $s2, $zero .L7F04B9B8: /* 0804E8 7F04B9B8 02D41021 */ addu $v0, $s6, $s4 /* 0804EC 7F04B9BC 00025843 */ sra $t3, $v0, 1 /* 0804F0 7F04B9C0 24010006 */ li $at, 6 /* 0804F4 7F04B9C4 14A10006 */ bne $a1, $at, .L7F04B9E0 /* 0804F8 7F04B9C8 01601825 */ move $v1, $t3 /* 0804FC 7F04B9CC 01766823 */ subu $t5, $t3, $s6 /* 080500 7F04B9D0 29A10029 */ slti $at, $t5, 0x29 /* 080504 7F04B9D4 54200003 */ bnezl $at, .L7F04B9E4 /* 080508 7F04B9D8 02961023 */ subu $v0, $s4, $s6 /* 08050C 7F04B9DC 26C30028 */ addiu $v1, $s6, 0x28 .L7F04B9E0: /* 080510 7F04B9E0 02961023 */ subu $v0, $s4, $s6 .L7F04B9E4: /* 080514 7F04B9E4 2841003D */ slti $at, $v0, 0x3d /* 080518 7F04B9E8 1420000E */ bnez $at, .L7F04BA24 /* 08051C 7F04B9EC 28A10006 */ slti $at, $a1, 6 /* 080520 7F04B9F0 10200005 */ beqz $at, .L7F04BA08 /* 080524 7F04B9F4 244CFFC4 */ addiu $t4, $v0, -0x3c /* 080528 7F04B9F8 3C018005 */ lui $at, %hi(D_80052CC0) /* 08052C 7F04B9FC C4262CC0 */ lwc1 $f6, %lo(D_80052CC0)($at) /* 080530 7F04BA00 1000000C */ b .L7F04BA34 /* 080534 7F04BA04 E7A60068 */ swc1 $f6, 0x68($sp) .L7F04BA08: /* 080538 7F04BA08 448C4000 */ mtc1 $t4, $f8 /* 08053C 7F04BA0C 44828000 */ mtc1 $v0, $f16 /* 080540 7F04BA10 468042A0 */ cvt.s.w $f10, $f8 /* 080544 7F04BA14 468084A0 */ cvt.s.w $f18, $f16 /* 080548 7F04BA18 46125103 */ div.s $f4, $f10, $f18 /* 08054C 7F04BA1C 10000005 */ b .L7F04BA34 /* 080550 7F04BA20 E7A40068 */ swc1 $f4, 0x68($sp) .L7F04BA24: /* 080554 7F04BA24 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 080558 7F04BA28 44813000 */ mtc1 $at, $f6 /* 08055C 7F04BA2C 00000000 */ nop /* 080560 7F04BA30 E7A60068 */ swc1 $f6, 0x68($sp) .L7F04BA34: /* 080564 7F04BA34 5880009E */ blezl $a0, .L7F04BCB0 /* 080568 7F04BA38 8FBF003C */ lw $ra, 0x3c($sp) /* 08056C 7F04BA3C 44964000 */ mtc1 $s6, $f8 /* 080570 7F04BA40 00008825 */ move $s1, $zero /* 080574 7F04BA44 AFA3007C */ sw $v1, 0x7c($sp) /* 080578 7F04BA48 46804420 */ cvt.s.w $f16, $f8 /* 08057C 7F04BA4C 24140050 */ li $s4, 80 /* 080580 7F04BA50 E7B00044 */ swc1 $f16, 0x44($sp) /* 080584 7F04BA54 8EAE0008 */ lw $t6, 8($s5) .L7F04BA58: /* 080588 7F04BA58 8FAA0078 */ lw $t2, 0x78($sp) /* 08058C 7F04BA5C 01D11021 */ addu $v0, $t6, $s1 /* 080590 7F04BA60 84580004 */ lh $t8, 4($v0) /* 080594 7F04BA64 84590000 */ lh $t9, ($v0) /* 080598 7F04BA68 84480002 */ lh $t0, 2($v0) /* 08059C 7F04BA6C 03197821 */ addu $t7, $t8, $t9 /* 0805A0 7F04BA70 01E84821 */ addu $t1, $t7, $t0 /* 0805A4 7F04BA74 0FC26DE2 */ jal sub_GAME_7F09B788 /* 0805A8 7F04BA78 012A2021 */ addu $a0, $t1, $t2 /* 0805AC 7F04BA7C 8FAB0070 */ lw $t3, 0x70($sp) /* 0805B0 7F04BA80 00008025 */ move $s0, $zero /* 0805B4 7F04BA84 1160002E */ beqz $t3, .L7F04BB40 /* 0805B8 7F04BA88 00000000 */ nop /* 0805BC 7F04BA8C C7CA002C */ lwc1 $f10, 0x2c($fp) /* 0805C0 7F04BA90 44809000 */ mtc1 $zero, $f18 /* 0805C4 7F04BA94 00000000 */ nop /* 0805C8 7F04BA98 460A903E */ c.le.s $f18, $f10 /* 0805CC 7F04BA9C 00000000 */ nop /* 0805D0 7F04BAA0 45020015 */ bc1fl .L7F04BAF8 /* 0805D4 7F04BAA4 8E6F0000 */ lw $t7, ($s3) /* 0805D8 7F04BAA8 8E6D0000 */ lw $t5, ($s3) /* 0805DC 7F04BAAC 8FB8007C */ lw $t8, 0x7c($sp) /* 0805E0 7F04BAB0 01B16021 */ addu $t4, $t5, $s1 /* 0805E4 7F04BAB4 858E0002 */ lh $t6, 2($t4) /* 0805E8 7F04BAB8 01D8082A */ slt $at, $t6, $t8 /* 0805EC 7F04BABC 14200007 */ bnez $at, .L7F04BADC /* 0805F0 7F04BAC0 00000000 */ nop /* 0805F4 7F04BAC4 12E00003 */ beqz $s7, .L7F04BAD4 /* 0805F8 7F04BAC8 00000000 */ nop /* 0805FC 7F04BACC 1000001C */ b .L7F04BB40 /* 080600 7F04BAD0 2410005A */ li $s0, 90 .L7F04BAD4: /* 080604 7F04BAD4 1000001A */ b .L7F04BB40 /* 080608 7F04BAD8 24100014 */ li $s0, 20 .L7F04BADC: /* 08060C 7F04BADC 12E00003 */ beqz $s7, .L7F04BAEC /* 080610 7F04BAE0 00000000 */ nop /* 080614 7F04BAE4 10000016 */ b .L7F04BB40 /* 080618 7F04BAE8 24100014 */ li $s0, 20 .L7F04BAEC: /* 08061C 7F04BAEC 10000014 */ b .L7F04BB40 /* 080620 7F04BAF0 2410005A */ li $s0, 90 /* 080624 7F04BAF4 8E6F0000 */ lw $t7, ($s3) .L7F04BAF8: /* 080628 7F04BAF8 8FB9007C */ lw $t9, 0x7c($sp) /* 08062C 7F04BAFC 01F14021 */ addu $t0, $t7, $s1 /* 080630 7F04BB00 85090002 */ lh $t1, 2($t0) /* 080634 7F04BB04 0329082A */ slt $at, $t9, $t1 /* 080638 7F04BB08 14200007 */ bnez $at, .L7F04BB28 /* 08063C 7F04BB0C 00000000 */ nop /* 080640 7F04BB10 12E00003 */ beqz $s7, .L7F04BB20 /* 080644 7F04BB14 00000000 */ nop /* 080648 7F04BB18 10000009 */ b .L7F04BB40 /* 08064C 7F04BB1C 2410005A */ li $s0, 90 .L7F04BB20: /* 080650 7F04BB20 10000007 */ b .L7F04BB40 /* 080654 7F04BB24 24100014 */ li $s0, 20 .L7F04BB28: /* 080658 7F04BB28 12E00003 */ beqz $s7, .L7F04BB38 /* 08065C 7F04BB2C 00000000 */ nop /* 080660 7F04BB30 10000003 */ b .L7F04BB40 /* 080664 7F04BB34 24100014 */ li $s0, 20 .L7F04BB38: /* 080668 7F04BB38 10000001 */ b .L7F04BB40 /* 08066C 7F04BB3C 2410005A */ li $s0, 90 .L7F04BB40: /* 080670 7F04BB40 0FC26DD0 */ jal sub_GAME_7F09B740 /* 080674 7F04BB44 00000000 */ nop /* 080678 7F04BB48 24010064 */ li $at, 100 /* 08067C 7F04BB4C 0041001B */ divu $zero, $v0, $at /* 080680 7F04BB50 00005010 */ mfhi $t2 /* 080684 7F04BB54 0150082A */ slt $at, $t2, $s0 /* 080688 7F04BB58 1020000F */ beqz $at, .L7F04BB98 /* 08068C 7F04BB5C 8FAA0040 */ lw $t2, 0x40($sp) /* 080690 7F04BB60 8E6B0000 */ lw $t3, ($s3) /* 080694 7F04BB64 240800FF */ li $t0, 255 /* 080698 7F04BB68 01716821 */ addu $t5, $t3, $s1 /* 08069C 7F04BB6C A1A0000C */ sb $zero, 0xc($t5) /* 0806A0 7F04BB70 8E6C0000 */ lw $t4, ($s3) /* 0806A4 7F04BB74 01917021 */ addu $t6, $t4, $s1 /* 0806A8 7F04BB78 A1C0000D */ sb $zero, 0xd($t6) /* 0806AC 7F04BB7C 8E780000 */ lw $t8, ($s3) /* 0806B0 7F04BB80 03117821 */ addu $t7, $t8, $s1 /* 0806B4 7F04BB84 A1E0000E */ sb $zero, 0xe($t7) /* 0806B8 7F04BB88 8E790000 */ lw $t9, ($s3) /* 0806BC 7F04BB8C 03314821 */ addu $t1, $t9, $s1 /* 0806C0 7F04BB90 10000007 */ b .L7F04BBB0 /* 0806C4 7F04BB94 A128000F */ sb $t0, 0xf($t1) .L7F04BB98: /* 0806C8 7F04BB98 24010002 */ li $at, 2 /* 0806CC 7F04BB9C 55410005 */ bnel $t2, $at, .L7F04BBB4 /* 0806D0 7F04BBA0 8E6C0000 */ lw $t4, ($s3) /* 0806D4 7F04BBA4 8E6B0000 */ lw $t3, ($s3) /* 0806D8 7F04BBA8 01716821 */ addu $t5, $t3, $s1 /* 0806DC 7F04BBAC A1A0000F */ sb $zero, 0xf($t5) .L7F04BBB0: /* 0806E0 7F04BBB0 8E6C0000 */ lw $t4, ($s3) .L7F04BBB4: /* 0806E4 7F04BBB4 C7A80068 */ lwc1 $f8, 0x68($sp) /* 0806E8 7F04BBB8 C7AA0044 */ lwc1 $f10, 0x44($sp) /* 0806EC 7F04BBBC 01918021 */ addu $s0, $t4, $s1 /* 0806F0 7F04BBC0 860E0002 */ lh $t6, 2($s0) /* 0806F4 7F04BBC4 01D6C023 */ subu $t8, $t6, $s6 /* 0806F8 7F04BBC8 44982000 */ mtc1 $t8, $f4 /* 0806FC 7F04BBCC 00000000 */ nop /* 080700 7F04BBD0 468021A0 */ cvt.s.w $f6, $f4 /* 080704 7F04BBD4 46083402 */ mul.s $f16, $f6, $f8 /* 080708 7F04BBD8 460A8480 */ add.s $f18, $f16, $f10 /* 08070C 7F04BBDC 4600910D */ trunc.w.s $f4, $f18 /* 080710 7F04BBE0 44192000 */ mfc1 $t9, $f4 /* 080714 7F04BBE4 0FC26DD0 */ jal sub_GAME_7F09B740 /* 080718 7F04BBE8 A6190002 */ sh $t9, 2($s0) /* 08071C 7F04BBEC 0054001B */ divu $zero, $v0, $s4 /* 080720 7F04BBF0 8E680000 */ lw $t0, ($s3) /* 080724 7F04BBF4 00005010 */ mfhi $t2 /* 080728 7F04BBF8 01118021 */ addu $s0, $t0, $s1 /* 08072C 7F04BBFC 86090000 */ lh $t1, ($s0) /* 080730 7F04BC00 16800002 */ bnez $s4, .L7F04BC0C /* 080734 7F04BC04 00000000 */ nop /* 080738 7F04BC08 0007000D */ break 7 .L7F04BC0C: /* 08073C 7F04BC0C 012A5821 */ addu $t3, $t1, $t2 /* 080740 7F04BC10 256DFFD8 */ addiu $t5, $t3, -0x28 /* 080744 7F04BC14 0FC26DD0 */ jal sub_GAME_7F09B740 /* 080748 7F04BC18 A60D0000 */ sh $t5, ($s0) /* 08074C 7F04BC1C 0054001B */ divu $zero, $v0, $s4 /* 080750 7F04BC20 8E6C0000 */ lw $t4, ($s3) /* 080754 7F04BC24 0000C010 */ mfhi $t8 /* 080758 7F04BC28 01918021 */ addu $s0, $t4, $s1 /* 08075C 7F04BC2C 860E0002 */ lh $t6, 2($s0) /* 080760 7F04BC30 16800002 */ bnez $s4, .L7F04BC3C /* 080764 7F04BC34 00000000 */ nop /* 080768 7F04BC38 0007000D */ break 7 .L7F04BC3C: /* 08076C 7F04BC3C 01D87821 */ addu $t7, $t6, $t8 /* 080770 7F04BC40 25F9FFD8 */ addiu $t9, $t7, -0x28 /* 080774 7F04BC44 0FC26DD0 */ jal sub_GAME_7F09B740 /* 080778 7F04BC48 A6190002 */ sh $t9, 2($s0) /* 08077C 7F04BC4C 0054001B */ divu $zero, $v0, $s4 /* 080780 7F04BC50 8E680000 */ lw $t0, ($s3) /* 080784 7F04BC54 00005010 */ mfhi $t2 /* 080788 7F04BC58 01118021 */ addu $s0, $t0, $s1 /* 08078C 7F04BC5C 86090004 */ lh $t1, 4($s0) /* 080790 7F04BC60 16800002 */ bnez $s4, .L7F04BC6C /* 080794 7F04BC64 00000000 */ nop /* 080798 7F04BC68 0007000D */ break 7 .L7F04BC6C: /* 08079C 7F04BC6C 012A5821 */ addu $t3, $t1, $t2 /* 0807A0 7F04BC70 256DFFD8 */ addiu $t5, $t3, -0x28 /* 0807A4 7F04BC74 A60D0004 */ sh $t5, 4($s0) /* 0807A8 7F04BC78 8E6C0000 */ lw $t4, ($s3) /* 0807AC 7F04BC7C 01918021 */ addu $s0, $t4, $s1 /* 0807B0 7F04BC80 860E0002 */ lh $t6, 2($s0) /* 0807B4 7F04BC84 01D6082A */ slt $at, $t6, $s6 /* 0807B8 7F04BC88 50200003 */ beql $at, $zero, .L7F04BC98 /* 0807BC 7F04BC8C 86B8000C */ lh $t8, 0xc($s5) /* 0807C0 7F04BC90 A6160002 */ sh $s6, 2($s0) /* 0807C4 7F04BC94 86B8000C */ lh $t8, 0xc($s5) .L7F04BC98: /* 0807C8 7F04BC98 26520001 */ addiu $s2, $s2, 1 /* 0807CC 7F04BC9C 26310010 */ addiu $s1, $s1, 0x10 /* 0807D0 7F04BCA0 0258082A */ slt $at, $s2, $t8 /* 0807D4 7F04BCA4 5420FF6C */ bnezl $at, .L7F04BA58 /* 0807D8 7F04BCA8 8EAE0008 */ lw $t6, 8($s5) .L7F04BCAC: /* 0807DC 7F04BCAC 8FBF003C */ lw $ra, 0x3c($sp) .L7F04BCB0: /* 0807E0 7F04BCB0 8FB00018 */ lw $s0, 0x18($sp) /* 0807E4 7F04BCB4 8FB1001C */ lw $s1, 0x1c($sp) /* 0807E8 7F04BCB8 8FB20020 */ lw $s2, 0x20($sp) /* 0807EC 7F04BCBC 8FB30024 */ lw $s3, 0x24($sp) /* 0807F0 7F04BCC0 8FB40028 */ lw $s4, 0x28($sp) /* 0807F4 7F04BCC4 8FB5002C */ lw $s5, 0x2c($sp) /* 0807F8 7F04BCC8 8FB60030 */ lw $s6, 0x30($sp) /* 0807FC 7F04BCCC 8FB70034 */ lw $s7, 0x34($sp) /* 080800 7F04BCD0 8FBE0038 */ lw $fp, 0x38($sp) /* 080804 7F04BCD4 03E00008 */ jr $ra /* 080808 7F04BCD8 27BD0098 */ addiu $sp, $sp, 0x98 ) #endif #ifdef NONMATCHING void sub_GAME_7F04BCDC(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052CC4 .word 0x3fd55555 /*1.6666666*/ glabel D_80052CC8 .word 0x40555555 /*3.3333333*/ glabel D_80052CCC .word 0x3fd55555 /*1.6666666*/ glabel D_80052CD0 .word 0x40555555 /*3.3333333*/ glabel D_80052CD4 .word 0x3fd55555 /*1.6666666*/ glabel D_80052CD8 .word 0x40555555 /*3.3333333*/ glabel D_80052CDC .word 0x40c90fdb /*6.2831855*/ glabel D_80052CE0 .word 0x3d490fdb /*0.049087387*/ glabel D_80052CE4 .word 0x40c90fdb /*6.2831855*/ glabel D_80052CE8 .word 0x3d490fdb /*0.049087387*/ glabel D_80052CEC .word 0x40c90fdb /*6.2831855*/ glabel D_80052CF0 .word 0x3d490fdb /*0.049087387*/ glabel D_80052CF4 .word 0x40555555 /*3.3333333*/ .text glabel sub_GAME_7F04BCDC /* 08080C 7F04BCDC 27BDFFB0 */ addiu $sp, $sp, -0x50 /* 080810 7F04BCE0 3C0F8003 */ lui $t7, %hi(D_80032010) /* 080814 7F04BCE4 AFBF0024 */ sw $ra, 0x24($sp) /* 080818 7F04BCE8 AFB00020 */ sw $s0, 0x20($sp) /* 08081C 7F04BCEC F7B40018 */ sdc1 $f20, 0x18($sp) /* 080820 7F04BCF0 AFA50054 */ sw $a1, 0x54($sp) /* 080824 7F04BCF4 25EF2010 */ addiu $t7, %lo(D_80032010) # addiu $t7, $t7, 0x2010 /* 080828 7F04BCF8 8DE10000 */ lw $at, ($t7) /* 08082C 7F04BCFC 27AE0038 */ addiu $t6, $sp, 0x38 /* 080830 7F04BD00 8DE80004 */ lw $t0, 4($t7) /* 080834 7F04BD04 ADC10000 */ sw $at, ($t6) /* 080838 7F04BD08 8DE10008 */ lw $at, 8($t7) /* 08083C 7F04BD0C 00803025 */ move $a2, $a0 /* 080840 7F04BD10 ADC80004 */ sw $t0, 4($t6) /* 080844 7F04BD14 ADC10008 */ sw $at, 8($t6) /* 080848 7F04BD18 8C840010 */ lw $a0, 0x10($a0) /* 08084C 7F04BD1C 00008025 */ move $s0, $zero /* 080850 7F04BD20 0FC0FF6A */ jal sub_GAME_7F03FDA8 /* 080854 7F04BD24 AFA60050 */ sw $a2, 0x50($sp) /* 080858 7F04BD28 8FA60050 */ lw $a2, 0x50($sp) /* 08085C 7F04BD2C 8CC20064 */ lw $v0, 0x64($a2) /* 080860 7F04BD30 30490040 */ andi $t1, $v0, 0x40 /* 080864 7F04BD34 11200004 */ beqz $t1, .L7F04BD48 /* 080868 7F04BD38 304B0080 */ andi $t3, $v0, 0x80 /* 08086C 7F04BD3C 8CCA006C */ lw $t2, 0x6c($a2) /* 080870 7F04BD40 10000004 */ b .L7F04BD54 /* 080874 7F04BD44 8D500044 */ lw $s0, 0x44($t2) .L7F04BD48: /* 080878 7F04BD48 11600002 */ beqz $t3, .L7F04BD54 /* 08087C 7F04BD4C 00000000 */ nop /* 080880 7F04BD50 8CD0006C */ lw $s0, 0x6c($a2) .L7F04BD54: /* 080884 7F04BD54 5200009A */ beql $s0, $zero, .L7F04BFC0 /* 080888 7F04BD58 8FBF0024 */ lw $ra, 0x24($sp) /* 08088C 7F04BD5C 0C002914 */ jal get_random_value /* 080890 7F04BD60 00000000 */ nop /* 080894 7F04BD64 44822000 */ mtc1 $v0, $f4 /* 080898 7F04BD68 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 08089C 7F04BD6C 4481A000 */ mtc1 $at, $f20 /* 0808A0 7F04BD70 04410005 */ bgez $v0, .L7F04BD88 /* 0808A4 7F04BD74 468021A0 */ cvt.s.w $f6, $f4 /* 0808A8 7F04BD78 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0808AC 7F04BD7C 44814000 */ mtc1 $at, $f8 /* 0808B0 7F04BD80 00000000 */ nop /* 0808B4 7F04BD84 46083180 */ add.s $f6, $f6, $f8 .L7F04BD88: /* 0808B8 7F04BD88 46143282 */ mul.s $f10, $f6, $f20 /* 0808BC 7F04BD8C 3C018005 */ lui $at, %hi(D_80052CC4) /* 0808C0 7F04BD90 C4302CC4 */ lwc1 $f16, %lo(D_80052CC4)($at) /* 0808C4 7F04BD94 3C014080 */ li $at, 0x40800000 # 4.000000 /* 0808C8 7F04BD98 44812000 */ mtc1 $at, $f4 /* 0808CC 7F04BD9C 3C018005 */ lui $at, %hi(D_80052CC8) /* 0808D0 7F04BDA0 C4262CC8 */ lwc1 $f6, %lo(D_80052CC8)($at) /* 0808D4 7F04BDA4 46105482 */ mul.s $f18, $f10, $f16 /* 0808D8 7F04BDA8 00000000 */ nop /* 0808DC 7F04BDAC 46049202 */ mul.s $f8, $f18, $f4 /* 0808E0 7F04BDB0 46064281 */ sub.s $f10, $f8, $f6 /* 0808E4 7F04BDB4 0C002914 */ jal get_random_value /* 0808E8 7F04BDB8 E60A0004 */ swc1 $f10, 4($s0) /* 0808EC 7F04BDBC 44828000 */ mtc1 $v0, $f16 /* 0808F0 7F04BDC0 04410005 */ bgez $v0, .L7F04BDD8 /* 0808F4 7F04BDC4 468084A0 */ cvt.s.w $f18, $f16 /* 0808F8 7F04BDC8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0808FC 7F04BDCC 44812000 */ mtc1 $at, $f4 /* 080900 7F04BDD0 00000000 */ nop /* 080904 7F04BDD4 46049480 */ add.s $f18, $f18, $f4 .L7F04BDD8: /* 080908 7F04BDD8 46149202 */ mul.s $f8, $f18, $f20 /* 08090C 7F04BDDC 3C018005 */ lui $at, %hi(D_80052CCC) /* 080910 7F04BDE0 C4262CCC */ lwc1 $f6, %lo(D_80052CCC)($at) /* 080914 7F04BDE4 3C018005 */ lui $at, %hi(D_80052CD0) /* 080918 7F04BDE8 C4302CD0 */ lwc1 $f16, %lo(D_80052CD0)($at) /* 08091C 7F04BDEC 46064002 */ mul.s $f0, $f8, $f6 /* 080920 7F04BDF0 46000280 */ add.s $f10, $f0, $f0 /* 080924 7F04BDF4 46105100 */ add.s $f4, $f10, $f16 /* 080928 7F04BDF8 0C002914 */ jal get_random_value /* 08092C 7F04BDFC E6040008 */ swc1 $f4, 8($s0) /* 080930 7F04BE00 44829000 */ mtc1 $v0, $f18 /* 080934 7F04BE04 04410005 */ bgez $v0, .L7F04BE1C /* 080938 7F04BE08 46809220 */ cvt.s.w $f8, $f18 /* 08093C 7F04BE0C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080940 7F04BE10 44813000 */ mtc1 $at, $f6 /* 080944 7F04BE14 00000000 */ nop /* 080948 7F04BE18 46064200 */ add.s $f8, $f8, $f6 .L7F04BE1C: /* 08094C 7F04BE1C 46144282 */ mul.s $f10, $f8, $f20 /* 080950 7F04BE20 3C018005 */ lui $at, %hi(D_80052CD4) /* 080954 7F04BE24 C4302CD4 */ lwc1 $f16, %lo(D_80052CD4)($at) /* 080958 7F04BE28 3C014080 */ li $at, 0x40800000 # 4.000000 /* 08095C 7F04BE2C 44819000 */ mtc1 $at, $f18 /* 080960 7F04BE30 3C018005 */ lui $at, %hi(D_80052CD8) /* 080964 7F04BE34 C4282CD8 */ lwc1 $f8, %lo(D_80052CD8)($at) /* 080968 7F04BE38 46105102 */ mul.s $f4, $f10, $f16 /* 08096C 7F04BE3C 00000000 */ nop /* 080970 7F04BE40 46122182 */ mul.s $f6, $f4, $f18 /* 080974 7F04BE44 46083281 */ sub.s $f10, $f6, $f8 /* 080978 7F04BE48 0C002914 */ jal get_random_value /* 08097C 7F04BE4C E60A000C */ swc1 $f10, 0xc($s0) /* 080980 7F04BE50 44828000 */ mtc1 $v0, $f16 /* 080984 7F04BE54 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080988 7F04BE58 04410004 */ bgez $v0, .L7F04BE6C /* 08098C 7F04BE5C 46808120 */ cvt.s.w $f4, $f16 /* 080990 7F04BE60 44819000 */ mtc1 $at, $f18 /* 080994 7F04BE64 00000000 */ nop /* 080998 7F04BE68 46122100 */ add.s $f4, $f4, $f18 .L7F04BE6C: /* 08099C 7F04BE6C 46142182 */ mul.s $f6, $f4, $f20 /* 0809A0 7F04BE70 3C018005 */ lui $at, %hi(D_80052CDC) /* 0809A4 7F04BE74 C4282CDC */ lwc1 $f8, %lo(D_80052CDC)($at) /* 0809A8 7F04BE78 3C013C80 */ li $at, 0x3C800000 # 0.015625 /* 0809AC 7F04BE7C 44818000 */ mtc1 $at, $f16 /* 0809B0 7F04BE80 3C018005 */ lui $at, %hi(D_80052CE0) /* 0809B4 7F04BE84 C4242CE0 */ lwc1 $f4, %lo(D_80052CE0)($at) /* 0809B8 7F04BE88 46083282 */ mul.s $f10, $f6, $f8 /* 0809BC 7F04BE8C 00000000 */ nop /* 0809C0 7F04BE90 46105482 */ mul.s $f18, $f10, $f16 /* 0809C4 7F04BE94 46049181 */ sub.s $f6, $f18, $f4 /* 0809C8 7F04BE98 0C002914 */ jal get_random_value /* 0809CC 7F04BE9C E7A60038 */ swc1 $f6, 0x38($sp) /* 0809D0 7F04BEA0 44824000 */ mtc1 $v0, $f8 /* 0809D4 7F04BEA4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0809D8 7F04BEA8 04410004 */ bgez $v0, .L7F04BEBC /* 0809DC 7F04BEAC 468042A0 */ cvt.s.w $f10, $f8 /* 0809E0 7F04BEB0 44818000 */ mtc1 $at, $f16 /* 0809E4 7F04BEB4 00000000 */ nop /* 0809E8 7F04BEB8 46105280 */ add.s $f10, $f10, $f16 .L7F04BEBC: /* 0809EC 7F04BEBC 46145482 */ mul.s $f18, $f10, $f20 /* 0809F0 7F04BEC0 3C018005 */ lui $at, %hi(D_80052CE4) /* 0809F4 7F04BEC4 C4242CE4 */ lwc1 $f4, %lo(D_80052CE4)($at) /* 0809F8 7F04BEC8 3C013C80 */ li $at, 0x3C800000 # 0.015625 /* 0809FC 7F04BECC 44814000 */ mtc1 $at, $f8 /* 080A00 7F04BED0 3C018005 */ lui $at, %hi(D_80052CE8) /* 080A04 7F04BED4 C42A2CE8 */ lwc1 $f10, %lo(D_80052CE8)($at) /* 080A08 7F04BED8 46049182 */ mul.s $f6, $f18, $f4 /* 080A0C 7F04BEDC 00000000 */ nop /* 080A10 7F04BEE0 46083402 */ mul.s $f16, $f6, $f8 /* 080A14 7F04BEE4 460A8481 */ sub.s $f18, $f16, $f10 /* 080A18 7F04BEE8 0C002914 */ jal get_random_value /* 080A1C 7F04BEEC E7B2003C */ swc1 $f18, 0x3c($sp) /* 080A20 7F04BEF0 44822000 */ mtc1 $v0, $f4 /* 080A24 7F04BEF4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080A28 7F04BEF8 04410004 */ bgez $v0, .L7F04BF0C /* 080A2C 7F04BEFC 468021A0 */ cvt.s.w $f6, $f4 /* 080A30 7F04BF00 44814000 */ mtc1 $at, $f8 /* 080A34 7F04BF04 00000000 */ nop /* 080A38 7F04BF08 46083180 */ add.s $f6, $f6, $f8 .L7F04BF0C: /* 080A3C 7F04BF0C 46143402 */ mul.s $f16, $f6, $f20 /* 080A40 7F04BF10 3C018005 */ lui $at, %hi(D_80052CEC) /* 080A44 7F04BF14 C42A2CEC */ lwc1 $f10, %lo(D_80052CEC)($at) /* 080A48 7F04BF18 3C013C80 */ li $at, 0x3C800000 # 0.015625 /* 080A4C 7F04BF1C 44812000 */ mtc1 $at, $f4 /* 080A50 7F04BF20 3C018005 */ lui $at, %hi(D_80052CF0) /* 080A54 7F04BF24 C4262CF0 */ lwc1 $f6, %lo(D_80052CF0)($at) /* 080A58 7F04BF28 460A8482 */ mul.s $f18, $f16, $f10 /* 080A5C 7F04BF2C 27A40038 */ addiu $a0, $sp, 0x38 /* 080A60 7F04BF30 26050020 */ addiu $a1, $s0, 0x20 /* 080A64 7F04BF34 46049202 */ mul.s $f8, $f18, $f4 /* 080A68 7F04BF38 46064401 */ sub.s $f16, $f8, $f6 /* 080A6C 7F04BF3C 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 080A70 7F04BF40 E7B00040 */ swc1 $f16, 0x40($sp) /* 080A74 7F04BF44 8E0C0000 */ lw $t4, ($s0) /* 080A78 7F04BF48 8FA20054 */ lw $v0, 0x54($sp) /* 080A7C 7F04BF4C 358D0001 */ ori $t5, $t4, 1 /* 080A80 7F04BF50 AE0D0000 */ sw $t5, ($s0) /* 080A84 7F04BF54 C44A0000 */ lwc1 $f10, ($v0) /* 080A88 7F04BF58 E7AA0044 */ swc1 $f10, 0x44($sp) /* 080A8C 7F04BF5C C4520004 */ lwc1 $f18, 4($v0) /* 080A90 7F04BF60 E7B20048 */ swc1 $f18, 0x48($sp) /* 080A94 7F04BF64 C4440008 */ lwc1 $f4, 8($v0) /* 080A98 7F04BF68 0FC1E111 */ jal sub_GAME_7F078444 /* 080A9C 7F04BF6C E7A4004C */ swc1 $f4, 0x4c($sp) /* 080AA0 7F04BF70 00402025 */ move $a0, $v0 /* 080AA4 7F04BF74 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 080AA8 7F04BF78 27A50044 */ addiu $a1, $sp, 0x44 /* 080AAC 7F04BF7C 3C018005 */ lui $at, %hi(D_80052CF4) /* 080AB0 7F04BF80 C4202CF4 */ lwc1 $f0, %lo(D_80052CF4)($at) /* 080AB4 7F04BF84 C7A60044 */ lwc1 $f6, 0x44($sp) /* 080AB8 7F04BF88 C6080004 */ lwc1 $f8, 4($s0) /* 080ABC 7F04BF8C C612000C */ lwc1 $f18, 0xc($s0) /* 080AC0 7F04BF90 46060402 */ mul.s $f16, $f0, $f6 /* 080AC4 7F04BF94 46104280 */ add.s $f10, $f8, $f16 /* 080AC8 7F04BF98 E60A0004 */ swc1 $f10, 4($s0) /* 080ACC 7F04BF9C C7A4004C */ lwc1 $f4, 0x4c($sp) /* 080AD0 7F04BFA0 46040182 */ mul.s $f6, $f0, $f4 /* 080AD4 7F04BFA4 46069200 */ add.s $f8, $f18, $f6 /* 080AD8 7F04BFA8 0FC225E6 */ jal get_curplayer_positiondata /* 080ADC 7F04BFAC E608000C */ swc1 $f8, 0xc($s0) /* 080AE0 7F04BFB0 24190001 */ li $t9, 1 /* 080AE4 7F04BFB4 AE020088 */ sw $v0, 0x88($s0) /* 080AE8 7F04BFB8 AE190090 */ sw $t9, 0x90($s0) /* 080AEC 7F04BFBC 8FBF0024 */ lw $ra, 0x24($sp) .L7F04BFC0: /* 080AF0 7F04BFC0 D7B40018 */ ldc1 $f20, 0x18($sp) /* 080AF4 7F04BFC4 8FB00020 */ lw $s0, 0x20($sp) /* 080AF8 7F04BFC8 03E00008 */ jr $ra /* 080AFC 7F04BFCC 27BD0050 */ addiu $sp, $sp, 0x50 ) #endif #ifdef NONMATCHING void sub_GAME_7F04BFD0(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04BFD0 /* 080B00 7F04BFD0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 080B04 7F04BFD4 AFBF0014 */ sw $ra, 0x14($sp) /* 080B08 7F04BFD8 8C82001C */ lw $v0, 0x1c($a0) /* 080B0C 7F04BFDC 50400016 */ beql $v0, $zero, .L7F04C038 /* 080B10 7F04BFE0 8FBF0014 */ lw $ra, 0x14($sp) /* 080B14 7F04BFE4 8C820004 */ lw $v0, 4($a0) /* 080B18 7F04BFE8 AFA50024 */ sw $a1, 0x24($sp) /* 080B1C 7F04BFEC 0FC0FF6A */ jal sub_GAME_7F03FDA8 /* 080B20 7F04BFF0 AFA20018 */ sw $v0, 0x18($sp) /* 080B24 7F04BFF4 8FA20018 */ lw $v0, 0x18($sp) /* 080B28 7F04BFF8 8FA50024 */ lw $a1, 0x24($sp) /* 080B2C 7F04BFFC 8C430064 */ lw $v1, 0x64($v0) /* 080B30 7F04C000 306E0040 */ andi $t6, $v1, 0x40 /* 080B34 7F04C004 11C00007 */ beqz $t6, .L7F04C024 /* 080B38 7F04C008 30780080 */ andi $t8, $v1, 0x80 /* 080B3C 7F04C00C 8C4F006C */ lw $t7, 0x6c($v0) /* 080B40 7F04C010 8DE40044 */ lw $a0, 0x44($t7) /* 080B44 7F04C014 10800003 */ beqz $a0, .L7F04C024 /* 080B48 7F04C018 00000000 */ nop /* 080B4C 7F04C01C 10000005 */ b .L7F04C034 /* 080B50 7F04C020 AC8500B8 */ sw $a1, 0xb8($a0) .L7F04C024: /* 080B54 7F04C024 53000004 */ beql $t8, $zero, .L7F04C038 /* 080B58 7F04C028 8FBF0014 */ lw $ra, 0x14($sp) /* 080B5C 7F04C02C 8C59006C */ lw $t9, 0x6c($v0) /* 080B60 7F04C030 AF2500B8 */ sw $a1, 0xb8($t9) .L7F04C034: /* 080B64 7F04C034 8FBF0014 */ lw $ra, 0x14($sp) .L7F04C038: /* 080B68 7F04C038 27BD0020 */ addiu $sp, $sp, 0x20 /* 080B6C 7F04C03C 03E00008 */ jr $ra /* 080B70 7F04C040 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04C044(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04C044 /* 080B74 7F04C044 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 080B78 7F04C048 AFBF0014 */ sw $ra, 0x14($sp) /* 080B7C 7F04C04C 8C86001C */ lw $a2, 0x1c($a0) /* 080B80 7F04C050 00802825 */ move $a1, $a0 /* 080B84 7F04C054 50C00033 */ beql $a2, $zero, .L7F04C124 /* 080B88 7F04C058 8FBF0014 */ lw $ra, 0x14($sp) /* 080B8C 7F04C05C 8C820004 */ lw $v0, 4($a0) /* 080B90 7F04C060 8C4E0014 */ lw $t6, 0x14($v0) /* 080B94 7F04C064 AFA60024 */ sw $a2, 0x24($sp) /* 080B98 7F04C068 AFA50028 */ sw $a1, 0x28($sp) /* 080B9C 7F04C06C AFA20020 */ sw $v0, 0x20($sp) /* 080BA0 7F04C070 0FC0E974 */ jal sub_GAME_7F03A5D0 /* 080BA4 7F04C074 AFAE001C */ sw $t6, 0x1c($sp) /* 080BA8 7F04C078 8FAF001C */ lw $t7, 0x1c($sp) /* 080BAC 7F04C07C 8FA20020 */ lw $v0, 0x20($sp) /* 080BB0 7F04C080 8FA60024 */ lw $a2, 0x24($sp) /* 080BB4 7F04C084 8FA50028 */ lw $a1, 0x28($sp) /* 080BB8 7F04C088 ADE0001C */ sw $zero, 0x1c($t7) /* 080BBC 7F04C08C 8C580064 */ lw $t8, 0x64($v0) /* 080BC0 7F04C090 3C01FFF7 */ lui $at, (0xFFF7FFFF >> 16) # lui $at, 0xfff7 /* 080BC4 7F04C094 3421FFFF */ ori $at, (0xFFF7FFFF & 0xFFFF) # ori $at, $at, 0xffff /* 080BC8 7F04C098 0301C824 */ and $t9, $t8, $at /* 080BCC 7F04C09C AC590064 */ sw $t9, 0x64($v0) /* 080BD0 7F04C0A0 90C30000 */ lbu $v1, ($a2) /* 080BD4 7F04C0A4 24010003 */ li $at, 3 /* 080BD8 7F04C0A8 10610003 */ beq $v1, $at, .L7F04C0B8 /* 080BDC 7F04C0AC 24010006 */ li $at, 6 /* 080BE0 7F04C0B0 5461001C */ bnel $v1, $at, .L7F04C124 /* 080BE4 7F04C0B4 8FBF0014 */ lw $ra, 0x14($sp) .L7F04C0B8: /* 080BE8 7F04C0B8 8CC40004 */ lw $a0, 4($a2) /* 080BEC 7F04C0BC 50800019 */ beql $a0, $zero, .L7F04C124 /* 080BF0 7F04C0C0 8FBF0014 */ lw $ra, 0x14($sp) /* 080BF4 7F04C0C4 8C8801D8 */ lw $t0, 0x1d8($a0) /* 080BF8 7F04C0C8 54A80004 */ bnel $a1, $t0, .L7F04C0DC /* 080BFC 7F04C0CC 8C890160 */ lw $t1, 0x160($a0) /* 080C00 7F04C0D0 10000013 */ b .L7F04C120 /* 080C04 7F04C0D4 AC8001D8 */ sw $zero, 0x1d8($a0) /* 080C08 7F04C0D8 8C890160 */ lw $t1, 0x160($a0) .L7F04C0DC: /* 080C0C 7F04C0DC 00003025 */ move $a2, $zero /* 080C10 7F04C0E0 54A90008 */ bnel $a1, $t1, .L7F04C104 /* 080C14 7F04C0E4 8C8A0164 */ lw $t2, 0x164($a0) /* 080C18 7F04C0E8 00002825 */ move $a1, $zero /* 080C1C 7F04C0EC 0FC0B446 */ jal sub_GAME_7F02D118 /* 080C20 7F04C0F0 AFA40018 */ sw $a0, 0x18($sp) /* 080C24 7F04C0F4 8FA40018 */ lw $a0, 0x18($sp) /* 080C28 7F04C0F8 10000009 */ b .L7F04C120 /* 080C2C 7F04C0FC AC800160 */ sw $zero, 0x160($a0) /* 080C30 7F04C100 8C8A0164 */ lw $t2, 0x164($a0) .L7F04C104: /* 080C34 7F04C104 00003025 */ move $a2, $zero /* 080C38 7F04C108 14AA0005 */ bne $a1, $t2, .L7F04C120 /* 080C3C 7F04C10C 24050001 */ li $a1, 1 /* 080C40 7F04C110 0FC0B446 */ jal sub_GAME_7F02D118 /* 080C44 7F04C114 AFA40018 */ sw $a0, 0x18($sp) /* 080C48 7F04C118 8FA40018 */ lw $a0, 0x18($sp) /* 080C4C 7F04C11C AC800164 */ sw $zero, 0x164($a0) .L7F04C120: /* 080C50 7F04C120 8FBF0014 */ lw $ra, 0x14($sp) .L7F04C124: /* 080C54 7F04C124 27BD0028 */ addiu $sp, $sp, 0x28 /* 080C58 7F04C128 03E00008 */ jr $ra /* 080C5C 7F04C12C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04C130(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052CF8 .word 0x3fd55555 /*1.6666666*/ glabel D_80052CFC .word 0x3fd55555 /*1.6666666*/ glabel D_80052D00 .word 0x3fd55555 /*1.6666666*/ glabel D_80052D04 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D08 .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D0C .word 0x40c90fdb /*6.2831855*/ glabel D_80052D10 .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D14 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D18 .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D1C .word 0x41555555 /*13.333333*/ glabel D_80052D20 .word 0x40d55555 /*6.6666665*/ glabel D_80052D24 .word 0x41555555 /*13.333333*/ glabel D_80052D28 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D2C .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D30 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D34 .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D38 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D3C .word 0x3cc90fdb /*0.024543693*/ glabel D_80052D40 .word 0x3fd55555 /*1.6666666*/ glabel D_80052D44 .word 0x40555555 /*3.3333333*/ glabel D_80052D48 .word 0x3fd55555 /*1.6666666*/ glabel D_80052D4C .word 0x3fd55555 /*1.6666666*/ glabel D_80052D50 .word 0x40555555 /*3.3333333*/ glabel D_80052D54 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D58 .word 0x3dc90fdb /*0.098174773*/ glabel D_80052D5C .word 0x40c90fdb /*6.2831855*/ glabel D_80052D60 .word 0x3dc90fdb /*0.098174773*/ glabel D_80052D64 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D68 .word 0x3dc90fdb /*0.098174773*/ .text glabel sub_GAME_7F04C130 /* 080C60 7F04C130 27BDFEF8 */ addiu $sp, $sp, -0x108 /* 080C64 7F04C134 AFBF003C */ sw $ra, 0x3c($sp) /* 080C68 7F04C138 AFB20038 */ sw $s2, 0x38($sp) /* 080C6C 7F04C13C AFB10034 */ sw $s1, 0x34($sp) /* 080C70 7F04C140 AFB00030 */ sw $s0, 0x30($sp) /* 080C74 7F04C144 AFA40108 */ sw $a0, 0x108($sp) /* 080C78 7F04C148 8C8F001C */ lw $t7, 0x1c($a0) /* 080C7C 7F04C14C AFAF0104 */ sw $t7, 0x104($sp) /* 080C80 7F04C150 8C920004 */ lw $s2, 4($a0) /* 080C84 7F04C154 8E580064 */ lw $t8, 0x64($s2) /* 080C88 7F04C158 33190040 */ andi $t9, $t8, 0x40 /* 080C8C 7F04C15C 5320000F */ beql $t9, $zero, .L7F04C19C /* 080C90 7F04C160 8FAC0104 */ lw $t4, 0x104($sp) /* 080C94 7F04C164 8E44006C */ lw $a0, 0x6c($s2) /* 080C98 7F04C168 8C820044 */ lw $v0, 0x44($a0) /* 080C9C 7F04C16C 5040000B */ beql $v0, $zero, .L7F04C19C /* 080CA0 7F04C170 8FAC0104 */ lw $t4, 0x104($sp) /* 080CA4 7F04C174 0FC0FFA2 */ jal sub_GAME_7F03FE88 /* 080CA8 7F04C178 00408025 */ move $s0, $v0 /* 080CAC 7F04C17C 8E480064 */ lw $t0, 0x64($s2) /* 080CB0 7F04C180 2401FFBF */ li $at, -65 /* 080CB4 7F04C184 AE50006C */ sw $s0, 0x6c($s2) /* 080CB8 7F04C188 01014824 */ and $t1, $t0, $at /* 080CBC 7F04C18C AE490064 */ sw $t1, 0x64($s2) /* 080CC0 7F04C190 352B0080 */ ori $t3, $t1, 0x80 /* 080CC4 7F04C194 AE4B0064 */ sw $t3, 0x64($s2) /* 080CC8 7F04C198 8FAC0104 */ lw $t4, 0x104($sp) .L7F04C19C: /* 080CCC 7F04C19C 00001025 */ move $v0, $zero /* 080CD0 7F04C1A0 11800222 */ beqz $t4, .L7F04CA2C /* 080CD4 7F04C1A4 00000000 */ nop /* 080CD8 7F04C1A8 8E4D0064 */ lw $t5, 0x64($s2) /* 080CDC 7F04C1AC 31AF0080 */ andi $t7, $t5, 0x80 /* 080CE0 7F04C1B0 11E0021E */ beqz $t7, .L7F04CA2C /* 080CE4 7F04C1B4 00000000 */ nop /* 080CE8 7F04C1B8 8E4E0014 */ lw $t6, 0x14($s2) /* 080CEC 7F04C1BC 24010002 */ li $at, 2 /* 080CF0 7F04C1C0 01808025 */ move $s0, $t4 /* 080CF4 7F04C1C4 AFAE00F8 */ sw $t6, 0xf8($sp) /* 080CF8 7F04C1C8 8E51006C */ lw $s1, 0x6c($s2) /* 080CFC 7F04C1CC 8E380000 */ lw $t8, ($s1) /* 080D00 7F04C1D0 8E2200B8 */ lw $v0, 0xb8($s1) /* 080D04 7F04C1D4 37190001 */ ori $t9, $t8, 1 /* 080D08 7F04C1D8 AE390000 */ sw $t9, ($s1) /* 080D0C 7F04C1DC 8FA80104 */ lw $t0, 0x104($sp) /* 080D10 7F04C1E0 1441007A */ bne $v0, $at, .L7F04C3CC /* 080D14 7F04C1E4 AE280088 */ sw $t0, 0x88($s1) /* 080D18 7F04C1E8 8FA90104 */ lw $t1, 0x104($sp) /* 080D1C 7F04C1EC 24030003 */ li $v1, 3 /* 080D20 7F04C1F0 3C0D8003 */ lui $t5, %hi(D_8003201C) /* 080D24 7F04C1F4 912A0000 */ lbu $t2, ($t1) /* 080D28 7F04C1F8 25AD201C */ addiu $t5, %lo(D_8003201C) # addiu $t5, $t5, 0x201c /* 080D2C 7F04C1FC 27AB0098 */ addiu $t3, $sp, 0x98 /* 080D30 7F04C200 546A0073 */ bnel $v1, $t2, .L7F04C3D0 /* 080D34 7F04C204 24030003 */ li $v1, 3 /* 080D38 7F04C208 8D220004 */ lw $v0, 4($t1) /* 080D3C 7F04C20C 8DA10000 */ lw $at, ($t5) /* 080D40 7F04C210 8DAE0004 */ lw $t6, 4($t5) /* 080D44 7F04C214 8C44001C */ lw $a0, 0x1c($v0) /* 080D48 7F04C218 AD610000 */ sw $at, ($t3) /* 080D4C 7F04C21C 8DA10008 */ lw $at, 8($t5) /* 080D50 7F04C220 AD6E0004 */ sw $t6, 4($t3) /* 080D54 7F04C224 0FC1B320 */ jal getsubroty /* 080D58 7F04C228 AD610008 */ sw $at, 8($t3) /* 080D5C 7F04C22C E7A00094 */ swc1 $f0, 0x94($sp) /* 080D60 7F04C230 0FC15FAB */ jal sinf /* 080D64 7F04C234 46000306 */ mov.s $f12, $f0 /* 080D68 7F04C238 3C018005 */ lui $at, %hi(D_80052CF8) /* 080D6C 7F04C23C C4242CF8 */ lwc1 $f4, %lo(D_80052CF8)($at) /* 080D70 7F04C240 46040182 */ mul.s $f6, $f0, $f4 /* 080D74 7F04C244 0C002914 */ jal get_random_value /* 080D78 7F04C248 E6260004 */ swc1 $f6, 4($s1) /* 080D7C 7F04C24C 44824000 */ mtc1 $v0, $f8 /* 080D80 7F04C250 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080D84 7F04C254 04410004 */ bgez $v0, .L7F04C268 /* 080D88 7F04C258 468042A0 */ cvt.s.w $f10, $f8 /* 080D8C 7F04C25C 44818000 */ mtc1 $at, $f16 /* 080D90 7F04C260 00000000 */ nop /* 080D94 7F04C264 46105280 */ add.s $f10, $f10, $f16 .L7F04C268: /* 080D98 7F04C268 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080D9C 7F04C26C 44819000 */ mtc1 $at, $f18 /* 080DA0 7F04C270 3C018005 */ lui $at, %hi(D_80052CFC) /* 080DA4 7F04C274 C4282CFC */ lwc1 $f8, %lo(D_80052CFC)($at) /* 080DA8 7F04C278 46125102 */ mul.s $f4, $f10, $f18 /* 080DAC 7F04C27C 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 080DB0 7F04C280 44815000 */ mtc1 $at, $f10 /* 080DB4 7F04C284 46002187 */ neg.s $f6, $f4 /* 080DB8 7F04C288 46083402 */ mul.s $f16, $f6, $f8 /* 080DBC 7F04C28C 00000000 */ nop /* 080DC0 7F04C290 460A8482 */ mul.s $f18, $f16, $f10 /* 080DC4 7F04C294 E6320008 */ swc1 $f18, 8($s1) /* 080DC8 7F04C298 0FC15FA8 */ jal cosf /* 080DCC 7F04C29C C7AC0094 */ lwc1 $f12, 0x94($sp) /* 080DD0 7F04C2A0 3C018005 */ lui $at, %hi(D_80052D00) /* 080DD4 7F04C2A4 C4242D00 */ lwc1 $f4, %lo(D_80052D00)($at) /* 080DD8 7F04C2A8 46040182 */ mul.s $f6, $f0, $f4 /* 080DDC 7F04C2AC 0C002914 */ jal get_random_value /* 080DE0 7F04C2B0 E626000C */ swc1 $f6, 0xc($s1) /* 080DE4 7F04C2B4 44824000 */ mtc1 $v0, $f8 /* 080DE8 7F04C2B8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080DEC 7F04C2BC 04410004 */ bgez $v0, .L7F04C2D0 /* 080DF0 7F04C2C0 46804420 */ cvt.s.w $f16, $f8 /* 080DF4 7F04C2C4 44815000 */ mtc1 $at, $f10 /* 080DF8 7F04C2C8 00000000 */ nop /* 080DFC 7F04C2CC 460A8400 */ add.s $f16, $f16, $f10 .L7F04C2D0: /* 080E00 7F04C2D0 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080E04 7F04C2D4 44819000 */ mtc1 $at, $f18 /* 080E08 7F04C2D8 3C018005 */ lui $at, %hi(D_80052D04) /* 080E0C 7F04C2DC C4262D04 */ lwc1 $f6, %lo(D_80052D04)($at) /* 080E10 7F04C2E0 46128102 */ mul.s $f4, $f16, $f18 /* 080E14 7F04C2E4 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 080E18 7F04C2E8 44815000 */ mtc1 $at, $f10 /* 080E1C 7F04C2EC 3C018005 */ lui $at, %hi(D_80052D08) /* 080E20 7F04C2F0 C4322D08 */ lwc1 $f18, %lo(D_80052D08)($at) /* 080E24 7F04C2F4 46062202 */ mul.s $f8, $f4, $f6 /* 080E28 7F04C2F8 00000000 */ nop /* 080E2C 7F04C2FC 460A4402 */ mul.s $f16, $f8, $f10 /* 080E30 7F04C300 46128101 */ sub.s $f4, $f16, $f18 /* 080E34 7F04C304 0C002914 */ jal get_random_value /* 080E38 7F04C308 E7A40098 */ swc1 $f4, 0x98($sp) /* 080E3C 7F04C30C 44823000 */ mtc1 $v0, $f6 /* 080E40 7F04C310 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080E44 7F04C314 04410004 */ bgez $v0, .L7F04C328 /* 080E48 7F04C318 46803220 */ cvt.s.w $f8, $f6 /* 080E4C 7F04C31C 44815000 */ mtc1 $at, $f10 /* 080E50 7F04C320 00000000 */ nop /* 080E54 7F04C324 460A4200 */ add.s $f8, $f8, $f10 .L7F04C328: /* 080E58 7F04C328 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080E5C 7F04C32C 44818000 */ mtc1 $at, $f16 /* 080E60 7F04C330 3C018005 */ lui $at, %hi(D_80052D0C) /* 080E64 7F04C334 C4242D0C */ lwc1 $f4, %lo(D_80052D0C)($at) /* 080E68 7F04C338 46104482 */ mul.s $f18, $f8, $f16 /* 080E6C 7F04C33C 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 080E70 7F04C340 44815000 */ mtc1 $at, $f10 /* 080E74 7F04C344 3C018005 */ lui $at, %hi(D_80052D10) /* 080E78 7F04C348 C4302D10 */ lwc1 $f16, %lo(D_80052D10)($at) /* 080E7C 7F04C34C 46049182 */ mul.s $f6, $f18, $f4 /* 080E80 7F04C350 00000000 */ nop /* 080E84 7F04C354 460A3202 */ mul.s $f8, $f6, $f10 /* 080E88 7F04C358 46104481 */ sub.s $f18, $f8, $f16 /* 080E8C 7F04C35C 0C002914 */ jal get_random_value /* 080E90 7F04C360 E7B2009C */ swc1 $f18, 0x9c($sp) /* 080E94 7F04C364 44822000 */ mtc1 $v0, $f4 /* 080E98 7F04C368 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080E9C 7F04C36C 04410004 */ bgez $v0, .L7F04C380 /* 080EA0 7F04C370 468021A0 */ cvt.s.w $f6, $f4 /* 080EA4 7F04C374 44815000 */ mtc1 $at, $f10 /* 080EA8 7F04C378 00000000 */ nop /* 080EAC 7F04C37C 460A3180 */ add.s $f6, $f6, $f10 .L7F04C380: /* 080EB0 7F04C380 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080EB4 7F04C384 44814000 */ mtc1 $at, $f8 /* 080EB8 7F04C388 3C018005 */ lui $at, %hi(D_80052D14) /* 080EBC 7F04C38C C4322D14 */ lwc1 $f18, %lo(D_80052D14)($at) /* 080EC0 7F04C390 46083402 */ mul.s $f16, $f6, $f8 /* 080EC4 7F04C394 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 080EC8 7F04C398 44815000 */ mtc1 $at, $f10 /* 080ECC 7F04C39C 3C018005 */ lui $at, %hi(D_80052D18) /* 080ED0 7F04C3A0 C4282D18 */ lwc1 $f8, %lo(D_80052D18)($at) /* 080ED4 7F04C3A4 27A40098 */ addiu $a0, $sp, 0x98 /* 080ED8 7F04C3A8 26250020 */ addiu $a1, $s1, 0x20 /* 080EDC 7F04C3AC 46128102 */ mul.s $f4, $f16, $f18 /* 080EE0 7F04C3B0 00000000 */ nop /* 080EE4 7F04C3B4 460A2182 */ mul.s $f6, $f4, $f10 /* 080EE8 7F04C3B8 46083401 */ sub.s $f16, $f6, $f8 /* 080EEC 7F04C3BC 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 080EF0 7F04C3C0 E7B000A0 */ swc1 $f16, 0xa0($sp) /* 080EF4 7F04C3C4 1000010C */ b .L7F04C7F8 /* 080EF8 7F04C3C8 8FA90104 */ lw $t1, 0x104($sp) .L7F04C3CC: /* 080EFC 7F04C3CC 24030003 */ li $v1, 3 .L7F04C3D0: /* 080F00 7F04C3D0 14620068 */ bne $v1, $v0, .L7F04C574 /* 080F04 7F04C3D4 8FAC0104 */ lw $t4, 0x104($sp) /* 080F08 7F04C3D8 91980000 */ lbu $t8, ($t4) /* 080F0C 7F04C3DC 3C088003 */ lui $t0, %hi(D_80032028) /* 080F10 7F04C3E0 25082028 */ addiu $t0, %lo(D_80032028) # addiu $t0, $t0, 0x2028 /* 080F14 7F04C3E4 14780063 */ bne $v1, $t8, .L7F04C574 /* 080F18 7F04C3E8 27B90080 */ addiu $t9, $sp, 0x80 /* 080F1C 7F04C3EC 8D820004 */ lw $v0, 4($t4) /* 080F20 7F04C3F0 8D010000 */ lw $at, ($t0) /* 080F24 7F04C3F4 8D090004 */ lw $t1, 4($t0) /* 080F28 7F04C3F8 8C44001C */ lw $a0, 0x1c($v0) /* 080F2C 7F04C3FC AF210000 */ sw $at, ($t9) /* 080F30 7F04C400 8D010008 */ lw $at, 8($t0) /* 080F34 7F04C404 AF290004 */ sw $t1, 4($t9) /* 080F38 7F04C408 0FC1B320 */ jal getsubroty /* 080F3C 7F04C40C AF210008 */ sw $at, 8($t9) /* 080F40 7F04C410 E7A0007C */ swc1 $f0, 0x7c($sp) /* 080F44 7F04C414 0FC15FAB */ jal sinf /* 080F48 7F04C418 46000306 */ mov.s $f12, $f0 /* 080F4C 7F04C41C 3C018005 */ lui $at, %hi(D_80052D1C) /* 080F50 7F04C420 C4322D1C */ lwc1 $f18, %lo(D_80052D1C)($at) /* 080F54 7F04C424 3C018005 */ lui $at, %hi(D_80052D20) /* 080F58 7F04C428 46120102 */ mul.s $f4, $f0, $f18 /* 080F5C 7F04C42C E6240004 */ swc1 $f4, 4($s1) /* 080F60 7F04C430 C42A2D20 */ lwc1 $f10, %lo(D_80052D20)($at) /* 080F64 7F04C434 E62A0008 */ swc1 $f10, 8($s1) /* 080F68 7F04C438 0FC15FA8 */ jal cosf /* 080F6C 7F04C43C C7AC007C */ lwc1 $f12, 0x7c($sp) /* 080F70 7F04C440 3C018005 */ lui $at, %hi(D_80052D24) /* 080F74 7F04C444 C4262D24 */ lwc1 $f6, %lo(D_80052D24)($at) /* 080F78 7F04C448 46060202 */ mul.s $f8, $f0, $f6 /* 080F7C 7F04C44C 0C002914 */ jal get_random_value /* 080F80 7F04C450 E628000C */ swc1 $f8, 0xc($s1) /* 080F84 7F04C454 44828000 */ mtc1 $v0, $f16 /* 080F88 7F04C458 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080F8C 7F04C45C 04410004 */ bgez $v0, .L7F04C470 /* 080F90 7F04C460 468084A0 */ cvt.s.w $f18, $f16 /* 080F94 7F04C464 44812000 */ mtc1 $at, $f4 /* 080F98 7F04C468 00000000 */ nop /* 080F9C 7F04C46C 46049480 */ add.s $f18, $f18, $f4 .L7F04C470: /* 080FA0 7F04C470 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080FA4 7F04C474 44815000 */ mtc1 $at, $f10 /* 080FA8 7F04C478 3C018005 */ lui $at, %hi(D_80052D28) /* 080FAC 7F04C47C C4282D28 */ lwc1 $f8, %lo(D_80052D28)($at) /* 080FB0 7F04C480 460A9182 */ mul.s $f6, $f18, $f10 /* 080FB4 7F04C484 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 080FB8 7F04C488 44812000 */ mtc1 $at, $f4 /* 080FBC 7F04C48C 3C018005 */ lui $at, %hi(D_80052D2C) /* 080FC0 7F04C490 C42A2D2C */ lwc1 $f10, %lo(D_80052D2C)($at) /* 080FC4 7F04C494 46083402 */ mul.s $f16, $f6, $f8 /* 080FC8 7F04C498 00000000 */ nop /* 080FCC 7F04C49C 46048482 */ mul.s $f18, $f16, $f4 /* 080FD0 7F04C4A0 460A9181 */ sub.s $f6, $f18, $f10 /* 080FD4 7F04C4A4 0C002914 */ jal get_random_value /* 080FD8 7F04C4A8 E7A60080 */ swc1 $f6, 0x80($sp) /* 080FDC 7F04C4AC 44824000 */ mtc1 $v0, $f8 /* 080FE0 7F04C4B0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 080FE4 7F04C4B4 04410004 */ bgez $v0, .L7F04C4C8 /* 080FE8 7F04C4B8 46804420 */ cvt.s.w $f16, $f8 /* 080FEC 7F04C4BC 44812000 */ mtc1 $at, $f4 /* 080FF0 7F04C4C0 00000000 */ nop /* 080FF4 7F04C4C4 46048400 */ add.s $f16, $f16, $f4 .L7F04C4C8: /* 080FF8 7F04C4C8 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 080FFC 7F04C4CC 44819000 */ mtc1 $at, $f18 /* 081000 7F04C4D0 3C018005 */ lui $at, %hi(D_80052D30) /* 081004 7F04C4D4 C4262D30 */ lwc1 $f6, %lo(D_80052D30)($at) /* 081008 7F04C4D8 46128282 */ mul.s $f10, $f16, $f18 /* 08100C 7F04C4DC 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 081010 7F04C4E0 44812000 */ mtc1 $at, $f4 /* 081014 7F04C4E4 3C018005 */ lui $at, %hi(D_80052D34) /* 081018 7F04C4E8 C4322D34 */ lwc1 $f18, %lo(D_80052D34)($at) /* 08101C 7F04C4EC 46065202 */ mul.s $f8, $f10, $f6 /* 081020 7F04C4F0 00000000 */ nop /* 081024 7F04C4F4 46044402 */ mul.s $f16, $f8, $f4 /* 081028 7F04C4F8 46128281 */ sub.s $f10, $f16, $f18 /* 08102C 7F04C4FC 0C002914 */ jal get_random_value /* 081030 7F04C500 E7AA0084 */ swc1 $f10, 0x84($sp) /* 081034 7F04C504 44823000 */ mtc1 $v0, $f6 /* 081038 7F04C508 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 08103C 7F04C50C 04410004 */ bgez $v0, .L7F04C520 /* 081040 7F04C510 46803220 */ cvt.s.w $f8, $f6 /* 081044 7F04C514 44812000 */ mtc1 $at, $f4 /* 081048 7F04C518 00000000 */ nop /* 08104C 7F04C51C 46044200 */ add.s $f8, $f8, $f4 .L7F04C520: /* 081050 7F04C520 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 081054 7F04C524 44818000 */ mtc1 $at, $f16 /* 081058 7F04C528 3C018005 */ lui $at, %hi(D_80052D38) /* 08105C 7F04C52C C42A2D38 */ lwc1 $f10, %lo(D_80052D38)($at) /* 081060 7F04C530 46104482 */ mul.s $f18, $f8, $f16 /* 081064 7F04C534 3C013C00 */ li $at, 0x3C000000 # 0.007812 /* 081068 7F04C538 44812000 */ mtc1 $at, $f4 /* 08106C 7F04C53C 3C018005 */ lui $at, %hi(D_80052D3C) /* 081070 7F04C540 C4302D3C */ lwc1 $f16, %lo(D_80052D3C)($at) /* 081074 7F04C544 27A40080 */ addiu $a0, $sp, 0x80 /* 081078 7F04C548 26250020 */ addiu $a1, $s1, 0x20 /* 08107C 7F04C54C 460A9182 */ mul.s $f6, $f18, $f10 /* 081080 7F04C550 00000000 */ nop /* 081084 7F04C554 46043202 */ mul.s $f8, $f6, $f4 /* 081088 7F04C558 46104481 */ sub.s $f18, $f8, $f16 /* 08108C 7F04C55C 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 081090 7F04C560 E7B20088 */ swc1 $f18, 0x88($sp) /* 081094 7F04C564 8E2F0000 */ lw $t7, ($s1) /* 081098 7F04C568 35EB0040 */ ori $t3, $t7, 0x40 /* 08109C 7F04C56C 100000A1 */ b .L7F04C7F4 /* 0810A0 7F04C570 AE2B0000 */ sw $t3, ($s1) .L7F04C574: /* 0810A4 7F04C574 24010004 */ li $at, 4 /* 0810A8 7F04C578 1441009C */ bne $v0, $at, .L7F04C7EC /* 0810AC 7F04C57C 26240004 */ addiu $a0, $s1, 4 /* 0810B0 7F04C580 3C0E8003 */ lui $t6, %hi(D_80032034) /* 0810B4 7F04C584 25CE2034 */ addiu $t6, %lo(D_80032034) # addiu $t6, $t6, 0x2034 /* 0810B8 7F04C588 8DC10000 */ lw $at, ($t6) /* 0810BC 7F04C58C 27AD0070 */ addiu $t5, $sp, 0x70 /* 0810C0 7F04C590 8DCC0004 */ lw $t4, 4($t6) /* 0810C4 7F04C594 ADA10000 */ sw $at, ($t5) /* 0810C8 7F04C598 8DC10008 */ lw $at, 8($t6) /* 0810CC 7F04C59C ADAC0004 */ sw $t4, 4($t5) /* 0810D0 7F04C5A0 0FC225E6 */ jal get_curplayer_positiondata /* 0810D4 7F04C5A4 ADA10008 */ sw $at, 8($t5) /* 0810D8 7F04C5A8 8FAA0104 */ lw $t2, 0x104($sp) /* 0810DC 7F04C5AC C4460008 */ lwc1 $f6, 8($v0) /* 0810E0 7F04C5B0 C4480010 */ lwc1 $f8, 0x10($v0) /* 0810E4 7F04C5B4 C54A0008 */ lwc1 $f10, 8($t2) /* 0810E8 7F04C5B8 C5440010 */ lwc1 $f4, 0x10($t2) /* 0810EC 7F04C5BC 46065301 */ sub.s $f12, $f10, $f6 /* 0810F0 7F04C5C0 0FC16A8C */ jal atan2f /* 0810F4 7F04C5C4 46082381 */ sub.s $f14, $f4, $f8 /* 0810F8 7F04C5C8 0C002914 */ jal get_random_value /* 0810FC 7F04C5CC E7A00060 */ swc1 $f0, 0x60($sp) /* 081100 7F04C5D0 AFA20050 */ sw $v0, 0x50($sp) /* 081104 7F04C5D4 0FC15FAB */ jal sinf /* 081108 7F04C5D8 C7AC0060 */ lwc1 $f12, 0x60($sp) /* 08110C 7F04C5DC 8FB90050 */ lw $t9, 0x50($sp) /* 081110 7F04C5E0 44998000 */ mtc1 $t9, $f16 /* 081114 7F04C5E4 07210005 */ bgez $t9, .L7F04C5FC /* 081118 7F04C5E8 468084A0 */ cvt.s.w $f18, $f16 /* 08111C 7F04C5EC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081120 7F04C5F0 44815000 */ mtc1 $at, $f10 /* 081124 7F04C5F4 00000000 */ nop /* 081128 7F04C5F8 460A9480 */ add.s $f18, $f18, $f10 .L7F04C5FC: /* 08112C 7F04C5FC 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 081130 7F04C600 44813000 */ mtc1 $at, $f6 /* 081134 7F04C604 3C018005 */ lui $at, %hi(D_80052D40) /* 081138 7F04C608 C4282D40 */ lwc1 $f8, %lo(D_80052D40)($at) /* 08113C 7F04C60C 46069102 */ mul.s $f4, $f18, $f6 /* 081140 7F04C610 3C018005 */ lui $at, %hi(D_80052D44) /* 081144 7F04C614 C42A2D44 */ lwc1 $f10, %lo(D_80052D44)($at) /* 081148 7F04C618 46082082 */ mul.s $f2, $f4, $f8 /* 08114C 7F04C61C 46021400 */ add.s $f16, $f2, $f2 /* 081150 7F04C620 460A8480 */ add.s $f18, $f16, $f10 /* 081154 7F04C624 46120182 */ mul.s $f6, $f0, $f18 /* 081158 7F04C628 0C002914 */ jal get_random_value /* 08115C 7F04C62C E6260004 */ swc1 $f6, 4($s1) /* 081160 7F04C630 44822000 */ mtc1 $v0, $f4 /* 081164 7F04C634 04410005 */ bgez $v0, .L7F04C64C /* 081168 7F04C638 46802220 */ cvt.s.w $f8, $f4 /* 08116C 7F04C63C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081170 7F04C640 44818000 */ mtc1 $at, $f16 /* 081174 7F04C644 00000000 */ nop /* 081178 7F04C648 46104200 */ add.s $f8, $f8, $f16 .L7F04C64C: /* 08117C 7F04C64C 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 081180 7F04C650 44815000 */ mtc1 $at, $f10 /* 081184 7F04C654 3C018005 */ lui $at, %hi(D_80052D48) /* 081188 7F04C658 C4262D48 */ lwc1 $f6, %lo(D_80052D48)($at) /* 08118C 7F04C65C 460A4482 */ mul.s $f18, $f8, $f10 /* 081190 7F04C660 00000000 */ nop /* 081194 7F04C664 46069002 */ mul.s $f0, $f18, $f6 /* 081198 7F04C668 46000100 */ add.s $f4, $f0, $f0 /* 08119C 7F04C66C 0C002914 */ jal get_random_value /* 0811A0 7F04C670 E6240008 */ swc1 $f4, 8($s1) /* 0811A4 7F04C674 AFA20050 */ sw $v0, 0x50($sp) /* 0811A8 7F04C678 0FC15FA8 */ jal cosf /* 0811AC 7F04C67C C7AC0060 */ lwc1 $f12, 0x60($sp) /* 0811B0 7F04C680 8FA80050 */ lw $t0, 0x50($sp) /* 0811B4 7F04C684 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0811B8 7F04C688 44888000 */ mtc1 $t0, $f16 /* 0811BC 7F04C68C 05010004 */ bgez $t0, .L7F04C6A0 /* 0811C0 7F04C690 46808220 */ cvt.s.w $f8, $f16 /* 0811C4 7F04C694 44815000 */ mtc1 $at, $f10 /* 0811C8 7F04C698 00000000 */ nop /* 0811CC 7F04C69C 460A4200 */ add.s $f8, $f8, $f10 .L7F04C6A0: /* 0811D0 7F04C6A0 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 0811D4 7F04C6A4 44819000 */ mtc1 $at, $f18 /* 0811D8 7F04C6A8 3C018005 */ lui $at, %hi(D_80052D4C) /* 0811DC 7F04C6AC C4242D4C */ lwc1 $f4, %lo(D_80052D4C)($at) /* 0811E0 7F04C6B0 46124182 */ mul.s $f6, $f8, $f18 /* 0811E4 7F04C6B4 3C018005 */ lui $at, %hi(D_80052D50) /* 0811E8 7F04C6B8 C42A2D50 */ lwc1 $f10, %lo(D_80052D50)($at) /* 0811EC 7F04C6BC 46043082 */ mul.s $f2, $f6, $f4 /* 0811F0 7F04C6C0 46021400 */ add.s $f16, $f2, $f2 /* 0811F4 7F04C6C4 460A8200 */ add.s $f8, $f16, $f10 /* 0811F8 7F04C6C8 46080482 */ mul.s $f18, $f0, $f8 /* 0811FC 7F04C6CC 0C002914 */ jal get_random_value /* 081200 7F04C6D0 E632000C */ swc1 $f18, 0xc($s1) /* 081204 7F04C6D4 44823000 */ mtc1 $v0, $f6 /* 081208 7F04C6D8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 08120C 7F04C6DC 04410004 */ bgez $v0, .L7F04C6F0 /* 081210 7F04C6E0 46803120 */ cvt.s.w $f4, $f6 /* 081214 7F04C6E4 44818000 */ mtc1 $at, $f16 /* 081218 7F04C6E8 00000000 */ nop /* 08121C 7F04C6EC 46102100 */ add.s $f4, $f4, $f16 .L7F04C6F0: /* 081220 7F04C6F0 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 081224 7F04C6F4 44815000 */ mtc1 $at, $f10 /* 081228 7F04C6F8 3C018005 */ lui $at, %hi(D_80052D54) /* 08122C 7F04C6FC C4322D54 */ lwc1 $f18, %lo(D_80052D54)($at) /* 081230 7F04C700 460A2202 */ mul.s $f8, $f4, $f10 /* 081234 7F04C704 3C013D00 */ li $at, 0x3D000000 # 0.031250 /* 081238 7F04C708 44818000 */ mtc1 $at, $f16 /* 08123C 7F04C70C 3C018005 */ lui $at, %hi(D_80052D58) /* 081240 7F04C710 C42A2D58 */ lwc1 $f10, %lo(D_80052D58)($at) /* 081244 7F04C714 46124182 */ mul.s $f6, $f8, $f18 /* 081248 7F04C718 00000000 */ nop /* 08124C 7F04C71C 46103102 */ mul.s $f4, $f6, $f16 /* 081250 7F04C720 460A2201 */ sub.s $f8, $f4, $f10 /* 081254 7F04C724 0C002914 */ jal get_random_value /* 081258 7F04C728 E7A80070 */ swc1 $f8, 0x70($sp) /* 08125C 7F04C72C 44829000 */ mtc1 $v0, $f18 /* 081260 7F04C730 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081264 7F04C734 04410004 */ bgez $v0, .L7F04C748 /* 081268 7F04C738 468091A0 */ cvt.s.w $f6, $f18 /* 08126C 7F04C73C 44818000 */ mtc1 $at, $f16 /* 081270 7F04C740 00000000 */ nop /* 081274 7F04C744 46103180 */ add.s $f6, $f6, $f16 .L7F04C748: /* 081278 7F04C748 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 08127C 7F04C74C 44812000 */ mtc1 $at, $f4 /* 081280 7F04C750 3C018005 */ lui $at, %hi(D_80052D5C) /* 081284 7F04C754 C4282D5C */ lwc1 $f8, %lo(D_80052D5C)($at) /* 081288 7F04C758 46043282 */ mul.s $f10, $f6, $f4 /* 08128C 7F04C75C 3C013D00 */ li $at, 0x3D000000 # 0.031250 /* 081290 7F04C760 44818000 */ mtc1 $at, $f16 /* 081294 7F04C764 3C018005 */ lui $at, %hi(D_80052D60) /* 081298 7F04C768 C4242D60 */ lwc1 $f4, %lo(D_80052D60)($at) /* 08129C 7F04C76C 46085482 */ mul.s $f18, $f10, $f8 /* 0812A0 7F04C770 00000000 */ nop /* 0812A4 7F04C774 46109182 */ mul.s $f6, $f18, $f16 /* 0812A8 7F04C778 46043281 */ sub.s $f10, $f6, $f4 /* 0812AC 7F04C77C 0C002914 */ jal get_random_value /* 0812B0 7F04C780 E7AA0074 */ swc1 $f10, 0x74($sp) /* 0812B4 7F04C784 44824000 */ mtc1 $v0, $f8 /* 0812B8 7F04C788 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0812BC 7F04C78C 04410004 */ bgez $v0, .L7F04C7A0 /* 0812C0 7F04C790 468044A0 */ cvt.s.w $f18, $f8 /* 0812C4 7F04C794 44818000 */ mtc1 $at, $f16 /* 0812C8 7F04C798 00000000 */ nop /* 0812CC 7F04C79C 46109480 */ add.s $f18, $f18, $f16 .L7F04C7A0: /* 0812D0 7F04C7A0 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 0812D4 7F04C7A4 44813000 */ mtc1 $at, $f6 /* 0812D8 7F04C7A8 3C018005 */ lui $at, %hi(D_80052D64) /* 0812DC 7F04C7AC C42A2D64 */ lwc1 $f10, %lo(D_80052D64)($at) /* 0812E0 7F04C7B0 46069102 */ mul.s $f4, $f18, $f6 /* 0812E4 7F04C7B4 3C013D00 */ li $at, 0x3D000000 # 0.031250 /* 0812E8 7F04C7B8 44818000 */ mtc1 $at, $f16 /* 0812EC 7F04C7BC 3C018005 */ lui $at, %hi(D_80052D68) /* 0812F0 7F04C7C0 C4262D68 */ lwc1 $f6, %lo(D_80052D68)($at) /* 0812F4 7F04C7C4 27A40070 */ addiu $a0, $sp, 0x70 /* 0812F8 7F04C7C8 26250020 */ addiu $a1, $s1, 0x20 /* 0812FC 7F04C7CC 460A2202 */ mul.s $f8, $f4, $f10 /* 081300 7F04C7D0 00000000 */ nop /* 081304 7F04C7D4 46104482 */ mul.s $f18, $f8, $f16 /* 081308 7F04C7D8 46069101 */ sub.s $f4, $f18, $f6 /* 08130C 7F04C7DC 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 081310 7F04C7E0 E7A40078 */ swc1 $f4, 0x78($sp) /* 081314 7F04C7E4 10000004 */ b .L7F04C7F8 /* 081318 7F04C7E8 8FA90104 */ lw $t1, 0x104($sp) .L7F04C7EC: /* 08131C 7F04C7EC 0FC15F05 */ jal sub_GAME_7F057C14 /* 081320 7F04C7F0 26250020 */ addiu $a1, $s1, 0x20 .L7F04C7F4: /* 081324 7F04C7F4 8FA90104 */ lw $t1, 0x104($sp) .L7F04C7F8: /* 081328 7F04C7F8 8D2F001C */ lw $t7, 0x1c($t1) /* 08132C 7F04C7FC 51E00007 */ beql $t7, $zero, .L7F04C81C /* 081330 7F04C800 8E0B0014 */ lw $t3, 0x14($s0) /* 081334 7F04C804 8E02001C */ lw $v0, 0x1c($s0) /* 081338 7F04C808 00408025 */ move $s0, $v0 .L7F04C80C: /* 08133C 7F04C80C 8C42001C */ lw $v0, 0x1c($v0) /* 081340 7F04C810 5440FFFE */ bnezl $v0, .L7F04C80C /* 081344 7F04C814 00408025 */ move $s0, $v0 /* 081348 7F04C818 8E0B0014 */ lw $t3, 0x14($s0) .L7F04C81C: /* 08134C 7F04C81C 8FA20108 */ lw $v0, 0x108($sp) /* 081350 7F04C820 AFAB00B0 */ sw $t3, 0xb0($sp) /* 081354 7F04C824 90580001 */ lbu $t8, 1($v0) /* 081358 7F04C828 330D0002 */ andi $t5, $t8, 2 /* 08135C 7F04C82C 51A0004B */ beql $t5, $zero, .L7F04C95C /* 081360 7F04C830 8E0A0014 */ lw $t2, 0x14($s0) /* 081364 7F04C834 0FC10411 */ jal if_a0_plus_3_is_4_then_10_else_20 /* 081368 7F04C838 02402025 */ move $a0, $s2 /* 08136C 7F04C83C E7A0005C */ swc1 $f0, 0x5c($sp) /* 081370 7F04C840 0FC1B1A8 */ jal getsubmatrix /* 081374 7F04C844 8FA400F8 */ lw $a0, 0xf8($sp) /* 081378 7F04C848 240E001F */ li $t6, 31 /* 08137C 7F04C84C AFA20058 */ sw $v0, 0x58($sp) /* 081380 7F04C850 0FC1E111 */ jal sub_GAME_7F078444 /* 081384 7F04C854 AFAE0054 */ sw $t6, 0x54($sp) /* 081388 7F04C858 00402025 */ move $a0, $v0 /* 08138C 7F04C85C 8FA50058 */ lw $a1, 0x58($sp) /* 081390 7F04C860 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 081394 7F04C864 27A600B8 */ addiu $a2, $sp, 0xb8 /* 081398 7F04C868 8E2C0000 */ lw $t4, ($s1) /* 08139C 7F04C86C 2419001D */ li $t9, 29 /* 0813A0 7F04C870 02002025 */ move $a0, $s0 /* 0813A4 7F04C874 318A0040 */ andi $t2, $t4, 0x40 /* 0813A8 7F04C878 11400002 */ beqz $t2, .L7F04C884 /* 0813AC 7F04C87C 00000000 */ nop /* 0813B0 7F04C880 AFB90054 */ sw $t9, 0x54($sp) .L7F04C884: /* 0813B4 7F04C884 0FC0F416 */ jal sub_GAME_7F03D058 /* 0813B8 7F04C888 00002825 */ move $a1, $zero /* 0813BC 7F04C88C 8E050008 */ lw $a1, 8($s0) /* 0813C0 7F04C890 8E060010 */ lw $a2, 0x10($s0) /* 0813C4 7F04C894 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0813C8 7F04C898 44811000 */ mtc1 $at, $f2 /* 0813CC 7F04C89C 44800000 */ mtc1 $zero, $f0 /* 0813D0 7F04C8A0 C7AA00F0 */ lwc1 $f10, 0xf0($sp) /* 0813D4 7F04C8A4 8FA80054 */ lw $t0, 0x54($sp) /* 0813D8 7F04C8A8 27B100B0 */ addiu $s1, $sp, 0xb0 /* 0813DC 7F04C8AC 02202025 */ move $a0, $s1 /* 0813E0 7F04C8B0 8FA700E8 */ lw $a3, 0xe8($sp) /* 0813E4 7F04C8B4 E7A2001C */ swc1 $f2, 0x1c($sp) /* 0813E8 7F04C8B8 E7A20024 */ swc1 $f2, 0x24($sp) /* 0813EC 7F04C8BC E7AA0010 */ swc1 $f10, 0x10($sp) /* 0813F0 7F04C8C0 E7A00018 */ swc1 $f0, 0x18($sp) /* 0813F4 7F04C8C4 E7A00020 */ swc1 $f0, 0x20($sp) /* 0813F8 7F04C8C8 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 0813FC 7F04C8CC AFA80014 */ sw $t0, 0x14($sp) /* 081400 7F04C8D0 10400011 */ beqz $v0, .L7F04C918 /* 081404 7F04C8D4 02202025 */ move $a0, $s1 /* 081408 7F04C8D8 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 08140C 7F04C8DC 44818000 */ mtc1 $at, $f16 /* 081410 7F04C8E0 8FA90054 */ lw $t1, 0x54($sp) /* 081414 7F04C8E4 44804000 */ mtc1 $zero, $f8 /* 081418 7F04C8E8 8FA500E8 */ lw $a1, 0xe8($sp) /* 08141C 7F04C8EC 8FA600F0 */ lw $a2, 0xf0($sp) /* 081420 7F04C8F0 8FA7005C */ lw $a3, 0x5c($sp) /* 081424 7F04C8F4 AFA90010 */ sw $t1, 0x10($sp) /* 081428 7F04C8F8 E7B00018 */ swc1 $f16, 0x18($sp) /* 08142C 7F04C8FC 0FC2C62E */ jal sub_GAME_7F0B18B8 /* 081430 7F04C900 E7A80014 */ swc1 $f8, 0x14($sp) /* 081434 7F04C904 04410004 */ bgez $v0, .L7F04C918 /* 081438 7F04C908 8FAF00B0 */ lw $t7, 0xb0($sp) /* 08143C 7F04C90C 8FAB0108 */ lw $t3, 0x108($sp) /* 081440 7F04C910 10000008 */ b .L7F04C934 /* 081444 7F04C914 AD6F0014 */ sw $t7, 0x14($t3) .L7F04C918: /* 081448 7F04C918 8E180014 */ lw $t8, 0x14($s0) /* 08144C 7F04C91C 8FAD0108 */ lw $t5, 0x108($sp) /* 081450 7F04C920 ADB80014 */ sw $t8, 0x14($t5) /* 081454 7F04C924 C6120008 */ lwc1 $f18, 8($s0) /* 081458 7F04C928 E7B200E8 */ swc1 $f18, 0xe8($sp) /* 08145C 7F04C92C C6060010 */ lwc1 $f6, 0x10($s0) /* 081460 7F04C930 E7A600F0 */ swc1 $f6, 0xf0($sp) .L7F04C934: /* 081464 7F04C934 02002025 */ move $a0, $s0 /* 081468 7F04C938 0FC0F416 */ jal sub_GAME_7F03D058 /* 08146C 7F04C93C 24050001 */ li $a1, 1 /* 081470 7F04C940 8FAE0058 */ lw $t6, 0x58($sp) /* 081474 7F04C944 8FAC0108 */ lw $t4, 0x108($sp) /* 081478 7F04C948 C5C40038 */ lwc1 $f4, 0x38($t6) /* 08147C 7F04C94C 46002287 */ neg.s $f10, $f4 /* 081480 7F04C950 1000000C */ b .L7F04C984 /* 081484 7F04C954 E58A0018 */ swc1 $f10, 0x18($t4) /* 081488 7F04C958 8E0A0014 */ lw $t2, 0x14($s0) .L7F04C95C: /* 08148C 7F04C95C 27A400B8 */ addiu $a0, $sp, 0xb8 /* 081490 7F04C960 0FC15FF4 */ jal matrix_4x4_set_identity /* 081494 7F04C964 AC4A0014 */ sw $t2, 0x14($v0) /* 081498 7F04C968 8FB900F8 */ lw $t9, 0xf8($sp) /* 08149C 7F04C96C 27A500B8 */ addiu $a1, $sp, 0xb8 /* 0814A0 7F04C970 0FC1629F */ jal matrix_scalar_multiply /* 0814A4 7F04C974 C72C0014 */ lwc1 $f12, 0x14($t9) /* 0814A8 7F04C978 26040008 */ addiu $a0, $s0, 8 /* 0814AC 7F04C97C 0FC16266 */ jal matrix_4x4_set_position /* 0814B0 7F04C980 27A500B8 */ addiu $a1, $sp, 0xb8 .L7F04C984: /* 0814B4 7F04C984 0FC13011 */ jal sub_GAME_7F04C044 /* 0814B8 7F04C988 8FA40108 */ lw $a0, 0x108($sp) /* 0814BC 7F04C98C 0FC0E929 */ jal set_current_objposdata_plus_0x28 /* 0814C0 7F04C990 8FA40108 */ lw $a0, 0x108($sp) /* 0814C4 7F04C994 0FC0E901 */ jal set_stateflag_0x04_for_posdata /* 0814C8 7F04C998 8FA40108 */ lw $a0, 0x108($sp) /* 0814CC 7F04C99C C7A000E8 */ lwc1 $f0, 0xe8($sp) /* 0814D0 7F04C9A0 8FA80108 */ lw $t0, 0x108($sp) /* 0814D4 7F04C9A4 44804000 */ mtc1 $zero, $f8 /* 0814D8 7F04C9A8 44808000 */ mtc1 $zero, $f16 /* 0814DC 7F04C9AC E5000008 */ swc1 $f0, 8($t0) /* 0814E0 7F04C9B0 E6400058 */ swc1 $f0, 0x58($s2) /* 0814E4 7F04C9B4 C7A000EC */ lwc1 $f0, 0xec($sp) /* 0814E8 7F04C9B8 8FA90108 */ lw $t1, 0x108($sp) /* 0814EC 7F04C9BC 44809000 */ mtc1 $zero, $f18 /* 0814F0 7F04C9C0 27A400B8 */ addiu $a0, $sp, 0xb8 /* 0814F4 7F04C9C4 E520000C */ swc1 $f0, 0xc($t1) /* 0814F8 7F04C9C8 E640005C */ swc1 $f0, 0x5c($s2) /* 0814FC 7F04C9CC C7A000F0 */ lwc1 $f0, 0xf0($sp) /* 081500 7F04C9D0 8FAF0108 */ lw $t7, 0x108($sp) /* 081504 7F04C9D4 26450018 */ addiu $a1, $s2, 0x18 /* 081508 7F04C9D8 E5E00010 */ swc1 $f0, 0x10($t7) /* 08150C 7F04C9DC E6400060 */ swc1 $f0, 0x60($s2) /* 081510 7F04C9E0 E7A800E8 */ swc1 $f8, 0xe8($sp) /* 081514 7F04C9E4 E7B000EC */ swc1 $f16, 0xec($sp) /* 081518 7F04C9E8 0FC16008 */ jal matrix_4x4_copy /* 08151C 7F04C9EC E7B200F0 */ swc1 $f18, 0xf0($sp) /* 081520 7F04C9F0 8E440010 */ lw $a0, 0x10($s2) /* 081524 7F04C9F4 0FC100AD */ jal sub_GAME_7F0402B4 /* 081528 7F04C9F8 2645007C */ addiu $a1, $s2, 0x7c /* 08152C 7F04C9FC 924B007C */ lbu $t3, 0x7c($s2) /* 081530 7F04CA00 9258007D */ lbu $t8, 0x7d($s2) /* 081534 7F04CA04 924D007E */ lbu $t5, 0x7e($s2) /* 081538 7F04CA08 924E007F */ lbu $t6, 0x7f($s2) /* 08153C 7F04CA0C 02402025 */ move $a0, $s2 /* 081540 7F04CA10 A24B0078 */ sb $t3, 0x78($s2) /* 081544 7F04CA14 A2580079 */ sb $t8, 0x79($s2) /* 081548 7F04CA18 A24D007A */ sb $t5, 0x7a($s2) /* 08154C 7F04CA1C 0FC15B28 */ jal sub_GAME_7F056CA0 /* 081550 7F04CA20 A24E007B */ sb $t6, 0x7b($s2) /* 081554 7F04CA24 10000001 */ b .L7F04CA2C /* 081558 7F04CA28 24020001 */ li $v0, 1 .L7F04CA2C: /* 08155C 7F04CA2C 8FBF003C */ lw $ra, 0x3c($sp) /* 081560 7F04CA30 8FB00030 */ lw $s0, 0x30($sp) /* 081564 7F04CA34 8FB10034 */ lw $s1, 0x34($sp) /* 081568 7F04CA38 8FB20038 */ lw $s2, 0x38($sp) /* 08156C 7F04CA3C 03E00008 */ jr $ra /* 081570 7F04CA40 27BD0108 */ addiu $sp, $sp, 0x108 ) #endif #ifdef NONMATCHING void sub_GAME_7F04CA44(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052D6C .word 0x3fd55555 /*1.6666666*/ glabel D_80052D70 .word 0x3f555555 /*0.83333331*/ glabel D_80052D74 .word 0x3fd55555 /*1.6666666*/ glabel D_80052D78 .word 0x3fd55555 /*1.6666666*/ glabel D_80052D7C .word 0x3f555555 /*0.83333331*/ glabel D_80052D80 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D84 .word 0x3C20D97C /*0.009817477*/ glabel D_80052D88 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D8C .word 0x3C20D97C /*0.009817477*/ glabel D_80052D90 .word 0x40c90fdb /*6.2831855*/ glabel D_80052D94 .word 0x3C20D97C /*0.009817477*/ .text glabel sub_GAME_7F04CA44 /* 081574 7F04CA44 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 081578 7F04CA48 AFBF0024 */ sw $ra, 0x24($sp) /* 08157C 7F04CA4C AFB10020 */ sw $s1, 0x20($sp) /* 081580 7F04CA50 AFB0001C */ sw $s0, 0x1c($sp) /* 081584 7F04CA54 F7B40010 */ sdc1 $f20, 0x10($sp) /* 081588 7F04CA58 8C8E0064 */ lw $t6, 0x64($a0) /* 08158C 7F04CA5C 3C01FFF9 */ lui $at, (0xFFF9FFFF >> 16) # lui $at, 0xfff9 /* 081590 7F04CA60 8C89000C */ lw $t1, 0xc($a0) /* 081594 7F04CA64 3421FFFF */ ori $at, (0xFFF9FFFF & 0xFFFF) # ori $at, $at, 0xffff /* 081598 7F04CA68 01C17824 */ and $t7, $t6, $at /* 08159C 7F04CA6C 0005CC40 */ sll $t9, $a1, 0x11 /* 0815A0 7F04CA70 AC8F0064 */ sw $t7, 0x64($a0) /* 0815A4 7F04CA74 01F94025 */ or $t0, $t7, $t9 /* 0815A8 7F04CA78 312A0100 */ andi $t2, $t1, 0x100 /* 0815AC 7F04CA7C 00808025 */ move $s0, $a0 /* 0815B0 7F04CA80 1540009A */ bnez $t2, .L7F04CCEC /* 0815B4 7F04CA84 AC880064 */ sw $t0, 0x64($a0) /* 0815B8 7F04CA88 8C8B0008 */ lw $t3, 8($a0) /* 0815BC 7F04CA8C 310E00C0 */ andi $t6, $t0, 0xc0 /* 0815C0 7F04CA90 316C0001 */ andi $t4, $t3, 1 /* 0815C4 7F04CA94 51800096 */ beql $t4, $zero, .L7F04CCF0 /* 0815C8 7F04CA98 8FBF0024 */ lw $ra, 0x24($sp) /* 0815CC 7F04CA9C 15C00093 */ bnez $t6, .L7F04CCEC /* 0815D0 7F04CAA0 3C188003 */ lui $t8, %hi(D_80032040) /* 0815D4 7F04CAA4 27182040 */ addiu $t8, %lo(D_80032040) # addiu $t8, $t8, 0x2040 /* 0815D8 7F04CAA8 8F010000 */ lw $at, ($t8) /* 0815DC 7F04CAAC 27AF0034 */ addiu $t7, $sp, 0x34 /* 0815E0 7F04CAB0 8F080004 */ lw $t0, 4($t8) /* 0815E4 7F04CAB4 ADE10000 */ sw $at, ($t7) /* 0815E8 7F04CAB8 8F010008 */ lw $at, 8($t8) /* 0815EC 7F04CABC ADE80004 */ sw $t0, 4($t7) /* 0815F0 7F04CAC0 00008825 */ move $s1, $zero /* 0815F4 7F04CAC4 ADE10008 */ sw $at, 8($t7) /* 0815F8 7F04CAC8 0FC0FF6A */ jal sub_GAME_7F03FDA8 /* 0815FC 7F04CACC 8C840010 */ lw $a0, 0x10($a0) /* 081600 7F04CAD0 8E090064 */ lw $t1, 0x64($s0) /* 081604 7F04CAD4 312A0080 */ andi $t2, $t1, 0x80 /* 081608 7F04CAD8 11400002 */ beqz $t2, .L7F04CAE4 /* 08160C 7F04CADC 00000000 */ nop /* 081610 7F04CAE0 8E11006C */ lw $s1, 0x6c($s0) .L7F04CAE4: /* 081614 7F04CAE4 52200082 */ beql $s1, $zero, .L7F04CCF0 /* 081618 7F04CAE8 8FBF0024 */ lw $ra, 0x24($sp) /* 08161C 7F04CAEC 0C002914 */ jal get_random_value /* 081620 7F04CAF0 00000000 */ nop /* 081624 7F04CAF4 44822000 */ mtc1 $v0, $f4 /* 081628 7F04CAF8 3C012F80 */ li $at, 0x2F800000 # 0.000000 /* 08162C 7F04CAFC 4481A000 */ mtc1 $at, $f20 /* 081630 7F04CB00 04410005 */ bgez $v0, .L7F04CB18 /* 081634 7F04CB04 468021A0 */ cvt.s.w $f6, $f4 /* 081638 7F04CB08 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 08163C 7F04CB0C 44814000 */ mtc1 $at, $f8 /* 081640 7F04CB10 00000000 */ nop /* 081644 7F04CB14 46083180 */ add.s $f6, $f6, $f8 .L7F04CB18: /* 081648 7F04CB18 46143282 */ mul.s $f10, $f6, $f20 /* 08164C 7F04CB1C 3C018005 */ lui $at, %hi(D_80052D6C) /* 081650 7F04CB20 C4302D6C */ lwc1 $f16, %lo(D_80052D6C)($at) /* 081654 7F04CB24 3C018005 */ lui $at, %hi(D_80052D70) /* 081658 7F04CB28 C4242D70 */ lwc1 $f4, %lo(D_80052D70)($at) /* 08165C 7F04CB2C 46105482 */ mul.s $f18, $f10, $f16 /* 081660 7F04CB30 46049201 */ sub.s $f8, $f18, $f4 /* 081664 7F04CB34 0C002914 */ jal get_random_value /* 081668 7F04CB38 E6280004 */ swc1 $f8, 4($s1) /* 08166C 7F04CB3C 44823000 */ mtc1 $v0, $f6 /* 081670 7F04CB40 3C018005 */ lui $at, %hi(D_80052D74) /* 081674 7F04CB44 C4222D74 */ lwc1 $f2, %lo(D_80052D74)($at) /* 081678 7F04CB48 04410005 */ bgez $v0, .L7F04CB60 /* 08167C 7F04CB4C 468032A0 */ cvt.s.w $f10, $f6 /* 081680 7F04CB50 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081684 7F04CB54 44818000 */ mtc1 $at, $f16 /* 081688 7F04CB58 00000000 */ nop /* 08168C 7F04CB5C 46105280 */ add.s $f10, $f10, $f16 .L7F04CB60: /* 081690 7F04CB60 46145482 */ mul.s $f18, $f10, $f20 /* 081694 7F04CB64 00000000 */ nop /* 081698 7F04CB68 46029002 */ mul.s $f0, $f18, $f2 /* 08169C 7F04CB6C 46000100 */ add.s $f4, $f0, $f0 /* 0816A0 7F04CB70 46022200 */ add.s $f8, $f4, $f2 /* 0816A4 7F04CB74 0C002914 */ jal get_random_value /* 0816A8 7F04CB78 E6280008 */ swc1 $f8, 8($s1) /* 0816AC 7F04CB7C 44823000 */ mtc1 $v0, $f6 /* 0816B0 7F04CB80 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0816B4 7F04CB84 04410004 */ bgez $v0, .L7F04CB98 /* 0816B8 7F04CB88 46803420 */ cvt.s.w $f16, $f6 /* 0816BC 7F04CB8C 44815000 */ mtc1 $at, $f10 /* 0816C0 7F04CB90 00000000 */ nop /* 0816C4 7F04CB94 460A8400 */ add.s $f16, $f16, $f10 .L7F04CB98: /* 0816C8 7F04CB98 46148482 */ mul.s $f18, $f16, $f20 /* 0816CC 7F04CB9C 3C018005 */ lui $at, %hi(D_80052D78) /* 0816D0 7F04CBA0 C4242D78 */ lwc1 $f4, %lo(D_80052D78)($at) /* 0816D4 7F04CBA4 3C018005 */ lui $at, %hi(D_80052D7C) /* 0816D8 7F04CBA8 C4262D7C */ lwc1 $f6, %lo(D_80052D7C)($at) /* 0816DC 7F04CBAC 46049202 */ mul.s $f8, $f18, $f4 /* 0816E0 7F04CBB0 46064281 */ sub.s $f10, $f8, $f6 /* 0816E4 7F04CBB4 E62A000C */ swc1 $f10, 0xc($s1) /* 0816E8 7F04CBB8 8E0B000C */ lw $t3, 0xc($s0) /* 0816EC 7F04CBBC 316C0200 */ andi $t4, $t3, 0x200 /* 0816F0 7F04CBC0 5580003C */ bnezl $t4, .L7F04CCB4 /* 0816F4 7F04CBC4 27A40034 */ addiu $a0, $sp, 0x34 /* 0816F8 7F04CBC8 0C002914 */ jal get_random_value /* 0816FC 7F04CBCC 00000000 */ nop /* 081700 7F04CBD0 44828000 */ mtc1 $v0, $f16 /* 081704 7F04CBD4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081708 7F04CBD8 04410004 */ bgez $v0, .L7F04CBEC /* 08170C 7F04CBDC 468084A0 */ cvt.s.w $f18, $f16 /* 081710 7F04CBE0 44812000 */ mtc1 $at, $f4 /* 081714 7F04CBE4 00000000 */ nop /* 081718 7F04CBE8 46049480 */ add.s $f18, $f18, $f4 .L7F04CBEC: /* 08171C 7F04CBEC 46149202 */ mul.s $f8, $f18, $f20 /* 081720 7F04CBF0 3C018005 */ lui $at, %hi(D_80052D80) /* 081724 7F04CBF4 C4262D80 */ lwc1 $f6, %lo(D_80052D80)($at) /* 081728 7F04CBF8 3C0143A0 */ li $at, 0x43A00000 # 320.000000 /* 08172C 7F04CBFC 44818000 */ mtc1 $at, $f16 /* 081730 7F04CC00 3C018005 */ lui $at, %hi(D_80052D84) /* 081734 7F04CC04 C4322D84 */ lwc1 $f18, %lo(D_80052D84)($at) /* 081738 7F04CC08 46064282 */ mul.s $f10, $f8, $f6 /* 08173C 7F04CC0C 46105103 */ div.s $f4, $f10, $f16 /* 081740 7F04CC10 46122201 */ sub.s $f8, $f4, $f18 /* 081744 7F04CC14 0C002914 */ jal get_random_value /* 081748 7F04CC18 E7A80034 */ swc1 $f8, 0x34($sp) /* 08174C 7F04CC1C 44823000 */ mtc1 $v0, $f6 /* 081750 7F04CC20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081754 7F04CC24 04410004 */ bgez $v0, .L7F04CC38 /* 081758 7F04CC28 468032A0 */ cvt.s.w $f10, $f6 /* 08175C 7F04CC2C 44818000 */ mtc1 $at, $f16 /* 081760 7F04CC30 00000000 */ nop /* 081764 7F04CC34 46105280 */ add.s $f10, $f10, $f16 .L7F04CC38: /* 081768 7F04CC38 46145102 */ mul.s $f4, $f10, $f20 /* 08176C 7F04CC3C 3C018005 */ lui $at, %hi(D_80052D88) /* 081770 7F04CC40 C4322D88 */ lwc1 $f18, %lo(D_80052D88)($at) /* 081774 7F04CC44 3C0143A0 */ li $at, 0x43A00000 # 320.000000 /* 081778 7F04CC48 44813000 */ mtc1 $at, $f6 /* 08177C 7F04CC4C 3C018005 */ lui $at, %hi(D_80052D8C) /* 081780 7F04CC50 C42A2D8C */ lwc1 $f10, %lo(D_80052D8C)($at) /* 081784 7F04CC54 46122202 */ mul.s $f8, $f4, $f18 /* 081788 7F04CC58 46064403 */ div.s $f16, $f8, $f6 /* 08178C 7F04CC5C 460A8101 */ sub.s $f4, $f16, $f10 /* 081790 7F04CC60 0C002914 */ jal get_random_value /* 081794 7F04CC64 E7A40038 */ swc1 $f4, 0x38($sp) /* 081798 7F04CC68 44829000 */ mtc1 $v0, $f18 /* 08179C 7F04CC6C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0817A0 7F04CC70 04410004 */ bgez $v0, .L7F04CC84 /* 0817A4 7F04CC74 46809220 */ cvt.s.w $f8, $f18 /* 0817A8 7F04CC78 44813000 */ mtc1 $at, $f6 /* 0817AC 7F04CC7C 00000000 */ nop /* 0817B0 7F04CC80 46064200 */ add.s $f8, $f8, $f6 .L7F04CC84: /* 0817B4 7F04CC84 46144402 */ mul.s $f16, $f8, $f20 /* 0817B8 7F04CC88 3C018005 */ lui $at, %hi(D_80052D90) /* 0817BC 7F04CC8C C42A2D90 */ lwc1 $f10, %lo(D_80052D90)($at) /* 0817C0 7F04CC90 3C0143A0 */ li $at, 0x43A00000 # 320.000000 /* 0817C4 7F04CC94 44819000 */ mtc1 $at, $f18 /* 0817C8 7F04CC98 3C018005 */ lui $at, %hi(D_80052D94) /* 0817CC 7F04CC9C C4282D94 */ lwc1 $f8, %lo(D_80052D94)($at) /* 0817D0 7F04CCA0 460A8102 */ mul.s $f4, $f16, $f10 /* 0817D4 7F04CCA4 46122183 */ div.s $f6, $f4, $f18 /* 0817D8 7F04CCA8 46083401 */ sub.s $f16, $f6, $f8 /* 0817DC 7F04CCAC E7B0003C */ swc1 $f16, 0x3c($sp) /* 0817E0 7F04CCB0 27A40034 */ addiu $a0, $sp, 0x34 .L7F04CCB4: /* 0817E4 7F04CCB4 0FC161C5 */ jal matrix_4x4_set_rotation_around_xyz /* 0817E8 7F04CCB8 26250020 */ addiu $a1, $s1, 0x20 /* 0817EC 7F04CCBC 8E2D0000 */ lw $t5, ($s1) /* 0817F0 7F04CCC0 2401FEFF */ li $at, -257 /* 0817F4 7F04CCC4 35AE0001 */ ori $t6, $t5, 1 /* 0817F8 7F04CCC8 AE2E0000 */ sw $t6, ($s1) /* 0817FC 7F04CCCC 8E190008 */ lw $t9, 8($s0) /* 081800 7F04CCD0 8E180064 */ lw $t8, 0x64($s0) /* 081804 7F04CCD4 03217824 */ and $t7, $t9, $at /* 081808 7F04CCD8 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff /* 08180C 7F04CCDC 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff /* 081810 7F04CCE0 03014024 */ and $t0, $t8, $at /* 081814 7F04CCE4 AE0F0008 */ sw $t7, 8($s0) /* 081818 7F04CCE8 AE080064 */ sw $t0, 0x64($s0) .L7F04CCEC: /* 08181C 7F04CCEC 8FBF0024 */ lw $ra, 0x24($sp) .L7F04CCF0: /* 081820 7F04CCF0 D7B40010 */ ldc1 $f20, 0x10($sp) /* 081824 7F04CCF4 8FB0001C */ lw $s0, 0x1c($sp) /* 081828 7F04CCF8 8FB10020 */ lw $s1, 0x20($sp) /* 08182C 7F04CCFC 03E00008 */ jr $ra /* 081830 7F04CD00 27BD0040 */ addiu $sp, $sp, 0x40 ) #endif #ifdef NONMATCHING void sub_GAME_7F04CD04(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04CD04 /* 081834 7F04CD04 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 081838 7F04CD08 AFBF0034 */ sw $ra, 0x34($sp) /* 08183C 7F04CD0C AFB60030 */ sw $s6, 0x30($sp) /* 081840 7F04CD10 AFB5002C */ sw $s5, 0x2c($sp) /* 081844 7F04CD14 AFB40028 */ sw $s4, 0x28($sp) /* 081848 7F04CD18 AFB30024 */ sw $s3, 0x24($sp) /* 08184C 7F04CD1C AFB20020 */ sw $s2, 0x20($sp) /* 081850 7F04CD20 AFB1001C */ sw $s1, 0x1c($sp) /* 081854 7F04CD24 AFB00018 */ sw $s0, 0x18($sp) /* 081858 7F04CD28 8C8E0014 */ lw $t6, 0x14($a0) /* 08185C 7F04CD2C 00A0B025 */ move $s6, $a1 /* 081860 7F04CD30 8C940004 */ lw $s4, 4($a0) /* 081864 7F04CD34 27A50048 */ addiu $a1, $sp, 0x48 /* 081868 7F04CD38 27A60044 */ addiu $a2, $sp, 0x44 /* 08186C 7F04CD3C 0FC0F32C */ jal sub_GAME_7F03CCB0 /* 081870 7F04CD40 91D50003 */ lbu $s5, 3($t6) /* 081874 7F04CD44 8FAF0044 */ lw $t7, 0x44($sp) /* 081878 7F04CD48 59E00027 */ blezl $t7, .L7F04CDE8 /* 08187C 7F04CD4C 8FBF0034 */ lw $ra, 0x34($sp) /* 081880 7F04CD50 0FC0E909 */ jal get_ptr_obj_pos_list_current_entry /* 081884 7F04CD54 00000000 */ nop /* 081888 7F04CD58 10400022 */ beqz $v0, .L7F04CDE4 /* 08188C 7F04CD5C 00408825 */ move $s1, $v0 /* 081890 7F04CD60 24130004 */ li $s3, 4 /* 081894 7F04CD64 24120001 */ li $s2, 1 /* 081898 7F04CD68 92220000 */ lbu $v0, ($s1) .L7F04CD6C: /* 08189C 7F04CD6C 52420004 */ beql $s2, $v0, .L7F04CD80 /* 0818A0 7F04CD70 8E380014 */ lw $t8, 0x14($s1) /* 0818A4 7F04CD74 56620019 */ bnel $s3, $v0, .L7F04CDDC /* 0818A8 7F04CD78 8E310024 */ lw $s1, 0x24($s1) /* 0818AC 7F04CD7C 8E380014 */ lw $t8, 0x14($s1) .L7F04CD80: /* 0818B0 7F04CD80 93190003 */ lbu $t9, 3($t8) /* 0818B4 7F04CD84 56B90015 */ bnel $s5, $t9, .L7F04CDDC /* 0818B8 7F04CD88 8E310024 */ lw $s1, 0x24($s1) /* 0818BC 7F04CD8C 8E300004 */ lw $s0, 4($s1) /* 0818C0 7F04CD90 C684005C */ lwc1 $f4, 0x5c($s4) /* 0818C4 7F04CD94 C606005C */ lwc1 $f6, 0x5c($s0) /* 0818C8 7F04CD98 4606203C */ c.lt.s $f4, $f6 /* 0818CC 7F04CD9C 00000000 */ nop /* 0818D0 7F04CDA0 4502000E */ bc1fl .L7F04CDDC /* 0818D4 7F04CDA4 8E310024 */ lw $s1, 0x24($s1) /* 0818D8 7F04CDA8 8E080064 */ lw $t0, 0x64($s0) /* 0818DC 7F04CDAC 26040058 */ addiu $a0, $s0, 0x58 /* 0818E0 7F04CDB0 8FA50048 */ lw $a1, 0x48($sp) /* 0818E4 7F04CDB4 31098000 */ andi $t1, $t0, 0x8000 /* 0818E8 7F04CDB8 51200008 */ beql $t1, $zero, .L7F04CDDC /* 0818EC 7F04CDBC 8E310024 */ lw $s1, 0x24($s1) /* 0818F0 7F04CDC0 0FC0F336 */ jal sub_GAME_7F03CCD8 /* 0818F4 7F04CDC4 8FA60044 */ lw $a2, 0x44($sp) /* 0818F8 7F04CDC8 10400003 */ beqz $v0, .L7F04CDD8 /* 0818FC 7F04CDCC 02002025 */ move $a0, $s0 /* 081900 7F04CDD0 0FC13291 */ jal sub_GAME_7F04CA44 /* 081904 7F04CDD4 02C02825 */ move $a1, $s6 .L7F04CDD8: /* 081908 7F04CDD8 8E310024 */ lw $s1, 0x24($s1) .L7F04CDDC: /* 08190C 7F04CDDC 5620FFE3 */ bnezl $s1, .L7F04CD6C /* 081910 7F04CDE0 92220000 */ lbu $v0, ($s1) .L7F04CDE4: /* 081914 7F04CDE4 8FBF0034 */ lw $ra, 0x34($sp) .L7F04CDE8: /* 081918 7F04CDE8 8FB00018 */ lw $s0, 0x18($sp) /* 08191C 7F04CDEC 8FB1001C */ lw $s1, 0x1c($sp) /* 081920 7F04CDF0 8FB20020 */ lw $s2, 0x20($sp) /* 081924 7F04CDF4 8FB30024 */ lw $s3, 0x24($sp) /* 081928 7F04CDF8 8FB40028 */ lw $s4, 0x28($sp) /* 08192C 7F04CDFC 8FB5002C */ lw $s5, 0x2c($sp) /* 081930 7F04CE00 8FB60030 */ lw $s6, 0x30($sp) /* 081934 7F04CE04 03E00008 */ jr $ra /* 081938 7F04CE08 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #ifdef NONMATCHING void object_explosion_related(void) { } #else GLOBAL_ASM( .text glabel object_explosion_related /* 08193C 7F04CE0C 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 081940 7F04CE10 AFBF002C */ sw $ra, 0x2c($sp) /* 081944 7F04CE14 AFB10028 */ sw $s1, 0x28($sp) /* 081948 7F04CE18 AFB00024 */ sw $s0, 0x24($sp) /* 08194C 7F04CE1C AFA5004C */ sw $a1, 0x4c($sp) /* 081950 7F04CE20 AFA60050 */ sw $a2, 0x50($sp) /* 081954 7F04CE24 C4860070 */ lwc1 $f6, 0x70($a0) /* 081958 7F04CE28 C4840074 */ lwc1 $f4, 0x74($a0) /* 08195C 7F04CE2C 00808825 */ move $s1, $a0 /* 081960 7F04CE30 4606203C */ c.lt.s $f4, $f6 /* 081964 7F04CE34 00000000 */ nop /* 081968 7F04CE38 45030006 */ bc1tl .L7F04CE54 /* 08196C 7F04CE3C 862E0004 */ lh $t6, 4($s1) /* 081970 7F04CE40 0FC0FFF0 */ jal do_something_if_object_destroyed /* 081974 7F04CE44 00000000 */ nop /* 081978 7F04CE48 504000C4 */ beql $v0, $zero, .L7F04D15C /* 08197C 7F04CE4C 8FBF002C */ lw $ra, 0x2c($sp) /* 081980 7F04CE50 862E0004 */ lh $t6, 4($s1) .L7F04CE54: /* 081984 7F04CE54 3C188004 */ lui $t8, %hi(object_explosion_details) /* 081988 7F04CE58 8E230010 */ lw $v1, 0x10($s1) /* 08198C 7F04CE5C 000E78C0 */ sll $t7, $t6, 3 /* 081990 7F04CE60 01EE7823 */ subu $t7, $t7, $t6 /* 081994 7F04CE64 000F7840 */ sll $t7, $t7, 1 /* 081998 7F04CE68 030FC021 */ addu $t8, $t8, $t7 /* 08199C 7F04CE6C 8718B224 */ lh $t8, %lo(object_explosion_details)($t8) /* 0819A0 7F04CE70 02202025 */ move $a0, $s1 /* 0819A4 7F04CE74 00608025 */ move $s0, $v1 /* 0819A8 7F04CE78 A7B8003E */ sh $t8, 0x3e($sp) /* 0819AC 7F04CE7C 8C79001C */ lw $t9, 0x1c($v1) /* 0819B0 7F04CE80 53200007 */ beql $t9, $zero, .L7F04CEA0 /* 0819B4 7F04CE84 8E080014 */ lw $t0, 0x14($s0) /* 0819B8 7F04CE88 8E02001C */ lw $v0, 0x1c($s0) /* 0819BC 7F04CE8C 00408025 */ move $s0, $v0 .L7F04CE90: /* 0819C0 7F04CE90 8C42001C */ lw $v0, 0x1c($v0) /* 0819C4 7F04CE94 5440FFFE */ bnezl $v0, .L7F04CE90 /* 0819C8 7F04CE98 00408025 */ move $s0, $v0 /* 0819CC 7F04CE9C 8E080014 */ lw $t0, 0x14($s0) .L7F04CEA0: /* 0819D0 7F04CEA0 AFA30044 */ sw $v1, 0x44($sp) /* 0819D4 7F04CEA4 0FC0FFF0 */ jal do_something_if_object_destroyed /* 0819D8 7F04CEA8 AFA80038 */ sw $t0, 0x38($sp) /* 0819DC 7F04CEAC 14400056 */ bnez $v0, .L7F04D008 /* 0819E0 7F04CEB0 00000000 */ nop /* 0819E4 7F04CEB4 92290002 */ lbu $t1, 2($s1) /* 0819E8 7F04CEB8 44804000 */ mtc1 $zero, $f8 /* 0819EC 7F04CEBC 352A0080 */ ori $t2, $t1, 0x80 /* 0819F0 7F04CEC0 A22A0002 */ sb $t2, 2($s1) /* 0819F4 7F04CEC4 E6280070 */ swc1 $f8, 0x70($s1) /* 0819F8 7F04CEC8 8FAB0038 */ lw $t3, 0x38($sp) /* 0819FC 7F04CECC 5160002B */ beql $t3, $zero, .L7F04CF7C /* 081A00 7F04CED0 8E2C000C */ lw $t4, 0xc($s1) /* 081A04 7F04CED4 920C0001 */ lbu $t4, 1($s0) /* 081A08 7F04CED8 8FA2004C */ lw $v0, 0x4c($sp) /* 081A0C 7F04CEDC 27A40038 */ addiu $a0, $sp, 0x38 /* 081A10 7F04CEE0 318D0008 */ andi $t5, $t4, 8 /* 081A14 7F04CEE4 55A00019 */ bnezl $t5, .L7F04CF4C /* 081A18 7F04CEE8 8E060014 */ lw $a2, 0x14($s0) /* 081A1C 7F04CEEC C44A0008 */ lwc1 $f10, 8($v0) /* 081A20 7F04CEF0 8E050008 */ lw $a1, 8($s0) /* 081A24 7F04CEF4 8E060010 */ lw $a2, 0x10($s0) /* 081A28 7F04CEF8 8C470000 */ lw $a3, ($v0) /* 081A2C 7F04CEFC 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 081A30 7F04CF00 E7AA0010 */ swc1 $f10, 0x10($sp) /* 081A34 7F04CF04 10400010 */ beqz $v0, .L7F04CF48 /* 081A38 7F04CF08 8FA40044 */ lw $a0, 0x44($sp) /* 081A3C 7F04CF0C 8E2E0008 */ lw $t6, 8($s1) /* 081A40 7F04CF10 8FB90050 */ lw $t9, 0x50($sp) /* 081A44 7F04CF14 2608002C */ addiu $t0, $s0, 0x2c /* 081A48 7F04CF18 31CF000E */ andi $t7, $t6, 0xe /* 081A4C 7F04CF1C 2DF80001 */ sltiu $t8, $t7, 1 /* 081A50 7F04CF20 AFB80010 */ sw $t8, 0x10($sp) /* 081A54 7F04CF24 AFA80018 */ sw $t0, 0x18($sp) /* 081A58 7F04CF28 AFA0001C */ sw $zero, 0x1c($sp) /* 081A5C 7F04CF2C 8FA5004C */ lw $a1, 0x4c($sp) /* 081A60 7F04CF30 8FA60038 */ lw $a2, 0x38($sp) /* 081A64 7F04CF34 87A7003E */ lh $a3, 0x3e($sp) /* 081A68 7F04CF38 0FC27094 */ jal sub_GAME_7F09C250 /* 081A6C 7F04CF3C AFB90014 */ sw $t9, 0x14($sp) /* 081A70 7F04CF40 1000000E */ b .L7F04CF7C /* 081A74 7F04CF44 8E2C000C */ lw $t4, 0xc($s1) .L7F04CF48: /* 081A78 7F04CF48 8E060014 */ lw $a2, 0x14($s0) .L7F04CF4C: /* 081A7C 7F04CF4C 8FA90050 */ lw $t1, 0x50($sp) /* 081A80 7F04CF50 260A002C */ addiu $t2, $s0, 0x2c /* 081A84 7F04CF54 240B0001 */ li $t3, 1 /* 081A88 7F04CF58 AFAB001C */ sw $t3, 0x1c($sp) /* 081A8C 7F04CF5C AFAA0018 */ sw $t2, 0x18($sp) /* 081A90 7F04CF60 AFA00010 */ sw $zero, 0x10($sp) /* 081A94 7F04CF64 8FA40044 */ lw $a0, 0x44($sp) /* 081A98 7F04CF68 8FA5004C */ lw $a1, 0x4c($sp) /* 081A9C 7F04CF6C 87A7003E */ lh $a3, 0x3e($sp) /* 081AA0 7F04CF70 0FC27094 */ jal sub_GAME_7F09C250 /* 081AA4 7F04CF74 AFA90014 */ sw $t1, 0x14($sp) /* 081AA8 7F04CF78 8E2C000C */ lw $t4, 0xc($s1) .L7F04CF7C: /* 081AAC 7F04CF7C 02202025 */ move $a0, $s1 /* 081AB0 7F04CF80 318D2000 */ andi $t5, $t4, 0x2000 /* 081AB4 7F04CF84 11A00005 */ beqz $t5, .L7F04CF9C /* 081AB8 7F04CF88 00000000 */ nop /* 081ABC 7F04CF8C 8E2E0064 */ lw $t6, 0x64($s1) /* 081AC0 7F04CF90 35CF0004 */ ori $t7, $t6, 4 /* 081AC4 7F04CF94 10000070 */ b .L7F04D158 /* 081AC8 7F04CF98 AE2F0064 */ sw $t7, 0x64($s1) .L7F04CF9C: /* 081ACC 7F04CF9C 0FC12D84 */ jal sub_GAME_7F04B610 /* 081AD0 7F04CFA0 24050001 */ li $a1, 1 /* 081AD4 7F04CFA4 8FA40044 */ lw $a0, 0x44($sp) /* 081AD8 7F04CFA8 5604006C */ bnel $s0, $a0, .L7F04D15C /* 081ADC 7F04CFAC 8FBF002C */ lw $ra, 0x2c($sp) /* 081AE0 7F04CFB0 0FC13341 */ jal sub_GAME_7F04CD04 /* 081AE4 7F04CFB4 8FA50050 */ lw $a1, 0x50($sp) /* 081AE8 7F04CFB8 8E220064 */ lw $v0, 0x64($s1) /* 081AEC 7F04CFBC 30588000 */ andi $t8, $v0, 0x8000 /* 081AF0 7F04CFC0 5300000A */ beql $t8, $zero, .L7F04CFEC /* 081AF4 7F04CFC4 3C010001 */ lui $at, 1 /* 081AF8 7F04CFC8 0C002914 */ jal get_random_value /* 081AFC 7F04CFCC 00000000 */ nop /* 081B00 7F04CFD0 24010003 */ li $at, 3 /* 081B04 7F04CFD4 0041001B */ divu $zero, $v0, $at /* 081B08 7F04CFD8 0000C810 */ mfhi $t9 /* 081B0C 7F04CFDC 5720005F */ bnezl $t9, .L7F04D15C /* 081B10 7F04CFE0 8FBF002C */ lw $ra, 0x2c($sp) /* 081B14 7F04CFE4 8E220064 */ lw $v0, 0x64($s1) /* 081B18 7F04CFE8 3C010001 */ lui $at, 1 .L7F04CFEC: /* 081B1C 7F04CFEC 00414025 */ or $t0, $v0, $at /* 081B20 7F04CFF0 AE280064 */ sw $t0, 0x64($s1) /* 081B24 7F04CFF4 8FA50050 */ lw $a1, 0x50($sp) /* 081B28 7F04CFF8 0FC13291 */ jal sub_GAME_7F04CA44 /* 081B2C 7F04CFFC 02202025 */ move $a0, $s1 /* 081B30 7F04D000 10000056 */ b .L7F04D15C /* 081B34 7F04D004 8FBF002C */ lw $ra, 0x2c($sp) .L7F04D008: /* 081B38 7F04D008 0FC0FFD8 */ jal sub_GAME_7F03FF60 /* 081B3C 7F04D00C 02202025 */ move $a0, $s1 /* 081B40 7F04D010 30490003 */ andi $t1, $v0, 3 /* 081B44 7F04D014 15200031 */ bnez $t1, .L7F04D0DC /* 081B48 7F04D018 AFA20034 */ sw $v0, 0x34($sp) /* 081B4C 7F04D01C 00025083 */ sra $t2, $v0, 2 /* 081B50 7F04D020 25450001 */ addiu $a1, $t2, 1 /* 081B54 7F04D024 0FC12D84 */ jal sub_GAME_7F04B610 /* 081B58 7F04D028 02202025 */ move $a0, $s1 /* 081B5C 7F04D02C 8FAB0038 */ lw $t3, 0x38($sp) /* 081B60 7F04D030 1160002A */ beqz $t3, .L7F04D0DC /* 081B64 7F04D034 00000000 */ nop /* 081B68 7F04D038 920C0001 */ lbu $t4, 1($s0) /* 081B6C 7F04D03C 8FA2004C */ lw $v0, 0x4c($sp) /* 081B70 7F04D040 27A40038 */ addiu $a0, $sp, 0x38 /* 081B74 7F04D044 318D0008 */ andi $t5, $t4, 8 /* 081B78 7F04D048 55A00019 */ bnezl $t5, .L7F04D0B0 /* 081B7C 7F04D04C 8E060014 */ lw $a2, 0x14($s0) /* 081B80 7F04D050 C4500008 */ lwc1 $f16, 8($v0) /* 081B84 7F04D054 8E050008 */ lw $a1, 8($s0) /* 081B88 7F04D058 8E060010 */ lw $a2, 0x10($s0) /* 081B8C 7F04D05C 8C470000 */ lw $a3, ($v0) /* 081B90 7F04D060 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 081B94 7F04D064 E7B00010 */ swc1 $f16, 0x10($sp) /* 081B98 7F04D068 10400010 */ beqz $v0, .L7F04D0AC /* 081B9C 7F04D06C 8FA40044 */ lw $a0, 0x44($sp) /* 081BA0 7F04D070 8E2E0008 */ lw $t6, 8($s1) /* 081BA4 7F04D074 8FB90050 */ lw $t9, 0x50($sp) /* 081BA8 7F04D078 2608002C */ addiu $t0, $s0, 0x2c /* 081BAC 7F04D07C 31CF000E */ andi $t7, $t6, 0xe /* 081BB0 7F04D080 2DF80001 */ sltiu $t8, $t7, 1 /* 081BB4 7F04D084 AFB80010 */ sw $t8, 0x10($sp) /* 081BB8 7F04D088 AFA80018 */ sw $t0, 0x18($sp) /* 081BBC 7F04D08C AFA0001C */ sw $zero, 0x1c($sp) /* 081BC0 7F04D090 8FA5004C */ lw $a1, 0x4c($sp) /* 081BC4 7F04D094 8FA60038 */ lw $a2, 0x38($sp) /* 081BC8 7F04D098 24070010 */ li $a3, 16 /* 081BCC 7F04D09C 0FC27094 */ jal sub_GAME_7F09C250 /* 081BD0 7F04D0A0 AFB90014 */ sw $t9, 0x14($sp) /* 081BD4 7F04D0A4 1000000D */ b .L7F04D0DC /* 081BD8 7F04D0A8 00000000 */ nop .L7F04D0AC: /* 081BDC 7F04D0AC 8E060014 */ lw $a2, 0x14($s0) .L7F04D0B0: /* 081BE0 7F04D0B0 8FA90050 */ lw $t1, 0x50($sp) /* 081BE4 7F04D0B4 260A002C */ addiu $t2, $s0, 0x2c /* 081BE8 7F04D0B8 240B0001 */ li $t3, 1 /* 081BEC 7F04D0BC AFAB001C */ sw $t3, 0x1c($sp) /* 081BF0 7F04D0C0 AFAA0018 */ sw $t2, 0x18($sp) /* 081BF4 7F04D0C4 AFA00010 */ sw $zero, 0x10($sp) /* 081BF8 7F04D0C8 8FA40044 */ lw $a0, 0x44($sp) /* 081BFC 7F04D0CC 8FA5004C */ lw $a1, 0x4c($sp) /* 081C00 7F04D0D0 24070010 */ li $a3, 16 /* 081C04 7F04D0D4 0FC27094 */ jal sub_GAME_7F09C250 /* 081C08 7F04D0D8 AFA90014 */ sw $t1, 0x14($sp) .L7F04D0DC: /* 081C0C 7F04D0DC 0FC0FFF0 */ jal do_something_if_object_destroyed /* 081C10 7F04D0E0 02202025 */ move $a0, $s1 /* 081C14 7F04D0E4 58400012 */ blezl $v0, .L7F04D130 /* 081C18 7F04D0E8 8FA90034 */ lw $t1, 0x34($sp) /* 081C1C 7F04D0EC 92220002 */ lbu $v0, 2($s1) /* 081C20 7F04D0F0 304C0004 */ andi $t4, $v0, 4 /* 081C24 7F04D0F4 5180000E */ beql $t4, $zero, .L7F04D130 /* 081C28 7F04D0F8 8FA90034 */ lw $t1, 0x34($sp) /* 081C2C 7F04D0FC 8E2D0064 */ lw $t5, 0x64($s1) /* 081C30 7F04D100 344F0010 */ ori $t7, $v0, 0x10 /* 081C34 7F04D104 3058FFEF */ andi $t8, $v0, 0xffef /* 081C38 7F04D108 31AE1000 */ andi $t6, $t5, 0x1000 /* 081C3C 7F04D10C 51C00004 */ beql $t6, $zero, .L7F04D120 /* 081C40 7F04D110 A2380002 */ sb $t8, 2($s1) /* 081C44 7F04D114 10000002 */ b .L7F04D120 /* 081C48 7F04D118 A22F0002 */ sb $t7, 2($s1) /* 081C4C 7F04D11C A2380002 */ sb $t8, 2($s1) .L7F04D120: /* 081C50 7F04D120 8FA80044 */ lw $t0, 0x44($sp) /* 081C54 7F04D124 241904B0 */ li $t9, 1200 /* 081C58 7F04D128 A5190002 */ sh $t9, 2($t0) /* 081C5C 7F04D12C 8FA90034 */ lw $t1, 0x34($sp) .L7F04D130: /* 081C60 7F04D130 2921000C */ slti $at, $t1, 0xc /* 081C64 7F04D134 54200009 */ bnezl $at, .L7F04D15C /* 081C68 7F04D138 8FBF002C */ lw $ra, 0x2c($sp) /* 081C6C 7F04D13C 8E2A0064 */ lw $t2, 0x64($s1) /* 081C70 7F04D140 8E2C0008 */ lw $t4, 8($s1) /* 081C74 7F04D144 2401FEFF */ li $at, -257 /* 081C78 7F04D148 354B1000 */ ori $t3, $t2, 0x1000 /* 081C7C 7F04D14C 01816824 */ and $t5, $t4, $at /* 081C80 7F04D150 AE2B0064 */ sw $t3, 0x64($s1) /* 081C84 7F04D154 AE2D0008 */ sw $t5, 8($s1) .L7F04D158: /* 081C88 7F04D158 8FBF002C */ lw $ra, 0x2c($sp) .L7F04D15C: /* 081C8C 7F04D15C 8FB00024 */ lw $s0, 0x24($sp) /* 081C90 7F04D160 8FB10028 */ lw $s1, 0x28($sp) /* 081C94 7F04D164 03E00008 */ jr $ra /* 081C98 7F04D168 27BD0048 */ addiu $sp, $sp, 0x48 ) #endif #ifdef NONMATCHING void sub_GAME_7F04D16C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04D16C /* 081C9C 7F04D16C 27BDFEB0 */ addiu $sp, $sp, -0x150 /* 081CA0 7F04D170 F7B40028 */ sdc1 $f20, 0x28($sp) /* 081CA4 7F04D174 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 081CA8 7F04D178 AFBE0050 */ sw $fp, 0x50($sp) /* 081CAC 7F04D17C AFB7004C */ sw $s7, 0x4c($sp) /* 081CB0 7F04D180 AFB60048 */ sw $s6, 0x48($sp) /* 081CB4 7F04D184 AFB50044 */ sw $s5, 0x44($sp) /* 081CB8 7F04D188 AFB40040 */ sw $s4, 0x40($sp) /* 081CBC 7F04D18C AFB3003C */ sw $s3, 0x3c($sp) /* 081CC0 7F04D190 AFB10034 */ sw $s1, 0x34($sp) /* 081CC4 7F04D194 AFB00030 */ sw $s0, 0x30($sp) /* 081CC8 7F04D198 4481A000 */ mtc1 $at, $f20 /* 081CCC 7F04D19C 00E08825 */ move $s1, $a3 /* 081CD0 7F04D1A0 0080B825 */ move $s7, $a0 /* 081CD4 7F04D1A4 00C0F025 */ move $fp, $a2 /* 081CD8 7F04D1A8 AFBF0054 */ sw $ra, 0x54($sp) /* 081CDC 7F04D1AC AFB20038 */ sw $s2, 0x38($sp) /* 081CE0 7F04D1B0 AFA50154 */ sw $a1, 0x154($sp) /* 081CE4 7F04D1B4 AFA00110 */ sw $zero, 0x110($sp) /* 081CE8 7F04D1B8 00E09825 */ move $s3, $a3 /* 081CEC 7F04D1BC 8FB0014C */ lw $s0, 0x14c($sp) /* 081CF0 7F04D1C0 8FB40168 */ lw $s4, 0x168($sp) /* 081CF4 7F04D1C4 241500FD */ li $s5, 253 /* 081CF8 7F04D1C8 27B600B0 */ addiu $s6, $sp, 0xb0 .L7F04D1CC: /* 081CFC 7F04D1CC 82220000 */ lb $v0, ($s1) /* 081D00 7F04D1D0 2401FFB8 */ li $at, -72 /* 081D04 7F04D1D4 8FAE0160 */ lw $t6, 0x160($sp) /* 081D08 7F04D1D8 54410007 */ bnel $v0, $at, .L7F04D1F8 /* 081D0C 7F04D1DC 24010004 */ li $at, 4 /* 081D10 7F04D1E0 11C001E5 */ beqz $t6, .L7F04D978 /* 081D14 7F04D1E4 01C09825 */ move $s3, $t6 /* 081D18 7F04D1E8 01C08825 */ move $s1, $t6 /* 081D1C 7F04D1EC 1000FFF7 */ b .L7F04D1CC /* 081D20 7F04D1F0 AFA00160 */ sw $zero, 0x160($sp) /* 081D24 7F04D1F4 24010004 */ li $at, 4 .L7F04D1F8: /* 081D28 7F04D1F8 1441000C */ bne $v0, $at, .L7F04D22C /* 081D2C 7F04D1FC 8FB90164 */ lw $t9, 0x164($sp) /* 081D30 7F04D200 92220001 */ lbu $v0, 1($s1) /* 081D34 7F04D204 8E230004 */ lw $v1, 4($s1) /* 081D38 7F04D208 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff /* 081D3C 7F04D20C 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 081D40 7F04D210 304F000F */ andi $t7, $v0, 0xf /* 081D44 7F04D214 0061C024 */ and $t8, $v1, $at /* 081D48 7F04D218 03384021 */ addu $t0, $t9, $t8 /* 081D4C 7F04D21C 000F4900 */ sll $t1, $t7, 4 /* 081D50 7F04D220 01098023 */ subu $s0, $t0, $t1 /* 081D54 7F04D224 1000FFE9 */ b .L7F04D1CC /* 081D58 7F04D228 26310008 */ addiu $s1, $s1, 8 .L7F04D22C: /* 081D5C 7F04D22C 2401FFBF */ li $at, -65 /* 081D60 7F04D230 144100E2 */ bne $v0, $at, .L7F04D5BC /* 081D64 7F04D234 2403000A */ li $v1, 10 /* 081D68 7F04D238 3C0B8003 */ lui $t3, %hi(D_8003204C) /* 081D6C 7F04D23C 256B204C */ addiu $t3, %lo(D_8003204C) # addiu $t3, $t3, 0x204c /* 081D70 7F04D240 8D610000 */ lw $at, ($t3) /* 081D74 7F04D244 27AA00E8 */ addiu $t2, $sp, 0xe8 /* 081D78 7F04D248 8D6D0004 */ lw $t5, 4($t3) /* 081D7C 7F04D24C AD410000 */ sw $at, ($t2) /* 081D80 7F04D250 8D610008 */ lw $at, 8($t3) /* 081D84 7F04D254 3C0F8003 */ lui $t7, %hi(D_80032058) /* 081D88 7F04D258 25EF2058 */ addiu $t7, %lo(D_80032058) # addiu $t7, $t7, 0x2058 /* 081D8C 7F04D25C AD4D0004 */ sw $t5, 4($t2) /* 081D90 7F04D260 AD410008 */ sw $at, 8($t2) /* 081D94 7F04D264 8DE10000 */ lw $at, ($t7) /* 081D98 7F04D268 27AE00DC */ addiu $t6, $sp, 0xdc /* 081D9C 7F04D26C 8DF90004 */ lw $t9, 4($t7) /* 081DA0 7F04D270 ADC10000 */ sw $at, ($t6) /* 081DA4 7F04D274 8DE10008 */ lw $at, 8($t7) /* 081DA8 7F04D278 ADD90004 */ sw $t9, 4($t6) /* 081DAC 7F04D27C 00001025 */ move $v0, $zero /* 081DB0 7F04D280 ADC10008 */ sw $at, 8($t6) /* 081DB4 7F04D284 92280005 */ lbu $t0, 5($s1) /* 081DB8 7F04D288 27A400F8 */ addiu $a0, $sp, 0xf8 /* 081DBC 7F04D28C 03C02825 */ move $a1, $fp /* 081DC0 7F04D290 0103001A */ div $zero, $t0, $v1 /* 081DC4 7F04D294 00004812 */ mflo $t1 /* 081DC8 7F04D298 AFA900F8 */ sw $t1, 0xf8($sp) /* 081DCC 7F04D29C 922C0006 */ lbu $t4, 6($s1) /* 081DD0 7F04D2A0 14600002 */ bnez $v1, .L7F04D2AC /* 081DD4 7F04D2A4 00000000 */ nop /* 081DD8 7F04D2A8 0007000D */ break 7 .L7F04D2AC: /* 081DDC 7F04D2AC 2401FFFF */ li $at, -1 /* 081DE0 7F04D2B0 14610004 */ bne $v1, $at, .L7F04D2C4 /* 081DE4 7F04D2B4 3C018000 */ lui $at, 0x8000 /* 081DE8 7F04D2B8 15010002 */ bne $t0, $at, .L7F04D2C4 /* 081DEC 7F04D2BC 00000000 */ nop /* 081DF0 7F04D2C0 0006000D */ break 6 .L7F04D2C4: /* 081DF4 7F04D2C4 0183001A */ div $zero, $t4, $v1 /* 081DF8 7F04D2C8 00005012 */ mflo $t2 /* 081DFC 7F04D2CC AFAA00FC */ sw $t2, 0xfc($sp) /* 081E00 7F04D2D0 922B0007 */ lbu $t3, 7($s1) /* 081E04 7F04D2D4 14600002 */ bnez $v1, .L7F04D2E0 /* 081E08 7F04D2D8 00000000 */ nop /* 081E0C 7F04D2DC 0007000D */ break 7 .L7F04D2E0: /* 081E10 7F04D2E0 2401FFFF */ li $at, -1 /* 081E14 7F04D2E4 14610004 */ bne $v1, $at, .L7F04D2F8 /* 081E18 7F04D2E8 3C018000 */ lui $at, 0x8000 /* 081E1C 7F04D2EC 15810002 */ bne $t4, $at, .L7F04D2F8 /* 081E20 7F04D2F0 00000000 */ nop /* 081E24 7F04D2F4 0006000D */ break 6 .L7F04D2F8: /* 081E28 7F04D2F8 0163001A */ div $zero, $t3, $v1 /* 081E2C 7F04D2FC 00006812 */ mflo $t5 /* 081E30 7F04D300 AFAD0100 */ sw $t5, 0x100($sp) /* 081E34 7F04D304 14600002 */ bnez $v1, .L7F04D310 /* 081E38 7F04D308 00000000 */ nop /* 081E3C 7F04D30C 0007000D */ break 7 .L7F04D310: /* 081E40 7F04D310 2401FFFF */ li $at, -1 /* 081E44 7F04D314 14610004 */ bne $v1, $at, .L7F04D328 /* 081E48 7F04D318 3C018000 */ lui $at, 0x8000 /* 081E4C 7F04D31C 15610002 */ bne $t3, $at, .L7F04D328 /* 081E50 7F04D320 00000000 */ nop /* 081E54 7F04D324 0006000D */ break 6 .L7F04D328: /* 081E58 7F04D328 8C980000 */ lw $t8, ($a0) .L7F04D32C: /* 081E5C 7F04D32C 8FAF00E8 */ lw $t7, 0xe8($sp) /* 081E60 7F04D330 24840004 */ addiu $a0, $a0, 4 /* 081E64 7F04D334 00187100 */ sll $t6, $t8, 4 /* 081E68 7F04D338 020E1821 */ addu $v1, $s0, $t6 /* 081E6C 7F04D33C 84620000 */ lh $v0, ($v1) /* 081E70 7F04D340 27AB0104 */ addiu $t3, $sp, 0x104 /* 081E74 7F04D344 004F082A */ slt $at, $v0, $t7 /* 081E78 7F04D348 50200004 */ beql $at, $zero, .L7F04D35C /* 081E7C 7F04D34C 8FB900DC */ lw $t9, 0xdc($sp) /* 081E80 7F04D350 AFA200E8 */ sw $v0, 0xe8($sp) /* 081E84 7F04D354 84620000 */ lh $v0, ($v1) /* 081E88 7F04D358 8FB900DC */ lw $t9, 0xdc($sp) .L7F04D35C: /* 081E8C 7F04D35C 0322082A */ slt $at, $t9, $v0 /* 081E90 7F04D360 50200003 */ beql $at, $zero, .L7F04D370 /* 081E94 7F04D364 84620002 */ lh $v0, 2($v1) /* 081E98 7F04D368 AFA200DC */ sw $v0, 0xdc($sp) /* 081E9C 7F04D36C 84620002 */ lh $v0, 2($v1) .L7F04D370: /* 081EA0 7F04D370 8FA800EC */ lw $t0, 0xec($sp) /* 081EA4 7F04D374 0048082A */ slt $at, $v0, $t0 /* 081EA8 7F04D378 50200004 */ beql $at, $zero, .L7F04D38C /* 081EAC 7F04D37C 8FA900E0 */ lw $t1, 0xe0($sp) /* 081EB0 7F04D380 AFA200EC */ sw $v0, 0xec($sp) /* 081EB4 7F04D384 84620002 */ lh $v0, 2($v1) /* 081EB8 7F04D388 8FA900E0 */ lw $t1, 0xe0($sp) .L7F04D38C: /* 081EBC 7F04D38C 0122082A */ slt $at, $t1, $v0 /* 081EC0 7F04D390 50200003 */ beql $at, $zero, .L7F04D3A0 /* 081EC4 7F04D394 84620004 */ lh $v0, 4($v1) /* 081EC8 7F04D398 AFA200E0 */ sw $v0, 0xe0($sp) /* 081ECC 7F04D39C 84620004 */ lh $v0, 4($v1) .L7F04D3A0: /* 081ED0 7F04D3A0 8FAC00F0 */ lw $t4, 0xf0($sp) /* 081ED4 7F04D3A4 004C082A */ slt $at, $v0, $t4 /* 081ED8 7F04D3A8 50200004 */ beql $at, $zero, .L7F04D3BC /* 081EDC 7F04D3AC 8FAA00E4 */ lw $t2, 0xe4($sp) /* 081EE0 7F04D3B0 AFA200F0 */ sw $v0, 0xf0($sp) /* 081EE4 7F04D3B4 84620004 */ lh $v0, 4($v1) /* 081EE8 7F04D3B8 8FAA00E4 */ lw $t2, 0xe4($sp) .L7F04D3BC: /* 081EEC 7F04D3BC 0142082A */ slt $at, $t2, $v0 /* 081EF0 7F04D3C0 10200002 */ beqz $at, .L7F04D3CC /* 081EF4 7F04D3C4 00000000 */ nop /* 081EF8 7F04D3C8 AFA200E4 */ sw $v0, 0xe4($sp) .L7F04D3CC: /* 081EFC 7F04D3CC 548BFFD7 */ bnel $a0, $t3, .L7F04D32C /* 081F00 7F04D3D0 8C980000 */ lw $t8, ($a0) /* 081F04 7F04D3D4 02E02025 */ move $a0, $s7 /* 081F08 7F04D3D8 27A600E8 */ addiu $a2, $sp, 0xe8 /* 081F0C 7F04D3DC 0FC2DB3B */ jal sub_GAME_7F0B6CEC /* 081F10 7F04D3E0 27A700DC */ addiu $a3, $sp, 0xdc /* 081F14 7F04D3E4 10400162 */ beqz $v0, .L7F04D970 /* 081F18 7F04D3E8 3C0D8003 */ lui $t5, %hi(D_80032064) /* 081F1C 7F04D3EC 25AD2064 */ addiu $t5, %lo(D_80032064) # addiu $t5, $t5, 0x2064 /* 081F20 7F04D3F0 8DA10000 */ lw $at, ($t5) /* 081F24 7F04D3F4 27A700C4 */ addiu $a3, $sp, 0xc4 /* 081F28 7F04D3F8 27B8011C */ addiu $t8, $sp, 0x11c /* 081F2C 7F04D3FC ACE10000 */ sw $at, ($a3) /* 081F30 7F04D400 8DAE0004 */ lw $t6, 4($t5) /* 081F34 7F04D404 ACEE0004 */ sw $t6, 4($a3) /* 081F38 7F04D408 8DA10008 */ lw $at, 8($t5) /* 081F3C 7F04D40C ACE10008 */ sw $at, 8($a3) /* 081F40 7F04D410 8FAC0100 */ lw $t4, 0x100($sp) /* 081F44 7F04D414 8FA800FC */ lw $t0, 0xfc($sp) /* 081F48 7F04D418 8FAF00F8 */ lw $t7, 0xf8($sp) /* 081F4C 7F04D41C 8FAB0154 */ lw $t3, 0x154($sp) /* 081F50 7F04D420 000C5100 */ sll $t2, $t4, 4 /* 081F54 7F04D424 00084900 */ sll $t1, $t0, 4 /* 081F58 7F04D428 000FC900 */ sll $t9, $t7, 4 /* 081F5C 7F04D42C 02192021 */ addu $a0, $s0, $t9 /* 081F60 7F04D430 02092821 */ addu $a1, $s0, $t1 /* 081F64 7F04D434 020A3021 */ addu $a2, $s0, $t2 /* 081F68 7F04D438 AFB8001C */ sw $t8, 0x1c($sp) /* 081F6C 7F04D43C AFBE0018 */ sw $fp, 0x18($sp) /* 081F70 7F04D440 AFB70010 */ sw $s7, 0x10($sp) /* 081F74 7F04D444 0FC24A24 */ jal sub_GAME_7F092890 /* 081F78 7F04D448 AFAB0014 */ sw $t3, 0x14($sp) /* 081F7C 7F04D44C 10400148 */ beqz $v0, .L7F04D970 /* 081F80 7F04D450 00000000 */ nop /* 081F84 7F04D454 C7A4011C */ lwc1 $f4, 0x11c($sp) /* 081F88 7F04D458 C6E80000 */ lwc1 $f8, ($s7) /* 081F8C 7F04D45C C7B20120 */ lwc1 $f18, 0x120($sp) /* 081F90 7F04D460 4600218D */ trunc.w.s $f6, $f4 /* 081F94 7F04D464 92290000 */ lbu $t1, ($s1) /* 081F98 7F04D468 02201025 */ move $v0, $s1 /* 081F9C 7F04D46C 4600428D */ trunc.w.s $f10, $f8 /* 081FA0 7F04D470 440E3000 */ mfc1 $t6, $f6 /* 081FA4 7F04D474 C6E60004 */ lwc1 $f6, 4($s7) /* 081FA8 7F04D478 4600910D */ trunc.w.s $f4, $f18 /* 081FAC 7F04D47C 44195000 */ mfc1 $t9, $f10 /* 081FB0 7F04D480 0271082B */ sltu $at, $s3, $s1 /* 081FB4 7F04D484 4600320D */ trunc.w.s $f8, $f6 /* 081FB8 7F04D488 01D94023 */ subu $t0, $t6, $t9 /* 081FBC 7F04D48C 44888000 */ mtc1 $t0, $f16 /* 081FC0 7F04D490 440C2000 */ mfc1 $t4, $f4 /* 081FC4 7F04D494 440B4000 */ mfc1 $t3, $f8 /* 081FC8 7F04D498 468080A0 */ cvt.s.w $f2, $f16 /* 081FCC 7F04D49C C7B00124 */ lwc1 $f16, 0x124($sp) /* 081FD0 7F04D4A0 C6E40008 */ lwc1 $f4, 8($s7) /* 081FD4 7F04D4A4 018BC023 */ subu $t8, $t4, $t3 /* 081FD8 7F04D4A8 44985000 */ mtc1 $t8, $f10 /* 081FDC 7F04D4AC 4600848D */ trunc.w.s $f18, $f16 /* 081FE0 7F04D4B0 4600218D */ trunc.w.s $f6, $f4 /* 081FE4 7F04D4B4 440F9000 */ mfc1 $t7, $f18 /* 081FE8 7F04D4B8 46805320 */ cvt.s.w $f12, $f10 /* 081FEC 7F04D4BC 44193000 */ mfc1 $t9, $f6 /* 081FF0 7F04D4C0 46021282 */ mul.s $f10, $f2, $f2 /* 081FF4 7F04D4C4 01F94023 */ subu $t0, $t7, $t9 /* 081FF8 7F04D4C8 44884000 */ mtc1 $t0, $f8 /* 081FFC 7F04D4CC 460C6402 */ mul.s $f16, $f12, $f12 /* 082000 7F04D4D0 12A9000A */ beq $s5, $t1, .L7F04D4FC /* 082004 7F04D4D4 468043A0 */ cvt.s.w $f14, $f8 /* 082008 7F04D4D8 10200008 */ beqz $at, .L7F04D4FC /* 08200C 7F04D4DC 00000000 */ nop /* 082010 7F04D4E0 904AFFF8 */ lbu $t2, -8($v0) .L7F04D4E4: /* 082014 7F04D4E4 2442FFF8 */ addiu $v0, $v0, -8 /* 082018 7F04D4E8 0262082B */ sltu $at, $s3, $v0 /* 08201C 7F04D4EC 12AA0003 */ beq $s5, $t2, .L7F04D4FC /* 082020 7F04D4F0 00000000 */ nop /* 082024 7F04D4F4 5420FFFB */ bnezl $at, .L7F04D4E4 /* 082028 7F04D4F8 904AFFF8 */ lbu $t2, -8($v0) .L7F04D4FC: /* 08202C 7F04D4FC 460E7102 */ mul.s $f4, $f14, $f14 /* 082030 7F04D500 54530004 */ bnel $v0, $s3, .L7F04D514 /* 082034 7F04D504 8C430004 */ lw $v1, 4($v0) /* 082038 7F04D508 10000006 */ b .L7F04D524 /* 08203C 7F04D50C 2404FFFF */ li $a0, -1 /* 082040 7F04D510 8C430004 */ lw $v1, 4($v0) .L7F04D514: /* 082044 7F04D514 3C018000 */ lui $at, 0x8000 /* 082048 7F04D518 2463FFF8 */ addiu $v1, $v1, -8 /* 08204C 7F04D51C 00616025 */ or $t4, $v1, $at /* 082050 7F04D520 95840000 */ lhu $a0, ($t4) .L7F04D524: /* 082054 7F04D524 46105480 */ add.s $f18, $f10, $f16 /* 082058 7F04D528 46049000 */ add.s $f0, $f18, $f4 /* 08205C 7F04D52C 4614003C */ c.lt.s $f0, $f20 /* 082060 7F04D530 00000000 */ nop /* 082064 7F04D534 4500010E */ bc1f .L7F04D970 /* 082068 7F04D538 00000000 */ nop /* 08206C 7F04D53C C7A6011C */ lwc1 $f6, 0x11c($sp) /* 082070 7F04D540 240C0001 */ li $t4, 1 /* 082074 7F04D544 46000506 */ mov.s $f20, $f0 /* 082078 7F04D548 E6860000 */ swc1 $f6, ($s4) /* 08207C 7F04D54C C7A80120 */ lwc1 $f8, 0x120($sp) /* 082080 7F04D550 E6880004 */ swc1 $f8, 4($s4) /* 082084 7F04D554 C7AA0124 */ lwc1 $f10, 0x124($sp) /* 082088 7F04D558 E68A0008 */ swc1 $f10, 8($s4) /* 08208C 7F04D55C C7B00128 */ lwc1 $f16, 0x128($sp) /* 082090 7F04D560 E690000C */ swc1 $f16, 0xc($s4) /* 082094 7F04D564 C7B2012C */ lwc1 $f18, 0x12c($sp) /* 082098 7F04D568 E6920010 */ swc1 $f18, 0x10($s4) /* 08209C 7F04D56C C7A40130 */ lwc1 $f4, 0x130($sp) /* 0820A0 7F04D570 E6840014 */ swc1 $f4, 0x14($s4) /* 0820A4 7F04D574 8FAB00F8 */ lw $t3, 0xf8($sp) /* 0820A8 7F04D578 000BC100 */ sll $t8, $t3, 4 /* 0820AC 7F04D57C 03106821 */ addu $t5, $t8, $s0 /* 0820B0 7F04D580 AE8D0018 */ sw $t5, 0x18($s4) /* 0820B4 7F04D584 8FAE00FC */ lw $t6, 0xfc($sp) /* 0820B8 7F04D588 000E7900 */ sll $t7, $t6, 4 /* 0820BC 7F04D58C 01F0C821 */ addu $t9, $t7, $s0 /* 0820C0 7F04D590 AE99001C */ sw $t9, 0x1c($s4) /* 0820C4 7F04D594 8FA80100 */ lw $t0, 0x100($sp) /* 0820C8 7F04D598 A684002A */ sh $a0, 0x2a($s4) /* 0820CC 7F04D59C AE910024 */ sw $s1, 0x24($s4) /* 0820D0 7F04D5A0 00084900 */ sll $t1, $t0, 4 /* 0820D4 7F04D5A4 01305021 */ addu $t2, $t1, $s0 /* 0820D8 7F04D5A8 AE8A0020 */ sw $t2, 0x20($s4) /* 0820DC 7F04D5AC A6800028 */ sh $zero, 0x28($s4) /* 0820E0 7F04D5B0 AFAC0110 */ sw $t4, 0x110($sp) /* 0820E4 7F04D5B4 1000FF05 */ b .L7F04D1CC /* 0820E8 7F04D5B8 26310008 */ addiu $s1, $s1, 8 .L7F04D5BC: /* 0820EC 7F04D5BC 2401FFB1 */ li $at, -79 /* 0820F0 7F04D5C0 144100EB */ bne $v0, $at, .L7F04D970 /* 0820F4 7F04D5C4 00000000 */ nop /* 0820F8 7F04D5C8 00009025 */ move $s2, $zero .L7F04D5CC: /* 0820FC 7F04D5CC 3C188003 */ lui $t8, %hi(D_80032070) /* 082100 7F04D5D0 27182070 */ addiu $t8, %lo(D_80032070) # addiu $t8, $t8, 0x2070 /* 082104 7F04D5D4 8F010000 */ lw $at, ($t8) /* 082108 7F04D5D8 27AB0094 */ addiu $t3, $sp, 0x94 /* 08210C 7F04D5DC 8F0E0004 */ lw $t6, 4($t8) /* 082110 7F04D5E0 AD610000 */ sw $at, ($t3) /* 082114 7F04D5E4 8F010008 */ lw $at, 8($t8) /* 082118 7F04D5E8 3C198003 */ lui $t9, %hi(D_8003207C) /* 08211C 7F04D5EC 2739207C */ addiu $t9, %lo(D_8003207C) # addiu $t9, $t9, 0x207c /* 082120 7F04D5F0 AD6E0004 */ sw $t6, 4($t3) /* 082124 7F04D5F4 AD610008 */ sw $at, 8($t3) /* 082128 7F04D5F8 8F210000 */ lw $at, ($t9) /* 08212C 7F04D5FC 27AF0088 */ addiu $t7, $sp, 0x88 /* 082130 7F04D600 8F290004 */ lw $t1, 4($t9) /* 082134 7F04D604 ADE10000 */ sw $at, ($t7) /* 082138 7F04D608 8F210008 */ lw $at, 8($t9) /* 08213C 7F04D60C ADE90004 */ sw $t1, 4($t7) /* 082140 7F04D610 1640000B */ bnez $s2, .L7F04D640 /* 082144 7F04D614 ADE10008 */ sw $at, 8($t7) /* 082148 7F04D618 8E2A0004 */ lw $t2, 4($s1) /* 08214C 7F04D61C 314C000F */ andi $t4, $t2, 0xf /* 082150 7F04D620 AFAC00A4 */ sw $t4, 0xa4($sp) /* 082154 7F04D624 922D0007 */ lbu $t5, 7($s1) /* 082158 7F04D628 000D5902 */ srl $t3, $t5, 4 /* 08215C 7F04D62C AFAB00A8 */ sw $t3, 0xa8($sp) /* 082160 7F04D630 8E380000 */ lw $t8, ($s1) /* 082164 7F04D634 330E000F */ andi $t6, $t8, 0xf /* 082168 7F04D638 10000024 */ b .L7F04D6CC /* 08216C 7F04D63C AFAE00AC */ sw $t6, 0xac($sp) .L7F04D640: /* 082170 7F04D640 24010001 */ li $at, 1 /* 082174 7F04D644 5641000C */ bnel $s2, $at, .L7F04D678 /* 082178 7F04D648 24010002 */ li $at, 2 /* 08217C 7F04D64C 92280006 */ lbu $t0, 6($s1) /* 082180 7F04D650 310F000F */ andi $t7, $t0, 0xf /* 082184 7F04D654 AFAF00A4 */ sw $t7, 0xa4($sp) /* 082188 7F04D658 96390006 */ lhu $t9, 6($s1) /* 08218C 7F04D65C 00194B02 */ srl $t1, $t9, 0xc /* 082190 7F04D660 AFA900A8 */ sw $t1, 0xa8($sp) /* 082194 7F04D664 922A0003 */ lbu $t2, 3($s1) /* 082198 7F04D668 000A6102 */ srl $t4, $t2, 4 /* 08219C 7F04D66C 10000017 */ b .L7F04D6CC /* 0821A0 7F04D670 AFAC00AC */ sw $t4, 0xac($sp) /* 0821A4 7F04D674 24010002 */ li $at, 2 .L7F04D678: /* 0821A8 7F04D678 5641000C */ bnel $s2, $at, .L7F04D6AC /* 0821AC 7F04D67C 92390004 */ lbu $t9, 4($s1) /* 0821B0 7F04D680 962D0004 */ lhu $t5, 4($s1) /* 0821B4 7F04D684 31AB000F */ andi $t3, $t5, 0xf /* 0821B8 7F04D688 AFAB00A4 */ sw $t3, 0xa4($sp) /* 0821BC 7F04D68C 92380005 */ lbu $t8, 5($s1) /* 0821C0 7F04D690 00187102 */ srl $t6, $t8, 4 /* 0821C4 7F04D694 AFAE00A8 */ sw $t6, 0xa8($sp) /* 0821C8 7F04D698 92280002 */ lbu $t0, 2($s1) /* 0821CC 7F04D69C 310F000F */ andi $t7, $t0, 0xf /* 0821D0 7F04D6A0 1000000A */ b .L7F04D6CC /* 0821D4 7F04D6A4 AFAF00AC */ sw $t7, 0xac($sp) /* 0821D8 7F04D6A8 92390004 */ lbu $t9, 4($s1) .L7F04D6AC: /* 0821DC 7F04D6AC 3329000F */ andi $t1, $t9, 0xf /* 0821E0 7F04D6B0 AFA900A4 */ sw $t1, 0xa4($sp) /* 0821E4 7F04D6B4 8E2A0004 */ lw $t2, 4($s1) /* 0821E8 7F04D6B8 000A6702 */ srl $t4, $t2, 0x1c /* 0821EC 7F04D6BC AFAC00A8 */ sw $t4, 0xa8($sp) /* 0821F0 7F04D6C0 962D0002 */ lhu $t5, 2($s1) /* 0821F4 7F04D6C4 000D5B02 */ srl $t3, $t5, 0xc /* 0821F8 7F04D6C8 AFAB00AC */ sw $t3, 0xac($sp) .L7F04D6CC: /* 0821FC 7F04D6CC 27A400A4 */ addiu $a0, $sp, 0xa4 /* 082200 7F04D6D0 8C980000 */ lw $t8, ($a0) .L7F04D6D4: /* 082204 7F04D6D4 8FA80094 */ lw $t0, 0x94($sp) /* 082208 7F04D6D8 24840004 */ addiu $a0, $a0, 4 /* 08220C 7F04D6DC 00187100 */ sll $t6, $t8, 4 /* 082210 7F04D6E0 020E1821 */ addu $v1, $s0, $t6 /* 082214 7F04D6E4 84620000 */ lh $v0, ($v1) /* 082218 7F04D6E8 0048082A */ slt $at, $v0, $t0 /* 08221C 7F04D6EC 50200004 */ beql $at, $zero, .L7F04D700 /* 082220 7F04D6F0 8FAF0088 */ lw $t7, 0x88($sp) /* 082224 7F04D6F4 AFA20094 */ sw $v0, 0x94($sp) /* 082228 7F04D6F8 84620000 */ lh $v0, ($v1) /* 08222C 7F04D6FC 8FAF0088 */ lw $t7, 0x88($sp) .L7F04D700: /* 082230 7F04D700 01E2082A */ slt $at, $t7, $v0 /* 082234 7F04D704 50200003 */ beql $at, $zero, .L7F04D714 /* 082238 7F04D708 84620002 */ lh $v0, 2($v1) /* 08223C 7F04D70C AFA20088 */ sw $v0, 0x88($sp) /* 082240 7F04D710 84620002 */ lh $v0, 2($v1) .L7F04D714: /* 082244 7F04D714 8FB90098 */ lw $t9, 0x98($sp) /* 082248 7F04D718 0059082A */ slt $at, $v0, $t9 /* 08224C 7F04D71C 50200004 */ beql $at, $zero, .L7F04D730 /* 082250 7F04D720 8FA9008C */ lw $t1, 0x8c($sp) /* 082254 7F04D724 AFA20098 */ sw $v0, 0x98($sp) /* 082258 7F04D728 84620002 */ lh $v0, 2($v1) /* 08225C 7F04D72C 8FA9008C */ lw $t1, 0x8c($sp) .L7F04D730: /* 082260 7F04D730 0122082A */ slt $at, $t1, $v0 /* 082264 7F04D734 50200003 */ beql $at, $zero, .L7F04D744 /* 082268 7F04D738 84620004 */ lh $v0, 4($v1) /* 08226C 7F04D73C AFA2008C */ sw $v0, 0x8c($sp) /* 082270 7F04D740 84620004 */ lh $v0, 4($v1) .L7F04D744: /* 082274 7F04D744 8FAA009C */ lw $t2, 0x9c($sp) /* 082278 7F04D748 004A082A */ slt $at, $v0, $t2 /* 08227C 7F04D74C 50200004 */ beql $at, $zero, .L7F04D760 /* 082280 7F04D750 8FAC0090 */ lw $t4, 0x90($sp) /* 082284 7F04D754 AFA2009C */ sw $v0, 0x9c($sp) /* 082288 7F04D758 84620004 */ lh $v0, 4($v1) /* 08228C 7F04D75C 8FAC0090 */ lw $t4, 0x90($sp) .L7F04D760: /* 082290 7F04D760 0182082A */ slt $at, $t4, $v0 /* 082294 7F04D764 10200002 */ beqz $at, .L7F04D770 /* 082298 7F04D768 00000000 */ nop /* 08229C 7F04D76C AFA20090 */ sw $v0, 0x90($sp) .L7F04D770: /* 0822A0 7F04D770 5496FFD8 */ bnel $a0, $s6, .L7F04D6D4 /* 0822A4 7F04D774 8C980000 */ lw $t8, ($a0) /* 0822A8 7F04D778 02E02025 */ move $a0, $s7 /* 0822AC 7F04D77C 03C02825 */ move $a1, $fp /* 0822B0 7F04D780 27A60094 */ addiu $a2, $sp, 0x94 /* 0822B4 7F04D784 0FC2DB3B */ jal sub_GAME_7F0B6CEC /* 0822B8 7F04D788 27A70088 */ addiu $a3, $sp, 0x88 /* 0822BC 7F04D78C 10400074 */ beqz $v0, .L7F04D960 /* 0822C0 7F04D790 3C0D8003 */ lui $t5, %hi(D_80032088) /* 0822C4 7F04D794 25AD2088 */ addiu $t5, %lo(D_80032088) # addiu $t5, $t5, 0x2088 /* 0822C8 7F04D798 8DA10000 */ lw $at, ($t5) /* 0822CC 7F04D79C 27A70070 */ addiu $a3, $sp, 0x70 /* 0822D0 7F04D7A0 27AB011C */ addiu $t3, $sp, 0x11c /* 0822D4 7F04D7A4 ACE10000 */ sw $at, ($a3) /* 0822D8 7F04D7A8 8DB80004 */ lw $t8, 4($t5) /* 0822DC 7F04D7AC ACF80004 */ sw $t8, 4($a3) /* 0822E0 7F04D7B0 8DA10008 */ lw $at, 8($t5) /* 0822E4 7F04D7B4 ACE10008 */ sw $at, 8($a3) /* 0822E8 7F04D7B8 8FA900AC */ lw $t1, 0xac($sp) /* 0822EC 7F04D7BC 8FAF00A8 */ lw $t7, 0xa8($sp) /* 0822F0 7F04D7C0 8FAE00A4 */ lw $t6, 0xa4($sp) /* 0822F4 7F04D7C4 8FAC0154 */ lw $t4, 0x154($sp) /* 0822F8 7F04D7C8 00095100 */ sll $t2, $t1, 4 /* 0822FC 7F04D7CC 000FC900 */ sll $t9, $t7, 4 /* 082300 7F04D7D0 000E4100 */ sll $t0, $t6, 4 /* 082304 7F04D7D4 02082021 */ addu $a0, $s0, $t0 /* 082308 7F04D7D8 02192821 */ addu $a1, $s0, $t9 /* 08230C 7F04D7DC 020A3021 */ addu $a2, $s0, $t2 /* 082310 7F04D7E0 AFAB001C */ sw $t3, 0x1c($sp) /* 082314 7F04D7E4 AFBE0018 */ sw $fp, 0x18($sp) /* 082318 7F04D7E8 AFB70010 */ sw $s7, 0x10($sp) /* 08231C 7F04D7EC 0FC24A24 */ jal sub_GAME_7F092890 /* 082320 7F04D7F0 AFAC0014 */ sw $t4, 0x14($sp) /* 082324 7F04D7F4 5040005B */ beql $v0, $zero, .L7F04D964 /* 082328 7F04D7F8 26520001 */ addiu $s2, $s2, 1 /* 08232C 7F04D7FC C7A6011C */ lwc1 $f6, 0x11c($sp) /* 082330 7F04D800 C6EA0000 */ lwc1 $f10, ($s7) /* 082334 7F04D804 C7A40120 */ lwc1 $f4, 0x120($sp) /* 082338 7F04D808 4600320D */ trunc.w.s $f8, $f6 /* 08233C 7F04D80C 92390000 */ lbu $t9, ($s1) /* 082340 7F04D810 02201025 */ move $v0, $s1 /* 082344 7F04D814 4600540D */ trunc.w.s $f16, $f10 /* 082348 7F04D818 44184000 */ mfc1 $t8, $f8 /* 08234C 7F04D81C C6E80004 */ lwc1 $f8, 4($s7) /* 082350 7F04D820 4600218D */ trunc.w.s $f6, $f4 /* 082354 7F04D824 44088000 */ mfc1 $t0, $f16 /* 082358 7F04D828 0271082B */ sltu $at, $s3, $s1 /* 08235C 7F04D82C 4600428D */ trunc.w.s $f10, $f8 /* 082360 7F04D830 03087823 */ subu $t7, $t8, $t0 /* 082364 7F04D834 448F9000 */ mtc1 $t7, $f18 /* 082368 7F04D838 44093000 */ mfc1 $t1, $f6 /* 08236C 7F04D83C 440C5000 */ mfc1 $t4, $f10 /* 082370 7F04D840 468090A0 */ cvt.s.w $f2, $f18 /* 082374 7F04D844 C7B20124 */ lwc1 $f18, 0x124($sp) /* 082378 7F04D848 C6E60008 */ lwc1 $f6, 8($s7) /* 08237C 7F04D84C 012C5823 */ subu $t3, $t1, $t4 /* 082380 7F04D850 448B8000 */ mtc1 $t3, $f16 /* 082384 7F04D854 4600910D */ trunc.w.s $f4, $f18 /* 082388 7F04D858 4600320D */ trunc.w.s $f8, $f6 /* 08238C 7F04D85C 440E2000 */ mfc1 $t6, $f4 /* 082390 7F04D860 46808320 */ cvt.s.w $f12, $f16 /* 082394 7F04D864 44084000 */ mfc1 $t0, $f8 /* 082398 7F04D868 46021402 */ mul.s $f16, $f2, $f2 /* 08239C 7F04D86C 01C87823 */ subu $t7, $t6, $t0 /* 0823A0 7F04D870 448F5000 */ mtc1 $t7, $f10 /* 0823A4 7F04D874 460C6482 */ mul.s $f18, $f12, $f12 /* 0823A8 7F04D878 12B9000A */ beq $s5, $t9, .L7F04D8A4 /* 0823AC 7F04D87C 468053A0 */ cvt.s.w $f14, $f10 /* 0823B0 7F04D880 10200008 */ beqz $at, .L7F04D8A4 /* 0823B4 7F04D884 00000000 */ nop /* 0823B8 7F04D888 904AFFF8 */ lbu $t2, -8($v0) .L7F04D88C: /* 0823BC 7F04D88C 2442FFF8 */ addiu $v0, $v0, -8 /* 0823C0 7F04D890 0262082B */ sltu $at, $s3, $v0 /* 0823C4 7F04D894 12AA0003 */ beq $s5, $t2, .L7F04D8A4 /* 0823C8 7F04D898 00000000 */ nop /* 0823CC 7F04D89C 5420FFFB */ bnezl $at, .L7F04D88C /* 0823D0 7F04D8A0 904AFFF8 */ lbu $t2, -8($v0) .L7F04D8A4: /* 0823D4 7F04D8A4 460E7182 */ mul.s $f6, $f14, $f14 /* 0823D8 7F04D8A8 54530004 */ bnel $v0, $s3, .L7F04D8BC /* 0823DC 7F04D8AC 8C430004 */ lw $v1, 4($v0) /* 0823E0 7F04D8B0 10000006 */ b .L7F04D8CC /* 0823E4 7F04D8B4 2404FFFF */ li $a0, -1 /* 0823E8 7F04D8B8 8C430004 */ lw $v1, 4($v0) .L7F04D8BC: /* 0823EC 7F04D8BC 3C018000 */ lui $at, 0x8000 /* 0823F0 7F04D8C0 2463FFF8 */ addiu $v1, $v1, -8 /* 0823F4 7F04D8C4 00614825 */ or $t1, $v1, $at /* 0823F8 7F04D8C8 95240000 */ lhu $a0, ($t1) .L7F04D8CC: /* 0823FC 7F04D8CC 46128100 */ add.s $f4, $f16, $f18 /* 082400 7F04D8D0 46062000 */ add.s $f0, $f4, $f6 /* 082404 7F04D8D4 4614003C */ c.lt.s $f0, $f20 /* 082408 7F04D8D8 00000000 */ nop /* 08240C 7F04D8DC 45020021 */ bc1fl .L7F04D964 /* 082410 7F04D8E0 26520001 */ addiu $s2, $s2, 1 /* 082414 7F04D8E4 C7A8011C */ lwc1 $f8, 0x11c($sp) /* 082418 7F04D8E8 26490001 */ addiu $t1, $s2, 1 /* 08241C 7F04D8EC 46000506 */ mov.s $f20, $f0 /* 082420 7F04D8F0 E6880000 */ swc1 $f8, ($s4) /* 082424 7F04D8F4 C7AA0120 */ lwc1 $f10, 0x120($sp) /* 082428 7F04D8F8 E68A0004 */ swc1 $f10, 4($s4) /* 08242C 7F04D8FC C7B00124 */ lwc1 $f16, 0x124($sp) /* 082430 7F04D900 E6900008 */ swc1 $f16, 8($s4) /* 082434 7F04D904 C7B20128 */ lwc1 $f18, 0x128($sp) /* 082438 7F04D908 E692000C */ swc1 $f18, 0xc($s4) /* 08243C 7F04D90C C7A4012C */ lwc1 $f4, 0x12c($sp) /* 082440 7F04D910 E6840010 */ swc1 $f4, 0x10($s4) /* 082444 7F04D914 C7A60130 */ lwc1 $f6, 0x130($sp) /* 082448 7F04D918 E6860014 */ swc1 $f6, 0x14($s4) /* 08244C 7F04D91C 8FAC00A4 */ lw $t4, 0xa4($sp) /* 082450 7F04D920 000C5900 */ sll $t3, $t4, 4 /* 082454 7F04D924 01706821 */ addu $t5, $t3, $s0 /* 082458 7F04D928 AE8D0018 */ sw $t5, 0x18($s4) /* 08245C 7F04D92C 8FB800A8 */ lw $t8, 0xa8($sp) /* 082460 7F04D930 240C0001 */ li $t4, 1 /* 082464 7F04D934 00187100 */ sll $t6, $t8, 4 /* 082468 7F04D938 01D04021 */ addu $t0, $t6, $s0 /* 08246C 7F04D93C AE88001C */ sw $t0, 0x1c($s4) /* 082470 7F04D940 8FAF00AC */ lw $t7, 0xac($sp) /* 082474 7F04D944 A684002A */ sh $a0, 0x2a($s4) /* 082478 7F04D948 AE910024 */ sw $s1, 0x24($s4) /* 08247C 7F04D94C 000FC900 */ sll $t9, $t7, 4 /* 082480 7F04D950 03305021 */ addu $t2, $t9, $s0 /* 082484 7F04D954 AE8A0020 */ sw $t2, 0x20($s4) /* 082488 7F04D958 A6890028 */ sh $t1, 0x28($s4) /* 08248C 7F04D95C AFAC0110 */ sw $t4, 0x110($sp) .L7F04D960: /* 082490 7F04D960 26520001 */ addiu $s2, $s2, 1 .L7F04D964: /* 082494 7F04D964 24010004 */ li $at, 4 /* 082498 7F04D968 1641FF18 */ bne $s2, $at, .L7F04D5CC /* 08249C 7F04D96C 00000000 */ nop .L7F04D970: /* 0824A0 7F04D970 1000FE16 */ b .L7F04D1CC /* 0824A4 7F04D974 26310008 */ addiu $s1, $s1, 8 .L7F04D978: /* 0824A8 7F04D978 8FBF0054 */ lw $ra, 0x54($sp) /* 0824AC 7F04D97C 8FA20110 */ lw $v0, 0x110($sp) /* 0824B0 7F04D980 D7B40028 */ ldc1 $f20, 0x28($sp) /* 0824B4 7F04D984 8FB00030 */ lw $s0, 0x30($sp) /* 0824B8 7F04D988 8FB10034 */ lw $s1, 0x34($sp) /* 0824BC 7F04D98C 8FB20038 */ lw $s2, 0x38($sp) /* 0824C0 7F04D990 8FB3003C */ lw $s3, 0x3c($sp) /* 0824C4 7F04D994 8FB40040 */ lw $s4, 0x40($sp) /* 0824C8 7F04D998 8FB50044 */ lw $s5, 0x44($sp) /* 0824CC 7F04D99C 8FB60048 */ lw $s6, 0x48($sp) /* 0824D0 7F04D9A0 8FB7004C */ lw $s7, 0x4c($sp) /* 0824D4 7F04D9A4 8FBE0050 */ lw $fp, 0x50($sp) /* 0824D8 7F04D9A8 03E00008 */ jr $ra /* 0824DC 7F04D9AC 27BD0150 */ addiu $sp, $sp, 0x150 ) #endif #ifdef NONMATCHING void sub_GAME_7F04D9B0(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052D98 .word 0x46fffe00 /*32767.0*/ /*D:80052D9C*/ glabel jpt_80052D9C .word loc_CODE_7F04DAA4 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word loc_CODE_7F04DAD8 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word loc_CODE_7F04DAEC .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word def_7F04DA40 .word loc_CODE_7F04DB00 .word loc_CODE_7F04DA48 /*D:80052DF0*/ /*hack, doesn't fit in own function*/ glabel jpt_80052DF0 .word destroyable_object .word nondestroyable_object .word destroyable_object .word nondestroyable_object .word destroyable_object .word destroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word destroyable_object .word destroyable_object .word destroyable_object .word destroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word nondestroyable_object .word destroyable_object .word nondestroyable_object .word nondestroyable_object .text glabel sub_GAME_7F04D9B0 /* 0824E0 7F04D9B0 27BDFF08 */ addiu $sp, $sp, -0xf8 /* 0824E4 7F04D9B4 AFBE0050 */ sw $fp, 0x50($sp) /* 0824E8 7F04D9B8 AFB60048 */ sw $s6, 0x48($sp) /* 0824EC 7F04D9BC AFB20038 */ sw $s2, 0x38($sp) /* 0824F0 7F04D9C0 AFB00030 */ sw $s0, 0x30($sp) /* 0824F4 7F04D9C4 00A09025 */ move $s2, $a1 /* 0824F8 7F04D9C8 0080B025 */ move $s6, $a0 /* 0824FC 7F04D9CC AFBF0054 */ sw $ra, 0x54($sp) /* 082500 7F04D9D0 AFB7004C */ sw $s7, 0x4c($sp) /* 082504 7F04D9D4 AFB50044 */ sw $s5, 0x44($sp) /* 082508 7F04D9D8 AFB40040 */ sw $s4, 0x40($sp) /* 08250C 7F04D9DC AFB3003C */ sw $s3, 0x3c($sp) /* 082510 7F04D9E0 AFB10034 */ sw $s1, 0x34($sp) /* 082514 7F04D9E4 F7B40028 */ sdc1 $f20, 0x28($sp) /* 082518 7F04D9E8 AFA60100 */ sw $a2, 0x100($sp) /* 08251C 7F04D9EC AFA70104 */ sw $a3, 0x104($sp) /* 082520 7F04D9F0 AFA000D0 */ sw $zero, 0xd0($sp) /* 082524 7F04D9F4 AFA000CC */ sw $zero, 0xcc($sp) /* 082528 7F04D9F8 00A08025 */ move $s0, $a1 /* 08252C 7F04D9FC 10A0009F */ beqz $a1, .L7F04DC7C /* 082530 7F04DA00 0000F025 */ move $fp, $zero /* 082534 7F04DA04 3C018005 */ lui $at, %hi(D_80052D98) /* 082538 7F04DA08 3C1700FF */ lui $s7, (0x00FFFFFF >> 16) # lui $s7, 0xff /* 08253C 7F04DA0C 36F7FFFF */ ori $s7, (0x00FFFFFF & 0xFFFF) # ori $s7, $s7, 0xffff /* 082540 7F04DA10 C4342D98 */ lwc1 $f20, %lo(D_80052D98)($at) /* 082544 7F04DA14 96020000 */ lhu $v0, ($s0) .L7F04DA18: /* 082548 7F04DA18 00009825 */ move $s3, $zero /* 08254C 7F04DA1C 0000A825 */ move $s5, $zero /* 082550 7F04DA20 304E00FF */ andi $t6, $v0, 0xff /* 082554 7F04DA24 25CFFFFC */ addiu $t7, $t6, -4 /* 082558 7F04DA28 2DE10015 */ sltiu $at, $t7, 0x15 /* 08255C 7F04DA2C 10200037 */ beqz $at, .L7F04DB0C /* 082560 7F04DA30 000F7880 */ sll $t7, $t7, 2 /* 082564 7F04DA34 3C018005 */ lui $at, %hi(jpt_80052D9C) /* 082568 7F04DA38 002F0821 */ addu $at, $at, $t7 /* 08256C 7F04DA3C 8C2F2D9C */ lw $t7, %lo(jpt_80052D9C)($at) /* 082570 7F04DA40 01E00008 */ jr $t7 /* 082574 7F04DA44 00000000 */ nop loc_CODE_7F04DA48: /* 082578 7F04DA48 8E110004 */ lw $s1, 4($s0) /* 08257C 7F04DA4C 02C02025 */ move $a0, $s6 /* 082580 7F04DA50 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 082584 7F04DA54 02002825 */ move $a1, $s0 /* 082588 7F04DA58 8C430004 */ lw $v1, 4($v0) /* 08258C 7F04DA5C 1060002B */ beqz $v1, .L7F04DB0C /* 082590 7F04DA60 00000000 */ nop /* 082594 7F04DA64 8E240000 */ lw $a0, ($s1) /* 082598 7F04DA68 00609825 */ move $s3, $v1 /* 08259C 7F04DA6C 14830005 */ bne $a0, $v1, .L7F04DA84 /* 0825A0 7F04DA70 00000000 */ nop /* 0825A4 7F04DA74 8E38001C */ lw $t8, 0x1c($s1) /* 0825A8 7F04DA78 0097C824 */ and $t9, $a0, $s7 /* 0825AC 7F04DA7C 10000001 */ b .L7F04DA84 /* 0825B0 7F04DA80 03199821 */ addu $s3, $t8, $t9 .L7F04DA84: /* 0825B4 7F04DA84 8E230004 */ lw $v1, 4($s1) /* 0825B8 7F04DA88 10600004 */ beqz $v1, .L7F04DA9C /* 0825BC 7F04DA8C 00000000 */ nop /* 0825C0 7F04DA90 8E28001C */ lw $t0, 0x1c($s1) /* 0825C4 7F04DA94 00774824 */ and $t1, $v1, $s7 /* 0825C8 7F04DA98 0109A821 */ addu $s5, $t0, $t1 .L7F04DA9C: /* 0825CC 7F04DA9C 1000001B */ b .L7F04DB0C /* 0825D0 7F04DAA0 8C5E0000 */ lw $fp, ($v0) loc_CODE_7F04DAA4: /* 0825D4 7F04DAA4 8E020004 */ lw $v0, 4($s0) /* 0825D8 7F04DAA8 8C440000 */ lw $a0, ($v0) /* 0825DC 7F04DAAC 10800017 */ beqz $a0, .L7F04DB0C /* 0825E0 7F04DAB0 00000000 */ nop /* 0825E4 7F04DAB4 8C450004 */ lw $a1, 4($v0) /* 0825E8 7F04DAB8 8C430008 */ lw $v1, 8($v0) /* 0825EC 7F04DABC 00975024 */ and $t2, $a0, $s7 /* 0825F0 7F04DAC0 10A00003 */ beqz $a1, .L7F04DAD0 /* 0825F4 7F04DAC4 006A9821 */ addu $s3, $v1, $t2 /* 0825F8 7F04DAC8 00B75824 */ and $t3, $a1, $s7 /* 0825FC 7F04DACC 006BA821 */ addu $s5, $v1, $t3 .L7F04DAD0: /* 082600 7F04DAD0 1000000E */ b .L7F04DB0C /* 082604 7F04DAD4 0060F025 */ move $fp, $v1 loc_CODE_7F04DAD8: /* 082608 7F04DAD8 02C02025 */ move $a0, $s6 /* 08260C 7F04DADC 0FC1BA5C */ jal sub_GAME_7F06E970 /* 082610 7F04DAE0 02002825 */ move $a1, $s0 /* 082614 7F04DAE4 10000009 */ b .L7F04DB0C /* 082618 7F04DAE8 00000000 */ nop loc_CODE_7F04DAEC: /* 08261C 7F04DAEC 02C02025 */ move $a0, $s6 /* 082620 7F04DAF0 0FC1BA6F */ jal process_12_handle_switch /* 082624 7F04DAF4 02002825 */ move $a1, $s0 /* 082628 7F04DAF8 10000004 */ b .L7F04DB0C /* 08262C 7F04DAFC 00000000 */ nop loc_CODE_7F04DB00: /* 082630 7F04DB00 02C02025 */ move $a0, $s6 /* 082634 7F04DB04 0FC1BA82 */ jal process_17_pointer_to_head /* 082638 7F04DB08 02002825 */ move $a1, $s0 def_7F04DA40: .L7F04DB0C: /* 08263C 7F04DB0C 12600043 */ beqz $s3, .L7F04DC1C /* 082640 7F04DB10 02002025 */ move $a0, $s0 /* 082644 7F04DB14 00002825 */ move $a1, $zero /* 082648 7F04DB18 0FC1B15C */ jal sub_GAME_7F06C570 /* 08264C 7F04DB1C 00008825 */ move $s1, $zero /* 082650 7F04DB20 04400004 */ bltz $v0, .L7F04DB34 /* 082654 7F04DB24 0040A025 */ move $s4, $v0 /* 082658 7F04DB28 8ECC000C */ lw $t4, 0xc($s6) /* 08265C 7F04DB2C 00026980 */ sll $t5, $v0, 6 /* 082660 7F04DB30 018D8821 */ addu $s1, $t4, $t5 .L7F04DB34: /* 082664 7F04DB34 12200029 */ beqz $s1, .L7F04DBDC /* 082668 7F04DB38 8FAE00D0 */ lw $t6, 0xd0($sp) /* 08266C 7F04DB3C 122E0027 */ beq $s1, $t6, .L7F04DBDC /* 082670 7F04DB40 02202025 */ move $a0, $s1 /* 082674 7F04DB44 AFB100D0 */ sw $s1, 0xd0($sp) /* 082678 7F04DB48 0FC167EE */ jal sub_GAME_7F059FB8 /* 08267C 7F04DB4C 27A50064 */ addiu $a1, $sp, 0x64 /* 082680 7F04DB50 8FAF0100 */ lw $t7, 0x100($sp) /* 082684 7F04DB54 27A40064 */ addiu $a0, $sp, 0x64 /* 082688 7F04DB58 27A500EC */ addiu $a1, $sp, 0xec /* 08268C 7F04DB5C C5E40000 */ lwc1 $f4, ($t7) /* 082690 7F04DB60 E7A400EC */ swc1 $f4, 0xec($sp) /* 082694 7F04DB64 C5E60004 */ lwc1 $f6, 4($t7) /* 082698 7F04DB68 E7A600F0 */ swc1 $f6, 0xf0($sp) /* 08269C 7F04DB6C C5E80008 */ lwc1 $f8, 8($t7) /* 0826A0 7F04DB70 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 0826A4 7F04DB74 E7A800F4 */ swc1 $f8, 0xf4($sp) /* 0826A8 7F04DB78 8FB80104 */ lw $t8, 0x104($sp) /* 0826AC 7F04DB7C 27A40064 */ addiu $a0, $sp, 0x64 /* 0826B0 7F04DB80 27A500D4 */ addiu $a1, $sp, 0xd4 /* 0826B4 7F04DB84 C70A0000 */ lwc1 $f10, ($t8) /* 0826B8 7F04DB88 E7AA00D4 */ swc1 $f10, 0xd4($sp) /* 0826BC 7F04DB8C C7100004 */ lwc1 $f16, 4($t8) /* 0826C0 7F04DB90 E7B000D8 */ swc1 $f16, 0xd8($sp) /* 0826C4 7F04DB94 C7120008 */ lwc1 $f18, 8($t8) /* 0826C8 7F04DB98 0FC160F6 */ jal matrix_4x4_rotate_vector_in_place /* 0826CC 7F04DB9C E7B200DC */ swc1 $f18, 0xdc($sp) /* 0826D0 7F04DBA0 C7A400D4 */ lwc1 $f4, 0xd4($sp) /* 0826D4 7F04DBA4 C7A800EC */ lwc1 $f8, 0xec($sp) /* 0826D8 7F04DBA8 C7B000D8 */ lwc1 $f16, 0xd8($sp) /* 0826DC 7F04DBAC 46142182 */ mul.s $f6, $f4, $f20 /* 0826E0 7F04DBB0 C7A400F0 */ lwc1 $f4, 0xf0($sp) /* 0826E4 7F04DBB4 46148482 */ mul.s $f18, $f16, $f20 /* 0826E8 7F04DBB8 C7B000F4 */ lwc1 $f16, 0xf4($sp) /* 0826EC 7F04DBBC 46083280 */ add.s $f10, $f6, $f8 /* 0826F0 7F04DBC0 C7A800DC */ lwc1 $f8, 0xdc($sp) /* 0826F4 7F04DBC4 46049180 */ add.s $f6, $f18, $f4 /* 0826F8 7F04DBC8 E7AA00E0 */ swc1 $f10, 0xe0($sp) /* 0826FC 7F04DBCC 46144282 */ mul.s $f10, $f8, $f20 /* 082700 7F04DBD0 E7A600E4 */ swc1 $f6, 0xe4($sp) /* 082704 7F04DBD4 46105480 */ add.s $f18, $f10, $f16 /* 082708 7F04DBD8 E7B200E8 */ swc1 $f18, 0xe8($sp) .L7F04DBDC: /* 08270C 7F04DBDC 8FB90108 */ lw $t9, 0x108($sp) /* 082710 7F04DBE0 27A400EC */ addiu $a0, $sp, 0xec /* 082714 7F04DBE4 27A500E0 */ addiu $a1, $sp, 0xe0 /* 082718 7F04DBE8 27A600D4 */ addiu $a2, $sp, 0xd4 /* 08271C 7F04DBEC 02603825 */ move $a3, $s3 /* 082720 7F04DBF0 AFB50010 */ sw $s5, 0x10($sp) /* 082724 7F04DBF4 AFBE0014 */ sw $fp, 0x14($sp) /* 082728 7F04DBF8 0FC1345B */ jal sub_GAME_7F04D16C /* 08272C 7F04DBFC AFB90018 */ sw $t9, 0x18($sp) /* 082730 7F04DC00 10400006 */ beqz $v0, .L7F04DC1C /* 082734 7F04DC04 8FA8010C */ lw $t0, 0x10c($sp) /* 082738 7F04DC08 AD140000 */ sw $s4, ($t0) /* 08273C 7F04DC0C 8FA90110 */ lw $t1, 0x110($sp) /* 082740 7F04DC10 240A0001 */ li $t2, 1 /* 082744 7F04DC14 AD300000 */ sw $s0, ($t1) /* 082748 7F04DC18 AFAA00CC */ sw $t2, 0xcc($sp) .L7F04DC1C: /* 08274C 7F04DC1C 8E020014 */ lw $v0, 0x14($s0) /* 082750 7F04DC20 8FAB00CC */ lw $t3, 0xcc($sp) /* 082754 7F04DC24 10400003 */ beqz $v0, .L7F04DC34 /* 082758 7F04DC28 00000000 */ nop /* 08275C 7F04DC2C 1000000F */ b .L7F04DC6C /* 082760 7F04DC30 00408025 */ move $s0, $v0 .L7F04DC34: /* 082764 7F04DC34 1200000D */ beqz $s0, .L7F04DC6C /* 082768 7F04DC38 00000000 */ nop .L7F04DC3C: /* 08276C 7F04DC3C 56120004 */ bnel $s0, $s2, .L7F04DC50 /* 082770 7F04DC40 8E02000C */ lw $v0, 0xc($s0) /* 082774 7F04DC44 10000009 */ b .L7F04DC6C /* 082778 7F04DC48 00008025 */ move $s0, $zero /* 08277C 7F04DC4C 8E02000C */ lw $v0, 0xc($s0) .L7F04DC50: /* 082780 7F04DC50 50400004 */ beql $v0, $zero, .L7F04DC64 /* 082784 7F04DC54 8E100008 */ lw $s0, 8($s0) /* 082788 7F04DC58 10000004 */ b .L7F04DC6C /* 08278C 7F04DC5C 00408025 */ move $s0, $v0 /* 082790 7F04DC60 8E100008 */ lw $s0, 8($s0) .L7F04DC64: /* 082794 7F04DC64 1600FFF5 */ bnez $s0, .L7F04DC3C /* 082798 7F04DC68 00000000 */ nop .L7F04DC6C: /* 08279C 7F04DC6C 52000004 */ beql $s0, $zero, .L7F04DC80 /* 0827A0 7F04DC70 8FBF0054 */ lw $ra, 0x54($sp) /* 0827A4 7F04DC74 5160FF68 */ beql $t3, $zero, .L7F04DA18 /* 0827A8 7F04DC78 96020000 */ lhu $v0, ($s0) .L7F04DC7C: /* 0827AC 7F04DC7C 8FBF0054 */ lw $ra, 0x54($sp) .L7F04DC80: /* 0827B0 7F04DC80 8FA200CC */ lw $v0, 0xcc($sp) /* 0827B4 7F04DC84 D7B40028 */ ldc1 $f20, 0x28($sp) /* 0827B8 7F04DC88 8FB00030 */ lw $s0, 0x30($sp) /* 0827BC 7F04DC8C 8FB10034 */ lw $s1, 0x34($sp) /* 0827C0 7F04DC90 8FB20038 */ lw $s2, 0x38($sp) /* 0827C4 7F04DC94 8FB3003C */ lw $s3, 0x3c($sp) /* 0827C8 7F04DC98 8FB40040 */ lw $s4, 0x40($sp) /* 0827CC 7F04DC9C 8FB50044 */ lw $s5, 0x44($sp) /* 0827D0 7F04DCA0 8FB60048 */ lw $s6, 0x48($sp) /* 0827D4 7F04DCA4 8FB7004C */ lw $s7, 0x4c($sp) /* 0827D8 7F04DCA8 8FBE0050 */ lw $fp, 0x50($sp) /* 0827DC 7F04DCAC 03E00008 */ jr $ra /* 0827E0 7F04DCB0 27BD00F8 */ addiu $sp, $sp, 0xf8 ) #endif #ifdef NONMATCHING void sub_GAME_7F04DCB4(void) { } #else GLOBAL_ASM( .late_rodata /*hack, doesnt fit in own data above*/ .word destroyable_object .word destroyable_object .word destroyable_object .word destroyable_object .word destroyable_object .word nondestroyable_object .word destroyable_object .word nondestroyable_object .word destroyable_object .text glabel sub_GAME_7F04DCB4 /* 0827E4 7F04DCB4 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 0827E8 7F04DCB8 AFBF0034 */ sw $ra, 0x34($sp) /* 0827EC 7F04DCBC AFB00030 */ sw $s0, 0x30($sp) /* 0827F0 7F04DCC0 8C8E0010 */ lw $t6, 0x10($a0) /* 0827F4 7F04DCC4 00808025 */ move $s0, $a0 /* 0827F8 7F04DCC8 0FC1001E */ jal sub_GAME_7F040078 /* 0827FC 7F04DCCC AFAE003C */ sw $t6, 0x3c($sp) /* 082800 7F04DCD0 8FA4003C */ lw $a0, 0x3c($sp) /* 082804 7F04DCD4 00002825 */ move $a1, $zero /* 082808 7F04DCD8 0FC28333 */ jal sub_GAME_7F0A0CCC /* 08280C 7F04DCDC AFA20038 */ sw $v0, 0x38($sp) /* 082810 7F04DCE0 8FA4003C */ lw $a0, 0x3c($sp) /* 082814 7F04DCE4 0FC28333 */ jal sub_GAME_7F0A0CCC /* 082818 7F04DCE8 24050001 */ li $a1, 1 /* 08281C 7F04DCEC 8FA30038 */ lw $v1, 0x38($sp) /* 082820 7F04DCF0 26040058 */ addiu $a0, $s0, 0x58 /* 082824 7F04DCF4 26050018 */ addiu $a1, $s0, 0x18 /* 082828 7F04DCF8 C4640004 */ lwc1 $f4, 4($v1) /* 08282C 7F04DCFC 26060028 */ addiu $a2, $s0, 0x28 /* 082830 7F04DD00 26070038 */ addiu $a3, $s0, 0x38 /* 082834 7F04DD04 E7A40010 */ swc1 $f4, 0x10($sp) /* 082838 7F04DD08 C4660008 */ lwc1 $f6, 8($v1) /* 08283C 7F04DD0C E7A60014 */ swc1 $f6, 0x14($sp) /* 082840 7F04DD10 C468000C */ lwc1 $f8, 0xc($v1) /* 082844 7F04DD14 E7A80018 */ swc1 $f8, 0x18($sp) /* 082848 7F04DD18 C46A0010 */ lwc1 $f10, 0x10($v1) /* 08284C 7F04DD1C E7AA001C */ swc1 $f10, 0x1c($sp) /* 082850 7F04DD20 C4700014 */ lwc1 $f16, 0x14($v1) /* 082854 7F04DD24 E7B00020 */ swc1 $f16, 0x20($sp) /* 082858 7F04DD28 C4720018 */ lwc1 $f18, 0x18($v1) /* 08285C 7F04DD2C 0FC28768 */ jal sub_GAME_7F0A1DA0 /* 082860 7F04DD30 E7B20024 */ swc1 $f18, 0x24($sp) /* 082864 7F04DD34 8E0F0064 */ lw $t7, 0x64($s0) /* 082868 7F04DD38 92190002 */ lbu $t9, 2($s0) /* 08286C 7F04DD3C 44802000 */ mtc1 $zero, $f4 /* 082870 7F04DD40 35F80004 */ ori $t8, $t7, 4 /* 082874 7F04DD44 37280080 */ ori $t0, $t9, 0x80 /* 082878 7F04DD48 AE180064 */ sw $t8, 0x64($s0) /* 08287C 7F04DD4C A2080002 */ sb $t0, 2($s0) /* 082880 7F04DD50 E6040070 */ swc1 $f4, 0x70($s0) /* 082884 7F04DD54 8FBF0034 */ lw $ra, 0x34($sp) /* 082888 7F04DD58 8FB00030 */ lw $s0, 0x30($sp) /* 08288C 7F04DD5C 27BD0040 */ addiu $sp, $sp, 0x40 /* 082890 7F04DD60 03E00008 */ jr $ra /* 082894 7F04DD64 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04DD68(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04DD68 /* 082898 7F04DD68 27BDFF80 */ addiu $sp, $sp, -0x80 /* 08289C 7F04DD6C AFBF002C */ sw $ra, 0x2c($sp) /* 0828A0 7F04DD70 8C8E0010 */ lw $t6, 0x10($a0) /* 0828A4 7F04DD74 27A50030 */ addiu $a1, $sp, 0x30 /* 0828A8 7F04DD78 AFAE007C */ sw $t6, 0x7c($sp) /* 0828AC 7F04DD7C 8C830014 */ lw $v1, 0x14($a0) /* 0828B0 7F04DD80 8C6F0008 */ lw $t7, 8($v1) /* 0828B4 7F04DD84 8DF80008 */ lw $t8, 8($t7) /* 0828B8 7F04DD88 8F190008 */ lw $t9, 8($t8) /* 0828BC 7F04DD8C 8F220004 */ lw $v0, 4($t9) /* 0828C0 7F04DD90 AFA30078 */ sw $v1, 0x78($sp) /* 0828C4 7F04DD94 0FC149BB */ jal sub_GAME_7F0526EC /* 0828C8 7F04DD98 AFA20074 */ sw $v0, 0x74($sp) /* 0828CC 7F04DD9C 8FA20074 */ lw $v0, 0x74($sp) /* 0828D0 7F04DDA0 27A40060 */ addiu $a0, $sp, 0x60 /* 0828D4 7F04DDA4 27A50030 */ addiu $a1, $sp, 0x30 /* 0828D8 7F04DDA8 C4440004 */ lwc1 $f4, 4($v0) /* 0828DC 7F04DDAC 27A60040 */ addiu $a2, $sp, 0x40 /* 0828E0 7F04DDB0 27A70050 */ addiu $a3, $sp, 0x50 /* 0828E4 7F04DDB4 E7A40010 */ swc1 $f4, 0x10($sp) /* 0828E8 7F04DDB8 C4460008 */ lwc1 $f6, 8($v0) /* 0828EC 7F04DDBC E7A60014 */ swc1 $f6, 0x14($sp) /* 0828F0 7F04DDC0 C448000C */ lwc1 $f8, 0xc($v0) /* 0828F4 7F04DDC4 E7A80018 */ swc1 $f8, 0x18($sp) /* 0828F8 7F04DDC8 C44A0010 */ lwc1 $f10, 0x10($v0) /* 0828FC 7F04DDCC E7AA001C */ swc1 $f10, 0x1c($sp) /* 082900 7F04DDD0 C4500014 */ lwc1 $f16, 0x14($v0) /* 082904 7F04DDD4 E7B00020 */ swc1 $f16, 0x20($sp) /* 082908 7F04DDD8 C4520018 */ lwc1 $f18, 0x18($v0) /* 08290C 7F04DDDC 0FC28768 */ jal sub_GAME_7F0A1DA0 /* 082910 7F04DDE0 E7B20024 */ swc1 $f18, 0x24($sp) /* 082914 7F04DDE4 8FA4007C */ lw $a0, 0x7c($sp) /* 082918 7F04DDE8 0FC28333 */ jal sub_GAME_7F0A0CCC /* 08291C 7F04DDEC 24050001 */ li $a1, 1 /* 082920 7F04DDF0 8FA40078 */ lw $a0, 0x78($sp) /* 082924 7F04DDF4 8C880008 */ lw $t0, 8($a0) /* 082928 7F04DDF8 8D090008 */ lw $t1, 8($t0) /* 08292C 7F04DDFC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 082930 7F04DE00 8D250004 */ lw $a1, 4($t1) /* 082934 7F04DE04 AC400000 */ sw $zero, ($v0) /* 082938 7F04DE08 8FBF002C */ lw $ra, 0x2c($sp) /* 08293C 7F04DE0C 27BD0080 */ addiu $sp, $sp, 0x80 /* 082940 7F04DE10 03E00008 */ jr $ra /* 082944 7F04DE14 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04DE18(void) { } #else GLOBAL_ASM( .late_rodata /*hack, part of check_if_collectable_object*/ /*D:80052EAC*/ glabel jpt_80052EAC .word collectable_object .word notcollectable_object .word notcollectable_object .word collectable_object .word collectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word notcollectable_object .word collectable_object .word notcollectable_object .word notcollectable_object .word collectable_object .word collectable_object .text glabel sub_GAME_7F04DE18 /* 082948 7F04DE18 27BDFF68 */ addiu $sp, $sp, -0x98 /* 08294C 7F04DE1C AFBF0034 */ sw $ra, 0x34($sp) /* 082950 7F04DE20 AFB00030 */ sw $s0, 0x30($sp) /* 082954 7F04DE24 8C8E0010 */ lw $t6, 0x10($a0) /* 082958 7F04DE28 AFAE0094 */ sw $t6, 0x94($sp) /* 08295C 7F04DE2C 91D80001 */ lbu $t8, 1($t6) /* 082960 7F04DE30 8C900014 */ lw $s0, 0x14($a0) /* 082964 7F04DE34 33190002 */ andi $t9, $t8, 2 /* 082968 7F04DE38 53200023 */ beql $t9, $zero, .L7F04DEC8 /* 08296C 7F04DE3C 8FA40094 */ lw $a0, 0x94($sp) /* 082970 7F04DE40 8E080008 */ lw $t0, 8($s0) /* 082974 7F04DE44 02002025 */ move $a0, $s0 /* 082978 7F04DE48 00003025 */ move $a2, $zero /* 08297C 7F04DE4C 8D020008 */ lw $v0, 8($t0) /* 082980 7F04DE50 8C490008 */ lw $t1, 8($v0) /* 082984 7F04DE54 8C450004 */ lw $a1, 4($v0) /* 082988 7F04DE58 8D230004 */ lw $v1, 4($t1) /* 08298C 7F04DE5C 0FC1B198 */ jal sub_GAME_7F06C660 /* 082990 7F04DE60 AFA30088 */ sw $v1, 0x88($sp) /* 082994 7F04DE64 0FC1E111 */ jal sub_GAME_7F078444 /* 082998 7F04DE68 AFA20084 */ sw $v0, 0x84($sp) /* 08299C 7F04DE6C 00402025 */ move $a0, $v0 /* 0829A0 7F04DE70 8FA50084 */ lw $a1, 0x84($sp) /* 0829A4 7F04DE74 0FC16063 */ jal matrix_4x4_multiply_homogeneous /* 0829A8 7F04DE78 27A60044 */ addiu $a2, $sp, 0x44 /* 0829AC 7F04DE7C 8FA30088 */ lw $v1, 0x88($sp) /* 0829B0 7F04DE80 27A40074 */ addiu $a0, $sp, 0x74 /* 0829B4 7F04DE84 27A50044 */ addiu $a1, $sp, 0x44 /* 0829B8 7F04DE88 C4640004 */ lwc1 $f4, 4($v1) /* 0829BC 7F04DE8C 27A60054 */ addiu $a2, $sp, 0x54 /* 0829C0 7F04DE90 27A70064 */ addiu $a3, $sp, 0x64 /* 0829C4 7F04DE94 E7A40010 */ swc1 $f4, 0x10($sp) /* 0829C8 7F04DE98 C4660008 */ lwc1 $f6, 8($v1) /* 0829CC 7F04DE9C E7A60014 */ swc1 $f6, 0x14($sp) /* 0829D0 7F04DEA0 C468000C */ lwc1 $f8, 0xc($v1) /* 0829D4 7F04DEA4 E7A80018 */ swc1 $f8, 0x18($sp) /* 0829D8 7F04DEA8 C46A0010 */ lwc1 $f10, 0x10($v1) /* 0829DC 7F04DEAC E7AA001C */ swc1 $f10, 0x1c($sp) /* 0829E0 7F04DEB0 C4700014 */ lwc1 $f16, 0x14($v1) /* 0829E4 7F04DEB4 E7B00020 */ swc1 $f16, 0x20($sp) /* 0829E8 7F04DEB8 C4720018 */ lwc1 $f18, 0x18($v1) /* 0829EC 7F04DEBC 0FC28768 */ jal sub_GAME_7F0A1DA0 /* 0829F0 7F04DEC0 E7B20024 */ swc1 $f18, 0x24($sp) /* 0829F4 7F04DEC4 8FA40094 */ lw $a0, 0x94($sp) .L7F04DEC8: /* 0829F8 7F04DEC8 0FC28333 */ jal sub_GAME_7F0A0CCC /* 0829FC 7F04DECC 24050001 */ li $a1, 1 /* 082A00 7F04DED0 8E0A0008 */ lw $t2, 8($s0) /* 082A04 7F04DED4 02002025 */ move $a0, $s0 /* 082A08 7F04DED8 8D4B0008 */ lw $t3, 8($t2) /* 082A0C 7F04DEDC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 082A10 7F04DEE0 8D65000C */ lw $a1, 0xc($t3) /* 082A14 7F04DEE4 AC400000 */ sw $zero, ($v0) /* 082A18 7F04DEE8 8FBF0034 */ lw $ra, 0x34($sp) /* 082A1C 7F04DEEC 8FB00030 */ lw $s0, 0x30($sp) /* 082A20 7F04DEF0 27BD0098 */ addiu $sp, $sp, 0x98 /* 082A24 7F04DEF4 03E00008 */ jr $ra /* 082A28 7F04DEF8 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04DEFC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04DEFC /* 082A2C 7F04DEFC 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 082A30 7F04DF00 AFBF003C */ sw $ra, 0x3c($sp) /* 082A34 7F04DF04 AFB40038 */ sw $s4, 0x38($sp) /* 082A38 7F04DF08 AFB30034 */ sw $s3, 0x34($sp) /* 082A3C 7F04DF0C AFB20030 */ sw $s2, 0x30($sp) /* 082A40 7F04DF10 AFB1002C */ sw $s1, 0x2c($sp) /* 082A44 7F04DF14 AFB00028 */ sw $s0, 0x28($sp) /* 082A48 7F04DF18 F7B40020 */ sdc1 $f20, 0x20($sp) /* 082A4C 7F04DF1C AFA40040 */ sw $a0, 0x40($sp) /* 082A50 7F04DF20 8C820004 */ lw $v0, 4($a0) /* 082A54 7F04DF24 8FB20050 */ lw $s2, 0x50($sp) /* 082A58 7F04DF28 3C01FFF9 */ lui $at, (0xFFF9FFFF >> 16) # lui $at, 0xfff9 /* 082A5C 7F04DF2C 8C4F0064 */ lw $t7, 0x64($v0) /* 082A60 7F04DF30 3421FFFF */ ori $at, (0xFFF9FFFF & 0xFFFF) # ori $at, $at, 0xffff /* 082A64 7F04DF34 00124440 */ sll $t0, $s2, 0x11 /* 082A68 7F04DF38 01E1C024 */ and $t8, $t7, $at /* 082A6C 7F04DF3C 03084825 */ or $t1, $t8, $t0 /* 082A70 7F04DF40 4485A000 */ mtc1 $a1, $f20 /* 082A74 7F04DF44 00095B00 */ sll $t3, $t1, 0xc /* 082A78 7F04DF48 AC580064 */ sw $t8, 0x64($v0) /* 082A7C 7F04DF4C 00C09825 */ move $s3, $a2 /* 082A80 7F04DF50 00E0A025 */ move $s4, $a3 /* 082A84 7F04DF54 05600015 */ bltz $t3, .L7F04DFAC /* 082A88 7F04DF58 AC490064 */ sw $t1, 0x64($v0) /* 082A8C 7F04DF5C 8FAC0040 */ lw $t4, 0x40($sp) /* 082A90 7F04DF60 8D900020 */ lw $s0, 0x20($t4) /* 082A94 7F04DF64 5200000B */ beql $s0, $zero, .L7F04DF94 /* 082A98 7F04DF68 8FAD0040 */ lw $t5, 0x40($sp) .L7F04DF6C: /* 082A9C 7F04DF6C 8E110024 */ lw $s1, 0x24($s0) /* 082AA0 7F04DF70 4405A000 */ mfc1 $a1, $f20 /* 082AA4 7F04DF74 AFB20010 */ sw $s2, 0x10($sp) /* 082AA8 7F04DF78 02002025 */ move $a0, $s0 /* 082AAC 7F04DF7C 02603025 */ move $a2, $s3 /* 082AB0 7F04DF80 0FC137BF */ jal sub_GAME_7F04DEFC /* 082AB4 7F04DF84 02803825 */ move $a3, $s4 /* 082AB8 7F04DF88 1620FFF8 */ bnez $s1, .L7F04DF6C /* 082ABC 7F04DF8C 02208025 */ move $s0, $s1 /* 082AC0 7F04DF90 8FAD0040 */ lw $t5, 0x40($sp) .L7F04DF94: /* 082AC4 7F04DF94 4405A000 */ mfc1 $a1, $f20 /* 082AC8 7F04DF98 02603025 */ move $a2, $s3 /* 082ACC 7F04DF9C 8DA40004 */ lw $a0, 4($t5) /* 082AD0 7F04DFA0 AFB20010 */ sw $s2, 0x10($sp) /* 082AD4 7F04DFA4 0FC13842 */ jal maybe_detonate_object /* 082AD8 7F04DFA8 02803825 */ move $a3, $s4 .L7F04DFAC: /* 082ADC 7F04DFAC 8FBF003C */ lw $ra, 0x3c($sp) /* 082AE0 7F04DFB0 D7B40020 */ ldc1 $f20, 0x20($sp) /* 082AE4 7F04DFB4 8FB00028 */ lw $s0, 0x28($sp) /* 082AE8 7F04DFB8 8FB1002C */ lw $s1, 0x2c($sp) /* 082AEC 7F04DFBC 8FB20030 */ lw $s2, 0x30($sp) /* 082AF0 7F04DFC0 8FB30034 */ lw $s3, 0x34($sp) /* 082AF4 7F04DFC4 8FB40038 */ lw $s4, 0x38($sp) /* 082AF8 7F04DFC8 03E00008 */ jr $ra /* 082AFC 7F04DFCC 27BD0040 */ addiu $sp, $sp, 0x40 ) #endif #ifdef NONMATCHING void check_if_destroyable_object_type(void) { } #else GLOBAL_ASM( .late_rodata .text glabel check_if_destroyable_object_type /* 082B00 7F04DFD0 908E0003 */ lbu $t6, 3($a0) /* 082B04 7F04DFD4 25CFFFFF */ addiu $t7, $t6, -1 /* 082B08 7F04DFD8 2DE1002F */ sltiu $at, $t7, 0x2f /* 082B0C 7F04DFDC 10200008 */ beqz $at, .L7F04E000 /* 082B10 7F04DFE0 000F7880 */ sll $t7, $t7, 2 /* 082B14 7F04DFE4 3C018005 */ lui $at, %hi(jpt_80052DF0) /* 082B18 7F04DFE8 002F0821 */ addu $at, $at, $t7 /* 082B1C 7F04DFEC 8C2F2DF0 */ lw $t7, %lo(jpt_80052DF0)($at) /* 082B20 7F04DFF0 01E00008 */ jr $t7 /* 082B24 7F04DFF4 00000000 */ nop destroyable_object: /* 082B28 7F04DFF8 03E00008 */ jr $ra /* 082B2C 7F04DFFC 24020001 */ li $v0, 1 nondestroyable_object: .L7F04E000: /* 082B30 7F04E000 00001025 */ move $v0, $zero /* 082B34 7F04E004 03E00008 */ jr $ra /* 082B38 7F04E008 00000000 */ nop ) #endif #ifdef NONMATCHING void check_if_collectable_object(void) { } #else GLOBAL_ASM( .text glabel check_if_collectable_object /* 082B3C 7F04E00C 908E0003 */ lbu $t6, 3($a0) /* 082B40 7F04E010 25CFFFFC */ addiu $t7, $t6, -4 /* 082B44 7F04E014 2DE10012 */ sltiu $at, $t7, 0x12 /* 082B48 7F04E018 10200008 */ beqz $at, .L7F04E03C /* 082B4C 7F04E01C 000F7880 */ sll $t7, $t7, 2 /* 082B50 7F04E020 3C018005 */ lui $at, %hi(jpt_80052EAC) /* 082B54 7F04E024 002F0821 */ addu $at, $at, $t7 /* 082B58 7F04E028 8C2F2EAC */ lw $t7, %lo(jpt_80052EAC)($at) /* 082B5C 7F04E02C 01E00008 */ jr $t7 /* 082B60 7F04E030 00000000 */ nop collectable_object: /* 082B64 7F04E034 03E00008 */ jr $ra /* 082B68 7F04E038 24020001 */ li $v0, 1 notcollectable_object: .L7F04E03C: /* 082B6C 7F04E03C 00001025 */ move $v0, $zero /* 082B70 7F04E040 03E00008 */ jr $ra /* 082B74 7F04E044 00000000 */ nop ) #endif #ifdef NONMATCHING void check_if_destroyable_not_invincible(void) { } #else GLOBAL_ASM( .text glabel check_if_destroyable_not_invincible /* 082B78 7F04E048 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 082B7C 7F04E04C AFBF0014 */ sw $ra, 0x14($sp) /* 082B80 7F04E050 908E0003 */ lbu $t6, 3($a0) /* 082B84 7F04E054 24010001 */ li $at, 1 /* 082B88 7F04E058 15C10003 */ bne $t6, $at, .L7F04E068 /* 082B8C 7F04E05C 00000000 */ nop /* 082B90 7F04E060 10000016 */ b .L7F04E0BC /* 082B94 7F04E064 00001025 */ move $v0, $zero .L7F04E068: /* 082B98 7F04E068 0FC13803 */ jal check_if_collectable_object /* 082B9C 7F04E06C AFA40018 */ sw $a0, 0x18($sp) /* 082BA0 7F04E070 1040000B */ beqz $v0, .L7F04E0A0 /* 082BA4 7F04E074 8FA40018 */ lw $a0, 0x18($sp) /* 082BA8 7F04E078 908F0003 */ lbu $t7, 3($a0) /* 082BAC 7F04E07C 24010015 */ li $at, 21 /* 082BB0 7F04E080 51E10008 */ beql $t7, $at, .L7F04E0A4 /* 082BB4 7F04E084 8C880008 */ lw $t0, 8($a0) /* 082BB8 7F04E088 8C980008 */ lw $t8, 8($a0) /* 082BBC 7F04E08C 0018CBC0 */ sll $t9, $t8, 0xf /* 082BC0 7F04E090 0722000A */ bltzl $t9, .L7F04E0BC /* 082BC4 7F04E094 24020001 */ li $v0, 1 /* 082BC8 7F04E098 10000008 */ b .L7F04E0BC /* 082BCC 7F04E09C 00001025 */ move $v0, $zero .L7F04E0A0: /* 082BD0 7F04E0A0 8C880008 */ lw $t0, 8($a0) .L7F04E0A4: /* 082BD4 7F04E0A4 00084B80 */ sll $t1, $t0, 0xe /* 082BD8 7F04E0A8 05230004 */ bgezl $t1, .L7F04E0BC /* 082BDC 7F04E0AC 24020001 */ li $v0, 1 /* 082BE0 7F04E0B0 10000002 */ b .L7F04E0BC /* 082BE4 7F04E0B4 00001025 */ move $v0, $zero /* 082BE8 7F04E0B8 24020001 */ li $v0, 1 .L7F04E0BC: /* 082BEC 7F04E0BC 8FBF0014 */ lw $ra, 0x14($sp) /* 082BF0 7F04E0C0 27BD0018 */ addiu $sp, $sp, 0x18 /* 082BF4 7F04E0C4 03E00008 */ jr $ra /* 082BF8 7F04E0C8 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04E0CC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04E0CC /* 082BFC 7F04E0CC 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 082C00 7F04E0D0 AFBF001C */ sw $ra, 0x1c($sp) /* 082C04 7F04E0D4 8C8E000C */ lw $t6, 0xc($a0) /* 082C08 7F04E0D8 44856000 */ mtc1 $a1, $f12 /* 082C0C 7F04E0DC 8FB80030 */ lw $t8, 0x30($sp) /* 082C10 7F04E0E0 31CF4000 */ andi $t7, $t6, 0x4000 /* 082C14 7F04E0E4 55E00005 */ bnezl $t7, .L7F04E0FC /* 082C18 7F04E0E8 8FBF001C */ lw $ra, 0x1c($sp) /* 082C1C 7F04E0EC 44056000 */ mfc1 $a1, $f12 /* 082C20 7F04E0F0 0FC13842 */ jal maybe_detonate_object /* 082C24 7F04E0F4 AFB80010 */ sw $t8, 0x10($sp) /* 082C28 7F04E0F8 8FBF001C */ lw $ra, 0x1c($sp) .L7F04E0FC: /* 082C2C 7F04E0FC 27BD0020 */ addiu $sp, $sp, 0x20 /* 082C30 7F04E100 03E00008 */ jr $ra /* 082C34 7F04E104 00000000 */ nop ) #endif #ifdef NONMATCHING void maybe_detonate_object(void) { } #else GLOBAL_ASM( .text glabel maybe_detonate_object /* 082C38 7F04E108 27BDFF20 */ addiu $sp, $sp, -0xe0 /* 082C3C 7F04E10C AFBF001C */ sw $ra, 0x1c($sp) /* 082C40 7F04E110 AFB00018 */ sw $s0, 0x18($sp) /* 082C44 7F04E114 AFA600E8 */ sw $a2, 0xe8($sp) /* 082C48 7F04E118 AFA700EC */ sw $a3, 0xec($sp) /* 082C4C 7F04E11C 8C8E0064 */ lw $t6, 0x64($a0) /* 082C50 7F04E120 3C01FFF9 */ lui $at, (0xFFF9FFFF >> 16) # lui $at, 0xfff9 /* 082C54 7F04E124 3421FFFF */ ori $at, (0xFFF9FFFF & 0xFFFF) # ori $at, $at, 0xffff /* 082C58 7F04E128 01C17824 */ and $t7, $t6, $at /* 082C5C 7F04E12C AC8F0064 */ sw $t7, 0x64($a0) /* 082C60 7F04E130 8FB900F0 */ lw $t9, 0xf0($sp) /* 082C64 7F04E134 908B0003 */ lbu $t3, 3($a0) /* 082C68 7F04E138 44856000 */ mtc1 $a1, $f12 /* 082C6C 7F04E13C 00194C40 */ sll $t1, $t9, 0x11 /* 082C70 7F04E140 01E95025 */ or $t2, $t7, $t1 /* 082C74 7F04E144 24010024 */ li $at, 36 /* 082C78 7F04E148 00808025 */ move $s0, $a0 /* 082C7C 7F04E14C 15610006 */ bne $t3, $at, .L7F04E168 /* 082C80 7F04E150 AC8A0064 */ sw $t2, 0x64($a0) /* 082C84 7F04E154 0FC0FFF0 */ jal do_something_if_object_destroyed /* 082C88 7F04E158 E7AC00E4 */ swc1 $f12, 0xe4($sp) /* 082C8C 7F04E15C 24010001 */ li $at, 1 /* 082C90 7F04E160 1041016A */ beq $v0, $at, .L7F04E70C /* 082C94 7F04E164 C7AC00E4 */ lwc1 $f12, 0xe4($sp) .L7F04E168: /* 082C98 7F04E168 8FAC00EC */ lw $t4, 0xec($sp) /* 082C9C 7F04E16C 02002025 */ move $a0, $s0 /* 082CA0 7F04E170 55800012 */ bnezl $t4, .L7F04E1BC /* 082CA4 7F04E174 8E030008 */ lw $v1, 8($s0) /* 082CA8 7F04E178 0FC13803 */ jal check_if_collectable_object /* 082CAC 7F04E17C E7AC00E4 */ swc1 $f12, 0xe4($sp) /* 082CB0 7F04E180 10400007 */ beqz $v0, .L7F04E1A0 /* 082CB4 7F04E184 C7AC00E4 */ lwc1 $f12, 0xe4($sp) /* 082CB8 7F04E188 8E0D0008 */ lw $t5, 8($s0) /* 082CBC 7F04E18C 000D7200 */ sll $t6, $t5, 8 /* 082CC0 7F04E190 05C20045 */ bltzl $t6, .L7F04E2A8 /* 082CC4 7F04E194 02002025 */ move $a0, $s0 /* 082CC8 7F04E198 1000015D */ b .L7F04E710 /* 082CCC 7F04E19C 8FBF001C */ lw $ra, 0x1c($sp) .L7F04E1A0: /* 082CD0 7F04E1A0 8E0F0008 */ lw $t7, 8($s0) /* 082CD4 7F04E1A4 000FC9C0 */ sll $t9, $t7, 7 /* 082CD8 7F04E1A8 0723003F */ bgezl $t9, .L7F04E2A8 /* 082CDC 7F04E1AC 02002025 */ move $a0, $s0 /* 082CE0 7F04E1B0 10000157 */ b .L7F04E710 /* 082CE4 7F04E1B4 8FBF001C */ lw $ra, 0x1c($sp) /* 082CE8 7F04E1B8 8E030008 */ lw $v1, 8($s0) .L7F04E1BC: /* 082CEC 7F04E1BC 0003C380 */ sll $t8, $v1, 0xe /* 082CF0 7F04E1C0 07020153 */ bltzl $t8, .L7F04E710 /* 082CF4 7F04E1C4 8FBF001C */ lw $ra, 0x1c($sp) /* 082CF8 7F04E1C8 92020003 */ lbu $v0, 3($s0) /* 082CFC 7F04E1CC 24050008 */ li $a1, 8 /* 082D00 7F04E1D0 24040007 */ li $a0, 7 /* 082D04 7F04E1D4 14A20015 */ bne $a1, $v0, .L7F04E22C /* 082D08 7F04E1D8 00000000 */ nop /* 082D0C 7F04E1DC 82020080 */ lb $v0, 0x80($s0) /* 082D10 7F04E1E0 2401001A */ li $at, 26 /* 082D14 7F04E1E4 1041000F */ beq $v0, $at, .L7F04E224 /* 082D18 7F04E1E8 2401001B */ li $at, 27 /* 082D1C 7F04E1EC 1041000D */ beq $v0, $at, .L7F04E224 /* 082D20 7F04E1F0 2401001D */ li $at, 29 /* 082D24 7F04E1F4 1041000B */ beq $v0, $at, .L7F04E224 /* 082D28 7F04E1F8 2401001C */ li $at, 28 /* 082D2C 7F04E1FC 10410009 */ beq $v0, $at, .L7F04E224 /* 082D30 7F04E200 24010056 */ li $at, 86 /* 082D34 7F04E204 10410007 */ beq $v0, $at, .L7F04E224 /* 082D38 7F04E208 24010057 */ li $at, 87 /* 082D3C 7F04E20C 10410005 */ beq $v0, $at, .L7F04E224 /* 082D40 7F04E210 24010021 */ li $at, 33 /* 082D44 7F04E214 10410003 */ beq $v0, $at, .L7F04E224 /* 082D48 7F04E218 24010022 */ li $at, 34 /* 082D4C 7F04E21C 5441013C */ bnel $v0, $at, .L7F04E710 /* 082D50 7F04E220 8FBF001C */ lw $ra, 0x1c($sp) .L7F04E224: /* 082D54 7F04E224 10000139 */ b .L7F04E70C /* 082D58 7F04E228 A6000082 */ sh $zero, 0x82($s0) .L7F04E22C: /* 082D5C 7F04E22C 54820019 */ bnel $a0, $v0, .L7F04E294 /* 082D60 7F04E230 02002025 */ move $a0, $s0 /* 082D64 7F04E234 8E020080 */ lw $v0, 0x80($s0) /* 082D68 7F04E238 24010005 */ li $at, 5 /* 082D6C 7F04E23C 10410010 */ beq $v0, $at, .L7F04E280 /* 082D70 7F04E240 24010006 */ li $at, 6 /* 082D74 7F04E244 5041000F */ beql $v0, $at, .L7F04E284 /* 082D78 7F04E248 3C011000 */ lui $at, 0x1000 /* 082D7C 7F04E24C 5082000D */ beql $a0, $v0, .L7F04E284 /* 082D80 7F04E250 3C011000 */ lui $at, 0x1000 /* 082D84 7F04E254 10A2000A */ beq $a1, $v0, .L7F04E280 /* 082D88 7F04E258 24010009 */ li $at, 9 /* 082D8C 7F04E25C 10410008 */ beq $v0, $at, .L7F04E280 /* 082D90 7F04E260 2401000B */ li $at, 11 /* 082D94 7F04E264 10410006 */ beq $v0, $at, .L7F04E280 /* 082D98 7F04E268 2401000F */ li $at, 15 /* 082D9C 7F04E26C 10410004 */ beq $v0, $at, .L7F04E280 /* 082DA0 7F04E270 24010010 */ li $at, 16 /* 082DA4 7F04E274 10410002 */ beq $v0, $at, .L7F04E280 /* 082DA8 7F04E278 24010013 */ li $at, 19 /* 082DAC 7F04E27C 14410123 */ bne $v0, $at, .L7F04E70C .L7F04E280: /* 082DB0 7F04E280 3C011000 */ li $at, 0x10000000 # 0.000000 .L7F04E284: /* 082DB4 7F04E284 00614825 */ or $t1, $v1, $at /* 082DB8 7F04E288 10000120 */ b .L7F04E70C /* 082DBC 7F04E28C AE090008 */ sw $t1, 8($s0) /* 082DC0 7F04E290 02002025 */ move $a0, $s0 .L7F04E294: /* 082DC4 7F04E294 0FC13812 */ jal check_if_destroyable_not_invincible /* 082DC8 7F04E298 E7AC00E4 */ swc1 $f12, 0xe4($sp) /* 082DCC 7F04E29C 1040011B */ beqz $v0, .L7F04E70C /* 082DD0 7F04E2A0 C7AC00E4 */ lwc1 $f12, 0xe4($sp) /* 082DD4 7F04E2A4 02002025 */ move $a0, $s0 .L7F04E2A8: /* 082DD8 7F04E2A8 0FC0FFF0 */ jal do_something_if_object_destroyed /* 082DDC 7F04E2AC E7AC00E4 */ swc1 $f12, 0xe4($sp) /* 082DE0 7F04E2B0 14400008 */ bnez $v0, .L7F04E2D4 /* 082DE4 7F04E2B4 C7AC00E4 */ lwc1 $f12, 0xe4($sp) /* 082DE8 7F04E2B8 3C01437A */ li $at, 0x437A0000 # 250.000000 /* 082DEC 7F04E2BC 44813000 */ mtc1 $at, $f6 /* 082DF0 7F04E2C0 C6040070 */ lwc1 $f4, 0x70($s0) /* 082DF4 7F04E2C4 46066202 */ mul.s $f8, $f12, $f6 /* 082DF8 7F04E2C8 46082280 */ add.s $f10, $f4, $f8 /* 082DFC 7F04E2CC 1000001F */ b .L7F04E34C /* 082E00 7F04E2D0 E60A0070 */ swc1 $f10, 0x70($s0) .L7F04E2D4: /* 082E04 7F04E2D4 02002025 */ move $a0, $s0 /* 082E08 7F04E2D8 0FC0FFD8 */ jal sub_GAME_7F03FF60 /* 082E0C 7F04E2DC E7AC00E4 */ swc1 $f12, 0xe4($sp) /* 082E10 7F04E2E0 240B0004 */ li $t3, 4 /* 082E14 7F04E2E4 C7AC00E4 */ lwc1 $f12, 0xe4($sp) /* 082E18 7F04E2E8 04410004 */ bgez $v0, .L7F04E2FC /* 082E1C 7F04E2EC 304A0003 */ andi $t2, $v0, 3 /* 082E20 7F04E2F0 11400002 */ beqz $t2, .L7F04E2FC /* 082E24 7F04E2F4 00000000 */ nop /* 082E28 7F04E2F8 254AFFFC */ addiu $t2, $t2, -4 .L7F04E2FC: /* 082E2C 7F04E2FC 016A6023 */ subu $t4, $t3, $t2 /* 082E30 7F04E300 448C8000 */ mtc1 $t4, $f16 /* 082E34 7F04E304 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 082E38 7F04E308 46808020 */ cvt.s.w $f0, $f16 /* 082E3C 7F04E30C 460C003C */ c.lt.s $f0, $f12 /* 082E40 7F04E310 00000000 */ nop /* 082E44 7F04E314 45020004 */ bc1fl .L7F04E328 /* 082E48 7F04E318 44810000 */ mtc1 $at, $f0 /* 082E4C 7F04E31C 10000008 */ b .L7F04E340 /* 082E50 7F04E320 46000306 */ mov.s $f12, $f0 /* 082E54 7F04E324 44810000 */ mtc1 $at, $f0 .L7F04E328: /* 082E58 7F04E328 00000000 */ nop /* 082E5C 7F04E32C 4600603C */ c.lt.s $f12, $f0 /* 082E60 7F04E330 00000000 */ nop /* 082E64 7F04E334 45020003 */ bc1fl .L7F04E344 /* 082E68 7F04E338 C6120070 */ lwc1 $f18, 0x70($s0) /* 082E6C 7F04E33C 46000306 */ mov.s $f12, $f0 .L7F04E340: /* 082E70 7F04E340 C6120070 */ lwc1 $f18, 0x70($s0) .L7F04E344: /* 082E74 7F04E344 460C9180 */ add.s $f6, $f18, $f12 /* 082E78 7F04E348 E6060070 */ swc1 $f6, 0x70($s0) .L7F04E34C: /* 082E7C 7F04E34C 92020003 */ lbu $v0, 3($s0) /* 082E80 7F04E350 2401002A */ li $at, 42 /* 082E84 7F04E354 10410003 */ beq $v0, $at, .L7F04E364 /* 082E88 7F04E358 2401002F */ li $at, 47 /* 082E8C 7F04E35C 1441000B */ bne $v0, $at, .L7F04E38C /* 082E90 7F04E360 24050001 */ li $a1, 1 .L7F04E364: /* 082E94 7F04E364 C6040070 */ lwc1 $f4, 0x70($s0) /* 082E98 7F04E368 C6080074 */ lwc1 $f8, 0x74($s0) /* 082E9C 7F04E36C 4604403E */ c.le.s $f8, $f4 /* 082EA0 7F04E370 00000000 */ nop /* 082EA4 7F04E374 4502000D */ bc1fl .L7F04E3AC /* 082EA8 7F04E378 24010014 */ li $at, 20 /* 082EAC 7F04E37C 0FC1372D */ jal sub_GAME_7F04DCB4 /* 082EB0 7F04E380 02002025 */ move $a0, $s0 /* 082EB4 7F04E384 10000008 */ b .L7F04E3A8 /* 082EB8 7F04E388 92020003 */ lbu $v0, 3($s0) .L7F04E38C: /* 082EBC 7F04E38C 0FC12FF4 */ jal sub_GAME_7F04BFD0 /* 082EC0 7F04E390 8E040010 */ lw $a0, 0x10($s0) /* 082EC4 7F04E394 02002025 */ move $a0, $s0 /* 082EC8 7F04E398 8FA500E8 */ lw $a1, 0xe8($sp) /* 082ECC 7F04E39C 0FC13383 */ jal object_explosion_related /* 082ED0 7F04E3A0 8FA600F0 */ lw $a2, 0xf0($sp) /* 082ED4 7F04E3A4 92020003 */ lbu $v0, 3($s0) .L7F04E3A8: /* 082ED8 7F04E3A8 24010014 */ li $at, 20 .L7F04E3AC: /* 082EDC 7F04E3AC 54410065 */ bnel $v0, $at, .L7F04E544 /* 082EE0 7F04E3B0 92020003 */ lbu $v0, 3($s0) /* 082EE4 7F04E3B4 0FC0FFF0 */ jal do_something_if_object_destroyed /* 082EE8 7F04E3B8 02002025 */ move $a0, $s0 /* 082EEC 7F04E3BC 24010001 */ li $at, 1 /* 082EF0 7F04E3C0 54410060 */ bnel $v0, $at, .L7F04E544 /* 082EF4 7F04E3C4 92020003 */ lbu $v0, 3($s0) /* 082EF8 7F04E3C8 0C002914 */ jal get_random_value /* 082EFC 7F04E3CC 00000000 */ nop /* 082F00 7F04E3D0 2401000D */ li $at, 13 /* 082F04 7F04E3D4 0041001B */ divu $zero, $v0, $at /* 082F08 7F04E3D8 00002010 */ mfhi $a0 /* 082F0C 7F04E3DC 00802825 */ move $a1, $a0 /* 082F10 7F04E3E0 00000000 */ nop /* 082F14 7F04E3E4 00046880 */ sll $t5, $a0, 2 .L7F04E3E8: /* 082F18 7F04E3E8 020D1821 */ addu $v1, $s0, $t5 /* 082F1C 7F04E3EC 946E0082 */ lhu $t6, 0x82($v1) /* 082F20 7F04E3F0 59C0004E */ blezl $t6, .L7F04E52C /* 082F24 7F04E3F4 24840001 */ addiu $a0, $a0, 1 /* 082F28 7F04E3F8 946F0080 */ lhu $t7, 0x80($v1) /* 082F2C 7F04E3FC 3401FFFF */ li $at, 65535 /* 082F30 7F04E400 51E1004A */ beql $t7, $at, .L7F04E52C /* 082F34 7F04E404 24840001 */ addiu $a0, $a0, 1 /* 082F38 7F04E408 AFA30024 */ sw $v1, 0x24($sp) /* 082F3C 7F04E40C AFA400C4 */ sw $a0, 0xc4($sp) /* 082F40 7F04E410 0FC14634 */ jal sub_GAME_7F0518D0 /* 082F44 7F04E414 AFA500C8 */ sw $a1, 0xc8($sp) /* 082F48 7F04E418 8FA30024 */ lw $v1, 0x24($sp) /* 082F4C 7F04E41C 8FA400C4 */ lw $a0, 0xc4($sp) /* 082F50 7F04E420 8FA500C8 */ lw $a1, 0xc8($sp) /* 082F54 7F04E424 10400040 */ beqz $v0, .L7F04E528 /* 082F58 7F04E428 00403025 */ move $a2, $v0 /* 082F5C 7F04E42C 3C198003 */ lui $t9, %hi(blank_07_object) /* 082F60 7F04E430 27A8003C */ addiu $t0, $sp, 0x3c /* 082F64 7F04E434 27392094 */ addiu $t9, %lo(blank_07_object) # addiu $t9, $t9, 0x2094 /* 082F68 7F04E438 94670080 */ lhu $a3, 0x80($v1) /* 082F6C 7F04E43C 27290078 */ addiu $t1, $t9, 0x78 /* 082F70 7F04E440 01005825 */ move $t3, $t0 .L7F04E444: /* 082F74 7F04E444 8F210000 */ lw $at, ($t9) /* 082F78 7F04E448 2739000C */ addiu $t9, $t9, 0xc /* 082F7C 7F04E44C 256B000C */ addiu $t3, $t3, 0xc /* 082F80 7F04E450 AD61FFF4 */ sw $at, -0xc($t3) /* 082F84 7F04E454 8F21FFF8 */ lw $at, -8($t9) /* 082F88 7F04E458 AD61FFF8 */ sw $at, -8($t3) /* 082F8C 7F04E45C 8F21FFFC */ lw $at, -4($t9) /* 082F90 7F04E460 1729FFF8 */ bne $t9, $t1, .L7F04E444 /* 082F94 7F04E464 AD61FFFC */ sw $at, -4($t3) /* 082F98 7F04E468 8F210000 */ lw $at, ($t9) /* 082F9C 7F04E46C 01006825 */ move $t5, $t0 /* 082FA0 7F04E470 00407025 */ move $t6, $v0 /* 082FA4 7F04E474 AD610000 */ sw $at, ($t3) /* 082FA8 7F04E478 8F290004 */ lw $t1, 4($t9) /* 082FAC 7F04E47C 250C0078 */ addiu $t4, $t0, 0x78 /* 082FB0 7F04E480 0007C080 */ sll $t8, $a3, 2 /* 082FB4 7F04E484 AD690004 */ sw $t1, 4($t3) .L7F04E488: /* 082FB8 7F04E488 8DA10000 */ lw $at, ($t5) /* 082FBC 7F04E48C 25AD000C */ addiu $t5, $t5, 0xc /* 082FC0 7F04E490 25CE000C */ addiu $t6, $t6, 0xc /* 082FC4 7F04E494 ADC1FFF4 */ sw $at, -0xc($t6) /* 082FC8 7F04E498 8DA1FFF8 */ lw $at, -8($t5) /* 082FCC 7F04E49C ADC1FFF8 */ sw $at, -8($t6) /* 082FD0 7F04E4A0 8DA1FFFC */ lw $at, -4($t5) /* 082FD4 7F04E4A4 15ACFFF8 */ bne $t5, $t4, .L7F04E488 /* 082FD8 7F04E4A8 ADC1FFFC */ sw $at, -4($t6) /* 082FDC 7F04E4AC 8DA10000 */ lw $at, ($t5) /* 082FE0 7F04E4B0 24850001 */ addiu $a1, $a0, 1 /* 082FE4 7F04E4B4 00C02025 */ move $a0, $a2 /* 082FE8 7F04E4B8 ADC10000 */ sw $at, ($t6) /* 082FEC 7F04E4BC 8DAC0004 */ lw $t4, 4($t5) /* 082FF0 7F04E4C0 24010002 */ li $at, 2 /* 082FF4 7F04E4C4 0307C023 */ subu $t8, $t8, $a3 /* 082FF8 7F04E4C8 ADCC0004 */ sw $t4, 4($t6) /* 082FFC 7F04E4CC A4470004 */ sh $a3, 4($v0) /* 083000 7F04E4D0 14A10003 */ bne $a1, $at, .L7F04E4E0 /* 083004 7F04E4D4 AC450080 */ sw $a1, 0x80($v0) /* 083008 7F04E4D8 240F0001 */ li $t7, 1 /* 08300C 7F04E4DC AC4F0080 */ sw $t7, 0x80($v0) .L7F04E4E0: /* 083010 7F04E4E0 0018C080 */ sll $t8, $t8, 2 /* 083014 7F04E4E4 3C058004 */ lui $a1, %hi(PitemZ_entries) /* 083018 7F04E4E8 00B82821 */ addu $a1, $a1, $t8 /* 08301C 7F04E4EC 8CA5A228 */ lw $a1, %lo(PitemZ_entries)($a1) /* 083020 7F04E4F0 0FC101BE */ jal sub_GAME_7F0406F8 /* 083024 7F04E4F4 AFA600C0 */ sw $a2, 0xc0($sp) /* 083028 7F04E4F8 10400011 */ beqz $v0, .L7F04E540 /* 08302C 7F04E4FC 8FA600C0 */ lw $a2, 0xc0($sp) /* 083030 7F04E500 8CC40014 */ lw $a0, 0x14($a2) /* 083034 7F04E504 8C850014 */ lw $a1, 0x14($a0) /* 083038 7F04E508 0FC1B39E */ jal set_obj_instance_controller_scale /* 08303C 7F04E50C AFA600C0 */ sw $a2, 0xc0($sp) /* 083040 7F04E510 8FA600C0 */ lw $a2, 0xc0($sp) /* 083044 7F04E514 8E050010 */ lw $a1, 0x10($s0) /* 083048 7F04E518 0FC0E969 */ jal sub_GAME_7F03A5A4 /* 08304C 7F04E51C 8CC40010 */ lw $a0, 0x10($a2) /* 083050 7F04E520 10000008 */ b .L7F04E544 /* 083054 7F04E524 92020003 */ lbu $v0, 3($s0) .L7F04E528: /* 083058 7F04E528 24840001 */ addiu $a0, $a0, 1 .L7F04E52C: /* 08305C 7F04E52C 2401000D */ li $at, 13 /* 083060 7F04E530 0081001A */ div $zero, $a0, $at /* 083064 7F04E534 00002010 */ mfhi $a0 /* 083068 7F04E538 5485FFAB */ bnel $a0, $a1, .L7F04E3E8 /* 08306C 7F04E53C 00046880 */ sll $t5, $a0, 2 .L7F04E540: /* 083070 7F04E540 92020003 */ lbu $v0, 3($s0) .L7F04E544: /* 083074 7F04E544 2401000D */ li $at, 13 /* 083078 7F04E548 54410010 */ bnel $v0, $at, .L7F04E58C /* 08307C 7F04E54C 24010006 */ li $at, 6 /* 083080 7F04E550 8E190008 */ lw $t9, 8($s0) /* 083084 7F04E554 3C014000 */ lui $at, 0x4000 /* 083088 7F04E558 02002025 */ move $a0, $s0 /* 08308C 7F04E55C 03215825 */ or $t3, $t9, $at /* 083090 7F04E560 0FC0FFF0 */ jal do_something_if_object_destroyed /* 083094 7F04E564 AE0B0008 */ sw $t3, 8($s0) /* 083098 7F04E568 24010001 */ li $at, 1 /* 08309C 7F04E56C 14410057 */ bne $v0, $at, .L7F04E6CC /* 0830A0 7F04E570 00000000 */ nop /* 0830A4 7F04E574 8E0A0008 */ lw $t2, 8($s0) /* 0830A8 7F04E578 3C011000 */ lui $at, 0x1000 /* 0830AC 7F04E57C 01416025 */ or $t4, $t2, $at /* 0830B0 7F04E580 10000052 */ b .L7F04E6CC /* 0830B4 7F04E584 AE0C0008 */ sw $t4, 8($s0) /* 0830B8 7F04E588 24010006 */ li $at, 6 .L7F04E58C: /* 0830BC 7F04E58C 5441000C */ bnel $v0, $at, .L7F04E5C0 /* 0830C0 7F04E590 2401000A */ li $at, 10 /* 0830C4 7F04E594 0FC0FFF0 */ jal do_something_if_object_destroyed /* 0830C8 7F04E598 02002025 */ move $a0, $s0 /* 0830CC 7F04E59C 24010001 */ li $at, 1 /* 0830D0 7F04E5A0 1441004A */ bne $v0, $at, .L7F04E6CC /* 0830D4 7F04E5A4 00000000 */ nop /* 0830D8 7F04E5A8 8E0D0008 */ lw $t5, 8($s0) /* 0830DC 7F04E5AC 3C011000 */ lui $at, 0x1000 /* 0830E0 7F04E5B0 01A17025 */ or $t6, $t5, $at /* 0830E4 7F04E5B4 10000045 */ b .L7F04E6CC /* 0830E8 7F04E5B8 AE0E0008 */ sw $t6, 8($s0) /* 0830EC 7F04E5BC 2401000A */ li $at, 10 .L7F04E5C0: /* 0830F0 7F04E5C0 5441000C */ bnel $v0, $at, .L7F04E5F4 /* 0830F4 7F04E5C4 2401000B */ li $at, 11 /* 0830F8 7F04E5C8 0FC0FFF0 */ jal do_something_if_object_destroyed /* 0830FC 7F04E5CC 02002025 */ move $a0, $s0 /* 083100 7F04E5D0 24010001 */ li $at, 1 /* 083104 7F04E5D4 1441003D */ bne $v0, $at, .L7F04E6CC /* 083108 7F04E5D8 26040080 */ addiu $a0, $s0, 0x80 /* 08310C 7F04E5DC 3C058003 */ lui $a1, %hi(D_80031EE8) /* 083110 7F04E5E0 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 083114 7F04E5E4 24A51EE8 */ addiu $a1, %lo(D_80031EE8) # addiu $a1, $a1, 0x1ee8 /* 083118 7F04E5E8 10000038 */ b .L7F04E6CC /* 08311C 7F04E5EC 00000000 */ nop /* 083120 7F04E5F0 2401000B */ li $at, 11 .L7F04E5F4: /* 083124 7F04E5F4 54410018 */ bnel $v0, $at, .L7F04E658 /* 083128 7F04E5F8 24010024 */ li $at, 36 /* 08312C 7F04E5FC 0FC0FFF0 */ jal do_something_if_object_destroyed /* 083130 7F04E600 02002025 */ move $a0, $s0 /* 083134 7F04E604 24010001 */ li $at, 1 /* 083138 7F04E608 14410030 */ bne $v0, $at, .L7F04E6CC /* 08313C 7F04E60C 26040080 */ addiu $a0, $s0, 0x80 /* 083140 7F04E610 3C058003 */ lui $a1, %hi(D_80031EE8) /* 083144 7F04E614 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 083148 7F04E618 24A51EE8 */ addiu $a1, %lo(D_80031EE8) # addiu $a1, $a1, 0x1ee8 /* 08314C 7F04E61C 3C058003 */ lui $a1, %hi(D_80031EE8) /* 083150 7F04E620 24A51EE8 */ addiu $a1, %lo(D_80031EE8) # addiu $a1, $a1, 0x1ee8 /* 083154 7F04E624 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 083158 7F04E628 260400F4 */ addiu $a0, $s0, 0xf4 /* 08315C 7F04E62C 3C058003 */ lui $a1, %hi(D_80031EE8) /* 083160 7F04E630 24A51EE8 */ addiu $a1, %lo(D_80031EE8) # addiu $a1, $a1, 0x1ee8 /* 083164 7F04E634 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 083168 7F04E638 26040168 */ addiu $a0, $s0, 0x168 /* 08316C 7F04E63C 3C058003 */ lui $a1, %hi(D_80031EE8) /* 083170 7F04E640 24A51EE8 */ addiu $a1, %lo(D_80031EE8) # addiu $a1, $a1, 0x1ee8 /* 083174 7F04E644 0FC12723 */ jal save_ptr_monitor_ani_code_to_obj_ani_slot /* 083178 7F04E648 260401DC */ addiu $a0, $s0, 0x1dc /* 08317C 7F04E64C 1000001F */ b .L7F04E6CC /* 083180 7F04E650 00000000 */ nop /* 083184 7F04E654 24010024 */ li $at, 36 .L7F04E658: /* 083188 7F04E658 5441000B */ bnel $v0, $at, .L7F04E688 /* 08318C 7F04E65C 24010015 */ li $at, 21 /* 083190 7F04E660 0FC0FFF0 */ jal do_something_if_object_destroyed /* 083194 7F04E664 02002025 */ move $a0, $s0 /* 083198 7F04E668 24010001 */ li $at, 1 /* 08319C 7F04E66C 14410017 */ bne $v0, $at, .L7F04E6CC /* 0831A0 7F04E670 00000000 */ nop /* 0831A4 7F04E674 0FC15799 */ jal init_trigger_toxic_gas_effect /* 0831A8 7F04E678 26040058 */ addiu $a0, $s0, 0x58 /* 0831AC 7F04E67C 10000013 */ b .L7F04E6CC /* 0831B0 7F04E680 00000000 */ nop /* 0831B4 7F04E684 24010015 */ li $at, 21 .L7F04E688: /* 0831B8 7F04E688 14410010 */ bne $v0, $at, .L7F04E6CC /* 0831BC 7F04E68C 00000000 */ nop /* 0831C0 7F04E690 0FC0FFF0 */ jal do_something_if_object_destroyed /* 0831C4 7F04E694 02002025 */ move $a0, $s0 /* 0831C8 7F04E698 5440000A */ bnezl $v0, .L7F04E6C4 /* 0831CC 7F04E69C 44804000 */ mtc1 $zero, $f8 /* 0831D0 7F04E6A0 C6000074 */ lwc1 $f0, 0x74($s0) /* 0831D4 7F04E6A4 C6100070 */ lwc1 $f16, 0x70($s0) /* 0831D8 7F04E6A8 C60A0080 */ lwc1 $f10, 0x80($s0) /* 0831DC 7F04E6AC 46100481 */ sub.s $f18, $f0, $f16 /* 0831E0 7F04E6B0 46125182 */ mul.s $f6, $f10, $f18 /* 0831E4 7F04E6B4 46003103 */ div.s $f4, $f6, $f0 /* 0831E8 7F04E6B8 10000004 */ b .L7F04E6CC /* 0831EC 7F04E6BC E6040084 */ swc1 $f4, 0x84($s0) /* 0831F0 7F04E6C0 44804000 */ mtc1 $zero, $f8 .L7F04E6C4: /* 0831F4 7F04E6C4 00000000 */ nop /* 0831F8 7F04E6C8 E6080084 */ swc1 $f8, 0x84($s0) .L7F04E6CC: /* 0831FC 7F04E6CC 0FC0FFF0 */ jal do_something_if_object_destroyed /* 083200 7F04E6D0 02002025 */ move $a0, $s0 /* 083204 7F04E6D4 24010001 */ li $at, 1 /* 083208 7F04E6D8 5441000D */ bnel $v0, $at, .L7F04E710 /* 08320C 7F04E6DC 8FBF001C */ lw $ra, 0x1c($sp) /* 083210 7F04E6E0 8E0F0010 */ lw $t7, 0x10($s0) /* 083214 7F04E6E4 8DE40020 */ lw $a0, 0x20($t7) /* 083218 7F04E6E8 50800009 */ beql $a0, $zero, .L7F04E710 /* 08321C 7F04E6EC 8FBF001C */ lw $ra, 0x1c($sp) /* 083220 7F04E6F0 8C820024 */ lw $v0, 0x24($a0) .L7F04E6F4: /* 083224 7F04E6F4 24050001 */ li $a1, 1 /* 083228 7F04E6F8 0FC12FF4 */ jal sub_GAME_7F04BFD0 /* 08322C 7F04E6FC AFA20028 */ sw $v0, 0x28($sp) /* 083230 7F04E700 8FA40028 */ lw $a0, 0x28($sp) /* 083234 7F04E704 5480FFFB */ bnezl $a0, .L7F04E6F4 /* 083238 7F04E708 8C820024 */ lw $v0, 0x24($a0) .L7F04E70C: /* 08323C 7F04E70C 8FBF001C */ lw $ra, 0x1c($sp) .L7F04E710: /* 083240 7F04E710 8FB00018 */ lw $s0, 0x18($sp) /* 083244 7F04E714 27BD00E0 */ addiu $sp, $sp, 0xe0 /* 083248 7F04E718 03E00008 */ jr $ra /* 08324C 7F04E71C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04E720(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04E720 /* 083250 7F04E720 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 083254 7F04E724 AFBF004C */ sw $ra, 0x4c($sp) /* 083258 7F04E728 AFB50048 */ sw $s5, 0x48($sp) /* 08325C 7F04E72C AFB40044 */ sw $s4, 0x44($sp) /* 083260 7F04E730 AFB30040 */ sw $s3, 0x40($sp) /* 083264 7F04E734 AFB2003C */ sw $s2, 0x3c($sp) /* 083268 7F04E738 AFB10038 */ sw $s1, 0x38($sp) /* 08326C 7F04E73C AFB00034 */ sw $s0, 0x34($sp) /* 083270 7F04E740 AFA400C0 */ sw $a0, 0xc0($sp) /* 083274 7F04E744 8C950004 */ lw $s5, 4($a0) /* 083278 7F04E748 00A09825 */ move $s3, $a1 /* 08327C 7F04E74C 8EAF0064 */ lw $t7, 0x64($s5) /* 083280 7F04E750 31F81000 */ andi $t8, $t7, 0x1000 /* 083284 7F04E754 57000091 */ bnezl $t8, .L7F04E99C /* 083288 7F04E758 8FBF004C */ lw $ra, 0x4c($sp) /* 08328C 7F04E75C 90880001 */ lbu $t0, 1($a0) /* 083290 7F04E760 31090002 */ andi $t1, $t0, 2 /* 083294 7F04E764 5120008D */ beql $t1, $zero, .L7F04E99C /* 083298 7F04E768 8FBF004C */ lw $ra, 0x4c($sp) /* 08329C 7F04E76C 8C900020 */ lw $s0, 0x20($a0) /* 0832A0 7F04E770 52000008 */ beql $s0, $zero, .L7F04E794 /* 0832A4 7F04E774 8EB40014 */ lw $s4, 0x14($s5) .L7F04E778: /* 0832A8 7F04E778 8E110024 */ lw $s1, 0x24($s0) /* 0832AC 7F04E77C 02002025 */ move $a0, $s0 /* 0832B0 7F04E780 0FC139C8 */ jal sub_GAME_7F04E720 /* 0832B4 7F04E784 02602825 */ move $a1, $s3 /* 0832B8 7F04E788 1620FFFB */ bnez $s1, .L7F04E778 /* 0832BC 7F04E78C 02208025 */ move $s0, $s1 /* 0832C0 7F04E790 8EB40014 */ lw $s4, 0x14($s5) .L7F04E794: /* 0832C4 7F04E794 AFA000A8 */ sw $zero, 0xa8($sp) /* 0832C8 7F04E798 92AB0003 */ lbu $t3, 3($s5) /* 0832CC 7F04E79C 24010001 */ li $at, 1 /* 0832D0 7F04E7A0 2670000C */ addiu $s0, $s3, 0xc /* 0832D4 7F04E7A4 15610025 */ bne $t3, $at, .L7F04E83C /* 0832D8 7F04E7A8 27B100A8 */ addiu $s1, $sp, 0xa8 /* 0832DC 7F04E7AC 96AC0098 */ lhu $t4, 0x98($s5) /* 0832E0 7F04E7B0 26A400D0 */ addiu $a0, $s5, 0xd0 /* 0832E4 7F04E7B4 02603025 */ move $a2, $s3 /* 0832E8 7F04E7B8 318D0004 */ andi $t5, $t4, 4 /* 0832EC 7F04E7BC 55A00008 */ bnezl $t5, .L7F04E7E0 /* 0832F0 7F04E7C0 2670000C */ addiu $s0, $s3, 0xc /* 0832F4 7F04E7C4 96A2009A */ lhu $v0, 0x9a($s5) /* 0832F8 7F04E7C8 24010006 */ li $at, 6 /* 0832FC 7F04E7CC 10410003 */ beq $v0, $at, .L7F04E7DC /* 083300 7F04E7D0 24010007 */ li $at, 7 /* 083304 7F04E7D4 14410019 */ bne $v0, $at, .L7F04E83C /* 083308 7F04E7D8 00000000 */ nop .L7F04E7DC: /* 08330C 7F04E7DC 2670000C */ addiu $s0, $s3, 0xc .L7F04E7E0: /* 083310 7F04E7E0 02003825 */ move $a3, $s0 /* 083314 7F04E7E4 0FC1D1F4 */ jal sub_GAME_7F0747D0 /* 083318 7F04E7E8 8E85000C */ lw $a1, 0xc($s4) /* 08331C 7F04E7EC 8E8E0008 */ lw $t6, 8($s4) /* 083320 7F04E7F0 00409025 */ move $s2, $v0 /* 083324 7F04E7F4 02802025 */ move $a0, $s4 /* 083328 7F04E7F8 8DCF0000 */ lw $t7, ($t6) /* 08332C 7F04E7FC 02603025 */ move $a2, $s3 /* 083330 7F04E800 18400024 */ blez $v0, .L7F04E894 /* 083334 7F04E804 AFAF00A8 */ sw $t7, 0xa8($sp) /* 083338 7F04E808 27B80078 */ addiu $t8, $sp, 0x78 /* 08333C 7F04E80C 27B90074 */ addiu $t9, $sp, 0x74 /* 083340 7F04E810 27A80060 */ addiu $t0, $sp, 0x60 /* 083344 7F04E814 AFA80018 */ sw $t0, 0x18($sp) /* 083348 7F04E818 AFB90014 */ sw $t9, 0x14($sp) /* 08334C 7F04E81C AFB80010 */ sw $t8, 0x10($sp) /* 083350 7F04E820 01E02825 */ move $a1, $t7 /* 083354 7F04E824 0FC1366C */ jal sub_GAME_7F04D9B0 /* 083358 7F04E828 02003825 */ move $a3, $s0 /* 08335C 7F04E82C 14400019 */ bnez $v0, .L7F04E894 /* 083360 7F04E830 00000000 */ nop /* 083364 7F04E834 10000017 */ b .L7F04E894 /* 083368 7F04E838 00009025 */ move $s2, $zero .L7F04E83C: /* 08336C 7F04E83C 02802025 */ move $a0, $s4 .L7F04E840: /* 083370 7F04E840 02602825 */ move $a1, $s3 /* 083374 7F04E844 02003025 */ move $a2, $s0 /* 083378 7F04E848 0FC1D4BF */ jal sub_GAME_7F0752FC /* 08337C 7F04E84C 02203825 */ move $a3, $s1 /* 083380 7F04E850 1840000E */ blez $v0, .L7F04E88C /* 083384 7F04E854 00409025 */ move $s2, $v0 /* 083388 7F04E858 27A90078 */ addiu $t1, $sp, 0x78 /* 08338C 7F04E85C 27AA0074 */ addiu $t2, $sp, 0x74 /* 083390 7F04E860 27AB0060 */ addiu $t3, $sp, 0x60 /* 083394 7F04E864 AFAB0018 */ sw $t3, 0x18($sp) /* 083398 7F04E868 AFAA0014 */ sw $t2, 0x14($sp) /* 08339C 7F04E86C AFA90010 */ sw $t1, 0x10($sp) /* 0833A0 7F04E870 02802025 */ move $a0, $s4 /* 0833A4 7F04E874 8FA500A8 */ lw $a1, 0xa8($sp) /* 0833A8 7F04E878 02603025 */ move $a2, $s3 /* 0833AC 7F04E87C 0FC1366C */ jal sub_GAME_7F04D9B0 /* 0833B0 7F04E880 02003825 */ move $a3, $s0 /* 0833B4 7F04E884 14400003 */ bnez $v0, .L7F04E894 /* 0833B8 7F04E888 00000000 */ nop .L7F04E88C: /* 0833BC 7F04E88C 5E40FFEC */ bgtzl $s2, .L7F04E840 /* 0833C0 7F04E890 02802025 */ move $a0, $s4 .L7F04E894: /* 0833C4 7F04E894 1A400040 */ blez $s2, .L7F04E998 /* 0833C8 7F04E898 8FAD0074 */ lw $t5, 0x74($sp) /* 0833CC 7F04E89C 8E8C000C */ lw $t4, 0xc($s4) /* 0833D0 7F04E8A0 C7A40078 */ lwc1 $f4, 0x78($sp) /* 0833D4 7F04E8A4 C7A6007C */ lwc1 $f6, 0x7c($sp) /* 0833D8 7F04E8A8 C7A80080 */ lwc1 $f8, 0x80($sp) /* 0833DC 7F04E8AC 000D7180 */ sll $t6, $t5, 6 /* 0833E0 7F04E8B0 27A50068 */ addiu $a1, $sp, 0x68 /* 0833E4 7F04E8B4 018E2021 */ addu $a0, $t4, $t6 /* 0833E8 7F04E8B8 E7A40068 */ swc1 $f4, 0x68($sp) /* 0833EC 7F04E8BC E7A6006C */ swc1 $f6, 0x6c($sp) /* 0833F0 7F04E8C0 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 0833F4 7F04E8C4 E7A80070 */ swc1 $f8, 0x70($sp) /* 0833F8 7F04E8C8 C7A00070 */ lwc1 $f0, 0x70($sp) /* 0833FC 7F04E8CC C66A0034 */ lwc1 $f10, 0x34($s3) /* 083400 7F04E8D0 02602025 */ move $a0, $s3 /* 083404 7F04E8D4 46000007 */ neg.s $f0, $f0 /* 083408 7F04E8D8 8FA500C0 */ lw $a1, 0xc0($sp) /* 08340C 7F04E8DC 460A003E */ c.le.s $f0, $f10 /* 083410 7F04E8E0 02403825 */ move $a3, $s2 /* 083414 7F04E8E4 8FAC00A8 */ lw $t4, 0xa8($sp) /* 083418 7F04E8E8 27AE0078 */ addiu $t6, $sp, 0x78 /* 08341C 7F04E8EC 4502002B */ bc1fl .L7F04E99C /* 083420 7F04E8F0 8FBF004C */ lw $ra, 0x4c($sp) /* 083424 7F04E8F4 8EAF0008 */ lw $t7, 8($s5) /* 083428 7F04E8F8 24030001 */ li $v1, 1 /* 08342C 7F04E8FC 000FC380 */ sll $t8, $t7, 0xe /* 083430 7F04E900 07020017 */ bltzl $t8, .L7F04E960 /* 083434 7F04E904 8FAF0074 */ lw $t7, 0x74($sp) /* 083438 7F04E908 92A20003 */ lbu $v0, 3($s5) /* 08343C 7F04E90C 2401002A */ li $at, 42 /* 083440 7F04E910 10410003 */ beq $v0, $at, .L7F04E920 /* 083444 7F04E914 2401002F */ li $at, 47 /* 083448 7F04E918 54410004 */ bnel $v0, $at, .L7F04E92C /* 08344C 7F04E91C 8EB90014 */ lw $t9, 0x14($s5) .L7F04E920: /* 083450 7F04E920 1000000E */ b .L7F04E95C /* 083454 7F04E924 00001825 */ move $v1, $zero /* 083458 7F04E928 8EB90014 */ lw $t9, 0x14($s5) .L7F04E92C: /* 08345C 7F04E92C 3C088004 */ lui $t0, %hi(prop_door_related) /* 083460 7F04E930 2508A1DC */ addiu $t0, %lo(prop_door_related) # addiu $t0, $t0, -0x5e24 /* 083464 7F04E934 8F220008 */ lw $v0, 8($t9) /* 083468 7F04E938 8C490004 */ lw $t1, 4($v0) /* 08346C 7F04E93C 55090008 */ bnel $t0, $t1, .L7F04E960 /* 083470 7F04E940 8FAF0074 */ lw $t7, 0x74($sp) /* 083474 7F04E944 8C4B0008 */ lw $t3, 8($v0) /* 083478 7F04E948 8FAA0060 */ lw $t2, 0x60($sp) /* 08347C 7F04E94C 8D6D000C */ lw $t5, 0xc($t3) /* 083480 7F04E950 554D0003 */ bnel $t2, $t5, .L7F04E960 /* 083484 7F04E954 8FAF0074 */ lw $t7, 0x74($sp) /* 083488 7F04E958 00001825 */ move $v1, $zero .L7F04E95C: /* 08348C 7F04E95C 8FAF0074 */ lw $t7, 0x74($sp) .L7F04E960: /* 083490 7F04E960 8FB80060 */ lw $t8, 0x60($sp) /* 083494 7F04E964 AFAC0010 */ sw $t4, 0x10($sp) /* 083498 7F04E968 AFAE0014 */ sw $t6, 0x14($sp) /* 08349C 7F04E96C AFB40020 */ sw $s4, 0x20($sp) /* 0834A0 7F04E970 AFA30024 */ sw $v1, 0x24($sp) /* 0834A4 7F04E974 AFAF0018 */ sw $t7, 0x18($sp) /* 0834A8 7F04E978 AFB8001C */ sw $t8, 0x1c($sp) /* 0834AC 7F04E97C 8EB9000C */ lw $t9, 0xc($s5) /* 0834B0 7F04E980 3C010010 */ lui $at, 0x10 /* 0834B4 7F04E984 44060000 */ mfc1 $a2, $f0 /* 0834B8 7F04E988 03214024 */ and $t0, $t9, $at /* 0834BC 7F04E98C 0008482B */ sltu $t1, $zero, $t0 /* 0834C0 7F04E990 0FC0EE70 */ jal sub_GAME_7F03B9C0 /* 0834C4 7F04E994 AFA90028 */ sw $t1, 0x28($sp) .L7F04E998: /* 0834C8 7F04E998 8FBF004C */ lw $ra, 0x4c($sp) .L7F04E99C: /* 0834CC 7F04E99C 8FB00034 */ lw $s0, 0x34($sp) /* 0834D0 7F04E9A0 8FB10038 */ lw $s1, 0x38($sp) /* 0834D4 7F04E9A4 8FB2003C */ lw $s2, 0x3c($sp) /* 0834D8 7F04E9A8 8FB30040 */ lw $s3, 0x40($sp) /* 0834DC 7F04E9AC 8FB40044 */ lw $s4, 0x44($sp) /* 0834E0 7F04E9B0 8FB50048 */ lw $s5, 0x48($sp) /* 0834E4 7F04E9B4 03E00008 */ jr $ra /* 0834E8 7F04E9B8 27BD00C0 */ addiu $sp, $sp, 0xc0 ) #endif #ifdef NONMATCHING void sub_GAME_7F04E9BC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04E9BC /* 0834EC 7F04E9BC 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0834F0 7F04E9C0 AFBF0014 */ sw $ra, 0x14($sp) /* 0834F4 7F04E9C4 AFA40028 */ sw $a0, 0x28($sp) /* 0834F8 7F04E9C8 AFA5002C */ sw $a1, 0x2c($sp) /* 0834FC 7F04E9CC 8C840004 */ lw $a0, 4($a0) /* 083500 7F04E9D0 8C8F0014 */ lw $t7, 0x14($a0) /* 083504 7F04E9D4 AFA40024 */ sw $a0, 0x24($sp) /* 083508 7F04E9D8 0FC1001E */ jal sub_GAME_7F040078 /* 08350C 7F04E9DC AFAF001C */ sw $t7, 0x1c($sp) /* 083510 7F04E9E0 8FB80028 */ lw $t8, 0x28($sp) /* 083514 7F04E9E4 8FA40024 */ lw $a0, 0x24($sp) /* 083518 7F04E9E8 93190001 */ lbu $t9, 1($t8) /* 08351C 7F04E9EC 33280002 */ andi $t0, $t9, 2 /* 083520 7F04E9F0 5100001A */ beql $t0, $zero, .L7F04EA5C /* 083524 7F04E9F4 8FBF0014 */ lw $ra, 0x14($sp) /* 083528 7F04E9F8 8C890064 */ lw $t1, 0x64($a0) /* 08352C 7F04E9FC 312A1000 */ andi $t2, $t1, 0x1000 /* 083530 7F04EA00 55400016 */ bnezl $t2, .L7F04EA5C /* 083534 7F04EA04 8FBF0014 */ lw $ra, 0x14($sp) /* 083538 7F04EA08 8C8B000C */ lw $t3, 0xc($a0) /* 08353C 7F04EA0C 8FAD001C */ lw $t5, 0x1c($sp) /* 083540 7F04EA10 316C8000 */ andi $t4, $t3, 0x8000 /* 083544 7F04EA14 15800010 */ bnez $t4, .L7F04EA58 /* 083548 7F04EA18 00402025 */ move $a0, $v0 /* 08354C 7F04EA1C 0FC0FAE7 */ jal sub_GAME_7F03EB9C /* 083550 7F04EA20 8DA5000C */ lw $a1, 0xc($t5) /* 083554 7F04EA24 8FAE001C */ lw $t6, 0x1c($sp) /* 083558 7F04EA28 8FA5002C */ lw $a1, 0x2c($sp) /* 08355C 7F04EA2C 8DCF000C */ lw $t7, 0xc($t6) /* 083560 7F04EA30 C4A60034 */ lwc1 $f6, 0x34($a1) /* 083564 7F04EA34 C5E40038 */ lwc1 $f4, 0x38($t7) /* 083568 7F04EA38 46040080 */ add.s $f2, $f0, $f4 /* 08356C 7F04EA3C 46001087 */ neg.s $f2, $f2 /* 083570 7F04EA40 4606103E */ c.le.s $f2, $f6 /* 083574 7F04EA44 00000000 */ nop /* 083578 7F04EA48 45020004 */ bc1fl .L7F04EA5C /* 08357C 7F04EA4C 8FBF0014 */ lw $ra, 0x14($sp) /* 083580 7F04EA50 0FC139C8 */ jal sub_GAME_7F04E720 /* 083584 7F04EA54 8FA40028 */ lw $a0, 0x28($sp) .L7F04EA58: /* 083588 7F04EA58 8FBF0014 */ lw $ra, 0x14($sp) .L7F04EA5C: /* 08358C 7F04EA5C 27BD0028 */ addiu $sp, $sp, 0x28 /* 083590 7F04EA60 03E00008 */ jr $ra /* 083594 7F04EA64 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04EA68(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04EA68 /* 083598 7F04EA68 27BDFF90 */ addiu $sp, $sp, -0x70 /* 08359C 7F04EA6C AFBF002C */ sw $ra, 0x2c($sp) /* 0835A0 7F04EA70 AFB10028 */ sw $s1, 0x28($sp) /* 0835A4 7F04EA74 AFB00024 */ sw $s0, 0x24($sp) /* 0835A8 7F04EA78 8CA60004 */ lw $a2, 4($a1) /* 0835AC 7F04EA7C 00A08025 */ move $s0, $a1 /* 0835B0 7F04EA80 8CC2001C */ lw $v0, 0x1c($a2) /* 0835B4 7F04EA84 00C01825 */ move $v1, $a2 /* 0835B8 7F04EA88 50400006 */ beql $v0, $zero, .L7F04EAA4 /* 0835BC 7F04EA8C C6040000 */ lwc1 $f4, ($s0) /* 0835C0 7F04EA90 00401825 */ move $v1, $v0 .L7F04EA94: /* 0835C4 7F04EA94 8C42001C */ lw $v0, 0x1c($v0) /* 0835C8 7F04EA98 5440FFFE */ bnezl $v0, .L7F04EA94 /* 0835CC 7F04EA9C 00401825 */ move $v1, $v0 /* 0835D0 7F04EAA0 C6040000 */ lwc1 $f4, ($s0) .L7F04EAA4: /* 0835D4 7F04EAA4 C486000C */ lwc1 $f6, 0xc($a0) /* 0835D8 7F04EAA8 C48A0014 */ lwc1 $f10, 0x14($a0) /* 0835DC 7F04EAAC C4920000 */ lwc1 $f18, ($a0) /* 0835E0 7F04EAB0 46062202 */ mul.s $f8, $f4, $f6 /* 0835E4 7F04EAB4 8CD10004 */ lw $s1, 4($a2) /* 0835E8 7F04EAB8 3C0141D0 */ li $at, 0x41D00000 # 26.000000 /* 0835EC 7F04EABC 44810000 */ mtc1 $at, $f0 /* 0835F0 7F04EAC0 460A4403 */ div.s $f16, $f8, $f10 /* 0835F4 7F04EAC4 46109101 */ sub.s $f4, $f18, $f16 /* 0835F8 7F04EAC8 E7A40060 */ swc1 $f4, 0x60($sp) /* 0835FC 7F04EACC C4880010 */ lwc1 $f8, 0x10($a0) /* 083600 7F04EAD0 C6060000 */ lwc1 $f6, ($s0) /* 083604 7F04EAD4 C4920014 */ lwc1 $f18, 0x14($a0) /* 083608 7F04EAD8 C4840004 */ lwc1 $f4, 4($a0) /* 08360C 7F04EADC 46083282 */ mul.s $f10, $f6, $f8 /* 083610 7F04EAE0 46125403 */ div.s $f16, $f10, $f18 /* 083614 7F04EAE4 46102181 */ sub.s $f6, $f4, $f16 /* 083618 7F04EAE8 C7A40060 */ lwc1 $f4, 0x60($sp) /* 08361C 7F04EAEC E7A60064 */ swc1 $f6, 0x64($sp) /* 083620 7F04EAF0 C60A0000 */ lwc1 $f10, ($s0) /* 083624 7F04EAF4 C4880008 */ lwc1 $f8, 8($a0) /* 083628 7F04EAF8 460A4481 */ sub.s $f18, $f8, $f10 /* 08362C 7F04EAFC C7AA0064 */ lwc1 $f10, 0x64($sp) /* 083630 7F04EB00 E7B20068 */ swc1 $f18, 0x68($sp) /* 083634 7F04EB04 C490000C */ lwc1 $f16, 0xc($a0) /* 083638 7F04EB08 46100182 */ mul.s $f6, $f0, $f16 /* 08363C 7F04EB0C 46062201 */ sub.s $f8, $f4, $f6 /* 083640 7F04EB10 C7A60068 */ lwc1 $f6, 0x68($sp) /* 083644 7F04EB14 E7A80060 */ swc1 $f8, 0x60($sp) /* 083648 7F04EB18 C4920010 */ lwc1 $f18, 0x10($a0) /* 08364C 7F04EB1C 46120402 */ mul.s $f16, $f0, $f18 /* 083650 7F04EB20 46105101 */ sub.s $f4, $f10, $f16 /* 083654 7F04EB24 E7A40064 */ swc1 $f4, 0x64($sp) /* 083658 7F04EB28 C4880014 */ lwc1 $f8, 0x14($a0) /* 08365C 7F04EB2C AFA40070 */ sw $a0, 0x70($sp) /* 083660 7F04EB30 AFA3005C */ sw $v1, 0x5c($sp) /* 083664 7F04EB34 46080482 */ mul.s $f18, $f0, $f8 /* 083668 7F04EB38 46123281 */ sub.s $f10, $f6, $f18 /* 08366C 7F04EB3C 0FC1E111 */ jal sub_GAME_7F078444 /* 083670 7F04EB40 E7AA0068 */ swc1 $f10, 0x68($sp) /* 083674 7F04EB44 00402025 */ move $a0, $v0 /* 083678 7F04EB48 0FC1611D */ jal matrix_4x4_transform_vector_in_place /* 08367C 7F04EB4C 27A50060 */ addiu $a1, $sp, 0x60 /* 083680 7F04EB50 8E0E004C */ lw $t6, 0x4c($s0) /* 083684 7F04EB54 8FA3005C */ lw $v1, 0x5c($sp) /* 083688 7F04EB58 11C00004 */ beqz $t6, .L7F04EB6C /* 08368C 7F04EB5C 27A40060 */ addiu $a0, $sp, 0x60 /* 083690 7F04EB60 0FC19ED3 */ jal sub_GAME_7F067B4C /* 083694 7F04EB64 AFA3005C */ sw $v1, 0x5c($sp) /* 083698 7F04EB68 8FA3005C */ lw $v1, 0x5c($sp) .L7F04EB6C: /* 08369C 7F04EB6C 8C6F0014 */ lw $t7, 0x14($v1) /* 0836A0 7F04EB70 27A40060 */ addiu $a0, $sp, 0x60 /* 0836A4 7F04EB74 24050001 */ li $a1, 1 /* 0836A8 7F04EB78 3C0641D0 */ lui $a2, 0x41d0 /* 0836AC 7F04EB7C 0FC28F87 */ jal sub_GAME_7F0A3E1C /* 0836B0 7F04EB80 91E70003 */ lbu $a3, 3($t7) /* 0836B4 7F04EB84 0FC13BCD */ jal check_if_object_has_not_been_destroyed /* 0836B8 7F04EB88 02202025 */ move $a0, $s1 /* 0836BC 7F04EB8C 5040000D */ beql $v0, $zero, .L7F04EBC4 /* 0836C0 7F04EB90 8E0B004C */ lw $t3, 0x4c($s0) /* 0836C4 7F04EB94 0FC13812 */ jal check_if_destroyable_not_invincible /* 0836C8 7F04EB98 02202025 */ move $a0, $s1 /* 0836CC 7F04EB9C 50400009 */ beql $v0, $zero, .L7F04EBC4 /* 0836D0 7F04EBA0 8E0B004C */ lw $t3, 0x4c($s0) /* 0836D4 7F04EBA4 8E18004C */ lw $t8, 0x4c($s0) /* 0836D8 7F04EBA8 8FB90070 */ lw $t9, 0x70($sp) /* 0836DC 7F04EBAC 24050006 */ li $a1, 6 /* 0836E0 7F04EBB0 53000004 */ beql $t8, $zero, .L7F04EBC4 /* 0836E4 7F04EBB4 8E0B004C */ lw $t3, 0x4c($s0) /* 0836E8 7F04EBB8 0FC1A9BE */ jal inc_curplayer_hitcount_with_weapon /* 0836EC 7F04EBBC 8F240018 */ lw $a0, 0x18($t9) /* 0836F0 7F04EBC0 8E0B004C */ lw $t3, 0x4c($s0) .L7F04EBC4: /* 0836F4 7F04EBC4 55600007 */ bnezl $t3, .L7F04EBE4 /* 0836F8 7F04EBC8 8FAC0070 */ lw $t4, 0x70($sp) /* 0836FC 7F04EBCC 8E040004 */ lw $a0, 4($s0) /* 083700 7F04EBD0 0FC191C8 */ jal sub_GAME_7F064720 /* 083704 7F04EBD4 24840008 */ addiu $a0, $a0, 8 /* 083708 7F04EBD8 10000007 */ b .L7F04EBF8 /* 08370C 7F04EBDC 8FAD0070 */ lw $t5, 0x70($sp) /* 083710 7F04EBE0 8FAC0070 */ lw $t4, 0x70($sp) .L7F04EBE4: /* 083714 7F04EBE4 8E050004 */ lw $a1, 4($s0) /* 083718 7F04EBE8 8606003A */ lh $a2, 0x3a($s0) /* 08371C 7F04EBEC 0FC19107 */ jal recall_joy2_hits_edit_detail_edit_flag /* 083720 7F04EBF0 8D840018 */ lw $a0, 0x18($t4) /* 083724 7F04EBF4 8FAD0070 */ lw $t5, 0x70($sp) .L7F04EBF8: /* 083728 7F04EBF8 24010017 */ li $at, 23 /* 08372C 7F04EBFC 8DA40018 */ lw $a0, 0x18($t5) /* 083730 7F04EC00 10810060 */ beq $a0, $at, .L7F04ED84 /* 083734 7F04EC04 00000000 */ nop /* 083738 7F04EC08 8E0E004C */ lw $t6, 0x4c($s0) /* 08373C 7F04EC0C 55C00022 */ bnezl $t6, .L7F04EC98 /* 083740 7F04EC10 8602003A */ lh $v0, 0x3a($s0) /* 083744 7F04EC14 8E380014 */ lw $t8, 0x14($s1) /* 083748 7F04EC18 3C0F8004 */ lui $t7, %hi(prop_door_related) /* 08374C 7F04EC1C 25EFA1DC */ addiu $t7, %lo(prop_door_related) # addiu $t7, $t7, -0x5e24 /* 083750 7F04EC20 8F190008 */ lw $t9, 8($t8) /* 083754 7F04EC24 8E080004 */ lw $t0, 4($s0) /* 083758 7F04EC28 00001825 */ move $v1, $zero /* 08375C 7F04EC2C 8F2B0004 */ lw $t3, 4($t9) /* 083760 7F04EC30 55EB0003 */ bnel $t7, $t3, .L7F04EC40 /* 083764 7F04EC34 A3A30057 */ sb $v1, 0x57($sp) /* 083768 7F04EC38 24030001 */ li $v1, 1 /* 08376C 7F04EC3C A3A30057 */ sb $v1, 0x57($sp) .L7F04EC40: /* 083770 7F04EC40 0C002914 */ jal get_random_value /* 083774 7F04EC44 AFA80058 */ sw $t0, 0x58($sp) /* 083778 7F04EC48 24010003 */ li $at, 3 /* 08377C 7F04EC4C 0041001B */ divu $zero, $v0, $at /* 083780 7F04EC50 8FA80058 */ lw $t0, 0x58($sp) /* 083784 7F04EC54 00003010 */ mfhi $a2 /* 083788 7F04EC58 83A30057 */ lb $v1, 0x57($sp) /* 08378C 7F04EC5C AFA80010 */ sw $t0, 0x10($sp) /* 083790 7F04EC60 8E0E0040 */ lw $t6, 0x40($s0) /* 083794 7F04EC64 24C60011 */ addiu $a2, $a2, 0x11 /* 083798 7F04EC68 00066400 */ sll $t4, $a2, 0x10 /* 08379C 7F04EC6C 000C3403 */ sra $a2, $t4, 0x10 /* 0837A0 7F04EC70 26040010 */ addiu $a0, $s0, 0x10 /* 0837A4 7F04EC74 2605001C */ addiu $a1, $s0, 0x1c /* 0837A8 7F04EC78 24070001 */ li $a3, 1 /* 0837AC 7F04EC7C AFA30018 */ sw $v1, 0x18($sp) /* 0837B0 7F04EC80 0FC28423 */ jal sub_GAME_7F0A108C /* 0837B4 7F04EC84 AFAE0014 */ sw $t6, 0x14($sp) /* 0837B8 7F04EC88 8FB80070 */ lw $t8, 0x70($sp) /* 0837BC 7F04EC8C 1000003D */ b .L7F04ED84 /* 0837C0 7F04EC90 8F040018 */ lw $a0, 0x18($t8) /* 0837C4 7F04EC94 8602003A */ lh $v0, 0x3a($s0) .L7F04EC98: /* 0837C8 7F04EC98 00004825 */ move $t1, $zero /* 0837CC 7F04EC9C 3C0F8005 */ lui $t7, %hi(image_entries) /* 0837D0 7F04ECA0 04410004 */ bgez $v0, .L7F04ECB4 /* 0837D4 7F04ECA4 0002C8C0 */ sll $t9, $v0, 3 /* 0837D8 7F04ECA8 3C088005 */ lui $t0, %hi(D_8004E86C) /* 0837DC 7F04ECAC 10000008 */ b .L7F04ECD0 /* 0837E0 7F04ECB0 8D08E86C */ lw $t0, %lo(D_8004E86C)($t0) .L7F04ECB4: /* 0837E4 7F04ECB4 01F97821 */ addu $t7, $t7, $t9 /* 0837E8 7F04ECB8 91EF9300 */ lbu $t7, %lo(image_entries)($t7) /* 0837EC 7F04ECBC 3C088005 */ lui $t0, %hi(D_8004E86C) /* 0837F0 7F04ECC0 31EB000F */ andi $t3, $t7, 0xf /* 0837F4 7F04ECC4 000B6080 */ sll $t4, $t3, 2 /* 0837F8 7F04ECC8 010C4021 */ addu $t0, $t0, $t4 /* 0837FC 7F04ECCC 8D08E86C */ lw $t0, %lo(D_8004E86C)($t0) .L7F04ECD0: /* 083800 7F04ECD0 AFA80050 */ sw $t0, 0x50($sp) /* 083804 7F04ECD4 0C002914 */ jal get_random_value /* 083808 7F04ECD8 A3A9004B */ sb $t1, 0x4b($sp) /* 08380C 7F04ECDC 8FA80050 */ lw $t0, 0x50($sp) /* 083810 7F04ECE0 8E2E0014 */ lw $t6, 0x14($s1) /* 083814 7F04ECE4 3C188004 */ lui $t8, %hi(prop_door_related) /* 083818 7F04ECE8 850D000A */ lh $t5, 0xa($t0) /* 08381C 7F04ECEC 8DC30008 */ lw $v1, 8($t6) /* 083820 7F04ECF0 2718A1DC */ addiu $t8, %lo(prop_door_related) # addiu $t8, $t8, -0x5e24 /* 083824 7F04ECF4 004D001B */ divu $zero, $v0, $t5 /* 083828 7F04ECF8 8C640004 */ lw $a0, 4($v1) /* 08382C 7F04ECFC 00005010 */ mfhi $t2 /* 083830 7F04ED00 83A9004B */ lb $t1, 0x4b($sp) /* 083834 7F04ED04 15A00002 */ bnez $t5, .L7F04ED10 /* 083838 7F04ED08 00000000 */ nop /* 08383C 7F04ED0C 0007000D */ break 7 .L7F04ED10: /* 083840 7F04ED10 2605001C */ addiu $a1, $s0, 0x1c /* 083844 7F04ED14 17040005 */ bne $t8, $a0, .L7F04ED2C /* 083848 7F04ED18 24070001 */ li $a3, 1 /* 08384C 7F04ED1C 8C6F0008 */ lw $t7, 8($v1) /* 083850 7F04ED20 8E190044 */ lw $t9, 0x44($s0) /* 083854 7F04ED24 8DEB000C */ lw $t3, 0xc($t7) /* 083858 7F04ED28 132B0009 */ beq $t9, $t3, .L7F04ED50 .L7F04ED2C: /* 08385C 7F04ED2C 3C0C8004 */ lui $t4, %hi(prop_cctv_related) /* 083860 7F04ED30 258CA05C */ addiu $t4, %lo(prop_cctv_related) # addiu $t4, $t4, -0x5fa4 /* 083864 7F04ED34 55840008 */ bnel $t4, $a0, .L7F04ED58 /* 083868 7F04ED38 8D0F0004 */ lw $t7, 4($t0) /* 08386C 7F04ED3C 8C6E0008 */ lw $t6, 8($v1) /* 083870 7F04ED40 8E0D0044 */ lw $t5, 0x44($s0) /* 083874 7F04ED44 8DD80004 */ lw $t8, 4($t6) /* 083878 7F04ED48 55B80003 */ bnel $t5, $t8, .L7F04ED58 /* 08387C 7F04ED4C 8D0F0004 */ lw $t7, 4($t0) .L7F04ED50: /* 083880 7F04ED50 24090001 */ li $t1, 1 /* 083884 7F04ED54 8D0F0004 */ lw $t7, 4($t0) .L7F04ED58: /* 083888 7F04ED58 8E0B0004 */ lw $t3, 4($s0) /* 08388C 7F04ED5C 26040010 */ addiu $a0, $s0, 0x10 /* 083890 7F04ED60 01EAC821 */ addu $t9, $t7, $t2 /* 083894 7F04ED64 93260000 */ lbu $a2, ($t9) /* 083898 7F04ED68 AFAB0010 */ sw $t3, 0x10($sp) /* 08389C 7F04ED6C 8E0C0040 */ lw $t4, 0x40($s0) /* 0838A0 7F04ED70 AFA90018 */ sw $t1, 0x18($sp) /* 0838A4 7F04ED74 0FC28423 */ jal sub_GAME_7F0A108C /* 0838A8 7F04ED78 AFAC0014 */ sw $t4, 0x14($sp) /* 0838AC 7F04ED7C 8FAE0070 */ lw $t6, 0x70($sp) /* 0838B0 7F04ED80 8DC40018 */ lw $a0, 0x18($t6) .L7F04ED84: /* 0838B4 7F04ED84 0FC177E1 */ jal bondwalkGetItemDestructionAmount /* 0838B8 7F04ED88 00000000 */ nop /* 0838BC 7F04ED8C 92220003 */ lbu $v0, 3($s1) /* 0838C0 7F04ED90 2401000D */ li $at, 13 /* 0838C4 7F04ED94 46000086 */ mov.s $f2, $f0 /* 0838C8 7F04ED98 14410005 */ bne $v0, $at, .L7F04EDB0 /* 0838CC 7F04ED9C 3C018003 */ lui $at, %hi(D_80030B24) /* 0838D0 7F04EDA0 C4300B24 */ lwc1 $f16, %lo(D_80030B24)($at) /* 0838D4 7F04EDA4 46100082 */ mul.s $f2, $f0, $f16 /* 0838D8 7F04EDA8 1000001B */ b .L7F04EE18 /* 0838DC 7F04EDAC 00000000 */ nop .L7F04EDB0: /* 0838E0 7F04EDB0 24010006 */ li $at, 6 /* 0838E4 7F04EDB4 14410018 */ bne $v0, $at, .L7F04EE18 /* 0838E8 7F04EDB8 00000000 */ nop /* 0838EC 7F04EDBC 8E2D0014 */ lw $t5, 0x14($s1) /* 0838F0 7F04EDC0 3C188004 */ lui $t8, %hi(prop_cctv_related) /* 0838F4 7F04EDC4 2718A05C */ addiu $t8, %lo(prop_cctv_related) # addiu $t8, $t8, -0x5fa4 /* 0838F8 7F04EDC8 8DA30008 */ lw $v1, 8($t5) /* 0838FC 7F04EDCC 8C6F0004 */ lw $t7, 4($v1) /* 083900 7F04EDD0 170F000D */ bne $t8, $t7, .L7F04EE08 /* 083904 7F04EDD4 00000000 */ nop /* 083908 7F04EDD8 8C6B0008 */ lw $t3, 8($v1) /* 08390C 7F04EDDC 8E190044 */ lw $t9, 0x44($s0) /* 083910 7F04EDE0 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 083914 7F04EDE4 8D6C0004 */ lw $t4, 4($t3) /* 083918 7F04EDE8 172C0007 */ bne $t9, $t4, .L7F04EE08 /* 08391C 7F04EDEC 00000000 */ nop /* 083920 7F04EDF0 44812000 */ mtc1 $at, $f4 /* 083924 7F04EDF4 02202025 */ move $a0, $s1 /* 083928 7F04EDF8 46041082 */ mul.s $f2, $f2, $f4 /* 08392C 7F04EDFC 0FC13786 */ jal sub_GAME_7F04DE18 /* 083930 7F04EE00 E7A20044 */ swc1 $f2, 0x44($sp) /* 083934 7F04EE04 C7A20044 */ lwc1 $f2, 0x44($sp) .L7F04EE08: /* 083938 7F04EE08 3C018003 */ lui $at, %hi(D_80030B18) /* 08393C 7F04EE0C C4280B18 */ lwc1 $f8, %lo(D_80030B18)($at) /* 083940 7F04EE10 46081082 */ mul.s $f2, $f2, $f8 /* 083944 7F04EE14 00000000 */ nop .L7F04EE18: /* 083948 7F04EE18 0FC26C54 */ jal get_cur_playernum /* 08394C 7F04EE1C E7A20044 */ swc1 $f2, 0x44($sp) /* 083950 7F04EE20 C7A20044 */ lwc1 $f2, 0x44($sp) /* 083954 7F04EE24 8FAE0070 */ lw $t6, 0x70($sp) /* 083958 7F04EE28 02202025 */ move $a0, $s1 /* 08395C 7F04EE2C 44051000 */ mfc1 $a1, $f2 /* 083960 7F04EE30 8DC70018 */ lw $a3, 0x18($t6) /* 083964 7F04EE34 AFA20010 */ sw $v0, 0x10($sp) /* 083968 7F04EE38 0FC13833 */ jal sub_GAME_7F04E0CC /* 08396C 7F04EE3C 27A60060 */ addiu $a2, $sp, 0x60 /* 083970 7F04EE40 8E380014 */ lw $t8, 0x14($s1) /* 083974 7F04EE44 3C0D8004 */ lui $t5, %hi(prop_door_related) /* 083978 7F04EE48 25ADA1DC */ addiu $t5, %lo(prop_door_related) # addiu $t5, $t5, -0x5e24 /* 08397C 7F04EE4C 8F0F0008 */ lw $t7, 8($t8) /* 083980 7F04EE50 8DEB0004 */ lw $t3, 4($t7) /* 083984 7F04EE54 15AB000D */ bne $t5, $t3, .L7F04EE8C /* 083988 7F04EE58 00000000 */ nop /* 08398C 7F04EE5C 8E19004C */ lw $t9, 0x4c($s0) /* 083990 7F04EE60 1720000A */ bnez $t9, .L7F04EE8C /* 083994 7F04EE64 00000000 */ nop /* 083998 7F04EE68 822C00BD */ lb $t4, 0xbd($s1) /* 08399C 7F04EE6C 258E0001 */ addiu $t6, $t4, 1 /* 0839A0 7F04EE70 A22E00BD */ sb $t6, 0xbd($s1) /* 0839A4 7F04EE74 823800BD */ lb $t8, 0xbd($s1) /* 0839A8 7F04EE78 2B010003 */ slti $at, $t8, 3 /* 0839AC 7F04EE7C 14200003 */ bnez $at, .L7F04EE8C /* 0839B0 7F04EE80 00000000 */ nop /* 0839B4 7F04EE84 0FC1375A */ jal sub_GAME_7F04DD68 /* 0839B8 7F04EE88 02202025 */ move $a0, $s1 .L7F04EE8C: /* 0839BC 7F04EE8C 0FC11080 */ jal sub_GAME_7F044200 /* 0839C0 7F04EE90 8E040004 */ lw $a0, 4($s0) /* 0839C4 7F04EE94 00008025 */ move $s0, $zero /* 0839C8 7F04EE98 0FC13803 */ jal check_if_collectable_object /* 0839CC 7F04EE9C 02202025 */ move $a0, $s1 /* 0839D0 7F04EEA0 50400008 */ beql $v0, $zero, .L7F04EEC4 /* 0839D4 7F04EEA4 8E2B0008 */ lw $t3, 8($s1) /* 0839D8 7F04EEA8 8E2F0008 */ lw $t7, 8($s1) /* 0839DC 7F04EEAC 000F6A40 */ sll $t5, $t7, 9 /* 0839E0 7F04EEB0 05A20009 */ bltzl $t5, .L7F04EED8 /* 0839E4 7F04EEB4 8E2C000C */ lw $t4, 0xc($s1) /* 0839E8 7F04EEB8 10000006 */ b .L7F04EED4 /* 0839EC 7F04EEBC 24100001 */ li $s0, 1 /* 0839F0 7F04EEC0 8E2B0008 */ lw $t3, 8($s1) .L7F04EEC4: /* 0839F4 7F04EEC4 000BCA80 */ sll $t9, $t3, 0xa /* 0839F8 7F04EEC8 07230003 */ bgezl $t9, .L7F04EED8 /* 0839FC 7F04EECC 8E2C000C */ lw $t4, 0xc($s1) /* 083A00 7F04EED0 24100001 */ li $s0, 1 .L7F04EED4: /* 083A04 7F04EED4 8E2C000C */ lw $t4, 0xc($s1) .L7F04EED8: /* 083A08 7F04EED8 318E0002 */ andi $t6, $t4, 2 /* 083A0C 7F04EEDC 51C00007 */ beql $t6, $zero, .L7F04EEFC /* 083A10 7F04EEE0 8E38000C */ lw $t8, 0xc($s1) /* 083A14 7F04EEE4 0FC13BCD */ jal check_if_object_has_not_been_destroyed /* 083A18 7F04EEE8 02202025 */ move $a0, $s1 /* 083A1C 7F04EEEC 54400003 */ bnezl $v0, .L7F04EEFC /* 083A20 7F04EEF0 8E38000C */ lw $t8, 0xc($s1) /* 083A24 7F04EEF4 24100001 */ li $s0, 1 /* 083A28 7F04EEF8 8E38000C */ lw $t8, 0xc($s1) .L7F04EEFC: /* 083A2C 7F04EEFC 8FA50070 */ lw $a1, 0x70($sp) /* 083A30 7F04EF00 330F0400 */ andi $t7, $t8, 0x400 /* 083A34 7F04EF04 11E00002 */ beqz $t7, .L7F04EF10 /* 083A38 7F04EF08 24A5000C */ addiu $a1, $a1, 0xc /* 083A3C 7F04EF0C 00008025 */ move $s0, $zero .L7F04EF10: /* 083A40 7F04EF10 52000004 */ beql $s0, $zero, .L7F04EF24 /* 083A44 7F04EF14 8FBF002C */ lw $ra, 0x2c($sp) /* 083A48 7F04EF18 0FC12F37 */ jal sub_GAME_7F04BCDC /* 083A4C 7F04EF1C 02202025 */ move $a0, $s1 /* 083A50 7F04EF20 8FBF002C */ lw $ra, 0x2c($sp) .L7F04EF24: /* 083A54 7F04EF24 8FB00024 */ lw $s0, 0x24($sp) /* 083A58 7F04EF28 8FB10028 */ lw $s1, 0x28($sp) /* 083A5C 7F04EF2C 03E00008 */ jr $ra /* 083A60 7F04EF30 27BD0070 */ addiu $sp, $sp, 0x70 ) #endif #ifdef NONMATCHING void check_if_object_has_not_been_destroyed(void) { } #else GLOBAL_ASM( .text glabel check_if_object_has_not_been_destroyed /* 083A64 7F04EF34 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 083A68 7F04EF38 AFBF0014 */ sw $ra, 0x14($sp) /* 083A6C 7F04EF3C 0FC0FFF0 */ jal do_something_if_object_destroyed /* 083A70 7F04EF40 00000000 */ nop /* 083A74 7F04EF44 8FBF0014 */ lw $ra, 0x14($sp) /* 083A78 7F04EF48 2C4E0001 */ sltiu $t6, $v0, 1 /* 083A7C 7F04EF4C 01C01025 */ move $v0, $t6 /* 083A80 7F04EF50 03E00008 */ jr $ra /* 083A84 7F04EF54 27BD0018 */ addiu $sp, $sp, 0x18 ) #endif #ifdef NONMATCHING void sub_GAME_7F04EF58(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80052EF4 .word 0x481c4000 /*160000.0*/ glabel D_80052EF8 .word 0x40060a92 /*2.0943952*/ glabel D_80052EFC .word 0x471c4000 /*40000.0*/ glabel D_80052F00 .word 0x3ec90fdb /*0.39269909*/ glabel D_80052F04 .word 0x40c90fdb /*6.2831855*/ glabel D_80052F08 .word 0x40490fdb /*3.1415927*/ glabel D_80052F0C .word 0x40c90fdb /*6.2831855*/ .text glabel sub_GAME_7F04EF58 /* 083A88 7F04EF58 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 083A8C 7F04EF5C AFBF001C */ sw $ra, 0x1c($sp) /* 083A90 7F04EF60 8C850004 */ lw $a1, 4($a0) /* 083A94 7F04EF64 24010005 */ li $at, 5 /* 083A98 7F04EF68 00803025 */ move $a2, $a0 /* 083A9C 7F04EF6C 90AE0003 */ lbu $t6, 3($a1) /* 083AA0 7F04EF70 51C1000A */ beql $t6, $at, .L7F04EF9C /* 083AA4 7F04EF74 90C90001 */ lbu $t1, 1($a2) /* 083AA8 7F04EF78 8CAF0008 */ lw $t7, 8($a1) /* 083AAC 7F04EF7C 000FC300 */ sll $t8, $t7, 0xc /* 083AB0 7F04EF80 07020006 */ bltzl $t8, .L7F04EF9C /* 083AB4 7F04EF84 90C90001 */ lbu $t1, 1($a2) /* 083AB8 7F04EF88 8CB90064 */ lw $t9, 0x64($a1) /* 083ABC 7F04EF8C 33280013 */ andi $t0, $t9, 0x13 /* 083AC0 7F04EF90 51000073 */ beql $t0, $zero, .L7F04F160 /* 083AC4 7F04EF94 8FBF001C */ lw $ra, 0x1c($sp) /* 083AC8 7F04EF98 90C90001 */ lbu $t1, 1($a2) .L7F04EF9C: /* 083ACC 7F04EF9C 00A02025 */ move $a0, $a1 /* 083AD0 7F04EFA0 312A0002 */ andi $t2, $t1, 2 /* 083AD4 7F04EFA4 5140006E */ beql $t2, $zero, .L7F04F160 /* 083AD8 7F04EFA8 8FBF001C */ lw $ra, 0x1c($sp) /* 083ADC 7F04EFAC AFA50050 */ sw $a1, 0x50($sp) /* 083AE0 7F04EFB0 0FC13BCD */ jal check_if_object_has_not_been_destroyed /* 083AE4 7F04EFB4 AFA60058 */ sw $a2, 0x58($sp) /* 083AE8 7F04EFB8 10400068 */ beqz $v0, .L7F04F15C /* 083AEC 7F04EFBC 8FA50050 */ lw $a1, 0x50($sp) /* 083AF0 7F04EFC0 8CAB0008 */ lw $t3, 8($a1) /* 083AF4 7F04EFC4 000B6180 */ sll $t4, $t3, 6 /* 083AF8 7F04EFC8 05820065 */ bltzl $t4, .L7F04F160 /* 083AFC 7F04EFCC 8FBF001C */ lw $ra, 0x1c($sp) /* 083B00 7F04EFD0 0FC225E6 */ jal get_curplayer_positiondata /* 083B04 7F04EFD4 AFA50050 */ sw $a1, 0x50($sp) /* 083B08 7F04EFD8 8FA50050 */ lw $a1, 0x50($sp) /* 083B0C 7F04EFDC C4460008 */ lwc1 $f6, 8($v0) /* 083B10 7F04EFE0 C44A000C */ lwc1 $f10, 0xc($v0) /* 083B14 7F04EFE4 C4A40058 */ lwc1 $f4, 0x58($a1) /* 083B18 7F04EFE8 C4A8005C */ lwc1 $f8, 0x5c($a1) /* 083B1C 7F04EFEC 8C4D0014 */ lw $t5, 0x14($v0) /* 083B20 7F04EFF0 46062301 */ sub.s $f12, $f4, $f6 /* 083B24 7F04EFF4 C4460010 */ lwc1 $f6, 0x10($v0) /* 083B28 7F04EFF8 C4A40060 */ lwc1 $f4, 0x60($a1) /* 083B2C 7F04EFFC 460A4401 */ sub.s $f16, $f8, $f10 /* 083B30 7F04F000 460C6202 */ mul.s $f8, $f12, $f12 /* 083B34 7F04F004 AFAD002C */ sw $t5, 0x2c($sp) /* 083B38 7F04F008 46062381 */ sub.s $f14, $f4, $f6 /* 083B3C 7F04F00C 90AE0003 */ lbu $t6, 3($a1) /* 083B40 7F04F010 24010028 */ li $at, 40 /* 083B44 7F04F014 00401825 */ move $v1, $v0 /* 083B48 7F04F018 460E7282 */ mul.s $f10, $f14, $f14 /* 083B4C 7F04F01C 55C1000D */ bnel $t6, $at, .L7F04F054 /* 083B50 7F04F020 3C014348 */ lui $at, 0x4348 /* 083B54 7F04F024 8CAF0008 */ lw $t7, 8($a1) /* 083B58 7F04F028 3C0143C8 */ lui $at, 0x43c8 /* 083B5C 7F04F02C 000FC080 */ sll $t8, $t7, 2 /* 083B60 7F04F030 07030008 */ bgezl $t8, .L7F04F054 /* 083B64 7F04F034 3C014348 */ li $at, 0x43480000 # 200.000000 /* 083B68 7F04F038 44810000 */ mtc1 $at, $f0 /* 083B6C 7F04F03C 3C018005 */ lui $at, %hi(D_80052EF4) /* 083B70 7F04F040 C4222EF4 */ lwc1 $f2, %lo(D_80052EF4)($at) /* 083B74 7F04F044 3C018005 */ lui $at, %hi(D_80052EF8) /* 083B78 7F04F048 10000007 */ b .L7F04F068 /* 083B7C 7F04F04C C4322EF8 */ lwc1 $f18, %lo(D_80052EF8)($at) /* 083B80 7F04F050 3C014348 */ li $at, 0x43480000 # 200.000000 .L7F04F054: /* 083B84 7F04F054 44810000 */ mtc1 $at, $f0 /* 083B88 7F04F058 3C018005 */ lui $at, %hi(D_80052EFC) /* 083B8C 7F04F05C C4222EFC */ lwc1 $f2, %lo(D_80052EFC)($at) /* 083B90 7F04F060 3C018005 */ lui $at, %hi(D_80052F00) /* 083B94 7F04F064 C4322F00 */ lwc1 $f18, %lo(D_80052F00)($at) .L7F04F068: /* 083B98 7F04F068 460A4100 */ add.s $f4, $f8, $f10 /* 083B9C 7F04F06C 4602203C */ c.lt.s $f4, $f2 /* 083BA0 7F04F070 00000000 */ nop /* 083BA4 7F04F074 4502003A */ bc1fl .L7F04F160 /* 083BA8 7F04F078 8FBF001C */ lw $ra, 0x1c($sp) /* 083BAC 7F04F07C 4600803C */ c.lt.s $f16, $f0 /* 083BB0 7F04F080 00000000 */ nop /* 083BB4 7F04F084 45020036 */ bc1fl .L7F04F160 /* 083BB8 7F04F088 8FBF001C */ lw $ra, 0x1c($sp) /* 083BBC 7F04F08C 46000187 */ neg.s $f6, $f0 /* 083BC0 7F04F090 4610303C */ c.lt.s $f6, $f16 /* 083BC4 7F04F094 00000000 */ nop /* 083BC8 7F04F098 45020031 */ bc1fl .L7F04F160 /* 083BCC 7F04F09C 8FBF001C */ lw $ra, 0x1c($sp) /* 083BD0 7F04F0A0 AFA3004C */ sw $v1, 0x4c($sp) /* 083BD4 7F04F0A4 AFA50050 */ sw $a1, 0x50($sp) /* 083BD8 7F04F0A8 0FC16A8C */ jal atan2f /* 083BDC 7F04F0AC E7B20030 */ swc1 $f18, 0x30($sp) /* 083BE0 7F04F0B0 0FC227B9 */ jal get_curplay_horizontal_rotation_in_degrees /* 083BE4 7F04F0B4 E7A00024 */ swc1 $f0, 0x24($sp) /* 083BE8 7F04F0B8 C7AC0024 */ lwc1 $f12, 0x24($sp) /* 083BEC 7F04F0BC 8FA3004C */ lw $v1, 0x4c($sp) /* 083BF0 7F04F0C0 8FA50050 */ lw $a1, 0x50($sp) /* 083BF4 7F04F0C4 4600603C */ c.lt.s $f12, $f0 /* 083BF8 7F04F0C8 C7B20030 */ lwc1 $f18, 0x30($sp) /* 083BFC 7F04F0CC 46006381 */ sub.s $f14, $f12, $f0 /* 083C00 7F04F0D0 3C018005 */ lui $at, %hi(D_80052F04) /* 083C04 7F04F0D4 45000003 */ bc1f .L7F04F0E4 /* 083C08 7F04F0D8 46007086 */ mov.s $f2, $f14 /* 083C0C 7F04F0DC C4282F04 */ lwc1 $f8, %lo(D_80052F04)($at) /* 083C10 7F04F0E0 46087080 */ add.s $f2, $f14, $f8 .L7F04F0E4: /* 083C14 7F04F0E4 3C018005 */ lui $at, %hi(D_80052F08) /* 083C18 7F04F0E8 C42A2F08 */ lwc1 $f10, %lo(D_80052F08)($at) /* 083C1C 7F04F0EC 3C018005 */ lui $at, %hi(D_80052F0C) /* 083C20 7F04F0F0 4602503C */ c.lt.s $f10, $f2 /* 083C24 7F04F0F4 00000000 */ nop /* 083C28 7F04F0F8 45020004 */ bc1fl .L7F04F10C /* 083C2C 7F04F0FC 4612103E */ c.le.s $f2, $f18 /* 083C30 7F04F100 C4242F0C */ lwc1 $f4, %lo(D_80052F0C)($at) /* 083C34 7F04F104 46022081 */ sub.s $f2, $f4, $f2 /* 083C38 7F04F108 4612103E */ c.le.s $f2, $f18 .L7F04F10C: /* 083C3C 7F04F10C 00000000 */ nop /* 083C40 7F04F110 45020013 */ bc1fl .L7F04F160 /* 083C44 7F04F114 8FBF001C */ lw $ra, 0x1c($sp) /* 083C48 7F04F118 8CB9000C */ lw $t9, 0xc($a1) /* 083C4C 7F04F11C 8FA20058 */ lw $v0, 0x58($sp) /* 083C50 7F04F120 27A4002C */ addiu $a0, $sp, 0x2c /* 083C54 7F04F124 33280800 */ andi $t0, $t9, 0x800 /* 083C58 7F04F128 5100000A */ beql $t0, $zero, .L7F04F154 /* 083C5C 7F04F12C 8FA90058 */ lw $t1, 0x58($sp) /* 083C60 7F04F130 C4460010 */ lwc1 $f6, 0x10($v0) /* 083C64 7F04F134 8C650008 */ lw $a1, 8($v1) /* 083C68 7F04F138 8C660010 */ lw $a2, 0x10($v1) /* 083C6C 7F04F13C 8C470008 */ lw $a3, 8($v0) /* 083C70 7F04F140 0FC2C2F9 */ jal sub_GAME_7F0B0BE4 /* 083C74 7F04F144 E7A60010 */ swc1 $f6, 0x10($sp) /* 083C78 7F04F148 50400005 */ beql $v0, $zero, .L7F04F160 /* 083C7C 7F04F14C 8FBF001C */ lw $ra, 0x1c($sp) /* 083C80 7F04F150 8FA90058 */ lw $t1, 0x58($sp) .L7F04F154: /* 083C84 7F04F154 3C018007 */ lui $at, %hi(dword_CODE_bss_80071DF8) /* 083C88 7F04F158 AC291DF8 */ sw $t1, %lo(dword_CODE_bss_80071DF8)($at) .L7F04F15C: /* 083C8C 7F04F15C 8FBF001C */ lw $ra, 0x1c($sp) .L7F04F160: /* 083C90 7F04F160 27BD0058 */ addiu $sp, $sp, 0x58 /* 083C94 7F04F164 24020001 */ li $v0, 1 /* 083C98 7F04F168 03E00008 */ jr $ra /* 083C9C 7F04F16C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04F170(void) { } #else GLOBAL_ASM( .late_rodata .text glabel sub_GAME_7F04F170 /* 083CA0 7F04F170 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 083CA4 7F04F174 AFBF001C */ sw $ra, 0x1c($sp) /* 083CA8 7F04F178 AFB00018 */ sw $s0, 0x18($sp) /* 083CAC 7F04F17C AFA40028 */ sw $a0, 0x28($sp) /* 083CB0 7F04F180 8C900004 */ lw $s0, 4($a0) /* 083CB4 7F04F184 AFA00020 */ sw $zero, 0x20($sp) /* 083CB8 7F04F188 24010005 */ li $at, 5 /* 083CBC 7F04F18C 920F0003 */ lbu $t7, 3($s0) /* 083CC0 7F04F190 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 083CC4 7F04F194 240500BA */ li $a1, 186 /* 083CC8 7F04F198 15E1000D */ bne $t7, $at, .L7F04F1D0 /* 083CCC 7F04F19C 00003025 */ move $a2, $zero /* 083CD0 7F04F1A0 0C002382 */ jal play_sfx_a1 /* 083CD4 7F04F1A4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 083CD8 7F04F1A8 0FC15794 */ jal is_alarm_on /* 083CDC 7F04F1AC 00000000 */ nop /* 083CE0 7F04F1B0 10400005 */ beqz $v0, .L7F04F1C8 /* 083CE4 7F04F1B4 00000000 */ nop /* 083CE8 7F04F1B8 0FC1578B */ jal stop_alarm /* 083CEC 7F04F1BC 00000000 */ nop /* 083CF0 7F04F1C0 10000004 */ b .L7F04F1D4 /* 083CF4 7F04F1C4 8E180008 */ lw $t8, 8($s0) .L7F04F1C8: /* 083CF8 7F04F1C8 0FC15772 */ jal start_alarm /* 083CFC 7F04F1CC 00000000 */ nop .L7F04F1D0: /* 083D00 7F04F1D0 8E180008 */ lw $t8, 8($s0) .L7F04F1D4: /* 083D04 7F04F1D4 8FA40028 */ lw $a0, 0x28($sp) /* 083D08 7F04F1D8 0018CB00 */ sll $t9, $t8, 0xc /* 083D0C 7F04F1DC 07230005 */ bgezl $t9, .L7F04F1F4 /* 083D10 7F04F1E0 8E080064 */ lw $t0, 0x64($s0) /* 083D14 7F04F1E4 0FC14094 */ jal collect_or_interact_object /* 083D18 7F04F1E8 24050001 */ li $a1, 1 /* 083D1C 7F04F1EC AFA20020 */ sw $v0, 0x20($sp) /* 083D20 7F04F1F0 8E080064 */ lw $t0, 0x64($s0) .L7F04F1F4: /* 083D24 7F04F1F4 35094000 */ ori $t1, $t0, 0x4000 /* 083D28 7F04F1F8 AE090064 */ sw $t1, 0x64($s0) /* 083D2C 7F04F1FC 0FC0F9A8 */ jal sub_GAME_7F03E6A0 /* 083D30 7F04F200 8FA40028 */ lw $a0, 0x28($sp) /* 083D34 7F04F204 8FBF001C */ lw $ra, 0x1c($sp) /* 083D38 7F04F208 8FA20020 */ lw $v0, 0x20($sp) /* 083D3C 7F04F20C 8FB00018 */ lw $s0, 0x18($sp) /* 083D40 7F04F210 03E00008 */ jr $ra /* 083D44 7F04F214 27BD0028 */ addiu $sp, $sp, 0x28 ) #endif #ifdef NONMATCHING void sub_GAME_7F04F218(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04F218 /* 083D48 7F04F218 10A00005 */ beqz $a1, .L7F04F230 /* 083D4C 7F04F21C 8C820004 */ lw $v0, 4($a0) /* 083D50 7F04F220 904E0002 */ lbu $t6, 2($v0) /* 083D54 7F04F224 31CFFFDF */ andi $t7, $t6, 0xffdf /* 083D58 7F04F228 03E00008 */ jr $ra /* 083D5C 7F04F22C A04F0002 */ sb $t7, 2($v0) .L7F04F230: /* 083D60 7F04F230 90580002 */ lbu $t8, 2($v0) /* 083D64 7F04F234 37190020 */ ori $t9, $t8, 0x20 /* 083D68 7F04F238 A0590002 */ sb $t9, 2($v0) /* 083D6C 7F04F23C 03E00008 */ jr $ra /* 083D70 7F04F240 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F04F244(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F04F244 /* 083D74 7F04F244 8C820004 */ lw $v0, 4($a0) /* 083D78 7F04F248 8C430068 */ lw $v1, 0x68($v0) /* 083D7C 7F04F24C 50600017 */ beql $v1, $zero, .L7F04F2AC /* 083D80 7F04F250 ACC00000 */ sw $zero, ($a2) /* 083D84 7F04F254 8C4E0008 */ lw $t6, 8($v0) /* 083D88 7F04F258 31CF0100 */ andi $t7, $t6, 0x100 /* 083D8C 7F04F25C 51E00013 */ beql $t7, $zero, .L7F04F2AC /* 083D90 7F04F260 ACC00000 */ sw $zero, ($a2) /* 083D94 7F04F264 90580002 */ lbu $t8, 2($v0) /* 083D98 7F04F268 33190020 */ andi $t9, $t8, 0x20 /* 083D9C 7F04F26C 5720000F */ bnezl $t9, .L7F04F2AC /* 083DA0 7F04F270 ACC00000 */ sw $zero, ($a2) /* 083DA4 7F04F274 8C680000 */ lw $t0, ($v1) /* 083DA8 7F04F278 ACC80000 */ sw $t0, ($a2) /* 083DAC 7F04F27C 8C490068 */ lw $t1, 0x68($v0) /* 083DB0 7F04F280 252A0004 */ addiu $t2, $t1, 4 /* 083DB4 7F04F284 ACAA0000 */ sw $t2, ($a1) /* 083DB8 7F04F288 8C4B0068 */ lw $t3, 0x68($v0) /* 083DBC 7F04F28C 8FAC0010 */ lw $t4, 0x10($sp) /* 083DC0 7F04F290 C5640048 */ lwc1 $f4, 0x48($t3) /* 083DC4 7F04F294 E5840000 */ swc1 $f4, ($t4) /* 083DC8 7F04F298 8C4D0068 */ lw $t5, 0x68($v0) /* 083DCC 7F04F29C C5A60044 */ lwc1 $f6, 0x44($t5) /* 083DD0 7F04F2A0 03E00008 */ jr $ra /* 083DD4 7F04F2A4 E4E60000 */ swc1 $f6, ($a3) /* 083DD8 7F04F2A8 ACC00000 */ sw $zero, ($a2) .L7F04F2AC: /* 083DDC 7F04F2AC 03E00008 */ jr $ra /* 083DE0 7F04F2B0 00000000 */ nop ) #endif void append_text_picked_up(u8 *buffer,u8 * param2,u8 * param3) { u8 *puVar1; puVar1 = get_textptr_for_textID(0xa400); string_append_from_obseg_textbank(buffer,puVar1); return; } void append_text_ammo_amount_word(u8 *buffer,AMMOTYPES ammotype,u32 amount) { u8 *textfiletext; switch(ammotype) { case AMMO_9MM: case AMMO_9MM_2: case AMMO_RIFLE: case AMMO_PLASTIQUE: textfiletext = get_textptr_for_textID(0xa401); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_SHOTGUN: case AMMO_GRENADE: case AMMO_ROCKETS: case AMMO_REMOTEMINE: case AMMO_PROXMINE: case AMMO_TIMEDMINE: case AMMO_KNIFE: case AMMO_GRENADEROUND: case AMMO_MAGNUM: case AMMO_GGUN: case AMMO_DARTS: case AMMO_FLARE: case AMMO_PITON: case AMMO_DYNAMITE: case AMMO_BUG: case AMMO_MICRO_CAMERA: if (amount == 1) { textfiletext = get_textptr_for_textID(0xa402); string_append_from_obseg_textbank(buffer,textfiletext); } else { textfiletext = get_textptr_for_textID(0xa401); string_append_from_obseg_textbank(buffer,textfiletext); } break; case AMMO_EXPLOSIVEPEN: case AMMO_BOMBCASE: if (amount == 1) { textfiletext = get_textptr_for_textID(0xa403); string_append_from_obseg_textbank(buffer,textfiletext); } else { textfiletext = get_textptr_for_textID(0xa401); string_append_from_obseg_textbank(buffer,textfiletext); } break; case AMMO_GEKEY: case AMMO_TOKEN: if (amount == 1) { textfiletext = get_textptr_for_textID(0xa404); string_append_from_obseg_textbank(buffer,textfiletext); } else { textfiletext = get_textptr_for_textID(0xa401); string_append_from_obseg_textbank(buffer,textfiletext); } } return; } #ifdef NONMATCHING// void apped_text_ammotype(u8 *buffer,AMMOTYPES ammotype,u32 amount) { u8 *textfiletext; if (((ammotype == AMMO_9MM) || (ammotype == AMMO_9MM_2)) || (ammotype == AMMO_RIFLE)) { textfiletext = get_textptr_for_textID(0xa405); string_append_from_obseg_textbank(buffer,textfiletext); } else { if (ammotype == AMMO_KNIFE) { textfiletext = get_textptr_for_textID(41999); string_append_from_obseg_textbank(buffer,textfiletext); if (amount == 1) { textfiletext = get_textptr_for_textID(42000); string_append_from_obseg_textbank(buffer,textfiletext); } else { textfiletext = get_textptr_for_textID(0xa411); string_append_from_obseg_textbank(buffer,textfiletext); } } else { if (ammotype == AMMO_DYNAMITE) { if (amount == 1) { textfiletext = get_textptr_for_textID(0xa419); string_append_from_obseg_textbank(buffer,textfiletext); } else { textfiletext = get_textptr_for_textID(0xa41a); string_append_from_obseg_textbank(buffer,textfiletext); } textfiletext = get_textptr_for_textID(0xa418); string_append_from_obseg_textbank(buffer,textfiletext); } else { switch(ammotype) { case AMMO_SHOTGUN: textfiletext = get_textptr_for_textID(0xa406); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_GRENADE: textfiletext = get_textptr_for_textID(0xa409); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_ROCKETS: textfiletext = get_textptr_for_textID(0xa40b); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_REMOTEMINE: textfiletext = get_textptr_for_textID(0xa40c); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_PROXMINE: textfiletext = get_textptr_for_textID(0xa40d); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_TIMEDMINE: textfiletext = get_textptr_for_textID(0xa40e); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_GRENADEROUND: textfiletext = get_textptr_for_textID(0xa40a); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_MAGNUM: textfiletext = get_textptr_for_textID(0xa407); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_GGUN: textfiletext = get_textptr_for_textID(0xa408); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_DARTS: textfiletext = get_textptr_for_textID(0xa413); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_EXPLOSIVEPEN: textfiletext = get_textptr_for_textID(0xa414); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_BOMBCASE: textfiletext = get_textptr_for_textID(0xa415); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_FLARE: textfiletext = get_textptr_for_textID(0xa416); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_PITON: textfiletext = get_textptr_for_textID(0xa417); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_BUG: textfiletext = get_textptr_for_textID(0xa41b); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_MICRO_CAMERA: textfiletext = get_textptr_for_textID(0xa41c); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_GEKEY: textfiletext = get_textptr_for_textID(0xa41d); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_PLASTIQUE: textfiletext = get_textptr_for_textID(0xa41f); string_append_from_obseg_textbank(buffer,textfiletext); break; case AMMO_TOKEN: textfiletext = get_textptr_for_textID(0xa41e); string_append_from_obseg_textbank(buffer,textfiletext); } if (1 < (int)amount) { textfiletext = get_textptr_for_textID(0xa412); string_append_from_obseg_textbank(buffer,textfiletext); } } } } return; } #else GLOBAL_ASM( .late_rodata /*D:80052F84*/ glabel jpt_80052F84 .word text_pickup_shotgun_cartridge .word text_pickup_hand_grenade .word text_pickup_rocket .word text_pickup_remote_mine .word text_pickup_proximity_mine .word text_pickup_timed_mine .word pluralize_multiples .word text_pickup_grenade_round .word text_pickup_magnum_bullet .word text_pickup_golden_bullet .word text_pickup_dart .word text_pickup_explosive_pen .word text_pickup_explosive_case .word text_pickup_flare .word text_pickup_piton .word pluralize_multiples .word text_pickup_bug .word text_pickup_micro_camera .word text_pickup_goldeneye_key .word text_pickup_plastique .word pluralize_multiples .word pluralize_multiples .word pluralize_multiples .word pluralize_multiples .word pluralize_multiples .word text_pickup_token .text glabel apped_text_ammotype /* 083F3C 7F04F40C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 083F40 7F04F410 AFB00018 */ sw $s0, 0x18($sp) /* 083F44 7F04F414 24020001 */ li $v0, 1 /* 083F48 7F04F418 00808025 */ move $s0, $a0 /* 083F4C 7F04F41C AFBF001C */ sw $ra, 0x1c($sp) /* 083F50 7F04F420 10A20006 */ beq $a1, $v0, .L7F04F43C /* 083F54 7F04F424 AFA60028 */ sw $a2, 0x28($sp) /* 083F58 7F04F428 24010002 */ li $at, 2 /* 083F5C 7F04F42C 10A10003 */ beq $a1, $at, .L7F04F43C /* 083F60 7F04F430 24010003 */ li $at, 3 /* 083F64 7F04F434 54A10009 */ bnel $a1, $at, .L7F04F45C /* 083F68 7F04F438 2401000A */ li $at, 10 .L7F04F43C: /* 083F6C 7F04F43C 0FC30776 */ jal get_textptr_for_textID /* 083F70 7F04F440 3404A405 */ li $a0, 41989 /* 083F74 7F04F444 02002025 */ move $a0, $s0 /* 083F78 7F04F448 0C0029FF */ jal string_append_from_obseg_textbank /* 083F7C 7F04F44C 00402825 */ move $a1, $v0 /* 083F80 7F04F450 100000C9 */ b .L7F04F778 /* 083F84 7F04F454 8FBF001C */ lw $ra, 0x1c($sp) /* 083F88 7F04F458 2401000A */ li $at, 10 .L7F04F45C: /* 083F8C 7F04F45C 54A10019 */ bnel $a1, $at, .L7F04F4C4 /* 083F90 7F04F460 24010013 */ li $at, 19 /* 083F94 7F04F464 0FC30776 */ jal get_textptr_for_textID /* 083F98 7F04F468 3404A40F */ li $a0, 41999 /* 083F9C 7F04F46C 02002025 */ move $a0, $s0 /* 083FA0 7F04F470 0C0029FF */ jal string_append_from_obseg_textbank /* 083FA4 7F04F474 00402825 */ move $a1, $v0 /* 083FA8 7F04F478 8FAE0028 */ lw $t6, 0x28($sp) /* 083FAC 7F04F47C 24010001 */ li $at, 1 /* 083FB0 7F04F480 15C10008 */ bne $t6, $at, .L7F04F4A4 /* 083FB4 7F04F484 00000000 */ nop /* 083FB8 7F04F488 0FC30776 */ jal get_textptr_for_textID /* 083FBC 7F04F48C 3404A410 */ li $a0, 42000 /* 083FC0 7F04F490 02002025 */ move $a0, $s0 /* 083FC4 7F04F494 0C0029FF */ jal string_append_from_obseg_textbank /* 083FC8 7F04F498 00402825 */ move $a1, $v0 /* 083FCC 7F04F49C 100000B6 */ b .L7F04F778 /* 083FD0 7F04F4A0 8FBF001C */ lw $ra, 0x1c($sp) .L7F04F4A4: /* 083FD4 7F04F4A4 0FC30776 */ jal get_textptr_for_textID /* 083FD8 7F04F4A8 3404A411 */ li $a0, 42001 /* 083FDC 7F04F4AC 02002025 */ move $a0, $s0 /* 083FE0 7F04F4B0 0C0029FF */ jal string_append_from_obseg_textbank /* 083FE4 7F04F4B4 00402825 */ move $a1, $v0 /* 083FE8 7F04F4B8 100000AF */ b .L7F04F778 /* 083FEC 7F04F4BC 8FBF001C */ lw $ra, 0x1c($sp) /* 083FF0 7F04F4C0 24010013 */ li $at, 19 .L7F04F4C4: /* 083FF4 7F04F4C4 14A10017 */ bne $a1, $at, .L7F04F524 /* 083FF8 7F04F4C8 24B8FFFC */ addiu $t8, $a1, -4 /* 083FFC 7F04F4CC 8FAF0028 */ lw $t7, 0x28($sp) /* 084000 7F04F4D0 15E20008 */ bne $t7, $v0, .L7F04F4F4 /* 084004 7F04F4D4 00000000 */ nop /* 084008 7F04F4D8 0FC30776 */ jal get_textptr_for_textID /* 08400C 7F04F4DC 3404A419 */ li $a0, 42009 /* 084010 7F04F4E0 02002025 */ move $a0, $s0 /* 084014 7F04F4E4 0C0029FF */ jal string_append_from_obseg_textbank /* 084018 7F04F4E8 00402825 */ move $a1, $v0 /* 08401C 7F04F4EC 10000006 */ b .L7F04F508 /* 084020 7F04F4F0 00000000 */ nop .L7F04F4F4: /* 084024 7F04F4F4 0FC30776 */ jal get_textptr_for_textID /* 084028 7F04F4F8 3404A41A */ li $a0, 42010 /* 08402C 7F04F4FC 02002025 */ move $a0, $s0 /* 084030 7F04F500 0C0029FF */ jal string_append_from_obseg_textbank /* 084034 7F04F504 00402825 */ move $a1, $v0 .L7F04F508: /* 084038 7F04F508 0FC30776 */ jal get_textptr_for_textID /* 08403C 7F04F50C 3404A418 */ li $a0, 42008 /* 084040 7F04F510 02002025 */ move $a0, $s0 /* 084044 7F04F514 0C0029FF */ jal string_append_from_obseg_textbank /* 084048 7F04F518 00402825 */ move $a1, $v0 /* 08404C 7F04F51C 10000096 */ b .L7F04F778 /* 084050 7F04F520 8FBF001C */ lw $ra, 0x1c($sp) .L7F04F524: /* 084054 7F04F524 2F01001A */ sltiu $at, $t8, 0x1a /* 084058 7F04F528 10200089 */ beqz $at, .L7F04F750 /* 08405C 7F04F52C 0018C080 */ sll $t8, $t8, 2 /* 084060 7F04F530 3C018005 */ lui $at, %hi(jpt_80052F84) /* 084064 7F04F534 00380821 */ addu $at, $at, $t8 /* 084068 7F04F538 8C382F84 */ lw $t8, %lo(jpt_80052F84)($at) /* 08406C 7F04F53C 03000008 */ jr $t8 /* 084070 7F04F540 00000000 */ nop text_pickup_shotgun_cartridge: /* 084074 7F04F544 0FC30776 */ jal get_textptr_for_textID /* 084078 7F04F548 3404A406 */ li $a0, 41990 /* 08407C 7F04F54C 02002025 */ move $a0, $s0 /* 084080 7F04F550 0C0029FF */ jal string_append_from_obseg_textbank /* 084084 7F04F554 00402825 */ move $a1, $v0 /* 084088 7F04F558 1000007E */ b .L7F04F754 /* 08408C 7F04F55C 8FB90028 */ lw $t9, 0x28($sp) text_pickup_magnum_bullet: /* 084090 7F04F560 0FC30776 */ jal get_textptr_for_textID /* 084094 7F04F564 3404A407 */ li $a0, 41991 /* 084098 7F04F568 02002025 */ move $a0, $s0 /* 08409C 7F04F56C 0C0029FF */ jal string_append_from_obseg_textbank /* 0840A0 7F04F570 00402825 */ move $a1, $v0 /* 0840A4 7F04F574 10000077 */ b .L7F04F754 /* 0840A8 7F04F578 8FB90028 */ lw $t9, 0x28($sp) text_pickup_golden_bullet: /* 0840AC 7F04F57C 0FC30776 */ jal get_textptr_for_textID /* 0840B0 7F04F580 3404A408 */ li $a0, 41992 /* 0840B4 7F04F584 02002025 */ move $a0, $s0 /* 0840B8 7F04F588 0C0029FF */ jal string_append_from_obseg_textbank /* 0840BC 7F04F58C 00402825 */ move $a1, $v0 /* 0840C0 7F04F590 10000070 */ b .L7F04F754 /* 0840C4 7F04F594 8FB90028 */ lw $t9, 0x28($sp) text_pickup_hand_grenade: /* 0840C8 7F04F598 0FC30776 */ jal get_textptr_for_textID /* 0840CC 7F04F59C 3404A409 */ li $a0, 41993 /* 0840D0 7F04F5A0 02002025 */ move $a0, $s0 /* 0840D4 7F04F5A4 0C0029FF */ jal string_append_from_obseg_textbank /* 0840D8 7F04F5A8 00402825 */ move $a1, $v0 /* 0840DC 7F04F5AC 10000069 */ b .L7F04F754 /* 0840E0 7F04F5B0 8FB90028 */ lw $t9, 0x28($sp) text_pickup_grenade_round: /* 0840E4 7F04F5B4 0FC30776 */ jal get_textptr_for_textID /* 0840E8 7F04F5B8 3404A40A */ li $a0, 41994 /* 0840EC 7F04F5BC 02002025 */ move $a0, $s0 /* 0840F0 7F04F5C0 0C0029FF */ jal string_append_from_obseg_textbank /* 0840F4 7F04F5C4 00402825 */ move $a1, $v0 /* 0840F8 7F04F5C8 10000062 */ b .L7F04F754 /* 0840FC 7F04F5CC 8FB90028 */ lw $t9, 0x28($sp) text_pickup_rocket: /* 084100 7F04F5D0 0FC30776 */ jal get_textptr_for_textID /* 084104 7F04F5D4 3404A40B */ li $a0, 41995 /* 084108 7F04F5D8 02002025 */ move $a0, $s0 /* 08410C 7F04F5DC 0C0029FF */ jal string_append_from_obseg_textbank /* 084110 7F04F5E0 00402825 */ move $a1, $v0 /* 084114 7F04F5E4 1000005B */ b .L7F04F754 /* 084118 7F04F5E8 8FB90028 */ lw $t9, 0x28($sp) text_pickup_remote_mine: /* 08411C 7F04F5EC 0FC30776 */ jal get_textptr_for_textID /* 084120 7F04F5F0 3404A40C */ li $a0, 41996 /* 084124 7F04F5F4 02002025 */ move $a0, $s0 /* 084128 7F04F5F8 0C0029FF */ jal string_append_from_obseg_textbank /* 08412C 7F04F5FC 00402825 */ move $a1, $v0 /* 084130 7F04F600 10000054 */ b .L7F04F754 /* 084134 7F04F604 8FB90028 */ lw $t9, 0x28($sp) text_pickup_proximity_mine: /* 084138 7F04F608 0FC30776 */ jal get_textptr_for_textID /* 08413C 7F04F60C 3404A40D */ li $a0, 41997 /* 084140 7F04F610 02002025 */ move $a0, $s0 /* 084144 7F04F614 0C0029FF */ jal string_append_from_obseg_textbank /* 084148 7F04F618 00402825 */ move $a1, $v0 /* 08414C 7F04F61C 1000004D */ b .L7F04F754 /* 084150 7F04F620 8FB90028 */ lw $t9, 0x28($sp) text_pickup_timed_mine: /* 084154 7F04F624 0FC30776 */ jal get_textptr_for_textID /* 084158 7F04F628 3404A40E */ li $a0, 41998 /* 08415C 7F04F62C 02002025 */ move $a0, $s0 /* 084160 7F04F630 0C0029FF */ jal string_append_from_obseg_textbank /* 084164 7F04F634 00402825 */ move $a1, $v0 /* 084168 7F04F638 10000046 */ b .L7F04F754 /* 08416C 7F04F63C 8FB90028 */ lw $t9, 0x28($sp) text_pickup_dart: /* 084170 7F04F640 0FC30776 */ jal get_textptr_for_textID /* 084174 7F04F644 3404A413 */ li $a0, 42003 /* 084178 7F04F648 02002025 */ move $a0, $s0 /* 08417C 7F04F64C 0C0029FF */ jal string_append_from_obseg_textbank /* 084180 7F04F650 00402825 */ move $a1, $v0 /* 084184 7F04F654 1000003F */ b .L7F04F754 /* 084188 7F04F658 8FB90028 */ lw $t9, 0x28($sp) text_pickup_explosive_pen: /* 08418C 7F04F65C 0FC30776 */ jal get_textptr_for_textID /* 084190 7F04F660 3404A414 */ li $a0, 42004 /* 084194 7F04F664 02002025 */ move $a0, $s0 /* 084198 7F04F668 0C0029FF */ jal string_append_from_obseg_textbank /* 08419C 7F04F66C 00402825 */ move $a1, $v0 /* 0841A0 7F04F670 10000038 */ b .L7F04F754 /* 0841A4 7F04F674 8FB90028 */ lw $t9, 0x28($sp) text_pickup_explosive_case: /* 0841A8 7F04F678 0FC30776 */ jal get_textptr_for_textID /* 0841AC 7F04F67C 3404A415 */ li $a0, 42005 /* 0841B0 7F04F680 02002025 */ move $a0, $s0 /* 0841B4 7F04F684 0C0029FF */ jal string_append_from_obseg_textbank /* 0841B8 7F04F688 00402825 */ move $a1, $v0 /* 0841BC 7F04F68C 10000031 */ b .L7F04F754 /* 0841C0 7F04F690 8FB90028 */ lw $t9, 0x28($sp) text_pickup_flare: /* 0841C4 7F04F694 0FC30776 */ jal get_textptr_for_textID /* 0841C8 7F04F698 3404A416 */ li $a0, 42006 /* 0841CC 7F04F69C 02002025 */ move $a0, $s0 /* 0841D0 7F04F6A0 0C0029FF */ jal string_append_from_obseg_textbank /* 0841D4 7F04F6A4 00402825 */ move $a1, $v0 /* 0841D8 7F04F6A8 1000002A */ b .L7F04F754 /* 0841DC 7F04F6AC 8FB90028 */ lw $t9, 0x28($sp) text_pickup_piton: /* 0841E0 7F04F6B0 0FC30776 */ jal get_textptr_for_textID /* 0841E4 7F04F6B4 3404A417 */ li $a0, 42007 /* 0841E8 7F04F6B8 02002025 */ move $a0, $s0 /* 0841EC 7F04F6BC 0C0029FF */ jal string_append_from_obseg_textbank /* 0841F0 7F04F6C0 00402825 */ move $a1, $v0 /* 0841F4 7F04F6C4 10000023 */ b .L7F04F754 /* 0841F8 7F04F6C8 8FB90028 */ lw $t9, 0x28($sp) text_pickup_bug: /* 0841FC 7F04F6CC 0FC30776 */ jal get_textptr_for_textID /* 084200 7F04F6D0 3404A41B */ li $a0, 42011 /* 084204 7F04F6D4 02002025 */ move $a0, $s0 /* 084208 7F04F6D8 0C0029FF */ jal string_append_from_obseg_textbank /* 08420C 7F04F6DC 00402825 */ move $a1, $v0 /* 084210 7F04F6E0 1000001C */ b .L7F04F754 /* 084214 7F04F6E4 8FB90028 */ lw $t9, 0x28($sp) text_pickup_micro_camera: /* 084218 7F04F6E8 0FC30776 */ jal get_textptr_for_textID /* 08421C 7F04F6EC 3404A41C */ li $a0, 42012 /* 084220 7F04F6F0 02002025 */ move $a0, $s0 /* 084224 7F04F6F4 0C0029FF */ jal string_append_from_obseg_textbank /* 084228 7F04F6F8 00402825 */ move $a1, $v0 /* 08422C 7F04F6FC 10000015 */ b .L7F04F754 /* 084230 7F04F700 8FB90028 */ lw $t9, 0x28($sp) text_pickup_goldeneye_key: /* 084234 7F04F704 0FC30776 */ jal get_textptr_for_textID /* 084238 7F04F708 3404A41D */ li $a0, 42013 /* 08423C 7F04F70C 02002025 */ move $a0, $s0 /* 084240 7F04F710 0C0029FF */ jal string_append_from_obseg_textbank /* 084244 7F04F714 00402825 */ move $a1, $v0 /* 084248 7F04F718 1000000E */ b .L7F04F754 /* 08424C 7F04F71C 8FB90028 */ lw $t9, 0x28($sp) text_pickup_token: /* 084250 7F04F720 0FC30776 */ jal get_textptr_for_textID /* 084254 7F04F724 3404A41E */ li $a0, 42014 /* 084258 7F04F728 02002025 */ move $a0, $s0 /* 08425C 7F04F72C 0C0029FF */ jal string_append_from_obseg_textbank /* 084260 7F04F730 00402825 */ move $a1, $v0 /* 084264 7F04F734 10000007 */ b .L7F04F754 /* 084268 7F04F738 8FB90028 */ lw $t9, 0x28($sp) text_pickup_plastique: /* 08426C 7F04F73C 0FC30776 */ jal get_textptr_for_textID /* 084270 7F04F740 3404A41F */ li $a0, 42015 /* 084274 7F04F744 02002025 */ move $a0, $s0 /* 084278 7F04F748 0C0029FF */ jal string_append_from_obseg_textbank /* 08427C 7F04F74C 00402825 */ move $a1, $v0 pluralize_multiples: .L7F04F750: /* 084280 7F04F750 8FB90028 */ lw $t9, 0x28($sp) .L7F04F754: /* 084284 7F04F754 2B210002 */ slti $at, $t9, 2 /* 084288 7F04F758 54200007 */ bnezl $at, .L7F04F778 /* 08428C 7F04F75C 8FBF001C */ lw $ra, 0x1c($sp) /* 084290 7F04F760 0FC30776 */ jal get_textptr_for_textID /* 084294 7F04F764 3404A412 */ li $a0, 42002 /* 084298 7F04F768 02002025 */ move $a0, $s0 /* 08429C 7F04F76C 0C0029FF */ jal string_append_from_obseg_textbank /* 0842A0 7F04F770 00402825 */ move $a1, $v0 /* 0842A4 7F04F774 8FBF001C */ lw $ra, 0x1c($sp) .L7F04F778: /* 0842A8 7F04F778 8FB00018 */ lw $s0, 0x18($sp) /* 0842AC 7F04F77C 27BD0020 */ addiu $sp, $sp, 0x20 /* 0842B0 7F04F780 03E00008 */ jr $ra /* 0842B4 7F04F784 00000000 */ nop ) #endif void set_sound_effect_for_ammo_collection(AMMOTYPES ammotype) { switch(ammotype) { case AMMO_9MM: case AMMO_9MM_2: case AMMO_RIFLE: case AMMO_SHOTGUN: case AMMO_GRENADE: case AMMO_ROCKETS: case AMMO_GRENADEROUND: case AMMO_MAGNUM: case AMMO_GGUN: case AMMO_DARTS: case AMMO_EXPLOSIVEPEN: case AMMO_FLARE: case AMMO_PITON: case AMMO_DYNAMITE: case AMMO_GEKEY: case AMMO_TOKEN: play_sfx_a1(ptr_sfx_buf,0xea,0); break; case AMMO_REMOTEMINE: case AMMO_PROXMINE: case AMMO_TIMEDMINE: case AMMO_BOMBCASE: case AMMO_BUG: case AMMO_MICRO_CAMERA: case AMMO_PLASTIQUE: play_sfx_a1(ptr_sfx_buf,0xeb,0); break; case AMMO_KNIFE: play_sfx_a1(ptr_sfx_buf,0xe9,0); } return; } void set_sound_effect_for_weapontype_collection(ITEM_IDS weapontype) { if ((weapontype == ITEM_KNIFE) || (weapontype == ITEM_THROWKNIFE)) { play_sfx_a1(ptr_sfx_buf,0xe9,0); } else { if (((((weapontype == ITEM_REMOTEMINE) || (weapontype == ITEM_PROXIMITYMINE)) || (weapontype == ITEM_TIMEDMINE)) || ((weapontype == ITEM_BOMBCASE || (weapontype == ITEM_BUG)))) || ((weapontype == ITEM_MICROCAMERA || (weapontype == ITEM_PLASTIQUE)))) { play_sfx_a1(ptr_sfx_buf,0xeb,0); } else { if (((weapontype == ITEM_GRENADE) || (weapontype == ITEM_57)) || (weapontype == ITEM_56) ) { play_sfx_a1(ptr_sfx_buf,0xea,0); } else { if (weapontype == ITEM_LASER) { play_sfx_a1(ptr_sfx_buf,0xf2,0); } else { play_sfx_a1(ptr_sfx_buf,0xe8,0); } } } } return; } //!FIXME, i need to be properly split from chrai.c #ifdef NONMATCHING extern char * D_800529D0; extern char * D_800529D4; void prepare_ammo_type_collection_text(u8 *finaltext, AMMOTYPES ammotype, u32 quantity) { *finaltext = 0; if (j_text_trigger != 0) { apped_text_ammotype(finaltext,ammotype,quantity); if (get_num_players() < 3) { append_text_picked_up(finaltext, ammotype, quantity); } string_append_from_obseg_textbank(finaltext, (char *)D_800529D0); return; } if (get_num_players() < 3) { append_text_picked_up(finaltext, ammotype, quantity); append_text_ammo_amount_word(finaltext, ammotype, quantity); } apped_text_ammotype(finaltext, ammotype, quantity); string_append_from_obseg_textbank(finaltext, (char *)D_800529D4); } #else GLOBAL_ASM( .late_rodata .text glabel prepare_ammo_type_collection_text /* 084450 7F04F920 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 084454 7F04F924 AFBF0024 */ sw $ra, 0x24($sp) /* 084458 7F04F928 AFB20020 */ sw $s2, 0x20($sp) /* 08445C 7F04F92C AFB1001C */ sw $s1, 0x1c($sp) /* 084460 7F04F930 AFB00018 */ sw $s0, 0x18($sp) /* 084464 7F04F934 A0800000 */ sb $zero, ($a0) /* 084468 7F04F938 3C0E8005 */ lui $t6, %hi(j_text_trigger) /* 08446C 7F04F93C 8DCE84D0 */ lw $t6, %lo(j_text_trigger)($t6) /* 084470 7F04F940 00808025 */ move $s0, $a0 /* 084474 7F04F944 00A08825 */ move $s1, $a1 /* 084478 7F04F948 11C00011 */ beqz $t6, .L7F04F990 /* 08447C 7F04F94C 00C09025 */ move $s2, $a2 /* 084480 7F04F950 0FC13D03 */ jal apped_text_ammotype /* 084484 7F04F954 00000000 */ nop /* 084488 7F04F958 0FC26919 */ jal get_num_players /* 08448C 7F04F95C 00000000 */ nop /* 084490 7F04F960 28410003 */ slti $at, $v0, 3 /* 084494 7F04F964 10200004 */ beqz $at, .L7F04F978 /* 084498 7F04F968 02002025 */ move $a0, $s0 /* 08449C 7F04F96C 02202825 */ move $a1, $s1 /* 0844A0 7F04F970 0FC13CAD */ jal append_text_picked_up /* 0844A4 7F04F974 02403025 */ move $a2, $s2 .L7F04F978: /* 0844A8 7F04F978 3C058005 */ lui $a1, %hi(D_800529D0) /* 0844AC 7F04F97C 24A529D0 */ addiu $a1, %lo(D_800529D0) # addiu $a1, $a1, 0x29d0 /* 0844B0 7F04F980 0C0029FF */ jal string_append_from_obseg_textbank /* 0844B4 7F04F984 02002025 */ move $a0, $s0 /* 0844B8 7F04F988 10000016 */ b .L7F04F9E4 /* 0844BC 7F04F98C 8FBF0024 */ lw $ra, 0x24($sp) .L7F04F990: /* 0844C0 7F04F990 0FC26919 */ jal get_num_players /* 0844C4 7F04F994 00000000 */ nop /* 0844C8 7F04F998 28410003 */ slti $at, $v0, 3 /* 0844CC 7F04F99C 10200008 */ beqz $at, .L7F04F9C0 /* 0844D0 7F04F9A0 02002025 */ move $a0, $s0 /* 0844D4 7F04F9A4 02202825 */ move $a1, $s1 /* 0844D8 7F04F9A8 0FC13CAD */ jal append_text_picked_up /* 0844DC 7F04F9AC 02403025 */ move $a2, $s2 /* 0844E0 7F04F9B0 02002025 */ move $a0, $s0 /* 0844E4 7F04F9B4 02202825 */ move $a1, $s1 /* 0844E8 7F04F9B8 0FC13CBB */ jal append_text_ammo_amount_word /* 0844EC 7F04F9BC 02403025 */ move $a2, $s2 .L7F04F9C0: /* 0844F0 7F04F9C0 02002025 */ move $a0, $s0 /* 0844F4 7F04F9C4 02202825 */ move $a1, $s1 /* 0844F8 7F04F9C8 0FC13D03 */ jal apped_text_ammotype /* 0844FC 7F04F9CC 02403025 */ move $a2, $s2 /* 084500 7F04F9D0 3C058005 */ lui $a1, %hi(D_800529D4) /* 084504 7F04F9D4 24A529D4 */ addiu $a1, %lo(D_800529D4) # addiu $a1, $a1, 0x29d4 /* 084508 7F04F9D8 0C0029FF */ jal string_append_from_obseg_textbank /* 08450C 7F04F9DC 02002025 */ move $a0, $s0 /* 084510 7F04F9E0 8FBF0024 */ lw $ra, 0x24($sp) .L7F04F9E4: /* 084514 7F04F9E4 8FB00018 */ lw $s0, 0x18($sp) /* 084518 7F04F9E8 8FB1001C */ lw $s1, 0x1c($sp) /* 08451C 7F04F9EC 8FB20020 */ lw $s2, 0x20($sp) /* 084520 7F04F9F0 03E00008 */ jr $ra /* 084524 7F04F9F4 27BD0028 */ addiu $sp, $sp, 0x28 ) #endif #ifdef NONMATCHING void display_text_when_ammo_collected(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata .text glabel display_text_when_ammo_collected /* 084528 7F04F9F8 27BDFF80 */ addiu $sp, $sp, -0x80 /* 08452C 7F04F9FC AFA40080 */ sw $a0, 0x80($sp) /* 084530 7F04FA00 3C0E8005 */ lui $t6, %hi(D_800529D8) /* 084534 7F04FA04 27A4001C */ addiu $a0, $sp, 0x1c /* 084538 7F04FA08 00A03025 */ move $a2, $a1 /* 08453C 7F04FA0C 25CE29D8 */ addiu $t6, %lo(D_800529D8) # addiu $t6, $t6, 0x29d8 /* 084540 7F04FA10 8FA50080 */ lw $a1, 0x80($sp) /* 084544 7F04FA14 AFBF0014 */ sw $ra, 0x14($sp) /* 084548 7F04FA18 25D90060 */ addiu $t9, $t6, 0x60 /* 08454C 7F04FA1C 00804025 */ move $t0, $a0 .L7F04FA20: /* 084550 7F04FA20 8DC10000 */ lw $at, ($t6) /* 084554 7F04FA24 25CE000C */ addiu $t6, $t6, 0xc /* 084558 7F04FA28 2508000C */ addiu $t0, $t0, 0xc /* 08455C 7F04FA2C AD01FFF4 */ sw $at, -0xc($t0) /* 084560 7F04FA30 8DC1FFF8 */ lw $at, -8($t6) /* 084564 7F04FA34 AD01FFF8 */ sw $at, -8($t0) /* 084568 7F04FA38 8DC1FFFC */ lw $at, -4($t6) /* 08456C 7F04FA3C 15D9FFF8 */ bne $t6, $t9, .L7F04FA20 /* 084570 7F04FA40 AD01FFFC */ sw $at, -4($t0) /* 084574 7F04FA44 8DC10000 */ lw $at, ($t6) /* 084578 7F04FA48 0FC13E48 */ jal prepare_ammo_type_collection_text /* 08457C 7F04FA4C AD010000 */ sw $at, ($t0) /* 084580 7F04FA50 0FC228F2 */ jal display_string_in_lower_left_corner /* 084584 7F04FA54 27A4001C */ addiu $a0, $sp, 0x1c /* 084588 7F04FA58 8FBF0014 */ lw $ra, 0x14($sp) /* 08458C 7F04FA5C 27BD0080 */ addiu $sp, $sp, 0x80 /* 084590 7F04FA60 03E00008 */ jr $ra /* 084594 7F04FA64 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata .text glabel display_text_when_ammo_collected /* 084528 7F04F9F8 27BDFF80 */ addiu $sp, $sp, -0x80 /* 08452C 7F04F9FC AFA40080 */ sw $a0, 0x80($sp) /* 084530 7F04FA00 3C0E8005 */ lui $t6, %hi(D_800529D8) /* 084534 7F04FA04 27A4001C */ addiu $a0, $sp, 0x1c /* 084538 7F04FA08 00A03025 */ move $a2, $a1 /* 08453C 7F04FA0C 25CE29D8 */ addiu $t6, %lo(D_800529D8) # addiu $t6, $t6, 0x29d8 /* 084540 7F04FA10 8FA50080 */ lw $a1, 0x80($sp) /* 084544 7F04FA14 AFBF0014 */ sw $ra, 0x14($sp) /* 084548 7F04FA18 25D90060 */ addiu $t9, $t6, 0x60 /* 08454C 7F04FA1C 00804025 */ move $t0, $a0 .L7F04FA20: /* 084550 7F04FA20 8DC10000 */ lw $at, ($t6) /* 084554 7F04FA24 25CE000C */ addiu $t6, $t6, 0xc /* 084558 7F04FA28 2508000C */ addiu $t0, $t0, 0xc /* 08455C 7F04FA2C AD01FFF4 */ sw $at, -0xc($t0) /* 084560 7F04FA30 8DC1FFF8 */ lw $at, -8($t6) /* 084564 7F04FA34 AD01FFF8 */ sw $at, -8($t0) /* 084568 7F04FA38 8DC1FFFC */ lw $at, -4($t6) /* 08456C 7F04FA3C 15D9FFF8 */ bne $t6, $t9, .L7F04FA20 /* 084570 7F04FA40 AD01FFFC */ sw $at, -4($t0) /* 084574 7F04FA44 8DC10000 */ lw $at, ($t6) /* 084578 7F04FA48 0FC13E48 */ jal prepare_ammo_type_collection_text /* 08457C 7F04FA4C AD010000 */ sw $at, ($t0) /* 084580 7F04FA50 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 084584 7F04FA54 27A4001C */ addiu $a0, $sp, 0x1c /* 084588 7F04FA58 8FBF0014 */ lw $ra, 0x14($sp) /* 08458C 7F04FA5C 27BD0080 */ addiu $sp, $sp, 0x80 /* 084590 7F04FA60 03E00008 */ jr $ra /* 084594 7F04FA64 00000000 */ nop ) #endif #endif void add_ammo_to_inventory(AMMOTYPES ammotype,int amount,int doplaysound,int dodisplaytext) { int curammo; int maxammo; if (0 < amount) { curammo = check_cur_player_ammo_amount_in_inventory(ammotype); maxammo = get_max_ammo_for_type(ammotype); if (curammo < maxammo) { curammo = check_cur_player_ammo_amount_in_inventory(ammotype); give_cur_player_ammo(ammotype,curammo + amount); #ifdef VERSION_JP } #endif if (dodisplaytext != 0) { display_text_when_ammo_collected(ammotype,amount); } if (doplaysound != 0) { set_sound_effect_for_ammo_collection(ammotype); } if (ammotype == AMMO_GRENADE) { add_item_to_inventory(ITEM_GRENADE); } else if (ammotype == AMMO_REMOTEMINE) { add_item_to_inventory(ITEM_REMOTEMINE); add_item_to_inventory(ITEM_TRIGGER); } else if (ammotype == AMMO_PROXMINE) { add_item_to_inventory(ITEM_PROXIMITYMINE); } else if (ammotype == AMMO_TIMEDMINE) { add_item_to_inventory(ITEM_TIMEDMINE); } else if (ammotype == AMMO_KNIFE) { add_item_to_inventory(ITEM_THROWKNIFE); } else if (ammotype == AMMO_BOMBCASE) { add_item_to_inventory(ITEM_BOMBCASE); } else if (ammotype == AMMO_BUG) { add_item_to_inventory(ITEM_BUG); } else if (ammotype == AMMO_MICRO_CAMERA) { add_item_to_inventory(ITEM_MICROCAMERA); } else if (ammotype == AMMO_GEKEY) { add_item_to_inventory(ITEM_GOLDENEYEKEY); } else if (ammotype == AMMO_TOKEN) { add_item_to_inventory(ITEM_TOKEN); } else if (ammotype == AMMO_PLASTIQUE) { add_item_to_inventory(ITEM_PLASTIQUE); } #ifndef VERSION_JP } #endif } } #ifdef NONMATCHING void get_ammo_in_magazine(void) { } #else GLOBAL_ASM( .late_rodata /*D:80053060*/ glabel ammo_collected_from_magazine .word magazine_has_10_rounds_type1 .word magazine_has_10_rounds_type2 .word magazine_has_10_rounds_type3 .word magazine_has_5_rounds_type4 .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_default_ammo_rounds .word magazine_has_5_rounds_typeC .word magazine_has_3_rounds_typeD .word magazine_has_4_rounds_typeE .text glabel get_ammo_in_magazine /* 08476C 7F04FC3C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 084770 7F04FC40 AFBF0014 */ sw $ra, 0x14($sp) /* 084774 7F04FC44 8C8E0080 */ lw $t6, 0x80($a0) /* 084778 7F04FC48 24030001 */ li $v1, 1 /* 08477C 7F04FC4C 25CFFFFF */ addiu $t7, $t6, -1 /* 084780 7F04FC50 2DE1000E */ sltiu $at, $t7, 0xe /* 084784 7F04FC54 10200013 */ beqz $at, .L7F04FCA4 /* 084788 7F04FC58 000F7880 */ sll $t7, $t7, 2 /* 08478C 7F04FC5C 3C018005 */ lui $at, %hi(ammo_collected_from_magazine) /* 084790 7F04FC60 002F0821 */ addu $at, $at, $t7 /* 084794 7F04FC64 8C2F3060 */ lw $t7, %lo(ammo_collected_from_magazine)($at) /* 084798 7F04FC68 01E00008 */ jr $t7 /* 08479C 7F04FC6C 00000000 */ nop magazine_has_10_rounds_type1: /* 0847A0 7F04FC70 1000000C */ b .L7F04FCA4 /* 0847A4 7F04FC74 2403000A */ li $v1, 10 magazine_has_10_rounds_type2: /* 0847A8 7F04FC78 1000000A */ b .L7F04FCA4 /* 0847AC 7F04FC7C 2403000A */ li $v1, 10 magazine_has_10_rounds_type3: /* 0847B0 7F04FC80 10000008 */ b .L7F04FCA4 /* 0847B4 7F04FC84 2403000A */ li $v1, 10 magazine_has_5_rounds_type4: /* 0847B8 7F04FC88 10000006 */ b .L7F04FCA4 /* 0847BC 7F04FC8C 24030005 */ li $v1, 5 magazine_has_5_rounds_typeC: /* 0847C0 7F04FC90 10000004 */ b .L7F04FCA4 /* 0847C4 7F04FC94 24030005 */ li $v1, 5 magazine_has_3_rounds_typeD: /* 0847C8 7F04FC98 10000002 */ b .L7F04FCA4 /* 0847CC 7F04FC9C 24030003 */ li $v1, 3 magazine_has_4_rounds_typeE: /* 0847D0 7F04FCA0 24030004 */ li $v1, 4 magazine_has_default_ammo_rounds: .L7F04FCA4: /* 0847D4 7F04FCA4 28610002 */ slti $at, $v1, 2 /* 0847D8 7F04FCA8 5420000F */ bnezl $at, .L7F04FCE8 /* 0847DC 7F04FCAC 8FBF0014 */ lw $ra, 0x14($sp) /* 0847E0 7F04FCB0 0FC26919 */ jal get_num_players /* 0847E4 7F04FCB4 AFA3001C */ sw $v1, 0x1c($sp) /* 0847E8 7F04FCB8 24010001 */ li $at, 1 /* 0847EC 7F04FCBC 14410009 */ bne $v0, $at, .L7F04FCE4 /* 0847F0 7F04FCC0 8FA3001C */ lw $v1, 0x1c($sp) /* 0847F4 7F04FCC4 44832000 */ mtc1 $v1, $f4 /* 0847F8 7F04FCC8 3C018003 */ lui $at, %hi(solo_ammo_multiplier) /* 0847FC 7F04FCCC C4280B28 */ lwc1 $f8, %lo(solo_ammo_multiplier)($at) /* 084800 7F04FCD0 468021A0 */ cvt.s.w $f6, $f4 /* 084804 7F04FCD4 46083282 */ mul.s $f10, $f6, $f8 /* 084808 7F04FCD8 4600540D */ trunc.w.s $f16, $f10 /* 08480C 7F04FCDC 44038000 */ mfc1 $v1, $f16 /* 084810 7F04FCE0 00000000 */ nop .L7F04FCE4: /* 084814 7F04FCE4 8FBF0014 */ lw $ra, 0x14($sp) .L7F04FCE8: /* 084818 7F04FCE8 27BD0020 */ addiu $sp, $sp, 0x20 /* 08481C 7F04FCEC 00601025 */ move $v0, $v1 /* 084820 7F04FCF0 03E00008 */ jr $ra /* 084824 7F04FCF4 00000000 */ nop ) #endif #ifdef NONMATCHING void ammo_collected_from_weapon(void) { } #else GLOBAL_ASM( .late_rodata /*D:80053098*/ glabel ammo_in_weapon .word weapon_has_10_rounds_type1 .word weapon_has_10_rounds_type2 .word weapon_has_10_rounds_type3 .word weapon_has_5_rounds_type4 .word weapon_has_default_ammo .word weapon_has_default_ammo .word weapon_has_default_ammo .word weapon_has_default_ammo .word weapon_has_default_ammo .word weapon_has_default_ammo .word weapon_has_3_rounds_typeB .word weapon_has_5_rounds_typeC .word weapon_has_3_rounds_typeD .word weapon_has_4_rounds_typeE .text glabel ammo_collected_from_weapon /* 084828 7F04FCF8 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08482C 7F04FCFC AFBF0014 */ sw $ra, 0x14($sp) /* 084830 7F04FD00 AFA40020 */ sw $a0, 0x20($sp) /* 084834 7F04FD04 0FC1A50B */ jal get_ammo_type_for_weapon /* 084838 7F04FD08 80840080 */ lb $a0, 0x80($a0) /* 08483C 7F04FD0C 8FAF0020 */ lw $t7, 0x20($sp) /* 084840 7F04FD10 2448FFFF */ addiu $t0, $v0, -1 /* 084844 7F04FD14 24030001 */ li $v1, 1 /* 084848 7F04FD18 8DF80008 */ lw $t8, 8($t7) /* 08484C 7F04FD1C 2D01000E */ sltiu $at, $t0, 0xe /* 084850 7F04FD20 0018C840 */ sll $t9, $t8, 1 /* 084854 7F04FD24 07210003 */ bgez $t9, .L7F04FD34 /* 084858 7F04FD28 00000000 */ nop /* 08485C 7F04FD2C 10000028 */ b .L7F04FDD0 /* 084860 7F04FD30 00001025 */ move $v0, $zero .L7F04FD34: /* 084864 7F04FD34 10200015 */ beqz $at, .L7F04FD8C /* 084868 7F04FD38 00084080 */ sll $t0, $t0, 2 /* 08486C 7F04FD3C 3C018005 */ lui $at, %hi(ammo_in_weapon) /* 084870 7F04FD40 00280821 */ addu $at, $at, $t0 /* 084874 7F04FD44 8C283098 */ lw $t0, %lo(ammo_in_weapon)($at) /* 084878 7F04FD48 01000008 */ jr $t0 /* 08487C 7F04FD4C 00000000 */ nop weapon_has_10_rounds_type1: /* 084880 7F04FD50 1000000E */ b .L7F04FD8C /* 084884 7F04FD54 2403000A */ li $v1, 10 weapon_has_10_rounds_type2: /* 084888 7F04FD58 1000000C */ b .L7F04FD8C /* 08488C 7F04FD5C 2403000A */ li $v1, 10 weapon_has_10_rounds_type3: /* 084890 7F04FD60 1000000A */ b .L7F04FD8C /* 084894 7F04FD64 2403000A */ li $v1, 10 weapon_has_5_rounds_type4: /* 084898 7F04FD68 10000008 */ b .L7F04FD8C /* 08489C 7F04FD6C 24030005 */ li $v1, 5 weapon_has_5_rounds_typeC: /* 0848A0 7F04FD70 10000006 */ b .L7F04FD8C /* 0848A4 7F04FD74 24030005 */ li $v1, 5 weapon_has_3_rounds_typeD: /* 0848A8 7F04FD78 10000004 */ b .L7F04FD8C /* 0848AC 7F04FD7C 24030003 */ li $v1, 3 weapon_has_4_rounds_typeE: /* 0848B0 7F04FD80 10000002 */ b .L7F04FD8C /* 0848B4 7F04FD84 24030004 */ li $v1, 4 weapon_has_3_rounds_typeB: /* 0848B8 7F04FD88 24030003 */ li $v1, 3 weapon_has_default_ammo: .L7F04FD8C: /* 0848BC 7F04FD8C 28610002 */ slti $at, $v1, 2 /* 0848C0 7F04FD90 5420000F */ bnezl $at, .L7F04FDD0 /* 0848C4 7F04FD94 00601025 */ move $v0, $v1 /* 0848C8 7F04FD98 0FC26919 */ jal get_num_players /* 0848CC 7F04FD9C AFA30018 */ sw $v1, 0x18($sp) /* 0848D0 7F04FDA0 24010001 */ li $at, 1 /* 0848D4 7F04FDA4 14410009 */ bne $v0, $at, .L7F04FDCC /* 0848D8 7F04FDA8 8FA30018 */ lw $v1, 0x18($sp) /* 0848DC 7F04FDAC 44832000 */ mtc1 $v1, $f4 /* 0848E0 7F04FDB0 3C018003 */ lui $at, %hi(solo_ammo_multiplier) /* 0848E4 7F04FDB4 C4280B28 */ lwc1 $f8, %lo(solo_ammo_multiplier)($at) /* 0848E8 7F04FDB8 468021A0 */ cvt.s.w $f6, $f4 /* 0848EC 7F04FDBC 46083282 */ mul.s $f10, $f6, $f8 /* 0848F0 7F04FDC0 4600540D */ trunc.w.s $f16, $f10 /* 0848F4 7F04FDC4 44038000 */ mfc1 $v1, $f16 /* 0848F8 7F04FDC8 00000000 */ nop .L7F04FDCC: /* 0848FC 7F04FDCC 00601025 */ move $v0, $v1 .L7F04FDD0: /* 084900 7F04FDD0 8FBF0014 */ lw $ra, 0x14($sp) /* 084904 7F04FDD4 27BD0020 */ addiu $sp, $sp, 0x20 /* 084908 7F04FDD8 03E00008 */ jr $ra /* 08490C 7F04FDDC 00000000 */ nop ) #endif #ifdef NONMATCHING void generate_language_specific_text_for_weapon(char *finalstring,ITEM_IDS itemtype) { bool morethan2players; u32 numplayers; AMMOTYPES ammotype; char *textfiletext; size_t strlen; morethan2players = false; if (j_text_trigger == 0) { numplayers = get_num_players(); if ((int)numplayers < 3) { textfiletext = get_textptr_for_textID(0xa400); textpointer_load_parse_something(finalstring,textfiletext); } } else { textpointer_load_parse_something(finalstring,""); numplayers = get_num_players(); if (2 < (int)numplayers) { morethan2players = true; } } switch(itemtype) { case ITEM_KNIFE: textfiletext = get_textptr_for_textID(0xa420); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_THROWKNIFE: case ITEM_GRENADE: case ITEM_TIMEDMINE: case ITEM_PROXIMITYMINE: case ITEM_REMOTEMINE: case ITEM_BOMBCASE: case ITEM_PLASTIQUE: case ITEM_BUG: case ITEM_MICROCAMERA: case ITEM_GOLDENEYEKEY: case ITEM_56: case ITEM_57: case ITEM_TOKEN: ammotype = get_ammo_type_for_weapon(itemtype); prepare_ammo_type_collection_text((u8 *)finalstring,ammotype,1); return; case ITEM_WPPK: textfiletext = get_textptr_for_textID(0xa421); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_WPPKSIL: textfiletext = get_textptr_for_textID(0xa422); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_TT33: textfiletext = get_textptr_for_textID(0xa423); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_SKORPION: textfiletext = get_textptr_for_textID(0xa424); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_AK47: textfiletext = get_textptr_for_textID(0xa425); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_UZI: textfiletext = get_textptr_for_textID(0xa426); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_MP5K: textfiletext = get_textptr_for_textID(0xa427); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_MP5KSIL: textfiletext = get_textptr_for_textID(0xa428); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_SPECTRE: textfiletext = get_textptr_for_textID(0xa429); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_M16: textfiletext = get_textptr_for_textID(0xa42a); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_FNP90: textfiletext = get_textptr_for_textID(0xa42b); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_SHOTGUN: textfiletext = get_textptr_for_textID(0xa42c); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_AUTOSHOT: textfiletext = get_textptr_for_textID(0xa42d); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_SNIPERRIFLE: textfiletext = get_textptr_for_textID(0xa42e); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_RUGER: textfiletext = get_textptr_for_textID(0xa431); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_GOLDENGUN: textfiletext = get_textptr_for_textID(0xa432); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_SILVERWPPK: textfiletext = get_textptr_for_textID(0xa436); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_GOLDWPPK: textfiletext = get_textptr_for_textID(0xa437); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_LASER: textfiletext = get_textptr_for_textID(0xa433); string_append_from_obseg_textbank(finalstring,textfiletext); break; default: textfiletext = get_textptr_for_textID(0xa43b); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_GRENADELAUNCH: textfiletext = get_textptr_for_textID(0xa42f); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_ROCKETLAUNCH: textfiletext = get_textptr_for_textID(0xa430); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_FLAREPISTOL: textfiletext = get_textptr_for_textID(0xa434); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_PITONGUN: textfiletext = get_textptr_for_textID(0xa435); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_KEYCARD: textfiletext = get_textptr_for_textID(0xa438); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_KEYYALE: textfiletext = get_textptr_for_textID(0xa439); string_append_from_obseg_textbank(finalstring,textfiletext); break; case ITEM_KEYBOLT: textfiletext = get_textptr_for_textID(0xa43a); string_append_from_obseg_textbank(finalstring,textfiletext); } if ((j_text_trigger != 0) && (!morethan2players)) { strlen = strlen(finalstring); if (finalstring[strlen - 1] == '\n') { strlen = strlen(finalstring); finalstring[strlen - 1] = '\0'; } textfiletext = get_textptr_for_textID(0xa400); string_append_from_obseg_textbank(finalstring,textfiletext); string_append_from_obseg_textbank(finalstring,"\n"); } return; } #else GLOBAL_ASM( .late_rodata /*D:800530D0*/ glabel jpt_800530D0 .word weapon_collect_msg_a_hunting_knife .word weapon_collect_msg_BLANK .word weapon_collect_msg_a_pp7 .word weapon_collect_msg_a_silenced_pp7 .word weapon_collect_msg_a_dd44 .word weapon_collect_msg_a_klobb .word weapon_collect_msg_a_kf7 .word weapon_collect_msg_a_zmg .word weapon_collect_msg_a_d5k .word weapon_collect_msg_a_silenced_d5k .word weapon_collect_msg_a_phantom .word weapon_collect_msg_a_ar33 .word weapon_collect_msg_a_rcp90 .word weapon_collect_msg_a_shotgun .word weapon_collect_msg_an_auto_shotgun .word weapon_collect_msg_a_sniper .word weapon_collect_msg_a_cougar_magnum .word weapon_collect_msg_a_golden_gun .word weapon_collect_msg_a_silver_pp7 .word weapon_collect_msg_a_gold_pp7 .word weapon_collect_msg_a_moonraker_laser .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_grenade_launcher .word weapon_collect_msg_a_rocket_launcher .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_a_flare_pistol .word weapon_collect_msg_a_piton_gun .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_BLANK .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_keycard .word weapon_collect_msg_a_yale_key .word weapon_collect_msg_a_bolt_key .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_a_new_weapon .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .word weapon_collect_msg_BLANK .text glabel generate_language_specific_text_for_weapon /* 084910 7F04FDE0 3C0E8005 */ lui $t6, %hi(j_text_trigger) /* 084914 7F04FDE4 8DCE84D0 */ lw $t6, %lo(j_text_trigger)($t6) /* 084918 7F04FDE8 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 08491C 7F04FDEC AFB00018 */ sw $s0, 0x18($sp) /* 084920 7F04FDF0 00808025 */ move $s0, $a0 /* 084924 7F04FDF4 AFBF001C */ sw $ra, 0x1c($sp) /* 084928 7F04FDF8 AFA5002C */ sw $a1, 0x2c($sp) /* 08492C 7F04FDFC 11C0000B */ beqz $t6, .L7F04FE2C /* 084930 7F04FE00 AFA00024 */ sw $zero, 0x24($sp) /* 084934 7F04FE04 3C058005 */ lui $a1, %hi(D_80052A3C) /* 084938 7F04FE08 0C0029DC */ jal textpointer_load_parse_something /* 08493C 7F04FE0C 24A52A3C */ addiu $a1, %lo(D_80052A3C) # addiu $a1, $a1, 0x2a3c /* 084940 7F04FE10 0FC26919 */ jal get_num_players /* 084944 7F04FE14 00000000 */ nop /* 084948 7F04FE18 28410003 */ slti $at, $v0, 3 /* 08494C 7F04FE1C 1420000D */ bnez $at, .L7F04FE54 /* 084950 7F04FE20 240F0001 */ li $t7, 1 /* 084954 7F04FE24 1000000B */ b .L7F04FE54 /* 084958 7F04FE28 AFAF0024 */ sw $t7, 0x24($sp) .L7F04FE2C: /* 08495C 7F04FE2C 0FC26919 */ jal get_num_players /* 084960 7F04FE30 00000000 */ nop /* 084964 7F04FE34 28410003 */ slti $at, $v0, 3 /* 084968 7F04FE38 50200007 */ beql $at, $zero, .L7F04FE58 /* 08496C 7F04FE3C 8FB8002C */ lw $t8, 0x2c($sp) /* 084970 7F04FE40 0FC30776 */ jal get_textptr_for_textID /* 084974 7F04FE44 3404A400 */ li $a0, 41984 /* 084978 7F04FE48 02002025 */ move $a0, $s0 /* 08497C 7F04FE4C 0C0029DC */ jal textpointer_load_parse_something /* 084980 7F04FE50 00402825 */ move $a1, $v0 .L7F04FE54: /* 084984 7F04FE54 8FB8002C */ lw $t8, 0x2c($sp) .L7F04FE58: /* 084988 7F04FE58 2719FFFE */ addiu $t9, $t8, -2 /* 08498C 7F04FE5C 2F210057 */ sltiu $at, $t9, 0x57 /* 084990 7F04FE60 102000CB */ beqz $at, .L7F050190 /* 084994 7F04FE64 0019C880 */ sll $t9, $t9, 2 /* 084998 7F04FE68 3C018005 */ lui $at, %hi(jpt_800530D0) /* 08499C 7F04FE6C 00390821 */ addu $at, $at, $t9 /* 0849A0 7F04FE70 8C3930D0 */ lw $t9, %lo(jpt_800530D0)($at) /* 0849A4 7F04FE74 03200008 */ jr $t9 /* 0849A8 7F04FE78 00000000 */ nop weapon_collect_msg_BLANK: /* 0849AC 7F04FE7C 0FC1A50B */ jal get_ammo_type_for_weapon /* 0849B0 7F04FE80 8FA4002C */ lw $a0, 0x2c($sp) /* 0849B4 7F04FE84 02002025 */ move $a0, $s0 /* 0849B8 7F04FE88 00402825 */ move $a1, $v0 /* 0849BC 7F04FE8C 0FC13E48 */ jal prepare_ammo_type_collection_text /* 0849C0 7F04FE90 24060001 */ li $a2, 1 /* 0849C4 7F04FE94 100000DF */ b .L7F050214 /* 0849C8 7F04FE98 8FBF001C */ lw $ra, 0x1c($sp) weapon_collect_msg_a_hunting_knife: /* 0849CC 7F04FE9C 0FC30776 */ jal get_textptr_for_textID /* 0849D0 7F04FEA0 3404A420 */ li $a0, 42016 /* 0849D4 7F04FEA4 02002025 */ move $a0, $s0 /* 0849D8 7F04FEA8 0C0029FF */ jal string_append_from_obseg_textbank /* 0849DC 7F04FEAC 00402825 */ move $a1, $v0 /* 0849E0 7F04FEB0 100000BC */ b .L7F0501A4 /* 0849E4 7F04FEB4 00000000 */ nop weapon_collect_msg_a_pp7: /* 0849E8 7F04FEB8 0FC30776 */ jal get_textptr_for_textID /* 0849EC 7F04FEBC 3404A421 */ li $a0, 42017 /* 0849F0 7F04FEC0 02002025 */ move $a0, $s0 /* 0849F4 7F04FEC4 0C0029FF */ jal string_append_from_obseg_textbank /* 0849F8 7F04FEC8 00402825 */ move $a1, $v0 /* 0849FC 7F04FECC 100000B5 */ b .L7F0501A4 /* 084A00 7F04FED0 00000000 */ nop weapon_collect_msg_a_silenced_pp7: /* 084A04 7F04FED4 0FC30776 */ jal get_textptr_for_textID /* 084A08 7F04FED8 3404A422 */ li $a0, 42018 /* 084A0C 7F04FEDC 02002025 */ move $a0, $s0 /* 084A10 7F04FEE0 0C0029FF */ jal string_append_from_obseg_textbank /* 084A14 7F04FEE4 00402825 */ move $a1, $v0 /* 084A18 7F04FEE8 100000AE */ b .L7F0501A4 /* 084A1C 7F04FEEC 00000000 */ nop weapon_collect_msg_a_dd44: /* 084A20 7F04FEF0 0FC30776 */ jal get_textptr_for_textID /* 084A24 7F04FEF4 3404A423 */ li $a0, 42019 /* 084A28 7F04FEF8 02002025 */ move $a0, $s0 /* 084A2C 7F04FEFC 0C0029FF */ jal string_append_from_obseg_textbank /* 084A30 7F04FF00 00402825 */ move $a1, $v0 /* 084A34 7F04FF04 100000A7 */ b .L7F0501A4 /* 084A38 7F04FF08 00000000 */ nop weapon_collect_msg_a_klobb: /* 084A3C 7F04FF0C 0FC30776 */ jal get_textptr_for_textID /* 084A40 7F04FF10 3404A424 */ li $a0, 42020 /* 084A44 7F04FF14 02002025 */ move $a0, $s0 /* 084A48 7F04FF18 0C0029FF */ jal string_append_from_obseg_textbank /* 084A4C 7F04FF1C 00402825 */ move $a1, $v0 /* 084A50 7F04FF20 100000A0 */ b .L7F0501A4 /* 084A54 7F04FF24 00000000 */ nop weapon_collect_msg_a_kf7: /* 084A58 7F04FF28 0FC30776 */ jal get_textptr_for_textID /* 084A5C 7F04FF2C 3404A425 */ li $a0, 42021 /* 084A60 7F04FF30 02002025 */ move $a0, $s0 /* 084A64 7F04FF34 0C0029FF */ jal string_append_from_obseg_textbank /* 084A68 7F04FF38 00402825 */ move $a1, $v0 /* 084A6C 7F04FF3C 10000099 */ b .L7F0501A4 /* 084A70 7F04FF40 00000000 */ nop weapon_collect_msg_a_zmg: /* 084A74 7F04FF44 0FC30776 */ jal get_textptr_for_textID /* 084A78 7F04FF48 3404A426 */ li $a0, 42022 /* 084A7C 7F04FF4C 02002025 */ move $a0, $s0 /* 084A80 7F04FF50 0C0029FF */ jal string_append_from_obseg_textbank /* 084A84 7F04FF54 00402825 */ move $a1, $v0 /* 084A88 7F04FF58 10000092 */ b .L7F0501A4 /* 084A8C 7F04FF5C 00000000 */ nop weapon_collect_msg_a_d5k: /* 084A90 7F04FF60 0FC30776 */ jal get_textptr_for_textID /* 084A94 7F04FF64 3404A427 */ li $a0, 42023 /* 084A98 7F04FF68 02002025 */ move $a0, $s0 /* 084A9C 7F04FF6C 0C0029FF */ jal string_append_from_obseg_textbank /* 084AA0 7F04FF70 00402825 */ move $a1, $v0 /* 084AA4 7F04FF74 1000008B */ b .L7F0501A4 /* 084AA8 7F04FF78 00000000 */ nop weapon_collect_msg_a_silenced_d5k: /* 084AAC 7F04FF7C 0FC30776 */ jal get_textptr_for_textID /* 084AB0 7F04FF80 3404A428 */ li $a0, 42024 /* 084AB4 7F04FF84 02002025 */ move $a0, $s0 /* 084AB8 7F04FF88 0C0029FF */ jal string_append_from_obseg_textbank /* 084ABC 7F04FF8C 00402825 */ move $a1, $v0 /* 084AC0 7F04FF90 10000084 */ b .L7F0501A4 /* 084AC4 7F04FF94 00000000 */ nop weapon_collect_msg_a_phantom: /* 084AC8 7F04FF98 0FC30776 */ jal get_textptr_for_textID /* 084ACC 7F04FF9C 3404A429 */ li $a0, 42025 /* 084AD0 7F04FFA0 02002025 */ move $a0, $s0 /* 084AD4 7F04FFA4 0C0029FF */ jal string_append_from_obseg_textbank /* 084AD8 7F04FFA8 00402825 */ move $a1, $v0 /* 084ADC 7F04FFAC 1000007D */ b .L7F0501A4 /* 084AE0 7F04FFB0 00000000 */ nop weapon_collect_msg_a_ar33: /* 084AE4 7F04FFB4 0FC30776 */ jal get_textptr_for_textID /* 084AE8 7F04FFB8 3404A42A */ li $a0, 42026 /* 084AEC 7F04FFBC 02002025 */ move $a0, $s0 /* 084AF0 7F04FFC0 0C0029FF */ jal string_append_from_obseg_textbank /* 084AF4 7F04FFC4 00402825 */ move $a1, $v0 /* 084AF8 7F04FFC8 10000076 */ b .L7F0501A4 /* 084AFC 7F04FFCC 00000000 */ nop weapon_collect_msg_a_rcp90: /* 084B00 7F04FFD0 0FC30776 */ jal get_textptr_for_textID /* 084B04 7F04FFD4 3404A42B */ li $a0, 42027 /* 084B08 7F04FFD8 02002025 */ move $a0, $s0 /* 084B0C 7F04FFDC 0C0029FF */ jal string_append_from_obseg_textbank /* 084B10 7F04FFE0 00402825 */ move $a1, $v0 /* 084B14 7F04FFE4 1000006F */ b .L7F0501A4 /* 084B18 7F04FFE8 00000000 */ nop weapon_collect_msg_a_shotgun: /* 084B1C 7F04FFEC 0FC30776 */ jal get_textptr_for_textID /* 084B20 7F04FFF0 3404A42C */ li $a0, 42028 /* 084B24 7F04FFF4 02002025 */ move $a0, $s0 /* 084B28 7F04FFF8 0C0029FF */ jal string_append_from_obseg_textbank /* 084B2C 7F04FFFC 00402825 */ move $a1, $v0 /* 084B30 7F050000 10000068 */ b .L7F0501A4 /* 084B34 7F050004 00000000 */ nop weapon_collect_msg_an_auto_shotgun: /* 084B38 7F050008 0FC30776 */ jal get_textptr_for_textID /* 084B3C 7F05000C 3404A42D */ li $a0, 42029 /* 084B40 7F050010 02002025 */ move $a0, $s0 /* 084B44 7F050014 0C0029FF */ jal string_append_from_obseg_textbank /* 084B48 7F050018 00402825 */ move $a1, $v0 /* 084B4C 7F05001C 10000061 */ b .L7F0501A4 /* 084B50 7F050020 00000000 */ nop weapon_collect_msg_a_sniper: /* 084B54 7F050024 0FC30776 */ jal get_textptr_for_textID /* 084B58 7F050028 3404A42E */ li $a0, 42030 /* 084B5C 7F05002C 02002025 */ move $a0, $s0 /* 084B60 7F050030 0C0029FF */ jal string_append_from_obseg_textbank /* 084B64 7F050034 00402825 */ move $a1, $v0 /* 084B68 7F050038 1000005A */ b .L7F0501A4 /* 084B6C 7F05003C 00000000 */ nop weapon_collect_msg_a_grenade_launcher: /* 084B70 7F050040 0FC30776 */ jal get_textptr_for_textID /* 084B74 7F050044 3404A42F */ li $a0, 42031 /* 084B78 7F050048 02002025 */ move $a0, $s0 /* 084B7C 7F05004C 0C0029FF */ jal string_append_from_obseg_textbank /* 084B80 7F050050 00402825 */ move $a1, $v0 /* 084B84 7F050054 10000053 */ b .L7F0501A4 /* 084B88 7F050058 00000000 */ nop weapon_collect_msg_a_rocket_launcher: /* 084B8C 7F05005C 0FC30776 */ jal get_textptr_for_textID /* 084B90 7F050060 3404A430 */ li $a0, 42032 /* 084B94 7F050064 02002025 */ move $a0, $s0 /* 084B98 7F050068 0C0029FF */ jal string_append_from_obseg_textbank /* 084B9C 7F05006C 00402825 */ move $a1, $v0 /* 084BA0 7F050070 1000004C */ b .L7F0501A4 /* 084BA4 7F050074 00000000 */ nop weapon_collect_msg_a_cougar_magnum: /* 084BA8 7F050078 0FC30776 */ jal get_textptr_for_textID /* 084BAC 7F05007C 3404A431 */ li $a0, 42033 /* 084BB0 7F050080 02002025 */ move $a0, $s0 /* 084BB4 7F050084 0C0029FF */ jal string_append_from_obseg_textbank /* 084BB8 7F050088 00402825 */ move $a1, $v0 /* 084BBC 7F05008C 10000045 */ b .L7F0501A4 /* 084BC0 7F050090 00000000 */ nop weapon_collect_msg_a_golden_gun: /* 084BC4 7F050094 0FC30776 */ jal get_textptr_for_textID /* 084BC8 7F050098 3404A432 */ li $a0, 42034 /* 084BCC 7F05009C 02002025 */ move $a0, $s0 /* 084BD0 7F0500A0 0C0029FF */ jal string_append_from_obseg_textbank /* 084BD4 7F0500A4 00402825 */ move $a1, $v0 /* 084BD8 7F0500A8 1000003E */ b .L7F0501A4 /* 084BDC 7F0500AC 00000000 */ nop weapon_collect_msg_a_moonraker_laser: /* 084BE0 7F0500B0 0FC30776 */ jal get_textptr_for_textID /* 084BE4 7F0500B4 3404A433 */ li $a0, 42035 /* 084BE8 7F0500B8 02002025 */ move $a0, $s0 /* 084BEC 7F0500BC 0C0029FF */ jal string_append_from_obseg_textbank /* 084BF0 7F0500C0 00402825 */ move $a1, $v0 /* 084BF4 7F0500C4 10000037 */ b .L7F0501A4 /* 084BF8 7F0500C8 00000000 */ nop weapon_collect_msg_a_flare_pistol: /* 084BFC 7F0500CC 0FC30776 */ jal get_textptr_for_textID /* 084C00 7F0500D0 3404A434 */ li $a0, 42036 /* 084C04 7F0500D4 02002025 */ move $a0, $s0 /* 084C08 7F0500D8 0C0029FF */ jal string_append_from_obseg_textbank /* 084C0C 7F0500DC 00402825 */ move $a1, $v0 /* 084C10 7F0500E0 10000030 */ b .L7F0501A4 /* 084C14 7F0500E4 00000000 */ nop weapon_collect_msg_a_piton_gun: /* 084C18 7F0500E8 0FC30776 */ jal get_textptr_for_textID /* 084C1C 7F0500EC 3404A435 */ li $a0, 42037 /* 084C20 7F0500F0 02002025 */ move $a0, $s0 /* 084C24 7F0500F4 0C0029FF */ jal string_append_from_obseg_textbank /* 084C28 7F0500F8 00402825 */ move $a1, $v0 /* 084C2C 7F0500FC 10000029 */ b .L7F0501A4 /* 084C30 7F050100 00000000 */ nop weapon_collect_msg_a_silver_pp7: /* 084C34 7F050104 0FC30776 */ jal get_textptr_for_textID /* 084C38 7F050108 3404A436 */ li $a0, 42038 /* 084C3C 7F05010C 02002025 */ move $a0, $s0 /* 084C40 7F050110 0C0029FF */ jal string_append_from_obseg_textbank /* 084C44 7F050114 00402825 */ move $a1, $v0 /* 084C48 7F050118 10000022 */ b .L7F0501A4 /* 084C4C 7F05011C 00000000 */ nop weapon_collect_msg_a_gold_pp7: /* 084C50 7F050120 0FC30776 */ jal get_textptr_for_textID /* 084C54 7F050124 3404A437 */ li $a0, 42039 /* 084C58 7F050128 02002025 */ move $a0, $s0 /* 084C5C 7F05012C 0C0029FF */ jal string_append_from_obseg_textbank /* 084C60 7F050130 00402825 */ move $a1, $v0 /* 084C64 7F050134 1000001B */ b .L7F0501A4 /* 084C68 7F050138 00000000 */ nop weapon_collect_msg_a_keycard: /* 084C6C 7F05013C 0FC30776 */ jal get_textptr_for_textID /* 084C70 7F050140 3404A438 */ li $a0, 42040 /* 084C74 7F050144 02002025 */ move $a0, $s0 /* 084C78 7F050148 0C0029FF */ jal string_append_from_obseg_textbank /* 084C7C 7F05014C 00402825 */ move $a1, $v0 /* 084C80 7F050150 10000014 */ b .L7F0501A4 /* 084C84 7F050154 00000000 */ nop weapon_collect_msg_a_yale_key: /* 084C88 7F050158 0FC30776 */ jal get_textptr_for_textID /* 084C8C 7F05015C 3404A439 */ li $a0, 42041 /* 084C90 7F050160 02002025 */ move $a0, $s0 /* 084C94 7F050164 0C0029FF */ jal string_append_from_obseg_textbank /* 084C98 7F050168 00402825 */ move $a1, $v0 /* 084C9C 7F05016C 1000000D */ b .L7F0501A4 /* 084CA0 7F050170 00000000 */ nop weapon_collect_msg_a_bolt_key: /* 084CA4 7F050174 0FC30776 */ jal get_textptr_for_textID /* 084CA8 7F050178 3404A43A */ li $a0, 42042 /* 084CAC 7F05017C 02002025 */ move $a0, $s0 /* 084CB0 7F050180 0C0029FF */ jal string_append_from_obseg_textbank /* 084CB4 7F050184 00402825 */ move $a1, $v0 /* 084CB8 7F050188 10000006 */ b .L7F0501A4 /* 084CBC 7F05018C 00000000 */ nop weapon_collect_msg_a_new_weapon: .L7F050190: /* 084CC0 7F050190 0FC30776 */ jal get_textptr_for_textID /* 084CC4 7F050194 3404A43B */ li $a0, 42043 /* 084CC8 7F050198 02002025 */ move $a0, $s0 /* 084CCC 7F05019C 0C0029FF */ jal string_append_from_obseg_textbank /* 084CD0 7F0501A0 00402825 */ move $a1, $v0 .L7F0501A4: /* 084CD4 7F0501A4 3C088005 */ lui $t0, %hi(j_text_trigger) /* 084CD8 7F0501A8 8D0884D0 */ lw $t0, %lo(j_text_trigger)($t0) /* 084CDC 7F0501AC 8FA90024 */ lw $t1, 0x24($sp) /* 084CE0 7F0501B0 51000018 */ beql $t0, $zero, .L7F050214 /* 084CE4 7F0501B4 8FBF001C */ lw $ra, 0x1c($sp) /* 084CE8 7F0501B8 55200016 */ bnezl $t1, .L7F050214 /* 084CEC 7F0501BC 8FBF001C */ lw $ra, 0x1c($sp) /* 084CF0 7F0501C0 0C004E1F */ jal strlen /* 084CF4 7F0501C4 02002025 */ move $a0, $s0 /* 084CF8 7F0501C8 00505021 */ addu $t2, $v0, $s0 /* 084CFC 7F0501CC 914BFFFF */ lbu $t3, -1($t2) /* 084D00 7F0501D0 2401000A */ li $at, 10 /* 084D04 7F0501D4 15610005 */ bne $t3, $at, .L7F0501EC /* 084D08 7F0501D8 00000000 */ nop /* 084D0C 7F0501DC 0C004E1F */ jal strlen /* 084D10 7F0501E0 02002025 */ move $a0, $s0 /* 084D14 7F0501E4 02026021 */ addu $t4, $s0, $v0 /* 084D18 7F0501E8 A180FFFF */ sb $zero, -1($t4) .L7F0501EC: /* 084D1C 7F0501EC 0FC30776 */ jal get_textptr_for_textID /* 084D20 7F0501F0 3404A400 */ li $a0, 41984 /* 084D24 7F0501F4 02002025 */ move $a0, $s0 /* 084D28 7F0501F8 0C0029FF */ jal string_append_from_obseg_textbank /* 084D2C 7F0501FC 00402825 */ move $a1, $v0 /* 084D30 7F050200 3C058005 */ lui $a1, %hi(D_80052A40) /* 084D34 7F050204 24A52A40 */ addiu $a1, %lo(D_80052A40) # addiu $a1, $a1, 0x2a40 /* 084D38 7F050208 0C0029FF */ jal string_append_from_obseg_textbank /* 084D3C 7F05020C 02002025 */ move $a0, $s0 /* 084D40 7F050210 8FBF001C */ lw $ra, 0x1c($sp) .L7F050214: /* 084D44 7F050214 8FB00018 */ lw $s0, 0x18($sp) /* 084D48 7F050218 27BD0028 */ addiu $sp, $sp, 0x28 /* 084D4C 7F05021C 03E00008 */ jr $ra /* 084D50 7F050220 00000000 */ nop ) #endif void display_text_for_weapon_in_lower_left_corner(ITEM_IDS weaponid) { char acStack100 [100]; generate_language_specific_text_for_weapon(acStack100,weaponid); #ifdef VERSION_JP jp_display_string_in_lower_left_corner(acStack100); #else display_string_in_lower_left_corner(acStack100); #endif return; } #ifdef NONMATCHING void collect_or_interact_object(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata /*D:8005322C*/ glabel object_interaction_table .word interact_default_object .word interact_key_object .word interact_default_object .word interact_default_object .word interact_magazine_object .word interact_weapon_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_ammobox_object .word interact_bodyarmor_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .text glabel collect_or_interact_object /* 084D80 7F050250 27BDFF90 */ addiu $sp, $sp, -0x70 /* 084D84 7F050254 AFBF001C */ sw $ra, 0x1c($sp) /* 084D88 7F050258 AFB00018 */ sw $s0, 0x18($sp) /* 084D8C 7F05025C AFA40070 */ sw $a0, 0x70($sp) /* 084D90 7F050260 AFA50074 */ sw $a1, 0x74($sp) /* 084D94 7F050264 8C830004 */ lw $v1, 4($a0) /* 084D98 7F050268 3C0F8008 */ lui $t7, %hi(pPlayer) /* 084D9C 7F05026C 8DEFA0B0 */ lw $t7, %lo(pPlayer)($t7) /* 084DA0 7F050270 AFA3006C */ sw $v1, 0x6c($sp) /* 084DA4 7F050274 3C198005 */ lui $t9, %hi(clock_timer) /* 084DA8 7F050278 8DF800D8 */ lw $t8, 0xd8($t7) /* 084DAC 7F05027C 17000005 */ bnez $t8, .L7F050294 /* 084DB0 7F050280 00000000 */ nop /* 084DB4 7F050284 8F398374 */ lw $t9, %lo(clock_timer)($t9) /* 084DB8 7F050288 8FA8006C */ lw $t0, 0x6c($sp) /* 084DBC 7F05028C 57200004 */ bnezl $t9, .L7F0502A0 /* 084DC0 7F050290 91090003 */ lbu $t1, 3($t0) .L7F050294: /* 084DC4 7F050294 1000010C */ b .L7F0506C8 /* 084DC8 7F050298 00001025 */ move $v0, $zero /* 084DCC 7F05029C 91090003 */ lbu $t1, 3($t0) .L7F0502A0: /* 084DD0 7F0502A0 252AFFFD */ addiu $t2, $t1, -3 /* 084DD4 7F0502A4 2D41002D */ sltiu $at, $t2, 0x2d /* 084DD8 7F0502A8 102000E0 */ beqz $at, .L7F05062C /* 084DDC 7F0502AC 000A5080 */ sll $t2, $t2, 2 /* 084DE0 7F0502B0 3C018005 */ lui $at, %hi(object_interaction_table) /* 084DE4 7F0502B4 002A0821 */ addu $at, $at, $t2 /* 084DE8 7F0502B8 8C2A322C */ lw $t2, %lo(object_interaction_table)($at) /* 084DEC 7F0502BC 01400008 */ jr $t2 /* 084DF0 7F0502C0 00000000 */ nop interact_key_object: /* 084DF4 7F0502C4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 084DF8 7F0502C8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 084DFC 7F0502CC 240500E5 */ li $a1, 229 /* 084E00 7F0502D0 0C002382 */ jal play_sfx_a1 /* 084E04 7F0502D4 00003025 */ move $a2, $zero /* 084E08 7F0502D8 8FAB0074 */ lw $t3, 0x74($sp) /* 084E0C 7F0502DC 1160000A */ beqz $t3, .L7F050308 /* 084E10 7F0502E0 00000000 */ nop /* 084E14 7F0502E4 0FC23657 */ jal obj_get_activated_text /* 084E18 7F0502E8 8FA4006C */ lw $a0, 0x6c($sp) /* 084E1C 7F0502EC 14400004 */ bnez $v0, .L7F050300 /* 084E20 7F0502F0 00402025 */ move $a0, $v0 /* 084E24 7F0502F4 0FC30776 */ jal get_textptr_for_textID /* 084E28 7F0502F8 3404A43C */ li $a0, 42044 /* 084E2C 7F0502FC 00402025 */ move $a0, $v0 .L7F050300: /* 084E30 7F050300 0FC228F2 */ jal display_string_in_lower_left_corner /* 084E34 7F050304 00000000 */ nop .L7F050308: /* 084E38 7F050308 100000DA */ b .L7F050674 /* 084E3C 7F05030C 24030004 */ li $v1, 4 interact_magazine_object: /* 084E40 7F050310 00608025 */ move $s0, $v1 /* 084E44 7F050314 0FC13F0F */ jal get_ammo_in_magazine /* 084E48 7F050318 00602025 */ move $a0, $v1 /* 084E4C 7F05031C 8E040080 */ lw $a0, 0x80($s0) /* 084E50 7F050320 00402825 */ move $a1, $v0 /* 084E54 7F050324 24060001 */ li $a2, 1 /* 084E58 7F050328 0FC13E9A */ jal add_ammo_to_inventory /* 084E5C 7F05032C 8FA70074 */ lw $a3, 0x74($sp) /* 084E60 7F050330 100000D0 */ b .L7F050674 /* 084E64 7F050334 24030001 */ li $v1, 1 interact_ammobox_object: /* 084E68 7F050338 00001025 */ move $v0, $zero /* 084E6C 7F05033C 00608025 */ move $s0, $v1 /* 084E70 7F050340 24430001 */ addiu $v1, $v0, 1 .L7F050344: /* 084E74 7F050344 24010001 */ li $at, 1 /* 084E78 7F050348 14410002 */ bne $v0, $at, .L7F050354 /* 084E7C 7F05034C 00602025 */ move $a0, $v1 /* 084E80 7F050350 24040001 */ li $a0, 1 .L7F050354: /* 084E84 7F050354 96050082 */ lhu $a1, 0x82($s0) /* 084E88 7F050358 AFA4004C */ sw $a0, 0x4c($sp) /* 084E8C 7F05035C AFA30020 */ sw $v1, 0x20($sp) /* 084E90 7F050360 0FC26919 */ jal get_num_players /* 084E94 7F050364 AFA50050 */ sw $a1, 0x50($sp) /* 084E98 7F050368 24010001 */ li $at, 1 /* 084E9C 7F05036C 8FA30020 */ lw $v1, 0x20($sp) /* 084EA0 7F050370 8FA4004C */ lw $a0, 0x4c($sp) /* 084EA4 7F050374 14410009 */ bne $v0, $at, .L7F05039C /* 084EA8 7F050378 8FA50050 */ lw $a1, 0x50($sp) /* 084EAC 7F05037C 44852000 */ mtc1 $a1, $f4 /* 084EB0 7F050380 3C018003 */ lui $at, %hi(solo_ammo_multiplier) /* 084EB4 7F050384 C4280B28 */ lwc1 $f8, %lo(solo_ammo_multiplier)($at) /* 084EB8 7F050388 468021A0 */ cvt.s.w $f6, $f4 /* 084EBC 7F05038C 46083282 */ mul.s $f10, $f6, $f8 /* 084EC0 7F050390 4600540D */ trunc.w.s $f16, $f10 /* 084EC4 7F050394 44058000 */ mfc1 $a1, $f16 /* 084EC8 7F050398 00000000 */ nop .L7F05039C: /* 084ECC 7F05039C 00003025 */ move $a2, $zero /* 084ED0 7F0503A0 8FA70074 */ lw $a3, 0x74($sp) /* 084ED4 7F0503A4 0FC13E9A */ jal add_ammo_to_inventory /* 084ED8 7F0503A8 AFA30020 */ sw $v1, 0x20($sp) /* 084EDC 7F0503AC 8FA20020 */ lw $v0, 0x20($sp) /* 084EE0 7F0503B0 2401000D */ li $at, 13 /* 084EE4 7F0503B4 26100004 */ addiu $s0, $s0, 4 /* 084EE8 7F0503B8 5441FFE2 */ bnel $v0, $at, .L7F050344 /* 084EEC 7F0503BC 24430001 */ addiu $v1, $v0, 1 /* 084EF0 7F0503C0 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 084EF4 7F0503C4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 084EF8 7F0503C8 240500EA */ li $a1, 234 /* 084EFC 7F0503CC 0C002382 */ jal play_sfx_a1 /* 084F00 7F0503D0 00003025 */ move $a2, $zero /* 084F04 7F0503D4 100000A7 */ b .L7F050674 /* 084F08 7F0503D8 24030001 */ li $v1, 1 interact_weapon_object: /* 084F0C 7F0503DC AFA00044 */ sw $zero, 0x44($sp) /* 084F10 7F0503E0 80640080 */ lb $a0, 0x80($v1) /* 084F14 7F0503E4 0FC13E04 */ jal set_sound_effect_for_weapontype_collection /* 084F18 7F0503E8 AFA30048 */ sw $v1, 0x48($sp) /* 084F1C 7F0503EC 8FAD0048 */ lw $t5, 0x48($sp) /* 084F20 7F0503F0 2401001D */ li $at, 29 /* 084F24 7F0503F4 81A40080 */ lb $a0, 0x80($t5) /* 084F28 7F0503F8 54810006 */ bnel $a0, $at, .L7F050414 /* 084F2C 7F0503FC 24010058 */ li $at, 88 /* 084F30 7F050400 0FC23122 */ jal add_item_to_inventory /* 084F34 7F050404 2404001E */ li $a0, 30 /* 084F38 7F050408 10000007 */ b .L7F050428 /* 084F3C 7F05040C 8FAE006C */ lw $t6, 0x6c($sp) /* 084F40 7F050410 24010058 */ li $at, 88 .L7F050414: /* 084F44 7F050414 14810003 */ bne $a0, $at, .L7F050424 /* 084F48 7F050418 24050058 */ li $a1, 88 /* 084F4C 7F05041C 0FC17645 */ jal draw_item_in_hand_has_more_ammo /* 084F50 7F050420 00002025 */ move $a0, $zero .L7F050424: /* 084F54 7F050424 8FAE006C */ lw $t6, 0x6c($sp) .L7F050428: /* 084F58 7F050428 8FB90048 */ lw $t9, 0x48($sp) /* 084F5C 7F05042C 8DCF0064 */ lw $t7, 0x64($t6) /* 084F60 7F050430 31F80400 */ andi $t8, $t7, 0x400 /* 084F64 7F050434 1300001B */ beqz $t8, .L7F0504A4 /* 084F68 7F050438 00000000 */ nop /* 084F6C 7F05043C 83280080 */ lb $t0, 0x80($t9) /* 084F70 7F050440 29010021 */ slti $at, $t0, 0x21 /* 084F74 7F050444 50200004 */ beql $at, $zero, .L7F050458 /* 084F78 7F050448 8FA90074 */ lw $t1, 0x74($sp) /* 084F7C 7F05044C 0FC231D9 */ jal sub_GAME_7F08C764 /* 084F80 7F050450 8FA40070 */ lw $a0, 0x70($sp) /* 084F84 7F050454 8FA90074 */ lw $t1, 0x74($sp) .L7F050458: /* 084F88 7F050458 5120000F */ beql $t1, $zero, .L7F050498 /* 084F8C 7F05045C 8FAC0048 */ lw $t4, 0x48($sp) /* 084F90 7F050460 0FC23657 */ jal obj_get_activated_text /* 084F94 7F050464 8FA4006C */ lw $a0, 0x6c($sp) /* 084F98 7F050468 10400005 */ beqz $v0, .L7F050480 /* 084F9C 7F05046C 00402025 */ move $a0, $v0 /* 084FA0 7F050470 0FC228F2 */ jal display_string_in_lower_left_corner /* 084FA4 7F050474 00000000 */ nop /* 084FA8 7F050478 10000005 */ b .L7F050490 /* 084FAC 7F05047C 240B0001 */ li $t3, 1 .L7F050480: /* 084FB0 7F050480 8FAA0048 */ lw $t2, 0x48($sp) /* 084FB4 7F050484 0FC14089 */ jal display_text_for_weapon_in_lower_left_corner /* 084FB8 7F050488 81440080 */ lb $a0, 0x80($t2) /* 084FBC 7F05048C 240B0001 */ li $t3, 1 .L7F050490: /* 084FC0 7F050490 AFAB0044 */ sw $t3, 0x44($sp) /* 084FC4 7F050494 8FAC0048 */ lw $t4, 0x48($sp) .L7F050498: /* 084FC8 7F050498 24030004 */ li $v1, 4 /* 084FCC 7F05049C 1000001C */ b .L7F050510 /* 084FD0 7F0504A0 81840080 */ lb $a0, 0x80($t4) .L7F0504A4: /* 084FD4 7F0504A4 0FC231D9 */ jal sub_GAME_7F08C764 /* 084FD8 7F0504A8 8FA40070 */ lw $a0, 0x70($sp) /* 084FDC 7F0504AC 10400002 */ beqz $v0, .L7F0504B8 /* 084FE0 7F0504B0 240D0001 */ li $t5, 1 /* 084FE4 7F0504B4 AFAD0044 */ sw $t5, 0x44($sp) .L7F0504B8: /* 084FE8 7F0504B8 8FAE0074 */ lw $t6, 0x74($sp) /* 084FEC 7F0504BC 8FAF0048 */ lw $t7, 0x48($sp) /* 084FF0 7F0504C0 51C00011 */ beql $t6, $zero, .L7F050508 /* 084FF4 7F0504C4 8FA90048 */ lw $t1, 0x48($sp) /* 084FF8 7F0504C8 0FC23669 */ jal weapon_get_activated_text /* 084FFC 7F0504CC 81E40080 */ lb $a0, 0x80($t7) /* 085000 7F0504D0 10400006 */ beqz $v0, .L7F0504EC /* 085004 7F0504D4 00402025 */ move $a0, $v0 /* 085008 7F0504D8 24180001 */ li $t8, 1 /* 08500C 7F0504DC 0FC228F2 */ jal display_string_in_lower_left_corner /* 085010 7F0504E0 AFB80044 */ sw $t8, 0x44($sp) /* 085014 7F0504E4 10000008 */ b .L7F050508 /* 085018 7F0504E8 8FA90048 */ lw $t1, 0x48($sp) .L7F0504EC: /* 08501C 7F0504EC 8FB90044 */ lw $t9, 0x44($sp) /* 085020 7F0504F0 8FA80048 */ lw $t0, 0x48($sp) /* 085024 7F0504F4 53200004 */ beql $t9, $zero, .L7F050508 /* 085028 7F0504F8 8FA90048 */ lw $t1, 0x48($sp) /* 08502C 7F0504FC 0FC14089 */ jal display_text_for_weapon_in_lower_left_corner /* 085030 7F050500 81040080 */ lb $a0, 0x80($t0) /* 085034 7F050504 8FA90048 */ lw $t1, 0x48($sp) .L7F050508: /* 085038 7F050508 24030001 */ li $v1, 1 /* 08503C 7F05050C 81240080 */ lb $a0, 0x80($t1) .L7F050510: /* 085040 7F050510 0FC1A50B */ jal get_ammo_type_for_weapon /* 085044 7F050514 AFA30068 */ sw $v1, 0x68($sp) /* 085048 7F050518 8FA30068 */ lw $v1, 0x68($sp) /* 08504C 7F05051C 10400055 */ beqz $v0, .L7F050674 /* 085050 7F050520 00408025 */ move $s0, $v0 /* 085054 7F050524 8FA40048 */ lw $a0, 0x48($sp) /* 085058 7F050528 0FC13F3E */ jal ammo_collected_from_weapon /* 08505C 7F05052C AFA30068 */ sw $v1, 0x68($sp) /* 085060 7F050530 8FA30068 */ lw $v1, 0x68($sp) /* 085064 7F050534 1840004F */ blez $v0, .L7F050674 /* 085068 7F050538 AFA20034 */ sw $v0, 0x34($sp) /* 08506C 7F05053C 02002025 */ move $a0, $s0 /* 085070 7F050540 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 085074 7F050544 AFA30068 */ sw $v1, 0x68($sp) /* 085078 7F050548 AFA20024 */ sw $v0, 0x24($sp) /* 08507C 7F05054C 0FC1A4B5 */ jal get_max_ammo_for_type /* 085080 7F050550 02002025 */ move $a0, $s0 /* 085084 7F050554 8FAA0024 */ lw $t2, 0x24($sp) /* 085088 7F050558 8FA30068 */ lw $v1, 0x68($sp) /* 08508C 7F05055C 02002025 */ move $a0, $s0 /* 085090 7F050560 0142082A */ slt $at, $t2, $v0 /* 085094 7F050564 50200044 */ beql $at, $zero, .L7F050678 /* 085098 7F050568 24010001 */ li $at, 1 /* 08509C 7F05056C 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 0850A0 7F050570 AFA30068 */ sw $v1, 0x68($sp) /* 0850A4 7F050574 8FAB0034 */ lw $t3, 0x34($sp) /* 0850A8 7F050578 02002025 */ move $a0, $s0 /* 0850AC 7F05057C 0FC1A44C */ jal give_cur_player_ammo /* 0850B0 7F050580 004B2821 */ addu $a1, $v0, $t3 /* 0850B4 7F050584 8FAC0044 */ lw $t4, 0x44($sp) /* 0850B8 7F050588 8FA30068 */ lw $v1, 0x68($sp) /* 0850BC 7F05058C 8FAD0074 */ lw $t5, 0x74($sp) /* 0850C0 7F050590 55800039 */ bnezl $t4, .L7F050678 /* 0850C4 7F050594 24010001 */ li $at, 1 /* 0850C8 7F050598 11A00036 */ beqz $t5, .L7F050674 /* 0850CC 7F05059C 02002025 */ move $a0, $s0 /* 0850D0 7F0505A0 8FA50034 */ lw $a1, 0x34($sp) /* 0850D4 7F0505A4 0FC13E7E */ jal display_text_when_ammo_collected /* 0850D8 7F0505A8 AFA30068 */ sw $v1, 0x68($sp) /* 0850DC 7F0505AC 10000031 */ b .L7F050674 /* 0850E0 7F0505B0 8FA30068 */ lw $v1, 0x68($sp) interact_bodyarmor_object: /* 0850E4 7F0505B4 0FC228C3 */ jal add_BONDdata_watch_armor /* 0850E8 7F0505B8 C46C0084 */ lwc1 $f12, 0x84($v1) /* 0850EC 7F0505BC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0850F0 7F0505C0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0850F4 7F0505C4 24050051 */ li $a1, 81 /* 0850F8 7F0505C8 0C002382 */ jal play_sfx_a1 /* 0850FC 7F0505CC 00003025 */ move $a2, $zero /* 085100 7F0505D0 8FAE0074 */ lw $t6, 0x74($sp) /* 085104 7F0505D4 11C00013 */ beqz $t6, .L7F050624 /* 085108 7F0505D8 00000000 */ nop /* 08510C 7F0505DC 0FC23657 */ jal obj_get_activated_text /* 085110 7F0505E0 8FA4006C */ lw $a0, 0x6c($sp) /* 085114 7F0505E4 1440000D */ bnez $v0, .L7F05061C /* 085118 7F0505E8 00402025 */ move $a0, $v0 /* 08511C 7F0505EC 0FC26919 */ jal get_num_players /* 085120 7F0505F0 00000000 */ nop /* 085124 7F0505F4 28410003 */ slti $at, $v0, 3 /* 085128 7F0505F8 10200005 */ beqz $at, .L7F050610 /* 08512C 7F0505FC 00000000 */ nop /* 085130 7F050600 0FC30776 */ jal get_textptr_for_textID /* 085134 7F050604 3404A43D */ li $a0, 42045 /* 085138 7F050608 10000004 */ b .L7F05061C /* 08513C 7F05060C 00402025 */ move $a0, $v0 .L7F050610: /* 085140 7F050610 0FC30776 */ jal get_textptr_for_textID /* 085144 7F050614 3404A43E */ li $a0, 42046 /* 085148 7F050618 00402025 */ move $a0, $v0 .L7F05061C: /* 08514C 7F05061C 0FC228F2 */ jal display_string_in_lower_left_corner /* 085150 7F050620 00000000 */ nop .L7F050624: /* 085154 7F050624 10000013 */ b .L7F050674 /* 085158 7F050628 24030001 */ li $v1, 1 interact_default_object: .L7F05062C: /* 08515C 7F05062C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 085160 7F050630 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 085164 7F050634 240500E5 */ li $a1, 229 /* 085168 7F050638 0C002382 */ jal play_sfx_a1 /* 08516C 7F05063C 00003025 */ move $a2, $zero /* 085170 7F050640 8FAF0074 */ lw $t7, 0x74($sp) /* 085174 7F050644 51E0000B */ beql $t7, $zero, .L7F050674 /* 085178 7F050648 24030004 */ li $v1, 4 /* 08517C 7F05064C 0FC23657 */ jal obj_get_activated_text /* 085180 7F050650 8FA4006C */ lw $a0, 0x6c($sp) /* 085184 7F050654 14400004 */ bnez $v0, .L7F050668 /* 085188 7F050658 00402025 */ move $a0, $v0 /* 08518C 7F05065C 0FC30776 */ jal get_textptr_for_textID /* 085190 7F050660 3404A43F */ li $a0, 42047 /* 085194 7F050664 00402025 */ move $a0, $v0 .L7F050668: /* 085198 7F050668 0FC228F2 */ jal display_string_in_lower_left_corner /* 08519C 7F05066C 00000000 */ nop /* 0851A0 7F050670 24030004 */ li $v1, 4 .L7F050674: /* 0851A4 7F050674 24010001 */ li $at, 1 .L7F050678: /* 0851A8 7F050678 1461000D */ bne $v1, $at, .L7F0506B0 /* 0851AC 7F05067C 8FB8006C */ lw $t8, 0x6c($sp) /* 0851B0 7F050680 8F190064 */ lw $t9, 0x64($t8) /* 0851B4 7F050684 33280010 */ andi $t0, $t9, 0x10 /* 0851B8 7F050688 15000009 */ bnez $t0, .L7F0506B0 /* 0851BC 7F05068C 00000000 */ nop /* 0851C0 7F050690 93060002 */ lbu $a2, 2($t8) /* 0851C4 7F050694 03002025 */ move $a0, $t8 /* 0851C8 7F050698 00002825 */ move $a1, $zero /* 0851CC 7F05069C 30C90004 */ andi $t1, $a2, 4 /* 0851D0 7F0506A0 0FC10366 */ jal sub_GAME_7F040D98 /* 0851D4 7F0506A4 01203025 */ move $a2, $t1 /* 0851D8 7F0506A8 10000007 */ b .L7F0506C8 /* 0851DC 7F0506AC 24020001 */ li $v0, 1 .L7F0506B0: /* 0851E0 7F0506B0 10600005 */ beqz $v1, .L7F0506C8 /* 0851E4 7F0506B4 00001025 */ move $v0, $zero /* 0851E8 7F0506B8 0FC231C9 */ jal add_prop_to_inventory /* 0851EC 7F0506BC 8FA40070 */ lw $a0, 0x70($sp) /* 0851F0 7F0506C0 10000001 */ b .L7F0506C8 /* 0851F4 7F0506C4 24020004 */ li $v0, 4 .L7F0506C8: /* 0851F8 7F0506C8 8FBF001C */ lw $ra, 0x1c($sp) /* 0851FC 7F0506CC 8FB00018 */ lw $s0, 0x18($sp) /* 085200 7F0506D0 27BD0070 */ addiu $sp, $sp, 0x70 /* 085204 7F0506D4 03E00008 */ jr $ra /* 085208 7F0506D8 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata /*D:8005322C*/ glabel object_interaction_table .word interact_default_object .word interact_key_object .word interact_default_object .word interact_default_object .word interact_magazine_object .word interact_weapon_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_ammobox_object .word interact_bodyarmor_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .word interact_default_object .text glabel collect_or_interact_object /* 084D80 7F050250 27BDFF90 */ addiu $sp, $sp, -0x70 /* 084D84 7F050254 AFBF001C */ sw $ra, 0x1c($sp) /* 084D88 7F050258 AFB00018 */ sw $s0, 0x18($sp) /* 084D8C 7F05025C AFA40070 */ sw $a0, 0x70($sp) /* 084D90 7F050260 AFA50074 */ sw $a1, 0x74($sp) /* 084D94 7F050264 8C830004 */ lw $v1, 4($a0) /* 084D98 7F050268 3C0F8008 */ lui $t7, %hi(pPlayer) /* 084D9C 7F05026C 8DEFA0B0 */ lw $t7, %lo(pPlayer)($t7) /* 084DA0 7F050270 AFA3006C */ sw $v1, 0x6c($sp) /* 084DA4 7F050274 3C198005 */ lui $t9, %hi(clock_timer) /* 084DA8 7F050278 8DF800D8 */ lw $t8, 0xd8($t7) /* 084DAC 7F05027C 17000005 */ bnez $t8, .L7F050294 /* 084DB0 7F050280 00000000 */ nop /* 084DB4 7F050284 8F398374 */ lw $t9, %lo(clock_timer)($t9) /* 084DB8 7F050288 8FA8006C */ lw $t0, 0x6c($sp) /* 084DBC 7F05028C 57200004 */ bnezl $t9, .L7F0502A0 /* 084DC0 7F050290 91090003 */ lbu $t1, 3($t0) .L7F050294: /* 084DC4 7F050294 1000010C */ b .L7F0506C8 /* 084DC8 7F050298 00001025 */ move $v0, $zero /* 084DCC 7F05029C 91090003 */ lbu $t1, 3($t0) .L7F0502A0: /* 084DD0 7F0502A0 252AFFFD */ addiu $t2, $t1, -3 /* 084DD4 7F0502A4 2D41002D */ sltiu $at, $t2, 0x2d /* 084DD8 7F0502A8 102000E0 */ beqz $at, .L7F05062C /* 084DDC 7F0502AC 000A5080 */ sll $t2, $t2, 2 /* 084DE0 7F0502B0 3C018005 */ lui $at, %hi(object_interaction_table) /* 084DE4 7F0502B4 002A0821 */ addu $at, $at, $t2 /* 084DE8 7F0502B8 8C2A322C */ lw $t2, %lo(object_interaction_table)($at) /* 084DEC 7F0502BC 01400008 */ jr $t2 /* 084DF0 7F0502C0 00000000 */ nop interact_key_object: /* 084DF4 7F0502C4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 084DF8 7F0502C8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 084DFC 7F0502CC 240500E5 */ li $a1, 229 /* 084E00 7F0502D0 0C002382 */ jal play_sfx_a1 /* 084E04 7F0502D4 00003025 */ move $a2, $zero /* 084E08 7F0502D8 8FAB0074 */ lw $t3, 0x74($sp) /* 084E0C 7F0502DC 1160000A */ beqz $t3, .L7F050308 /* 084E10 7F0502E0 00000000 */ nop /* 084E14 7F0502E4 0FC23657 */ jal obj_get_activated_text /* 084E18 7F0502E8 8FA4006C */ lw $a0, 0x6c($sp) /* 084E1C 7F0502EC 14400004 */ bnez $v0, .L7F050300 /* 084E20 7F0502F0 00402025 */ move $a0, $v0 /* 084E24 7F0502F4 0FC30776 */ jal get_textptr_for_textID /* 084E28 7F0502F8 3404A43C */ li $a0, 42044 /* 084E2C 7F0502FC 00402025 */ move $a0, $v0 .L7F050300: /* 084E30 7F050300 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 084E34 7F050304 00000000 */ nop .L7F050308: /* 084E38 7F050308 100000DA */ b .L7F050674 /* 084E3C 7F05030C 24030004 */ li $v1, 4 interact_magazine_object: /* 084E40 7F050310 00608025 */ move $s0, $v1 /* 084E44 7F050314 0FC13F0F */ jal get_ammo_in_magazine /* 084E48 7F050318 00602025 */ move $a0, $v1 /* 084E4C 7F05031C 8E040080 */ lw $a0, 0x80($s0) /* 084E50 7F050320 00402825 */ move $a1, $v0 /* 084E54 7F050324 24060001 */ li $a2, 1 /* 084E58 7F050328 0FC13E9A */ jal add_ammo_to_inventory /* 084E5C 7F05032C 8FA70074 */ lw $a3, 0x74($sp) /* 084E60 7F050330 100000D0 */ b .L7F050674 /* 084E64 7F050334 24030001 */ li $v1, 1 interact_ammobox_object: /* 084E68 7F050338 00001025 */ move $v0, $zero /* 084E6C 7F05033C 00608025 */ move $s0, $v1 /* 084E70 7F050340 24430001 */ addiu $v1, $v0, 1 .L7F050344: /* 084E74 7F050344 24010001 */ li $at, 1 /* 084E78 7F050348 14410002 */ bne $v0, $at, .L7F050354 /* 084E7C 7F05034C 00602025 */ move $a0, $v1 /* 084E80 7F050350 24040001 */ li $a0, 1 .L7F050354: /* 084E84 7F050354 96050082 */ lhu $a1, 0x82($s0) /* 084E88 7F050358 AFA4004C */ sw $a0, 0x4c($sp) /* 084E8C 7F05035C AFA30020 */ sw $v1, 0x20($sp) /* 084E90 7F050360 0FC26919 */ jal get_num_players /* 084E94 7F050364 AFA50050 */ sw $a1, 0x50($sp) /* 084E98 7F050368 24010001 */ li $at, 1 /* 084E9C 7F05036C 8FA30020 */ lw $v1, 0x20($sp) /* 084EA0 7F050370 8FA4004C */ lw $a0, 0x4c($sp) /* 084EA4 7F050374 14410009 */ bne $v0, $at, .L7F05039C /* 084EA8 7F050378 8FA50050 */ lw $a1, 0x50($sp) /* 084EAC 7F05037C 44852000 */ mtc1 $a1, $f4 /* 084EB0 7F050380 3C018003 */ lui $at, %hi(solo_ammo_multiplier) /* 084EB4 7F050384 C4280B28 */ lwc1 $f8, %lo(solo_ammo_multiplier)($at) /* 084EB8 7F050388 468021A0 */ cvt.s.w $f6, $f4 /* 084EBC 7F05038C 46083282 */ mul.s $f10, $f6, $f8 /* 084EC0 7F050390 4600540D */ trunc.w.s $f16, $f10 /* 084EC4 7F050394 44058000 */ mfc1 $a1, $f16 /* 084EC8 7F050398 00000000 */ nop .L7F05039C: /* 084ECC 7F05039C 00003025 */ move $a2, $zero /* 084ED0 7F0503A0 8FA70074 */ lw $a3, 0x74($sp) /* 084ED4 7F0503A4 0FC13E9A */ jal add_ammo_to_inventory /* 084ED8 7F0503A8 AFA30020 */ sw $v1, 0x20($sp) /* 084EDC 7F0503AC 8FA20020 */ lw $v0, 0x20($sp) /* 084EE0 7F0503B0 2401000D */ li $at, 13 /* 084EE4 7F0503B4 26100004 */ addiu $s0, $s0, 4 /* 084EE8 7F0503B8 5441FFE2 */ bnel $v0, $at, .L7F050344 /* 084EEC 7F0503BC 24430001 */ addiu $v1, $v0, 1 /* 084EF0 7F0503C0 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 084EF4 7F0503C4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 084EF8 7F0503C8 240500EA */ li $a1, 234 /* 084EFC 7F0503CC 0C002382 */ jal play_sfx_a1 /* 084F00 7F0503D0 00003025 */ move $a2, $zero /* 084F04 7F0503D4 100000A7 */ b .L7F050674 /* 084F08 7F0503D8 24030001 */ li $v1, 1 interact_weapon_object: /* 084F0C 7F0503DC AFA00044 */ sw $zero, 0x44($sp) /* 084F10 7F0503E0 80640080 */ lb $a0, 0x80($v1) /* 084F14 7F0503E4 0FC13E04 */ jal set_sound_effect_for_weapontype_collection /* 084F18 7F0503E8 AFA30048 */ sw $v1, 0x48($sp) /* 084F1C 7F0503EC 8FAD0048 */ lw $t5, 0x48($sp) /* 084F20 7F0503F0 2401001D */ li $at, 29 /* 084F24 7F0503F4 81A40080 */ lb $a0, 0x80($t5) /* 084F28 7F0503F8 54810006 */ bnel $a0, $at, .L7F050414 /* 084F2C 7F0503FC 24010058 */ li $at, 88 /* 084F30 7F050400 0FC23122 */ jal add_item_to_inventory /* 084F34 7F050404 2404001E */ li $a0, 30 /* 084F38 7F050408 10000007 */ b .L7F050428 /* 084F3C 7F05040C 8FAE006C */ lw $t6, 0x6c($sp) /* 084F40 7F050410 24010058 */ li $at, 88 .L7F050414: /* 084F44 7F050414 14810003 */ bne $a0, $at, .L7F050424 /* 084F48 7F050418 24050058 */ li $a1, 88 /* 084F4C 7F05041C 0FC17645 */ jal draw_item_in_hand_has_more_ammo /* 084F50 7F050420 00002025 */ move $a0, $zero .L7F050424: /* 084F54 7F050424 8FAE006C */ lw $t6, 0x6c($sp) .L7F050428: /* 084F58 7F050428 8FB90048 */ lw $t9, 0x48($sp) /* 084F5C 7F05042C 8DCF0064 */ lw $t7, 0x64($t6) /* 084F60 7F050430 31F80400 */ andi $t8, $t7, 0x400 /* 084F64 7F050434 1300001B */ beqz $t8, .L7F0504A4 /* 084F68 7F050438 00000000 */ nop /* 084F6C 7F05043C 83280080 */ lb $t0, 0x80($t9) /* 084F70 7F050440 29010021 */ slti $at, $t0, 0x21 /* 084F74 7F050444 50200004 */ beql $at, $zero, .L7F050458 /* 084F78 7F050448 8FA90074 */ lw $t1, 0x74($sp) /* 084F7C 7F05044C 0FC231D9 */ jal sub_GAME_7F08C764 /* 084F80 7F050450 8FA40070 */ lw $a0, 0x70($sp) /* 084F84 7F050454 8FA90074 */ lw $t1, 0x74($sp) .L7F050458: /* 084F88 7F050458 5120000F */ beql $t1, $zero, .L7F050498 /* 084F8C 7F05045C 8FAC0048 */ lw $t4, 0x48($sp) /* 084F90 7F050460 0FC23657 */ jal obj_get_activated_text /* 084F94 7F050464 8FA4006C */ lw $a0, 0x6c($sp) /* 084F98 7F050468 10400005 */ beqz $v0, .L7F050480 /* 084F9C 7F05046C 00402025 */ move $a0, $v0 /* 084FA0 7F050470 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 084FA4 7F050474 00000000 */ nop /* 084FA8 7F050478 10000005 */ b .L7F050490 /* 084FAC 7F05047C 240B0001 */ li $t3, 1 .L7F050480: /* 084FB0 7F050480 8FAA0048 */ lw $t2, 0x48($sp) /* 084FB4 7F050484 0FC14089 */ jal display_text_for_weapon_in_lower_left_corner /* 084FB8 7F050488 81440080 */ lb $a0, 0x80($t2) /* 084FBC 7F05048C 240B0001 */ li $t3, 1 .L7F050490: /* 084FC0 7F050490 AFAB0044 */ sw $t3, 0x44($sp) /* 084FC4 7F050494 8FAC0048 */ lw $t4, 0x48($sp) .L7F050498: /* 084FC8 7F050498 24030004 */ li $v1, 4 /* 084FCC 7F05049C 1000001C */ b .L7F050510 /* 084FD0 7F0504A0 81840080 */ lb $a0, 0x80($t4) .L7F0504A4: /* 084FD4 7F0504A4 0FC231D9 */ jal sub_GAME_7F08C764 /* 084FD8 7F0504A8 8FA40070 */ lw $a0, 0x70($sp) /* 084FDC 7F0504AC 10400002 */ beqz $v0, .L7F0504B8 /* 084FE0 7F0504B0 240D0001 */ li $t5, 1 /* 084FE4 7F0504B4 AFAD0044 */ sw $t5, 0x44($sp) .L7F0504B8: /* 084FE8 7F0504B8 8FAE0074 */ lw $t6, 0x74($sp) /* 084FEC 7F0504BC 8FAF0048 */ lw $t7, 0x48($sp) /* 084FF0 7F0504C0 51C00011 */ beql $t6, $zero, .L7F050508 /* 084FF4 7F0504C4 8FA90048 */ lw $t1, 0x48($sp) /* 084FF8 7F0504C8 0FC23669 */ jal weapon_get_activated_text /* 084FFC 7F0504CC 81E40080 */ lb $a0, 0x80($t7) /* 085000 7F0504D0 10400006 */ beqz $v0, .L7F0504EC /* 085004 7F0504D4 00402025 */ move $a0, $v0 /* 085008 7F0504D8 24180001 */ li $t8, 1 /* 08500C 7F0504DC 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 085010 7F0504E0 AFB80044 */ sw $t8, 0x44($sp) /* 085014 7F0504E4 10000008 */ b .L7F050508 /* 085018 7F0504E8 8FA90048 */ lw $t1, 0x48($sp) .L7F0504EC: /* 08501C 7F0504EC 8FB90044 */ lw $t9, 0x44($sp) /* 085020 7F0504F0 8FA80048 */ lw $t0, 0x48($sp) /* 085024 7F0504F4 53200004 */ beql $t9, $zero, .L7F050508 /* 085028 7F0504F8 8FA90048 */ lw $t1, 0x48($sp) /* 08502C 7F0504FC 0FC14089 */ jal display_text_for_weapon_in_lower_left_corner /* 085030 7F050500 81040080 */ lb $a0, 0x80($t0) /* 085034 7F050504 8FA90048 */ lw $t1, 0x48($sp) .L7F050508: /* 085038 7F050508 24030001 */ li $v1, 1 /* 08503C 7F05050C 81240080 */ lb $a0, 0x80($t1) .L7F050510: /* 085040 7F050510 0FC1A50B */ jal get_ammo_type_for_weapon /* 085044 7F050514 AFA30068 */ sw $v1, 0x68($sp) /* 085048 7F050518 8FA30068 */ lw $v1, 0x68($sp) /* 08504C 7F05051C 10400055 */ beqz $v0, .L7F050674 /* 085050 7F050520 00408025 */ move $s0, $v0 /* 085054 7F050524 8FA40048 */ lw $a0, 0x48($sp) /* 085058 7F050528 0FC13F3E */ jal ammo_collected_from_weapon /* 08505C 7F05052C AFA30068 */ sw $v1, 0x68($sp) /* 085060 7F050530 8FA30068 */ lw $v1, 0x68($sp) /* 085064 7F050534 1840004F */ blez $v0, .L7F050674 /* 085068 7F050538 AFA20034 */ sw $v0, 0x34($sp) /* 08506C 7F05053C 02002025 */ move $a0, $s0 /* 085070 7F050540 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 085074 7F050544 AFA30068 */ sw $v1, 0x68($sp) /* 085078 7F050548 AFA20024 */ sw $v0, 0x24($sp) /* 08507C 7F05054C 0FC1A4B5 */ jal get_max_ammo_for_type /* 085080 7F050550 02002025 */ move $a0, $s0 /* 085084 7F050554 8FAA0024 */ lw $t2, 0x24($sp) /* 085088 7F050558 8FA30068 */ lw $v1, 0x68($sp) /* 08508C 7F05055C 02002025 */ move $a0, $s0 /* 085090 7F050560 0142082A */ slt $at, $t2, $v0 /* 085094 7F050564 50200044 */ beql $at, $zero, .L7F050678 /* 085098 7F050568 24010001 */ li $at, 1 /* 08509C 7F05056C 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 0850A0 7F050570 AFA30068 */ sw $v1, 0x68($sp) /* 0850A4 7F050574 8FAB0034 */ lw $t3, 0x34($sp) /* 0850A8 7F050578 02002025 */ move $a0, $s0 /* 0850AC 7F05057C 0FC1A44C */ jal give_cur_player_ammo /* 0850B0 7F050580 004B2821 */ addu $a1, $v0, $t3 /* 0850B4 7F050584 8FAC0044 */ lw $t4, 0x44($sp) /* 0850B8 7F050588 8FA30068 */ lw $v1, 0x68($sp) /* 0850BC 7F05058C 8FAD0074 */ lw $t5, 0x74($sp) /* 0850C0 7F050590 55800039 */ bnezl $t4, .L7F050678 /* 0850C4 7F050594 24010001 */ li $at, 1 /* 0850C8 7F050598 11A00036 */ beqz $t5, .L7F050674 /* 0850CC 7F05059C 02002025 */ move $a0, $s0 /* 0850D0 7F0505A0 8FA50034 */ lw $a1, 0x34($sp) /* 0850D4 7F0505A4 0FC13E7E */ jal display_text_when_ammo_collected /* 0850D8 7F0505A8 AFA30068 */ sw $v1, 0x68($sp) /* 0850DC 7F0505AC 10000031 */ b .L7F050674 /* 0850E0 7F0505B0 8FA30068 */ lw $v1, 0x68($sp) interact_bodyarmor_object: /* 0850E4 7F0505B4 0FC228C3 */ jal add_BONDdata_watch_armor /* 0850E8 7F0505B8 C46C0084 */ lwc1 $f12, 0x84($v1) /* 0850EC 7F0505BC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0850F0 7F0505C0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0850F4 7F0505C4 24050051 */ li $a1, 81 /* 0850F8 7F0505C8 0C002382 */ jal play_sfx_a1 /* 0850FC 7F0505CC 00003025 */ move $a2, $zero /* 085100 7F0505D0 8FAE0074 */ lw $t6, 0x74($sp) /* 085104 7F0505D4 11C00013 */ beqz $t6, .L7F050624 /* 085108 7F0505D8 00000000 */ nop /* 08510C 7F0505DC 0FC23657 */ jal obj_get_activated_text /* 085110 7F0505E0 8FA4006C */ lw $a0, 0x6c($sp) /* 085114 7F0505E4 1440000D */ bnez $v0, .L7F05061C /* 085118 7F0505E8 00402025 */ move $a0, $v0 /* 08511C 7F0505EC 0FC26919 */ jal get_num_players /* 085120 7F0505F0 00000000 */ nop /* 085124 7F0505F4 28410003 */ slti $at, $v0, 3 /* 085128 7F0505F8 10200005 */ beqz $at, .L7F050610 /* 08512C 7F0505FC 00000000 */ nop /* 085130 7F050600 0FC30776 */ jal get_textptr_for_textID /* 085134 7F050604 3404A43D */ li $a0, 42045 /* 085138 7F050608 10000004 */ b .L7F05061C /* 08513C 7F05060C 00402025 */ move $a0, $v0 .L7F050610: /* 085140 7F050610 0FC30776 */ jal get_textptr_for_textID /* 085144 7F050614 3404A43E */ li $a0, 42046 /* 085148 7F050618 00402025 */ move $a0, $v0 .L7F05061C: /* 08514C 7F05061C 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 085150 7F050620 00000000 */ nop .L7F050624: /* 085154 7F050624 10000013 */ b .L7F050674 /* 085158 7F050628 24030001 */ li $v1, 1 interact_default_object: .L7F05062C: /* 08515C 7F05062C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 085160 7F050630 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 085164 7F050634 240500E5 */ li $a1, 229 /* 085168 7F050638 0C002382 */ jal play_sfx_a1 /* 08516C 7F05063C 00003025 */ move $a2, $zero /* 085170 7F050640 8FAF0074 */ lw $t7, 0x74($sp) /* 085174 7F050644 51E0000B */ beql $t7, $zero, .L7F050674 /* 085178 7F050648 24030004 */ li $v1, 4 /* 08517C 7F05064C 0FC23657 */ jal obj_get_activated_text /* 085180 7F050650 8FA4006C */ lw $a0, 0x6c($sp) /* 085184 7F050654 14400004 */ bnez $v0, .L7F050668 /* 085188 7F050658 00402025 */ move $a0, $v0 /* 08518C 7F05065C 0FC30776 */ jal get_textptr_for_textID /* 085190 7F050660 3404A43F */ li $a0, 42047 /* 085194 7F050664 00402025 */ move $a0, $v0 .L7F050668: /* 085198 7F050668 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 08519C 7F05066C 00000000 */ nop /* 0851A0 7F050670 24030004 */ li $v1, 4 .L7F050674: /* 0851A4 7F050674 24010001 */ li $at, 1 .L7F050678: /* 0851A8 7F050678 1461000D */ bne $v1, $at, .L7F0506B0 /* 0851AC 7F05067C 8FB8006C */ lw $t8, 0x6c($sp) /* 0851B0 7F050680 8F190064 */ lw $t9, 0x64($t8) /* 0851B4 7F050684 33280010 */ andi $t0, $t9, 0x10 /* 0851B8 7F050688 15000009 */ bnez $t0, .L7F0506B0 /* 0851BC 7F05068C 00000000 */ nop /* 0851C0 7F050690 93060002 */ lbu $a2, 2($t8) /* 0851C4 7F050694 03002025 */ move $a0, $t8 /* 0851C8 7F050698 00002825 */ move $a1, $zero /* 0851CC 7F05069C 30C90004 */ andi $t1, $a2, 4 /* 0851D0 7F0506A0 0FC10366 */ jal sub_GAME_7F040D98 /* 0851D4 7F0506A4 01203025 */ move $a2, $t1 /* 0851D8 7F0506A8 10000007 */ b .L7F0506C8 /* 0851DC 7F0506AC 24020001 */ li $v0, 1 .L7F0506B0: /* 0851E0 7F0506B0 10600005 */ beqz $v1, .L7F0506C8 /* 0851E4 7F0506B4 00001025 */ move $v0, $zero /* 0851E8 7F0506B8 0FC231C9 */ jal add_prop_to_inventory /* 0851EC 7F0506BC 8FA40070 */ lw $a0, 0x70($sp) /* 0851F0 7F0506C0 10000001 */ b .L7F0506C8 /* 0851F4 7F0506C4 24020004 */ li $v0, 4 .L7F0506C8: /* 0851F8 7F0506C8 8FBF001C */ lw $ra, 0x1c($sp) /* 0851FC 7F0506CC 8FB00018 */ lw $s0, 0x18($sp) /* 085200 7F0506D0 27BD0070 */ addiu $sp, $sp, 0x70 /* 085204 7F0506D4 03E00008 */ jr $ra /* 085208 7F0506D8 00000000 */ nop ) #endif #endif #ifdef NONMATCHING void object_collectability_routines(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .late_rodata glabel D_800532E0 .word 0xbf490fdb /*-0.78539819*/ glabel D_800532E4 .word 0x47ef4200 /*122500.0*/ glabel D_800532E8 .word 0x461c4000 /*10000.0*/ glabel D_800532EC .word 0x47742400 /*62500.0*/ glabel D_800532F0 .word 0x40490fdb /*3.1415927*/ .text glabel object_collectability_routines /* 08520C 7F0506DC 27BDFF78 */ addiu $sp, $sp, -0x88 /* 085210 7F0506E0 AFBF002C */ sw $ra, 0x2c($sp) /* 085214 7F0506E4 AFA40088 */ sw $a0, 0x88($sp) /* 085218 7F0506E8 8C840004 */ lw $a0, 4($a0) /* 08521C 7F0506EC 0FC13803 */ jal check_if_collectable_object /* 085220 7F0506F0 AFA40084 */ sw $a0, 0x84($sp) /* 085224 7F0506F4 1040000B */ beqz $v0, .L7F050724 /* 085228 7F0506F8 8FA40084 */ lw $a0, 0x84($sp) /* 08522C 7F0506FC 908F0003 */ lbu $t7, 3($a0) /* 085230 7F050700 24010011 */ li $at, 17 /* 085234 7F050704 51E10008 */ beql $t7, $at, .L7F050728 /* 085238 7F050708 8FA40084 */ lw $a0, 0x84($sp) /* 08523C 7F05070C 8C820008 */ lw $v0, 8($a0) /* 085240 7F050710 0002C2C0 */ sll $t8, $v0, 0xb /* 085244 7F050714 0703000B */ bgezl $t8, .L7F050744 /* 085248 7F050718 00024B00 */ sll $t1, $v0, 0xc /* 08524C 7F05071C 10000180 */ b .L7F050D20 /* 085250 7F050720 00001025 */ move $v0, $zero .L7F050724: /* 085254 7F050724 8FA40084 */ lw $a0, 0x84($sp) .L7F050728: /* 085258 7F050728 8C820008 */ lw $v0, 8($a0) /* 08525C 7F05072C 0002CB40 */ sll $t9, $v0, 0xd /* 085260 7F050730 07220004 */ bltzl $t9, .L7F050744 /* 085264 7F050734 00024B00 */ sll $t1, $v0, 0xc /* 085268 7F050738 10000179 */ b .L7F050D20 /* 08526C 7F05073C 00001025 */ move $v0, $zero /* 085270 7F050740 00024B00 */ sll $t1, $v0, 0xc .L7F050744: /* 085274 7F050744 05230004 */ bgezl $t1, .L7F050758 /* 085278 7F050748 8C8A0064 */ lw $t2, 0x64($a0) /* 08527C 7F05074C 10000174 */ b .L7F050D20 /* 085280 7F050750 00001025 */ move $v0, $zero /* 085284 7F050754 8C8A0064 */ lw $t2, 0x64($a0) .L7F050758: /* 085288 7F050758 314B0080 */ andi $t3, $t2, 0x80 /* 08528C 7F05075C 1160000A */ beqz $t3, .L7F050788 /* 085290 7F050760 00000000 */ nop /* 085294 7F050764 8C82006C */ lw $v0, 0x6c($a0) /* 085298 7F050768 8C4C00BC */ lw $t4, 0xbc($v0) /* 08529C 7F05076C 19800006 */ blez $t4, .L7F050788 /* 0852A0 7F050770 00000000 */ nop /* 0852A4 7F050774 8C4D0090 */ lw $t5, 0x90($v0) /* 0852A8 7F050778 15A00003 */ bnez $t5, .L7F050788 /* 0852AC 7F05077C 00000000 */ nop /* 0852B0 7F050780 10000167 */ b .L7F050D20 /* 0852B4 7F050784 00001025 */ move $v0, $zero .L7F050788: /* 0852B8 7F050788 0FC0F9EB */ jal sub_GAME_7F03E7AC /* 0852BC 7F05078C 00000000 */ nop /* 0852C0 7F050790 14400003 */ bnez $v0, .L7F0507A0 /* 0852C4 7F050794 8FA50084 */ lw $a1, 0x84($sp) /* 0852C8 7F050798 10000161 */ b .L7F050D20 /* 0852CC 7F05079C 00001025 */ move $v0, $zero .L7F0507A0: /* 0852D0 7F0507A0 90A20003 */ lbu $v0, 3($a1) /* 0852D4 7F0507A4 24010008 */ li $at, 8 /* 0852D8 7F0507A8 8FAE0088 */ lw $t6, 0x88($sp) /* 0852DC 7F0507AC 54410064 */ bnel $v0, $at, .L7F050940 /* 0852E0 7F0507B0 24010007 */ li $at, 7 /* 0852E4 7F0507B4 8DC30004 */ lw $v1, 4($t6) /* 0852E8 7F0507B8 2401001A */ li $at, 26 /* 0852EC 7F0507BC 80640080 */ lb $a0, 0x80($v1) /* 0852F0 7F0507C0 10810003 */ beq $a0, $at, .L7F0507D0 /* 0852F4 7F0507C4 24010057 */ li $at, 87 /* 0852F8 7F0507C8 5481000B */ bnel $a0, $at, .L7F0507F8 /* 0852FC 7F0507CC 2401001D */ li $at, 29 .L7F0507D0: /* 085300 7F0507D0 846F0082 */ lh $t7, 0x82($v1) /* 085304 7F0507D4 05E10005 */ bgez $t7, .L7F0507EC /* 085308 7F0507D8 00000000 */ nop /* 08530C 7F0507DC 8CB80064 */ lw $t8, 0x64($a1) /* 085310 7F0507E0 33190004 */ andi $t9, $t8, 4 /* 085314 7F0507E4 53200004 */ beql $t9, $zero, .L7F0507F8 /* 085318 7F0507E8 2401001D */ li $at, 29 .L7F0507EC: /* 08531C 7F0507EC 1000014C */ b .L7F050D20 /* 085320 7F0507F0 00001025 */ move $v0, $zero /* 085324 7F0507F4 2401001D */ li $at, 29 .L7F0507F8: /* 085328 7F0507F8 1081000D */ beq $a0, $at, .L7F050830 /* 08532C 7F0507FC 2401001C */ li $at, 28 /* 085330 7F050800 1081000B */ beq $a0, $at, .L7F050830 /* 085334 7F050804 2401001B */ li $at, 27 /* 085338 7F050808 10810009 */ beq $a0, $at, .L7F050830 /* 08533C 7F05080C 24010021 */ li $at, 33 /* 085340 7F050810 10810007 */ beq $a0, $at, .L7F050830 /* 085344 7F050814 2401002F */ li $at, 47 /* 085348 7F050818 10810005 */ beq $a0, $at, .L7F050830 /* 08534C 7F05081C 24010030 */ li $at, 48 /* 085350 7F050820 10810003 */ beq $a0, $at, .L7F050830 /* 085354 7F050824 24010022 */ li $at, 34 /* 085358 7F050828 5481000B */ bnel $a0, $at, .L7F050858 /* 08535C 7F05082C 24010056 */ li $at, 86 .L7F050830: /* 085360 7F050830 84690082 */ lh $t1, 0x82($v1) /* 085364 7F050834 05210005 */ bgez $t1, .L7F05084C /* 085368 7F050838 00000000 */ nop /* 08536C 7F05083C 8CAA0064 */ lw $t2, 0x64($a1) /* 085370 7F050840 314B0004 */ andi $t3, $t2, 4 /* 085374 7F050844 51600004 */ beql $t3, $zero, .L7F050858 /* 085378 7F050848 24010056 */ li $at, 86 .L7F05084C: /* 08537C 7F05084C 10000134 */ b .L7F050D20 /* 085380 7F050850 00001025 */ move $v0, $zero /* 085384 7F050854 24010056 */ li $at, 86 .L7F050858: /* 085388 7F050858 14810007 */ bne $a0, $at, .L7F050878 /* 08538C 7F05085C 00000000 */ nop /* 085390 7F050860 8CAC0064 */ lw $t4, 0x64($a1) /* 085394 7F050864 318D0080 */ andi $t5, $t4, 0x80 /* 085398 7F050868 11A00003 */ beqz $t5, .L7F050878 /* 08539C 7F05086C 00000000 */ nop /* 0853A0 7F050870 1000012B */ b .L7F050D20 /* 0853A4 7F050874 00001025 */ move $v0, $zero .L7F050878: /* 0853A8 7F050878 0FC230C5 */ jal is_weapon_in_inv /* 0853AC 7F05087C AFA30080 */ sw $v1, 0x80($sp) /* 0853B0 7F050880 1040009B */ beqz $v0, .L7F050AF0 /* 0853B4 7F050884 8FA30080 */ lw $v1, 0x80($sp) /* 0853B8 7F050888 80640080 */ lb $a0, 0x80($v1) /* 0853BC 7F05088C 0FC1A50B */ jal get_ammo_type_for_weapon /* 0853C0 7F050890 AFA30080 */ sw $v1, 0x80($sp) /* 0853C4 7F050894 10400096 */ beqz $v0, .L7F050AF0 /* 0853C8 7F050898 8FA30080 */ lw $v1, 0x80($sp) /* 0853CC 7F05089C 80640080 */ lb $a0, 0x80($v1) /* 0853D0 7F0508A0 0FC1A514 */ jal get_ammo_count_for_weapon /* 0853D4 7F0508A4 AFA30080 */ sw $v1, 0x80($sp) /* 0853D8 7F0508A8 8FA30080 */ lw $v1, 0x80($sp) /* 0853DC 7F0508AC 80640080 */ lb $a0, 0x80($v1) /* 0853E0 7F0508B0 0FC1A52C */ jal get_max_ammo_for_weapon /* 0853E4 7F0508B4 AFA20038 */ sw $v0, 0x38($sp) /* 0853E8 7F0508B8 8FA60038 */ lw $a2, 0x38($sp) /* 0853EC 7F0508BC 8FA30080 */ lw $v1, 0x80($sp) /* 0853F0 7F0508C0 00C2082A */ slt $at, $a2, $v0 /* 0853F4 7F0508C4 1420008A */ bnez $at, .L7F050AF0 /* 0853F8 7F0508C8 00000000 */ nop /* 0853FC 7F0508CC 8C620084 */ lw $v0, 0x84($v1) /* 085400 7F0508D0 14400004 */ bnez $v0, .L7F0508E4 /* 085404 7F0508D4 00000000 */ nop /* 085408 7F0508D8 806E0081 */ lb $t6, 0x81($v1) /* 08540C 7F0508DC 05C00015 */ bltz $t6, .L7F050934 /* 085410 7F0508E0 00000000 */ nop .L7F0508E4: /* 085414 7F0508E4 50400005 */ beql $v0, $zero, .L7F0508FC /* 085418 7F0508E8 80650081 */ lb $a1, 0x81($v1) /* 08541C 7F0508EC 80450080 */ lb $a1, 0x80($v0) /* 085420 7F0508F0 10000003 */ b .L7F050900 /* 085424 7F0508F4 00A02025 */ move $a0, $a1 /* 085428 7F0508F8 80650081 */ lb $a1, 0x81($v1) .L7F0508FC: /* 08542C 7F0508FC 00A02025 */ move $a0, $a1 .L7F050900: /* 085430 7F050900 8C6F0008 */ lw $t7, 8($v1) /* 085434 7F050904 000FC0C0 */ sll $t8, $t7, 3 /* 085438 7F050908 07030004 */ bgezl $t8, .L7F05091C /* 08543C 7F05090C 80640080 */ lb $a0, 0x80($v1) /* 085440 7F050910 10000002 */ b .L7F05091C /* 085444 7F050914 80650080 */ lb $a1, 0x80($v1) /* 085448 7F050918 80640080 */ lb $a0, 0x80($v1) .L7F05091C: /* 08544C 7F05091C 0FC230E7 */ jal is_item_for_hand_in_inventory /* 085450 7F050920 00000000 */ nop /* 085454 7F050924 10400072 */ beqz $v0, .L7F050AF0 /* 085458 7F050928 00000000 */ nop /* 08545C 7F05092C 100000FC */ b .L7F050D20 /* 085460 7F050930 00001025 */ move $v0, $zero .L7F050934: /* 085464 7F050934 100000FA */ b .L7F050D20 /* 085468 7F050938 00001025 */ move $v0, $zero /* 08546C 7F05093C 24010007 */ li $at, 7 .L7F050940: /* 085470 7F050940 1441000F */ bne $v0, $at, .L7F050980 /* 085474 7F050944 8FB90088 */ lw $t9, 0x88($sp) /* 085478 7F050948 8F230004 */ lw $v1, 4($t9) /* 08547C 7F05094C 8C640080 */ lw $a0, 0x80($v1) /* 085480 7F050950 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 085484 7F050954 AFA30074 */ sw $v1, 0x74($sp) /* 085488 7F050958 8FA30074 */ lw $v1, 0x74($sp) /* 08548C 7F05095C 8C640080 */ lw $a0, 0x80($v1) /* 085490 7F050960 0FC1A4B5 */ jal get_max_ammo_for_type /* 085494 7F050964 AFA20038 */ sw $v0, 0x38($sp) /* 085498 7F050968 8FA60038 */ lw $a2, 0x38($sp) /* 08549C 7F05096C 00C2082A */ slt $at, $a2, $v0 /* 0854A0 7F050970 1420005F */ bnez $at, .L7F050AF0 /* 0854A4 7F050974 00000000 */ nop /* 0854A8 7F050978 100000E9 */ b .L7F050D20 /* 0854AC 7F05097C 00001025 */ move $v0, $zero .L7F050980: /* 0854B0 7F050980 24010014 */ li $at, 20 /* 0854B4 7F050984 1441002C */ bne $v0, $at, .L7F050A38 /* 0854B8 7F050988 8FA90088 */ lw $t1, 0x88($sp) /* 0854BC 7F05098C 8D2A0004 */ lw $t2, 4($t1) /* 0854C0 7F050990 240B0001 */ li $t3, 1 /* 0854C4 7F050994 AFAB006C */ sw $t3, 0x6c($sp) /* 0854C8 7F050998 00A02025 */ move $a0, $a1 /* 0854CC 7F05099C 0FC0FFF0 */ jal do_something_if_object_destroyed /* 0854D0 7F0509A0 AFAA0070 */ sw $t2, 0x70($sp) /* 0854D4 7F0509A4 10400003 */ beqz $v0, .L7F0509B4 /* 0854D8 7F0509A8 8FA30070 */ lw $v1, 0x70($sp) /* 0854DC 7F0509AC 100000DC */ b .L7F050D20 /* 0854E0 7F0509B0 00001025 */ move $v0, $zero .L7F0509B4: /* 0854E4 7F0509B4 00001025 */ move $v0, $zero .L7F0509B8: /* 0854E8 7F0509B8 24450001 */ addiu $a1, $v0, 1 /* 0854EC 7F0509BC 24010001 */ li $at, 1 /* 0854F0 7F0509C0 14410002 */ bne $v0, $at, .L7F0509CC /* 0854F4 7F0509C4 00A02025 */ move $a0, $a1 /* 0854F8 7F0509C8 24040001 */ li $a0, 1 .L7F0509CC: /* 0854FC 7F0509CC 946C0082 */ lhu $t4, 0x82($v1) /* 085500 7F0509D0 59800011 */ blezl $t4, .L7F050A18 /* 085504 7F0509D4 2401000D */ li $at, 13 /* 085508 7F0509D8 AFA30030 */ sw $v1, 0x30($sp) /* 08550C 7F0509DC AFA40064 */ sw $a0, 0x64($sp) /* 085510 7F0509E0 0FC1A490 */ jal check_cur_player_ammo_amount_in_inventory /* 085514 7F0509E4 AFA50034 */ sw $a1, 0x34($sp) /* 085518 7F0509E8 8FA40064 */ lw $a0, 0x64($sp) /* 08551C 7F0509EC 0FC1A4B5 */ jal get_max_ammo_for_type /* 085520 7F0509F0 AFA20038 */ sw $v0, 0x38($sp) /* 085524 7F0509F4 8FA60038 */ lw $a2, 0x38($sp) /* 085528 7F0509F8 8FA30030 */ lw $v1, 0x30($sp) /* 08552C 7F0509FC 8FA50034 */ lw $a1, 0x34($sp) /* 085530 7F050A00 00C2082A */ slt $at, $a2, $v0 /* 085534 7F050A04 50200004 */ beql $at, $zero, .L7F050A18 /* 085538 7F050A08 2401000D */ li $at, 13 /* 08553C 7F050A0C 10000005 */ b .L7F050A24 /* 085540 7F050A10 AFA0006C */ sw $zero, 0x6c($sp) /* 085544 7F050A14 2401000D */ li $at, 13 .L7F050A18: /* 085548 7F050A18 00A01025 */ move $v0, $a1 /* 08554C 7F050A1C 14A1FFE6 */ bne $a1, $at, .L7F0509B8 /* 085550 7F050A20 24630004 */ addiu $v1, $v1, 4 .L7F050A24: /* 085554 7F050A24 8FAD006C */ lw $t5, 0x6c($sp) /* 085558 7F050A28 11A00031 */ beqz $t5, .L7F050AF0 /* 08555C 7F050A2C 00000000 */ nop /* 085560 7F050A30 100000BB */ b .L7F050D20 /* 085564 7F050A34 00001025 */ move $v0, $zero .L7F050A38: /* 085568 7F050A38 24010015 */ li $at, 21 /* 08556C 7F050A3C 1441002C */ bne $v0, $at, .L7F050AF0 /* 085570 7F050A40 8FAE0088 */ lw $t6, 0x88($sp) /* 085574 7F050A44 8DCF0004 */ lw $t7, 4($t6) /* 085578 7F050A48 AFA0005C */ sw $zero, 0x5c($sp) /* 08557C 7F050A4C 0FC228BF */ jal get_BONDdata_watch_armor /* 085580 7F050A50 AFAF0060 */ sw $t7, 0x60($sp) /* 085584 7F050A54 8FB80060 */ lw $t8, 0x60($sp) /* 085588 7F050A58 24190001 */ li $t9, 1 /* 08558C 7F050A5C C7040084 */ lwc1 $f4, 0x84($t8) /* 085590 7F050A60 4600203E */ c.le.s $f4, $f0 /* 085594 7F050A64 00000000 */ nop /* 085598 7F050A68 45000003 */ bc1f .L7F050A78 /* 08559C 7F050A6C 00000000 */ nop /* 0855A0 7F050A70 1000001A */ b .L7F050ADC /* 0855A4 7F050A74 AFB9005C */ sw $t9, 0x5c($sp) .L7F050A78: /* 0855A8 7F050A78 0FC26919 */ jal get_num_players /* 0855AC 7F050A7C 00000000 */ nop /* 0855B0 7F050A80 28410002 */ slti $at, $v0, 2 /* 0855B4 7F050A84 54200016 */ bnezl $at, .L7F050AE0 /* 0855B8 7F050A88 8FAB005C */ lw $t3, 0x5c($sp) /* 0855BC 7F050A8C 0FC051D6 */ jal get_scenario /* 0855C0 7F050A90 00000000 */ nop /* 0855C4 7F050A94 24010002 */ li $at, 2 /* 0855C8 7F050A98 14410008 */ bne $v0, $at, .L7F050ABC /* 0855CC 7F050A9C 00401825 */ move $v1, $v0 /* 0855D0 7F050AA0 0FC233E0 */ jal bondinvIsAliveWithFlag /* 0855D4 7F050AA4 AFA20058 */ sw $v0, 0x58($sp) /* 0855D8 7F050AA8 10400004 */ beqz $v0, .L7F050ABC /* 0855DC 7F050AAC 8FA30058 */ lw $v1, 0x58($sp) /* 0855E0 7F050AB0 24090001 */ li $t1, 1 /* 0855E4 7F050AB4 10000009 */ b .L7F050ADC /* 0855E8 7F050AB8 AFA9005C */ sw $t1, 0x5c($sp) .L7F050ABC: /* 0855EC 7F050ABC 24010003 */ li $at, 3 /* 0855F0 7F050AC0 54610007 */ bnel $v1, $at, .L7F050AE0 /* 0855F4 7F050AC4 8FAB005C */ lw $t3, 0x5c($sp) /* 0855F8 7F050AC8 0FC233F0 */ jal checkforgoldengun /* 0855FC 7F050ACC 00000000 */ nop /* 085600 7F050AD0 10400002 */ beqz $v0, .L7F050ADC /* 085604 7F050AD4 240A0001 */ li $t2, 1 /* 085608 7F050AD8 AFAA005C */ sw $t2, 0x5c($sp) .L7F050ADC: /* 08560C 7F050ADC 8FAB005C */ lw $t3, 0x5c($sp) .L7F050AE0: /* 085610 7F050AE0 11600003 */ beqz $t3, .L7F050AF0 /* 085614 7F050AE4 00000000 */ nop /* 085618 7F050AE8 1000008D */ b .L7F050D20 /* 08561C 7F050AEC 00001025 */ move $v0, $zero .L7F050AF0: /* 085620 7F050AF0 0FC227C4 */ jal get_curplay_vertical_rotation_in_degrees /* 085624 7F050AF4 00000000 */ nop /* 085628 7F050AF8 3C018005 */ lui $at, %hi(D_800532E0) /* 08562C 7F050AFC C42632E0 */ lwc1 $f6, %lo(D_800532E0)($at) /* 085630 7F050B00 3C0C8008 */ lui $t4, %hi(pPlayer) /* 085634 7F050B04 4606003C */ c.lt.s $f0, $f6 /* 085638 7F050B08 00000000 */ nop /* 08563C 7F050B0C 45000007 */ bc1f .L7F050B2C /* 085640 7F050B10 00000000 */ nop /* 085644 7F050B14 8D8CA0B0 */ lw $t4, %lo(pPlayer)($t4) /* 085648 7F050B18 8D8D1270 */ lw $t5, 0x1270($t4) /* 08564C 7F050B1C 05A10003 */ bgez $t5, .L7F050B2C /* 085650 7F050B20 00000000 */ nop /* 085654 7F050B24 1000007E */ b .L7F050D20 /* 085658 7F050B28 00001025 */ move $v0, $zero .L7F050B2C: /* 08565C 7F050B2C 0FC225E6 */ jal get_curplayer_positiondata /* 085660 7F050B30 00000000 */ nop /* 085664 7F050B34 3C0F8008 */ lui $t7, %hi(pPlayer) /* 085668 7F050B38 8FAE0084 */ lw $t6, 0x84($sp) /* 08566C 7F050B3C 8DEFA0B0 */ lw $t7, %lo(pPlayer)($t7) /* 085670 7F050B40 C44A0008 */ lwc1 $f10, 8($v0) /* 085674 7F050B44 C452000C */ lwc1 $f18, 0xc($v0) /* 085678 7F050B48 8DF81270 */ lw $t8, 0x1270($t7) /* 08567C 7F050B4C C4460010 */ lwc1 $f6, 0x10($v0) /* 085680 7F050B50 C5C80058 */ lwc1 $f8, 0x58($t6) /* 085684 7F050B54 C5D0005C */ lwc1 $f16, 0x5c($t6) /* 085688 7F050B58 C5C40060 */ lwc1 $f4, 0x60($t6) /* 08568C 7F050B5C 2B01003C */ slti $at, $t8, 0x3c /* 085690 7F050B60 00404025 */ move $t0, $v0 /* 085694 7F050B64 460A4001 */ sub.s $f0, $f8, $f10 /* 085698 7F050B68 46128301 */ sub.s $f12, $f16, $f18 /* 08569C 7F050B6C 14200022 */ bnez $at, .L7F050BF8 /* 0856A0 7F050B70 46062081 */ sub.s $f2, $f4, $f6 /* 0856A4 7F050B74 46000202 */ mul.s $f8, $f0, $f0 /* 0856A8 7F050B78 3C018005 */ lui $at, %hi(D_800532E4) /* 0856AC 7F050B7C C43232E4 */ lwc1 $f18, %lo(D_800532E4)($at) /* 0856B0 7F050B80 46021282 */ mul.s $f10, $f2, $f2 /* 0856B4 7F050B84 3C01C3FA */ li $at, 0xC3FA0000 # -500.000000 /* 0856B8 7F050B88 00001025 */ move $v0, $zero /* 0856BC 7F050B8C 460A4400 */ add.s $f16, $f8, $f10 /* 0856C0 7F050B90 4612803E */ c.le.s $f16, $f18 /* 0856C4 7F050B94 00000000 */ nop /* 0856C8 7F050B98 45000002 */ bc1f .L7F050BA4 /* 0856CC 7F050B9C 00000000 */ nop /* 0856D0 7F050BA0 24020001 */ li $v0, 1 .L7F050BA4: /* 0856D4 7F050BA4 10400012 */ beqz $v0, .L7F050BF0 /* 0856D8 7F050BA8 00403025 */ move $a2, $v0 /* 0856DC 7F050BAC 44812000 */ mtc1 $at, $f4 /* 0856E0 7F050BB0 3C0143FA */ li $at, 0x43FA0000 # 500.000000 /* 0856E4 7F050BB4 00001025 */ move $v0, $zero /* 0856E8 7F050BB8 460C203E */ c.le.s $f4, $f12 /* 0856EC 7F050BBC 00000000 */ nop /* 0856F0 7F050BC0 45000002 */ bc1f .L7F050BCC /* 0856F4 7F050BC4 00000000 */ nop /* 0856F8 7F050BC8 24020001 */ li $v0, 1 .L7F050BCC: /* 0856FC 7F050BCC 10400008 */ beqz $v0, .L7F050BF0 /* 085700 7F050BD0 00403025 */ move $a2, $v0 /* 085704 7F050BD4 44813000 */ mtc1 $at, $f6 /* 085708 7F050BD8 00003025 */ move $a2, $zero /* 08570C 7F050BDC 4606603E */ c.le.s $f12, $f6 /* 085710 7F050BE0 00000000 */ nop /* 085714 7F050BE4 45000002 */ bc1f .L7F050BF0 /* 085718 7F050BE8 00000000 */ nop /* 08571C 7F050BEC 24060001 */ li $a2, 1 .L7F050BF0: /* 085720 7F050BF0 10000021 */ b .L7F050C78 /* 085724 7F050BF4 00C01825 */ move $v1, $a2 .L7F050BF8: /* 085728 7F050BF8 46000202 */ mul.s $f8, $f0, $f0 /* 08572C 7F050BFC 3C018005 */ lui $at, %hi(D_800532E8) /* 085730 7F050C00 C43032E8 */ lwc1 $f16, %lo(D_800532E8)($at) /* 085734 7F050C04 46021282 */ mul.s $f10, $f2, $f2 /* 085738 7F050C08 3C01C348 */ li $at, 0xC3480000 # -200.000000 /* 08573C 7F050C0C 00001025 */ move $v0, $zero /* 085740 7F050C10 460A4480 */ add.s $f18, $f8, $f10 /* 085744 7F050C14 4610903E */ c.le.s $f18, $f16 /* 085748 7F050C18 00000000 */ nop /* 08574C 7F050C1C 45000002 */ bc1f .L7F050C28 /* 085750 7F050C20 00000000 */ nop /* 085754 7F050C24 24020001 */ li $v0, 1 .L7F050C28: /* 085758 7F050C28 10400012 */ beqz $v0, .L7F050C74 /* 08575C 7F050C2C 00403025 */ move $a2, $v0 /* 085760 7F050C30 44812000 */ mtc1 $at, $f4 /* 085764 7F050C34 3C014348 */ li $at, 0x43480000 # 200.000000 /* 085768 7F050C38 00001025 */ move $v0, $zero /* 08576C 7F050C3C 460C203E */ c.le.s $f4, $f12 /* 085770 7F050C40 00000000 */ nop /* 085774 7F050C44 45000002 */ bc1f .L7F050C50 /* 085778 7F050C48 00000000 */ nop /* 08577C 7F050C4C 24020001 */ li $v0, 1 .L7F050C50: /* 085780 7F050C50 10400008 */ beqz $v0, .L7F050C74 /* 085784 7F050C54 00403025 */ move $a2, $v0 /* 085788 7F050C58 44813000 */ mtc1 $at, $f6 /* 08578C 7F050C5C 00003025 */ move $a2, $zero /* 085790 7F050C60 4606603E */ c.le.s $f12, $f6 /* 085794 7F050C64 00000000 */ nop /* 085798 7F050C68 45020003 */ bc1fl .L7F050C78 /* 08579C 7F050C6C 00C01825 */ move $v1, $a2 /* 0857A0 7F050C70 24060001 */ li $a2, 1 .L7F050C74: /* 0857A4 7F050C74 00C01825 */ move $v1, $a2 .L7F050C78: /* 0857A8 7F050C78 10C00022 */ beqz $a2, .L7F050D04 /* 0857AC 7F050C7C 8FB90084 */ lw $t9, 0x84($sp) /* 0857B0 7F050C80 8F29000C */ lw $t1, 0xc($t9) /* 0857B4 7F050C84 8FA20088 */ lw $v0, 0x88($sp) /* 0857B8 7F050C88 3C0141F0 */ li $at, 0x41F00000 # 30.000000 /* 0857BC 7F050C8C 312A1000 */ andi $t2, $t1, 0x1000 /* 0857C0 7F050C90 1540001C */ bnez $t2, .L7F050D04 /* 0857C4 7F050C94 27A4003C */ addiu $a0, $sp, 0x3c /* 0857C8 7F050C98 8D0B0014 */ lw $t3, 0x14($t0) /* 0857CC 7F050C9C 44810000 */ mtc1 $at, $f0 /* 0857D0 7F050CA0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0857D4 7F050CA4 AFAB003C */ sw $t3, 0x3c($sp) /* 0857D8 7F050CA8 C4480010 */ lwc1 $f8, 0x10($v0) /* 0857DC 7F050CAC 8C470008 */ lw $a3, 8($v0) /* 0857E0 7F050CB0 8D060010 */ lw $a2, 0x10($t0) /* 0857E4 7F050CB4 8D050008 */ lw $a1, 8($t0) /* 0857E8 7F050CB8 44818000 */ mtc1 $at, $f16 /* 0857EC 7F050CBC 44805000 */ mtc1 $zero, $f10 /* 0857F0 7F050CC0 240C0002 */ li $t4, 2 /* 0857F4 7F050CC4 AFAC0014 */ sw $t4, 0x14($sp) /* 0857F8 7F050CC8 AFA30040 */ sw $v1, 0x40($sp) /* 0857FC 7F050CCC E7A0001C */ swc1 $f0, 0x1c($sp) /* 085800 7F050CD0 E7A00018 */ swc1 $f0, 0x18($sp) /* 085804 7F050CD4 E7A80010 */ swc1 $f8, 0x10($sp) /* 085808 7F050CD8 E7B00024 */ swc1 $f16, 0x24($sp) /* 08580C 7F050CDC 0FC2C389 */ jal sub_GAME_7F0B0E24 /* 085810 7F050CE0 E7AA0020 */ swc1 $f10, 0x20($sp) /* 085814 7F050CE4 10400006 */ beqz $v0, .L7F050D00 /* 085818 7F050CE8 8FA30040 */ lw $v1, 0x40($sp) /* 08581C 7F050CEC 8FAE0088 */ lw $t6, 0x88($sp) /* 085820 7F050CF0 8FAD003C */ lw $t5, 0x3c($sp) /* 085824 7F050CF4 8DCF0014 */ lw $t7, 0x14($t6) /* 085828 7F050CF8 11AF0002 */ beq $t5, $t7, .L7F050D04 /* 08582C 7F050CFC 00000000 */ nop .L7F050D00: /* 085830 7F050D00 00001825 */ move $v1, $zero .L7F050D04: /* 085834 7F050D04 10600006 */ beqz $v1, .L7F050D20 /* 085838 7F050D08 00001025 */ move $v0, $zero /* 08583C 7F050D0C 8FA40088 */ lw $a0, 0x88($sp) /* 085840 7F050D10 0FC14094 */ jal collect_or_interact_object /* 085844 7F050D14 24050001 */ li $a1, 1 /* 085848 7F050D18 10000002 */ b .L7F050D24 /* 08584C 7F050D1C 8FBF002C */ lw $ra, 0x2c($sp) .L7F050D20: /* 085850 7F050D20 8FBF002C */ lw $ra, 0x2c($sp) .L7F050D24: /* 085854 7F050D24 27BD0088 */ addiu $sp, $sp, 0x88 /* 085858 7F050D28 03E00008 */ jr $ra /* 08585C 7F050D2C 00000000 */ nop ) #endif #ifdef VERSION_JP GLOBAL_ASM( .late_rodata glabel D_800532E0 .word 0xbf490fdb /*-0.78539819*/ glabel D_800532E4 .word 0x47ef4200 /*122500.0*/ glabel D_800532E8 .word 0x461c4000 /*10000.0*/ glabel D_800532EC .word 0x47742400 /*62500.0*/ glabel D_800532F0 .word 0x40490fdb /*3.1415927*/ .text glabel object_collectability_routines /* 085650 7F050AE0 27BDFF70 */ addiu $sp, $sp, -0x90 /* 085654 7F050AE4 AFBF0034 */ sw $ra, 0x34($sp) /* 085658 7F050AE8 AFB00030 */ sw $s0, 0x30($sp) /* 08565C 7F050AEC AFA40090 */ sw $a0, 0x90($sp) /* 085660 7F050AF0 8C840004 */ lw $a0, 4($a0) /* 085664 7F050AF4 0FC13904 */ jal check_if_collectable_object /* 085668 7F050AF8 AFA4008C */ sw $a0, 0x8c($sp) /* 08566C 7F050AFC 1040000B */ beqz $v0, .Ljp7F050B2C /* 085670 7F050B00 8FA4008C */ lw $a0, 0x8c($sp) /* 085674 7F050B04 908F0003 */ lbu $t7, 3($a0) /* 085678 7F050B08 24010011 */ li $at, 17 /* 08567C 7F050B0C 51E10008 */ beql $t7, $at, .Ljp7F050B30 /* 085680 7F050B10 8FA4008C */ lw $a0, 0x8c($sp) /* 085684 7F050B14 8C820008 */ lw $v0, 8($a0) /* 085688 7F050B18 0002C2C0 */ sll $t8, $v0, 0xb /* 08568C 7F050B1C 0703000B */ bgezl $t8, .Ljp7F050B4C /* 085690 7F050B20 00024B00 */ sll $t1, $v0, 0xc /* 085694 7F050B24 100001BC */ b .Ljp7F051218 /* 085698 7F050B28 00001025 */ move $v0, $zero .Ljp7F050B2C: /* 08569C 7F050B2C 8FA4008C */ lw $a0, 0x8c($sp) .Ljp7F050B30: /* 0856A0 7F050B30 8C820008 */ lw $v0, 8($a0) /* 0856A4 7F050B34 0002CB40 */ sll $t9, $v0, 0xd /* 0856A8 7F050B38 07220004 */ bltzl $t9, .Ljp7F050B4C /* 0856AC 7F050B3C 00024B00 */ sll $t1, $v0, 0xc /* 0856B0 7F050B40 100001B5 */ b .Ljp7F051218 /* 0856B4 7F050B44 00001025 */ move $v0, $zero /* 0856B8 7F050B48 00024B00 */ sll $t1, $v0, 0xc .Ljp7F050B4C: /* 0856BC 7F050B4C 05230004 */ bgezl $t1, .Ljp7F050B60 /* 0856C0 7F050B50 8C8A0064 */ lw $t2, 0x64($a0) /* 0856C4 7F050B54 100001B0 */ b .Ljp7F051218 /* 0856C8 7F050B58 00001025 */ move $v0, $zero /* 0856CC 7F050B5C 8C8A0064 */ lw $t2, 0x64($a0) .Ljp7F050B60: /* 0856D0 7F050B60 314B0080 */ andi $t3, $t2, 0x80 /* 0856D4 7F050B64 1160000A */ beqz $t3, .Ljp7F050B90 /* 0856D8 7F050B68 00000000 */ nop /* 0856DC 7F050B6C 8C82006C */ lw $v0, 0x6c($a0) /* 0856E0 7F050B70 8C4C00BC */ lw $t4, 0xbc($v0) /* 0856E4 7F050B74 19800006 */ blez $t4, .Ljp7F050B90 /* 0856E8 7F050B78 00000000 */ nop /* 0856EC 7F050B7C 8C4D0090 */ lw $t5, 0x90($v0) /* 0856F0 7F050B80 15A00003 */ bnez $t5, .Ljp7F050B90 /* 0856F4 7F050B84 00000000 */ nop /* 0856F8 7F050B88 100001A3 */ b .Ljp7F051218 /* 0856FC 7F050B8C 00001025 */ move $v0, $zero .Ljp7F050B90: /* 085700 7F050B90 0FC0FAAB */ jal sub_GAME_7F03E7AC /* 085704 7F050B94 00000000 */ nop /* 085708 7F050B98 14400003 */ bnez $v0, .Ljp7F050BA8 /* 08570C 7F050B9C 8FA5008C */ lw $a1, 0x8c($sp) /* 085710 7F050BA0 1000019D */ b .Ljp7F051218 /* 085714 7F050BA4 00001025 */ move $v0, $zero .Ljp7F050BA8: /* 085718 7F050BA8 90A20003 */ lbu $v0, 3($a1) /* 08571C 7F050BAC 24010008 */ li $at, 8 /* 085720 7F050BB0 8FAE0090 */ lw $t6, 0x90($sp) /* 085724 7F050BB4 54410060 */ bnel $v0, $at, .Ljp7F050D38 /* 085728 7F050BB8 24010007 */ li $at, 7 /* 08572C 7F050BBC 8DD00004 */ lw $s0, 4($t6) /* 085730 7F050BC0 2401001A */ li $at, 26 /* 085734 7F050BC4 82040080 */ lb $a0, 0x80($s0) /* 085738 7F050BC8 10810003 */ beq $a0, $at, .Ljp7F050BD8 /* 08573C 7F050BCC 24010057 */ li $at, 87 /* 085740 7F050BD0 5481000B */ bnel $a0, $at, .Ljp7F050C00 /* 085744 7F050BD4 2401001D */ li $at, 29 .Ljp7F050BD8: /* 085748 7F050BD8 860F0082 */ lh $t7, 0x82($s0) /* 08574C 7F050BDC 05E10005 */ bgez $t7, .Ljp7F050BF4 /* 085750 7F050BE0 00000000 */ nop /* 085754 7F050BE4 8CB80064 */ lw $t8, 0x64($a1) /* 085758 7F050BE8 33190004 */ andi $t9, $t8, 4 /* 08575C 7F050BEC 53200004 */ beql $t9, $zero, .Ljp7F050C00 /* 085760 7F050BF0 2401001D */ li $at, 29 .Ljp7F050BF4: /* 085764 7F050BF4 10000188 */ b .Ljp7F051218 /* 085768 7F050BF8 00001025 */ move $v0, $zero /* 08576C 7F050BFC 2401001D */ li $at, 29 .Ljp7F050C00: /* 085770 7F050C00 1081000D */ beq $a0, $at, .Ljp7F050C38 /* 085774 7F050C04 2401001C */ li $at, 28 /* 085778 7F050C08 1081000B */ beq $a0, $at, .Ljp7F050C38 /* 08577C 7F050C0C 2401001B */ li $at, 27 /* 085780 7F050C10 10810009 */ beq $a0, $at, .Ljp7F050C38 /* 085784 7F050C14 24010021 */ li $at, 33 /* 085788 7F050C18 10810007 */ beq $a0, $at, .Ljp7F050C38 /* 08578C 7F050C1C 2401002F */ li $at, 47 /* 085790 7F050C20 10810005 */ beq $a0, $at, .Ljp7F050C38 /* 085794 7F050C24 24010030 */ li $at, 48 /* 085798 7F050C28 10810003 */ beq $a0, $at, .Ljp7F050C38 /* 08579C 7F050C2C 24010022 */ li $at, 34 /* 0857A0 7F050C30 5481000B */ bnel $a0, $at, .Ljp7F050C60 /* 0857A4 7F050C34 24010056 */ li $at, 86 .Ljp7F050C38: /* 0857A8 7F050C38 86090082 */ lh $t1, 0x82($s0) /* 0857AC 7F050C3C 05210005 */ bgez $t1, .Ljp7F050C54 /* 0857B0 7F050C40 00000000 */ nop /* 0857B4 7F050C44 8CAA0064 */ lw $t2, 0x64($a1) /* 0857B8 7F050C48 314B0004 */ andi $t3, $t2, 4 /* 0857BC 7F050C4C 51600004 */ beql $t3, $zero, .Ljp7F050C60 /* 0857C0 7F050C50 24010056 */ li $at, 86 .Ljp7F050C54: /* 0857C4 7F050C54 10000170 */ b .Ljp7F051218 /* 0857C8 7F050C58 00001025 */ move $v0, $zero /* 0857CC 7F050C5C 24010056 */ li $at, 86 .Ljp7F050C60: /* 0857D0 7F050C60 14810007 */ bne $a0, $at, .Ljp7F050C80 /* 0857D4 7F050C64 00000000 */ nop /* 0857D8 7F050C68 8CAC0064 */ lw $t4, 0x64($a1) /* 0857DC 7F050C6C 318D0080 */ andi $t5, $t4, 0x80 /* 0857E0 7F050C70 11A00003 */ beqz $t5, .Ljp7F050C80 /* 0857E4 7F050C74 00000000 */ nop /* 0857E8 7F050C78 10000167 */ b .Ljp7F051218 /* 0857EC 7F050C7C 00001025 */ move $v0, $zero .Ljp7F050C80: /* 0857F0 7F050C80 0FC232E9 */ jal is_weapon_in_inv /* 0857F4 7F050C84 00000000 */ nop /* 0857F8 7F050C88 104000D9 */ beqz $v0, .Ljp7F050FF0 /* 0857FC 7F050C8C 00000000 */ nop /* 085800 7F050C90 0FC1A686 */ jal get_ammo_type_for_weapon /* 085804 7F050C94 82040080 */ lb $a0, 0x80($s0) /* 085808 7F050C98 104000D5 */ beqz $v0, .Ljp7F050FF0 /* 08580C 7F050C9C 00000000 */ nop /* 085810 7F050CA0 0FC1A68F */ jal get_ammo_count_for_weapon /* 085814 7F050CA4 82040080 */ lb $a0, 0x80($s0) /* 085818 7F050CA8 82040080 */ lb $a0, 0x80($s0) /* 08581C 7F050CAC 0FC1A6A7 */ jal get_max_ammo_for_weapon /* 085820 7F050CB0 AFA20040 */ sw $v0, 0x40($sp) /* 085824 7F050CB4 8FA30040 */ lw $v1, 0x40($sp) /* 085828 7F050CB8 0062082A */ slt $at, $v1, $v0 /* 08582C 7F050CBC 142000CC */ bnez $at, .Ljp7F050FF0 /* 085830 7F050CC0 00000000 */ nop /* 085834 7F050CC4 8E020084 */ lw $v0, 0x84($s0) /* 085838 7F050CC8 14400004 */ bnez $v0, .Ljp7F050CDC /* 08583C 7F050CCC 00000000 */ nop /* 085840 7F050CD0 820E0081 */ lb $t6, 0x81($s0) /* 085844 7F050CD4 05C00015 */ bltz $t6, .Ljp7F050D2C /* 085848 7F050CD8 00000000 */ nop .Ljp7F050CDC: /* 08584C 7F050CDC 50400005 */ beql $v0, $zero, .Ljp7F050CF4 /* 085850 7F050CE0 82050081 */ lb $a1, 0x81($s0) /* 085854 7F050CE4 80450080 */ lb $a1, 0x80($v0) /* 085858 7F050CE8 10000003 */ b .Ljp7F050CF8 /* 08585C 7F050CEC 00A02025 */ move $a0, $a1 /* 085860 7F050CF0 82050081 */ lb $a1, 0x81($s0) .Ljp7F050CF4: /* 085864 7F050CF4 00A02025 */ move $a0, $a1 .Ljp7F050CF8: /* 085868 7F050CF8 8E0F0008 */ lw $t7, 8($s0) /* 08586C 7F050CFC 000FC0C0 */ sll $t8, $t7, 3 /* 085870 7F050D00 07030004 */ bgezl $t8, .Ljp7F050D14 /* 085874 7F050D04 82040080 */ lb $a0, 0x80($s0) /* 085878 7F050D08 10000002 */ b .Ljp7F050D14 /* 08587C 7F050D0C 82050080 */ lb $a1, 0x80($s0) /* 085880 7F050D10 82040080 */ lb $a0, 0x80($s0) .Ljp7F050D14: /* 085884 7F050D14 0FC2330B */ jal is_item_for_hand_in_inventory /* 085888 7F050D18 00000000 */ nop /* 08588C 7F050D1C 104000B4 */ beqz $v0, .Ljp7F050FF0 /* 085890 7F050D20 00000000 */ nop /* 085894 7F050D24 1000013C */ b .Ljp7F051218 /* 085898 7F050D28 00001025 */ move $v0, $zero .Ljp7F050D2C: /* 08589C 7F050D2C 1000013A */ b .Ljp7F051218 /* 0858A0 7F050D30 00001025 */ move $v0, $zero /* 0858A4 7F050D34 24010007 */ li $at, 7 .Ljp7F050D38: /* 0858A8 7F050D38 14410035 */ bne $v0, $at, .Ljp7F050E10 /* 0858AC 7F050D3C 8FB90090 */ lw $t9, 0x90($sp) /* 0858B0 7F050D40 8F300004 */ lw $s0, 4($t9) /* 0858B4 7F050D44 0FC1A60B */ jal check_cur_player_ammo_amount_in_inventory /* 0858B8 7F050D48 8E040080 */ lw $a0, 0x80($s0) /* 0858BC 7F050D4C 8E040080 */ lw $a0, 0x80($s0) /* 0858C0 7F050D50 0FC1A630 */ jal get_max_ammo_for_type /* 0858C4 7F050D54 AFA20040 */ sw $v0, 0x40($sp) /* 0858C8 7F050D58 8FA30040 */ lw $v1, 0x40($sp) /* 0858CC 7F050D5C 0062082A */ slt $at, $v1, $v0 /* 0858D0 7F050D60 142000A3 */ bnez $at, .Ljp7F050FF0 /* 0858D4 7F050D64 00000000 */ nop /* 0858D8 7F050D68 8E020080 */ lw $v0, 0x80($s0) /* 0858DC 7F050D6C 24010005 */ li $at, 5 /* 0858E0 7F050D70 54410007 */ bnel $v0, $at, .Ljp7F050D90 /* 0858E4 7F050D74 24010007 */ li $at, 7 /* 0858E8 7F050D78 0FC232E9 */ jal is_weapon_in_inv /* 0858EC 7F050D7C 2404001A */ li $a0, 26 /* 0858F0 7F050D80 1040009B */ beqz $v0, .Ljp7F050FF0 /* 0858F4 7F050D84 00000000 */ nop /* 0858F8 7F050D88 8E020080 */ lw $v0, 0x80($s0) /* 0858FC 7F050D8C 24010007 */ li $at, 7 .Ljp7F050D90: /* 085900 7F050D90 54410007 */ bnel $v0, $at, .Ljp7F050DB0 /* 085904 7F050D94 24010008 */ li $at, 8 /* 085908 7F050D98 0FC232E9 */ jal is_weapon_in_inv /* 08590C 7F050D9C 2404001D */ li $a0, 29 /* 085910 7F050DA0 10400093 */ beqz $v0, .Ljp7F050FF0 /* 085914 7F050DA4 00000000 */ nop /* 085918 7F050DA8 8E020080 */ lw $v0, 0x80($s0) /* 08591C 7F050DAC 24010008 */ li $at, 8 .Ljp7F050DB0: /* 085920 7F050DB0 54410007 */ bnel $v0, $at, .Ljp7F050DD0 /* 085924 7F050DB4 24010009 */ li $at, 9 /* 085928 7F050DB8 0FC232E9 */ jal is_weapon_in_inv /* 08592C 7F050DBC 2404001C */ li $a0, 28 /* 085930 7F050DC0 1040008B */ beqz $v0, .Ljp7F050FF0 /* 085934 7F050DC4 00000000 */ nop /* 085938 7F050DC8 8E020080 */ lw $v0, 0x80($s0) /* 08593C 7F050DCC 24010009 */ li $at, 9 .Ljp7F050DD0: /* 085940 7F050DD0 54410007 */ bnel $v0, $at, .Ljp7F050DF0 /* 085944 7F050DD4 2401000A */ li $at, 10 /* 085948 7F050DD8 0FC232E9 */ jal is_weapon_in_inv /* 08594C 7F050DDC 2404001B */ li $a0, 27 /* 085950 7F050DE0 10400083 */ beqz $v0, .Ljp7F050FF0 /* 085954 7F050DE4 00000000 */ nop /* 085958 7F050DE8 8E020080 */ lw $v0, 0x80($s0) /* 08595C 7F050DEC 2401000A */ li $at, 10 .Ljp7F050DF0: /* 085960 7F050DF0 14410005 */ bne $v0, $at, .Ljp7F050E08 /* 085964 7F050DF4 00000000 */ nop /* 085968 7F050DF8 0FC232E9 */ jal is_weapon_in_inv /* 08596C 7F050DFC 24040003 */ li $a0, 3 /* 085970 7F050E00 1040007B */ beqz $v0, .Ljp7F050FF0 /* 085974 7F050E04 00000000 */ nop .Ljp7F050E08: /* 085978 7F050E08 10000103 */ b .Ljp7F051218 /* 08597C 7F050E0C 00001025 */ move $v0, $zero .Ljp7F050E10: /* 085980 7F050E10 24010014 */ li $at, 20 /* 085984 7F050E14 1441004B */ bne $v0, $at, .Ljp7F050F44 /* 085988 7F050E18 8FA90090 */ lw $t1, 0x90($sp) /* 08598C 7F050E1C 8D300004 */ lw $s0, 4($t1) /* 085990 7F050E20 240A0001 */ li $t2, 1 /* 085994 7F050E24 AFAA0074 */ sw $t2, 0x74($sp) /* 085998 7F050E28 0FC100B0 */ jal do_something_if_object_destroyed /* 08599C 7F050E2C 00A02025 */ move $a0, $a1 /* 0859A0 7F050E30 10400003 */ beqz $v0, .Ljp7F050E40 /* 0859A4 7F050E34 02001825 */ move $v1, $s0 /* 0859A8 7F050E38 100000F7 */ b .Ljp7F051218 /* 0859AC 7F050E3C 00001025 */ move $v0, $zero .Ljp7F050E40: /* 0859B0 7F050E40 00001025 */ move $v0, $zero .Ljp7F050E44: /* 0859B4 7F050E44 24500001 */ addiu $s0, $v0, 1 /* 0859B8 7F050E48 24010001 */ li $at, 1 /* 0859BC 7F050E4C 14410002 */ bne $v0, $at, .Ljp7F050E58 /* 0859C0 7F050E50 AFB0003C */ sw $s0, 0x3c($sp) /* 0859C4 7F050E54 24100001 */ li $s0, 1 .Ljp7F050E58: /* 0859C8 7F050E58 AFA30038 */ sw $v1, 0x38($sp) /* 0859CC 7F050E5C 946C0082 */ lhu $t4, 0x82($v1) /* 0859D0 7F050E60 02002025 */ move $a0, $s0 /* 0859D4 7F050E64 5980002E */ blezl $t4, .Ljp7F050F20 /* 0859D8 7F050E68 8FA2003C */ lw $v0, 0x3c($sp) /* 0859DC 7F050E6C 0FC1A60B */ jal check_cur_player_ammo_amount_in_inventory /* 0859E0 7F050E70 AFA30038 */ sw $v1, 0x38($sp) /* 0859E4 7F050E74 02002025 */ move $a0, $s0 /* 0859E8 7F050E78 0FC1A630 */ jal get_max_ammo_for_type /* 0859EC 7F050E7C AFA20040 */ sw $v0, 0x40($sp) /* 0859F0 7F050E80 8FA30040 */ lw $v1, 0x40($sp) /* 0859F4 7F050E84 0062082A */ slt $at, $v1, $v0 /* 0859F8 7F050E88 50200004 */ beql $at, $zero, .Ljp7F050E9C /* 0859FC 7F050E8C 24010005 */ li $at, 5 /* 085A00 7F050E90 10000027 */ b .Ljp7F050F30 /* 085A04 7F050E94 AFA00074 */ sw $zero, 0x74($sp) /* 085A08 7F050E98 24010005 */ li $at, 5 .Ljp7F050E9C: /* 085A0C 7F050E9C 56010005 */ bnel $s0, $at, .Ljp7F050EB4 /* 085A10 7F050EA0 24010007 */ li $at, 7 /* 085A14 7F050EA4 0FC232E9 */ jal is_weapon_in_inv /* 085A18 7F050EA8 2404001A */ li $a0, 26 /* 085A1C 7F050EAC 10400019 */ beqz $v0, .Ljp7F050F14 /* 085A20 7F050EB0 24010007 */ li $at, 7 .Ljp7F050EB4: /* 085A24 7F050EB4 56010005 */ bnel $s0, $at, .Ljp7F050ECC /* 085A28 7F050EB8 24010008 */ li $at, 8 /* 085A2C 7F050EBC 0FC232E9 */ jal is_weapon_in_inv /* 085A30 7F050EC0 2404001D */ li $a0, 29 /* 085A34 7F050EC4 10400013 */ beqz $v0, .Ljp7F050F14 /* 085A38 7F050EC8 24010008 */ li $at, 8 .Ljp7F050ECC: /* 085A3C 7F050ECC 56010005 */ bnel $s0, $at, .Ljp7F050EE4 /* 085A40 7F050ED0 24010009 */ li $at, 9 /* 085A44 7F050ED4 0FC232E9 */ jal is_weapon_in_inv /* 085A48 7F050ED8 2404001C */ li $a0, 28 /* 085A4C 7F050EDC 1040000D */ beqz $v0, .Ljp7F050F14 /* 085A50 7F050EE0 24010009 */ li $at, 9 .Ljp7F050EE4: /* 085A54 7F050EE4 56010005 */ bnel $s0, $at, .Ljp7F050EFC /* 085A58 7F050EE8 2401000A */ li $at, 10 /* 085A5C 7F050EEC 0FC232E9 */ jal is_weapon_in_inv /* 085A60 7F050EF0 2404001B */ li $a0, 27 /* 085A64 7F050EF4 10400007 */ beqz $v0, .Ljp7F050F14 /* 085A68 7F050EF8 2401000A */ li $at, 10 .Ljp7F050EFC: /* 085A6C 7F050EFC 56010008 */ bnel $s0, $at, .Ljp7F050F20 /* 085A70 7F050F00 8FA2003C */ lw $v0, 0x3c($sp) /* 085A74 7F050F04 0FC232E9 */ jal is_weapon_in_inv /* 085A78 7F050F08 24040003 */ li $a0, 3 /* 085A7C 7F050F0C 54400004 */ bnezl $v0, .Ljp7F050F20 /* 085A80 7F050F10 8FA2003C */ lw $v0, 0x3c($sp) .Ljp7F050F14: /* 085A84 7F050F14 10000006 */ b .Ljp7F050F30 /* 085A88 7F050F18 AFA00074 */ sw $zero, 0x74($sp) /* 085A8C 7F050F1C 8FA2003C */ lw $v0, 0x3c($sp) .Ljp7F050F20: /* 085A90 7F050F20 8FA30038 */ lw $v1, 0x38($sp) /* 085A94 7F050F24 2401000D */ li $at, 13 /* 085A98 7F050F28 1441FFC6 */ bne $v0, $at, .Ljp7F050E44 /* 085A9C 7F050F2C 24630004 */ addiu $v1, $v1, 4 .Ljp7F050F30: /* 085AA0 7F050F30 8FAD0074 */ lw $t5, 0x74($sp) /* 085AA4 7F050F34 11A0002E */ beqz $t5, .Ljp7F050FF0 /* 085AA8 7F050F38 00000000 */ nop /* 085AAC 7F050F3C 100000B6 */ b .Ljp7F051218 /* 085AB0 7F050F40 00001025 */ move $v0, $zero .Ljp7F050F44: /* 085AB4 7F050F44 24010015 */ li $at, 21 /* 085AB8 7F050F48 14410029 */ bne $v0, $at, .Ljp7F050FF0 /* 085ABC 7F050F4C 8FAE0090 */ lw $t6, 0x90($sp) /* 085AC0 7F050F50 8DD00004 */ lw $s0, 4($t6) /* 085AC4 7F050F54 0FC22A8D */ jal get_BONDdata_watch_armor /* 085AC8 7F050F58 AFA00064 */ sw $zero, 0x64($sp) /* 085ACC 7F050F5C C6040084 */ lwc1 $f4, 0x84($s0) /* 085AD0 7F050F60 240F0001 */ li $t7, 1 /* 085AD4 7F050F64 4600203E */ c.le.s $f4, $f0 /* 085AD8 7F050F68 00000000 */ nop /* 085ADC 7F050F6C 45000003 */ bc1f .Ljp7F050F7C /* 085AE0 7F050F70 00000000 */ nop /* 085AE4 7F050F74 10000019 */ b .Ljp7F050FDC /* 085AE8 7F050F78 AFAF0064 */ sw $t7, 0x64($sp) .Ljp7F050F7C: /* 085AEC 7F050F7C 0FC26C01 */ jal get_num_players /* 085AF0 7F050F80 00000000 */ nop /* 085AF4 7F050F84 28410002 */ slti $at, $v0, 2 /* 085AF8 7F050F88 54200015 */ bnezl $at, .Ljp7F050FE0 /* 085AFC 7F050F8C 8FA90064 */ lw $t1, 0x64($sp) /* 085B00 7F050F90 0FC05202 */ jal get_scenario /* 085B04 7F050F94 00000000 */ nop /* 085B08 7F050F98 24010002 */ li $at, 2 /* 085B0C 7F050F9C 14410007 */ bne $v0, $at, .Ljp7F050FBC /* 085B10 7F050FA0 00408025 */ move $s0, $v0 /* 085B14 7F050FA4 0FC23639 */ jal bondinvIsAliveWithFlag /* 085B18 7F050FA8 00000000 */ nop /* 085B1C 7F050FAC 10400003 */ beqz $v0, .Ljp7F050FBC /* 085B20 7F050FB0 24180001 */ li $t8, 1 /* 085B24 7F050FB4 10000009 */ b .Ljp7F050FDC /* 085B28 7F050FB8 AFB80064 */ sw $t8, 0x64($sp) .Ljp7F050FBC: /* 085B2C 7F050FBC 24010003 */ li $at, 3 /* 085B30 7F050FC0 56010007 */ bnel $s0, $at, .Ljp7F050FE0 /* 085B34 7F050FC4 8FA90064 */ lw $t1, 0x64($sp) /* 085B38 7F050FC8 0FC23649 */ jal checkforgoldengun /* 085B3C 7F050FCC 00000000 */ nop /* 085B40 7F050FD0 10400002 */ beqz $v0, .Ljp7F050FDC /* 085B44 7F050FD4 24190001 */ li $t9, 1 /* 085B48 7F050FD8 AFB90064 */ sw $t9, 0x64($sp) .Ljp7F050FDC: /* 085B4C 7F050FDC 8FA90064 */ lw $t1, 0x64($sp) .Ljp7F050FE0: /* 085B50 7F050FE0 11200003 */ beqz $t1, .Ljp7F050FF0 /* 085B54 7F050FE4 00000000 */ nop /* 085B58 7F050FE8 1000008B */ b .Ljp7F051218 /* 085B5C 7F050FEC 00001025 */ move $v0, $zero .Ljp7F050FF0: /* 085B60 7F050FF0 0FC22992 */ jal get_curplay_vertical_rotation_in_degrees /* 085B64 7F050FF4 00000000 */ nop /* 085B68 7F050FF8 3C018005 */ lui $at, %hi(D_800532E0) # $at, 0x8005 /* 085B6C 7F050FFC C4263310 */ lwc1 $f6, %lo(D_800532E0)($at) /* 085B70 7F051000 3C0A8008 */ lui $t2, %hi(pPlayer) # $t2, 0x8008 /* 085B74 7F051004 4606003C */ c.lt.s $f0, $f6 /* 085B78 7F051008 00000000 */ nop /* 085B7C 7F05100C 45000007 */ bc1f .Ljp7F05102C /* 085B80 7F051010 00000000 */ nop /* 085B84 7F051014 8D4AA120 */ lw $t2, %lo(pPlayer)($t2) /* 085B88 7F051018 8D4B1270 */ lw $t3, 0x1270($t2) /* 085B8C 7F05101C 05610003 */ bgez $t3, .Ljp7F05102C /* 085B90 7F051020 00000000 */ nop /* 085B94 7F051024 1000007C */ b .Ljp7F051218 /* 085B98 7F051028 00001025 */ move $v0, $zero .Ljp7F05102C: /* 085B9C 7F05102C 0FC2279B */ jal get_curplayer_positiondata /* 085BA0 7F051030 00000000 */ nop /* 085BA4 7F051034 3C0D8008 */ lui $t5, %hi(pPlayer) # $t5, 0x8008 /* 085BA8 7F051038 8FAC008C */ lw $t4, 0x8c($sp) /* 085BAC 7F05103C 8DADA120 */ lw $t5, %lo(pPlayer)($t5) /* 085BB0 7F051040 C44A0008 */ lwc1 $f10, 8($v0) /* 085BB4 7F051044 C452000C */ lwc1 $f18, 0xc($v0) /* 085BB8 7F051048 8DAE1270 */ lw $t6, 0x1270($t5) /* 085BBC 7F05104C C4460010 */ lwc1 $f6, 0x10($v0) /* 085BC0 7F051050 C5880058 */ lwc1 $f8, 0x58($t4) /* 085BC4 7F051054 C590005C */ lwc1 $f16, 0x5c($t4) /* 085BC8 7F051058 C5840060 */ lwc1 $f4, 0x60($t4) /* 085BCC 7F05105C 29C1003C */ slti $at, $t6, 0x3c /* 085BD0 7F051060 00404025 */ move $t0, $v0 /* 085BD4 7F051064 460A4001 */ sub.s $f0, $f8, $f10 /* 085BD8 7F051068 46128301 */ sub.s $f12, $f16, $f18 /* 085BDC 7F05106C 14200022 */ bnez $at, .Ljp7F0510F8 /* 085BE0 7F051070 46062081 */ sub.s $f2, $f4, $f6 /* 085BE4 7F051074 46000202 */ mul.s $f8, $f0, $f0 /* 085BE8 7F051078 3C018005 */ lui $at, %hi(D_800532E4) # $at, 0x8005 /* 085BEC 7F05107C C4323314 */ lwc1 $f18, %lo(D_800532E4)($at) /* 085BF0 7F051080 46021282 */ mul.s $f10, $f2, $f2 /* 085BF4 7F051084 3C01C3FA */ li $at, 0xC3FA0000 # -500.000000 /* 085BF8 7F051088 00001025 */ move $v0, $zero /* 085BFC 7F05108C 460A4400 */ add.s $f16, $f8, $f10 /* 085C00 7F051090 4612803E */ c.le.s $f16, $f18 /* 085C04 7F051094 00000000 */ nop /* 085C08 7F051098 45000002 */ bc1f .Ljp7F0510A4 /* 085C0C 7F05109C 00000000 */ nop /* 085C10 7F0510A0 24020001 */ li $v0, 1 .Ljp7F0510A4: /* 085C14 7F0510A4 10400012 */ beqz $v0, .Ljp7F0510F0 /* 085C18 7F0510A8 00401825 */ move $v1, $v0 /* 085C1C 7F0510AC 44812000 */ mtc1 $at, $f4 /* 085C20 7F0510B0 3C0143FA */ li $at, 0x43FA0000 # 500.000000 /* 085C24 7F0510B4 00001025 */ move $v0, $zero /* 085C28 7F0510B8 460C203E */ c.le.s $f4, $f12 /* 085C2C 7F0510BC 00000000 */ nop /* 085C30 7F0510C0 45000002 */ bc1f .Ljp7F0510CC /* 085C34 7F0510C4 00000000 */ nop /* 085C38 7F0510C8 24020001 */ li $v0, 1 .Ljp7F0510CC: /* 085C3C 7F0510CC 10400008 */ beqz $v0, .Ljp7F0510F0 /* 085C40 7F0510D0 00401825 */ move $v1, $v0 /* 085C44 7F0510D4 44813000 */ mtc1 $at, $f6 /* 085C48 7F0510D8 00001825 */ move $v1, $zero /* 085C4C 7F0510DC 4606603E */ c.le.s $f12, $f6 /* 085C50 7F0510E0 00000000 */ nop /* 085C54 7F0510E4 45000002 */ bc1f .Ljp7F0510F0 /* 085C58 7F0510E8 00000000 */ nop /* 085C5C 7F0510EC 24030001 */ li $v1, 1 .Ljp7F0510F0: /* 085C60 7F0510F0 10000021 */ b .Ljp7F051178 /* 085C64 7F0510F4 00608025 */ move $s0, $v1 .Ljp7F0510F8: /* 085C68 7F0510F8 46000202 */ mul.s $f8, $f0, $f0 /* 085C6C 7F0510FC 3C018005 */ lui $at, %hi(D_800532E8) # $at, 0x8005 /* 085C70 7F051100 C4303318 */ lwc1 $f16, %lo(D_800532E8)($at) /* 085C74 7F051104 46021282 */ mul.s $f10, $f2, $f2 /* 085C78 7F051108 3C01C348 */ li $at, 0xC3480000 # -200.000000 /* 085C7C 7F05110C 00001025 */ move $v0, $zero /* 085C80 7F051110 460A4480 */ add.s $f18, $f8, $f10 /* 085C84 7F051114 4610903E */ c.le.s $f18, $f16 /* 085C88 7F051118 00000000 */ nop /* 085C8C 7F05111C 45000002 */ bc1f .Ljp7F051128 /* 085C90 7F051120 00000000 */ nop /* 085C94 7F051124 24020001 */ li $v0, 1 .Ljp7F051128: /* 085C98 7F051128 10400012 */ beqz $v0, .Ljp7F051174 /* 085C9C 7F05112C 00401825 */ move $v1, $v0 /* 085CA0 7F051130 44812000 */ mtc1 $at, $f4 /* 085CA4 7F051134 3C014348 */ li $at, 0x43480000 # 200.000000 /* 085CA8 7F051138 00001025 */ move $v0, $zero /* 085CAC 7F05113C 460C203E */ c.le.s $f4, $f12 /* 085CB0 7F051140 00000000 */ nop /* 085CB4 7F051144 45000002 */ bc1f .Ljp7F051150 /* 085CB8 7F051148 00000000 */ nop /* 085CBC 7F05114C 24020001 */ li $v0, 1 .Ljp7F051150: /* 085CC0 7F051150 10400008 */ beqz $v0, .Ljp7F051174 /* 085CC4 7F051154 00401825 */ move $v1, $v0 /* 085CC8 7F051158 44813000 */ mtc1 $at, $f6 /* 085CCC 7F05115C 00001825 */ move $v1, $zero /* 085CD0 7F051160 4606603E */ c.le.s $f12, $f6 /* 085CD4 7F051164 00000000 */ nop /* 085CD8 7F051168 45020003 */ bc1fl .Ljp7F051178 /* 085CDC 7F05116C 00608025 */ move $s0, $v1 /* 085CE0 7F051170 24030001 */ li $v1, 1 .Ljp7F051174: /* 085CE4 7F051174 00608025 */ move $s0, $v1 .Ljp7F051178: /* 085CE8 7F051178 10600020 */ beqz $v1, .Ljp7F0511FC /* 085CEC 7F05117C 8FAF008C */ lw $t7, 0x8c($sp) /* 085CF0 7F051180 8DF8000C */ lw $t8, 0xc($t7) /* 085CF4 7F051184 8FA20090 */ lw $v0, 0x90($sp) /* 085CF8 7F051188 3C0141F0 */ li $at, 0x41F00000 # 30.000000 /* 085CFC 7F05118C 33191000 */ andi $t9, $t8, 0x1000 /* 085D00 7F051190 1720001A */ bnez $t9, .Ljp7F0511FC /* 085D04 7F051194 27A40044 */ addiu $a0, $sp, 0x44 /* 085D08 7F051198 8D090014 */ lw $t1, 0x14($t0) /* 085D0C 7F05119C 44810000 */ mtc1 $at, $f0 /* 085D10 7F0511A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 085D14 7F0511A4 AFA90044 */ sw $t1, 0x44($sp) /* 085D18 7F0511A8 C4480010 */ lwc1 $f8, 0x10($v0) /* 085D1C 7F0511AC 8C470008 */ lw $a3, 8($v0) /* 085D20 7F0511B0 8D060010 */ lw $a2, 0x10($t0) /* 085D24 7F0511B4 8D050008 */ lw $a1, 8($t0) /* 085D28 7F0511B8 44818000 */ mtc1 $at, $f16 /* 085D2C 7F0511BC 44805000 */ mtc1 $zero, $f10 /* 085D30 7F0511C0 240A0002 */ li $t2, 2 /* 085D34 7F0511C4 AFAA0014 */ sw $t2, 0x14($sp) /* 085D38 7F0511C8 E7A0001C */ swc1 $f0, 0x1c($sp) /* 085D3C 7F0511CC E7A00018 */ swc1 $f0, 0x18($sp) /* 085D40 7F0511D0 E7A80010 */ swc1 $f8, 0x10($sp) /* 085D44 7F0511D4 E7B00024 */ swc1 $f16, 0x24($sp) /* 085D48 7F0511D8 0FC2C675 */ jal sub_GAME_7F0B0E24 /* 085D4C 7F0511DC E7AA0020 */ swc1 $f10, 0x20($sp) /* 085D50 7F0511E0 10400005 */ beqz $v0, .Ljp7F0511F8 /* 085D54 7F0511E4 8FAC0090 */ lw $t4, 0x90($sp) /* 085D58 7F0511E8 8FAB0044 */ lw $t3, 0x44($sp) /* 085D5C 7F0511EC 8D8D0014 */ lw $t5, 0x14($t4) /* 085D60 7F0511F0 116D0002 */ beq $t3, $t5, .Ljp7F0511FC /* 085D64 7F0511F4 00000000 */ nop .Ljp7F0511F8: /* 085D68 7F0511F8 00008025 */ move $s0, $zero .Ljp7F0511FC: /* 085D6C 7F0511FC 12000006 */ beqz $s0, .Ljp7F051218 /* 085D70 7F051200 00001025 */ move $v0, $zero /* 085D74 7F051204 8FA40090 */ lw $a0, 0x90($sp) /* 085D78 7F051208 0FC14195 */ jal collect_or_interact_object /* 085D7C 7F05120C 24050001 */ li $a1, 1 /* 085D80 7F051210 10000002 */ b .Ljp7F05121C /* 085D84 7F051214 8FBF0034 */ lw $ra, 0x34($sp) .Ljp7F051218: /* 085D88 7F051218 8FBF0034 */ lw $ra, 0x34($sp) .Ljp7F05121C: /* 085D8C 7F05121C 8FB00030 */ lw $s0, 0x30($sp) /* 085D90 7F051220 27BD0090 */ addiu $sp, $sp, 0x90 /* 085D94 7F051224 03E00008 */ jr $ra /* 085D98 7F051228 00000000 */ nop ) #endif #endif #ifdef NONMATCHING void sub_GAME_7F050D30(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F050D30 /* 085860 7F050D30 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 085864 7F050D34 AFBF001C */ sw $ra, 0x1c($sp) /* 085868 7F050D38 AFA40028 */ sw $a0, 0x28($sp) /* 08586C 7F050D3C AFA5002C */ sw $a1, 0x2c($sp) /* 085870 7F050D40 AFA70034 */ sw $a3, 0x34($sp) /* 085874 7F050D44 908F0001 */ lbu $t7, 1($a0) /* 085878 7F050D48 31F80002 */ andi $t8, $t7, 2 /* 08587C 7F050D4C 53000022 */ beql $t8, $zero, .L7F050DD8 /* 085880 7F050D50 00001025 */ move $v0, $zero /* 085884 7F050D54 8C830004 */ lw $v1, 4($a0) /* 085888 7F050D58 8C640014 */ lw $a0, 0x14($v1) /* 08588C 7F050D5C AFA60030 */ sw $a2, 0x30($sp) /* 085890 7F050D60 0FC1B1A8 */ jal getsubmatrix /* 085894 7F050D64 AFA30024 */ sw $v1, 0x24($sp) /* 085898 7F050D68 8FA9002C */ lw $t1, 0x2c($sp) /* 08589C 7F050D6C C4440038 */ lwc1 $f4, 0x38($v0) /* 0858A0 7F050D70 8FA30024 */ lw $v1, 0x24($sp) /* 0858A4 7F050D74 8FA60030 */ lw $a2, 0x30($sp) /* 0858A8 7F050D78 8FAA0034 */ lw $t2, 0x34($sp) /* 0858AC 7F050D7C E5240008 */ swc1 $f4, 8($t1) /* 0858B0 7F050D80 44800000 */ mtc1 $zero, $f0 /* 0858B4 7F050D84 C5260008 */ lwc1 $f6, 8($t1) /* 0858B8 7F050D88 4600303C */ c.lt.s $f6, $f0 /* 0858BC 7F050D8C 00000000 */ nop /* 0858C0 7F050D90 45020011 */ bc1fl .L7F050DD8 /* 0858C4 7F050D94 00001025 */ move $v0, $zero /* 0858C8 7F050D98 C4480030 */ lwc1 $f8, 0x30($v0) /* 0858CC 7F050D9C 24C50004 */ addiu $a1, $a2, 4 /* 0858D0 7F050DA0 25470004 */ addiu $a3, $t2, 4 /* 0858D4 7F050DA4 E5280000 */ swc1 $f8, ($t1) /* 0858D8 7F050DA8 C44A0034 */ lwc1 $f10, 0x34($v0) /* 0858DC 7F050DAC E52A0004 */ swc1 $f10, 4($t1) /* 0858E0 7F050DB0 E5400000 */ swc1 $f0, ($t2) /* 0858E4 7F050DB4 E5400004 */ swc1 $f0, 4($t2) /* 0858E8 7F050DB8 E4C00000 */ swc1 $f0, ($a2) /* 0858EC 7F050DBC E4C00004 */ swc1 $f0, 4($a2) /* 0858F0 7F050DC0 8C640014 */ lw $a0, 0x14($v1) /* 0858F4 7F050DC4 0FC0FE43 */ jal sub_GAME_7F03F90C /* 0858F8 7F050DC8 AFAA0010 */ sw $t2, 0x10($sp) /* 0858FC 7F050DCC 10000002 */ b .L7F050DD8 /* 085900 7F050DD0 24020001 */ li $v0, 1 /* 085904 7F050DD4 00001025 */ move $v0, $zero .L7F050DD8: /* 085908 7F050DD8 8FBF001C */ lw $ra, 0x1c($sp) /* 08590C 7F050DDC 27BD0028 */ addiu $sp, $sp, 0x28 /* 085910 7F050DE0 03E00008 */ jr $ra /* 085914 7F050DE4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F050DE8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F050DE8 /* 085918 7F050DE8 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 08591C 7F050DEC AFBF003C */ sw $ra, 0x3c($sp) /* 085920 7F050DF0 AFBE0038 */ sw $fp, 0x38($sp) /* 085924 7F050DF4 AFB70034 */ sw $s7, 0x34($sp) /* 085928 7F050DF8 AFB60030 */ sw $s6, 0x30($sp) /* 08592C 7F050DFC AFB5002C */ sw $s5, 0x2c($sp) /* 085930 7F050E00 AFB40028 */ sw $s4, 0x28($sp) /* 085934 7F050E04 AFB30024 */ sw $s3, 0x24($sp) /* 085938 7F050E08 AFB20020 */ sw $s2, 0x20($sp) /* 08593C 7F050E0C AFB1001C */ sw $s1, 0x1c($sp) /* 085940 7F050E10 AFB00018 */ sw $s0, 0x18($sp) /* 085944 7F050E14 8C940008 */ lw $s4, 8($a0) /* 085948 7F050E18 00809825 */ move $s3, $a0 /* 08594C 7F050E1C 24150008 */ li $s5, 8 /* 085950 7F050E20 8E900000 */ lw $s0, ($s4) /* 085954 7F050E24 24160012 */ li $s6, 18 /* 085958 7F050E28 24170017 */ li $s7, 23 /* 08595C 7F050E2C 1200003C */ beqz $s0, .L7F050F20 /* 085960 7F050E30 241E0018 */ li $fp, 24 /* 085964 7F050E34 96020000 */ lhu $v0, ($s0) .L7F050E38: /* 085968 7F050E38 02602025 */ move $a0, $s3 /* 08596C 7F050E3C 304E00FF */ andi $t6, $v0, 0xff /* 085970 7F050E40 11D5001C */ beq $t6, $s5, .L7F050EB4 /* 085974 7F050E44 00000000 */ nop /* 085978 7F050E48 11D6001E */ beq $t6, $s6, .L7F050EC4 /* 08597C 7F050E4C 02602025 */ move $a0, $s3 /* 085980 7F050E50 11D70020 */ beq $t6, $s7, .L7F050ED4 /* 085984 7F050E54 02602025 */ move $a0, $s3 /* 085988 7F050E58 11DE0003 */ beq $t6, $fp, .L7F050E68 /* 08598C 7F050E5C 02602025 */ move $a0, $s3 /* 085990 7F050E60 1000001F */ b .L7F050EE0 /* 085994 7F050E64 8E020014 */ lw $v0, 0x14($s0) .L7F050E68: /* 085998 7F050E68 8E120004 */ lw $s2, 4($s0) /* 08599C 7F050E6C 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 0859A0 7F050E70 02002825 */ move $a1, $s0 /* 0859A4 7F050E74 8E4F0008 */ lw $t7, 8($s2) /* 0859A8 7F050E78 8C580000 */ lw $t8, ($v0) /* 0859AC 7F050E7C 00408825 */ move $s1, $v0 /* 0859B0 7F050E80 02802025 */ move $a0, $s4 /* 0859B4 7F050E84 11F80009 */ beq $t7, $t8, .L7F050EAC /* 0859B8 7F050E88 00000000 */ nop /* 0859BC 7F050E8C 0FC12D64 */ jal sub_GAME_7F04B590 /* 0859C0 7F050E90 02002825 */ move $a1, $s0 /* 0859C4 7F050E94 10400005 */ beqz $v0, .L7F050EAC /* 0859C8 7F050E98 00000000 */ nop /* 0859CC 7F050E9C 0FC27011 */ jal sub_GAME_7F09C044 /* 0859D0 7F050EA0 8E240000 */ lw $a0, ($s1) /* 0859D4 7F050EA4 8E590008 */ lw $t9, 8($s2) /* 0859D8 7F050EA8 AE390000 */ sw $t9, ($s1) .L7F050EAC: /* 0859DC 7F050EAC 1000000C */ b .L7F050EE0 /* 0859E0 7F050EB0 8E020014 */ lw $v0, 0x14($s0) .L7F050EB4: /* 0859E4 7F050EB4 0FC1BA5C */ jal sub_GAME_7F06E970 /* 0859E8 7F050EB8 02002825 */ move $a1, $s0 /* 0859EC 7F050EBC 10000008 */ b .L7F050EE0 /* 0859F0 7F050EC0 8E020014 */ lw $v0, 0x14($s0) .L7F050EC4: /* 0859F4 7F050EC4 0FC1BA6F */ jal process_12_handle_switch /* 0859F8 7F050EC8 02002825 */ move $a1, $s0 /* 0859FC 7F050ECC 10000004 */ b .L7F050EE0 /* 085A00 7F050ED0 8E020014 */ lw $v0, 0x14($s0) .L7F050ED4: /* 085A04 7F050ED4 0FC1BA82 */ jal process_17_pointer_to_head /* 085A08 7F050ED8 02002825 */ move $a1, $s0 /* 085A0C 7F050EDC 8E020014 */ lw $v0, 0x14($s0) .L7F050EE0: /* 085A10 7F050EE0 10400003 */ beqz $v0, .L7F050EF0 /* 085A14 7F050EE4 00000000 */ nop /* 085A18 7F050EE8 1000000B */ b .L7F050F18 /* 085A1C 7F050EEC 00408025 */ move $s0, $v0 .L7F050EF0: /* 085A20 7F050EF0 12000009 */ beqz $s0, .L7F050F18 /* 085A24 7F050EF4 00000000 */ nop /* 085A28 7F050EF8 8E02000C */ lw $v0, 0xc($s0) .L7F050EFC: /* 085A2C 7F050EFC 50400004 */ beql $v0, $zero, .L7F050F10 /* 085A30 7F050F00 8E100008 */ lw $s0, 8($s0) /* 085A34 7F050F04 10000004 */ b .L7F050F18 /* 085A38 7F050F08 00408025 */ move $s0, $v0 /* 085A3C 7F050F0C 8E100008 */ lw $s0, 8($s0) .L7F050F10: /* 085A40 7F050F10 5600FFFA */ bnezl $s0, .L7F050EFC /* 085A44 7F050F14 8E02000C */ lw $v0, 0xc($s0) .L7F050F18: /* 085A48 7F050F18 5600FFC7 */ bnezl $s0, .L7F050E38 /* 085A4C 7F050F1C 96020000 */ lhu $v0, ($s0) .L7F050F20: /* 085A50 7F050F20 8FBF003C */ lw $ra, 0x3c($sp) /* 085A54 7F050F24 8FB00018 */ lw $s0, 0x18($sp) /* 085A58 7F050F28 8FB1001C */ lw $s1, 0x1c($sp) /* 085A5C 7F050F2C 8FB20020 */ lw $s2, 0x20($sp) /* 085A60 7F050F30 8FB30024 */ lw $s3, 0x24($sp) /* 085A64 7F050F34 8FB40028 */ lw $s4, 0x28($sp) /* 085A68 7F050F38 8FB5002C */ lw $s5, 0x2c($sp) /* 085A6C 7F050F3C 8FB60030 */ lw $s6, 0x30($sp) /* 085A70 7F050F40 8FB70034 */ lw $s7, 0x34($sp) /* 085A74 7F050F44 8FBE0038 */ lw $fp, 0x38($sp) /* 085A78 7F050F48 03E00008 */ jr $ra /* 085A7C 7F050F4C 27BD0040 */ addiu $sp, $sp, 0x40 ) #endif #ifdef NONMATCHING void sub_GAME_7F050F50(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F050F50 /* 085A80 7F050F50 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 085A84 7F050F54 AFA50024 */ sw $a1, 0x24($sp) /* 085A88 7F050F58 AFA60028 */ sw $a2, 0x28($sp) /* 085A8C 7F050F5C 00C02825 */ move $a1, $a2 /* 085A90 7F050F60 AFBF001C */ sw $ra, 0x1c($sp) /* 085A94 7F050F64 AFB00014 */ sw $s0, 0x14($sp) /* 085A98 7F050F68 00E03025 */ move $a2, $a3 /* 085A9C 7F050F6C 00808025 */ move $s0, $a0 /* 085AA0 7F050F70 AFB10018 */ sw $s1, 0x18($sp) /* 085AA4 7F050F74 0FC10153 */ jal init_standard_object /* 085AA8 7F050F78 8FA70030 */ lw $a3, 0x30($sp) /* 085AAC 7F050F7C 10400024 */ beqz $v0, .L7F051010 /* 085AB0 7F050F80 00408825 */ move $s1, $v0 /* 085AB4 7F050F84 8E040014 */ lw $a0, 0x14($s0) /* 085AB8 7F050F88 50800022 */ beql $a0, $zero, .L7F051014 /* 085ABC 7F050F8C 8FBF001C */ lw $ra, 0x1c($sp) /* 085AC0 7F050F90 960E0000 */ lhu $t6, ($s0) /* 085AC4 7F050F94 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 085AC8 7F050F98 448E2000 */ mtc1 $t6, $f4 /* 085ACC 7F050F9C 05C10004 */ bgez $t6, .L7F050FB0 /* 085AD0 7F050FA0 468021A0 */ cvt.s.w $f6, $f4 /* 085AD4 7F050FA4 44814000 */ mtc1 $at, $f8 /* 085AD8 7F050FA8 00000000 */ nop /* 085ADC 7F050FAC 46083180 */ add.s $f6, $f6, $f8 .L7F050FB0: /* 085AE0 7F050FB0 3C013B80 */ li $at, 0x3B800000 # 0.003906 /* 085AE4 7F050FB4 44815000 */ mtc1 $at, $f10 /* 085AE8 7F050FB8 C4900014 */ lwc1 $f16, 0x14($a0) /* 085AEC 7F050FBC 460A3002 */ mul.s $f0, $f6, $f10 /* 085AF0 7F050FC0 00000000 */ nop /* 085AF4 7F050FC4 46008482 */ mul.s $f18, $f16, $f0 /* 085AF8 7F050FC8 44059000 */ mfc1 $a1, $f18 /* 085AFC 7F050FCC 0FC1B39E */ jal set_obj_instance_controller_scale /* 085B00 7F050FD0 00000000 */ nop /* 085B04 7F050FD4 8FA20024 */ lw $v0, 0x24($sp) /* 085B08 7F050FD8 8E180014 */ lw $t8, 0x14($s0) /* 085B0C 7F050FDC 02202025 */ move $a0, $s1 /* 085B10 7F050FE0 8C4F001C */ lw $t7, 0x1c($v0) /* 085B14 7F050FE4 AF0F0018 */ sw $t7, 0x18($t8) /* 085B18 7F050FE8 8C59001C */ lw $t9, 0x1c($v0) /* 085B1C 7F050FEC 8E0B0014 */ lw $t3, 0x14($s0) /* 085B20 7F050FF0 8F280008 */ lw $t0, 8($t9) /* 085B24 7F050FF4 8D090008 */ lw $t1, 8($t0) /* 085B28 7F050FF8 8D2A0018 */ lw $t2, 0x18($t1) /* 085B2C 7F050FFC AD6A001C */ sw $t2, 0x1c($t3) /* 085B30 7F051000 0FC0E969 */ jal sub_GAME_7F03A5A4 /* 085B34 7F051004 8C450018 */ lw $a1, 0x18($v0) /* 085B38 7F051008 8FAC0024 */ lw $t4, 0x24($sp) /* 085B3C 7F05100C AD9101D8 */ sw $s1, 0x1d8($t4) .L7F051010: /* 085B40 7F051010 8FBF001C */ lw $ra, 0x1c($sp) .L7F051014: /* 085B44 7F051014 02201025 */ move $v0, $s1 /* 085B48 7F051018 8FB10018 */ lw $s1, 0x18($sp) /* 085B4C 7F05101C 8FB00014 */ lw $s0, 0x14($sp) /* 085B50 7F051020 03E00008 */ jr $ra /* 085B54 7F051024 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F051028(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051028 /* 085B58 7F051028 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 085B5C 7F05102C AFBF001C */ sw $ra, 0x1c($sp) /* 085B60 7F051030 AFA40028 */ sw $a0, 0x28($sp) /* 085B64 7F051034 AFA5002C */ sw $a1, 0x2c($sp) /* 085B68 7F051038 84840004 */ lh $a0, 4($a0) /* 085B6C 7F05103C 0FC15B0E */ jal load_model /* 085B70 7F051040 AFA40020 */ sw $a0, 0x20($sp) /* 085B74 7F051044 8FAF0020 */ lw $t7, 0x20($sp) /* 085B78 7F051048 3C068004 */ lui $a2, %hi(PitemZ_entries) /* 085B7C 7F05104C 8FA40028 */ lw $a0, 0x28($sp) /* 085B80 7F051050 000FC080 */ sll $t8, $t7, 2 /* 085B84 7F051054 030FC023 */ subu $t8, $t8, $t7 /* 085B88 7F051058 0018C080 */ sll $t8, $t8, 2 /* 085B8C 7F05105C 00D83021 */ addu $a2, $a2, $t8 /* 085B90 7F051060 8CC6A228 */ lw $a2, %lo(PitemZ_entries)($a2) /* 085B94 7F051064 8FA5002C */ lw $a1, 0x2c($sp) /* 085B98 7F051068 00003825 */ move $a3, $zero /* 085B9C 7F05106C 0FC143D4 */ jal sub_GAME_7F050F50 /* 085BA0 7F051070 AFA00010 */ sw $zero, 0x10($sp) /* 085BA4 7F051074 8FBF001C */ lw $ra, 0x1c($sp) /* 085BA8 7F051078 27BD0028 */ addiu $sp, $sp, 0x28 /* 085BAC 7F05107C 03E00008 */ jr $ra /* 085BB0 7F051080 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F051084(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051084 /* 085BB4 7F051084 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 085BB8 7F051088 AFBF0014 */ sw $ra, 0x14($sp) /* 085BBC 7F05108C 8C8E0074 */ lw $t6, 0x74($a0) /* 085BC0 7F051090 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 085BC4 7F051094 44814000 */ mtc1 $at, $f8 /* 085BC8 7F051098 448E2000 */ mtc1 $t6, $f4 /* 085BCC 7F05109C 00000000 */ nop /* 085BD0 7F0510A0 468021A0 */ cvt.s.w $f6, $f4 /* 085BD4 7F0510A4 46083283 */ div.s $f10, $f6, $f8 /* 085BD8 7F0510A8 0FC1440A */ jal sub_GAME_7F051028 /* 085BDC 7F0510AC E48A0074 */ swc1 $f10, 0x74($a0) /* 085BE0 7F0510B0 8FBF0014 */ lw $ra, 0x14($sp) /* 085BE4 7F0510B4 27BD0018 */ addiu $sp, $sp, 0x18 /* 085BE8 7F0510B8 03E00008 */ jr $ra /* 085BEC 7F0510BC 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0510C0(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0510C0 /* 085BF0 7F0510C0 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 085BF4 7F0510C4 00057080 */ sll $t6, $a1, 2 /* 085BF8 7F0510C8 01C57023 */ subu $t6, $t6, $a1 /* 085BFC 7F0510CC 000E7080 */ sll $t6, $t6, 2 /* 085C00 7F0510D0 3C0F8004 */ lui $t7, %hi(PitemZ_entries) /* 085C04 7F0510D4 01EE7821 */ addu $t7, $t7, $t6 /* 085C08 7F0510D8 8DEFA228 */ lw $t7, %lo(PitemZ_entries)($t7) /* 085C0C 7F0510DC AFBF002C */ sw $ra, 0x2c($sp) /* 085C10 7F0510E0 AFA400C0 */ sw $a0, 0xc0($sp) /* 085C14 7F0510E4 AFB20028 */ sw $s2, 0x28($sp) /* 085C18 7F0510E8 AFB10024 */ sw $s1, 0x24($sp) /* 085C1C 7F0510EC AFB00020 */ sw $s0, 0x20($sp) /* 085C20 7F0510F0 AFA600C8 */ sw $a2, 0xc8($sp) /* 085C24 7F0510F4 00A02025 */ move $a0, $a1 /* 085C28 7F0510F8 AFA500C4 */ sw $a1, 0xc4($sp) /* 085C2C 7F0510FC 0FC15B0E */ jal load_model /* 085C30 7F051100 AFAF00BC */ sw $t7, 0xbc($sp) /* 085C34 7F051104 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 085C38 7F051108 00000000 */ nop /* 085C3C 7F05110C 00408025 */ move $s0, $v0 /* 085C40 7F051110 0FC1B025 */ jal get_obj_instance_controller_for_header /* 085C44 7F051114 8FA400BC */ lw $a0, 0xbc($sp) /* 085C48 7F051118 00408825 */ move $s1, $v0 /* 085C4C 7F05111C 2E040001 */ sltiu $a0, $s0, 1 /* 085C50 7F051120 2C450001 */ sltiu $a1, $v0, 1 /* 085C54 7F051124 0FC1456C */ jal sub_GAME_7F0515B0 /* 085C58 7F051128 8FA600BC */ lw $a2, 0xbc($sp) /* 085C5C 7F05112C 16000004 */ bnez $s0, .L7F051140 /* 085C60 7F051130 00409025 */ move $s2, $v0 /* 085C64 7F051134 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 085C68 7F051138 00000000 */ nop /* 085C6C 7F05113C 00408025 */ move $s0, $v0 .L7F051140: /* 085C70 7F051140 16200004 */ bnez $s1, .L7F051154 /* 085C74 7F051144 00000000 */ nop /* 085C78 7F051148 0FC1B025 */ jal get_obj_instance_controller_for_header /* 085C7C 7F05114C 8FA400BC */ lw $a0, 0xbc($sp) /* 085C80 7F051150 00408825 */ move $s1, $v0 .L7F051154: /* 085C84 7F051154 12400035 */ beqz $s2, .L7F05122C /* 085C88 7F051158 00000000 */ nop /* 085C8C 7F05115C 12000033 */ beqz $s0, .L7F05122C /* 085C90 7F051160 00000000 */ nop /* 085C94 7F051164 12200031 */ beqz $s1, .L7F05122C /* 085C98 7F051168 27A20030 */ addiu $v0, $sp, 0x30 /* 085C9C 7F05116C 3C188003 */ lui $t8, %hi(blank_11_object) /* 085CA0 7F051170 27182114 */ addiu $t8, %lo(blank_11_object) # addiu $t8, $t8, 0x2114 /* 085CA4 7F051174 8FA500C0 */ lw $a1, 0xc0($sp) /* 085CA8 7F051178 27080078 */ addiu $t0, $t8, 0x78 /* 085CAC 7F05117C 00404825 */ move $t1, $v0 .L7F051180: /* 085CB0 7F051180 8F010000 */ lw $at, ($t8) /* 085CB4 7F051184 2718000C */ addiu $t8, $t8, 0xc /* 085CB8 7F051188 2529000C */ addiu $t1, $t1, 0xc /* 085CBC 7F05118C AD21FFF4 */ sw $at, -0xc($t1) /* 085CC0 7F051190 8F01FFF8 */ lw $at, -8($t8) /* 085CC4 7F051194 AD21FFF8 */ sw $at, -8($t1) /* 085CC8 7F051198 8F01FFFC */ lw $at, -4($t8) /* 085CCC 7F05119C 1708FFF8 */ bne $t8, $t0, .L7F051180 /* 085CD0 7F0511A0 AD21FFFC */ sw $at, -4($t1) /* 085CD4 7F0511A4 8F010000 */ lw $at, ($t8) /* 085CD8 7F0511A8 00406025 */ move $t4, $v0 /* 085CDC 7F0511AC 02406825 */ move $t5, $s2 /* 085CE0 7F0511B0 AD210000 */ sw $at, ($t1) /* 085CE4 7F0511B4 8F080004 */ lw $t0, 4($t8) /* 085CE8 7F0511B8 244B0078 */ addiu $t3, $v0, 0x78 /* 085CEC 7F0511BC AD280004 */ sw $t0, 4($t1) .L7F0511C0: /* 085CF0 7F0511C0 8D810000 */ lw $at, ($t4) /* 085CF4 7F0511C4 258C000C */ addiu $t4, $t4, 0xc /* 085CF8 7F0511C8 25AD000C */ addiu $t5, $t5, 0xc /* 085CFC 7F0511CC ADA1FFF4 */ sw $at, -0xc($t5) /* 085D00 7F0511D0 8D81FFF8 */ lw $at, -8($t4) /* 085D04 7F0511D4 ADA1FFF8 */ sw $at, -8($t5) /* 085D08 7F0511D8 8D81FFFC */ lw $at, -4($t4) /* 085D0C 7F0511DC 158BFFF8 */ bne $t4, $t3, .L7F0511C0 /* 085D10 7F0511E0 ADA1FFFC */ sw $at, -4($t5) /* 085D14 7F0511E4 8D810000 */ lw $at, ($t4) /* 085D18 7F0511E8 02402025 */ move $a0, $s2 /* 085D1C 7F0511EC 02003825 */ move $a3, $s0 /* 085D20 7F0511F0 ADA10000 */ sw $at, ($t5) /* 085D24 7F0511F4 8D8B0004 */ lw $t3, 4($t4) /* 085D28 7F0511F8 ADAB0004 */ sw $t3, 4($t5) /* 085D2C 7F0511FC 8FAE00C4 */ lw $t6, 0xc4($sp) /* 085D30 7F051200 A64E0004 */ sh $t6, 4($s2) /* 085D34 7F051204 8FAF00C8 */ lw $t7, 0xc8($sp) /* 085D38 7F051208 35F94000 */ ori $t9, $t7, 0x4000 /* 085D3C 7F05120C AE590008 */ sw $t9, 8($s2) /* 085D40 7F051210 84A80000 */ lh $t0, ($a1) /* 085D44 7F051214 A6480006 */ sh $t0, 6($s2) /* 085D48 7F051218 AFB10010 */ sw $s1, 0x10($sp) /* 085D4C 7F05121C 0FC143D4 */ jal sub_GAME_7F050F50 /* 085D50 7F051220 8FA600BC */ lw $a2, 0xbc($sp) /* 085D54 7F051224 1000000A */ b .L7F051250 /* 085D58 7F051228 00408025 */ move $s0, $v0 .L7F05122C: /* 085D5C 7F05122C 12200003 */ beqz $s1, .L7F05123C /* 085D60 7F051230 00000000 */ nop /* 085D64 7F051234 0FC1B08D */ jal set_obj_instance_scale_to_zero /* 085D68 7F051238 02202025 */ move $a0, $s1 .L7F05123C: /* 085D6C 7F05123C 52000005 */ beql $s0, $zero, .L7F051254 /* 085D70 7F051240 8FBF002C */ lw $ra, 0x2c($sp) /* 085D74 7F051244 0FC0E921 */ jal set_last_obj_pos_data /* 085D78 7F051248 02002025 */ move $a0, $s0 /* 085D7C 7F05124C 00008025 */ move $s0, $zero .L7F051250: /* 085D80 7F051250 8FBF002C */ lw $ra, 0x2c($sp) .L7F051254: /* 085D84 7F051254 02001025 */ move $v0, $s0 /* 085D88 7F051258 8FB00020 */ lw $s0, 0x20($sp) /* 085D8C 7F05125C 8FB10024 */ lw $s1, 0x24($sp) /* 085D90 7F051260 8FB20028 */ lw $s2, 0x28($sp) /* 085D94 7F051264 03E00008 */ jr $ra /* 085D98 7F051268 27BD00C0 */ addiu $sp, $sp, 0xc0 ) #endif #ifdef NONMATCHING void sub_GAME_7F05126C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05126C /* 085D9C 7F05126C 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 085DA0 7F051270 AFB10020 */ sw $s1, 0x20($sp) /* 085DA4 7F051274 240EFFFF */ li $t6, -1 /* 085DA8 7F051278 3C078003 */ lui $a3, %hi(D_80030AF8) /* 085DAC 7F05127C 3C0B8007 */ lui $t3, %hi(ProjectileData_start_address) /* 085DB0 7F051280 00A08825 */ move $s1, $a1 /* 085DB4 7F051284 AFBF0024 */ sw $ra, 0x24($sp) /* 085DB8 7F051288 AFB0001C */ sw $s0, 0x1c($sp) /* 085DBC 7F05128C AFA40058 */ sw $a0, 0x58($sp) /* 085DC0 7F051290 AFA60060 */ sw $a2, 0x60($sp) /* 085DC4 7F051294 AFA0004C */ sw $zero, 0x4c($sp) /* 085DC8 7F051298 AFA00048 */ sw $zero, 0x48($sp) /* 085DCC 7F05129C AFAE0044 */ sw $t6, 0x44($sp) /* 085DD0 7F0512A0 2408FFFF */ li $t0, -1 /* 085DD4 7F0512A4 2409FFFF */ li $t1, -1 /* 085DD8 7F0512A8 256B1E80 */ addiu $t3, %lo(ProjectileData_start_address) # addiu $t3, $t3, 0x1e80 /* 085DDC 7F0512AC 8CE70AF8 */ lw $a3, %lo(D_80030AF8)($a3) /* 085DE0 7F0512B0 240A0088 */ li $t2, 136 .L7F0512B4: /* 085DE4 7F0512B4 00EA0019 */ multu $a3, $t2 /* 085DE8 7F0512B8 8FB80058 */ lw $t8, 0x58($sp) /* 085DEC 7F0512BC 00007812 */ mflo $t7 /* 085DF0 7F0512C0 016F8021 */ addu $s0, $t3, $t7 /* 085DF4 7F0512C4 8E040010 */ lw $a0, 0x10($s0) /* 085DF8 7F0512C8 54800008 */ bnezl $a0, .L7F0512EC /* 085DFC 7F0512CC 8E190064 */ lw $t9, 0x64($s0) /* 085E00 7F0512D0 57000040 */ bnezl $t8, .L7F0513D4 /* 085E04 7F0512D4 24E70001 */ addiu $a3, $a3, 1 /* 085E08 7F0512D8 5620003E */ bnezl $s1, .L7F0513D4 /* 085E0C 7F0512DC 24E70001 */ addiu $a3, $a3, 1 /* 085E10 7F0512E0 10000043 */ b .L7F0513F0 /* 085E14 7F0512E4 AFA70044 */ sw $a3, 0x44($sp) /* 085E18 7F0512E8 8E190064 */ lw $t9, 0x64($s0) .L7F0512EC: /* 085E1C 7F0512EC 332C0080 */ andi $t4, $t9, 0x80 /* 085E20 7F0512F0 55800038 */ bnezl $t4, .L7F0513D4 /* 085E24 7F0512F4 24E70001 */ addiu $a3, $a3, 1 /* 085E28 7F0512F8 920D0002 */ lbu $t5, 2($s0) /* 085E2C 7F0512FC 31AE0004 */ andi $t6, $t5, 4 /* 085E30 7F051300 55C00034 */ bnezl $t6, .L7F0513D4 /* 085E34 7F051304 24E70001 */ addiu $a3, $a3, 1 /* 085E38 7F051308 860F0082 */ lh $t7, 0x82($s0) /* 085E3C 7F05130C 5DE00005 */ bgtzl $t7, .L7F051324 /* 085E40 7F051310 82020080 */ lb $v0, 0x80($s0) /* 085E44 7F051314 8C98001C */ lw $t8, 0x1c($a0) /* 085E48 7F051318 13000014 */ beqz $t8, .L7F05136C /* 085E4C 7F05131C 00000000 */ nop /* 085E50 7F051320 82020080 */ lb $v0, 0x80($s0) .L7F051324: /* 085E54 7F051324 2401001D */ li $at, 29 /* 085E58 7F051328 10410005 */ beq $v0, $at, .L7F051340 /* 085E5C 7F05132C 2401001C */ li $at, 28 /* 085E60 7F051330 10410003 */ beq $v0, $at, .L7F051340 /* 085E64 7F051334 2401001B */ li $at, 27 /* 085E68 7F051338 54410026 */ bnel $v0, $at, .L7F0513D4 /* 085E6C 7F05133C 24E70001 */ addiu $a3, $a3, 1 .L7F051340: /* 085E70 7F051340 8C83001C */ lw $v1, 0x1c($a0) /* 085E74 7F051344 10600009 */ beqz $v1, .L7F05136C /* 085E78 7F051348 00000000 */ nop /* 085E7C 7F05134C 90620000 */ lbu $v0, ($v1) /* 085E80 7F051350 24010001 */ li $at, 1 /* 085E84 7F051354 10410005 */ beq $v0, $at, .L7F05136C /* 085E88 7F051358 24010002 */ li $at, 2 /* 085E8C 7F05135C 10410003 */ beq $v0, $at, .L7F05136C /* 085E90 7F051360 24010004 */ li $at, 4 /* 085E94 7F051364 5441001B */ bnel $v0, $at, .L7F0513D4 /* 085E98 7F051368 24E70001 */ addiu $a3, $a3, 1 .L7F05136C: /* 085E9C 7F05136C 1220000E */ beqz $s1, .L7F0513A8 /* 085EA0 7F051370 8FA50060 */ lw $a1, 0x60($sp) /* 085EA4 7F051374 8E040014 */ lw $a0, 0x14($s0) /* 085EA8 7F051378 AFA70054 */ sw $a3, 0x54($sp) /* 085EAC 7F05137C AFA80040 */ sw $t0, 0x40($sp) /* 085EB0 7F051380 0FC1B018 */ jal sub_GAME_7F06C060 /* 085EB4 7F051384 AFA9003C */ sw $t1, 0x3c($sp) /* 085EB8 7F051388 3C0B8007 */ lui $t3, %hi(ProjectileData_start_address) /* 085EBC 7F05138C 256B1E80 */ addiu $t3, %lo(ProjectileData_start_address) # addiu $t3, $t3, 0x1e80 /* 085EC0 7F051390 8FA70054 */ lw $a3, 0x54($sp) /* 085EC4 7F051394 8FA80040 */ lw $t0, 0x40($sp) /* 085EC8 7F051398 8FA9003C */ lw $t1, 0x3c($sp) /* 085ECC 7F05139C 1040000C */ beqz $v0, .L7F0513D0 /* 085ED0 7F0513A0 240A0088 */ li $t2, 136 /* 085ED4 7F0513A4 8E040010 */ lw $a0, 0x10($s0) .L7F0513A8: /* 085ED8 7F0513A8 90990001 */ lbu $t9, 1($a0) /* 085EDC 7F0513AC 332C0002 */ andi $t4, $t9, 2 /* 085EE0 7F0513B0 15800004 */ bnez $t4, .L7F0513C4 /* 085EE4 7F0513B4 00000000 */ nop /* 085EE8 7F0513B8 05010002 */ bgez $t0, .L7F0513C4 /* 085EEC 7F0513BC 00000000 */ nop /* 085EF0 7F0513C0 00E04025 */ move $t0, $a3 .L7F0513C4: /* 085EF4 7F0513C4 05230003 */ bgezl $t1, .L7F0513D4 /* 085EF8 7F0513C8 24E70001 */ addiu $a3, $a3, 1 /* 085EFC 7F0513CC 00E04825 */ move $t1, $a3 .L7F0513D0: /* 085F00 7F0513D0 24E70001 */ addiu $a3, $a3, 1 .L7F0513D4: /* 085F04 7F0513D4 2401001E */ li $at, 30 /* 085F08 7F0513D8 00E1001A */ div $zero, $a3, $at /* 085F0C 7F0513DC 3C0E8003 */ lui $t6, %hi(D_80030AF8) /* 085F10 7F0513E0 8DCE0AF8 */ lw $t6, %lo(D_80030AF8)($t6) /* 085F14 7F0513E4 00003810 */ mfhi $a3 /* 085F18 7F0513E8 14EEFFB2 */ bne $a3, $t6, .L7F0512B4 /* 085F1C 7F0513EC 00000000 */ nop .L7F0513F0: /* 085F20 7F0513F0 8FAF0044 */ lw $t7, 0x44($sp) /* 085F24 7F0513F4 24040008 */ li $a0, 8 /* 085F28 7F0513F8 27A5004C */ addiu $a1, $sp, 0x4c /* 085F2C 7F0513FC 05E0000C */ bltz $t7, .L7F051430 /* 085F30 7F051400 27A60048 */ addiu $a2, $sp, 0x48 /* 085F34 7F051404 25F80001 */ addiu $t8, $t7, 1 /* 085F38 7F051408 2401001E */ li $at, 30 /* 085F3C 7F05140C 0301001A */ div $zero, $t8, $at /* 085F40 7F051410 0000C810 */ mfhi $t9 /* 085F44 7F051414 3C018003 */ lui $at, %hi(D_80030AF8) /* 085F48 7F051418 AC390AF8 */ sw $t9, %lo(D_80030AF8)($at) /* 085F4C 7F05141C 01EA0019 */ multu $t7, $t2 /* 085F50 7F051420 00006012 */ mflo $t4 /* 085F54 7F051424 016C1021 */ addu $v0, $t3, $t4 /* 085F58 7F051428 10000053 */ b .L7F051578 /* 085F5C 7F05142C 8FBF0024 */ lw $ra, 0x24($sp) .L7F051430: /* 085F60 7F051430 8FAD0060 */ lw $t5, 0x60($sp) /* 085F64 7F051434 8FA70058 */ lw $a3, 0x58($sp) /* 085F68 7F051438 AFB10010 */ sw $s1, 0x10($sp) /* 085F6C 7F05143C AFA80040 */ sw $t0, 0x40($sp) /* 085F70 7F051440 AFA9003C */ sw $t1, 0x3c($sp) /* 085F74 7F051444 0FC15BC2 */ jal sub_GAME_7F056F08 /* 085F78 7F051448 AFAD0014 */ sw $t5, 0x14($sp) /* 085F7C 7F05144C 3C0B8007 */ lui $t3, %hi(ProjectileData_start_address) /* 085F80 7F051450 256B1E80 */ addiu $t3, %lo(ProjectileData_start_address) # addiu $t3, $t3, 0x1e80 /* 085F84 7F051454 8FA80040 */ lw $t0, 0x40($sp) /* 085F88 7F051458 8FA9003C */ lw $t1, 0x3c($sp) /* 085F8C 7F05145C 10400003 */ beqz $v0, .L7F05146C /* 085F90 7F051460 240A0088 */ li $t2, 136 /* 085F94 7F051464 10000044 */ b .L7F051578 /* 085F98 7F051468 8FBF0024 */ lw $ra, 0x24($sp) .L7F05146C: /* 085F9C 7F05146C 05000015 */ bltz $t0, .L7F0514C4 /* 085FA0 7F051470 8FAF004C */ lw $t7, 0x4c($sp) /* 085FA4 7F051474 010A0019 */ multu $t0, $t2 /* 085FA8 7F051478 24050001 */ li $a1, 1 /* 085FAC 7F05147C 00008012 */ mflo $s0 /* 085FB0 7F051480 01702021 */ addu $a0, $t3, $s0 /* 085FB4 7F051484 8C8E0010 */ lw $t6, 0x10($a0) /* 085FB8 7F051488 51C00007 */ beql $t6, $zero, .L7F0514A8 /* 085FBC 7F05148C 25180001 */ addiu $t8, $t0, 1 /* 085FC0 7F051490 0FC10409 */ jal sub_GAME_7F041024 /* 085FC4 7F051494 AFA80040 */ sw $t0, 0x40($sp) /* 085FC8 7F051498 3C0B8007 */ lui $t3, %hi(ProjectileData_start_address) /* 085FCC 7F05149C 256B1E80 */ addiu $t3, %lo(ProjectileData_start_address) # addiu $t3, $t3, 0x1e80 /* 085FD0 7F0514A0 8FA80040 */ lw $t0, 0x40($sp) /* 085FD4 7F0514A4 25180001 */ addiu $t8, $t0, 1 .L7F0514A8: /* 085FD8 7F0514A8 2401001E */ li $at, 30 /* 085FDC 7F0514AC 0301001A */ div $zero, $t8, $at /* 085FE0 7F0514B0 0000C810 */ mfhi $t9 /* 085FE4 7F0514B4 3C018003 */ lui $at, %hi(D_80030AF8) /* 085FE8 7F0514B8 AC390AF8 */ sw $t9, %lo(D_80030AF8)($at) /* 085FEC 7F0514BC 1000002D */ b .L7F051574 /* 085FF0 7F0514C0 01701021 */ addu $v0, $t3, $s0 .L7F0514C4: /* 085FF4 7F0514C4 11E00009 */ beqz $t7, .L7F0514EC /* 085FF8 7F0514C8 00000000 */ nop /* 085FFC 7F0514CC 8DEC0010 */ lw $t4, 0x10($t7) /* 086000 7F0514D0 01E02025 */ move $a0, $t7 /* 086004 7F0514D4 11800003 */ beqz $t4, .L7F0514E4 /* 086008 7F0514D8 00000000 */ nop /* 08600C 7F0514DC 0FC10409 */ jal sub_GAME_7F041024 /* 086010 7F0514E0 24050001 */ li $a1, 1 .L7F0514E4: /* 086014 7F0514E4 10000023 */ b .L7F051574 /* 086018 7F0514E8 8FA2004C */ lw $v0, 0x4c($sp) .L7F0514EC: /* 08601C 7F0514EC 05220016 */ bltzl $t1, .L7F051548 /* 086020 7F0514F0 8FB90048 */ lw $t9, 0x48($sp) /* 086024 7F0514F4 012A0019 */ multu $t1, $t2 /* 086028 7F0514F8 24050001 */ li $a1, 1 /* 08602C 7F0514FC 00008012 */ mflo $s0 /* 086030 7F051500 01702021 */ addu $a0, $t3, $s0 /* 086034 7F051504 8C8D0010 */ lw $t5, 0x10($a0) /* 086038 7F051508 51A00007 */ beql $t5, $zero, .L7F051528 /* 08603C 7F05150C 252E0001 */ addiu $t6, $t1, 1 /* 086040 7F051510 0FC10409 */ jal sub_GAME_7F041024 /* 086044 7F051514 AFA9003C */ sw $t1, 0x3c($sp) /* 086048 7F051518 3C0B8007 */ lui $t3, %hi(ProjectileData_start_address) /* 08604C 7F05151C 256B1E80 */ addiu $t3, %lo(ProjectileData_start_address) # addiu $t3, $t3, 0x1e80 /* 086050 7F051520 8FA9003C */ lw $t1, 0x3c($sp) /* 086054 7F051524 252E0001 */ addiu $t6, $t1, 1 .L7F051528: /* 086058 7F051528 2401001E */ li $at, 30 /* 08605C 7F05152C 01C1001A */ div $zero, $t6, $at /* 086060 7F051530 0000C010 */ mfhi $t8 /* 086064 7F051534 3C018003 */ lui $at, %hi(D_80030AF8) /* 086068 7F051538 AC380AF8 */ sw $t8, %lo(D_80030AF8)($at) /* 08606C 7F05153C 1000000D */ b .L7F051574 /* 086070 7F051540 01701021 */ addu $v0, $t3, $s0 /* 086074 7F051544 8FB90048 */ lw $t9, 0x48($sp) .L7F051548: /* 086078 7F051548 5320000A */ beql $t9, $zero, .L7F051574 /* 08607C 7F05154C 00001025 */ move $v0, $zero /* 086080 7F051550 8F2C0010 */ lw $t4, 0x10($t9) /* 086084 7F051554 03202025 */ move $a0, $t9 /* 086088 7F051558 11800003 */ beqz $t4, .L7F051568 /* 08608C 7F05155C 00000000 */ nop /* 086090 7F051560 0FC10409 */ jal sub_GAME_7F041024 /* 086094 7F051564 24050001 */ li $a1, 1 .L7F051568: /* 086098 7F051568 10000002 */ b .L7F051574 /* 08609C 7F05156C 8FA20048 */ lw $v0, 0x48($sp) /* 0860A0 7F051570 00001025 */ move $v0, $zero .L7F051574: /* 0860A4 7F051574 8FBF0024 */ lw $ra, 0x24($sp) .L7F051578: /* 0860A8 7F051578 8FB0001C */ lw $s0, 0x1c($sp) /* 0860AC 7F05157C 8FB10020 */ lw $s1, 0x20($sp) /* 0860B0 7F051580 03E00008 */ jr $ra /* 0860B4 7F051584 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #ifdef NONMATCHING void sub_GAME_7F051588(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051588 /* 0860B8 7F051588 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0860BC 7F05158C AFBF0014 */ sw $ra, 0x14($sp) /* 0860C0 7F051590 00002025 */ move $a0, $zero /* 0860C4 7F051594 00002825 */ move $a1, $zero /* 0860C8 7F051598 0FC1449B */ jal sub_GAME_7F05126C /* 0860CC 7F05159C 00003025 */ move $a2, $zero /* 0860D0 7F0515A0 8FBF0014 */ lw $ra, 0x14($sp) /* 0860D4 7F0515A4 27BD0018 */ addiu $sp, $sp, 0x18 /* 0860D8 7F0515A8 03E00008 */ jr $ra /* 0860DC 7F0515AC 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0515B0(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0515B0 /* 0860E0 7F0515B0 27BDFF98 */ addiu $sp, $sp, -0x68 /* 0860E4 7F0515B4 AFB50034 */ sw $s5, 0x34($sp) /* 0860E8 7F0515B8 3C158003 */ lui $s5, %hi(D_80030AFC) /* 0860EC 7F0515BC AFB40030 */ sw $s4, 0x30($sp) /* 0860F0 7F0515C0 26B50AFC */ addiu $s5, %lo(D_80030AFC) # addiu $s5, $s5, 0xafc /* 0860F4 7F0515C4 AFB60038 */ sw $s6, 0x38($sp) /* 0860F8 7F0515C8 AFB3002C */ sw $s3, 0x2c($sp) /* 0860FC 7F0515CC AFB20028 */ sw $s2, 0x28($sp) /* 086100 7F0515D0 AFB10024 */ sw $s1, 0x24($sp) /* 086104 7F0515D4 240EFFFF */ li $t6, -1 /* 086108 7F0515D8 3C148007 */ lui $s4, %hi(dword_CODE_bss_80072E70) /* 08610C 7F0515DC 00A09025 */ move $s2, $a1 /* 086110 7F0515E0 AFBF003C */ sw $ra, 0x3c($sp) /* 086114 7F0515E4 AFB00020 */ sw $s0, 0x20($sp) /* 086118 7F0515E8 AFA60070 */ sw $a2, 0x70($sp) /* 08611C 7F0515EC 00803825 */ move $a3, $a0 /* 086120 7F0515F0 AFA0005C */ sw $zero, 0x5c($sp) /* 086124 7F0515F4 AFA00058 */ sw $zero, 0x58($sp) /* 086128 7F0515F8 AFAE0054 */ sw $t6, 0x54($sp) /* 08612C 7F0515FC 2411FFFF */ li $s1, -1 /* 086130 7F051600 2413FFFF */ li $s3, -1 /* 086134 7F051604 26942E70 */ addiu $s4, %lo(dword_CODE_bss_80072E70) # addiu $s4, $s4, 0x2e70 /* 086138 7F051608 2416000A */ li $s6, 10 /* 08613C 7F05160C 8EA30000 */ lw $v1, ($s5) /* 086140 7F051610 000379C0 */ sll $t7, $v1, 7 .L7F051614: /* 086144 7F051614 028F8021 */ addu $s0, $s4, $t7 /* 086148 7F051618 8E020010 */ lw $v0, 0x10($s0) /* 08614C 7F05161C 54400008 */ bnezl $v0, .L7F051640 /* 086150 7F051620 8E180064 */ lw $t8, 0x64($s0) /* 086154 7F051624 54E00022 */ bnezl $a3, .L7F0516B0 /* 086158 7F051628 246B0001 */ addiu $t3, $v1, 1 /* 08615C 7F05162C 56400020 */ bnezl $s2, .L7F0516B0 /* 086160 7F051630 246B0001 */ addiu $t3, $v1, 1 /* 086164 7F051634 1000002C */ b .L7F0516E8 /* 086168 7F051638 AFA30054 */ sw $v1, 0x54($sp) /* 08616C 7F05163C 8E180064 */ lw $t8, 0x64($s0) .L7F051640: /* 086170 7F051640 33190080 */ andi $t9, $t8, 0x80 /* 086174 7F051644 5720001A */ bnezl $t9, .L7F0516B0 /* 086178 7F051648 246B0001 */ addiu $t3, $v1, 1 /* 08617C 7F05164C 8C48001C */ lw $t0, 0x1c($v0) /* 086180 7F051650 55000017 */ bnezl $t0, .L7F0516B0 /* 086184 7F051654 246B0001 */ addiu $t3, $v1, 1 /* 086188 7F051658 5240000B */ beql $s2, $zero, .L7F051688 /* 08618C 7F05165C 90490001 */ lbu $t1, 1($v0) /* 086190 7F051660 8E040014 */ lw $a0, 0x14($s0) /* 086194 7F051664 8FA50070 */ lw $a1, 0x70($sp) /* 086198 7F051668 AFA30064 */ sw $v1, 0x64($sp) /* 08619C 7F05166C 0FC1B018 */ jal sub_GAME_7F06C060 /* 0861A0 7F051670 AFA70068 */ sw $a3, 0x68($sp) /* 0861A4 7F051674 8FA30064 */ lw $v1, 0x64($sp) /* 0861A8 7F051678 1040000C */ beqz $v0, .L7F0516AC /* 0861AC 7F05167C 8FA70068 */ lw $a3, 0x68($sp) /* 0861B0 7F051680 8E020010 */ lw $v0, 0x10($s0) /* 0861B4 7F051684 90490001 */ lbu $t1, 1($v0) .L7F051688: /* 0861B8 7F051688 312A0002 */ andi $t2, $t1, 2 /* 0861BC 7F05168C 15400004 */ bnez $t2, .L7F0516A0 /* 0861C0 7F051690 00000000 */ nop /* 0861C4 7F051694 06210002 */ bgez $s1, .L7F0516A0 /* 0861C8 7F051698 00000000 */ nop /* 0861CC 7F05169C 00608825 */ move $s1, $v1 .L7F0516A0: /* 0861D0 7F0516A0 06630003 */ bgezl $s3, .L7F0516B0 /* 0861D4 7F0516A4 246B0001 */ addiu $t3, $v1, 1 /* 0861D8 7F0516A8 00609825 */ move $s3, $v1 .L7F0516AC: /* 0861DC 7F0516AC 246B0001 */ addiu $t3, $v1, 1 .L7F0516B0: /* 0861E0 7F0516B0 0176001A */ div $zero, $t3, $s6 /* 0861E4 7F0516B4 8EAC0000 */ lw $t4, ($s5) /* 0861E8 7F0516B8 00001810 */ mfhi $v1 /* 0861EC 7F0516BC 16C00002 */ bnez $s6, .L7F0516C8 /* 0861F0 7F0516C0 00000000 */ nop /* 0861F4 7F0516C4 0007000D */ break 7 .L7F0516C8: /* 0861F8 7F0516C8 2401FFFF */ li $at, -1 /* 0861FC 7F0516CC 16C10004 */ bne $s6, $at, .L7F0516E0 /* 086200 7F0516D0 3C018000 */ lui $at, 0x8000 /* 086204 7F0516D4 15610002 */ bne $t3, $at, .L7F0516E0 /* 086208 7F0516D8 00000000 */ nop /* 08620C 7F0516DC 0006000D */ break 6 .L7F0516E0: /* 086210 7F0516E0 546CFFCC */ bnel $v1, $t4, .L7F051614 /* 086214 7F0516E4 000379C0 */ sll $t7, $v1, 7 .L7F0516E8: /* 086218 7F0516E8 8FAD0054 */ lw $t5, 0x54($sp) /* 08621C 7F0516EC 05A00011 */ bltz $t5, .L7F051734 /* 086220 7F0516F0 25AE0001 */ addiu $t6, $t5, 1 /* 086224 7F0516F4 01D6001A */ div $zero, $t6, $s6 /* 086228 7F0516F8 8FB80054 */ lw $t8, 0x54($sp) /* 08622C 7F0516FC 00007810 */ mfhi $t7 /* 086230 7F051700 AEAF0000 */ sw $t7, ($s5) /* 086234 7F051704 16C00002 */ bnez $s6, .L7F051710 /* 086238 7F051708 00000000 */ nop /* 08623C 7F05170C 0007000D */ break 7 .L7F051710: /* 086240 7F051710 2401FFFF */ li $at, -1 /* 086244 7F051714 16C10004 */ bne $s6, $at, .L7F051728 /* 086248 7F051718 3C018000 */ lui $at, 0x8000 /* 08624C 7F05171C 15C10002 */ bne $t6, $at, .L7F051728 /* 086250 7F051720 00000000 */ nop /* 086254 7F051724 0006000D */ break 6 .L7F051728: /* 086258 7F051728 0018C9C0 */ sll $t9, $t8, 7 /* 08625C 7F05172C 10000054 */ b .L7F051880 /* 086260 7F051730 02991021 */ addu $v0, $s4, $t9 .L7F051734: /* 086264 7F051734 8FA80070 */ lw $t0, 0x70($sp) /* 086268 7F051738 24040011 */ li $a0, 17 /* 08626C 7F05173C 27A5005C */ addiu $a1, $sp, 0x5c /* 086270 7F051740 27A60058 */ addiu $a2, $sp, 0x58 /* 086274 7F051744 AFB20010 */ sw $s2, 0x10($sp) /* 086278 7F051748 0FC15BC2 */ jal sub_GAME_7F056F08 /* 08627C 7F05174C AFA80014 */ sw $t0, 0x14($sp) /* 086280 7F051750 10400003 */ beqz $v0, .L7F051760 /* 086284 7F051754 00401825 */ move $v1, $v0 /* 086288 7F051758 10000049 */ b .L7F051880 /* 08628C 7F05175C 00601025 */ move $v0, $v1 .L7F051760: /* 086290 7F051760 06220019 */ bltzl $s1, .L7F0517C8 /* 086294 7F051764 8FAE005C */ lw $t6, 0x5c($sp) /* 086298 7F051768 001149C0 */ sll $t1, $s1, 7 /* 08629C 7F05176C 02892021 */ addu $a0, $s4, $t1 /* 0862A0 7F051770 8C8A0010 */ lw $t2, 0x10($a0) /* 0862A4 7F051774 51400004 */ beql $t2, $zero, .L7F051788 /* 0862A8 7F051778 262B0001 */ addiu $t3, $s1, 1 /* 0862AC 7F05177C 0FC10409 */ jal sub_GAME_7F041024 /* 0862B0 7F051780 24050001 */ li $a1, 1 /* 0862B4 7F051784 262B0001 */ addiu $t3, $s1, 1 .L7F051788: /* 0862B8 7F051788 0176001A */ div $zero, $t3, $s6 /* 0862BC 7F05178C 00006010 */ mfhi $t4 /* 0862C0 7F051790 001169C0 */ sll $t5, $s1, 7 /* 0862C4 7F051794 16C00002 */ bnez $s6, .L7F0517A0 /* 0862C8 7F051798 00000000 */ nop /* 0862CC 7F05179C 0007000D */ break 7 .L7F0517A0: /* 0862D0 7F0517A0 2401FFFF */ li $at, -1 /* 0862D4 7F0517A4 16C10004 */ bne $s6, $at, .L7F0517B8 /* 0862D8 7F0517A8 3C018000 */ lui $at, 0x8000 /* 0862DC 7F0517AC 15610002 */ bne $t3, $at, .L7F0517B8 /* 0862E0 7F0517B0 00000000 */ nop /* 0862E4 7F0517B4 0006000D */ break 6 .L7F0517B8: /* 0862E8 7F0517B8 AEAC0000 */ sw $t4, ($s5) /* 0862EC 7F0517BC 10000030 */ b .L7F051880 /* 0862F0 7F0517C0 028D1021 */ addu $v0, $s4, $t5 /* 0862F4 7F0517C4 8FAE005C */ lw $t6, 0x5c($sp) .L7F0517C8: /* 0862F8 7F0517C8 11C00009 */ beqz $t6, .L7F0517F0 /* 0862FC 7F0517CC 00000000 */ nop /* 086300 7F0517D0 8DCF0010 */ lw $t7, 0x10($t6) /* 086304 7F0517D4 01C02025 */ move $a0, $t6 /* 086308 7F0517D8 11E00003 */ beqz $t7, .L7F0517E8 /* 08630C 7F0517DC 00000000 */ nop /* 086310 7F0517E0 0FC10409 */ jal sub_GAME_7F041024 /* 086314 7F0517E4 24050001 */ li $a1, 1 .L7F0517E8: /* 086318 7F0517E8 10000025 */ b .L7F051880 /* 08631C 7F0517EC 8FA2005C */ lw $v0, 0x5c($sp) .L7F0517F0: /* 086320 7F0517F0 06600017 */ bltz $s3, .L7F051850 /* 086324 7F0517F4 0013C1C0 */ sll $t8, $s3, 7 /* 086328 7F0517F8 02982021 */ addu $a0, $s4, $t8 /* 08632C 7F0517FC 8C990010 */ lw $t9, 0x10($a0) /* 086330 7F051800 53200004 */ beql $t9, $zero, .L7F051814 /* 086334 7F051804 26680001 */ addiu $t0, $s3, 1 /* 086338 7F051808 0FC10409 */ jal sub_GAME_7F041024 /* 08633C 7F05180C 24050001 */ li $a1, 1 /* 086340 7F051810 26680001 */ addiu $t0, $s3, 1 .L7F051814: /* 086344 7F051814 0116001A */ div $zero, $t0, $s6 /* 086348 7F051818 00004810 */ mfhi $t1 /* 08634C 7F05181C 001351C0 */ sll $t2, $s3, 7 /* 086350 7F051820 16C00002 */ bnez $s6, .L7F05182C /* 086354 7F051824 00000000 */ nop /* 086358 7F051828 0007000D */ break 7 .L7F05182C: /* 08635C 7F05182C 2401FFFF */ li $at, -1 /* 086360 7F051830 16C10004 */ bne $s6, $at, .L7F051844 /* 086364 7F051834 3C018000 */ lui $at, 0x8000 /* 086368 7F051838 15010002 */ bne $t0, $at, .L7F051844 /* 08636C 7F05183C 00000000 */ nop /* 086370 7F051840 0006000D */ break 6 .L7F051844: /* 086374 7F051844 AEA90000 */ sw $t1, ($s5) /* 086378 7F051848 1000000D */ b .L7F051880 /* 08637C 7F05184C 028A1021 */ addu $v0, $s4, $t2 .L7F051850: /* 086380 7F051850 8FAB0058 */ lw $t3, 0x58($sp) /* 086384 7F051854 5160000A */ beql $t3, $zero, .L7F051880 /* 086388 7F051858 00001025 */ move $v0, $zero /* 08638C 7F05185C 8D6C0010 */ lw $t4, 0x10($t3) /* 086390 7F051860 01602025 */ move $a0, $t3 /* 086394 7F051864 11800003 */ beqz $t4, .L7F051874 /* 086398 7F051868 00000000 */ nop /* 08639C 7F05186C 0FC10409 */ jal sub_GAME_7F041024 /* 0863A0 7F051870 24050001 */ li $a1, 1 .L7F051874: /* 0863A4 7F051874 10000002 */ b .L7F051880 /* 0863A8 7F051878 8FA20058 */ lw $v0, 0x58($sp) /* 0863AC 7F05187C 00001025 */ move $v0, $zero .L7F051880: /* 0863B0 7F051880 8FBF003C */ lw $ra, 0x3c($sp) /* 0863B4 7F051884 8FB00020 */ lw $s0, 0x20($sp) /* 0863B8 7F051888 8FB10024 */ lw $s1, 0x24($sp) /* 0863BC 7F05188C 8FB20028 */ lw $s2, 0x28($sp) /* 0863C0 7F051890 8FB3002C */ lw $s3, 0x2c($sp) /* 0863C4 7F051894 8FB40030 */ lw $s4, 0x30($sp) /* 0863C8 7F051898 8FB50034 */ lw $s5, 0x34($sp) /* 0863CC 7F05189C 8FB60038 */ lw $s6, 0x38($sp) /* 0863D0 7F0518A0 03E00008 */ jr $ra /* 0863D4 7F0518A4 27BD0068 */ addiu $sp, $sp, 0x68 ) #endif #ifdef NONMATCHING void sub_GAME_7F0518A8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0518A8 /* 0863D8 7F0518A8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0863DC 7F0518AC AFBF0014 */ sw $ra, 0x14($sp) /* 0863E0 7F0518B0 00002025 */ move $a0, $zero /* 0863E4 7F0518B4 00002825 */ move $a1, $zero /* 0863E8 7F0518B8 0FC1456C */ jal sub_GAME_7F0515B0 /* 0863EC 7F0518BC 00003025 */ move $a2, $zero /* 0863F0 7F0518C0 8FBF0014 */ lw $ra, 0x14($sp) /* 0863F4 7F0518C4 27BD0018 */ addiu $sp, $sp, 0x18 /* 0863F8 7F0518C8 03E00008 */ jr $ra /* 0863FC 7F0518CC 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0518D0(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0518D0 /* 086400 7F0518D0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 086404 7F0518D4 3C048007 */ lui $a0, %hi(dword_CODE_bss_80073370) /* 086408 7F0518D8 3C028007 */ lui $v0, %hi(dword_CODE_bss_80073DC0) /* 08640C 7F0518DC AFBF0014 */ sw $ra, 0x14($sp) /* 086410 7F0518E0 24423DC0 */ addiu $v0, %lo(dword_CODE_bss_80073DC0) # addiu $v0, $v0, 0x3dc0 /* 086414 7F0518E4 24843370 */ addiu $a0, %lo(dword_CODE_bss_80073370) # addiu $a0, $a0, 0x3370 /* 086418 7F0518E8 00001825 */ move $v1, $zero .L7F0518EC: /* 08641C 7F0518EC 8C8E0010 */ lw $t6, 0x10($a0) /* 086420 7F0518F0 24840084 */ addiu $a0, $a0, 0x84 /* 086424 7F0518F4 0082082B */ sltu $at, $a0, $v0 /* 086428 7F0518F8 15C00004 */ bnez $t6, .L7F05190C /* 08642C 7F0518FC 3C0F8007 */ lui $t7, %hi(dword_CODE_bss_80073370) /* 086430 7F051900 25EF3370 */ addiu $t7, %lo(dword_CODE_bss_80073370) # addiu $t7, $t7, 0x3370 /* 086434 7F051904 10000040 */ b .L7F051A08 /* 086438 7F051908 006F1021 */ addu $v0, $v1, $t7 .L7F05190C: /* 08643C 7F05190C 1420FFF7 */ bnez $at, .L7F0518EC /* 086440 7F051910 24630084 */ addiu $v1, $v1, 0x84 /* 086444 7F051914 3C048007 */ lui $a0, %hi(dword_CODE_bss_80073370) /* 086448 7F051918 3C058007 */ lui $a1, %hi(dword_CODE_bss_80073DC0) /* 08644C 7F05191C 24A53DC0 */ addiu $a1, %lo(dword_CODE_bss_80073DC0) # addiu $a1, $a1, 0x3dc0 /* 086450 7F051920 24843370 */ addiu $a0, %lo(dword_CODE_bss_80073370) # addiu $a0, $a0, 0x3370 /* 086454 7F051924 00001825 */ move $v1, $zero .L7F051928: /* 086458 7F051928 8C980064 */ lw $t8, 0x64($a0) /* 08645C 7F05192C 33190080 */ andi $t9, $t8, 0x80 /* 086460 7F051930 57200016 */ bnezl $t9, .L7F05198C /* 086464 7F051934 24840084 */ addiu $a0, $a0, 0x84 /* 086468 7F051938 90880002 */ lbu $t0, 2($a0) /* 08646C 7F05193C 31090004 */ andi $t1, $t0, 4 /* 086470 7F051940 55200012 */ bnezl $t1, .L7F05198C /* 086474 7F051944 24840084 */ addiu $a0, $a0, 0x84 /* 086478 7F051948 8C820010 */ lw $v0, 0x10($a0) /* 08647C 7F05194C 8C4A001C */ lw $t2, 0x1c($v0) /* 086480 7F051950 5540000E */ bnezl $t2, .L7F05198C /* 086484 7F051954 24840084 */ addiu $a0, $a0, 0x84 /* 086488 7F051958 904B0001 */ lbu $t3, 1($v0) /* 08648C 7F05195C 316C0002 */ andi $t4, $t3, 2 /* 086490 7F051960 5580000A */ bnezl $t4, .L7F05198C /* 086494 7F051964 24840084 */ addiu $a0, $a0, 0x84 /* 086498 7F051968 24050001 */ li $a1, 1 /* 08649C 7F05196C 0FC10409 */ jal sub_GAME_7F041024 /* 0864A0 7F051970 AFA30018 */ sw $v1, 0x18($sp) /* 0864A4 7F051974 8FA30018 */ lw $v1, 0x18($sp) /* 0864A8 7F051978 3C0D8007 */ lui $t5, %hi(dword_CODE_bss_80073370) /* 0864AC 7F05197C 25AD3370 */ addiu $t5, %lo(dword_CODE_bss_80073370) # addiu $t5, $t5, 0x3370 /* 0864B0 7F051980 10000021 */ b .L7F051A08 /* 0864B4 7F051984 006D1021 */ addu $v0, $v1, $t5 /* 0864B8 7F051988 24840084 */ addiu $a0, $a0, 0x84 .L7F05198C: /* 0864BC 7F05198C 0085082B */ sltu $at, $a0, $a1 /* 0864C0 7F051990 1420FFE5 */ bnez $at, .L7F051928 /* 0864C4 7F051994 24630084 */ addiu $v1, $v1, 0x84 /* 0864C8 7F051998 3C048007 */ lui $a0, %hi(dword_CODE_bss_80073370) /* 0864CC 7F05199C 3C028007 */ lui $v0, %hi(dword_CODE_bss_80073DC0) /* 0864D0 7F0519A0 24423DC0 */ addiu $v0, %lo(dword_CODE_bss_80073DC0) # addiu $v0, $v0, 0x3dc0 /* 0864D4 7F0519A4 24843370 */ addiu $a0, %lo(dword_CODE_bss_80073370) # addiu $a0, $a0, 0x3370 /* 0864D8 7F0519A8 00001825 */ move $v1, $zero .L7F0519AC: /* 0864DC 7F0519AC 8C8E0064 */ lw $t6, 0x64($a0) /* 0864E0 7F0519B0 31CF0080 */ andi $t7, $t6, 0x80 /* 0864E4 7F0519B4 55E00011 */ bnezl $t7, .L7F0519FC /* 0864E8 7F0519B8 24840084 */ addiu $a0, $a0, 0x84 /* 0864EC 7F0519BC 90980002 */ lbu $t8, 2($a0) /* 0864F0 7F0519C0 33190004 */ andi $t9, $t8, 4 /* 0864F4 7F0519C4 5720000D */ bnezl $t9, .L7F0519FC /* 0864F8 7F0519C8 24840084 */ addiu $a0, $a0, 0x84 /* 0864FC 7F0519CC 8C880010 */ lw $t0, 0x10($a0) /* 086500 7F0519D0 8D09001C */ lw $t1, 0x1c($t0) /* 086504 7F0519D4 15200008 */ bnez $t1, .L7F0519F8 /* 086508 7F0519D8 24050001 */ li $a1, 1 /* 08650C 7F0519DC 0FC10409 */ jal sub_GAME_7F041024 /* 086510 7F0519E0 AFA30018 */ sw $v1, 0x18($sp) /* 086514 7F0519E4 8FA30018 */ lw $v1, 0x18($sp) /* 086518 7F0519E8 3C0A8007 */ lui $t2, %hi(dword_CODE_bss_80073370) /* 08651C 7F0519EC 254A3370 */ addiu $t2, %lo(dword_CODE_bss_80073370) # addiu $t2, $t2, 0x3370 /* 086520 7F0519F0 10000005 */ b .L7F051A08 /* 086524 7F0519F4 006A1021 */ addu $v0, $v1, $t2 .L7F0519F8: /* 086528 7F0519F8 24840084 */ addiu $a0, $a0, 0x84 .L7F0519FC: /* 08652C 7F0519FC 1482FFEB */ bne $a0, $v0, .L7F0519AC /* 086530 7F051A00 24630084 */ addiu $v1, $v1, 0x84 /* 086534 7F051A04 00001025 */ move $v0, $zero .L7F051A08: /* 086538 7F051A08 8FBF0014 */ lw $ra, 0x14($sp) /* 08653C 7F051A0C 27BD0020 */ addiu $sp, $sp, 0x20 /* 086540 7F051A10 03E00008 */ jr $ra /* 086544 7F051A14 00000000 */ nop ) #endif #ifdef NONMATCHING void trigger_remote_mine_detonation(void) { u32 uVar1; uVar1 = get_cur_playernum(); D_80030AF4 = D_80030AF4 | 1 << (uVar1 & 0x1f); play_sfx_a1(ptr_sfx_buf,0xf3,0x0); } #else GLOBAL_ASM( .text glabel trigger_remote_mine_detonation /* 086548 7F051A18 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08654C 7F051A1C AFBF0014 */ sw $ra, 0x14($sp) /* 086550 7F051A20 0FC26C54 */ jal get_cur_playernum /* 086554 7F051A24 00000000 */ nop /* 086558 7F051A28 3C038003 */ lui $v1, %hi(D_80030AF4) /* 08655C 7F051A2C 24630AF4 */ addiu $v1, %lo(D_80030AF4) # addiu $v1, $v1, 0xaf4 /* 086560 7F051A30 8C6E0000 */ lw $t6, ($v1) /* 086564 7F051A34 240F0001 */ li $t7, 1 /* 086568 7F051A38 004FC004 */ sllv $t8, $t7, $v0 /* 08656C 7F051A3C 01D8C825 */ or $t9, $t6, $t8 /* 086570 7F051A40 AC790000 */ sw $t9, ($v1) /* 086574 7F051A44 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 086578 7F051A48 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08657C 7F051A4C 240500F3 */ li $a1, 243 /* 086580 7F051A50 0C002382 */ jal play_sfx_a1 /* 086584 7F051A54 00003025 */ move $a2, $zero /* 086588 7F051A58 8FBF0014 */ lw $ra, 0x14($sp) /* 08658C 7F051A5C 27BD0018 */ addiu $sp, $sp, 0x18 /* 086590 7F051A60 03E00008 */ jr $ra /* 086594 7F051A64 00000000 */ nop ) #endif #ifdef NONMATCHING void check_if_entry_is_collectable(void) { } #else GLOBAL_ASM( .text glabel check_if_entry_is_collectable /* 086598 7F051A68 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08659C 7F051A6C AFBF001C */ sw $ra, 0x1c($sp) /* 0865A0 7F051A70 AFB10018 */ sw $s1, 0x18($sp) /* 0865A4 7F051A74 AFB00014 */ sw $s0, 0x14($sp) /* 0865A8 7F051A78 90AE0000 */ lbu $t6, ($a1) /* 0865AC 7F051A7C 24010004 */ li $at, 4 /* 0865B0 7F051A80 00808825 */ move $s1, $a0 /* 0865B4 7F051A84 55C10008 */ bnel $t6, $at, .L7F051AA8 /* 0865B8 7F051A88 8CB00020 */ lw $s0, 0x20($a1) /* 0865BC 7F051A8C 8CA30004 */ lw $v1, 4($a1) /* 0865C0 7F051A90 806F0080 */ lb $t7, 0x80($v1) /* 0865C4 7F051A94 548F0004 */ bnel $a0, $t7, .L7F051AA8 /* 0865C8 7F051A98 8CB00020 */ lw $s0, 0x20($a1) /* 0865CC 7F051A9C 1000000E */ b .L7F051AD8 /* 0865D0 7F051AA0 00601025 */ move $v0, $v1 /* 0865D4 7F051AA4 8CB00020 */ lw $s0, 0x20($a1) .L7F051AA8: /* 0865D8 7F051AA8 1200000A */ beqz $s0, .L7F051AD4 /* 0865DC 7F051AAC 02202025 */ move $a0, $s1 .L7F051AB0: /* 0865E0 7F051AB0 0FC1469A */ jal check_if_entry_is_collectable /* 0865E4 7F051AB4 02002825 */ move $a1, $s0 /* 0865E8 7F051AB8 50400004 */ beql $v0, $zero, .L7F051ACC /* 0865EC 7F051ABC 8E100024 */ lw $s0, 0x24($s0) /* 0865F0 7F051AC0 10000006 */ b .L7F051ADC /* 0865F4 7F051AC4 8FBF001C */ lw $ra, 0x1c($sp) /* 0865F8 7F051AC8 8E100024 */ lw $s0, 0x24($s0) .L7F051ACC: /* 0865FC 7F051ACC 5600FFF8 */ bnezl $s0, .L7F051AB0 /* 086600 7F051AD0 02202025 */ move $a0, $s1 .L7F051AD4: /* 086604 7F051AD4 00001025 */ move $v0, $zero .L7F051AD8: /* 086608 7F051AD8 8FBF001C */ lw $ra, 0x1c($sp) .L7F051ADC: /* 08660C 7F051ADC 8FB00014 */ lw $s0, 0x14($sp) /* 086610 7F051AE0 8FB10018 */ lw $s1, 0x18($sp) /* 086614 7F051AE4 03E00008 */ jr $ra /* 086618 7F051AE8 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void check_if_item_deposited(void) { } #else GLOBAL_ASM( .text glabel check_if_item_deposited /* 08661C 7F051AEC 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 086620 7F051AF0 AFBF001C */ sw $ra, 0x1c($sp) /* 086624 7F051AF4 AFB10018 */ sw $s1, 0x18($sp) /* 086628 7F051AF8 00808825 */ move $s1, $a0 /* 08662C 7F051AFC 0FC0E909 */ jal get_ptr_obj_pos_list_current_entry /* 086630 7F051B00 AFB00014 */ sw $s0, 0x14($sp) /* 086634 7F051B04 1040000F */ beqz $v0, .L7F051B44 /* 086638 7F051B08 00408025 */ move $s0, $v0 /* 08663C 7F051B0C 02202025 */ move $a0, $s1 .L7F051B10: /* 086640 7F051B10 0FC1469A */ jal check_if_entry_is_collectable /* 086644 7F051B14 02002825 */ move $a1, $s0 /* 086648 7F051B18 50400008 */ beql $v0, $zero, .L7F051B3C /* 08664C 7F051B1C 8E100024 */ lw $s0, 0x24($s0) /* 086650 7F051B20 8C4E0064 */ lw $t6, 0x64($v0) /* 086654 7F051B24 31CF0080 */ andi $t7, $t6, 0x80 /* 086658 7F051B28 55E00004 */ bnezl $t7, .L7F051B3C /* 08665C 7F051B2C 8E100024 */ lw $s0, 0x24($s0) /* 086660 7F051B30 10000006 */ b .L7F051B4C /* 086664 7F051B34 8FBF001C */ lw $ra, 0x1c($sp) /* 086668 7F051B38 8E100024 */ lw $s0, 0x24($s0) .L7F051B3C: /* 08666C 7F051B3C 5600FFF4 */ bnezl $s0, .L7F051B10 /* 086670 7F051B40 02202025 */ move $a0, $s1 .L7F051B44: /* 086674 7F051B44 00001025 */ move $v0, $zero /* 086678 7F051B48 8FBF001C */ lw $ra, 0x1c($sp) .L7F051B4C: /* 08667C 7F051B4C 8FB00014 */ lw $s0, 0x14($sp) /* 086680 7F051B50 8FB10018 */ lw $s1, 0x18($sp) /* 086684 7F051B54 03E00008 */ jr $ra /* 086688 7F051B58 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void add_obj_to_temp_proxmine_table(void) { } #else GLOBAL_ASM( .text glabel add_obj_to_temp_proxmine_table /* 08668C 7F051B5C 3C038007 */ lui $v1, %hi(temp_mine_table) /* 086690 7F051B60 3C028007 */ lui $v0, %hi(gas_damage_flag) /* 086694 7F051B64 24421E78 */ addiu $v0, %lo(gas_damage_flag) # addiu $v0, $v0, 0x1e78 /* 086698 7F051B68 24631E00 */ addiu $v1, %lo(temp_mine_table) # addiu $v1, $v1, 0x1e00 /* 08669C 7F051B6C 8C6E0000 */ lw $t6, ($v1) .L7F051B70: /* 0866A0 7F051B70 55C00004 */ bnezl $t6, .L7F051B84 /* 0866A4 7F051B74 24630004 */ addiu $v1, $v1, 4 /* 0866A8 7F051B78 03E00008 */ jr $ra /* 0866AC 7F051B7C AC640000 */ sw $a0, ($v1) /* 0866B0 7F051B80 24630004 */ addiu $v1, $v1, 4 .L7F051B84: /* 0866B4 7F051B84 5462FFFA */ bnel $v1, $v0, .L7F051B70 /* 0866B8 7F051B88 8C6E0000 */ lw $t6, ($v1) /* 0866BC 7F051B8C 03E00008 */ jr $ra /* 0866C0 7F051B90 00000000 */ nop ) #endif #ifdef NONMATCHING void remove_obj_from_temp_proxmine_table(void) { } #else GLOBAL_ASM( .text glabel remove_obj_from_temp_proxmine_table /* 0866C4 7F051B94 3C038007 */ lui $v1, %hi(temp_mine_table) /* 0866C8 7F051B98 3C028007 */ lui $v0, %hi(gas_damage_flag) /* 0866CC 7F051B9C 24421E78 */ addiu $v0, %lo(gas_damage_flag) # addiu $v0, $v0, 0x1e78 /* 0866D0 7F051BA0 24631E00 */ addiu $v1, %lo(temp_mine_table) # addiu $v1, $v1, 0x1e00 /* 0866D4 7F051BA4 8C6E0000 */ lw $t6, ($v1) .L7F051BA8: /* 0866D8 7F051BA8 548E0004 */ bnel $a0, $t6, .L7F051BBC /* 0866DC 7F051BAC 24630004 */ addiu $v1, $v1, 4 /* 0866E0 7F051BB0 03E00008 */ jr $ra /* 0866E4 7F051BB4 AC600000 */ sw $zero, ($v1) /* 0866E8 7F051BB8 24630004 */ addiu $v1, $v1, 4 .L7F051BBC: /* 0866EC 7F051BBC 5462FFFA */ bnel $v1, $v0, .L7F051BA8 /* 0866F0 7F051BC0 8C6E0000 */ lw $t6, ($v1) /* 0866F4 7F051BC4 03E00008 */ jr $ra /* 0866F8 7F051BC8 00000000 */ nop ) #endif #ifdef NONMATCHING void detonate_proxmine_In_range(void) { } #else GLOBAL_ASM( .text glabel detonate_proxmine_In_range /* 0866FC 7F051BCC 3C038007 */ lui $v1, %hi(temp_mine_table) /* 086700 7F051BD0 3C018005 */ lui $at, %hi(D_800532EC) /* 086704 7F051BD4 3C078007 */ lui $a3, %hi(gas_damage_flag) /* 086708 7F051BD8 00802825 */ move $a1, $a0 /* 08670C 7F051BDC 24E71E78 */ addiu $a3, %lo(gas_damage_flag) # addiu $a3, $a3, 0x1e78 /* 086710 7F051BE0 C42E32EC */ lwc1 $f14, %lo(D_800532EC)($at) /* 086714 7F051BE4 24631E00 */ addiu $v1, %lo(temp_mine_table) # addiu $v1, $v1, 0x1e00 /* 086718 7F051BE8 24060001 */ li $a2, 1 /* 08671C 7F051BEC 8C640000 */ lw $a0, ($v1) .L7F051BF0: /* 086720 7F051BF0 50800018 */ beql $a0, $zero, .L7F051C54 /* 086724 7F051BF4 8C620004 */ lw $v0, 4($v1) /* 086728 7F051BF8 848E0082 */ lh $t6, 0x82($a0) /* 08672C 7F051BFC 54CE0015 */ bnel $a2, $t6, .L7F051C54 /* 086730 7F051C00 8C620004 */ lw $v0, 4($v1) /* 086734 7F051C04 C4A40000 */ lwc1 $f4, ($a1) /* 086738 7F051C08 C4860058 */ lwc1 $f6, 0x58($a0) /* 08673C 7F051C0C C4A80004 */ lwc1 $f8, 4($a1) /* 086740 7F051C10 C48A005C */ lwc1 $f10, 0x5c($a0) /* 086744 7F051C14 46062001 */ sub.s $f0, $f4, $f6 /* 086748 7F051C18 C4B00008 */ lwc1 $f16, 8($a1) /* 08674C 7F051C1C C4920060 */ lwc1 $f18, 0x60($a0) /* 086750 7F051C20 460A4081 */ sub.s $f2, $f8, $f10 /* 086754 7F051C24 46000102 */ mul.s $f4, $f0, $f0 /* 086758 7F051C28 46128301 */ sub.s $f12, $f16, $f18 /* 08675C 7F051C2C 46021182 */ mul.s $f6, $f2, $f2 /* 086760 7F051C30 46062200 */ add.s $f8, $f4, $f6 /* 086764 7F051C34 460C6282 */ mul.s $f10, $f12, $f12 /* 086768 7F051C38 460A4400 */ add.s $f16, $f8, $f10 /* 08676C 7F051C3C 460E803C */ c.lt.s $f16, $f14 /* 086770 7F051C40 00000000 */ nop /* 086774 7F051C44 45020003 */ bc1fl .L7F051C54 /* 086778 7F051C48 8C620004 */ lw $v0, 4($v1) /* 08677C 7F051C4C A4800082 */ sh $zero, 0x82($a0) /* 086780 7F051C50 8C620004 */ lw $v0, 4($v1) .L7F051C54: /* 086784 7F051C54 24630008 */ addiu $v1, $v1, 8 /* 086788 7F051C58 10400017 */ beqz $v0, .L7F051CB8 /* 08678C 7F051C5C 00000000 */ nop /* 086790 7F051C60 844F0082 */ lh $t7, 0x82($v0) /* 086794 7F051C64 14CF0014 */ bne $a2, $t7, .L7F051CB8 /* 086798 7F051C68 00000000 */ nop /* 08679C 7F051C6C C4B20000 */ lwc1 $f18, ($a1) /* 0867A0 7F051C70 C4440058 */ lwc1 $f4, 0x58($v0) /* 0867A4 7F051C74 C4A60004 */ lwc1 $f6, 4($a1) /* 0867A8 7F051C78 C448005C */ lwc1 $f8, 0x5c($v0) /* 0867AC 7F051C7C 46049001 */ sub.s $f0, $f18, $f4 /* 0867B0 7F051C80 C4AA0008 */ lwc1 $f10, 8($a1) /* 0867B4 7F051C84 C4500060 */ lwc1 $f16, 0x60($v0) /* 0867B8 7F051C88 46083081 */ sub.s $f2, $f6, $f8 /* 0867BC 7F051C8C 46000482 */ mul.s $f18, $f0, $f0 /* 0867C0 7F051C90 46105301 */ sub.s $f12, $f10, $f16 /* 0867C4 7F051C94 46021102 */ mul.s $f4, $f2, $f2 /* 0867C8 7F051C98 46049180 */ add.s $f6, $f18, $f4 /* 0867CC 7F051C9C 460C6202 */ mul.s $f8, $f12, $f12 /* 0867D0 7F051CA0 46083280 */ add.s $f10, $f6, $f8 /* 0867D4 7F051CA4 460E503C */ c.lt.s $f10, $f14 /* 0867D8 7F051CA8 00000000 */ nop /* 0867DC 7F051CAC 45000002 */ bc1f .L7F051CB8 /* 0867E0 7F051CB0 00000000 */ nop /* 0867E4 7F051CB4 A4400082 */ sh $zero, 0x82($v0) .L7F051CB8: /* 0867E8 7F051CB8 5467FFCD */ bnel $v1, $a3, .L7F051BF0 /* 0867EC 7F051CBC 8C640000 */ lw $a0, ($v1) /* 0867F0 7F051CC0 03E00008 */ jr $ra /* 0867F4 7F051CC4 00000000 */ nop ) #endif #ifdef NONMATCHING void check_guard_detonate_proxmine(void) { } #else GLOBAL_ASM( .text glabel check_guard_detonate_proxmine /* 0867F8 7F051CC8 27BDFFB0 */ addiu $sp, $sp, -0x50 /* 0867FC 7F051CCC AFBF002C */ sw $ra, 0x2c($sp) /* 086800 7F051CD0 AFB40028 */ sw $s4, 0x28($sp) /* 086804 7F051CD4 AFB30024 */ sw $s3, 0x24($sp) /* 086808 7F051CD8 AFB20020 */ sw $s2, 0x20($sp) /* 08680C 7F051CDC AFB1001C */ sw $s1, 0x1c($sp) /* 086810 7F051CE0 0FC07D4C */ jal get_numguards /* 086814 7F051CE4 AFB00018 */ sw $s0, 0x18($sp) /* 086818 7F051CE8 1840001A */ blez $v0, .L7F051D54 /* 08681C 7F051CEC 00008025 */ move $s0, $zero /* 086820 7F051CF0 00029900 */ sll $s3, $v0, 4 /* 086824 7F051CF4 02629823 */ subu $s3, $s3, $v0 /* 086828 7F051CF8 001398C0 */ sll $s3, $s3, 3 /* 08682C 7F051CFC 02629823 */ subu $s3, $s3, $v0 /* 086830 7F051D00 3C148003 */ lui $s4, %hi(ptr_guard_data) /* 086834 7F051D04 2694CC64 */ addiu $s4, %lo(ptr_guard_data) # addiu $s4, $s4, -0x339c /* 086838 7F051D08 00139880 */ sll $s3, $s3, 2 /* 08683C 7F051D0C 27B10038 */ addiu $s1, $sp, 0x38 /* 086840 7F051D10 8E8E0000 */ lw $t6, ($s4) .L7F051D14: /* 086844 7F051D14 020E2021 */ addu $a0, $s0, $t6 /* 086848 7F051D18 8C8F001C */ lw $t7, 0x1c($a0) /* 08684C 7F051D1C 51E0000A */ beql $t7, $zero, .L7F051D48 /* 086850 7F051D20 261001DC */ addiu $s0, $s0, 0x1dc /* 086854 7F051D24 94980012 */ lhu $t8, 0x12($a0) /* 086858 7F051D28 33190200 */ andi $t9, $t8, 0x200 /* 08685C 7F051D2C 53200006 */ beql $t9, $zero, .L7F051D48 /* 086860 7F051D30 261001DC */ addiu $s0, $s0, 0x1dc /* 086864 7F051D34 0FC0A225 */ jal sub_GAME_7F028894 /* 086868 7F051D38 02202825 */ move $a1, $s1 /* 08686C 7F051D3C 0FC146F3 */ jal detonate_proxmine_In_range /* 086870 7F051D40 02202025 */ move $a0, $s1 /* 086874 7F051D44 261001DC */ addiu $s0, $s0, 0x1dc .L7F051D48: /* 086878 7F051D48 0213082A */ slt $at, $s0, $s3 /* 08687C 7F051D4C 5420FFF1 */ bnezl $at, .L7F051D14 /* 086880 7F051D50 8E8E0000 */ lw $t6, ($s4) .L7F051D54: /* 086884 7F051D54 8FBF002C */ lw $ra, 0x2c($sp) /* 086888 7F051D58 8FB00018 */ lw $s0, 0x18($sp) /* 08688C 7F051D5C 8FB1001C */ lw $s1, 0x1c($sp) /* 086890 7F051D60 8FB20020 */ lw $s2, 0x20($sp) /* 086894 7F051D64 8FB30024 */ lw $s3, 0x24($sp) /* 086898 7F051D68 8FB40028 */ lw $s4, 0x28($sp) /* 08689C 7F051D6C 03E00008 */ jr $ra /* 0868A0 7F051D70 27BD0050 */ addiu $sp, $sp, 0x50 ) #endif #ifdef NONMATCHING void link_objects(void) { } #else GLOBAL_ASM( .text glabel link_objects /* 0868A4 7F051D74 80AE0080 */ lb $t6, 0x80($a1) /* 0868A8 7F051D78 808F0080 */ lb $t7, 0x80($a0) /* 0868AC 7F051D7C AC850084 */ sw $a1, 0x84($a0) /* 0868B0 7F051D80 A08E0081 */ sb $t6, 0x81($a0) /* 0868B4 7F051D84 ACA40084 */ sw $a0, 0x84($a1) /* 0868B8 7F051D88 03E00008 */ jr $ra /* 0868BC 7F051D8C A0AF0081 */ sb $t7, 0x81($a1) ) #endif #ifdef NONMATCHING void complete_object_data_block_return_position_entry(void) { } #else GLOBAL_ASM( .text glabel complete_object_data_block_return_position_entry /* 0868C0 7F051D90 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0868C4 7F051D94 AFBF0014 */ sw $ra, 0x14($sp) /* 0868C8 7F051D98 0FC10153 */ jal init_standard_object /* 0868CC 7F051D9C 00000000 */ nop /* 0868D0 7F051DA0 10400008 */ beqz $v0, .L7F051DC4 /* 0868D4 7F051DA4 00403025 */ move $a2, $v0 /* 0868D8 7F051DA8 240E0004 */ li $t6, 4 /* 0868DC 7F051DAC A04E0000 */ sb $t6, ($v0) /* 0868E0 7F051DB0 AFA20020 */ sw $v0, 0x20($sp) /* 0868E4 7F051DB4 00402025 */ move $a0, $v0 /* 0868E8 7F051DB8 0FC1495D */ jal sub_GAME_7F052574 /* 0868EC 7F051DBC 00002825 */ move $a1, $zero /* 0868F0 7F051DC0 8FA60020 */ lw $a2, 0x20($sp) .L7F051DC4: /* 0868F4 7F051DC4 8FBF0014 */ lw $ra, 0x14($sp) /* 0868F8 7F051DC8 27BD0018 */ addiu $sp, $sp, 0x18 /* 0868FC 7F051DCC 00C01025 */ move $v0, $a2 /* 086900 7F051DD0 03E00008 */ jr $ra /* 086904 7F051DD4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F051DD8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051DD8 /* 086908 7F051DD8 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08690C 7F051DDC AFBF0014 */ sw $ra, 0x14($sp) /* 086910 7F051DE0 0FC101BE */ jal sub_GAME_7F0406F8 /* 086914 7F051DE4 00000000 */ nop /* 086918 7F051DE8 10400007 */ beqz $v0, .L7F051E08 /* 08691C 7F051DEC 00402025 */ move $a0, $v0 /* 086920 7F051DF0 240E0004 */ li $t6, 4 /* 086924 7F051DF4 A04E0000 */ sb $t6, ($v0) /* 086928 7F051DF8 AFA2001C */ sw $v0, 0x1c($sp) /* 08692C 7F051DFC 0FC1495D */ jal sub_GAME_7F052574 /* 086930 7F051E00 00002825 */ move $a1, $zero /* 086934 7F051E04 8FA4001C */ lw $a0, 0x1c($sp) .L7F051E08: /* 086938 7F051E08 8FBF0014 */ lw $ra, 0x14($sp) /* 08693C 7F051E0C 27BD0020 */ addiu $sp, $sp, 0x20 /* 086940 7F051E10 00801025 */ move $v0, $a0 /* 086944 7F051E14 03E00008 */ jr $ra /* 086948 7F051E18 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F051E1C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051E1C /* 08694C 7F051E1C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 086950 7F051E20 AFBF0014 */ sw $ra, 0x14($sp) /* 086954 7F051E24 8C820008 */ lw $v0, 8($a0) /* 086958 7F051E28 00A03825 */ move $a3, $a1 /* 08695C 7F051E2C 00803025 */ move $a2, $a0 /* 086960 7F051E30 000270C0 */ sll $t6, $v0, 3 /* 086964 7F051E34 05C10003 */ bgez $t6, .L7F051E44 /* 086968 7F051E38 00002825 */ move $a1, $zero /* 08696C 7F051E3C 10000001 */ b .L7F051E44 /* 086970 7F051E40 24050001 */ li $a1, 1 .L7F051E44: /* 086974 7F051E44 8CC40010 */ lw $a0, 0x10($a2) /* 086978 7F051E48 50800035 */ beql $a0, $zero, .L7F051F20 /* 08697C 7F051E4C 24020001 */ li $v0, 1 /* 086980 7F051E50 8CC30014 */ lw $v1, 0x14($a2) /* 086984 7F051E54 00027880 */ sll $t7, $v0, 2 /* 086988 7F051E58 50600031 */ beql $v1, $zero, .L7F051F20 /* 08698C 7F051E5C 24020001 */ li $v0, 1 /* 086990 7F051E60 05E0002C */ bltz $t7, .L7F051F14 /* 086994 7F051E64 00000000 */ nop /* 086998 7F051E68 00052080 */ sll $a0, $a1, 2 /* 08699C 7F051E6C 00E41021 */ addu $v0, $a3, $a0 /* 0869A0 7F051E70 8C580160 */ lw $t8, 0x160($v0) /* 0869A4 7F051E74 17000025 */ bnez $t8, .L7F051F0C /* 0869A8 7F051E78 00000000 */ nop /* 0869AC 7F051E7C 8CF9001C */ lw $t9, 0x1c($a3) /* 0869B0 7F051E80 14800008 */ bnez $a0, .L7F051EA4 /* 0869B4 7F051E84 AC790018 */ sw $t9, 0x18($v1) /* 0869B8 7F051E88 8CE8001C */ lw $t0, 0x1c($a3) /* 0869BC 7F051E8C 8CCC0014 */ lw $t4, 0x14($a2) /* 0869C0 7F051E90 8D090008 */ lw $t1, 8($t0) /* 0869C4 7F051E94 8D2A0008 */ lw $t2, 8($t1) /* 0869C8 7F051E98 8D4B000C */ lw $t3, 0xc($t2) /* 0869CC 7F051E9C 10000007 */ b .L7F051EBC /* 0869D0 7F051EA0 AD8B001C */ sw $t3, 0x1c($t4) .L7F051EA4: /* 0869D4 7F051EA4 8CED001C */ lw $t5, 0x1c($a3) /* 0869D8 7F051EA8 8CD90014 */ lw $t9, 0x14($a2) /* 0869DC 7F051EAC 8DAE0008 */ lw $t6, 8($t5) /* 0869E0 7F051EB0 8DCF0008 */ lw $t7, 8($t6) /* 0869E4 7F051EB4 8DF80014 */ lw $t8, 0x14($t7) /* 0869E8 7F051EB8 AF38001C */ sw $t8, 0x1c($t9) .L7F051EBC: /* 0869EC 7F051EBC 8CC80010 */ lw $t0, 0x10($a2) /* 0869F0 7F051EC0 00045823 */ negu $t3, $a0 /* 0869F4 7F051EC4 00EB6021 */ addu $t4, $a3, $t3 /* 0869F8 7F051EC8 AC480160 */ sw $t0, 0x160($v0) /* 0869FC 7F051ECC 8CC90008 */ lw $t1, 8($a2) /* 086A00 7F051ED0 00095000 */ sll $t2, $t1, 0 /* 086A04 7F051ED4 0541000B */ bgez $t2, .L7F051F04 /* 086A08 7F051ED8 00000000 */ nop /* 086A0C 7F051EDC 8D820164 */ lw $v0, 0x164($t4) /* 086A10 7F051EE0 00C02025 */ move $a0, $a2 /* 086A14 7F051EE4 10400007 */ beqz $v0, .L7F051F04 /* 086A18 7F051EE8 00000000 */ nop /* 086A1C 7F051EEC 8C450004 */ lw $a1, 4($v0) /* 086A20 7F051EF0 AFA7001C */ sw $a3, 0x1c($sp) /* 086A24 7F051EF4 0FC1475D */ jal link_objects /* 086A28 7F051EF8 AFA60018 */ sw $a2, 0x18($sp) /* 086A2C 7F051EFC 8FA60018 */ lw $a2, 0x18($sp) /* 086A30 7F051F00 8FA7001C */ lw $a3, 0x1c($sp) .L7F051F04: /* 086A34 7F051F04 10000003 */ b .L7F051F14 /* 086A38 7F051F08 8CC40010 */ lw $a0, 0x10($a2) .L7F051F0C: /* 086A3C 7F051F0C 10000004 */ b .L7F051F20 /* 086A40 7F051F10 00001025 */ move $v0, $zero .L7F051F14: /* 086A44 7F051F14 0FC0E969 */ jal sub_GAME_7F03A5A4 /* 086A48 7F051F18 8CE50018 */ lw $a1, 0x18($a3) /* 086A4C 7F051F1C 24020001 */ li $v0, 1 .L7F051F20: /* 086A50 7F051F20 8FBF0014 */ lw $ra, 0x14($sp) /* 086A54 7F051F24 27BD0018 */ addiu $sp, $sp, 0x18 /* 086A58 7F051F28 03E00008 */ jr $ra /* 086A5C 7F051F2C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F051F30(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051F30 /* 086A60 7F051F30 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 086A64 7F051F34 AFA50024 */ sw $a1, 0x24($sp) /* 086A68 7F051F38 AFA60028 */ sw $a2, 0x28($sp) /* 086A6C 7F051F3C 00C02825 */ move $a1, $a2 /* 086A70 7F051F40 AFBF001C */ sw $ra, 0x1c($sp) /* 086A74 7F051F44 AFB00018 */ sw $s0, 0x18($sp) /* 086A78 7F051F48 AFA7002C */ sw $a3, 0x2c($sp) /* 086A7C 7F051F4C 00E03025 */ move $a2, $a3 /* 086A80 7F051F50 00808025 */ move $s0, $a0 /* 086A84 7F051F54 0FC14764 */ jal complete_object_data_block_return_position_entry /* 086A88 7F051F58 8FA70030 */ lw $a3, 0x30($sp) /* 086A8C 7F051F5C 10400018 */ beqz $v0, .L7F051FC0 /* 086A90 7F051F60 AFA2002C */ sw $v0, 0x2c($sp) /* 086A94 7F051F64 8E040014 */ lw $a0, 0x14($s0) /* 086A98 7F051F68 50800016 */ beql $a0, $zero, .L7F051FC4 /* 086A9C 7F051F6C 8FBF001C */ lw $ra, 0x1c($sp) /* 086AA0 7F051F70 960E0000 */ lhu $t6, ($s0) /* 086AA4 7F051F74 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 086AA8 7F051F78 448E2000 */ mtc1 $t6, $f4 /* 086AAC 7F051F7C 05C10004 */ bgez $t6, .L7F051F90 /* 086AB0 7F051F80 468021A0 */ cvt.s.w $f6, $f4 /* 086AB4 7F051F84 44814000 */ mtc1 $at, $f8 /* 086AB8 7F051F88 00000000 */ nop /* 086ABC 7F051F8C 46083180 */ add.s $f6, $f6, $f8 .L7F051F90: /* 086AC0 7F051F90 3C013B80 */ li $at, 0x3B800000 # 0.003906 /* 086AC4 7F051F94 44815000 */ mtc1 $at, $f10 /* 086AC8 7F051F98 C4900014 */ lwc1 $f16, 0x14($a0) /* 086ACC 7F051F9C 460A3002 */ mul.s $f0, $f6, $f10 /* 086AD0 7F051FA0 00000000 */ nop /* 086AD4 7F051FA4 46008482 */ mul.s $f18, $f16, $f0 /* 086AD8 7F051FA8 44059000 */ mfc1 $a1, $f18 /* 086ADC 7F051FAC 0FC1B39E */ jal set_obj_instance_controller_scale /* 086AE0 7F051FB0 00000000 */ nop /* 086AE4 7F051FB4 02002025 */ move $a0, $s0 /* 086AE8 7F051FB8 0FC14787 */ jal sub_GAME_7F051E1C /* 086AEC 7F051FBC 8FA50024 */ lw $a1, 0x24($sp) .L7F051FC0: /* 086AF0 7F051FC0 8FBF001C */ lw $ra, 0x1c($sp) .L7F051FC4: /* 086AF4 7F051FC4 8FA2002C */ lw $v0, 0x2c($sp) /* 086AF8 7F051FC8 8FB00018 */ lw $s0, 0x18($sp) /* 086AFC 7F051FCC 03E00008 */ jr $ra /* 086B00 7F051FD0 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F051FD4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F051FD4 /* 086B04 7F051FD4 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 086B08 7F051FD8 AFBF001C */ sw $ra, 0x1c($sp) /* 086B0C 7F051FDC AFA40028 */ sw $a0, 0x28($sp) /* 086B10 7F051FE0 AFA5002C */ sw $a1, 0x2c($sp) /* 086B14 7F051FE4 84840004 */ lh $a0, 4($a0) /* 086B18 7F051FE8 0FC15B0E */ jal load_model /* 086B1C 7F051FEC AFA40020 */ sw $a0, 0x20($sp) /* 086B20 7F051FF0 8FAF0020 */ lw $t7, 0x20($sp) /* 086B24 7F051FF4 3C068004 */ lui $a2, %hi(PitemZ_entries) /* 086B28 7F051FF8 8FA40028 */ lw $a0, 0x28($sp) /* 086B2C 7F051FFC 000FC080 */ sll $t8, $t7, 2 /* 086B30 7F052000 030FC023 */ subu $t8, $t8, $t7 /* 086B34 7F052004 0018C080 */ sll $t8, $t8, 2 /* 086B38 7F052008 00D83021 */ addu $a2, $a2, $t8 /* 086B3C 7F05200C 8CC6A228 */ lw $a2, %lo(PitemZ_entries)($a2) /* 086B40 7F052010 8FA5002C */ lw $a1, 0x2c($sp) /* 086B44 7F052014 00003825 */ move $a3, $zero /* 086B48 7F052018 0FC147CC */ jal sub_GAME_7F051F30 /* 086B4C 7F05201C AFA00010 */ sw $zero, 0x10($sp) /* 086B50 7F052020 8FBF001C */ lw $ra, 0x1c($sp) /* 086B54 7F052024 27BD0028 */ addiu $sp, $sp, 0x28 /* 086B58 7F052028 03E00008 */ jr $ra /* 086B5C 7F05202C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F052030(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F052030 /* 086B60 7F052030 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 086B64 7F052034 AFBF0014 */ sw $ra, 0x14($sp) /* 086B68 7F052038 8C8E0074 */ lw $t6, 0x74($a0) /* 086B6C 7F05203C 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 086B70 7F052040 44814000 */ mtc1 $at, $f8 /* 086B74 7F052044 448E2000 */ mtc1 $t6, $f4 /* 086B78 7F052048 00000000 */ nop /* 086B7C 7F05204C 468021A0 */ cvt.s.w $f6, $f4 /* 086B80 7F052050 46083283 */ div.s $f10, $f6, $f8 /* 086B84 7F052054 0FC147F5 */ jal sub_GAME_7F051FD4 /* 086B88 7F052058 E48A0074 */ swc1 $f10, 0x74($a0) /* 086B8C 7F05205C 8FBF0014 */ lw $ra, 0x14($sp) /* 086B90 7F052060 27BD0018 */ addiu $sp, $sp, 0x18 /* 086B94 7F052064 03E00008 */ jr $ra /* 086B98 7F052068 00000000 */ nop ) #endif #ifdef NONMATCHING void create_new_item_instance_of_model(void) { } #else GLOBAL_ASM( .text glabel create_new_item_instance_of_model /* 086B9C 7F05206C 00047080 */ sll $t6, $a0, 2 /* 086BA0 7F052070 27BDFF48 */ addiu $sp, $sp, -0xb8 /* 086BA4 7F052074 01C47023 */ subu $t6, $t6, $a0 /* 086BA8 7F052078 000E7080 */ sll $t6, $t6, 2 /* 086BAC 7F05207C 3C0F8004 */ lui $t7, %hi(PitemZ_entries) /* 086BB0 7F052080 01EE7821 */ addu $t7, $t7, $t6 /* 086BB4 7F052084 8DEFA228 */ lw $t7, %lo(PitemZ_entries)($t7) /* 086BB8 7F052088 AFBF001C */ sw $ra, 0x1c($sp) /* 086BBC 7F05208C AFB10018 */ sw $s1, 0x18($sp) /* 086BC0 7F052090 AFB00014 */ sw $s0, 0x14($sp) /* 086BC4 7F052094 AFA500BC */ sw $a1, 0xbc($sp) /* 086BC8 7F052098 AFA400B8 */ sw $a0, 0xb8($sp) /* 086BCC 7F05209C 0FC15B0E */ jal load_model /* 086BD0 7F0520A0 AFAF00B4 */ sw $t7, 0xb4($sp) /* 086BD4 7F0520A4 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 086BD8 7F0520A8 00000000 */ nop /* 086BDC 7F0520AC 00408025 */ move $s0, $v0 /* 086BE0 7F0520B0 0FC1B025 */ jal get_obj_instance_controller_for_header /* 086BE4 7F0520B4 8FA400B4 */ lw $a0, 0xb4($sp) /* 086BE8 7F0520B8 2E040001 */ sltiu $a0, $s0, 1 /* 086BEC 7F0520BC 2C450001 */ sltiu $a1, $v0, 1 /* 086BF0 7F0520C0 8FA600B4 */ lw $a2, 0xb4($sp) /* 086BF4 7F0520C4 0FC1449B */ jal sub_GAME_7F05126C /* 086BF8 7F0520C8 AFA200AC */ sw $v0, 0xac($sp) /* 086BFC 7F0520CC 8FA700AC */ lw $a3, 0xac($sp) /* 086C00 7F0520D0 16000005 */ bnez $s0, .L7F0520E8 /* 086C04 7F0520D4 00408825 */ move $s1, $v0 /* 086C08 7F0520D8 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 086C0C 7F0520DC AFA700AC */ sw $a3, 0xac($sp) /* 086C10 7F0520E0 8FA700AC */ lw $a3, 0xac($sp) /* 086C14 7F0520E4 00408025 */ move $s0, $v0 .L7F0520E8: /* 086C18 7F0520E8 14E00004 */ bnez $a3, .L7F0520FC /* 086C1C 7F0520EC 00000000 */ nop /* 086C20 7F0520F0 0FC1B025 */ jal get_obj_instance_controller_for_header /* 086C24 7F0520F4 8FA400B4 */ lw $a0, 0xb4($sp) /* 086C28 7F0520F8 00403825 */ move $a3, $v0 .L7F0520FC: /* 086C2C 7F0520FC 1220002C */ beqz $s1, .L7F0521B0 /* 086C30 7F052100 00000000 */ nop /* 086C34 7F052104 1200002A */ beqz $s0, .L7F0521B0 /* 086C38 7F052108 00000000 */ nop /* 086C3C 7F05210C 10E00028 */ beqz $a3, .L7F0521B0 /* 086C40 7F052110 27A20020 */ addiu $v0, $sp, 0x20 /* 086C44 7F052114 3C188003 */ lui $t8, %hi(blank_08_object_preset_1) /* 086C48 7F052118 27182194 */ addiu $t8, %lo(blank_08_object_preset_1) # addiu $t8, $t8, 0x2194 /* 086C4C 7F05211C 27080084 */ addiu $t0, $t8, 0x84 /* 086C50 7F052120 00404825 */ move $t1, $v0 .L7F052124: /* 086C54 7F052124 8F010000 */ lw $at, ($t8) /* 086C58 7F052128 2718000C */ addiu $t8, $t8, 0xc /* 086C5C 7F05212C 2529000C */ addiu $t1, $t1, 0xc /* 086C60 7F052130 AD21FFF4 */ sw $at, -0xc($t1) /* 086C64 7F052134 8F01FFF8 */ lw $at, -8($t8) /* 086C68 7F052138 AD21FFF8 */ sw $at, -8($t1) /* 086C6C 7F05213C 8F01FFFC */ lw $at, -4($t8) /* 086C70 7F052140 1708FFF8 */ bne $t8, $t0, .L7F052124 /* 086C74 7F052144 AD21FFFC */ sw $at, -4($t1) /* 086C78 7F052148 8F010000 */ lw $at, ($t8) /* 086C7C 7F05214C 00406025 */ move $t4, $v0 /* 086C80 7F052150 02206825 */ move $t5, $s1 /* 086C84 7F052154 244B0084 */ addiu $t3, $v0, 0x84 /* 086C88 7F052158 AD210000 */ sw $at, ($t1) .L7F05215C: /* 086C8C 7F05215C 8D810000 */ lw $at, ($t4) /* 086C90 7F052160 258C000C */ addiu $t4, $t4, 0xc /* 086C94 7F052164 25AD000C */ addiu $t5, $t5, 0xc /* 086C98 7F052168 ADA1FFF4 */ sw $at, -0xc($t5) /* 086C9C 7F05216C 8D81FFF8 */ lw $at, -8($t4) /* 086CA0 7F052170 ADA1FFF8 */ sw $at, -8($t5) /* 086CA4 7F052174 8D81FFFC */ lw $at, -4($t4) /* 086CA8 7F052178 158BFFF8 */ bne $t4, $t3, .L7F05215C /* 086CAC 7F05217C ADA1FFFC */ sw $at, -4($t5) /* 086CB0 7F052180 8D810000 */ lw $at, ($t4) /* 086CB4 7F052184 02202025 */ move $a0, $s1 /* 086CB8 7F052188 02003025 */ move $a2, $s0 /* 086CBC 7F05218C ADA10000 */ sw $at, ($t5) /* 086CC0 7F052190 8FAE00BC */ lw $t6, 0xbc($sp) /* 086CC4 7F052194 A22E0080 */ sb $t6, 0x80($s1) /* 086CC8 7F052198 8FAF00B8 */ lw $t7, 0xb8($sp) /* 086CCC 7F05219C A62F0004 */ sh $t7, 4($s1) /* 086CD0 7F0521A0 0FC14764 */ jal complete_object_data_block_return_position_entry /* 086CD4 7F0521A4 8FA500B4 */ lw $a1, 0xb4($sp) /* 086CD8 7F0521A8 1000000A */ b .L7F0521D4 /* 086CDC 7F0521AC 8FBF001C */ lw $ra, 0x1c($sp) .L7F0521B0: /* 086CE0 7F0521B0 10E00003 */ beqz $a3, .L7F0521C0 /* 086CE4 7F0521B4 00008825 */ move $s1, $zero /* 086CE8 7F0521B8 0FC1B08D */ jal set_obj_instance_scale_to_zero /* 086CEC 7F0521BC 00E02025 */ move $a0, $a3 .L7F0521C0: /* 086CF0 7F0521C0 52000004 */ beql $s0, $zero, .L7F0521D4 /* 086CF4 7F0521C4 8FBF001C */ lw $ra, 0x1c($sp) /* 086CF8 7F0521C8 0FC0E921 */ jal set_last_obj_pos_data /* 086CFC 7F0521CC 02002025 */ move $a0, $s0 /* 086D00 7F0521D0 8FBF001C */ lw $ra, 0x1c($sp) .L7F0521D4: /* 086D04 7F0521D4 02201025 */ move $v0, $s1 /* 086D08 7F0521D8 8FB10018 */ lw $s1, 0x18($sp) /* 086D0C 7F0521DC 8FB00014 */ lw $s0, 0x14($sp) /* 086D10 7F0521E0 03E00008 */ jr $ra /* 086D14 7F0521E4 27BD00B8 */ addiu $sp, $sp, 0xb8 ) #endif #ifdef NONMATCHING void set_0x4_in_runtime_flags_for_item_in_guards_hand(PCHRdata chr, int hand_index) { // BROKEN: we need to first identify the struct assigned to handle_positiondata ptr // function used to remove item from right/left hand or something, maybe position holding data? void **item_in_hand_ptr; if (chr->handle_positiondata[hand_index] != 0) { item_in_hand_ptr = chr->handle_positiondata[hand_index] + 4; item_in_hand_ptr[0x19] = (s32)(item_in_hand_ptr[0x19]) | 4; } } #else GLOBAL_ASM( .text glabel set_0x4_in_runtime_flags_for_item_in_guards_hand /* 086D18 7F0521E8 00057080 */ sll $t6, $a1, 2 /* 086D1C 7F0521EC 008E7821 */ addu $t7, $a0, $t6 /* 086D20 7F0521F0 8DE20160 */ lw $v0, 0x160($t7) /* 086D24 7F0521F4 10400005 */ beqz $v0, .L7F05220C /* 086D28 7F0521F8 00000000 */ nop /* 086D2C 7F0521FC 8C430004 */ lw $v1, 4($v0) /* 086D30 7F052200 8C780064 */ lw $t8, 0x64($v1) /* 086D34 7F052204 37190004 */ ori $t9, $t8, 4 /* 086D38 7F052208 AC790064 */ sw $t9, 0x64($v1) .L7F05220C: /* 086D3C 7F05220C 03E00008 */ jr $ra /* 086D40 7F052210 00000000 */ nop ) #endif #ifdef NONMATCHING void something_with_generating_object(void) { } #else GLOBAL_ASM( .text glabel something_with_generating_object /* 086D44 7F052214 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 086D48 7F052218 8FAE00D4 */ lw $t6, 0xd4($sp) /* 086D4C 7F05221C AFBF002C */ sw $ra, 0x2c($sp) /* 086D50 7F052220 AFB20028 */ sw $s2, 0x28($sp) /* 086D54 7F052224 AFB10024 */ sw $s1, 0x24($sp) /* 086D58 7F052228 AFB00020 */ sw $s0, 0x20($sp) /* 086D5C 7F05222C AFA400C0 */ sw $a0, 0xc0($sp) /* 086D60 7F052230 AFA500C4 */ sw $a1, 0xc4($sp) /* 086D64 7F052234 AFA600C8 */ sw $a2, 0xc8($sp) /* 086D68 7F052238 15C0000A */ bnez $t6, .L7F052264 /* 086D6C 7F05223C AFA700CC */ sw $a3, 0xcc($sp) /* 086D70 7F052240 0005C080 */ sll $t8, $a1, 2 /* 086D74 7F052244 0305C023 */ subu $t8, $t8, $a1 /* 086D78 7F052248 0018C080 */ sll $t8, $t8, 2 /* 086D7C 7F05224C 3C198004 */ lui $t9, %hi(PitemZ_entries) /* 086D80 7F052250 0338C821 */ addu $t9, $t9, $t8 /* 086D84 7F052254 8F39A228 */ lw $t9, %lo(PitemZ_entries)($t9) /* 086D88 7F052258 00A02025 */ move $a0, $a1 /* 086D8C 7F05225C 0FC15B0E */ jal load_model /* 086D90 7F052260 AFB900D4 */ sw $t9, 0xd4($sp) .L7F052264: /* 086D94 7F052264 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 086D98 7F052268 00000000 */ nop /* 086D9C 7F05226C 00408825 */ move $s1, $v0 /* 086DA0 7F052270 0FC1B025 */ jal get_obj_instance_controller_for_header /* 086DA4 7F052274 8FA400D4 */ lw $a0, 0xd4($sp) /* 086DA8 7F052278 8FB000D0 */ lw $s0, 0xd0($sp) /* 086DAC 7F05227C 00409025 */ move $s2, $v0 /* 086DB0 7F052280 2E240001 */ sltiu $a0, $s1, 1 /* 086DB4 7F052284 16000004 */ bnez $s0, .L7F052298 /* 086DB8 7F052288 2C450001 */ sltiu $a1, $v0, 1 /* 086DBC 7F05228C 0FC1449B */ jal sub_GAME_7F05126C /* 086DC0 7F052290 8FA600D4 */ lw $a2, 0xd4($sp) /* 086DC4 7F052294 00408025 */ move $s0, $v0 .L7F052298: /* 086DC8 7F052298 16200004 */ bnez $s1, .L7F0522AC /* 086DCC 7F05229C 00000000 */ nop /* 086DD0 7F0522A0 0FC0E90C */ jal remove_last_obj_pos_data_entry /* 086DD4 7F0522A4 00000000 */ nop /* 086DD8 7F0522A8 00408825 */ move $s1, $v0 .L7F0522AC: /* 086DDC 7F0522AC 16400004 */ bnez $s2, .L7F0522C0 /* 086DE0 7F0522B0 00000000 */ nop /* 086DE4 7F0522B4 0FC1B025 */ jal get_obj_instance_controller_for_header /* 086DE8 7F0522B8 8FA400D4 */ lw $a0, 0xd4($sp) /* 086DEC 7F0522BC 00409025 */ move $s2, $v0 .L7F0522C0: /* 086DF0 7F0522C0 12000034 */ beqz $s0, .L7F052394 /* 086DF4 7F0522C4 00000000 */ nop /* 086DF8 7F0522C8 12200032 */ beqz $s1, .L7F052394 /* 086DFC 7F0522CC 00000000 */ nop /* 086E00 7F0522D0 12400030 */ beqz $s2, .L7F052394 /* 086E04 7F0522D4 27A20030 */ addiu $v0, $sp, 0x30 /* 086E08 7F0522D8 3C088003 */ lui $t0, %hi(blank_08_object_preset_4001) /* 086E0C 7F0522DC 2508221C */ addiu $t0, %lo(blank_08_object_preset_4001) # addiu $t0, $t0, 0x221c /* 086E10 7F0522E0 250A0084 */ addiu $t2, $t0, 0x84 /* 086E14 7F0522E4 00405825 */ move $t3, $v0 .L7F0522E8: /* 086E18 7F0522E8 8D010000 */ lw $at, ($t0) /* 086E1C 7F0522EC 2508000C */ addiu $t0, $t0, 0xc /* 086E20 7F0522F0 256B000C */ addiu $t3, $t3, 0xc /* 086E24 7F0522F4 AD61FFF4 */ sw $at, -0xc($t3) /* 086E28 7F0522F8 8D01FFF8 */ lw $at, -8($t0) /* 086E2C 7F0522FC AD61FFF8 */ sw $at, -8($t3) /* 086E30 7F052300 8D01FFFC */ lw $at, -4($t0) /* 086E34 7F052304 150AFFF8 */ bne $t0, $t2, .L7F0522E8 /* 086E38 7F052308 AD61FFFC */ sw $at, -4($t3) /* 086E3C 7F05230C 8D010000 */ lw $at, ($t0) /* 086E40 7F052310 00407025 */ move $t6, $v0 /* 086E44 7F052314 0200C025 */ move $t8, $s0 /* 086E48 7F052318 244D0084 */ addiu $t5, $v0, 0x84 /* 086E4C 7F05231C AD610000 */ sw $at, ($t3) .L7F052320: /* 086E50 7F052320 8DC10000 */ lw $at, ($t6) /* 086E54 7F052324 25CE000C */ addiu $t6, $t6, 0xc /* 086E58 7F052328 2718000C */ addiu $t8, $t8, 0xc /* 086E5C 7F05232C AF01FFF4 */ sw $at, -0xc($t8) /* 086E60 7F052330 8DC1FFF8 */ lw $at, -8($t6) /* 086E64 7F052334 AF01FFF8 */ sw $at, -8($t8) /* 086E68 7F052338 8DC1FFFC */ lw $at, -4($t6) /* 086E6C 7F05233C 15CDFFF8 */ bne $t6, $t5, .L7F052320 /* 086E70 7F052340 AF01FFFC */ sw $at, -4($t8) /* 086E74 7F052344 8DC10000 */ lw $at, ($t6) /* 086E78 7F052348 02002025 */ move $a0, $s0 /* 086E7C 7F05234C 02203825 */ move $a3, $s1 /* 086E80 7F052350 AF010000 */ sw $at, ($t8) /* 086E84 7F052354 8FB900C8 */ lw $t9, 0xc8($sp) /* 086E88 7F052358 A2190080 */ sb $t9, 0x80($s0) /* 086E8C 7F05235C 8FAF00C4 */ lw $t7, 0xc4($sp) /* 086E90 7F052360 A60F0004 */ sh $t7, 4($s0) /* 086E94 7F052364 8FA900CC */ lw $t1, 0xcc($sp) /* 086E98 7F052368 352A4000 */ ori $t2, $t1, 0x4000 /* 086E9C 7F05236C AE0A0008 */ sw $t2, 8($s0) /* 086EA0 7F052370 8FA800C0 */ lw $t0, 0xc0($sp) /* 086EA4 7F052374 850B0000 */ lh $t3, ($t0) /* 086EA8 7F052378 A60B0006 */ sh $t3, 6($s0) /* 086EAC 7F05237C AFB20010 */ sw $s2, 0x10($sp) /* 086EB0 7F052380 8FA600D4 */ lw $a2, 0xd4($sp) /* 086EB4 7F052384 0FC147CC */ jal sub_GAME_7F051F30 /* 086EB8 7F052388 8FA500C0 */ lw $a1, 0xc0($sp) /* 086EBC 7F05238C 1000000A */ b .L7F0523B8 /* 086EC0 7F052390 00408825 */ move $s1, $v0 .L7F052394: /* 086EC4 7F052394 12400003 */ beqz $s2, .L7F0523A4 /* 086EC8 7F052398 00000000 */ nop /* 086ECC 7F05239C 0FC1B08D */ jal set_obj_instance_scale_to_zero /* 086ED0 7F0523A0 02402025 */ move $a0, $s2 .L7F0523A4: /* 086ED4 7F0523A4 52200005 */ beql $s1, $zero, .L7F0523BC /* 086ED8 7F0523A8 8FBF002C */ lw $ra, 0x2c($sp) /* 086EDC 7F0523AC 0FC0E921 */ jal set_last_obj_pos_data /* 086EE0 7F0523B0 02202025 */ move $a0, $s1 /* 086EE4 7F0523B4 00008825 */ move $s1, $zero .L7F0523B8: /* 086EE8 7F0523B8 8FBF002C */ lw $ra, 0x2c($sp) .L7F0523BC: /* 086EEC 7F0523BC 02201025 */ move $v0, $s1 /* 086EF0 7F0523C0 8FB10024 */ lw $s1, 0x24($sp) /* 086EF4 7F0523C4 8FB00020 */ lw $s0, 0x20($sp) /* 086EF8 7F0523C8 8FB20028 */ lw $s2, 0x28($sp) /* 086EFC 7F0523CC 03E00008 */ jr $ra /* 086F00 7F0523D0 27BD00C0 */ addiu $sp, $sp, 0xc0 ) #endif #ifdef NONMATCHING void actor_draws_weapon_with_model(void) { } #else GLOBAL_ASM( .text glabel actor_draws_weapon_with_model /* 086F04 7F0523D4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 086F08 7F0523D8 AFBF001C */ sw $ra, 0x1c($sp) /* 086F0C 7F0523DC AFA00010 */ sw $zero, 0x10($sp) /* 086F10 7F0523E0 0FC14885 */ jal something_with_generating_object /* 086F14 7F0523E4 AFA00014 */ sw $zero, 0x14($sp) /* 086F18 7F0523E8 8FBF001C */ lw $ra, 0x1c($sp) /* 086F1C 7F0523EC 27BD0020 */ addiu $sp, $sp, 0x20 /* 086F20 7F0523F0 03E00008 */ jr $ra /* 086F24 7F0523F4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0523F8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0523F8 /* 086F28 7F0523F8 27BDFF48 */ addiu $sp, $sp, -0xb8 /* 086F2C 7F0523FC AFBF001C */ sw $ra, 0x1c($sp) /* 086F30 7F052400 AFB10018 */ sw $s1, 0x18($sp) /* 086F34 7F052404 AFB00014 */ sw $s0, 0x14($sp) /* 086F38 7F052408 AFA500BC */ sw $a1, 0xbc($sp) /* 086F3C 7F05240C AFA600C0 */ sw $a2, 0xc0($sp) /* 086F40 7F052410 8C870004 */ lw $a3, 4($a0) /* 086F44 7F052414 00E02025 */ move $a0, $a3 /* 086F48 7F052418 0FC08C0B */ jal something_with_weaponpos_of_guarddata_hand /* 086F4C 7F05241C AFA700B4 */ sw $a3, 0xb4($sp) /* 086F50 7F052420 8FA700B4 */ lw $a3, 0xb4($sp) /* 086F54 7F052424 10400046 */ beqz $v0, .L7F052540 /* 086F58 7F052428 00401825 */ move $v1, $v0 /* 086F5C 7F05242C 8C500004 */ lw $s0, 4($v0) /* 086F60 7F052430 8E0E0064 */ lw $t6, 0x64($s0) /* 086F64 7F052434 31CF0800 */ andi $t7, $t6, 0x800 /* 086F68 7F052438 55E0003F */ bnezl $t7, .L7F052538 /* 086F6C 7F05243C 90480001 */ lbu $t0, 1($v0) /* 086F70 7F052440 8E18000C */ lw $t8, 0xc($s0) /* 086F74 7F052444 3C098003 */ lui $t1, %hi(D_800322A4) /* 086F78 7F052448 252922A4 */ addiu $t1, %lo(D_800322A4) # addiu $t1, $t1, 0x22a4 /* 086F7C 7F05244C 0018CB00 */ sll $t9, $t8, 0xc /* 086F80 7F052450 07200038 */ bltz $t9, .L7F052534 /* 086F84 7F052454 27A80068 */ addiu $t0, $sp, 0x68 /* 086F88 7F052458 8E110014 */ lw $s1, 0x14($s0) /* 086F8C 7F05245C 252B003C */ addiu $t3, $t1, 0x3c .L7F052460: /* 086F90 7F052460 8D210000 */ lw $at, ($t1) /* 086F94 7F052464 2529000C */ addiu $t1, $t1, 0xc /* 086F98 7F052468 2508000C */ addiu $t0, $t0, 0xc /* 086F9C 7F05246C AD01FFF4 */ sw $at, -0xc($t0) /* 086FA0 7F052470 8D21FFF8 */ lw $at, -8($t1) /* 086FA4 7F052474 AD01FFF8 */ sw $at, -8($t0) /* 086FA8 7F052478 8D21FFFC */ lw $at, -4($t1) /* 086FAC 7F05247C 152BFFF8 */ bne $t1, $t3, .L7F052460 /* 086FB0 7F052480 AD01FFFC */ sw $at, -4($t0) /* 086FB4 7F052484 8D210000 */ lw $at, ($t1) /* 086FB8 7F052488 00003025 */ move $a2, $zero /* 086FBC 7F05248C AD010000 */ sw $at, ($t0) /* 086FC0 7F052490 906C0001 */ lbu $t4, 1($v1) /* 086FC4 7F052494 8CE4001C */ lw $a0, 0x1c($a3) /* 086FC8 7F052498 358D0002 */ ori $t5, $t4, 2 /* 086FCC 7F05249C A06D0001 */ sb $t5, 1($v1) /* 086FD0 7F0524A0 0FC1B198 */ jal sub_GAME_7F06C660 /* 086FD4 7F0524A4 8E25001C */ lw $a1, 0x1c($s1) /* 086FD8 7F0524A8 8FAE00BC */ lw $t6, 0xbc($sp) /* 086FDC 7F0524AC 24010001 */ li $at, 1 /* 086FE0 7F0524B0 AFA20068 */ sw $v0, 0x68($sp) /* 086FE4 7F0524B4 15C10009 */ bne $t6, $at, .L7F0524DC /* 086FE8 7F0524B8 27A50020 */ addiu $a1, $sp, 0x20 /* 086FEC 7F0524BC 3C018005 */ lui $at, %hi(D_800532F0) /* 086FF0 7F0524C0 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 086FF4 7F0524C4 C42C32F0 */ lwc1 $f12, %lo(D_800532F0)($at) /* 086FF8 7F0524C8 8FA40068 */ lw $a0, 0x68($sp) /* 086FFC 7F0524CC 0FC1601A */ jal matrix_4x4_multiply_in_place /* 087000 7F0524D0 27A50020 */ addiu $a1, $sp, 0x20 /* 087004 7F0524D4 27AF0020 */ addiu $t7, $sp, 0x20 /* 087008 7F0524D8 AFAF0068 */ sw $t7, 0x68($sp) .L7F0524DC: /* 08700C 7F0524DC 8E380008 */ lw $t8, 8($s1) /* 087010 7F0524E0 8704000E */ lh $a0, 0xe($t8) /* 087014 7F0524E4 0004C980 */ sll $t9, $a0, 6 /* 087018 7F0524E8 0FC2F5C5 */ jal sub_GAME_7F0BD714 /* 08701C 7F0524EC 03202025 */ move $a0, $t9 /* 087020 7F0524F0 AFA20078 */ sw $v0, 0x78($sp) /* 087024 7F0524F4 27A40068 */ addiu $a0, $sp, 0x68 /* 087028 7F0524F8 0FC1BC92 */ jal instcalcmatrices /* 08702C 7F0524FC 02202825 */ move $a1, $s1 /* 087030 7F052500 8FA200C0 */ lw $v0, 0xc0($sp) /* 087034 7F052504 5040000F */ beql $v0, $zero, .L7F052544 /* 087038 7F052508 8FBF001C */ lw $ra, 0x1c($sp) /* 08703C 7F05250C 8E0A0064 */ lw $t2, 0x64($s0) /* 087040 7F052510 02202825 */ move $a1, $s1 /* 087044 7F052514 314B0080 */ andi $t3, $t2, 0x80 /* 087048 7F052518 5560000A */ bnezl $t3, .L7F052544 /* 08704C 7F05251C 8FBF001C */ lw $ra, 0x1c($sp) /* 087050 7F052520 0FC1AC48 */ jal sub_GAME_7F06B120 /* 087054 7F052524 8C440000 */ lw $a0, ($v0) /* 087058 7F052528 8FA900C0 */ lw $t1, 0xc0($sp) /* 08705C 7F05252C 10000004 */ b .L7F052540 /* 087060 7F052530 AD220000 */ sw $v0, ($t1) .L7F052534: /* 087064 7F052534 90480001 */ lbu $t0, 1($v0) .L7F052538: /* 087068 7F052538 310CFFFD */ andi $t4, $t0, 0xfffd /* 08706C 7F05253C A04C0001 */ sb $t4, 1($v0) .L7F052540: /* 087070 7F052540 8FBF001C */ lw $ra, 0x1c($sp) .L7F052544: /* 087074 7F052544 8FB00014 */ lw $s0, 0x14($sp) /* 087078 7F052548 8FB10018 */ lw $s1, 0x18($sp) /* 08707C 7F05254C 03E00008 */ jr $ra /* 087080 7F052550 27BD00B8 */ addiu $sp, $sp, 0xb8 ) #endif #ifdef NONMATCHING void redirect_object_collectability_routines(void) { } #else GLOBAL_ASM( .text glabel redirect_object_collectability_routines /* 087084 7F052554 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087088 7F052558 AFBF0014 */ sw $ra, 0x14($sp) /* 08708C 7F05255C 0FC141B7 */ jal object_collectability_routines /* 087090 7F052560 00000000 */ nop /* 087094 7F052564 8FBF0014 */ lw $ra, 0x14($sp) /* 087098 7F052568 27BD0018 */ addiu $sp, $sp, 0x18 /* 08709C 7F05256C 03E00008 */ jr $ra /* 0870A0 7F052570 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F052574(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F052574 /* 0870A4 7F052574 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0870A8 7F052578 AFBF0014 */ sw $ra, 0x14($sp) /* 0870AC 7F05257C AFA50024 */ sw $a1, 0x24($sp) /* 0870B0 7F052580 8C820004 */ lw $v0, 4($a0) /* 0870B4 7F052584 8C460014 */ lw $a2, 0x14($v0) /* 0870B8 7F052588 50C0001B */ beql $a2, $zero, .L7F0525F8 /* 0870BC 7F05258C 8FBF0014 */ lw $ra, 0x14($sp) /* 0870C0 7F052590 8CC20008 */ lw $v0, 8($a2) /* 0870C4 7F052594 3C0E8004 */ lui $t6, %hi(prop_weapon_related) /* 0870C8 7F052598 25CEC4FC */ addiu $t6, %lo(prop_weapon_related) # addiu $t6, $t6, -0x3b04 /* 0870CC 7F05259C 8C4F0004 */ lw $t7, 4($v0) /* 0870D0 7F0525A0 55CF0015 */ bnel $t6, $t7, .L7F0525F8 /* 0870D4 7F0525A4 8FBF0014 */ lw $ra, 0x14($sp) /* 0870D8 7F0525A8 8C430008 */ lw $v1, 8($v0) /* 0870DC 7F0525AC 00C02025 */ move $a0, $a2 /* 0870E0 7F0525B0 8C650000 */ lw $a1, ($v1) /* 0870E4 7F0525B4 50A00009 */ beql $a1, $zero, .L7F0525DC /* 0870E8 7F0525B8 8C650008 */ lw $a1, 8($v1) /* 0870EC 7F0525BC 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 0870F0 7F0525C0 AFA60018 */ sw $a2, 0x18($sp) /* 0870F4 7F0525C4 8FB80024 */ lw $t8, 0x24($sp) /* 0870F8 7F0525C8 8FA60018 */ lw $a2, 0x18($sp) /* 0870FC 7F0525CC A4580000 */ sh $t8, ($v0) /* 087100 7F0525D0 8CD90008 */ lw $t9, 8($a2) /* 087104 7F0525D4 8F230008 */ lw $v1, 8($t9) /* 087108 7F0525D8 8C650008 */ lw $a1, 8($v1) .L7F0525DC: /* 08710C 7F0525DC 50A00006 */ beql $a1, $zero, .L7F0525F8 /* 087110 7F0525E0 8FBF0014 */ lw $ra, 0x14($sp) /* 087114 7F0525E4 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 087118 7F0525E8 00C02025 */ move $a0, $a2 /* 08711C 7F0525EC 8FA80024 */ lw $t0, 0x24($sp) /* 087120 7F0525F0 AC480000 */ sw $t0, ($v0) /* 087124 7F0525F4 8FBF0014 */ lw $ra, 0x14($sp) .L7F0525F8: /* 087128 7F0525F8 27BD0020 */ addiu $sp, $sp, 0x20 /* 08712C 7F0525FC 03E00008 */ jr $ra /* 087130 7F052600 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F052604(void) { } #else GLOBAL_ASM( .late_rodata /*HACK*/ /*D:800532F4*/ glabel jpt_hat_worn .word model_hat_fur .word model_hat_fur .word model_hat_fur .word model_hat_greencap .word model_hat_greencap .text glabel sub_GAME_7F052604 /* 087134 7F052604 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087138 7F052608 AFBF0014 */ sw $ra, 0x14($sp) /* 08713C 7F05260C 8C820004 */ lw $v0, 4($a0) /* 087140 7F052610 8C460014 */ lw $a2, 0x14($v0) /* 087144 7F052614 50C00017 */ beql $a2, $zero, .L7F052674 /* 087148 7F052618 00001025 */ move $v0, $zero /* 08714C 7F05261C 8CC20008 */ lw $v0, 8($a2) /* 087150 7F052620 3C0E8004 */ lui $t6, %hi(prop_weapon_related) /* 087154 7F052624 25CEC4FC */ addiu $t6, %lo(prop_weapon_related) # addiu $t6, $t6, -0x3b04 /* 087158 7F052628 8C4F0004 */ lw $t7, 4($v0) /* 08715C 7F05262C 55CF0011 */ bnel $t6, $t7, .L7F052674 /* 087160 7F052630 00001025 */ move $v0, $zero /* 087164 7F052634 8C430008 */ lw $v1, 8($v0) /* 087168 7F052638 8C650000 */ lw $a1, ($v1) /* 08716C 7F05263C 50A00006 */ beql $a1, $zero, .L7F052658 /* 087170 7F052640 8C650008 */ lw $a1, 8($v1) /* 087174 7F052644 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 087178 7F052648 00C02025 */ move $a0, $a2 /* 08717C 7F05264C 10000009 */ b .L7F052674 /* 087180 7F052650 84420000 */ lh $v0, ($v0) /* 087184 7F052654 8C650008 */ lw $a1, 8($v1) .L7F052658: /* 087188 7F052658 50A00006 */ beql $a1, $zero, .L7F052674 /* 08718C 7F05265C 00001025 */ move $v0, $zero /* 087190 7F052660 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 087194 7F052664 00C02025 */ move $a0, $a2 /* 087198 7F052668 10000002 */ b .L7F052674 /* 08719C 7F05266C 8C420000 */ lw $v0, ($v0) /* 0871A0 7F052670 00001025 */ move $v0, $zero .L7F052674: /* 0871A4 7F052674 8FBF0014 */ lw $ra, 0x14($sp) /* 0871A8 7F052678 27BD0018 */ addiu $sp, $sp, 0x18 /* 0871AC 7F05267C 03E00008 */ jr $ra /* 0871B0 7F052680 00000000 */ nop ) #endif #ifdef NONMATCHING void get_hat_model(void) { } #else GLOBAL_ASM( .late_rodata /*D:800532F4*/ /*glabel jpt_hat_worn*/ /*.word model_hat_fur*/ /*.word model_hat_fur*/ /*.word model_hat_fur*/ /*.word model_hat_greencap*/ /*.word model_hat_greencap*/ .word model_hat_combat_helmet .word model_hat_combat_helmet .word model_hat_moonraker_headgear .word model_hat_beret .word model_hat_beret .word model_hat_beret .word model_hat_officerhat .text glabel get_hat_model /* 0871B4 7F052684 8C820004 */ lw $v0, 4($a0) /* 0871B8 7F052688 844E0004 */ lh $t6, 4($v0) /* 0871BC 7F05268C 2402FFFF */ li $v0, -1 /* 0871C0 7F052690 25CFFF2C */ addiu $t7, $t6, -0xd4 /* 0871C4 7F052694 2DE1000C */ sltiu $at, $t7, 0xc /* 0871C8 7F052698 10200012 */ beqz $at, .L7F0526E4 /* 0871CC 7F05269C 000F7880 */ sll $t7, $t7, 2 /* 0871D0 7F0526A0 3C018005 */ lui $at, %hi(jpt_hat_worn) /* 0871D4 7F0526A4 002F0821 */ addu $at, $at, $t7 /* 0871D8 7F0526A8 8C2F32F4 */ lw $t7, %lo(jpt_hat_worn)($at) /* 0871DC 7F0526AC 01E00008 */ jr $t7 /* 0871E0 7F0526B0 00000000 */ nop model_hat_fur: /* 0871E4 7F0526B4 03E00008 */ jr $ra /* 0871E8 7F0526B8 24020004 */ li $v0, 4 model_hat_greencap: /* 0871EC 7F0526BC 03E00008 */ jr $ra /* 0871F0 7F0526C0 24020001 */ li $v0, 1 model_hat_combat_helmet: /* 0871F4 7F0526C4 03E00008 */ jr $ra /* 0871F8 7F0526C8 24020003 */ li $v0, 3 model_hat_moonraker_headgear: /* 0871FC 7F0526CC 03E00008 */ jr $ra /* 087200 7F0526D0 24020005 */ li $v0, 5 model_hat_beret: /* 087204 7F0526D4 03E00008 */ jr $ra /* 087208 7F0526D8 00001025 */ move $v0, $zero model_hat_officerhat: /* 08720C 7F0526DC 03E00008 */ jr $ra /* 087210 7F0526E0 24020002 */ li $v0, 2 model_hat_default: .L7F0526E4: /* 087214 7F0526E4 03E00008 */ jr $ra /* 087218 7F0526E8 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0526EC(void) { } #else GLOBAL_ASM( .late_rodata glabel D_80053324 .word 0x40c90fdb /*6.2831855*/ glabel D_80053328 .word 0x40c90fdb /*6.2831855*/ glabel D_8005332C .word 0x40c90fdb /*6.2831855*/ glabel D_80053330 .word 0x40c90fdb /*6.2831855*/ glabel D_80053334 .word 0x461c4000 /*10000.0*/ glabel D_80053338 .word 0x3ecccccd /*0.40000001*/ glabel D_8005333C .word 0x3ecccccd /*0.40000001*/ glabel D_80053340 .word 0x461c4000 /*10000.0*/ glabel D_80053344 .word 0x46b1de00 /*22767.0*/ glabel D_80053348 .word 0x459c4000 /*5000.0*/ .text glabel sub_GAME_7F0526EC /* 08721C 7F0526EC 27BDFF60 */ addiu $sp, $sp, -0xa0 /* 087220 7F0526F0 AFBF001C */ sw $ra, 0x1c($sp) /* 087224 7F0526F4 AFB00018 */ sw $s0, 0x18($sp) /* 087228 7F0526F8 AFA500A4 */ sw $a1, 0xa4($sp) /* 08722C 7F0526FC 9482009A */ lhu $v0, 0x9a($a0) /* 087230 7F052700 24010005 */ li $at, 5 /* 087234 7F052704 00808025 */ move $s0, $a0 /* 087238 7F052708 10410003 */ beq $v0, $at, .L7F052718 /* 08723C 7F05270C 24010009 */ li $at, 9 /* 087240 7F052710 544100CA */ bnel $v0, $at, .L7F052A3C /* 087244 7F052714 24010006 */ li $at, 6 .L7F052718: /* 087248 7F052718 86190006 */ lh $t9, 6($s0) /* 08724C 7F05271C 3C098007 */ lui $t1, %hi(ptr_2xxxpresets) /* 087250 7F052720 8D295D1C */ lw $t1, %lo(ptr_2xxxpresets)($t1) /* 087254 7F052724 00194100 */ sll $t0, $t9, 4 /* 087258 7F052728 01194021 */ addu $t0, $t0, $t9 /* 08725C 7F05272C 00084080 */ sll $t0, $t0, 2 /* 087260 7F052730 01091021 */ addu $v0, $t0, $t1 /* 087264 7F052734 C4460010 */ lwc1 $f6, 0x10($v0) /* 087268 7F052738 C4480020 */ lwc1 $f8, 0x20($v0) /* 08726C 7F05273C C452001C */ lwc1 $f18, 0x1c($v0) /* 087270 7F052740 C44A0014 */ lwc1 $f10, 0x14($v0) /* 087274 7F052744 46083102 */ mul.s $f4, $f6, $f8 /* 087278 7F052748 24010009 */ li $at, 9 /* 08727C 7F05274C 460A9402 */ mul.s $f16, $f18, $f10 /* 087280 7F052750 46102181 */ sub.s $f6, $f4, $f16 /* 087284 7F052754 E7A60038 */ swc1 $f6, 0x38($sp) /* 087288 7F052758 C4480014 */ lwc1 $f8, 0x14($v0) /* 08728C 7F05275C C4520018 */ lwc1 $f18, 0x18($v0) /* 087290 7F052760 C450000C */ lwc1 $f16, 0xc($v0) /* 087294 7F052764 C4440020 */ lwc1 $f4, 0x20($v0) /* 087298 7F052768 46124282 */ mul.s $f10, $f8, $f18 /* 08729C 7F05276C 00000000 */ nop /* 0872A0 7F052770 46102202 */ mul.s $f8, $f4, $f16 /* 0872A4 7F052774 46085481 */ sub.s $f18, $f10, $f8 /* 0872A8 7F052778 E7B2003C */ swc1 $f18, 0x3c($sp) /* 0872AC 7F05277C C444000C */ lwc1 $f4, 0xc($v0) /* 0872B0 7F052780 C450001C */ lwc1 $f16, 0x1c($v0) /* 0872B4 7F052784 C4480018 */ lwc1 $f8, 0x18($v0) /* 0872B8 7F052788 46102282 */ mul.s $f10, $f4, $f16 /* 0872BC 7F05278C C4440010 */ lwc1 $f4, 0x10($v0) /* 0872C0 7F052790 46044402 */ mul.s $f16, $f8, $f4 /* 0872C4 7F052794 46105201 */ sub.s $f8, $f10, $f16 /* 0872C8 7F052798 E7A80040 */ swc1 $f8, 0x40($sp) /* 0872CC 7F05279C C44A0034 */ lwc1 $f10, 0x34($v0) /* 0872D0 7F0527A0 C444000C */ lwc1 $f4, 0xc($v0) /* 0872D4 7F0527A4 460A2402 */ mul.s $f16, $f4, $f10 /* 0872D8 7F0527A8 C4440000 */ lwc1 $f4, ($v0) /* 0872DC 7F0527AC 46048280 */ add.s $f10, $f16, $f4 /* 0872E0 7F0527B0 E7AA0054 */ swc1 $f10, 0x54($sp) /* 0872E4 7F0527B4 C4440034 */ lwc1 $f4, 0x34($v0) /* 0872E8 7F0527B8 C4500010 */ lwc1 $f16, 0x10($v0) /* 0872EC 7F0527BC 46048402 */ mul.s $f16, $f16, $f4 /* 0872F0 7F0527C0 C4440004 */ lwc1 $f4, 4($v0) /* 0872F4 7F0527C4 46048400 */ add.s $f16, $f16, $f4 /* 0872F8 7F0527C8 E7B00058 */ swc1 $f16, 0x58($sp) /* 0872FC 7F0527CC C4440014 */ lwc1 $f4, 0x14($v0) /* 087300 7F0527D0 E7A60020 */ swc1 $f6, 0x20($sp) /* 087304 7F0527D4 C4460034 */ lwc1 $f6, 0x34($v0) /* 087308 7F0527D8 46062102 */ mul.s $f4, $f4, $f6 /* 08730C 7F0527DC C4460008 */ lwc1 $f6, 8($v0) /* 087310 7F0527E0 46062100 */ add.s $f4, $f4, $f6 /* 087314 7F0527E4 C7A60020 */ lwc1 $f6, 0x20($sp) /* 087318 7F0527E8 E7A4005C */ swc1 $f4, 0x5c($sp) /* 08731C 7F0527EC 960A009A */ lhu $t2, 0x9a($s0) /* 087320 7F0527F0 15410010 */ bne $t2, $at, .L7F052834 /* 087324 7F0527F4 00000000 */ nop /* 087328 7F0527F8 E7B20020 */ swc1 $f18, 0x20($sp) /* 08732C 7F0527FC C4520030 */ lwc1 $f18, 0x30($v0) /* 087330 7F052800 46123182 */ mul.s $f6, $f6, $f18 /* 087334 7F052804 46065480 */ add.s $f18, $f10, $f6 /* 087338 7F052808 C7AA0020 */ lwc1 $f10, 0x20($sp) /* 08733C 7F05280C E7B20054 */ swc1 $f18, 0x54($sp) /* 087340 7F052810 C4460030 */ lwc1 $f6, 0x30($v0) /* 087344 7F052814 46065482 */ mul.s $f18, $f10, $f6 /* 087348 7F052818 46128280 */ add.s $f10, $f16, $f18 /* 08734C 7F05281C E7AA0058 */ swc1 $f10, 0x58($sp) /* 087350 7F052820 C4460030 */ lwc1 $f6, 0x30($v0) /* 087354 7F052824 46064402 */ mul.s $f16, $f8, $f6 /* 087358 7F052828 46102480 */ add.s $f18, $f4, $f16 /* 08735C 7F05282C 1000002A */ b .L7F0528D8 /* 087360 7F052830 E7B2005C */ swc1 $f18, 0x5c($sp) .L7F052834: /* 087364 7F052834 8E0B0008 */ lw $t3, 8($s0) /* 087368 7F052838 C7AA0038 */ lwc1 $f10, 0x38($sp) /* 08736C 7F05283C C7A60038 */ lwc1 $f6, 0x38($sp) /* 087370 7F052840 000B6080 */ sll $t4, $t3, 2 /* 087374 7F052844 05830014 */ bgezl $t4, .L7F052898 /* 087378 7F052848 C450002C */ lwc1 $f16, 0x2c($v0) /* 08737C 7F05284C C4480030 */ lwc1 $f8, 0x30($v0) /* 087380 7F052850 C7A40054 */ lwc1 $f4, 0x54($sp) /* 087384 7F052854 C7B2003C */ lwc1 $f18, 0x3c($sp) /* 087388 7F052858 46085182 */ mul.s $f6, $f10, $f8 /* 08738C 7F05285C 46062400 */ add.s $f16, $f4, $f6 /* 087390 7F052860 C7A40058 */ lwc1 $f4, 0x58($sp) /* 087394 7F052864 E7B00054 */ swc1 $f16, 0x54($sp) /* 087398 7F052868 C44A0030 */ lwc1 $f10, 0x30($v0) /* 08739C 7F05286C C7B00040 */ lwc1 $f16, 0x40($sp) /* 0873A0 7F052870 460A9202 */ mul.s $f8, $f18, $f10 /* 0873A4 7F052874 46082180 */ add.s $f6, $f4, $f8 /* 0873A8 7F052878 C7A4005C */ lwc1 $f4, 0x5c($sp) /* 0873AC 7F05287C E7A60058 */ swc1 $f6, 0x58($sp) /* 0873B0 7F052880 C4520030 */ lwc1 $f18, 0x30($v0) /* 0873B4 7F052884 46128282 */ mul.s $f10, $f16, $f18 /* 0873B8 7F052888 460A2200 */ add.s $f8, $f4, $f10 /* 0873BC 7F05288C 10000012 */ b .L7F0528D8 /* 0873C0 7F052890 E7A8005C */ swc1 $f8, 0x5c($sp) /* 0873C4 7F052894 C450002C */ lwc1 $f16, 0x2c($v0) .L7F052898: /* 0873C8 7F052898 C7A40054 */ lwc1 $f4, 0x54($sp) /* 0873CC 7F05289C C7A8003C */ lwc1 $f8, 0x3c($sp) /* 0873D0 7F0528A0 46103482 */ mul.s $f18, $f6, $f16 /* 0873D4 7F0528A4 46122280 */ add.s $f10, $f4, $f18 /* 0873D8 7F0528A8 C7A40058 */ lwc1 $f4, 0x58($sp) /* 0873DC 7F0528AC E7AA0054 */ swc1 $f10, 0x54($sp) /* 0873E0 7F0528B0 C446002C */ lwc1 $f6, 0x2c($v0) /* 0873E4 7F0528B4 C7AA0040 */ lwc1 $f10, 0x40($sp) /* 0873E8 7F0528B8 46064402 */ mul.s $f16, $f8, $f6 /* 0873EC 7F0528BC 46102480 */ add.s $f18, $f4, $f16 /* 0873F0 7F0528C0 C7A4005C */ lwc1 $f4, 0x5c($sp) /* 0873F4 7F0528C4 E7B20058 */ swc1 $f18, 0x58($sp) /* 0873F8 7F0528C8 C448002C */ lwc1 $f8, 0x2c($v0) /* 0873FC 7F0528CC 46085182 */ mul.s $f6, $f10, $f8 /* 087400 7F0528D0 46062400 */ add.s $f16, $f4, $f6 /* 087404 7F0528D4 E7B0005C */ swc1 $f16, 0x5c($sp) .L7F0528D8: /* 087408 7F0528D8 C6120058 */ lwc1 $f18, 0x58($s0) /* 08740C 7F0528DC C7AA0054 */ lwc1 $f10, 0x54($sp) /* 087410 7F0528E0 C7A60058 */ lwc1 $f6, 0x58($sp) /* 087414 7F0528E4 26040018 */ addiu $a0, $s0, 0x18 /* 087418 7F0528E8 460A9201 */ sub.s $f8, $f18, $f10 /* 08741C 7F0528EC C7AA005C */ lwc1 $f10, 0x5c($sp) /* 087420 7F0528F0 8FA500A4 */ lw $a1, 0xa4($sp) /* 087424 7F0528F4 E7A80048 */ swc1 $f8, 0x48($sp) /* 087428 7F0528F8 C604005C */ lwc1 $f4, 0x5c($s0) /* 08742C 7F0528FC 46062401 */ sub.s $f16, $f4, $f6 /* 087430 7F052900 E7B0004C */ swc1 $f16, 0x4c($sp) /* 087434 7F052904 C6120060 */ lwc1 $f18, 0x60($s0) /* 087438 7F052908 460A9201 */ sub.s $f8, $f18, $f10 /* 08743C 7F05290C 0FC16008 */ jal matrix_4x4_copy /* 087440 7F052910 E7A80050 */ swc1 $f8, 0x50($sp) /* 087444 7F052914 27A40048 */ addiu $a0, $sp, 0x48 /* 087448 7F052918 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 08744C 7F05291C 27A50060 */ addiu $a1, $sp, 0x60 /* 087450 7F052920 27A40060 */ addiu $a0, $sp, 0x60 /* 087454 7F052924 0FC1601A */ jal matrix_4x4_multiply_in_place /* 087458 7F052928 8FA500A4 */ lw $a1, 0xa4($sp) /* 08745C 7F05292C 960D009A */ lhu $t5, 0x9a($s0) /* 087460 7F052930 24010009 */ li $at, 9 /* 087464 7F052934 55A1001D */ bnel $t5, $at, .L7F0529AC /* 087468 7F052938 8E180008 */ lw $t8, 8($s0) /* 08746C 7F05293C 8E0E0008 */ lw $t6, 8($s0) /* 087470 7F052940 3C018005 */ lui $at, %hi(D_80053328) /* 087474 7F052944 000E7880 */ sll $t7, $t6, 2 /* 087478 7F052948 05E1000D */ bgez $t7, .L7F052980 /* 08747C 7F05294C 00000000 */ nop /* 087480 7F052950 3C018005 */ lui $at, %hi(D_80053324) /* 087484 7F052954 C4203324 */ lwc1 $f0, %lo(D_80053324)($at) /* 087488 7F052958 C60400B4 */ lwc1 $f4, 0xb4($s0) /* 08748C 7F05295C 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 087490 7F052960 44818000 */ mtc1 $at, $f16 /* 087494 7F052964 46002182 */ mul.s $f6, $f4, $f0 /* 087498 7F052968 27A50060 */ addiu $a1, $sp, 0x60 /* 08749C 7F05296C 46103483 */ div.s $f18, $f6, $f16 /* 0874A0 7F052970 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 0874A4 7F052974 46120301 */ sub.s $f12, $f0, $f18 /* 0874A8 7F052978 10000025 */ b .L7F052A10 /* 0874AC 7F05297C 27A40060 */ addiu $a0, $sp, 0x60 .L7F052980: /* 0874B0 7F052980 C4203328 */ lwc1 $f0, %lo(D_80053328)($at) /* 0874B4 7F052984 C60A00B4 */ lwc1 $f10, 0xb4($s0) /* 0874B8 7F052988 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 0874BC 7F05298C 44812000 */ mtc1 $at, $f4 /* 0874C0 7F052990 46005202 */ mul.s $f8, $f10, $f0 /* 0874C4 7F052994 27A50060 */ addiu $a1, $sp, 0x60 /* 0874C8 7F052998 0FC161A2 */ jal matrix_4x4_set_rotation_around_z /* 0874CC 7F05299C 46044303 */ div.s $f12, $f8, $f4 /* 0874D0 7F0529A0 1000001B */ b .L7F052A10 /* 0874D4 7F0529A4 27A40060 */ addiu $a0, $sp, 0x60 /* 0874D8 7F0529A8 8E180008 */ lw $t8, 8($s0) .L7F0529AC: /* 0874DC 7F0529AC 3C018005 */ lui $at, %hi(D_80053330) /* 0874E0 7F0529B0 0018C880 */ sll $t9, $t8, 2 /* 0874E4 7F0529B4 0721000D */ bgez $t9, .L7F0529EC /* 0874E8 7F0529B8 00000000 */ nop /* 0874EC 7F0529BC 3C018005 */ lui $at, %hi(D_8005332C) /* 0874F0 7F0529C0 C420332C */ lwc1 $f0, %lo(D_8005332C)($at) /* 0874F4 7F0529C4 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 0874F8 7F0529C8 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 0874FC 7F0529CC 44819000 */ mtc1 $at, $f18 /* 087500 7F0529D0 46003402 */ mul.s $f16, $f6, $f0 /* 087504 7F0529D4 27A50060 */ addiu $a1, $sp, 0x60 /* 087508 7F0529D8 46128283 */ div.s $f10, $f16, $f18 /* 08750C 7F0529DC 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 087510 7F0529E0 460A0301 */ sub.s $f12, $f0, $f10 /* 087514 7F0529E4 1000000A */ b .L7F052A10 /* 087518 7F0529E8 27A40060 */ addiu $a0, $sp, 0x60 .L7F0529EC: /* 08751C 7F0529EC C4203330 */ lwc1 $f0, %lo(D_80053330)($at) /* 087520 7F0529F0 C60800B4 */ lwc1 $f8, 0xb4($s0) /* 087524 7F0529F4 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 087528 7F0529F8 44813000 */ mtc1 $at, $f6 /* 08752C 7F0529FC 46004102 */ mul.s $f4, $f8, $f0 /* 087530 7F052A00 27A50060 */ addiu $a1, $sp, 0x60 /* 087534 7F052A04 0FC1617F */ jal matrix_4x4_set_rotation_around_y /* 087538 7F052A08 46062303 */ div.s $f12, $f4, $f6 /* 08753C 7F052A0C 27A40060 */ addiu $a0, $sp, 0x60 .L7F052A10: /* 087540 7F052A10 0FC1601A */ jal matrix_4x4_multiply_in_place /* 087544 7F052A14 8FA500A4 */ lw $a1, 0xa4($sp) /* 087548 7F052A18 27A40054 */ addiu $a0, $sp, 0x54 /* 08754C 7F052A1C 0FC16259 */ jal matrix_4x4_set_identity_and_position /* 087550 7F052A20 27A50060 */ addiu $a1, $sp, 0x60 /* 087554 7F052A24 27A40060 */ addiu $a0, $sp, 0x60 /* 087558 7F052A28 0FC1601A */ jal matrix_4x4_multiply_in_place /* 08755C 7F052A2C 8FA500A4 */ lw $a1, 0xa4($sp) /* 087560 7F052A30 10000027 */ b .L7F052AD0 /* 087564 7F052A34 96080098 */ lhu $t0, 0x98($s0) /* 087568 7F052A38 24010006 */ li $at, 6 .L7F052A3C: /* 08756C 7F052A3C 10410004 */ beq $v0, $at, .L7F052A50 /* 087570 7F052A40 26040018 */ addiu $a0, $s0, 0x18 /* 087574 7F052A44 24010007 */ li $at, 7 /* 087578 7F052A48 54410009 */ bnel $v0, $at, .L7F052A70 /* 08757C 7F052A4C C61000A8 */ lwc1 $f16, 0xa8($s0) .L7F052A50: /* 087580 7F052A50 0FC16008 */ jal matrix_4x4_copy /* 087584 7F052A54 8FA500A4 */ lw $a1, 0xa4($sp) /* 087588 7F052A58 26040058 */ addiu $a0, $s0, 0x58 /* 08758C 7F052A5C 0FC16266 */ jal matrix_4x4_set_position /* 087590 7F052A60 8FA500A4 */ lw $a1, 0xa4($sp) /* 087594 7F052A64 1000001A */ b .L7F052AD0 /* 087598 7F052A68 96080098 */ lhu $t0, 0x98($s0) /* 08759C 7F052A6C C61000A8 */ lwc1 $f16, 0xa8($s0) .L7F052A70: /* 0875A0 7F052A70 C61200B4 */ lwc1 $f18, 0xb4($s0) /* 0875A4 7F052A74 C6080058 */ lwc1 $f8, 0x58($s0) /* 0875A8 7F052A78 26040018 */ addiu $a0, $s0, 0x18 /* 0875AC 7F052A7C 46128282 */ mul.s $f10, $f16, $f18 /* 0875B0 7F052A80 8FA500A4 */ lw $a1, 0xa4($sp) /* 0875B4 7F052A84 46085100 */ add.s $f4, $f10, $f8 /* 0875B8 7F052A88 E7A4002C */ swc1 $f4, 0x2c($sp) /* 0875BC 7F052A8C C61000B4 */ lwc1 $f16, 0xb4($s0) /* 0875C0 7F052A90 C60600AC */ lwc1 $f6, 0xac($s0) /* 0875C4 7F052A94 C60A005C */ lwc1 $f10, 0x5c($s0) /* 0875C8 7F052A98 46103482 */ mul.s $f18, $f6, $f16 /* 0875CC 7F052A9C 460A9200 */ add.s $f8, $f18, $f10 /* 0875D0 7F052AA0 E7A80030 */ swc1 $f8, 0x30($sp) /* 0875D4 7F052AA4 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 0875D8 7F052AA8 C60400B0 */ lwc1 $f4, 0xb0($s0) /* 0875DC 7F052AAC C6120060 */ lwc1 $f18, 0x60($s0) /* 0875E0 7F052AB0 46062402 */ mul.s $f16, $f4, $f6 /* 0875E4 7F052AB4 46128280 */ add.s $f10, $f16, $f18 /* 0875E8 7F052AB8 0FC16008 */ jal matrix_4x4_copy /* 0875EC 7F052ABC E7AA0034 */ swc1 $f10, 0x34($sp) /* 0875F0 7F052AC0 27A4002C */ addiu $a0, $sp, 0x2c /* 0875F4 7F052AC4 0FC16266 */ jal matrix_4x4_set_position /* 0875F8 7F052AC8 8FA500A4 */ lw $a1, 0xa4($sp) /* 0875FC 7F052ACC 96080098 */ lhu $t0, 0x98($s0) .L7F052AD0: /* 087600 7F052AD0 3C01BF80 */ li $at, 0xBF800000 # -1.000000 /* 087604 7F052AD4 31090008 */ andi $t1, $t0, 8 /* 087608 7F052AD8 51200005 */ beql $t1, $zero, .L7F052AF0 /* 08760C 7F052ADC 8FBF001C */ lw $ra, 0x1c($sp) /* 087610 7F052AE0 44816000 */ mtc1 $at, $f12 /* 087614 7F052AE4 0FC16293 */ jal matrix_column_3_scalar_multiply_2 /* 087618 7F052AE8 8FA500A4 */ lw $a1, 0xa4($sp) /* 08761C 7F052AEC 8FBF001C */ lw $ra, 0x1c($sp) .L7F052AF0: /* 087620 7F052AF0 8FB00018 */ lw $s0, 0x18($sp) /* 087624 7F052AF4 27BD00A0 */ addiu $sp, $sp, 0xa0 /* 087628 7F052AF8 03E00008 */ jr $ra /* 08762C 7F052AFC 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F052B00(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F052B00 /* 087630 7F052B00 27BDFF90 */ addiu $sp, $sp, -0x70 /* 087634 7F052B04 AFBF001C */ sw $ra, 0x1c($sp) /* 087638 7F052B08 AFB00018 */ sw $s0, 0x18($sp) /* 08763C 7F052B0C 8C8E0014 */ lw $t6, 0x14($a0) /* 087640 7F052B10 248300D0 */ addiu $v1, $a0, 0xd0 /* 087644 7F052B14 00808025 */ move $s0, $a0 /* 087648 7F052B18 8DCF0008 */ lw $t7, 8($t6) /* 08764C 7F052B1C 27A5002C */ addiu $a1, $sp, 0x2c /* 087650 7F052B20 8DF80000 */ lw $t8, ($t7) /* 087654 7F052B24 8F190014 */ lw $t9, 0x14($t8) /* 087658 7F052B28 8F220004 */ lw $v0, 4($t9) /* 08765C 7F052B2C 8C410000 */ lw $at, ($v0) /* 087660 7F052B30 AC610000 */ sw $at, ($v1) /* 087664 7F052B34 8C4A0004 */ lw $t2, 4($v0) /* 087668 7F052B38 AC6A0004 */ sw $t2, 4($v1) /* 08766C 7F052B3C 8C410008 */ lw $at, 8($v0) /* 087670 7F052B40 AC610008 */ sw $at, 8($v1) /* 087674 7F052B44 8C4A000C */ lw $t2, 0xc($v0) /* 087678 7F052B48 AC6A000C */ sw $t2, 0xc($v1) /* 08767C 7F052B4C 8C410010 */ lw $at, 0x10($v0) /* 087680 7F052B50 AC610010 */ sw $at, 0x10($v1) /* 087684 7F052B54 8C4A0014 */ lw $t2, 0x14($v0) /* 087688 7F052B58 AC6A0014 */ sw $t2, 0x14($v1) /* 08768C 7F052B5C 8C410018 */ lw $at, 0x18($v0) /* 087690 7F052B60 AC610018 */ sw $at, 0x18($v1) /* 087694 7F052B64 948B0098 */ lhu $t3, 0x98($a0) /* 087698 7F052B68 316C0004 */ andi $t4, $t3, 4 /* 08769C 7F052B6C 51800015 */ beql $t4, $zero, .L7F052BC4 /* 0876A0 7F052B70 C61000B4 */ lwc1 $f16, 0xb4($s0) /* 0876A4 7F052B74 948D009A */ lhu $t5, 0x9a($a0) /* 0876A8 7F052B78 24010004 */ li $at, 4 /* 0876AC 7F052B7C 55A1000A */ bnel $t5, $at, .L7F052BA8 /* 0876B0 7F052B80 C4400004 */ lwc1 $f0, 4($v0) /* 0876B4 7F052B84 C4400010 */ lwc1 $f0, 0x10($v0) /* 0876B8 7F052B88 C444000C */ lwc1 $f4, 0xc($v0) /* 0876BC 7F052B8C C48800B4 */ lwc1 $f8, 0xb4($a0) /* 0876C0 7F052B90 46002181 */ sub.s $f6, $f4, $f0 /* 0876C4 7F052B94 46083282 */ mul.s $f10, $f6, $f8 /* 0876C8 7F052B98 460A0400 */ add.s $f16, $f0, $f10 /* 0876CC 7F052B9C 10000008 */ b .L7F052BC0 /* 0876D0 7F052BA0 E49000E0 */ swc1 $f16, 0xe0($a0) /* 0876D4 7F052BA4 C4400004 */ lwc1 $f0, 4($v0) .L7F052BA8: /* 0876D8 7F052BA8 C4520008 */ lwc1 $f18, 8($v0) /* 0876DC 7F052BAC C60600B4 */ lwc1 $f6, 0xb4($s0) /* 0876E0 7F052BB0 46009101 */ sub.s $f4, $f18, $f0 /* 0876E4 7F052BB4 46062202 */ mul.s $f8, $f4, $f6 /* 0876E8 7F052BB8 46080280 */ add.s $f10, $f0, $f8 /* 0876EC 7F052BBC E60A00D4 */ swc1 $f10, 0xd4($s0) .L7F052BC0: /* 0876F0 7F052BC0 C61000B4 */ lwc1 $f16, 0xb4($s0) .L7F052BC4: /* 0876F4 7F052BC4 C6120088 */ lwc1 $f18, 0x88($s0) /* 0876F8 7F052BC8 02002025 */ move $a0, $s0 /* 0876FC 7F052BCC 4610903E */ c.le.s $f18, $f16 /* 087700 7F052BD0 00000000 */ nop /* 087704 7F052BD4 45000004 */ bc1f .L7F052BE8 /* 087708 7F052BD8 00000000 */ nop /* 08770C 7F052BDC 8E0E0068 */ lw $t6, 0x68($s0) /* 087710 7F052BE0 10000065 */ b .L7F052D78 /* 087714 7F052BE4 ADC00000 */ sw $zero, ($t6) .L7F052BE8: /* 087718 7F052BE8 0FC149BB */ jal sub_GAME_7F0526EC /* 08771C 7F052BEC AFA30028 */ sw $v1, 0x28($sp) /* 087720 7F052BF0 8E070068 */ lw $a3, 0x68($s0) /* 087724 7F052BF4 8FA40028 */ lw $a0, 0x28($sp) /* 087728 7F052BF8 27A5002C */ addiu $a1, $sp, 0x2c /* 08772C 7F052BFC 0FC0FD50 */ jal sub_GAME_7F03F540 /* 087730 7F052C00 24E60004 */ addiu $a2, $a3, 4 /* 087734 7F052C04 9602009A */ lhu $v0, 0x9a($s0) /* 087738 7F052C08 24010004 */ li $at, 4 /* 08773C 7F052C0C 8FA40028 */ lw $a0, 0x28($sp) /* 087740 7F052C10 54410009 */ bnel $v0, $at, .L7F052C38 /* 087744 7F052C14 24010008 */ li $at, 8 /* 087748 7F052C18 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 08774C 7F052C1C 27A5002C */ addiu $a1, $sp, 0x2c /* 087750 7F052C20 C604005C */ lwc1 $f4, 0x5c($s0) /* 087754 7F052C24 8E0F0068 */ lw $t7, 0x68($s0) /* 087758 7F052C28 46040180 */ add.s $f6, $f0, $f4 /* 08775C 7F052C2C 1000001B */ b .L7F052C9C /* 087760 7F052C30 E5E60048 */ swc1 $f6, 0x48($t7) /* 087764 7F052C34 24010008 */ li $at, 8 .L7F052C38: /* 087768 7F052C38 14410008 */ bne $v0, $at, .L7F052C5C /* 08776C 7F052C3C 8FA40028 */ lw $a0, 0x28($sp) /* 087770 7F052C40 3C018005 */ lui $at, %hi(D_80053334) /* 087774 7F052C44 C42A3334 */ lwc1 $f10, %lo(D_80053334)($at) /* 087778 7F052C48 C608005C */ lwc1 $f8, 0x5c($s0) /* 08777C 7F052C4C 8E180068 */ lw $t8, 0x68($s0) /* 087780 7F052C50 460A4401 */ sub.s $f16, $f8, $f10 /* 087784 7F052C54 10000011 */ b .L7F052C9C /* 087788 7F052C58 E7100048 */ swc1 $f16, 0x48($t8) .L7F052C5C: /* 08778C 7F052C5C 0FC0FA6F */ jal sub_GAME_7F03E9BC /* 087790 7F052C60 27A5002C */ addiu $a1, $sp, 0x2c /* 087794 7F052C64 C7B20060 */ lwc1 $f18, 0x60($sp) /* 087798 7F052C68 8E190068 */ lw $t9, 0x68($s0) /* 08779C 7F052C6C 46120100 */ add.s $f4, $f0, $f18 /* 0877A0 7F052C70 E7240048 */ swc1 $f4, 0x48($t9) /* 0877A4 7F052C74 96090098 */ lhu $t1, 0x98($s0) /* 0877A8 7F052C78 31280001 */ andi $t0, $t1, 1 /* 0877AC 7F052C7C 51000008 */ beql $t0, $zero, .L7F052CA0 /* 0877B0 7F052C80 9602009A */ lhu $v0, 0x9a($s0) /* 0877B4 7F052C84 8E070068 */ lw $a3, 0x68($s0) /* 0877B8 7F052C88 3C01447A */ li $at, 0x447A0000 # 1000.000000 /* 0877BC 7F052C8C 44814000 */ mtc1 $at, $f8 /* 0877C0 7F052C90 C4E60048 */ lwc1 $f6, 0x48($a3) /* 0877C4 7F052C94 46083281 */ sub.s $f10, $f6, $f8 /* 0877C8 7F052C98 E4EA0048 */ swc1 $f10, 0x48($a3) .L7F052C9C: /* 0877CC 7F052C9C 9602009A */ lhu $v0, 0x9a($s0) .L7F052CA0: /* 0877D0 7F052CA0 24010006 */ li $at, 6 /* 0877D4 7F052CA4 14410008 */ bne $v0, $at, .L7F052CC8 /* 0877D8 7F052CA8 3C018005 */ lui $at, %hi(D_80053338) /* 0877DC 7F052CAC C4303338 */ lwc1 $f16, %lo(D_80053338)($at) /* 0877E0 7F052CB0 C6120084 */ lwc1 $f18, 0x84($s0) /* 0877E4 7F052CB4 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 0877E8 7F052CB8 46128102 */ mul.s $f4, $f16, $f18 /* 0877EC 7F052CBC 4606203C */ c.lt.s $f4, $f6 /* 0877F0 7F052CC0 00000000 */ nop /* 0877F4 7F052CC4 4501000B */ bc1t .L7F052CF4 .L7F052CC8: /* 0877F8 7F052CC8 24010007 */ li $at, 7 /* 0877FC 7F052CCC 14410010 */ bne $v0, $at, .L7F052D10 /* 087800 7F052CD0 3C018005 */ lui $at, %hi(D_8005333C) /* 087804 7F052CD4 C428333C */ lwc1 $f8, %lo(D_8005333C)($at) /* 087808 7F052CD8 C60A0084 */ lwc1 $f10, 0x84($s0) /* 08780C 7F052CDC C61200B4 */ lwc1 $f18, 0xb4($s0) /* 087810 7F052CE0 460A4402 */ mul.s $f16, $f8, $f10 /* 087814 7F052CE4 4612803C */ c.lt.s $f16, $f18 /* 087818 7F052CE8 00000000 */ nop /* 08781C 7F052CEC 45020009 */ bc1fl .L7F052D14 /* 087820 7F052CF0 24010008 */ li $at, 8 .L7F052CF4: /* 087824 7F052CF4 8E070068 */ lw $a3, 0x68($s0) /* 087828 7F052CF8 3C014248 */ li $at, 0x42480000 # 50.000000 /* 08782C 7F052CFC 44813000 */ mtc1 $at, $f6 /* 087830 7F052D00 C4E40048 */ lwc1 $f4, 0x48($a3) /* 087834 7F052D04 46062200 */ add.s $f8, $f4, $f6 /* 087838 7F052D08 1000001B */ b .L7F052D78 /* 08783C 7F052D0C E4E80044 */ swc1 $f8, 0x44($a3) .L7F052D10: /* 087840 7F052D10 24010008 */ li $at, 8 .L7F052D14: /* 087844 7F052D14 14410008 */ bne $v0, $at, .L7F052D38 /* 087848 7F052D18 8FA40028 */ lw $a0, 0x28($sp) /* 08784C 7F052D1C 3C01447A */ li $at, 0x447A0000 # 1000.000000 /* 087850 7F052D20 44818000 */ mtc1 $at, $f16 /* 087854 7F052D24 C60A005C */ lwc1 $f10, 0x5c($s0) /* 087858 7F052D28 8E0A0068 */ lw $t2, 0x68($s0) /* 08785C 7F052D2C 46105480 */ add.s $f18, $f10, $f16 /* 087860 7F052D30 10000011 */ b .L7F052D78 /* 087864 7F052D34 E5520044 */ swc1 $f18, 0x44($t2) .L7F052D38: /* 087868 7F052D38 0FC0FA97 */ jal sub_GAME_7F03EA5C /* 08786C 7F052D3C 27A5002C */ addiu $a1, $sp, 0x2c /* 087870 7F052D40 C7A40060 */ lwc1 $f4, 0x60($sp) /* 087874 7F052D44 8E0B0068 */ lw $t3, 0x68($s0) /* 087878 7F052D48 46040180 */ add.s $f6, $f0, $f4 /* 08787C 7F052D4C E5660044 */ swc1 $f6, 0x44($t3) /* 087880 7F052D50 960C0098 */ lhu $t4, 0x98($s0) /* 087884 7F052D54 318D0001 */ andi $t5, $t4, 1 /* 087888 7F052D58 51A00008 */ beql $t5, $zero, .L7F052D7C /* 08788C 7F052D5C 8FBF001C */ lw $ra, 0x1c($sp) /* 087890 7F052D60 8E070068 */ lw $a3, 0x68($s0) /* 087894 7F052D64 3C01447A */ li $at, 0x447A0000 # 1000.000000 /* 087898 7F052D68 44815000 */ mtc1 $at, $f10 /* 08789C 7F052D6C C4E80044 */ lwc1 $f8, 0x44($a3) /* 0878A0 7F052D70 460A4400 */ add.s $f16, $f8, $f10 /* 0878A4 7F052D74 E4F00044 */ swc1 $f16, 0x44($a3) .L7F052D78: /* 0878A8 7F052D78 8FBF001C */ lw $ra, 0x1c($sp) .L7F052D7C: /* 0878AC 7F052D7C 8FB00018 */ lw $s0, 0x18($sp) /* 0878B0 7F052D80 27BD0070 */ addiu $sp, $sp, 0x70 /* 0878B4 7F052D84 03E00008 */ jr $ra /* 0878B8 7F052D88 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F052D8C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F052D8C /* 0878BC 7F052D8C 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 0878C0 7F052D90 AFBF003C */ sw $ra, 0x3c($sp) /* 0878C4 7F052D94 AFBE0038 */ sw $fp, 0x38($sp) /* 0878C8 7F052D98 AFB70034 */ sw $s7, 0x34($sp) /* 0878CC 7F052D9C AFB60030 */ sw $s6, 0x30($sp) /* 0878D0 7F052DA0 AFB5002C */ sw $s5, 0x2c($sp) /* 0878D4 7F052DA4 AFB40028 */ sw $s4, 0x28($sp) /* 0878D8 7F052DA8 AFB30024 */ sw $s3, 0x24($sp) /* 0878DC 7F052DAC AFB20020 */ sw $s2, 0x20($sp) /* 0878E0 7F052DB0 AFB1001C */ sw $s1, 0x1c($sp) /* 0878E4 7F052DB4 AFB00018 */ sw $s0, 0x18($sp) /* 0878E8 7F052DB8 948E0098 */ lhu $t6, 0x98($a0) /* 0878EC 7F052DBC 0080B025 */ move $s6, $a0 /* 0878F0 7F052DC0 31CF0004 */ andi $t7, $t6, 4 /* 0878F4 7F052DC4 51E001E9 */ beql $t7, $zero, .L7F05356C /* 0878F8 7F052DC8 8FBF003C */ lw $ra, 0x3c($sp) /* 0878FC 7F052DCC 8C840014 */ lw $a0, 0x14($a0) /* 087900 7F052DD0 8C980008 */ lw $t8, 8($a0) /* 087904 7F052DD4 8F190000 */ lw $t9, ($t8) /* 087908 7F052DD8 8F2E0014 */ lw $t6, 0x14($t9) /* 08790C 7F052DDC 8DC50014 */ lw $a1, 0x14($t6) /* 087910 7F052DE0 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 087914 7F052DE4 8CB50004 */ lw $s5, 4($a1) /* 087918 7F052DE8 96CF009A */ lhu $t7, 0x9a($s6) /* 08791C 7F052DEC 24140004 */ li $s4, 4 /* 087920 7F052DF0 0040B825 */ move $s7, $v0 /* 087924 7F052DF4 168F000B */ bne $s4, $t7, .L7F052E24 /* 087928 7F052DF8 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 08792C 7F052DFC 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 087930 7F052E00 44813000 */ mtc1 $at, $f6 /* 087934 7F052E04 C6C400E0 */ lwc1 $f4, 0xe0($s6) /* 087938 7F052E08 46062200 */ add.s $f8, $f4, $f6 /* 08793C 7F052E0C 4600428D */ trunc.w.s $f10, $f8 /* 087940 7F052E10 440D5000 */ mfc1 $t5, $f10 /* 087944 7F052E14 00000000 */ nop /* 087948 7F052E18 000DCC00 */ sll $t9, $t5, 0x10 /* 08794C 7F052E1C 1000000A */ b .L7F052E48 /* 087950 7F052E20 00196C03 */ sra $t5, $t9, 0x10 .L7F052E24: /* 087954 7F052E24 C6D000D4 */ lwc1 $f16, 0xd4($s6) /* 087958 7F052E28 44819000 */ mtc1 $at, $f18 /* 08795C 7F052E2C 00000000 */ nop /* 087960 7F052E30 46128100 */ add.s $f4, $f16, $f18 /* 087964 7F052E34 4600218D */ trunc.w.s $f6, $f4 /* 087968 7F052E38 440D3000 */ mfc1 $t5, $f6 /* 08796C 7F052E3C 00000000 */ nop /* 087970 7F052E40 000DC400 */ sll $t8, $t5, 0x10 /* 087974 7F052E44 00186C03 */ sra $t5, $t8, 0x10 .L7F052E48: /* 087978 7F052E48 86A4000C */ lh $a0, 0xc($s5) /* 08797C 7F052E4C 0FC2F5B1 */ jal sub_GAME_7F0BD6C4 /* 087980 7F052E50 A7AD0042 */ sh $t5, 0x42($sp) /* 087984 7F052E54 87AD0042 */ lh $t5, 0x42($sp) /* 087988 7F052E58 AEE20000 */ sw $v0, ($s7) /* 08798C 7F052E5C 86AE000C */ lh $t6, 0xc($s5) /* 087990 7F052E60 00001825 */ move $v1, $zero /* 087994 7F052E64 0000F025 */ move $fp, $zero /* 087998 7F052E68 05C10003 */ bgez $t6, .L7F052E78 /* 08799C 7F052E6C 000E7883 */ sra $t7, $t6, 2 /* 0879A0 7F052E70 25C10003 */ addiu $at, $t6, 3 /* 0879A4 7F052E74 00017883 */ sra $t7, $at, 2 .L7F052E78: /* 0879A8 7F052E78 19E001BB */ blez $t7, .L7F053568 /* 0879AC 7F052E7C 00001825 */ move $v1, $zero .L7F052E80: /* 0879B0 7F052E80 001E9900 */ sll $s3, $fp, 4 .L7F052E84: /* 0879B4 7F052E84 8EF80000 */ lw $t8, ($s7) /* 0879B8 7F052E88 24670002 */ addiu $a3, $v1, 2 /* 0879BC 7F052E8C 246C0003 */ addiu $t4, $v1, 3 /* 0879C0 7F052E90 03131021 */ addu $v0, $t8, $s3 /* 0879C4 7F052E94 24720001 */ addiu $s2, $v1, 1 /* 0879C8 7F052E98 00032100 */ sll $a0, $v1, 4 /* 0879CC 7F052E9C 00445821 */ addu $t3, $v0, $a0 /* 0879D0 7F052EA0 06410004 */ bgez $s2, .L7F052EB4 /* 0879D4 7F052EA4 32450003 */ andi $a1, $s2, 3 /* 0879D8 7F052EA8 10A00002 */ beqz $a1, .L7F052EB4 /* 0879DC 7F052EAC 00000000 */ nop /* 0879E0 7F052EB0 24A5FFFC */ addiu $a1, $a1, -4 .L7F052EB4: /* 0879E4 7F052EB4 0005C900 */ sll $t9, $a1, 4 /* 0879E8 7F052EB8 03202825 */ move $a1, $t9 /* 0879EC 7F052EBC 0059F821 */ addu $ra, $v0, $t9 /* 0879F0 7F052EC0 04E10004 */ bgez $a3, .L7F052ED4 /* 0879F4 7F052EC4 30EE0003 */ andi $t6, $a3, 3 /* 0879F8 7F052EC8 11C00002 */ beqz $t6, .L7F052ED4 /* 0879FC 7F052ECC 00000000 */ nop /* 087A00 7F052ED0 25CEFFFC */ addiu $t6, $t6, -4 .L7F052ED4: /* 087A04 7F052ED4 000E7900 */ sll $t7, $t6, 4 /* 087A08 7F052ED8 8EAE0008 */ lw $t6, 8($s5) /* 087A0C 7F052EDC 01E03825 */ move $a3, $t7 /* 087A10 7F052EE0 004F8021 */ addu $s0, $v0, $t7 /* 087A14 7F052EE4 01D34821 */ addu $t1, $t6, $s3 /* 087A18 7F052EE8 05810004 */ bgez $t4, .L7F052EFC /* 087A1C 7F052EEC 31980003 */ andi $t8, $t4, 3 /* 087A20 7F052EF0 13000002 */ beqz $t8, .L7F052EFC /* 087A24 7F052EF4 00000000 */ nop /* 087A28 7F052EF8 2718FFFC */ addiu $t8, $t8, -4 .L7F052EFC: /* 087A2C 7F052EFC 00186100 */ sll $t4, $t8, 4 /* 087A30 7F052F00 01275021 */ addu $t2, $t1, $a3 /* 087A34 7F052F04 004C8821 */ addu $s1, $v0, $t4 /* 087A38 7F052F08 01243021 */ addu $a2, $t1, $a0 /* 087A3C 7F052F0C 01254021 */ addu $t0, $t1, $a1 /* 087A40 7F052F10 14600021 */ bnez $v1, .L7F052F98 /* 087A44 7F052F14 012C3821 */ addu $a3, $t1, $t4 /* 087A48 7F052F18 8CC10000 */ lw $at, ($a2) /* 087A4C 7F052F1C AD610000 */ sw $at, ($t3) /* 087A50 7F052F20 8CD80004 */ lw $t8, 4($a2) /* 087A54 7F052F24 AD780004 */ sw $t8, 4($t3) /* 087A58 7F052F28 8CC10008 */ lw $at, 8($a2) /* 087A5C 7F052F2C AD610008 */ sw $at, 8($t3) /* 087A60 7F052F30 8CD8000C */ lw $t8, 0xc($a2) /* 087A64 7F052F34 AD78000C */ sw $t8, 0xc($t3) /* 087A68 7F052F38 8D010000 */ lw $at, ($t0) /* 087A6C 7F052F3C AFE10000 */ sw $at, ($ra) /* 087A70 7F052F40 8D0E0004 */ lw $t6, 4($t0) /* 087A74 7F052F44 AFEE0004 */ sw $t6, 4($ra) /* 087A78 7F052F48 8D010008 */ lw $at, 8($t0) /* 087A7C 7F052F4C AFE10008 */ sw $at, 8($ra) /* 087A80 7F052F50 8D0E000C */ lw $t6, 0xc($t0) /* 087A84 7F052F54 AFEE000C */ sw $t6, 0xc($ra) /* 087A88 7F052F58 8D410000 */ lw $at, ($t2) /* 087A8C 7F052F5C AE010000 */ sw $at, ($s0) /* 087A90 7F052F60 8D580004 */ lw $t8, 4($t2) /* 087A94 7F052F64 AE180004 */ sw $t8, 4($s0) /* 087A98 7F052F68 8D410008 */ lw $at, 8($t2) /* 087A9C 7F052F6C AE010008 */ sw $at, 8($s0) /* 087AA0 7F052F70 8D58000C */ lw $t8, 0xc($t2) /* 087AA4 7F052F74 AE18000C */ sw $t8, 0xc($s0) /* 087AA8 7F052F78 8CE10000 */ lw $at, ($a3) /* 087AAC 7F052F7C AE210000 */ sw $at, ($s1) /* 087AB0 7F052F80 8CEE0004 */ lw $t6, 4($a3) /* 087AB4 7F052F84 AE2E0004 */ sw $t6, 4($s1) /* 087AB8 7F052F88 8CE10008 */ lw $at, 8($a3) /* 087ABC 7F052F8C AE210008 */ sw $at, 8($s1) /* 087AC0 7F052F90 8CEE000C */ lw $t6, 0xc($a3) /* 087AC4 7F052F94 AE2E000C */ sw $t6, 0xc($s1) .L7F052F98: /* 087AC8 7F052F98 96CF009A */ lhu $t7, 0x9a($s6) /* 087ACC 7F052F9C 568F00B5 */ bnel $s4, $t7, .L7F053274 /* 087AD0 7F052FA0 84C50000 */ lh $a1, ($a2) /* 087AD4 7F052FA4 84C40002 */ lh $a0, 2($a2) /* 087AD8 7F052FA8 008D082A */ slt $at, $a0, $t5 /* 087ADC 7F052FAC 14200162 */ bnez $at, .L7F053538 /* 087AE0 7F052FB0 00000000 */ nop /* 087AE4 7F052FB4 84C50000 */ lh $a1, ($a2) /* 087AE8 7F052FB8 85180000 */ lh $t8, ($t0) /* 087AEC 7F052FBC 57050039 */ bnel $t8, $a1, .L7F0530A4 /* 087AF0 7F052FC0 85590000 */ lh $t9, ($t2) /* 087AF4 7F052FC4 85190004 */ lh $t9, 4($t0) /* 087AF8 7F052FC8 84CE0004 */ lh $t6, 4($a2) /* 087AFC 7F052FCC 572E0035 */ bnel $t9, $t6, .L7F0530A4 /* 087B00 7F052FD0 85590000 */ lh $t9, ($t2) /* 087B04 7F052FD4 85090002 */ lh $t1, 2($t0) /* 087B08 7F052FD8 51240032 */ beql $t1, $a0, .L7F0530A4 /* 087B0C 7F052FDC 85590000 */ lh $t9, ($t2) /* 087B10 7F052FE0 84C20008 */ lh $v0, 8($a2) /* 087B14 7F052FE4 85180008 */ lh $t8, 8($t0) /* 087B18 7F052FE8 008D7823 */ subu $t7, $a0, $t5 /* 087B1C 7F052FEC 0302C823 */ subu $t9, $t8, $v0 /* 087B20 7F052FF0 01F90019 */ multu $t7, $t9 /* 087B24 7F052FF4 0089C023 */ subu $t8, $a0, $t1 /* 087B28 7F052FF8 00007012 */ mflo $t6 /* 087B2C 7F052FFC 00000000 */ nop /* 087B30 7F053000 00000000 */ nop /* 087B34 7F053004 01D8001A */ div $zero, $t6, $t8 /* 087B38 7F053008 00007812 */ mflo $t7 /* 087B3C 7F05300C 01E2C821 */ addu $t9, $t7, $v0 /* 087B40 7F053010 A5790008 */ sh $t9, 8($t3) /* 087B44 7F053014 17000002 */ bnez $t8, .L7F053020 /* 087B48 7F053018 00000000 */ nop /* 087B4C 7F05301C 0007000D */ break 7 .L7F053020: /* 087B50 7F053020 2401FFFF */ li $at, -1 /* 087B54 7F053024 17010004 */ bne $t8, $at, .L7F053038 /* 087B58 7F053028 3C018000 */ lui $at, 0x8000 /* 087B5C 7F05302C 15C10002 */ bne $t6, $at, .L7F053038 /* 087B60 7F053030 00000000 */ nop /* 087B64 7F053034 0006000D */ break 6 .L7F053038: /* 087B68 7F053038 8518000A */ lh $t8, 0xa($t0) /* 087B6C 7F05303C 84C3000A */ lh $v1, 0xa($a2) /* 087B70 7F053040 84C40002 */ lh $a0, 2($a2) /* 087B74 7F053044 03037823 */ subu $t7, $t8, $v1 /* 087B78 7F053048 008D7023 */ subu $t6, $a0, $t5 /* 087B7C 7F05304C 01CF0019 */ multu $t6, $t7 /* 087B80 7F053050 85180002 */ lh $t8, 2($t0) /* 087B84 7F053054 00987023 */ subu $t6, $a0, $t8 /* 087B88 7F053058 0000C812 */ mflo $t9 /* 087B8C 7F05305C 00000000 */ nop /* 087B90 7F053060 00000000 */ nop /* 087B94 7F053064 032E001A */ div $zero, $t9, $t6 /* 087B98 7F053068 00007812 */ mflo $t7 /* 087B9C 7F05306C 01E3C021 */ addu $t8, $t7, $v1 /* 087BA0 7F053070 15C00002 */ bnez $t6, .L7F05307C /* 087BA4 7F053074 00000000 */ nop /* 087BA8 7F053078 0007000D */ break 7 .L7F05307C: /* 087BAC 7F05307C 2401FFFF */ li $at, -1 /* 087BB0 7F053080 15C10004 */ bne $t6, $at, .L7F053094 /* 087BB4 7F053084 3C018000 */ lui $at, 0x8000 /* 087BB8 7F053088 17210002 */ bne $t9, $at, .L7F053094 /* 087BBC 7F05308C 00000000 */ nop /* 087BC0 7F053090 0006000D */ break 6 .L7F053094: /* 087BC4 7F053094 A578000A */ sh $t8, 0xa($t3) /* 087BC8 7F053098 10000073 */ b .L7F053268 /* 087BCC 7F05309C 00000000 */ nop /* 087BD0 7F0530A0 85590000 */ lh $t9, ($t2) .L7F0530A4: /* 087BD4 7F0530A4 57250039 */ bnel $t9, $a1, .L7F05318C /* 087BD8 7F0530A8 84EE0000 */ lh $t6, ($a3) /* 087BDC 7F0530AC 854E0004 */ lh $t6, 4($t2) /* 087BE0 7F0530B0 84CF0004 */ lh $t7, 4($a2) /* 087BE4 7F0530B4 55CF0035 */ bnel $t6, $t7, .L7F05318C /* 087BE8 7F0530B8 84EE0000 */ lh $t6, ($a3) /* 087BEC 7F0530BC 85480002 */ lh $t0, 2($t2) /* 087BF0 7F0530C0 51040032 */ beql $t0, $a0, .L7F05318C /* 087BF4 7F0530C4 84EE0000 */ lh $t6, ($a3) /* 087BF8 7F0530C8 84C20008 */ lh $v0, 8($a2) /* 087BFC 7F0530CC 85590008 */ lh $t9, 8($t2) /* 087C00 7F0530D0 008DC023 */ subu $t8, $a0, $t5 /* 087C04 7F0530D4 03227023 */ subu $t6, $t9, $v0 /* 087C08 7F0530D8 030E0019 */ multu $t8, $t6 /* 087C0C 7F0530DC 0088C823 */ subu $t9, $a0, $t0 /* 087C10 7F0530E0 00007812 */ mflo $t7 /* 087C14 7F0530E4 00000000 */ nop /* 087C18 7F0530E8 00000000 */ nop /* 087C1C 7F0530EC 01F9001A */ div $zero, $t7, $t9 /* 087C20 7F0530F0 0000C012 */ mflo $t8 /* 087C24 7F0530F4 03027021 */ addu $t6, $t8, $v0 /* 087C28 7F0530F8 A56E0008 */ sh $t6, 8($t3) /* 087C2C 7F0530FC 17200002 */ bnez $t9, .L7F053108 /* 087C30 7F053100 00000000 */ nop /* 087C34 7F053104 0007000D */ break 7 .L7F053108: /* 087C38 7F053108 2401FFFF */ li $at, -1 /* 087C3C 7F05310C 17210004 */ bne $t9, $at, .L7F053120 /* 087C40 7F053110 3C018000 */ lui $at, 0x8000 /* 087C44 7F053114 15E10002 */ bne $t7, $at, .L7F053120 /* 087C48 7F053118 00000000 */ nop /* 087C4C 7F05311C 0006000D */ break 6 .L7F053120: /* 087C50 7F053120 8559000A */ lh $t9, 0xa($t2) /* 087C54 7F053124 84C3000A */ lh $v1, 0xa($a2) /* 087C58 7F053128 84C40002 */ lh $a0, 2($a2) /* 087C5C 7F05312C 0323C023 */ subu $t8, $t9, $v1 /* 087C60 7F053130 008D7823 */ subu $t7, $a0, $t5 /* 087C64 7F053134 01F80019 */ multu $t7, $t8 /* 087C68 7F053138 85590002 */ lh $t9, 2($t2) /* 087C6C 7F05313C 00997823 */ subu $t7, $a0, $t9 /* 087C70 7F053140 00007012 */ mflo $t6 /* 087C74 7F053144 00000000 */ nop /* 087C78 7F053148 00000000 */ nop /* 087C7C 7F05314C 01CF001A */ div $zero, $t6, $t7 /* 087C80 7F053150 0000C012 */ mflo $t8 /* 087C84 7F053154 0303C821 */ addu $t9, $t8, $v1 /* 087C88 7F053158 15E00002 */ bnez $t7, .L7F053164 /* 087C8C 7F05315C 00000000 */ nop /* 087C90 7F053160 0007000D */ break 7 .L7F053164: /* 087C94 7F053164 2401FFFF */ li $at, -1 /* 087C98 7F053168 15E10004 */ bne $t7, $at, .L7F05317C /* 087C9C 7F05316C 3C018000 */ lui $at, 0x8000 /* 087CA0 7F053170 15C10002 */ bne $t6, $at, .L7F05317C /* 087CA4 7F053174 00000000 */ nop /* 087CA8 7F053178 0006000D */ break 6 .L7F05317C: /* 087CAC 7F05317C A579000A */ sh $t9, 0xa($t3) /* 087CB0 7F053180 10000039 */ b .L7F053268 /* 087CB4 7F053184 00000000 */ nop /* 087CB8 7F053188 84EE0000 */ lh $t6, ($a3) .L7F05318C: /* 087CBC 7F05318C 15C50036 */ bne $t6, $a1, .L7F053268 /* 087CC0 7F053190 00000000 */ nop /* 087CC4 7F053194 84EF0004 */ lh $t7, 4($a3) /* 087CC8 7F053198 84D80004 */ lh $t8, 4($a2) /* 087CCC 7F05319C 15F80032 */ bne $t7, $t8, .L7F053268 /* 087CD0 7F0531A0 00000000 */ nop /* 087CD4 7F0531A4 84E50002 */ lh $a1, 2($a3) /* 087CD8 7F0531A8 10A4002F */ beq $a1, $a0, .L7F053268 /* 087CDC 7F0531AC 00000000 */ nop /* 087CE0 7F0531B0 84C20008 */ lh $v0, 8($a2) /* 087CE4 7F0531B4 84EE0008 */ lh $t6, 8($a3) /* 087CE8 7F0531B8 008DC823 */ subu $t9, $a0, $t5 /* 087CEC 7F0531BC 01C27823 */ subu $t7, $t6, $v0 /* 087CF0 7F0531C0 032F0019 */ multu $t9, $t7 /* 087CF4 7F0531C4 00857023 */ subu $t6, $a0, $a1 /* 087CF8 7F0531C8 0000C012 */ mflo $t8 /* 087CFC 7F0531CC 00000000 */ nop /* 087D00 7F0531D0 00000000 */ nop /* 087D04 7F0531D4 030E001A */ div $zero, $t8, $t6 /* 087D08 7F0531D8 0000C812 */ mflo $t9 /* 087D0C 7F0531DC 03227821 */ addu $t7, $t9, $v0 /* 087D10 7F0531E0 A56F0008 */ sh $t7, 8($t3) /* 087D14 7F0531E4 15C00002 */ bnez $t6, .L7F0531F0 /* 087D18 7F0531E8 00000000 */ nop /* 087D1C 7F0531EC 0007000D */ break 7 .L7F0531F0: /* 087D20 7F0531F0 2401FFFF */ li $at, -1 /* 087D24 7F0531F4 15C10004 */ bne $t6, $at, .L7F053208 /* 087D28 7F0531F8 3C018000 */ lui $at, 0x8000 /* 087D2C 7F0531FC 17010002 */ bne $t8, $at, .L7F053208 /* 087D30 7F053200 00000000 */ nop /* 087D34 7F053204 0006000D */ break 6 .L7F053208: /* 087D38 7F053208 84EE000A */ lh $t6, 0xa($a3) /* 087D3C 7F05320C 84C3000A */ lh $v1, 0xa($a2) /* 087D40 7F053210 84C40002 */ lh $a0, 2($a2) /* 087D44 7F053214 01C3C823 */ subu $t9, $t6, $v1 /* 087D48 7F053218 008DC023 */ subu $t8, $a0, $t5 /* 087D4C 7F05321C 03190019 */ multu $t8, $t9 /* 087D50 7F053220 84EE0002 */ lh $t6, 2($a3) /* 087D54 7F053224 008EC023 */ subu $t8, $a0, $t6 /* 087D58 7F053228 00007812 */ mflo $t7 /* 087D5C 7F05322C 00000000 */ nop /* 087D60 7F053230 00000000 */ nop /* 087D64 7F053234 01F8001A */ div $zero, $t7, $t8 /* 087D68 7F053238 0000C812 */ mflo $t9 /* 087D6C 7F05323C 03237021 */ addu $t6, $t9, $v1 /* 087D70 7F053240 A56E000A */ sh $t6, 0xa($t3) /* 087D74 7F053244 17000002 */ bnez $t8, .L7F053250 /* 087D78 7F053248 00000000 */ nop /* 087D7C 7F05324C 0007000D */ break 7 .L7F053250: /* 087D80 7F053250 2401FFFF */ li $at, -1 /* 087D84 7F053254 17010004 */ bne $t8, $at, .L7F053268 /* 087D88 7F053258 3C018000 */ lui $at, 0x8000 /* 087D8C 7F05325C 15E10002 */ bne $t7, $at, .L7F053268 /* 087D90 7F053260 00000000 */ nop /* 087D94 7F053264 0006000D */ break 6 .L7F053268: /* 087D98 7F053268 100000B3 */ b .L7F053538 /* 087D9C 7F05326C A56D0002 */ sh $t5, 2($t3) /* 087DA0 7F053270 84C50000 */ lh $a1, ($a2) .L7F053274: /* 087DA4 7F053274 01A5082A */ slt $at, $t5, $a1 /* 087DA8 7F053278 142000AF */ bnez $at, .L7F053538 /* 087DAC 7F05327C 00000000 */ nop /* 087DB0 7F053280 84C40002 */ lh $a0, 2($a2) /* 087DB4 7F053284 850F0002 */ lh $t7, 2($t0) /* 087DB8 7F053288 55E40039 */ bnel $t7, $a0, .L7F053370 /* 087DBC 7F05328C 85580002 */ lh $t8, 2($t2) /* 087DC0 7F053290 85180004 */ lh $t8, 4($t0) /* 087DC4 7F053294 84D90004 */ lh $t9, 4($a2) /* 087DC8 7F053298 57190035 */ bnel $t8, $t9, .L7F053370 /* 087DCC 7F05329C 85580002 */ lh $t8, 2($t2) /* 087DD0 7F0532A0 85090000 */ lh $t1, ($t0) /* 087DD4 7F0532A4 51250032 */ beql $t1, $a1, .L7F053370 /* 087DD8 7F0532A8 85580002 */ lh $t8, 2($t2) /* 087DDC 7F0532AC 84C20008 */ lh $v0, 8($a2) /* 087DE0 7F0532B0 850F0008 */ lh $t7, 8($t0) /* 087DE4 7F0532B4 01A57023 */ subu $t6, $t5, $a1 /* 087DE8 7F0532B8 01E2C023 */ subu $t8, $t7, $v0 /* 087DEC 7F0532BC 01D80019 */ multu $t6, $t8 /* 087DF0 7F0532C0 01257823 */ subu $t7, $t1, $a1 /* 087DF4 7F0532C4 0000C812 */ mflo $t9 /* 087DF8 7F0532C8 00000000 */ nop /* 087DFC 7F0532CC 00000000 */ nop /* 087E00 7F0532D0 032F001A */ div $zero, $t9, $t7 /* 087E04 7F0532D4 00007012 */ mflo $t6 /* 087E08 7F0532D8 01C2C021 */ addu $t8, $t6, $v0 /* 087E0C 7F0532DC A5780008 */ sh $t8, 8($t3) /* 087E10 7F0532E0 15E00002 */ bnez $t7, .L7F0532EC /* 087E14 7F0532E4 00000000 */ nop /* 087E18 7F0532E8 0007000D */ break 7 .L7F0532EC: /* 087E1C 7F0532EC 2401FFFF */ li $at, -1 /* 087E20 7F0532F0 15E10004 */ bne $t7, $at, .L7F053304 /* 087E24 7F0532F4 3C018000 */ lui $at, 0x8000 /* 087E28 7F0532F8 17210002 */ bne $t9, $at, .L7F053304 /* 087E2C 7F0532FC 00000000 */ nop /* 087E30 7F053300 0006000D */ break 6 .L7F053304: /* 087E34 7F053304 850F000A */ lh $t7, 0xa($t0) /* 087E38 7F053308 84C3000A */ lh $v1, 0xa($a2) /* 087E3C 7F05330C 84C50000 */ lh $a1, ($a2) /* 087E40 7F053310 01E37023 */ subu $t6, $t7, $v1 /* 087E44 7F053314 01A5C823 */ subu $t9, $t5, $a1 /* 087E48 7F053318 032E0019 */ multu $t9, $t6 /* 087E4C 7F05331C 850F0000 */ lh $t7, ($t0) /* 087E50 7F053320 01E5C823 */ subu $t9, $t7, $a1 /* 087E54 7F053324 0000C012 */ mflo $t8 /* 087E58 7F053328 00000000 */ nop /* 087E5C 7F05332C 00000000 */ nop /* 087E60 7F053330 0319001A */ div $zero, $t8, $t9 /* 087E64 7F053334 00007012 */ mflo $t6 /* 087E68 7F053338 01C37821 */ addu $t7, $t6, $v1 /* 087E6C 7F05333C 17200002 */ bnez $t9, .L7F053348 /* 087E70 7F053340 00000000 */ nop /* 087E74 7F053344 0007000D */ break 7 .L7F053348: /* 087E78 7F053348 2401FFFF */ li $at, -1 /* 087E7C 7F05334C 17210004 */ bne $t9, $at, .L7F053360 /* 087E80 7F053350 3C018000 */ lui $at, 0x8000 /* 087E84 7F053354 17010002 */ bne $t8, $at, .L7F053360 /* 087E88 7F053358 00000000 */ nop /* 087E8C 7F05335C 0006000D */ break 6 .L7F053360: /* 087E90 7F053360 A56F000A */ sh $t7, 0xa($t3) /* 087E94 7F053364 10000074 */ b .L7F053538 /* 087E98 7F053368 A56D0000 */ sh $t5, ($t3) /* 087E9C 7F05336C 85580002 */ lh $t8, 2($t2) .L7F053370: /* 087EA0 7F053370 57040039 */ bnel $t8, $a0, .L7F053458 /* 087EA4 7F053374 84F90002 */ lh $t9, 2($a3) /* 087EA8 7F053378 85590004 */ lh $t9, 4($t2) /* 087EAC 7F05337C 84CE0004 */ lh $t6, 4($a2) /* 087EB0 7F053380 572E0035 */ bnel $t9, $t6, .L7F053458 /* 087EB4 7F053384 84F90002 */ lh $t9, 2($a3) /* 087EB8 7F053388 85480000 */ lh $t0, ($t2) /* 087EBC 7F05338C 51050032 */ beql $t0, $a1, .L7F053458 /* 087EC0 7F053390 84F90002 */ lh $t9, 2($a3) /* 087EC4 7F053394 84C20008 */ lh $v0, 8($a2) /* 087EC8 7F053398 85580008 */ lh $t8, 8($t2) /* 087ECC 7F05339C 01A57823 */ subu $t7, $t5, $a1 /* 087ED0 7F0533A0 0302C823 */ subu $t9, $t8, $v0 /* 087ED4 7F0533A4 01F90019 */ multu $t7, $t9 /* 087ED8 7F0533A8 0105C023 */ subu $t8, $t0, $a1 /* 087EDC 7F0533AC 00007012 */ mflo $t6 /* 087EE0 7F0533B0 00000000 */ nop /* 087EE4 7F0533B4 00000000 */ nop /* 087EE8 7F0533B8 01D8001A */ div $zero, $t6, $t8 /* 087EEC 7F0533BC 00007812 */ mflo $t7 /* 087EF0 7F0533C0 01E2C821 */ addu $t9, $t7, $v0 /* 087EF4 7F0533C4 A5790008 */ sh $t9, 8($t3) /* 087EF8 7F0533C8 17000002 */ bnez $t8, .L7F0533D4 /* 087EFC 7F0533CC 00000000 */ nop /* 087F00 7F0533D0 0007000D */ break 7 .L7F0533D4: /* 087F04 7F0533D4 2401FFFF */ li $at, -1 /* 087F08 7F0533D8 17010004 */ bne $t8, $at, .L7F0533EC /* 087F0C 7F0533DC 3C018000 */ lui $at, 0x8000 /* 087F10 7F0533E0 15C10002 */ bne $t6, $at, .L7F0533EC /* 087F14 7F0533E4 00000000 */ nop /* 087F18 7F0533E8 0006000D */ break 6 .L7F0533EC: /* 087F1C 7F0533EC 8558000A */ lh $t8, 0xa($t2) /* 087F20 7F0533F0 84C3000A */ lh $v1, 0xa($a2) /* 087F24 7F0533F4 84C50000 */ lh $a1, ($a2) /* 087F28 7F0533F8 03037823 */ subu $t7, $t8, $v1 /* 087F2C 7F0533FC 01A57023 */ subu $t6, $t5, $a1 /* 087F30 7F053400 01CF0019 */ multu $t6, $t7 /* 087F34 7F053404 85580000 */ lh $t8, ($t2) /* 087F38 7F053408 03057023 */ subu $t6, $t8, $a1 /* 087F3C 7F05340C 0000C812 */ mflo $t9 /* 087F40 7F053410 00000000 */ nop /* 087F44 7F053414 00000000 */ nop /* 087F48 7F053418 032E001A */ div $zero, $t9, $t6 /* 087F4C 7F05341C 00007812 */ mflo $t7 /* 087F50 7F053420 01E3C021 */ addu $t8, $t7, $v1 /* 087F54 7F053424 15C00002 */ bnez $t6, .L7F053430 /* 087F58 7F053428 00000000 */ nop /* 087F5C 7F05342C 0007000D */ break 7 .L7F053430: /* 087F60 7F053430 2401FFFF */ li $at, -1 /* 087F64 7F053434 15C10004 */ bne $t6, $at, .L7F053448 /* 087F68 7F053438 3C018000 */ lui $at, 0x8000 /* 087F6C 7F05343C 17210002 */ bne $t9, $at, .L7F053448 /* 087F70 7F053440 00000000 */ nop /* 087F74 7F053444 0006000D */ break 6 .L7F053448: /* 087F78 7F053448 A578000A */ sh $t8, 0xa($t3) /* 087F7C 7F05344C 1000003A */ b .L7F053538 /* 087F80 7F053450 A56D0000 */ sh $t5, ($t3) /* 087F84 7F053454 84F90002 */ lh $t9, 2($a3) .L7F053458: /* 087F88 7F053458 57240037 */ bnel $t9, $a0, .L7F053538 /* 087F8C 7F05345C A56D0000 */ sh $t5, ($t3) /* 087F90 7F053460 84EE0004 */ lh $t6, 4($a3) /* 087F94 7F053464 84CF0004 */ lh $t7, 4($a2) /* 087F98 7F053468 55CF0033 */ bnel $t6, $t7, .L7F053538 /* 087F9C 7F05346C A56D0000 */ sh $t5, ($t3) /* 087FA0 7F053470 84E40000 */ lh $a0, ($a3) /* 087FA4 7F053474 50850030 */ beql $a0, $a1, .L7F053538 /* 087FA8 7F053478 A56D0000 */ sh $t5, ($t3) /* 087FAC 7F05347C 84C20008 */ lh $v0, 8($a2) /* 087FB0 7F053480 84F90008 */ lh $t9, 8($a3) /* 087FB4 7F053484 01A5C023 */ subu $t8, $t5, $a1 /* 087FB8 7F053488 03227023 */ subu $t6, $t9, $v0 /* 087FBC 7F05348C 030E0019 */ multu $t8, $t6 /* 087FC0 7F053490 0085C823 */ subu $t9, $a0, $a1 /* 087FC4 7F053494 00007812 */ mflo $t7 /* 087FC8 7F053498 00000000 */ nop /* 087FCC 7F05349C 00000000 */ nop /* 087FD0 7F0534A0 01F9001A */ div $zero, $t7, $t9 /* 087FD4 7F0534A4 0000C012 */ mflo $t8 /* 087FD8 7F0534A8 03027021 */ addu $t6, $t8, $v0 /* 087FDC 7F0534AC A56E0008 */ sh $t6, 8($t3) /* 087FE0 7F0534B0 17200002 */ bnez $t9, .L7F0534BC /* 087FE4 7F0534B4 00000000 */ nop /* 087FE8 7F0534B8 0007000D */ break 7 .L7F0534BC: /* 087FEC 7F0534BC 2401FFFF */ li $at, -1 /* 087FF0 7F0534C0 17210004 */ bne $t9, $at, .L7F0534D4 /* 087FF4 7F0534C4 3C018000 */ lui $at, 0x8000 /* 087FF8 7F0534C8 15E10002 */ bne $t7, $at, .L7F0534D4 /* 087FFC 7F0534CC 00000000 */ nop /* 088000 7F0534D0 0006000D */ break 6 .L7F0534D4: /* 088004 7F0534D4 84F9000A */ lh $t9, 0xa($a3) /* 088008 7F0534D8 84C3000A */ lh $v1, 0xa($a2) /* 08800C 7F0534DC 84C50000 */ lh $a1, ($a2) /* 088010 7F0534E0 0323C023 */ subu $t8, $t9, $v1 /* 088014 7F0534E4 01A57823 */ subu $t7, $t5, $a1 /* 088018 7F0534E8 01F80019 */ multu $t7, $t8 /* 08801C 7F0534EC 84F90000 */ lh $t9, ($a3) /* 088020 7F0534F0 03257823 */ subu $t7, $t9, $a1 /* 088024 7F0534F4 00007012 */ mflo $t6 /* 088028 7F0534F8 00000000 */ nop /* 08802C 7F0534FC 00000000 */ nop /* 088030 7F053500 01CF001A */ div $zero, $t6, $t7 /* 088034 7F053504 0000C012 */ mflo $t8 /* 088038 7F053508 0303C821 */ addu $t9, $t8, $v1 /* 08803C 7F05350C A579000A */ sh $t9, 0xa($t3) /* 088040 7F053510 15E00002 */ bnez $t7, .L7F05351C /* 088044 7F053514 00000000 */ nop /* 088048 7F053518 0007000D */ break 7 .L7F05351C: /* 08804C 7F05351C 2401FFFF */ li $at, -1 /* 088050 7F053520 15E10004 */ bne $t7, $at, .L7F053534 /* 088054 7F053524 3C018000 */ lui $at, 0x8000 /* 088058 7F053528 15C10002 */ bne $t6, $at, .L7F053534 /* 08805C 7F05352C 00000000 */ nop /* 088060 7F053530 0006000D */ break 6 .L7F053534: /* 088064 7F053534 A56D0000 */ sh $t5, ($t3) .L7F053538: /* 088068 7F053538 1654FE52 */ bne $s2, $s4, .L7F052E84 /* 08806C 7F05353C 02401825 */ move $v1, $s2 /* 088070 7F053540 86A2000C */ lh $v0, 0xc($s5) /* 088074 7F053544 27DE0004 */ addiu $fp, $fp, 4 /* 088078 7F053548 04410003 */ bgez $v0, .L7F053558 /* 08807C 7F05354C 00027083 */ sra $t6, $v0, 2 /* 088080 7F053550 24410003 */ addiu $at, $v0, 3 /* 088084 7F053554 00017083 */ sra $t6, $at, 2 .L7F053558: /* 088088 7F053558 000E1880 */ sll $v1, $t6, 2 /* 08808C 7F05355C 03C3082A */ slt $at, $fp, $v1 /* 088090 7F053560 5420FE47 */ bnezl $at, .L7F052E80 /* 088094 7F053564 00001825 */ move $v1, $zero .L7F053568: /* 088098 7F053568 8FBF003C */ lw $ra, 0x3c($sp) .L7F05356C: /* 08809C 7F05356C 8FB00018 */ lw $s0, 0x18($sp) /* 0880A0 7F053570 8FB1001C */ lw $s1, 0x1c($sp) /* 0880A4 7F053574 8FB20020 */ lw $s2, 0x20($sp) /* 0880A8 7F053578 8FB30024 */ lw $s3, 0x24($sp) /* 0880AC 7F05357C 8FB40028 */ lw $s4, 0x28($sp) /* 0880B0 7F053580 8FB5002C */ lw $s5, 0x2c($sp) /* 0880B4 7F053584 8FB60030 */ lw $s6, 0x30($sp) /* 0880B8 7F053588 8FB70034 */ lw $s7, 0x34($sp) /* 0880BC 7F05358C 8FBE0038 */ lw $fp, 0x38($sp) /* 0880C0 7F053590 03E00008 */ jr $ra /* 0880C4 7F053594 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #ifdef NONMATCHING void sub_GAME_7F053598(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F053598 /* 0880C8 7F053598 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0880CC 7F05359C AFBF0014 */ sw $ra, 0x14($sp) /* 0880D0 7F0535A0 8C8600F0 */ lw $a2, 0xf0($a0) /* 0880D4 7F0535A4 04C00003 */ bltz $a2, .L7F0535B4 /* 0880D8 7F0535A8 00C02025 */ move $a0, $a2 /* 0880DC 7F0535AC 0FC2E76F */ jal sub_GAME_7F0B9DBC /* 0880E0 7F0535B0 24050001 */ li $a1, 1 .L7F0535B4: /* 0880E4 7F0535B4 8FBF0014 */ lw $ra, 0x14($sp) /* 0880E8 7F0535B8 27BD0018 */ addiu $sp, $sp, 0x18 /* 0880EC 7F0535BC 03E00008 */ jr $ra /* 0880F0 7F0535C0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0535C4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0535C4 /* 0880F4 7F0535C4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0880F8 7F0535C8 AFBF0014 */ sw $ra, 0x14($sp) /* 0880FC 7F0535CC 8C8600F0 */ lw $a2, 0xf0($a0) /* 088100 7F0535D0 04C00003 */ bltz $a2, .L7F0535E0 /* 088104 7F0535D4 00C02025 */ move $a0, $a2 /* 088108 7F0535D8 0FC2E76F */ jal sub_GAME_7F0B9DBC /* 08810C 7F0535DC 00002825 */ move $a1, $zero .L7F0535E0: /* 088110 7F0535E0 8FBF0014 */ lw $ra, 0x14($sp) /* 088114 7F0535E4 27BD0018 */ addiu $sp, $sp, 0x18 /* 088118 7F0535E8 03E00008 */ jr $ra /* 08811C 7F0535EC 00000000 */ nop ) #endif #ifdef NONMATCHING void initialize_door(void) { } #else GLOBAL_ASM( .text glabel initialize_door /* 088120 7F0535F0 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 088124 7F0535F4 AFBF001C */ sw $ra, 0x1c($sp) /* 088128 7F0535F8 AFB00014 */ sw $s0, 0x14($sp) /* 08812C 7F0535FC 00808025 */ move $s0, $a0 /* 088130 7F053600 AFB10018 */ sw $s1, 0x18($sp) /* 088134 7F053604 AFA50034 */ sw $a1, 0x34($sp) /* 088138 7F053608 AFA60038 */ sw $a2, 0x38($sp) /* 08813C 7F05360C 0FC101C7 */ jal sub_GAME_7F04071C /* 088140 7F053610 AFA7003C */ sw $a3, 0x3c($sp) /* 088144 7F053614 860E0004 */ lh $t6, 4($s0) /* 088148 7F053618 3C018004 */ lui $at, %hi(PitemZ_entries+8) /* 08814C 7F05361C 00408825 */ move $s1, $v0 /* 088150 7F053620 000E7880 */ sll $t7, $t6, 2 /* 088154 7F053624 01EE7823 */ subu $t7, $t7, $t6 /* 088158 7F053628 000F7880 */ sll $t7, $t7, 2 /* 08815C 7F05362C 002F0821 */ addu $at, $at, $t7 /* 088160 7F053630 C424A230 */ lwc1 $f4, %lo(PitemZ_entries+8)($at) /* 088164 7F053634 24040050 */ li $a0, 80 /* 088168 7F053638 24050004 */ li $a1, 4 /* 08816C 7F05363C 0C0025C8 */ jal mempAllocBytesInBank /* 088170 7F053640 E7A40028 */ swc1 $f4, 0x28($sp) /* 088174 7F053644 AE020068 */ sw $v0, 0x68($s0) /* 088178 7F053648 26050018 */ addiu $a1, $s0, 0x18 /* 08817C 7F05364C AFA50020 */ sw $a1, 0x20($sp) /* 088180 7F053650 0FC16008 */ jal matrix_4x4_copy /* 088184 7F053654 8FA40038 */ lw $a0, 0x38($sp) /* 088188 7F053658 8FA50020 */ lw $a1, 0x20($sp) /* 08818C 7F05365C 0FC1629F */ jal matrix_scalar_multiply /* 088190 7F053660 C7AC0028 */ lwc1 $f12, 0x28($sp) /* 088194 7F053664 8FA20040 */ lw $v0, 0x40($sp) /* 088198 7F053668 8E180008 */ lw $t8, 8($s0) /* 08819C 7F05366C 44802000 */ mtc1 $zero, $f4 /* 0881A0 7F053670 C4460000 */ lwc1 $f6, ($v0) /* 0881A4 7F053674 0018C800 */ sll $t9, $t8, 0 /* 0881A8 7F053678 E60600A8 */ swc1 $f6, 0xa8($s0) /* 0881AC 7F05367C C4480004 */ lwc1 $f8, 4($v0) /* 0881B0 7F053680 E60800AC */ swc1 $f8, 0xac($s0) /* 0881B4 7F053684 C44A0008 */ lwc1 $f10, 8($v0) /* 0881B8 7F053688 07210004 */ bgez $t9, .L7F05369C /* 0881BC 7F05368C E60A00B0 */ swc1 $f10, 0xb0($s0) /* 0881C0 7F053690 C6100084 */ lwc1 $f16, 0x84($s0) /* 0881C4 7F053694 10000004 */ b .L7F0536A8 /* 0881C8 7F053698 E61000B4 */ swc1 $f16, 0xb4($s0) .L7F05369C: /* 0881CC 7F05369C 44809000 */ mtc1 $zero, $f18 /* 0881D0 7F0536A0 00000000 */ nop /* 0881D4 7F0536A4 E61200B4 */ swc1 $f18, 0xb4($s0) .L7F0536A8: /* 0881D8 7F0536A8 96080098 */ lhu $t0, 0x98($s0) /* 0881DC 7F0536AC E60400B8 */ swc1 $f4, 0xb8($s0) /* 0881E0 7F0536B0 A20000BC */ sb $zero, 0xbc($s0) /* 0881E4 7F0536B4 31090004 */ andi $t1, $t0, 4 /* 0881E8 7F0536B8 A20000BD */ sb $zero, 0xbd($s0) /* 0881EC 7F0536BC 1120000E */ beqz $t1, .L7F0536F8 /* 0881F0 7F0536C0 AE0000C8 */ sw $zero, 0xc8($s0) /* 0881F4 7F0536C4 8E0A0014 */ lw $t2, 0x14($s0) /* 0881F8 7F0536C8 24050004 */ li $a1, 4 /* 0881FC 7F0536CC 8D4B0008 */ lw $t3, 8($t2) /* 088200 7F0536D0 8D6C0000 */ lw $t4, ($t3) /* 088204 7F0536D4 8D8D0014 */ lw $t5, 0x14($t4) /* 088208 7F0536D8 8DAE0014 */ lw $t6, 0x14($t5) /* 08820C 7F0536DC 8DC20004 */ lw $v0, 4($t6) /* 088210 7F0536E0 8444000C */ lh $a0, 0xc($v0) /* 088214 7F0536E4 00047900 */ sll $t7, $a0, 4 /* 088218 7F0536E8 0C0025C8 */ jal mempAllocBytesInBank /* 08821C 7F0536EC 01E02025 */ move $a0, $t7 /* 088220 7F0536F0 10000002 */ b .L7F0536FC /* 088224 7F0536F4 AE0200CC */ sw $v0, 0xcc($s0) .L7F0536F8: /* 088228 7F0536F8 AE0000CC */ sw $zero, 0xcc($s0) .L7F0536FC: /* 08822C 7F0536FC 8FA30034 */ lw $v1, 0x34($sp) /* 088230 7F053700 8FA20044 */ lw $v0, 0x44($sp) /* 088234 7F053704 2418FFFF */ li $t8, -1 /* 088238 7F053708 AE1800F0 */ sw $t8, 0xf0($s0) /* 08823C 7F05370C AE0000F4 */ sw $zero, 0xf4($s0) /* 088240 7F053710 AE0000F8 */ sw $zero, 0xf8($s0) /* 088244 7F053714 24190002 */ li $t9, 2 /* 088248 7F053718 A2390000 */ sb $t9, ($s1) /* 08824C 7F05371C AE300004 */ sw $s0, 4($s1) /* 088250 7F053720 C4660000 */ lwc1 $f6, ($v1) /* 088254 7F053724 02002025 */ move $a0, $s0 /* 088258 7F053728 E6260008 */ swc1 $f6, 8($s1) /* 08825C 7F05372C C4680004 */ lwc1 $f8, 4($v1) /* 088260 7F053730 E628000C */ swc1 $f8, 0xc($s1) /* 088264 7F053734 C46A0008 */ lwc1 $f10, 8($v1) /* 088268 7F053738 E62A0010 */ swc1 $f10, 0x10($s1) /* 08826C 7F05373C 8FA8003C */ lw $t0, 0x3c($sp) /* 088270 7F053740 AE280014 */ sw $t0, 0x14($s1) /* 088274 7F053744 C4500000 */ lwc1 $f16, ($v0) /* 088278 7F053748 8E090008 */ lw $t1, 8($s0) /* 08827C 7F05374C E6100058 */ swc1 $f16, 0x58($s0) /* 088280 7F053750 C4520004 */ lwc1 $f18, 4($v0) /* 088284 7F053754 352A0100 */ ori $t2, $t1, 0x100 /* 088288 7F053758 E612005C */ swc1 $f18, 0x5c($s0) /* 08828C 7F05375C C4440008 */ lwc1 $f4, 8($v0) /* 088290 7F053760 AE0A0008 */ sw $t2, 8($s0) /* 088294 7F053764 0FC14AC0 */ jal sub_GAME_7F052B00 /* 088298 7F053768 E6040060 */ swc1 $f4, 0x60($s0) /* 08829C 7F05376C 0FC14B63 */ jal sub_GAME_7F052D8C /* 0882A0 7F053770 02002025 */ move $a0, $s0 /* 0882A4 7F053774 8E040010 */ lw $a0, 0x10($s0) /* 0882A8 7F053778 0FC100AD */ jal sub_GAME_7F0402B4 /* 0882AC 7F05377C 2605007C */ addiu $a1, $s0, 0x7c /* 0882B0 7F053780 920B007C */ lbu $t3, 0x7c($s0) /* 0882B4 7F053784 920C007D */ lbu $t4, 0x7d($s0) /* 0882B8 7F053788 920D007E */ lbu $t5, 0x7e($s0) /* 0882BC 7F05378C 920E007F */ lbu $t6, 0x7f($s0) /* 0882C0 7F053790 A20B0078 */ sb $t3, 0x78($s0) /* 0882C4 7F053794 A20C0079 */ sb $t4, 0x79($s0) /* 0882C8 7F053798 A20D007A */ sb $t5, 0x7a($s0) /* 0882CC 7F05379C A20E007B */ sb $t6, 0x7b($s0) /* 0882D0 7F0537A0 8FBF001C */ lw $ra, 0x1c($sp) /* 0882D4 7F0537A4 02201025 */ move $v0, $s1 /* 0882D8 7F0537A8 8FB10018 */ lw $s1, 0x18($sp) /* 0882DC 7F0537AC 8FB00014 */ lw $s0, 0x14($sp) /* 0882E0 7F0537B0 03E00008 */ jr $ra /* 0882E4 7F0537B4 27BD0030 */ addiu $sp, $sp, 0x30 ) #endif #ifdef NONMATCHING void sub_GAME_7F0537B8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0537B8 /* 0882E8 7F0537B8 3C014348 */ li $at, 0x43480000 # 200.000000 /* 0882EC 7F0537BC 44810000 */ mtc1 $at, $f0 /* 0882F0 7F0537C0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0882F4 7F0537C4 F7B40010 */ sdc1 $f20, 0x10($sp) /* 0882F8 7F0537C8 4600603E */ c.le.s $f12, $f0 /* 0882FC 7F0537CC AFA60028 */ sw $a2, 0x28($sp) /* 088300 7F0537D0 46006506 */ mov.s $f20, $f12 /* 088304 7F0537D4 AFBF001C */ sw $ra, 0x1c($sp) /* 088308 7F0537D8 45000003 */ bc1f .L7F0537E8 /* 08830C 7F0537DC C7A40028 */ lwc1 $f4, 0x28($sp) /* 088310 7F0537E0 10000027 */ b .L7F053880 /* 088314 7F0537E4 24037FFF */ li $v1, 32767 .L7F0537E8: /* 088318 7F0537E8 4614203E */ c.le.s $f4, $f20 /* 08831C 7F0537EC 00000000 */ nop /* 088320 7F0537F0 45020004 */ bc1fl .L7F053804 /* 088324 7F0537F4 4614703E */ c.le.s $f14, $f20 /* 088328 7F0537F8 10000021 */ b .L7F053880 /* 08832C 7F0537FC 00001825 */ move $v1, $zero /* 088330 7F053800 4614703E */ c.le.s $f14, $f20 .L7F053804: /* 088334 7F053804 C7A60028 */ lwc1 $f6, 0x28($sp) /* 088338 7F053808 3C018005 */ lui $at, %hi(D_80053340) /* 08833C 7F05380C 4502000B */ bc1fl .L7F05383C /* 088340 7F053810 4600A301 */ sub.s $f12, $f20, $f0 /* 088344 7F053814 46143201 */ sub.s $f8, $f6, $f20 /* 088348 7F053818 C42A3340 */ lwc1 $f10, %lo(D_80053340)($at) /* 08834C 7F05381C 460E3481 */ sub.s $f18, $f6, $f14 /* 088350 7F053820 460A4402 */ mul.s $f16, $f8, $f10 /* 088354 7F053824 46128103 */ div.s $f4, $f16, $f18 /* 088358 7F053828 4600220D */ trunc.w.s $f8, $f4 /* 08835C 7F05382C 44034000 */ mfc1 $v1, $f8 /* 088360 7F053830 10000014 */ b .L7F053884 /* 088364 7F053834 8FBF001C */ lw $ra, 0x1c($sp) /* 088368 7F053838 4600A301 */ sub.s $f12, $f20, $f0 .L7F05383C: /* 08836C 7F05383C 0C007DF8 */ jal sqrtf /* 088370 7F053840 E7AE0024 */ swc1 $f14, 0x24($sp) /* 088374 7F053844 3C014348 */ li $at, 0x43480000 # 200.000000 /* 088378 7F053848 44815000 */ mtc1 $at, $f10 /* 08837C 7F05384C C7AE0024 */ lwc1 $f14, 0x24($sp) /* 088380 7F053850 46000506 */ mov.s $f20, $f0 /* 088384 7F053854 0C007DF8 */ jal sqrtf /* 088388 7F053858 460A7301 */ sub.s $f12, $f14, $f10 /* 08838C 7F05385C 3C018005 */ lui $at, %hi(D_80053344) /* 088390 7F053860 C4263344 */ lwc1 $f6, %lo(D_80053344)($at) /* 088394 7F053864 24197FFF */ li $t9, 32767 /* 088398 7F053868 4606A402 */ mul.s $f16, $f20, $f6 /* 08839C 7F05386C 46008483 */ div.s $f18, $f16, $f0 /* 0883A0 7F053870 4600910D */ trunc.w.s $f4, $f18 /* 0883A4 7F053874 44182000 */ mfc1 $t8, $f4 /* 0883A8 7F053878 00000000 */ nop /* 0883AC 7F05387C 03381823 */ subu $v1, $t9, $t8 .L7F053880: /* 0883B0 7F053880 8FBF001C */ lw $ra, 0x1c($sp) .L7F053884: /* 0883B4 7F053884 D7B40010 */ ldc1 $f20, 0x10($sp) /* 0883B8 7F053888 27BD0020 */ addiu $sp, $sp, 0x20 /* 0883BC 7F05388C 03E00008 */ jr $ra /* 0883C0 7F053890 00601025 */ move $v0, $v1 ) #endif #ifdef NONMATCHING void sub_GAME_7F053894(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F053894 /* 0883C4 7F053894 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 0883C8 7F053898 AFBF002C */ sw $ra, 0x2c($sp) /* 0883CC 7F05389C AFB10020 */ sw $s1, 0x20($sp) /* 0883D0 7F0538A0 F7B40010 */ sdc1 $f20, 0x10($sp) /* 0883D4 7F0538A4 AFA60038 */ sw $a2, 0x38($sp) /* 0883D8 7F0538A8 00808825 */ move $s1, $a0 /* 0883DC 7F0538AC AFB30028 */ sw $s3, 0x28($sp) /* 0883E0 7F0538B0 AFB20024 */ sw $s2, 0x24($sp) /* 0883E4 7F0538B4 AFB0001C */ sw $s0, 0x1c($sp) /* 0883E8 7F0538B8 AFA50034 */ sw $a1, 0x34($sp) /* 0883EC 7F0538BC 0FC26919 */ jal get_num_players /* 0883F0 7F0538C0 C7B40038 */ lwc1 $f20, 0x38($sp) /* 0883F4 7F0538C4 1840001D */ blez $v0, .L7F05393C /* 0883F8 7F0538C8 3C0E8008 */ lui $t6, %hi(ptr_BONDdata_p1) /* 0883FC 7F0538CC 25D09EE0 */ addiu $s0, $t6, %lo(ptr_BONDdata_p1) /* 088400 7F0538D0 00027880 */ sll $t7, $v0, 2 /* 088404 7F0538D4 01F09021 */ addu $s2, $t7, $s0 /* 088408 7F0538D8 8E180000 */ lw $t8, ($s0) .L7F0538DC: /* 08840C 7F0538DC C6260000 */ lwc1 $f6, ($s1) /* 088410 7F0538E0 C62A0004 */ lwc1 $f10, 4($s1) /* 088414 7F0538E4 8F0200A8 */ lw $v0, 0xa8($t8) /* 088418 7F0538E8 C6320008 */ lwc1 $f18, 8($s1) /* 08841C 7F0538EC C4440008 */ lwc1 $f4, 8($v0) /* 088420 7F0538F0 C448000C */ lwc1 $f8, 0xc($v0) /* 088424 7F0538F4 C4500010 */ lwc1 $f16, 0x10($v0) /* 088428 7F0538F8 46062001 */ sub.s $f0, $f4, $f6 /* 08842C 7F0538FC 460A4081 */ sub.s $f2, $f8, $f10 /* 088430 7F053900 46000102 */ mul.s $f4, $f0, $f0 /* 088434 7F053904 46128381 */ sub.s $f14, $f16, $f18 /* 088438 7F053908 46021182 */ mul.s $f6, $f2, $f2 /* 08843C 7F05390C 46062200 */ add.s $f8, $f4, $f6 /* 088440 7F053910 460E7282 */ mul.s $f10, $f14, $f14 /* 088444 7F053914 0C007DF8 */ jal sqrtf /* 088448 7F053918 460A4300 */ add.s $f12, $f8, $f10 /* 08844C 7F05391C 4614003C */ c.lt.s $f0, $f20 /* 088450 7F053920 26100004 */ addiu $s0, $s0, 4 /* 088454 7F053924 0212082B */ sltu $at, $s0, $s2 /* 088458 7F053928 45000002 */ bc1f .L7F053934 /* 08845C 7F05392C 00000000 */ nop /* 088460 7F053930 46000506 */ mov.s $f20, $f0 .L7F053934: /* 088464 7F053934 5420FFE9 */ bnezl $at, .L7F0538DC /* 088468 7F053938 8E180000 */ lw $t8, ($s0) .L7F05393C: /* 08846C 7F05393C 4600A306 */ mov.s $f12, $f20 /* 088470 7F053940 C7AE0034 */ lwc1 $f14, 0x34($sp) /* 088474 7F053944 0FC14DEE */ jal sub_GAME_7F0537B8 /* 088478 7F053948 8FA60038 */ lw $a2, 0x38($sp) /* 08847C 7F05394C 8FBF002C */ lw $ra, 0x2c($sp) /* 088480 7F053950 D7B40010 */ ldc1 $f20, 0x10($sp) /* 088484 7F053954 8FB0001C */ lw $s0, 0x1c($sp) /* 088488 7F053958 8FB10020 */ lw $s1, 0x20($sp) /* 08848C 7F05395C 8FB20024 */ lw $s2, 0x24($sp) /* 088490 7F053960 8FB30028 */ lw $s3, 0x28($sp) /* 088494 7F053964 03E00008 */ jr $ra /* 088498 7F053968 27BD0030 */ addiu $sp, $sp, 0x30 ) #endif #ifdef NONMATCHING void sub_GAME_7F05396C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05396C /* 08849C 7F05396C 44866000 */ mtc1 $a2, $f12 /* 0884A0 7F053970 44877000 */ mtc1 $a3, $f14 /* 0884A4 7F053974 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0884A8 7F053978 AFA40018 */ sw $a0, 0x18($sp) /* 0884AC 7F05397C AFA5001C */ sw $a1, 0x1c($sp) /* 0884B0 7F053980 00A02025 */ move $a0, $a1 /* 0884B4 7F053984 AFBF0014 */ sw $ra, 0x14($sp) /* 0884B8 7F053988 44056000 */ mfc1 $a1, $f12 /* 0884BC 7F05398C 44067000 */ mfc1 $a2, $f14 /* 0884C0 7F053990 0FC14E25 */ jal sub_GAME_7F053894 /* 0884C4 7F053994 00000000 */ nop /* 0884C8 7F053998 8FA40018 */ lw $a0, 0x18($sp) /* 0884CC 7F05399C 24050008 */ li $a1, 8 /* 0884D0 7F0539A0 0C002461 */ jal sfx_c_70009184 /* 0884D4 7F0539A4 00403025 */ move $a2, $v0 /* 0884D8 7F0539A8 8FBF0014 */ lw $ra, 0x14($sp) /* 0884DC 7F0539AC 27BD0018 */ addiu $sp, $sp, 0x18 /* 0884E0 7F0539B0 03E00008 */ jr $ra /* 0884E4 7F0539B4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0539B8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0539B8 /* 0884E8 7F0539B8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0884EC 7F0539BC AFBF0014 */ sw $ra, 0x14($sp) /* 0884F0 7F0539C0 3C018005 */ lui $at, %hi(D_80053348) /* 0884F4 7F0539C4 3C0645BB */ lui $a2, (0x45BB8000 >> 16) # lui $a2, 0x45bb /* 0884F8 7F0539C8 34C68000 */ ori $a2, (0x45BB8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 0884FC 7F0539CC 0FC14DEE */ jal sub_GAME_7F0537B8 /* 088500 7F0539D0 C42E3348 */ lwc1 $f14, %lo(D_80053348)($at) /* 088504 7F0539D4 8FBF0014 */ lw $ra, 0x14($sp) /* 088508 7F0539D8 27BD0018 */ addiu $sp, $sp, 0x18 /* 08850C 7F0539DC 03E00008 */ jr $ra /* 088510 7F0539E0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0539E4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0539E4 /* 088514 7F0539E4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088518 7F0539E8 AFBF0014 */ sw $ra, 0x14($sp) /* 08851C 7F0539EC 3C05459C */ lui $a1, (0x459C4000 >> 16) # lui $a1, 0x459c /* 088520 7F0539F0 3C0645BB */ lui $a2, (0x45BB8000 >> 16) # lui $a2, 0x45bb /* 088524 7F0539F4 34C68000 */ ori $a2, (0x45BB8000 & 0xFFFF) # ori $a2, $a2, 0x8000 /* 088528 7F0539F8 0FC14E25 */ jal sub_GAME_7F053894 /* 08852C 7F0539FC 34A54000 */ ori $a1, (0x459C4000 & 0xFFFF) # ori $a1, $a1, 0x4000 /* 088530 7F053A00 8FBF0014 */ lw $ra, 0x14($sp) /* 088534 7F053A04 27BD0018 */ addiu $sp, $sp, 0x18 /* 088538 7F053A08 03E00008 */ jr $ra /* 08853C 7F053A0C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F053A10(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F053A10 /* 088540 7F053A10 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088544 7F053A14 AFBF0014 */ sw $ra, 0x14($sp) /* 088548 7F053A18 3C06459C */ lui $a2, (0x459C4000 >> 16) # lui $a2, 0x459c /* 08854C 7F053A1C 3C0745BB */ lui $a3, (0x45BB8000 >> 16) # lui $a3, 0x45bb /* 088550 7F053A20 34E78000 */ ori $a3, (0x45BB8000 & 0xFFFF) # ori $a3, $a3, 0x8000 /* 088554 7F053A24 0FC14E5B */ jal sub_GAME_7F05396C /* 088558 7F053A28 34C64000 */ ori $a2, (0x459C4000 & 0xFFFF) # ori $a2, $a2, 0x4000 /* 08855C 7F053A2C 8FBF0014 */ lw $ra, 0x14($sp) /* 088560 7F053A30 27BD0018 */ addiu $sp, $sp, 0x18 /* 088564 7F053A34 03E00008 */ jr $ra /* 088568 7F053A38 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F053A3C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F053A3C /* 08856C 7F053A3C 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088570 7F053A40 AFBF0014 */ sw $ra, 0x14($sp) /* 088574 7F053A44 AFA40028 */ sw $a0, 0x28($sp) /* 088578 7F053A48 8C8500F4 */ lw $a1, 0xf4($a0) /* 08857C 7F053A4C 0005182B */ sltu $v1, $zero, $a1 /* 088580 7F053A50 50600005 */ beql $v1, $zero, .L7F053A68 /* 088584 7F053A54 8FAF0028 */ lw $t7, 0x28($sp) /* 088588 7F053A58 0C00237C */ jal sfxGetArg0Unk3F /* 08858C 7F053A5C 00A02025 */ move $a0, $a1 /* 088590 7F053A60 0002182B */ sltu $v1, $zero, $v0 /* 088594 7F053A64 8FAF0028 */ lw $t7, 0x28($sp) .L7F053A68: /* 088598 7F053A68 AFA30024 */ sw $v1, 0x24($sp) /* 08859C 7F053A6C 8DE400F8 */ lw $a0, 0xf8($t7) /* 0885A0 7F053A70 0004182B */ sltu $v1, $zero, $a0 /* 0885A4 7F053A74 50600005 */ beql $v1, $zero, .L7F053A8C /* 0885A8 7F053A78 8FB80024 */ lw $t8, 0x24($sp) /* 0885AC 7F053A7C 0C00237C */ jal sfxGetArg0Unk3F /* 0885B0 7F053A80 00000000 */ nop /* 0885B4 7F053A84 0002182B */ sltu $v1, $zero, $v0 /* 0885B8 7F053A88 8FB80024 */ lw $t8, 0x24($sp) .L7F053A8C: /* 0885BC 7F053A8C 8FB90028 */ lw $t9, 0x28($sp) /* 0885C0 7F053A90 57000004 */ bnezl $t8, .L7F053AA4 /* 0885C4 7F053A94 8F240010 */ lw $a0, 0x10($t9) /* 0885C8 7F053A98 5060001A */ beql $v1, $zero, .L7F053B04 /* 0885CC 7F053A9C 8FBF0014 */ lw $ra, 0x14($sp) /* 0885D0 7F053AA0 8F240010 */ lw $a0, 0x10($t9) .L7F053AA4: /* 0885D4 7F053AA4 AFA30018 */ sw $v1, 0x18($sp) /* 0885D8 7F053AA8 0FC14E79 */ jal sub_GAME_7F0539E4 /* 0885DC 7F053AAC 24840008 */ addiu $a0, $a0, 8 /* 0885E0 7F053AB0 0FC2FF01 */ jal get_controls_locked_flag /* 0885E4 7F053AB4 AFA2001C */ sw $v0, 0x1c($sp) /* 0885E8 7F053AB8 10400002 */ beqz $v0, .L7F053AC4 /* 0885EC 7F053ABC 8FA30018 */ lw $v1, 0x18($sp) /* 0885F0 7F053AC0 AFA0001C */ sw $zero, 0x1c($sp) .L7F053AC4: /* 0885F4 7F053AC4 8FA80024 */ lw $t0, 0x24($sp) /* 0885F8 7F053AC8 8FA90028 */ lw $t1, 0x28($sp) /* 0885FC 7F053ACC 24050008 */ li $a1, 8 /* 088600 7F053AD0 11000005 */ beqz $t0, .L7F053AE8 /* 088604 7F053AD4 8FA6001C */ lw $a2, 0x1c($sp) /* 088608 7F053AD8 8D2400F4 */ lw $a0, 0xf4($t1) /* 08860C 7F053ADC 0C002461 */ jal sfx_c_70009184 /* 088610 7F053AE0 AFA30018 */ sw $v1, 0x18($sp) /* 088614 7F053AE4 8FA30018 */ lw $v1, 0x18($sp) .L7F053AE8: /* 088618 7F053AE8 10600005 */ beqz $v1, .L7F053B00 /* 08861C 7F053AEC 8FAA0028 */ lw $t2, 0x28($sp) /* 088620 7F053AF0 8D4400F8 */ lw $a0, 0xf8($t2) /* 088624 7F053AF4 24050008 */ li $a1, 8 /* 088628 7F053AF8 0C002461 */ jal sfx_c_70009184 /* 08862C 7F053AFC 8FA6001C */ lw $a2, 0x1c($sp) .L7F053B00: /* 088630 7F053B00 8FBF0014 */ lw $ra, 0x14($sp) .L7F053B04: /* 088634 7F053B04 27BD0028 */ addiu $sp, $sp, 0x28 /* 088638 7F053B08 03E00008 */ jr $ra /* 08863C 7F053B0C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F053B10(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F053B10 /* 088640 7F053B10 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088644 7F053B14 AFBF0014 */ sw $ra, 0x14($sp) /* 088648 7F053B18 AFA40018 */ sw $a0, 0x18($sp) /* 08864C 7F053B1C 8C8500F4 */ lw $a1, 0xf4($a0) /* 088650 7F053B20 50A00008 */ beql $a1, $zero, .L7F053B44 /* 088654 7F053B24 8FB80018 */ lw $t8, 0x18($sp) /* 088658 7F053B28 0C00237C */ jal sfxGetArg0Unk3F /* 08865C 7F053B2C 00A02025 */ move $a0, $a1 /* 088660 7F053B30 10400003 */ beqz $v0, .L7F053B40 /* 088664 7F053B34 8FAF0018 */ lw $t7, 0x18($sp) /* 088668 7F053B38 0C002408 */ jal sfxDeactivate /* 08866C 7F053B3C 8DE400F4 */ lw $a0, 0xf4($t7) .L7F053B40: /* 088670 7F053B40 8FB80018 */ lw $t8, 0x18($sp) .L7F053B44: /* 088674 7F053B44 8F0400F8 */ lw $a0, 0xf8($t8) /* 088678 7F053B48 50800008 */ beql $a0, $zero, .L7F053B6C /* 08867C 7F053B4C 8FBF0014 */ lw $ra, 0x14($sp) /* 088680 7F053B50 0C00237C */ jal sfxGetArg0Unk3F /* 088684 7F053B54 00000000 */ nop /* 088688 7F053B58 10400003 */ beqz $v0, .L7F053B68 /* 08868C 7F053B5C 8FB90018 */ lw $t9, 0x18($sp) /* 088690 7F053B60 0C002408 */ jal sfxDeactivate /* 088694 7F053B64 8F2400F8 */ lw $a0, 0xf8($t9) .L7F053B68: /* 088698 7F053B68 8FBF0014 */ lw $ra, 0x14($sp) .L7F053B6C: /* 08869C 7F053B6C 27BD0018 */ addiu $sp, $sp, 0x18 /* 0886A0 7F053B70 03E00008 */ jr $ra /* 0886A4 7F053B74 00000000 */ nop ) #endif #ifdef NONMATCHING void play_door_opening_soundeffect_0(void) { } #else GLOBAL_ASM( .late_rodata /*D:8005334C*/ glabel door_opening_sound_table_0 .word .L7F053BEC .word .L7F053C2C .word .L7F053C6C .word .L7F053CAC .word .L7F053CEC .word .L7F053D08 .word .L7F053D24 .word .L7F053D64 .word .L7F053DA4 .word .L7F053DC4 .word .L7F053DE0 .word .L7F053DFC .word .L7F053E18 .word .L7F053E58 .word .L7F053E78 .word .L7F053E98 .word .L7F053EB4 .text glabel play_door_opening_soundeffect_0 /* 0886A8 7F053B78 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0886AC 7F053B7C AFBF0014 */ sw $ra, 0x14($sp) /* 0886B0 7F053B80 AFA40020 */ sw $a0, 0x20($sp) /* 0886B4 7F053B84 AFA0001C */ sw $zero, 0x1c($sp) /* 0886B8 7F053B88 0FC14EC4 */ jal sub_GAME_7F053B10 /* 0886BC 7F053B8C AFA00018 */ sw $zero, 0x18($sp) /* 0886C0 7F053B90 8FAE0020 */ lw $t6, 0x20($sp) /* 0886C4 7F053B94 8FA70018 */ lw $a3, 0x18($sp) /* 0886C8 7F053B98 8FB80020 */ lw $t8, 0x20($sp) /* 0886CC 7F053B9C 8DCF00F4 */ lw $t7, 0xf4($t6) /* 0886D0 7F053BA0 8FA80020 */ lw $t0, 0x20($sp) /* 0886D4 7F053BA4 55E00004 */ bnezl $t7, .L7F053BB8 /* 0886D8 7F053BA8 8F1900F8 */ lw $t9, 0xf8($t8) /* 0886DC 7F053BAC 10000005 */ b .L7F053BC4 /* 0886E0 7F053BB0 25C700F4 */ addiu $a3, $t6, 0xf4 /* 0886E4 7F053BB4 8F1900F8 */ lw $t9, 0xf8($t8) .L7F053BB8: /* 0886E8 7F053BB8 57200003 */ bnezl $t9, .L7F053BC8 /* 0886EC 7F053BBC 8D0900A4 */ lw $t1, 0xa4($t0) /* 0886F0 7F053BC0 270700F8 */ addiu $a3, $t8, 0xf8 .L7F053BC4: /* 0886F4 7F053BC4 8D0900A4 */ lw $t1, 0xa4($t0) .L7F053BC8: /* 0886F8 7F053BC8 252AFFFF */ addiu $t2, $t1, -1 /* 0886FC 7F053BCC 2D410011 */ sltiu $at, $t2, 0x11 /* 088700 7F053BD0 102000D6 */ beqz $at, .L7F053F2C /* 088704 7F053BD4 000A5080 */ sll $t2, $t2, 2 /* 088708 7F053BD8 3C018005 */ lui $at, %hi(door_opening_sound_table_0) /* 08870C 7F053BDC 002A0821 */ addu $at, $at, $t2 /* 088710 7F053BE0 8C2A334C */ lw $t2, %lo(door_opening_sound_table_0)($at) /* 088714 7F053BE4 01400008 */ jr $t2 /* 088718 7F053BE8 00000000 */ nop .L7F053BEC: /* 08871C 7F053BEC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088720 7F053BF0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088724 7F053BF4 240500D2 */ li $a1, 210 /* 088728 7F053BF8 00003025 */ move $a2, $zero /* 08872C 7F053BFC 0C002382 */ jal play_sfx_a1 /* 088730 7F053C00 AFA70018 */ sw $a3, 0x18($sp) /* 088734 7F053C04 8FA70018 */ lw $a3, 0x18($sp) /* 088738 7F053C08 AFA2001C */ sw $v0, 0x1c($sp) /* 08873C 7F053C0C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088740 7F053C10 10E000C6 */ beqz $a3, .L7F053F2C /* 088744 7F053C14 240500D3 */ li $a1, 211 /* 088748 7F053C18 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08874C 7F053C1C 0C002382 */ jal play_sfx_a1 /* 088750 7F053C20 00E03025 */ move $a2, $a3 /* 088754 7F053C24 100000C2 */ b .L7F053F30 /* 088758 7F053C28 8FAC001C */ lw $t4, 0x1c($sp) .L7F053C2C: /* 08875C 7F053C2C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088760 7F053C30 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088764 7F053C34 240500D2 */ li $a1, 210 /* 088768 7F053C38 00003025 */ move $a2, $zero /* 08876C 7F053C3C 0C002382 */ jal play_sfx_a1 /* 088770 7F053C40 AFA70018 */ sw $a3, 0x18($sp) /* 088774 7F053C44 8FA70018 */ lw $a3, 0x18($sp) /* 088778 7F053C48 AFA2001C */ sw $v0, 0x1c($sp) /* 08877C 7F053C4C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088780 7F053C50 10E000B6 */ beqz $a3, .L7F053F2C /* 088784 7F053C54 24050007 */ li $a1, 7 /* 088788 7F053C58 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08878C 7F053C5C 0C002382 */ jal play_sfx_a1 /* 088790 7F053C60 00E03025 */ move $a2, $a3 /* 088794 7F053C64 100000B2 */ b .L7F053F30 /* 088798 7F053C68 8FAC001C */ lw $t4, 0x1c($sp) .L7F053C6C: /* 08879C 7F053C6C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0887A0 7F053C70 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0887A4 7F053C74 240500CA */ li $a1, 202 /* 0887A8 7F053C78 00003025 */ move $a2, $zero /* 0887AC 7F053C7C 0C002382 */ jal play_sfx_a1 /* 0887B0 7F053C80 AFA70018 */ sw $a3, 0x18($sp) /* 0887B4 7F053C84 8FA70018 */ lw $a3, 0x18($sp) /* 0887B8 7F053C88 AFA2001C */ sw $v0, 0x1c($sp) /* 0887BC 7F053C8C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0887C0 7F053C90 10E000A6 */ beqz $a3, .L7F053F2C /* 0887C4 7F053C94 240500CC */ li $a1, 204 /* 0887C8 7F053C98 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0887CC 7F053C9C 0C002382 */ jal play_sfx_a1 /* 0887D0 7F053CA0 00E03025 */ move $a2, $a3 /* 0887D4 7F053CA4 100000A2 */ b .L7F053F30 /* 0887D8 7F053CA8 8FAC001C */ lw $t4, 0x1c($sp) .L7F053CAC: /* 0887DC 7F053CAC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0887E0 7F053CB0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0887E4 7F053CB4 240500D6 */ li $a1, 214 /* 0887E8 7F053CB8 00003025 */ move $a2, $zero /* 0887EC 7F053CBC 0C002382 */ jal play_sfx_a1 /* 0887F0 7F053CC0 AFA70018 */ sw $a3, 0x18($sp) /* 0887F4 7F053CC4 8FA70018 */ lw $a3, 0x18($sp) /* 0887F8 7F053CC8 AFA2001C */ sw $v0, 0x1c($sp) /* 0887FC 7F053CCC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088800 7F053CD0 10E00096 */ beqz $a3, .L7F053F2C /* 088804 7F053CD4 240500D8 */ li $a1, 216 /* 088808 7F053CD8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08880C 7F053CDC 0C002382 */ jal play_sfx_a1 /* 088810 7F053CE0 00E03025 */ move $a2, $a3 /* 088814 7F053CE4 10000092 */ b .L7F053F30 /* 088818 7F053CE8 8FAC001C */ lw $t4, 0x1c($sp) .L7F053CEC: /* 08881C 7F053CEC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088820 7F053CF0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088824 7F053CF4 240500BC */ li $a1, 188 /* 088828 7F053CF8 0C002382 */ jal play_sfx_a1 /* 08882C 7F053CFC 00003025 */ move $a2, $zero /* 088830 7F053D00 1000008A */ b .L7F053F2C /* 088834 7F053D04 AFA2001C */ sw $v0, 0x1c($sp) .L7F053D08: /* 088838 7F053D08 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 08883C 7F053D0C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088840 7F053D10 24050007 */ li $a1, 7 /* 088844 7F053D14 0C002382 */ jal play_sfx_a1 /* 088848 7F053D18 00003025 */ move $a2, $zero /* 08884C 7F053D1C 10000083 */ b .L7F053F2C /* 088850 7F053D20 AFA2001C */ sw $v0, 0x1c($sp) .L7F053D24: /* 088854 7F053D24 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088858 7F053D28 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08885C 7F053D2C 240500C0 */ li $a1, 192 /* 088860 7F053D30 00003025 */ move $a2, $zero /* 088864 7F053D34 0C002382 */ jal play_sfx_a1 /* 088868 7F053D38 AFA70018 */ sw $a3, 0x18($sp) /* 08886C 7F053D3C 8FA70018 */ lw $a3, 0x18($sp) /* 088870 7F053D40 AFA2001C */ sw $v0, 0x1c($sp) /* 088874 7F053D44 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088878 7F053D48 10E00078 */ beqz $a3, .L7F053F2C /* 08887C 7F053D4C 240500BF */ li $a1, 191 /* 088880 7F053D50 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088884 7F053D54 0C002382 */ jal play_sfx_a1 /* 088888 7F053D58 00E03025 */ move $a2, $a3 /* 08888C 7F053D5C 10000074 */ b .L7F053F30 /* 088890 7F053D60 8FAC001C */ lw $t4, 0x1c($sp) .L7F053D64: /* 088894 7F053D64 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088898 7F053D68 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08889C 7F053D6C 240500BC */ li $a1, 188 /* 0888A0 7F053D70 00003025 */ move $a2, $zero /* 0888A4 7F053D74 0C002382 */ jal play_sfx_a1 /* 0888A8 7F053D78 AFA70018 */ sw $a3, 0x18($sp) /* 0888AC 7F053D7C 8FA70018 */ lw $a3, 0x18($sp) /* 0888B0 7F053D80 AFA2001C */ sw $v0, 0x1c($sp) /* 0888B4 7F053D84 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0888B8 7F053D88 10E00068 */ beqz $a3, .L7F053F2C /* 0888BC 7F053D8C 24050007 */ li $a1, 7 /* 0888C0 7F053D90 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0888C4 7F053D94 0C002382 */ jal play_sfx_a1 /* 0888C8 7F053D98 00E03025 */ move $a2, $a3 /* 0888CC 7F053D9C 10000064 */ b .L7F053F30 /* 0888D0 7F053DA0 8FAC001C */ lw $t4, 0x1c($sp) .L7F053DA4: /* 0888D4 7F053DA4 10E00061 */ beqz $a3, .L7F053F2C /* 0888D8 7F053DA8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0888DC 7F053DAC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0888E0 7F053DB0 240500C2 */ li $a1, 194 /* 0888E4 7F053DB4 0C002382 */ jal play_sfx_a1 /* 0888E8 7F053DB8 00E03025 */ move $a2, $a3 /* 0888EC 7F053DBC 1000005C */ b .L7F053F30 /* 0888F0 7F053DC0 8FAC001C */ lw $t4, 0x1c($sp) .L7F053DC4: /* 0888F4 7F053DC4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0888F8 7F053DC8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0888FC 7F053DCC 240500C4 */ li $a1, 196 /* 088900 7F053DD0 0C002382 */ jal play_sfx_a1 /* 088904 7F053DD4 00003025 */ move $a2, $zero /* 088908 7F053DD8 10000054 */ b .L7F053F2C /* 08890C 7F053DDC AFA2001C */ sw $v0, 0x1c($sp) .L7F053DE0: /* 088910 7F053DE0 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088914 7F053DE4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088918 7F053DE8 24050007 */ li $a1, 7 /* 08891C 7F053DEC 0C002382 */ jal play_sfx_a1 /* 088920 7F053DF0 00003025 */ move $a2, $zero /* 088924 7F053DF4 1000004D */ b .L7F053F2C /* 088928 7F053DF8 AFA2001C */ sw $v0, 0x1c($sp) .L7F053DFC: /* 08892C 7F053DFC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088930 7F053E00 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088934 7F053E04 240500C8 */ li $a1, 200 /* 088938 7F053E08 0C002382 */ jal play_sfx_a1 /* 08893C 7F053E0C 00003025 */ move $a2, $zero /* 088940 7F053E10 10000046 */ b .L7F053F2C /* 088944 7F053E14 AFA2001C */ sw $v0, 0x1c($sp) .L7F053E18: /* 088948 7F053E18 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 08894C 7F053E1C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088950 7F053E20 24050007 */ li $a1, 7 /* 088954 7F053E24 00003025 */ move $a2, $zero /* 088958 7F053E28 0C002382 */ jal play_sfx_a1 /* 08895C 7F053E2C AFA70018 */ sw $a3, 0x18($sp) /* 088960 7F053E30 8FA70018 */ lw $a3, 0x18($sp) /* 088964 7F053E34 AFA2001C */ sw $v0, 0x1c($sp) /* 088968 7F053E38 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 08896C 7F053E3C 10E0003B */ beqz $a3, .L7F053F2C /* 088970 7F053E40 24050007 */ li $a1, 7 /* 088974 7F053E44 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088978 7F053E48 0C002382 */ jal play_sfx_a1 /* 08897C 7F053E4C 00E03025 */ move $a2, $a3 /* 088980 7F053E50 10000037 */ b .L7F053F30 /* 088984 7F053E54 8FAC001C */ lw $t4, 0x1c($sp) .L7F053E58: /* 088988 7F053E58 10E00034 */ beqz $a3, .L7F053F2C /* 08898C 7F053E5C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088990 7F053E60 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088994 7F053E64 240500DA */ li $a1, 218 /* 088998 7F053E68 0C002382 */ jal play_sfx_a1 /* 08899C 7F053E6C 00E03025 */ move $a2, $a3 /* 0889A0 7F053E70 1000002F */ b .L7F053F30 /* 0889A4 7F053E74 8FAC001C */ lw $t4, 0x1c($sp) .L7F053E78: /* 0889A8 7F053E78 10E0002C */ beqz $a3, .L7F053F2C /* 0889AC 7F053E7C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0889B0 7F053E80 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0889B4 7F053E84 240500E1 */ li $a1, 225 /* 0889B8 7F053E88 0C002382 */ jal play_sfx_a1 /* 0889BC 7F053E8C 00E03025 */ move $a2, $a3 /* 0889C0 7F053E90 10000027 */ b .L7F053F30 /* 0889C4 7F053E94 8FAC001C */ lw $t4, 0x1c($sp) .L7F053E98: /* 0889C8 7F053E98 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0889CC 7F053E9C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0889D0 7F053EA0 240500D6 */ li $a1, 214 /* 0889D4 7F053EA4 0C002382 */ jal play_sfx_a1 /* 0889D8 7F053EA8 00003025 */ move $a2, $zero /* 0889DC 7F053EAC 1000001F */ b .L7F053F2C /* 0889E0 7F053EB0 AFA2001C */ sw $v0, 0x1c($sp) .L7F053EB4: /* 0889E4 7F053EB4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0889E8 7F053EB8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0889EC 7F053EBC 24050007 */ li $a1, 7 /* 0889F0 7F053EC0 00003025 */ move $a2, $zero /* 0889F4 7F053EC4 0C002382 */ jal play_sfx_a1 /* 0889F8 7F053EC8 AFA70018 */ sw $a3, 0x18($sp) /* 0889FC 7F053ECC 8FA70018 */ lw $a3, 0x18($sp) /* 088A00 7F053ED0 10400008 */ beqz $v0, .L7F053EF4 /* 088A04 7F053ED4 AFA2001C */ sw $v0, 0x1c($sp) /* 088A08 7F053ED8 8FAB0020 */ lw $t3, 0x20($sp) /* 088A0C 7F053EDC 00402025 */ move $a0, $v0 /* 088A10 7F053EE0 8D650010 */ lw $a1, 0x10($t3) /* 088A14 7F053EE4 AFA70018 */ sw $a3, 0x18($sp) /* 088A18 7F053EE8 0FC14E84 */ jal sub_GAME_7F053A10 /* 088A1C 7F053EEC 24A50008 */ addiu $a1, $a1, 8 /* 088A20 7F053EF0 8FA70018 */ lw $a3, 0x18($sp) .L7F053EF4: /* 088A24 7F053EF4 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088A28 7F053EF8 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088A2C 7F053EFC 240500CA */ li $a1, 202 /* 088A30 7F053F00 00003025 */ move $a2, $zero /* 088A34 7F053F04 0C002382 */ jal play_sfx_a1 /* 088A38 7F053F08 AFA70018 */ sw $a3, 0x18($sp) /* 088A3C 7F053F0C 8FA70018 */ lw $a3, 0x18($sp) /* 088A40 7F053F10 AFA2001C */ sw $v0, 0x1c($sp) /* 088A44 7F053F14 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088A48 7F053F18 10E00004 */ beqz $a3, .L7F053F2C /* 088A4C 7F053F1C 240500CC */ li $a1, 204 /* 088A50 7F053F20 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088A54 7F053F24 0C002382 */ jal play_sfx_a1 /* 088A58 7F053F28 00E03025 */ move $a2, $a3 def_7F053BE4: .L7F053F2C: /* 088A5C 7F053F2C 8FAC001C */ lw $t4, 0x1c($sp) .L7F053F30: /* 088A60 7F053F30 8FAD0020 */ lw $t5, 0x20($sp) /* 088A64 7F053F34 11800005 */ beqz $t4, .L7F053F4C /* 088A68 7F053F38 00000000 */ nop /* 088A6C 7F053F3C 8DA50010 */ lw $a1, 0x10($t5) /* 088A70 7F053F40 01802025 */ move $a0, $t4 /* 088A74 7F053F44 0FC14E84 */ jal sub_GAME_7F053A10 /* 088A78 7F053F48 24A50008 */ addiu $a1, $a1, 8 .L7F053F4C: /* 088A7C 7F053F4C 0FC14E8F */ jal sub_GAME_7F053A3C /* 088A80 7F053F50 8FA40020 */ lw $a0, 0x20($sp) /* 088A84 7F053F54 8FBF0014 */ lw $ra, 0x14($sp) /* 088A88 7F053F58 27BD0020 */ addiu $sp, $sp, 0x20 /* 088A8C 7F053F5C 03E00008 */ jr $ra /* 088A90 7F053F60 00000000 */ nop ) #endif #ifdef NONMATCHING void play_door_opening_soundeffect_1(void) { } #else GLOBAL_ASM( .late_rodata /*D:80053390*/ glabel door_opening_sound_table_1 .word .L7F053FD8 .word .L7F054018 .word .L7F054058 .word .L7F054098 .word .L7F05428C .word .L7F05428C .word .L7F0540D8 .word .L7F054118 .word .L7F054158 .word .L7F05428C .word .L7F05428C .word .L7F05428C .word .L7F054178 .word .L7F0541B8 .word .L7F0541D8 .word .L7F0541F8 .word .L7F054214 .text glabel play_door_opening_soundeffect_1 /* 088A94 7F053F64 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088A98 7F053F68 AFBF0014 */ sw $ra, 0x14($sp) /* 088A9C 7F053F6C AFA40020 */ sw $a0, 0x20($sp) /* 088AA0 7F053F70 AFA0001C */ sw $zero, 0x1c($sp) /* 088AA4 7F053F74 0FC14EC4 */ jal sub_GAME_7F053B10 /* 088AA8 7F053F78 AFA00018 */ sw $zero, 0x18($sp) /* 088AAC 7F053F7C 8FAE0020 */ lw $t6, 0x20($sp) /* 088AB0 7F053F80 8FA70018 */ lw $a3, 0x18($sp) /* 088AB4 7F053F84 8FB80020 */ lw $t8, 0x20($sp) /* 088AB8 7F053F88 8DCF00F4 */ lw $t7, 0xf4($t6) /* 088ABC 7F053F8C 8FA80020 */ lw $t0, 0x20($sp) /* 088AC0 7F053F90 55E00004 */ bnezl $t7, .L7F053FA4 /* 088AC4 7F053F94 8F1900F8 */ lw $t9, 0xf8($t8) /* 088AC8 7F053F98 10000005 */ b .L7F053FB0 /* 088ACC 7F053F9C 25C700F4 */ addiu $a3, $t6, 0xf4 /* 088AD0 7F053FA0 8F1900F8 */ lw $t9, 0xf8($t8) .L7F053FA4: /* 088AD4 7F053FA4 57200003 */ bnezl $t9, .L7F053FB4 /* 088AD8 7F053FA8 8D0900A4 */ lw $t1, 0xa4($t0) /* 088ADC 7F053FAC 270700F8 */ addiu $a3, $t8, 0xf8 .L7F053FB0: /* 088AE0 7F053FB0 8D0900A4 */ lw $t1, 0xa4($t0) .L7F053FB4: /* 088AE4 7F053FB4 252AFFFF */ addiu $t2, $t1, -1 /* 088AE8 7F053FB8 2D410011 */ sltiu $at, $t2, 0x11 /* 088AEC 7F053FBC 102000B3 */ beqz $at, .L7F05428C /* 088AF0 7F053FC0 000A5080 */ sll $t2, $t2, 2 /* 088AF4 7F053FC4 3C018005 */ lui $at, %hi(door_opening_sound_table_1) /* 088AF8 7F053FC8 002A0821 */ addu $at, $at, $t2 /* 088AFC 7F053FCC 8C2A3390 */ lw $t2, %lo(door_opening_sound_table_1)($at) .L7F053FD0: /* 088B00 7F053FD0 01400008 */ jr $t2 /* 088B04 7F053FD4 00000000 */ nop .L7F053FD8: /* 088B08 7F053FD8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088B0C 7F053FDC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088B10 7F053FE0 240500D2 */ li $a1, 210 /* 088B14 7F053FE4 00003025 */ move $a2, $zero /* 088B18 7F053FE8 0C002382 */ jal play_sfx_a1 /* 088B1C 7F053FEC AFA70018 */ sw $a3, 0x18($sp) /* 088B20 7F053FF0 8FA70018 */ lw $a3, 0x18($sp) /* 088B24 7F053FF4 AFA2001C */ sw $v0, 0x1c($sp) /* 088B28 7F053FF8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088B2C 7F053FFC 10E000A3 */ beqz $a3, .L7F05428C /* 088B30 7F054000 240500D3 */ li $a1, 211 /* 088B34 7F054004 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088B38 7F054008 0C002382 */ jal play_sfx_a1 /* 088B3C 7F05400C 00E03025 */ move $a2, $a3 /* 088B40 7F054010 1000009F */ b .L7F054290 /* 088B44 7F054014 8FAC001C */ lw $t4, 0x1c($sp) .L7F054018: /* 088B48 7F054018 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088B4C 7F05401C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088B50 7F054020 240500D2 */ li $a1, 210 /* 088B54 7F054024 00003025 */ move $a2, $zero /* 088B58 7F054028 0C002382 */ jal play_sfx_a1 /* 088B5C 7F05402C AFA70018 */ sw $a3, 0x18($sp) /* 088B60 7F054030 8FA70018 */ lw $a3, 0x18($sp) /* 088B64 7F054034 AFA2001C */ sw $v0, 0x1c($sp) /* 088B68 7F054038 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088B6C 7F05403C 10E00093 */ beqz $a3, .L7F05428C /* 088B70 7F054040 24050007 */ li $a1, 7 /* 088B74 7F054044 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088B78 7F054048 0C002382 */ jal play_sfx_a1 /* 088B7C 7F05404C 00E03025 */ move $a2, $a3 /* 088B80 7F054050 1000008F */ b .L7F054290 /* 088B84 7F054054 8FAC001C */ lw $t4, 0x1c($sp) .L7F054058: /* 088B88 7F054058 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088B8C 7F05405C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088B90 7F054060 240500CA */ li $a1, 202 /* 088B94 7F054064 00003025 */ move $a2, $zero /* 088B98 7F054068 0C002382 */ jal play_sfx_a1 /* 088B9C 7F05406C AFA70018 */ sw $a3, 0x18($sp) /* 088BA0 7F054070 8FA70018 */ lw $a3, 0x18($sp) /* 088BA4 7F054074 AFA2001C */ sw $v0, 0x1c($sp) /* 088BA8 7F054078 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088BAC 7F05407C 10E00083 */ beqz $a3, .L7F05428C /* 088BB0 7F054080 240500CC */ li $a1, 204 /* 088BB4 7F054084 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088BB8 7F054088 0C002382 */ jal play_sfx_a1 /* 088BBC 7F05408C 00E03025 */ move $a2, $a3 /* 088BC0 7F054090 1000007F */ b .L7F054290 /* 088BC4 7F054094 8FAC001C */ lw $t4, 0x1c($sp) .L7F054098: /* 088BC8 7F054098 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088BCC 7F05409C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088BD0 7F0540A0 240500D6 */ li $a1, 214 /* 088BD4 7F0540A4 00003025 */ move $a2, $zero /* 088BD8 7F0540A8 0C002382 */ jal play_sfx_a1 /* 088BDC 7F0540AC AFA70018 */ sw $a3, 0x18($sp) /* 088BE0 7F0540B0 8FA70018 */ lw $a3, 0x18($sp) /* 088BE4 7F0540B4 AFA2001C */ sw $v0, 0x1c($sp) /* 088BE8 7F0540B8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088BEC 7F0540BC 10E00073 */ beqz $a3, .L7F05428C /* 088BF0 7F0540C0 240500D8 */ li $a1, 216 /* 088BF4 7F0540C4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088BF8 7F0540C8 0C002382 */ jal play_sfx_a1 /* 088BFC 7F0540CC 00E03025 */ move $a2, $a3 /* 088C00 7F0540D0 1000006F */ b .L7F054290 /* 088C04 7F0540D4 8FAC001C */ lw $t4, 0x1c($sp) .L7F0540D8: /* 088C08 7F0540D8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088C0C 7F0540DC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088C10 7F0540E0 240500C0 */ li $a1, 192 /* 088C14 7F0540E4 00003025 */ move $a2, $zero /* 088C18 7F0540E8 0C002382 */ jal play_sfx_a1 /* 088C1C 7F0540EC AFA70018 */ sw $a3, 0x18($sp) /* 088C20 7F0540F0 8FA70018 */ lw $a3, 0x18($sp) /* 088C24 7F0540F4 AFA2001C */ sw $v0, 0x1c($sp) /* 088C28 7F0540F8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088C2C 7F0540FC 10E00063 */ beqz $a3, .L7F05428C /* 088C30 7F054100 240500BF */ li $a1, 191 /* 088C34 7F054104 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088C38 7F054108 0C002382 */ jal play_sfx_a1 /* 088C3C 7F05410C 00E03025 */ move $a2, $a3 /* 088C40 7F054110 1000005F */ b .L7F054290 /* 088C44 7F054114 8FAC001C */ lw $t4, 0x1c($sp) .L7F054118: /* 088C48 7F054118 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088C4C 7F05411C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088C50 7F054120 240500BC */ li $a1, 188 /* 088C54 7F054124 00003025 */ move $a2, $zero /* 088C58 7F054128 0C002382 */ jal play_sfx_a1 /* 088C5C 7F05412C AFA70018 */ sw $a3, 0x18($sp) /* 088C60 7F054130 8FA70018 */ lw $a3, 0x18($sp) /* 088C64 7F054134 AFA2001C */ sw $v0, 0x1c($sp) /* 088C68 7F054138 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088C6C 7F05413C 10E00053 */ beqz $a3, .L7F05428C /* 088C70 7F054140 24050007 */ li $a1, 7 /* 088C74 7F054144 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088C78 7F054148 0C002382 */ jal play_sfx_a1 /* 088C7C 7F05414C 00E03025 */ move $a2, $a3 /* 088C80 7F054150 1000004F */ b .L7F054290 /* 088C84 7F054154 8FAC001C */ lw $t4, 0x1c($sp) .L7F054158: /* 088C88 7F054158 10E0004C */ beqz $a3, .L7F05428C /* 088C8C 7F05415C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088C90 7F054160 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088C94 7F054164 240500C2 */ li $a1, 194 /* 088C98 7F054168 0C002382 */ jal play_sfx_a1 /* 088C9C 7F05416C 00E03025 */ move $a2, $a3 /* 088CA0 7F054170 10000047 */ b .L7F054290 /* 088CA4 7F054174 8FAC001C */ lw $t4, 0x1c($sp) .L7F054178: /* 088CA8 7F054178 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088CAC 7F05417C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088CB0 7F054180 24050007 */ li $a1, 7 /* 088CB4 7F054184 00003025 */ move $a2, $zero /* 088CB8 7F054188 0C002382 */ jal play_sfx_a1 /* 088CBC 7F05418C AFA70018 */ sw $a3, 0x18($sp) /* 088CC0 7F054190 8FA70018 */ lw $a3, 0x18($sp) /* 088CC4 7F054194 AFA2001C */ sw $v0, 0x1c($sp) /* 088CC8 7F054198 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088CCC 7F05419C 10E0003B */ beqz $a3, .L7F05428C /* 088CD0 7F0541A0 24050007 */ li $a1, 7 /* 088CD4 7F0541A4 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088CD8 7F0541A8 0C002382 */ jal play_sfx_a1 /* 088CDC 7F0541AC 00E03025 */ move $a2, $a3 /* 088CE0 7F0541B0 10000037 */ b .L7F054290 /* 088CE4 7F0541B4 8FAC001C */ lw $t4, 0x1c($sp) .L7F0541B8: /* 088CE8 7F0541B8 10E00034 */ beqz $a3, .L7F05428C /* 088CEC 7F0541BC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088CF0 7F0541C0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088CF4 7F0541C4 240500DA */ li $a1, 218 /* 088CF8 7F0541C8 0C002382 */ jal play_sfx_a1 /* 088CFC 7F0541CC 00E03025 */ move $a2, $a3 /* 088D00 7F0541D0 1000002F */ b .L7F054290 /* 088D04 7F0541D4 8FAC001C */ lw $t4, 0x1c($sp) .L7F0541D8: /* 088D08 7F0541D8 10E0002C */ beqz $a3, .L7F05428C /* 088D0C 7F0541DC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088D10 7F0541E0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088D14 7F0541E4 240500E1 */ li $a1, 225 /* 088D18 7F0541E8 0C002382 */ jal play_sfx_a1 /* 088D1C 7F0541EC 00E03025 */ move $a2, $a3 /* 088D20 7F0541F0 10000027 */ b .L7F054290 /* 088D24 7F0541F4 8FAC001C */ lw $t4, 0x1c($sp) .L7F0541F8: /* 088D28 7F0541F8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088D2C 7F0541FC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088D30 7F054200 240500D6 */ li $a1, 214 /* 088D34 7F054204 0C002382 */ jal play_sfx_a1 /* 088D38 7F054208 00003025 */ move $a2, $zero /* 088D3C 7F05420C 1000001F */ b .L7F05428C /* 088D40 7F054210 AFA2001C */ sw $v0, 0x1c($sp) .L7F054214: /* 088D44 7F054214 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088D48 7F054218 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088D4C 7F05421C 24050007 */ li $a1, 7 /* 088D50 7F054220 00003025 */ move $a2, $zero /* 088D54 7F054224 0C002382 */ jal play_sfx_a1 /* 088D58 7F054228 AFA70018 */ sw $a3, 0x18($sp) /* 088D5C 7F05422C 8FA70018 */ lw $a3, 0x18($sp) /* 088D60 7F054230 10400008 */ beqz $v0, .L7F054254 /* 088D64 7F054234 AFA2001C */ sw $v0, 0x1c($sp) /* 088D68 7F054238 8FAB0020 */ lw $t3, 0x20($sp) /* 088D6C 7F05423C 00402025 */ move $a0, $v0 /* 088D70 7F054240 8D650010 */ lw $a1, 0x10($t3) /* 088D74 7F054244 AFA70018 */ sw $a3, 0x18($sp) /* 088D78 7F054248 0FC14E84 */ jal sub_GAME_7F053A10 /* 088D7C 7F05424C 24A50008 */ addiu $a1, $a1, 8 /* 088D80 7F054250 8FA70018 */ lw $a3, 0x18($sp) .L7F054254: /* 088D84 7F054254 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088D88 7F054258 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088D8C 7F05425C 240500CA */ li $a1, 202 /* 088D90 7F054260 00003025 */ move $a2, $zero /* 088D94 7F054264 0C002382 */ jal play_sfx_a1 /* 088D98 7F054268 AFA70018 */ sw $a3, 0x18($sp) /* 088D9C 7F05426C 8FA70018 */ lw $a3, 0x18($sp) /* 088DA0 7F054270 AFA2001C */ sw $v0, 0x1c($sp) /* 088DA4 7F054274 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088DA8 7F054278 10E00004 */ beqz $a3, .L7F05428C /* 088DAC 7F05427C 240500CC */ li $a1, 204 /* 088DB0 7F054280 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088DB4 7F054284 0C002382 */ jal play_sfx_a1 /* 088DB8 7F054288 00E03025 */ move $a2, $a3 def_7F053FD0: .L7F05428C: /* 088DBC 7F05428C 8FAC001C */ lw $t4, 0x1c($sp) .L7F054290: /* 088DC0 7F054290 8FAD0020 */ lw $t5, 0x20($sp) /* 088DC4 7F054294 11800005 */ beqz $t4, .L7F0542AC /* 088DC8 7F054298 00000000 */ nop /* 088DCC 7F05429C 8DA50010 */ lw $a1, 0x10($t5) /* 088DD0 7F0542A0 01802025 */ move $a0, $t4 /* 088DD4 7F0542A4 0FC14E84 */ jal sub_GAME_7F053A10 /* 088DD8 7F0542A8 24A50008 */ addiu $a1, $a1, 8 .L7F0542AC: /* 088DDC 7F0542AC 0FC14E8F */ jal sub_GAME_7F053A3C /* 088DE0 7F0542B0 8FA40020 */ lw $a0, 0x20($sp) /* 088DE4 7F0542B4 8FBF0014 */ lw $ra, 0x14($sp) /* 088DE8 7F0542B8 27BD0020 */ addiu $sp, $sp, 0x20 /* 088DEC 7F0542BC 03E00008 */ jr $ra /* 088DF0 7F0542C0 00000000 */ nop ) #endif #ifdef NONMATCHING void play_door_closing_soundeffect_0(void) { } #else GLOBAL_ASM( .late_rodata /*D:800533D4*/ glabel door_closing_sound_table_0 .word .L7F054308 .word .L7F054328 .word .L7F054348 .word .L7F054368 .word .L7F054484 .word .L7F054484 .word .L7F054388 .word .L7F0543A8 .word .L7F0543C8 .word .L7F054484 .word .L7F054484 .word .L7F054484 .word .L7F0543E8 .word .L7F054408 .word .L7F054428 .word .L7F054448 .word .L7F054468 .text glabel play_door_closing_soundeffect_0 /* 088DF4 7F0542C4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088DF8 7F0542C8 AFBF0014 */ sw $ra, 0x14($sp) /* 088DFC 7F0542CC AFA40020 */ sw $a0, 0x20($sp) /* 088E00 7F0542D0 0FC14EC4 */ jal sub_GAME_7F053B10 /* 088E04 7F0542D4 AFA0001C */ sw $zero, 0x1c($sp) /* 088E08 7F0542D8 8FA70020 */ lw $a3, 0x20($sp) /* 088E0C 7F0542DC 8FA6001C */ lw $a2, 0x1c($sp) /* 088E10 7F0542E0 8CEE00A4 */ lw $t6, 0xa4($a3) /* 088E14 7F0542E4 25CFFFFF */ addiu $t7, $t6, -1 /* 088E18 7F0542E8 2DE10011 */ sltiu $at, $t7, 0x11 /* 088E1C 7F0542EC 10200065 */ beqz $at, .L7F054484 /* 088E20 7F0542F0 000F7880 */ sll $t7, $t7, 2 /* 088E24 7F0542F4 3C018005 */ lui $at, %hi(door_closing_sound_table_0) /* 088E28 7F0542F8 002F0821 */ addu $at, $at, $t7 /* 088E2C 7F0542FC 8C2F33D4 */ lw $t7, %lo(door_closing_sound_table_0)($at) .L7F054300: /* 088E30 7F054300 01E00008 */ jr $t7 /* 088E34 7F054304 00000000 */ nop .L7F054308: /* 088E38 7F054308 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088E3C 7F05430C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088E40 7F054310 240500D2 */ li $a1, 210 /* 088E44 7F054314 0C002382 */ jal play_sfx_a1 /* 088E48 7F054318 00003025 */ move $a2, $zero /* 088E4C 7F05431C 00403025 */ move $a2, $v0 /* 088E50 7F054320 10000058 */ b .L7F054484 /* 088E54 7F054324 8FA70020 */ lw $a3, 0x20($sp) .L7F054328: /* 088E58 7F054328 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088E5C 7F05432C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088E60 7F054330 240500D2 */ li $a1, 210 /* 088E64 7F054334 0C002382 */ jal play_sfx_a1 /* 088E68 7F054338 00003025 */ move $a2, $zero /* 088E6C 7F05433C 00403025 */ move $a2, $v0 /* 088E70 7F054340 10000050 */ b .L7F054484 /* 088E74 7F054344 8FA70020 */ lw $a3, 0x20($sp) .L7F054348: /* 088E78 7F054348 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088E7C 7F05434C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088E80 7F054350 240500CB */ li $a1, 203 /* 088E84 7F054354 0C002382 */ jal play_sfx_a1 /* 088E88 7F054358 00003025 */ move $a2, $zero /* 088E8C 7F05435C 00403025 */ move $a2, $v0 /* 088E90 7F054360 10000048 */ b .L7F054484 /* 088E94 7F054364 8FA70020 */ lw $a3, 0x20($sp) .L7F054368: /* 088E98 7F054368 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088E9C 7F05436C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088EA0 7F054370 240500D7 */ li $a1, 215 /* 088EA4 7F054374 0C002382 */ jal play_sfx_a1 /* 088EA8 7F054378 00003025 */ move $a2, $zero /* 088EAC 7F05437C 00403025 */ move $a2, $v0 /* 088EB0 7F054380 10000040 */ b .L7F054484 /* 088EB4 7F054384 8FA70020 */ lw $a3, 0x20($sp) .L7F054388: /* 088EB8 7F054388 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088EBC 7F05438C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088EC0 7F054390 240500D2 */ li $a1, 210 /* 088EC4 7F054394 0C002382 */ jal play_sfx_a1 /* 088EC8 7F054398 00003025 */ move $a2, $zero /* 088ECC 7F05439C 00403025 */ move $a2, $v0 /* 088ED0 7F0543A0 10000038 */ b .L7F054484 /* 088ED4 7F0543A4 8FA70020 */ lw $a3, 0x20($sp) .L7F0543A8: /* 088ED8 7F0543A8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088EDC 7F0543AC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088EE0 7F0543B0 240500BB */ li $a1, 187 /* 088EE4 7F0543B4 0C002382 */ jal play_sfx_a1 /* 088EE8 7F0543B8 00003025 */ move $a2, $zero /* 088EEC 7F0543BC 00403025 */ move $a2, $v0 /* 088EF0 7F0543C0 10000030 */ b .L7F054484 /* 088EF4 7F0543C4 8FA70020 */ lw $a3, 0x20($sp) .L7F0543C8: /* 088EF8 7F0543C8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088EFC 7F0543CC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088F00 7F0543D0 240500C3 */ li $a1, 195 /* 088F04 7F0543D4 0C002382 */ jal play_sfx_a1 /* 088F08 7F0543D8 00003025 */ move $a2, $zero /* 088F0C 7F0543DC 00403025 */ move $a2, $v0 /* 088F10 7F0543E0 10000028 */ b .L7F054484 /* 088F14 7F0543E4 8FA70020 */ lw $a3, 0x20($sp) .L7F0543E8: /* 088F18 7F0543E8 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088F1C 7F0543EC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088F20 7F0543F0 24050007 */ li $a1, 7 /* 088F24 7F0543F4 0C002382 */ jal play_sfx_a1 /* 088F28 7F0543F8 00003025 */ move $a2, $zero /* 088F2C 7F0543FC 00403025 */ move $a2, $v0 /* 088F30 7F054400 10000020 */ b .L7F054484 /* 088F34 7F054404 8FA70020 */ lw $a3, 0x20($sp) .L7F054408: /* 088F38 7F054408 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088F3C 7F05440C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088F40 7F054410 240500DB */ li $a1, 219 /* 088F44 7F054414 0C002382 */ jal play_sfx_a1 /* 088F48 7F054418 00003025 */ move $a2, $zero /* 088F4C 7F05441C 00403025 */ move $a2, $v0 /* 088F50 7F054420 10000018 */ b .L7F054484 /* 088F54 7F054424 8FA70020 */ lw $a3, 0x20($sp) .L7F054428: /* 088F58 7F054428 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088F5C 7F05442C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088F60 7F054430 240500E2 */ li $a1, 226 /* 088F64 7F054434 0C002382 */ jal play_sfx_a1 /* 088F68 7F054438 00003025 */ move $a2, $zero /* 088F6C 7F05443C 00403025 */ move $a2, $v0 /* 088F70 7F054440 10000010 */ b .L7F054484 /* 088F74 7F054444 8FA70020 */ lw $a3, 0x20($sp) .L7F054448: /* 088F78 7F054448 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088F7C 7F05444C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088F80 7F054450 240500D7 */ li $a1, 215 /* 088F84 7F054454 0C002382 */ jal play_sfx_a1 /* 088F88 7F054458 00003025 */ move $a2, $zero /* 088F8C 7F05445C 00403025 */ move $a2, $v0 /* 088F90 7F054460 10000008 */ b .L7F054484 /* 088F94 7F054464 8FA70020 */ lw $a3, 0x20($sp) .L7F054468: /* 088F98 7F054468 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 088F9C 7F05446C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 088FA0 7F054470 240500CB */ li $a1, 203 /* 088FA4 7F054474 0C002382 */ jal play_sfx_a1 /* 088FA8 7F054478 00003025 */ move $a2, $zero /* 088FAC 7F05447C 00403025 */ move $a2, $v0 /* 088FB0 7F054480 8FA70020 */ lw $a3, 0x20($sp) def_7F054300: .L7F054484: /* 088FB4 7F054484 10C00006 */ beqz $a2, .L7F0544A0 /* 088FB8 7F054488 00000000 */ nop /* 088FBC 7F05448C 8CE50010 */ lw $a1, 0x10($a3) /* 088FC0 7F054490 00C02025 */ move $a0, $a2 /* 088FC4 7F054494 0FC14E84 */ jal sub_GAME_7F053A10 /* 088FC8 7F054498 24A50008 */ addiu $a1, $a1, 8 /* 088FCC 7F05449C 8FA70020 */ lw $a3, 0x20($sp) .L7F0544A0: /* 088FD0 7F0544A0 0FC14E8F */ jal sub_GAME_7F053A3C /* 088FD4 7F0544A4 00E02025 */ move $a0, $a3 /* 088FD8 7F0544A8 8FBF0014 */ lw $ra, 0x14($sp) /* 088FDC 7F0544AC 27BD0020 */ addiu $sp, $sp, 0x20 /* 088FE0 7F0544B0 03E00008 */ jr $ra /* 088FE4 7F0544B4 00000000 */ nop ) #endif #ifdef NONMATCHING void play_door_closing_soundeffect_1(void) { } #else GLOBAL_ASM( .late_rodata /*D:80053418*/ glabel door_closing_sound_table_1 .word .L7F0544FC .word .L7F05451C .word .L7F05453C .word .L7F05455C .word .L7F05457C .word .L7F05459C .word .L7F0545BC .word .L7F0545DC .word .L7F0545FC .word .L7F05461C .word .L7F05463C .word .L7F05465C .word .L7F05467C .word .L7F05469C .word .L7F0546BC .word .L7F0546DC .word .L7F0546FC .text glabel play_door_closing_soundeffect_1 /* 088FE8 7F0544B8 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088FEC 7F0544BC AFBF0014 */ sw $ra, 0x14($sp) /* 088FF0 7F0544C0 AFA40020 */ sw $a0, 0x20($sp) /* 088FF4 7F0544C4 0FC14EC4 */ jal sub_GAME_7F053B10 /* 088FF8 7F0544C8 AFA0001C */ sw $zero, 0x1c($sp) /* 088FFC 7F0544CC 8FA70020 */ lw $a3, 0x20($sp) /* 089000 7F0544D0 8FA6001C */ lw $a2, 0x1c($sp) /* 089004 7F0544D4 8CEE00A4 */ lw $t6, 0xa4($a3) /* 089008 7F0544D8 25CFFFFF */ addiu $t7, $t6, -1 /* 08900C 7F0544DC 2DE10011 */ sltiu $at, $t7, 0x11 /* 089010 7F0544E0 1020008D */ beqz $at, .L7F054718 /* 089014 7F0544E4 000F7880 */ sll $t7, $t7, 2 /* 089018 7F0544E8 3C018005 */ lui $at, %hi(door_closing_sound_table_1) /* 08901C 7F0544EC 002F0821 */ addu $at, $at, $t7 /* 089020 7F0544F0 8C2F3418 */ lw $t7, %lo(door_closing_sound_table_1)($at) /* 089024 7F0544F4 01E00008 */ jr $t7 /* 089028 7F0544F8 00000000 */ nop .L7F0544FC: /* 08902C 7F0544FC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089030 7F054500 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089034 7F054504 240500D2 */ li $a1, 210 /* 089038 7F054508 0C002382 */ jal play_sfx_a1 /* 08903C 7F05450C 00003025 */ move $a2, $zero /* 089040 7F054510 00403025 */ move $a2, $v0 /* 089044 7F054514 10000080 */ b .L7F054718 /* 089048 7F054518 8FA70020 */ lw $a3, 0x20($sp) .L7F05451C: /* 08904C 7F05451C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089050 7F054520 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089054 7F054524 240500D2 */ li $a1, 210 /* 089058 7F054528 0C002382 */ jal play_sfx_a1 /* 08905C 7F05452C 00003025 */ move $a2, $zero /* 089060 7F054530 00403025 */ move $a2, $v0 /* 089064 7F054534 10000078 */ b .L7F054718 /* 089068 7F054538 8FA70020 */ lw $a3, 0x20($sp) .L7F05453C: /* 08906C 7F05453C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089070 7F054540 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089074 7F054544 240500CB */ li $a1, 203 /* 089078 7F054548 0C002382 */ jal play_sfx_a1 /* 08907C 7F05454C 00003025 */ move $a2, $zero /* 089080 7F054550 00403025 */ move $a2, $v0 /* 089084 7F054554 10000070 */ b .L7F054718 /* 089088 7F054558 8FA70020 */ lw $a3, 0x20($sp) .L7F05455C: /* 08908C 7F05455C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089090 7F054560 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089094 7F054564 240500D7 */ li $a1, 215 /* 089098 7F054568 0C002382 */ jal play_sfx_a1 /* 08909C 7F05456C 00003025 */ move $a2, $zero /* 0890A0 7F054570 00403025 */ move $a2, $v0 /* 0890A4 7F054574 10000068 */ b .L7F054718 /* 0890A8 7F054578 8FA70020 */ lw $a3, 0x20($sp) .L7F05457C: /* 0890AC 7F05457C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0890B0 7F054580 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0890B4 7F054584 240500BB */ li $a1, 187 /* 0890B8 7F054588 0C002382 */ jal play_sfx_a1 /* 0890BC 7F05458C 00003025 */ move $a2, $zero /* 0890C0 7F054590 00403025 */ move $a2, $v0 /* 0890C4 7F054594 10000060 */ b .L7F054718 /* 0890C8 7F054598 8FA70020 */ lw $a3, 0x20($sp) .L7F05459C: /* 0890CC 7F05459C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0890D0 7F0545A0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0890D4 7F0545A4 24050007 */ li $a1, 7 /* 0890D8 7F0545A8 0C002382 */ jal play_sfx_a1 /* 0890DC 7F0545AC 00003025 */ move $a2, $zero /* 0890E0 7F0545B0 00403025 */ move $a2, $v0 /* 0890E4 7F0545B4 10000058 */ b .L7F054718 /* 0890E8 7F0545B8 8FA70020 */ lw $a3, 0x20($sp) .L7F0545BC: /* 0890EC 7F0545BC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0890F0 7F0545C0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0890F4 7F0545C4 240500D2 */ li $a1, 210 /* 0890F8 7F0545C8 0C002382 */ jal play_sfx_a1 /* 0890FC 7F0545CC 00003025 */ move $a2, $zero /* 089100 7F0545D0 00403025 */ move $a2, $v0 /* 089104 7F0545D4 10000050 */ b .L7F054718 /* 089108 7F0545D8 8FA70020 */ lw $a3, 0x20($sp) .L7F0545DC: /* 08910C 7F0545DC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089110 7F0545E0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089114 7F0545E4 240500BB */ li $a1, 187 /* 089118 7F0545E8 0C002382 */ jal play_sfx_a1 /* 08911C 7F0545EC 00003025 */ move $a2, $zero /* 089120 7F0545F0 00403025 */ move $a2, $v0 /* 089124 7F0545F4 10000048 */ b .L7F054718 /* 089128 7F0545F8 8FA70020 */ lw $a3, 0x20($sp) .L7F0545FC: /* 08912C 7F0545FC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089130 7F054600 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089134 7F054604 240500C3 */ li $a1, 195 /* 089138 7F054608 0C002382 */ jal play_sfx_a1 /* 08913C 7F05460C 00003025 */ move $a2, $zero /* 089140 7F054610 00403025 */ move $a2, $v0 /* 089144 7F054614 10000040 */ b .L7F054718 /* 089148 7F054618 8FA70020 */ lw $a3, 0x20($sp) .L7F05461C: /* 08914C 7F05461C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089150 7F054620 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089154 7F054624 240500C5 */ li $a1, 197 /* 089158 7F054628 0C002382 */ jal play_sfx_a1 /* 08915C 7F05462C 00003025 */ move $a2, $zero /* 089160 7F054630 00403025 */ move $a2, $v0 /* 089164 7F054634 10000038 */ b .L7F054718 /* 089168 7F054638 8FA70020 */ lw $a3, 0x20($sp) .L7F05463C: /* 08916C 7F05463C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089170 7F054640 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089174 7F054644 240500C7 */ li $a1, 199 /* 089178 7F054648 0C002382 */ jal play_sfx_a1 /* 08917C 7F05464C 00003025 */ move $a2, $zero /* 089180 7F054650 00403025 */ move $a2, $v0 /* 089184 7F054654 10000030 */ b .L7F054718 /* 089188 7F054658 8FA70020 */ lw $a3, 0x20($sp) .L7F05465C: /* 08918C 7F05465C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089190 7F054660 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089194 7F054664 240500C9 */ li $a1, 201 /* 089198 7F054668 0C002382 */ jal play_sfx_a1 /* 08919C 7F05466C 00003025 */ move $a2, $zero /* 0891A0 7F054670 00403025 */ move $a2, $v0 /* 0891A4 7F054674 10000028 */ b .L7F054718 /* 0891A8 7F054678 8FA70020 */ lw $a3, 0x20($sp) .L7F05467C: /* 0891AC 7F05467C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0891B0 7F054680 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0891B4 7F054684 24050007 */ li $a1, 7 /* 0891B8 7F054688 0C002382 */ jal play_sfx_a1 /* 0891BC 7F05468C 00003025 */ move $a2, $zero /* 0891C0 7F054690 00403025 */ move $a2, $v0 /* 0891C4 7F054694 10000020 */ b .L7F054718 /* 0891C8 7F054698 8FA70020 */ lw $a3, 0x20($sp) .L7F05469C: /* 0891CC 7F05469C 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0891D0 7F0546A0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0891D4 7F0546A4 240500DB */ li $a1, 219 /* 0891D8 7F0546A8 0C002382 */ jal play_sfx_a1 /* 0891DC 7F0546AC 00003025 */ move $a2, $zero /* 0891E0 7F0546B0 00403025 */ move $a2, $v0 /* 0891E4 7F0546B4 10000018 */ b .L7F054718 /* 0891E8 7F0546B8 8FA70020 */ lw $a3, 0x20($sp) .L7F0546BC: /* 0891EC 7F0546BC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 0891F0 7F0546C0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 0891F4 7F0546C4 240500E2 */ li $a1, 226 /* 0891F8 7F0546C8 0C002382 */ jal play_sfx_a1 /* 0891FC 7F0546CC 00003025 */ move $a2, $zero /* 089200 7F0546D0 00403025 */ move $a2, $v0 /* 089204 7F0546D4 10000010 */ b .L7F054718 /* 089208 7F0546D8 8FA70020 */ lw $a3, 0x20($sp) .L7F0546DC: /* 08920C 7F0546DC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089210 7F0546E0 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089214 7F0546E4 240500D7 */ li $a1, 215 /* 089218 7F0546E8 0C002382 */ jal play_sfx_a1 /* 08921C 7F0546EC 00003025 */ move $a2, $zero /* 089220 7F0546F0 00403025 */ move $a2, $v0 /* 089224 7F0546F4 10000008 */ b .L7F054718 /* 089228 7F0546F8 8FA70020 */ lw $a3, 0x20($sp) .L7F0546FC: /* 08922C 7F0546FC 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 089230 7F054700 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 089234 7F054704 240500CB */ li $a1, 203 /* 089238 7F054708 0C002382 */ jal play_sfx_a1 /* 08923C 7F05470C 00003025 */ move $a2, $zero /* 089240 7F054710 00403025 */ move $a2, $v0 /* 089244 7F054714 8FA70020 */ lw $a3, 0x20($sp) def_7F0544F4: .L7F054718: /* 089248 7F054718 10C00006 */ beqz $a2, .L7F054734 /* 08924C 7F05471C 00000000 */ nop /* 089250 7F054720 8CE50010 */ lw $a1, 0x10($a3) /* 089254 7F054724 00C02025 */ move $a0, $a2 /* 089258 7F054728 0FC14E84 */ jal sub_GAME_7F053A10 /* 08925C 7F05472C 24A50008 */ addiu $a1, $a1, 8 /* 089260 7F054730 8FA70020 */ lw $a3, 0x20($sp) .L7F054734: /* 089264 7F054734 0FC14E8F */ jal sub_GAME_7F053A3C /* 089268 7F054738 00E02025 */ move $a0, $a3 /* 08926C 7F05473C 8FBF0014 */ lw $ra, 0x14($sp) /* 089270 7F054740 27BD0020 */ addiu $sp, $sp, 0x20 /* 089274 7F054744 03E00008 */ jr $ra /* 089278 7F054748 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F05474C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05474C /* 08927C 7F05474C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 089280 7F054750 AFBF0014 */ sw $ra, 0x14($sp) /* 089284 7F054754 8C8E0008 */ lw $t6, 8($a0) /* 089288 7F054758 8C980064 */ lw $t8, 0x64($a0) /* 08928C 7F05475C 3C017FFF */ lui $at, (0x7FFFFFFF >> 16) # lui $at, 0x7fff /* 089290 7F054760 3421FFFF */ ori $at, (0x7FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 089294 7F054764 01C17824 */ and $t7, $t6, $at /* 089298 7F054768 37190200 */ ori $t9, $t8, 0x200 /* 08929C 7F05476C AC8F0008 */ sw $t7, 8($a0) /* 0892A0 7F054770 AC990064 */ sw $t9, 0x64($a0) /* 0892A4 7F054774 0FC14EDE */ jal play_door_opening_soundeffect_0 /* 0892A8 7F054778 AFA40018 */ sw $a0, 0x18($sp) /* 0892AC 7F05477C 0FC14D66 */ jal sub_GAME_7F053598 /* 0892B0 7F054780 8FA40018 */ lw $a0, 0x18($sp) /* 0892B4 7F054784 8FA40018 */ lw $a0, 0x18($sp) /* 0892B8 7F054788 24010008 */ li $at, 8 /* 0892BC 7F05478C 9488009A */ lhu $t0, 0x9a($a0) /* 0892C0 7F054790 5501000F */ bnel $t0, $at, .L7F0547D0 /* 0892C4 7F054794 8FBF0014 */ lw $ra, 0x14($sp) /* 0892C8 7F054798 8C890008 */ lw $t1, 8($a0) /* 0892CC 7F05479C 8C820068 */ lw $v0, 0x68($a0) /* 0892D0 7F0547A0 44802000 */ mtc1 $zero, $f4 /* 0892D4 7F0547A4 3C010200 */ lui $at, 0x200 /* 0892D8 7F0547A8 01215025 */ or $t2, $t1, $at /* 0892DC 7F0547AC AC8A0008 */ sw $t2, 8($a0) /* 0892E0 7F0547B0 10400002 */ beqz $v0, .L7F0547BC /* 0892E4 7F0547B4 E4840088 */ swc1 $f4, 0x88($a0) /* 0892E8 7F0547B8 AC400000 */ sw $zero, ($v0) .L7F0547BC: /* 0892EC 7F0547BC 8C8B0008 */ lw $t3, 8($a0) /* 0892F0 7F0547C0 2401FEFF */ li $at, -257 /* 0892F4 7F0547C4 01616024 */ and $t4, $t3, $at /* 0892F8 7F0547C8 AC8C0008 */ sw $t4, 8($a0) /* 0892FC 7F0547CC 8FBF0014 */ lw $ra, 0x14($sp) .L7F0547D0: /* 089300 7F0547D0 27BD0018 */ addiu $sp, $sp, 0x18 /* 089304 7F0547D4 03E00008 */ jr $ra /* 089308 7F0547D8 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0547DC(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0547DC /* 08930C 7F0547DC 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 089310 7F0547E0 AFBF0014 */ sw $ra, 0x14($sp) /* 089314 7F0547E4 8C8E0008 */ lw $t6, 8($a0) /* 089318 7F0547E8 3C017FFF */ lui $at, (0x7FFFFFFF >> 16) # lui $at, 0x7fff /* 08931C 7F0547EC 3421FFFF */ ori $at, (0x7FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 089320 7F0547F0 01C17824 */ and $t7, $t6, $at /* 089324 7F0547F4 0FC14FD9 */ jal play_door_opening_soundeffect_1 /* 089328 7F0547F8 AC8F0008 */ sw $t7, 8($a0) /* 08932C 7F0547FC 8FBF0014 */ lw $ra, 0x14($sp) /* 089330 7F054800 27BD0018 */ addiu $sp, $sp, 0x18 /* 089334 7F054804 03E00008 */ jr $ra /* 089338 7F054808 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F05480C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05480C /* 08933C 7F05480C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 089340 7F054810 AFBF0014 */ sw $ra, 0x14($sp) /* 089344 7F054814 0FC150B1 */ jal play_door_closing_soundeffect_0 /* 089348 7F054818 AFA40018 */ sw $a0, 0x18($sp) /* 08934C 7F05481C 8FA50018 */ lw $a1, 0x18($sp) /* 089350 7F054820 24010008 */ li $at, 8 /* 089354 7F054824 94AE009A */ lhu $t6, 0x9a($a1) /* 089358 7F054828 55C10011 */ bnel $t6, $at, .L7F054870 /* 08935C 7F05482C 8FBF0014 */ lw $ra, 0x14($sp) /* 089360 7F054830 8CA40010 */ lw $a0, 0x10($a1) /* 089364 7F054834 0FC0FF6A */ jal sub_GAME_7F03FDA8 /* 089368 7F054838 AFA50018 */ sw $a1, 0x18($sp) /* 08936C 7F05483C 8FA50018 */ lw $a1, 0x18($sp) /* 089370 7F054840 8CAF0064 */ lw $t7, 0x64($a1) /* 089374 7F054844 31F80080 */ andi $t8, $t7, 0x80 /* 089378 7F054848 53000009 */ beql $t8, $zero, .L7F054870 /* 08937C 7F05484C 8FBF0014 */ lw $ra, 0x14($sp) /* 089380 7F054850 8CA2006C */ lw $v0, 0x6c($a1) /* 089384 7F054854 8C590000 */ lw $t9, ($v0) /* 089388 7F054858 37280001 */ ori $t0, $t9, 1 /* 08938C 7F05485C AC480000 */ sw $t0, ($v0) /* 089390 7F054860 8CA4006C */ lw $a0, 0x6c($a1) /* 089394 7F054864 0FC15FF4 */ jal matrix_4x4_set_identity /* 089398 7F054868 24840020 */ addiu $a0, $a0, 0x20 /* 08939C 7F05486C 8FBF0014 */ lw $ra, 0x14($sp) .L7F054870: /* 0893A0 7F054870 27BD0018 */ addiu $sp, $sp, 0x18 /* 0893A4 7F054874 03E00008 */ jr $ra /* 0893A8 7F054878 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F05487C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05487C /* 0893AC 7F05487C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0893B0 7F054880 AFBF0014 */ sw $ra, 0x14($sp) /* 0893B4 7F054884 0FC1512E */ jal play_door_closing_soundeffect_1 /* 0893B8 7F054888 AFA40018 */ sw $a0, 0x18($sp) /* 0893BC 7F05488C 0FC14D71 */ jal sub_GAME_7F0535C4 /* 0893C0 7F054890 8FA40018 */ lw $a0, 0x18($sp) /* 0893C4 7F054894 8FBF0014 */ lw $ra, 0x14($sp) /* 0893C8 7F054898 27BD0018 */ addiu $sp, $sp, 0x18 /* 0893CC 7F05489C 03E00008 */ jr $ra /* 0893D0 7F0548A0 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0548A4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0548A4 /* 0893D4 7F0548A4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0893D8 7F0548A8 24010001 */ li $at, 1 /* 0893DC 7F0548AC 14A1000E */ bne $a1, $at, .L7F0548E8 /* 0893E0 7F0548B0 AFBF0014 */ sw $ra, 0x14($sp) /* 0893E4 7F0548B4 808200BC */ lb $v0, 0xbc($a0) /* 0893E8 7F0548B8 24010003 */ li $at, 3 /* 0893EC 7F0548BC 50400004 */ beql $v0, $zero, .L7F0548D0 /* 0893F0 7F0548C0 AFA40018 */ sw $a0, 0x18($sp) /* 0893F4 7F0548C4 14410006 */ bne $v0, $at, .L7F0548E0 /* 0893F8 7F0548C8 00000000 */ nop /* 0893FC 7F0548CC AFA40018 */ sw $a0, 0x18($sp) .L7F0548D0: /* 089400 7F0548D0 0FC151D3 */ jal sub_GAME_7F05474C /* 089404 7F0548D4 AFA5001C */ sw $a1, 0x1c($sp) /* 089408 7F0548D8 8FA40018 */ lw $a0, 0x18($sp) /* 08940C 7F0548DC 8FA5001C */ lw $a1, 0x1c($sp) .L7F0548E0: /* 089410 7F0548E0 10000025 */ b .L7F054978 /* 089414 7F0548E4 A08500BC */ sb $a1, 0xbc($a0) .L7F0548E8: /* 089418 7F0548E8 24010002 */ li $at, 2 /* 08941C 7F0548EC 54A10022 */ bnel $a1, $at, .L7F054978 /* 089420 7F0548F0 A08500BC */ sb $a1, 0xbc($a0) /* 089424 7F0548F4 808200BC */ lb $v0, 0xbc($a0) /* 089428 7F0548F8 1440000D */ bnez $v0, .L7F054930 /* 08942C 7F0548FC 00000000 */ nop /* 089430 7F054900 44802000 */ mtc1 $zero, $f4 /* 089434 7F054904 C48600B4 */ lwc1 $f6, 0xb4($a0) /* 089438 7F054908 4606203C */ c.lt.s $f4, $f6 /* 08943C 7F05490C 00000000 */ nop /* 089440 7F054910 45000007 */ bc1f .L7F054930 /* 089444 7F054914 00000000 */ nop /* 089448 7F054918 AFA40018 */ sw $a0, 0x18($sp) /* 08944C 7F05491C 0FC151F7 */ jal sub_GAME_7F0547DC /* 089450 7F054920 AFA5001C */ sw $a1, 0x1c($sp) /* 089454 7F054924 8FA40018 */ lw $a0, 0x18($sp) /* 089458 7F054928 8FA5001C */ lw $a1, 0x1c($sp) /* 08945C 7F05492C 808200BC */ lb $v0, 0xbc($a0) .L7F054930: /* 089460 7F054930 10400003 */ beqz $v0, .L7F054940 /* 089464 7F054934 24010003 */ li $at, 3 /* 089468 7F054938 14410008 */ bne $v0, $at, .L7F05495C /* 08946C 7F05493C 00000000 */ nop .L7F054940: /* 089470 7F054940 44804000 */ mtc1 $zero, $f8 /* 089474 7F054944 C48A00B4 */ lwc1 $f10, 0xb4($a0) /* 089478 7F054948 24010003 */ li $at, 3 /* 08947C 7F05494C 460A403C */ c.lt.s $f8, $f10 /* 089480 7F054950 00000000 */ nop /* 089484 7F054954 45000003 */ bc1f .L7F054964 /* 089488 7F054958 00000000 */ nop .L7F05495C: /* 08948C 7F05495C 10000006 */ b .L7F054978 /* 089490 7F054960 A08500BC */ sb $a1, 0xbc($a0) .L7F054964: /* 089494 7F054964 54410005 */ bnel $v0, $at, .L7F05497C /* 089498 7F054968 8FBF0014 */ lw $ra, 0x14($sp) /* 08949C 7F05496C 10000002 */ b .L7F054978 /* 0894A0 7F054970 A08000BC */ sb $zero, 0xbc($a0) /* 0894A4 7F054974 A08500BC */ sb $a1, 0xbc($a0) .L7F054978: /* 0894A8 7F054978 8FBF0014 */ lw $ra, 0x14($sp) .L7F05497C: /* 0894AC 7F05497C 27BD0018 */ addiu $sp, $sp, 0x18 /* 0894B0 7F054980 03E00008 */ jr $ra /* 0894B4 7F054984 00000000 */ nop ) #endif #ifdef NONMATCHING void set_door_state(void) { } #else GLOBAL_ASM( .text glabel set_door_state /* 0894B8 7F054988 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0894BC 7F05498C AFBF0024 */ sw $ra, 0x24($sp) /* 0894C0 7F054990 AFB20020 */ sw $s2, 0x20($sp) /* 0894C4 7F054994 AFB1001C */ sw $s1, 0x1c($sp) /* 0894C8 7F054998 AFB00018 */ sw $s0, 0x18($sp) /* 0894CC 7F05499C 8C8E000C */ lw $t6, 0xc($a0) /* 0894D0 7F0549A0 00808825 */ move $s1, $a0 /* 0894D4 7F0549A4 00A09025 */ move $s2, $a1 /* 0894D8 7F0549A8 000E7840 */ sll $t7, $t6, 1 /* 0894DC 7F0549AC 05E10008 */ bgez $t7, .L7F0549D0 /* 0894E0 7F0549B0 24010001 */ li $at, 1 /* 0894E4 7F0549B4 14A10006 */ bne $a1, $at, .L7F0549D0 /* 0894E8 7F0549B8 00000000 */ nop /* 0894EC 7F0549BC 809800BC */ lb $t8, 0xbc($a0) /* 0894F0 7F0549C0 24120002 */ li $s2, 2 /* 0894F4 7F0549C4 17000002 */ bnez $t8, .L7F0549D0 /* 0894F8 7F0549C8 00000000 */ nop /* 0894FC 7F0549CC 24050003 */ li $a1, 3 .L7F0549D0: /* 089500 7F0549D0 0FC15229 */ jal sub_GAME_7F0548A4 /* 089504 7F0549D4 02202025 */ move $a0, $s1 /* 089508 7F0549D8 8E3000C8 */ lw $s0, 0xc8($s1) /* 08950C 7F0549DC 5200000B */ beql $s0, $zero, .L7F054A0C /* 089510 7F0549E0 8FBF0024 */ lw $ra, 0x24($sp) /* 089514 7F0549E4 12110008 */ beq $s0, $s1, .L7F054A08 /* 089518 7F0549E8 02002025 */ move $a0, $s0 .L7F0549EC: /* 08951C 7F0549EC 0FC15229 */ jal sub_GAME_7F0548A4 /* 089520 7F0549F0 02402825 */ move $a1, $s2 /* 089524 7F0549F4 8E1000C8 */ lw $s0, 0xc8($s0) /* 089528 7F0549F8 52000004 */ beql $s0, $zero, .L7F054A0C /* 08952C 7F0549FC 8FBF0024 */ lw $ra, 0x24($sp) /* 089530 7F054A00 5611FFFA */ bnel $s0, $s1, .L7F0549EC /* 089534 7F054A04 02002025 */ move $a0, $s0 .L7F054A08: /* 089538 7F054A08 8FBF0024 */ lw $ra, 0x24($sp) .L7F054A0C: /* 08953C 7F054A0C 8FB00018 */ lw $s0, 0x18($sp) /* 089540 7F054A10 8FB1001C */ lw $s1, 0x1c($sp) /* 089544 7F054A14 8FB20020 */ lw $s2, 0x20($sp) /* 089548 7F054A18 03E00008 */ jr $ra /* 08954C 7F054A1C 27BD0028 */ addiu $sp, $sp, 0x28 ) #endif #ifdef NONMATCHING void sub_GAME_7F054A20(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054A20 /* 089550 7F054A20 808300BC */ lb $v1, 0xbc($a0) /* 089554 7F054A24 2C620001 */ sltiu $v0, $v1, 1 /* 089558 7F054A28 14400004 */ bnez $v0, .L7F054A3C /* 08955C 7F054A2C 38620003 */ xori $v0, $v1, 3 /* 089560 7F054A30 2C420001 */ sltiu $v0, $v0, 1 /* 089564 7F054A34 10400009 */ beqz $v0, .L7F054A5C /* 089568 7F054A38 00000000 */ nop .L7F054A3C: /* 08956C 7F054A3C 44802000 */ mtc1 $zero, $f4 /* 089570 7F054A40 C48600B4 */ lwc1 $f6, 0xb4($a0) /* 089574 7F054A44 00001025 */ move $v0, $zero /* 089578 7F054A48 4604303E */ c.le.s $f6, $f4 /* 08957C 7F054A4C 00000000 */ nop /* 089580 7F054A50 45000002 */ bc1f .L7F054A5C /* 089584 7F054A54 00000000 */ nop /* 089588 7F054A58 24020001 */ li $v0, 1 .L7F054A5C: /* 08958C 7F054A5C 03E00008 */ jr $ra /* 089590 7F054A60 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F054A64(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054A64 /* 089594 7F054A64 27BDFF98 */ addiu $sp, $sp, -0x68 /* 089598 7F054A68 AFB30020 */ sw $s3, 0x20($sp) /* 08959C 7F054A6C AFB00014 */ sw $s0, 0x14($sp) /* 0895A0 7F054A70 00A08025 */ move $s0, $a1 /* 0895A4 7F054A74 27B30048 */ addiu $s3, $sp, 0x48 /* 0895A8 7F054A78 AFBF0024 */ sw $ra, 0x24($sp) /* 0895AC 7F054A7C AFB2001C */ sw $s2, 0x1c($sp) /* 0895B0 7F054A80 AFB10018 */ sw $s1, 0x18($sp) /* 0895B4 7F054A84 00009025 */ move $s2, $zero /* 0895B8 7F054A88 0FC0F2E3 */ jal sub_GAME_7F03CB8C /* 0895BC 7F054A8C 02602825 */ move $a1, $s3 /* 0895C0 7F054A90 8FA40048 */ lw $a0, 0x48($sp) /* 0895C4 7F054A94 02608825 */ move $s1, $s3 /* 0895C8 7F054A98 27B3002C */ addiu $s3, $sp, 0x2c /* 0895CC 7F054A9C 04820031 */ bltzl $a0, .L7F054B64 /* 0895D0 7F054AA0 8FBF0024 */ lw $ra, 0x24($sp) .L7F054AA4: /* 0895D4 7F054AA4 0FC2CF03 */ jal sub_GAME_7F0B3C0C /* 0895D8 7F054AA8 02602825 */ move $a1, $s3 /* 0895DC 7F054AAC 10400028 */ beqz $v0, .L7F054B50 /* 0895E0 7F054AB0 0012102B */ sltu $v0, $zero, $s2 /* 0895E4 7F054AB4 1040001E */ beqz $v0, .L7F054B30 /* 0895E8 7F054AB8 24120001 */ li $s2, 1 /* 0895EC 7F054ABC C7A4002C */ lwc1 $f4, 0x2c($sp) /* 0895F0 7F054AC0 C6060000 */ lwc1 $f6, ($s0) /* 0895F4 7F054AC4 4606203C */ c.lt.s $f4, $f6 /* 0895F8 7F054AC8 00000000 */ nop /* 0895FC 7F054ACC 45020003 */ bc1fl .L7F054ADC /* 089600 7F054AD0 C7A80030 */ lwc1 $f8, 0x30($sp) /* 089604 7F054AD4 E6040000 */ swc1 $f4, ($s0) /* 089608 7F054AD8 C7A80030 */ lwc1 $f8, 0x30($sp) .L7F054ADC: /* 08960C 7F054ADC C60A0004 */ lwc1 $f10, 4($s0) /* 089610 7F054AE0 460A403C */ c.lt.s $f8, $f10 /* 089614 7F054AE4 00000000 */ nop /* 089618 7F054AE8 45020003 */ bc1fl .L7F054AF8 /* 08961C 7F054AEC C6100008 */ lwc1 $f16, 8($s0) /* 089620 7F054AF0 E6080004 */ swc1 $f8, 4($s0) /* 089624 7F054AF4 C6100008 */ lwc1 $f16, 8($s0) .L7F054AF8: /* 089628 7F054AF8 C7B20034 */ lwc1 $f18, 0x34($sp) /* 08962C 7F054AFC 4612803C */ c.lt.s $f16, $f18 /* 089630 7F054B00 00000000 */ nop /* 089634 7F054B04 45020003 */ bc1fl .L7F054B14 /* 089638 7F054B08 C606000C */ lwc1 $f6, 0xc($s0) /* 08963C 7F054B0C E6120008 */ swc1 $f18, 8($s0) /* 089640 7F054B10 C606000C */ lwc1 $f6, 0xc($s0) .L7F054B14: /* 089644 7F054B14 C7A40038 */ lwc1 $f4, 0x38($sp) /* 089648 7F054B18 4604303C */ c.lt.s $f6, $f4 /* 08964C 7F054B1C 00000000 */ nop /* 089650 7F054B20 4502000C */ bc1fl .L7F054B54 /* 089654 7F054B24 8E240004 */ lw $a0, 4($s1) /* 089658 7F054B28 10000009 */ b .L7F054B50 /* 08965C 7F054B2C E604000C */ swc1 $f4, 0xc($s0) .L7F054B30: /* 089660 7F054B30 C7AA002C */ lwc1 $f10, 0x2c($sp) /* 089664 7F054B34 E60A0000 */ swc1 $f10, ($s0) /* 089668 7F054B38 C7A80030 */ lwc1 $f8, 0x30($sp) /* 08966C 7F054B3C E6080004 */ swc1 $f8, 4($s0) /* 089670 7F054B40 C7B00034 */ lwc1 $f16, 0x34($sp) /* 089674 7F054B44 E6100008 */ swc1 $f16, 8($s0) /* 089678 7F054B48 C7B20038 */ lwc1 $f18, 0x38($sp) /* 08967C 7F054B4C E612000C */ swc1 $f18, 0xc($s0) .L7F054B50: /* 089680 7F054B50 8E240004 */ lw $a0, 4($s1) .L7F054B54: /* 089684 7F054B54 26310004 */ addiu $s1, $s1, 4 /* 089688 7F054B58 0481FFD2 */ bgez $a0, .L7F054AA4 /* 08968C 7F054B5C 00000000 */ nop /* 089690 7F054B60 8FBF0024 */ lw $ra, 0x24($sp) .L7F054B64: /* 089694 7F054B64 02401025 */ move $v0, $s2 /* 089698 7F054B68 8FB2001C */ lw $s2, 0x1c($sp) /* 08969C 7F054B6C 8FB00014 */ lw $s0, 0x14($sp) /* 0896A0 7F054B70 8FB10018 */ lw $s1, 0x18($sp) /* 0896A4 7F054B74 8FB30020 */ lw $s3, 0x20($sp) /* 0896A8 7F054B78 03E00008 */ jr $ra /* 0896AC 7F054B7C 27BD0068 */ addiu $sp, $sp, 0x68 ) #endif #ifdef NONMATCHING void sub_GAME_7F054B80(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054B80 /* 0896B0 7F054B80 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0896B4 7F054B84 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 0896B8 7F054B88 44818000 */ mtc1 $at, $f16 /* 0896BC 7F054B8C AFBF0014 */ sw $ra, 0x14($sp) /* 0896C0 7F054B90 AFA40020 */ sw $a0, 0x20($sp) /* 0896C4 7F054B94 AFA50024 */ sw $a1, 0x24($sp) /* 0896C8 7F054B98 0FC2ECE6 */ jal return_nearfog_values /* 0896CC 7F054B9C E7B0001C */ swc1 $f16, 0x1c($sp) /* 0896D0 7F054BA0 10400028 */ beqz $v0, .L7F054C44 /* 0896D4 7F054BA4 C7B0001C */ lwc1 $f16, 0x1c($sp) /* 0896D8 7F054BA8 8FAE0020 */ lw $t6, 0x20($sp) /* 0896DC 7F054BAC C4440008 */ lwc1 $f4, 8($v0) /* 0896E0 7F054BB0 C5C60018 */ lwc1 $f6, 0x18($t6) /* 0896E4 7F054BB4 4606203C */ c.lt.s $f4, $f6 /* 0896E8 7F054BB8 00000000 */ nop /* 0896EC 7F054BBC 45020022 */ bc1fl .L7F054C48 /* 0896F0 7F054BC0 8FBF0014 */ lw $ra, 0x14($sp) /* 0896F4 7F054BC4 AFA20018 */ sw $v0, 0x18($sp) /* 0896F8 7F054BC8 0FC1E121 */ jal getPlayer_c_lodscalez /* 0896FC 7F054BCC E7B0001C */ swc1 $f16, 0x1c($sp) /* 089700 7F054BD0 8FA30018 */ lw $v1, 0x18($sp) /* 089704 7F054BD4 8FAF0020 */ lw $t7, 0x20($sp) /* 089708 7F054BD8 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 08970C 7F054BDC C4620008 */ lwc1 $f2, 8($v1) /* 089710 7F054BE0 C5E80018 */ lwc1 $f8, 0x18($t7) /* 089714 7F054BE4 44819000 */ mtc1 $at, $f18 /* 089718 7F054BE8 C7A60024 */ lwc1 $f6, 0x24($sp) /* 08971C 7F054BEC 46024281 */ sub.s $f10, $f8, $f2 /* 089720 7F054BF0 C46E0004 */ lwc1 $f14, 4($v1) /* 089724 7F054BF4 C7B0001C */ lwc1 $f16, 0x1c($sp) /* 089728 7F054BF8 46125102 */ mul.s $f4, $f10, $f18 /* 08972C 7F054BFC 46062203 */ div.s $f8, $f4, $f6 /* 089730 7F054C00 46024280 */ add.s $f10, $f8, $f2 /* 089734 7F054C04 46005302 */ mul.s $f12, $f10, $f0 /* 089738 7F054C08 460C703E */ c.le.s $f14, $f12 /* 08973C 7F054C0C 00000000 */ nop /* 089740 7F054C10 45020005 */ bc1fl .L7F054C28 /* 089744 7F054C14 C4600000 */ lwc1 $f0, ($v1) /* 089748 7F054C18 44808000 */ mtc1 $zero, $f16 /* 08974C 7F054C1C 1000000A */ b .L7F054C48 /* 089750 7F054C20 8FBF0014 */ lw $ra, 0x14($sp) /* 089754 7F054C24 C4600000 */ lwc1 $f0, ($v1) .L7F054C28: /* 089758 7F054C28 460C003C */ c.lt.s $f0, $f12 /* 08975C 7F054C2C 00000000 */ nop /* 089760 7F054C30 45020005 */ bc1fl .L7F054C48 /* 089764 7F054C34 8FBF0014 */ lw $ra, 0x14($sp) /* 089768 7F054C38 460C7481 */ sub.s $f18, $f14, $f12 /* 08976C 7F054C3C 46007101 */ sub.s $f4, $f14, $f0 /* 089770 7F054C40 46049403 */ div.s $f16, $f18, $f4 .L7F054C44: /* 089774 7F054C44 8FBF0014 */ lw $ra, 0x14($sp) .L7F054C48: /* 089778 7F054C48 27BD0020 */ addiu $sp, $sp, 0x20 /* 08977C 7F054C4C 46008006 */ mov.s $f0, $f16 /* 089780 7F054C50 03E00008 */ jr $ra /* 089784 7F054C54 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F054C58(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054C58 /* 089788 7F054C58 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 08978C 7F054C5C AFBF0014 */ sw $ra, 0x14($sp) /* 089790 7F054C60 240E0001 */ li $t6, 1 /* 089794 7F054C64 AFA40038 */ sw $a0, 0x38($sp) /* 089798 7F054C68 AFA5003C */ sw $a1, 0x3c($sp) /* 08979C 7F054C6C 0FC2ECE6 */ jal return_nearfog_values /* 0897A0 7F054C70 AFAE0034 */ sw $t6, 0x34($sp) /* 0897A4 7F054C74 50400039 */ beql $v0, $zero, .L7F054D5C /* 0897A8 7F054C78 8FBF0014 */ lw $ra, 0x14($sp) /* 0897AC 7F054C7C 0FC227F5 */ jal get_BONDdata_position /* 0897B0 7F054C80 AFA20030 */ sw $v0, 0x30($sp) /* 0897B4 7F054C84 0FC1E0F1 */ jal get_BONDdata_field_10CC /* 0897B8 7F054C88 AFA2001C */ sw $v0, 0x1c($sp) /* 0897BC 7F054C8C 8FA3001C */ lw $v1, 0x1c($sp) /* 0897C0 7F054C90 8FA50038 */ lw $a1, 0x38($sp) /* 0897C4 7F054C94 8FA40030 */ lw $a0, 0x30($sp) /* 0897C8 7F054C98 C4660000 */ lwc1 $f6, ($v1) /* 0897CC 7F054C9C C4A40000 */ lwc1 $f4, ($a1) /* 0897D0 7F054CA0 46062201 */ sub.s $f8, $f4, $f6 /* 0897D4 7F054CA4 E7A80024 */ swc1 $f8, 0x24($sp) /* 0897D8 7F054CA8 C4700004 */ lwc1 $f16, 4($v1) /* 0897DC 7F054CAC C4AA0004 */ lwc1 $f10, 4($a1) /* 0897E0 7F054CB0 46105481 */ sub.s $f18, $f10, $f16 /* 0897E4 7F054CB4 C7AA0024 */ lwc1 $f10, 0x24($sp) /* 0897E8 7F054CB8 E7B20028 */ swc1 $f18, 0x28($sp) /* 0897EC 7F054CBC C4660008 */ lwc1 $f6, 8($v1) /* 0897F0 7F054CC0 C4A40008 */ lwc1 $f4, 8($a1) /* 0897F4 7F054CC4 46062201 */ sub.s $f8, $f4, $f6 /* 0897F8 7F054CC8 C7A40028 */ lwc1 $f4, 0x28($sp) /* 0897FC 7F054CCC E7A8002C */ swc1 $f8, 0x2c($sp) /* 089800 7F054CD0 C4500000 */ lwc1 $f16, ($v0) /* 089804 7F054CD4 C4460004 */ lwc1 $f6, 4($v0) /* 089808 7F054CD8 46105482 */ mul.s $f18, $f10, $f16 /* 08980C 7F054CDC C4500008 */ lwc1 $f16, 8($v0) /* 089810 7F054CE0 46062202 */ mul.s $f8, $f4, $f6 /* 089814 7F054CE4 C7A4002C */ lwc1 $f4, 0x2c($sp) /* 089818 7F054CE8 46048182 */ mul.s $f6, $f16, $f4 /* 08981C 7F054CEC 46089280 */ add.s $f10, $f18, $f8 /* 089820 7F054CF0 C4920008 */ lwc1 $f18, 8($a0) /* 089824 7F054CF4 460A3300 */ add.s $f12, $f6, $f10 /* 089828 7F054CF8 460C903C */ c.lt.s $f18, $f12 /* 08982C 7F054CFC 00000000 */ nop /* 089830 7F054D00 45020016 */ bc1fl .L7F054D5C /* 089834 7F054D04 8FBF0014 */ lw $ra, 0x14($sp) /* 089838 7F054D08 AFA40030 */ sw $a0, 0x30($sp) /* 08983C 7F054D0C 0FC1E121 */ jal getPlayer_c_lodscalez /* 089840 7F054D10 E7AC0020 */ swc1 $f12, 0x20($sp) /* 089844 7F054D14 8FA40030 */ lw $a0, 0x30($sp) /* 089848 7F054D18 C7AC0020 */ lwc1 $f12, 0x20($sp) /* 08984C 7F054D1C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 089850 7F054D20 C4820008 */ lwc1 $f2, 8($a0) /* 089854 7F054D24 44818000 */ mtc1 $at, $f16 /* 089858 7F054D28 C7A6003C */ lwc1 $f6, 0x3c($sp) /* 08985C 7F054D2C 46026201 */ sub.s $f8, $f12, $f2 /* 089860 7F054D30 46104102 */ mul.s $f4, $f8, $f16 /* 089864 7F054D34 C4880004 */ lwc1 $f8, 4($a0) /* 089868 7F054D38 46062283 */ div.s $f10, $f4, $f6 /* 08986C 7F054D3C 46025480 */ add.s $f18, $f10, $f2 /* 089870 7F054D40 46009302 */ mul.s $f12, $f18, $f0 /* 089874 7F054D44 460C403E */ c.le.s $f8, $f12 /* 089878 7F054D48 00000000 */ nop /* 08987C 7F054D4C 45020003 */ bc1fl .L7F054D5C /* 089880 7F054D50 8FBF0014 */ lw $ra, 0x14($sp) /* 089884 7F054D54 AFA00034 */ sw $zero, 0x34($sp) /* 089888 7F054D58 8FBF0014 */ lw $ra, 0x14($sp) .L7F054D5C: /* 08988C 7F054D5C 8FA20034 */ lw $v0, 0x34($sp) /* 089890 7F054D60 27BD0038 */ addiu $sp, $sp, 0x38 /* 089894 7F054D64 03E00008 */ jr $ra /* 089898 7F054D68 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F054D6C(void) { } #else GLOBAL_ASM( .late_rodata glabel D_8005345C .word 0x4e742400 /*1.024e9*/ glabel D_80053460 .word 0x40c90fdb /*6.2831855*/ glabel D_80053464 .word 0x40c90fdb /*6.2831855*/ glabel D_80053468 .word 0x40490fdb /*3.1415927*/ glabel D_8005346C .word 0x40c90fdb /*6.2831855*/ glabel D_80053470 .word 0x40490fdb /*3.1415927*/ glabel D_80053474 .word 0x40c90fdb /*6.2831855*/ glabel D_80053478 .word 0x40c90fdb /*6.2831855*/ glabel D_8005347C .word 0x40490fdb /*3.1415927*/ glabel D_80053480 .word 0x40c90fdb /*6.2831855*/ glabel D_80053484 .word 0x3eb2b8c3 /*0.34906587*/ glabel D_80053488 .word 0x40490fdb /*3.1415927*/ glabel D_8005348C .word 0x471c4000 /*40000.0*/ .text glabel sub_GAME_7F054D6C /* 08989C 7F054D6C 27BDFF90 */ addiu $sp, $sp, -0x70 /* 0898A0 7F054D70 AFB10018 */ sw $s1, 0x18($sp) /* 0898A4 7F054D74 00A08825 */ move $s1, $a1 /* 0898A8 7F054D78 AFBF001C */ sw $ra, 0x1c($sp) /* 0898AC 7F054D7C AFB00014 */ sw $s0, 0x14($sp) /* 0898B0 7F054D80 AFA40070 */ sw $a0, 0x70($sp) /* 0898B4 7F054D84 AFA60078 */ sw $a2, 0x78($sp) /* 0898B8 7F054D88 AFA7007C */ sw $a3, 0x7c($sp) /* 0898BC 7F054D8C AFA00044 */ sw $zero, 0x44($sp) /* 0898C0 7F054D90 0FC0F2E3 */ jal sub_GAME_7F03CB8C /* 0898C4 7F054D94 27A50050 */ addiu $a1, $sp, 0x50 /* 0898C8 7F054D98 8FA40050 */ lw $a0, 0x50($sp) /* 0898CC 7F054D9C 27B00050 */ addiu $s0, $sp, 0x50 /* 0898D0 7F054DA0 0482003C */ bltzl $a0, .L7F054E94 /* 0898D4 7F054DA4 8FBF001C */ lw $ra, 0x1c($sp) .L7F054DA8: /* 0898D8 7F054DA8 0FC2D794 */ jal sub_GAME_7F0B5E50 /* 0898DC 7F054DAC 00000000 */ nop /* 0898E0 7F054DB0 10400033 */ beqz $v0, .L7F054E80 /* 0898E4 7F054DB4 02202025 */ move $a0, $s1 /* 0898E8 7F054DB8 0FC2ECB2 */ jal sub_GAME_7F0BB2C8 /* 0898EC 7F054DBC 8FA50078 */ lw $a1, 0x78($sp) /* 0898F0 7F054DC0 10400033 */ beqz $v0, .L7F054E90 /* 0898F4 7F054DC4 8FAE007C */ lw $t6, 0x7c($sp) /* 0898F8 7F054DC8 11C00004 */ beqz $t6, .L7F054DDC /* 0898FC 7F054DCC 02202025 */ move $a0, $s1 /* 089900 7F054DD0 0FC15316 */ jal sub_GAME_7F054C58 /* 089904 7F054DD4 8FA50078 */ lw $a1, 0x78($sp) /* 089908 7F054DD8 1040002D */ beqz $v0, .L7F054E90 .L7F054DDC: /* 08990C 7F054DDC 27B00034 */ addiu $s0, $sp, 0x34 /* 089910 7F054DE0 02002825 */ move $a1, $s0 /* 089914 7F054DE4 0FC15299 */ jal sub_GAME_7F054A64 /* 089918 7F054DE8 8FA40070 */ lw $a0, 0x70($sp) /* 08991C 7F054DEC 10400007 */ beqz $v0, .L7F054E0C /* 089920 7F054DF0 02202025 */ move $a0, $s1 /* 089924 7F054DF4 02202025 */ move $a0, $s1 /* 089928 7F054DF8 8FA50078 */ lw $a1, 0x78($sp) /* 08992C 7F054DFC 0FC1E2FD */ jal sub_GAME_7F078BF4 /* 089930 7F054E00 02003025 */ move $a2, $s0 /* 089934 7F054E04 10000004 */ b .L7F054E18 /* 089938 7F054E08 AFA20044 */ sw $v0, 0x44($sp) .L7F054E0C: /* 08993C 7F054E0C 0FC1E296 */ jal sub_GAME_7F078A58 /* 089940 7F054E10 8FA50078 */ lw $a1, 0x78($sp) /* 089944 7F054E14 AFA20044 */ sw $v0, 0x44($sp) .L7F054E18: /* 089948 7F054E18 5040001E */ beql $v0, $zero, .L7F054E94 /* 08994C 7F054E1C 8FBF001C */ lw $ra, 0x1c($sp) /* 089950 7F054E20 0FC227F5 */ jal get_BONDdata_position /* 089954 7F054E24 00000000 */ nop /* 089958 7F054E28 C6240000 */ lwc1 $f4, ($s1) /* 08995C 7F054E2C C4460000 */ lwc1 $f6, ($v0) /* 089960 7F054E30 C6280004 */ lwc1 $f8, 4($s1) /* 089964 7F054E34 C44A0004 */ lwc1 $f10, 4($v0) /* 089968 7F054E38 46062001 */ sub.s $f0, $f4, $f6 /* 08996C 7F054E3C C6300008 */ lwc1 $f16, 8($s1) /* 089970 7F054E40 C4520008 */ lwc1 $f18, 8($v0) /* 089974 7F054E44 460A4081 */ sub.s $f2, $f8, $f10 /* 089978 7F054E48 46000182 */ mul.s $f6, $f0, $f0 /* 08997C 7F054E4C 3C018005 */ lui $at, %hi(D_8005345C) /* 089980 7F054E50 46128301 */ sub.s $f12, $f16, $f18 /* 089984 7F054E54 46021202 */ mul.s $f8, $f2, $f2 /* 089988 7F054E58 C424345C */ lwc1 $f4, %lo(D_8005345C)($at) /* 08998C 7F054E5C 460C6402 */ mul.s $f16, $f12, $f12 /* 089990 7F054E60 46083280 */ add.s $f10, $f6, $f8 /* 089994 7F054E64 46105480 */ add.s $f18, $f10, $f16 /* 089998 7F054E68 4612203C */ c.lt.s $f4, $f18 /* 08999C 7F054E6C 00000000 */ nop /* 0899A0 7F054E70 45020008 */ bc1fl .L7F054E94 /* 0899A4 7F054E74 8FBF001C */ lw $ra, 0x1c($sp) /* 0899A8 7F054E78 10000005 */ b .L7F054E90 /* 0899AC 7F054E7C AFA00044 */ sw $zero, 0x44($sp) .L7F054E80: /* 0899B0 7F054E80 8E040004 */ lw $a0, 4($s0) /* 0899B4 7F054E84 26100004 */ addiu $s0, $s0, 4 /* 0899B8 7F054E88 0481FFC7 */ bgez $a0, .L7F054DA8 /* 0899BC 7F054E8C 00000000 */ nop .L7F054E90: /* 0899C0 7F054E90 8FBF001C */ lw $ra, 0x1c($sp) .L7F054E94: /* 0899C4 7F054E94 8FA20044 */ lw $v0, 0x44($sp) /* 0899C8 7F054E98 8FB00014 */ lw $s0, 0x14($sp) /* 0899CC 7F054E9C 8FB10018 */ lw $s1, 0x18($sp) /* 0899D0 7F054EA0 03E00008 */ jr $ra /* 0899D4 7F054EA4 27BD0070 */ addiu $sp, $sp, 0x70 ) #endif #ifdef NONMATCHING void sub_GAME_7F054EA8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054EA8 /* 0899D8 7F054EA8 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0899DC 7F054EAC AFBF0024 */ sw $ra, 0x24($sp) /* 0899E0 7F054EB0 AFB00020 */ sw $s0, 0x20($sp) /* 0899E4 7F054EB4 808200BC */ lb $v0, 0xbc($a0) /* 0899E8 7F054EB8 24010001 */ li $at, 1 /* 0899EC 7F054EBC 00808025 */ move $s0, $a0 /* 0899F0 7F054EC0 1441001C */ bne $v0, $at, .L7F054F34 /* 0899F4 7F054EC4 00001825 */ move $v1, $zero /* 0899F8 7F054EC8 C6040090 */ lwc1 $f4, 0x90($s0) /* 0899FC 7F054ECC 8E050084 */ lw $a1, 0x84($s0) /* 089A00 7F054ED0 8E07008C */ lw $a3, 0x8c($s0) /* 089A04 7F054ED4 E7A40010 */ swc1 $f4, 0x10($sp) /* 089A08 7F054ED8 C6060094 */ lwc1 $f6, 0x94($s0) /* 089A0C 7F054EDC 248400B4 */ addiu $a0, $a0, 0xb4 /* 089A10 7F054EE0 260600B8 */ addiu $a2, $s0, 0xb8 /* 089A14 7F054EE4 0FC10BC6 */ jal sub_GAME_7F042F18 /* 089A18 7F054EE8 E7A60014 */ swc1 $f6, 0x14($sp) /* 089A1C 7F054EEC C60200B4 */ lwc1 $f2, 0xb4($s0) /* 089A20 7F054EF0 C6000084 */ lwc1 $f0, 0x84($s0) /* 089A24 7F054EF4 24030001 */ li $v1, 1 /* 089A28 7F054EF8 4602003E */ c.le.s $f0, $f2 /* 089A2C 7F054EFC 00000000 */ nop /* 089A30 7F054F00 45020004 */ bc1fl .L7F054F14 /* 089A34 7F054F04 44806000 */ mtc1 $zero, $f12 /* 089A38 7F054F08 10000025 */ b .L7F054FA0 /* 089A3C 7F054F0C E60000B4 */ swc1 $f0, 0xb4($s0) /* 089A40 7F054F10 44806000 */ mtc1 $zero, $f12 .L7F054F14: /* 089A44 7F054F14 00000000 */ nop /* 089A48 7F054F18 460C103E */ c.le.s $f2, $f12 /* 089A4C 7F054F1C 00000000 */ nop /* 089A50 7F054F20 45000002 */ bc1f .L7F054F2C /* 089A54 7F054F24 00000000 */ nop /* 089A58 7F054F28 E60C00B4 */ swc1 $f12, 0xb4($s0) .L7F054F2C: /* 089A5C 7F054F2C 1000001C */ b .L7F054FA0 /* 089A60 7F054F30 24030001 */ li $v1, 1 .L7F054F34: /* 089A64 7F054F34 24010002 */ li $at, 2 /* 089A68 7F054F38 14410019 */ bne $v0, $at, .L7F054FA0 /* 089A6C 7F054F3C 260400B4 */ addiu $a0, $s0, 0xb4 /* 089A70 7F054F40 C6080090 */ lwc1 $f8, 0x90($s0) /* 089A74 7F054F44 44806000 */ mtc1 $zero, $f12 /* 089A78 7F054F48 8E07008C */ lw $a3, 0x8c($s0) /* 089A7C 7F054F4C E7A80010 */ swc1 $f8, 0x10($sp) /* 089A80 7F054F50 C60A0094 */ lwc1 $f10, 0x94($s0) /* 089A84 7F054F54 44056000 */ mfc1 $a1, $f12 /* 089A88 7F054F58 260600B8 */ addiu $a2, $s0, 0xb8 /* 089A8C 7F054F5C 0FC10BC6 */ jal sub_GAME_7F042F18 /* 089A90 7F054F60 E7AA0014 */ swc1 $f10, 0x14($sp) /* 089A94 7F054F64 C60200B4 */ lwc1 $f2, 0xb4($s0) /* 089A98 7F054F68 C6000084 */ lwc1 $f0, 0x84($s0) /* 089A9C 7F054F6C 44806000 */ mtc1 $zero, $f12 /* 089AA0 7F054F70 24030001 */ li $v1, 1 /* 089AA4 7F054F74 4602003E */ c.le.s $f0, $f2 /* 089AA8 7F054F78 00000000 */ nop /* 089AAC 7F054F7C 45020004 */ bc1fl .L7F054F90 /* 089AB0 7F054F80 460C103E */ c.le.s $f2, $f12 /* 089AB4 7F054F84 10000006 */ b .L7F054FA0 /* 089AB8 7F054F88 E60000B4 */ swc1 $f0, 0xb4($s0) /* 089ABC 7F054F8C 460C103E */ c.le.s $f2, $f12 .L7F054F90: /* 089AC0 7F054F90 00000000 */ nop /* 089AC4 7F054F94 45000002 */ bc1f .L7F054FA0 /* 089AC8 7F054F98 00000000 */ nop /* 089ACC 7F054F9C E60C00B4 */ swc1 $f12, 0xb4($s0) .L7F054FA0: /* 089AD0 7F054FA0 8FBF0024 */ lw $ra, 0x24($sp) /* 089AD4 7F054FA4 8FB00020 */ lw $s0, 0x20($sp) /* 089AD8 7F054FA8 27BD0028 */ addiu $sp, $sp, 0x28 /* 089ADC 7F054FAC 03E00008 */ jr $ra /* 089AE0 7F054FB0 00601025 */ move $v0, $v1 ) #endif #ifdef NONMATCHING void sub_GAME_7F054FB4(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F054FB4 /* 089AE4 7F054FB4 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 089AE8 7F054FB8 AFB50030 */ sw $s5, 0x30($sp) /* 089AEC 7F054FBC AFB4002C */ sw $s4, 0x2c($sp) /* 089AF0 7F054FC0 AFB20024 */ sw $s2, 0x24($sp) /* 089AF4 7F054FC4 AFB10020 */ sw $s1, 0x20($sp) /* 089AF8 7F054FC8 00809025 */ move $s2, $a0 /* 089AFC 7F054FCC AFBF0034 */ sw $ra, 0x34($sp) /* 089B00 7F054FD0 AFB30028 */ sw $s3, 0x28($sp) /* 089B04 7F054FD4 AFB0001C */ sw $s0, 0x1c($sp) /* 089B08 7F054FD8 F7B40010 */ sdc1 $f20, 0x10($sp) /* 089B0C 7F054FDC 0000A025 */ move $s4, $zero /* 089B10 7F054FE0 24150001 */ li $s5, 1 /* 089B14 7F054FE4 10800010 */ beqz $a0, .L7F055028 /* 089B18 7F054FE8 00808825 */ move $s1, $a0 /* 089B1C 7F054FEC C62400B4 */ lwc1 $f4, 0xb4($s1) .L7F054FF0: /* 089B20 7F054FF0 02202025 */ move $a0, $s1 /* 089B24 7F054FF4 0FC153AA */ jal sub_GAME_7F054EA8 /* 089B28 7F054FF8 E62400FC */ swc1 $f4, 0xfc($s1) /* 089B2C 7F054FFC 50400003 */ beql $v0, $zero, .L7F05500C /* 089B30 7F055000 8E3100C8 */ lw $s1, 0xc8($s1) /* 089B34 7F055004 24140001 */ li $s4, 1 /* 089B38 7F055008 8E3100C8 */ lw $s1, 0xc8($s1) .L7F05500C: /* 089B3C 7F05500C 16320003 */ bne $s1, $s2, .L7F05501C /* 089B40 7F055010 00000000 */ nop /* 089B44 7F055014 10000004 */ b .L7F055028 /* 089B48 7F055018 02408825 */ move $s1, $s2 .L7F05501C: /* 089B4C 7F05501C 5620FFF4 */ bnezl $s1, .L7F054FF0 /* 089B50 7F055020 C62400B4 */ lwc1 $f4, 0xb4($s1) /* 089B54 7F055024 02408825 */ move $s1, $s2 .L7F055028: /* 089B58 7F055028 12800013 */ beqz $s4, .L7F055078 /* 089B5C 7F05502C 00000000 */ nop /* 089B60 7F055030 12400011 */ beqz $s2, .L7F055078 /* 089B64 7F055034 00000000 */ nop .L7F055038: /* 089B68 7F055038 0FC14AC0 */ jal sub_GAME_7F052B00 /* 089B6C 7F05503C 02202025 */ move $a0, $s1 /* 089B70 7F055040 0FC1122A */ jal sub_GAME_7F0448A8 /* 089B74 7F055044 8E240010 */ lw $a0, 0x10($s1) /* 089B78 7F055048 14400003 */ bnez $v0, .L7F055058 /* 089B7C 7F05504C 0040A825 */ move $s5, $v0 /* 089B80 7F055050 10000009 */ b .L7F055078 /* 089B84 7F055054 02408825 */ move $s1, $s2 .L7F055058: /* 089B88 7F055058 8E3100C8 */ lw $s1, 0xc8($s1) /* 089B8C 7F05505C 16320003 */ bne $s1, $s2, .L7F05506C /* 089B90 7F055060 00000000 */ nop /* 089B94 7F055064 10000004 */ b .L7F055078 /* 089B98 7F055068 02408825 */ move $s1, $s2 .L7F05506C: /* 089B9C 7F05506C 1620FFF2 */ bnez $s1, .L7F055038 /* 089BA0 7F055070 00000000 */ nop /* 089BA4 7F055074 02408825 */ move $s1, $s2 .L7F055078: /* 089BA8 7F055078 12400062 */ beqz $s2, .L7F055204 /* 089BAC 7F05507C 3C138005 */ lui $s3, %hi(global_timer) /* 089BB0 7F055080 4480A000 */ mtc1 $zero, $f20 /* 089BB4 7F055084 2673837C */ addiu $s3, %lo(global_timer) # addiu $s3, $s3, -0x7c84 .L7F055088: /* 089BB8 7F055088 52800030 */ beql $s4, $zero, .L7F05514C /* 089BBC 7F05508C 962F0098 */ lhu $t7, 0x98($s1) /* 089BC0 7F055090 12A00025 */ beqz $s5, .L7F055128 /* 089BC4 7F055094 02202025 */ move $a0, $s1 /* 089BC8 7F055098 822200BC */ lb $v0, 0xbc($s1) /* 089BCC 7F05509C 24010001 */ li $at, 1 /* 089BD0 7F0550A0 54410010 */ bnel $v0, $at, .L7F0550E4 /* 089BD4 7F0550A4 24010002 */ li $at, 2 /* 089BD8 7F0550A8 C62600B4 */ lwc1 $f6, 0xb4($s1) /* 089BDC 7F0550AC C6280084 */ lwc1 $f8, 0x84($s1) /* 089BE0 7F0550B0 4606403E */ c.le.s $f8, $f6 /* 089BE4 7F0550B4 00000000 */ nop /* 089BE8 7F0550B8 45020017 */ bc1fl .L7F055118 /* 089BEC 7F0550BC 8E240010 */ lw $a0, 0x10($s1) /* 089BF0 7F0550C0 A22000BC */ sb $zero, 0xbc($s1) /* 089BF4 7F0550C4 E63400B8 */ swc1 $f20, 0xb8($s1) /* 089BF8 7F0550C8 8E6E0000 */ lw $t6, ($s3) /* 089BFC 7F0550CC 02202025 */ move $a0, $s1 /* 089C00 7F0550D0 0FC15203 */ jal sub_GAME_7F05480C /* 089C04 7F0550D4 AE2E00EC */ sw $t6, 0xec($s1) /* 089C08 7F0550D8 1000000F */ b .L7F055118 /* 089C0C 7F0550DC 8E240010 */ lw $a0, 0x10($s1) /* 089C10 7F0550E0 24010002 */ li $at, 2 .L7F0550E4: /* 089C14 7F0550E4 5441000C */ bnel $v0, $at, .L7F055118 /* 089C18 7F0550E8 8E240010 */ lw $a0, 0x10($s1) /* 089C1C 7F0550EC C62A00B4 */ lwc1 $f10, 0xb4($s1) /* 089C20 7F0550F0 02202025 */ move $a0, $s1 /* 089C24 7F0550F4 4614503E */ c.le.s $f10, $f20 /* 089C28 7F0550F8 00000000 */ nop /* 089C2C 7F0550FC 45020006 */ bc1fl .L7F055118 /* 089C30 7F055100 8E240010 */ lw $a0, 0x10($s1) /* 089C34 7F055104 A22000BC */ sb $zero, 0xbc($s1) /* 089C38 7F055108 E63400B8 */ swc1 $f20, 0xb8($s1) /* 089C3C 7F05510C 0FC1521F */ jal sub_GAME_7F05487C /* 089C40 7F055110 AE2000EC */ sw $zero, 0xec($s1) /* 089C44 7F055114 8E240010 */ lw $a0, 0x10($s1) .L7F055118: /* 089C48 7F055118 0FC100AD */ jal sub_GAME_7F0402B4 /* 089C4C 7F05511C 2625007C */ addiu $a1, $s1, 0x7c /* 089C50 7F055120 10000005 */ b .L7F055138 /* 089C54 7F055124 00000000 */ nop .L7F055128: /* 089C58 7F055128 C63000FC */ lwc1 $f16, 0xfc($s1) /* 089C5C 7F05512C E63400B8 */ swc1 $f20, 0xb8($s1) /* 089C60 7F055130 0FC14AC0 */ jal sub_GAME_7F052B00 /* 089C64 7F055134 E63000B4 */ swc1 $f16, 0xb4($s1) .L7F055138: /* 089C68 7F055138 0FC14B63 */ jal sub_GAME_7F052D8C /* 089C6C 7F05513C 02202025 */ move $a0, $s1 /* 089C70 7F055140 1000002A */ b .L7F0551EC /* 089C74 7F055144 8E690000 */ lw $t1, ($s3) /* 089C78 7F055148 962F0098 */ lhu $t7, 0x98($s1) .L7F05514C: /* 089C7C 7F05514C 31F80004 */ andi $t8, $t7, 4 /* 089C80 7F055150 53000026 */ beql $t8, $zero, .L7F0551EC /* 089C84 7F055154 8E690000 */ lw $t1, ($s3) /* 089C88 7F055158 8E240014 */ lw $a0, 0x14($s1) /* 089C8C 7F05515C 8C990008 */ lw $t9, 8($a0) /* 089C90 7F055160 8F280000 */ lw $t0, ($t9) /* 089C94 7F055164 8D090014 */ lw $t1, 0x14($t0) /* 089C98 7F055168 8D250014 */ lw $a1, 0x14($t1) /* 089C9C 7F05516C 0FC1B1E7 */ jal extract_id_from_object_structure_microcode /* 089CA0 7F055170 8CB00004 */ lw $s0, 4($a1) /* 089CA4 7F055174 8E2300CC */ lw $v1, 0xcc($s1) /* 089CA8 7F055178 8C4A0000 */ lw $t2, ($v0) /* 089CAC 7F05517C 506A001A */ beql $v1, $t2, .L7F0551E8 /* 089CB0 7F055180 AC430000 */ sw $v1, ($v0) /* 089CB4 7F055184 860B000C */ lh $t3, 0xc($s0) /* 089CB8 7F055188 00002025 */ move $a0, $zero /* 089CBC 7F05518C 59600016 */ blezl $t3, .L7F0551E8 /* 089CC0 7F055190 AC430000 */ sw $v1, ($v0) /* 089CC4 7F055194 00001825 */ move $v1, $zero /* 089CC8 7F055198 8C4E0000 */ lw $t6, ($v0) .L7F05519C: /* 089CCC 7F05519C 8E2C00CC */ lw $t4, 0xcc($s1) /* 089CD0 7F0551A0 24840001 */ addiu $a0, $a0, 1 /* 089CD4 7F0551A4 01C37821 */ addu $t7, $t6, $v1 /* 089CD8 7F0551A8 8DE10000 */ lw $at, ($t7) /* 089CDC 7F0551AC 01836821 */ addu $t5, $t4, $v1 /* 089CE0 7F0551B0 24630010 */ addiu $v1, $v1, 0x10 /* 089CE4 7F0551B4 ADA10000 */ sw $at, ($t5) /* 089CE8 7F0551B8 8DF90004 */ lw $t9, 4($t7) /* 089CEC 7F0551BC ADB90004 */ sw $t9, 4($t5) /* 089CF0 7F0551C0 8DE10008 */ lw $at, 8($t7) /* 089CF4 7F0551C4 ADA10008 */ sw $at, 8($t5) /* 089CF8 7F0551C8 8DF9000C */ lw $t9, 0xc($t7) /* 089CFC 7F0551CC ADB9000C */ sw $t9, 0xc($t5) /* 089D00 7F0551D0 8608000C */ lh $t0, 0xc($s0) /* 089D04 7F0551D4 0088082A */ slt $at, $a0, $t0 /* 089D08 7F0551D8 5420FFF0 */ bnezl $at, .L7F05519C /* 089D0C 7F0551DC 8C4E0000 */ lw $t6, ($v0) /* 089D10 7F0551E0 8E2300CC */ lw $v1, 0xcc($s1) /* 089D14 7F0551E4 AC430000 */ sw $v1, ($v0) .L7F0551E8: /* 089D18 7F0551E8 8E690000 */ lw $t1, ($s3) .L7F0551EC: /* 089D1C 7F0551EC AE2900FC */ sw $t1, 0xfc($s1) /* 089D20 7F0551F0 8E3100C8 */ lw $s1, 0xc8($s1) /* 089D24 7F0551F4 52320004 */ beql $s1, $s2, .L7F055208 /* 089D28 7F0551F8 8FBF0034 */ lw $ra, 0x34($sp) /* 089D2C 7F0551FC 1620FFA2 */ bnez $s1, .L7F055088 /* 089D30 7F055200 00000000 */ nop .L7F055204: /* 089D34 7F055204 8FBF0034 */ lw $ra, 0x34($sp) .L7F055208: /* 089D38 7F055208 D7B40010 */ ldc1 $f20, 0x10($sp) /* 089D3C 7F05520C 8FB0001C */ lw $s0, 0x1c($sp) /* 089D40 7F055210 8FB10020 */ lw $s1, 0x20($sp) /* 089D44 7F055214 8FB20024 */ lw $s2, 0x24($sp) /* 089D48 7F055218 8FB30028 */ lw $s3, 0x28($sp) /* 089D4C 7F05521C 8FB4002C */ lw $s4, 0x2c($sp) /* 089D50 7F055220 8FB50030 */ lw $s5, 0x30($sp) /* 089D54 7F055224 03E00008 */ jr $ra /* 089D58 7F055228 27BD0038 */ addiu $sp, $sp, 0x38 ) #endif #ifdef NONMATCHING void sub_GAME_7F05522C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05522C /* 089D5C 7F05522C 27BDFF98 */ addiu $sp, $sp, -0x68 /* 089D60 7F055230 AFBF0014 */ sw $ra, 0x14($sp) /* 089D64 7F055234 AFA40068 */ sw $a0, 0x68($sp) /* 089D68 7F055238 AFA5006C */ sw $a1, 0x6c($sp) /* 089D6C 7F05523C AFA60070 */ sw $a2, 0x70($sp) /* 089D70 7F055240 AFA70074 */ sw $a3, 0x74($sp) /* 089D74 7F055244 84990006 */ lh $t9, 6($a0) /* 089D78 7F055248 3C098007 */ lui $t1, %hi(ptr_2xxxpresets) /* 089D7C 7F05524C 8D295D1C */ lw $t1, %lo(ptr_2xxxpresets)($t1) /* 089D80 7F055250 00194100 */ sll $t0, $t9, 4 /* 089D84 7F055254 01194021 */ addu $t0, $t0, $t9 /* 089D88 7F055258 00084080 */ sll $t0, $t0, 2 /* 089D8C 7F05525C 01091821 */ addu $v1, $t0, $t1 /* 089D90 7F055260 0FC225E6 */ jal get_curplayer_positiondata /* 089D94 7F055264 AFA3005C */ sw $v1, 0x5c($sp) /* 089D98 7F055268 3C048008 */ lui $a0, %hi(pPlayer) /* 089D9C 7F05526C 8C84A0B0 */ lw $a0, %lo(pPlayer)($a0) /* 089DA0 7F055270 3C0141F0 */ li $at, 0x41F00000 # 30.000000 /* 089DA4 7F055274 44810000 */ mtc1 $at, $f0 /* 089DA8 7F055278 C4840498 */ lwc1 $f4, 0x498($a0) /* 089DAC 7F05527C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 089DB0 7F055280 44811000 */ mtc1 $at, $f2 /* 089DB4 7F055284 46002282 */ mul.s $f10, $f4, $f0 /* 089DB8 7F055288 3C013F40 */ li $at, 0x3F400000 # 0.750000 /* 089DBC 7F05528C 44816000 */ mtc1 $at, $f12 /* 089DC0 7F055290 C4440008 */ lwc1 $f4, 8($v0) /* 089DC4 7F055294 8FAA0074 */ lw $t2, 0x74($sp) /* 089DC8 7F055298 8FA3005C */ lw $v1, 0x5c($sp) /* 089DCC 7F05529C 46025202 */ mul.s $f8, $f10, $f2 /* 089DD0 7F0552A0 00000000 */ nop /* 089DD4 7F0552A4 460C4182 */ mul.s $f6, $f8, $f12 /* 089DD8 7F0552A8 46043280 */ add.s $f10, $f6, $f4 /* 089DDC 7F0552AC E7AA0030 */ swc1 $f10, 0x30($sp) /* 089DE0 7F0552B0 C448000C */ lwc1 $f8, 0xc($v0) /* 089DE4 7F0552B4 E7A80034 */ swc1 $f8, 0x34($sp) /* 089DE8 7F0552B8 C48604A0 */ lwc1 $f6, 0x4a0($a0) /* 089DEC 7F0552BC 46003102 */ mul.s $f4, $f6, $f0 /* 089DF0 7F0552C0 C4460010 */ lwc1 $f6, 0x10($v0) /* 089DF4 7F0552C4 46022282 */ mul.s $f10, $f4, $f2 /* 089DF8 7F0552C8 00000000 */ nop /* 089DFC 7F0552CC 460C5202 */ mul.s $f8, $f10, $f12 /* 089E00 7F0552D0 46064100 */ add.s $f4, $f8, $f6 /* 089E04 7F0552D4 1140001D */ beqz $t2, .L7F05534C /* 089E08 7F0552D8 E7A40038 */ swc1 $f4, 0x38($sp) /* 089E0C 7F0552DC C46A0030 */ lwc1 $f10, 0x30($v1) /* 089E10 7F0552E0 C472002C */ lwc1 $f18, 0x2c($v1) /* 089E14 7F0552E4 E7AA003C */ swc1 $f10, 0x3c($sp) /* 089E18 7F0552E8 C4680010 */ lwc1 $f8, 0x10($v1) /* 089E1C 7F0552EC C4660020 */ lwc1 $f6, 0x20($v1) /* 089E20 7F0552F0 C46A001C */ lwc1 $f10, 0x1c($v1) /* 089E24 7F0552F4 46064102 */ mul.s $f4, $f8, $f6 /* 089E28 7F0552F8 C4680014 */ lwc1 $f8, 0x14($v1) /* 089E2C 7F0552FC 46085182 */ mul.s $f6, $f10, $f8 /* 089E30 7F055300 46062281 */ sub.s $f10, $f4, $f6 /* 089E34 7F055304 E7AA0044 */ swc1 $f10, 0x44($sp) /* 089E38 7F055308 C4640018 */ lwc1 $f4, 0x18($v1) /* 089E3C 7F05530C C4680014 */ lwc1 $f8, 0x14($v1) /* 089E40 7F055310 C46A0020 */ lwc1 $f10, 0x20($v1) /* 089E44 7F055314 46044182 */ mul.s $f6, $f8, $f4 /* 089E48 7F055318 C468000C */ lwc1 $f8, 0xc($v1) /* 089E4C 7F05531C 46085102 */ mul.s $f4, $f10, $f8 /* 089E50 7F055320 46043281 */ sub.s $f10, $f6, $f4 /* 089E54 7F055324 E7AA0048 */ swc1 $f10, 0x48($sp) /* 089E58 7F055328 C466001C */ lwc1 $f6, 0x1c($v1) /* 089E5C 7F05532C C468000C */ lwc1 $f8, 0xc($v1) /* 089E60 7F055330 C46A0018 */ lwc1 $f10, 0x18($v1) /* 089E64 7F055334 46064102 */ mul.s $f4, $f8, $f6 /* 089E68 7F055338 C4680010 */ lwc1 $f8, 0x10($v1) /* 089E6C 7F05533C 46085182 */ mul.s $f6, $f10, $f8 /* 089E70 7F055340 46062281 */ sub.s $f10, $f4, $f6 /* 089E74 7F055344 1000000A */ b .L7F055370 /* 089E78 7F055348 E7AA004C */ swc1 $f10, 0x4c($sp) .L7F05534C: /* 089E7C 7F05534C C4680038 */ lwc1 $f8, 0x38($v1) /* 089E80 7F055350 C4720034 */ lwc1 $f18, 0x34($v1) /* 089E84 7F055354 E7A8003C */ swc1 $f8, 0x3c($sp) /* 089E88 7F055358 C464000C */ lwc1 $f4, 0xc($v1) /* 089E8C 7F05535C E7A40044 */ swc1 $f4, 0x44($sp) /* 089E90 7F055360 C4660010 */ lwc1 $f6, 0x10($v1) /* 089E94 7F055364 E7A60048 */ swc1 $f6, 0x48($sp) /* 089E98 7F055368 C46A0014 */ lwc1 $f10, 0x14($v1) /* 089E9C 7F05536C E7AA004C */ swc1 $f10, 0x4c($sp) .L7F055370: /* 089EA0 7F055370 C7A40044 */ lwc1 $f4, 0x44($sp) /* 089EA4 7F055374 C4680000 */ lwc1 $f8, ($v1) /* 089EA8 7F055378 46122182 */ mul.s $f6, $f4, $f18 /* 089EAC 7F05537C C7A40030 */ lwc1 $f4, 0x30($sp) /* 089EB0 7F055380 46064280 */ add.s $f10, $f8, $f6 /* 089EB4 7F055384 C7A6004C */ lwc1 $f6, 0x4c($sp) /* 089EB8 7F055388 C4680008 */ lwc1 $f8, 8($v1) /* 089EBC 7F05538C E7B20040 */ swc1 $f18, 0x40($sp) /* 089EC0 7F055390 46045301 */ sub.s $f12, $f10, $f4 /* 089EC4 7F055394 46123282 */ mul.s $f10, $f6, $f18 /* 089EC8 7F055398 C7A60038 */ lwc1 $f6, 0x38($sp) /* 089ECC 7F05539C AFA3005C */ sw $v1, 0x5c($sp) /* 089ED0 7F0553A0 460A4100 */ add.s $f4, $f8, $f10 /* 089ED4 7F0553A4 0FC16A8C */ jal atan2f /* 089ED8 7F0553A8 46062381 */ sub.s $f14, $f4, $f6 /* 089EDC 7F0553AC 0FC227B9 */ jal get_curplay_horizontal_rotation_in_degrees /* 089EE0 7F0553B0 E7A00020 */ swc1 $f0, 0x20($sp) /* 089EE4 7F0553B4 C7AC0020 */ lwc1 $f12, 0x20($sp) /* 089EE8 7F0553B8 8FA3005C */ lw $v1, 0x5c($sp) /* 089EEC 7F0553BC C7B20040 */ lwc1 $f18, 0x40($sp) /* 089EF0 7F0553C0 4600603C */ c.lt.s $f12, $f0 /* 089EF4 7F0553C4 3C018005 */ lui $at, %hi(D_80053460) /* 089EF8 7F0553C8 46006381 */ sub.s $f14, $f12, $f0 /* 089EFC 7F0553CC 8FA20068 */ lw $v0, 0x68($sp) /* 089F00 7F0553D0 C7B0003C */ lwc1 $f16, 0x3c($sp) /* 089F04 7F0553D4 45000003 */ bc1f .L7F0553E4 /* 089F08 7F0553D8 46007086 */ mov.s $f2, $f14 /* 089F0C 7F0553DC C4203460 */ lwc1 $f0, %lo(D_80053460)($at) /* 089F10 7F0553E0 46007080 */ add.s $f2, $f14, $f0 .L7F0553E4: /* 089F14 7F0553E4 3C018005 */ lui $at, %hi(D_80053464) /* 089F18 7F0553E8 C4203464 */ lwc1 $f0, %lo(D_80053464)($at) /* 089F1C 7F0553EC 3C018005 */ lui $at, %hi(D_80053468) /* 089F20 7F0553F0 C4283468 */ lwc1 $f8, %lo(D_80053468)($at) /* 089F24 7F0553F4 C7AA0044 */ lwc1 $f10, 0x44($sp) /* 089F28 7F0553F8 4602403C */ c.lt.s $f8, $f2 /* 089F2C 7F0553FC 00000000 */ nop /* 089F30 7F055400 45020003 */ bc1fl .L7F055410 /* 089F34 7F055404 944B009A */ lhu $t3, 0x9a($v0) /* 089F38 7F055408 46001081 */ sub.s $f2, $f2, $f0 /* 089F3C 7F05540C 944B009A */ lhu $t3, 0x9a($v0) .L7F055410: /* 089F40 7F055410 24010005 */ li $at, 5 /* 089F44 7F055414 15610046 */ bne $t3, $at, .L7F055530 /* 089F48 7F055418 00000000 */ nop /* 089F4C 7F05541C C44A00B4 */ lwc1 $f10, 0xb4($v0) /* 089F50 7F055420 8C4C0008 */ lw $t4, 8($v0) /* 089F54 7F055424 3C0143B4 */ li $at, 0x43B40000 # 360.000000 /* 089F58 7F055428 46005102 */ mul.s $f4, $f10, $f0 /* 089F5C 7F05542C 44813000 */ mtc1 $at, $f6 /* 089F60 7F055430 000C6880 */ sll $t5, $t4, 2 /* 089F64 7F055434 05A10002 */ bgez $t5, .L7F055440 /* 089F68 7F055438 46062303 */ div.s $f12, $f4, $f6 /* 089F6C 7F05543C 460C0301 */ sub.s $f12, $f0, $f12 .L7F055440: /* 089F70 7F055440 AFA3005C */ sw $v1, 0x5c($sp) /* 089F74 7F055444 E7A20064 */ swc1 $f2, 0x64($sp) /* 089F78 7F055448 E7AC002C */ swc1 $f12, 0x2c($sp) /* 089F7C 7F05544C 0FC15FA8 */ jal cosf /* 089F80 7F055450 E7B20040 */ swc1 $f18, 0x40($sp) /* 089F84 7F055454 C7AC002C */ lwc1 $f12, 0x2c($sp) /* 089F88 7F055458 0FC15FAB */ jal sinf /* 089F8C 7F05545C E7A00028 */ swc1 $f0, 0x28($sp) /* 089F90 7F055460 C7B20040 */ lwc1 $f18, 0x40($sp) /* 089F94 7F055464 C7A40044 */ lwc1 $f4, 0x44($sp) /* 089F98 7F055468 8FA3005C */ lw $v1, 0x5c($sp) /* 089F9C 7F05546C C7A8003C */ lwc1 $f8, 0x3c($sp) /* 089FA0 7F055470 46122182 */ mul.s $f6, $f4, $f18 /* 089FA4 7F055474 C46A0000 */ lwc1 $f10, ($v1) /* 089FA8 7F055478 46124081 */ sub.s $f2, $f8, $f18 /* 089FAC 7F05547C C7B00028 */ lwc1 $f16, 0x28($sp) /* 089FB0 7F055480 46065200 */ add.s $f8, $f10, $f6 /* 089FB4 7F055484 46102282 */ mul.s $f10, $f4, $f16 /* 089FB8 7F055488 C7A6004C */ lwc1 $f6, 0x4c($sp) /* 089FBC 7F05548C E7A80018 */ swc1 $f8, 0x18($sp) /* 089FC0 7F055490 46003202 */ mul.s $f8, $f6, $f0 /* 089FC4 7F055494 46085280 */ add.s $f10, $f10, $f8 /* 089FC8 7F055498 460A1202 */ mul.s $f8, $f2, $f10 /* 089FCC 7F05549C C7AA0018 */ lwc1 $f10, 0x18($sp) /* 089FD0 7F0554A0 46085280 */ add.s $f10, $f10, $f8 /* 089FD4 7F0554A4 C7A80030 */ lwc1 $f8, 0x30($sp) /* 089FD8 7F0554A8 46085301 */ sub.s $f12, $f10, $f8 /* 089FDC 7F0554AC 46123202 */ mul.s $f8, $f6, $f18 /* 089FE0 7F0554B0 C46A0008 */ lwc1 $f10, 8($v1) /* 089FE4 7F0554B4 46085280 */ add.s $f10, $f10, $f8 /* 089FE8 7F0554B8 46002207 */ neg.s $f8, $f4 /* 089FEC 7F0554BC 46004102 */ mul.s $f4, $f8, $f0 /* 089FF0 7F0554C0 00000000 */ nop /* 089FF4 7F0554C4 46103202 */ mul.s $f8, $f6, $f16 /* 089FF8 7F0554C8 46082180 */ add.s $f6, $f4, $f8 /* 089FFC 7F0554CC 46061102 */ mul.s $f4, $f2, $f6 /* 08A000 7F0554D0 C7A60038 */ lwc1 $f6, 0x38($sp) /* 08A004 7F0554D4 46045200 */ add.s $f8, $f10, $f4 /* 08A008 7F0554D8 0FC16A8C */ jal atan2f /* 08A00C 7F0554DC 46064381 */ sub.s $f14, $f8, $f6 /* 08A010 7F0554E0 0FC227B9 */ jal get_curplay_horizontal_rotation_in_degrees /* 08A014 7F0554E4 E7A00020 */ swc1 $f0, 0x20($sp) /* 08A018 7F0554E8 C7AC0020 */ lwc1 $f12, 0x20($sp) /* 08A01C 7F0554EC 3C018005 */ lui $at, %hi(D_8005346C) /* 08A020 7F0554F0 4600603C */ c.lt.s $f12, $f0 /* 08A024 7F0554F4 46006381 */ sub.s $f14, $f12, $f0 /* 08A028 7F0554F8 45000003 */ bc1f .L7F055508 /* 08A02C 7F0554FC 46007086 */ mov.s $f2, $f14 /* 08A030 7F055500 C42A346C */ lwc1 $f10, %lo(D_8005346C)($at) /* 08A034 7F055504 460A7080 */ add.s $f2, $f14, $f10 .L7F055508: /* 08A038 7F055508 3C018005 */ lui $at, %hi(D_80053470) /* 08A03C 7F05550C C4243470 */ lwc1 $f4, %lo(D_80053470)($at) /* 08A040 7F055510 3C018005 */ lui $at, %hi(D_80053474) /* 08A044 7F055514 4602203C */ c.lt.s $f4, $f2 /* 08A048 7F055518 00000000 */ nop /* 08A04C 7F05551C 45020025 */ bc1fl .L7F0555B4 /* 08A050 7F055520 C7A00064 */ lwc1 $f0, 0x64($sp) /* 08A054 7F055524 C4283474 */ lwc1 $f8, %lo(D_80053474)($at) /* 08A058 7F055528 10000021 */ b .L7F0555B0 /* 08A05C 7F05552C 46081081 */ sub.s $f2, $f2, $f8 .L7F055530: /* 08A060 7F055530 46105102 */ mul.s $f4, $f10, $f16 /* 08A064 7F055534 C4660000 */ lwc1 $f6, ($v1) /* 08A068 7F055538 C7AA0030 */ lwc1 $f10, 0x30($sp) /* 08A06C 7F05553C 46043200 */ add.s $f8, $f6, $f4 /* 08A070 7F055540 C7A4004C */ lwc1 $f4, 0x4c($sp) /* 08A074 7F055544 C4660008 */ lwc1 $f6, 8($v1) /* 08A078 7F055548 E7A20064 */ swc1 $f2, 0x64($sp) /* 08A07C 7F05554C 460A4301 */ sub.s $f12, $f8, $f10 /* 08A080 7F055550 46102202 */ mul.s $f8, $f4, $f16 /* 08A084 7F055554 C7A40038 */ lwc1 $f4, 0x38($sp) /* 08A088 7F055558 46083280 */ add.s $f10, $f6, $f8 /* 08A08C 7F05555C 0FC16A8C */ jal atan2f /* 08A090 7F055560 46045381 */ sub.s $f14, $f10, $f4 /* 08A094 7F055564 0FC227B9 */ jal get_curplay_horizontal_rotation_in_degrees /* 08A098 7F055568 E7A00020 */ swc1 $f0, 0x20($sp) /* 08A09C 7F05556C C7AC0020 */ lwc1 $f12, 0x20($sp) /* 08A0A0 7F055570 3C018005 */ lui $at, %hi(D_80053478) /* 08A0A4 7F055574 4600603C */ c.lt.s $f12, $f0 /* 08A0A8 7F055578 46006381 */ sub.s $f14, $f12, $f0 /* 08A0AC 7F05557C 45000003 */ bc1f .L7F05558C /* 08A0B0 7F055580 46007086 */ mov.s $f2, $f14 /* 08A0B4 7F055584 C4263478 */ lwc1 $f6, %lo(D_80053478)($at) /* 08A0B8 7F055588 46067080 */ add.s $f2, $f14, $f6 .L7F05558C: /* 08A0BC 7F05558C 3C018005 */ lui $at, %hi(D_8005347C) /* 08A0C0 7F055590 C428347C */ lwc1 $f8, %lo(D_8005347C)($at) /* 08A0C4 7F055594 3C018005 */ lui $at, %hi(D_80053480) /* 08A0C8 7F055598 4602403C */ c.lt.s $f8, $f2 /* 08A0CC 7F05559C 00000000 */ nop /* 08A0D0 7F0555A0 45020004 */ bc1fl .L7F0555B4 /* 08A0D4 7F0555A4 C7A00064 */ lwc1 $f0, 0x64($sp) /* 08A0D8 7F0555A8 C42A3480 */ lwc1 $f10, %lo(D_80053480)($at) /* 08A0DC 7F0555AC 460A1081 */ sub.s $f2, $f2, $f10 .L7F0555B0: /* 08A0E0 7F0555B0 C7A00064 */ lwc1 $f0, 0x64($sp) .L7F0555B4: /* 08A0E4 7F0555B4 8FAE006C */ lw $t6, 0x6c($sp) /* 08A0E8 7F0555B8 8FB8006C */ lw $t8, 0x6c($sp) /* 08A0EC 7F0555BC 4602003C */ c.lt.s $f0, $f2 /* 08A0F0 7F0555C0 00000000 */ nop /* 08A0F4 7F0555C4 45020006 */ bc1fl .L7F0555E0 /* 08A0F8 7F0555C8 E7020000 */ swc1 $f2, ($t8) /* 08A0FC 7F0555CC E5C00000 */ swc1 $f0, ($t6) /* 08A100 7F0555D0 8FAF0070 */ lw $t7, 0x70($sp) /* 08A104 7F0555D4 10000004 */ b .L7F0555E8 /* 08A108 7F0555D8 E5E20000 */ swc1 $f2, ($t7) /* 08A10C 7F0555DC E7020000 */ swc1 $f2, ($t8) .L7F0555E0: /* 08A110 7F0555E0 8FB90070 */ lw $t9, 0x70($sp) /* 08A114 7F0555E4 E7200000 */ swc1 $f0, ($t9) .L7F0555E8: /* 08A118 7F0555E8 8FBF0014 */ lw $ra, 0x14($sp) /* 08A11C 7F0555EC 27BD0068 */ addiu $sp, $sp, 0x68 /* 08A120 7F0555F0 03E00008 */ jr $ra /* 08A124 7F0555F4 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F0555F8(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F0555F8 /* 08A128 7F0555F8 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 08A12C 7F0555FC 3C0F8007 */ lui $t7, %hi(dword_CODE_bss_80071DF8) /* 08A130 7F055600 8DEF1DF8 */ lw $t7, %lo(dword_CODE_bss_80071DF8)($t7) /* 08A134 7F055604 AFB40030 */ sw $s4, 0x30($sp) /* 08A138 7F055608 AFB3002C */ sw $s3, 0x2c($sp) /* 08A13C 7F05560C 240E0001 */ li $t6, 1 /* 08A140 7F055610 00809825 */ move $s3, $a0 /* 08A144 7F055614 00A0A025 */ move $s4, $a1 /* 08A148 7F055618 AFBF0034 */ sw $ra, 0x34($sp) /* 08A14C 7F05561C AFB20028 */ sw $s2, 0x28($sp) /* 08A150 7F055620 AFB10024 */ sw $s1, 0x24($sp) /* 08A154 7F055624 AFB00020 */ sw $s0, 0x20($sp) /* 08A158 7F055628 F7B40018 */ sdc1 $f20, 0x18($sp) /* 08A15C 7F05562C 15E0006B */ bnez $t7, .L7F0557DC /* 08A160 7F055630 AFAE0054 */ sw $t6, 0x54($sp) /* 08A164 7F055634 27A50050 */ addiu $a1, $sp, 0x50 /* 08A168 7F055638 27A6004C */ addiu $a2, $sp, 0x4c /* 08A16C 7F05563C 0FC1548B */ jal sub_GAME_7F05522C /* 08A170 7F055640 02803825 */ move $a3, $s4 /* 08A174 7F055644 3C018005 */ lui $at, %hi(D_80053484) /* 08A178 7F055648 C4223484 */ lwc1 $f2, %lo(D_80053484)($at) /* 08A17C 7F05564C C7A40050 */ lwc1 $f4, 0x50($sp) /* 08A180 7F055650 46001007 */ neg.s $f0, $f2 /* 08A184 7F055654 4604003E */ c.le.s $f0, $f4 /* 08A188 7F055658 00000000 */ nop /* 08A18C 7F05565C 45020012 */ bc1fl .L7F0556A8 /* 08A190 7F055660 8E7000C8 */ lw $s0, 0xc8($s3) /* 08A194 7F055664 4602203E */ c.le.s $f4, $f2 /* 08A198 7F055668 C7A6004C */ lwc1 $f6, 0x4c($sp) /* 08A19C 7F05566C 4502000E */ bc1fl .L7F0556A8 /* 08A1A0 7F055670 8E7000C8 */ lw $s0, 0xc8($s3) /* 08A1A4 7F055674 4606003E */ c.le.s $f0, $f6 /* 08A1A8 7F055678 00000000 */ nop /* 08A1AC 7F05567C 4502000A */ bc1fl .L7F0556A8 /* 08A1B0 7F055680 8E7000C8 */ lw $s0, 0xc8($s3) /* 08A1B4 7F055684 4602303E */ c.le.s $f6, $f2 /* 08A1B8 7F055688 3C018007 */ lui $at, %hi(dword_CODE_bss_80071DF8) /* 08A1BC 7F05568C 45020006 */ bc1fl .L7F0556A8 /* 08A1C0 7F055690 8E7000C8 */ lw $s0, 0xc8($s3) /* 08A1C4 7F055694 8E780010 */ lw $t8, 0x10($s3) /* 08A1C8 7F055698 AFA00054 */ sw $zero, 0x54($sp) /* 08A1CC 7F05569C 1000004F */ b .L7F0557DC /* 08A1D0 7F0556A0 AC381DF8 */ sw $t8, %lo(dword_CODE_bss_80071DF8)($at) /* 08A1D4 7F0556A4 8E7000C8 */ lw $s0, 0xc8($s3) .L7F0556A8: /* 08A1D8 7F0556A8 52000037 */ beql $s0, $zero, .L7F055788 /* 08A1DC 7F0556AC C7A8004C */ lwc1 $f8, 0x4c($sp) /* 08A1E0 7F0556B0 12130034 */ beq $s0, $s3, .L7F055784 /* 08A1E4 7F0556B4 C7A80050 */ lwc1 $f8, 0x50($sp) /* 08A1E8 7F0556B8 4480A000 */ mtc1 $zero, $f20 /* 08A1EC 7F0556BC C7AA004C */ lwc1 $f10, 0x4c($sp) /* 08A1F0 7F0556C0 4608A03E */ c.le.s $f20, $f8 /* 08A1F4 7F0556C4 00000000 */ nop /* 08A1F8 7F0556C8 45030005 */ bc1tl .L7F0556E0 /* 08A1FC 7F0556CC 27A50040 */ addiu $a1, $sp, 0x40 /* 08A200 7F0556D0 4614503C */ c.lt.s $f10, $f20 /* 08A204 7F0556D4 00000000 */ nop /* 08A208 7F0556D8 4500002A */ bc1f .L7F055784 /* 08A20C 7F0556DC 27A50040 */ addiu $a1, $sp, 0x40 .L7F0556E0: /* 08A210 7F0556E0 27A6003C */ addiu $a2, $sp, 0x3c /* 08A214 7F0556E4 02002025 */ move $a0, $s0 /* 08A218 7F0556E8 0FC1548B */ jal sub_GAME_7F05522C /* 08A21C 7F0556EC 02803825 */ move $a3, $s4 /* 08A220 7F0556F0 C7B00050 */ lwc1 $f16, 0x50($sp) /* 08A224 7F0556F4 C7A00040 */ lwc1 $f0, 0x40($sp) /* 08A228 7F0556F8 4610A03C */ c.lt.s $f20, $f16 /* 08A22C 7F0556FC 00000000 */ nop /* 08A230 7F055700 45020007 */ bc1fl .L7F055720 /* 08A234 7F055704 C7B2004C */ lwc1 $f18, 0x4c($sp) /* 08A238 7F055708 4610003C */ c.lt.s $f0, $f16 /* 08A23C 7F05570C 00000000 */ nop /* 08A240 7F055710 45020003 */ bc1fl .L7F055720 /* 08A244 7F055714 C7B2004C */ lwc1 $f18, 0x4c($sp) /* 08A248 7F055718 E7A00050 */ swc1 $f0, 0x50($sp) /* 08A24C 7F05571C C7B2004C */ lwc1 $f18, 0x4c($sp) .L7F055720: /* 08A250 7F055720 C7A0003C */ lwc1 $f0, 0x3c($sp) /* 08A254 7F055724 4614903C */ c.lt.s $f18, $f20 /* 08A258 7F055728 00000000 */ nop /* 08A25C 7F05572C 45020007 */ bc1fl .L7F05574C /* 08A260 7F055730 8E1000C8 */ lw $s0, 0xc8($s0) /* 08A264 7F055734 4600903C */ c.lt.s $f18, $f0 /* 08A268 7F055738 00000000 */ nop /* 08A26C 7F05573C 45020003 */ bc1fl .L7F05574C /* 08A270 7F055740 8E1000C8 */ lw $s0, 0xc8($s0) /* 08A274 7F055744 E7A0004C */ swc1 $f0, 0x4c($sp) /* 08A278 7F055748 8E1000C8 */ lw $s0, 0xc8($s0) .L7F05574C: /* 08A27C 7F05574C C7A40050 */ lwc1 $f4, 0x50($sp) /* 08A280 7F055750 5200000D */ beql $s0, $zero, .L7F055788 /* 08A284 7F055754 C7A8004C */ lwc1 $f8, 0x4c($sp) /* 08A288 7F055758 5213000B */ beql $s0, $s3, .L7F055788 /* 08A28C 7F05575C C7A8004C */ lwc1 $f8, 0x4c($sp) /* 08A290 7F055760 4604A03E */ c.le.s $f20, $f4 /* 08A294 7F055764 00000000 */ nop /* 08A298 7F055768 4503FFDD */ bc1tl .L7F0556E0 /* 08A29C 7F05576C 27A50040 */ addiu $a1, $sp, 0x40 /* 08A2A0 7F055770 C7A6004C */ lwc1 $f6, 0x4c($sp) /* 08A2A4 7F055774 4614303C */ c.lt.s $f6, $f20 /* 08A2A8 7F055778 00000000 */ nop /* 08A2AC 7F05577C 4503FFD8 */ bc1tl .L7F0556E0 /* 08A2B0 7F055780 27A50040 */ addiu $a1, $sp, 0x40 .L7F055784: /* 08A2B4 7F055784 C7A8004C */ lwc1 $f8, 0x4c($sp) .L7F055788: /* 08A2B8 7F055788 C7AA0050 */ lwc1 $f10, 0x50($sp) /* 08A2BC 7F05578C 3C018005 */ lui $at, %hi(D_80053488) /* 08A2C0 7F055790 C4323488 */ lwc1 $f18, %lo(D_80053488)($at) /* 08A2C4 7F055794 460A4401 */ sub.s $f16, $f8, $f10 /* 08A2C8 7F055798 4480A000 */ mtc1 $zero, $f20 /* 08A2CC 7F05579C 4612803C */ c.lt.s $f16, $f18 /* 08A2D0 7F0557A0 00000000 */ nop /* 08A2D4 7F0557A4 4502000E */ bc1fl .L7F0557E0 /* 08A2D8 7F0557A8 8FBF0034 */ lw $ra, 0x34($sp) /* 08A2DC 7F0557AC 4614503C */ c.lt.s $f10, $f20 /* 08A2E0 7F0557B0 00000000 */ nop /* 08A2E4 7F0557B4 4502000A */ bc1fl .L7F0557E0 /* 08A2E8 7F0557B8 8FBF0034 */ lw $ra, 0x34($sp) /* 08A2EC 7F0557BC 4608A03C */ c.lt.s $f20, $f8 /* 08A2F0 7F0557C0 00000000 */ nop /* 08A2F4 7F0557C4 45020006 */ bc1fl .L7F0557E0 /* 08A2F8 7F0557C8 8FBF0034 */ lw $ra, 0x34($sp) /* 08A2FC 7F0557CC 8E790010 */ lw $t9, 0x10($s3) /* 08A300 7F0557D0 3C018007 */ lui $at, %hi(dword_CODE_bss_80071DF8) /* 08A304 7F0557D4 AFA00054 */ sw $zero, 0x54($sp) /* 08A308 7F0557D8 AC391DF8 */ sw $t9, %lo(dword_CODE_bss_80071DF8)($at) .L7F0557DC: /* 08A30C 7F0557DC 8FBF0034 */ lw $ra, 0x34($sp) .L7F0557E0: /* 08A310 7F0557E0 8FA20054 */ lw $v0, 0x54($sp) /* 08A314 7F0557E4 D7B40018 */ ldc1 $f20, 0x18($sp) /* 08A318 7F0557E8 8FB00020 */ lw $s0, 0x20($sp) /* 08A31C 7F0557EC 8FB10024 */ lw $s1, 0x24($sp) /* 08A320 7F0557F0 8FB20028 */ lw $s2, 0x28($sp) /* 08A324 7F0557F4 8FB3002C */ lw $s3, 0x2c($sp) /* 08A328 7F0557F8 8FB40030 */ lw $s4, 0x30($sp) /* 08A32C 7F0557FC 03E00008 */ jr $ra /* 08A330 7F055800 27BD0058 */ addiu $sp, $sp, 0x58 ) #endif #ifdef NONMATCHING void sub_GAME_7F055804(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F055804 /* 08A334 7F055804 27BDFF78 */ addiu $sp, $sp, -0x88 /* 08A338 7F055808 240E0001 */ li $t6, 1 /* 08A33C 7F05580C AFBF001C */ sw $ra, 0x1c($sp) /* 08A340 7F055810 AFB00018 */ sw $s0, 0x18($sp) /* 08A344 7F055814 AFAE0084 */ sw $t6, 0x84($sp) /* 08A348 7F055818 8C900004 */ lw $s0, 4($a0) /* 08A34C 7F05581C 8E0F0008 */ lw $t7, 8($s0) /* 08A350 7F055820 000FC180 */ sll $t8, $t7, 6 /* 08A354 7F055824 07020059 */ bltzl $t8, .L7F05598C /* 08A358 7F055828 8FBF001C */ lw $ra, 0x1c($sp) /* 08A35C 7F05582C 44802000 */ mtc1 $zero, $f4 /* 08A360 7F055830 C6060084 */ lwc1 $f6, 0x84($s0) /* 08A364 7F055834 4606203C */ c.lt.s $f4, $f6 /* 08A368 7F055838 00000000 */ nop /* 08A36C 7F05583C 45020053 */ bc1fl .L7F05598C /* 08A370 7F055840 8FBF001C */ lw $ra, 0x1c($sp) /* 08A374 7F055844 90990001 */ lbu $t9, 1($a0) /* 08A378 7F055848 33280002 */ andi $t0, $t9, 2 /* 08A37C 7F05584C 5100004F */ beql $t0, $zero, .L7F05598C /* 08A380 7F055850 8FBF001C */ lw $ra, 0x1c($sp) /* 08A384 7F055854 AFA0007C */ sw $zero, 0x7c($sp) /* 08A388 7F055858 0FC225E6 */ jal get_curplayer_positiondata /* 08A38C 7F05585C AFA40088 */ sw $a0, 0x88($sp) /* 08A390 7F055860 AFA20078 */ sw $v0, 0x78($sp) /* 08A394 7F055864 C44A0008 */ lwc1 $f10, 8($v0) /* 08A398 7F055868 C6080058 */ lwc1 $f8, 0x58($s0) /* 08A39C 7F05586C C4460010 */ lwc1 $f6, 0x10($v0) /* 08A3A0 7F055870 C6040060 */ lwc1 $f4, 0x60($s0) /* 08A3A4 7F055874 460A4001 */ sub.s $f0, $f8, $f10 /* 08A3A8 7F055878 C452000C */ lwc1 $f18, 0xc($v0) /* 08A3AC 7F05587C C610005C */ lwc1 $f16, 0x5c($s0) /* 08A3B0 7F055880 46062081 */ sub.s $f2, $f4, $f6 /* 08A3B4 7F055884 46000202 */ mul.s $f8, $f0, $f0 /* 08A3B8 7F055888 3C018005 */ lui $at, %hi(D_8005348C) /* 08A3BC 7F05588C 46128301 */ sub.s $f12, $f16, $f18 /* 08A3C0 7F055890 46021282 */ mul.s $f10, $f2, $f2 /* 08A3C4 7F055894 C432348C */ lwc1 $f18, %lo(D_8005348C)($at) /* 08A3C8 7F055898 8FA40088 */ lw $a0, 0x88($sp) /* 08A3CC 7F05589C 3C014348 */ li $at, 0x43480000 # 200.000000 /* 08A3D0 7F0558A0 460A4400 */ add.s $f16, $f8, $f10 /* 08A3D4 7F0558A4 4612803C */ c.lt.s $f16, $f18 /* 08A3D8 7F0558A8 00000000 */ nop /* 08A3DC 7F0558AC 4500000F */ bc1f .L7F0558EC /* 08A3E0 7F0558B0 00000000 */ nop /* 08A3E4 7F0558B4 44812000 */ mtc1 $at, $f4 /* 08A3E8 7F0558B8 3C01C348 */ li $at, 0xC3480000 # -200.000000 /* 08A3EC 7F0558BC 4604603C */ c.lt.s $f12, $f4 /* 08A3F0 7F0558C0 00000000 */ nop /* 08A3F4 7F0558C4 45000009 */ bc1f .L7F0558EC /* 08A3F8 7F0558C8 00000000 */ nop /* 08A3FC 7F0558CC 44813000 */ mtc1 $at, $f6 /* 08A400 7F0558D0 24090001 */ li $t1, 1 /* 08A404 7F0558D4 460C303C */ c.lt.s $f6, $f12 /* 08A408 7F0558D8 00000000 */ nop /* 08A40C 7F0558DC 45000003 */ bc1f .L7F0558EC /* 08A410 7F0558E0 00000000 */ nop /* 08A414 7F0558E4 10000018 */ b .L7F055948 /* 08A418 7F0558E8 AFA9007C */ sw $t1, 0x7c($sp) .L7F0558EC: /* 08A41C 7F0558EC 0FC0F2E3 */ jal sub_GAME_7F03CB8C /* 08A420 7F0558F0 27A50048 */ addiu $a1, $sp, 0x48 /* 08A424 7F0558F4 8FA40078 */ lw $a0, 0x78($sp) /* 08A428 7F0558F8 0FC0F2E3 */ jal sub_GAME_7F03CB8C /* 08A42C 7F0558FC 27A50028 */ addiu $a1, $sp, 0x28 /* 08A430 7F055900 27A40048 */ addiu $a0, $sp, 0x48 /* 08A434 7F055904 0FC0F6DC */ jal sub_GAME_7F03DB70 /* 08A438 7F055908 27A50028 */ addiu $a1, $sp, 0x28 /* 08A43C 7F05590C 1040000E */ beqz $v0, .L7F055948 /* 08A440 7F055910 3C0C8007 */ lui $t4, %hi(ptr_2xxxpresets) /* 08A444 7F055914 860A0006 */ lh $t2, 6($s0) /* 08A448 7F055918 8D8C5D1C */ lw $t4, %lo(ptr_2xxxpresets)($t4) /* 08A44C 7F05591C 8FA40078 */ lw $a0, 0x78($sp) /* 08A450 7F055920 000A5900 */ sll $t3, $t2, 4 /* 08A454 7F055924 016A5821 */ addu $t3, $t3, $t2 /* 08A458 7F055928 000B5880 */ sll $t3, $t3, 2 /* 08A45C 7F05592C 3C054316 */ lui $a1, 0x4316 /* 08A460 7F055930 016C3021 */ addu $a2, $t3, $t4 /* 08A464 7F055934 0FC0FD66 */ jal sub_GAME_7F03F598 /* 08A468 7F055938 24840008 */ addiu $a0, $a0, 8 /* 08A46C 7F05593C 10400002 */ beqz $v0, .L7F055948 /* 08A470 7F055940 240D0001 */ li $t5, 1 /* 08A474 7F055944 AFAD007C */ sw $t5, 0x7c($sp) .L7F055948: /* 08A478 7F055948 8FAE007C */ lw $t6, 0x7c($sp) /* 08A47C 7F05594C 02002025 */ move $a0, $s0 /* 08A480 7F055950 51C0000E */ beql $t6, $zero, .L7F05598C /* 08A484 7F055954 8FBF001C */ lw $ra, 0x1c($sp) /* 08A488 7F055958 0FC1557E */ jal sub_GAME_7F0555F8 /* 08A48C 7F05595C 00002825 */ move $a1, $zero /* 08A490 7F055960 10400009 */ beqz $v0, .L7F055988 /* 08A494 7F055964 AFA20084 */ sw $v0, 0x84($sp) /* 08A498 7F055968 8E0F000C */ lw $t7, 0xc($s0) /* 08A49C 7F05596C 02002025 */ move $a0, $s0 /* 08A4A0 7F055970 000FC000 */ sll $t8, $t7, 0 /* 08A4A4 7F055974 07030005 */ bgezl $t8, .L7F05598C /* 08A4A8 7F055978 8FBF001C */ lw $ra, 0x1c($sp) /* 08A4AC 7F05597C 0FC1557E */ jal sub_GAME_7F0555F8 /* 08A4B0 7F055980 24050001 */ li $a1, 1 /* 08A4B4 7F055984 AFA20084 */ sw $v0, 0x84($sp) .L7F055988: /* 08A4B8 7F055988 8FBF001C */ lw $ra, 0x1c($sp) .L7F05598C: /* 08A4BC 7F05598C 8FA20084 */ lw $v0, 0x84($sp) /* 08A4C0 7F055990 8FB00018 */ lw $s0, 0x18($sp) /* 08A4C4 7F055994 03E00008 */ jr $ra /* 08A4C8 7F055998 27BD0088 */ addiu $sp, $sp, 0x88 ) #endif #ifdef NONMATCHING void sub_GAME_7F05599C(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F05599C /* 08A4CC 7F05599C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08A4D0 7F0559A0 AFBF001C */ sw $ra, 0x1c($sp) /* 08A4D4 7F0559A4 AFB00018 */ sw $s0, 0x18($sp) /* 08A4D8 7F0559A8 AFA40020 */ sw $a0, 0x20($sp) /* 08A4DC 7F0559AC 8C900004 */ lw $s0, 4($a0) /* 08A4E0 7F0559B0 24010001 */ li $at, 1 /* 08A4E4 7F0559B4 820200BC */ lb $v0, 0xbc($s0) /* 08A4E8 7F0559B8 02002025 */ move $a0, $s0 /* 08A4EC 7F0559BC 10410003 */ beq $v0, $at, .L7F0559CC /* 08A4F0 7F0559C0 24010003 */ li $at, 3 /* 08A4F4 7F0559C4 54410006 */ bnel $v0, $at, .L7F0559E0 /* 08A4F8 7F0559C8 24010002 */ li $at, 2 .L7F0559CC: /* 08A4FC 7F0559CC 0FC15262 */ jal set_door_state /* 08A500 7F0559D0 24050002 */ li $a1, 2 /* 08A504 7F0559D4 10000019 */ b .L7F055A3C /* 08A508 7F0559D8 8E0F0064 */ lw $t7, 0x64($s0) /* 08A50C 7F0559DC 24010002 */ li $at, 2 .L7F0559E0: /* 08A510 7F0559E0 14410005 */ bne $v0, $at, .L7F0559F8 /* 08A514 7F0559E4 02002025 */ move $a0, $s0 /* 08A518 7F0559E8 0FC15262 */ jal set_door_state /* 08A51C 7F0559EC 24050001 */ li $a1, 1 /* 08A520 7F0559F0 10000012 */ b .L7F055A3C /* 08A524 7F0559F4 8E0F0064 */ lw $t7, 0x64($s0) .L7F0559F8: /* 08A528 7F0559F8 1440000F */ bnez $v0, .L7F055A38 /* 08A52C 7F0559FC 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 08A530 7F055A00 44812000 */ mtc1 $at, $f4 /* 08A534 7F055A04 C60600B4 */ lwc1 $f6, 0xb4($s0) /* 08A538 7F055A08 24050002 */ li $a1, 2 /* 08A53C 7F055A0C 02002025 */ move $a0, $s0 /* 08A540 7F055A10 4606203C */ c.lt.s $f4, $f6 /* 08A544 7F055A14 00000000 */ nop /* 08A548 7F055A18 45000005 */ bc1f .L7F055A30 /* 08A54C 7F055A1C 00000000 */ nop /* 08A550 7F055A20 0FC15262 */ jal set_door_state /* 08A554 7F055A24 02002025 */ move $a0, $s0 /* 08A558 7F055A28 10000004 */ b .L7F055A3C /* 08A55C 7F055A2C 8E0F0064 */ lw $t7, 0x64($s0) .L7F055A30: /* 08A560 7F055A30 0FC15262 */ jal set_door_state /* 08A564 7F055A34 24050001 */ li $a1, 1 .L7F055A38: /* 08A568 7F055A38 8E0F0064 */ lw $t7, 0x64($s0) .L7F055A3C: /* 08A56C 7F055A3C 8E19000C */ lw $t9, 0xc($s0) /* 08A570 7F055A40 2401FFF7 */ li $at, -9 /* 08A574 7F055A44 35F84000 */ ori $t8, $t7, 0x4000 /* 08A578 7F055A48 03214024 */ and $t0, $t9, $at /* 08A57C 7F055A4C AE180064 */ sw $t8, 0x64($s0) /* 08A580 7F055A50 AE08000C */ sw $t0, 0xc($s0) /* 08A584 7F055A54 0FC0F9A8 */ jal sub_GAME_7F03E6A0 /* 08A588 7F055A58 8FA40020 */ lw $a0, 0x20($sp) /* 08A58C 7F055A5C 8FBF001C */ lw $ra, 0x1c($sp) /* 08A590 7F055A60 8FB00018 */ lw $s0, 0x18($sp) /* 08A594 7F055A64 27BD0020 */ addiu $sp, $sp, 0x20 /* 08A598 7F055A68 03E00008 */ jr $ra /* 08A59C 7F055A6C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F055A70(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F055A70 /* 08A5A0 7F055A70 84AE0006 */ lh $t6, 6($a1) /* 08A5A4 7F055A74 3C188007 */ lui $t8, %hi(ptr_2xxxpresets) /* 08A5A8 7F055A78 8F185D1C */ lw $t8, %lo(ptr_2xxxpresets)($t8) /* 08A5AC 7F055A7C 000E7900 */ sll $t7, $t6, 4 /* 08A5B0 7F055A80 01EE7821 */ addu $t7, $t7, $t6 /* 08A5B4 7F055A84 000F7880 */ sll $t7, $t7, 2 /* 08A5B8 7F055A88 01F81021 */ addu $v0, $t7, $t8 /* 08A5BC 7F055A8C C4440010 */ lwc1 $f4, 0x10($v0) /* 08A5C0 7F055A90 C4460020 */ lwc1 $f6, 0x20($v0) /* 08A5C4 7F055A94 C44A001C */ lwc1 $f10, 0x1c($v0) /* 08A5C8 7F055A98 C4520014 */ lwc1 $f18, 0x14($v0) /* 08A5CC 7F055A9C 46062202 */ mul.s $f8, $f4, $f6 /* 08A5D0 7F055AA0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08A5D4 7F055AA4 46125102 */ mul.s $f4, $f10, $f18 /* 08A5D8 7F055AA8 46044181 */ sub.s $f6, $f8, $f4 /* 08A5DC 7F055AAC E7A60004 */ swc1 $f6, 4($sp) /* 08A5E0 7F055AB0 C4520018 */ lwc1 $f18, 0x18($v0) /* 08A5E4 7F055AB4 C44A0014 */ lwc1 $f10, 0x14($v0) /* 08A5E8 7F055AB8 C4440020 */ lwc1 $f4, 0x20($v0) /* 08A5EC 7F055ABC 46125202 */ mul.s $f8, $f10, $f18 /* 08A5F0 7F055AC0 C44A000C */ lwc1 $f10, 0xc($v0) /* 08A5F4 7F055AC4 460A2482 */ mul.s $f18, $f4, $f10 /* 08A5F8 7F055AC8 46124101 */ sub.s $f4, $f8, $f18 /* 08A5FC 7F055ACC E7A40008 */ swc1 $f4, 8($sp) /* 08A600 7F055AD0 C448001C */ lwc1 $f8, 0x1c($v0) /* 08A604 7F055AD4 C44A000C */ lwc1 $f10, 0xc($v0) /* 08A608 7F055AD8 46085482 */ mul.s $f18, $f10, $f8 /* 08A60C 7F055ADC C4480010 */ lwc1 $f8, 0x10($v0) /* 08A610 7F055AE0 C44A0018 */ lwc1 $f10, 0x18($v0) /* 08A614 7F055AE4 46085282 */ mul.s $f10, $f10, $f8 /* 08A618 7F055AE8 460A9201 */ sub.s $f8, $f18, $f10 /* 08A61C 7F055AEC E7A8000C */ swc1 $f8, 0xc($sp) /* 08A620 7F055AF0 C44A0000 */ lwc1 $f10, ($v0) /* 08A624 7F055AF4 C4920008 */ lwc1 $f18, 8($a0) /* 08A628 7F055AF8 94B90098 */ lhu $t9, 0x98($a1) /* 08A62C 7F055AFC 460A9001 */ sub.s $f0, $f18, $f10 /* 08A630 7F055B00 C44A0004 */ lwc1 $f10, 4($v0) /* 08A634 7F055B04 C492000C */ lwc1 $f18, 0xc($a0) /* 08A638 7F055B08 33280008 */ andi $t0, $t9, 8 /* 08A63C 7F055B0C 460A9081 */ sub.s $f2, $f18, $f10 /* 08A640 7F055B10 C44A0008 */ lwc1 $f10, 8($v0) /* 08A644 7F055B14 C4920010 */ lwc1 $f18, 0x10($a0) /* 08A648 7F055B18 460A9301 */ sub.s $f12, $f18, $f10 /* 08A64C 7F055B1C 46060482 */ mul.s $f18, $f0, $f6 /* 08A650 7F055B20 44800000 */ mtc1 $zero, $f0 /* 08A654 7F055B24 46041282 */ mul.s $f10, $f2, $f4 /* 08A658 7F055B28 460A9180 */ add.s $f6, $f18, $f10 /* 08A65C 7F055B2C 460C4102 */ mul.s $f4, $f8, $f12 /* 08A660 7F055B30 46062400 */ add.s $f16, $f4, $f6 /* 08A664 7F055B34 11000002 */ beqz $t0, .L7F055B40 /* 08A668 7F055B38 46008386 */ mov.s $f14, $f16 /* 08A66C 7F055B3C 46008387 */ neg.s $f14, $f16 .L7F055B40: /* 08A670 7F055B40 4600703C */ c.lt.s $f14, $f0 /* 08A674 7F055B44 00000000 */ nop /* 08A678 7F055B48 45020004 */ bc1fl .L7F055B5C /* 08A67C 7F055B4C 460E003C */ c.lt.s $f0, $f14 /* 08A680 7F055B50 10000007 */ b .L7F055B70 /* 08A684 7F055B54 00001025 */ move $v0, $zero /* 08A688 7F055B58 460E003C */ c.lt.s $f0, $f14 .L7F055B5C: /* 08A68C 7F055B5C 24020001 */ li $v0, 1 /* 08A690 7F055B60 45000003 */ bc1f .L7F055B70 /* 08A694 7F055B64 00000000 */ nop /* 08A698 7F055B68 10000001 */ b .L7F055B70 /* 08A69C 7F055B6C 24020001 */ li $v0, 1 .L7F055B70: /* 08A6A0 7F055B70 03E00008 */ jr $ra /* 08A6A4 7F055B74 27BD0020 */ addiu $sp, $sp, 0x20 ) #endif #ifdef NONMATCHING void sub_GAME_7F055B78(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F055B78 /* 08A6A8 7F055B78 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08A6AC 7F055B7C AFBF0014 */ sw $ra, 0x14($sp) /* 08A6B0 7F055B80 8CAE0008 */ lw $t6, 8($a1) /* 08A6B4 7F055B84 000E7900 */ sll $t7, $t6, 4 /* 08A6B8 7F055B88 05E3002A */ bgezl $t7, .L7F055C34 /* 08A6BC 7F055B8C 8FBF0014 */ lw $ra, 0x14($sp) /* 08A6C0 7F055B90 80B800BC */ lb $t8, 0xbc($a1) /* 08A6C4 7F055B94 57000027 */ bnezl $t8, .L7F055C34 /* 08A6C8 7F055B98 8FBF0014 */ lw $ra, 0x14($sp) /* 08A6CC 7F055B9C 44802000 */ mtc1 $zero, $f4 /* 08A6D0 7F055BA0 C4A600B4 */ lwc1 $f6, 0xb4($a1) /* 08A6D4 7F055BA4 46062032 */ c.eq.s $f4, $f6 /* 08A6D8 7F055BA8 00000000 */ nop /* 08A6DC 7F055BAC 45020021 */ bc1fl .L7F055C34 /* 08A6E0 7F055BB0 8FBF0014 */ lw $ra, 0x14($sp) /* 08A6E4 7F055BB4 0FC1569C */ jal sub_GAME_7F055A70 /* 08A6E8 7F055BB8 AFA5001C */ sw $a1, 0x1c($sp) /* 08A6EC 7F055BBC 8FA5001C */ lw $a1, 0x1c($sp) /* 08A6F0 7F055BC0 00002025 */ move $a0, $zero /* 08A6F4 7F055BC4 94B90098 */ lhu $t9, 0x98($a1) /* 08A6F8 7F055BC8 33280008 */ andi $t0, $t9, 8 /* 08A6FC 7F055BCC 15000006 */ bnez $t0, .L7F055BE8 /* 08A700 7F055BD0 00000000 */ nop /* 08A704 7F055BD4 14400002 */ bnez $v0, .L7F055BE0 /* 08A708 7F055BD8 00000000 */ nop /* 08A70C 7F055BDC 3C042000 */ lui $a0, 0x2000 .L7F055BE0: /* 08A710 7F055BE0 10000005 */ b .L7F055BF8 /* 08A714 7F055BE4 8CA90008 */ lw $t1, 8($a1) .L7F055BE8: /* 08A718 7F055BE8 50400003 */ beql $v0, $zero, .L7F055BF8 /* 08A71C 7F055BEC 8CA90008 */ lw $t1, 8($a1) /* 08A720 7F055BF0 3C042000 */ lui $a0, 0x2000 /* 08A724 7F055BF4 8CA90008 */ lw $t1, 8($a1) .L7F055BF8: /* 08A728 7F055BF8 3C032000 */ lui $v1, 0x2000 /* 08A72C 7F055BFC 00A01025 */ move $v0, $a1 /* 08A730 7F055C00 01245026 */ xor $t2, $t1, $a0 /* 08A734 7F055C04 000A5880 */ sll $t3, $t2, 2 /* 08A738 7F055C08 0563000A */ bgezl $t3, .L7F055C34 /* 08A73C 7F055C0C 8FBF0014 */ lw $ra, 0x14($sp) /* 08A740 7F055C10 8C4C0008 */ lw $t4, 8($v0) .L7F055C14: /* 08A744 7F055C14 01836826 */ xor $t5, $t4, $v1 /* 08A748 7F055C18 AC4D0008 */ sw $t5, 8($v0) /* 08A74C 7F055C1C 8C4200C8 */ lw $v0, 0xc8($v0) /* 08A750 7F055C20 50400004 */ beql $v0, $zero, .L7F055C34 /* 08A754 7F055C24 8FBF0014 */ lw $ra, 0x14($sp) /* 08A758 7F055C28 5445FFFA */ bnel $v0, $a1, .L7F055C14 /* 08A75C 7F055C2C 8C4C0008 */ lw $t4, 8($v0) /* 08A760 7F055C30 8FBF0014 */ lw $ra, 0x14($sp) .L7F055C34: /* 08A764 7F055C34 27BD0018 */ addiu $sp, $sp, 0x18 /* 08A768 7F055C38 03E00008 */ jr $ra /* 08A76C 7F055C3C 00000000 */ nop ) #endif #ifdef NONMATCHING void sub_GAME_7F055C40(void) { } #else #ifdef VERSION_US GLOBAL_ASM( .text glabel sub_GAME_7F055C40 /* 08A770 7F055C40 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08A774 7F055C44 AFBF001C */ sw $ra, 0x1c($sp) /* 08A778 7F055C48 AFB00018 */ sw $s0, 0x18($sp) /* 08A77C 7F055C4C AFA40030 */ sw $a0, 0x30($sp) /* 08A780 7F055C50 8C900004 */ lw $s0, 4($a0) /* 08A784 7F055C54 0FC225E6 */ jal get_curplayer_positiondata /* 08A788 7F055C58 AFA00028 */ sw $zero, 0x28($sp) /* 08A78C 7F055C5C AFA20024 */ sw $v0, 0x24($sp) /* 08A790 7F055C60 8E04009C */ lw $a0, 0x9c($s0) /* 08A794 7F055C64 8FA30028 */ lw $v1, 0x28($sp) /* 08A798 7F055C68 14800003 */ bnez $a0, .L7F055C78 /* 08A79C 7F055C6C 00000000 */ nop /* 08A7A0 7F055C70 1000001C */ b .L7F055CE4 /* 08A7A4 7F055C74 24030001 */ li $v1, 1 .L7F055C78: /* 08A7A8 7F055C78 0FC2339C */ jal sub_GAME_7F08CE70 /* 08A7AC 7F055C7C AFA30028 */ sw $v1, 0x28($sp) /* 08A7B0 7F055C80 10400003 */ beqz $v0, .L7F055C90 /* 08A7B4 7F055C84 8FA30028 */ lw $v1, 0x28($sp) /* 08A7B8 7F055C88 10000016 */ b .L7F055CE4 /* 08A7BC 7F055C8C 24030001 */ li $v1, 1 .L7F055C90: /* 08A7C0 7F055C90 8FA40024 */ lw $a0, 0x24($sp) /* 08A7C4 7F055C94 02002825 */ move $a1, $s0 /* 08A7C8 7F055C98 0FC1569C */ jal sub_GAME_7F055A70 /* 08A7CC 7F055C9C AFA30028 */ sw $v1, 0x28($sp) /* 08A7D0 7F055CA0 10400009 */ beqz $v0, .L7F055CC8 /* 08A7D4 7F055CA4 8FA30028 */ lw $v1, 0x28($sp) /* 08A7D8 7F055CA8 8E02000C */ lw $v0, 0xc($s0) /* 08A7DC 7F055CAC 000278C0 */ sll $t7, $v0, 3 /* 08A7E0 7F055CB0 05E1000C */ bgez $t7, .L7F055CE4 /* 08A7E4 7F055CB4 0002C100 */ sll $t8, $v0, 4 /* 08A7E8 7F055CB8 0702000B */ bltzl $t8, .L7F055CE8 /* 08A7EC 7F055CBC 02002025 */ move $a0, $s0 /* 08A7F0 7F055CC0 10000008 */ b .L7F055CE4 /* 08A7F4 7F055CC4 24030001 */ li $v1, 1 .L7F055CC8: /* 08A7F8 7F055CC8 8E02000C */ lw $v0, 0xc($s0) /* 08A7FC 7F055CCC 0002C8C0 */ sll $t9, $v0, 3 /* 08A800 7F055CD0 07200004 */ bltz $t9, .L7F055CE4 /* 08A804 7F055CD4 00024100 */ sll $t0, $v0, 4 /* 08A808 7F055CD8 05030003 */ bgezl $t0, .L7F055CE8 /* 08A80C 7F055CDC 02002025 */ move $a0, $s0 /* 08A810 7F055CE0 24030001 */ li $v1, 1 .L7F055CE4: /* 08A814 7F055CE4 02002025 */ move $a0, $s0 .L7F055CE8: /* 08A818 7F055CE8 0FC0F9C6 */ jal sub_GAME_7F03E718 /* 08A81C 7F055CEC AFA30028 */ sw $v1, 0x28($sp) /* 08A820 7F055CF0 14400002 */ bnez $v0, .L7F055CFC /* 08A824 7F055CF4 8FA30028 */ lw $v1, 0x28($sp) /* 08A828 7F055CF8 00001825 */ move $v1, $zero .L7F055CFC: /* 08A82C 7F055CFC 10600007 */ beqz $v1, .L7F055D1C /* 08A830 7F055D00 8FA40024 */ lw $a0, 0x24($sp) /* 08A834 7F055D04 0FC156DE */ jal sub_GAME_7F055B78 /* 08A838 7F055D08 02002825 */ move $a1, $s0 /* 08A83C 7F055D0C 0FC15667 */ jal sub_GAME_7F05599C /* 08A840 7F055D10 8FA40030 */ lw $a0, 0x30($sp) /* 08A844 7F055D14 10000028 */ b .L7F055DB8 /* 08A848 7F055D18 8FBF001C */ lw $ra, 0x1c($sp) .L7F055D1C: /* 08A84C 7F055D1C 820900BC */ lb $t1, 0xbc($s0) /* 08A850 7F055D20 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 08A854 7F055D24 55200024 */ bnezl $t1, .L7F055DB8 /* 08A858 7F055D28 8FBF001C */ lw $ra, 0x1c($sp) /* 08A85C 7F055D2C C60400B4 */ lwc1 $f4, 0xb4($s0) /* 08A860 7F055D30 44813000 */ mtc1 $at, $f6 /* 08A864 7F055D34 00000000 */ nop /* 08A868 7F055D38 4606203C */ c.lt.s $f4, $f6 /* 08A86C 7F055D3C 00000000 */ nop /* 08A870 7F055D40 4502001D */ bc1fl .L7F055DB8 /* 08A874 7F055D44 8FBF001C */ lw $ra, 0x1c($sp) /* 08A878 7F055D48 8E02000C */ lw $v0, 0xc($s0) /* 08A87C 7F055D4C 304A0004 */ andi $t2, $v0, 4 /* 08A880 7F055D50 55400014 */ bnezl $t2, .L7F055DA4 /* 08A884 7F055D54 8E0C0064 */ lw $t4, 0x64($s0) /* 08A888 7F055D58 0FC23487 */ jal get_textoverride_by_obj /* 08A88C 7F055D5C 02002025 */ move $a0, $s0 /* 08A890 7F055D60 1040000A */ beqz $v0, .L7F055D8C /* 08A894 7F055D64 00000000 */ nop /* 08A898 7F055D68 8C4B001C */ lw $t3, 0x1c($v0) /* 08A89C 7F055D6C 11600007 */ beqz $t3, .L7F055D8C /* 08A8A0 7F055D70 00000000 */ nop /* 08A8A4 7F055D74 0FC30776 */ jal get_textptr_for_textID /* 08A8A8 7F055D78 8C44001C */ lw $a0, 0x1c($v0) /* 08A8AC 7F055D7C 0FC228F2 */ jal display_string_in_lower_left_corner /* 08A8B0 7F055D80 00402025 */ move $a0, $v0 /* 08A8B4 7F055D84 10000006 */ b .L7F055DA0 /* 08A8B8 7F055D88 8E02000C */ lw $v0, 0xc($s0) .L7F055D8C: /* 08A8BC 7F055D8C 0FC30776 */ jal get_textptr_for_textID /* 08A8C0 7F055D90 3404A440 */ li $a0, 42048 /* 08A8C4 7F055D94 0FC228F2 */ jal display_string_in_lower_left_corner /* 08A8C8 7F055D98 00402025 */ move $a0, $v0 /* 08A8CC 7F055D9C 8E02000C */ lw $v0, 0xc($s0) .L7F055DA0: /* 08A8D0 7F055DA0 8E0C0064 */ lw $t4, 0x64($s0) .L7F055DA4: /* 08A8D4 7F055DA4 344E0008 */ ori $t6, $v0, 8 /* 08A8D8 7F055DA8 AE0E000C */ sw $t6, 0xc($s0) /* 08A8DC 7F055DAC 358D4000 */ ori $t5, $t4, 0x4000 /* 08A8E0 7F055DB0 AE0D0064 */ sw $t5, 0x64($s0) /* 08A8E4 7F055DB4 8FBF001C */ lw $ra, 0x1c($sp) .L7F055DB8: /* 08A8E8 7F055DB8 8FB00018 */ lw $s0, 0x18($sp) /* 08A8EC 7F055DBC 27BD0030 */ addiu $sp, $sp, 0x30 /* 08A8F0 7F055DC0 03E00008 */ jr $ra /* 08A8F4 7F055DC4 00001025 */ move $v0, $zero ) #endif #ifdef VERSION_JP GLOBAL_ASM( .text glabel sub_GAME_7F055C40 /* 08A770 7F055C40 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08A774 7F055C44 AFBF001C */ sw $ra, 0x1c($sp) /* 08A778 7F055C48 AFB00018 */ sw $s0, 0x18($sp) /* 08A77C 7F055C4C AFA40030 */ sw $a0, 0x30($sp) /* 08A780 7F055C50 8C900004 */ lw $s0, 4($a0) /* 08A784 7F055C54 0FC225E6 */ jal get_curplayer_positiondata /* 08A788 7F055C58 AFA00028 */ sw $zero, 0x28($sp) /* 08A78C 7F055C5C AFA20024 */ sw $v0, 0x24($sp) /* 08A790 7F055C60 8E04009C */ lw $a0, 0x9c($s0) /* 08A794 7F055C64 8FA30028 */ lw $v1, 0x28($sp) /* 08A798 7F055C68 14800003 */ bnez $a0, .L7F055C78 /* 08A79C 7F055C6C 00000000 */ nop /* 08A7A0 7F055C70 1000001C */ b .L7F055CE4 /* 08A7A4 7F055C74 24030001 */ li $v1, 1 .L7F055C78: /* 08A7A8 7F055C78 0FC2339C */ jal sub_GAME_7F08CE70 /* 08A7AC 7F055C7C AFA30028 */ sw $v1, 0x28($sp) /* 08A7B0 7F055C80 10400003 */ beqz $v0, .L7F055C90 /* 08A7B4 7F055C84 8FA30028 */ lw $v1, 0x28($sp) /* 08A7B8 7F055C88 10000016 */ b .L7F055CE4 /* 08A7BC 7F055C8C 24030001 */ li $v1, 1 .L7F055C90: /* 08A7C0 7F055C90 8FA40024 */ lw $a0, 0x24($sp) /* 08A7C4 7F055C94 02002825 */ move $a1, $s0 /* 08A7C8 7F055C98 0FC1569C */ jal sub_GAME_7F055A70 /* 08A7CC 7F055C9C AFA30028 */ sw $v1, 0x28($sp) /* 08A7D0 7F055CA0 10400009 */ beqz $v0, .L7F055CC8 /* 08A7D4 7F055CA4 8FA30028 */ lw $v1, 0x28($sp) /* 08A7D8 7F055CA8 8E02000C */ lw $v0, 0xc($s0) /* 08A7DC 7F055CAC 000278C0 */ sll $t7, $v0, 3 /* 08A7E0 7F055CB0 05E1000C */ bgez $t7, .L7F055CE4 /* 08A7E4 7F055CB4 0002C100 */ sll $t8, $v0, 4 /* 08A7E8 7F055CB8 0702000B */ bltzl $t8, .L7F055CE8 /* 08A7EC 7F055CBC 02002025 */ move $a0, $s0 /* 08A7F0 7F055CC0 10000008 */ b .L7F055CE4 /* 08A7F4 7F055CC4 24030001 */ li $v1, 1 .L7F055CC8: /* 08A7F8 7F055CC8 8E02000C */ lw $v0, 0xc($s0) /* 08A7FC 7F055CCC 0002C8C0 */ sll $t9, $v0, 3 /* 08A800 7F055CD0 07200004 */ bltz $t9, .L7F055CE4 /* 08A804 7F055CD4 00024100 */ sll $t0, $v0, 4 /* 08A808 7F055CD8 05030003 */ bgezl $t0, .L7F055CE8 /* 08A80C 7F055CDC 02002025 */ move $a0, $s0 /* 08A810 7F055CE0 24030001 */ li $v1, 1 .L7F055CE4: /* 08A814 7F055CE4 02002025 */ move $a0, $s0 .L7F055CE8: /* 08A818 7F055CE8 0FC0F9C6 */ jal sub_GAME_7F03E718 /* 08A81C 7F055CEC AFA30028 */ sw $v1, 0x28($sp) /* 08A820 7F055CF0 14400002 */ bnez $v0, .L7F055CFC /* 08A824 7F055CF4 8FA30028 */ lw $v1, 0x28($sp) /* 08A828 7F055CF8 00001825 */ move $v1, $zero .L7F055CFC: /* 08A82C 7F055CFC 10600007 */ beqz $v1, .L7F055D1C /* 08A830 7F055D00 8FA40024 */ lw $a0, 0x24($sp) /* 08A834 7F055D04 0FC156DE */ jal sub_GAME_7F055B78 /* 08A838 7F055D08 02002825 */ move $a1, $s0 /* 08A83C 7F055D0C 0FC15667 */ jal sub_GAME_7F05599C /* 08A840 7F055D10 8FA40030 */ lw $a0, 0x30($sp) /* 08A844 7F055D14 10000028 */ b .L7F055DB8 /* 08A848 7F055D18 8FBF001C */ lw $ra, 0x1c($sp) .L7F055D1C: /* 08A84C 7F055D1C 820900BC */ lb $t1, 0xbc($s0) /* 08A850 7F055D20 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 08A854 7F055D24 55200024 */ bnezl $t1, .L7F055DB8 /* 08A858 7F055D28 8FBF001C */ lw $ra, 0x1c($sp) /* 08A85C 7F055D2C C60400B4 */ lwc1 $f4, 0xb4($s0) /* 08A860 7F055D30 44813000 */ mtc1 $at, $f6 /* 08A864 7F055D34 00000000 */ nop /* 08A868 7F055D38 4606203C */ c.lt.s $f4, $f6 /* 08A86C 7F055D3C 00000000 */ nop /* 08A870 7F055D40 4502001D */ bc1fl .L7F055DB8 /* 08A874 7F055D44 8FBF001C */ lw $ra, 0x1c($sp) /* 08A878 7F055D48 8E02000C */ lw $v0, 0xc($s0) /* 08A87C 7F055D4C 304A0004 */ andi $t2, $v0, 4 /* 08A880 7F055D50 55400014 */ bnezl $t2, .L7F055DA4 /* 08A884 7F055D54 8E0C0064 */ lw $t4, 0x64($s0) /* 08A888 7F055D58 0FC23487 */ jal get_textoverride_by_obj /* 08A88C 7F055D5C 02002025 */ move $a0, $s0 /* 08A890 7F055D60 1040000A */ beqz $v0, .L7F055D8C /* 08A894 7F055D64 00000000 */ nop /* 08A898 7F055D68 8C4B001C */ lw $t3, 0x1c($v0) /* 08A89C 7F055D6C 11600007 */ beqz $t3, .L7F055D8C /* 08A8A0 7F055D70 00000000 */ nop /* 08A8A4 7F055D74 0FC30776 */ jal get_textptr_for_textID /* 08A8A8 7F055D78 8C44001C */ lw $a0, 0x1c($v0) /* 08A8AC 7F055D7C 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 08A8B0 7F055D80 00402025 */ move $a0, $v0 /* 08A8B4 7F055D84 10000006 */ b .L7F055DA0 /* 08A8B8 7F055D88 8E02000C */ lw $v0, 0xc($s0) .L7F055D8C: /* 08A8BC 7F055D8C 0FC30776 */ jal get_textptr_for_textID /* 08A8C0 7F055D90 3404A440 */ li $a0, 42048 /* 08A8C4 7F055D94 0FC228F2 */ jal jp_display_string_in_lower_left_corner /* 08A8C8 7F055D98 00402025 */ move $a0, $v0 /* 08A8CC 7F055D9C 8E02000C */ lw $v0, 0xc($s0) .L7F055DA0: /* 08A8D0 7F055DA0 8E0C0064 */ lw $t4, 0x64($s0) .L7F055DA4: /* 08A8D4 7F055DA4 344E0008 */ ori $t6, $v0, 8 /* 08A8D8 7F055DA8 AE0E000C */ sw $t6, 0xc($s0) /* 08A8DC 7F055DAC 358D4000 */ ori $t5, $t4, 0x4000 /* 08A8E0 7F055DB0 AE0D0064 */ sw $t5, 0x64($s0) /* 08A8E4 7F055DB4 8FBF001C */ lw $ra, 0x1c($sp) .L7F055DB8: /* 08A8E8 7F055DB8 8FB00018 */ lw $s0, 0x18($sp) /* 08A8EC 7F055DBC 27BD0030 */ addiu $sp, $sp, 0x30 /* 08A8F0 7F055DC0 03E00008 */ jr $ra /* 08A8F4 7F055DC4 00001025 */ move $v0, $zero ) #endif #endif void start_alarm(void) { if (alarm_timer < 1) { alarm_timer = 1; } return; } void deactivate_alarm_sound_effect(void) { if ((ptr_alarm_sfx != 0) && (sfxGetArg0Unk3F(ptr_alarm_sfx) != 0)) { sfxDeactivate(ptr_alarm_sfx); } return; } void stop_alarm(void) { alarm_timer = 0; deactivate_alarm_sound_effect(); return; } u32 is_alarm_on(void) { return (0 < alarm_timer); } #ifdef NONMATCHING void init_trigger_toxic_gas_effect(void) { } #else GLOBAL_ASM( .text glabel init_trigger_toxic_gas_effect /* 08A994 7F055E64 44802000 */ mtc1 $zero, $f4 /* 08A998 7F055E68 240E0001 */ li $t6, 1 /* 08A99C 7F055E6C 3C018003 */ lui $at, %hi(activate_gas_sound_timer) /* 08A9A0 7F055E70 AC2E0ACC */ sw $t6, %lo(activate_gas_sound_timer)($at) /* 08A9A4 7F055E74 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08A9A8 7F055E78 3C018003 */ lui $at, %hi(D_80030AE0) /* 08A9AC 7F055E7C AFBF0014 */ sw $ra, 0x14($sp) /* 08A9B0 7F055E80 E4240AE0 */ swc1 $f4, %lo(D_80030AE0)($at) /* 08A9B4 7F055E84 C4860000 */ lwc1 $f6, ($a0) /* 08A9B8 7F055E88 3C028003 */ lui $v0, %hi(D_80030AD0) /* 08A9BC 7F055E8C 24420AD0 */ addiu $v0, %lo(D_80030AD0) # addiu $v0, $v0, 0xad0 /* 08A9C0 7F055E90 E4460000 */ swc1 $f6, ($v0) /* 08A9C4 7F055E94 C4880004 */ lwc1 $f8, 4($a0) /* 08A9C8 7F055E98 E4480004 */ swc1 $f8, 4($v0) /* 08A9CC 7F055E9C C48A0008 */ lwc1 $f10, 8($a0) /* 08A9D0 7F055EA0 0C001A57 */ jal get_stage_num /* 08A9D4 7F055EA4 E44A0008 */ swc1 $f10, 8($v0) /* 08A9D8 7F055EA8 24010020 */ li $at, 32 /* 08A9DC 7F055EAC 14410007 */ bne $v0, $at, .L7F055ECC /* 08A9E0 7F055EB0 3C0142F0 */ li $at, 0x42F00000 # 120.000000 /* 08A9E4 7F055EB4 44818000 */ mtc1 $at, $f16 /* 08A9E8 7F055EB8 3C018007 */ lui $at, %hi(gas_damage_flag) /* 08A9EC 7F055EBC E4301E78 */ swc1 $f16, %lo(gas_damage_flag)($at) /* 08A9F0 7F055EC0 3C018007 */ lui $at, %hi(gas_cutoff_flag) /* 08A9F4 7F055EC4 10000008 */ b .L7F055EE8 /* 08A9F8 7F055EC8 AC201E7C */ sw $zero, %lo(gas_cutoff_flag)($at) .L7F055ECC: /* 08A9FC 7F055ECC 3C014561 */ li $at, 0x45610000 # 3600.000000 /* 08AA00 7F055ED0 44819000 */ mtc1 $at, $f18 /* 08AA04 7F055ED4 3C018007 */ lui $at, %hi(gas_damage_flag) /* 08AA08 7F055ED8 240F0001 */ li $t7, 1 /* 08AA0C 7F055EDC E4321E78 */ swc1 $f18, %lo(gas_damage_flag)($at) /* 08AA10 7F055EE0 3C018007 */ lui $at, %hi(gas_cutoff_flag) /* 08AA14 7F055EE4 AC2F1E7C */ sw $t7, %lo(gas_cutoff_flag)($at) .L7F055EE8: /* 08AA18 7F055EE8 8FBF0014 */ lw $ra, 0x14($sp) /* 08AA1C 7F055EEC 27BD0018 */ addiu $sp, $sp, 0x18 /* 08AA20 7F055EF0 03E00008 */ jr $ra /* 08AA24 7F055EF4 00000000 */ nop ) #endif void check_deactivate_gas_sound(void) { if ((ptr_gas_sound != 0) && (sfxGetArg0Unk3F(ptr_gas_sound) != 0)) { sfxDeactivate(ptr_gas_sound); } return; } //!FIXME //Seriously why tf is this nopping: ///* 08AA74 7F055F44 00001025 */ move $v0, $zero //it byte matches otherwise #ifdef NONMATCHING s32 check_if_toxic_gas_activated(void) { if (0.0f < toxic_gas_sound_timer) { return 1; } return ; } #else GLOBAL_ASM( .text glabel check_if_toxic_gas_activated /* 08AA68 7F055F38 3C018003 */ lui $at, %hi(toxic_gas_sound_timer) /* 08AA6C 7F055F3C C4260AC8 */ lwc1 $f6, %lo(toxic_gas_sound_timer)($at) /* 08AA70 7F055F40 44802000 */ mtc1 $zero, $f4 /* 08AA74 7F055F44 00001025 */ move $v0, $zero /* 08AA78 7F055F48 4606203C */ c.lt.s $f4, $f6 /* 08AA7C 7F055F4C 00000000 */ nop /* 08AA80 7F055F50 45000002 */ bc1f .L7F055F5C /* 08AA84 7F055F54 00000000 */ nop /* 08AA88 7F055F58 24020001 */ li $v0, 1 .L7F055F5C: /* 08AA8C 7F055F5C 03E00008 */ jr $ra /* 08AA90 7F055F60 00000000 */ nop ) #endif #ifdef NONMATCHING extern s32 disable_player_pickups_flag; void handle_gas_damage(void) { if (activate_gas_sound_timer) { toxic_gas_sound_timer = toxic_gas_sound_timer + global_timer_delta; if (gas_damage_flag <= toxic_gas_sound_timer) { toxic_gas_sound_timer = (f32) gas_damage_flag; activate_gas_sound_timer = 0; } } if (0.0f < toxic_gas_sound_timer) { if (disable_player_pickups_flag == 0) { switch_to_solosky2(toxic_gas_sound_timer / gas_damage_flag); if (gas_cutoff_flag != 0) { if (D_80030ADC < (global_timer - 0xe1)) { D_80030ADC = (s32) global_timer; if (600.0f <= toxic_gas_sound_timer) { play_sfx_a1(ptr_sfx_buf, 0x62, 0); } if (1800.0f <= toxic_gas_sound_timer) { record_damage_kills(0x3e000000, 0, 0, -1, 0); } } if (D_80030AE0 < gas_damage_flag) { D_80030AE0 = (f32) (D_80030AE0 + global_timer_delta); if (ptr_gas_sound == 0) { if (get_controls_locked_flag(&ptr_gas_sound) == 0) { play_sfx_a1(ptr_sfx_buf, 0x66, &ptr_gas_sound); } } if (ptr_gas_sound != 0) { sub_GAME_7F053A10(ptr_gas_sound, &D_80030AD0); return; } } else { if (ptr_gas_sound != 0) { if (sfxGetArg0Unk3F(ptr_gas_sound) != 0) { sfxDeactivate(ptr_gas_sound); } } } } } } } #else GLOBAL_ASM( .text glabel handle_gas_damage /* 08AA94 7F055F64 3C028003 */ lui $v0, %hi(activate_gas_sound_timer) /* 08AA98 7F055F68 24420ACC */ addiu $v0, %lo(activate_gas_sound_timer) # addiu $v0, $v0, 0xacc /* 08AA9C 7F055F6C 8C4E0000 */ lw $t6, ($v0) /* 08AAA0 7F055F70 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08AAA4 7F055F74 44808000 */ mtc1 $zero, $f16 /* 08AAA8 7F055F78 11C00011 */ beqz $t6, .L7F055FC0 /* 08AAAC 7F055F7C AFBF001C */ sw $ra, 0x1c($sp) /* 08AAB0 7F055F80 3C038003 */ lui $v1, %hi(toxic_gas_sound_timer) /* 08AAB4 7F055F84 24630AC8 */ addiu $v1, %lo(toxic_gas_sound_timer) # addiu $v1, $v1, 0xac8 /* 08AAB8 7F055F88 3C018005 */ lui $at, %hi(global_timer_delta) /* 08AABC 7F055F8C C4268378 */ lwc1 $f6, %lo(global_timer_delta)($at) /* 08AAC0 7F055F90 C4640000 */ lwc1 $f4, ($v1) /* 08AAC4 7F055F94 3C018007 */ lui $at, %hi(gas_damage_flag) /* 08AAC8 7F055F98 46062200 */ add.s $f8, $f4, $f6 /* 08AACC 7F055F9C E4680000 */ swc1 $f8, ($v1) /* 08AAD0 7F055FA0 C46A0000 */ lwc1 $f10, ($v1) /* 08AAD4 7F055FA4 C4201E78 */ lwc1 $f0, %lo(gas_damage_flag)($at) /* 08AAD8 7F055FA8 460A003E */ c.le.s $f0, $f10 /* 08AADC 7F055FAC 00000000 */ nop /* 08AAE0 7F055FB0 45000003 */ bc1f .L7F055FC0 /* 08AAE4 7F055FB4 00000000 */ nop /* 08AAE8 7F055FB8 E4600000 */ swc1 $f0, ($v1) /* 08AAEC 7F055FBC AC400000 */ sw $zero, ($v0) .L7F055FC0: /* 08AAF0 7F055FC0 3C038003 */ lui $v1, %hi(toxic_gas_sound_timer) /* 08AAF4 7F055FC4 24630AC8 */ addiu $v1, %lo(toxic_gas_sound_timer) # addiu $v1, $v1, 0xac8 /* 08AAF8 7F055FC8 C4600000 */ lwc1 $f0, ($v1) /* 08AAFC 7F055FCC 3C0F8003 */ lui $t7, %hi(disable_player_pickups_flag) /* 08AB00 7F055FD0 4600803C */ c.lt.s $f16, $f0 /* 08AB04 7F055FD4 00000000 */ nop /* 08AB08 7F055FD8 4502005E */ bc1fl .L7F056154 /* 08AB0C 7F055FDC 8FBF001C */ lw $ra, 0x1c($sp) /* 08AB10 7F055FE0 8DEF64B4 */ lw $t7, %lo(disable_player_pickups_flag)($t7) /* 08AB14 7F055FE4 3C018007 */ lui $at, %hi(gas_damage_flag) /* 08AB18 7F055FE8 55E0005A */ bnezl $t7, .L7F056154 /* 08AB1C 7F055FEC 8FBF001C */ lw $ra, 0x1c($sp) /* 08AB20 7F055FF0 C4321E78 */ lwc1 $f18, %lo(gas_damage_flag)($at) /* 08AB24 7F055FF4 0FC2EB2A */ jal switch_to_solosky2 /* 08AB28 7F055FF8 46120303 */ div.s $f12, $f0, $f18 /* 08AB2C 7F055FFC 3C188007 */ lui $t8, %hi(gas_cutoff_flag) /* 08AB30 7F056000 8F181E7C */ lw $t8, %lo(gas_cutoff_flag)($t8) /* 08AB34 7F056004 3C038003 */ lui $v1, %hi(toxic_gas_sound_timer) /* 08AB38 7F056008 24630AC8 */ addiu $v1, %lo(toxic_gas_sound_timer) # addiu $v1, $v1, 0xac8 /* 08AB3C 7F05600C 13000050 */ beqz $t8, .L7F056150 /* 08AB40 7F056010 3C048003 */ lui $a0, %hi(D_80030ADC) /* 08AB44 7F056014 3C028005 */ lui $v0, %hi(global_timer) /* 08AB48 7F056018 8C42837C */ lw $v0, %lo(global_timer)($v0) /* 08AB4C 7F05601C 24840ADC */ addiu $a0, %lo(D_80030ADC) # addiu $a0, $a0, 0xadc /* 08AB50 7F056020 8C990000 */ lw $t9, ($a0) /* 08AB54 7F056024 2448FF1F */ addiu $t0, $v0, -0xe1 /* 08AB58 7F056028 0328082A */ slt $at, $t9, $t0 /* 08AB5C 7F05602C 1020001B */ beqz $at, .L7F05609C /* 08AB60 7F056030 3C014416 */ li $at, 0x44160000 # 600.000000 /* 08AB64 7F056034 44812000 */ mtc1 $at, $f4 /* 08AB68 7F056038 C4600000 */ lwc1 $f0, ($v1) /* 08AB6C 7F05603C AC820000 */ sw $v0, ($a0) /* 08AB70 7F056040 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 08AB74 7F056044 4600203E */ c.le.s $f4, $f0 /* 08AB78 7F056048 24050062 */ li $a1, 98 /* 08AB7C 7F05604C 00003025 */ move $a2, $zero /* 08AB80 7F056050 45020006 */ bc1fl .L7F05606C /* 08AB84 7F056054 3C0144E1 */ lui $at, 0x44e1 /* 08AB88 7F056058 0C002382 */ jal play_sfx_a1 /* 08AB8C 7F05605C 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08AB90 7F056060 3C018003 */ lui $at, %hi(toxic_gas_sound_timer) /* 08AB94 7F056064 C4200AC8 */ lwc1 $f0, %lo(toxic_gas_sound_timer)($at) /* 08AB98 7F056068 3C0144E1 */ li $at, 0x44E10000 # 1800.000000 .L7F05606C: /* 08AB9C 7F05606C 44813000 */ mtc1 $at, $f6 /* 08ABA0 7F056070 3C013E00 */ li $at, 0x3E000000 # 0.125000 /* 08ABA4 7F056074 4600303E */ c.le.s $f6, $f0 /* 08ABA8 7F056078 00000000 */ nop /* 08ABAC 7F05607C 45000007 */ bc1f .L7F05609C /* 08ABB0 7F056080 00000000 */ nop /* 08ABB4 7F056084 44807000 */ mtc1 $zero, $f14 /* 08ABB8 7F056088 44816000 */ mtc1 $at, $f12 /* 08ABBC 7F05608C 2407FFFF */ li $a3, -1 /* 08ABC0 7F056090 44067000 */ mfc1 $a2, $f14 /* 08ABC4 7F056094 0FC22647 */ jal record_damage_kills /* 08ABC8 7F056098 AFA00010 */ sw $zero, 0x10($sp) .L7F05609C: /* 08ABCC 7F05609C 3C028003 */ lui $v0, %hi(D_80030AE0) /* 08ABD0 7F0560A0 24420AE0 */ addiu $v0, %lo(D_80030AE0) # addiu $v0, $v0, 0xae0 /* 08ABD4 7F0560A4 3C018007 */ lui $at, %hi(gas_damage_flag) /* 08ABD8 7F0560A8 C4281E78 */ lwc1 $f8, %lo(gas_damage_flag)($at) /* 08ABDC 7F0560AC C4400000 */ lwc1 $f0, ($v0) /* 08ABE0 7F0560B0 3C018005 */ lui $at, %hi(global_timer_delta) /* 08ABE4 7F0560B4 3C048003 */ lui $a0, %hi(ptr_gas_sound) /* 08ABE8 7F0560B8 4608003C */ c.lt.s $f0, $f8 /* 08ABEC 7F0560BC 00000000 */ nop /* 08ABF0 7F0560C0 4500001A */ bc1f .L7F05612C /* 08ABF4 7F0560C4 00000000 */ nop /* 08ABF8 7F0560C8 C42A8378 */ lwc1 $f10, %lo(global_timer_delta)($at) /* 08ABFC 7F0560CC 3C098003 */ lui $t1, %hi(ptr_gas_sound) /* 08AC00 7F0560D0 460A0400 */ add.s $f16, $f0, $f10 /* 08AC04 7F0560D4 E4500000 */ swc1 $f16, ($v0) /* 08AC08 7F0560D8 8D290AE4 */ lw $t1, %lo(ptr_gas_sound)($t1) /* 08AC0C 7F0560DC 1520000A */ bnez $t1, .L7F056108 /* 08AC10 7F0560E0 00000000 */ nop /* 08AC14 7F0560E4 0FC2FF01 */ jal get_controls_locked_flag /* 08AC18 7F0560E8 00000000 */ nop /* 08AC1C 7F0560EC 14400006 */ bnez $v0, .L7F056108 /* 08AC20 7F0560F0 3C048006 */ lui $a0, %hi(ptr_sfx_buf) /* 08AC24 7F0560F4 3C068003 */ lui $a2, %hi(ptr_gas_sound) /* 08AC28 7F0560F8 24C60AE4 */ addiu $a2, %lo(ptr_gas_sound) # addiu $a2, $a2, 0xae4 /* 08AC2C 7F0560FC 8C843720 */ lw $a0, %lo(ptr_sfx_buf)($a0) /* 08AC30 7F056100 0C002382 */ jal play_sfx_a1 /* 08AC34 7F056104 24050066 */ li $a1, 102 .L7F056108: /* 08AC38 7F056108 3C048003 */ lui $a0, %hi(ptr_gas_sound) /* 08AC3C 7F05610C 8C840AE4 */ lw $a0, %lo(ptr_gas_sound)($a0) /* 08AC40 7F056110 3C058003 */ lui $a1, %hi(D_80030AD0) /* 08AC44 7F056114 5080000F */ beql $a0, $zero, .L7F056154 /* 08AC48 7F056118 8FBF001C */ lw $ra, 0x1c($sp) /* 08AC4C 7F05611C 0FC14E84 */ jal sub_GAME_7F053A10 /* 08AC50 7F056120 24A50AD0 */ addiu $a1, %lo(D_80030AD0) # addiu $a1, $a1, 0xad0 /* 08AC54 7F056124 1000000B */ b .L7F056154 /* 08AC58 7F056128 8FBF001C */ lw $ra, 0x1c($sp) .L7F05612C: /* 08AC5C 7F05612C 8C840AE4 */ lw $a0, %lo(ptr_gas_sound)($a0) /* 08AC60 7F056130 50800008 */ beql $a0, $zero, .L7F056154 /* 08AC64 7F056134 8FBF001C */ lw $ra, 0x1c($sp) /* 08AC68 7F056138 0C00237C */ jal sfxGetArg0Unk3F /* 08AC6C 7F05613C 00000000 */ nop /* 08AC70 7F056140 10400003 */ beqz $v0, .L7F056150 /* 08AC74 7F056144 3C048003 */ lui $a0, %hi(ptr_gas_sound) /* 08AC78 7F056148 0C002408 */ jal sfxDeactivate /* 08AC7C 7F05614C 8C840AE4 */ lw $a0, %lo(ptr_gas_sound)($a0) .L7F056150: /* 08AC80 7F056150 8FBF001C */ lw $ra, 0x1c($sp) .L7F056154: /* 08AC84 7F056154 27BD0020 */ addiu $sp, $sp, 0x20 /* 08AC88 7F056158 03E00008 */ jr $ra /* 08AC8C 7F05615C 00000000 */ nop ) #endif void set_unset_clock_lock_bits(int clocklockbits,int flag) { if (flag != 0) { clock_drawn_flag &= ~clocklockbits; return; } clock_drawn_flag |= clocklockbits; } u32 is_clock_drawn_onscreen(void) { return clock_drawn_flag == 0; } void set_clock_time(f32 time) { clock_time = time; } f32 get_clock_time(void) { return clock_time; } void set_clock_enable(s32 enable) { clock_enable = enable; } s32 get_clock_enable(void) { return clock_enable; } void if_enabled_reset_clock(void) { if (clock_enable != 0) { clock_time = clock_time - global_timer_delta; } } #ifdef NONMATCHING void sub_GAME_7F056210(void) { } #else GLOBAL_ASM( .late_rodata .text glabel sub_GAME_7F056210 /* 08AD40 7F056210 3C0E8003 */ lui $t6, %hi(clock_drawn_flag) /* 08AD44 7F056214 8DCE0AE8 */ lw $t6, %lo(clock_drawn_flag)($t6) /* 08AD48 7F056218 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 08AD4C 7F05621C AFB10028 */ sw $s1, 0x28($sp) /* 08AD50 7F056220 00808825 */ move $s1, $a0 /* 08AD54 7F056224 AFBF002C */ sw $ra, 0x2c($sp) /* 08AD58 7F056228 15C000EB */ bnez $t6, .L7F0565D8 /* 08AD5C 7F05622C AFB00024 */ sw $s0, 0x24($sp) /* 08AD60 7F056230 3C018003 */ lui $at, %hi(clock_time) /* 08AD64 7F056234 C4220AF0 */ lwc1 $f2, %lo(clock_time)($at) /* 08AD68 7F056238 44802000 */ mtc1 $zero, $f4 /* 08AD6C 7F05623C 3C014561 */ li $at, 0x45610000 # 3600.000000 /* 08AD70 7F056240 44813000 */ mtc1 $at, $f6 /* 08AD74 7F056244 4604103C */ c.lt.s $f2, $f4 /* 08AD78 7F056248 00000000 */ nop /* 08AD7C 7F05624C 45020003 */ bc1fl .L7F05625C /* 08AD80 7F056250 46061303 */ div.s $f12, $f2, $f6 /* 08AD84 7F056254 46001087 */ neg.s $f2, $f2 /* 08AD88 7F056258 46061303 */ div.s $f12, $f2, $f6 .L7F05625C: /* 08AD8C 7F05625C 0FC170D8 */ jal truncf /* 08AD90 7F056260 E7A20030 */ swc1 $f2, 0x30($sp) /* 08AD94 7F056264 4600020D */ trunc.w.s $f8, $f0 /* 08AD98 7F056268 3C014270 */ li $at, 0x42700000 # 60.000000 /* 08AD9C 7F05626C C7A20030 */ lwc1 $f2, 0x30($sp) /* 08ADA0 7F056270 44815000 */ mtc1 $at, $f10 /* 08ADA4 7F056274 44184000 */ mfc1 $t8, $f8 /* 08ADA8 7F056278 460A1303 */ div.s $f12, $f2, $f10 /* 08ADAC 7F05627C 0FC170D8 */ jal truncf /* 08ADB0 7F056280 AFB80044 */ sw $t8, 0x44($sp) /* 08ADB4 7F056284 3C0142C8 */ li $at, 0x42C80000 # 100.000000 /* 08ADB8 7F056288 C7A20030 */ lwc1 $f2, 0x30($sp) /* 08ADBC 7F05628C 44819000 */ mtc1 $at, $f18 /* 08ADC0 7F056290 4600040D */ trunc.w.s $f16, $f0 /* 08ADC4 7F056294 8FA90044 */ lw $t1, 0x44($sp) /* 08ADC8 7F056298 46121102 */ mul.s $f4, $f2, $f18 /* 08ADCC 7F05629C 3C014270 */ li $at, 0x42700000 # 60.000000 /* 08ADD0 7F0562A0 44088000 */ mfc1 $t0, $f16 /* 08ADD4 7F0562A4 00095100 */ sll $t2, $t1, 4 /* 08ADD8 7F0562A8 01495023 */ subu $t2, $t2, $t1 /* 08ADDC 7F0562AC 44813000 */ mtc1 $at, $f6 /* 08ADE0 7F0562B0 000A5080 */ sll $t2, $t2, 2 /* 08ADE4 7F0562B4 010A5823 */ subu $t3, $t0, $t2 /* 08ADE8 7F0562B8 AFAB0040 */ sw $t3, 0x40($sp) /* 08ADEC 7F0562BC 0FC170D8 */ jal truncf /* 08ADF0 7F0562C0 46062303 */ div.s $f12, $f4, $f6 /* 08ADF4 7F0562C4 8FAE0044 */ lw $t6, 0x44($sp) /* 08ADF8 7F0562C8 4600020D */ trunc.w.s $f8, $f0 /* 08ADFC 7F0562CC 8FB90040 */ lw $t9, 0x40($sp) /* 08AE00 7F0562D0 000E7880 */ sll $t7, $t6, 2 /* 08AE04 7F0562D4 01EE7823 */ subu $t7, $t7, $t6 /* 08AE08 7F0562D8 000F7900 */ sll $t7, $t7, 4 /* 08AE0C 7F0562DC 01EE7823 */ subu $t7, $t7, $t6 /* 08AE10 7F0562E0 00194880 */ sll $t1, $t9, 2 /* 08AE14 7F0562E4 440D4000 */ mfc1 $t5, $f8 /* 08AE18 7F0562E8 000F78C0 */ sll $t7, $t7, 3 /* 08AE1C 7F0562EC 01394823 */ subu $t1, $t1, $t9 /* 08AE20 7F0562F0 000948C0 */ sll $t1, $t1, 3 /* 08AE24 7F0562F4 01EE7823 */ subu $t7, $t7, $t6 /* 08AE28 7F0562F8 000F7900 */ sll $t7, $t7, 4 /* 08AE2C 7F0562FC 01394821 */ addu $t1, $t1, $t9 /* 08AE30 7F056300 00094880 */ sll $t1, $t1, 2 /* 08AE34 7F056304 01AFC023 */ subu $t8, $t5, $t7 /* 08AE38 7F056308 03094023 */ subu $t0, $t8, $t1 /* 08AE3C 7F05630C AFA8003C */ sw $t0, 0x3c($sp) /* 08AE40 7F056310 0FC2B366 */ jal microcode_constructor /* 08AE44 7F056314 02202025 */ move $a0, $s1 /* 08AE48 7F056318 0C001149 */ jal get_video2_settings_uly /* 08AE4C 7F05631C 00408825 */ move $s1, $v0 /* 08AE50 7F056320 00028400 */ sll $s0, $v0, 0x10 /* 08AE54 7F056324 00105403 */ sra $t2, $s0, 0x10 /* 08AE58 7F056328 0C00112B */ jal get_video2_settings_height /* 08AE5C 7F05632C 01408025 */ move $s0, $t2 /* 08AE60 7F056330 8FA50044 */ lw $a1, 0x44($sp) /* 08AE64 7F056334 24010064 */ li $at, 100 /* 08AE68 7F056338 00507021 */ addu $t6, $v0, $s0 /* 08AE6C 7F05633C 00A1001A */ div $zero, $a1, $at /* 08AE70 7F056340 00005810 */ mfhi $t3 /* 08AE74 7F056344 2401000A */ li $at, 10 /* 08AE78 7F056348 25CDFFEE */ addiu $t5, $t6, -0x12 /* 08AE7C 7F05634C 0161001A */ div $zero, $t3, $at /* 08AE80 7F056350 00002812 */ mflo $a1 /* 08AE84 7F056354 240F0002 */ li $t7, 2 /* 08AE88 7F056358 24190001 */ li $t9, 1 /* 08AE8C 7F05635C AFB90018 */ sw $t9, 0x18($sp) /* 08AE90 7F056360 AFAF0014 */ sw $t7, 0x14($sp) /* 08AE94 7F056364 AFAD0010 */ sw $t5, 0x10($sp) /* 08AE98 7F056368 02202025 */ move $a0, $s1 /* 08AE9C 7F05636C 24060082 */ li $a2, 130 /* 08AEA0 7F056370 0FC1A723 */ jal display_ammo_total_in_a1 /* 08AEA4 7F056374 24070002 */ li $a3, 2 /* 08AEA8 7F056378 0C001149 */ jal get_video2_settings_uly /* 08AEAC 7F05637C 00408825 */ move $s1, $v0 /* 08AEB0 7F056380 00028400 */ sll $s0, $v0, 0x10 /* 08AEB4 7F056384 0010C403 */ sra $t8, $s0, 0x10 /* 08AEB8 7F056388 0C00112B */ jal get_video2_settings_height /* 08AEBC 7F05638C 03008025 */ move $s0, $t8 /* 08AEC0 7F056390 8FA50044 */ lw $a1, 0x44($sp) /* 08AEC4 7F056394 2401000A */ li $at, 10 /* 08AEC8 7F056398 00504021 */ addu $t0, $v0, $s0 /* 08AECC 7F05639C 00A1001A */ div $zero, $a1, $at /* 08AED0 7F0563A0 00002810 */ mfhi $a1 /* 08AED4 7F0563A4 250AFFEE */ addiu $t2, $t0, -0x12 /* 08AED8 7F0563A8 240B0002 */ li $t3, 2 /* 08AEDC 7F0563AC 240C0001 */ li $t4, 1 /* 08AEE0 7F0563B0 AFAC0018 */ sw $t4, 0x18($sp) /* 08AEE4 7F0563B4 AFAB0014 */ sw $t3, 0x14($sp) /* 08AEE8 7F0563B8 AFAA0010 */ sw $t2, 0x10($sp) /* 08AEEC 7F0563BC 02202025 */ move $a0, $s1 /* 08AEF0 7F0563C0 2406008A */ li $a2, 138 /* 08AEF4 7F0563C4 0FC1A723 */ jal display_ammo_total_in_a1 /* 08AEF8 7F0563C8 24070002 */ li $a3, 2 /* 08AEFC 7F0563CC 0C001149 */ jal get_video2_settings_uly /* 08AF00 7F0563D0 00408825 */ move $s1, $v0 /* 08AF04 7F0563D4 00028400 */ sll $s0, $v0, 0x10 /* 08AF08 7F0563D8 00107403 */ sra $t6, $s0, 0x10 /* 08AF0C 7F0563DC 0C00112B */ jal get_video2_settings_height /* 08AF10 7F0563E0 01C08025 */ move $s0, $t6 /* 08AF14 7F0563E4 00506821 */ addu $t5, $v0, $s0 /* 08AF18 7F0563E8 25AFFFEE */ addiu $t7, $t5, -0x12 /* 08AF1C 7F0563EC 3C058005 */ lui $a1, %hi(D_80052A44) /* 08AF20 7F0563F0 24190002 */ li $t9, 2 /* 08AF24 7F0563F4 24180001 */ li $t8, 1 /* 08AF28 7F0563F8 AFB80018 */ sw $t8, 0x18($sp) /* 08AF2C 7F0563FC AFB90014 */ sw $t9, 0x14($sp) /* 08AF30 7F056400 24A52A44 */ addiu $a1, %lo(D_80052A44) # addiu $a1, $a1, 0x2a44 /* 08AF34 7F056404 AFAF0010 */ sw $t7, 0x10($sp) /* 08AF38 7F056408 02202025 */ move $a0, $s1 /* 08AF3C 7F05640C 24060093 */ li $a2, 147 /* 08AF40 7F056410 0FC1A694 */ jal some_kind_of_display_routine /* 08AF44 7F056414 24070002 */ li $a3, 2 /* 08AF48 7F056418 0C001149 */ jal get_video2_settings_uly /* 08AF4C 7F05641C 00408825 */ move $s1, $v0 /* 08AF50 7F056420 00028400 */ sll $s0, $v0, 0x10 /* 08AF54 7F056424 00104C03 */ sra $t1, $s0, 0x10 /* 08AF58 7F056428 0C00112B */ jal get_video2_settings_height /* 08AF5C 7F05642C 01208025 */ move $s0, $t1 /* 08AF60 7F056430 8FA50040 */ lw $a1, 0x40($sp) /* 08AF64 7F056434 2401003C */ li $at, 60 /* 08AF68 7F056438 00505821 */ addu $t3, $v0, $s0 /* 08AF6C 7F05643C 00A1001A */ div $zero, $a1, $at /* 08AF70 7F056440 00004010 */ mfhi $t0 /* 08AF74 7F056444 2401000A */ li $at, 10 /* 08AF78 7F056448 256CFFEE */ addiu $t4, $t3, -0x12 /* 08AF7C 7F05644C 0101001A */ div $zero, $t0, $at /* 08AF80 7F056450 00002812 */ mflo $a1 /* 08AF84 7F056454 240E0002 */ li $t6, 2 /* 08AF88 7F056458 240D0001 */ li $t5, 1 /* 08AF8C 7F05645C AFAD0018 */ sw $t5, 0x18($sp) /* 08AF90 7F056460 AFAE0014 */ sw $t6, 0x14($sp) /* 08AF94 7F056464 AFAC0010 */ sw $t4, 0x10($sp) /* 08AF98 7F056468 02202025 */ move $a0, $s1 /* 08AF9C 7F05646C 2406009C */ li $a2, 156 /* 08AFA0 7F056470 0FC1A723 */ jal display_ammo_total_in_a1 /* 08AFA4 7F056474 24070002 */ li $a3, 2 /* 08AFA8 7F056478 0C001149 */ jal get_video2_settings_uly /* 08AFAC 7F05647C 00408825 */ move $s1, $v0 /* 08AFB0 7F056480 00028400 */ sll $s0, $v0, 0x10 /* 08AFB4 7F056484 00107C03 */ sra $t7, $s0, 0x10 /* 08AFB8 7F056488 0C00112B */ jal get_video2_settings_height /* 08AFBC 7F05648C 01E08025 */ move $s0, $t7 /* 08AFC0 7F056490 8FA50040 */ lw $a1, 0x40($sp) /* 08AFC4 7F056494 2401000A */ li $at, 10 /* 08AFC8 7F056498 0050C021 */ addu $t8, $v0, $s0 /* 08AFCC 7F05649C 00A1001A */ div $zero, $a1, $at /* 08AFD0 7F0564A0 00002810 */ mfhi $a1 /* 08AFD4 7F0564A4 2709FFEE */ addiu $t1, $t8, -0x12 /* 08AFD8 7F0564A8 24080002 */ li $t0, 2 /* 08AFDC 7F0564AC 240A0001 */ li $t2, 1 /* 08AFE0 7F0564B0 AFAA0018 */ sw $t2, 0x18($sp) /* 08AFE4 7F0564B4 AFA80014 */ sw $t0, 0x14($sp) /* 08AFE8 7F0564B8 AFA90010 */ sw $t1, 0x10($sp) /* 08AFEC 7F0564BC 02202025 */ move $a0, $s1 /* 08AFF0 7F0564C0 240600A4 */ li $a2, 164 /* 08AFF4 7F0564C4 0FC1A723 */ jal display_ammo_total_in_a1 /* 08AFF8 7F0564C8 24070002 */ li $a3, 2 /* 08AFFC 7F0564CC 0C001149 */ jal get_video2_settings_uly /* 08B000 7F0564D0 00408825 */ move $s1, $v0 /* 08B004 7F0564D4 00028400 */ sll $s0, $v0, 0x10 /* 08B008 7F0564D8 00105C03 */ sra $t3, $s0, 0x10 /* 08B00C 7F0564DC 0C00112B */ jal get_video2_settings_height /* 08B010 7F0564E0 01608025 */ move $s0, $t3 /* 08B014 7F0564E4 00506021 */ addu $t4, $v0, $s0 /* 08B018 7F0564E8 258EFFEE */ addiu $t6, $t4, -0x12 /* 08B01C 7F0564EC 3C058005 */ lui $a1, %hi(D_80052A44) /* 08B020 7F0564F0 240D0002 */ li $t5, 2 /* 08B024 7F0564F4 240F0001 */ li $t7, 1 /* 08B028 7F0564F8 AFAF0018 */ sw $t7, 0x18($sp) /* 08B02C 7F0564FC AFAD0014 */ sw $t5, 0x14($sp) /* 08B030 7F056500 24A52A44 */ addiu $a1, %lo(D_80052A44) # addiu $a1, $a1, 0x2a44 /* 08B034 7F056504 AFAE0010 */ sw $t6, 0x10($sp) /* 08B038 7F056508 02202025 */ move $a0, $s1 /* 08B03C 7F05650C 240600AD */ li $a2, 173 /* 08B040 7F056510 0FC1A694 */ jal some_kind_of_display_routine /* 08B044 7F056514 24070002 */ li $a3, 2 /* 08B048 7F056518 0C001149 */ jal get_video2_settings_uly /* 08B04C 7F05651C 00408825 */ move $s1, $v0 /* 08B050 7F056520 00028400 */ sll $s0, $v0, 0x10 /* 08B054 7F056524 0010CC03 */ sra $t9, $s0, 0x10 /* 08B058 7F056528 0C00112B */ jal get_video2_settings_height /* 08B05C 7F05652C 03208025 */ move $s0, $t9 /* 08B060 7F056530 8FA5003C */ lw $a1, 0x3c($sp) /* 08B064 7F056534 24010064 */ li $at, 100 /* 08B068 7F056538 00504021 */ addu $t0, $v0, $s0 /* 08B06C 7F05653C 00A1001A */ div $zero, $a1, $at /* 08B070 7F056540 0000C010 */ mfhi $t8 /* 08B074 7F056544 2401000A */ li $at, 10 /* 08B078 7F056548 250AFFEE */ addiu $t2, $t0, -0x12 /* 08B07C 7F05654C 0301001A */ div $zero, $t8, $at /* 08B080 7F056550 00002812 */ mflo $a1 /* 08B084 7F056554 240B0002 */ li $t3, 2 /* 08B088 7F056558 240C0001 */ li $t4, 1 /* 08B08C 7F05655C AFAC0018 */ sw $t4, 0x18($sp) /* 08B090 7F056560 AFAB0014 */ sw $t3, 0x14($sp) /* 08B094 7F056564 AFAA0010 */ sw $t2, 0x10($sp) /* 08B098 7F056568 02202025 */ move $a0, $s1 /* 08B09C 7F05656C 240600B6 */ li $a2, 182 /* 08B0A0 7F056570 0FC1A723 */ jal display_ammo_total_in_a1 /* 08B0A4 7F056574 24070002 */ li $a3, 2 /* 08B0A8 7F056578 0C001149 */ jal get_video2_settings_uly /* 08B0AC 7F05657C 00408825 */ move $s1, $v0 /* 08B0B0 7F056580 00028400 */ sll $s0, $v0, 0x10 /* 08B0B4 7F056584 00107403 */ sra $t6, $s0, 0x10 /* 08B0B8 7F056588 0C00112B */ jal get_video2_settings_height /* 08B0BC 7F05658C 01C08025 */ move $s0, $t6 /* 08B0C0 7F056590 8FA5003C */ lw $a1, 0x3c($sp) /* 08B0C4 7F056594 2401000A */ li $at, 10 /* 08B0C8 7F056598 00507821 */ addu $t7, $v0, $s0 /* 08B0CC 7F05659C 00A1001A */ div $zero, $a1, $at /* 08B0D0 7F0565A0 00002810 */ mfhi $a1 /* 08B0D4 7F0565A4 25F9FFEE */ addiu $t9, $t7, -0x12 /* 08B0D8 7F0565A8 24180002 */ li $t8, 2 /* 08B0DC 7F0565AC 24090001 */ li $t1, 1 /* 08B0E0 7F0565B0 AFA90018 */ sw $t1, 0x18($sp) /* 08B0E4 7F0565B4 AFB80014 */ sw $t8, 0x14($sp) /* 08B0E8 7F0565B8 AFB90010 */ sw $t9, 0x10($sp) /* 08B0EC 7F0565BC 02202025 */ move $a0, $s1 /* 08B0F0 7F0565C0 240600BE */ li $a2, 190 /* 08B0F4 7F0565C4 0FC1A723 */ jal display_ammo_total_in_a1 /* 08B0F8 7F0565C8 24070002 */ li $a3, 2 /* 08B0FC 7F0565CC 0FC2B3BC */ jal combiner_bayer_lod_perspective /* 08B100 7F0565D0 00402025 */ move $a0, $v0 /* 08B104 7F0565D4 00408825 */ move $s1, $v0 .L7F0565D8: /* 08B108 7F0565D8 8FBF002C */ lw $ra, 0x2c($sp) /* 08B10C 7F0565DC 02201025 */ move $v0, $s1 /* 08B110 7F0565E0 8FB10028 */ lw $s1, 0x28($sp) /* 08B114 7F0565E4 8FB00024 */ lw $s0, 0x24($sp) /* 08B118 7F0565E8 03E00008 */ jr $ra /* 08B11C 7F0565EC 27BD0048 */ addiu $sp, $sp, 0x48 ) #endif void handle_alarm_gas_timer_calldamage(void) { if (is_alarm_on() != 0) { if ((ptr_alarm_sfx == 0) && (get_controls_locked_flag() == 0)) { play_sfx_a1(ptr_sfx_buf,0xa3,&ptr_alarm_sfx); } alarm_timer = alarm_timer + clock_timer; if (0x708 < alarm_timer) { stop_alarm(); } } handle_gas_damage(); if_enabled_reset_clock(); check_guard_detonate_proxmine(); D_80030AF4 = 0; return; } #ifdef NONMATCHING void sub_GAME_7F056690(void) { } #else GLOBAL_ASM( .text glabel sub_GAME_7F056690 /* 08B1C0 7F056690 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08B1C4 7F056694 AFBF002C */ sw $ra, 0x2c($sp) /* 08B1C8 7F056698 AFB40028 */ sw $s4, 0x28($sp) /* 08B1CC 7F05669C AFB30024 */ sw $s3, 0x24($sp) /* 08B1D0 7F0566A0 AFB20020 */ sw $s2, 0x20($sp) /* 08B1D4 7F0566A4 AFB1001C */ sw $s1, 0x1c($sp) /* 08B1D8 7F0566A8 0FC0E909 */ jal get_ptr_obj_pos_list_current_entry /* 08B1DC 7F0566AC AFB00018 */ sw $s0, 0x18($sp) /* 08B1E0 7F0566B0 1040002A */ beqz $v0, .L7F05675C /* 08B1E4 7F0566B4 00409025 */ move $s2, $v0 /* 08B1E8 7F0566B8 24140001 */ li $s4, 1 /* 08B1EC 7F0566BC 924E0000 */ lbu $t6, ($s2) .L7F0566C0: /* 08B1F0 7F0566C0 568E0024 */ bnel $s4, $t6, .L7F056754 /* 08B1F4 7F0566C4 8E520024 */ lw $s2, 0x24($s2) /* 08B1F8 7F0566C8 924F0001 */ lbu $t7, 1($s2) /* 08B1FC 7F0566CC 31F80002 */ andi $t8, $t7, 2 /* 08B200 7F0566D0 57000020 */ bnezl $t8, .L7F056754 /* 08B204 7F0566D4 8E520024 */ lw $s2, 0x24($s2) /* 08B208 7F0566D8 8E510004 */ lw $s1, 4($s2) /* 08B20C 7F0566DC 92390002 */ lbu $t9, 2($s1) /* 08B210 7F0566E0 02202025 */ move $a0, $s1 /* 08B214 7F0566E4 33280080 */ andi $t0, $t9, 0x80 /* 08B218 7F0566E8 5100001A */ beql $t0, $zero, .L7F056754 /* 08B21C 7F0566EC 8E520024 */ lw $s2, 0x24($s2) /* 08B220 7F0566F0 0FC12D1E */ jal sub_GAME_7F04B478 /* 08B224 7F0566F4 8E330014 */ lw $s3, 0x14($s1) /* 08B228 7F0566F8 10400018 */ beqz $v0, .L7F05675C /* 08B22C 7F0566FC 00402825 */ move $a1, $v0 /* 08B230 7F056700 8C500004 */ lw $s0, 4($v0) /* 08B234 7F056704 52000016 */ beql $s0, $zero, .L7F056760 /* 08B238 7F056708 8FBF002C */ lw $ra, 0x2c($sp) /* 08B23C 7F05670C 8E290014 */ lw $t1, 0x14($s1) /* 08B240 7F056710 0FC12D64 */ jal sub_GAME_7F04B590 /* 08B244 7F056714 8D240008 */ lw $a0, 8($t1) /* 08B248 7F056718 5040000E */ beql $v0, $zero, .L7F056754 /* 08B24C 7F05671C 8E520024 */ lw $s2, 0x24($s2) /* 08B250 7F056720 960B001A */ lhu $t3, 0x1a($s0) /* 08B254 7F056724 8E6A0010 */ lw $t2, 0x10($s3) /* 08B258 7F056728 8E0D0008 */ lw $t5, 8($s0) /* 08B25C 7F05672C 000B6080 */ sll $t4, $t3, 2 /* 08B260 7F056730 014C1021 */ addu $v0, $t2, $t4 /* 08B264 7F056734 8C4E0000 */ lw $t6, ($v0) /* 08B268 7F056738 11AE0005 */ beq $t5, $t6, .L7F056750 /* 08B26C 7F05673C 02202025 */ move $a0, $s1 /* 08B270 7F056740 0FC10409 */ jal sub_GAME_7F041024 /* 08B274 7F056744 24050001 */ li $a1, 1 /* 08B278 7F056748 10000005 */ b .L7F056760 /* 08B27C 7F05674C 8FBF002C */ lw $ra, 0x2c($sp) .L7F056750: /* 08B280 7F056750 8E520024 */ lw $s2, 0x24($s2) .L7F056754: /* 08B284 7F056754 5640FFDA */ bnezl $s2, .L7F0566C0 /* 08B288 7F056758 924E0000 */ lbu $t6, ($s2) .L7F05675C: /* 08B28C 7F05675C 8FBF002C */ lw $ra, 0x2c($sp) .L7F056760: /* 08B290 7F056760 8FB00018 */ lw $s0, 0x18($sp) /* 08B294 7F056764 8FB1001C */ lw $s1, 0x1c($sp) /* 08B298 7F056768 8FB20020 */ lw $s2, 0x20($sp) /* 08B29C 7F05676C 8FB30024 */ lw $s3, 0x24($sp) /* 08B2A0 7F056770 8FB40028 */ lw $s4, 0x28($sp) /* 08B2A4 7F056774 03E00008 */ jr $ra /* 08B2A8 7F056778 27BD0030 */ addiu $sp, $sp, 0x30 ) #endif #ifdef NONMATCHING void drop_inventory(void) { } #else GLOBAL_ASM( .text glabel drop_inventory /* 08B2AC 7F05677C 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 08B2B0 7F056780 3C0E8008 */ lui $t6, %hi(pPlayer) /* 08B2B4 7F056784 8DCEA0B0 */ lw $t6, %lo(pPlayer)($t6) /* 08B2B8 7F056788 AFBF0034 */ sw $ra, 0x34($sp) /* 08B2BC 7F05678C AFB40030 */ sw $s4, 0x30($sp) /* 08B2C0 7F056790 AFB3002C */ sw $s3, 0x2c($sp) /* 08B2C4 7F056794 AFB20028 */ sw $s2, 0x28($sp) /* 08B2C8 7F056798 AFB10024 */ sw $s1, 0x24($sp) /* 08B2CC 7F05679C AFB00020 */ sw $s0, 0x20($sp) /* 08B2D0 7F0567A0 8DCF00A8 */ lw $t7, 0xa8($t6) /* 08B2D4 7F0567A4 00002825 */ move $a1, $zero /* 08B2D8 7F0567A8 8DF20004 */ lw $s2, 4($t7) /* 08B2DC 7F0567AC 0FC1487A */ jal set_0x4_in_runtime_flags_for_item_in_guards_hand /* 08B2E0 7F0567B0 02402025 */ move $a0, $s2 /* 08B2E4 7F0567B4 02402025 */ move $a0, $s2 /* 08B2E8 7F0567B8 0FC1487A */ jal set_0x4_in_runtime_flags_for_item_in_guards_hand /* 08B2EC 7F0567BC 24050001 */ li $a1, 1 /* 08B2F0 7F0567C0 24100001 */ li $s0, 1 /* 08B2F4 7F0567C4 24140059 */ li $s4, 89 /* 08B2F8 7F0567C8 3C132000 */ lui $s3, 0x2000 .L7F0567CC: /* 08B2FC 7F0567CC 0FC26C91 */ jal sub_GAME_7F09B244 /* 08B300 7F0567D0 02002025 */ move $a0, $s0 /* 08B304 7F0567D4 04400012 */ bltz $v0, .L7F056820 /* 08B308 7F0567D8 00408825 */ move $s1, $v0 /* 08B30C 7F0567DC 0FC230C5 */ jal is_weapon_in_inv /* 08B310 7F0567E0 02002025 */ move $a0, $s0 /* 08B314 7F0567E4 1040000E */ beqz $v0, .L7F056820 /* 08B318 7F0567E8 02402025 */ move $a0, $s2 /* 08B31C 7F0567EC 02202825 */ move $a1, $s1 /* 08B320 7F0567F0 02003025 */ move $a2, $s0 /* 08B324 7F0567F4 02603825 */ move $a3, $s3 /* 08B328 7F0567F8 AFA00010 */ sw $zero, 0x10($sp) /* 08B32C 7F0567FC 0FC14885 */ jal something_with_generating_object /* 08B330 7F056800 AFA00014 */ sw $zero, 0x14($sp) /* 08B334 7F056804 10400006 */ beqz $v0, .L7F056820 /* 08B338 7F056808 00408825 */ move $s1, $v0 /* 08B33C 7F05680C 00402025 */ move $a0, $v0 /* 08B340 7F056810 0FC12FF4 */ jal sub_GAME_7F04BFD0 /* 08B344 7F056814 24050001 */ li $a1, 1 /* 08B348 7F056818 0FC1304C */ jal sub_GAME_7F04C130 /* 08B34C 7F05681C 02202025 */ move $a0, $s1 .L7F056820: /* 08B350 7F056820 26100001 */ addiu $s0, $s0, 1 /* 08B354 7F056824 1614FFE9 */ bne $s0, $s4, .L7F0567CC /* 08B358 7F056828 00000000 */ nop /* 08B35C 7F05682C 8FBF0034 */ lw $ra, 0x34($sp) /* 08B360 7F056830 8FB00020 */ lw $s0, 0x20($sp) /* 08B364 7F056834 8FB10024 */ lw $s1, 0x24($sp) /* 08B368 7F056838 8FB20028 */ lw $s2, 0x28($sp) /* 08B36C 7F05683C 8FB3002C */ lw $s3, 0x2c($sp) /* 08B370 7F056840 8FB40030 */ lw $s4, 0x30($sp) /* 08B374 7F056844 03E00008 */ jr $ra /* 08B378 7F056848 27BD0038 */ addiu $sp, $sp, 0x38 ) #endif