=== lever-free bodies in ov_SC02_031 sharing a callee or global with func_80184B94 (7 found; top 6 by shared symbols) — read them for the SHAPE ===
--- func_80178608 (src/shared/ov/func_80178608.h:14) shares 2: D_801274D8 D_801274DC ---
void func_80178608(void) {
    u16 *p = &D_801270C0;
    func_80016714(D_801202A0, 0x6480);
    *p = 1;
    D_801270C4 = 1;
    D_801274D8 = 0x240000;
    D_801270C2 = 0;
    D_801270C6 = 0;
    D_801270C7 = 0;
    D_801274DC = 0x271000;
    D_801274E0 = 0x400000;
    func_80016714((u8 *)p + 8, 0x400);
    func_8013E4B4();
}

--- func_8012C044 (src/shared/ov/func_8012C044.h:7) shares 1: D_80126CAC ---
s32 func_8012C044(s32 a0) {
    s32 (*fp)(void) = (s32 (*)(void))D_801274D4;
    if (fp != 0) {
        return fp();
    }
    return func_80013478(a0 + 4, (s32)&D_80126CAC) >= D_801274E0;
}

--- func_80132E6C (src/shared/ov/func_80132E6C.h:6) shares 1: D_80126CAC ---
s32 func_80132E6C(s16 *a0) {
    s32 in[3];
    s32 out[3];
    in[0] = a0[3] - D_80126CAC;
    in[1] = 0;
    in[2] = a0[7] - D_80126CB0;
    Square0(in, out);
    return out[0] + out[2];
}

--- func_8012BE98 (src/shared/ov/func_8012BE98.h:4) shares 1: func_800132BC ---
void func_8012BE98(s32 arg0, u16 * arg1)
{
    s16 a[3];
    s16 b[3];
    a[0] = *(u16 *)((u8 *)arg0 + 0x6);
    a[1] = 0;
    a[2] = *(u16 *)((u8 *)arg0 + 0xE);
    b[0] = *(u16 *)((u8 *)arg1 + 0x0);
    b[1] = 0;
    b[2] = *(u16 *)((u8 *)arg1 + 0x4);
    func_800132BC((s32)a, (s32)b);
}

--- func_8012D664 (src/ov_SC02_031/ov_SC02_031_jr_8012ACE0.c:554) shares 1: func_800132BC ---
int func_8012D664(int arg0, int arg1, int arg2) {
    extern int func_8012F568();
    extern int D_80184FAC;

    struct S8012D664_8012D664 s;
    int ret;
    int t;

    s.a = (*(unsigned short*)&D_80126B5E);
    s.b = (*(unsigned short*)&D_80126B62) - 0x40;
    s.c = (*(unsigned short*)&D_80126B66);
    ret = ((int(*)())func_800132BC)(arg0, &s);
    t = arg1 + 0x20;
    if (ret < t * t) {
        func_8012F568(1, 1, 0, arg2, arg0, &D_80184FAC);
        return 1;
    }
    return 0;
}

--- func_8012C0EC (src/shared/ov/func_8012C0EC.h:8) shares 1: D_80126CAC ---
s32 func_8012C0EC(s32 a0) {
    s32 (*fp)(s32) = (s32 (*)(s32))D_801274D4;
    s32 cond;
    s32 *p;
    if (fp == 0) {
        cond = (func_80013478(a0 + 4, (s32)&D_80126CAC) < D_801274E0) ^ 1;
    } else {
        cond = fp(a0);
    }
    if (cond == 0) {
        return 0;
    }
    p = *(s32 **)(a0 + 0x68);
    if (p != 0) {
        if ((*(s16 *)(a0 + 0x72) & 0x8000) != 0) {
            *(u16 *)((s32)p + 0xA) = *(u16 *)((s32)p + 0xA) & 0x7FFF;
        }
    }
    func_8012C218((void *)a0);
    return 1;
}

