5a4887:	83 c9 ff             	or     $0xffffffff,%ecx
5a488a:	83 c0 44             	add    $0x44,%eax
5a488d:	f0 0f c1 08          	lock xadd %ecx,(%eax)
5a4891:	85 ff                	test   %edi,%edi
5a4893:	0f 85 a4 00 00 00    	jne    0x5a493d
5a4899:	39 be 5c 05 00 00    	cmp    %edi,0x55c(%esi)
5a489f:	0f 84 a7 00 00 00    	je     0x5a494c
5a48a5:	85 db                	test   %ebx,%ebx
5a48a7:	0f 84 9f 00 00 00    	je     0x5a494c
5a48ad:	56                   	push   %esi
5a48ae:	e8 6d 4d fe ff       	call   0x589620
5a48b3:	83 c4 04             	add    $0x4,%esp
5a48b6:	a9 00 40 00 00       	test   $0x4000,%eax
5a48bb:	0f 84 8b 00 00 00    	je     0x5a494c
5a48c1:	89 be 5c 05 00 00    	mov    %edi,0x55c(%esi)
5a48c7:	39 be 8c 00 00 00    	cmp    %edi,0x8c(%esi)
5a48cd:	75 7d                	jne    0x5a494c
5a48cf:	56                   	push   %esi
5a48d0:	e8 3b ba fe ff       	call   0x590310
5a48d5:	8b f8                	mov    %eax,%edi
5a48d7:	83 c4 04             	add    $0x4,%esp
5a48da:	85 ff                	test   %edi,%edi
5a48dc:	74 55                	je     0x5a4933
5a48de:	68 da 03 00 00       	push   $0x3da
5a48e3:	68 38 80 66 00       	push   $0x668038
5a48e8:	ff b7 d4 01 00 00    	push   0x1d4(%edi)
5a48ee:	e8 8d be f3 ff       	call   0x4e0780
5a48f3:	57                   	push   %edi
5a48f4:	56                   	push   %esi
5a48f5:	c7 87 d4 01 00 00 00 	movl   $0x0,0x1d4(%edi)
5a48fc:	00 00 00
5a48ff:	c7 87 d8 01 00 00 00 	movl   $0x0,0x1d8(%edi)
5a4906:	00 00 00
5a4909:	c7 87 dc 01 00 00 00 	movl   $0x0,0x1dc(%edi)
5a4910:	00 00 00
5a4913:	c7 87 e0 01 00 00 00 	movl   $0x0,0x1e0(%edi)
5a491a:	00 00 00
5a491d:	e8 0e bc fe ff       	call   0x590530
5a4922:	83 c4 14             	add    $0x14,%esp
5a4925:	85 c0                	test   %eax,%eax
5a4927:	75 23                	jne    0x5a494c
5a4929:	68 e1 03 00 00       	push   $0x3e1
5a492e:	e9 8f 00 00 00       	jmp    0x5a49c2
5a4933:	68 e6 03 00 00       	push   $0x3e6
5a4938:	e9 85 00 00 00       	jmp    0x5a49c2
5a493d:	83 ef 01             	sub    $0x1,%edi
5a4940:	74 3c                	je     0x5a497e
5a4942:	83 ef 01             	sub    $0x1,%edi
5a4945:	74 0f                	je     0x5a4956
5a4947:	83 ef 01             	sub    $0x1,%edi
5a494a:	74 5d                	je     0x5a49a9
5a494c:	5f                   	pop    %edi
5a494d:	5e                   	pop    %esi
5a494e:	b8 01 00 00 00       	mov    $0x1,%eax
5a4953:	5b                   	pop    %ebx
5a4954:	59                   	pop    %ecx
5a4955:	c3                   	ret
5a4956:	68 ee 03 00 00       	push   $0x3ee
5a495b:	68 38 80 66 00       	push   $0x668038
5a4960:	68 ea 00 00 00       	push   $0xea
5a4965:	68 2e 02 00 00       	push   $0x22e
5a496a:	ff 74 24 1c          	push   0x1c(%esp)
5a496e:	56                   	push   %esi
5a496f:	e8 9c a7 fe ff       	call   0x58f110
5a4974:	83 c4 18             	add    $0x18,%esp
5a4977:	33 c0                	xor    %eax,%eax
5a4979:	5f                   	pop    %edi
5a497a:	5e                   	pop    %esi
5a497b:	5b                   	pop    %ebx
5a497c:	59                   	pop    %ecx
5a497d:	c3                   	ret
5a497e:	8b 4e 04             	mov    0x4(%esi),%ecx
5a4981:	8b 41 64             	mov    0x64(%ecx),%eax
5a4984:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a4988:	75 10                	jne    0x5a499a
5a498a:	8b 01                	mov    (%ecx),%eax
5a498c:	3d 04 03 00 00       	cmp    $0x304,%eax
5a4991:	7c 07                	jl     0x5a499a
5a4993:	3d 00 00 01 00       	cmp    $0x10000,%eax
5a4998:	75 0f                	jne    0x5a49a9
5a499a:	ff 74 24 0c          	push   0xc(%esp)
5a499e:	6a 01                	push   $0x1
5a49a0:	56                   	push   %esi
5a49a1:	e8 0a fc ff ff       	call   0x5a45b0
5a49a6:	83 c4 0c             	add    $0xc,%esp
5a49a9:	5f                   	pop    %edi
5a49aa:	c7 86 cc 05 00 00 00 	movl   $0x0,0x5cc(%esi)
5a49b1:	00 00 00
5a49b4:	b8 01 00 00 00       	mov    $0x1,%eax
5a49b9:	5e                   	pop    %esi
5a49ba:	5b                   	pop    %ebx
5a49bb:	59                   	pop    %ecx
5a49bc:	c3                   	ret
5a49bd:	68 a4 03 00 00       	push   $0x3a4
5a49c2:	68 38 80 66 00       	push   $0x668038
5a49c7:	6a 44                	push   $0x44
5a49c9:	68 2e 02 00 00       	push   $0x22e
5a49ce:	6a 50                	push   $0x50
5a49d0:	56                   	push   %esi
5a49d1:	e8 3a a7 fe ff       	call   0x58f110
5a49d6:	83 c4 18             	add    $0x18,%esp
5a49d9:	33 c0                	xor    %eax,%eax
5a49db:	5f                   	pop    %edi
5a49dc:	5e                   	pop    %esi
5a49dd:	5b                   	pop    %ebx
5a49de:	59                   	pop    %ecx
5a49df:	c3                   	ret
5a49e0:	8b 54 24 04          	mov    0x4(%esp),%edx
5a49e4:	56                   	push   %esi
5a49e5:	57                   	push   %edi
5a49e6:	83 7a 1c 00          	cmpl   $0x0,0x1c(%edx)
5a49ea:	75 78                	jne    0x5a4a64
5a49ec:	83 ba 64 05 00 00 00 	cmpl   $0x0,0x564(%edx)
5a49f3:	74 6f                	je     0x5a4a64
5a49f5:	83 ba 60 05 00 00 00 	cmpl   $0x0,0x560(%edx)
5a49fc:	76 66                	jbe    0x5a4a64
5a49fe:	8b 8a 6c 05 00 00    	mov    0x56c(%edx),%ecx
5a4a04:	85 c9                	test   %ecx,%ecx
5a4a06:	74 5c                	je     0x5a4a64
5a4a08:	8b ba 68 05 00 00    	mov    0x568(%edx),%edi
5a4a0e:	85 ff                	test   %edi,%edi
5a4a10:	74 52                	je     0x5a4a64
5a4a12:	8b 42 7c             	mov    0x7c(%edx),%eax
5a4a15:	8b 80 10 02 00 00    	mov    0x210(%eax),%eax
5a4a1b:	f6 40 10 04          	testb  $0x4,0x10(%eax)
5a4a1f:	75 06                	jne    0x5a4a27
5a4a21:	f6 40 14 08          	testb  $0x8,0x14(%eax)
5a4a25:	74 3d                	je     0x5a4a64
5a4a27:	33 f6                	xor    %esi,%esi
5a4a29:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
5a4a30:	8a 01                	mov    (%ecx),%al
5a4a32:	8d 49 01             	lea    0x1(%ecx),%ecx
5a4a35:	84 c0                	test   %al,%al
5a4a37:	74 2b                	je     0x5a4a64
5a4a39:	46                   	inc    %esi
5a4a3a:	3b f7                	cmp    %edi,%esi
5a4a3c:	72 f2                	jb     0x5a4a30
5a4a3e:	75 24                	jne    0x5a4a64
5a4a40:	68 20 04 00 00       	push   $0x420
5a4a45:	68 38 80 66 00       	push   $0x668038
5a4a4a:	68 9d 00 00 00       	push   $0x9d
5a4a4f:	68 e5 01 00 00       	push   $0x1e5
5a4a54:	6a 2f                	push   $0x2f
5a4a56:	52                   	push   %edx
5a4a57:	e8 b4 a6 fe ff       	call   0x58f110
5a4a5c:	83 c4 18             	add    $0x18,%esp
5a4a5f:	33 c0                	xor    %eax,%eax
5a4a61:	5f                   	pop    %edi
5a4a62:	5e                   	pop    %esi
5a4a63:	c3                   	ret
5a4a64:	5f                   	pop    %edi
5a4a65:	b8 01 00 00 00       	mov    $0x1,%eax
5a4a6a:	5e                   	pop    %esi
5a4a6b:	c3                   	ret
5a4a6c:	cc                   	int3
5a4a6d:	cc                   	int3
5a4a6e:	cc                   	int3
5a4a6f:	cc                   	int3
5a4a70:	8b 44 24 04          	mov    0x4(%esp),%eax
5a4a74:	83 78 1c 00          	cmpl   $0x0,0x1c(%eax)
5a4a78:	75 0a                	jne    0x5a4a84
5a4a7a:	c7 80 5c 05 00 00 00 	movl   $0x0,0x55c(%eax)
5a4a81:	00 00 00
5a4a84:	b8 01 00 00 00       	mov    $0x1,%eax
5a4a89:	c3                   	ret
5a4a8a:	cc                   	int3
5a4a8b:	cc                   	int3
5a4a8c:	cc                   	int3
5a4a8d:	cc                   	int3
5a4a8e:	cc                   	int3
5a4a8f:	cc                   	int3
5a4a90:	56                   	push   %esi
5a4a91:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4a95:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5a4a99:	74 11                	je     0x5a4aac
5a4a9b:	c7 86 3c 05 00 00 ff 	movl   $0xffffffff,0x53c(%esi)
5a4aa2:	ff ff ff
5a4aa5:	b8 01 00 00 00       	mov    $0x1,%eax
5a4aaa:	5e                   	pop    %esi
5a4aab:	c3                   	ret
5a4aac:	68 3b 04 00 00       	push   $0x43b
5a4ab1:	68 38 80 66 00       	push   $0x668038
5a4ab6:	ff b6 54 05 00 00    	push   0x554(%esi)
5a4abc:	e8 bf bc f3 ff       	call   0x4e0780
5a4ac1:	83 c4 0c             	add    $0xc,%esp
5a4ac4:	c7 86 54 05 00 00 00 	movl   $0x0,0x554(%esi)
5a4acb:	00 00 00
5a4ace:	c7 86 58 05 00 00 00 	movl   $0x0,0x558(%esi)
5a4ad5:	00 00 00
5a4ad8:	b8 01 00 00 00       	mov    $0x1,%eax
5a4add:	5e                   	pop    %esi
5a4ade:	c3                   	ret
5a4adf:	cc                   	int3
5a4ae0:	8b 44 24 04          	mov    0x4(%esp),%eax
5a4ae4:	8b 40 7c             	mov    0x7c(%eax),%eax
5a4ae7:	c7 80 3c 03 00 00 00 	movl   $0x0,0x33c(%eax)
5a4aee:	00 00 00
5a4af1:	b8 01 00 00 00       	mov    $0x1,%eax
5a4af6:	c3                   	ret
5a4af7:	cc                   	int3
5a4af8:	cc                   	int3
5a4af9:	cc                   	int3
5a4afa:	cc                   	int3
5a4afb:	cc                   	int3
5a4afc:	cc                   	int3
5a4afd:	cc                   	int3
5a4afe:	cc                   	int3
5a4aff:	cc                   	int3
5a4b00:	56                   	push   %esi
5a4b01:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4b05:	68 4f 04 00 00       	push   $0x44f
5a4b0a:	68 38 80 66 00       	push   $0x668038
5a4b0f:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b12:	ff b0 40 03 00 00    	push   0x340(%eax)
5a4b18:	e8 63 bc f3 ff       	call   0x4e0780
5a4b1d:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b20:	83 c4 0c             	add    $0xc,%esp
5a4b23:	c7 80 40 03 00 00 00 	movl   $0x0,0x340(%eax)
5a4b2a:	00 00 00
5a4b2d:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b30:	c7 80 44 03 00 00 00 	movl   $0x0,0x344(%eax)
5a4b37:	00 00 00
5a4b3a:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5a4b3e:	74 35                	je     0x5a4b75
5a4b40:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b43:	68 53 04 00 00       	push   $0x453
5a4b48:	68 38 80 66 00       	push   $0x668038
5a4b4d:	ff b0 48 03 00 00    	push   0x348(%eax)
5a4b53:	e8 28 bc f3 ff       	call   0x4e0780
5a4b58:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b5b:	83 c4 0c             	add    $0xc,%esp
5a4b5e:	c7 80 48 03 00 00 00 	movl   $0x0,0x348(%eax)
5a4b65:	00 00 00
5a4b68:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4b6b:	c7 80 4c 03 00 00 00 	movl   $0x0,0x34c(%eax)
5a4b72:	00 00 00
5a4b75:	b8 01 00 00 00       	mov    $0x1,%eax
5a4b7a:	5e                   	pop    %esi
5a4b7b:	c3                   	ret
5a4b7c:	cc                   	int3
5a4b7d:	cc                   	int3
5a4b7e:	cc                   	int3
5a4b7f:	cc                   	int3
5a4b80:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5a4b84:	83 79 1c 00          	cmpl   $0x0,0x1c(%ecx)
5a4b88:	75 26                	jne    0x5a4bb0
5a4b8a:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
5a4b8f:	75 19                	jne    0x5a4baa
5a4b91:	8b 81 74 04 00 00    	mov    0x474(%ecx),%eax
5a4b97:	83 b8 e8 01 00 00 00 	cmpl   $0x0,0x1e8(%eax)
5a4b9e:	74 0a                	je     0x5a4baa
5a4ba0:	c7 81 b0 05 00 00 00 	movl   $0x0,0x5b0(%ecx)
5a4ba7:	00 00 00
5a4baa:	b8 01 00 00 00       	mov    $0x1,%eax
5a4baf:	c3                   	ret
5a4bb0:	8b 51 04             	mov    0x4(%ecx),%edx
5a4bb3:	8b 42 64             	mov    0x64(%edx),%eax
5a4bb6:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a4bba:	75 ee                	jne    0x5a4baa
5a4bbc:	8b 02                	mov    (%edx),%eax
5a4bbe:	3d 04 03 00 00       	cmp    $0x304,%eax
5a4bc3:	7c e5                	jl     0x5a4baa
5a4bc5:	3d 00 00 01 00       	cmp    $0x10000,%eax
5a4bca:	74 de                	je     0x5a4baa
5a4bcc:	51                   	push   %ecx
5a4bcd:	e8 1e a0 ff ff       	call   0x59ebf0
5a4bd2:	83 c4 04             	add    $0x4,%esp
5a4bd5:	c3                   	ret
5a4bd6:	cc                   	int3
5a4bd7:	cc                   	int3
5a4bd8:	cc                   	int3
5a4bd9:	cc                   	int3
5a4bda:	cc                   	int3
5a4bdb:	cc                   	int3
5a4bdc:	cc                   	int3
5a4bdd:	cc                   	int3
5a4bde:	cc                   	int3
5a4bdf:	cc                   	int3
5a4be0:	56                   	push   %esi
5a4be1:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4be5:	68 7a 04 00 00       	push   $0x47a
5a4bea:	68 38 80 66 00       	push   $0x668038
5a4bef:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4bf2:	ff b0 6c 02 00 00    	push   0x26c(%eax)
5a4bf8:	e8 83 bb f3 ff       	call   0x4e0780
5a4bfd:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4c00:	83 c4 0c             	add    $0xc,%esp
5a4c03:	c7 80 6c 02 00 00 00 	movl   $0x0,0x26c(%eax)
5a4c0a:	00 00 00
5a4c0d:	b8 01 00 00 00       	mov    $0x1,%eax
5a4c12:	5e                   	pop    %esi
5a4c13:	c3                   	ret
5a4c14:	cc                   	int3
5a4c15:	cc                   	int3
5a4c16:	cc                   	int3
5a4c17:	cc                   	int3
5a4c18:	cc                   	int3
5a4c19:	cc                   	int3
5a4c1a:	cc                   	int3
5a4c1b:	cc                   	int3
5a4c1c:	cc                   	int3
5a4c1d:	cc                   	int3
5a4c1e:	cc                   	int3
5a4c1f:	cc                   	int3
5a4c20:	56                   	push   %esi
5a4c21:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4c25:	68 71 04 00 00       	push   $0x471
5a4c2a:	68 38 80 66 00       	push   $0x668038
5a4c2f:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4c32:	ff b0 68 02 00 00    	push   0x268(%eax)
5a4c38:	e8 43 bb f3 ff       	call   0x4e0780
5a4c3d:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4c40:	83 c4 0c             	add    $0xc,%esp
5a4c43:	c7 80 68 02 00 00 00 	movl   $0x0,0x268(%eax)
5a4c4a:	00 00 00
5a4c4d:	b8 01 00 00 00       	mov    $0x1,%eax
5a4c52:	5e                   	pop    %esi
5a4c53:	c3                   	ret
5a4c54:	cc                   	int3
5a4c55:	cc                   	int3
5a4c56:	cc                   	int3
5a4c57:	cc                   	int3
5a4c58:	cc                   	int3
5a4c59:	cc                   	int3
5a4c5a:	cc                   	int3
5a4c5b:	cc                   	int3
5a4c5c:	cc                   	int3
5a4c5d:	cc                   	int3
5a4c5e:	cc                   	int3
5a4c5f:	cc                   	int3
5a4c60:	56                   	push   %esi
5a4c61:	8b 74 24 08          	mov    0x8(%esp),%esi
5a4c65:	68 50 bb 55 00       	push   $0x55bb50
5a4c6a:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4c6d:	ff b0 24 02 00 00    	push   0x224(%eax)
5a4c73:	e8 78 04 f4 ff       	call   0x4e50f0
5a4c78:	8b 46 7c             	mov    0x7c(%esi),%eax
5a4c7b:	83 c4 08             	add    $0x8,%esp
5a4c7e:	c7 80 24 02 00 00 00 	movl   $0x0,0x224(%eax)
5a4c85:	00 00 00
5a4c88:	b8 01 00 00 00       	mov    $0x1,%eax
5a4c8d:	5e                   	pop    %esi
5a4c8e:	c3                   	ret
5a4c8f:	cc                   	int3
5a4c90:	53                   	push   %ebx
5a4c91:	56                   	push   %esi
5a4c92:	8b 74 24 0c          	mov    0xc(%esp),%esi
5a4c96:	56                   	push   %esi
5a4c97:	e8 14 ec fe ff       	call   0x5938b0
5a4c9c:	8b d8                	mov    %eax,%ebx