help to translate fasm code to delphi

i want to translate the following fasm code to delphi, please help

include 'win32ax.inc'
 
; MACROS
 
macro hash name,[string]{
   local ..hash, ..len, ..chr
   virtual at 0
      db string
      ..len  = $
      ..hash = 0
      repeat ..len
         load ..chr byte from % - 1
         ..hash = ..hash + ..chr
         ..hash = ..hash xor (((..chr shl 7) and $FFFFFFFF) or (..chr shr (25)))
      end repeat
   end virtual
   name#.h = ..hash
}
struc dw [arr]{
   common
      . dw arr
      .c = ($ - .) / 2
}
 
; GLOBAL
 
hash sandboxie, 'sbiedll.dll'
hash avast32,   'snxhk.dll'
hash avast64,   'snxhk64.dll'
hash comodo32,  'guard32.dll'
hash comodo64,  'guard64.dll'
 
; CODE
 
blacklist_loaded:
   call push_hashArr
   hashArr dw sandboxie.h, avast32.h, avast64.h, comodo32.h, comodo64.h
 
push_hashArr:
   push $30
   pop  esi
   lods dword[fs:esi]
   mov  edx, [eax+$0C]
   mov  edx, [edx+$1C]
   xor  eax, eax
nm:xor  ebx, ebx
   mov  esi, dword[edx+$20]
   test esi, esi
   mov  edx, [edx]
 jz     en
re:lodsw
   test eax, eax
 jz     fn
   or   eax, 0x20
   add  ebx, eax
   rol  eax, 7
   xor  ebx, eax
 jmp    re
fn:push hashArr.c
   pop  ecx
   mov  esi, [esp]
nx:lodsw
   cmp  eax, ebx
 loopne nx
 jecxz  nm
en:mov  eax, ecx
   pop  edi
   ret
 
main:
   call blacklist_loaded
.end main 

Open in new window

Juan PerezAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Sinisa VukSoftware architectCommented:
hardly, I think that something is missing here.... what you trying to do?
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
aikimarkCommented:
This appears to be:
code to detect sandbox maluchos injecting DLL: (FASM)

Found the source (unformatted) here:
http://foro.elhacker.net/asm/mostrar_librerias_cargadas_en_programa-t413235.15.html;wap=
0
Juan PerezAuthor Commented:
I've requested that this question be deleted for the following reason:

i will learn to code by myself
0
Geert GOracle dbaCommented:
why did you accept an answer and post you want it deleted ?
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Delphi

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.