Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 28 ?? sub esp, 0x28<40>
   a1 58 80 42 00 ?? mov eax, dword ds:[0x00428058]
   33 c5 ?? xor eax, ebp
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   56 ?? push esi
   8b f1 ?? mov esi, ecx
   33 c9 ?? xor ecx, ecx
   88 4e 04 ?? mov byte ds:[esi + 4], cl
   81 66 04 ff 00 ff ff ?? and dword ds:[esi + 4], 0xffff00ff<4294902015,-65281>
   3b c1 ?? cmp eax, ecx
   57 ?? push edi
   8d 7d f9 ?? lea edi, ss:[ebp + 0xf9<249,-7>]
   89 0e ?? mov dword ds:[esi], ecx
   88 4d f9 ?? mov byte ss:[ebp + 0xf9<249,-7>], cl
   88 4d e3 ?? mov byte ss:[ebp + 0xe3<227,-29>], cl
   7f 17 ?? jg basic block L5
  
  L2: 7c 05 ?? jl basic block L4
  
  L3: 39 4d 08 ?? cmp dword ss:[ebp + 8], ecx
   73 10 ?? jae basic block L5
  
  L4: 8b 55 08 ?? mov edx, dword ss:[ebp + 8]
   f7 da ?? neg edx
   13 c1 ?? adc eax, ecx
   c6 45 e3 01 ?? mov byte ss:[ebp + 0xe3<227,-29>], 1
   f7 d8 ?? neg eax
   89 55 08 ?? mov dword ss:[ebp + 8], edx
  
  L5: 53 ?? push ebx
   eb 02 ?? jmp basic block L7
  
  L6: 33 c9 ?? xor ecx, ecx
  
  L7: 51 ?? push ecx
   6a 0a ?? push 10
   50 ?? push eax
   ff 75 08 ?? push dword ss:[ebp + 8]
   4f ?? dec edi
   e8 80 aa 00 00 ?? call function 0x004169b0
  
  L8: 80 c1 30 ?? add cl, 0x30<48>
   89 45 08 ?? mov dword ss:[ebp + 8], eax
   88 0f ?? mov byte ds:[edi], cl
   8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   8b c2 ?? mov eax, edx
   0b c8 ?? or ecx, eax
   89 5d dc ?? mov dword ss:[ebp + 0xdc<220,-36>], ebx
   75 dd ?? jne basic block L6
  
  L9: 5b ?? pop ebx
   38 4d e3 ?? cmp byte ss:[ebp + 0xe3<227,-29>], cl
   74 04 ?? je basic block L11
  
  L10: 4f ?? dec edi
   c6 07 2d ?? mov byte ds:[edi], 0x2d<45>
  
  L11: 8d 45 f9 ?? lea eax, ss:[ebp + 0xf9<249,-7>]
   2b c7 ?? sub eax, edi
   50 ?? push eax
   57 ?? push edi
   8b ce ?? mov ecx, esi
   e8 68 fd ff ff ?? call function 0x0040bcc4
  
  L12: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   5f ?? pop edi
   8b c6 ?? mov eax, esi
   33 cd ?? xor ecx, ebp
   5e ?? pop esi
   e8 3c 61 ff ff ?? call function 0x004020a6
  
  L13: c9 ?? leave
   c2 08 00 ?? ret 8
  
  