
L1: 55 ?? push ebp
 8b ec ?? mov ebp, esp
 57 ?? push edi
 56 ?? push esi
 53 ?? push ebx
 8b 4d 10 ?? mov ecx, dword ss:[ebp + 0x10<16>]
 0b c9 ?? or ecx, ecx
 74 4d ?? je basic block L16

L2: 8b 75 08 ?? mov esi, dword ss:[ebp + 8]
 8b 7d 0c ?? mov edi, dword ss:[ebp + 12]
 b7 41 ?? mov bh, 0x41<65>
 b3 5a ?? mov bl, 0x5a<90>
 b6 20 ?? mov dh, 0x20<32>
 8d 49 00 ?? lea ecx, ds:[ecx + 0]

L3: 8a 26 ?? mov ah, byte ds:[esi]
 0a e4 ?? or ah, ah
 8a 07 ?? mov al, byte ds:[edi]
 74 27 ?? je basic block L13

L4: 0a c0 ?? or al, al
 74 23 ?? je basic block L13

L5: 83 c6 01 ?? add esi, 1
 83 c7 01 ?? add edi, 1
 3a e7 ?? cmp ah, bh
 72 06 ?? jb basic block L8

L6: 3a e3 ?? cmp ah, bl
 77 02 ?? ja basic block L8

L7: 02 e6 ?? add ah, dh

L8: 3a c7 ?? cmp al, bh
 72 06 ?? jb basic block L11

L9: 3a c3 ?? cmp al, bl
 77 02 ?? ja basic block L11

L10: 02 c6 ?? add al, dh

L11: 3a e0 ?? cmp ah, al
 75 0b ?? jne basic block L14

L12: 83 e9 01 ?? sub ecx, 1
 75 d1 ?? jne basic block L3

L13: 33 c9 ?? xor ecx, ecx
 3a e0 ?? cmp ah, al
 74 09 ?? je basic block L16

L14: b9 ff ff ff ff ?? mov ecx, 0xffffffff<4294967295,-1>
 72 02 ?? jb basic block L16

L15: f7 d9 ?? neg ecx

L16: 8b c1 ?? mov eax, ecx
 5b ?? pop ebx
 5e ?? pop esi
 5f ?? pop edi
 c9 ?? leave
 c3 ?? ret

