Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   53 ?? push ebx
   56 ?? push esi
   57 ?? push edi
   8b 7d 08 ?? mov edi, dword ss:[ebp + 8]
   83 7f 20 00 ?? cmp dword ds:[edi + 0x20<32>], 0
   bb 30 51 43 00 ?? mov ebx, 0x00435130
   74 40 ?? je basic block L11
  
  L2: 68 b8 00 00 00 ?? push 0x000000b8<184>
   6a 01 ?? push 1
   e8 e7 7c ff ff ?? call function 0x0040a045
  
  L3: 8b f0 ?? mov esi, eax
   59 ?? pop ecx
   59 ?? pop ecx
   85 f6 ?? test esi, esi
   75 05 ?? jne basic block L5
  
  L4: 33 c0 ?? xor eax, eax
   40 ?? inc eax
   eb 45 ?? jmp basic block L15
  
  L5: 8b c7 ?? mov eax, edi
   e8 1a fa ff ff ?? call function 0x00411d8c
  
  L6: 85 c0 ?? test eax, eax
   74 10 ?? je basic block L10
  
  L7: 56 ?? push esi
   e8 2b fe ff ff ?? call function 0x004121a7
  
  L8: 56 ?? push esi
   e8 aa 45 ff ff ?? call function 0x0040692c
  
  L9: 59 ?? pop ecx
   59 ?? pop ecx
   eb e0 ?? jmp basic block L4
  
  L10: c7 86 b4 00 00 00 01 00 ?? mov dword ds:[esi + 0x000000b4<180>], 1
   00 00
   eb 02 ?? jmp basic block L12
  
  L11: 8b f3 ?? mov esi, ebx
  
  L12: 81 c7 d4 00 00 00 ?? add edi, 0x000000d4<212>
   8b 07 ?? mov eax, dword ds:[edi]
   3b c3 ?? cmp eax, ebx
   74 0c ?? je basic block L14
  
  L13: 05 b4 00 00 00 ?? add eax, 0x000000b4<180>
   50 ?? push eax
   ff 15 f4 81 43 00 ?? call dword ds:[0x004381f4]
  
  L14: 89 37 ?? mov dword ds:[edi], esi
   33 c0 ?? xor eax, eax
  
  L15: 5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   5d ?? pop ebp
   c3 ?? ret
  
  