From 5eb46b267fc222bc3304437bbc7eba6ea362fb75 Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Thu, 10 Sep 2026 15:49:51 -0600 Subject: [PATCH] =?UTF-8?q?phase-36:=20T7=20agent=20c20=20=E2=80=94=20func?= =?UTF-8?q?=5F8013DD68=20closed=20on=20a=20re-draw=20(the=20bit-field=20co?= =?UTF-8?q?py=20read=20as=20a=20whole=20word:=20a=20phantom=20flow-time=20?= =?UTF-8?q?mask=20reference),=20128=20bodies=20(16,273=20=E2=86=92=2016,01?= =?UTF-8?q?5=20sites,=20R22=20218/218)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ov_SC04_011__func_80135EB0/mechanism.md | 13 + .../agents/ov_SC04_011__func_8013DD68/body.c | 20 +- .../ov_SC04_011__func_8013DD68/mechanism.md | 221 ++++------- .../ov_SC04_011__func_80177B5C/mechanism.md | 57 +++ .run/P36/census/lever_census.json | 58 +-- .run/P36/census/lever_census.txt | 20 +- .run/P36/delever/calibration.json | 374 +++++++++--------- .run/P36/delever/ledger.jsonl | 129 ++++++ docs/lever-progress.tsv | 1 + docs/levers.md | 5 +- phase-ends/CURRENT_PHASE.md | 13 + src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c | 13 +- src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c | 13 +- src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c | 13 +- src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c | 13 +- src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c | 13 +- src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c | 13 +- src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c | 13 +- src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c | 13 +- src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c | 13 +- src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c | 13 +- src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c | 13 +- src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c | 13 +- src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c | 13 +- src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c | 13 +- src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c | 13 +- src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c | 13 +- src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c | 13 +- src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c | 13 +- src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c | 13 +- src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c | 13 +- src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c | 13 +- src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c | 13 +- src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c | 13 +- src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c | 13 +- src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c | 13 +- src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c | 13 +- src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c | 13 +- src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c | 13 +- src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c | 13 +- src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c | 13 +- src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c | 13 +- src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c | 13 +- src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c | 13 +- src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c | 13 +- src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c | 13 +- src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c | 13 +- src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c | 13 +- src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c | 13 +- src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c | 13 +- src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c | 13 +- src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c | 13 +- src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c | 13 +- src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c | 13 +- src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c | 13 +- src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c | 13 +- src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c | 13 +- src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c | 13 +- src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c | 13 +- src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c | 13 +- src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c | 13 +- src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c | 13 +- src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c | 13 +- src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c | 13 +- src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c | 13 +- src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c | 13 +- src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c | 13 +- src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c | 13 +- src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c | 13 +- src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c | 13 +- src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c | 13 +- src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c | 13 +- src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c | 13 +- src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c | 13 +- src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c | 13 +- src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c | 13 +- src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c | 13 +- src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c | 13 +- src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c | 13 +- src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c | 13 +- src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c | 13 +- src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c | 13 +- src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c | 13 +- src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c | 13 +- src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c | 13 +- src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c | 13 +- src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c | 13 +- src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c | 13 +- src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c | 13 +- src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c | 13 +- src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c | 13 +- src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c | 13 +- src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c | 13 +- src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c | 13 +- src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c | 13 +- src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c | 13 +- src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c | 13 +- src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c | 13 +- src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c | 13 +- src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c | 13 +- src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c | 13 +- src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c | 13 +- src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c | 13 +- src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c | 13 +- src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c | 13 +- src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c | 13 +- src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c | 13 +- src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c | 13 +- src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c | 13 +- src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c | 13 +- src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c | 13 +- src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c | 13 +- src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c | 13 +- src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c | 13 +- src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c | 13 +- src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c | 13 +- src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c | 13 +- src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c | 13 +- src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c | 13 +- src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c | 13 +- src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c | 13 +- src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c | 13 +- src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c | 13 +- src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c | 13 +- src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c | 13 +- src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c | 13 +- src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c | 13 +- src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c | 13 +- src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c | 13 +- src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c | 13 +- src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c | 13 +- src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c | 13 +- src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c | 13 +- src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c | 13 +- src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c | 13 +- src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c | 13 +- src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c | 13 +- src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c | 13 +- src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c | 13 +- src/shared/ov/func_8013DD68__5d222fe2.h | 13 +- 140 files changed, 1305 insertions(+), 1283 deletions(-) create mode 100644 .run/P36/agents/ov_SC04_011__func_80135EB0/mechanism.md create mode 100644 .run/P36/agents/ov_SC04_011__func_80177B5C/mechanism.md diff --git a/.run/P36/agents/ov_SC04_011__func_80135EB0/mechanism.md b/.run/P36/agents/ov_SC04_011__func_80135EB0/mechanism.md new file mode 100644 index 000000000..c0b5f8e9e --- /dev/null +++ b/.run/P36/agents/ov_SC04_011__func_80135EB0/mechanism.md @@ -0,0 +1,13 @@ +# func_80135EB0 (src/ov_SC04_011/ov_SC04_011_jr_80135D20.c): T7 agent c15, S103 — WORK IN PROGRESS + +Current best lever-free: **score 18** (`body.c`, REG-callee only; 289 = 289 ins). Start was 64 (COUNT, 276 vs 289); +the mechanical best was 52. The 18 is one register swap: `arg1` sits in `$s2` and `m2` in `$s3`, the target has +them the other way round. + +## (a) The residual in one sentence +Thirteen missing instructions were two things: jump2's cross-jump folding case 1 and case 2 into case 6's second-call +tail (11 ins), and sched1/sched2 hoisting the next coordinate group's `lhu` over the previous group's stores in the +`(m1|m2)==0` block (2 nops); the register residual is `allocno_compare` ranking `arg1` (12 refs / 175 live) above +`m2` (6 refs / 141 live). + +(details and the generator proposals are written below as each is proved) diff --git a/.run/P36/agents/ov_SC04_011__func_8013DD68/body.c b/.run/P36/agents/ov_SC04_011__func_8013DD68/body.c index f23fb2b6c..12fa3c613 100644 --- a/.run/P36/agents/ov_SC04_011__func_8013DD68/body.c +++ b/.run/P36/agents/ov_SC04_011__func_8013DD68/body.c @@ -22,15 +22,13 @@ void func_8013DD68() { uVar1 = *puVar16; puVar16 = puVar16 + 1; base = pbase + (u32)D_800AF7B8 * 0x5C; - do { - buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); - *((u8 *)&buf + 0x18) = 0; - SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; - OTE->addr = (u32)p; - p = p + 0x10; - iVar14 = 0; - } while (0); + buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); + *((u8 *)&buf + 0x18) = 0; + SetDrawEnv(p, &buf); + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; + OTE->addr = (u32)p; + p = p + 0x10; + iVar14 = 0; if (uVar1 != 0) { int c5 = 5; puVar10 = (u16 *)((int)p + 0x18); @@ -53,7 +51,7 @@ void func_8013DD68() { puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -61,7 +59,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80190DD0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/.run/P36/agents/ov_SC04_011__func_8013DD68/mechanism.md b/.run/P36/agents/ov_SC04_011__func_8013DD68/mechanism.md index 570a8dbbf..c11f2f3ce 100644 --- a/.run/P36/agents/ov_SC04_011__func_8013DD68/mechanism.md +++ b/.run/P36/agents/ov_SC04_011__func_8013DD68/mechanism.md @@ -1,166 +1,103 @@ -# func_8013DD68 (ov_SC04_011) — T7 residue reading +# func_8013DD68 (ov_SC04_011) — T7 agent c20 (re-draw) -Lever-free start **17**; the mechanical search's best **14** (its widest trace, g5, reached 7). -**Final: 2** — 187 instructions against 187, class ORDER, every register identical, **one instruction out of place.** -Not banked. ~6,500 scored compiles. +**Final: 0** — 187 against 187, byte-identical (`--try … body.c --body` → `score 0 … MATCH`). No pin, no asm, no added +volatile, no `do { } while (0)`, no zero term. Around 10 compiles. The earlier agent's files are kept in +`scratch/prev_body.c`, `scratch/prev_mechanism.md` and `scratch/prev_body_altB.c` (that attempt reached 2 with +`do { } while (0)` wraps). -`body.c` = the score-2 text. `body_altB.c` = the other score-2 spelling (a smaller block, a different last instruction). +`body.c` is `body_free.c` with 3 lines changed: ---- +``` +- ((P_TAG_8013DD68 *)p)->addr = OTE->addr; (x3: before, inside and after the loop) ++ ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; +- uVar2 = q[-7]; +- *(u16 *)((int)puVar10 + -6) = 0x7800; +- *(u8 *)((int)puVar10 + -7) = (u8)uVar2; ++ *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; ++ *(u16 *)((int)puVar10 + -6) = 0x7800; +``` + +Only the addPrim inside the loop needs the `*(u32 *)` read (`scratch/c/v4.c`, which changes just that one, also +scores 0). I changed all three so the three addPrims read the same way. The ones before and after the loop are +byte-neutral: `v1` (loop only) and `v2` (all three) both score 10 before the scheduling move. ## (a) The residual in one sentence -Lever-free the body differs in two independent ways: **(1)** the loop's hoisted `0x00ffffff` bit-field mask and the loop -counter `iVar14` exchange hard registers (`$a3`↔`$t0`, 9 instructions) because the global allocator sorts the two -allocnos the wrong way round, and **(2)** the list scheduler hands out different load-delay fillers inside the loop, -costing an extra `nop` (188 vs 187). (2) is reachable from statement order; **(1) is not** — it is an allocation-priority -comparison that no statement order can move. +The loop counter `iVar14` and the loop's hoisted `0x00ffffff` addPrim mask swap `$a3`/`$t0`. That is 9 instructions, +plus scheduler knock-on inside the loop. The cause: the mask's allocno sorts ahead of the counter because it carries +**two phantom references**. They come from a bit-field read feeding a bit-field store, which masks twice. Combine later +removes the second mask but never takes back the reference count. -## (b) The pass and the decision, read from the compiler and then measured on the dumps +## (b) The pass and the decision (read from source, proven on the dumps) -### (1) `global.c allocno_compare`, fed by `flow.c`'s loop-depth reference weighting +* `expmed.c:1456-1471` `extract_fixed_bit_field`: reading the unsigned 24-bit `addr` field of `OTE` ANDs the loaded + word with `0xffffff`. +* `expmed.c:667-683` `store_fixed_bit_field`: `must_and`, storing a non-constant SImode value into a 24-bit field ANDs + it with `0xffffff` again. +* loop.c hoists the invariant `0x00ffffff` into one pseudo, so both ANDs read the register and cse cannot fold them. + At flow the mask has 3 uses inside the loop (`.flow`: insns 242, 247, 272). `flow.c:2067/2315` add `loop_depth` + (2) for each: 1 set + 3×2 = **7 refs**. +* combine turns `(and (and x r148) r148)` into one AND (insn 247 in `.combine`), but **`reg_n_refs` is not adjusted**. + `combine.c:55-57` says so in its own header: "reg_n_refs is not adjusted in the rare case when a register is no + longer required in a computation". +* sched1 splits the constant into `lui`+`ori` (`sched.c:4830` `try_split`, mips.md:3208 `large_int` split). The + pseudo then has two sets, so `update_equiv_regs` cannot give it a REG_EQUIV note. Its live length is not doubled + (`local-alloc.c:1058-1064`), unlike the one-insn `0xff000000`, whose 56 becomes 112. +* `global.c:587-607` `allocno_compare`: `floor_log2(refs)·refs/live·10000`: -`global_alloc` sorts the allocnos by - -``` -pri = floor_log2(n_refs) * n_refs / live_length * 10000 * size (global.c, allocno_compare, descending; - ties break on the allocno number, v1 - v2) -``` - -and `find_reg` gives each one the first free register in `REG_ALLOC_ORDER`, so the allocno sorted earlier gets the -lower-numbered hard register. `flow.c:2067` (and `:2315 :2501 :2711`) accumulates `reg_n_refs[regno] += loop_depth`: -a reference at function level is worth 1, a reference inside one loop 2. - -Read out of the real `-dl`/`-dg` dumps of this TU (`cpp | cc1 -O2 -G0 -mips1 -mcpu=3000 -msoft-float … -dl -dg -df -dS`), -lever-free: - -| pseudo | what it is | `used N times across M insns` | where the refs come from | pri | +| pseudo | what | refs / live | pri | allocated | |---|---|---|---|---| -| **79** | `iVar14` | **7 / 81** | `1` init (depth 1) + `3 × 2` (the set, the use and the compare, depth 2) | `2*7/81 = 0.1728` | -| **149** | the loop's `0x00ffffff` — `(set 149 (const_int 16711680))` then `(set 149 (ior 149 65535))`, `REG_EQUAL 16777215` | **7 / 58** | `3` for the two-insn constant (depth 1) + `2 × 2` for the two `and`s (depth 2) | `2*7/58 = 0.2414` | +| r148 (free) | loop mask, double-ANDed | 7 / 58 | **2413.8** | first → `$a3` (wrong) | +| r79 | `iVar14` | 7 / 81 | **1728.4** | second → `$t0` (wrong) | +| r144 (body.c) | loop mask, single AND | **5** / 58 | **1724.1** | second → `$t0` ✓ | -`;; 17 regs to allocate: 195 100 172 93 194 72 97 92 94 74 **149 79** 80 153 141 73 121` → `149 in 7` (`$a3`), -`79 in 8` (`$t0`). The target wants them the other way round; the whole 9-instruction register residual **is that one -comparison**. +The `.greg` order line goes from `… 74 148 79 80 …` (free) to `… 74 79 144 80 …` (body.c). All three rows come from +`tools/alloc_table.py` run on `scratch/dumps_{free,v1,v5}`. The margin is 4.3 priority points, and the bytes confirm it. -The two numerators are equal (`2*7`), so the ordering is decided by `live_length` alone: 58 against 81. Neither side of -that can be moved: +Reading the OT entry as a plain word (`*(u32 *)OTE`) removes the extract's AND before combine ever sees it. The store +still masks once, and the final code does not change: combine had produced the same single `and` anyway. -* `iVar14` is live from `move a3,zero` (before the guard) to the loop's `slt` — its 81 is already near the floor, - and it would have to drop below **58** to win on length, i.e. below the loop body itself (~72 insns). Impossible. -* pseudo 149 is defined in the loop preheader and last used ~12 insns from the loop bottom, so 58 is already near its - ceiling; it would need **≥ 81**. Its 3 preheader refs are the MIPS two-insn materialization of `0x00ffffff` - (`lui`+`ori`) — note that the sibling constant `0xff000000` (pseudo 153) is **one** insn and therefore only 5 refs. - Nothing in C chooses that. +**Proven on bytes.** Control `scratch/c/v6.c` has the scheduling move but not the u32 read: 7, pairs +`a3->t0 x5, t0->a3 x4`. `v1` has the u32 read in the loop and no scheduling move: 10, and the register pairs are GONE +(only the `li v0,100` / `lui a0,0xe100` / `andi` order hunk is left). -So the only reachable move is **one more weighted reference on `iVar14`**: at 8 refs `floor_log2` steps 2 → 3 and -`pri` becomes `3*8/81 = 0.2963 > 0.2414`. +The second residual is the one the earlier agent already solved (its moves 1 and 2): with `uVar2 = q[-7]` inlined, +the store sits before the `0x7800` store, the `lhu` sits at its use, and sched1's LUID ties fall the target's way +(`sched.c:2428`). Inlining without the reorder (`v3`) is 8; inlining plus the reorder (`v4`/`v5`) is 0. -**Byte proof that it is `iVar14`'s weight and nothing else.** Wrapping each of the 22 loop statements in -`do { } while (0)`, one at a time (22 compiles), clears the `$a3`/`$t0` pairs for **exactly one** of them — the -`iVar14 = iVar14 + 1;` statement (score 7, `pairs []`); all 21 others keep the pairs. The `-dl` dump of that spelling -differs from the plain one in exactly one line: `Register 79 used 7 times → used 9 times`, `across 81 insns` unchanged. -That is `residual_moves.md` row 1a-7 (verified there on `func_80135D20`) reproduced as arithmetic. +## (c) The moves, one line each -### (2) sched1 / reorg - -`sched.c schedule_block :3144`, `rank_for_schedule :2385`, LUID tie-break `:2428` (LUID = source order, `:2175`). -`iVar14` has two sets, so `adjust_priority` / `birthing_insn_p` (`:2507` / `:2469`, gated on `reg_n_sets == 1` at `:2490`) -never boosts it — its position is its LUID, which is why moving the increment statement is a lever at all. - -### The trap, and the move that got past it - -`do { } while (0)` is **two** things at once: the loop-depth ref weight **and** a two-sided scheduling barrier -(`sched.c:2058-2074` — a LOOP note mid-block adds every register dependence and flushes the pending lists). Put it -around the increment and you buy the registers and immediately lose an instruction: the barrier pins the increment at a -block boundary, so it can never land in the load-delay slot of `lhu v0,-4(a2)` where the target has it — an extra `nop`, -and the score floors at 4. - -**The weight and the barrier can be separated: the extra reference only has to be on `iVar14`, and `iVar14 = 0;` lives -outside the loop.** Wrapping the initialization leaves sched1 completely free inside the loop — the whole loop body then -matches to the instruction, and the residual moves out to the prologue. - -## (c) The moves, one line each (17 → 2) - -1. `uVar2 = q[-7];` deleted and inlined at its single use: `*(u8 *)((int)puVar10 + -7) = (u8)q[-7];` → **14** -2. that store exchanged with `*(u16 *)((int)puVar10 + -6) = 0x7800;`, so the load sits at its use → **7** -3. the tail of the pre-loop run — `buf.env = …` through `iVar14 = 0;` — wrapped in `do { … } while (0);` → **2** - (the ref-weight move; the `$a3`/`$t0` swap and every scheduling difference inside the loop are gone) - -`body_altB.c` reaches the same 2 with a smaller block: `iVar14 = 0;` moved up to just after `SetDrawEnv(p, &buf);` and -only `{ iVar14 = 0; ((P_TAG_8013DD68 *)p)->addr = OTE->addr; OTE->addr = (u32)p; p = p + 0x10; }` wrapped. +1. addPrim's OT read written as a word: `((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;` (the loop one is load-bearing; + the other two for consistency) → register swap gone (17 → 10). +2. `uVar2 = q[-7]` inlined into its store, and that store moved above `*(u16 *)(puVar10 - 6) = 0x7800;` → 0. ## (d) GENERATOR PROPOSAL -**When the residual is a two-register exchange between a loop counter and a loop-invariant constant, take -`floor_log2(n_refs)*n_refs/live_length` for both pseudos from the `-dl` dump and, if the counter loses, wrap the -counter's INITIALIZER — never its increment — in `do { … } while (0);`, then widen that block backwards over the -preceding statements while the score falls.** +**When a REG residual swaps a loop-invariant constant's pseudo with another allocno, and the constant feeds a +bit-field store whose source is a bit-field READ of the same width (`a->f = b->f`, the PsyQ `setaddr(p, getaddr(ot))` +/ addPrim idiom), rewrite the source read as a whole-word read (`a->f = *(u32 *)b`).** It removes one phantom +depth-weighted reference, `2·loop_depth`, from the mask pseudo with zero byte cost, because combine would have merged +the double AND anyway (`combine.c:55-57`). More generally: for any register-priority residual, count refs in the +**`.flow`** dump, not only `.lreg`, and look for insns combine deleted; their refs persist into `allocno_compare`. The +opposite lever (spell a field read as a bit-field read to ADD refs) should work for a pseudo that needs to rise. -Generalized: for any REG-class residual, read the `;; N regs to allocate:` line of the `-dg` dump, find the adjacent -pair that has to swap, and add one loop-depth weight to whichever of the two has a reference OUTSIDE the loop — that is -the only place the `do { } while (0)` costs no schedule. (Today's `R7 block` generator wraps one statement, always -inside the loop; it can reach 4 here and never 2.) +## (e) What did NOT work / what the earlier reading got wrong (R14) -## (e) What did NOT work, with the byte evidence - -* **Statement order alone is spent.** A 3-deep beam over "move one loop statement anywhere" (~4,000 compiles from the - best score-4 seed) plateaus at 3 and never removes the register swap. A 3,000-candidate randomized 2-3-move search over - (pre-loop order × block range × loop order × declaration order) never beat 2. -* **The increment's spelling is inert.** `iVar14++`, `++iVar14`, `iVar14 += 1`, `iVar14 = iVar14 + 1` all score 7 at - every one of the 22 positions, and so do `while (++iVar14 < (int)(u32)uVar1)`, `while ((iVar14 = iVar14 + 1) < …)` and - `while ((iVar14 += 1) < …)` — pairs still `a3→t0 ×5, t0→a3 ×4`. `for (iVar14 = 0; …; iVar14++)` is much worse - (26 with the init in the header, 13 without): `duplicate_loop_exit_test` rebuilds the guard. -* **`register int iVar14;`** (the bare keyword, no pin) is inert — 7, pairs unchanged; and so is it on all 11 locals. - gcc 2.7.2 ignores `register` for allocation at `-O2`. -* **Declaration order** is inert here: all 121 single moves of the 11 declarations leave the score at 2. -* **Wrapping the increment**, or any contiguous loop range containing it (260 compiles over every `[i..j]`), floors at 4: - the barrier costs the `lhu v0,-4(a2)` delay-slot filler and the function is 188 instructions. -* **`for (;;) { … break; }` and `while (1) { … break; }`** are byte-identical to `do { … } while (0)` at both block - positions (2 and 2) — the note footprint is the same. -* **Naming the block copy's destination** (`DrawEnv_8013DD68 *dst; dst = &buf.env;` before the block, `*dst = …` inside) - does not free the `addiu a3,sp,16`: cse's `find_best_addr` folds the frame address back into the MEM and the copy dies. - Still 2, same defect. -* **Splitting `((P_TAG_8013DD68 *)p)->addr = OTE->addr;` into `tmp = OTE->addr;` + the store**, to get the mask constant - emitted above the block opener, costs 14 points (16): the split re-plans the whole entry block. - -## What is still open at 2 - -Two spellings, each one instruction from the bytes, and the two are complementary: - -``` -body.c mine … lhu v1,0(v1) | sw s2,144(sp) | …12 insns… | addiu a3,sp,16 | addiu a2,v0,56 | … - target … lhu v1,0(v1) | addiu a3,sp,16 | sw s2,144(sp) | … | addiu a2,v0,56 | … - -body_altB.c mine … jal | sb zero,40(sp) | move a3,zero | lui a0,0xff | ori a0,a0,0xffff | lui a1,0xff00 … - target … jal | sb zero,40(sp) | lui a0,0xff | ori a0,a0,0xffff | move a3,zero | lui a1,0xff00 … -``` - -`addiu a3,sp,16` is the destination address of the `buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);` block copy; the target -has sched2 weave it into the prologue, above the `$s2` save. Whatever statement is FIRST inside the `do { … }` gets -pinned at the top of the region and can no longer rise into the prologue — that is the whole of `body.c`'s residual, and -it is why widening the block past the copy costs the instruction. Pulling the block opener down past the copy instead -(start at 7 or 8) leaves `sb zero,40(sp)` unable to reach the `jal` delay slot (6); pulling it down past the call -(start at 9) is `body_altB.c`, where `move a3,zero` is then pinned two slots too early. The wanted boundary falls in the -MIDDLE of one statement's insns, and no statement-level move can put it there. - -**What would close it:** anything that gives `iVar14` one more weighted reference without planting a note — i.e. a real -extra reference in the source. I could not find one that keeps the semantics and the instruction count. +* The earlier agent's claim "the only reachable move is one more weighted reference on `iVar14`" and "nothing in C + chooses [the mask's refs]" is **refuted**. The mask's 7 refs are 3 from the two-insn constant (their count) plus + **3 depth-2 uses, one of them phantom** (they read 2), and the phantom is chosen in C by how the OT field is read. + Their arithmetic (priority, live lengths, `floor_log2` step) was correct and was the key; the error was counting + the mask's uses from `.lreg` (after combine) and not `.flow`. +* v3: inlining `q[-7]` without the reorder is 8 (the `lhu v1,0(s1)` / `sb` ordering hunk). +* I did not need the METHOD_S103 moves (implicit handler args, cross-jump, width moves): the residual was a priority + inversion, and the table settled it. ## (f) Where the method fell short -* The pack has no allocation table. Everything decisive here came from two numbers in the `-dl` dump - (`used 7 times across 81 insns` vs `used 7 times across 58 insns`) and one line in `-dg` - (`;; 17 regs to allocate:`). Computing `floor_log2(n)*n/L` for the residual's register pair turned a guessing game into - arithmetic and also **proved a negative** — that the live-length side is unreachable — which no amount of hill-climbing - could have shown. A `tools/alloc_table.py`-style "priority table for the pair named in `pairs:`", generated into the - pack, would have got here in one step instead of forty. -* The engine's block generator (`R7`) only ever wraps ONE statement and only inside the loop. The entire win here is a - multi-statement block placed OUTSIDE the loop, chosen by widening backwards. That is a cheap generator to add and it - generalizes to every REG residual whose loser has an out-of-loop reference. -* `--try` prints a masked-word diff but not the surrounding instructions, and the edit distance conflates "one - instruction 13 slots late" with "two real differences". I had to rebuild an aligned `objdump` view before any of this - was readable; that view belongs in `--try` behind a flag. -* `history.txt` records only scores and move names, not the residual CLASS each move left behind. "R6 inline uVar2 → 14 - [COUNT]" is much less useful than "…and the `a3`/`t0` pairs survive", which is the fact that decides whether the search - is even working on the right axis. +* `tools/alloc_table.py` prints `.lreg` refs, the value global.c uses, but not WHERE they come from. The decisive fact + was the gap between flow-time uses (3 in the loop) and post-combine uses (2), and the table cannot show it. Suggest + a column: "refs at flow vs mentions in the final RTL". A pseudo whose refs exceed its current mentions × depth is + carrying phantom refs from combine, and the source construct that produced the deleted insn is the lever. +* `residual_moves.md` should get a row: "REG swap, winner is a hoisted constant fed by a bit-field copy → + whole-word read of the source field." +* The pack worked: reading the earlier agent's arithmetic plus `.flow` got here in about 10 compiles. diff --git a/.run/P36/agents/ov_SC04_011__func_80177B5C/mechanism.md b/.run/P36/agents/ov_SC04_011__func_80177B5C/mechanism.md new file mode 100644 index 000000000..e715abdbd --- /dev/null +++ b/.run/P36/agents/ov_SC04_011__func_80177B5C/mechanism.md @@ -0,0 +1,57 @@ +# func_80177B5C (ov_SC04_011_jr_801734BC.c) — T7 agent c19 — IN PROGRESS + +Start: lever-free score 135 (mine 142 / target 147). Current best: **61** (147 / 147), `PACK/body.c` +(= `scratch/v8a.c`). No pin, no asm, no volatile, no zero term. + +## (a) The residual + +The lever-free body had the wrong SHAPE, not wrong registers: the target's prologue copies three incoming argument +registers into other registers (`move s5,a2`, `move s1,a3`, `move t6,a1`, and `move s0,a0` after the stack load of the +5th argument), then reads the ARGUMENT register for the early uses and the COPY for the late ones. That is gcc 2.7.2's +K&R narrow-parameter conversion, not four laundered copies. + +## (b) Passes and decisions (read in this function's own dumps, `scratch/dumps_*`) + +1. `assign_parms` (function.c, the `nominal_mode != passed_mode` arm): a K&R `s16`/`u16` parameter arrives as SImode, + is copied to an SImode temp, and is converted into a HImode pseudo in the conversion insns. Two pseudos, different + modes, so cse cannot fold the copy (`cse.c` `(set REG0 REG1)` needs the same mode). In the `.lreg`: `(set (reg:SI 76) + (reg:SI a2))`, `(set (reg/v:HI 75) (subreg:HI (reg:SI 76) 0))`. cse substitutes the SI temp into the first + extended basic block's uses; the loop breaks the ebb, so the post-loop uses read the HI pseudo (a callee-saved + register). PROVED on bytes: 142 -> 147 instructions, and the s0/s1/s5 roles land (score 135 -> 61 with the moves below). + The sibling func_80177DA8 (same TU, lever-free, matched) declares `s16 idx` the same way and shows the same + `move t7,a2; sll a2,a2,16; sra a2,a2,16` prologue. +2. `m = n` with `u8 m` (the sibling's spelling): the QImode copy survives cse, which gives the target's + `bnez v0 / move a3,v0` (tested value and kept digit are two pseudos). +3. `x1 = (u16)(x - 3)`: the truncation is narrowed by the front end, so the add is done on the SI temp and a single + `andi` follows it. `(x - 3) & 0xFFFF` on an `s16 x` makes cse share one sign extension between x1 and x2 (+2 insns); + `u16 x1` puts the `andi` at the use (wrong order). +4. sched1 birthing boost (`sched.c:2469` `birthing_insn_p`, `adjust_priority` `:2507`, `LAUNCH_PRIORITY` `:3902`): + a single-set pseudo's defining insn is launched immediately before its consumer; a multi-set one keeps priority 1 + and sinks to the top of the block. The post-loop `cs`/`cl`/`uv` REUSED (body_free) were multi-set, so sched1 + hoisted them above the tag store; one name per value (`cs2`, `cl2`, `tt2`) gives the target order. PROVED (v7a). +5. local-alloc (`local-alloc.c` block_alloc/combine_regs): `yt <<= 16` made `yt` one global pseudo for two values; the + target's pre-loop `(yt+1)<<16` chain lands in a1 only when the block-0 `yt` is local and the loop value `yl` is a + separate pseudo. PROVED (v7a 115 -> v8a 61). + +## (c) Moves so far (each on bytes) + +- K&R params `u16 bits; s16 tbli; s16 x; s16 y;`, all `yt/tr/xr/yr/bb` copies deleted (the conversion makes them). +- `n = (u32)(bits << 16) >> 28; m = n;` with `u8 m` (sibling spelling); `nv` uses `m`. +- `x1 = (u16)(x - 3); x2 = (u16)(x + 5);` and `(u16)(x + 0x2A)`, `(u16)(x + 0x32)` post-loop. +- pre-loop `cs` inlined (`((yt + 1) << 16) | x1`), post-loop one name per value (`cs`, `cs2`, `cl2`, `tt`, `tt2`). +- `yl = yt << 16` for the loop (separate from `yt`). + +## (d) Generator proposal (draft) + +When the target's prologue copies `$aN` to another register AND the early uses read `$aN` while the post-loop uses +read the copy, re-declare that K&R parameter `s16`/`u16` and delete the body's copy variable. + +## (e) Remaining residual (score 61) + +Block-0 caller-saved permutation: target ca/mk1/cc1 = t0/t1/t2 (mine a1/t0/t1), p = t3 (mine t2), cs chain a1 (mine +v1), cl v1 (mine t3). The target's sched1 order puts the cl chain BEFORE the p[2] store (while v0 holds `cs|x1`), so +its temps take v1 and the cs chain is pushed to a1. Work continues. + +## (f) Method notes + +- The COUNT step decided everything: 142 vs 147 was four prologue copies + one QImode copy, all from declarations. diff --git a/.run/P36/census/lever_census.json b/.run/P36/census/lever_census.json index ca9b90cac..ef37b6478 100644 --- a/.run/P36/census/lever_census.json +++ b/.run/P36/census/lever_census.json @@ -72,16 +72,16 @@ "binaries": 218, "classes": { "A": { - "bodies": 3425, - "distinct_bodies": 922, + "bodies": 3296, + "distinct_bodies": 921, "file_scope": 0, - "in_bodies": 9172, + "in_bodies": 8914, "kinds": { - "pin": 9172 + "pin": 8914 }, - "marked": 9172, - "sites": 9172, - "tus": 1796, + "marked": 8914, + "sites": 8914, + "tus": 1795, "unmarked": 0 }, "B": { @@ -207,9 +207,9 @@ "coverage": { "asm": { "comment_dead": 6792, - "live": 26432, + "live": 26174, "macro_block": 194, - "raw": 33418 + "raw": 33160 }, "attribute": { "comment_dead": 0, @@ -225,9 +225,9 @@ }, "register": { "comment_dead": 8587, - "live": 9222, + "live": 8964, "macro_block": 18, - "raw": 17827 + "raw": 17569 }, "volatile": { "comment_dead": 2480, @@ -237,7 +237,7 @@ } }, "coverage_ok": true, - "elapsed_s": 28.8, + "elapsed_s": 28.9, "generated": "2026-09-10", "gte_levers": { "direct": 362, @@ -248,15 +248,15 @@ "via_macro": 100, "what": "GTE ops whose clobbers exceed the canonical macro's (a scheduling steer): class-B levers INSIDE the headline number since T5 (2026-09-09), marked, 0 at the close" }, - "head": "164825b5d", + "head": "9f2b6b24a", "headers": 3181, "levers_AB": { "asm": 7101, - "bodies": 4340, - "distinct_bodies": 1225, - "marked": 16273, - "pins": 9172, - "sites": 16273, + "bodies": 4211, + "distinct_bodies": 1224, + "marked": 16015, + "pins": 8914, + "sites": 16015, "unmarked": 0, "what": "register pins + asm statements excluding GTE ops: the classes the phase drives to 0" }, @@ -410,11 +410,11 @@ "$23": 10, "$25": 1, "$29": 13, - "$3": 1135, + "$3": 1006, "$4": 1362, "$5": 1270, "$6": 217, - "$7": 452, + "$7": 323, "$8": 176, "$9": 156, "7": 1, @@ -423,30 +423,30 @@ "v0": 2, "v1": 3 }, - "sites": 9172, + "sites": 8914, "sp": 13, "spelling": { - "__asm__": 9097, + "__asm__": 8839, "asm": 75 }, "volatile_qualified": 7, "zero": 117 }, - "src_stamp": "13446bc3714072cd", + "src_stamp": "4bfdabccfbe9d755", "tus": 4121, "unclassified": 0, "union_AD": { - "bodies": 7728, + "bodies": 7599, "by_kind": { "main": 165, "md": 134, - "ov": 7226, + "ov": 7098, "resident": 10, - "shared": 193 + "shared": 192 }, - "copies_in_multi": 6479, - "distinct_bodies": 1511, - "multi_copy_classes": 262 + "copies_in_multi": 6350, + "distinct_bodies": 1510, + "multi_copy_classes": 261 }, "verbatim_excluded": { "functions": 13, diff --git a/.run/P36/census/lever_census.txt b/.run/P36/census/lever_census.txt index 39a80bfd8..ff5b27e34 100644 --- a/.run/P36/census/lever_census.txt +++ b/.run/P36/census/lever_census.txt @@ -1,31 +1,31 @@ lever_census: 218 binaries · 4,121 TUs + 3,181 headers · coverage OK · unclassified 0 · verbatim excluded 13 fn / 14 sites (manifest 13) - coverage asm raw 33418 = live 26432 + macro-block 194 + comment/dead 6792 - coverage register raw 17827 = live 9222 + macro-block 18 + comment/dead 8587 + coverage asm raw 33160 = live 26174 + macro-block 194 + comment/dead 6792 + coverage register raw 17569 = live 8964 + macro-block 18 + comment/dead 8587 coverage volatile raw 4456 = live 1894 + macro-block 82 + comment/dead 2480 coverage builtin raw 599 = live 445 + macro-block 0 + comment/dead 154 coverage attribute raw 76 = live 76 + macro-block 0 + comment/dead 0 class sites in-bodies file-scope bodies distinct TUs marked unmarked kinds - A pins 9172 9172 0 3425 922 1796 9172 0 {'pin': 9172} - B asm 16644 16631 13 5788 892 1828 7367 9277 {'launder': 2378, 'barrier': 2787, 'keepalive': 798, 'gte': 6858, 'gte-lever': 462, 'gte-unsigned': 3, 'instruction': 663, 'asm-body': 13, 'verbatim-body': 2682} - C volatile 1590 1438 152 496 96 610 14 1576 {'cast': 1378, 'decl-body': 58, 'decl-file': 152, 'param': 2} + A pins 8914 8914 0 3296 921 1795 8914 0 {'pin': 8914} + B asm 16644 16631 13 5788 892 1828 7367 9277 {'instruction': 663, 'barrier': 2787, 'launder': 2378, 'gte': 6858, 'keepalive': 798, 'gte-lever': 462, 'gte-unsigned': 3, 'asm-body': 13, 'verbatim-body': 2682} + C volatile 1590 1438 152 496 96 610 14 1576 {'decl-body': 58, 'decl-file': 152, 'cast': 1378, 'param': 2} D register 50 50 0 47 47 6 0 50 {'register': 50} E asm-label 7680 1257 6423 989 119 2084 0 7680 {'asm-label': 7680} F builtin 445 445 0 428 28 302 0 445 {'builtin': 445} G attribute 76 1 75 1 1 40 0 76 {'attribute': 76} - UNION A–D: 7,728 bodies · 1,511 distinct (addresses normalized) · 262 multi-copy classes holding 6,479 bodies · by kind {'ov': 7226, 'shared': 193, 'main': 165, 'md': 134, 'resident': 10} - THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 16,273 sites in 4,340 bodies (1,225 distinct) · marked !FAKE 16,273 · UNMARKED 0 + UNION A–D: 7,599 bodies · 1,510 distinct (addresses normalized) · 261 multi-copy classes holding 6,350 bodies · by kind {'ov': 7098, 'md': 134, 'shared': 192, 'main': 165, 'resident': 10} + THE PHASE'S NUMBER (pins + asm statements, GTE excluded): 16,015 sites in 4,211 bodies (1,224 distinct) · marked !FAKE 16,015 · UNMARKED 0 orphan !FAKE markers (no pin/asm site on the line nor below): 0 GTE levers (clobbers beyond the canonical macro's): 462 sites (100 via a variant macro, 362 direct) · marked 462 · UNMARKED 0 · unsigned GTE statements 3 per-TU asm macro definitions outside the GTE header: 314 {'gte': 150, 'launder': 154, 'instruction': 9, 'barrier': 1} (GTE variants 64) - pins: 9,172 · $0 117 · $sp 13 · with initializer 717 · volatile-qualified 7 · bare-name 15 · spellings {'__asm__': 9097, 'asm': 75} + pins: 8,914 · $0 117 · $sp 13 · with initializer 717 · volatile-qualified 7 · bare-name 15 · spellings {'__asm__': 8839, 'asm': 75} whole-body asm routines in C shells, manifest PERMANENT (hand asm, NOT levers): 22 routines · 2,682 sites (2,660 private copies + 22 shared headers); asm-bodies NOT permanent (levers): 13 site(s) ['func_8001E378:DECOMPILE-NOW', 'func_80020F34:DECOMPILE-NOW', 'func_800249F0:DECOMPILE-NOW', 'func_80025CBC:DECOMPILE-NOW', 'func_80026514:UNCERTAIN', 'func_800268D0:UNCERTAIN', 'func_80027058:DECOMPILE-NOW', 'func_80027200:DECOMPILE-NOW', 'func_800CBA44:DECOMPILE-NOW', 'func_8017D810:DECOMPILE-NOW', 'func_8017E26C:UNCERTAIN', 'func_80184440:DECOMPILE-NOW', 'func_801A3BCC:DECOMPILE-NOW'] asm kinds: {'asm-body/direct': 13, 'barrier/direct': 2785, 'barrier/via-macro': 2, 'gte/direct': 200, 'gte/via-macro': 6658, 'gte-lever/direct': 362, 'gte-lever/via-macro': 100, 'gte-unsigned/direct': 3, 'instruction/direct': 641, 'instruction/via-macro': 22, 'keepalive/direct': 798, 'launder/direct': 1934, 'launder/via-macro': 444, 'verbatim-body/direct': 2682} instruction mnemonics: {'addu': 298, 'la': 142, 'lh': 134, 'move': 25, 'addiu': 22, 'RTP_SND': 22, '.section': 7, 'lui': 4, 'and': 2, 'mult': 1, 'mfhi': 1, 'sll': 1, 'li': 1, 'lw': 1, 'nop': 1, 'srl': 1} - gte mnemonics: {'gte_ldv0': 757, 'gte_stlvnl': 593, 'gte_stsxy': 447, 'gte_rtps': 437, 'gte_stflg': 415, 'gte_rtpt': 352, 'gte_SetRotMatrix': 246, 'gte_stsxy3': 236, 'gte_rtv0tr': 228, 'gte_SetTransMatrix': 226, 'gte_ldv3c': 184, 'gte_ldv3': 177, 'gte_ldrgb': 164, 'gte_stsv': 161, 'lwc2': 159, 'gte_stsz4': 149, 'gte_stsz3': 147, 'gte_stszotz': 134, 'gte_ldIR0z': 134, 'gte_ldIRGB': 134, 'gte_dpcl': 134, 'gte_stORGB': 134, 'gte_stsxy3_f3': 111, 'gte_stclmv': 108, 'gte_nclip': 108, 'gte_stopz': 108, 'gte_stsxy3c': 108, 'gte_stsxy3_ft3': 79, 'gte_rtir': 75, 'gte_ldclmv': 72} + gte mnemonics: {'gte_ldv0': 757, 'gte_stlvnl': 593, 'gte_stsxy': 447, 'gte_rtps': 437, 'gte_stflg': 415, 'gte_rtpt': 352, 'gte_SetRotMatrix': 246, 'gte_stsxy3': 236, 'gte_rtv0tr': 228, 'gte_SetTransMatrix': 226, 'gte_ldv3c': 184, 'gte_ldv3': 177, 'gte_ldrgb': 164, 'gte_stsv': 161, 'lwc2': 159, 'gte_stsz4': 149, 'gte_stsz3': 147, 'gte_ldIR0z': 134, 'gte_ldIRGB': 134, 'gte_dpcl': 134, 'gte_stORGB': 134, 'gte_stszotz': 134, 'gte_stsxy3_f3': 111, 'gte_stclmv': 108, 'gte_nclip': 108, 'gte_stopz': 108, 'gte_stsxy3c': 108, 'gte_stsxy3_ft3': 79, 'gte_rtir': 75, 'gte_ldclmv': 72} asm-bearing macro definitions: 314 (20 names, 3 with >1 text) kinds {'gte': 150, 'launder': 154, 'instruction': 9, 'barrier': 1} controls (R39): src/800.c func_800226C0 pins got 14 expected 45 N-A src/shared/ov/func_80178004.h pins got 8 expected 26 N-A ov_SC03_006 func_80184034 bare-name pins got 0 expected 3 N-A engine_prelude.h asm sites (a macro definition only) got 0 expected 0 OK - elapsed 28.8 s + elapsed 28.9 s diff --git a/.run/P36/delever/calibration.json b/.run/P36/delever/calibration.json index 37fe5a55b..f4af5d9a6 100644 --- a/.run/P36/delever/calibration.json +++ b/.run/P36/delever/calibration.json @@ -1,7 +1,7 @@ { - "head": "164825b5d", + "head": "9f2b6b24a", "stamp": "15956e4a96c4", - "generated": "2026-09-10 15:36", + "generated": "2026-09-10 15:46", "aliases": [ "main", "ov_SC03_014", @@ -21,207 +21,207 @@ "main": { "objects": 85, "identical": 85, - "seconds": 8.626999999999999, - "mean_s": 0.101 + "seconds": 8.167000000000002, + "mean_s": 0.096 }, "ov_SC03_014": { "objects": 32, "identical": 32, - "seconds": 5.713, - "mean_s": 0.179 + "seconds": 5.365000000000001, + "mean_s": 0.168 }, "ov_SC03_015": { "objects": 32, "identical": 32, - "seconds": 5.5280000000000005, - "mean_s": 0.173 + "seconds": 5.253, + "mean_s": 0.164 }, "ov_SC04_011": { "objects": 28, "identical": 28, - "seconds": 4.843000000000001, - "mean_s": 0.173 + "seconds": 4.758000000000001, + "mean_s": 0.17 } }, "per_object_seconds": { - "build/src/800.o": 0.862, - "build/src/800_b.o": 0.1, - "build/src/800_b_2.o": 0.365, - "build/src/800_b_o0a.o": 0.094, - "build/src/800_c.o": 0.231, - "build/src/800b2.o": 0.091, - "build/src/apicard1.o": 0.096, - "build/src/apicard2.o": 0.102, - "build/src/apicard3.o": 0.084, - "build/src/apicard4.o": 0.117, - "build/src/apicard5.o": 0.1, - "build/src/apicard6.o": 0.08, - "build/src/apicard7.o": 0.082, - "build/src/boot.o": 0.125, - "build/src/gap.o": 0.106, - "build/src/libapi1.o": 0.083, - "build/src/libapi2.o": 0.078, - "build/src/libc2_1.o": 0.085, - "build/src/libc2_2.o": 0.079, - "build/src/libcd1.o": 0.097, - "build/src/libcd2.o": 0.08, - "build/src/libetc.o": 0.079, - "build/src/libgpu.o": 0.08, - "build/src/libgpu2.o": 0.084, - "build/src/libgs1.o": 0.082, - "build/src/libgs2.o": 0.081, - "build/src/libgs3.o": 0.082, - "build/src/libgs4.o": 0.079, - "build/src/libgs5.o": 0.084, - "build/src/libgs6.o": 0.104, - "build/src/libgs7.o": 0.09, - "build/src/libgs8.o": 0.089, - "build/src/libgte1.o": 0.09, - "build/src/libgte10.o": 0.085, - "build/src/libgte11.o": 0.084, - "build/src/libgte12.o": 0.094, - "build/src/libgte13.o": 0.084, - "build/src/libgte14.o": 0.085, - "build/src/libgte15.o": 0.08, - "build/src/libgte16.o": 0.085, - "build/src/libgte17.o": 0.1, - "build/src/libgte18.o": 0.078, - "build/src/libgte19.o": 0.077, - "build/src/libgte2.o": 0.086, - "build/src/libgte20.o": 0.08, - "build/src/libgte21.o": 0.08, - "build/src/libgte22.o": 0.085, - "build/src/libgte23.o": 0.086, - "build/src/libgte24.o": 0.093, - "build/src/libgte25.o": 0.081, - "build/src/libgte26.o": 0.083, - "build/src/libgte27.o": 0.079, - "build/src/libgte28.o": 0.077, - "build/src/libgte29.o": 0.083, - "build/src/libgte3.o": 0.085, - "build/src/libgte30.o": 0.081, - "build/src/libgte4.o": 0.077, - "build/src/libgte5.o": 0.075, - "build/src/libgte6.o": 0.076, - "build/src/libgte7.o": 0.077, - "build/src/libgte8.o": 0.094, - "build/src/libgte9.o": 0.085, - "build/src/libmcrd1.o": 0.096, - "build/src/libmcrd2.o": 0.085, - "build/src/libpad1.o": 0.104, - "build/src/libpad2.o": 0.087, - "build/src/sgap.o": 0.108, - "build/src/sgap_2.o": 0.099, - "build/src/sgap_3.o": 0.079, - "build/src/sgap_4.o": 0.094, - "build/src/sgap_5.o": 0.079, - "build/src/sgap_6.o": 0.087, - "build/src/sgap_8.o": 0.094, - "build/src/snd1.o": 0.09, - "build/src/snd10.o": 0.081, - "build/src/snd11.o": 0.085, - "build/src/snd12.o": 0.083, - "build/src/snd2.o": 0.087, - "build/src/snd3.o": 0.081, - "build/src/snd4.o": 0.091, - "build/src/snd5.o": 0.085, - "build/src/snd6.o": 0.093, - "build/src/snd7.o": 0.081, - "build/src/snd8.o": 0.088, - "build/src/snd9.o": 0.094, - "build/src/ov_SC03_014/ov_SC03_014.o": 0.178, - "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.611, - "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.465, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.083, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.083, - "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.148, - "build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.205, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.14, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.107, - "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.087, - "build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.218, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.102, - "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.211, - "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.121, - "build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.086, + "build/src/800.o": 0.859, + "build/src/800_b.o": 0.09, + "build/src/800_b_2.o": 0.33, + "build/src/800_b_o0a.o": 0.074, + "build/src/800_c.o": 0.227, + "build/src/800b2.o": 0.079, + "build/src/apicard1.o": 0.101, + "build/src/apicard2.o": 0.104, + "build/src/apicard3.o": 0.089, + "build/src/apicard4.o": 0.078, + "build/src/apicard5.o": 0.09, + "build/src/apicard6.o": 0.118, + "build/src/apicard7.o": 0.069, + "build/src/boot.o": 0.11, + "build/src/gap.o": 0.109, + "build/src/libapi1.o": 0.072, + "build/src/libapi2.o": 0.075, + "build/src/libc2_1.o": 0.079, + "build/src/libc2_2.o": 0.077, + "build/src/libcd1.o": 0.087, + "build/src/libcd2.o": 0.082, + "build/src/libetc.o": 0.08, + "build/src/libgpu.o": 0.079, + "build/src/libgpu2.o": 0.087, + "build/src/libgs1.o": 0.079, + "build/src/libgs2.o": 0.077, + "build/src/libgs3.o": 0.074, + "build/src/libgs4.o": 0.072, + "build/src/libgs5.o": 0.076, + "build/src/libgs6.o": 0.091, + "build/src/libgs7.o": 0.074, + "build/src/libgs8.o": 0.074, + "build/src/libgte1.o": 0.072, + "build/src/libgte10.o": 0.079, + "build/src/libgte11.o": 0.076, + "build/src/libgte12.o": 0.072, + "build/src/libgte13.o": 0.077, + "build/src/libgte14.o": 0.075, + "build/src/libgte15.o": 0.081, + "build/src/libgte16.o": 0.078, + "build/src/libgte17.o": 0.079, + "build/src/libgte18.o": 0.074, + "build/src/libgte19.o": 0.078, + "build/src/libgte2.o": 0.07, + "build/src/libgte20.o": 0.075, + "build/src/libgte21.o": 0.076, + "build/src/libgte22.o": 0.077, + "build/src/libgte23.o": 0.081, + "build/src/libgte24.o": 0.077, + "build/src/libgte25.o": 0.086, + "build/src/libgte26.o": 0.086, + "build/src/libgte27.o": 0.085, + "build/src/libgte28.o": 0.078, + "build/src/libgte29.o": 0.076, + "build/src/libgte3.o": 0.081, + "build/src/libgte30.o": 0.086, + "build/src/libgte4.o": 0.079, + "build/src/libgte5.o": 0.077, + "build/src/libgte6.o": 0.08, + "build/src/libgte7.o": 0.076, + "build/src/libgte8.o": 0.085, + "build/src/libgte9.o": 0.082, + "build/src/libmcrd1.o": 0.091, + "build/src/libmcrd2.o": 0.077, + "build/src/libpad1.o": 0.079, + "build/src/libpad2.o": 0.085, + "build/src/sgap.o": 0.085, + "build/src/sgap_2.o": 0.081, + "build/src/sgap_3.o": 0.08, + "build/src/sgap_4.o": 0.092, + "build/src/sgap_5.o": 0.093, + "build/src/sgap_6.o": 0.076, + "build/src/sgap_8.o": 0.086, + "build/src/snd1.o": 0.091, + "build/src/snd10.o": 0.085, + "build/src/snd11.o": 0.088, + "build/src/snd12.o": 0.08, + "build/src/snd2.o": 0.098, + "build/src/snd3.o": 0.079, + "build/src/snd4.o": 0.078, + "build/src/snd5.o": 0.078, + "build/src/snd6.o": 0.095, + "build/src/snd7.o": 0.079, + "build/src/snd8.o": 0.087, + "build/src/snd9.o": 0.088, + "build/src/ov_SC03_014/ov_SC03_014.o": 0.154, + "build/src/ov_SC03_014/ov_SC03_014_after.o": 0.585, + "build/src/ov_SC03_014/ov_SC03_014_jr_8012ACE0.o": 0.443, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135888.o": 0.075, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135A4C.o": 0.075, + "build/src/ov_SC03_014/ov_SC03_014_jr_80135D20.o": 0.142, + "build/src/ov_SC03_014/ov_SC03_014_jr_801380E0.o": 0.187, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o": 0.138, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013F350.o": 0.102, + "build/src/ov_SC03_014/ov_SC03_014_jr_8013FFD8.o": 0.08, + "build/src/ov_SC03_014/ov_SC03_014_jr_80140608.o": 0.194, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015444C.o": 0.081, + "build/src/ov_SC03_014/ov_SC03_014_jr_80154C24.o": 0.198, + "build/src/ov_SC03_014/ov_SC03_014_jr_801588CC.o": 0.116, + "build/src/ov_SC03_014/ov_SC03_014_jr_80159C84.o": 0.087, "build/src/ov_SC03_014/ov_SC03_014_jr_8015A3C8.o": 0.08, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.111, - "build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.574, - "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.311, - "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.125, - "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.238, - "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.076, - "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.122, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.089, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.211, - "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.239, - "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.067, - "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.323, - "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.08, - "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.07, - "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.066, - "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.086, - "build/src/ov_SC03_015/ov_SC03_015.o": 0.155, - "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.612, - "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.462, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.07, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.064, - "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.14, - "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.18, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.136, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.09, - "build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.077, - "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.204, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.081, - "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.194, - "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.107, - "build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.082, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.084, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.113, - "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.551, - "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.323, - "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.13, - "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.24, - "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.078, - "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.122, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.085, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.203, - "build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.24, - "build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.067, - "build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.338, - "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.075, - "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.074, - "build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.066, - "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.085, - "build/src/ov_SC04_011/ov_SC04_011.o": 0.145, - "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.497, - "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.415, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.066, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.072, - "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.15, - "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.191, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.133, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.092, - "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.084, - "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.22, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.091, - "build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.202, - "build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.113, - "build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.083, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.082, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.113, - "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.425, - "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.266, - "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.125, - "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.212, - "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.073, - "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.113, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.081, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.122, - "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.541, - "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.063, - "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.073 + "build/src/ov_SC03_014/ov_SC03_014_jr_8015AE2C.o": 0.116, + "build/src/ov_SC03_014/ov_SC03_014_jr_8015C32C.o": 0.528, + "build/src/ov_SC03_014/ov_SC03_014_jr_8016AB6C.o": 0.305, + "build/src/ov_SC03_014/ov_SC03_014_jr_80171B4C.o": 0.11, + "build/src/ov_SC03_014/ov_SC03_014_jr_801734BC.o": 0.232, + "build/src/ov_SC03_014/ov_SC03_014_jr_801789AC.o": 0.069, + "build/src/ov_SC03_014/ov_SC03_014_jr_80178D40.o": 0.117, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017A4AC.o": 0.081, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017AE2C.o": 0.187, + "build/src/ov_SC03_014/ov_SC03_014_jr_8017EB7C.o": 0.208, + "build/src/ov_SC03_014/ov_SC03_014_jr_80184440.o": 0.058, + "build/src/ov_SC03_014/ov_SC03_014_jr_801848E4.o": 0.314, + "build/src/ov_SC03_014/ov_SC03_014_o0b.o": 0.079, + "build/src/ov_SC03_014/ov_SC03_014_o0c.o": 0.074, + "build/src/ov_SC03_014/ov_SC03_014_o0d.o": 0.069, + "build/src/ov_SC03_014/ov_SC03_014_o0e.o": 0.081, + "build/src/ov_SC03_015/ov_SC03_015.o": 0.145, + "build/src/ov_SC03_015/ov_SC03_015_after.o": 0.583, + "build/src/ov_SC03_015/ov_SC03_015_jr_8012ACE0.o": 0.442, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135888.o": 0.061, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135A4C.o": 0.054, + "build/src/ov_SC03_015/ov_SC03_015_jr_80135D20.o": 0.128, + "build/src/ov_SC03_015/ov_SC03_015_jr_801380E0.o": 0.176, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o": 0.127, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013F350.o": 0.088, + "build/src/ov_SC03_015/ov_SC03_015_jr_8013FFD8.o": 0.071, + "build/src/ov_SC03_015/ov_SC03_015_jr_80140608.o": 0.2, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015444C.o": 0.09, + "build/src/ov_SC03_015/ov_SC03_015_jr_80154C24.o": 0.193, + "build/src/ov_SC03_015/ov_SC03_015_jr_801588CC.o": 0.103, + "build/src/ov_SC03_015/ov_SC03_015_jr_80159C84.o": 0.076, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015A3C8.o": 0.08, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015AE2C.o": 0.111, + "build/src/ov_SC03_015/ov_SC03_015_jr_8015C32C.o": 0.54, + "build/src/ov_SC03_015/ov_SC03_015_jr_8016AB6C.o": 0.307, + "build/src/ov_SC03_015/ov_SC03_015_jr_80171B4C.o": 0.121, + "build/src/ov_SC03_015/ov_SC03_015_jr_801734BC.o": 0.23, + "build/src/ov_SC03_015/ov_SC03_015_jr_801789AC.o": 0.068, + "build/src/ov_SC03_015/ov_SC03_015_jr_80178D40.o": 0.124, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017A4AC.o": 0.069, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017AE2C.o": 0.185, + "build/src/ov_SC03_015/ov_SC03_015_jr_8017EB7C.o": 0.22, + "build/src/ov_SC03_015/ov_SC03_015_jr_80184440.o": 0.055, + "build/src/ov_SC03_015/ov_SC03_015_jr_801848E4.o": 0.316, + "build/src/ov_SC03_015/ov_SC03_015_o0b.o": 0.072, + "build/src/ov_SC03_015/ov_SC03_015_o0c.o": 0.067, + "build/src/ov_SC03_015/ov_SC03_015_o0d.o": 0.065, + "build/src/ov_SC03_015/ov_SC03_015_o0e.o": 0.086, + "build/src/ov_SC04_011/ov_SC04_011.o": 0.142, + "build/src/ov_SC04_011/ov_SC04_011_after.o": 0.503, + "build/src/ov_SC04_011/ov_SC04_011_jr_8012ACE0.o": 0.418, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135888.o": 0.065, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135A4C.o": 0.063, + "build/src/ov_SC04_011/ov_SC04_011_jr_80135D20.o": 0.135, + "build/src/ov_SC04_011/ov_SC04_011_jr_801380E0.o": 0.18, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o": 0.131, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013F350.o": 0.089, + "build/src/ov_SC04_011/ov_SC04_011_jr_8013FFD8.o": 0.079, + "build/src/ov_SC04_011/ov_SC04_011_jr_80140608.o": 0.209, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015444C.o": 0.077, + "build/src/ov_SC04_011/ov_SC04_011_jr_80154C24.o": 0.21, + "build/src/ov_SC04_011/ov_SC04_011_jr_801588CC.o": 0.112, + "build/src/ov_SC04_011/ov_SC04_011_jr_80159C84.o": 0.075, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015A3C8.o": 0.087, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015AE2C.o": 0.11, + "build/src/ov_SC04_011/ov_SC04_011_jr_8015C32C.o": 0.417, + "build/src/ov_SC04_011/ov_SC04_011_jr_8016AB6C.o": 0.272, + "build/src/ov_SC04_011/ov_SC04_011_jr_80171B4C.o": 0.111, + "build/src/ov_SC04_011/ov_SC04_011_jr_801734BC.o": 0.218, + "build/src/ov_SC04_011/ov_SC04_011_jr_801789AC.o": 0.072, + "build/src/ov_SC04_011/ov_SC04_011_jr_80178D40.o": 0.119, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017A4AC.o": 0.083, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017AE2C.o": 0.12, + "build/src/ov_SC04_011/ov_SC04_011_jr_8017D494.o": 0.513, + "build/src/ov_SC04_011/ov_SC04_011_o0b.o": 0.067, + "build/src/ov_SC04_011/ov_SC04_011_o0c.o": 0.081 }, "ok": true, - "seconds": 2.8 + "seconds": 2.7 } diff --git a/.run/P36/delever/ledger.jsonl b/.run/P36/delever/ledger.jsonl index f8e8dfa21..bffffef00 100644 --- a/.run/P36/delever/ledger.jsonl +++ b/.run/P36/delever/ledger.jsonl @@ -26660,3 +26660,132 @@ {"ts": "2026-09-10 15:37:07", "label": "c18p", "rung": "E", "calib": {"head": "164825b5d", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_077/ov_SC01_077_jr_801734BC.c", "fn": "func_80176734", "addr": 2149017396, "aliases": null, "header": false, "includers": 0, "nhash_before": "dcaaf55fab863b5bf89b2e4614f30ede424eeb30", "nhash_after": "52e92ffa088470b82cc06482daa51b2f80995c31", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_801734BC.c:func_80176734", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.159, "objects": ["build/src/ov_SC01_077/ov_SC01_077_jr_801734BC.o"], "before_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_8018A2D8[];\n extern u16 D_8018A22A[];\n extern u16 D_8018A238;\n extern u8 D_8018A2CC[];\n extern s32 D_8018A2E4[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s32 chg; /* L7 */\n register s32 chg2 __asm__(\"$16\"); /* L7 */ // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n s32 amp; /* $s0, disjoint from chg2 */\n register u16 tgt __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n s32 pv; /* L6: the param copy that owns $s6 */\n s32 ix; /* L6: block A's index, hoisted out of the block */\n u8 dum[8]; /* L5: dead frame slot (target .frame vars=8) */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n register s32 p __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* L2: must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0; /* L1 */\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(pp + 0xD) = D_8018A2D8[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 q = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 arg;\n if (c & 0x80) {\n *(u16 *)(q + 0x20) = D_8018A238;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(q + 0x20) = D_8018A22A[c];\n arg = D_8018A2E4[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n u8 k; /* L1: gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(pp + 0xD) = D_8018A2D8[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_8018A2CC[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13; /* L1 */\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n register s32 t __asm__(\"$2\"); /* L3a: pin + 2 uses keeps `chg = t` alive */ // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n t = (*(u8 *)(st + 7) != m);\n chg = t;\n if (t != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n s32 av;\n av = amp;\n __asm__(\"\" : \"=r\"(av) : \"0\"(av)); /* L3b: keeps the `move $v0,$s0` at the merge */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung B tus7)\n if (av != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / av;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u16 v; /* dies at the mask -> destructive `andi $v1,$v1` */\n register s32 t __asm__(\"$2\"); // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n t = (*(u8 *)(cach + 0x47) != (v & 0xFF));\n __asm__(\"\" : \"=r\"(t) : \"0\"(t)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung B tus7)\n chg2 = t;\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* L8: one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n chg2 = 0;\n if (cv != tgt || cv == 0x80) chg2 = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J: nothing-changed fast path. The target re-tests chg after the flag load;\n the fence below is what stops cse from folding that second test away. ---- */\n {\n register s32 c __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus7)\n c = chg;\n if (chg2 != 0) goto Lbig;\n if (c != 0) goto Lbig;\n if (*(u8 *)(flag + 0x47) == 0) goto Ltail;\n __asm__(\"\" : \"=r\"(c) : \"0\"(c)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung B tus7)\n if (c == 0) goto Lzero;\n }\nLbig:\n /* ---- block K: slew cach[0x47] toward tgt ---- */\n {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt; /* L8 */\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* L4: store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of L4 */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n }\n goto Ltail;\nLzero:\n *(u8 *)(flag + 0x47) = 0;\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n", "after_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_8018A2D8[];\n extern u16 D_8018A22A[];\n extern u16 D_8018A238;\n extern u8 D_8018A2CC[];\n extern s32 D_8018A2E4[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s16 chg; /* s16: every `(s32)chg` is a sign extension that combine reduces to a copy ($v1) */\n s16 amp; /* s16, and reused as block I's change flag (the target keeps both in $s0) */\n u16 tgt;\n s32 pv; /* the param copy that owns $s6 */\n s32 ix; /* block A's index, hoisted out of the block */\n u8 dum[8]; /* dead frame slot (target .frame vars=8) */\n s32 p; /* ONE sprite-list pointer for blocks A, B and C: its conflicts leave it $a1 */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0;\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(p + 0xD) = D_8018A2D8[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 arg;\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n if (c & 0x80) {\n *(u16 *)(p + 0x20) = D_8018A238;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(p + 0x20) = D_8018A22A[c];\n arg = D_8018A2E4[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n u8 k; /* gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(p + 0xD) = D_8018A2D8[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_8018A2CC[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13;\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n chg = (*(u8 *)(st + 7) != m);\n if (chg != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n if (amp != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / amp;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u8 v; /* u8: a SUBREG copy cse keeps; masked in place at the compare */\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n amp = (*(u8 *)(cach + 0x47) != v);\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n amp = 0;\n if (cv != tgt || cv == 0x80) amp = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J/K: slew cach[0x47] toward tgt when anything changed. The inner test re-reads\n chg after the flag load (cse cannot see through the label), jump threading sends the outer\n `chg != 0` past it. ---- */\n if (amp != 0 || chg != 0 || *(u8 *)(flag + 0x47) != 0) {\n if (amp != 0 || chg != 0) {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt;\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of the two stores */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n } else {\n *(u8 *)(flag + 0x47) = 0;\n }\n }\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n"} {"ts": "2026-09-10 15:37:07", "label": "c18p", "rung": "E", "calib": {"head": "164825b5d", "stamp": "15956e4a96c4"}, "tu": "src/shared/ov/func_80176734__6bc42112.h", "fn": "func_80176734", "addr": 2149017396, "aliases": null, "header": true, "includers": 3, "nhash_before": "dcaaf55fab863b5bf89b2e4614f30ede424eeb30", "nhash_after": "52e92ffa088470b82cc06482daa51b2f80995c31", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_801734BC.c:func_80176734", "verdict": "LEVER-FREE", "sites": [], "compiles": 3, "seconds": 0.478, "objects": ["build/src/ov_SC03_126/ov_SC03_126_jr_801734BC.o", "build/src/ov_SC04_021/ov_SC04_021_jr_801734BC.o", "build/src/ov_SC05_019/ov_SC05_019_jr_801734BC.o"], "before_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_80182A34[];\n extern u16 D_80182986[];\n extern u16 D_80182994;\n extern u8 D_80182A28[];\n extern s32 D_80182A40[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s32 chg; /* L7 */\n register s32 chg2 __asm__(\"$16\"); /* L7 */ // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n s32 amp; /* $s0, disjoint from chg2 */\n register u16 tgt __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n s32 pv; /* L6: the param copy that owns $s6 */\n s32 ix; /* L6: block A's index, hoisted out of the block */\n u8 dum[8]; /* L5: dead frame slot (target .frame vars=8) */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n register s32 p __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* L2: must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0; /* L1 */\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(pp + 0xD) = D_80182A34[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 q = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 arg;\n if (c & 0x80) {\n *(u16 *)(q + 0x20) = D_80182994;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(q + 0x20) = D_80182986[c];\n arg = D_80182A40[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n u8 k; /* L1: gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(pp + 0xD) = D_80182A34[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_80182A28[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13; /* L1 */\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n register s32 t __asm__(\"$2\"); /* L3a: pin + 2 uses keeps `chg = t` alive */ // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n t = (*(u8 *)(st + 7) != m);\n chg = t;\n if (t != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n s32 av;\n av = amp;\n __asm__(\"\" : \"=r\"(av) : \"0\"(av)); /* L3b: keeps the `move $v0,$s0` at the merge */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n if (av != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / av;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u16 v; /* dies at the mask -> destructive `andi $v1,$v1` */\n register s32 t __asm__(\"$2\"); // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n t = (*(u8 *)(cach + 0x47) != (v & 0xFF));\n __asm__(\"\" : \"=r\"(t) : \"0\"(t)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n chg2 = t;\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* L8: one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n chg2 = 0;\n if (cv != tgt || cv == 0x80) chg2 = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J: nothing-changed fast path. The target re-tests chg after the flag load;\n the fence below is what stops cse from folding that second test away. ---- */\n {\n register s32 c __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n c = chg;\n if (chg2 != 0) goto Lbig;\n if (c != 0) goto Lbig;\n if (*(u8 *)(flag + 0x47) == 0) goto Ltail;\n __asm__(\"\" : \"=r\"(c) : \"0\"(c)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n if (c == 0) goto Lzero;\n }\nLbig:\n /* ---- block K: slew cach[0x47] toward tgt ---- */\n {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt; /* L8 */\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* L4: store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of L4 */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n }\n goto Ltail;\nLzero:\n *(u8 *)(flag + 0x47) = 0;\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n", "after_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_80182A34[];\n extern u16 D_80182986[];\n extern u16 D_80182994;\n extern u8 D_80182A28[];\n extern s32 D_80182A40[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s16 chg; /* s16: every `(s32)chg` is a sign extension that combine reduces to a copy ($v1) */\n s16 amp; /* s16, and reused as block I's change flag (the target keeps both in $s0) */\n u16 tgt;\n s32 pv; /* the param copy that owns $s6 */\n s32 ix; /* block A's index, hoisted out of the block */\n u8 dum[8]; /* dead frame slot (target .frame vars=8) */\n s32 p; /* ONE sprite-list pointer for blocks A, B and C: its conflicts leave it $a1 */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0;\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(p + 0xD) = D_80182A34[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 arg;\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n if (c & 0x80) {\n *(u16 *)(p + 0x20) = D_80182994;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(p + 0x20) = D_80182986[c];\n arg = D_80182A40[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n u8 k; /* gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(p + 0xD) = D_80182A34[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_80182A28[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13;\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n chg = (*(u8 *)(st + 7) != m);\n if (chg != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n if (amp != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / amp;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u8 v; /* u8: a SUBREG copy cse keeps; masked in place at the compare */\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n amp = (*(u8 *)(cach + 0x47) != v);\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n amp = 0;\n if (cv != tgt || cv == 0x80) amp = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J/K: slew cach[0x47] toward tgt when anything changed. The inner test re-reads\n chg after the flag load (cse cannot see through the label), jump threading sends the outer\n `chg != 0` past it. ---- */\n if (amp != 0 || chg != 0 || *(u8 *)(flag + 0x47) != 0) {\n if (amp != 0 || chg != 0) {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt;\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of the two stores */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n } else {\n *(u8 *)(flag + 0x47) = 0;\n }\n }\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n"} {"ts": "2026-09-10 15:37:08", "label": "c18p", "rung": "E", "calib": {"head": "164825b5d", "stamp": "15956e4a96c4"}, "tu": "src/shared/ov/func_80176734__261d72d2.h", "fn": "func_80176734", "addr": 2149017396, "aliases": null, "header": true, "includers": 2, "nhash_before": "dcaaf55fab863b5bf89b2e4614f30ede424eeb30", "nhash_after": "52e92ffa088470b82cc06482daa51b2f80995c31", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_801734BC.c:func_80176734", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.323, "objects": ["build/src/ov_SC04_008/ov_SC04_008_jr_801734BC.o", "build/src/ov_SC05_009/ov_SC05_009_jr_801734BC.o"], "before_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_80182280[];\n extern u16 D_801821D2[];\n extern u16 D_801821E0;\n extern u8 D_80182274[];\n extern s32 D_8018228C[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s32 chg; /* L7 */\n register s32 chg2 __asm__(\"$16\"); /* L7 */ // !FAKE: pin $16 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n s32 amp; /* $s0, disjoint from chg2 */\n register u16 tgt __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n s32 pv; /* L6: the param copy that owns $s6 */\n s32 ix; /* L6: block A's index, hoisted out of the block */\n u8 dum[8]; /* L5: dead frame slot (target .frame vars=8) */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n register s32 p __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* L2: must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0; /* L1 */\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(pp + 0xD) = D_80182280[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 q = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 arg;\n if (c & 0x80) {\n *(u16 *)(q + 0x20) = D_801821E0;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(q + 0x20) = D_801821D2[c];\n arg = D_8018228C[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n register s32 pp __asm__(\"$5\"); /* L7 */ // !FAKE: pin $5 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n u8 k; /* L1: gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(pp + 0xD) = D_80182280[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_80182274[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13; /* L1 */\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n register s32 t __asm__(\"$2\"); /* L3a: pin + 2 uses keeps `chg = t` alive */ // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n t = (*(u8 *)(st + 7) != m);\n chg = t;\n if (t != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n s32 av;\n av = amp;\n __asm__(\"\" : \"=r\"(av) : \"0\"(av)); /* L3b: keeps the `move $v0,$s0` at the merge */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n if (av != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / av;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u16 v; /* dies at the mask -> destructive `andi $v1,$v1` */\n register s32 t __asm__(\"$2\"); // !FAKE: pin $2 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n t = (*(u8 *)(cach + 0x47) != (v & 0xFF));\n __asm__(\"\" : \"=r\"(t) : \"0\"(t)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n chg2 = t;\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* L8: one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n chg2 = 0;\n if (cv != tgt || cv == 0x80) chg2 = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J: nothing-changed fast path. The target re-tests chg after the flag load;\n the fence below is what stops cse from folding that second test away. ---- */\n {\n register s32 c __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n c = chg;\n if (chg2 != 0) goto Lbig;\n if (c != 0) goto Lbig;\n if (*(u8 *)(flag + 0x47) == 0) goto Ltail;\n __asm__(\"\" : \"=r\"(c) : \"0\"(c)); /* L3b */ // !FAKE: launder \u2014 NEEDED DIFFERS (P36 rung A headers2)\n if (c == 0) goto Lzero;\n }\nLbig:\n /* ---- block K: slew cach[0x47] toward tgt ---- */\n {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt; /* L8 */\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* L4: store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of L4 */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n }\n goto Ltail;\nLzero:\n *(u8 *)(flag + 0x47) = 0;\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n", "after_text": "void func_80176734(s32 param_1)\n{\n extern u8 D_8011F7A8; /* st base ($s3) */\n extern u8 D_80078E78[]; /* cur base ($s4) */\n extern s16 D_801152BA;\n extern u8 D_8011F7B0; /* == *(u8 *)(st + 8), read absolutely (mixed addressing) */\n extern u8 D_80115214;\n extern u8 D_80182280[];\n extern u16 D_801821D2[];\n extern u16 D_801821E0;\n extern u8 D_80182274[];\n extern s32 D_8018228C[];\n extern u8 D_800D43D4;\n extern u8 D_800D4414;\n extern u8 D_800D45D4;\n extern u8 D_800B9A13;\n extern s16 D_80126CE0;\n extern s16 D_80126D20;\n extern s32 D_80126B58;\n extern void func_800183E0(s32 a0);\n extern s32 func_801619D0(void *a0);\n extern s32 func_80161A00(s32 a0);\n extern s32 func_80161A30(s32 a0);\n extern s32 func_80161A60(s32 a0);\n extern void func_801775E0(s32 param_1, s32 param_2);\n\n s32 st, cach, flag, cur;\n s16 chg; /* s16: every `(s32)chg` is a sign extension that combine reduces to a copy ($v1) */\n s16 amp; /* s16, and reused as block I's change flag (the target keeps both in $s0) */\n u16 tgt;\n s32 pv; /* the param copy that owns $s6 */\n s32 ix; /* block A's index, hoisted out of the block */\n u8 dum[8]; /* dead frame slot (target .frame vars=8) */\n s32 p; /* ONE sprite-list pointer for blocks A, B and C: its conflicts leave it $a1 */\n\n st = (s32)&D_8011F7A8;\n ix = ((param_1 << 16) >> 14) + st;\n pv = param_1;\n cach = st + 0x48;\n flag = st + 0xE0;\n cur = (s32)&(*(u8 *)D_80078E78);\n\n /* ---- block A: pulse byte ---- */\n {\n u8 *q;\n p = *(s32 *)(ix + 0x28);\n q = (u8 *)(p + 0x3C); /* must live in the entry BB */\n if (D_801152BA != 0) {\n u8 b = D_8011F7B0;\n u8 v;\n if (b < 0x80) v = b - 0x80;\n else v = ~b - 0x80;\n q[4] = v;\n *(u8 *)(p + 4) = v;\n *(u8 *)(st + 8) = *(u8 *)(st + 8) + D_80115214;\n } else {\n *(u8 *)(p + 0x40) = 0x80;\n *(u8 *)(p + 4) = 0x80;\n }\n }\n\n /* ---- block B: 0x48 animation already running ---- */\n if (*(u8 *)(flag + 0x48) != 0) {\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n *(u8 *)(p + 0xD) = D_80182280[*(u8 *)(flag + 0x48)];\n if (*(u8 *)(flag + 0x48) < 4) {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else {\n u8 c = *(u8 *)(cach + 0x48);\n s32 arg;\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n if (c & 0x80) {\n *(u16 *)(p + 0x20) = D_801821E0;\n arg = (s32)&D_800D45D4;\n } else if (c != 0) {\n *(u16 *)(p + 0x20) = D_801821D2[c];\n arg = D_8018228C[*(u8 *)(cach + 0x48)];\n } else {\n goto Lskip;\n }\n func_800183E0(arg);\n Lskip:\n if (*(u8 *)(flag + 0x48) == 5) {\n if (*(u8 *)(cach + 0x48) == 0) *(u8 *)(flag + 0x48) = 0;\n else *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n } else if (*(u8 *)(flag + 0x48) == 10) {\n *(u8 *)(flag + 0x48) = 0;\n } else {\n *(u8 *)(flag + 0x48) = *(u8 *)(flag + 0x48) + 1;\n }\n }\n /* ---- block C: 0x48 changed -> start the animation ---- */\n } else if (*(u8 *)(cach + 0x48) != *(u8 *)(cur + 0x48)) {\n u8 k; /* gives the `andi $v1,$v1,0xFF` index mask */\n if (*(u8 *)(cach + 0x48) == 0 && *(u8 *)(cur + 0x48) != 0)\n *(u8 *)(flag + 0x48) = 5;\n else\n *(u8 *)(flag + 0x48) = 0;\n *(u8 *)(cach + 0x48) = *(u8 *)(cur + 0x48);\n p = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n k = *(u8 *)(flag + 0x48);\n *(u8 *)(flag + 0x48) = k + 1;\n *(u8 *)(p + 0xD) = D_80182280[k];\n }\n\n /* ---- block D: field 0x2E (equality-first: the ne-arm must be out of line) ---- */\n if (*(s16 *)(cach + 0x2E) == *(s16 *)(cur + 0x2E)) {\n if (*(s16 *)(flag + 0x2E) == 0) goto L9C0;\n *(s16 *)(flag + 0x2E) = 0;\n } else {\n *(s16 *)(cach + 0x2E) = *(s16 *)(cur + 0x2E);\n *(s16 *)(flag + 0x2E) = 1;\n }\n {\n s32 pp = *(s32 *)(((pv << 16) >> 14) + st + 0x28);\n s32 t = (s32)(*(u16 *)(cach + 0x2E) << 16);\n if (t != 0) *(u8 *)(pp + 0x49) = D_80182274[t >> 20];\n else *(u8 *)(pp + 0x49) = 0xA0;\n }\nL9C0:\n\n /* ---- block E: field 0x1E sign flip ---- */\n {\n s32 fa = *(s16 *)(cach + 0x1E) & 0x8000;\n s32 fb = *(s16 *)(cur + 0x1E) & 0x8000;\n if (fa != fb) {\n s32 arg;\n if (fa != 0) {\n *(s16 *)(cach + 0x1E) = 0;\n arg = (s32)&D_800D43D4;\n } else {\n *(s16 *)(cach + 0x1E) = -0x8000;\n arg = (s32)&D_800D4414;\n }\n func_800183E0(arg);\n }\n }\n\n /* ---- block F: mode byte -> chg ---- */\n {\n u8 m = D_800B9A13;\n if (m != 3) { /* inverted: `chg = 0` belongs out of line */\n chg = (*(u8 *)(st + 7) != m);\n if (chg != 0) *(u8 *)(st + 7) = m;\n } else {\n chg = 0;\n }\n }\n\n /* ---- block G: switch on cur[0x48] (cases 3/4/5 cross-jump onto one tail) ---- */\n amp = 0;\n switch (*(u8 *)(cur + 0x48)) {\n case 3:\n if (func_801619D0(&D_80126B58) != 0) amp = 0xFF;\n break;\n case 4:\n if (func_80161A00((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 5:\n if (func_80161A30((s32)&D_80126B58) != 0) amp = 0xFF;\n break;\n case 6:\n if (func_80161A60((s32)&D_80126B58) != 0) amp = 0xBA;\n break;\n }\n\n /* ---- block H: amp != 0 short-circuit ---- */\n {\n if (amp != 0) {\n *(u8 *)(flag + 0x47) = 1;\n *(u8 *)(cach + 0x4B) = *(u8 *)(cur + 0x48) | 0xF0;\n *(u8 *)(cach + 0x47) = ((s32)D_80126D20 << 7) / amp;\n goto Ltail;\n }\n }\n\n if (*(u8 *)(cach + 0x4B) >= 0xF0) *(u8 *)(cach + 0x4B) = 0;\n\n /* ---- block I: target level + change flag. The lhu is unconditional (target loads\n both the signed and the unsigned view of D_80126CE0 up front). ---- */\n tgt = *(u16 *)&D_80126CE0;\n if (D_80126CE0 != 0) {\n u8 v; /* u8: a SUBREG copy cse keeps; masked in place at the compare */\n v = tgt;\n *(u8 *)(cach + 0x4B) = v;\n amp = (*(u8 *)(cach + 0x47) != v);\n } else {\n u32 cv = *(u8 *)(cach + 0x47); /* one load, two compares, no re-mask */\n tgt = *(u8 *)(cur + 0x47);\n amp = 0;\n if (cv != tgt || cv == 0x80) amp = 1;\n if (*(u8 *)(cur + 0x47) != 0 && *(u8 *)(cach + 0x4B) != 0) {\n *(u8 *)(cach + 0x4B) = 0;\n *(u8 *)(cach + 0x47) = *(u8 *)(cur + 0x47);\n }\n }\n\n /* ---- block J/K: slew cach[0x47] toward tgt when anything changed. The inner test re-reads\n chg after the flag load (cse cannot see through the label), jump threading sends the outer\n `chg != 0` past it. ---- */\n if (amp != 0 || chg != 0 || *(u8 *)(flag + 0x47) != 0) {\n if (amp != 0 || chg != 0) {\n u32 c = *(u8 *)(cach + 0x47);\n s32 sv = (s16)tgt;\n if ((s32)c < sv) {\n *(u8 *)(cach + 0x47) = tgt;\n } else {\n if (sv != 0) *(u8 *)(cach + 0x47) = c - 3; /* store in BOTH arms */\n else *(u8 *)(cach + 0x47) = c - 8;\n c = *(u8 *)(cach + 0x47); /* stays a real lbu because of the two stores */\n if (c == 0 || c > 0x80) {\n *(u8 *)(cach + 0x47) = 0;\n *(u8 *)(cach + 0x4B) = 0;\n } else if ((s32)c < (s16)tgt) { /* fresh EBB -> the sll/sra is recomputed */\n *(u8 *)(cach + 0x47) = tgt;\n }\n }\n *(u8 *)(flag + 0x47) = 1;\n } else {\n *(u8 *)(flag + 0x47) = 0;\n }\n }\nLtail:\n\n /* ---- block L: tail. m+5 / m+9 are separate temps: `lhu + (m+5)`, not `(lhu + m) + 5`. ---- */\n {\n s32 b = ((pv << 16) >> 14) + st;\n s32 m = (*(u8 *)(st + 7) != 0) << 8;\n s32 m5 = m + 5;\n s32 m9 = m + 9;\n *(u16 *)(*(s32 *)(b + 0x28) + 0x32) = *(u16 *)(st + 0x12) + m5;\n func_801775E0(*(s32 *)(b + 0x28) + 0x64, (s16)(*(u16 *)(st + 0x12) + m9));\n }\n}\n"} +{"ts": "2026-09-10 15:46:21", "label": "c20", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "T7 agent c20", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80190DD0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B t3_tus1)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B t3_tus1)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EDABC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EDAEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EDAF0);\n uVar5 = (*(int*)&D_801EDAF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80190DD0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80190DD0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EDABC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EDAEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EDAF0);\n uVar5 = (*(int*)&D_801EDAF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80190DD0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:23", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC01_084/ov_SC01_084_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801871F0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C6294);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C62C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C62C8);\n uVar5 = (*(int*)&D_801C62CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801871F0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801871F0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C6294);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C62C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C62C8);\n uVar5 = (*(int*)&D_801C62CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801871F0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:23", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC02_005/ov_SC02_005_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80191284[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E308C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E30BC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E30C0);\n uVar5 = (*(int*)&D_801E30C4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80191284);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80191284[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E308C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E30BC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E30C0);\n uVar5 = (*(int*)&D_801E30C4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80191284);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:23", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC03_001/ov_SC03_001_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DEB0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ED43C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ED46C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ED470);\n uVar5 = (*(int*)&D_801ED474);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DEB0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DEB0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ED43C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ED46C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ED470);\n uVar5 = (*(int*)&D_801ED474);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DEB0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:23", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.093, "objects": ["build/src/ov_SC01_000/ov_SC01_000_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F5AC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A44D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A4504);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A4508);\n uVar5 = (*(int*)&D_801A450C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F5AC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F5AC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A44D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A4504);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A4508);\n uVar5 = (*(int*)&D_801A450C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F5AC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:23", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC02_037/ov_SC02_037_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801845B0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C84A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C84D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C84D8);\n uVar5 = (*(int*)&D_801C84DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801845B0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801845B0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C84A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C84D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C84D8);\n uVar5 = (*(int*)&D_801C84DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801845B0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC01_001/ov_SC01_001_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801841FC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EC764);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EC794);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EC798);\n uVar5 = (*(int*)&D_801EC79C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801841FC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801841FC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EC764);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EC794);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EC798);\n uVar5 = (*(int*)&D_801EC79C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801841FC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC01_004/ov_SC01_004_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FBC0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018EECC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018EEFC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018EF00);\n uVar5 = (*(int*)&D_8018EF04);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FBC0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FBC0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018EECC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018EEFC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018EF00);\n uVar5 = (*(int*)&D_8018EF04);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FBC0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC01_008/ov_SC01_008_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180134[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A20DC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A210C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A2110);\n uVar5 = (*(int*)&D_801A2114);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180134);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180134[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A20DC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A210C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A2110);\n uVar5 = (*(int*)&D_801A2114);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180134);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC01_009/ov_SC01_009_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018331C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F1F3C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F1F6C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F1F70);\n uVar5 = (*(int*)&D_801F1F74);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018331C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018331C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F1F3C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F1F6C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F1F70);\n uVar5 = (*(int*)&D_801F1F74);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018331C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC01_074/ov_SC01_074_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EF9C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A9BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A9EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A9F0);\n uVar5 = (*(int*)&D_8019A9F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EF9C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EF9C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A9BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A9EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A9F0);\n uVar5 = (*(int*)&D_8019A9F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EF9C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:24", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC01_080/ov_SC01_080_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183EFC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C47EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C481C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C4820);\n uVar5 = (*(int*)&D_801C4824);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183EFC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183EFC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C47EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C481C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C4820);\n uVar5 = (*(int*)&D_801C4824);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183EFC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC02_004/ov_SC02_004_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E680[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80195014);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80195044);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80195048);\n uVar5 = (*(int*)&D_8019504C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E680);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E680[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80195014);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80195044);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80195048);\n uVar5 = (*(int*)&D_8019504C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E680);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC02_011/ov_SC02_011_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801916D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E9F6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E9F9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E9FA0);\n uVar5 = (*(int*)&D_801E9FA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801916D4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801916D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E9F6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E9F9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E9FA0);\n uVar5 = (*(int*)&D_801E9FA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801916D4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.174, "objects": ["build/src/ov_SC01_005/ov_SC01_005_jr_8013C98C.o", "build/src/ov_SC01_006/ov_SC01_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182D54[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CC62C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CC65C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CC660);\n uVar5 = (*(int*)&D_801CC664);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182D54);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182D54[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CC62C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CC65C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CC660);\n uVar5 = (*(int*)&D_801CC664);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182D54);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC02_015/ov_SC02_015_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EBE8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018F0EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018F11C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018F120);\n uVar5 = (*(int*)&D_8018F124);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EBE8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EBE8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018F0EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018F11C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018F120);\n uVar5 = (*(int*)&D_8018F124);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EBE8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC02_016/ov_SC02_016_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184E20[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B2D04);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B2D34);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B2D38);\n uVar5 = (*(int*)&D_801B2D3C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184E20);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184E20[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B2D04);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B2D34);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B2D38);\n uVar5 = (*(int*)&D_801B2D3C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184E20);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:25", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC02_017/ov_SC02_017_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018AE78[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EE52C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EE55C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EE560);\n uVar5 = (*(int*)&D_801EE564);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018AE78);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018AE78[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EE52C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EE55C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EE560);\n uVar5 = (*(int*)&D_801EE564);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018AE78);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:26", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC02_026/ov_SC02_026_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186AC0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CEEDC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CEF0C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CEF10);\n uVar5 = (*(int*)&D_801CEF14);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186AC0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186AC0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CEEDC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CEF0C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CEF10);\n uVar5 = (*(int*)&D_801CEF14);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186AC0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:26", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.093, "objects": ["build/src/ov_SC02_021/ov_SC02_021_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018046C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80191A9C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80191ACC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80191AD0);\n uVar5 = (*(int*)&D_80191AD4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018046C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018046C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80191A9C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80191ACC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80191AD0);\n uVar5 = (*(int*)&D_80191AD4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018046C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:26", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.092, "objects": ["build/src/ov_SC02_031/ov_SC02_031_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185614[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B6364);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B6394);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B6398);\n uVar5 = (*(int*)&D_801B639C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185614);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185614[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B6364);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B6394);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B6398);\n uVar5 = (*(int*)&D_801B639C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185614);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:26", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC02_027/ov_SC02_027_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BBE4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D8C4C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D8C7C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D8C80);\n uVar5 = (*(int*)&D_801D8C84);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BBE4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BBE4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D8C4C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D8C7C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D8C80);\n uVar5 = (*(int*)&D_801D8C84);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BBE4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:26", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.18, "objects": ["build/src/ov_SC02_000/ov_SC02_000_jr_8013C98C.o", "build/src/ov_SC02_003/ov_SC02_003_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B5A0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E6DC4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E6DF4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E6DF8);\n uVar5 = (*(int*)&D_801E6DFC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B5A0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B5A0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E6DC4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E6DF4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E6DF8);\n uVar5 = (*(int*)&D_801E6DFC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B5A0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.095, "objects": ["build/src/ov_SC02_028/ov_SC02_028_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BDE8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1BEC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1C1C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1C20);\n uVar5 = (*(int*)&D_801D1C24);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BDE8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BDE8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1BEC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1C1C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1C20);\n uVar5 = (*(int*)&D_801D1C24);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BDE8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.091, "objects": ["build/src/ov_SC02_035/ov_SC02_035_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184E74[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BD694);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BD6C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BD6C8);\n uVar5 = (*(int*)&D_801BD6CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184E74);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184E74[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BD694);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BD6C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BD6C8);\n uVar5 = (*(int*)&D_801BD6CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184E74);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC02_039/ov_SC02_039_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FAA0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019FA44);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019FA74);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019FA78);\n uVar5 = (*(int*)&D_8019FA7C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FAA0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FAA0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019FA44);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019FA74);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019FA78);\n uVar5 = (*(int*)&D_8019FA7C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FAA0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC03_002/ov_SC03_002_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185EA0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CA4BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CA4EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CA4F0);\n uVar5 = (*(int*)&D_801CA4F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185EA0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185EA0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CA4BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CA4EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CA4F0);\n uVar5 = (*(int*)&D_801CA4F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185EA0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC02_041/ov_SC02_041_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185770[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B7DBC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B7DEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B7DF0);\n uVar5 = (*(int*)&D_801B7DF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185770);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185770[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B7DBC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B7DEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B7DF0);\n uVar5 = (*(int*)&D_801B7DF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185770);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_003/ov_SC03_003_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FC68[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E7C4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E7F4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E7F8);\n uVar5 = (*(int*)&D_8018E7FC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FC68);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FC68[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E7C4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E7F4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E7F8);\n uVar5 = (*(int*)&D_8018E7FC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FC68);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:27", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.081, "objects": ["build/src/ov_SC03_006/ov_SC03_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018CF84[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F613C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F616C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F6170);\n uVar5 = (*(int*)&D_801F6174);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018CF84);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018CF84[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F613C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F616C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F6170);\n uVar5 = (*(int*)&D_801F6174);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018CF84);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_007/ov_SC03_007_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80187D7C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E8A94);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E8AC4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E8AC8);\n uVar5 = (*(int*)&D_801E8ACC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80187D7C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80187D7C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E8A94);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E8AC4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E8AC8);\n uVar5 = (*(int*)&D_801E8ACC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80187D7C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_010/ov_SC03_010_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018089C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019ECF4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019ED24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019ED28);\n uVar5 = (*(int*)&D_8019ED2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018089C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018089C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019ECF4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019ED24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019ED28);\n uVar5 = (*(int*)&D_8019ED2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018089C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_011/ov_SC03_011_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181C0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A0F8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A0FBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0FC0);\n uVar5 = (*(int*)&D_801A0FC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181C0C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181C0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A0F8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A0FBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0FC0);\n uVar5 = (*(int*)&D_801A0FC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181C0C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_012/ov_SC03_012_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EAEC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80193DAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80193DDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193DE0);\n uVar5 = (*(int*)&D_80193DE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EAEC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EAEC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80193DAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80193DDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193DE0);\n uVar5 = (*(int*)&D_80193DE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EAEC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC03_023/ov_SC03_023_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F88C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801979D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80197A04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80197A08);\n uVar5 = (*(int*)&D_80197A0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F88C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F88C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801979D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80197A04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80197A08);\n uVar5 = (*(int*)&D_80197A0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F88C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC03_013/ov_SC03_013_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801818D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AC07C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AC0AC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AC0B0);\n uVar5 = (*(int*)&D_801AC0B4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801818D4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801818D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AC07C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AC0AC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AC0B0);\n uVar5 = (*(int*)&D_801AC0B4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801818D4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:28", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.081, "objects": ["build/src/ov_SC03_024/ov_SC03_024_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801878B0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BFF6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BFF9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BFFA0);\n uVar5 = (*(int*)&D_801BFFA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801878B0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801878B0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BFF6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BFF9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BFFA0);\n uVar5 = (*(int*)&D_801BFFA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801878B0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:29", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_028/ov_SC03_028_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018C37C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EA2A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EA2D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EA2D8);\n uVar5 = (*(int*)&D_801EA2DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018C37C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018C37C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EA2A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EA2D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EA2D8);\n uVar5 = (*(int*)&D_801EA2DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018C37C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:29", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.176, "objects": ["build/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.o", "build/src/ov_SC03_015/ov_SC03_015_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BF10[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E95FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E962C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E9630);\n uVar5 = (*(int*)&D_801E9634);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BF10);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018BF10[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E95FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E962C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E9630);\n uVar5 = (*(int*)&D_801E9634);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018BF10);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:29", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC05_008/ov_SC05_008_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183358[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019FE3C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019FE6C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019FE70);\n uVar5 = (*(int*)&D_8019FE74);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183358);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183358[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019FE3C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019FE6C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019FE70);\n uVar5 = (*(int*)&D_8019FE74);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183358);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:29", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_030/ov_SC03_030_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801827F0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E0874);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E08A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E08A8);\n uVar5 = (*(int*)&D_801E08AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801827F0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801827F0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E0874);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E08A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E08A8);\n uVar5 = (*(int*)&D_801E08AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801827F0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:29", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_029/ov_SC03_029_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801881B4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D827C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D82AC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D82B0);\n uVar5 = (*(int*)&D_801D82B4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801881B4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801881B4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D827C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D82AC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D82B0);\n uVar5 = (*(int*)&D_801D82B4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801881B4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_031/ov_SC03_031_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182D0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C4C74);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C4CA4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C4CA8);\n uVar5 = (*(int*)&D_801C4CAC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182D0C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182D0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C4C74);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C4CA4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C4CA8);\n uVar5 = (*(int*)&D_801C4CAC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182D0C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC03_089/ov_SC03_089_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018A008[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C552C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C555C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C5560);\n uVar5 = (*(int*)&D_801C5564);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018A008);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018A008[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C552C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C555C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C5560);\n uVar5 = (*(int*)&D_801C5564);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018A008);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_090/ov_SC03_090_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018C42C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CA994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CA9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CA9C8);\n uVar5 = (*(int*)&D_801CA9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018C42C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018C42C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CA994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CA9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CA9C8);\n uVar5 = (*(int*)&D_801CA9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018C42C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_107/ov_SC03_107_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182E4C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A804);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A834);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A838);\n uVar5 = (*(int*)&D_8019A83C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182E4C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182E4C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A804);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A834);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A838);\n uVar5 = (*(int*)&D_8019A83C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182E4C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_092/ov_SC03_092_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801856A4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B1C2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B1C5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B1C60);\n uVar5 = (*(int*)&D_801B1C64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801856A4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801856A4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B1C2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B1C5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B1C60);\n uVar5 = (*(int*)&D_801B1C64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801856A4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_091/ov_SC03_091_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018D2D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1064);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1094);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1098);\n uVar5 = (*(int*)&D_801D109C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018D2D4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018D2D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1064);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1094);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1098);\n uVar5 = (*(int*)&D_801D109C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018D2D4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:30", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_093/ov_SC03_093_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018687C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CB09C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CB0CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CB0D0);\n uVar5 = (*(int*)&D_801CB0D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018687C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018687C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CB09C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CB0CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CB0D0);\n uVar5 = (*(int*)&D_801CB0D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018687C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_094/ov_SC03_094_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188278[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1EDC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1F0C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1F10);\n uVar5 = (*(int*)&D_801D1F14);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188278);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188278[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D1EDC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D1F0C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D1F10);\n uVar5 = (*(int*)&D_801D1F14);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188278);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC03_096/ov_SC03_096_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181458[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019958C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801995BC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801995C0);\n uVar5 = (*(int*)&D_801995C4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181458);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181458[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019958C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801995BC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801995C0);\n uVar5 = (*(int*)&D_801995C4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181458);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_098/ov_SC03_098_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185CC4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C4284);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C42B4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C42B8);\n uVar5 = (*(int*)&D_801C42BC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185CC4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185CC4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C4284);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C42B4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C42B8);\n uVar5 = (*(int*)&D_801C42BC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185CC4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_095/ov_SC03_095_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801818D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019AAD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019AB04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019AB08);\n uVar5 = (*(int*)&D_8019AB0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801818D8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801818D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019AAD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019AB04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019AB08);\n uVar5 = (*(int*)&D_8019AB0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801818D8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_097/ov_SC03_097_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186838[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A9614);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A9644);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A9648);\n uVar5 = (*(int*)&D_801A964C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186838);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186838[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A9614);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A9644);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A9648);\n uVar5 = (*(int*)&D_801A964C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186838);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:31", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_099/ov_SC03_099_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183DC4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BDF54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BDF84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BDF88);\n uVar5 = (*(int*)&D_801BDF8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183DC4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183DC4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BDF54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BDF84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BDF88);\n uVar5 = (*(int*)&D_801BDF8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183DC4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_100/ov_SC03_100_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185290[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C71DC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C720C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C7210);\n uVar5 = (*(int*)&D_801C7214);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185290);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185290[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C71DC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C720C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C7210);\n uVar5 = (*(int*)&D_801C7214);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185290);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.091, "objects": ["build/src/ov_SC03_102/ov_SC03_102_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186B24[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B871C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B874C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8750);\n uVar5 = (*(int*)&D_801B8754);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186B24);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186B24[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B871C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B874C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8750);\n uVar5 = (*(int*)&D_801B8754);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186B24);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_101/ov_SC03_101_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018426C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019CAA4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019CAD4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019CAD8);\n uVar5 = (*(int*)&D_8019CADC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018426C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018426C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019CAA4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019CAD4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019CAD8);\n uVar5 = (*(int*)&D_8019CADC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018426C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC03_105/ov_SC03_105_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018ACEC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B83FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B842C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8430);\n uVar5 = (*(int*)&D_801B8434);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018ACEC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018ACEC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B83FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B842C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8430);\n uVar5 = (*(int*)&D_801B8434);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018ACEC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_109/ov_SC03_109_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017ECF0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801990FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019912C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80199130);\n uVar5 = (*(int*)&D_80199134);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017ECF0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017ECF0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801990FC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019912C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80199130);\n uVar5 = (*(int*)&D_80199134);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017ECF0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC03_108/ov_SC03_108_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181644[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A06EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A071C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0720);\n uVar5 = (*(int*)&D_801A0724);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181644);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181644[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A06EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A071C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0720);\n uVar5 = (*(int*)&D_801A0724);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181644);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:32", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_104/ov_SC03_104_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B664[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BEE6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BEE9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BEEA0);\n uVar5 = (*(int*)&D_801BEEA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B664);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B664[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BEE6C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BEE9C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BEEA0);\n uVar5 = (*(int*)&D_801BEEA4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B664);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.08, "objects": ["build/src/ov_SC03_103/ov_SC03_103_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184AD4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C38D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C3904);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C3908);\n uVar5 = (*(int*)&D_801C390C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184AD4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184AD4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C38D4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C3904);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C3908);\n uVar5 = (*(int*)&D_801C390C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184AD4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_110/ov_SC03_110_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182710[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A0EA4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A0ED4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0ED8);\n uVar5 = (*(int*)&D_801A0EDC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182710);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182710[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A0EA4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A0ED4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0ED8);\n uVar5 = (*(int*)&D_801A0EDC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182710);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC03_111/ov_SC03_111_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801852C4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B83AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B83DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B83E0);\n uVar5 = (*(int*)&D_801B83E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801852C4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801852C4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B83AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B83DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B83E0);\n uVar5 = (*(int*)&D_801B83E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801852C4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_114/ov_SC03_114_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F3E4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8434);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8464);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8468);\n uVar5 = (*(int*)&D_801A846C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F3E4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F3E4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8434);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8464);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8468);\n uVar5 = (*(int*)&D_801A846C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F3E4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_116/ov_SC03_116_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183254[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019691C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019694C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80196950);\n uVar5 = (*(int*)&D_80196954);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183254);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183254[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019691C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019694C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80196950);\n uVar5 = (*(int*)&D_80196954);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183254);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_112/ov_SC03_112_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801860CC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ABC0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ABC3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ABC40);\n uVar5 = (*(int*)&D_801ABC44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801860CC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801860CC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ABC0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ABC3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ABC40);\n uVar5 = (*(int*)&D_801ABC44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801860CC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:33", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_113/ov_SC03_113_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018377C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A479C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A47CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A47D0);\n uVar5 = (*(int*)&D_801A47D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018377C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018377C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A479C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A47CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A47D0);\n uVar5 = (*(int*)&D_801A47D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018377C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC03_117/ov_SC03_117_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185260[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CD094);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CD0C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CD0C8);\n uVar5 = (*(int*)&D_801CD0CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185260);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185260[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CD094);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CD0C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CD0C8);\n uVar5 = (*(int*)&D_801CD0CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185260);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC03_115/ov_SC03_115_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180E50[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80193D8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80193DBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193DC0);\n uVar5 = (*(int*)&D_80193DC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180E50);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180E50[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80193D8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80193DBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193DC0);\n uVar5 = (*(int*)&D_80193DC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180E50);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC03_124/ov_SC03_124_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B554[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E05B4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E05E4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E05E8);\n uVar5 = (*(int*)&D_801E05EC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B554);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018B554[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E05B4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E05E4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E05E8);\n uVar5 = (*(int*)&D_801E05EC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018B554);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC03_125/ov_SC03_125_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184724[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C2EAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C2EDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C2EE0);\n uVar5 = (*(int*)&D_801C2EE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184724);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184724[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C2EAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C2EDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C2EE0);\n uVar5 = (*(int*)&D_801C2EE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184724);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC03_121/ov_SC03_121_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182B28[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ADA8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ADABC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ADAC0);\n uVar5 = (*(int*)&D_801ADAC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182B28);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182B28[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801ADA8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801ADABC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801ADAC0);\n uVar5 = (*(int*)&D_801ADAC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182B28);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:34", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC04_002/ov_SC04_002_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188D94[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BFB34);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BFB64);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BFB68);\n uVar5 = (*(int*)&D_801BFB6C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188D94);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188D94[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BFB34);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BFB64);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BFB68);\n uVar5 = (*(int*)&D_801BFB6C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188D94);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC04_000/ov_SC04_000_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183C28[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8824);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8854);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8858);\n uVar5 = (*(int*)&D_801A885C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183C28);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183C28[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8824);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8854);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8858);\n uVar5 = (*(int*)&D_801A885C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183C28);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC04_004/ov_SC04_004_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185064[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B259C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B25CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B25D0);\n uVar5 = (*(int*)&D_801B25D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185064);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185064[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B259C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B25CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B25D0);\n uVar5 = (*(int*)&D_801B25D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185064);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC04_003/ov_SC04_003_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182B30[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A79C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A7CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A7D0);\n uVar5 = (*(int*)&D_8019A7D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182B30);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182B30[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A79C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A7CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A7D0);\n uVar5 = (*(int*)&D_8019A7D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182B30);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.168, "objects": ["build/src/ov_SC03_118/ov_SC03_118_jr_8013C98C.o", "build/src/ov_SC03_119/ov_SC03_119_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018A30C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D2FE4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D3014);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D3018);\n uVar5 = (*(int*)&D_801D301C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018A30C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018A30C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D2FE4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D3014);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D3018);\n uVar5 = (*(int*)&D_801D301C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018A30C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC04_005/ov_SC04_005_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188498[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C0774);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C07A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C07A8);\n uVar5 = (*(int*)&D_801C07AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188498);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188498[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C0774);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C07A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C07A8);\n uVar5 = (*(int*)&D_801C07AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188498);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:35", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC04_006/ov_SC04_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180578[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019CA1C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019CA4C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019CA50);\n uVar5 = (*(int*)&D_8019CA54);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180578);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180578[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019CA1C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019CA4C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019CA50);\n uVar5 = (*(int*)&D_8019CA54);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180578);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC04_009/ov_SC04_009_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F494[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80196EBC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80196EEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80196EF0);\n uVar5 = (*(int*)&D_80196EF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F494);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F494[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80196EBC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80196EEC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80196EF0);\n uVar5 = (*(int*)&D_80196EF4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F494);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC04_012/ov_SC04_012_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EFA4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80190A2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80190A5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80190A60);\n uVar5 = (*(int*)&D_80190A64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EFA4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EFA4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80190A2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80190A5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80190A60);\n uVar5 = (*(int*)&D_80190A64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EFA4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC04_007/ov_SC04_007_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186530[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B3FD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B4004);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B4008);\n uVar5 = (*(int*)&D_801B400C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186530);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80186530[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B3FD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B4004);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B4008);\n uVar5 = (*(int*)&D_801B400C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80186530);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC04_010/ov_SC04_010_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EB40[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E354);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E384);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E388);\n uVar5 = (*(int*)&D_8018E38C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EB40);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EB40[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E354);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E384);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E388);\n uVar5 = (*(int*)&D_8018E38C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EB40);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC04_015/ov_SC04_015_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184EDC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C7714);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C7744);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C7748);\n uVar5 = (*(int*)&D_801C774C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184EDC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80184EDC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C7714);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C7744);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C7748);\n uVar5 = (*(int*)&D_801C774C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80184EDC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC04_020/ov_SC04_020_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183CF0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BB11C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BB14C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BB150);\n uVar5 = (*(int*)&D_801BB154);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183CF0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183CF0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801BB11C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801BB14C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801BB150);\n uVar5 = (*(int*)&D_801BB154);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183CF0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:36", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC04_016/ov_SC04_016_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801809A0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A58BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A58EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A58F0);\n uVar5 = (*(int*)&D_801A58F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801809A0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801809A0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A58BC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A58EC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A58F0);\n uVar5 = (*(int*)&D_801A58F4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801809A0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC05_000/ov_SC05_000_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EC30[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801998A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801998D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801998D8);\n uVar5 = (*(int*)&D_801998DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EC30);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017EC30[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801998A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801998D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801998D8);\n uVar5 = (*(int*)&D_801998DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017EC30);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC05_001/ov_SC05_001_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018640C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B4964);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B4994);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B4998);\n uVar5 = (*(int*)&D_801B499C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018640C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018640C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B4964);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B4994);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B4998);\n uVar5 = (*(int*)&D_801B499C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018640C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC05_002/ov_SC05_002_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180BCC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019EC04);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019EC34);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019EC38);\n uVar5 = (*(int*)&D_8019EC3C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180BCC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180BCC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019EC04);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019EC34);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019EC38);\n uVar5 = (*(int*)&D_8019EC3C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180BCC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC05_003/ov_SC05_003_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182F04[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AB714);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AB744);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AB748);\n uVar5 = (*(int*)&D_801AB74C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182F04);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182F04[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AB714);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AB744);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AB748);\n uVar5 = (*(int*)&D_801AB74C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182F04);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.082, "objects": ["build/src/ov_SC05_007/ov_SC05_007_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181400[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019BB0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019BB3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019BB40);\n uVar5 = (*(int*)&D_8019BB44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181400);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181400[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019BB0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019BB3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019BB40);\n uVar5 = (*(int*)&D_8019BB44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181400);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:37", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC05_004/ov_SC05_004_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182010[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019DD8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019DDBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019DDC0);\n uVar5 = (*(int*)&D_8019DDC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182010);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182010[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019DD8C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019DDBC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019DDC0);\n uVar5 = (*(int*)&D_8019DDC4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182010);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC05_006/ov_SC05_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FE04[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018EB2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018EB5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018EB60);\n uVar5 = (*(int*)&D_8018EB64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FE04);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FE04[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018EB2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018EB5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018EB60);\n uVar5 = (*(int*)&D_8018EB64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FE04);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 2, "seconds": 0.169, "objects": ["build/src/ov_SC04_018/ov_SC04_018_jr_8013C98C.o", "build/src/ov_SC04_019/ov_SC04_019_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DBB8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E5B0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E5B3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E5B40);\n uVar5 = (*(int*)&D_801E5B44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DBB8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DBB8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E5B0C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E5B3C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E5B40);\n uVar5 = (*(int*)&D_801E5B44);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DBB8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.09, "objects": ["build/src/ov_SC05_005/ov_SC05_005_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182DE4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B09F4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B0A24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B0A28);\n uVar5 = (*(int*)&D_801B0A2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182DE4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182DE4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B09F4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B0A24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B0A28);\n uVar5 = (*(int*)&D_801B0A2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182DE4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC05_010/ov_SC05_010_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80189344[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C5C9C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C5CCC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C5CD0);\n uVar5 = (*(int*)&D_801C5CD4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80189344);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80189344[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801C5C9C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801C5CCC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801C5CD0);\n uVar5 = (*(int*)&D_801C5CD4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80189344);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC05_011/ov_SC05_011_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E6BC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019BE24);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019BE54);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019BE58);\n uVar5 = (*(int*)&D_8019BE5C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E6BC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E6BC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019BE24);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019BE54);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019BE58);\n uVar5 = (*(int*)&D_8019BE5C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E6BC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:38", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC05_017/ov_SC05_017_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DB7C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EB964);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EB994);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EB998);\n uVar5 = (*(int*)&D_801EB99C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DB7C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DB7C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801EB964);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801EB994);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801EB998);\n uVar5 = (*(int*)&D_801EB99C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DB7C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC05_018/ov_SC05_018_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801872D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E50A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E50D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E50D8);\n uVar5 = (*(int*)&D_801E50DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801872D8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801872D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E50A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E50D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E50D8);\n uVar5 = (*(int*)&D_801E50DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801872D8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC06_000/ov_SC06_000_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188C2C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AD3E4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AD414);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AD418);\n uVar5 = (*(int*)&D_801AD41C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188C2C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80188C2C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AD3E4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AD414);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AD418);\n uVar5 = (*(int*)&D_801AD41C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80188C2C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_008/ov_SC06_008_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801861B8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8DAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8DDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8DE0);\n uVar5 = (*(int*)&D_801A8DE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801861B8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801861B8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A8DAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A8DDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A8DE0);\n uVar5 = (*(int*)&D_801A8DE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801861B8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC06_006/ov_SC06_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182750[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F6E2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F6E5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F6E60);\n uVar5 = (*(int*)&D_801F6E64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182750);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80182750[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F6E2C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F6E5C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F6E60);\n uVar5 = (*(int*)&D_801F6E64);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80182750);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_011/ov_SC06_011_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180DF4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AA994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AA9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AA9C8);\n uVar5 = (*(int*)&D_801AA9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180DF4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80180DF4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801AA994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801AA9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801AA9C8);\n uVar5 = (*(int*)&D_801AA9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80180DF4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:39", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_010/ov_SC06_010_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80187394[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B0DE4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B0E14);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B0E18);\n uVar5 = (*(int*)&D_801B0E1C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80187394);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80187394[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B0DE4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B0E14);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B0E18);\n uVar5 = (*(int*)&D_801B0E1C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80187394);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC06_013/ov_SC06_013_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F570[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019984C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019987C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80199880);\n uVar5 = (*(int*)&D_80199884);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F570);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F570[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019984C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019987C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80199880);\n uVar5 = (*(int*)&D_80199884);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F570);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC06_014/ov_SC06_014_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801808D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A023C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A026C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0270);\n uVar5 = (*(int*)&D_801A0274);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801808D4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801808D4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A023C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A026C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A0270);\n uVar5 = (*(int*)&D_801A0274);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801808D4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.078, "objects": ["build/src/ov_SC06_015/ov_SC06_015_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F42C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019361C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019364C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193650);\n uVar5 = (*(int*)&D_80193654);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F42C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F42C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019361C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019364C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80193650);\n uVar5 = (*(int*)&D_80193654);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F42C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC06_016/ov_SC06_016_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018583C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019E3EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019E41C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019E420);\n uVar5 = (*(int*)&D_8019E424);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018583C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018583C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019E3EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019E41C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019E420);\n uVar5 = (*(int*)&D_8019E424);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018583C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_018/ov_SC06_018_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80193F78[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D3CD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D3D04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D3D08);\n uVar5 = (*(int*)&D_801D3D0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80193F78);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80193F78[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801D3CD4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801D3D04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801D3D08);\n uVar5 = (*(int*)&D_801D3D0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80193F78);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_020/ov_SC06_020_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185A00[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B94EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B951C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B9520);\n uVar5 = (*(int*)&D_801B9524);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185A00);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185A00[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B94EC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B951C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B9520);\n uVar5 = (*(int*)&D_801B9524);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185A00);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:40", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC04_008/ov_SC04_008_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F468[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80190CAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80190CDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80190CE0);\n uVar5 = (*(int*)&D_80190CE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F468);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F468[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80190CAC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_80190CDC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80190CE0);\n uVar5 = (*(int*)&D_80190CE4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F468);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC05_009/ov_SC05_009_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F468[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus3)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019584C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019587C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80195880);\n uVar5 = (*(int*)&D_80195884);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F468);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017F468[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019584C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019587C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_80195880);\n uVar5 = (*(int*)&D_80195884);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017F468);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.083, "objects": ["build/src/ov_SC06_022/ov_SC06_022_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DCBC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E0D54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E0D84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E0D88);\n uVar5 = (*(int*)&D_801E0D8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DCBC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018DCBC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801E0D54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801E0D84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801E0D88);\n uVar5 = (*(int*)&D_801E0D8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018DCBC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC06_027/ov_SC06_027_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E978[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019C074);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019C0A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019C0A8);\n uVar5 = (*(int*)&D_8019C0AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E978);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E978[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019C074);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019C0A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019C0A8);\n uVar5 = (*(int*)&D_8019C0AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E978);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_025/ov_SC06_025_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185638[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B009C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B00CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B00D0);\n uVar5 = (*(int*)&D_801B00D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185638);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80185638[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B009C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B00CC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B00D0);\n uVar5 = (*(int*)&D_801B00D4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80185638);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC06_029/ov_SC06_029_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018CF0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801DB994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801DB9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801DB9C8);\n uVar5 = (*(int*)&D_801DB9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018CF0C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018CF0C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801DB994);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801DB9C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801DB9C8);\n uVar5 = (*(int*)&D_801DB9CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018CF0C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC06_024/ov_SC06_024_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80190194[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801DFED4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801DFF04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801DFF08);\n uVar5 = (*(int*)&D_801DFF0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80190194);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80190194[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801DFED4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801DFF04);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801DFF08);\n uVar5 = (*(int*)&D_801DFF0C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80190194);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:41", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC06_030/ov_SC06_030_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801827FC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B8BF4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B8C24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8C28);\n uVar5 = (*(int*)&D_801B8C2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801827FC);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801827FC[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801B8BF4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801B8C24);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801B8C28);\n uVar5 = (*(int*)&D_801B8C2C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801827FC);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC06_032/ov_SC06_032_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80193CC8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CF2A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CF2D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CF2D8);\n uVar5 = (*(int*)&D_801CF2DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80193CC8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80193CC8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CF2A4);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CF2D4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CF2D8);\n uVar5 = (*(int*)&D_801CF2DC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80193CC8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.086, "objects": ["build/src/ov_SC06_033/ov_SC06_033_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801921D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CF364);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CF394);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CF398);\n uVar5 = (*(int*)&D_801CF39C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801921D8);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_801921D8[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CF364);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CF394);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CF398);\n uVar5 = (*(int*)&D_801CF39C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_801921D8);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.085, "objects": ["build/src/ov_SC07_000/ov_SC07_000_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183020[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CE8AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CE8DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CE8E0);\n uVar5 = (*(int*)&D_801CE8E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183020);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80183020[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801CE8AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801CE8DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801CE8E0);\n uVar5 = (*(int*)&D_801CE8E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80183020);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.087, "objects": ["build/src/ov_SC07_001/ov_SC07_001_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181ED0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A995C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A998C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A9990);\n uVar5 = (*(int*)&D_801A9994);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181ED0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_80181ED0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A995C);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A998C);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A9990);\n uVar5 = (*(int*)&D_801A9994);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_80181ED0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.08, "objects": ["build/src/ov_SC07_002/ov_SC07_002_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018718C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A4AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A4DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A4E0);\n uVar5 = (*(int*)&D_8019A4E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018718C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018718C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8019A4AC);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8019A4DC);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8019A4E0);\n uVar5 = (*(int*)&D_8019A4E4);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018718C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:42", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.089, "objects": ["build/src/ov_SC07_006/ov_SC07_006_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018ADB0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F4E54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F4E84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F4E88);\n uVar5 = (*(int*)&D_801F4E8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018ADB0);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8018ADB0[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801F4E54);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801F4E84);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801F4E88);\n uVar5 = (*(int*)&D_801F4E8C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8018ADB0);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:43", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.084, "objects": ["build/src/ov_SC07_008/ov_SC07_008_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017DCA4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80195394);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801953C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801953C8);\n uVar5 = (*(int*)&D_801953CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017DCA4);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017DCA4[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_80195394);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801953C4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801953C8);\n uVar5 = (*(int*)&D_801953CC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017DCA4);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:43", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": false, "includers": 0, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 1, "seconds": 0.088, "objects": ["build/src/ov_SC07_009/ov_SC07_009_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E748[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung B tus4)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A2A24);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A2A54);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A2A58);\n uVar5 = (*(int*)&D_801A2A5C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E748);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017E748[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_801A2A24);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_801A2A54);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_801A2A58);\n uVar5 = (*(int*)&D_801A2A5C);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017E748);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} +{"ts": "2026-09-10 15:46:43", "label": "c20p", "rung": "E", "calib": {"head": "9f2b6b24a", "stamp": "15956e4a96c4"}, "tu": "src/shared/ov/func_8013DD68__5d222fe2.h", "fn": "func_8013DD68", "addr": 2148785512, "aliases": null, "header": true, "includers": 3, "nhash_before": "25adb41155458a065f2ae31fe3eba05729843b78", "nhash_after": "304d1a1cd67647ffff0d682a49fc7bd3bb4ca331", "source": "propagate:src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c:func_8013DD68", "verdict": "LEVER-FREE", "sites": [], "compiles": 3, "seconds": 0.256, "objects": ["build/src/ov_SC03_126/ov_SC03_126_jr_8013C98C.o", "build/src/ov_SC04_021/ov_SC04_021_jr_8013C98C.o", "build/src/ov_SC05_019/ov_SC05_019_jr_8013C98C.o"], "before_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FC1C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n register u16 uVar2 __asm__(\"$3\"); // !FAKE: pin $3 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n int uVar5;\n register int iVar14 __asm__(\"$7\"); // !FAKE: pin $7 \u2014 NEEDED DIFFERS (P36 rung A headers2)\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E774);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E7A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E7A8);\n uVar5 = (*(int*)&D_8018E7AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n uVar2 = q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n *(u8 *)((int)puVar10 + -7) = (u8)uVar2;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FC1C);\n ((P_TAG_8013DD68 *)p)->addr = OTE->addr;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n", "after_text": "void func_8013DD68() {\n extern void SetDrawEnv(void *p, void *env);\n extern u16 D_800AF7B8;\n extern u8 D_800BA0E4[];\n extern u8 D_8017FC1C[];\n\n u32 *p;\n u16 uVar1;\n u16 *puVar16;\n u16 *q;\n u16 *puVar10;\n u16 uVar2;\n int uVar5;\n int iVar14;\n Buf_8013DD68 buf;\n u8 *pbase;\n u8 *base;\n\n pbase = D_800AF630;\n puVar16 = (*(u16 * *)&D_8018E774);\n p = (*(u32 * *)&D_800A5E60);\n uVar1 = *puVar16;\n puVar16 = puVar16 + 1;\n base = pbase + (u32)D_800AF7B8 * 0x5C;\n buf.env = *(DrawEnv_8013DD68 *)(base + 0x38);\n *((u8 *)&buf + 0x18) = 0;\n SetDrawEnv(p, &buf);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n iVar14 = 0;\n if (uVar1 != 0) {\n int c5 = 5;\n puVar10 = (u16 *)((int)p + 0x18);\n q = puVar16 + 8;\n do {\n *(u8 *)((int)puVar10 + -0x15) = c5;\n uVar2 = q[-6];\n *(u8 *)((int)puVar10 + -0xd) = 100;\n *(u8 *)((int)puVar10 + -0x10) = (u8)(*(int*)&D_8018E7A4);\n *(u8 *)((int)puVar10 + -0xf) = (u8)(*(int*)&D_8018E7A8);\n uVar5 = (*(int*)&D_8018E7AC);\n *(u32 *)((int)puVar10 + -0x14) = uVar2 & 0x9ff | 0xe1000400;\n *(u8 *)((int)puVar10 + -0xe) = (u8)uVar5;\n *(u16 *)((int)puVar10 + -0xc) = q[-4];\n iVar14 = iVar14 + 1;\n *(u16 *)((int)puVar10 + -0xa) = q[-3];\n *(u8 *)((int)puVar10 + -8) = (u8)*puVar16;\n *(u8 *)((int)puVar10 + -7) = (u8)q[-7];\n *(u16 *)((int)puVar10 + -6) = 0x7800;\n puVar16 = puVar16 + 8;\n *(u16 *)((int)puVar10 + -4) = q[-2];\n *(u16 *)((int)puVar10 + -2) = q[-1];\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n puVar10 = puVar10 + 0xc;\n OTE->addr = (u32)p;\n p = p + 6;\n q = q + 8;\n } while (iVar14 < (int)(u32)uVar1);\n }\n SetDrawEnv(p, D_8017FC1C);\n ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;\n OTE->addr = (u32)p;\n p = p + 0x10;\n (*(u32 * *)&D_800A5E60) = p;\n return;\n}\n"} diff --git a/docs/lever-progress.tsv b/docs/lever-progress.tsv index 372197fee..8b2e762de 100644 --- a/docs/lever-progress.tsv +++ b/docs/lever-progress.tsv @@ -36,3 +36,4 @@ date milestone head sites_AB pins asm bodies_AB distinct_AB marked unmarked gte_ 2026-09-10 S103: c14 func_801670E4 + c16 func_8013D178 (261 bodies); R23 widened 625251626 17715 10227 7488 4491 1243 17715 0 462 314 1590 50 7680 445 76 2026-09-10 S103: delever_regen R22+R23 over the whole residue — 17 classes / 22 bodies with no agent (header-TU scoring fixed) a06070572 17692 10204 7488 4469 1226 17692 0 462 314 1590 50 7680 445 76 2026-09-10 S103: c18 func_80176734 (128 bodies) 164825b5d 16273 9172 7101 4340 1225 16273 0 462 314 1590 50 7680 445 76 +2026-09-10 S103: c20 re-draw func_8013DD68 (128 bodies) 9f2b6b24a 16015 8914 7101 4211 1224 16015 0 462 314 1590 50 7680 445 76 diff --git a/docs/levers.md b/docs/levers.md index 706871882..cd0d58672 100644 --- a/docs/levers.md +++ b/docs/levers.md @@ -82,6 +82,7 @@ counted, not marked). E, F and G belong to the canonical type layer and are the | 2026-09-10 | S103: c14 func_801670E4 + c16 func_8013D178 (261 bodies); R23 widened | 10227 | 7488 | **17715** | 4491 | 1243 | 462 | 314 | 1590 | 50 | 7680 | 445 | 76 | `625251626` | | 2026-09-10 | S103: delever_regen R22+R23 over the whole residue — 17 classes / 22 bodies with no agent (header-TU scoring fixed) | 10204 | 7488 | **17692** | 4469 | 1226 | 462 | 314 | 1590 | 50 | 7680 | 445 | 76 | `a06070572` | | 2026-09-10 | S103: c18 func_80176734 (128 bodies) | 9172 | 7101 | **16273** | 4340 | 1225 | 462 | 314 | 1590 | 50 | 7680 | 445 | 76 | `164825b5d` | +| 2026-09-10 | S103: c20 re-draw func_8013DD68 (128 bodies) | 8914 | 7101 | **16015** | 4211 | 1224 | 462 | 314 | 1590 | 50 | 7680 | 445 | 76 | `9f2b6b24a` | ### The campaign — every batch, from the ledger (derived on every render) @@ -213,7 +214,9 @@ counted, not marked). E, F and G belong to the canonical type layer and are the | `s103_r22r23_hdrp` | 2026-09-10 | E | 0 | 0 | 0 | 1 | 1 | | `c18` | 2026-09-10 | E | 0 | 0 | 0 | 11 | 1 | | `c18p` | 2026-09-10 | E | 0 | 0 | 0 | 1,408 | 128 | -| **total** | | | **17,119** | **20,778** | **283** | **18,105** | **8,381** | +| `c20` | 2026-09-10 | E | 0 | 0 | 0 | 2 | 1 | +| `c20p` | 2026-09-10 | E | 0 | 0 | 0 | 256 | 128 | +| **total** | | | **17,119** | **20,778** | **283** | **18,363** | **8,510** | *Generated by `tools/lever_progress.py --render` from `.run/P36/census/lever_census.json` and `.run/P36/delever/ledger.jsonl`; the series lives in `docs/lever-progress.tsv` (R75: published numbers are generated, never typed).* diff --git a/phase-ends/CURRENT_PHASE.md b/phase-ends/CURRENT_PHASE.md index a8e686795..322b84e45 100644 --- a/phase-ends/CURRENT_PHASE.md +++ b/phase-ends/CURRENT_PHASE.md @@ -1477,6 +1477,19 @@ accumulate here as the phase produces them.** final body: 2 / 12 / 8 / 9 / 53 / 22. The free text's `dum[8]`, `pv`, `ix` stay (removing any scores 18-32). `apply-body … IDENTICAL … KEPT`; `--propagate: 128 of 128`. METHOD_S103 +2 entries. +- **S103 — T7 agent c20 (a RE-DRAW): `func_8013DD68` CLOSED (S102 read it to 2; now 0, 187/187; 128/128), and it + corrected the earlier reading on bytes (R14).** The move the earlier agent never tried: the addPrim copy reads the + ordering-table entry as a WHOLE WORD (`((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE;` instead of `OTE->addr`). A 24-bit + bit-field read ANDs with the mask (`expmed.c:1456-1471`) and the 24-bit store ANDs again (`:667-683`), so at FLOW time + the hoisted `0x00ffffff` mask has 3 loop-weighted uses (7 refs, `flow.c:2067`) — combine later merges the ANDs but + never lowers the count (`combine.c:55-57`). Priorities (alloc_table): mask 2413.8 before → 1724.1 after, below the + counter's 1728.4, so the counter takes `$a3` as in the target. With the earlier agent's own move 2 (the `q[-7]` store + inlined and moved above the `0x7800` store): 17 → 10 → 0. The earlier reading counted refs AFTER combine and so called + the swap reachable only by an extra ref on the counter. Its method note: `alloc_table` should show where refs come + from (flow-time vs final RTL). R22 `check-all: 218 passed, 0 failed of 218`; `lever_census --check: 16,015 pin/asm + sites, 16,015 marked !FAKE, 0 UNMARKED — OK`. Census for a generator: the `->addr = ->addr` copy occurs in 37 residue + classes / 41 bodies. + ## 🛑 SESSION CHECKPOINT — S103 (2026-09-10): T0–T6 ☑, **T7 RUNNING — the agent lane at FIVE, every landing harvested**. 24,119 → **16,273 sites** (−7,846) in this session; 20 agent draws (14 closed = 15 functions incl. a twin pair, 1 read without closing, 5 in flight at writing; c5/c6 relaunched on Opus after Fable ran out of credits) + 17 classes closed by generators alone (`delever_regen`); generators **R22, R23** added and R23 widened; `--try` learned header TUs; CI's `verbatim_check` fixed and wired into tools-health; R22 `check-all: 218 passed, 0 failed of 218` at every bank | `lever_census --check` OK (16,273 marked, 0 UNMARKED) · `lever_progress --check` OK (37 milestones) · last commit `750797a04` ### 0. How to use this block diff --git a/src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c b/src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c index 644fa158d..37662e0e9 100644 --- a/src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c +++ b/src/ov_SC01_000/ov_SC01_000_jr_8013C98C.c @@ -1702,9 +1702,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1718,7 +1718,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1739,13 +1739,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1753,7 +1752,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F5AC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c b/src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c index 3a0bc44c9..e0b7c2b3d 100644 --- a/src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c +++ b/src/ov_SC01_001/ov_SC01_001_jr_8013C98C.c @@ -1692,9 +1692,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1708,7 +1708,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1729,13 +1729,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1743,7 +1742,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801841FC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c b/src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c index 932dc613c..8868c8ba4 100644 --- a/src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c +++ b/src/ov_SC01_004/ov_SC01_004_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017FBC0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c b/src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c index 21dafa258..e0683e750 100644 --- a/src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c +++ b/src/ov_SC01_005/ov_SC01_005_jr_8013C98C.c @@ -1692,9 +1692,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1708,7 +1708,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1729,13 +1729,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1743,7 +1742,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182D54); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c b/src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c index 8fbe5844a..94e87cd4a 100644 --- a/src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c +++ b/src/ov_SC01_008/ov_SC01_008_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80180134); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c b/src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c index 55a6d38ba..ee554db6d 100644 --- a/src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c +++ b/src/ov_SC01_009/ov_SC01_009_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018331C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c b/src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c index f31c59ac3..536d37f8c 100644 --- a/src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c +++ b/src/ov_SC01_074/ov_SC01_074_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EF9C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c b/src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c index a5a211305..48bf942c4 100644 --- a/src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c +++ b/src/ov_SC01_080/ov_SC01_080_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183EFC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c b/src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c index d86b14394..1b7a019a1 100644 --- a/src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c +++ b/src/ov_SC01_084/ov_SC01_084_jr_8013C98C.c @@ -1696,9 +1696,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1712,7 +1712,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1733,13 +1733,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1747,7 +1746,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801871F0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c b/src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c index 5c96ea1be..2a03d13c0 100644 --- a/src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c +++ b/src/ov_SC02_000/ov_SC02_000_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018B5A0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c b/src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c index c92236ef2..6e99fc71e 100644 --- a/src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c +++ b/src/ov_SC02_004/ov_SC02_004_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017E680); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c b/src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c index 00d4779db..812776c29 100644 --- a/src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c +++ b/src/ov_SC02_005/ov_SC02_005_jr_8013C98C.c @@ -1696,9 +1696,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1712,7 +1712,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1733,13 +1733,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1747,7 +1746,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80191284); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c b/src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c index 2268a686c..329201c1b 100644 --- a/src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c +++ b/src/ov_SC02_011/ov_SC02_011_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801916D4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c b/src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c index cfac7fdd4..761242adb 100644 --- a/src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c +++ b/src/ov_SC02_015/ov_SC02_015_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EBE8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c b/src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c index 8d87ab166..8297275d4 100644 --- a/src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c +++ b/src/ov_SC02_016/ov_SC02_016_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80184E20); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c b/src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c index 799c23ea3..73cf70c40 100644 --- a/src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c +++ b/src/ov_SC02_017/ov_SC02_017_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018AE78); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c b/src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c index c6a62851b..1dae7ce79 100644 --- a/src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c +++ b/src/ov_SC02_021/ov_SC02_021_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018046C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c b/src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c index 7ba13f554..08dba8516 100644 --- a/src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c +++ b/src/ov_SC02_026/ov_SC02_026_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80186AC0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c b/src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c index 99e8b5b56..e88682503 100644 --- a/src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c +++ b/src/ov_SC02_027/ov_SC02_027_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018BBE4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c b/src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c index 5b60a08a4..7bd66176f 100644 --- a/src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c +++ b/src/ov_SC02_028/ov_SC02_028_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018BDE8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c b/src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c index bdf579565..0d2de47eb 100644 --- a/src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c +++ b/src/ov_SC02_031/ov_SC02_031_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185614); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c b/src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c index b79069bf4..d34cfcc9b 100644 --- a/src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c +++ b/src/ov_SC02_035/ov_SC02_035_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80184E74); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c b/src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c index 5bbfa79e6..7448013c9 100644 --- a/src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c +++ b/src/ov_SC02_037/ov_SC02_037_jr_8013C98C.c @@ -1667,9 +1667,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1683,7 +1683,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1704,13 +1704,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1718,7 +1717,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801845B0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c b/src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c index 3e76af023..fefdb60e7 100644 --- a/src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c +++ b/src/ov_SC02_039/ov_SC02_039_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017FAA0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c b/src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c index 4aab4087d..76c5468d2 100644 --- a/src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c +++ b/src/ov_SC02_041/ov_SC02_041_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185770); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c b/src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c index 12f760d64..ae00cbb22 100644 --- a/src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c +++ b/src/ov_SC03_001/ov_SC03_001_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018DEB0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c b/src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c index 9285284d9..4dc7304a5 100644 --- a/src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c +++ b/src/ov_SC03_002/ov_SC03_002_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185EA0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c b/src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c index e89ea7150..4d5462b4b 100644 --- a/src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c +++ b/src/ov_SC03_003/ov_SC03_003_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017FC68); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c b/src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c index 968781e5c..9ab423166 100644 --- a/src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c +++ b/src/ov_SC03_006/ov_SC03_006_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018CF84); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c b/src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c index a240128dd..4bb775939 100644 --- a/src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c +++ b/src/ov_SC03_007/ov_SC03_007_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80187D7C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c b/src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c index a29401556..4228aeb0e 100644 --- a/src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c +++ b/src/ov_SC03_010/ov_SC03_010_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018089C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c b/src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c index cbd99018c..59460ccc4 100644 --- a/src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c +++ b/src/ov_SC03_011/ov_SC03_011_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80181C0C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c b/src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c index c799a21e2..31e7d53a8 100644 --- a/src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c +++ b/src/ov_SC03_012/ov_SC03_012_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EAEC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c b/src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c index a278009af..a10588bb2 100644 --- a/src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c +++ b/src/ov_SC03_013/ov_SC03_013_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801818D4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c b/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c index a200c6507..881c1971a 100644 --- a/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c +++ b/src/ov_SC03_014/ov_SC03_014_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018BF10); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c b/src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c index 34b524fce..84de0a03f 100644 --- a/src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c +++ b/src/ov_SC03_023/ov_SC03_023_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F88C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c b/src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c index b752f5b35..cd9dbcd6a 100644 --- a/src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c +++ b/src/ov_SC03_024/ov_SC03_024_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801878B0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c b/src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c index ac97e521f..ef855b134 100644 --- a/src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c +++ b/src/ov_SC03_028/ov_SC03_028_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018C37C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c b/src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c index 813160d7e..92e6d1fe0 100644 --- a/src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c +++ b/src/ov_SC03_029/ov_SC03_029_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801881B4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c b/src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c index 251ff1cf9..803afc355 100644 --- a/src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c +++ b/src/ov_SC03_030/ov_SC03_030_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801827F0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c b/src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c index 90c35972f..8084f0b5f 100644 --- a/src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c +++ b/src/ov_SC03_031/ov_SC03_031_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182D0C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c b/src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c index 79373ed91..ead70527b 100644 --- a/src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c +++ b/src/ov_SC03_089/ov_SC03_089_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018A008); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c b/src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c index 6f5cbb7d6..29aacacaa 100644 --- a/src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c +++ b/src/ov_SC03_090/ov_SC03_090_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018C42C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c b/src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c index 9d66bcff0..d42ba419f 100644 --- a/src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c +++ b/src/ov_SC03_091/ov_SC03_091_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018D2D4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c b/src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c index 2d03864cc..4ef15facb 100644 --- a/src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c +++ b/src/ov_SC03_092/ov_SC03_092_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801856A4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c b/src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c index 227802156..9ad7d125a 100644 --- a/src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c +++ b/src/ov_SC03_093/ov_SC03_093_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018687C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c b/src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c index 80cfd6134..dc1a78e2e 100644 --- a/src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c +++ b/src/ov_SC03_094/ov_SC03_094_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80188278); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c b/src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c index 485b58d3e..14819f3c4 100644 --- a/src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c +++ b/src/ov_SC03_095/ov_SC03_095_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801818D8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c b/src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c index 384e08c3d..1dec4904f 100644 --- a/src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c +++ b/src/ov_SC03_096/ov_SC03_096_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80181458); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c b/src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c index 1dccf1e8a..29dff9bf2 100644 --- a/src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c +++ b/src/ov_SC03_097/ov_SC03_097_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80186838); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c b/src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c index f5fba3e96..1c3f066eb 100644 --- a/src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c +++ b/src/ov_SC03_098/ov_SC03_098_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185CC4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c b/src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c index 42c47975e..6cc90dd37 100644 --- a/src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c +++ b/src/ov_SC03_099/ov_SC03_099_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183DC4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c b/src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c index ded20c3d8..ed8b6c2c4 100644 --- a/src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c +++ b/src/ov_SC03_100/ov_SC03_100_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185290); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c b/src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c index 2bfa2055e..5ba553a3c 100644 --- a/src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c +++ b/src/ov_SC03_101/ov_SC03_101_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018426C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c b/src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c index 6bf6fa4af..4eee14910 100644 --- a/src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c +++ b/src/ov_SC03_102/ov_SC03_102_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80186B24); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c b/src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c index ea31a523d..3f3c74161 100644 --- a/src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c +++ b/src/ov_SC03_103/ov_SC03_103_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80184AD4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c b/src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c index 81a589c58..031bf118f 100644 --- a/src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c +++ b/src/ov_SC03_104/ov_SC03_104_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018B664); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c b/src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c index 88117d318..7848703e9 100644 --- a/src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c +++ b/src/ov_SC03_105/ov_SC03_105_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018ACEC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c b/src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c index 441761af0..72ad2944d 100644 --- a/src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c +++ b/src/ov_SC03_107/ov_SC03_107_jr_8013C98C.c @@ -1657,9 +1657,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1673,7 +1673,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1694,13 +1694,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1708,7 +1707,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182E4C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c b/src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c index 339c7bea2..40ced2e09 100644 --- a/src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c +++ b/src/ov_SC03_108/ov_SC03_108_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80181644); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c b/src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c index 3f233d0c9..a4a159fc8 100644 --- a/src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c +++ b/src/ov_SC03_109/ov_SC03_109_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017ECF0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c b/src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c index 3156c1125..f65731be7 100644 --- a/src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c +++ b/src/ov_SC03_110/ov_SC03_110_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182710); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c b/src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c index faea27205..fddc165d2 100644 --- a/src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c +++ b/src/ov_SC03_111/ov_SC03_111_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801852C4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c b/src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c index f0ed164a4..c321e6b59 100644 --- a/src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c +++ b/src/ov_SC03_112/ov_SC03_112_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801860CC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c b/src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c index 8c9c05a83..33fafb784 100644 --- a/src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c +++ b/src/ov_SC03_113/ov_SC03_113_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018377C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c b/src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c index 65d720cf3..869452601 100644 --- a/src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c +++ b/src/ov_SC03_114/ov_SC03_114_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F3E4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c b/src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c index 9958112ca..19b559b95 100644 --- a/src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c +++ b/src/ov_SC03_115/ov_SC03_115_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80180E50); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c b/src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c index 414828fe8..f521398de 100644 --- a/src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c +++ b/src/ov_SC03_116/ov_SC03_116_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183254); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c b/src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c index 857c5474c..b31629b7b 100644 --- a/src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c +++ b/src/ov_SC03_117/ov_SC03_117_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185260); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c b/src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c index a127d300d..52bd11668 100644 --- a/src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c +++ b/src/ov_SC03_118/ov_SC03_118_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018A30C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c b/src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c index d92973b13..6d8e19859 100644 --- a/src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c +++ b/src/ov_SC03_121/ov_SC03_121_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182B28); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c b/src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c index a282a8b88..7c1f2df2b 100644 --- a/src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c +++ b/src/ov_SC03_124/ov_SC03_124_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018B554); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c b/src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c index 3ac78485c..5203e5b6c 100644 --- a/src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c +++ b/src/ov_SC03_125/ov_SC03_125_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80184724); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c b/src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c index 492c65be7..a52c0e69b 100644 --- a/src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c +++ b/src/ov_SC04_000/ov_SC04_000_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183C28); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c b/src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c index da906ca22..fd713a220 100644 --- a/src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c +++ b/src/ov_SC04_002/ov_SC04_002_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80188D94); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c b/src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c index e36d50cf0..b2d8c42c9 100644 --- a/src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c +++ b/src/ov_SC04_003/ov_SC04_003_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182B30); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c b/src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c index d562f308d..7d800d54d 100644 --- a/src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c +++ b/src/ov_SC04_004/ov_SC04_004_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185064); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c b/src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c index 2c7df48b4..d845e47a8 100644 --- a/src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c +++ b/src/ov_SC04_005/ov_SC04_005_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80188498); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c b/src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c index 46854f78a..57b04d588 100644 --- a/src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c +++ b/src/ov_SC04_006/ov_SC04_006_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80180578); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c b/src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c index 569005d41..7a488c22c 100644 --- a/src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c +++ b/src/ov_SC04_007/ov_SC04_007_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80186530); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c b/src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c index f6cda6222..630b8586f 100644 --- a/src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c +++ b/src/ov_SC04_008/ov_SC04_008_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F468); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c b/src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c index 1aedec1ed..2396cc03a 100644 --- a/src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c +++ b/src/ov_SC04_009/ov_SC04_009_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F494); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c b/src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c index e3094dff1..c9d16e289 100644 --- a/src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c +++ b/src/ov_SC04_010/ov_SC04_010_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EB40); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c b/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c index f124fa3b7..60da73b20 100644 --- a/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c +++ b/src/ov_SC04_011/ov_SC04_011_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B t3_tus1) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B t3_tus1) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80190DD0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c b/src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c index 456a50baf..cb617e947 100644 --- a/src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c +++ b/src/ov_SC04_012/ov_SC04_012_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EFA4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c b/src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c index 0ce794654..c4b17cc5b 100644 --- a/src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c +++ b/src/ov_SC04_015/ov_SC04_015_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80184EDC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c b/src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c index 16bfb381a..3f451afa6 100644 --- a/src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c +++ b/src/ov_SC04_016/ov_SC04_016_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801809A0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c b/src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c index ee8ac7a57..66fffe720 100644 --- a/src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c +++ b/src/ov_SC04_018/ov_SC04_018_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018DBB8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c b/src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c index a093cf1c7..8778061d8 100644 --- a/src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c +++ b/src/ov_SC04_020/ov_SC04_020_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183CF0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c b/src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c index 1849b663d..6b558713e 100644 --- a/src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c +++ b/src/ov_SC05_000/ov_SC05_000_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017EC30); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c b/src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c index fc527c7ae..1173472b4 100644 --- a/src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c +++ b/src/ov_SC05_001/ov_SC05_001_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018640C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c b/src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c index 5d98ddcd9..953d1dd81 100644 --- a/src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c +++ b/src/ov_SC05_002/ov_SC05_002_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80180BCC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c b/src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c index 70bd672e8..6cee13077 100644 --- a/src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c +++ b/src/ov_SC05_003/ov_SC05_003_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182F04); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c b/src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c index 179f58617..bd4e632c3 100644 --- a/src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c +++ b/src/ov_SC05_004/ov_SC05_004_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182010); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c b/src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c index 70a9d7d3a..f92b75773 100644 --- a/src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c +++ b/src/ov_SC05_005/ov_SC05_005_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182DE4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c b/src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c index 7c775c1ab..5aeef07c6 100644 --- a/src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c +++ b/src/ov_SC05_006/ov_SC05_006_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017FE04); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c b/src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c index e4a4761e1..3a43fdb56 100644 --- a/src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c +++ b/src/ov_SC05_007/ov_SC05_007_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80181400); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c b/src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c index d312abb34..d369e3646 100644 --- a/src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c +++ b/src/ov_SC05_008/ov_SC05_008_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183358); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c b/src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c index 2a00c9f5b..a235caa45 100644 --- a/src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c +++ b/src/ov_SC05_009/ov_SC05_009_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F468); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c b/src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c index 5a6812807..1dccad927 100644 --- a/src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c +++ b/src/ov_SC05_010/ov_SC05_010_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80189344); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c b/src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c index d875749c8..a7d95b0eb 100644 --- a/src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c +++ b/src/ov_SC05_011/ov_SC05_011_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017E6BC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c b/src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c index 25dd1a697..e2c2407a8 100644 --- a/src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c +++ b/src/ov_SC05_017/ov_SC05_017_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018DB7C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c b/src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c index 84c8f0787..117331fd1 100644 --- a/src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c +++ b/src/ov_SC05_018/ov_SC05_018_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801872D8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c b/src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c index abac02504..7de9754dc 100644 --- a/src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c +++ b/src/ov_SC06_000/ov_SC06_000_jr_8013C98C.c @@ -1696,9 +1696,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1712,7 +1712,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1733,13 +1733,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1747,7 +1746,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80188C2C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c b/src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c index fb3a34f65..f187e5e2c 100644 --- a/src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c +++ b/src/ov_SC06_006/ov_SC06_006_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80182750); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c b/src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c index 4afa00868..6c982b96a 100644 --- a/src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c +++ b/src/ov_SC06_008/ov_SC06_008_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801861B8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c b/src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c index e74127fc8..6c8d83de6 100644 --- a/src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c +++ b/src/ov_SC06_010/ov_SC06_010_jr_8013C98C.c @@ -1694,9 +1694,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1710,7 +1710,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1731,13 +1731,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1745,7 +1744,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80187394); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c b/src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c index a95c89d19..b77b73778 100644 --- a/src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c +++ b/src/ov_SC06_011/ov_SC06_011_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80180DF4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c b/src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c index 86d540a0a..caf687c75 100644 --- a/src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c +++ b/src/ov_SC06_013/ov_SC06_013_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F570); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c b/src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c index 29dc09bf1..8a748611e 100644 --- a/src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c +++ b/src/ov_SC06_014/ov_SC06_014_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801808D4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c b/src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c index bfefbdcc6..2957b28ca 100644 --- a/src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c +++ b/src/ov_SC06_015/ov_SC06_015_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017F42C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c b/src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c index d46a63c39..526be7a02 100644 --- a/src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c +++ b/src/ov_SC06_016/ov_SC06_016_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018583C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c b/src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c index 1618fa09b..ecfd9993c 100644 --- a/src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c +++ b/src/ov_SC06_018/ov_SC06_018_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80193F78); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c b/src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c index 8045463dc..9e6f8e0ec 100644 --- a/src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c +++ b/src/ov_SC06_020/ov_SC06_020_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus3) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus3) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185A00); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c b/src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c index 69b159eff..7a5f39376 100644 --- a/src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c +++ b/src/ov_SC06_022/ov_SC06_022_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018DCBC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c b/src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c index 136bb8b70..f190a5a57 100644 --- a/src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c +++ b/src/ov_SC06_024/ov_SC06_024_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80190194); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c b/src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c index 1eee80bb5..fc64da809 100644 --- a/src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c +++ b/src/ov_SC06_025/ov_SC06_025_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80185638); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c b/src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c index 78cc0141c..4e2413b3c 100644 --- a/src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c +++ b/src/ov_SC06_027/ov_SC06_027_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017E978); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c b/src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c index 892514651..203632fad 100644 --- a/src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c +++ b/src/ov_SC06_029/ov_SC06_029_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018CF0C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c b/src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c index 5663f58ff..69d8c6bef 100644 --- a/src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c +++ b/src/ov_SC06_030/ov_SC06_030_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801827FC); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c b/src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c index 0c8764b64..d898df747 100644 --- a/src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c +++ b/src/ov_SC06_032/ov_SC06_032_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80193CC8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c b/src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c index 955da826a..e3a7bd7d3 100644 --- a/src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c +++ b/src/ov_SC06_033/ov_SC06_033_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_801921D8); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c b/src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c index 04b00480d..227445b8f 100644 --- a/src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c +++ b/src/ov_SC07_000/ov_SC07_000_jr_8013C98C.c @@ -1693,9 +1693,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1709,7 +1709,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1730,13 +1730,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1744,7 +1743,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80183020); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c b/src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c index 765bce2c3..c440ab88b 100644 --- a/src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c +++ b/src/ov_SC07_001/ov_SC07_001_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_80181ED0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c b/src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c index 3ba1daed8..c33b04f0f 100644 --- a/src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c +++ b/src/ov_SC07_002/ov_SC07_002_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018718C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c b/src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c index 8173d4cc5..99572f39b 100644 --- a/src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c +++ b/src/ov_SC07_006/ov_SC07_006_jr_8013C98C.c @@ -1613,9 +1613,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1629,7 +1629,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1650,13 +1650,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1664,7 +1663,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8018ADB0); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c b/src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c index 60906519b..1e2836fca 100644 --- a/src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c +++ b/src/ov_SC07_008/ov_SC07_008_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017DCA4); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c b/src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c index ba05c2b5c..8880129dd 100644 --- a/src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c +++ b/src/ov_SC07_009/ov_SC07_009_jr_8013C98C.c @@ -1691,9 +1691,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung B tus4) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung B tus4) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -1707,7 +1707,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -1728,13 +1728,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -1742,7 +1741,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017E748); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p; diff --git a/src/shared/ov/func_8013DD68__5d222fe2.h b/src/shared/ov/func_8013DD68__5d222fe2.h index 9a9f19932..1d323d16b 100644 --- a/src/shared/ov/func_8013DD68__5d222fe2.h +++ b/src/shared/ov/func_8013DD68__5d222fe2.h @@ -11,9 +11,9 @@ void func_8013DD68() { u16 *puVar16; u16 *q; u16 *puVar10; - register u16 uVar2 __asm__("$3"); // !FAKE: pin $3 — NEEDED DIFFERS (P36 rung A headers2) + u16 uVar2; int uVar5; - register int iVar14 __asm__("$7"); // !FAKE: pin $7 — NEEDED DIFFERS (P36 rung A headers2) + int iVar14; Buf_8013DD68 buf; u8 *pbase; u8 *base; @@ -27,7 +27,7 @@ void func_8013DD68() { buf.env = *(DrawEnv_8013DD68 *)(base + 0x38); *((u8 *)&buf + 0x18) = 0; SetDrawEnv(p, &buf); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; iVar14 = 0; @@ -48,13 +48,12 @@ void func_8013DD68() { iVar14 = iVar14 + 1; *(u16 *)((int)puVar10 + -0xa) = q[-3]; *(u8 *)((int)puVar10 + -8) = (u8)*puVar16; - uVar2 = q[-7]; + *(u8 *)((int)puVar10 + -7) = (u8)q[-7]; *(u16 *)((int)puVar10 + -6) = 0x7800; - *(u8 *)((int)puVar10 + -7) = (u8)uVar2; puVar16 = puVar16 + 8; *(u16 *)((int)puVar10 + -4) = q[-2]; *(u16 *)((int)puVar10 + -2) = q[-1]; - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; puVar10 = puVar10 + 0xc; OTE->addr = (u32)p; p = p + 6; @@ -62,7 +61,7 @@ void func_8013DD68() { } while (iVar14 < (int)(u32)uVar1); } SetDrawEnv(p, D_8017FC1C); - ((P_TAG_8013DD68 *)p)->addr = OTE->addr; + ((P_TAG_8013DD68 *)p)->addr = *(u32 *)OTE; OTE->addr = (u32)p; p = p + 0x10; (*(u32 * *)&D_800A5E60) = p;