
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 83 ec 0c ?? sub esp, 12
 83 65 fc 00 ?? and dword ss:[ebp + 0xfc<252,-4>], 0
 83 7d 0c 01 ?? cmp dword ss:[ebp + 12], 1
 53 ?? push ebx
 56 ?? push esi
 57 ?? push edi
 8b 7d 10 ?? mov edi, dword ss:[ebp + 0x10<16>]
 8b f0 ?? mov esi, eax
 8b c7 ?? mov eax, edi
 0f 85 f9 00 00 00 ?? jne basic block L20

L2: 25 03 00 00 80 ?? and eax, 0x80000003
 79 05 ?? jns basic block L4

L3: 48 ?? dec eax
 83 c8 fc ?? or eax, 0xfc<252,-4>
 40 ?? inc eax

L4: 89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
 75 0c ?? jne basic block L6

L5: 8b c7 ?? mov eax, edi
 6a 64 ?? push 0x64<100>
 99 ?? cdq
 5b ?? pop ebx
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 75 1f ?? jne basic block L8

L6: 8d 87 6c 07 00 00 ?? lea eax, ds:[edi + 0x0000076c<1900>]
 99 ?? cdq
 bb 90 01 00 00 ?? mov ebx, 0x00000190<400>
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 74 0d ?? je basic block L8

L7: 8b c6 ?? mov eax, esi
 c1 e0 02 ?? shl eax, 2
 8b b0 60 8d 42 00 ?? mov esi, dword ds:[eax + 0x00428d60]
 eb 0b ?? jmp basic block L9

L8: 8b c6 ?? mov eax, esi
 c1 e0 02 ?? shl eax, 2
 8b b0 2c 8d 42 00 ?? mov esi, dword ds:[eax + 0x00428d2c]

L9: 89 45 0c ?? mov dword ss:[ebp + 12], eax
 8d 87 2b 01 00 00 ?? lea eax, ds:[edi + 0x0000012b<299>]
 99 ?? cdq
 8d 5f ff ?? lea ebx, ds:[edi + 0xff<255,-1>]
 bf 90 01 00 00 ?? mov edi, 0x00000190<400>
 f7 ff ?? idiv edi
 6a 64 ?? push 0x64<100>
 5f ?? pop edi
 46 ?? inc esi
 6a 07 ?? push 7
 89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
 8b c3 ?? mov eax, ebx
 99 ?? cdq
 f7 ff ?? idiv edi
 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
 8b 7d 10 ?? mov edi, dword ss:[ebp + 0x10<16>]
 2b d0 ?? sub edx, eax
 8b da ?? mov ebx, edx
 8d 47 ff ?? lea eax, ds:[edi + 0xff<255,-1>]
 99 ?? cdq
 83 e2 03 ?? and edx, 3
 03 c2 ?? add eax, edx
 c1 f8 02 ?? sar eax, 2
 8b d7 ?? mov edx, edi
 69 d2 6d 01 00 00 ?? imul edx, edx, 0x0000016d<365>
 03 c6 ?? add eax, esi
 03 c3 ?? add eax, ebx
 8d 84 02 25 9c ff ff ?? lea eax, ds:[edx + eax + 0xffff9c25<4294941733,-25563>]
 99 ?? cdq
 5b ?? pop ebx
 f7 fb ?? idiv ebx
 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
 6b c0 07 ?? imul eax, eax, 7
 2b c2 ?? sub eax, edx
 03 45 18 ?? add eax, dword ss:[ebp + 0x18<24>]
 3b 55 18 ?? cmp edx, dword ss:[ebp + 0x18<24>]
 7f 06 ?? jg basic block L11

L10: 8d 74 06 f9 ?? lea esi, ds:[esi + eax + 0xf9<249,-7>]
 eb 02 ?? jmp basic block L12

L11: 03 f0 ?? add esi, eax

L12: 83 7d 14 05 ?? cmp dword ss:[ebp + 0x14<20>], 5
 0f 85 80 00 00 00 ?? jne basic block L28

L13: 83 7d f4 00 ?? cmp dword ss:[ebp + 0xf4<244,-12>], 0
 75 0c ?? jne basic block L15

L14: 8b c7 ?? mov eax, edi
 6a 64 ?? push 0x64<100>
 99 ?? cdq
 5b ?? pop ebx
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 75 1d ?? jne basic block L17

L15: 8d 87 6c 07 00 00 ?? lea eax, ds:[edi + 0x0000076c<1900>]
 99 ?? cdq
 bb 90 01 00 00 ?? mov ebx, 0x00000190<400>
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 74 0b ?? je basic block L17

L16: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
 8b 80 64 8d 42 00 ?? mov eax, dword ds:[eax + 0x00428d64]
 eb 09 ?? jmp basic block L18

L17: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
 8b 80 30 8d 42 00 ?? mov eax, dword ds:[eax + 0x00428d30]

L18: 3b f0 ?? cmp esi, eax
 7e 44 ?? jle basic block L28

L19: 83 ee 07 ?? sub esi, 7
 eb 3f ?? jmp basic block L28

L20: 25 03 00 00 80 ?? and eax, 0x80000003
 79 05 ?? jns basic block L22

L21: 48 ?? dec eax
 83 c8 fc ?? or eax, 0xfc<252,-4>
 40 ?? inc eax

L22: 75 0c ?? jne basic block L24

L23: 8b c7 ?? mov eax, edi
 6a 64 ?? push 0x64<100>
 99 ?? cdq
 5b ?? pop ebx
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 75 1b ?? jne basic block L26

L24: 8d 87 6c 07 00 00 ?? lea eax, ds:[edi + 0x0000076c<1900>]
 99 ?? cdq
 bb 90 01 00 00 ?? mov ebx, 0x00000190<400>
 f7 fb ?? idiv ebx
 85 d2 ?? test edx, edx
 74 09 ?? je basic block L26

L25: 8b 34 b5 60 8d 42 00 ?? mov esi, dword ds:[0x00428d60 + esi * 4]
 eb 07 ?? jmp basic block L27

L26: 8b 34 b5 2c 8d 42 00 ?? mov esi, dword ds:[0x00428d2c + esi * 4]

L27: 03 75 1c ?? add esi, dword ss:[ebp + 0x1c<28>]

L28: 6b c9 3c ?? imul ecx, ecx, 0x3c<60>
 03 4d 20 ?? add ecx, dword ss:[ebp + 0x20<32>]
 6b c9 3c ?? imul ecx, ecx, 0x3c<60>
 03 4d 24 ?? add ecx, dword ss:[ebp + 0x24<36>]
 69 c9 e8 03 00 00 ?? imul ecx, ecx, 0x000003e8<1000>
 03 4d 28 ?? add ecx, dword ss:[ebp + 0x28<40>]
 83 7d 08 01 ?? cmp dword ss:[ebp + 8], 1
 75 14 ?? jne basic block L30

L29: 89 35 1c 8d 42 00 ?? mov dword ds:[0x00428d1c], esi
 89 0d 20 8d 42 00 ?? mov dword ds:[0x00428d20], ecx
 89 3d 18 8d 42 00 ?? mov dword ds:[0x00428d18], edi
 eb 6b ?? jmp basic block L39

L30: 8d 45 fc ?? lea eax, ss:[ebp + 0xfc<252,-4>]
 50 ?? push eax
 89 35 28 8d 42 00 ?? mov dword ds:[0x00428d28], esi
 89 0d 2c 8d 42 00 ?? mov dword ds:[0x00428d2c], ecx
 e8 bd f9 ff ff ?? call function 0x00416160

L31: 59 ?? pop ecx
 85 c0 ?? test eax, eax
 74 0f ?? je basic block L34

L32: 33 c0 ?? xor eax, eax
 50 ?? push eax
 50 ?? push eax
 50 ?? push eax
 50 ?? push eax
 50 ?? push eax
 e8 aa 23 ff ff ?? call function 0x00408b5e

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

L34: 8b 45 fc ?? mov eax, dword ss:[ebp + 0xfc<252,-4>]
 69 c0 e8 03 00 00 ?? imul eax, eax, 0x000003e8<1000>
 01 05 2c 8d 42 00 ?? add dword ds:[0x00428d2c], eax
 79 12 ?? jns basic block L36

L35: 81 05 2c 8d 42 00 00 5c ?? add dword ds:[0x00428d2c], 0x05265c00
 26 05
 ff 0d 28 8d 42 00 ?? dec dword ds:[0x00428d28]
 eb 19 ?? jmp basic block L38

L36: b8 00 5c 26 05 ?? mov eax, 0x05265c00
 39 05 2c 8d 42 00 ?? cmp dword ds:[0x00428d2c], eax
 7c 0c ?? jl basic block L38

L37: 29 05 2c 8d 42 00 ?? sub dword ds:[0x00428d2c], eax
 ff 05 28 8d 42 00 ?? inc dword ds:[0x00428d28]

L38: 89 3d 24 8d 42 00 ?? mov dword ds:[0x00428d24], edi

L39: 5f ?? pop edi
 5e ?? pop esi
 5b ?? pop ebx
 c9 ?? leave
 c3 ?? ret

