memory – The hidden meaning of the source code of the malware?

I’m studying the source code of malware developed in c++
and i have two questions in the source code below

This is probably a code that loads malicious dlls into memory.

typedef BOOL (WINAPI *VirtualFreeT)(
    __in LPVOID lpAddress, 
    __in SIZE_T dwSize, 
    __in DWORD dwFreeType
    );

char dllA() = {'K','E','R','N','E','L','3','2','.','d','l','l',''};
char dllB() = {'V','i','r','t','u','a','l','F','r','e','e',''};

VirtualFreeT pVirtualFree=(VirtualFreeT)GetProcAddress(LoadLibrary(dllA),dllB);

_asm nop;
_asm nop;
_asm nop;
_asm nop;
_asm nop;
_asm nop;
_asm nop;
...
..
.
  1. Why not declare the name of dll as below?
    Is it just a certain insertion of a null char?
char dllA() = "KERNEL32.dll";
char dllB() = "VirtualFree";
  1. It doesn’t do anything. Why need this code?
_asm nop