diff --git a/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.c b/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.c index 56cea0e2a..19c4ce4e1 100644 --- a/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.c +++ b/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.c @@ -3664,7 +3664,15 @@ s16 func_80180760(void) { } -INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_8017EB7C", func_80180770); + extern void (*D_8018F548[])(void); + extern void func_80162D28(s32*); + void func_80180770(void *a0) { + D_8018F548[*(u16 *)((s32)a0 + 0x2)](); + if (*(s32 *)((s32)a0 + 0x20) != 0) { + ((void (*)(void *))func_80162D28)(a0); + } + } + extern void func_8014659C(void); @@ -3770,7 +3778,18 @@ INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_8017EB7C", func_80180A6 INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_8017EB7C", func_80180AC4); -INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_8017EB7C", func_80180B20); + extern void func_80180DB8(void); + extern void (*D_8018F58C[])(int); + extern void func_80162D28(s32*); + void func_80180B20(int param_1) + { + func_80180DB8(); + D_8018F58C[*(unsigned short *)(param_1 + 2)](param_1); + if (*(s32 *)(param_1 + 0x20) != 0) { + ((void (*)(int))func_80162D28)(param_1); + } + } + DEFINE_func_80180B84() /* dedup: shared engine-core @0x80180B84 (src/shared) */