
L1: 8b ff ?? mov edi, edi
 56 ?? push esi
 8b f1 ?? mov esi, ecx
 8b 46 20 ?? mov eax, dword ds:[esi + 0x20<32>]
 8b 08 ?? mov ecx, dword ds:[eax]
 85 c9 ?? test ecx, ecx
 74 12 ?? je basic block L4

L2: 8b 56 30 ?? mov edx, dword ds:[esi + 0x30<48>]
 8b 00 ?? mov eax, dword ds:[eax]
 8b 12 ?? mov edx, dword ds:[edx]
 03 d0 ?? add edx, eax
 3b c2 ?? cmp eax, edx
 73 05 ?? jae basic block L4

L3: 0f b6 01 ?? movzx eax, byte ds:[ecx]
 5e ?? pop esi
 c3 ?? ret

L4: 8b 06 ?? mov eax, dword ds:[esi]
 57 ?? push edi
 8b ce ?? mov ecx, esi
 ff 50 14 ?? call dword ds:[eax + 0x14<20>]

L5: 8b f8 ?? mov edi, eax
 83 c8 ff ?? or eax, 0xff<255,-1>
 3b f8 ?? cmp edi, eax
 74 0a ?? je basic block L8

L6: 8b 06 ?? mov eax, dword ds:[esi]
 57 ?? push edi
 8b ce ?? mov ecx, esi
 ff 50 08 ?? call dword ds:[eax + 8]

L7: 8b c7 ?? mov eax, edi

L8: 5f ?? pop edi
 5e ?? pop esi
 c3 ?? ret

