6
"Activate Mono"
Auto Assembler Script
[ENABLE]
{$lua}
LaunchMonoDataCollector()
[DISABLE]
43
"Inf HP"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(Health:Decrease+37,F3 0F 11 6E 6C)
alloc(newmem,$1000,Health:Decrease+37)
label(code)
label(return)
newmem:
cmp rdx,2
jg code
{cmp rdi,1
jne code
cmp r15,0
jne code}
jmp return
code:
movss [rsi+6C],xmm5
jmp return
Health:Decrease+37:
jmp newmem
return:
[DISABLE]
Health:Decrease+37:
db F3 0F 11 6E 6C
dealloc(newmem)
59
"Inf AP"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-28
Author : Squall8
}
[ENABLE]
assert(Legrand.core:MainCharacter:set_Gauge+34,89 B7 F0 00 00 00)
alloc(newmem,$1000,Legrand.core:MainCharacter:set_Gauge+34)
label(code)
label(return)
newmem:
code:
mov [rdi+000000F0],#100
jmp return
Legrand.core:MainCharacter:set_Gauge+34:
jmp newmem
nop
return:
[DISABLE]
Legrand.core:MainCharacter:set_Gauge+34:
db 89 B7 F0 00 00 00
dealloc(newmem)
44
"One Hit Kill"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(Legrand.battle:Battler:HealthHitPopUp+4ab,F3 0F 10 41 6C)
alloc(newmem,$1000,Legrand.battle:Battler:HealthHitPopUp+4ab)
label(code)
label(return)
newmem:
code:
movss xmm0,[rcx+6C]
mov [rcx+6C],0
jmp return
Legrand.battle:Battler:HealthHitPopUp+4ab:
jmp newmem
return:
[DISABLE]
Legrand.battle:Battler:HealthHitPopUp+4ab:
db F3 0F 10 41 6C
dealloc(newmem)
65
"Inf HP & AP for Fencing"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-28
Author : Squall8
}
[ENABLE]
assert(FencingController:Update+25,48 63 40 7C 85 C0)
alloc(newmem,$1000,FencingController:Update+25)
label(code)
label(return)
newmem:
mov [rax+7C],#100
mov [rax+80],#100
code:
movsxd rax,dword ptr [rax+7C]
test eax,eax
jmp return
FencingController:Update+25:
jmp newmem
nop
return:
[DISABLE]
FencingController:Update+25:
db 48 63 40 7C 85 C0
dealloc(newmem)
45
"Exp Multiplier"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(Legrand.core:MainCharacter:SetExp+84,89 B7 E8 00 00 00)
alloc(newmem,$1000,Legrand.core:MainCharacter:SetExp+84)
label(code)
label(return)
label(expmul)
newmem:
sub esi,[rdi+000000E8]
imul esi,[expmul]
add [rdi+000000E8],esi
jmp return
code:
mov [rdi+000000E8],esi
jmp return
expmul:
dq 2
Legrand.core:MainCharacter:SetExp+84:
jmp newmem
nop
return:
registersymbol(expmul)
[DISABLE]
Legrand.core:MainCharacter:SetExp+84:
db 89 B7 E8 00 00 00
unregistersymbol(expmul)
dealloc(newmem)
46
"Multiplier"
4 Bytes
expmul
36
"Always Perfect Hits"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(Legrand.battle:TimedHitController:HandleonReqInput+9b,0F B6 40 20 85 C0)
alloc(newmem,$1000,Legrand.battle:TimedHitController:HandleonReqInput+9b)
label(code)
label(return)
newmem:
mov byte ptr [rax+20],1
code:
movzx eax,byte ptr [rax+20]
test eax,eax
jmp return
Legrand.battle:TimedHitController:HandleonReqInput+9b:
jmp newmem
nop
return:
[DISABLE]
Legrand.battle:TimedHitController:HandleonReqInput+9b:
db 0F B6 40 20 85 C0
dealloc(newmem)
38
"Inf Item Use"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(Inventory:DeleteItemsByItemID+ed,89 48 1C)
Inventory:DeleteItemsByItemID+ed:
db 90 90 90
[DISABLE]
Inventory:DeleteItemsByItemID+ed:
db 89 48 1C
56
"Disable Encounters"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-27
Author : Squall8
}
[ENABLE]
assert(MonsterTrigger:OnCollisionEnter+5c,0F B6 80 BF 00 00 00)
alloc(newmem,$1000,MonsterTrigger:OnCollisionEnter+5c)
label(code)
label(return)
newmem:
mov byte ptr [rax+000000BF],1
code:
movzx eax,byte ptr [rax+000000BF]
jmp return
MonsterTrigger:OnCollisionEnter+5c:
jmp newmem
nop
nop
return:
[DISABLE]
MonsterTrigger:OnCollisionEnter+5c:
db 0F B6 80 BF 00 00 00
dealloc(newmem)
61
"100% Drop Rate"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-28
Author : Squall8
}
[ENABLE]
assert(Loot:SetLoot+39,F3 41 0F 11 6F 1C)
alloc(newmem,$1000,Loot:SetLoot+39)
label(code)
label(return)
newmem:
code:
mov [r15+1C],(float)100
jmp return
Loot:SetLoot+39:
jmp newmem
nop
return:
[DISABLE]
Loot:SetLoot+39:
db F3 41 0F 11 6F 1C
dealloc(newmem)
101
"Ignore Crafting Requirements"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-02-03
Author : Squall8
}
[ENABLE]
assert(Inventory:GetStackItem+8f,74 19 49 63 47 1C)
alloc(newmem,$1000,Inventory:GetStackItem+8f)
label(code)
label(return)
label(ownedamt)
registersymbol(ownedamt)
assert(Legrand.core:BluePrint:TryCombine+13f,0F 84 DB FE FF FF)
alloc(newmem2,$1000,Legrand.core:BluePrint:TryCombine+13f)
label(code2)
label(return2)
newmem:
code:
movsxd rax,dword ptr [r15+1C]
mov rax,[ownedamt]
jmp return
ownedamt:
dq A
newmem2:
code2:
jmp return2
Inventory:GetStackItem+8f:
jmp newmem
nop
return:
Legrand.core:BluePrint:TryCombine+13f:
jmp newmem2
nop
return2:
[DISABLE]
Inventory:GetStackItem+8f:
db 74 19 49 63 47 1C
dealloc(newmem)
unregistersymbol(ownedamt)
Legrand.core:BluePrint:TryCombine+13f:
db 0F 84 DB FE FF FF
dealloc(newmem2)
102
"Set Owned Amount"
4 Bytes
ownedamt
97
"Legendary Merchants"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-02-02
Author : Squall8
}
[ENABLE]
assert(AlchemistShopController:set_Merchant+1b,89 47 60 48 8B 3C 24)
alloc(newmem,$1000,AlchemistShopController:set_Merchant+1b)
label(code)
label(return)
assert(CraftingShopController:set_Merchant+1b,89 87 80 00 00 00)
alloc(newmem2,$1000,CraftingShopController:set_Merchant+1b)
label(code2)
label(return2)
newmem:
code:
mov [rdi+60],3
mov rdi,[rsp]
jmp return
newmem2:
code2:
mov [rdi+00000080],3
jmp return2
AlchemistShopController:set_Merchant+1b:
jmp newmem
nop
nop
return:
CraftingShopController:set_Merchant+1b:
jmp newmem2
nop
return2:
[DISABLE]
AlchemistShopController:set_Merchant+1b:
db 89 47 60 48 8B 3C 24
dealloc(newmem)
CraftingShopController:set_Merchant+1b:
db 89 87 80 00 00 00
dealloc(newmem2)
5
"Character Pointers (View Stats)"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(SimulateAttribUpController:Refresh+1bb,48 63 87 DC 00 00 00)
alloc(newmem,$1000,SimulateAttribUpController:Refresh+1bb)
label(code)
label(return)
label(chp)
newmem:
mov [chp],rdi
code:
movsxd rax,dword ptr [rdi+000000DC]
jmp return
chp:
dq 0
SimulateAttribUpController:Refresh+1bb:
jmp newmem
nop
nop
return:
registersymbol(chp)
[DISABLE]
SimulateAttribUpController:Refresh+1bb:
db 48 63 87 DC 00 00 00
unregistersymbol(chp)
dealloc(newmem)
8
"Level"
4 Bytes
chp
E4
11
"Class Level"
4 Bytes
chp
FC
7
"Attribute Points"
4 Bytes
chp
DC
9
"Current Exp"
4 Bytes
chp
E8
10
"Exp For Next Level"
4 Bytes
chp
EC
24
"Max Items Allowed For Battle"
4 Bytes
chp
F4
12
"Current Health"
Float
chp
6C
48
13
"Max Health"
Float
chp
68
48
25
"Current AP"
4 Bytes
chp
F0
14
"Regen Rate"
Float
chp
74
48
15
"Is Invincible"
0:No
1:Yes
Byte
chp
7C
48
68
"Current Character Pointers (Strategy Game)"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-28
Author : Squall8
}
[ENABLE]
assert(Legrand.War:CommandState:PreparePlayerUI+d6,48 63 80 D0 00 00 00)
alloc(newmem,$1000,Legrand.War:CommandState:PreparePlayerUI+d6)
label(code)
label(return)
label(wargame)
newmem:
mov [wargame],rax
code:
movsxd rax,dword ptr [rax+000000D0]
jmp return
wargame:
dq 0
Legrand.War:CommandState:PreparePlayerUI+d6:
jmp newmem
nop
nop
return:
registersymbol(wargame)
[DISABLE]
Legrand.War:CommandState:PreparePlayerUI+d6:
db 48 63 80 D0 00 00 00
unregistersymbol(wargame)
dealloc(newmem)
69
"Name"
String
16
1
0
1
wargame
14
20
48
79
"Health"
Float
wargame
6C
48
70
"Max Health"
Float
wargame
68
48
71
"Regen Rate"
Float
wargame
74
48
77
"AP"
4 Bytes
wargame
D8
78
"Max AP"
4 Bytes
wargame
DC
75
"AC"
4 Bytes
wargame
D0
76
"Max AC"
4 Bytes
wargame
D4
72
"Is Invincible"
0:No
1:Yes
Byte
wargame
7C
48
74
"Troops"
4 Bytes
wargame
CC
73
"Max Troops"
4 Bytes
wargame
C8
80
"Current Character Pointers (Alternate)"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-28
Author : Squall8
}
[ENABLE]
assert(Legrand.War:CommandState:PreparePlayerUI+d5,48 63 80 D0 00 00 00)
alloc(newmem,$1000,Legrand.War:CommandState:PreparePlayerUI+d5)
label(code)
label(return)
label(wargame)
newmem:
mov [wargame],rax
code:
movsxd rax,dword ptr [rax+000000D0]
jmp return
wargame:
dq 0
Legrand.War:CommandState:PreparePlayerUI+d5:
jmp newmem
nop
nop
return:
registersymbol(wargame)
[DISABLE]
Legrand.War:CommandState:PreparePlayerUI+d5:
db 48 63 80 D0 00 00 00
unregistersymbol(wargame)
dealloc(newmem)
81
"Name"
String
16
1
0
1
wargame
14
20
48
82
"Health"
Float
wargame
6C
48
83
"Max Health"
Float
wargame
68
48
84
"Regen Rate"
Float
wargame
74
48
85
"AP"
4 Bytes
wargame
D8
86
"Max AP"
4 Bytes
wargame
DC
87
"AC"
4 Bytes
wargame
D0
88
"Max AC"
4 Bytes
wargame
D4
89
"Is Invincible"
0:No
1:Yes
Byte
wargame
7C
48
90
"Troops"
4 Bytes
wargame
CC
91
"Max Troops"
4 Bytes
wargame
C8
20
"Gold/Weight Pointer (View Menu)"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(ShowInventoryMiscData:UpdateGold+5b,48 63 40 20 89 45 F4)
alloc(newmem,$1000,ShowInventoryMiscData:UpdateGold+5b)
label(code)
label(return)
label(gold)
newmem:
mov [gold],rax
code:
movsxd rax,dword ptr [rax+20]
mov [rbp-0C],eax
jmp return
gold:
dq 0
ShowInventoryMiscData:UpdateGold+5b:
jmp newmem
nop
nop
return:
registersymbol(gold)
[DISABLE]
ShowInventoryMiscData:UpdateGold+5b:
db 48 63 40 20 89 45 F4
unregistersymbol(gold)
dealloc(newmem)
21
"Gold"
4 Bytes
gold
20
22
"Max Weight"
4 Bytes
gold
28
57
"Is Overweight"
0:No
1:Yes
4 Bytes
gold
2C
28
"Player Movement"
Auto Assembler Script
{ Game : Legrand Legacy.exe
Version:
Date : 2018-01-26
Author : Squall8
}
[ENABLE]
assert(PlayerController:FixedUpdate+1810,F3 0F 10 46 68)
alloc(newmem,$1000,PlayerController:FixedUpdate+1810)
label(code)
label(return)
label(movement)
newmem:
mov [movement],rsi
code:
movss xmm0,[rsi+68]
jmp return
movement:
dq 0
PlayerController:FixedUpdate+1810:
jmp newmem
return:
registersymbol(movement)
[DISABLE]
PlayerController:FixedUpdate+1810:
db F3 0F 10 46 68
unregistersymbol(movement)
dealloc(newmem)
29
"Walk Speed"
Float
movement
64
30
"Run Speed"
Float
movement
68
Change of je Legrand.core:BluePrint:TryCombine+11d
36E0F1F3
0
83
C4
20
85
C0
74
18
90
90
90
90
48
Change of je Legrand.core:BluePrint:TryCombine+11d
13FD06B3
0
83
C4
20
85
C0
0F
84
14
00
00
00
48
63
4F
18
49
Change of je Legrand.core:BluePrint:TryCombine+233
13FD07CA
0
83
C4
20
85
C0
0F
84
13
00
00
00
48
63
4F
18
48
Change of je Inventory:GetStackItem+aa
13FCFD3F
0
83
C4
20
85
C0
74
19
49
63
47
1C
89
Change of movsxd rax,dword ptr [r15+1C]
13FCFD41
0
20
85
C0
74
19
49
63
47
1C
89
45
8C
48
83
Change of jmp Inventory:GetStackItem+15d
13FCFE07
0
65
E8
C3
33
C0
EB
04
48
63
45
8C
48
Change of test eax,eax
13FCFD3D
0
D3
48
83
C4
20
85
C0
74
19
49
63
47
Change of je 133B302D
133B3013
0
83
C4
20
85
C0
0F
84
14
00
00
00
48
63
4F
18
49
Change of jnl Legrand.core:BluePrint:TryCombine+169
1382070E
0
40
18
44
3B
E8
7D
09
45
85
FF
0F
84
Change of jne BlueprintData:SetPossibleToCraft+df
13330442
0
00
00
00
85
C0
0F
85
B7
00
00
00
48
8B
47
58
48
Change of xor esi,esi
13330450
0
58
48
63
40
40
33
F6
83
F8
01
0F
85
Change of jne BlueprintData:SetPossibleToCraft+7e
13330455
0
33
F6
83
F8
01
0F
85
43
00
00
00
48
83
EC
20
49
Change of jmp BlueprintData:SetPossibleToCraft+15c
133304FA
0
D3
48
83
C4
20
E9
7D
00
00
00
48
8B
47
58
48
Change of test eax,eax
13330440
0
87
90
00
00
00
85
C0
0F
85
B7
00
00
Change of jmp BlueprintData:SetPossibleToCraft+bc
13330499
0
C4
20
4C
8B
F8
E9
3E
00
00
00
48
83
EC
20
49
Change of call r11
133304F3
0
13
00
00
00
00
41
FF
D3
48
83
C4
20
E9
Change of call r11
13330517
0
13
00
00
00
00
41
FF
D3
48
83
C4
20
48
Change of call r11
13330530
0
04
00
00
00
00
41
FF
D3
48
83
C4
20
48
Change of je Inventory:GetStackItem+aa
131E20FF
0
83
C4
20
85
C0
74
19
49
63
47
1C
89
Change of jbe Inventory:GetStackItem+166
131E20A2
0
63
C9
39
48
18
0F
86
2E
01
00
00
48
8D
44
C8
20
Change of jnl Legrand.core:BluePrint:TryCombine+145
13AC189A
0
63
40
18
3B
D8
7D
09
45
85
E4
0F
84
Change of je Legrand.core:BluePrint:TryCombine+20
13AC189F
0
7D
09
45
85
E4
0F
84
DB
FE
FF
FF
45
85
E4
40
0F