Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PUSH EAX
- PUSH EDX
- MOV EDX,ECX
- CALL @Init
- @init:
- PUSH EBP
- MOV EBP,ESP
- SUB ESP,8
- PUSH EBX
- PUSH ESI
- PUSH EDI
- MOV EAX,EDX
- MOV EDI,ECX
- CMP EDI,EAX
- MOV BYTE PTR SS:[EBP-1],0
- JNZ @Jump1
- MOV EAX,DWORD PTR SS:[EBP+8]
- PUSH EAX
- Call @Call
- ADD ESP,4
- MOV BYTE PTR SS:[EBP-1],1
- @Jump1:
- MOV ECX,DWORD PTR SS:[EBP+8]
- MOV EDX,ECX
- SHR EDX,2
- AND ECX,3
- TEST EDX,EDX
- MOV DWORD PTR SS:[EBP-8],ECX
- JBE @Jump2
- MOV ESI,DWORD PTR DS:[EDI]
- XOR ESI,DWORD PTR SS:[EBP+0Ch]
- CMP EDX,1
- MOV DWORD PTR DS:[EAX],ESI
- JBE @Jump3
- MOV ESI,EAX
- LEA EBX,DWORD PTR DS:[EDX-1]
- LEA ECX,DWORD PTR DS:[EDI+4]
- SUB ESI,EDI
- MOV DWORD PTR SS:[EBP+0Ch],EBX
- @Loop1:
- MOV EBX,DWORD PTR DS:[ECX-4]
- XOR EBX,DWORD PTR DS:[ECX]
- ADD ECX,4
- SUB DWORD PTR SS:[EBP+0Ch],1
- MOV DWORD PTR DS:[ESI+ECX-4],EBX
- JNZ @Loop1
- MOV ECX,DWORD PTR SS:[EBP-8]
- @Jump3:
- MOV ECX,DWORD PTR SS:[EBP-8]
- ADD EDX,EDX
- ADD EDX,EDX
- MOV ESI,DWORD PTR DS:[EDX+EDI-4]
- MOV DWORD PTR SS:[EBP+0Ch],ESI
- MOV ESI,EDX
- JMP @Jump4
- @Jump2:
- MOV EDX,DWORD PTR SS:[EBP+0Ch]
- MOV DWORD PTR SS:[EBP+0Ch],EDX
- XOR ESI,ESI
- @Jump4:
- TEST ECX,ECX
- JBE @Jump5
- MOV EDX,DWORD PTR SS:[EBP-8]
- MOV EBX,EDI
- ADD ESI,EAX
- XOR ECX,ECX
- SUB EBX,EAX
- MOV DWORD PTR SS:[EBP-8],EDX
- MOV EDI,EDI
- @Loop2:
- MOV EDX,DWORD PTR SS:[EBP+0Ch]
- SHR EDX,CL
- ADD ECX,8
- ADD ESI,1
- XOR DL,BYTE PTR DS:[EBX+ESI-1]
- SUB DWORD PTR SS:[EBP-8],1
- MOV BYTE PTR DS:[ESI-1],DL
- JNZ @Loop2
- @Jump5:
- MOV ECX,DWORD PTR SS:[EBP+8]
- MOV EDX,ECX
- SHR ECX,2
- MOV ESI,EAX
- REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
- MOV ECX,EDX
- AND ECX,3
- CMP BYTE PTR SS:[EBP-1],0
- REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
- POP EDI
- POP ESI
- POP EBX
- JE @Jump6
- PUSH EAX
- CALL @CallShadow
- ADD ESP,4
- @Jump6:
- MOV ESP,EBP
- POP EBP
- RET 8
- @Call:
- MOV ECX, 3Eh
- ret
- @CallShadow:
- ret
- end;
Add Comment
Please, Sign In to add comment