=== lever-free bodies in ov_SC03_091 sharing a callee or global with func_80186440 (54 found; top 6 by shared symbols) — read them for the SHAPE ===
--- func_8018B17C (src/ov_SC03_091/ov_SC03_091_jr_8018911C.c:4462) shares 4: func_8012B23C func_8012B2CC func_8012C1B8 func_8012CAE4 ---
void func_8018B17C(s32 param_1)
{

    extern u8 D_801AEE20[];
    extern u8 D_801AEE38[];
    extern u8 D_801AEE50[];
    s32 v0;

    v0 = ((s32 (*)(void))func_8012C1B8)();
    *(s32 *)(param_1 + 0x20) = v0;
    if (v0 == 0) {
        ((void (*)(s32))func_8012CAE4)(param_1);
    } else {
        func_8001CA1C(v0, (s32)D_801AEE20);
        func_8012A828(param_1, (s32)D_801AEE38);
        *(s16 *)(*(s32 *)(param_1 + 0x20) + 0x12) =
            *(u16 *)(*(s32 *)(*(s32 *)(param_1 + 0x64) + 0x20) + 0x12);
        func_8012B23C((void *)param_1);
        func_8012B2CC(param_1);
        func_8012B14C(param_1, (s32)D_801AEE50);
        *(s16 *)(param_1 + 2) = 1;
        *(s16 *)(param_1 + 0xA) = *(u16 *)(param_1 + 0xA) - 0x90;
        *(s16 *)(param_1 + 6) =
            *(u16 *)(param_1 + 6) -
            (func_8004787C(*(s16 *)(*(s32 *)(param_1 + 0x20) + 0x12)) >> 8);
        *(s16 *)(param_1 + 0xE) =
            *(u16 *)(param_1 + 0xE) -
            (func_80047948(*(s16 *)(*(s32 *)(param_1 + 0x20) + 0x12)) >> 8);
    }
}

--- func_8018B2EC (src/ov_SC03_091/ov_SC03_091_jr_8018911C.c:4537) shares 4: func_8012B23C func_8012B2CC func_8012C1B8 func_8012CAE4 ---
void func_8018B2EC(s32 a0)
{

    extern s32 D_801AEE68;
    extern s32 D_801AEF28;
    extern s32 D_801AEFB0;
    s32 v0;

    v0 = ((s32 (*)(void))func_8012C1B8)();
    *(s32 *)(a0 + 0x20) = v0;

    if (v0 == 0) {
        func_8012CAE4((void *)a0);
    } else {
        func_8001CA1C(v0, (s32)&D_801AEE68);
        func_8012A828(a0, (s32)&D_801AEF28);
        v0 = rand();
        *(u32 *)(a0 + 0x94) = v0 & 0xF;

        *(u16 *)(*(s32 *)(a0 + 0x20) + 0x12) =
            *(u16 *)(*(s32 *)(*(s32 *)(a0 + 0x64) + 0x20) + 0x12);

        func_8012B23C((void *)a0);
        func_8012B2CC(a0);
        func_8012B14C(a0, (s32)&D_801AEFB0);

        *(u16 *)(a0 + 0x2) = 1;

        *(u16 *)(*(s32 *)(a0 + 0x20) + 0x2C) |= 0x10;

        *(s16 *)(a0 + 0xA) -= 0x90;

        v0 = func_8004787C(*(s16 *)(*(s32 *)(a0 + 0x20) + 0x12));
        *(s16 *)(a0 + 0x6) -= (s16)(v0 >> 8);

        v0 = func_80047948(*(s16 *)(*(s32 *)(a0 + 0x20) + 0x12));
        *(s16 *)(a0 + 0xE) -= (s16)(v0 >> 8);
    }
}

--- func_80144A98 (src/shared/ov/func_80144A98.h:6) shares 3: func_8001C214 func_8012C1B8 func_8012CAE4 ---
void func_80144A98(u8 *a0) {
    s32 v0;
    v0 = ((s32 (*)(void))func_8012C1B8)();
    *(s32 *)(a0 + 0x20) = v0;
    if (v0 == 0) {
        func_8012CAE4(a0);
    } else {
        func_8001C214(v0, 0);
        *(s16 *)(a0 + 0x2) = 1;
    }
}

--- func_801320D8 (src/ov_SC03_091/ov_SC03_091_jr_8012ACE0.c:1915) shares 3: func_8001C214 func_8012C1B8 func_8012CAE4 ---
void func_801320D8(int param_1)
{
    int v0;

    v0 = ((int (*)(void))func_8012C1B8)();
    *(int *)(param_1 + 0x20) = v0;
    if (v0 == 0) {
        ((void (*)(int))func_8012CAE4)(param_1);
    } else {
        func_8001C214(v0, 0);
        *(int *)(param_1 + 0x58) = (int)&D_8018CE60;
        *(short *)(param_1 + 0x5c) = 0x80;
        *(unsigned short *)(param_1 + 2) += 1;
    }
}

--- func_801321B0 (src/ov_SC03_091/ov_SC03_091_jr_8012ACE0.c:1962) shares 3: func_8001C214 func_8012C1B8 func_8012CAE4 ---
void func_801321B0(int param_1)
{
    int v0;

    v0 = ((int (*)(void))func_8012C1B8)();
    *(int *)(param_1 + 0x20) = v0;
    if (v0 == 0) {
        ((void (*)(int))func_8012CAE4)(param_1);
    } else {
        func_8001C214(v0, 0);
        *(int *)(param_1 + 0x58) = (int)&D_8018CE80;
        *(short *)(param_1 + 0x5c) = 0x80;
        *(unsigned short *)(param_1 + 2) += 1;
    }
}

--- func_8013221C (src/ov_SC03_091/ov_SC03_091_jr_8012ACE0.c:1988) shares 3: func_8001C214 func_8012C1B8 func_8012CAE4 ---
void func_8013221C(int param_1)
{
    int v0;

    v0 = ((int (*)(void))func_8012C1B8)();
    *(int *)(param_1 + 0x20) = v0;
    if (v0 == 0) {
        ((void (*)(int))func_8012CAE4)(param_1);
    } else {
        func_8001C214(v0, 0);
        *(int *)(param_1 + 0x58) = (int)&D_8018CE90;
        *(short *)(param_1 + 0x5c) = 0x80;
        *(unsigned short *)(param_1 + 2) += 1;
    }
}

