Disassembly: 
  L1: 57 ?? push edi
   6a 10 ?? push 0x10<16>
   ff 15 8c 20 40 00 ?? call dword ds:[0x0040208c<"8#@">]
  
  L2: 8b f8 ?? mov edi, eax
   83 c4 04 ?? add esp, 4
   85 ff ?? test edi, edi
   74 18 ?? je basic block L4
  
  L3: b8 18 00 00 00 ?? mov eax, 0x00000018<24>
   c7 47 04 2a 00 00 00 ?? mov dword ds:[edi + 4], 0x0000002a<42>
   c7 07 2a 00 00 00 ?? mov dword ds:[edi], 0x0000002a<42>
   66 89 47 08 ?? mov word ds:[edi + 8], ax
   eb 02 ?? jmp basic block L5
  
  L4: 33 ff ?? xor edi, edi
  
  L5: c7 47 0c 04 00 00 00 ?? mov dword ds:[edi + 12], 4
   ff 15 98 20 40 00 ?? call dword ds:[0x00402098<" #@">]
  
  L6: 8b 4f 04 ?? mov ecx, dword ds:[edi + 4]
   03 0f ?? add ecx, dword ds:[edi]
   57 ?? push edi
   03 c8 ?? add ecx, eax
   01 4f 0c ?? add dword ds:[edi + 12], ecx
   ff 15 90 20 40 00 ?? call dword ds:[0x00402090<"(#@">]
  
  L7: 83 c4 04 ?? add esp, 4
   ff 15 98 20 40 00 ?? call dword ds:[0x00402098<" #@">]
  
  L8: 33 c0 ?? xor eax, eax
   5f ?? pop edi
   c3 ?? ret
  
  