you can use windbg wt (watch and trace function to generate an execution flow) 

the demo below is for the code in your query compiled in debug mode (to ensure function calls exist and not optimised away by a simple substitution)

code used for example compiled in msvcpp2ktenexp debug

        int  glob   = 0;
        void f1(int a)  { printf("%d ",a); glob++;}
        void f3(int a)  { printf("F3 %d ",a);}
        void f5(int a)  { printf("F5 %d ",a);}
        void f6(int a)  { printf("%d ",a);}
        void f4(int a)  { f5(5);}
        void f2(int a)  { if(glob == 8) { f3(3); f4(4); } else { f6(6); } }
        void main()     { rndrob:f1(1);f2(2);f1(1);f2(2);if(glob<10){goto rndrob;} }
    dry run results 
    >flowt.exe
    1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 F3 3 F5 5 1 6 1 6

windbg wt results for module flowt function main() edited to remove fluff
statistics at the end shows printf() was called 21 times f3() f4() once etc etc

**:\>cdb -c "g main;wt -m flowt" flowt.exe**

    Tracing flowt!main to return address 00411bcf
       59     0 [  0] flowt!main
       62     0 [  1]   flowt!f1
    1    72     0 [  2]     MSVCR100D!printf
       65    72 [  1]   flowt!f1
       62   156 [  0] flowt!main
       61     0 [  1]   flowt!f2
       62     0 [  2]     flowt!f6
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
       61     0 [  1]   flowt!f2
       62     0 [  2]     flowt!f3
    F3 3    72     0 [  3]       MSVCR100D!printf
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
       64   153 [  1]   flowt!f2
        62     0 [  3]       flowt!f5
    F5 5    72     0 [  4]         MSVCR100D!printf
       65    72 [  3]       flowt!f5
      141  4073 [  0] flowt!main
    
    4214 instructions were executed in 4213 events (0 from other threads)
    Function Name                               Invocations MinInst MaxInst AvgInst
    MSVCR100D!printf                                     21      72      72      72
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    flowt!f1                                             10      77      77      77
    flowt!f2                                             10      71      75      71
    flowt!f3                                              1      74      74      74
    flowt!f4                                              1      69      69      69
    flowt!f5                                              1      74      74      74
    flowt!f6                                              9      74      74      74
    flowt!main                                            1     141     141     141


**Answer to Comment**

If you had followed the logic exactly calc.exe will keep on outputting     
the `calls in MessageLoop Forever` until you `close calc.exe`  

**windbg calc.exe**     
**g calc!WinMain**     

This is to `go to start of Winmain Function` (`wt traces and watches a single Function Call and its childcalls N deep` so to use wt you need to be on the start of any Function you wish to trace `g Winmain Ensures you are on the start of Function WinMain` 

now do

**wt -m calc** 

this will loop forever logging all the sub calls inside calc!WinMain

below is a fine grained example for calc.exe 

`DoOperation is a Function in calc.exe` that does all the operations    
the output below `shows how to watch and trace that function a single time` it is called   

`g calc!DoOperation breaks when DoOperation is called`     
`wt traces the DoOperation for one time` (will trace `one bracket open` 
if you do `3+5 and hit = it will stop tracing` it will also 
`stop tracing if you do 3+5 * because *     
(multiplication finishes the first operation viz addition )`    

and will print the results
`g;q is required to tell we need to continue executing after wt and quit debugging when calc.exe is closed`

    >cdb -c "g calc!DoOperation; wt -m calc ;g;q" calc
    
    0:000> cdb: Reading initial command 'g calc!DoOperation; wt -m calc ;g;q'

    Tracing calc!DoOperation to return address 010035a0
        2     0 [  0] calc!DoOperation
       10     0 [  1]   calc!_EH_prolog
       20    10 [  0] calc!DoOperation
       12     0 [  1]   calc!addrat
       52     0 [  2]     calc!equnum
       36    52 [  1]   calc!addrat
       19     0 [  2]     calc!addnum
       30     0 [  3]       calc!_addnum
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
      112    37 [  3]       calc!_addnum
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
      118    57 [  3]       calc!_addnum
       23   175 [  2]     calc!addnum
       41   250 [  1]   calc!addrat
       28   301 [  0] calc!DoOperation
    
    329 instructions were executed in 328 events (0 from other threads)
    
    Function Name                               Invocations MinInst MaxInst AvgInst
    calc!DoOperation                                      1      28      28      28
    calc!_EH_prolog                                       1      10      10      10
    calc!_addnum                                          1     118     118     118
    calc!_createnum                                       1      12      12      12
    calc!_destroynum                                      1       3       3       3
    calc!addnum                                           1      23      23      23
    calc!addrat                                           1      41      41      41
    calc!equnum                                           1      52      52      52
    kernel32!LocalAlloc                                   1      25      25      25
    kernel32!LocalFree                                    1      17      17      17
    
    0 system calls were executed
    
    quit:

if you find escaping quotes a bit annoying and would like to keep on tracing DoOperation several times put these commands in a text file say foo.txt and run the script with

    cdb -c "$$>a< c:\foo.txt"  calc
contents of foo.txt

    bp calc!DoOperation "bp /1 @$ra \"g\";wt -m calc"
    g;

this sets a one shot breakpoint on the return address of DoOperation() and issues a go to tell windbg to keep on executing the target after tracing and returning from the Function DoOperation() in calc.exe


output below contains an addition and LeftShift operation trace in calc.exe


**>cdb -c "$$>a< c:\foo.txt"  calc**

    0:000> cdb: Reading initial command '$$>a< c:\foo.txt'
    Addition operation 
    
    Tracing calc!DoOperation to return address 010035a0
        2     0 [  0] calc!DoOperation
       10     0 [  1]   calc!_EH_prolog
       18    10 [  0] calc!DoOperation
        6     0 [  1]   calc!mulrat
       14     0 [  2]     calc!zernum
       12    14 [  1]   calc!mulrat
       22     0 [  2]     calc!mulnumx
       19     0 [  3]       calc!_mulnumx
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
      127    37 [  3]       calc!_mulnumx
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
      133    57 [  3]       calc!_mulnumx
       27   190 [  2]     calc!mulnumx
       17   231 [  1]   calc!mulrat
       24     0 [  2]     calc!mulnumx
       19   255 [  1]   calc!mulrat
       36     0 [  2]     calc!trimit
       23   291 [  1]   calc!mulrat
       26   324 [  0] calc!DoOperation
    
    350 instructions were executed in 349 events (0 from other threads)
    
    left shift operation
    
    Tracing calc!DoOperation to return address 010035a0
        2     0 [  0] calc!DoOperation
       10     0 [  1]   calc!_EH_prolog
       26    10 [  0] calc!DoOperation
        6     0 [  1]   calc!_destroyrat
       28    16 [  0] calc!DoOperation
        4     0 [  1]   calc!_createrat
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createrat
       32    53 [  0] calc!DoOperation
        3     0 [  1]   calc!_destroynum
       39    56 [  0] calc!DoOperation
        6     0 [  1]   calc!_createnum
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createnum
       59    93 [  0] calc!DoOperation
        3     0 [  1]   calc!_destroynum
       65    96 [  0] calc!DoOperation
        6     0 [  1]   calc!_createnum
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createnum
       84   133 [  0] calc!DoOperation
        6     0 [  1]   calc!_destroyrat
        3     0 [  2]     calc!_destroynum
       17     0 [  2]     kernel32!LocalFree
        9    20 [  1]   calc!_destroyrat
        3     0 [  2]     calc!_destroynum
       17     0 [  2]     kernel32!LocalFree
       12    40 [  1]   calc!_destroyrat
       17     0 [  2]     kernel32!LocalFree
       14    57 [  1]   calc!_destroyrat
       86   204 [  0] calc!DoOperation
        4     0 [  1]   calc!_createrat
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createrat
       89   241 [  0] calc!DoOperation
        3     0 [  1]   calc!_destroynum
       95   244 [  0] calc!DoOperation
        6     0 [  1]   calc!_createnum
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createnum
      114   281 [  0] calc!DoOperation
        3     0 [  1]   calc!_destroynum
      120   284 [  0] calc!DoOperation
        6     0 [  1]   calc!_createnum
       25     0 [  2]     kernel32!LocalAlloc
       12    25 [  1]   calc!_createnum
      139   321 [  0] calc!DoOperation
        8     0 [  1]   calc!lshrat
       11     0 [  2]     calc!intrat
       14     0 [  3]       calc!zernum
       17    14 [  2]     calc!intrat
       52     0 [  3]       calc!equnum
       23    66 [  2]     calc!intrat
       11    89 [  1]   calc!lshrat
       14     0 [  2]     calc!zernum
       16   103 [  1]   calc!lshrat
       10     0 [  2]     calc!rat_gt
        6     0 [  3]       calc!_destroyrat
       12     6 [  2]     calc!rat_gt
        4     0 [  3]       calc!_createrat
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createrat
       15    43 [  2]     calc!rat_gt
        3     0 [  3]       calc!_destroynum
       21    46 [  2]     calc!rat_gt
        6     0 [  3]       calc!_createnum
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createnum
       40    83 [  2]     calc!rat_gt
        3     0 [  3]       calc!_destroynum
       45    86 [  2]     calc!rat_gt
        6     0 [  3]       calc!_createnum
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createnum
       69   123 [  2]     calc!rat_gt
       12     0 [  3]       calc!addrat
       52     0 [  4]         calc!equnum
       36    52 [  3]       calc!addrat
       19     0 [  4]         calc!addnum
       30     0 [  5]           calc!_addnum
        6     0 [  6]             calc!_createnum
       25     0 [  7]               kernel32!LocalAlloc
       12    25 [  6]             calc!_createnum
      142    37 [  5]           calc!_addnum
        3     0 [  6]             calc!_destroynum
       17     0 [  6]             kernel32!LocalFree
      148    57 [  5]           calc!_addnum
       23   205 [  4]         calc!addnum
       41   280 [  3]       calc!addrat
       74   444 [  2]     calc!rat_gt
       14     0 [  3]       calc!zernum
       88   458 [  2]     calc!rat_gt
        6     0 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
        9    20 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
       12    40 [  3]       calc!_destroyrat
       17     0 [  4]         kernel32!LocalFree
       14    57 [  3]       calc!_destroyrat
       94   529 [  2]     calc!rat_gt
       21   726 [  1]   calc!lshrat
       12     0 [  2]     calc!rattolong
       10     0 [  3]       calc!rat_gt
        6     0 [  4]         calc!_destroyrat
       12     6 [  3]       calc!rat_gt
        4     0 [  4]         calc!_createrat
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createrat
       15    43 [  3]       calc!rat_gt
        3     0 [  4]         calc!_destroynum
       21    46 [  3]       calc!rat_gt
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
       40    83 [  3]       calc!rat_gt
        3     0 [  4]         calc!_destroynum
       45    86 [  3]       calc!rat_gt
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
       69   123 [  3]       calc!rat_gt
       12     0 [  4]         calc!addrat
       52     0 [  5]           calc!equnum
       36    52 [  4]         calc!addrat
       17     0 [  5]           calc!addnum
       30     0 [  6]             calc!_addnum
        6     0 [  7]               calc!_createnum
       25     0 [  8]                 kernel32!LocalAlloc
       12    25 [  7]               calc!_createnum
      199    37 [  6]             calc!_addnum
        3     0 [  7]               calc!_destroynum
       17     0 [  7]               kernel32!LocalFree
      205    57 [  6]             calc!_addnum
       21   262 [  5]           calc!addnum
       41   335 [  4]         calc!addrat
       74   499 [  3]       calc!rat_gt
       14     0 [  4]         calc!zernum
       88   513 [  3]       calc!rat_gt
        6     0 [  4]         calc!_destroyrat
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
        9    20 [  4]         calc!_destroyrat
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
       12    40 [  4]         calc!_destroyrat
       17     0 [  5]           kernel32!LocalFree
       14    57 [  4]         calc!_destroyrat
       94   584 [  3]       calc!rat_gt
       17   678 [  2]     calc!rattolong
       10     0 [  3]       calc!rat_lt
        6     0 [  4]         calc!_destroyrat
       12     6 [  3]       calc!rat_lt
        4     0 [  4]         calc!_createrat
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createrat
       15    43 [  3]       calc!rat_lt
        3     0 [  4]         calc!_destroynum
       21    46 [  3]       calc!rat_lt
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
       40    83 [  3]       calc!rat_lt
        3     0 [  4]         calc!_destroynum
       45    86 [  3]       calc!rat_lt
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
       69   123 [  3]       calc!rat_lt
       12     0 [  4]         calc!addrat
       52     0 [  5]           calc!equnum
       36    52 [  4]         calc!addrat
       17     0 [  5]           calc!addnum
       30     0 [  6]             calc!_addnum
        6     0 [  7]               calc!_createnum
       25     0 [  8]                 kernel32!LocalAlloc
       12    25 [  7]               calc!_createnum
      157    37 [  6]             calc!_addnum
        3     0 [  7]               calc!_destroynum
       17     0 [  7]               kernel32!LocalFree
      163    57 [  6]             calc!_addnum
       21   220 [  5]           calc!addnum
       41   293 [  4]         calc!addrat
       74   457 [  3]       calc!rat_lt
       14     0 [  4]         calc!zernum
       86   471 [  3]       calc!rat_lt
        6     0 [  4]         calc!_destroyrat
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
        9    20 [  4]         calc!_destroyrat
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
       12    40 [  4]         calc!_destroyrat
       17     0 [  5]           kernel32!LocalFree
       14    57 [  4]         calc!_destroyrat
       92   542 [  3]       calc!rat_lt
       21  1312 [  2]     calc!rattolong
        6     0 [  3]       calc!_destroyrat
       23  1318 [  2]     calc!rattolong
        4     0 [  3]       calc!_createrat
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createrat
       26  1355 [  2]     calc!rattolong
        3     0 [  3]       calc!_destroynum
       31  1358 [  2]     calc!rattolong
        6     0 [  3]       calc!_createnum
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createnum
       50  1395 [  2]     calc!rattolong
        3     0 [  3]       calc!_destroynum
       55  1398 [  2]     calc!rattolong
        6     0 [  3]       calc!_createnum
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createnum
       75  1435 [  2]     calc!rattolong
       11     0 [  3]       calc!intrat
       14     0 [  4]         calc!zernum
       17    14 [  3]       calc!intrat
       52     0 [  4]         calc!equnum
       23    66 [  3]       calc!intrat
       79  1524 [  2]     calc!rattolong
       24     0 [  3]       calc!divnumx
       82  1548 [  2]     calc!rattolong
        3     0 [  3]       calc!_destroynum
       17     0 [  3]       kernel32!LocalFree
       87  1568 [  2]     calc!rattolong
        6     0 [  3]       calc!_createnum
       25     0 [  4]         kernel32!LocalAlloc
       12    25 [  3]       calc!_createnum
      107  1605 [  2]     calc!rattolong
       28     0 [  3]       calc!numtolong
      110  1633 [  2]     calc!rattolong
        6     0 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
        9    20 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
       12    40 [  3]       calc!_destroyrat
       17     0 [  4]         kernel32!LocalFree
       14    57 [  3]       calc!_destroyrat
      116  1704 [  2]     calc!rattolong
       24  2546 [  1]   calc!lshrat
        6     0 [  2]     calc!_destroyrat
       26  2552 [  1]   calc!lshrat
        4     0 [  2]     calc!_createrat
       25     0 [  3]       kernel32!LocalAlloc
       12    25 [  2]     calc!_createrat
       29  2589 [  1]   calc!lshrat
        3     0 [  2]     calc!_destroynum
       35  2592 [  1]   calc!lshrat
        6     0 [  2]     calc!_createnum
       25     0 [  3]       kernel32!LocalAlloc
       12    25 [  2]     calc!_createnum
       55  2629 [  1]   calc!lshrat
        3     0 [  2]     calc!_destroynum
       61  2632 [  1]   calc!lshrat
        6     0 [  2]     calc!_createnum
       25     0 [  3]       kernel32!LocalAlloc
       12    25 [  2]     calc!_createnum
       82  2669 [  1]   calc!lshrat
       10     0 [  2]     calc!ratpowlong
        3     0 [  3]       calc!longtorat
        4     0 [  4]         calc!_createrat
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createrat
        8    37 [  3]       calc!longtorat
        3     0 [  4]         calc!longtonum
        6     0 [  5]           calc!_createnum
       25     0 [  6]             kernel32!LocalAlloc
       12    25 [  5]           calc!_createnum
       21    37 [  4]         calc!longtonum
       12    95 [  3]       calc!longtorat
        3     0 [  4]         calc!longtonum
        6     0 [  5]           calc!_createnum
       25     0 [  6]             kernel32!LocalAlloc
       12    25 [  5]           calc!_createnum
       21    37 [  4]         calc!longtonum
       17   153 [  3]       calc!longtorat
       21   170 [  2]     calc!ratpowlong
       25     0 [  3]       calc!mulnumx
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
       28    20 [  3]       calc!mulnumx
        6     0 [  4]         calc!_createnum
       25     0 [  5]           kernel32!LocalAlloc
       12    25 [  4]         calc!_createnum
       51    57 [  3]       calc!mulnumx
       27   278 [  2]     calc!ratpowlong
       24     0 [  3]       calc!mulnumx
       30   302 [  2]     calc!ratpowlong
        6     0 [  3]       calc!mulrat
       14     0 [  4]         calc!zernum
       12    14 [  3]       calc!mulrat
       22     0 [  4]         calc!mulnumx
       19     0 [  5]           calc!_mulnumx
        6     0 [  6]             calc!_createnum
       25     0 [  7]               kernel32!LocalAlloc
       12    25 [  6]             calc!_createnum
      127    37 [  5]           calc!_mulnumx
        3     0 [  6]             calc!_destroynum
       17     0 [  6]             kernel32!LocalFree
      133    57 [  5]           calc!_mulnumx
       27   190 [  4]         calc!mulnumx
       17   231 [  3]       calc!mulrat
       24     0 [  4]         calc!mulnumx
       19   255 [  3]       calc!mulrat
       36     0 [  4]         calc!trimit
       23   291 [  3]       calc!mulrat
       33   616 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       35   652 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       43   688 [  2]     calc!ratpowlong
        6     0 [  3]       calc!mulrat
       14     0 [  4]         calc!zernum
       12    14 [  3]       calc!mulrat
       22     0 [  4]         calc!mulnumx
       19     0 [  5]           calc!_mulnumx
        6     0 [  6]             calc!_createnum
       25     0 [  7]               kernel32!LocalAlloc
       12    25 [  6]             calc!_createnum
      127    37 [  5]           calc!_mulnumx
        3     0 [  6]             calc!_destroynum
       17     0 [  6]             kernel32!LocalFree
      133    57 [  5]           calc!_mulnumx
       27   190 [  4]         calc!mulnumx
       17   231 [  3]       calc!mulrat
       24     0 [  4]         calc!mulnumx
       19   255 [  3]       calc!mulrat
       36     0 [  4]         calc!trimit
       23   291 [  3]       calc!mulrat
       46  1002 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       48  1038 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       57  1074 [  2]     calc!ratpowlong
       22     0 [  3]       calc!mulnumx
       19     0 [  4]         calc!_mulnumx
        6     0 [  5]           calc!_createnum
       25     0 [  6]             kernel32!LocalAlloc
       12    25 [  5]           calc!_createnum
      127    37 [  4]         calc!_mulnumx
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
      133    57 [  4]         calc!_mulnumx
       27   190 [  3]       calc!mulnumx
       63  1291 [  2]     calc!ratpowlong
       24     0 [  3]       calc!mulnumx
       66  1315 [  2]     calc!ratpowlong
        6     0 [  3]       calc!mulrat
       14     0 [  4]         calc!zernum
       12    14 [  3]       calc!mulrat
       22     0 [  4]         calc!mulnumx
       19     0 [  5]           calc!_mulnumx
        6     0 [  6]             calc!_createnum
       25     0 [  7]               kernel32!LocalAlloc
       12    25 [  6]             calc!_createnum
      127    37 [  5]           calc!_mulnumx
        3     0 [  6]             calc!_destroynum
       17     0 [  6]             kernel32!LocalFree
      133    57 [  5]           calc!_mulnumx
       27   190 [  4]         calc!mulnumx
       17   231 [  3]       calc!mulrat
       24     0 [  4]         calc!mulnumx
       19   255 [  3]       calc!mulrat
       36     0 [  4]         calc!trimit
       23   291 [  3]       calc!mulrat
       69  1629 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       71  1665 [  2]     calc!ratpowlong
       36     0 [  3]       calc!trimit
       76  1701 [  2]     calc!ratpowlong
        6     0 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
        9    20 [  3]       calc!_destroyrat
        3     0 [  4]         calc!_destroynum
       17     0 [  4]         kernel32!LocalFree
       12    40 [  3]       calc!_destroyrat
       17     0 [  4]         kernel32!LocalFree
       14    57 [  3]       calc!_destroyrat
       82  1772 [  2]     calc!ratpowlong
       85  4523 [  1]   calc!lshrat
        6     0 [  2]     calc!mulrat
       14     0 [  3]       calc!zernum
       12    14 [  2]     calc!mulrat
       22     0 [  3]       calc!mulnumx
       19     0 [  4]         calc!_mulnumx
        6     0 [  5]           calc!_createnum
       25     0 [  6]             kernel32!LocalAlloc
       12    25 [  5]           calc!_createnum
      127    37 [  4]         calc!_mulnumx
        3     0 [  5]           calc!_destroynum
       17     0 [  5]           kernel32!LocalFree
      133    57 [  4]         calc!_mulnumx
       27   190 [  3]       calc!mulnumx
       17   231 [  2]     calc!mulrat
       24     0 [  3]       calc!mulnumx
       19   255 [  2]     calc!mulrat
       36     0 [  3]       calc!trimit
       23   291 [  2]     calc!mulrat
       87  4837 [  1]   calc!lshrat
        6     0 [  2]     calc!_destroyrat
        3     0 [  3]       calc!_destroynum
       17     0 [  3]       kernel32!LocalFree
        9    20 [  2]     calc!_destroyrat
        3     0 [  3]       calc!_destroynum
       17     0 [  3]       kernel32!LocalFree
       12    40 [  2]     calc!_destroyrat
       17     0 [  3]       kernel32!LocalFree
       14    57 [  2]     calc!_destroyrat
       91  4908 [  1]   calc!lshrat
      144  5320 [  0] calc!DoOperation
        6     0 [  1]   calc!_destroyrat
        3     0 [  2]     calc!_destroynum
       17     0 [  2]     kernel32!LocalFree
        9    20 [  1]   calc!_destroyrat
        3     0 [  2]     calc!_destroynum
       17     0 [  2]     kernel32!LocalFree
       12    40 [  1]   calc!_destroyrat
       17     0 [  2]     kernel32!LocalFree
       14    57 [  1]   calc!_destroyrat
      153  5391 [  0] calc!DoOperation
    
    5544 instructions were executed in 5543 events (0 from other threads)
    
    Function Name                               Invocations MinInst MaxInst AvgInst
    calc!DoOperation                                      1     153     153     153
    calc!_EH_prolog                                       1      10      10      10
    calc!_addnum                                          3     148     205     172
    calc!_createnum                                      26      12      12      12
    calc!_createrat                                       8      12      12      12
    calc!_destroynum                                     40       3       3       3
    calc!_destroyrat                                     14       6      14      10
    calc!_mulnumx                                         5     133     133     133
    calc!addnum                                           3      21      23      21
    calc!addrat                                           3      41      41      41
    calc!divnumx                                          1      24      24      24
    calc!equnum                                           5      52      52      52
    calc!intrat                                           2      23      23      23
    calc!longtonum                                        2      21      21      21
    calc!longtorat                                        1      17      17      17
    calc!lshrat                                           1      91      91      91
    calc!mulnumx                                         12      24      51      27
    calc!mulrat                                           4      23      23      23
    calc!numtolong                                        1      28      28      28
    calc!rat_gt                                           2      94      94      94
    calc!rat_lt                                           1      92      92      92
    calc!ratpowlong                                       1      82      82      82
    calc!rattolong                                        1     116     116     116
    calc!trimit                                          10      36      36      36
    calc!zernum                                          10      14      14      14
    kernel32!LocalAlloc                                  34      25      25      25
    kernel32!LocalFree                                   34      17      17      17
    
    0 system calls were executed
    
    eax=00000000 ebx=00000000 ecx=7c800000 edx=7c97e120 esi=7c90de6e edi=00000000
    eip=7c90e514 esp=0007fde8 ebp=0007fee4 iopl=0         nv up ei pl zr na pe nc
    cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000246
    ntdll!KiFastSystemCallRet:
    7c90e514 c3              ret
    0:000> q
    quit: