Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   81 ec 14 04 00 00 ?? sub esp, 0x00000414<1044>
   a1 00 60 40 00 ?? mov eax, dword ds:[0x00406000]
   33 c5 ?? xor eax, ebp
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   80 3d 88 63 40 00 00 ?? cmp byte ds:[0x00406388], 0
   74 10 ?? je basic block L4
  
  L2: 33 c0 ?? xor eax, eax
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   33 cd ?? xor ecx, ebp
   e8 78 e6 ff ff ?? call function 0x004010d0
  
  L3: 8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  L4: c6 05 88 63 40 00 01 ?? mov byte ds:[0x00406388], 1
   e8 08 01 00 00 ?? call function 0x00402b70
  
  L5: 85 c0 ?? test eax, eax
   0f 85 e8 00 00 00 ?? jne basic block L30
  
  L6: 56 ?? push esi
   68 54 4b 40 00 ?? push 0x00404b54<"MSVCR110D.dll">
   ff 15 00 40 40 00 ?? call dword ds:[0x00404000<"2S@">]
  
  L7: 8b 35 28 40 40 00 ?? mov esi, dword ds:[0x00404028<"zR@">]
   85 c0 ?? test eax, eax
   74 6a ?? je basic block L18
  
  L8: 68 04 01 00 00 ?? push 0x00000104<260>
   8d 8d ec fb ff ff ?? lea ecx, ss:[ebp + 0xfffffbec<4294966252,-1044>]
   51 ?? push ecx
   50 ?? push eax
   ff 15 58 40 40 00 ?? call dword ds:[0x00404058]
  
  L9: 85 c0 ?? test eax, eax
   74 53 ?? je basic block L18
  
  L10: 68 04 01 00 00 ?? push 0x00000104<260>
   8d 85 f4 fd ff ff ?? lea eax, ss:[ebp + 0xfffffdf4<4294966772,-524>]
   50 ?? push eax
   8d 85 ec fb ff ff ?? lea eax, ss:[ebp + 0xfffffbec<4294966252,-1044>]
   50 ?? push eax
   e8 db 02 00 00 ?? call function 0x00402d90
  
  L11: 83 c4 0c ?? add esp, 12
   85 c0 ?? test eax, eax
   74 34 ?? je basic block L18
  
  L12: 68 00 09 00 00 ?? push 0x00000900<2304>
   6a 00 ?? push 0
   8d 85 f4 fd ff ff ?? lea eax, ss:[ebp + 0xfffffdf4<4294966772,-524>]
   50 ?? push eax
   ff d6 ?? call esi
  
  L13: 85 c0 ?? test eax, eax
   0f 85 83 00 00 00 ?? jne basic block L29
  
  L14: ff 15 30 40 40 00 ?? call dword ds:[0x00404030<"XR@">]
  
  L15: 83 f8 57 ?? cmp eax, 0x57<87>
   75 11 ?? jne basic block L18
  
  L16: 6a 08 ?? push 8
   6a 00 ?? push 0
   8d 85 f4 fd ff ff ?? lea eax, ss:[ebp + 0xfffffdf4<4294966772,-524>]
   50 ?? push eax
   ff d6 ?? call esi
  
  L17: 85 c0 ?? test eax, eax
   75 67 ?? jne basic block L29
  
  L18: 68 00 0a 00 00 ?? push 0x00000a00<2560>
   6a 00 ?? push 0
   68 64 4c 40 00 ?? push 0x00404c64<"MSPDB110">
   ff d6 ?? call esi
  
  L19: 85 c0 ?? test eax, eax
   75 55 ?? jne basic block L29
  
  L20: ff 15 30 40 40 00 ?? call dword ds:[0x00404030<"XR@">]
  
  L21: 83 f8 57 ?? cmp eax, 0x57<87>
   75 48 ?? jne basic block L28
  
  L22: 68 04 01 00 00 ?? push 0x00000104<260>
   8d 85 ec fb ff ff ?? lea eax, ss:[ebp + 0xfffffbec<4294966252,-1044>]
   50 ?? push eax
   6a 00 ?? push 0
   ff 15 58 40 40 00 ?? call dword ds:[0x00404058]
  
  L23: 85 c0 ?? test eax, eax
   74 30 ?? je basic block L28
  
  L24: 68 04 01 00 00 ?? push 0x00000104<260>
   8d 85 f4 fd ff ff ?? lea eax, ss:[ebp + 0xfffffdf4<4294966772,-524>]
   50 ?? push eax
   8d 85 ec fb ff ff ?? lea eax, ss:[ebp + 0xfffffbec<4294966252,-1044>]
   50 ?? push eax
   e8 53 02 00 00 ?? call function 0x00402d90
  
  L25: 83 c4 0c ?? add esp, 12
   85 c0 ?? test eax, eax
   74 11 ?? je basic block L28
  
  L26: 6a 08 ?? push 8
   6a 00 ?? push 0
   8d 85 f4 fd ff ff ?? lea eax, ss:[ebp + 0xfffffdf4<4294966772,-524>]
   50 ?? push eax
   ff d6 ?? call esi
  
  L27: 85 c0 ?? test eax, eax
   75 02 ?? jne basic block L29
  
  L28: 33 c0 ?? xor eax, eax
  
  L29: 5e ?? pop esi
  
  L30: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   33 cd ?? xor ecx, ebp
   e8 6e e5 ff ff ?? call function 0x004010d0
  
  L31: 8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  