
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 83 ec 2c ?? sub esp, 0x2c<44>
 a1 88 80 42 00 ?? mov eax, dword ds:[0x00428088]
 33 c5 ?? xor eax, ebp
 89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
 53 ?? push ebx
 56 ?? push esi
 57 ?? push edi
 33 ff ?? xor edi, edi
 8b da ?? mov ebx, edx
 8b f1 ?? mov esi, ecx
 89 5d dc ?? mov dword ss:[ebp + 0xdc<220,-36>], ebx
 89 45 e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], eax
 39 3d 18 9c 42 00 ?? cmp dword ds:[0x00429c18], edi
 75 38 ?? jne basic block L8

L2: 6a 01 ?? push 1
 b8 dc 5f 42 00 ?? mov eax, 0x00425fdc
 50 ?? push eax
 6a 01 ?? push 1
 50 ?? push eax
 57 ?? push edi
 57 ?? push edi
 ff 15 d4 a2 42 00 ?? call dword ds:[0x0042a2d4]

L3: 85 c0 ?? test eax, eax
 74 0c ?? je basic block L5

L4: c7 05 18 9c 42 00 01 00 ?? mov dword ds:[0x00429c18], 1
 00 00
 eb 15 ?? jmp basic block L8

L5: ff 15 e0 a1 42 00 ?? call dword ds:[0x0042a1e0]

L6: 83 f8 78 ?? cmp eax, 0x78<120>
 75 0a ?? jne basic block L8

L7: c7 05 18 9c 42 00 02 00 ?? mov dword ds:[0x00429c18], 2
 00 00

L8: 39 7d 10 ?? cmp dword ss:[ebp + 0x10<16>], edi
 7e 26 ?? jle basic block L14

L9: ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
 8b c3 ?? mov eax, ebx
 e8 6f ff ff ff ?? call function 0x004185fe

L10: 59 ?? pop ecx
 89 45 10 ?? mov dword ss:[ebp + 0x10<16>], eax

L11: 8b 55 18 ?? mov edx, dword ss:[ebp + 0x18<24>]
 3b d7 ?? cmp edx, edi
 7e 1e ?? jle basic block L16

L12: 8b 45 e4 ?? mov eax, dword ss:[ebp + 0xe4<228,-28>]
 52 ?? push edx
 e8 5b ff ff ff ?? call function 0x004185fe

L13: 8b d0 ?? mov edx, eax
 59 ?? pop ecx
 89 55 18 ?? mov dword ss:[ebp + 0x18<24>], edx
 eb 12 ?? jmp basic block L17

L14: 83 7d 10 ff ?? cmp dword ss:[ebp + 0x10<16>], 0xff<255,-1>
 7d e2 ?? jge basic block L11

L15: 33 c0 ?? xor eax, eax
 e9 c2 02 00 00 ?? jmp basic block L108

L16: 83 fa ff ?? cmp edx, 0xff<255,-1>
 7c f4 ?? jl basic block L15

L17: 8b 0d 18 9c 42 00 ?? mov ecx, dword ds:[0x00429c18]
 83 f9 02 ?? cmp ecx, 2
 0f 84 f9 01 00 00 ?? je basic block L88

L18: 3b cf ?? cmp ecx, edi
 0f 84 f1 01 00 00 ?? je basic block L88

L19: 33 c0 ?? xor eax, eax
 40 ?? inc eax
 3b c8 ?? cmp ecx, eax
 75 d6 ?? jne basic block L15

L20: 89 7d d8 ?? mov dword ss:[ebp + 0xd8<216,-40>], edi
 39 7d 1c ?? cmp dword ss:[ebp + 0x1c<28>], edi
 75 08 ?? jne basic block L22

L21: 8b 0e ?? mov ecx, dword ds:[esi]
 8b 49 04 ?? mov ecx, dword ds:[ecx + 4]
 89 4d 1c ?? mov dword ss:[ebp + 0x1c<28>], ecx

L22: 39 7d 10 ?? cmp dword ss:[ebp + 0x10<16>], edi
 74 08 ?? je basic block L24

L23: 3b d7 ?? cmp edx, edi
 0f 85 9a 00 00 00 ?? jne basic block L49

L24: 39 55 10 ?? cmp dword ss:[ebp + 0x10<16>], edx
 75 08 ?? jne basic block L27

L25: 6a 02 ?? push 2

L26: 58 ?? pop eax
 e9 75 02 00 00 ?? jmp basic block L108

L27: 3b d0 ?? cmp edx, eax
 0f 8f 6d 02 00 00 ?? jg basic block L108

L28: 39 45 10 ?? cmp dword ss:[ebp + 0x10<16>], eax
 7e 04 ?? jle basic block L30

L29: 6a 03 ?? push 3
 eb e9 ?? jmp basic block L26

L30: 8d 45 e8 ?? lea eax, ss:[ebp + 0xe8<232,-24>]
 50 ?? push eax
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 ff 15 6c a2 42 00 ?? call dword ds:[0x0042a26c]

L31: 85 c0 ?? test eax, eax
 74 8a ?? je basic block L15

L32: 39 7d 10 ?? cmp dword ss:[ebp + 0x10<16>], edi
 7e 29 ?? jle basic block L40

L33: 83 7d e8 02 ?? cmp dword ss:[ebp + 0xe8<232,-24>], 2
 72 e0 ?? jb basic block L29

L34: 80 7d ee 00 ?? cmp byte ss:[ebp + 0xee<238,-18>], 0
 8d 45 ee ?? lea eax, ss:[ebp + 0xee<238,-18>]
 74 d7 ?? je basic block L29

L35: 8a 50 01 ?? mov dl, byte ds:[eax + 1]
 84 d2 ?? test dl, dl
 74 d0 ?? je basic block L29

L36: 8a 0b ?? mov cl, byte ds:[ebx]
 3a 08 ?? cmp cl, byte ds:[eax]
 72 04 ?? jb basic block L38

L37: 3a ca ?? cmp cl, dl
 76 b1 ?? jbe basic block L25

L38: 40 ?? inc eax
 40 ?? inc eax
 80 38 00 ?? cmp byte ds:[eax], 0
 75 e8 ?? jne basic block L35

L39: eb bd ?? jmp basic block L29

L40: 39 7d 18 ?? cmp dword ss:[ebp + 0x18<24>], edi
 7e 38 ?? jle basic block L49

L41: 83 7d e8 02 ?? cmp dword ss:[ebp + 0xe8<232,-24>], 2
 73 08 ?? jae basic block L43

L42: 33 c0 ?? xor eax, eax
 40 ?? inc eax
 e9 12 02 00 00 ?? jmp basic block L108

L43: 80 7d ee 00 ?? cmp byte ss:[ebp + 0xee<238,-18>], 0
 8d 45 ee ?? lea eax, ss:[ebp + 0xee<238,-18>]
 74 ef ?? je basic block L42

L44: 8a 50 01 ?? mov dl, byte ds:[eax + 1]
 84 d2 ?? test dl, dl
 74 e8 ?? je basic block L42

L45: 8b 4d e4 ?? mov ecx, dword ss:[ebp + 0xe4<228,-28>]
 8a 09 ?? mov cl, byte ds:[ecx]
 3a 08 ?? cmp cl, byte ds:[eax]
 72 08 ?? jb basic block L47

L46: 3a ca ?? cmp cl, dl
 0f 86 74 ff ff ff ?? jbe basic block L25

L47: 40 ?? inc eax
 40 ?? inc eax
 80 38 00 ?? cmp byte ds:[eax], 0
 75 e1 ?? jne basic block L44

L48: eb ce ?? jmp basic block L42

L49: 8b 35 bc a2 42 00 ?? mov esi, dword ds:[0x0042a2bc]
 57 ?? push edi
 57 ?? push edi
 ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
 53 ?? push ebx
 6a 09 ?? push 9
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 ff d6 ?? call esi

L50: 8b d8 ?? mov ebx, eax
 89 5d d4 ?? mov dword ss:[ebp + 0xd4<212,-44>], ebx
 3b df ?? cmp ebx, edi
 0f 84 ff fe ff ff ?? je basic block L15

L51: bf 00 04 00 00 ?? mov edi, 0x00000400<1024>
 85 db ?? test ebx, ebx
 7e 40 ?? jle basic block L62

L52: 6a e0 ?? push 0xe0<224,-32>
 33 d2 ?? xor edx, edx
 58 ?? pop eax
 f7 f3 ?? div ebx
 83 f8 02 ?? cmp eax, 2
 72 34 ?? jb basic block L62

L53: 8d 44 1b 08 ?? lea eax, ds:[ebx + ebx + 8]
 3b c7 ?? cmp eax, edi
 77 13 ?? ja basic block L57

L54: e8 1c db ff ff ?? call function 0x004162f0

L55: 8b c4 ?? mov eax, esp
 85 c0 ?? test eax, eax
 74 1c ?? je basic block L61

L56: c7 00 cc cc 00 00 ?? mov dword ds:[eax], 0x0000cccc<52428>
 eb 11 ?? jmp basic block L60

L57: 50 ?? push eax
 e8 09 a0 fe ff ?? call function 0x004027f1

L58: 59 ?? pop ecx
 85 c0 ?? test eax, eax
 74 09 ?? je basic block L61

L59: c7 00 dd dd 00 00 ?? mov dword ds:[eax], 0x0000dddd<56797>

L60: 83 c0 08 ?? add eax, 8

L61: 89 45 e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], eax
 eb 04 ?? jmp basic block L63

L62: 83 65 e0 00 ?? and dword ss:[ebp + 0xe0<224,-32>], 0

L63: 83 7d e0 00 ?? cmp dword ss:[ebp + 0xe0<224,-32>], 0
 0f 84 a8 fe ff ff ?? je basic block L15

L64: 53 ?? push ebx
 ff 75 e0 ?? push dword ss:[ebp + 0xe0<224,-32>]
 ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
 ff 75 dc ?? push dword ss:[ebp + 0xdc<220,-36>]
 6a 01 ?? push 1
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 ff d6 ?? call esi

L65: 85 c0 ?? test eax, eax
 0f 84 92 00 00 00 ?? je basic block L86

L66: 6a 00 ?? push 0
 6a 00 ?? push 0
 ff 75 18 ?? push dword ss:[ebp + 0x18<24>]
 ff 75 e4 ?? push dword ss:[ebp + 0xe4<228,-28>]
 6a 09 ?? push 9
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 ff d6 ?? call esi

L67: 8b d8 ?? mov ebx, eax
 85 db ?? test ebx, ebx
 74 7b ?? je basic block L86

L68: 7e 42 ?? jle basic block L78

L69: 6a e0 ?? push 0xe0<224,-32>
 33 d2 ?? xor edx, edx
 58 ?? pop eax
 f7 f3 ?? div ebx
 83 f8 02 ?? cmp eax, 2
 72 36 ?? jb basic block L78

L70: 8d 44 1b 08 ?? lea eax, ds:[ebx + ebx + 8]
 3b c7 ?? cmp eax, edi
 77 16 ?? ja basic block L74

L71: e8 9c da ff ff ?? call function 0x004162f0

L72: 8b fc ?? mov edi, esp
 85 ff ?? test edi, edi
 74 5a ?? je basic block L86

L73: c7 07 cc cc 00 00 ?? mov dword ds:[edi], 0x0000cccc<52428>
 83 c7 08 ?? add edi, 8
 eb 1a ?? jmp basic block L79

L74: 50 ?? push eax
 e8 86 9f fe ff ?? call function 0x004027f1

L75: 59 ?? pop ecx
 85 c0 ?? test eax, eax
 74 09 ?? je basic block L77

L76: c7 00 dd dd 00 00 ?? mov dword ds:[eax], 0x0000dddd<56797>
 83 c0 08 ?? add eax, 8

L77: 8b f8 ?? mov edi, eax
 eb 02 ?? jmp basic block L79

L78: 33 ff ?? xor edi, edi

L79: 85 ff ?? test edi, edi
 74 31 ?? je basic block L86

L80: 53 ?? push ebx
 57 ?? push edi
 ff 75 18 ?? push dword ss:[ebp + 0x18<24>]
 ff 75 e4 ?? push dword ss:[ebp + 0xe4<228,-28>]
 6a 01 ?? push 1
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 ff d6 ?? call esi

L81: 85 c0 ?? test eax, eax
 74 17 ?? je basic block L84

L82: 53 ?? push ebx
 57 ?? push edi
 ff 75 d4 ?? push dword ss:[ebp + 0xd4<212,-44>]
 ff 75 e0 ?? push dword ss:[ebp + 0xe0<224,-32>]
 ff 75 0c ?? push dword ss:[ebp + 12]
 ff 75 08 ?? push dword ss:[ebp + 8]
 ff 15 d4 a2 42 00 ?? call dword ds:[0x0042a2d4]

L83: 89 45 d8 ?? mov dword ss:[ebp + 0xd8<216,-40>], eax

L84: 57 ?? push edi
 e8 05 6a ff ff ?? call function 0x0040f2b8

L85: 59 ?? pop ecx

L86: ff 75 e0 ?? push dword ss:[ebp + 0xe0<224,-32>]
 e8 fc 69 ff ff ?? call function 0x0040f2b8

L87: 8b 45 d8 ?? mov eax, dword ss:[ebp + 0xd8<216,-40>]
 59 ?? pop ecx
 e9 b5 00 00 00 ?? jmp basic block L108

L88: 33 ff ?? xor edi, edi
 33 db ?? xor ebx, ebx
 39 7d 08 ?? cmp dword ss:[ebp + 8], edi
 75 08 ?? jne basic block L90

L89: 8b 06 ?? mov eax, dword ds:[esi]
 8b 40 14 ?? mov eax, dword ds:[eax + 0x14<20>]
 89 45 08 ?? mov dword ss:[ebp + 8], eax

L90: 39 7d 1c ?? cmp dword ss:[ebp + 0x1c<28>], edi
 75 08 ?? jne basic block L92

L91: 8b 06 ?? mov eax, dword ds:[esi]
 8b 40 04 ?? mov eax, dword ds:[eax + 4]
 89 45 1c ?? mov dword ss:[ebp + 0x1c<28>], eax

L92: ff 75 08 ?? push dword ss:[ebp + 8]
 e8 e0 eb ff ff ?? call function 0x004174cb

L93: 8b f0 ?? mov esi, eax
 59 ?? pop ecx
 83 fe ff ?? cmp esi, 0xff<255,-1>
 0f 84 ba fd ff ff ?? je basic block L15

L94: 3b 75 1c ?? cmp esi, dword ss:[ebp + 0x1c<28>]
 74 50 ?? je basic block L102

L95: 6a 00 ?? push 0
 6a 00 ?? push 0
 8d 45 10 ?? lea eax, ss:[ebp + 0x10<16>]
 50 ?? push eax
 ff 75 dc ?? push dword ss:[ebp + 0xdc<220,-36>]
 56 ?? push esi
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 e8 04 ec ff ff ?? call function 0x00417514

L96: 8b d8 ?? mov ebx, eax
 83 c4 18 ?? add esp, 0x18<24>
 85 db ?? test ebx, ebx
 0f 84 94 fd ff ff ?? je basic block L15

L97: 6a 00 ?? push 0
 6a 00 ?? push 0
 8d 45 18 ?? lea eax, ss:[ebp + 0x18<24>]
 50 ?? push eax
 ff 75 e4 ?? push dword ss:[ebp + 0xe4<228,-28>]
 56 ?? push esi
 ff 75 1c ?? push dword ss:[ebp + 0x1c<28>]
 e8 e3 eb ff ff ?? call function 0x00417514

L98: 8b f8 ?? mov edi, eax
 83 c4 18 ?? add esp, 0x18<24>
 85 ff ?? test edi, edi
 75 0c ?? jne basic block L101

L99: 53 ?? push ebx
 e8 59 99 fe ff ?? call function 0x00402299

L100: 59 ?? pop ecx
 e9 6b fd ff ff ?? jmp basic block L15

L101: 89 5d dc ?? mov dword ss:[ebp + 0xdc<220,-36>], ebx
 89 7d e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], edi

L102: ff 75 18 ?? push dword ss:[ebp + 0x18<24>]
 ff 75 e4 ?? push dword ss:[ebp + 0xe4<228,-28>]
 ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
 ff 75 dc ?? push dword ss:[ebp + 0xdc<220,-36>]
 ff 75 0c ?? push dword ss:[ebp + 12]
 ff 75 08 ?? push dword ss:[ebp + 8]
 ff 15 d0 a2 42 00 ?? call dword ds:[0x0042a2d0]

L103: 8b f0 ?? mov esi, eax
 85 db ?? test ebx, ebx
 74 0e ?? je basic block L107

L104: 53 ?? push ebx
 e8 29 99 fe ff ?? call function 0x00402299

L105: 57 ?? push edi
 e8 23 99 fe ff ?? call function 0x00402299

L106: 59 ?? pop ecx
 59 ?? pop ecx

L107: 8b c6 ?? mov eax, esi

L108: 8d 65 c8 ?? lea esp, ss:[ebp + 0xc8<200,-56>]
 5f ?? pop edi
 5e ?? pop esi
 5b ?? pop ebx
 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
 33 cd ?? xor ecx, ebp
 e8 8c 8f fe ff ?? call function 0x00401916

L109: c9 ?? leave
 c3 ?? ret

