Disassembly: 
  L1: 6a 08 ?? push 8
   68 38 75 42 00 ?? push 0x00427538
   e8 a5 34 00 00 ?? call function 0x00405414
  
  L2: 8b 75 08 ?? mov esi, dword ss:[ebp + 8]
   85 f6 ?? test esi, esi
   0f 84 f8 00 00 00 ?? je basic block L46
  
  L3: 8b 46 24 ?? mov eax, dword ds:[esi + 0x24<36>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L6
  
  L4: 50 ?? push eax
   e8 12 03 00 00 ?? call function 0x00402299
  
  L5: 59 ?? pop ecx
  
  L6: 8b 46 2c ?? mov eax, dword ds:[esi + 0x2c<44>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L9
  
  L7: 50 ?? push eax
   e8 04 03 00 00 ?? call function 0x00402299
  
  L8: 59 ?? pop ecx
  
  L9: 8b 46 34 ?? mov eax, dword ds:[esi + 0x34<52>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L12
  
  L10: 50 ?? push eax
   e8 f6 02 00 00 ?? call function 0x00402299
  
  L11: 59 ?? pop ecx
  
  L12: 8b 46 3c ?? mov eax, dword ds:[esi + 0x3c<60>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L15
  
  L13: 50 ?? push eax
   e8 e8 02 00 00 ?? call function 0x00402299
  
  L14: 59 ?? pop ecx
  
  L15: 8b 46 40 ?? mov eax, dword ds:[esi + 0x40<64>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L18
  
  L16: 50 ?? push eax
   e8 da 02 00 00 ?? call function 0x00402299
  
  L17: 59 ?? pop ecx
  
  L18: 8b 46 44 ?? mov eax, dword ds:[esi + 0x44<68>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L21
  
  L19: 50 ?? push eax
   e8 cc 02 00 00 ?? call function 0x00402299
  
  L20: 59 ?? pop ecx
  
  L21: 8b 46 48 ?? mov eax, dword ds:[esi + 0x48<72>]
   85 c0 ?? test eax, eax
   74 07 ?? je basic block L24
  
  L22: 50 ?? push eax
   e8 be 02 00 00 ?? call function 0x00402299
  
  L23: 59 ?? pop ecx
  
  L24: 8b 46 5c ?? mov eax, dword ds:[esi + 0x5c<92>]
   3d c8 41 42 00 ?? cmp eax, 0x004241c8
   74 07 ?? je basic block L27
  
  L25: 50 ?? push eax
   e8 ad 02 00 00 ?? call function 0x00402299
  
  L26: 59 ?? pop ecx
  
  L27: 6a 0d ?? push 13
   e8 62 38 00 00 ?? call function 0x00405856
  
  L28: 59 ?? pop ecx
   83 65 fc 00 ?? and dword ss:[ebp + 0xfc<252,-4>], 0
   8b 7e 68 ?? mov edi, dword ds:[esi + 0x68<104>]
   85 ff ?? test edi, edi
   74 1a ?? je basic block L34
  
  L29: 57 ?? push edi
   ff 15 e4 a1 42 00 ?? call dword ds:[0x0042a1e4]
  
  L30: 85 c0 ?? test eax, eax
   75 0f ?? jne basic block L34
  
  L31: 81 ff 88 84 42 00 ?? cmp edi, 0x00428488
   74 07 ?? je basic block L34
  
  L32: 57 ?? push edi
   e8 80 02 00 00 ?? call function 0x00402299
  
  L33: 59 ?? pop ecx
  
  L34: c7 45 fc fe ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xfffffffe<4294967294,-2>
   e8 57 00 00 00 ?? call function 0x0040207d
  
  L35: 6a 0c ?? push 12
   e8 29 38 00 00 ?? call function 0x00405856
  
  L36: 59 ?? pop ecx
   c7 45 fc 01 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 1
   8b 7e 6c ?? mov edi, dword ds:[esi + 0x6c<108>]
   85 ff ?? test edi, edi
   74 23 ?? je basic block L43
  
  L37: 57 ?? push edi
   e8 2b 3a 00 00 ?? call function 0x00405a6d
  
  L38: 59 ?? pop ecx
   3b 3d 78 84 42 00 ?? cmp edi, dword ds:[0x00428478]
   74 14 ?? je basic block L43
  
  L39: 81 ff a0 83 42 00 ?? cmp edi, 0x004283a0
   74 0c ?? je basic block L43
  
  L40: 83 3f 00 ?? cmp dword ds:[edi], 0
   75 07 ?? jne basic block L43
  
  L41: 57 ?? push edi
   e8 37 38 00 00 ?? call function 0x00405895
  
  L42: 59 ?? pop ecx
  
  L43: c7 45 fc fe ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xfffffffe<4294967294,-2>
   e8 1e 00 00 00 ?? call function 0x00402089
  
  L44: 56 ?? push esi
   e8 28 02 00 00 ?? call function 0x00402299
  
  L45: 59 ?? pop ecx
  
  L46: e8 e2 33 00 00 ?? call function 0x00405459
  
  L47: c2 04 00 ?? ret 4
  
  