
L1: 8b ff ?? mov edi, edi
 55 ?? push ebp
 8b ec ?? mov ebp, esp
 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
 83 ec 10 ?? sub esp, 0x10<16>
 85 c0 ?? test eax, eax
 75 02 ?? jne basic block L3

L2: c9 ?? leave
 c3 ?? ret

L3: 53 ?? push ebx
 8b 5d 10 ?? mov ebx, dword ss:[ebp + 0x10<16>]
 56 ?? push esi
 8b 30 ?? mov esi, dword ds:[eax]
 57 ?? push edi
 8b 7d 0c ?? mov edi, dword ss:[ebp + 12]
 85 ff ?? test edi, edi
 74 06 ?? je basic block L5

L4: 80 7f 08 00 ?? cmp byte ds:[edi + 8], 0
 75 16 ?? jne basic block L7

L5: 8b 06 ?? mov eax, dword ds:[esi]
 3d 4d 4f 43 e0 ?? cmp eax, 0xe0434f4d
 0f 84 c1 00 00 00 ?? je basic block L27

L6: f6 c3 40 ?? test bl, 0x40<64>
 0f 84 b8 00 00 00 ?? je basic block L27

L7: 81 3e 63 73 6d e0 ?? cmp dword ds:[esi], 0xe06d7363
 0f 85 e5 00 00 00 ?? jne basic block L35

L8: 83 7e 10 03 ?? cmp dword ds:[esi + 0x10<16>], 3
 0f 85 db 00 00 00 ?? jne basic block L35

L9: 8b 46 14 ?? mov eax, dword ds:[esi + 0x14<20>]
 3d 20 05 93 19 ?? cmp eax, 0x19930520
 74 12 ?? je basic block L12

L10: 3d 21 05 93 19 ?? cmp eax, 0x19930521
 74 0b ?? je basic block L12

L11: 3d 22 05 93 19 ?? cmp eax, 0x19930522
 0f 85 bf 00 00 00 ?? jne basic block L35

L12: 83 7e 1c 00 ?? cmp dword ds:[esi + 0x1c<28>], 0
 75 1d ?? jne basic block L17

L13: e8 96 09 00 00 ?? call function 0x00403679

L14: 83 b8 88 00 00 00 00 ?? cmp dword ds:[eax + 0x00000088<136>], 0
 0f 84 a7 00 00 00 ?? je basic block L35

L15: e8 84 09 00 00 ?? call function 0x00403679

L16: 8b b0 88 00 00 00 ?? mov esi, dword ds:[eax + 0x00000088<136>]

L17: 8b 46 1c ?? mov eax, dword ds:[esi + 0x1c<28>]
 8b 40 0c ?? mov eax, dword ds:[eax + 12]
 81 cb 00 00 00 80 ?? or ebx, 0x80000000
 89 7d f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], edi
 8b 38 ?? mov edi, dword ds:[eax]
 89 5d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ebx
 8d 58 04 ?? lea ebx, ds:[eax + 4]
 eb 1d ?? jmp basic block L21

L18: 8b 03 ?? mov eax, dword ds:[ebx]
 ff 76 1c ?? push dword ds:[esi + 0x1c<28>]
 89 45 08 ?? mov dword ss:[ebp + 8], eax
 50 ?? push eax
 8d 45 f0 ?? lea eax, ss:[ebp + 0xf0<240,-16>]
 50 ?? push eax
 e8 9e f4 ff ff ?? call function 0x004021c4

L19: 83 c4 0c ?? add esp, 12
 85 c0 ?? test eax, eax
 75 0a ?? jne basic block L23

L20: 4f ?? dec edi
 83 c3 04 ?? add ebx, 4

L21: 85 ff ?? test edi, edi
 7f df ?? jg basic block L18

L22: eb 60 ?? jmp basic block L35

L23: e8 3d 09 00 00 ?? call function 0x00403679

L24: 05 90 00 00 00 ?? add eax, 0x00000090<144>
 ff 00 ?? inc dword ds:[eax]
 83 7d 14 00 ?? cmp dword ss:[ebp + 0x14<20>], 0
 74 5e ?? je basic block L38

L25: ff 75 08 ?? push dword ss:[ebp + 8]
 8d 45 f0 ?? lea eax, ss:[ebp + 0xf0<240,-16>]
 50 ?? push eax
 ff 75 14 ?? push dword ss:[ebp + 0x14<20>]
 56 ?? push esi
 e8 7f fe ff ff ?? call function 0x00402bd8

L26: 83 c4 10 ?? add esp, 0x10<16>
 eb 49 ?? jmp basic block L38

L27: 3d 63 73 6d e0 ?? cmp eax, 0xe06d7363
 75 36 ?? jne basic block L36

L28: 83 7e 10 03 ?? cmp dword ds:[esi + 0x10<16>], 3
 75 30 ?? jne basic block L36

L29: 8b 46 14 ?? mov eax, dword ds:[esi + 0x14<20>]
 3d 20 05 93 19 ?? cmp eax, 0x19930520
 74 0e ?? je basic block L32

L30: 3d 21 05 93 19 ?? cmp eax, 0x19930521
 74 07 ?? je basic block L32

L31: 3d 22 05 93 19 ?? cmp eax, 0x19930522
 75 18 ?? jne basic block L36

L32: 83 7e 1c 00 ?? cmp dword ds:[esi + 0x1c<28>], 0
 75 12 ?? jne basic block L36

L33: e8 eb 08 00 00 ?? call function 0x00403679

L34: 83 b8 88 00 00 00 00 ?? cmp dword ds:[eax + 0x00000088<136>], 0
 75 04 ?? jne basic block L36

L35: 33 c0 ?? xor eax, eax
 eb 0f ?? jmp basic block L39

L36: e8 d9 08 00 00 ?? call function 0x00403679

L37: 05 90 00 00 00 ?? add eax, 0x00000090<144>
 ff 00 ?? inc dword ds:[eax]

L38: 33 c0 ?? xor eax, eax
 40 ?? inc eax

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

