This c++ function, compiled by clang-cl with `mcmodel=large`, will generate a routine with the following instructions:
This c++ function, compiled by clang-cl with `mcmodel=large`, will generate a routine with the following instructions:
```nasm
```
0x00: ; void UsermodeNoObfuscation(void)
0x00: ; void UsermodeNoObfuscation(void)
0x00: public ?UsermodeNoObfuscation@@YAXXZ
0x00: public ?UsermodeNoObfuscation@@YAXXZ
0x00: ?UsermodeNoObfuscation@@YAXXZ proc near ; CODE XREF: ModuleEntry+42↓p
0x00: ?UsermodeNoObfuscation@@YAXXZ proc near ; CODE XREF: ModuleEntry+42↓p
@ -58,7 +58,7 @@ This c++ function, compiled by clang-cl with `mcmodel=large`, will generate a ro
As you can see from the code above, (sorry for the terrible syntax highlighting), references to strings and calls to functions are done by first loading the address of the symbol into a register and then interfacing with the symbol.
As you can see from the code above, (sorry for the terrible syntax highlighting), references to strings and calls to functions are done by first loading the address of the symbol into a register and then interfacing with the symbol.