mirror of
https://github.com/khanhduytran0/coruna.git
synced 2026-07-12 15:06:38 +02:00
Fix 7: LLC bus error panic
This commit is contained in:
@@ -16221,7 +16221,7 @@ unsigned int *__fastcall sub_19ACC(__int64 *a1, __int64 *a2)
|
|||||||
|
|
||||||
v5[0] = a1;
|
v5[0] = a1;
|
||||||
v5[1] = a2;
|
v5[1] = a2;
|
||||||
v5[2] = (_QWORD *)&dword_4;
|
v5[2] = (_QWORD *)4;
|
||||||
v6 = sub_197A8(v5, 1);
|
v6 = sub_197A8(v5, 1);
|
||||||
result = (unsigned int *)v6.addr;
|
result = (unsigned int *)v6.addr;
|
||||||
if ( result )
|
if ( result )
|
||||||
@@ -16244,7 +16244,7 @@ unsigned __int64 __fastcall sub_19B30(__int64 *a1, __int64 *a2)
|
|||||||
|
|
||||||
v5[0] = a1;
|
v5[0] = a1;
|
||||||
v5[1] = a2;
|
v5[1] = a2;
|
||||||
v5[2] = (_QWORD *)&dword_8;
|
v5[2] = (_QWORD *)8;
|
||||||
v6 = sub_197A8(v5, 1);
|
v6 = sub_197A8(v5, 1);
|
||||||
result = v6.addr;
|
result = v6.addr;
|
||||||
if ( result )
|
if ( result )
|
||||||
@@ -19681,19 +19681,18 @@ char *__fastcall sub_1E728(__int64 *a1)
|
|||||||
//----- (000000000001E800) ----------------------------------------------------
|
//----- (000000000001E800) ----------------------------------------------------
|
||||||
char *__fastcall sub_1E800(__int64 *a1, __int64 *a2)
|
char *__fastcall sub_1E800(__int64 *a1, __int64 *a2)
|
||||||
{
|
{
|
||||||
unsigned int v3; // w0
|
unsigned int insn; // w0
|
||||||
unsigned __int64 v4; // x8
|
__int64 imm26; // x8
|
||||||
|
|
||||||
v3 = (unsigned int)sub_19ACC(a1, a2);
|
insn = (unsigned int)sub_19ACC(a1, a2);
|
||||||
if ( (v3 & 0x7C000000) != 0x14000000 )
|
if ( (insn & 0x7C000000) != 0x14000000 )
|
||||||
return 0;
|
return 0;
|
||||||
v4 = *(_QWORD *)&v3 | 0xFFFFFFFFFE000000LL;
|
imm26 = insn & 0x1FFFFFF;
|
||||||
if ( (v3 & 0x2000000) == 0 )
|
if ( (insn & 0x2000000) != 0 )
|
||||||
v4 = v3 & 0x1FFFFFF;
|
imm26 |= 0xFFFFFFFFFE000000LL;
|
||||||
if ( v4 )
|
if ( !imm26 )
|
||||||
return (char *)a2 + 4 * v4;
|
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
|
return (char *)a2 + 4 * imm26;
|
||||||
}
|
}
|
||||||
|
|
||||||
//----- (000000000001E854) ----------------------------------------------------
|
//----- (000000000001E854) ----------------------------------------------------
|
||||||
@@ -22099,14 +22098,16 @@ double __fastcall sub_2183C(__int64 a1, unsigned __int64 a2, __int64 a3)
|
|||||||
unsigned __int64 __fastcall sub_21844(__int64 a1, unsigned __int64 a2)
|
unsigned __int64 __fastcall sub_21844(__int64 a1, unsigned __int64 a2)
|
||||||
{
|
{
|
||||||
int v4; // w0
|
int v4; // w0
|
||||||
_OWORD v6[2]; // [xsp+0h] [xbp-40h] BYREF
|
struct
|
||||||
volatile __int64 v7; // [xsp+20h] [xbp-20h]
|
{
|
||||||
|
_OWORD v6[2];
|
||||||
|
volatile __int64 v7;
|
||||||
|
} out; // [xsp+0h] [xbp-40h] BYREF
|
||||||
|
|
||||||
v7 = 0;
|
memset(&out, 0, sizeof(out));
|
||||||
memset(v6, 0, sizeof(v6));
|
v4 = (int)sub_213D4(a1, a2, (__int64)&out, 1).n128_u64[0];
|
||||||
v4 = (int)sub_213D4(a1, a2, (__int64)v6, 1).n128_u64[0];
|
|
||||||
if ( v4 )
|
if ( v4 )
|
||||||
return *(_QWORD *)(a1 + 392) & a2 | v7 & 0xFFFFFFFFC000LL;
|
return *(_QWORD *)(a1 + 392) & a2 | out.v7 & 0xFFFFFFFFC000LL;
|
||||||
else
|
else
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -22116,14 +22117,16 @@ unsigned __int64 __fastcall sub_21844(__int64 a1, unsigned __int64 a2)
|
|||||||
unsigned __int64 __fastcall sub_218A8(__int64 a1, unsigned __int64 a2, __int64 a3)
|
unsigned __int64 __fastcall sub_218A8(__int64 a1, unsigned __int64 a2, __int64 a3)
|
||||||
{
|
{
|
||||||
int v5; // w0
|
int v5; // w0
|
||||||
_OWORD v7[2]; // [xsp+0h] [xbp-40h] BYREF
|
struct
|
||||||
volatile __int64 v8; // [xsp+20h] [xbp-20h]
|
{
|
||||||
|
_OWORD v7[2];
|
||||||
|
volatile __int64 v8;
|
||||||
|
} out; // [xsp+0h] [xbp-40h] BYREF
|
||||||
|
|
||||||
v8 = 0;
|
memset(&out, 0, sizeof(out));
|
||||||
memset(v7, 0, sizeof(v7));
|
v5 = (int)sub_213D4(a1, a2, (__int64)&out, a3).n128_u64[0];
|
||||||
v5 = (int)sub_213D4(a1, a2, (__int64)v7, a3).n128_u64[0];
|
|
||||||
if ( v5 )
|
if ( v5 )
|
||||||
return *(_QWORD *)(a1 + 392) & a2 | v8 & 0xFFFFFFFFC000LL;
|
return *(_QWORD *)(a1 + 392) & a2 | out.v8 & 0xFFFFFFFFC000LL;
|
||||||
else
|
else
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user