alloc(newmem,2048,"DiabloImmortal.exe"+34D203) 
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+00000080]

// new [rdx+8]>0>0 text name = text name  >>  [rbx+0]>0 = text name
// new rdx+10 = float x
// new rdx+14 = float y
// new [rdx+8]>E0 = color hex  >>  [rbx+E0] = color hex
// new [rdx+8]>B8 = tat = 00000101 bat = 01000000  >>  [rbx+B8] = bat tat
// new [rdx+8]>10  string len  >>  [rbx+10] = string len

// [rcx] = [rbx+0]>0 = text name [Blacksmith]
// rdi = 27F0CFAF138 = [rdx+10] x

// rdi+8 = rdx+10 = float x
// rdi+C = rdx+14 = float y

push rax
mov rax,newmem+500 // vtmem

mov [rax+8*1],rdi
mov [rax+8*2],rcx
mov [rax+8*3],rcx

cmp [rcx+0],0042005B // [Blacksmith]
jne exit02
cmp [rcx+4],0061006C // [Blacksmith]
jne exit02
mov [rax+8*10],rdi
mov [rax+8*11],rcx
mov [rax+8*11],rcx
exit02:

pop rax


exit:
jmp returnhere

"DiabloImmortal.exe"+34D203:
jmp newmem
nop
nop
returnhere:

