Disassembly: 
  L1: 8b ff ?? mov edi, edi
   56 ?? push esi
   57 ?? push edi
   be 68 dd 43 00 ?? mov esi, 0x0043dd68<"KERNEL32.DLL">
   56 ?? push esi
   ff 15 58 92 44 00 ?? call dword ds:[0x00449258]
  
  L2: 85 c0 ?? test eax, eax
   75 07 ?? jne basic block L5
  
  L3: 56 ?? push esi
   e8 aa 2d 00 00 ?? call function 0x00412b2a
  
  L4: 59 ?? pop ecx
  
  L5: 8b f8 ?? mov edi, eax
   85 ff ?? test edi, edi
   0f 84 5e 01 00 00 ?? je basic block L37
  
  L6: 8b 35 5c 92 44 00 ?? mov esi, dword ds:[0x0044925c]
   68 b4 dd 43 00 ?? push 0x0043ddb4<"FlsAlloc">
   57 ?? push edi
   ff d6 ?? call esi
  
  L7: 68 a8 dd 43 00 ?? push 0x0043dda8<"FlsGetValue">
   57 ?? push edi
   a3 8c 60 44 00 ?? mov dword ds:[0x0044608c], eax
   ff d6 ?? call esi
  
  L8: 68 9c dd 43 00 ?? push 0x0043dd9c<"FlsSetValue">
   57 ?? push edi
   a3 90 60 44 00 ?? mov dword ds:[0x00446090], eax
   ff d6 ?? call esi
  
  L9: 68 94 dd 43 00 ?? push 0x0043dd94<"FlsFree">
   57 ?? push edi
   a3 94 60 44 00 ?? mov dword ds:[0x00446094], eax
   ff d6 ?? call esi
  
  L10: 83 3d 8c 60 44 00 00 ?? cmp dword ds:[0x0044608c], 0
   8b 35 68 92 44 00 ?? mov esi, dword ds:[0x00449268]
   a3 98 60 44 00 ?? mov dword ds:[0x00446098], eax
   74 16 ?? je basic block L14
  
  L11: 83 3d 90 60 44 00 00 ?? cmp dword ds:[0x00446090], 0
   74 0d ?? je basic block L14
  
  L12: 83 3d 94 60 44 00 00 ?? cmp dword ds:[0x00446094], 0
   74 04 ?? je basic block L14
  
  L13: 85 c0 ?? test eax, eax
   75 24 ?? jne basic block L15
  
  L14: a1 60 92 44 00 ?? mov eax, dword ds:[0x00449260]
   a3 90 60 44 00 ?? mov dword ds:[0x00446090], eax
   a1 6c 92 44 00 ?? mov eax, dword ds:[0x0044926c]
   c7 05 8c 60 44 00 8c f9 ?? mov dword ds:[0x0044608c], function 0x0040f98c
   40 00
   89 35 94 60 44 00 ?? mov dword ds:[0x00446094], esi
   a3 98 60 44 00 ?? mov dword ds:[0x00446098], eax
  
  L15: ff 15 64 92 44 00 ?? call dword ds:[0x00449264]
  
  L16: a3 34 49 44 00 ?? mov dword ds:[0x00444934], eax
   83 f8 ff ?? cmp eax, 0xff<255,-1>
   0f 84 cc 00 00 00 ?? je basic block L38
  
  L17: ff 35 90 60 44 00 ?? push dword ds:[0x00446090]
   50 ?? push eax
   ff d6 ?? call esi
  
  L18: 85 c0 ?? test eax, eax
   0f 84 bb 00 00 00 ?? je basic block L38
  
  L19: e8 54 30 00 00 ?? call function 0x00412e8c
  
  L20: ff 35 8c 60 44 00 ?? push dword ds:[0x0044608c]
   e8 5c fa ff ff ?? call function 0x0040f89f
  
  L21: ff 35 90 60 44 00 ?? push dword ds:[0x00446090]
   a3 8c 60 44 00 ?? mov dword ds:[0x0044608c], eax
   e8 4c fa ff ff ?? call function 0x0040f89f
  
  L22: ff 35 94 60 44 00 ?? push dword ds:[0x00446094]
   a3 90 60 44 00 ?? mov dword ds:[0x00446090], eax
   e8 3c fa ff ff ?? call function 0x0040f89f
  
  L23: ff 35 98 60 44 00 ?? push dword ds:[0x00446098]
   a3 94 60 44 00 ?? mov dword ds:[0x00446094], eax
   e8 2c fa ff ff ?? call function 0x0040f89f
  
  L24: 83 c4 10 ?? add esp, 0x10<16>
   a3 98 60 44 00 ?? mov dword ds:[0x00446098], eax
   e8 e2 3e 00 00 ?? call function 0x00413d62
  
  L25: 85 c0 ?? test eax, eax
   74 65 ?? je basic block L37
  
  L26: 68 bd fb 40 00 ?? push function 0x0040fbbd
   ff 35 8c 60 44 00 ?? push dword ds:[0x0044608c]
   e8 86 fa ff ff ?? call function 0x0040f91a
  
  L27: 59 ?? pop ecx
   ff d0 ?? call eax
  
  L28: a3 30 49 44 00 ?? mov dword ds:[0x00444930], eax
   83 f8 ff ?? cmp eax, 0xff<255,-1>
   74 48 ?? je basic block L37
  
  L29: 68 14 02 00 00 ?? push 0x00000214<532>
   6a 01 ?? push 1
   e8 58 f6 ff ff ?? call function 0x0040f505
  
  L30: 8b f0 ?? mov esi, eax
   59 ?? pop ecx
   59 ?? pop ecx
   85 f6 ?? test esi, esi
   74 34 ?? je basic block L37
  
  L31: 56 ?? push esi
   ff 35 30 49 44 00 ?? push dword ds:[0x00444930]
   ff 35 94 60 44 00 ?? push dword ds:[0x00446094]
   e8 53 fa ff ff ?? call function 0x0040f91a
  
  L32: 59 ?? pop ecx
   ff d0 ?? call eax
  
  L33: 85 c0 ?? test eax, eax
   74 1b ?? je basic block L37
  
  L34: 6a 00 ?? push 0
   56 ?? push esi
   e8 6d fb ff ff ?? call function 0x0040fa43
  
  L35: 59 ?? pop ecx
   59 ?? pop ecx
   ff 15 74 92 44 00 ?? call dword ds:[0x00449274]
  
  L36: 83 4e 04 ff ?? or dword ds:[esi + 4], 0xff<255,-1>
   89 06 ?? mov dword ds:[esi], eax
   33 c0 ?? xor eax, eax
   40 ?? inc eax
   eb 07 ?? jmp basic block L39
  
  L37: e8 18 fb ff ff ?? call function 0x0040fa06
  
  L38: 33 c0 ?? xor eax, eax
  
  L39: 5f ?? pop edi
   5e ?? pop esi
   c3 ?? ret
  
  