From aa08e3c183b95b2ccf3e1ebf8e8dfca6f04dd5fb Mon Sep 17 00:00:00 2001 From: Martin Michelsen Date: Sun, 19 Jan 2025 14:56:53 -0800 Subject: [PATCH] write xbox draw distance patch --- .../DrawDistance/DrawDistance.4OED.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OEU.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OJB.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OJD.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OJU.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OPD.patch.s | 118 ++++++++++++++++++ .../DrawDistance/DrawDistance.4OPU.patch.s | 118 ++++++++++++++++++ 7 files changed, 826 insertions(+) create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OED.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OEU.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OJB.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OJD.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OJU.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OPD.patch.s create mode 100644 system/client-functions/DrawDistance/DrawDistance.4OPU.patch.s diff --git a/system/client-functions/DrawDistance/DrawDistance.4OED.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OED.patch.s new file mode 100644 index 00000000..c74276f1 --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OED.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x001737C2 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173A42 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3DEF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3E38 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D2DC8 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D2EA7 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x00156AC8 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E877010000 # call p4_2s + nop +p4_1e: + .data 0x00156C44 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E2B93 # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E8EA000000 # call p5_3s +p5_1e: + .data 0x002E1FD1 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8AC0C0000 # call p5_3s +p5_2e: + .data 0x002E2C82 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053A9CC] + ret +p5_3e: + + .data 0x004920A0 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x0042D0A0 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x0049222C # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x0042B838 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D9736 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9748 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OEU.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OEU.patch.s new file mode 100644 index 00000000..89cec106 --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OEU.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x001737D2 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173A52 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3EEF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3F38 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D3148 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D3227 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x002D32A8 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E807010000 # call p4_2s + nop +p4_1e: + .data 0x002D33B4 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E2E8C # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E840010000 # call p5_3s +p5_1e: + .data 0x002E2404 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8C80B0000 # call p5_3s +p5_2e: + .data 0x002E2FD1 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053A26C] + ret +p5_3e: + + .data 0x00491940 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x0042C940 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x00491ACC # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x0042B0D8 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D9936 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9948 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OJB.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OJB.patch.s new file mode 100644 index 00000000..dff06c1d --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OJB.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x00173692 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173912 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3BBF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3C08 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D0E68 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D0F47 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x001569E8 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E877010000 # call p4_2s + nop +p4_1e: + .data 0x00156B64 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E0C33 # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E8EA000000 # call p5_3s +p5_1e: + .data 0x002E0071 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8AC0C0000 # call p5_3s +p5_2e: + .data 0x002E0D22 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x00535BAC] + ret +p5_3e: + + .data 0x0048D4F0 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x00428DC0 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x0048D67C # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x00427558 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D95F6 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9608 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OJD.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OJD.patch.s new file mode 100644 index 00000000..1d5215ff --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OJD.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x00173782 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173A02 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3DBF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3E08 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D1A28 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D1B07 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x00156A78 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E877010000 # call p4_2s + nop +p4_1e: + .data 0x00156BF4 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E17B3 # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E8EA000000 # call p5_3s +p5_1e: + .data 0x002E0BF1 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8AC0C0000 # call p5_3s +p5_2e: + .data 0x002E18A2 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053622C] + ret +p5_3e: + + .data 0x0048DC88 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x00429130 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x0048DE14 # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x004278C8 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D9746 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9758 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OJU.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OJU.patch.s new file mode 100644 index 00000000..ae3dbe4a --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OJU.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x00173862 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173AE2 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3FDF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A4028 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D32F8 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D33D7 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x00156AB8 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E877010000 # call p4_2s + nop +p4_1e: + .data 0x00156C34 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E2E6C # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E840010000 # call p5_3s +p5_1e: + .data 0x002E23E4 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8C80B0000 # call p5_3s +p5_2e: + .data 0x002E2FB1 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053D54C] + ret +p5_3e: + + .data 0x00494C30 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x0042C940 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x00494DBC # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x0042B0D8 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D9BC6 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9BD8 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OPD.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OPD.patch.s new file mode 100644 index 00000000..4b0abfce --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OPD.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x001737E2 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173A62 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3E0F # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3E58 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D2DF8 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D2ED7 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x00156AE8 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E877010000 # call p4_2s + nop +p4_1e: + .data 0x00156C64 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E2BC3 # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E8EA000000 # call p5_3s +p5_1e: + .data 0x002E2001 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8AC0C0000 # call p5_3s +p5_2e: + .data 0x002E2CB2 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053A9CC] + ret +p5_3e: + + .data 0x004920A8 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x0042D0C0 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x00492234 # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x0042B858 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D9756 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D9768 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000 diff --git a/system/client-functions/DrawDistance/DrawDistance.4OPU.patch.s b/system/client-functions/DrawDistance/DrawDistance.4OPU.patch.s new file mode 100644 index 00000000..8d68b2cc --- /dev/null +++ b/system/client-functions/DrawDistance/DrawDistance.4OPU.patch.s @@ -0,0 +1,118 @@ +.meta name="Draw Distance" +.meta description="Extends the draw\ndistance of many\nobjects" +# Original code by Ralf @ GC-Forever and Aleron Ives +# https://www.gc-forever.com/forums/viewtopic.php?t=2050 +# https://www.gc-forever.com/forums/viewtopic.php?t=2049 +# Xbox port by fuzziqersoftware + +entry_ptr: +reloc0: + .offsetof start +start: + .include WriteCodeBlocksXB + + .data 0x00173792 # From 3OE1:80100B8C + .deltaof p1_1s, p1_1e +p1_1s: + .binary E87B020000 # call p1_2s + nop +p1_1e: + .data 0x00173A12 + .deltaof p1_2s, p1_2e +p1_2s: + fld st0, dword [esp + 0x20] + fadd st0, st0 + fchs st0 + ret +p1_2e: + + .data 0x001A3ECF # From 3OE1:80156AD8 + .deltaof p2_1s, p2_1e +p2_1s: + .binary E844000000 # call p2_2s +p2_1e: + .data 0x001A3F18 + .deltaof p2_2s, p2_2e +p2_2s: + fld st0, dword [ecx + 0x1C] + fadd st0, st0 + fld st0, st1 + ret +p2_2e: + + .data 0x002D31C8 # From 3OE1:801A2040 + .deltaof p3_1s, p3_1e +p3_1s: + .binary E8DA000000 # call p3_2s + nop +p3_1e: + .data 0x002D32A7 + .deltaof p3_2s, p3_2e +p3_2s: + fld st0, dword [esp + 0x24] + fadd st0, st0 + fchs st0 + ret +p3_2e: + + .data 0x002D3328 # From 3OE1:801A2240 + .deltaof p4_1s, p4_1e +p4_1s: + .binary E807010000 # call p4_2s + nop +p4_1e: + .data 0x002D3434 + .deltaof p4_2s, p4_2e +p4_2s: + fld st0, dword [esp + 0x28] + fadd st0, st0 + fchs st0 + ret +p4_2e: + + .data 0x002E2EBC # From 3OE1:80205840 + .deltaof p5_1s, p5_1e +p5_1s: + .binary E840010000 # call p5_3s +p5_1e: + .data 0x002E2434 # From 3OE1:80205FE4 + .deltaof p5_2s, p5_2e +p5_2s: + .binary E8C80B0000 # call p5_3s +p5_2e: + .data 0x002E3001 + .deltaof p5_3s, p5_3e +p5_3s: + fld st0, dword [eax + 0x0C] + fadd st0, st0 + fstp dword [eax + 0x0C], st0 + mov eax, [0x0053AD6C] + ret +p5_3e: + + .data 0x00492440 # From 3OE1:805CFCD0 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x0042D450 # From 3OE1:805D0B7C + .data 0x00000004 + .data 0x437A0000 + + .data 0x004925CC # From 3OE1:805D11A4 + .data 0x00000004 + .data 0x491C4000 + + .data 0x0042BBE8 # From 3OE1:805D2030 + .data 0x00000004 + .data 0x47AFC800 + + .data 0x001D98A6 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x001D98B8 # From 3OE1:805D25C0 + .data 0x00000004 + .data 0x44AF0000 + + .data 0x00000000 + .data 0x00000000