alloc(newmem,4048,"DiabloImmortal.exe"+1DCB717)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
mov rax,[rcx+08]
inc [rax]
// rcx+8 = id
// rcx+28 = text
// rcx+34 = text

push rax // address
mov rax,newmem+500 // address 0x0 value vtmem

cmp [rcx+8],DE5A3630 // 06Z��
jne exit01
mov [rax+8*0],rcx
mov [rax+8*0],rcx

exit01:
cmp [rcx+28],65646C45 // Elder Rift
jne exit02
mov [rax+8*1],rcx
mov [rax+8*1],rcx

exit02:

cmp [rcx+0],00000000 // Elder Rift
je exit03
mov [rax+8*2],rcx
mov [rax+8*2],rcx

exit03:

pop rax


exit:
jmp returnhere

"DiabloImmortal.exe"+1DCB717:
jmp newmem
nop
nop
returnhere:

