
L1: 55 ?? push ebp
 8b ec ?? mov ebp, esp
 51 ?? push ecx
 56 ?? push esi
 ff 75 0c ?? push dword ss:[ebp + 12]
 c7 45 fc 00 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0
 ff 15 5c b0 40 00 ?? call dword ds:[0x0040b05c]

L2: 8b 75 08 ?? mov esi, dword ss:[ebp + 8]
 83 c4 04 ?? add esp, 4
 85 c0 ?? test eax, eax
 ba d8 8b 40 00 ?? mov edx, 0x00408bd8<"unknown error">
 0f 45 d0 ?? cmovne edx, eax
 c7 46 14 0f 00 00 00 ?? mov dword ds:[esi + 0x14<20>], 15
 c7 46 10 00 00 00 00 ?? mov dword ds:[esi + 0x10<16>], 0
 c6 06 00 ?? mov byte ds:[esi], 0
 80 3a 00 ?? cmp byte ds:[edx], 0
 75 14 ?? jne basic block L5

L3: 33 c9 ?? xor ecx, ecx
 51 ?? push ecx
 52 ?? push edx
 8b ce ?? mov ecx, esi
 e8 f9 d9 ff ff ?? call function 0x0040105f

L4: 8b c6 ?? mov eax, esi
 5e ?? pop esi
 8b e5 ?? mov esp, ebp
 5d ?? pop ebp
 c2 08 00 ?? ret 8

L5: 8b ca ?? mov ecx, edx
 57 ?? push edi
 8d 79 01 ?? lea edi, ds:[ecx + 1]

L6: 8a 01 ?? mov al, byte ds:[ecx]
 41 ?? inc ecx
 84 c0 ?? test al, al

L7: 75 f9 ?? jne basic block L6

L8: 2b cf ?? sub ecx, edi
 5f ?? pop edi
 51 ?? push ecx
 52 ?? push edx
 8b ce ?? mov ecx, esi
 e8 d7 d9 ff ff ?? call function 0x0040105f

L9: 8b c6 ?? mov eax, esi
 5e ?? pop esi
 8b e5 ?? mov esp, ebp
 5d ?? pop ebp
 c2 08 00 ?? ret 8

