46b9c9:	c3                   	ret
46b9ca:	56                   	push   %esi
46b9cb:	56                   	push   %esi
46b9cc:	56                   	push   %esi
46b9cd:	56                   	push   %esi
46b9ce:	56                   	push   %esi
46b9cf:	e8 2f 13 fe ff       	call   0x44cd03
46b9d4:	cc                   	int3
46b9d5:	8b ff                	mov    %edi,%edi
46b9d7:	55                   	push   %ebp
46b9d8:	8b ec                	mov    %esp,%ebp
46b9da:	6a 00                	push   $0x0
46b9dc:	ff 75 18             	push   0x18(%ebp)
46b9df:	ff 75 14             	push   0x14(%ebp)
46b9e2:	ff 75 10             	push   0x10(%ebp)
46b9e5:	ff 75 0c             	push   0xc(%ebp)
46b9e8:	ff 75 08             	push   0x8(%ebp)
46b9eb:	e8 05 00 00 00       	call   0x46b9f5
46b9f0:	83 c4 18             	add    $0x18,%esp
46b9f3:	5d                   	pop    %ebp
46b9f4:	c3                   	ret
46b9f5:	8b ff                	mov    %edi,%edi
46b9f7:	55                   	push   %ebp
46b9f8:	8b ec                	mov    %esp,%ebp
46b9fa:	83 ec 24             	sub    $0x24,%esp
46b9fd:	57                   	push   %edi
46b9fe:	8b 7d 08             	mov    0x8(%ebp),%edi
46ba01:	85 ff                	test   %edi,%edi
46ba03:	75 17                	jne    0x46ba1c
46ba05:	e8 25 14 fe ff       	call   0x44ce2f
46ba0a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
46ba10:	e8 c1 12 fe ff       	call   0x44ccd6
46ba15:	33 c0                	xor    %eax,%eax
46ba17:	e9 55 01 00 00       	jmp    0x46bb71
46ba1c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
46ba20:	74 e3                	je     0x46ba05
46ba22:	56                   	push   %esi
46ba23:	8b 75 10             	mov    0x10(%ebp),%esi
46ba26:	33 c0                	xor    %eax,%eax
46ba28:	66 89 07             	mov    %ax,(%edi)
46ba2b:	85 f6                	test   %esi,%esi
46ba2d:	75 17                	jne    0x46ba46
46ba2f:	e8 fb 13 fe ff       	call   0x44ce2f
46ba34:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
46ba3a:	e8 97 12 fe ff       	call   0x44ccd6
46ba3f:	33 c0                	xor    %eax,%eax
46ba41:	e9 2a 01 00 00       	jmp    0x46bb70
46ba46:	ff 75 1c             	push   0x1c(%ebp)
46ba49:	8d 4d dc             	lea    -0x24(%ebp),%ecx
46ba4c:	e8 b7 35 fe ff       	call   0x44f008
46ba51:	8b 55 18             	mov    0x18(%ebp),%edx
46ba54:	85 d2                	test   %edx,%edx
46ba56:	75 0c                	jne    0x46ba64
46ba58:	8b 45 e0             	mov    -0x20(%ebp),%eax
46ba5b:	8b 90 9c 00 00 00    	mov    0x9c(%eax),%edx
46ba61:	89 55 18             	mov    %edx,0x18(%ebp)
46ba64:	8b 45 0c             	mov    0xc(%ebp),%eax
46ba67:	8b cf                	mov    %edi,%ecx
46ba69:	53                   	push   %ebx
46ba6a:	33 db                	xor    %ebx,%ebx
46ba6c:	89 4d f4             	mov    %ecx,-0xc(%ebp)
46ba6f:	89 45 f8             	mov    %eax,-0x8(%ebp)
46ba72:	85 c0                	test   %eax,%eax
46ba74:	0f 86 b7 00 00 00    	jbe    0x46bb31
46ba7a:	0f b7 3e             	movzwl (%esi),%edi
46ba7d:	89 7d f0             	mov    %edi,-0x10(%ebp)
46ba80:	0f b7 ff             	movzwl %di,%edi
46ba83:	85 ff                	test   %edi,%edi
46ba85:	8b 7d 08             	mov    0x8(%ebp),%edi
46ba88:	0f 84 8a 00 00 00    	je     0x46bb18
46ba8e:	8b 7d f0             	mov    -0x10(%ebp),%edi
46ba91:	66 83 ff 25          	cmp    $0x25,%di
46ba95:	8b 7d 08             	mov    0x8(%ebp),%edi
46ba98:	74 1b                	je     0x46bab5
46ba9a:	8b 45 f0             	mov    -0x10(%ebp),%eax
46ba9d:	83 c6 02             	add    $0x2,%esi
46baa0:	66 89 01             	mov    %ax,(%ecx)
46baa3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46baa6:	8b 45 f8             	mov    -0x8(%ebp),%eax
46baa9:	83 c1 02             	add    $0x2,%ecx
46baac:	48                   	dec    %eax
46baad:	89 4d f4             	mov    %ecx,-0xc(%ebp)
46bab0:	89 45 f8             	mov    %eax,-0x8(%ebp)
46bab3:	eb 58                	jmp    0x46bb0d
46bab5:	39 5d 14             	cmp    %ebx,0x14(%ebp)
46bab8:	0f 84 8f 00 00 00    	je     0x46bb4d
46babe:	83 c6 02             	add    $0x2,%esi
46bac1:	88 5d ec             	mov    %bl,-0x14(%ebp)
46bac4:	66 83 3e 23          	cmpw   $0x23,(%esi)
46bac8:	75 07                	jne    0x46bad1
46baca:	c6 45 ec 01          	movb   $0x1,-0x14(%ebp)
46bace:	83 c6 02             	add    $0x2,%esi
46bad1:	0f b7 06             	movzwl (%esi),%eax
46bad4:	83 f8 45             	cmp    $0x45,%eax
46bad7:	74 05                	je     0x46bade
46bad9:	83 f8 4f             	cmp    $0x4f,%eax
46badc:	75 03                	jne    0x46bae1
46bade:	83 c6 02             	add    $0x2,%esi
46bae1:	ff 75 ec             	push   -0x14(%ebp)
46bae4:	8d 45 f8             	lea    -0x8(%ebp),%eax
46bae7:	52                   	push   %edx
46bae8:	50                   	push   %eax
46bae9:	8d 45 f4             	lea    -0xc(%ebp),%eax
46baec:	50                   	push   %eax
46baed:	ff 75 14             	push   0x14(%ebp)
46baf0:	0f b7 06             	movzwl (%esi),%eax
46baf3:	50                   	push   %eax
46baf4:	8d 45 e0             	lea    -0x20(%ebp),%eax
46baf7:	50                   	push   %eax
46baf8:	e8 73 e4 ff ff       	call   0x469f70
46bafd:	83 c4 1c             	add    $0x1c,%esp
46bb00:	84 c0                	test   %al,%al
46bb02:	8b 45 f8             	mov    -0x8(%ebp),%eax
46bb05:	74 22                	je     0x46bb29
46bb07:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46bb0a:	83 c6 02             	add    $0x2,%esi
46bb0d:	8b 55 18             	mov    0x18(%ebp),%edx
46bb10:	85 c0                	test   %eax,%eax
46bb12:	0f 85 62 ff ff ff    	jne    0x46ba7a
46bb18:	85 c0                	test   %eax,%eax
46bb1a:	74 15                	je     0x46bb31
46bb1c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46bb1f:	33 c0                	xor    %eax,%eax
46bb21:	66 89 01             	mov    %ax,(%ecx)
46bb24:	2b 5d f8             	sub    -0x8(%ebp),%ebx
46bb27:	eb 34                	jmp    0x46bb5d
46bb29:	85 c0                	test   %eax,%eax
46bb2b:	74 04                	je     0x46bb31
46bb2d:	b1 01                	mov    $0x1,%cl
46bb2f:	eb 02                	jmp    0x46bb33
46bb31:	8a cb                	mov    %bl,%cl
46bb33:	33 d2                	xor    %edx,%edx
46bb35:	66 89 17             	mov    %dx,(%edi)
46bb38:	84 c9                	test   %cl,%cl
46bb3a:	75 11                	jne    0x46bb4d
46bb3c:	85 c0                	test   %eax,%eax
46bb3e:	75 0d                	jne    0x46bb4d
46bb40:	e8 ea 12 fe ff       	call   0x44ce2f
46bb45:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
46bb4b:	eb 10                	jmp    0x46bb5d
46bb4d:	e8 dd 12 fe ff       	call   0x44ce2f
46bb52:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
46bb58:	e8 79 11 fe ff       	call   0x44ccd6
46bb5d:	80 7d e8 00          	cmpb   $0x0,-0x18(%ebp)
46bb61:	74 0a                	je     0x46bb6d
46bb63:	8b 4d dc             	mov    -0x24(%ebp),%ecx
46bb66:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
46bb6d:	8b c3                	mov    %ebx,%eax
46bb6f:	5b                   	pop    %ebx
46bb70:	5e                   	pop    %esi
46bb71:	5f                   	pop    %edi
46bb72:	8b e5                	mov    %ebp,%esp
46bb74:	5d                   	pop    %ebp
46bb75:	c3                   	ret
46bb76:	8b ff                	mov    %edi,%edi
46bb78:	55                   	push   %ebp
46bb79:	8b ec                	mov    %esp,%ebp
46bb7b:	ff 75 18             	push   0x18(%ebp)
46bb7e:	6a 00                	push   $0x0
46bb80:	ff 75 14             	push   0x14(%ebp)
46bb83:	ff 75 10             	push   0x10(%ebp)
46bb86:	ff 75 0c             	push   0xc(%ebp)
46bb89:	ff 75 08             	push   0x8(%ebp)
46bb8c:	e8 64 fe ff ff       	call   0x46b9f5
46bb91:	83 c4 18             	add    $0x18,%esp
46bb94:	5d                   	pop    %ebp
46bb95:	c3                   	ret
46bb96:	8b ff                	mov    %edi,%edi
46bb98:	55                   	push   %ebp
46bb99:	8b ec                	mov    %esp,%ebp
46bb9b:	6a 00                	push   $0x0
46bb9d:	6a 00                	push   $0x0
46bb9f:	ff 75 14             	push   0x14(%ebp)
46bba2:	ff 75 10             	push   0x10(%ebp)
46bba5:	ff 75 0c             	push   0xc(%ebp)
46bba8:	ff 75 08             	push   0x8(%ebp)
46bbab:	e8 45 fe ff ff       	call   0x46b9f5
46bbb0:	83 c4 18             	add    $0x18,%esp
46bbb3:	5d                   	pop    %ebp
46bbb4:	c3                   	ret
46bbb5:	a1 94 80 4b 00       	mov    0x4b8094,%eax
46bbba:	83 e0 1f             	and    $0x1f,%eax
46bbbd:	6a 20                	push   $0x20
46bbbf:	59                   	pop    %ecx
46bbc0:	2b c8                	sub    %eax,%ecx
46bbc2:	33 c0                	xor    %eax,%eax
46bbc4:	d3 c8                	ror    %cl,%eax
46bbc6:	33 05 94 80 4b 00    	xor    0x4b8094,%eax
46bbcc:	c3                   	ret
46bbcd:	8b ff                	mov    %edi,%edi
46bbcf:	55                   	push   %ebp
46bbd0:	8b ec                	mov    %esp,%ebp
46bbd2:	a1 94 80 4b 00       	mov    0x4b8094,%eax
46bbd7:	8b c8                	mov    %eax,%ecx
46bbd9:	33 45 08             	xor    0x8(%ebp),%eax
46bbdc:	83 e1 1f             	and    $0x1f,%ecx
46bbdf:	d3 c8                	ror    %cl,%eax
46bbe1:	5d                   	pop    %ebp
46bbe2:	c3                   	ret
46bbe3:	8b ff                	mov    %edi,%edi
46bbe5:	55                   	push   %ebp
46bbe6:	8b ec                	mov    %esp,%ebp
46bbe8:	a1 94 80 4b 00       	mov    0x4b8094,%eax
46bbed:	83 e0 1f             	and    $0x1f,%eax
46bbf0:	6a 20                	push   $0x20
46bbf2:	59                   	pop    %ecx
46bbf3:	2b c8                	sub    %eax,%ecx
46bbf5:	8b 45 08             	mov    0x8(%ebp),%eax
46bbf8:	d3 c8                	ror    %cl,%eax
46bbfa:	33 05 94 80 4b 00    	xor    0x4b8094,%eax
46bc00:	5d                   	pop    %ebp
46bc01:	c3                   	ret
46bc02:	a1 94 80 4b 00       	mov    0x4b8094,%eax
46bc07:	83 e0 1f             	and    $0x1f,%eax
46bc0a:	6a 20                	push   $0x20
46bc0c:	59                   	pop    %ecx
46bc0d:	2b c8                	sub    %eax,%ecx
46bc0f:	33 c0                	xor    %eax,%eax
46bc11:	d3 c8                	ror    %cl,%eax
46bc13:	33 05 94 80 4b 00    	xor    0x4b8094,%eax
46bc19:	50                   	push   %eax
46bc1a:	e8 e0 00 00 00       	call   0x46bcff
46bc1f:	59                   	pop    %ecx
46bc20:	c3                   	ret
46bc21:	8b ff                	mov    %edi,%edi
46bc23:	55                   	push   %ebp
46bc24:	8b ec                	mov    %esp,%ebp
46bc26:	8d 41 04             	lea    0x4(%ecx),%eax
46bc29:	8b d0                	mov    %eax,%edx
46bc2b:	2b d1                	sub    %ecx,%edx
46bc2d:	83 c2 03             	add    $0x3,%edx
46bc30:	56                   	push   %esi
46bc31:	33 f6                	xor    %esi,%esi
46bc33:	c1 ea 02             	shr    $0x2,%edx
46bc36:	3b c1                	cmp    %ecx,%eax
46bc38:	1b c0                	sbb    %eax,%eax
46bc3a:	f7 d0                	not    %eax
46bc3c:	23 c2                	and    %edx,%eax
46bc3e:	74 0d                	je     0x46bc4d
46bc40:	8b 55 08             	mov    0x8(%ebp),%edx
46bc43:	46                   	inc    %esi
46bc44:	89 11                	mov    %edx,(%ecx)
46bc46:	8d 49 04             	lea    0x4(%ecx),%ecx
46bc49:	3b f0                	cmp    %eax,%esi
46bc4b:	75 f6                	jne    0x46bc43
46bc4d:	5e                   	pop    %esi
46bc4e:	5d                   	pop    %ebp
46bc4f:	c2 04 00             	ret    $0x4
46bc52:	8b c1                	mov    %ecx,%eax
46bc54:	c3                   	ret
46bc55:	8b ff                	mov    %edi,%edi
46bc57:	55                   	push   %ebp
46bc58:	8b ec                	mov    %esp,%ebp
46bc5a:	ff 75 08             	push   0x8(%ebp)
46bc5d:	b9 6c b5 4b 00       	mov    $0x4bb56c,%ecx
46bc62:	e8 ba ff ff ff       	call   0x46bc21
46bc67:	5d                   	pop    %ebp
46bc68:	c3                   	ret
46bc69:	8b ff                	mov    %edi,%edi
46bc6b:	55                   	push   %ebp
46bc6c:	8b ec                	mov    %esp,%ebp
46bc6e:	51                   	push   %ecx
46bc6f:	a1 94 80 4b 00       	mov    0x4b8094,%eax
46bc74:	33 c5                	xor    %ebp,%eax
46bc76:	89 45 fc             	mov    %eax,-0x4(%ebp)
46bc79:	56                   	push   %esi
46bc7a:	e8 2e 00 00 00       	call   0x46bcad
46bc7f:	8b f0                	mov    %eax,%esi
46bc81:	85 f6                	test   %esi,%esi
46bc83:	74 17                	je     0x46bc9c
46bc85:	ff 75 08             	push   0x8(%ebp)
46bc88:	8b ce                	mov    %esi,%ecx
46bc8a:	ff 15 54 43 49 00    	call   *0x494354
46bc90:	ff d6                	call   *%esi
46bc92:	59                   	pop    %ecx
46bc93:	85 c0                	test   %eax,%eax
46bc95:	74 05                	je     0x46bc9c
46bc97:	33 c0                	xor    %eax,%eax
46bc99:	40                   	inc    %eax
46bc9a:	eb 02                	jmp    0x46bc9e
46bc9c:	33 c0                	xor    %eax,%eax
46bc9e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46bca1:	33 cd                	xor    %ebp,%ecx
46bca3:	5e                   	pop    %esi
46bca4:	e8 59 3d fd ff       	call   0x43fa02
46bca9:	8b e5                	mov    %ebp,%esp
46bcab:	5d                   	pop    %ebp
46bcac:	c3                   	ret
46bcad:	6a 0c                	push   $0xc
46bcaf:	68 58 4b 4b 00       	push   $0x4b4b58
46bcb4:	e8 a7 4c fd ff       	call   0x440960
46bcb9:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
46bcbd:	6a 00                	push   $0x0
46bcbf:	e8 48 c2 ff ff       	call   0x467f0c
46bcc4:	59                   	pop    %ecx
46bcc5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46bcc9:	8b 35 94 80 4b 00    	mov    0x4b8094,%esi
46bccf:	8b ce                	mov    %esi,%ecx
46bcd1:	83 e1 1f             	and    $0x1f,%ecx
46bcd4:	33 35 6c b5 4b 00    	xor    0x4bb56c,%esi
46bcda:	d3 ce                	ror    %cl,%esi
46bcdc:	89 75 e4             	mov    %esi,-0x1c(%ebp)
46bcdf:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
46bce6:	e8 0b 00 00 00       	call   0x46bcf6
46bceb:	8b c6                	mov    %esi,%eax
46bced:	e8 b4 4c fd ff       	call   0x4409a6
46bcf2:	c3                   	ret
46bcf3:	8b 75 e4             	mov    -0x1c(%ebp),%esi
46bcf6:	6a 00                	push   $0x0
46bcf8:	e8 57 c2 ff ff       	call   0x467f54
46bcfd:	59                   	pop    %ecx
46bcfe:	c3                   	ret
46bcff:	6a 0c                	push   $0xc
46bd01:	68 78 4b 4b 00       	push   $0x4b4b78
46bd06:	e8 55 4c fd ff       	call   0x440960
46bd0b:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
46bd0f:	6a 00                	push   $0x0
46bd11:	e8 f6 c1 ff ff       	call   0x467f0c
46bd16:	59                   	pop    %ecx
46bd17:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46bd1b:	8b 35 94 80 4b 00    	mov    0x4b8094,%esi
46bd21:	8b ce                	mov    %esi,%ecx
46bd23:	83 e1 1f             	and    $0x1f,%ecx
46bd26:	33 35 6c b5 4b 00    	xor    0x4bb56c,%esi
46bd2c:	d3 ce                	ror    %cl,%esi
46bd2e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
46bd31:	ff 75 08             	push   0x8(%ebp)
46bd34:	e8 aa fe ff ff       	call   0x46bbe3
46bd39:	59                   	pop    %ecx
46bd3a:	a3 6c b5 4b 00       	mov    %eax,0x4bb56c
46bd3f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
46bd46:	e8 0b 00 00 00       	call   0x46bd56
46bd4b:	8b c6                	mov    %esi,%eax
46bd4d:	e8 54 4c fd ff       	call   0x4409a6
46bd52:	c3                   	ret
46bd53:	8b 75 e4             	mov    -0x1c(%ebp),%esi
46bd56:	6a 00                	push   $0x0
46bd58:	e8 f7 c1 ff ff       	call   0x467f54
46bd5d:	59                   	pop    %ecx
46bd5e:	c3                   	ret
46bd5f:	8b ff                	mov    %edi,%edi
46bd61:	55                   	push   %ebp
46bd62:	8b ec                	mov    %esp,%ebp
46bd64:	8b 45 0c             	mov    0xc(%ebp),%eax
46bd67:	8d 88 90 00 00 00    	lea    0x90(%eax),%ecx
46bd6d:	3b c1                	cmp    %ecx,%eax
46bd6f:	74 0e                	je     0x46bd7f
46bd71:	8b 55 08             	mov    0x8(%ebp),%edx
46bd74:	39 10                	cmp    %edx,(%eax)
46bd76:	74 09                	je     0x46bd81