
L1: 55 ?? push ebp
 8b ec ?? mov ebp, esp
 6a fe ?? push 0xfe<254,-2>
 68 58 4f 40 00 ?? push 0x00404f58
 68 c0 21 40 00 ?? push function 0x004021c0
 64 a1 00 00 00 00 ?? mov eax, dword fs:[0]
 50 ?? push eax
 83 c4 e4 ?? add esp, 0xe4<228,-28>
 53 ?? push ebx
 56 ?? push esi
 57 ?? push edi
 a1 18 60 40 00 ?? mov eax, dword ds:[0x00406018]
 31 45 f8 ?? xor dword ss:[ebp + 0xf8<248,-8>], eax
 33 c5 ?? xor eax, ebp
 50 ?? push eax
 8d 45 f0 ?? lea eax, ss:[ebp + 0xf0<240,-16>]
 64 a3 00 00 00 00 ?? mov dword fs:[0], eax
 89 65 e8 ?? mov dword ss:[ebp + 0xe8<232,-24>], esp
 c7 45 fc 00 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0
 c7 45 e4 00 00 00 00 ?? mov dword ss:[ebp + 0xe4<228,-28>], 0
 e8 aa ff ff ff ?? call function 0x00401350

L2: 8b 40 04 ?? mov eax, dword ds:[eax + 4]
 89 45 e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], eax
 c7 45 dc 00 00 00 00 ?? mov dword ss:[ebp + 0xdc<220,-36>], 0

L3: 8b 4d e0 ?? mov ecx, dword ss:[ebp + 0xe0<224,-32>]
 ba fc 63 40 00 ?? mov edx, 0x004063fc
 33 c0 ?? xor eax, eax
 f0 0f b1 0a ?? lock cmpxchg dword ds:[edx], ecx
 89 45 e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], eax
 83 7d e4 00 ?? cmp dword ss:[ebp + 0xe4<228,-28>], 0
 74 13 ?? je basic block L7

L4: 8b 45 e4 ?? mov eax, dword ss:[ebp + 0xe4<228,-28>]
 3b 45 e0 ?? cmp eax, dword ss:[ebp + 0xe0<224,-32>]
 75 09 ?? jne basic block L6

L5: c7 45 dc 01 00 00 00 ?? mov dword ss:[ebp + 0xdc<220,-36>], 1
 eb 02 ?? jmp basic block L7

L6: eb d6 ?? jmp basic block L3

L7: 83 3d 00 64 40 00 01 ?? cmp dword ds:[0x00406400], 1
 75 0c ?? jne basic block L10

L8: 6a 1f ?? push 0x1f<31>
 e8 dd 07 00 00 ?? call function 0x00401bca

L9: 83 c4 04 ?? add esp, 4
 eb 4b ?? jmp basic block L16

L10: 83 3d 00 64 40 00 00 ?? cmp dword ds:[0x00406400], 0
 75 38 ?? jne basic block L15

L11: c7 05 00 64 40 00 01 00 ?? mov dword ds:[0x00406400], 1
 00 00
 68 08 41 40 00 ?? push 0x00404108
 68 f8 40 40 00 ?? push 0x004040f8
 e8 98 0d 00 00 ?? call function 0x004021ac

L12: 83 c4 08 ?? add esp, 8
 85 c0 ?? test eax, eax
 74 16 ?? je basic block L14

L13: c7 45 d4 ff 00 00 00 ?? mov dword ss:[ebp + 0xd4<212,-44>], 0x000000ff<255>
 c7 45 fc fe ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xfffffffe<4294967294,-2>
 8b 45 d4 ?? mov eax, dword ss:[ebp + 0xd4<212,-44>]
 e9 54 01 00 00 ?? jmp basic block L44

L14: eb 0a ?? jmp basic block L16

L15: c7 05 9c 60 40 00 01 00 ?? mov dword ds:[0x0040609c], 1
 00 00

L16: 83 3d 00 64 40 00 01 ?? cmp dword ds:[0x00406400], 1
 75 1c ?? jne basic block L19

L17: 68 f4 40 40 00 ?? push 0x004040f4
 68 ec 40 40 00 ?? push 0x004040ec
 e8 5d 0d 00 00 ?? call function 0x004021b2

L18: 83 c4 08 ?? add esp, 8
 c7 05 00 64 40 00 02 00 ?? mov dword ds:[0x00406400], 2
 00 00

L19: 83 3d 00 64 40 00 02 ?? cmp dword ds:[0x00406400], 2
 74 27 ?? je basic block L23

L20: 68 58 41 40 00 ?? push 0x00404158<"__native_startup_state =="+14 more>
 68 a8 41 40 00 ?? push 0x004041a8<"%s">
 6a 00 ?? push 0
 68 cf 01 00 00 ?? push 0x000001cf<463>
 68 b0 41 40 00 ?? push 0x004041b0<"f:\\dd\\vctools\\crt_bld\\sel"+22 more>
 6a 02 ?? push 2
 ff 15 c8 40 40 00 ?? call dword ds:[0x004040c8]

L21: 83 c4 18 ?? add esp, 0x18<24>
 83 f8 01 ?? cmp eax, 1
 75 01 ?? jne basic block L23

L22: cc ?? int3

L23: 83 7d dc 00 ?? cmp dword ss:[ebp + 0xdc<220,-36>], 0
 75 09 ?? jne basic block L25

L24: 33 d2 ?? xor edx, edx
 b8 fc 63 40 00 ?? mov eax, 0x004063fc
 87 10 ?? xchg dword ds:[eax], edx

L25: 83 3d 0c 64 40 00 00 ?? cmp dword ds:[0x0040640c], 0
 74 1d ?? je basic block L29

L26: 68 0c 64 40 00 ?? push 0x0040640c
 e8 bc 07 00 00 ?? call function 0x00401c70

L27: 83 c4 04 ?? add esp, 4
 85 c0 ?? test eax, eax
 74 0c ?? je basic block L29

L28: 6a 00 ?? push 0
 6a 02 ?? push 2
 6a 00 ?? push 0
 ff 15 0c 64 40 00 ?? call dword ds:[0x0040640c]

L29: 6a 01 ?? push 1
 ff 15 c4 40 40 00 ?? call dword ds:[0x004040c4]

L30: 83 c4 04 ?? add esp, 4
 8b 0d 98 40 40 00 ?? mov ecx, dword ds:[0x00404098<"FR@">]
 8b 15 a8 60 40 00 ?? mov edx, dword ds:[0x004060a8]
 89 11 ?? mov dword ds:[ecx], edx
 a1 a8 60 40 00 ?? mov eax, dword ds:[0x004060a8]
 50 ?? push eax
 8b 0d a4 60 40 00 ?? mov ecx, dword ds:[0x004060a4]
 51 ?? push ecx
 8b 15 a0 60 40 00 ?? mov edx, dword ds:[0x004060a0]
 52 ?? push edx
 e8 67 0d 00 00 ?? call function 0x00402260

L31: 83 c4 0c ?? add esp, 12
 a3 98 60 40 00 ?? mov dword ds:[0x00406098], eax
 83 3d b0 60 40 00 00 ?? cmp dword ds:[0x004060b0], 0
 75 0c ?? jne basic block L33

L32: a1 98 60 40 00 ?? mov eax, dword ds:[0x00406098]
 50 ?? push eax
 ff 15 c0 40 40 00 ?? call dword ds:[0x004040c0]

L33: 83 3d 9c 60 40 00 00 ?? cmp dword ds:[0x0040609c], 0
 75 06 ?? jne basic block L35

L34: ff 15 b8 40 40 00 ?? call dword ds:[0x004040b8]

L35: c7 45 fc fe ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xfffffffe<4294967294,-2>
 eb 52 ?? jmp basic block L43

L36: 8b 4d ec ?? mov ecx, dword ss:[ebp + 0xec<236,-20>]
 8b 11 ?? mov edx, dword ds:[ecx]
 8b 02 ?? mov eax, dword ds:[edx]
 89 45 d8 ?? mov dword ss:[ebp + 0xd8<216,-40>], eax
 8b 4d ec ?? mov ecx, dword ss:[ebp + 0xec<236,-20>]
 51 ?? push ecx
 8b 55 d8 ?? mov edx, dword ss:[ebp + 0xd8<216,-40>]
 52 ?? push edx
 e8 7f 06 00 00 ?? call function 0x00401bc4

L37: 83 c4 08 ?? add esp, 8
 c3 ?? ret

L38: 8b 65 e8 ?? mov esp, dword ss:[ebp + 0xe8<232,-24>]
 8b 45 d8 ?? mov eax, dword ss:[ebp + 0xd8<216,-40>]
 a3 98 60 40 00 ?? mov dword ds:[0x00406098], eax
 83 3d b0 60 40 00 00 ?? cmp dword ds:[0x004060b0], 0
 75 0d ?? jne basic block L40

L39: 8b 0d 98 60 40 00 ?? mov ecx, dword ds:[0x00406098]
 51 ?? push ecx
 ff 15 bc 40 40 00 ?? call dword ds:[0x004040bc]

L40: 83 3d 9c 60 40 00 00 ?? cmp dword ds:[0x0040609c], 0
 75 06 ?? jne basic block L42

L41: ff 15 b8 40 40 00 ?? call dword ds:[0x004040b8]

L42: c7 45 fc fe ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xfffffffe<4294967294,-2>

L43: a1 98 60 40 00 ?? mov eax, dword ds:[0x00406098]

L44: 8b 4d f0 ?? mov ecx, dword ss:[ebp + 0xf0<240,-16>]
 64 89 0d 00 00 00 00 ?? mov dword fs:[0], ecx
 59 ?? pop ecx
 5f ?? pop edi
 5e ?? pop esi
 5b ?? pop ebx
 8b e5 ?? mov esp, ebp
 5d ?? pop ebp
 c3 ?? ret

