alloc(newmem,4048,"DiabloImmortal.exe"+15AC5B6)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:


push rax // address
mov rax,newmem+500 // address 0x0 value vtmem
//mov byte ptr [rcx+6C],01 // test

cmp [rdi+29],646E6572
jne exit01
cmp [rdi+2F],67726154
jne exit01
mov [rax],rsi

exit01:
pop rax


exit:
// cmp byte ptr [rdi+28],5F
//jne 7FF660A9C519
//cmp byte ptr [rdi+29],5F
//je 7FF660A9C5B6
//cmp qword ptr [rsi+10],00 >> "DiabloImmortal.exe"+15AC519
// ko du bytes de hook len chuyen sang "DiabloImmortal.exe"+15AC5B6


mov rax,[rsi+10]
mov rbx,[rsp+48]
//add rsp,20
//pop rdi

// rsi+10 = id enemy for auto attack
// rdi+29 = 646E6572 render target
// rdi+2F = 67726154 render target
// rdi > main text function

jmp returnhere

"DiabloImmortal.exe"+15AC5B6:
jmp newmem
nop
nop
nop
nop
returnhere:

