Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Here is the commented disassembly from \Debug executable. FPO optimization was disabled.
FunctionParameters!main:
push ebp ; establishing stack frame
mov ebp,esp ;
sub esp,0xd8 ; creating stack frame for locals
push ebx ; saving registers that might be used
push esi ; outside
push edi ;
lea edi,[ebp-0xd8] ; getting the lowest address of stack frame
mov ecx,0×36 ; filling stack frame with 0xCC
mov eax,0xcccccccc ;
rep stosd ;
push 0×427034 ; address of "Enter a and b: " string
call FunctionParameters!ILT+1285(_printf) (0041150a)
add esp,0×4 ; adjust stack pointer (1 parameter)
lea eax,[ebp-0×14] ; address of b
push eax ;
lea ecx,[ebp-0×8] ; address of a
push ecx ;
push 0×42702c ; address of "%d %d" string
call FunctionParameters!ILT+990(_scanf) (004113e3)
add esp,0xc ; adjust stack pointer (3 parameters,
; 3*4 = 12 bytes, 0xc in hexadecimal)
lea eax,[ebp-0×14] ; address of b
push eax ;
mov ecx,[ebp-0×8] ; value of a
push ecx ;
call FunctionParameters!ILT+535(?arithmeticYA_NHPAHZ) (0041121c)
add esp,0×8 ; adjust stack pointer (2 parameters)
movzx edx,al ; bool result from arithmetic
test edx,edx ; testing for zero
jz FunctionParameters!main+0×68 (00411bf8)
mov eax,[ebp-0×14] ; value of b
push eax ;
push 0×42701c ; address of "Result = string %d"