Joke Collection Website - Talk about mood - How to write this walking call with simple language code

How to write this walking call with simple language code

A function is posted below, and you can use it by copying the following code directly into the IDE of E!

Talk about changing functional features as follows:

This function is my own experience, which can meet your call requirements, but please note that this function has the code you require.

Relevant simplification operations have been carried out, and the following simplification instructions are pointed out:

mov

eax,dword

Photoelectric tape reader

ss:[ebp+0xC]

mov

ecx,dword

Photoelectric tape reader

ss:[ebp+0x8]

The target needs to be used as a parameter, but here it needs to be passed by a register, as follows

Push

eax

Push

ecx

My story is confirmed.

but

mov

Ecx, (here is the base address 8A8240+70+ 1c8)

It is really necessary to use ECX register for transmission, so the published code will not be simplified here, because it is a necessary operation.

In addition, before copying it to ECX, you have a calculation operation here, and the code I encapsulated is not responsible for the calculation. The advantage of this is that it will calculate

Leave the action to you to design in the IDE, you just need to take the calculation result as the parameter of this function!

If you don't quite understand the meaning of this calculation, you can continue to ask me.

call out

004368f0

Direct addressing is used here. If I write it as it is, it will not be conducive to your code maintenance and update.

Considering the maintenance and update, it is encapsulated as a function and called in call.

004368f0

Indirect addressing is used here!

Because I have 2 years of WG development experience, this packaged function does not need to use any modules, so the update and maintenance are simpler and more convenient.

And it can be applied to the use of similar calls, and the function execution speed is fast, because it does not reopen a section of memory like the third module.

Then write the code into memory, then call the memory address, and then release the memory, but this operation alone will lose efficiency.

Not to mention that if there are other exceptions, this memory may be leaked!

Of course, some modules can return the return value to the IDE after CALLing call. In fact, this can be achieved without modules!

However, considering that the return value you call may not be meaningful, I am too lazy to do it!

The content after the $ character in code comments is hexadecimal.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * code segment begins.

. version

2

. subroutine

Walk by phone

. parameter

Call the walking address,

integer

. parameter

The address required by ecx,

Integer type,

,

mov

Ecx, (here is the base address 8A8240+70+ 1c8)

. parameter

Parameter 1,

integer

. parameter

Parameter 2,

integer

Placement code

({

96

})

'

Psad

The register is temporarily stored to prevent the calling function from causing other errors due to the operation of the register.

'

Press the fourth parameter in this function as the second parameter of the target function.

Placement code

({

255,

1 17,

20

})

'

Push

dword

Photoelectric tape reader

[ebp+$ 14]

'

Press the third parameter in this function as the first parameter of the target function.

Placement code

({

255,

1 17,

16

})

'

Push

dword

Photoelectric tape reader

[Electronic Budget +$ 10]

'

mov

Ecx, (here is the base address 8A8240+70+ 1c8)

Placement code

({

139,

77,

12

})

'

mov

ecx,[ebp+$0c]

'

call out

$004368f0

Note: This is not direct addressing, but indirect addressing.

Placement code

({

255,

85,

eight

})

'

call out

dword

Photoelectric tape reader

[ebp+$08]

Placement code

({

97

})

'

Popd

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Code segment is over.

It is necessary to adopt the answer. This kind of experience guide can't be bought with money. Remember to agree!