4055af:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
4055b6:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
4055bc:	c7 86 00 02 00 00 0b 	movl   $0xb,0x200(%esi)
4055c3:	00 00 00
4055c6:	89 9e 04 02 00 00    	mov    %ebx,0x204(%esi)
4055cc:	e8 25 4e 00 00       	call   0x40a3f6
4055d1:	68 00 01 00 00       	push   $0x100
4055d6:	6a 69                	push   $0x69
4055d8:	59                   	pop    %ecx
4055d9:	e8 73 44 00 00       	call   0x409a51
4055de:	8b d0                	mov    %eax,%edx
4055e0:	8b ce                	mov    %esi,%ecx
4055e2:	e8 0f 4e 00 00       	call   0x40a3f6
4055e7:	8b 77 50             	mov    0x50(%edi),%esi
4055ea:	b9 9d 00 00 00       	mov    $0x9d,%ecx
4055ef:	81 c6 34 17 00 00    	add    $0x1734,%esi
4055f5:	e8 57 44 00 00       	call   0x409a51
4055fa:	8b c8                	mov    %eax,%ecx
4055fc:	e8 34 46 00 00       	call   0x409c35
405601:	83 a6 8c 02 00 00 00 	andl   $0x0,0x28c(%esi)
405608:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
40560e:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
405615:	ba 30 12 40 00       	mov    $0x401230,%edx
40561a:	6a 41                	push   $0x41
40561c:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
405622:	c7 86 04 02 00 00 10 	movl   $0x101010,0x204(%esi)
405629:	10 10 00
40562c:	e8 c5 4d 00 00       	call   0x40a3f6
405631:	68 00 01 00 00       	push   $0x100
405636:	6a 6b                	push   $0x6b
405638:	59                   	pop    %ecx
405639:	e8 13 44 00 00       	call   0x409a51
40563e:	8b d0                	mov    %eax,%edx
405640:	8b ce                	mov    %esi,%ecx
405642:	e8 af 4d 00 00       	call   0x40a3f6
405647:	8b 77 50             	mov    0x50(%edi),%esi
40564a:	b9 9c 00 00 00       	mov    $0x9c,%ecx
40564f:	81 c6 0c 12 00 00    	add    $0x120c,%esi
405655:	e8 f7 43 00 00       	call   0x409a51
40565a:	8b c8                	mov    %eax,%ecx
40565c:	e8 d4 45 00 00       	call   0x409c35
405661:	83 a6 8c 02 00 00 00 	andl   $0x0,0x28c(%esi)
405668:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
40566e:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
405675:	ba 30 12 40 00       	mov    $0x401230,%edx
40567a:	6a 41                	push   $0x41
40567c:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
405682:	c7 86 04 02 00 00 10 	movl   $0x1010,0x204(%esi)
405689:	10 00 00
40568c:	e8 65 4d 00 00       	call   0x40a3f6
405691:	68 00 01 00 00       	push   $0x100
405696:	6a 6a                	push   $0x6a
405698:	59                   	pop    %ecx
405699:	e8 b3 43 00 00       	call   0x409a51
40569e:	8b d0                	mov    %eax,%edx
4056a0:	8b ce                	mov    %esi,%ecx
4056a2:	e8 4f 4d 00 00       	call   0x40a3f6
4056a7:	8b 77 50             	mov    0x50(%edi),%esi
4056aa:	b9 9e 00 00 00       	mov    $0x9e,%ecx
4056af:	81 c6 a0 14 00 00    	add    $0x14a0,%esi
4056b5:	e8 97 43 00 00       	call   0x409a51
4056ba:	8b c8                	mov    %eax,%ecx
4056bc:	e8 74 45 00 00       	call   0x409c35
4056c1:	83 a6 8c 02 00 00 00 	andl   $0x0,0x28c(%esi)
4056c8:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
4056ce:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
4056d5:	ba 30 12 40 00       	mov    $0x401230,%edx
4056da:	6a 41                	push   $0x41
4056dc:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
4056e2:	89 9e 04 02 00 00    	mov    %ebx,0x204(%esi)
4056e8:	e8 09 4d 00 00       	call   0x40a3f6
4056ed:	68 00 01 00 00       	push   $0x100
4056f2:	6a 6c                	push   $0x6c
4056f4:	59                   	pop    %ecx
4056f5:	e8 57 43 00 00       	call   0x409a51
4056fa:	8b d0                	mov    %eax,%edx
4056fc:	8b ce                	mov    %esi,%ecx
4056fe:	e8 f3 4c 00 00       	call   0x40a3f6
405703:	8b 77 50             	mov    0x50(%edi),%esi
405706:	b9 9f 00 00 00       	mov    $0x9f,%ecx
40570b:	81 c6 e4 0c 00 00    	add    $0xce4,%esi
405711:	e8 3b 43 00 00       	call   0x409a51
405716:	8b c8                	mov    %eax,%ecx
405718:	e8 18 45 00 00       	call   0x409c35
40571d:	83 a6 8c 02 00 00 00 	andl   $0x0,0x28c(%esi)
405724:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
40572a:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
405731:	ba 30 12 40 00       	mov    $0x401230,%edx
405736:	6a 41                	push   $0x41
405738:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
40573e:	89 9e 04 02 00 00    	mov    %ebx,0x204(%esi)
405744:	e8 ad 4c 00 00       	call   0x40a3f6
405749:	68 00 01 00 00       	push   $0x100
40574e:	6a 6d                	push   $0x6d
405750:	59                   	pop    %ecx
405751:	e8 fb 42 00 00       	call   0x409a51
405756:	8b d0                	mov    %eax,%edx
405758:	8b ce                	mov    %esi,%ecx
40575a:	e8 97 4c 00 00       	call   0x40a3f6
40575f:	8b 77 50             	mov    0x50(%edi),%esi
405762:	b9 a4 00 00 00       	mov    $0xa4,%ecx
405767:	81 c6 c8 19 00 00    	add    $0x19c8,%esi
40576d:	e8 df 42 00 00       	call   0x409a51
405772:	8b c8                	mov    %eax,%ecx
405774:	e8 bc 44 00 00       	call   0x409c35
405779:	83 a6 8c 02 00 00 00 	andl   $0x0,0x28c(%esi)
405780:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
405786:	83 a6 90 02 00 00 00 	andl   $0x0,0x290(%esi)
40578d:	bb 10 d0 18 00       	mov    $0x18d010,%ebx
405792:	6a 41                	push   $0x41
405794:	ba 30 12 40 00       	mov    $0x401230,%edx
405799:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
40579f:	89 9e 04 02 00 00    	mov    %ebx,0x204(%esi)
4057a5:	e8 4c 4c 00 00       	call   0x40a3f6
4057aa:	68 00 01 00 00       	push   $0x100
4057af:	6a 6e                	push   $0x6e
4057b1:	59                   	pop    %ecx
4057b2:	e8 9a 42 00 00       	call   0x409a51
4057b7:	8b d0                	mov    %eax,%edx
4057b9:	8b ce                	mov    %esi,%ecx
4057bb:	e8 36 4c 00 00       	call   0x40a3f6
4057c0:	8b 77 50             	mov    0x50(%edi),%esi
4057c3:	b9 a4 00 00 00       	mov    $0xa4,%ecx
4057c8:	81 c6 5c 1c 00 00    	add    $0x1c5c,%esi
4057ce:	e8 7e 42 00 00       	call   0x409a51
4057d3:	8b c8                	mov    %eax,%ecx
4057d5:	e8 5b 44 00 00       	call   0x409c35
4057da:	89 9e 04 02 00 00    	mov    %ebx,0x204(%esi)
4057e0:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
4057e6:	33 db                	xor    %ebx,%ebx
4057e8:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
4057ee:	6a 41                	push   $0x41
4057f0:	ba 30 12 40 00       	mov    $0x401230,%edx
4057f5:	89 9e 8c 02 00 00    	mov    %ebx,0x28c(%esi)
4057fb:	89 9e 90 02 00 00    	mov    %ebx,0x290(%esi)
405801:	e8 f0 4b 00 00       	call   0x40a3f6
405806:	68 00 01 00 00       	push   $0x100
40580b:	6a 70                	push   $0x70
40580d:	59                   	pop    %ecx
40580e:	e8 3e 42 00 00       	call   0x409a51
405813:	8b d0                	mov    %eax,%edx
405815:	8b ce                	mov    %esi,%ecx
405817:	e8 da 4b 00 00       	call   0x40a3f6
40581c:	8b 77 50             	mov    0x50(%edi),%esi
40581f:	b9 a5 00 00 00       	mov    $0xa5,%ecx
405824:	81 c6 f0 1e 00 00    	add    $0x1ef0,%esi
40582a:	e8 22 42 00 00       	call   0x409a51
40582f:	8b c8                	mov    %eax,%ecx
405831:	e8 ff 43 00 00       	call   0x409c35
405836:	6a 41                	push   $0x41
405838:	8d 8e 08 02 00 00    	lea    0x208(%esi),%ecx
40583e:	89 86 00 02 00 00    	mov    %eax,0x200(%esi)
405844:	ba 30 12 40 00       	mov    $0x401230,%edx
405849:	c7 86 04 02 00 00 10 	movl   $0x1010,0x204(%esi)
405850:	10 00 00
405853:	89 9e 8c 02 00 00    	mov    %ebx,0x28c(%esi)
405859:	89 9e 90 02 00 00    	mov    %ebx,0x290(%esi)
40585f:	e8 92 4b 00 00       	call   0x40a3f6
405864:	68 00 01 00 00       	push   $0x100
405869:	6a 71                	push   $0x71
40586b:	59                   	pop    %ecx
40586c:	e8 e0 41 00 00       	call   0x409a51
405871:	8b d0                	mov    %eax,%edx
405873:	8b ce                	mov    %esi,%ecx
405875:	e8 7c 4b 00 00       	call   0x40a3f6
40587a:	8b 47 50             	mov    0x50(%edi),%eax
40587d:	33 f6                	xor    %esi,%esi
40587f:	46                   	inc    %esi
405880:	ba ff ef ff ff       	mov    $0xffffefff,%edx
405885:	39 77 14             	cmp    %esi,0x14(%edi)
405888:	75 1d                	jne    0x4058a7
40588a:	21 90 98 04 00 00    	and    %edx,0x498(%eax)
405890:	8b 47 50             	mov    0x50(%edi),%eax
405893:	21 90 2c 07 00 00    	and    %edx,0x72c(%eax)
405899:	8b 47 50             	mov    0x50(%edi),%eax
40589c:	21 90 cc 1b 00 00    	and    %edx,0x1bcc(%eax)
4058a2:	e9 a4 00 00 00       	jmp    0x40594b
4058a7:	39 77 1c             	cmp    %esi,0x1c(%edi)
4058aa:	75 1d                	jne    0x4058c9
4058ac:	21 90 98 04 00 00    	and    %edx,0x498(%eax)
4058b2:	8b 47 50             	mov    0x50(%edi),%eax
4058b5:	21 90 2c 07 00 00    	and    %edx,0x72c(%eax)
4058bb:	8b 47 50             	mov    0x50(%edi),%eax
4058be:	21 90 60 1e 00 00    	and    %edx,0x1e60(%eax)
4058c4:	e9 82 00 00 00       	jmp    0x40594b
4058c9:	8b 4f 18             	mov    0x18(%edi),%ecx
4058cc:	21 90 98 04 00 00    	and    %edx,0x498(%eax)
4058d2:	8b 47 50             	mov    0x50(%edi),%eax
4058d5:	21 90 2c 07 00 00    	and    %edx,0x72c(%eax)
4058db:	8b 47 50             	mov    0x50(%edi),%eax
4058de:	3b ce                	cmp    %esi,%ecx
4058e0:	75 28                	jne    0x40590a
4058e2:	21 90 f4 20 00 00    	and    %edx,0x20f4(%eax)
4058e8:	8b 47 50             	mov    0x50(%edi),%eax
4058eb:	21 90 e8 0e 00 00    	and    %edx,0xee8(%eax)
4058f1:	39 77 10             	cmp    %esi,0x10(%edi)
4058f4:	75 55                	jne    0x40594b
4058f6:	8b 47 50             	mov    0x50(%edi),%eax
4058f9:	21 90 54 0c 00 00    	and    %edx,0xc54(%eax)
4058ff:	8b 47 50             	mov    0x50(%edi),%eax
405902:	21 90 c0 09 00 00    	and    %edx,0x9c0(%eax)
405908:	eb 1d                	jmp    0x405927
40590a:	21 90 c0 09 00 00    	and    %edx,0x9c0(%eax)
405910:	8b 47 50             	mov    0x50(%edi),%eax
405913:	21 90 54 0c 00 00    	and    %edx,0xc54(%eax)
405919:	8b 47 50             	mov    0x50(%edi),%eax
40591c:	21 90 e8 0e 00 00    	and    %edx,0xee8(%eax)
405922:	39 77 10             	cmp    %esi,0x10(%edi)
405925:	75 24                	jne    0x40594b
405927:	8b 47 50             	mov    0x50(%edi),%eax
40592a:	21 90 7c 11 00 00    	and    %edx,0x117c(%eax)
405930:	8b 47 50             	mov    0x50(%edi),%eax
405933:	21 90 10 14 00 00    	and    %edx,0x1410(%eax)
405939:	8b 47 50             	mov    0x50(%edi),%eax
40593c:	21 90 a4 16 00 00    	and    %edx,0x16a4(%eax)
405942:	8b 47 50             	mov    0x50(%edi),%eax
405945:	21 90 38 19 00 00    	and    %edx,0x1938(%eax)
40594b:	5f                   	pop    %edi
40594c:	5e                   	pop    %esi
40594d:	5b                   	pop    %ebx
40594e:	c3                   	ret
40594f:	8b ff                	mov    %edi,%edi
405951:	55                   	push   %ebp
405952:	8b ec                	mov    %esp,%ebp
405954:	51                   	push   %ecx
405955:	56                   	push   %esi
405956:	57                   	push   %edi
405957:	8b f9                	mov    %ecx,%edi
405959:	8b 37                	mov    (%edi),%esi
40595b:	85 f6                	test   %esi,%esi
40595d:	74 38                	je     0x405997
40595f:	83 c8 ff             	or     $0xffffffff,%eax
405962:	f0 0f c1 46 08       	lock xadd %eax,0x8(%esi)
405967:	48                   	dec    %eax
405968:	75 2a                	jne    0x405994
40596a:	83 3e 00             	cmpl   $0x0,(%esi)
40596d:	74 0b                	je     0x40597a
40596f:	ff 36                	push   (%esi)
405971:	ff 15 30 21 41 00    	call   *0x412130
405977:	83 26 00             	andl   $0x0,(%esi)
40597a:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
40597e:	74 0d                	je     0x40598d
405980:	ff 76 04             	push   0x4(%esi)
405983:	e8 45 90 00 00       	call   0x40e9cd
405988:	83 66 04 00          	andl   $0x0,0x4(%esi)
40598c:	59                   	pop    %ecx
40598d:	56                   	push   %esi
40598e:	e8 3a 90 00 00       	call   0x40e9cd
405993:	59                   	pop    %ecx
405994:	83 27 00             	andl   $0x0,(%edi)
405997:	5f                   	pop    %edi
405998:	5e                   	pop    %esi
405999:	c9                   	leave
40599a:	c3                   	ret
40599b:	e9 af ff ff ff       	jmp    0x40594f
4059a0:	8b ff                	mov    %edi,%edi
4059a2:	55                   	push   %ebp
4059a3:	8b ec                	mov    %esp,%ebp
4059a5:	56                   	push   %esi
4059a6:	ff 75 08             	push   0x8(%ebp)
4059a9:	8b f1                	mov    %ecx,%esi
4059ab:	83 66 04 00          	andl   $0x0,0x4(%esi)
4059af:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
4059b6:	ff 15 28 21 41 00    	call   *0x412128
4059bc:	89 06                	mov    %eax,(%esi)
4059be:	85 c0                	test   %eax,%eax
4059c0:	75 05                	jne    0x4059c7
4059c2:	39 45 08             	cmp    %eax,0x8(%ebp)
4059c5:	75 07                	jne    0x4059ce
4059c7:	8b c6                	mov    %esi,%eax
4059c9:	5e                   	pop    %esi
4059ca:	5d                   	pop    %ebp
4059cb:	c2 04 00             	ret    $0x4
4059ce:	b9 0e 00 07 80       	mov    $0x8007000e,%ecx
4059d3:	e8 49 2d 00 00       	call   0x408721
4059d8:	cc                   	int3
4059d9:	6a 04                	push   $0x4
4059db:	b8 6c f8 40 00       	mov    $0x40f86c,%eax
4059e0:	e8 37 99 00 00       	call   0x40f31c
4059e5:	8b f1                	mov    %ecx,%esi
4059e7:	6a 0c                	push   $0xc
4059e9:	e8 e4 8f 00 00       	call   0x40e9d2
4059ee:	59                   	pop    %ecx
4059ef:	8b c8                	mov    %eax,%ecx
4059f1:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4059f4:	33 c0                	xor    %eax,%eax
4059f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4059f9:	85 c9                	test   %ecx,%ecx
4059fb:	74 08                	je     0x405a05
4059fd:	ff 75 08             	push   0x8(%ebp)
405a00:	e8 9b ff ff ff       	call   0x4059a0
405a05:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
405a09:	89 06                	mov    %eax,(%esi)
405a0b:	85 c0                	test   %eax,%eax
405a0d:	74 0a                	je     0x405a19
405a0f:	8b c6                	mov    %esi,%eax
405a11:	e8 e3 98 00 00       	call   0x40f2f9
405a16:	c2 04 00             	ret    $0x4
405a19:	b9 0e 00 07 80       	mov    $0x8007000e,%ecx
405a1e:	e8 fe 2c 00 00       	call   0x408721
405a23:	cc                   	int3
405a24:	68 dc 00 00 00       	push   $0xdc
405a29:	b8 92 f8 40 00       	mov    $0x40f892,%eax
405a2e:	e8 e9 98 00 00       	call   0x40f31c
405a33:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405a39:	e8 d2 c3 ff ff       	call   0x401e10
405a3e:	33 db                	xor    %ebx,%ebx
405a40:	89 5d fc             	mov    %ebx,-0x4(%ebp)
405a43:	33 ff                	xor    %edi,%edi
405a45:	53                   	push   %ebx
405a46:	53                   	push   %ebx
405a47:	47                   	inc    %edi
405a48:	57                   	push   %edi
405a49:	53                   	push   %ebx
405a4a:	ff 15 4c 20 41 00    	call   *0x41204c
405a50:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405a56:	e8 a6 c7 ff ff       	call   0x402201
405a5b:	85 c0                	test   %eax,%eax
405a5d:	74 6a                	je     0x405ac9
405a5f:	ff 75 0c             	push   0xc(%ebp)
405a62:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405a68:	ff 75 08             	push   0x8(%ebp)
405a6b:	e8 14 cd ff ff       	call   0x402784
405a70:	85 c0                	test   %eax,%eax
405a72:	74 55                	je     0x405ac9
405a74:	39 7d ec             	cmp    %edi,-0x14(%ebp)
405a77:	75 0a                	jne    0x405a83
405a79:	e8 45 df ff ff       	call   0x4039c3
405a7e:	e9 a3 00 00 00       	jmp    0x405b26
405a83:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405a89:	e8 f9 d3 ff ff       	call   0x402e87
405a8e:	85 c0                	test   %eax,%eax
405a90:	74 37                	je     0x405ac9
405a92:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405a98:	e8 b7 00 00 00       	call   0x405b54
405a9d:	85 c0                	test   %eax,%eax
405a9f:	74 28                	je     0x405ac9
405aa1:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405aa7:	e8 02 02 00 00       	call   0x405cae
405aac:	85 c0                	test   %eax,%eax
405aae:	74 19                	je     0x405ac9
405ab0:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
405ab6:	e8 4b df ff ff       	call   0x403a06
405abb:	85 c0                	test   %eax,%eax
405abd:	75 67                	jne    0x405b26
405abf:	ff 15 48 20 41 00    	call   *0x412048
405ac5:	85 c0                	test   %eax,%eax
405ac7:	74 41                	je     0x405b0a
405ac9:	e8 1e 3c 00 00       	call   0x4096ec
405ace:	50                   	push   %eax