54ece2:	90                   	nop
54ece3:	90                   	nop
54ece4:	53                   	push   %ebx
54ece5:	8b d8                	mov    %eax,%ebx
54ece7:	56                   	push   %esi
54ece8:	57                   	push   %edi
54ece9:	f6 83 dc 00 00 00 20 	testb  $0x20,0xdc(%ebx)
54ecf0:	8b f9                	mov    %ecx,%edi
54ecf2:	8b f2                	mov    %edx,%esi
54ecf4:	b8 01 00 00 00       	mov    $0x1,%eax
54ecf9:	74 15                	je     0x54ed10
54ecfb:	8b 53 2c             	mov    0x2c(%ebx),%edx
54ecfe:	81 e2 00 03 00 00    	and    $0x300,%edx
54ed04:	81 fa 00 03 00 00    	cmp    $0x300,%edx
54ed0a:	75 0c                	jne    0x54ed18
54ed0c:	33 c0                	xor    %eax,%eax
54ed0e:	eb 08                	jmp    0x54ed18
54ed10:	f6 43 2d 08          	testb  $0x8,0x2d(%ebx)
54ed14:	74 02                	je     0x54ed18
54ed16:	33 c0                	xor    %eax,%eax
54ed18:	85 c0                	test   %eax,%eax
54ed1a:	74 15                	je     0x54ed31
54ed1c:	8b cf                	mov    %edi,%ecx
54ed1e:	8b d6                	mov    %esi,%edx
54ed20:	8b 83 d0 00 00 00    	mov    0xd0(%ebx),%eax
54ed26:	e8 b5 da fd ff       	call   0x52c7e0
54ed2b:	89 83 d0 00 00 00    	mov    %eax,0xd0(%ebx)
54ed31:	5f                   	pop    %edi
54ed32:	5e                   	pop    %esi
54ed33:	5b                   	pop    %ebx
54ed34:	c3                   	ret
54ed35:	90                   	nop
54ed36:	90                   	nop
54ed37:	90                   	nop
54ed38:	53                   	push   %ebx
54ed39:	51                   	push   %ecx
54ed3a:	8b d8                	mov    %eax,%ebx
54ed3c:	85 db                	test   %ebx,%ebx
54ed3e:	75 05                	jne    0x54ed45
54ed40:	33 c0                	xor    %eax,%eax
54ed42:	5a                   	pop    %edx
54ed43:	5b                   	pop    %ebx
54ed44:	c3                   	ret
54ed45:	8b 8b 00 02 00 00    	mov    0x200(%ebx),%ecx
54ed4b:	8b 93 04 02 00 00    	mov    0x204(%ebx),%edx
54ed51:	b8 02 00 00 00       	mov    $0x2,%eax
54ed56:	e8 5d bf ff ff       	call   0x54acb8
54ed5b:	89 04 24             	mov    %eax,(%esp)
54ed5e:	8b 14 24             	mov    (%esp),%edx
54ed61:	85 d2                	test   %edx,%edx
54ed63:	74 0c                	je     0x54ed71
54ed65:	8b c4                	mov    %esp,%eax
54ed67:	ba 20 01 00 00       	mov    $0x120,%edx
54ed6c:	e8 4f 00 00 00       	call   0x54edc0
54ed71:	8b 04 24             	mov    (%esp),%eax
54ed74:	5a                   	pop    %edx
54ed75:	5b                   	pop    %ebx
54ed76:	c3                   	ret
54ed77:	90                   	nop
54ed78:	53                   	push   %ebx
54ed79:	56                   	push   %esi
54ed7a:	57                   	push   %edi
54ed7b:	8b f2                	mov    %edx,%esi
54ed7d:	8b f8                	mov    %eax,%edi
54ed7f:	33 db                	xor    %ebx,%ebx
54ed81:	85 f6                	test   %esi,%esi
54ed83:	74 02                	je     0x54ed87
54ed85:	8b 1e                	mov    (%esi),%ebx
54ed87:	85 db                	test   %ebx,%ebx
54ed89:	74 20                	je     0x54edab
54ed8b:	8b d3                	mov    %ebx,%edx
54ed8d:	8b c7                	mov    %edi,%eax
54ed8f:	e8 34 04 00 00       	call   0x54f1c8
54ed94:	8b 8f 00 02 00 00    	mov    0x200(%edi),%ecx
54ed9a:	8b 97 08 02 00 00    	mov    0x208(%edi),%edx
54eda0:	8b c3                	mov    %ebx,%eax
54eda2:	e8 8d bf ff ff       	call   0x54ad34
54eda7:	33 c9                	xor    %ecx,%ecx
54eda9:	89 0e                	mov    %ecx,(%esi)
54edab:	5f                   	pop    %edi
54edac:	5e                   	pop    %esi
54edad:	5b                   	pop    %ebx
54edae:	c3                   	ret
54edaf:	90                   	nop
54edb0:	51                   	push   %ecx
54edb1:	89 04 24             	mov    %eax,(%esp)
54edb4:	8b c4                	mov    %esp,%eax
54edb6:	33 d2                	xor    %edx,%edx
54edb8:	e8 03 00 00 00       	call   0x54edc0
54edbd:	5a                   	pop    %edx
54edbe:	c3                   	ret
54edbf:	90                   	nop
54edc0:	53                   	push   %ebx
54edc1:	8b d8                	mov    %eax,%ebx
54edc3:	8b 03                	mov    (%ebx),%eax
54edc5:	81 fa 20 01 00 00    	cmp    $0x120,%edx
54edcb:	73 11                	jae    0x54edde
54edcd:	e8 56 bf ff ff       	call   0x54ad28
54edd2:	b8 02 00 00 00       	mov    $0x2,%eax
54edd7:	e8 d0 be ff ff       	call   0x54acac
54eddc:	89 03                	mov    %eax,(%ebx)
54edde:	68 20 01 00 00       	push   $0x120
54ede3:	6a 00                	push   $0x0
54ede5:	50                   	push   %eax
54ede6:	e8 39 75 fd ff       	call   0x526324
54edeb:	83 c4 0c             	add    $0xc,%esp
54edee:	5b                   	pop    %ebx
54edef:	c3                   	ret
54edf0:	55                   	push   %ebp
54edf1:	8b ec                	mov    %esp,%ebp
54edf3:	53                   	push   %ebx
54edf4:	85 c0                	test   %eax,%eax
54edf6:	8b 5d 08             	mov    0x8(%ebp),%ebx
54edf9:	74 2a                	je     0x54ee25
54edfb:	85 d2                	test   %edx,%edx
54edfd:	74 26                	je     0x54ee25
54edff:	83 f9 01             	cmp    $0x1,%ecx
54ee02:	75 08                	jne    0x54ee0c
54ee04:	09 9a b8 00 00 00    	or     %ebx,0xb8(%edx)
54ee0a:	eb 19                	jmp    0x54ee25
54ee0c:	83 f9 02             	cmp    $0x2,%ecx
54ee0f:	75 0a                	jne    0x54ee1b
54ee11:	f7 d3                	not    %ebx
54ee13:	21 9a b8 00 00 00    	and    %ebx,0xb8(%edx)
54ee19:	eb 0a                	jmp    0x54ee25
54ee1b:	ba ae be 69 00       	mov    $0x69beae,%edx
54ee20:	e8 37 c1 ff ff       	call   0x54af5c
54ee25:	5b                   	pop    %ebx
54ee26:	5d                   	pop    %ebp
54ee27:	c2 04 00             	ret    $0x4
54ee2a:	90                   	nop
54ee2b:	90                   	nop
54ee2c:	55                   	push   %ebp
54ee2d:	8b ec                	mov    %esp,%ebp
54ee2f:	51                   	push   %ecx
54ee30:	53                   	push   %ebx
54ee31:	56                   	push   %esi
54ee32:	57                   	push   %edi
54ee33:	89 4d fc             	mov    %ecx,-0x4(%ebp)
54ee36:	8b da                	mov    %edx,%ebx
54ee38:	8b f0                	mov    %eax,%esi
54ee3a:	85 f6                	test   %esi,%esi
54ee3c:	0f 84 7b 03 00 00    	je     0x54f1bd
54ee42:	85 db                	test   %ebx,%ebx
54ee44:	0f 84 73 03 00 00    	je     0x54f1bd
54ee4a:	8b 45 fc             	mov    -0x4(%ebp),%eax
54ee4d:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx
54ee53:	23 c2                	and    %edx,%eax
54ee55:	f6 c4 40             	test   $0x40,%ah
54ee58:	74 66                	je     0x54eec0
54ee5a:	8b 4d 08             	mov    0x8(%ebp),%ecx
54ee5d:	41                   	inc    %ecx
54ee5e:	74 31                	je     0x54ee91
54ee60:	8b 43 38             	mov    0x38(%ebx),%eax
54ee63:	85 c0                	test   %eax,%eax
54ee65:	74 59                	je     0x54eec0
54ee67:	8b 55 08             	mov    0x8(%ebp),%edx
54ee6a:	c1 e2 04             	shl    $0x4,%edx
54ee6d:	8b 4c 10 04          	mov    0x4(%eax,%edx,1),%ecx
54ee71:	85 c9                	test   %ecx,%ecx
54ee73:	74 4b                	je     0x54eec0
54ee75:	8b 7d 08             	mov    0x8(%ebp),%edi
54ee78:	c1 e7 04             	shl    $0x4,%edi
54ee7b:	8b 54 38 04          	mov    0x4(%eax,%edi,1),%edx
54ee7f:	8b c6                	mov    %esi,%eax
54ee81:	e8 56 bf ff ff       	call   0x54addc
54ee86:	8b 4b 38             	mov    0x38(%ebx),%ecx
54ee89:	33 c0                	xor    %eax,%eax
54ee8b:	89 44 39 04          	mov    %eax,0x4(%ecx,%edi,1)
54ee8f:	eb 2f                	jmp    0x54eec0
54ee91:	33 ff                	xor    %edi,%edi
54ee93:	eb 10                	jmp    0x54eea5
54ee95:	57                   	push   %edi
54ee96:	b9 00 40 00 00       	mov    $0x4000,%ecx
54ee9b:	8b d3                	mov    %ebx,%edx
54ee9d:	8b c6                	mov    %esi,%eax
54ee9f:	e8 88 ff ff ff       	call   0x54ee2c
54eea4:	47                   	inc    %edi
54eea5:	8b 43 30             	mov    0x30(%ebx),%eax
54eea8:	3b f8                	cmp    %eax,%edi
54eeaa:	7c e9                	jl     0x54ee95
54eeac:	8b 53 38             	mov    0x38(%ebx),%edx
54eeaf:	8b c6                	mov    %esi,%eax
54eeb1:	e8 26 bf ff ff       	call   0x54addc
54eeb6:	33 d2                	xor    %edx,%edx
54eeb8:	33 c9                	xor    %ecx,%ecx
54eeba:	89 53 38             	mov    %edx,0x38(%ebx)
54eebd:	89 4b 30             	mov    %ecx,0x30(%ebx)
54eec0:	8b 45 fc             	mov    -0x4(%ebp),%eax
54eec3:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx
54eec9:	23 c2                	and    %edx,%eax
54eecb:	f6 c4 20             	test   $0x20,%ah
54eece:	74 13                	je     0x54eee3
54eed0:	8b 53 4c             	mov    0x4c(%ebx),%edx
54eed3:	8b c6                	mov    %esi,%eax
54eed5:	e8 02 bf ff ff       	call   0x54addc
54eeda:	83 63 08 ef          	andl   $0xffffffef,0x8(%ebx)
54eede:	33 c9                	xor    %ecx,%ecx
54eee0:	89 4b 4c             	mov    %ecx,0x4c(%ebx)
54eee3:	8b 45 fc             	mov    -0x4(%ebp),%eax
54eee6:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx
54eeec:	23 c2                	and    %edx,%eax
54eeee:	f6 c4 01             	test   $0x1,%ah
54eef1:	74 07                	je     0x54eefa
54eef3:	81 63 08 ff bf ff ff 	andl   $0xffffbfff,0x8(%ebx)
54eefa:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54eefd:	8b 83 b8 00 00 00    	mov    0xb8(%ebx),%eax
54ef03:	23 c8                	and    %eax,%ecx
54ef05:	f6 c1 80             	test   $0x80,%cl
54ef08:	74 7c                	je     0x54ef86
54ef0a:	8b 93 a0 00 00 00    	mov    0xa0(%ebx),%edx
54ef10:	8b c6                	mov    %esi,%eax
54ef12:	e8 c5 be ff ff       	call   0x54addc
54ef17:	8b 93 ac 00 00 00    	mov    0xac(%ebx),%edx
54ef1d:	8b c6                	mov    %esi,%eax
54ef1f:	e8 b8 be ff ff       	call   0x54addc
54ef24:	33 d2                	xor    %edx,%edx
54ef26:	33 c9                	xor    %ecx,%ecx
54ef28:	89 93 a0 00 00 00    	mov    %edx,0xa0(%ebx)
54ef2e:	89 8b ac 00 00 00    	mov    %ecx,0xac(%ebx)
54ef34:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
54ef3a:	85 c0                	test   %eax,%eax
54ef3c:	74 41                	je     0x54ef7f
54ef3e:	33 ff                	xor    %edi,%edi
54ef40:	eb 1c                	jmp    0x54ef5e
54ef42:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
54ef48:	8b 14 b8             	mov    (%eax,%edi,4),%edx
54ef4b:	8b c6                	mov    %esi,%eax
54ef4d:	e8 8a be ff ff       	call   0x54addc
54ef52:	8b 93 b0 00 00 00    	mov    0xb0(%ebx),%edx
54ef58:	33 c9                	xor    %ecx,%ecx
54ef5a:	89 0c ba             	mov    %ecx,(%edx,%edi,4)
54ef5d:	47                   	inc    %edi
54ef5e:	33 c0                	xor    %eax,%eax
54ef60:	8a 83 b5 00 00 00    	mov    0xb5(%ebx),%al
54ef66:	3b f8                	cmp    %eax,%edi
54ef68:	7c d8                	jl     0x54ef42
54ef6a:	8b 93 b0 00 00 00    	mov    0xb0(%ebx),%edx
54ef70:	8b c6                	mov    %esi,%eax
54ef72:	e8 65 be ff ff       	call   0x54addc
54ef77:	33 d2                	xor    %edx,%edx
54ef79:	89 93 b0 00 00 00    	mov    %edx,0xb0(%ebx)
54ef7f:	81 63 08 ff fb ff ff 	andl   $0xfffffbff,0x8(%ebx)
54ef86:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54ef89:	8b 83 b8 00 00 00    	mov    0xb8(%ebx),%eax
54ef8f:	23 c8                	and    %eax,%ecx
54ef91:	f6 c1 10             	test   $0x10,%cl
54ef94:	74 31                	je     0x54efc7
54ef96:	8b 93 c4 00 00 00    	mov    0xc4(%ebx),%edx
54ef9c:	8b c6                	mov    %esi,%eax
54ef9e:	e8 39 be ff ff       	call   0x54addc
54efa3:	8b 93 c8 00 00 00    	mov    0xc8(%ebx),%edx
54efa9:	8b c6                	mov    %esi,%eax
54efab:	e8 2c be ff ff       	call   0x54addc
54efb0:	33 d2                	xor    %edx,%edx
54efb2:	33 c9                	xor    %ecx,%ecx
54efb4:	89 93 c4 00 00 00    	mov    %edx,0xc4(%ebx)
54efba:	89 8b c8 00 00 00    	mov    %ecx,0xc8(%ebx)
54efc0:	81 63 08 ff ef ff ff 	andl   $0xffffefff,0x8(%ebx)
54efc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
54efca:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx
54efd0:	23 c2                	and    %edx,%eax
54efd2:	a8 20                	test   $0x20,%al
54efd4:	0f 84 94 00 00 00    	je     0x54f06e
54efda:	8b 4d 08             	mov    0x8(%ebp),%ecx
54efdd:	41                   	inc    %ecx
54efde:	74 42                	je     0x54f022
54efe0:	8b 83 d4 00 00 00    	mov    0xd4(%ebx),%eax
54efe6:	85 c0                	test   %eax,%eax
54efe8:	0f 84 80 00 00 00    	je     0x54f06e
54efee:	8b 7d 08             	mov    0x8(%ebp),%edi
54eff1:	c1 e7 04             	shl    $0x4,%edi
54eff4:	8b 14 38             	mov    (%eax,%edi,1),%edx
54eff7:	8b c6                	mov    %esi,%eax
54eff9:	e8 de bd ff ff       	call   0x54addc
54effe:	8b 8b d4 00 00 00    	mov    0xd4(%ebx),%ecx
54f004:	8b c6                	mov    %esi,%eax
54f006:	8b 54 39 08          	mov    0x8(%ecx,%edi,1),%edx
54f00a:	e8 cd bd ff ff       	call   0x54addc
54f00f:	8b 83 d4 00 00 00    	mov    0xd4(%ebx),%eax
54f015:	33 d2                	xor    %edx,%edx
54f017:	89 14 38             	mov    %edx,(%eax,%edi,1)
54f01a:	33 c9                	xor    %ecx,%ecx
54f01c:	89 4c 38 08          	mov    %ecx,0x8(%eax,%edi,1)
54f020:	eb 4c                	jmp    0x54f06e
54f022:	8b 83 d8 00 00 00    	mov    0xd8(%ebx),%eax
54f028:	85 c0                	test   %eax,%eax
54f02a:	74 3b                	je     0x54f067
54f02c:	33 ff                	xor    %edi,%edi
54f02e:	eb 10                	jmp    0x54f040
54f030:	57                   	push   %edi
54f031:	b9 20 00 00 00       	mov    $0x20,%ecx
54f036:	8b d3                	mov    %ebx,%edx
54f038:	8b c6                	mov    %esi,%eax
54f03a:	e8 ed fd ff ff       	call   0x54ee2c
54f03f:	47                   	inc    %edi
54f040:	8b 83 d8 00 00 00    	mov    0xd8(%ebx),%eax
54f046:	3b f8                	cmp    %eax,%edi
54f048:	7c e6                	jl     0x54f030
54f04a:	8b 93 d4 00 00 00    	mov    0xd4(%ebx),%edx
54f050:	8b c6                	mov    %esi,%eax
54f052:	e8 85 bd ff ff       	call   0x54addc
54f057:	33 d2                	xor    %edx,%edx
54f059:	33 c9                	xor    %ecx,%ecx
54f05b:	89 93 d4 00 00 00    	mov    %edx,0xd4(%ebx)
54f061:	89 8b d8 00 00 00    	mov    %ecx,0xd8(%ebx)
54f067:	81 63 08 ff df ff ff 	andl   $0xffffdfff,0x8(%ebx)
54f06e:	8b 45 fc             	mov    -0x4(%ebp),%eax
54f071:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx
54f077:	23 c2                	and    %edx,%eax
54f079:	f6 c4 02             	test   $0x2,%ah
54f07c:	74 74                	je     0x54f0f2
54f07e:	8b 4d 08             	mov    0x8(%ebp),%ecx
54f081:	41                   	inc    %ecx
54f082:	74 29                	je     0x54f0ad
54f084:	8b 83 bc 00 00 00    	mov    0xbc(%ebx),%eax
54f08a:	85 c0                	test   %eax,%eax
54f08c:	74 64                	je     0x54f0f2
54f08e:	8b 7d 08             	mov    0x8(%ebp),%edi
54f091:	8d 3c bf             	lea    (%edi,%edi,4),%edi
54f094:	8b 54 b8 08          	mov    0x8(%eax,%edi,4),%edx
54f098:	8b c6                	mov    %esi,%eax
54f09a:	e8 3d bd ff ff       	call   0x54addc
54f09f:	8b 8b bc 00 00 00    	mov    0xbc(%ebx),%ecx
54f0a5:	33 c0                	xor    %eax,%eax
54f0a7:	89 44 b9 08          	mov    %eax,0x8(%ecx,%edi,4)
54f0ab:	eb 45                	jmp    0x54f0f2
54f0ad:	8b 93 c0 00 00 00    	mov    0xc0(%ebx),%edx
54f0b3:	85 d2                	test   %edx,%edx
54f0b5:	74 3b                	je     0x54f0f2
54f0b7:	33 ff                	xor    %edi,%edi
54f0b9:	eb 10                	jmp    0x54f0cb
54f0bb:	57                   	push   %edi
54f0bc:	b9 00 02 00 00       	mov    $0x200,%ecx
54f0c1:	8b d3                	mov    %ebx,%edx
54f0c3:	8b c6                	mov    %esi,%eax
54f0c5:	e8 62 fd ff ff       	call   0x54ee2c
54f0ca:	47                   	inc    %edi
54f0cb:	8b 83 c0 00 00 00    	mov    0xc0(%ebx),%eax
54f0d1:	3b f8                	cmp    %eax,%edi
54f0d3:	7c e6                	jl     0x54f0bb
54f0d5:	8b 93 bc 00 00 00    	mov    0xbc(%ebx),%edx
54f0db:	8b c6                	mov    %esi,%eax
54f0dd:	e8 fa bc ff ff       	call   0x54addc
54f0e2:	33 d2                	xor    %edx,%edx
54f0e4:	33 c9                	xor    %ecx,%ecx
54f0e6:	89 93 bc 00 00 00    	mov    %edx,0xbc(%ebx)
54f0ec:	89 8b c0 00 00 00    	mov    %ecx,0xc0(%ebx)
54f0f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
54f0f5:	8b 93 b8 00 00 00    	mov    0xb8(%ebx),%edx