52e99a:	8b d6                	mov    %esi,%edx
52e99c:	8b c3                	mov    %ebx,%eax
52e99e:	e8 55 05 00 00       	call   0x52eef8
52e9a3:	8a 40 3d             	mov    0x3d(%eax),%al
52e9a6:	5e                   	pop    %esi
52e9a7:	5b                   	pop    %ebx
52e9a8:	c3                   	ret
52e9a9:	8d 40 00             	lea    0x0(%eax),%eax
52e9ac:	53                   	push   %ebx
52e9ad:	56                   	push   %esi
52e9ae:	57                   	push   %edi
52e9af:	8b d9                	mov    %ecx,%ebx
52e9b1:	8b f2                	mov    %edx,%esi
52e9b3:	8b f8                	mov    %eax,%edi
52e9b5:	8b d6                	mov    %esi,%edx
52e9b7:	8b c7                	mov    %edi,%eax
52e9b9:	e8 3a 05 00 00       	call   0x52eef8
52e9be:	88 58 3d             	mov    %bl,0x3d(%eax)
52e9c1:	46                   	inc    %esi
52e9c2:	74 0a                	je     0x52e9ce
52e9c4:	8b c7                	mov    %edi,%eax
52e9c6:	8b 10                	mov    (%eax),%edx
52e9c8:	ff 92 88 00 00 00    	call   *0x88(%edx)
52e9ce:	5f                   	pop    %edi
52e9cf:	5e                   	pop    %esi
52e9d0:	5b                   	pop    %ebx
52e9d1:	c3                   	ret
52e9d2:	8b c0                	mov    %eax,%eax
52e9d4:	53                   	push   %ebx
52e9d5:	56                   	push   %esi
52e9d6:	8b f2                	mov    %edx,%esi
52e9d8:	8b d8                	mov    %eax,%ebx
52e9da:	8b d6                	mov    %esi,%edx
52e9dc:	8b c3                	mov    %ebx,%eax
52e9de:	e8 15 05 00 00       	call   0x52eef8
52e9e3:	8b 50 50             	mov    0x50(%eax),%edx
52e9e6:	8b c3                	mov    %ebx,%eax
52e9e8:	e8 cf 51 00 00       	call   0x533bbc
52e9ed:	5e                   	pop    %esi
52e9ee:	5b                   	pop    %ebx
52e9ef:	c3                   	ret
52e9f0:	53                   	push   %ebx
52e9f1:	56                   	push   %esi
52e9f2:	57                   	push   %edi
52e9f3:	8b d9                	mov    %ecx,%ebx
52e9f5:	8b f2                	mov    %edx,%esi
52e9f7:	8b f8                	mov    %eax,%edi
52e9f9:	8b d6                	mov    %esi,%edx
52e9fb:	8b c7                	mov    %edi,%eax
52e9fd:	e8 f6 04 00 00       	call   0x52eef8
52ea02:	88 58 19             	mov    %bl,0x19(%eax)
52ea05:	46                   	inc    %esi
52ea06:	74 0a                	je     0x52ea12
52ea08:	8b c7                	mov    %edi,%eax
52ea0a:	8b 10                	mov    (%eax),%edx
52ea0c:	ff 92 88 00 00 00    	call   *0x88(%edx)
52ea12:	5f                   	pop    %edi
52ea13:	5e                   	pop    %esi
52ea14:	5b                   	pop    %ebx
52ea15:	c3                   	ret
52ea16:	8b c0                	mov    %eax,%eax
52ea18:	53                   	push   %ebx
52ea19:	56                   	push   %esi
52ea1a:	8b f2                	mov    %edx,%esi
52ea1c:	8b d8                	mov    %eax,%ebx
52ea1e:	8b d6                	mov    %esi,%edx
52ea20:	8b c3                	mov    %ebx,%eax
52ea22:	e8 d1 04 00 00       	call   0x52eef8
52ea27:	8a 40 19             	mov    0x19(%eax),%al
52ea2a:	5e                   	pop    %esi
52ea2b:	5b                   	pop    %ebx
52ea2c:	c3                   	ret
52ea2d:	8d 40 00             	lea    0x0(%eax),%eax
52ea30:	53                   	push   %ebx
52ea31:	56                   	push   %esi
52ea32:	57                   	push   %edi
52ea33:	55                   	push   %ebp
52ea34:	83 c4 c4             	add    $0xffffffc4,%esp
52ea37:	8b e9                	mov    %ecx,%ebp
52ea39:	8b fa                	mov    %edx,%edi
52ea3b:	8b f0                	mov    %eax,%esi
52ea3d:	8b d7                	mov    %edi,%edx
52ea3f:	8b c6                	mov    %esi,%eax
52ea41:	e8 b2 04 00 00       	call   0x52eef8
52ea46:	8b d8                	mov    %eax,%ebx
52ea48:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
52ea4c:	75 0d                	jne    0x52ea5b
52ea4e:	b8 3c 00 00 00       	mov    $0x3c,%eax
52ea53:	e8 54 3d ed ff       	call   0x4027ac
52ea58:	89 43 5c             	mov    %eax,0x5c(%ebx)
52ea5b:	54                   	push   %esp
52ea5c:	6a 3c                	push   $0x3c
52ea5e:	8b c5                	mov    %ebp,%eax
52ea60:	e8 47 90 ef ff       	call   0x427aac
52ea65:	50                   	push   %eax
52ea66:	e8 85 8b ed ff       	call   0x4075f0
52ea6b:	8b d4                	mov    %esp,%edx
52ea6d:	b9 3c 00 00 00       	mov    $0x3c,%ecx
52ea72:	8b 43 5c             	mov    0x5c(%ebx),%eax
52ea75:	e8 46 94 ed ff       	call   0x407ec0
52ea7a:	8b 45 18             	mov    0x18(%ebp),%eax
52ea7d:	89 43 2c             	mov    %eax,0x2c(%ebx)
52ea80:	47                   	inc    %edi
52ea81:	74 0a                	je     0x52ea8d
52ea83:	8b c6                	mov    %esi,%eax
52ea85:	8b 10                	mov    (%eax),%edx
52ea87:	ff 92 88 00 00 00    	call   *0x88(%edx)
52ea8d:	83 c4 3c             	add    $0x3c,%esp
52ea90:	5d                   	pop    %ebp
52ea91:	5f                   	pop    %edi
52ea92:	5e                   	pop    %esi
52ea93:	5b                   	pop    %ebx
52ea94:	c3                   	ret
52ea95:	8d 40 00             	lea    0x0(%eax),%eax
52ea98:	55                   	push   %ebp
52ea99:	8b ec                	mov    %esp,%ebp
52ea9b:	51                   	push   %ecx
52ea9c:	53                   	push   %ebx
52ea9d:	56                   	push   %esi
52ea9e:	57                   	push   %edi
52ea9f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
52eaa2:	8b fa                	mov    %edx,%edi
52eaa4:	8b f0                	mov    %eax,%esi
52eaa6:	8b 45 fc             	mov    -0x4(%ebp),%eax
52eaa9:	e8 5a 62 ed ff       	call   0x404d08
52eaae:	33 c0                	xor    %eax,%eax
52eab0:	55                   	push   %ebp
52eab1:	68 0c eb 52 00       	push   $0x52eb0c
52eab6:	64 ff 30             	push   %fs:(%eax)
52eab9:	64 89 20             	mov    %esp,%fs:(%eax)
52eabc:	8b d7                	mov    %edi,%edx
52eabe:	8b c6                	mov    %esi,%eax
52eac0:	e8 33 04 00 00       	call   0x52eef8
52eac5:	8b d8                	mov    %eax,%ebx
52eac7:	8b 83 88 00 00 00    	mov    0x88(%ebx),%eax
52eacd:	85 c0                	test   %eax,%eax
52eacf:	74 05                	je     0x52ead6
52ead1:	e8 f6 3c ed ff       	call   0x4027cc
52ead6:	8b 45 fc             	mov    -0x4(%ebp),%eax
52ead9:	e8 3a 62 ed ff       	call   0x404d18
52eade:	e8 5d e8 ff ff       	call   0x52d340
52eae3:	89 83 88 00 00 00    	mov    %eax,0x88(%ebx)
52eae9:	47                   	inc    %edi
52eaea:	74 0a                	je     0x52eaf6
52eaec:	8b c6                	mov    %esi,%eax
52eaee:	8b 10                	mov    (%eax),%edx
52eaf0:	ff 92 88 00 00 00    	call   *0x88(%edx)
52eaf6:	33 c0                	xor    %eax,%eax
52eaf8:	5a                   	pop    %edx
52eaf9:	59                   	pop    %ecx
52eafa:	59                   	pop    %ecx
52eafb:	64 89 10             	mov    %edx,%fs:(%eax)
52eafe:	68 13 eb 52 00       	push   $0x52eb13
52eb03:	8d 45 fc             	lea    -0x4(%ebp),%eax
52eb06:	e8 5d 5d ed ff       	call   0x404868
52eb0b:	c3                   	ret
52eb0c:	e9 fb 56 ed ff       	jmp    0x40420c
52eb11:	eb f0                	jmp    0x52eb03
52eb13:	5f                   	pop    %edi
52eb14:	5e                   	pop    %esi
52eb15:	5b                   	pop    %ebx
52eb16:	59                   	pop    %ecx
52eb17:	5d                   	pop    %ebp
52eb18:	c3                   	ret
52eb19:	8d 40 00             	lea    0x0(%eax),%eax
52eb1c:	53                   	push   %ebx
52eb1d:	56                   	push   %esi
52eb1e:	57                   	push   %edi
52eb1f:	8b f9                	mov    %ecx,%edi
52eb21:	8b f2                	mov    %edx,%esi
52eb23:	8b d8                	mov    %eax,%ebx
52eb25:	8b d6                	mov    %esi,%edx
52eb27:	8b c3                	mov    %ebx,%eax
52eb29:	e8 ca 03 00 00       	call   0x52eef8
52eb2e:	8b d8                	mov    %eax,%ebx
52eb30:	8b c7                	mov    %edi,%eax
52eb32:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
52eb38:	e8 1b 5f ed ff       	call   0x404a58
52eb3d:	5f                   	pop    %edi
52eb3e:	5e                   	pop    %esi
52eb3f:	5b                   	pop    %ebx
52eb40:	c3                   	ret
52eb41:	8d 40 00             	lea    0x0(%eax),%eax
52eb44:	53                   	push   %ebx
52eb45:	8b d8                	mov    %eax,%ebx
52eb47:	8b c3                	mov    %ebx,%eax
52eb49:	e8 1a 00 00 00       	call   0x52eb68
52eb4e:	66 83 bb 82 05 00 00 	cmpw   $0x0,0x582(%ebx)
52eb55:	00
52eb56:	74 0e                	je     0x52eb66
52eb58:	8b d3                	mov    %ebx,%edx
52eb5a:	8b 83 84 05 00 00    	mov    0x584(%ebx),%eax
52eb60:	ff 93 80 05 00 00    	call   *0x580(%ebx)
52eb66:	5b                   	pop    %ebx
52eb67:	c3                   	ret
52eb68:	53                   	push   %ebx
52eb69:	56                   	push   %esi
52eb6a:	57                   	push   %edi
52eb6b:	8b f2                	mov    %edx,%esi
52eb6d:	8b d8                	mov    %eax,%ebx
52eb6f:	83 fe fe             	cmp    $0xfffffffe,%esi
52eb72:	75 07                	jne    0x52eb7b
52eb74:	8b b3 48 07 00 00    	mov    0x748(%ebx),%esi
52eb7a:	4e                   	dec    %esi
52eb7b:	8b d6                	mov    %esi,%edx
52eb7d:	8b c3                	mov    %ebx,%eax
52eb7f:	e8 74 03 00 00       	call   0x52eef8
52eb84:	f6 80 90 00 00 00 01 	testb  $0x1,0x90(%eax)
52eb8b:	74 49                	je     0x52ebd6
52eb8d:	8b 83 2c 07 00 00    	mov    0x72c(%ebx),%eax
52eb93:	40                   	inc    %eax
52eb94:	c1 e0 02             	shl    $0x2,%eax
52eb97:	e8 10 3c ed ff       	call   0x4027ac
52eb9c:	8b f8                	mov    %eax,%edi
52eb9e:	8b 8b 2c 07 00 00    	mov    0x72c(%ebx),%ecx
52eba4:	c1 e1 02             	shl    $0x2,%ecx
52eba7:	8b 93 28 07 00 00    	mov    0x728(%ebx),%edx
52ebad:	8b c7                	mov    %edi,%eax
52ebaf:	e8 0c 93 ed ff       	call   0x407ec0
52ebb4:	8b 83 28 07 00 00    	mov    0x728(%ebx),%eax
52ebba:	e8 0d 3c ed ff       	call   0x4027cc
52ebbf:	8b c7                	mov    %edi,%eax
52ebc1:	89 83 28 07 00 00    	mov    %eax,0x728(%ebx)
52ebc7:	8b 93 2c 07 00 00    	mov    0x72c(%ebx),%edx
52ebcd:	89 34 90             	mov    %esi,(%eax,%edx,4)
52ebd0:	ff 83 2c 07 00 00    	incl   0x72c(%ebx)
52ebd6:	5f                   	pop    %edi
52ebd7:	5e                   	pop    %esi
52ebd8:	5b                   	pop    %ebx
52ebd9:	c3                   	ret
52ebda:	8b c0                	mov    %eax,%eax
52ebdc:	53                   	push   %ebx
52ebdd:	56                   	push   %esi
52ebde:	57                   	push   %edi
52ebdf:	8b fa                	mov    %edx,%edi
52ebe1:	33 d2                	xor    %edx,%edx
52ebe3:	83 ff fe             	cmp    $0xfffffffe,%edi
52ebe6:	75 07                	jne    0x52ebef
52ebe8:	8b b8 48 07 00 00    	mov    0x748(%eax),%edi
52ebee:	4f                   	dec    %edi
52ebef:	8b 88 2c 07 00 00    	mov    0x72c(%eax),%ecx
52ebf5:	49                   	dec    %ecx
52ebf6:	85 c9                	test   %ecx,%ecx
52ebf8:	7c 16                	jl     0x52ec10
52ebfa:	41                   	inc    %ecx
52ebfb:	33 f6                	xor    %esi,%esi
52ebfd:	8b 98 28 07 00 00    	mov    0x728(%eax),%ebx
52ec03:	3b 3c b3             	cmp    (%ebx,%esi,4),%edi
52ec06:	75 04                	jne    0x52ec0c
52ec08:	b2 01                	mov    $0x1,%dl
52ec0a:	eb 04                	jmp    0x52ec10
52ec0c:	46                   	inc    %esi
52ec0d:	49                   	dec    %ecx
52ec0e:	75 ed                	jne    0x52ebfd
52ec10:	8b c2                	mov    %edx,%eax
52ec12:	5f                   	pop    %edi
52ec13:	5e                   	pop    %esi
52ec14:	5b                   	pop    %ebx
52ec15:	c3                   	ret
52ec16:	8b c0                	mov    %eax,%eax
52ec18:	53                   	push   %ebx
52ec19:	56                   	push   %esi
52ec1a:	57                   	push   %edi
52ec1b:	8b d8                	mov    %eax,%ebx
52ec1d:	83 fa fe             	cmp    $0xfffffffe,%edx
52ec20:	75 07                	jne    0x52ec29
52ec22:	8b 93 48 07 00 00    	mov    0x748(%ebx),%edx
52ec28:	4a                   	dec    %edx
52ec29:	33 f6                	xor    %esi,%esi
52ec2b:	eb 01                	jmp    0x52ec2e
52ec2d:	46                   	inc    %esi
52ec2e:	3b b3 2c 07 00 00    	cmp    0x72c(%ebx),%esi
52ec34:	7d 0b                	jge    0x52ec41
52ec36:	8b 83 28 07 00 00    	mov    0x728(%ebx),%eax
52ec3c:	3b 14 b0             	cmp    (%eax,%esi,4),%edx
52ec3f:	75 ec                	jne    0x52ec2d
52ec41:	3b b3 2c 07 00 00    	cmp    0x72c(%ebx),%esi
52ec47:	74 70                	je     0x52ecb9
52ec49:	ff 8b 2c 07 00 00    	decl   0x72c(%ebx)
52ec4f:	8b 83 2c 07 00 00    	mov    0x72c(%ebx),%eax
52ec55:	c1 e0 02             	shl    $0x2,%eax
52ec58:	e8 4f 3b ed ff       	call   0x4027ac
52ec5d:	8b f8                	mov    %eax,%edi
52ec5f:	8b ce                	mov    %esi,%ecx
52ec61:	c1 e1 02             	shl    $0x2,%ecx
52ec64:	8b 93 28 07 00 00    	mov    0x728(%ebx),%edx
52ec6a:	8b c7                	mov    %edi,%eax
52ec6c:	e8 4f 92 ed ff       	call   0x407ec0
52ec71:	8b 83 2c 07 00 00    	mov    0x72c(%ebx),%eax
52ec77:	2b c6                	sub    %esi,%eax
52ec79:	8b c8                	mov    %eax,%ecx
52ec7b:	c1 e1 02             	shl    $0x2,%ecx
52ec7e:	8b 83 28 07 00 00    	mov    0x728(%ebx),%eax
52ec84:	8d 54 b0 04          	lea    0x4(%eax,%esi,4),%edx
52ec88:	8d 04 b7             	lea    (%edi,%esi,4),%eax
52ec8b:	e8 30 92 ed ff       	call   0x407ec0
52ec90:	8b 83 28 07 00 00    	mov    0x728(%ebx),%eax
52ec96:	e8 31 3b ed ff       	call   0x4027cc
52ec9b:	89 bb 28 07 00 00    	mov    %edi,0x728(%ebx)
52eca1:	66 83 bb 82 05 00 00 	cmpw   $0x0,0x582(%ebx)
52eca8:	00
52eca9:	74 0e                	je     0x52ecb9
52ecab:	8b d3                	mov    %ebx,%edx
52ecad:	8b 83 84 05 00 00    	mov    0x584(%ebx),%eax
52ecb3:	ff 93 80 05 00 00    	call   *0x580(%ebx)
52ecb9:	5f                   	pop    %edi
52ecba:	5e                   	pop    %esi
52ecbb:	5b                   	pop    %ebx
52ecbc:	c3                   	ret
52ecbd:	8d 40 00             	lea    0x0(%eax),%eax
52ecc0:	53                   	push   %ebx
52ecc1:	8b d8                	mov    %eax,%ebx
52ecc3:	8b c3                	mov    %ebx,%eax
52ecc5:	e8 0e 00 00 00       	call   0x52ecd8
52ecca:	8b c3                	mov    %ebx,%eax
52eccc:	8b 10                	mov    (%eax),%edx
52ecce:	ff 92 88 00 00 00    	call   *0x88(%edx)
52ecd4:	5b                   	pop    %ebx
52ecd5:	c3                   	ret
52ecd6:	8b c0                	mov    %eax,%eax
52ecd8:	53                   	push   %ebx
52ecd9:	8b d8                	mov    %eax,%ebx
52ecdb:	8b 83 28 07 00 00    	mov    0x728(%ebx),%eax
52ece1:	e8 e6 3a ed ff       	call   0x4027cc
52ece6:	33 c0                	xor    %eax,%eax
52ece8:	89 83 28 07 00 00    	mov    %eax,0x728(%ebx)
52ecee:	33 c0                	xor    %eax,%eax
52ecf0:	89 83 2c 07 00 00    	mov    %eax,0x72c(%ebx)
52ecf6:	66 83 bb 82 05 00 00 	cmpw   $0x0,0x582(%ebx)
52ecfd:	00
52ecfe:	74 0e                	je     0x52ed0e
52ed00:	8b d3                	mov    %ebx,%edx
52ed02:	8b 83 84 05 00 00    	mov    0x584(%ebx),%eax
52ed08:	ff 93 80 05 00 00    	call   *0x580(%ebx)
52ed0e:	5b                   	pop    %ebx
52ed0f:	c3                   	ret
52ed10:	53                   	push   %ebx
52ed11:	56                   	push   %esi
52ed12:	8b f2                	mov    %edx,%esi
52ed14:	8b d8                	mov    %eax,%ebx
52ed16:	85 f6                	test   %esi,%esi
52ed18:	7c 32                	jl     0x52ed4c
52ed1a:	8b 83 4c 07 00 00    	mov    0x74c(%ebx),%eax
52ed20:	83 7c f0 04 01       	cmpl   $0x1,0x4(%eax,%esi,8)
52ed25:	75 21                	jne    0x52ed48
52ed27:	8b 83 4c 07 00 00    	mov    0x74c(%ebx),%eax
52ed2d:	8b 04 f0             	mov    (%eax,%esi,8),%eax
52ed30:	e8 43 4d ed ff       	call   0x403a78
52ed35:	8b 83 4c 07 00 00    	mov    0x74c(%ebx),%eax
52ed3b:	33 d2                	xor    %edx,%edx