
L1: 55 ?? push ebp
 8b ec ?? mov ebp, esp
 53 ?? push ebx
 8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
 56 ?? push esi
 8b f1 ?? mov esi, ecx
 83 fb fe ?? cmp ebx, 0xfe<254,-2>
 76 0b ?? jbe basic block L3

L2: 68 5c 68 40 00 ?? push 0x0040685c<"string too long">
 ff 15 98 92 40 00 ?? call dword ds:[0x00409298]

L3: 8b 46 14 ?? mov eax, dword ds:[esi + 0x14<20>]
 3b c3 ?? cmp eax, ebx
 73 18 ?? jae basic block L6

L4: 8b 46 10 ?? mov eax, dword ds:[esi + 0x10<16>]
 50 ?? push eax
 53 ?? push ebx
 e8 de f2 ff ff ?? call function 0x00401019

L5: 33 c9 ?? xor ecx, ecx
 3b cb ?? cmp ecx, ebx
 1b c0 ?? sbb eax, eax
 5e ?? pop esi
 f7 d8 ?? neg eax
 5b ?? pop ebx
 5d ?? pop ebp
 c2 08 00 ?? ret 8

L6: 80 7d 0c 00 ?? cmp byte ss:[ebp + 12], 0
 74 4e ?? je basic block L17

L7: 83 fb 10 ?? cmp ebx, 0x10<16>
 73 49 ?? jae basic block L17

L8: 57 ?? push edi
 8b 7e 10 ?? mov edi, dword ds:[esi + 0x10<16>]
 3b df ?? cmp ebx, edi
 73 02 ?? jae basic block L10

L9: 8b fb ?? mov edi, ebx

L10: 83 f8 10 ?? cmp eax, 0x10<16>
 72 1d ?? jb basic block L16

L11: 8b 1e ?? mov ebx, dword ds:[esi]
 85 ff ?? test edi, edi
 74 0b ?? je basic block L14

L12: 57 ?? push edi
 53 ?? push ebx
 56 ?? push esi
 e8 b7 05 00 00 ?? call function 0x00402328

L13: 83 c4 0c ?? add esp, 12

L14: 53 ?? push ebx
 e8 a8 05 00 00 ?? call function 0x00402322

L15: 8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
 83 c4 04 ?? add esp, 4

L16: 89 7e 10 ?? mov dword ds:[esi + 0x10<16>], edi
 c7 46 14 0f 00 00 00 ?? mov dword ds:[esi + 0x14<20>], 15
 33 c9 ?? xor ecx, ecx
 c6 04 37 00 ?? mov byte ds:[edi + esi], 0
 3b cb ?? cmp ecx, ebx
 5f ?? pop edi
 1b c0 ?? sbb eax, eax
 5e ?? pop esi
 f7 d8 ?? neg eax
 5b ?? pop ebx
 5d ?? pop ebp
 c2 08 00 ?? ret 8

L17: 85 db ?? test ebx, ebx
 75 0d ?? jne basic block L21

L18: 89 5e 10 ?? mov dword ds:[esi + 0x10<16>], ebx
 83 f8 10 ?? cmp eax, 0x10<16>
 72 02 ?? jb basic block L20

L19: 8b 36 ?? mov esi, dword ds:[esi]

L20: c6 06 00 ?? mov byte ds:[esi], 0

L21: 33 c9 ?? xor ecx, ecx
 3b cb ?? cmp ecx, ebx
 1b c0 ?? sbb eax, eax
 5e ?? pop esi
 f7 d8 ?? neg eax
 5b ?? pop ebx
 5d ?? pop ebp
 c2 08 00 ?? ret 8

