590cfa:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
590d00:	8b 4c 24 18          	mov    0x18(%esp),%ecx
590d04:	8b 40 34             	mov    0x34(%eax),%eax
590d07:	85 c0                	test   %eax,%eax
590d09:	74 52                	je     0x590d5d
590d0b:	8d 54 24 18          	lea    0x18(%esp),%edx
590d0f:	89 6c 24 18          	mov    %ebp,0x18(%esp)
590d13:	52                   	push   %edx
590d14:	53                   	push   %ebx
590d15:	51                   	push   %ecx
590d16:	56                   	push   %esi
590d17:	ff d0                	call   *%eax
590d19:	8b f8                	mov    %eax,%edi
590d1b:	83 c4 10             	add    $0x10,%esp
590d1e:	85 ff                	test   %edi,%edi
590d20:	74 3b                	je     0x590d5d
590d22:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
590d28:	8b cd                	mov    %ebp,%ecx
590d2a:	83 c0 60             	add    $0x60,%eax
590d2d:	f0 0f c1 08          	lock xadd %ecx,(%eax)
590d31:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
590d36:	74 0c                	je     0x590d44
590d38:	8b cd                	mov    %ebp,%ecx
590d3a:	8d 87 ac 01 00 00    	lea    0x1ac(%edi),%eax
590d40:	f0 0f c1 08          	lock xadd %ecx,(%eax)
590d44:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
590d4a:	f7 40 24 00 02 00 00 	testl  $0x200,0x24(%eax)
590d51:	75 0a                	jne    0x590d5d
590d53:	57                   	push   %edi
590d54:	50                   	push   %eax
590d55:	e8 96 ef ff ff       	call   0x58fcf0
590d5a:	83 c4 08             	add    $0x8,%esp
590d5d:	89 7c 24 10          	mov    %edi,0x10(%esp)
590d61:	eb 04                	jmp    0x590d67
590d63:	8b 7c 24 10          	mov    0x10(%esp),%edi
590d67:	85 ff                	test   %edi,%edi
590d69:	0f 84 f7 01 00 00    	je     0x590f66
590d6f:	8b 07                	mov    (%edi),%eax
590d71:	3b 06                	cmp    (%esi),%eax
590d73:	0f 85 9d 01 00 00    	jne    0x590f16
590d79:	8b 8f 6c 01 00 00    	mov    0x16c(%edi),%ecx
590d7f:	3b 8e 50 04 00 00    	cmp    0x450(%esi),%ecx
590d85:	0f 85 8b 01 00 00    	jne    0x590f16
590d8b:	8d 9e 54 04 00 00    	lea    0x454(%esi),%ebx
590d91:	8d 97 70 01 00 00    	lea    0x170(%edi),%edx
590d97:	83 e9 04             	sub    $0x4,%ecx
590d9a:	72 15                	jb     0x590db1
590d9c:	0f 1f 40 00          	nopl   0x0(%eax)
590da0:	8b 02                	mov    (%edx),%eax
590da2:	3b 03                	cmp    (%ebx),%eax
590da4:	75 10                	jne    0x590db6
590da6:	83 c2 04             	add    $0x4,%edx
590da9:	83 c3 04             	add    $0x4,%ebx
590dac:	83 e9 04             	sub    $0x4,%ecx
590daf:	73 ef                	jae    0x590da0
590db1:	83 f9 fc             	cmp    $0xfffffffc,%ecx
590db4:	74 3d                	je     0x590df3
590db6:	8a 02                	mov    (%edx),%al
590db8:	3a 03                	cmp    (%ebx),%al
590dba:	0f 85 56 01 00 00    	jne    0x590f16
590dc0:	83 f9 fd             	cmp    $0xfffffffd,%ecx
590dc3:	74 2e                	je     0x590df3
590dc5:	8a 42 01             	mov    0x1(%edx),%al
590dc8:	3a 43 01             	cmp    0x1(%ebx),%al
590dcb:	0f 85 45 01 00 00    	jne    0x590f16
590dd1:	83 f9 fe             	cmp    $0xfffffffe,%ecx
590dd4:	74 1d                	je     0x590df3
590dd6:	8a 42 02             	mov    0x2(%edx),%al
590dd9:	3a 43 02             	cmp    0x2(%ebx),%al
590ddc:	0f 85 34 01 00 00    	jne    0x590f16
590de2:	83 f9 ff             	cmp    $0xffffffff,%ecx
590de5:	74 0c                	je     0x590df3
590de7:	8a 42 03             	mov    0x3(%edx),%al
590dea:	3a 43 03             	cmp    0x3(%ebx),%al
590ded:	0f 85 23 01 00 00    	jne    0x590f16
590df3:	f6 86 ac 04 00 00 01 	testb  $0x1,0x4ac(%esi)
590dfa:	74 33                	je     0x590e2f
590dfc:	83 be 50 04 00 00 00 	cmpl   $0x0,0x450(%esi)
590e03:	75 2a                	jne    0x590e2f
590e05:	68 42 02 00 00       	push   $0x242
590e0a:	68 5c 6f 66 00       	push   $0x666f5c
590e0f:	68 15 01 00 00       	push   $0x115
590e14:	68 d9 00 00 00       	push   $0xd9
590e19:	6a 50                	push   $0x50
590e1b:	56                   	push   %esi
590e1c:	e8 ef e2 ff ff       	call   0x58f110
590e21:	8b 7c 24 28          	mov    0x28(%esp),%edi
590e25:	83 c4 18             	add    $0x18,%esp
590e28:	8b dd                	mov    %ebp,%ebx
590e2a:	e9 e9 00 00 00       	jmp    0x590f18
590e2f:	6a 00                	push   $0x0
590e31:	e8 3b 58 04 00       	call   0x5d6671
590e36:	8b 7c 24 14          	mov    0x14(%esp),%edi
590e3a:	83 c4 04             	add    $0x4,%esp
590e3d:	2b 87 b4 01 00 00    	sub    0x1b4(%edi),%eax
590e43:	39 87 b0 01 00 00    	cmp    %eax,0x1b0(%edi)
590e49:	7d 32                	jge    0x590e7d
590e4b:	8b 86 e0 05 00 00    	mov    0x5e0(%esi),%eax
590e51:	83 c0 54             	add    $0x54,%eax
590e54:	f0 0f c1 28          	lock xadd %ebp,(%eax)
590e58:	8b 6c 24 14          	mov    0x14(%esp),%ebp
590e5c:	85 ed                	test   %ebp,%ebp
590e5e:	74 12                	je     0x590e72
590e60:	ff 74 24 10          	push   0x10(%esp)
590e64:	ff b6 e0 05 00 00    	push   0x5e0(%esi)
590e6a:	e8 c1 f0 ff ff       	call   0x58ff30
590e6f:	83 c4 08             	add    $0x8,%esp
590e72:	8b 7c 24 10          	mov    0x10(%esp),%edi
590e76:	33 db                	xor    %ebx,%ebx
590e78:	e9 9f 00 00 00       	jmp    0x590f1c
590e7d:	f6 87 00 02 00 00 01 	testb  $0x1,0x200(%edi)
590e84:	8b 46 7c             	mov    0x7c(%esi),%eax
590e87:	8b 00                	mov    (%eax),%eax
590e89:	74 2b                	je     0x590eb6
590e8b:	a9 00 02 00 00       	test   $0x200,%eax
590e90:	75 2b                	jne    0x590ebd
590e92:	68 55 02 00 00       	push   $0x255
590e97:	68 5c 6f 66 00       	push   $0x666f5c
590e9c:	6a 68                	push   $0x68
590e9e:	68 d9 00 00 00       	push   $0xd9
590ea3:	6a 2f                	push   $0x2f
590ea5:	56                   	push   %esi
590ea6:	e8 65 e2 ff ff       	call   0x58f110
590eab:	8b 7c 24 28          	mov    0x28(%esp),%edi
590eaf:	83 c4 18             	add    $0x18,%esp
590eb2:	8b dd                	mov    %ebp,%ebx
590eb4:	eb 62                	jmp    0x590f18
590eb6:	a9 00 02 00 00       	test   $0x200,%eax
590ebb:	75 59                	jne    0x590f16
590ebd:	8b 4e 04             	mov    0x4(%esi),%ecx
590ec0:	8b 41 64             	mov    0x64(%ecx),%eax
590ec3:	f6 40 30 08          	testb  $0x8,0x30(%eax)
590ec7:	75 10                	jne    0x590ed9
590ec9:	8b 01                	mov    (%ecx),%eax
590ecb:	3d 04 03 00 00       	cmp    $0x304,%eax
590ed0:	7c 07                	jl     0x590ed9
590ed2:	3d 00 00 01 00       	cmp    $0x10000,%eax
590ed7:	75 18                	jne    0x590ef1
590ed9:	ff b6 74 04 00 00    	push   0x474(%esi)
590edf:	e8 dc f0 ff ff       	call   0x58ffc0
590ee4:	8b 44 24 14          	mov    0x14(%esp),%eax
590ee8:	83 c4 04             	add    $0x4,%esp
590eeb:	89 86 74 04 00 00    	mov    %eax,0x474(%esi)
590ef1:	8b 8e e0 05 00 00    	mov    0x5e0(%esi),%ecx
590ef7:	8b d5                	mov    %ebp,%edx
590ef9:	83 c1 5c             	add    $0x5c,%ecx
590efc:	f0 0f c1 11          	lock xadd %edx,(%ecx)
590f00:	8b 8e 74 04 00 00    	mov    0x474(%esi),%ecx
590f06:	8b c5                	mov    %ebp,%eax
590f08:	8b 89 a8 01 00 00    	mov    0x1a8(%ecx),%ecx
590f0e:	89 8e d8 04 00 00    	mov    %ecx,0x4d8(%esi)
590f14:	eb 52                	jmp    0x590f68
590f16:	33 db                	xor    %ebx,%ebx
590f18:	8b 6c 24 14          	mov    0x14(%esp),%ebp
590f1c:	85 ff                	test   %edi,%edi
590f1e:	74 3d                	je     0x590f5d
590f20:	57                   	push   %edi
590f21:	e8 9a f0 ff ff       	call   0x58ffc0
590f26:	8b 4e 04             	mov    0x4(%esi),%ecx
590f29:	83 c4 04             	add    $0x4,%esp
590f2c:	8b 41 64             	mov    0x64(%ecx),%eax
590f2f:	f6 40 30 08          	testb  $0x8,0x30(%eax)
590f33:	75 1a                	jne    0x590f4f
590f35:	8b 01                	mov    (%ecx),%eax
590f37:	3d 04 03 00 00       	cmp    $0x304,%eax
590f3c:	7c 11                	jl     0x590f4f
590f3e:	3d 00 00 01 00       	cmp    $0x10000,%eax
590f43:	74 0a                	je     0x590f4f
590f45:	c7 86 74 04 00 00 00 	movl   $0x0,0x474(%esi)
590f4c:	00 00 00
590f4f:	85 ed                	test   %ebp,%ebp
590f51:	75 0a                	jne    0x590f5d
590f53:	c7 86 5c 05 00 00 01 	movl   $0x1,0x55c(%esi)
590f5a:	00 00 00
590f5d:	85 db                	test   %ebx,%ebx
590f5f:	74 05                	je     0x590f66
590f61:	83 c8 ff             	or     $0xffffffff,%eax
590f64:	eb 02                	jmp    0x590f68
590f66:	33 c0                	xor    %eax,%eax
590f68:	8b 8c 24 28 02 00 00 	mov    0x228(%esp),%ecx
590f6f:	5f                   	pop    %edi
590f70:	5e                   	pop    %esi
590f71:	5d                   	pop    %ebp
590f72:	5b                   	pop    %ebx
590f73:	33 cc                	xor    %esp,%ecx
590f75:	e8 ac 0a 04 00       	call   0x5d1a26
590f7a:	81 c4 1c 02 00 00    	add    $0x21c,%esp
590f80:	c3                   	ret
590f81:	0f 1f 00             	nopl   (%eax)
590f84:	03 0c 59             	add    (%ecx,%ebx,2),%ecx
590f87:	00 03                	add    %al,(%ebx)
590f89:	0c 59                	or     $0x59,%al
590f8b:	00 2c 0c             	add    %ch,(%esp,%ecx,1)
590f8e:	59                   	pop    %ecx
590f8f:	00 2c 0c             	add    %ch,(%esp,%ecx,1)
590f92:	59                   	pop    %ecx
590f93:	00 cc                	add    %cl,%ah
590f95:	cc                   	int3
590f96:	cc                   	int3
590f97:	cc                   	int3
590f98:	cc                   	int3
590f99:	cc                   	int3
590f9a:	cc                   	int3
590f9b:	cc                   	int3
590f9c:	cc                   	int3
590f9d:	cc                   	int3
590f9e:	cc                   	int3
590f9f:	cc                   	int3
590fa0:	53                   	push   %ebx
590fa1:	55                   	push   %ebp
590fa2:	56                   	push   %esi
590fa3:	6a 6e                	push   $0x6e
590fa5:	68 5c 6f 66 00       	push   $0x666f5c
590faa:	68 08 02 00 00       	push   $0x208
590faf:	e8 9c f7 f4 ff       	call   0x4e0750
590fb4:	8b d8                	mov    %eax,%ebx
590fb6:	83 c4 0c             	add    $0xc,%esp
590fb9:	85 db                	test   %ebx,%ebx
590fbb:	0f 84 c7 01 00 00    	je     0x591188
590fc1:	8b 6c 24 10          	mov    0x10(%esp),%ebp
590fc5:	b9 82 00 00 00       	mov    $0x82,%ecx
590fca:	57                   	push   %edi
590fcb:	8b f5                	mov    %ebp,%esi
590fcd:	8b fb                	mov    %ebx,%edi
590fcf:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
590fd1:	c7 83 90 01 00 00 00 	movl   $0x0,0x190(%ebx)
590fd8:	00 00 00
590fdb:	8d b3 c4 01 00 00    	lea    0x1c4(%ebx),%esi
590fe1:	c7 83 94 01 00 00 00 	movl   $0x0,0x194(%ebx)
590fe8:	00 00 00
590feb:	c7 83 d0 01 00 00 00 	movl   $0x0,0x1d0(%ebx)
590ff2:	00 00 00
590ff5:	c7 83 d4 01 00 00 00 	movl   $0x0,0x1d4(%ebx)
590ffc:	00 00 00
590fff:	c7 83 e8 01 00 00 00 	movl   $0x0,0x1e8(%ebx)
591006:	00 00 00
591009:	c7 83 f4 01 00 00 00 	movl   $0x0,0x1f4(%ebx)
591010:	00 00 00
591013:	c7 83 a4 01 00 00 00 	movl   $0x0,0x1a4(%ebx)
59101a:	00 00 00
59101d:	c7 83 9c 01 00 00 00 	movl   $0x0,0x19c(%ebx)
591024:	00 00 00
591027:	c7 83 f8 01 00 00 00 	movl   $0x0,0x1f8(%ebx)
59102e:	00 00 00
591031:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
591037:	c7 83 c8 01 00 00 00 	movl   $0x0,0x1c8(%ebx)
59103e:	00 00 00
591041:	c7 83 cc 01 00 00 00 	movl   $0x0,0x1cc(%ebx)
591048:	00 00 00
59104b:	c7 83 ac 01 00 00 01 	movl   $0x1,0x1ac(%ebx)
591052:	00 00 00
591055:	e8 26 0f f5 ff       	call   0x4e1f80
59105a:	89 83 04 02 00 00    	mov    %eax,0x204(%ebx)
591060:	5f                   	pop    %edi
591061:	85 c0                	test   %eax,%eax
591063:	0f 84 1f 01 00 00    	je     0x591188
591069:	56                   	push   %esi
59106a:	53                   	push   %ebx
59106b:	6a 02                	push   $0x2
59106d:	e8 8e f3 f4 ff       	call   0x4e0400
591072:	83 c4 0c             	add    $0xc,%esp
591075:	85 c0                	test   %eax,%eax
591077:	0f 84 0b 01 00 00    	je     0x591188
59107d:	8b 85 9c 01 00 00    	mov    0x19c(%ebp),%eax
591083:	85 c0                	test   %eax,%eax
591085:	74 1d                	je     0x5910a4
591087:	50                   	push   %eax
591088:	e8 23 fe f8 ff       	call   0x520eb0
59108d:	83 c4 04             	add    $0x4,%esp
591090:	85 c0                	test   %eax,%eax
591092:	0f 84 f0 00 00 00    	je     0x591188
591098:	8b 85 9c 01 00 00    	mov    0x19c(%ebp),%eax
59109e:	89 83 9c 01 00 00    	mov    %eax,0x19c(%ebx)
5910a4:	8b 85 a4 01 00 00    	mov    0x1a4(%ebp),%eax
5910aa:	85 c0                	test   %eax,%eax
5910ac:	74 17                	je     0x5910c5
5910ae:	50                   	push   %eax
5910af:	e8 3c 6e fc ff       	call   0x557ef0
5910b4:	83 c4 04             	add    $0x4,%esp
5910b7:	89 83 a4 01 00 00    	mov    %eax,0x1a4(%ebx)
5910bd:	85 c0                	test   %eax,%eax
5910bf:	0f 84 c3 00 00 00    	je     0x591188
5910c5:	8b 85 90 01 00 00    	mov    0x190(%ebp),%eax
5910cb:	85 c0                	test   %eax,%eax
5910cd:	74 21                	je     0x5910f0
5910cf:	68 a1 00 00 00       	push   $0xa1
5910d4:	68 5c 6f 66 00       	push   $0x666f5c
5910d9:	50                   	push   %eax
5910da:	e8 f1 0f f5 ff       	call   0x4e20d0
5910df:	83 c4 0c             	add    $0xc,%esp
5910e2:	89 83 90 01 00 00    	mov    %eax,0x190(%ebx)
5910e8:	85 c0                	test   %eax,%eax
5910ea:	0f 84 98 00 00 00    	je     0x591188
5910f0:	8b 85 94 01 00 00    	mov    0x194(%ebp),%eax
5910f6:	85 c0                	test   %eax,%eax
5910f8:	74 1d                	je     0x591117
5910fa:	68 a7 00 00 00       	push   $0xa7
5910ff:	68 5c 6f 66 00       	push   $0x666f5c
591104:	50                   	push   %eax
591105:	e8 c6 0f f5 ff       	call   0x4e20d0
59110a:	83 c4 0c             	add    $0xc,%esp
59110d:	89 83 94 01 00 00    	mov    %eax,0x194(%ebx)
591113:	85 c0                	test   %eax,%eax
591115:	74 71                	je     0x591188
591117:	8d 85 c4 01 00 00    	lea    0x1c4(%ebp),%eax
59111d:	50                   	push   %eax
59111e:	56                   	push   %esi
59111f:	6a 02                	push   $0x2
591121:	e8 ba ed f4 ff       	call   0x4dfee0
591126:	83 c4 0c             	add    $0xc,%esp
591129:	85 c0                	test   %eax,%eax
59112b:	74 5b                	je     0x591188
59112d:	8b 85 d0 01 00 00    	mov    0x1d0(%ebp),%eax
591133:	85 c0                	test   %eax,%eax
591135:	74 1d                	je     0x591154
591137:	68 b4 00 00 00       	push   $0xb4
59113c:	68 5c 6f 66 00       	push   $0x666f5c
591141:	50                   	push   %eax
591142:	e8 89 0f f5 ff       	call   0x4e20d0
591147:	83 c4 0c             	add    $0xc,%esp
59114a:	89 83 d0 01 00 00    	mov    %eax,0x1d0(%ebx)
591150:	85 c0                	test   %eax,%eax
591152:	74 34                	je     0x591188
591154:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
591159:	74 54                	je     0x5911af
59115b:	8b 85 d4 01 00 00    	mov    0x1d4(%ebp),%eax
591161:	85 c0                	test   %eax,%eax
591163:	74 4a                	je     0x5911af
591165:	68 bc 00 00 00       	push   $0xbc
59116a:	68 5c 6f 66 00       	push   $0x666f5c
59116f:	ff b5 d8 01 00 00    	push   0x1d8(%ebp)
591175:	50                   	push   %eax
591176:	e8 f5 0e f5 ff       	call   0x4e2070
59117b:	83 c4 10             	add    $0x10,%esp
59117e:	89 83 d4 01 00 00    	mov    %eax,0x1d4(%ebx)
591184:	85 c0                	test   %eax,%eax
591186:	75 3b                	jne    0x5911c3
591188:	68 dd 00 00 00       	push   $0xdd
59118d:	68 5c 6f 66 00       	push   $0x666f5c
591192:	6a 41                	push   $0x41
591194:	68 5c 01 00 00       	push   $0x15c
591199:	6a 14                	push   $0x14
59119b:	e8 e0 7d f4 ff       	call   0x4d8f80
5911a0:	53                   	push   %ebx
5911a1:	e8 1a ee ff ff       	call   0x58ffc0
5911a6:	83 c4 18             	add    $0x18,%esp
5911a9:	33 c0                	xor    %eax,%eax
5911ab:	5e                   	pop    %esi
5911ac:	5d                   	pop    %ebp
5911ad:	5b                   	pop    %ebx