Disassembly: 
  L1: 85 ff ?? test edi, edi
   74 37 ?? je basic block L12
  
  L2: 85 c0 ?? test eax, eax
   74 33 ?? je basic block L12
  
  L3: 56 ?? push esi
   8b 30 ?? mov esi, dword ds:[eax]
   3b f7 ?? cmp esi, edi
   74 28 ?? je basic block L11
  
  L4: 57 ?? push edi
   89 38 ?? mov dword ds:[eax], edi
   e8 9b fe ff ff ?? call function 0x0040cf01
  
  L5: 59 ?? pop ecx
   85 f6 ?? test esi, esi
   74 1b ?? je basic block L11
  
  L6: 56 ?? push esi
   e8 1f ff ff ff ?? call function 0x0040cf90
  
  L7: 83 3e 00 ?? cmp dword ds:[esi], 0
   59 ?? pop ecx
   75 0f ?? jne basic block L11
  
  L8: 81 fe 90 49 44 00 ?? cmp esi, 0x00444990
   74 07 ?? je basic block L11
  
  L9: 56 ?? push esi
   e8 33 fd ff ff ?? call function 0x0040cdb8
  
  L10: 59 ?? pop ecx
  
  L11: 8b c7 ?? mov eax, edi
   5e ?? pop esi
   c3 ?? ret
  
  L12: 33 c0 ?? xor eax, eax
   c3 ?? ret
  
  