The line
((void(*)(void))0x4484502)();
Casts the integer 0x4484502 to a point to a function (starting at that address) that has void parameters and returns void. Once cast, the function pointer is called.
EDIT:
Just re-read the question.... replace 0x4484502 with EntryPoint
does exactly the same thing... the variable EntryPoint
is cast as a pointer to a function that has void params and returns void. Pointer then used to call function.