Find Jobs
Hire Freelancers

Simple x64 instruction mutator

$100-500 USD

Completed
Posted over 18 years ago

$100-500 USD

Paid on delivery
Dear Coders, We need an x64 mutator for some x64 instructions. The routine will receive a pointer to a binary x64 instruction and will mutate it if the instruction is recognised by the mutator. We do NOT require a mutation for every single x64 instruction, but just for the following instructions: MOV r64, r64 MOV r64, imm OP r64, r64 OP r64, imm MOV r64, qword [r64 + x] OP r64, qword [r64 + x] MOV [r64 + x], r64 MOV [r64 + x], imm OP qword [r64 + x], r64 OP qword [r64 + x], imm LEA r64, [r64 + x] PUSH / POP r64 NOTES: - OP = "ADD", "SUB", "OR", "AND" - x = nothing, imm8, imm32 - r64 = any 64-bit register (RAX, RBX...R15) - imm = imm8, imm32 The function prototype will be something like: size_t MutateInstruction(void *pInstruction, int RecursionLevel, void *outBuffer) Where: - “pInstruction?? is a pointer to binary data that will be the instruction to mutate - “RecursionLevel?? is the recursion level to mutate the instruction. For example, an instruction can be mutated and remutate again to produce more combinations - “outBuffer?? is the output buffer where we will generate the mutated opcodes The function will return the size of the generated “outBuffer??. If the function cannot be mutated (not included in the above list), the return size is ZERO. NOTE: The generated solution will generate several kinds of mutations for every single instruction accepted. For example: MOV rax, rbx Can generate: 1) PUSH rbx POP rax 2) MOV QWORD [RSP], rbx POP rax Well, you can put your imagination in action :) We will give extra bonuses for this! REQUERIMENTS ---------------- The solution will be coded in VC 2003 or VC 2005. Good coding style and comments We hope to work with you in this and in our next similar projects. Thanks. ## Deliverables 1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. 2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables): a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment. b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request. 3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement). ## Platform Windows
Project ID: 3263786

About the project

2 proposals
Remote project
Active 18 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
See private message.
$153 USD in 45 days
4.9 (86 reviews)
5.9
5.9
2 freelancers are bidding on average $140 USD for this job
User Avatar
See private message.
$127.50 USD in 45 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of SPAIN
Jerez de la Frontera, Spain
5.0
72
Member since Sep 22, 2004

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.