
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 33 c0 ?? xor eax, eax
 53 ?? push ebx
 33 db ?? xor ebx, ebx
 40 ?? inc eax
 39 5d 0c ?? cmp dword ss:[ebp + 12], ebx
 7c 46 ?? jl basic block L12

L2: 56 ?? push esi
 57 ?? push edi

L3: 85 c0 ?? test eax, eax
 74 3e ?? je basic block L11

L4: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
 03 c3 ?? add eax, ebx
 99 ?? cdq
 2b c2 ?? sub eax, edx
 8b f0 ?? mov esi, eax
 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
 d1 fe ?? sar esi, 1
 8d 3c f0 ?? lea edi, ds:[eax + esi * 8]
 ff 37 ?? push dword ds:[edi]
 8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
 ff 30 ?? push dword ds:[eax]
 e8 93 b2 00 00 ?? call function 0x0041f342

L5: 59 ?? pop ecx
 59 ?? pop ecx
 85 c0 ?? test eax, eax
 75 0a ?? jne basic block L7

L6: 8b 4d 10 ?? mov ecx, dword ss:[ebp + 0x10<16>]
 83 c7 04 ?? add edi, 4
 89 39 ?? mov dword ds:[ecx], edi
 eb 0b ?? jmp basic block L10

L7: 7d 06 ?? jge basic block L9

L8: 4e ?? dec esi
 89 75 0c ?? mov dword ss:[ebp + 12], esi
 eb 03 ?? jmp basic block L10

L9: 8d 5e 01 ?? lea ebx, ds:[esi + 1]

L10: 3b 5d 0c ?? cmp ebx, dword ss:[ebp + 12]
 7e be ?? jle basic block L3

L11: 5f ?? pop edi
 5e ?? pop esi

L12: 33 c9 ?? xor ecx, ecx
 85 c0 ?? test eax, eax
 0f 94 c1 ?? sete cl
 5b ?? pop ebx
 8b c1 ?? mov eax, ecx
 5d ?? pop ebp
 c3 ?? ret

