Unless you hard-wire the control flow graph into your answer (homework?), the graphing isn't the hard part of this problem. Extracting the control flow graph from the source code of your language is.
Your example is clearly not C# (BEGIN?), so you will need to find a language parser;
you will need something to do name and type resolution (to handle GOTOs to labels or exits of named blocks), and construct a flow graph as a graph data structure. If you are processing something like GCC (a C-like language with indirect GOTOs), you'll need pointer analysis to determine possible targets of indirect GOTOs. If you intend to process C#, or Java, you might be able to extract the control from from the class files (having much the same problems) and then you'll have to map that back to the source code.
It is easiest to do such a task if you have a lot of available machinery (parsing, name-resolution, control-flow graph construction library) on which to build your control-flow graph extractor. The DMS Software Reengineering Toolkit provides all these foundations, as well as parsers for many languages. For C, Java and COBOL, DMS also provides the direct extraction of control flow graphs handling all of the above issues and even data flow graphs too. See sample control and data flow graphs.