September 2017
Beginner to intermediate
290 pages
6h 58m
English
This procedure receives a parameter of the void* type . Of course, the assembler does not care about the type of parameter a certain procedure expects. To be more precise, the assembler, as a compiler, is not aware of the procedure parameters as a concept, not to mention that it has no concept of procedure at all. Let's take a look at the implementation of the f_set_data_pointer procedure:
f_set_data_pointer: if (ACTIVE_TARGET = TARGET_W32_OBJ) |\ (ACTIVE_TARGET = TARGET_W32_DLL) |\ (ACTIVE_TARGET = TARGET_L32_O) push eax lea eax, [esp + 8] push dword [eax] pop dword [data_pointer] pop eax ret else if (ACTIVE_TARGET = TARGET_W64_OBJ) |\ (ACTIVE_TARGET = TARGET_W64_DLL) push rax lea rax, [data_pointer] mov [rax], rcx pop ...
Read now
Unlock full access