46ebc4:	83 c4 08             	add    $0x8,%esp
46ebc7:	8b 45 94             	mov    -0x6c(%ebp),%eax
46ebca:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
46ebd1:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
46ebd8:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
46ebdc:	84 c0                	test   %al,%al
46ebde:	75 51                	jne    0x46ec31
46ebe0:	8b 4d 80             	mov    -0x80(%ebp),%ecx
46ebe3:	83 c8 ff             	or     $0xffffffff,%eax
46ebe6:	83 c1 04             	add    $0x4,%ecx
46ebe9:	2b c3                	sub    %ebx,%eax
46ebeb:	89 4d 88             	mov    %ecx,-0x78(%ebp)
46ebee:	03 f8                	add    %eax,%edi
46ebf0:	eb 44                	jmp    0x46ec36
46ebf2:	68 d2 00 00 00       	push   $0xd2
46ebf7:	68 e0 76 60 00       	push   $0x6076e0
46ebfc:	6a 02                	push   $0x2
46ebfe:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
46ec01:	e8 da 66 00 00       	call   0x4752e0
46ec06:	68 48 77 60 00       	push   $0x607748
46ec0b:	8b c8                	mov    %eax,%ecx
46ec0d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
46ec14:	e8 d7 6c 00 00       	call   0x4758f0
46ec19:	50                   	push   %eax
46ec1a:	8d 4d 8f             	lea    -0x71(%ebp),%ecx
46ec1d:	e8 5e 6a 00 00       	call   0x475680
46ec22:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
46ec25:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
46ec2c:	e8 df 69 00 00       	call   0x475610
46ec31:	8b 4d 88             	mov    -0x78(%ebp),%ecx
46ec34:	8b fb                	mov    %ebx,%edi
46ec36:	85 ff                	test   %edi,%edi
46ec38:	7e 0b                	jle    0x46ec45
46ec3a:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
46ec40:	e9 6e fd ff ff       	jmp    0x46e9b3
46ec45:	8b c1                	mov    %ecx,%eax
46ec47:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46ec4a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46ec51:	59                   	pop    %ecx
46ec52:	5f                   	pop    %edi
46ec53:	5e                   	pop    %esi
46ec54:	5b                   	pop    %ebx
46ec55:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46ec58:	33 cd                	xor    %ebp,%ecx
46ec5a:	e8 c7 2d 16 00       	call   0x5d1a26
46ec5f:	8b e5                	mov    %ebp,%esp
46ec61:	5d                   	pop    %ebp
46ec62:	c3                   	ret
46ec63:	e8 88 75 16 00       	call   0x5d61f0
46ec68:	24 ea                	and    $0xea,%al
46ec6a:	46                   	inc    %esi
46ec6b:	00 4a ea             	add    %cl,-0x16(%edx)
46ec6e:	46                   	inc    %esi
46ec6f:	00 85 ea 46 00 ab    	add    %al,-0x54ffb916(%ebp)
46ec75:	ea 46 00 f2 eb 46 00 	ljmp   $0x46,$0xebf20046
46ec7c:	f2 eb 46             	bnd jmp 0x46ecc5
46ec7f:	00 fb                	add    %bh,%bl
46ec81:	e9 46 00 f2 eb       	jmp    0xec38eccc
46ec86:	46                   	inc    %esi
46ec87:	00 e6                	add    %ah,%dh
46ec89:	ea 46 00 cc cc cc cc 	ljmp   $0xcccc,$0xcccc0046
46ec90:	55                   	push   %ebp
46ec91:	8b ec                	mov    %esp,%ebp
46ec93:	6a ff                	push   $0xffffffff
46ec95:	68 70 88 5f 00       	push   $0x5f8870
46ec9a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
46eca0:	50                   	push   %eax
46eca1:	56                   	push   %esi
46eca2:	a1 c0 14 69 00       	mov    0x6914c0,%eax
46eca7:	33 c5                	xor    %ebp,%eax
46eca9:	50                   	push   %eax
46ecaa:	8d 45 f4             	lea    -0xc(%ebp),%eax
46ecad:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
46ecb3:	8b f1                	mov    %ecx,%esi
46ecb5:	8b 4e 04             	mov    0x4(%esi),%ecx
46ecb8:	ff 76 08             	push   0x8(%esi)
46ecbb:	ff 36                	push   (%esi)
46ecbd:	8b 01                	mov    (%ecx),%eax
46ecbf:	ff 50 38             	call   *0x38(%eax)
46ecc2:	8b 4e 0c             	mov    0xc(%esi),%ecx
46ecc5:	85 c9                	test   %ecx,%ecx
46ecc7:	74 06                	je     0x46eccf
46ecc9:	8b 01                	mov    (%ecx),%eax
46eccb:	6a 01                	push   $0x1
46eccd:	ff 10                	call   *(%eax)
46eccf:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46ecd2:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46ecd9:	59                   	pop    %ecx
46ecda:	5e                   	pop    %esi
46ecdb:	8b e5                	mov    %ebp,%esp
46ecdd:	5d                   	pop    %ebp
46ecde:	c3                   	ret
46ecdf:	cc                   	int3
46ece0:	cc                   	int3
46ece1:	cc                   	int3
46ece2:	cc                   	int3
46ece3:	cc                   	int3
46ece4:	cc                   	int3
46ece5:	cc                   	int3
46ece6:	cc                   	int3
46ece7:	cc                   	int3
46ece8:	cc                   	int3
46ece9:	cc                   	int3
46ecea:	cc                   	int3
46eceb:	cc                   	int3
46ecec:	cc                   	int3
46eced:	cc                   	int3
46ecee:	cc                   	int3
46ecef:	cc                   	int3
46ecf0:	81 79 04 00 04 00 00 	cmpl   $0x400,0x4(%ecx)
46ecf7:	76 08                	jbe    0x46ed01
46ecf9:	ff 31                	push   (%ecx)
46ecfb:	e8 5f 2f 16 00       	call   0x5d1c5f
46ed00:	59                   	pop    %ecx
46ed01:	c3                   	ret
46ed02:	cc                   	int3
46ed03:	cc                   	int3
46ed04:	cc                   	int3
46ed05:	cc                   	int3
46ed06:	cc                   	int3
46ed07:	cc                   	int3
46ed08:	cc                   	int3
46ed09:	cc                   	int3
46ed0a:	cc                   	int3
46ed0b:	cc                   	int3
46ed0c:	cc                   	int3
46ed0d:	cc                   	int3
46ed0e:	cc                   	int3
46ed0f:	cc                   	int3
46ed10:	ff 71 08             	push   0x8(%ecx)
46ed13:	ff 71 04             	push   0x4(%ecx)
46ed16:	ff 31                	push   (%ecx)
46ed18:	e8 b3 cd ff ff       	call   0x46bad0
46ed1d:	83 c4 0c             	add    $0xc,%esp
46ed20:	c3                   	ret
46ed21:	cc                   	int3
46ed22:	cc                   	int3
46ed23:	cc                   	int3
46ed24:	cc                   	int3
46ed25:	cc                   	int3
46ed26:	cc                   	int3
46ed27:	cc                   	int3
46ed28:	cc                   	int3
46ed29:	cc                   	int3
46ed2a:	cc                   	int3
46ed2b:	cc                   	int3
46ed2c:	cc                   	int3
46ed2d:	cc                   	int3
46ed2e:	cc                   	int3
46ed2f:	cc                   	int3
46ed30:	56                   	push   %esi
46ed31:	8b f1                	mov    %ecx,%esi
46ed33:	8b 06                	mov    (%esi),%eax
46ed35:	85 c0                	test   %eax,%eax
46ed37:	74 4f                	je     0x46ed88
46ed39:	56                   	push   %esi
46ed3a:	ff 76 04             	push   0x4(%esi)
46ed3d:	50                   	push   %eax
46ed3e:	e8 8d cd ff ff       	call   0x46bad0
46ed43:	8b 4e 08             	mov    0x8(%esi),%ecx
46ed46:	83 c4 0c             	add    $0xc,%esp
46ed49:	8b 06                	mov    (%esi),%eax
46ed4b:	2b c8                	sub    %eax,%ecx
46ed4d:	83 e1 e0             	and    $0xffffffe0,%ecx
46ed50:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
46ed56:	72 12                	jb     0x46ed6a
46ed58:	8b 50 fc             	mov    -0x4(%eax),%edx
46ed5b:	83 c1 23             	add    $0x23,%ecx
46ed5e:	2b c2                	sub    %edx,%eax
46ed60:	83 c0 fc             	add    $0xfffffffc,%eax
46ed63:	83 f8 1f             	cmp    $0x1f,%eax
46ed66:	77 22                	ja     0x46ed8a
46ed68:	8b c2                	mov    %edx,%eax
46ed6a:	51                   	push   %ecx
46ed6b:	50                   	push   %eax
46ed6c:	e8 e4 24 16 00       	call   0x5d1255
46ed71:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
46ed77:	83 c4 08             	add    $0x8,%esp
46ed7a:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
46ed81:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
46ed88:	5e                   	pop    %esi
46ed89:	c3                   	ret
46ed8a:	e8 61 74 16 00       	call   0x5d61f0
46ed8f:	cc                   	int3
46ed90:	55                   	push   %ebp
46ed91:	8b ec                	mov    %esp,%ebp
46ed93:	8b 45 08             	mov    0x8(%ebp),%eax
46ed96:	56                   	push   %esi
46ed97:	8b f1                	mov    %ecx,%esi
46ed99:	3b f0                	cmp    %eax,%esi
46ed9b:	74 15                	je     0x46edb2
46ed9d:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
46eda1:	8b c8                	mov    %eax,%ecx
46eda3:	72 02                	jb     0x46eda7
46eda5:	8b 08                	mov    (%eax),%ecx
46eda7:	ff 70 10             	push   0x10(%eax)
46edaa:	51                   	push   %ecx
46edab:	8b ce                	mov    %esi,%ecx
46edad:	e8 6e 88 fd ff       	call   0x447620
46edb2:	8b c6                	mov    %esi,%eax
46edb4:	5e                   	pop    %esi
46edb5:	5d                   	pop    %ebp
46edb6:	c2 04 00             	ret    $0x4
46edb9:	cc                   	int3
46edba:	cc                   	int3
46edbb:	cc                   	int3
46edbc:	cc                   	int3
46edbd:	cc                   	int3
46edbe:	cc                   	int3
46edbf:	cc                   	int3
46edc0:	55                   	push   %ebp
46edc1:	8b ec                	mov    %esp,%ebp
46edc3:	6a ff                	push   $0xffffffff
46edc5:	68 f5 9a 5f 00       	push   $0x5f9af5
46edca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
46edd0:	50                   	push   %eax
46edd1:	83 ec 6c             	sub    $0x6c,%esp
46edd4:	a1 c0 14 69 00       	mov    0x6914c0,%eax
46edd9:	33 c5                	xor    %ebp,%eax
46eddb:	89 45 f0             	mov    %eax,-0x10(%ebp)
46edde:	53                   	push   %ebx
46eddf:	56                   	push   %esi
46ede0:	57                   	push   %edi
46ede1:	50                   	push   %eax
46ede2:	8d 45 f4             	lea    -0xc(%ebp),%eax
46ede5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
46edeb:	8b f9                	mov    %ecx,%edi
46eded:	8b 75 08             	mov    0x8(%ebp),%esi
46edf0:	8d 4d 88             	lea    -0x78(%ebp),%ecx
46edf3:	8b 45 0c             	mov    0xc(%ebp),%eax
46edf6:	89 45 98             	mov    %eax,-0x68(%ebp)
46edf9:	51                   	push   %ecx
46edfa:	8b 06                	mov    (%esi),%eax
46edfc:	8b ce                	mov    %esi,%ecx
46edfe:	ff 50 48             	call   *0x48(%eax)
46ee01:	8b 0f                	mov    (%edi),%ecx
46ee03:	8b 58 04             	mov    0x4(%eax),%ebx
46ee06:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
46ee09:	e8 92 a3 fe ff       	call   0x4591a0
46ee0e:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
46ee15:	48                   	dec    %eax
46ee16:	83 f8 08             	cmp    $0x8,%eax
46ee19:	0f 87 1d 01 00 00    	ja     0x46ef3c
46ee1f:	ff 24 85 94 ef 46 00 	jmp    *0x46ef94(,%eax,4)
46ee26:	ff 37                	push   (%edi)
46ee28:	8b cb                	mov    %ebx,%ecx
46ee2a:	56                   	push   %esi
46ee2b:	e8 20 55 ff ff       	call   0x464350
46ee30:	ff 37                	push   (%edi)
46ee32:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
46ee35:	8a d8                	mov    %al,%bl
46ee37:	ff 75 98             	push   -0x68(%ebp)
46ee3a:	e8 11 55 ff ff       	call   0x464350
46ee3f:	3a d8                	cmp    %al,%bl
46ee41:	0f 92 c0             	setb   %al
46ee44:	e9 2d 01 00 00       	jmp    0x46ef76
46ee49:	ff 37                	push   (%edi)
46ee4b:	8b cb                	mov    %ebx,%ecx
46ee4d:	56                   	push   %esi
46ee4e:	e8 dd 5a ff ff       	call   0x464930
46ee53:	ff 37                	push   (%edi)
46ee55:	8b cb                	mov    %ebx,%ecx
46ee57:	8b f0                	mov    %eax,%esi
46ee59:	ff 75 98             	push   -0x68(%ebp)
46ee5c:	e8 cf 5a ff ff       	call   0x464930
46ee61:	3b f0                	cmp    %eax,%esi
46ee63:	0f 9c c0             	setl   %al
46ee66:	e9 0b 01 00 00       	jmp    0x46ef76
46ee6b:	ff 37                	push   (%edi)
46ee6d:	8b cb                	mov    %ebx,%ecx
46ee6f:	56                   	push   %esi
46ee70:	e8 9b 5b ff ff       	call   0x464a10
46ee75:	ff 37                	push   (%edi)
46ee77:	8b cb                	mov    %ebx,%ecx
46ee79:	89 45 94             	mov    %eax,-0x6c(%ebp)
46ee7c:	ff 75 98             	push   -0x68(%ebp)
46ee7f:	8b f2                	mov    %edx,%esi
46ee81:	e8 8a 5b ff ff       	call   0x464a10
46ee86:	3b f2                	cmp    %edx,%esi
46ee88:	7f 0f                	jg     0x46ee99
46ee8a:	0f 8c e4 00 00 00    	jl     0x46ef74
46ee90:	39 45 94             	cmp    %eax,-0x6c(%ebp)
46ee93:	0f 82 db 00 00 00    	jb     0x46ef74
46ee99:	32 c0                	xor    %al,%al
46ee9b:	e9 d6 00 00 00       	jmp    0x46ef76
46eea0:	ff 37                	push   (%edi)
46eea2:	8b cb                	mov    %ebx,%ecx
46eea4:	56                   	push   %esi
46eea5:	e8 e6 6a ff ff       	call   0x465990
46eeaa:	ff 37                	push   (%edi)
46eeac:	8b cb                	mov    %ebx,%ecx
46eeae:	8b f0                	mov    %eax,%esi
46eeb0:	ff 75 98             	push   -0x68(%ebp)
46eeb3:	e8 d8 6a ff ff       	call   0x465990
46eeb8:	3b f0                	cmp    %eax,%esi
46eeba:	0f 92 c0             	setb   %al
46eebd:	e9 b4 00 00 00       	jmp    0x46ef76
46eec2:	ff 37                	push   (%edi)
46eec4:	8b cb                	mov    %ebx,%ecx
46eec6:	56                   	push   %esi
46eec7:	e8 a4 6b ff ff       	call   0x465a70
46eecc:	ff 37                	push   (%edi)
46eece:	8b cb                	mov    %ebx,%ecx
46eed0:	89 45 94             	mov    %eax,-0x6c(%ebp)
46eed3:	ff 75 98             	push   -0x68(%ebp)
46eed6:	8b f2                	mov    %edx,%esi
46eed8:	e8 93 6b ff ff       	call   0x465a70
46eedd:	3b f2                	cmp    %edx,%esi
46eedf:	77 b8                	ja     0x46ee99
46eee1:	0f 82 8d 00 00 00    	jb     0x46ef74
46eee7:	39 45 94             	cmp    %eax,-0x6c(%ebp)
46eeea:	73 ad                	jae    0x46ee99
46eeec:	e9 83 00 00 00       	jmp    0x46ef74
46eef1:	ff 37                	push   (%edi)
46eef3:	8d 45 c0             	lea    -0x40(%ebp),%eax
46eef6:	8b cb                	mov    %ebx,%ecx
46eef8:	56                   	push   %esi
46eef9:	50                   	push   %eax
46eefa:	e8 91 68 ff ff       	call   0x465790
46eeff:	ff 37                	push   (%edi)
46ef01:	8d 45 d8             	lea    -0x28(%ebp),%eax
46ef04:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
46ef0b:	ff 75 98             	push   -0x68(%ebp)
46ef0e:	8b cb                	mov    %ebx,%ecx
46ef10:	50                   	push   %eax
46ef11:	e8 7a 68 ff ff       	call   0x465790
46ef16:	8d 45 d8             	lea    -0x28(%ebp),%eax
46ef19:	50                   	push   %eax
46ef1a:	8d 45 c0             	lea    -0x40(%ebp),%eax
46ef1d:	50                   	push   %eax
46ef1e:	e8 8d c0 ff ff       	call   0x46afb0
46ef23:	83 c4 08             	add    $0x8,%esp
46ef26:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46ef29:	8a d8                	mov    %al,%bl
46ef2b:	e8 70 7b fe ff       	call   0x456aa0
46ef30:	8d 4d c0             	lea    -0x40(%ebp),%ecx
46ef33:	e8 68 7b fe ff       	call   0x456aa0
46ef38:	8a c3                	mov    %bl,%al
46ef3a:	eb 3a                	jmp    0x46ef76
46ef3c:	68 d2 00 00 00       	push   $0xd2
46ef41:	68 e0 76 60 00       	push   $0x6076e0
46ef46:	6a 02                	push   $0x2
46ef48:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
46ef4b:	e8 90 63 00 00       	call   0x4752e0
46ef50:	68 48 77 60 00       	push   $0x607748
46ef55:	8b c8                	mov    %eax,%ecx
46ef57:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
46ef5e:	e8 8d 69 00 00       	call   0x4758f0
46ef63:	50                   	push   %eax
46ef64:	8d 4d 93             	lea    -0x6d(%ebp),%ecx