//alloc(newmem,2048,"DiabloImmortal.exe"+D175C3)
alloc(newmem,2048,"DiabloImmortal.exe"+D2D4C3)

label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
//movss xmm9,[r15+10] > movss xmm9,[r15+14]
//movss xmm10,[r15+18]
//movss xmm11,[r15+1C]
movss xmm13,[r15-34]
movss xmm14,[r15-30]
movss xmm15,[r15-2C]

push rax // address

mov rax,newmem+500 // address 0x0 value vtmem

//cmp [r15-34],00
//je exit01

cmp [r15-34],(float)650
jb exit01
cmp [r15-34-C],(float)90
jne exit01
//cmp [r15-34-0],4426BFC9
//jne exit01

mov [r15-34+0],(float)400
mov [r15-34+4],(float)650
mov [r15-34+18],(float)150
mov [r15-34+1C],(float)150
mov [r15-34+30],(float)1200
mov [r15-34+34],(float)300
mov [r15-34+48],(float)1800
mov [r15-34+4C],(float)500

mov [rax+0],r15 // 6C bat = 0 tat = 1, +2C x y hps
mov [rax+8],r15 //  [rbx-8] = float x float y

exit01:

pop rax


exit:
jmp returnhere

//  7FF6F5FDD055

//"DiabloImmortal.exe"+D175C3:
"DiabloImmortal.exe"+D2D4C3:

jmp newmem
nop
returnhere:

