
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 b8 ff ff 00 00 ?? mov eax, 0x0000ffff
 83 ec 14 ?? sub esp, 0x14<20>
 66 39 45 08 ?? cmp word ss:[ebp + 8], ax
 75 06 ?? jne basic block L3

L2: 83 65 fc 00 ?? and dword ss:[ebp + 0xfc<252,-4>], 0
 eb 65 ?? jmp basic block L11

L3: b8 00 01 00 00 ?? mov eax, 0x00000100<256>
 66 39 45 08 ?? cmp word ss:[ebp + 8], ax
 73 1a ?? jae basic block L5

L4: 0f b7 45 08 ?? movzx eax, word ss:[ebp + 8]
 8b 0d ac 3a 42 00 ?? mov ecx, dword ds:[0x00423aac]
 66 8b 04 41 ?? mov ax, word ds:[ecx + eax * 2]
 66 23 45 0c ?? and ax, word ss:[ebp + 12]
 0f b7 c0 ?? movzx eax, ax
 89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
 eb 40 ?? jmp basic block L11

L5: ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
 8d 4d ec ?? lea ecx, ss:[ebp + 0xec<236,-20>]
 e8 76 3c ff ff ?? call function 0x0040a1c9

L6: 8b 45 ec ?? mov eax, dword ss:[ebp + 0xec<236,-20>]
 ff 70 14 ?? push dword ds:[eax + 0x14<20>]
 ff 70 04 ?? push dword ds:[eax + 4]
 8d 45 fc ?? lea eax, ss:[ebp + 0xfc<252,-4>]
 50 ?? push eax
 6a 01 ?? push 1
 8d 45 08 ?? lea eax, ss:[ebp + 8]
 50 ?? push eax
 8d 45 ec ?? lea eax, ss:[ebp + 0xec<236,-20>]
 6a 01 ?? push 1
 50 ?? push eax
 e8 2f 03 00 00 ?? call function 0x004168a0

L7: 83 c4 1c ?? add esp, 0x1c<28>
 85 c0 ?? test eax, eax
 75 03 ?? jne basic block L9

L8: 21 45 fc ?? and dword ss:[ebp + 0xfc<252,-4>], eax

L9: 80 7d f8 00 ?? cmp byte ss:[ebp + 0xf8<248,-8>], 0
 74 07 ?? je basic block L11

L10: 8b 45 f4 ?? mov eax, dword ss:[ebp + 0xf4<244,-12>]
 83 60 70 fd ?? and dword ds:[eax + 0x70<112>], 0xfd<253,-3>

L11: 0f b7 45 fc ?? movzx eax, word ss:[ebp + 0xfc<252,-4>]
 0f b7 4d 0c ?? movzx ecx, word ss:[ebp + 12]
 23 c1 ?? and eax, ecx
 c9 ?? leave
 c3 ?? ret

