Guest User

Untitled

a guest
Jun 22nd, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.77 KB | None | 0 0
  1. PUSH EAX
  2. PUSH EDX
  3. MOV EDX,ECX
  4. CALL @Init
  5.  
  6. @init:
  7. PUSH EBP
  8. MOV EBP,ESP
  9. SUB ESP,8
  10. PUSH EBX
  11. PUSH ESI
  12. PUSH EDI
  13. MOV EAX,EDX
  14. MOV EDI,ECX
  15. CMP EDI,EAX
  16. MOV BYTE PTR SS:[EBP-1],0
  17. JNZ @Jump1
  18. MOV EAX,DWORD PTR SS:[EBP+8]
  19. PUSH EAX
  20. Call @Call
  21. ADD ESP,4
  22. MOV BYTE PTR SS:[EBP-1],1
  23.  
  24. @Jump1:
  25. MOV ECX,DWORD PTR SS:[EBP+8]
  26. MOV EDX,ECX
  27. SHR EDX,2
  28. AND ECX,3
  29. TEST EDX,EDX
  30. MOV DWORD PTR SS:[EBP-8],ECX
  31. JBE @Jump2
  32. MOV ESI,DWORD PTR DS:[EDI]
  33. XOR ESI,DWORD PTR SS:[EBP+0Ch]
  34. CMP EDX,1
  35. MOV DWORD PTR DS:[EAX],ESI
  36. JBE @Jump3
  37. MOV ESI,EAX
  38. LEA EBX,DWORD PTR DS:[EDX-1]
  39. LEA ECX,DWORD PTR DS:[EDI+4]
  40. SUB ESI,EDI
  41. MOV DWORD PTR SS:[EBP+0Ch],EBX
  42.  
  43. @Loop1:
  44. MOV EBX,DWORD PTR DS:[ECX-4]
  45. XOR EBX,DWORD PTR DS:[ECX]
  46. ADD ECX,4
  47. SUB DWORD PTR SS:[EBP+0Ch],1
  48. MOV DWORD PTR DS:[ESI+ECX-4],EBX
  49. JNZ @Loop1
  50. MOV ECX,DWORD PTR SS:[EBP-8]
  51.  
  52. @Jump3:
  53. MOV ECX,DWORD PTR SS:[EBP-8]
  54. ADD EDX,EDX
  55. ADD EDX,EDX
  56. MOV ESI,DWORD PTR DS:[EDX+EDI-4]
  57. MOV DWORD PTR SS:[EBP+0Ch],ESI
  58. MOV ESI,EDX
  59. JMP @Jump4
  60.  
  61. @Jump2:
  62. MOV EDX,DWORD PTR SS:[EBP+0Ch]
  63. MOV DWORD PTR SS:[EBP+0Ch],EDX
  64. XOR ESI,ESI
  65.  
  66. @Jump4:
  67. TEST ECX,ECX
  68. JBE @Jump5
  69. MOV EDX,DWORD PTR SS:[EBP-8]
  70. MOV EBX,EDI
  71. ADD ESI,EAX
  72. XOR ECX,ECX
  73. SUB EBX,EAX
  74. MOV DWORD PTR SS:[EBP-8],EDX
  75. MOV EDI,EDI
  76.  
  77. @Loop2:
  78. MOV EDX,DWORD PTR SS:[EBP+0Ch]
  79. SHR EDX,CL
  80. ADD ECX,8
  81. ADD ESI,1
  82. XOR DL,BYTE PTR DS:[EBX+ESI-1]
  83. SUB DWORD PTR SS:[EBP-8],1
  84. MOV BYTE PTR DS:[ESI-1],DL
  85. JNZ @Loop2
  86.  
  87. @Jump5:
  88. MOV ECX,DWORD PTR SS:[EBP+8]
  89. MOV EDX,ECX
  90. SHR ECX,2
  91. MOV ESI,EAX
  92. REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
  93. MOV ECX,EDX
  94. AND ECX,3
  95. CMP BYTE PTR SS:[EBP-1],0
  96. REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
  97. POP EDI
  98. POP ESI
  99. POP EBX
  100. JE @Jump6
  101. PUSH EAX
  102. CALL @CallShadow
  103. ADD ESP,4
  104.  
  105. @Jump6:
  106. MOV ESP,EBP
  107. POP EBP
  108. RET 8
  109.  
  110. @Call:
  111. MOV ECX, 3Eh
  112. ret
  113.  
  114. @CallShadow:
  115. ret
  116.  
  117. end;
Add Comment
Please, Sign In to add comment