
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 83 ec 20 ?? sub esp, 0x20<32>
 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
 53 ?? push ebx
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 33 db ?? xor ebx, ebx
 8d 4d e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32>]
 89 5d f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], ebx
 89 45 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], eax
 e8 51 6a ff ff ?? call function 0x00408349

L2: 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
 3b c3 ?? cmp eax, ebx
 75 2b ?? jne basic block L8

L3: e8 40 36 ff ff ?? call function 0x00404f44

L4: 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
 e8 01 73 ff ff ?? call function 0x00408c15

L5: 83 c4 14 ?? add esp, 0x14<20>
 38 5d ec ?? cmp byte ss:[ebp + 0xec<236,-20>], bl
 74 07 ?? je basic block L7

L6: 8b 45 e8 ?? mov eax, dword ss:[ebp + 0xe8<232,-24>]
 83 60 70 fd ?? and dword ds:[eax + 0x70<112>], 0xfd<253,-3>

L7: 33 c0 ?? xor eax, eax
 e9 50 01 00 00 ?? jmp basic block L51

L8: 57 ?? push edi
 8b 7d 0c ?? mov edi, dword ss:[ebp + 12]
 3b fb ?? cmp edi, ebx
 75 2b ?? jne basic block L14

L9: e8 0d 36 ff ff ?? call function 0x00404f44

L10: 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
 e8 ce 72 ff ff ?? call function 0x00408c15

L11: 83 c4 14 ?? add esp, 0x14<20>
 38 5d ec ?? cmp byte ss:[ebp + 0xec<236,-20>], bl
 74 07 ?? je basic block L13

L12: 8b 45 e8 ?? mov eax, dword ss:[ebp + 0xe8<232,-24>]
 83 60 70 fd ?? and dword ds:[eax + 0x70<112>], 0xfd<253,-3>

L13: 33 c0 ?? xor eax, eax
 e9 1c 01 00 00 ?? jmp basic block L50

L14: 56 ?? push esi
 8b 75 10 ?? mov esi, dword ss:[ebp + 0x10<16>]
 88 18 ?? mov byte ds:[eax], bl
 3b f3 ?? cmp esi, ebx
 0f 84 e7 00 00 00 ?? je basic block L43

L15: 8b 45 18 ?? mov eax, dword ss:[ebp + 0x18<24>]
 3b c3 ?? cmp eax, ebx
 75 09 ?? jne basic block L17

L16: 8b 45 e0 ?? mov eax, dword ss:[ebp + 0xe0<224,-32>]
 8b 80 d4 00 00 00 ?? mov eax, dword ds:[eax + 0x000000d4<212>]

L17: 89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
 89 7d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edi
 3b fb ?? cmp edi, ebx
 0f 86 9f 00 00 00 ?? jbe basic block L37

L18: 8a 06 ?? mov al, byte ds:[esi]
 3a c3 ?? cmp al, bl
 74 79 ?? je basic block L33

L19: 3c 25 ?? cmp al, 0x25<37>
 74 41 ?? je basic block L26

L20: 8d 4d e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32>]
 0f be c0 ?? movsx eax, al
 51 ?? push ecx
 50 ?? push eax
 e8 bf 51 00 00 ?? call function 0x00416b5f

L21: 59 ?? pop ecx
 59 ?? pop ecx
 85 c0 ?? test eax, eax
 74 1e ?? je basic block L25

L22: 33 c9 ?? xor ecx, ecx
 41 ?? inc ecx
 39 4d fc ?? cmp dword ss:[ebp + 0xfc<252,-4>], ecx
 76 16 ?? jbe basic block L25

L23: 8d 46 01 ?? lea eax, ds:[esi + 1]
 38 18 ?? cmp byte ds:[eax], bl
 74 70 ?? je basic block L36

L24: 8a 0e ?? mov cl, byte ds:[esi]
 8b 55 08 ?? mov edx, dword ss:[ebp + 8]
 88 0a ?? mov byte ds:[edx], cl
 ff 45 08 ?? inc dword ss:[ebp + 8]
 ff 4d fc ?? dec dword ss:[ebp + 0xfc<252,-4>]
 8b f0 ?? mov esi, eax

L25: 8a 06 ?? mov al, byte ds:[esi]
 8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
 88 01 ?? mov byte ds:[ecx], al
 ff 45 08 ?? inc dword ss:[ebp + 8]
 46 ?? inc esi
 ff 4d fc ?? dec dword ss:[ebp + 0xfc<252,-4>]
 eb 2f ?? jmp basic block L32

L26: 8b 55 14 ?? mov edx, dword ss:[ebp + 0x14<20>]
 3b d3 ?? cmp edx, ebx
 74 77 ?? je basic block L43

L27: 46 ?? inc esi
 33 c0 ?? xor eax, eax
 80 3e 23 ?? cmp byte ds:[esi], 0x23<35>
 75 02 ?? jne basic block L29

L28: 40 ?? inc eax
 46 ?? inc esi

L29: 50 ?? push eax
 ff 75 f4 ?? push dword ss:[ebp + 0xf4<244,-12>]
 8d 45 fc ?? lea eax, ss:[ebp + 0xfc<252,-4>]
 50 ?? push eax
 8d 45 e0 ?? lea eax, ss:[ebp + 0xe0<224,-32>]
 50 ?? push eax
 8a 06 ?? mov al, byte ds:[esi]
 8d 4d 08 ?? lea ecx, ss:[ebp + 8]
 e8 95 f6 ff ff ?? call function 0x00411090

L30: 83 c4 10 ?? add esp, 0x10<16>
 85 c0 ?? test eax, eax
 74 42 ?? je basic block L41

L31: 46 ?? inc esi

L32: 39 5d fc ?? cmp dword ss:[ebp + 0xfc<252,-4>], ebx
 77 81 ?? ja basic block L18

L33: 39 5d fc ?? cmp dword ss:[ebp + 0xfc<252,-4>], ebx
 76 1b ?? jbe basic block L37

L34: 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
 88 18 ?? mov byte ds:[eax], bl
 2b 7d fc ?? sub edi, dword ss:[ebp + 0xfc<252,-4>]
 8b c7 ?? mov eax, edi
 38 5d ec ?? cmp byte ss:[ebp + 0xec<236,-20>], bl
 74 5c ?? je basic block L49

L35: 8b 4d e8 ?? mov ecx, dword ss:[ebp + 0xe8<232,-24>]
 83 61 70 fd ?? and dword ds:[ecx + 0x70<112>], 0xfd<253,-3>
 eb 53 ?? jmp basic block L49

L36: 89 4d f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], ecx

L37: 8b 45 f0 ?? mov eax, dword ss:[ebp + 0xf0<240,-16>]
 88 18 ?? mov byte ds:[eax], bl
 39 5d f8 ?? cmp dword ss:[ebp + 0xf8<248,-8>], ebx
 75 20 ?? jne basic block L43

L38: 39 5d fc ?? cmp dword ss:[ebp + 0xfc<252,-4>], ebx
 77 1b ?? ja basic block L43

L39: e8 08 35 ff ff ?? call function 0x00404f44

L40: c7 00 22 00 00 00 ?? mov dword ds:[eax], 0x00000022<34>
 eb 26 ?? jmp basic block L46

L41: 39 5d fc ?? cmp dword ss:[ebp + 0xfc<252,-4>], ebx
 76 df ?? jbe basic block L37

L42: c7 45 f8 01 00 00 00 ?? mov dword ss:[ebp + 0xf8<248,-8>], 1
 eb d6 ?? jmp basic block L37

L43: e8 ed 34 ff ff ?? call function 0x00404f44

L44: 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 53 ?? push ebx
 c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
 e8 ae 71 ff ff ?? call function 0x00408c15

L45: 83 c4 14 ?? add esp, 0x14<20>

L46: 38 5d ec ?? cmp byte ss:[ebp + 0xec<236,-20>], bl
 74 07 ?? je basic block L48

L47: 8b 45 e8 ?? mov eax, dword ss:[ebp + 0xe8<232,-24>]
 83 60 70 fd ?? and dword ds:[eax + 0x70<112>], 0xfd<253,-3>

L48: 33 c0 ?? xor eax, eax

L49: 5e ?? pop esi

L50: 5f ?? pop edi

L51: 5b ?? pop ebx
 c9 ?? leave
 c3 ?? ret

