46bceb:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bcee:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46bcf1:	ff 30                	push   (%eax)
46bcf3:	57                   	push   %edi
46bcf4:	e8 47 c1 ff ff       	call   0x467e40
46bcf9:	8b 7d b8             	mov    -0x48(%ebp),%edi
46bcfc:	8b d8                	mov    %eax,%ebx
46bcfe:	83 c4 14             	add    $0x14,%esp
46bd01:	85 db                	test   %ebx,%ebx
46bd03:	74 59                	je     0x46bd5e
46bd05:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bd08:	8b cb                	mov    %ebx,%ecx
46bd0a:	8b 04 b8             	mov    (%eax,%edi,4),%eax
46bd0d:	ff 70 04             	push   0x4(%eax)
46bd10:	68 20 17 69 00       	push   $0x691720
46bd15:	e8 96 8e ff ff       	call   0x464bb0
46bd1a:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bd1d:	8b 04 b9             	mov    (%ecx,%edi,4),%eax
46bd20:	8b cb                	mov    %ebx,%ecx
46bd22:	ff 70 0c             	push   0xc(%eax)
46bd25:	68 2c 17 69 00       	push   $0x69172c
46bd2a:	e8 81 8e ff ff       	call   0x464bb0
46bd2f:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bd32:	8b 04 b9             	mov    (%ecx,%edi,4),%eax
46bd35:	8b cb                	mov    %ebx,%ecx
46bd37:	ff 70 08             	push   0x8(%eax)
46bd3a:	68 38 17 69 00       	push   $0x691738
46bd3f:	e8 6c 8e ff ff       	call   0x464bb0
46bd44:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bd47:	8b 04 b9             	mov    (%ecx,%edi,4),%eax
46bd4a:	8b cb                	mov    %ebx,%ecx
46bd4c:	ff 70 10             	push   0x10(%eax)
46bd4f:	68 40 17 69 00       	push   $0x691740
46bd54:	e8 57 8e ff ff       	call   0x464bb0
46bd59:	eb 03                	jmp    0x46bd5e
46bd5b:	8b 7d b8             	mov    -0x48(%ebp),%edi
46bd5e:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bd61:	8b 04 b8             	mov    (%eax,%edi,4),%eax
46bd64:	ff 70 18             	push   0x18(%eax)
46bd67:	68 4c 17 69 00       	push   $0x69174c
46bd6c:	53                   	push   %ebx
46bd6d:	e8 3e be ff ff       	call   0x467bb0
46bd72:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bd75:	8b 04 b8             	mov    (%eax,%edi,4),%eax
46bd78:	ff 70 18             	push   0x18(%eax)
46bd7b:	53                   	push   %ebx
46bd7c:	e8 bf c0 ff ff       	call   0x467e40
46bd81:	8b f8                	mov    %eax,%edi
46bd83:	83 c4 14             	add    $0x14,%esp
46bd86:	85 ff                	test   %edi,%edi
46bd88:	74 18                	je     0x46bda2
46bd8a:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bd8d:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bd90:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
46bd93:	ff 71 14             	push   0x14(%ecx)
46bd96:	8b cf                	mov    %edi,%ecx
46bd98:	68 9c aa 68 00       	push   $0x68aa9c
46bd9d:	e8 0e 8e ff ff       	call   0x464bb0
46bda2:	6a 0b                	push   $0xb
46bda4:	68 08 11 69 00       	push   $0x691108
46bda9:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46bdac:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
46bdb3:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
46bdba:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
46bdbe:	e8 7d 94 fd ff       	call   0x445240
46bdc3:	8b 5d d8             	mov    -0x28(%ebp),%ebx
46bdc6:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
46bdca:	85 ff                	test   %edi,%edi
46bdcc:	0f 84 2e 01 00 00    	je     0x46bf00
46bdd2:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bdd5:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bdd8:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46bddb:	8b 50 08             	mov    0x8(%eax),%edx
46bdde:	8b ca                	mov    %edx,%ecx
46bde0:	8d 41 01             	lea    0x1(%ecx),%eax
46bde3:	89 45 ac             	mov    %eax,-0x54(%ebp)
46bde6:	8a 01                	mov    (%ecx),%al
46bde8:	41                   	inc    %ecx
46bde9:	84 c0                	test   %al,%al
46bdeb:	75 f9                	jne    0x46bde6
46bded:	2b 4d ac             	sub    -0x54(%ebp),%ecx
46bdf0:	8d 45 d8             	lea    -0x28(%ebp),%eax
46bdf3:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
46bdf7:	51                   	push   %ecx
46bdf8:	52                   	push   %edx
46bdf9:	ff 75 e8             	push   -0x18(%ebp)
46bdfc:	0f 43 c3             	cmovae %ebx,%eax
46bdff:	50                   	push   %eax
46be00:	e8 3b b3 fd ff       	call   0x447140
46be05:	83 c4 10             	add    $0x10,%esp
46be08:	85 c0                	test   %eax,%eax
46be0a:	0f 85 f0 00 00 00    	jne    0x46bf00
46be10:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46be13:	8b 55 bc             	mov    -0x44(%ebp),%edx
46be16:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46be19:	8b cf                	mov    %edi,%ecx
46be1b:	8b 40 1c             	mov    0x1c(%eax),%eax
46be1e:	ff 70 04             	push   0x4(%eax)
46be21:	68 4c 08 69 00       	push   $0x69084c
46be26:	e8 85 8d ff ff       	call   0x464bb0
46be2b:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46be2e:	8b 55 bc             	mov    -0x44(%ebp),%edx
46be31:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46be34:	8b 40 1c             	mov    0x1c(%eax),%eax
46be37:	ff 30                	push   (%eax)
46be39:	68 65 aa 68 00       	push   $0x68aa65
46be3e:	68 64 15 69 00       	push   $0x691564
46be43:	57                   	push   %edi
46be44:	e8 27 bc ff ff       	call   0x467a70
46be49:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46be4c:	83 c4 10             	add    $0x10,%esp
46be4f:	8b 45 b8             	mov    -0x48(%ebp),%eax
46be52:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46be55:	b9 65 aa 68 00       	mov    $0x68aa65,%ecx
46be5a:	89 45 b4             	mov    %eax,-0x4c(%ebp)
46be5d:	8b 40 1c             	mov    0x1c(%eax),%eax
46be60:	8b 40 08             	mov    0x8(%eax),%eax
46be63:	89 45 ac             	mov    %eax,-0x54(%ebp)
46be66:	8a 10                	mov    (%eax),%dl
46be68:	3a 11                	cmp    (%ecx),%dl
46be6a:	75 1a                	jne    0x46be86
46be6c:	84 d2                	test   %dl,%dl
46be6e:	74 12                	je     0x46be82
46be70:	8a 50 01             	mov    0x1(%eax),%dl
46be73:	3a 51 01             	cmp    0x1(%ecx),%dl
46be76:	75 0e                	jne    0x46be86
46be78:	83 c0 02             	add    $0x2,%eax
46be7b:	83 c1 02             	add    $0x2,%ecx
46be7e:	84 d2                	test   %dl,%dl
46be80:	75 e4                	jne    0x46be66
46be82:	33 c0                	xor    %eax,%eax
46be84:	eb 05                	jmp    0x46be8b
46be86:	1b c0                	sbb    %eax,%eax
46be88:	83 c8 01             	or     $0x1,%eax
46be8b:	85 c0                	test   %eax,%eax
46be8d:	74 21                	je     0x46beb0
46be8f:	ff 75 ac             	push   -0x54(%ebp)
46be92:	68 65 aa 68 00       	push   $0x68aa65
46be97:	68 54 17 69 00       	push   $0x691754
46be9c:	57                   	push   %edi
46be9d:	e8 ce bb ff ff       	call   0x467a70
46bea2:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bea5:	83 c4 10             	add    $0x10,%esp
46bea8:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46beab:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46beae:	eb 03                	jmp    0x46beb3
46beb0:	8b 45 b4             	mov    -0x4c(%ebp),%eax
46beb3:	8b 40 1c             	mov    0x1c(%eax),%eax
46beb6:	b9 65 aa 68 00       	mov    $0x68aa65,%ecx
46bebb:	8b 40 0c             	mov    0xc(%eax),%eax
46bebe:	89 45 b4             	mov    %eax,-0x4c(%ebp)
46bec1:	8a 10                	mov    (%eax),%dl
46bec3:	3a 11                	cmp    (%ecx),%dl
46bec5:	75 1a                	jne    0x46bee1
46bec7:	84 d2                	test   %dl,%dl
46bec9:	74 12                	je     0x46bedd
46becb:	8a 50 01             	mov    0x1(%eax),%dl
46bece:	3a 51 01             	cmp    0x1(%ecx),%dl
46bed1:	75 0e                	jne    0x46bee1
46bed3:	83 c0 02             	add    $0x2,%eax
46bed6:	83 c1 02             	add    $0x2,%ecx
46bed9:	84 d2                	test   %dl,%dl
46bedb:	75 e4                	jne    0x46bec1
46bedd:	33 c0                	xor    %eax,%eax
46bedf:	eb 05                	jmp    0x46bee6
46bee1:	1b c0                	sbb    %eax,%eax
46bee3:	83 c8 01             	or     $0x1,%eax
46bee6:	85 c0                	test   %eax,%eax
46bee8:	74 16                	je     0x46bf00
46beea:	ff 75 b4             	push   -0x4c(%ebp)
46beed:	68 65 aa 68 00       	push   $0x68aa65
46bef2:	68 64 17 69 00       	push   $0x691764
46bef7:	57                   	push   %edi
46bef8:	e8 73 bb ff ff       	call   0x467a70
46befd:	83 c4 10             	add    $0x10,%esp
46bf00:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46bf03:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bf06:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46bf09:	ff 70 2c             	push   0x2c(%eax)
46bf0c:	68 65 aa 68 00       	push   $0x68aa65
46bf11:	68 70 17 69 00       	push   $0x691770
46bf16:	57                   	push   %edi
46bf17:	e8 54 bb ff ff       	call   0x467a70
46bf1c:	8b 45 ec             	mov    -0x14(%ebp),%eax
46bf1f:	83 c4 10             	add    $0x10,%esp
46bf22:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
46bf26:	83 f8 10             	cmp    $0x10,%eax
46bf29:	72 2b                	jb     0x46bf56
46bf2b:	8d 48 01             	lea    0x1(%eax),%ecx
46bf2e:	8b c3                	mov    %ebx,%eax
46bf30:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
46bf36:	72 14                	jb     0x46bf4c
46bf38:	8b 5b fc             	mov    -0x4(%ebx),%ebx
46bf3b:	83 c1 23             	add    $0x23,%ecx
46bf3e:	2b c3                	sub    %ebx,%eax
46bf40:	83 c0 fc             	add    $0xfffffffc,%eax
46bf43:	83 f8 1f             	cmp    $0x1f,%eax
46bf46:	0f 87 42 10 00 00    	ja     0x46cf8e
46bf4c:	51                   	push   %ecx
46bf4d:	53                   	push   %ebx
46bf4e:	e8 1f 51 17 00       	call   0x5e1072
46bf53:	83 c4 08             	add    $0x8,%esp
46bf56:	8b 55 b0             	mov    -0x50(%ebp),%edx
46bf59:	8b 5d bc             	mov    -0x44(%ebp),%ebx
46bf5c:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bf5f:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
46bf62:	40                   	inc    %eax
46bf63:	89 45 b8             	mov    %eax,-0x48(%ebp)
46bf66:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
46bf6a:	83 f9 10             	cmp    $0x10,%ecx
46bf6d:	72 2c                	jb     0x46bf9b
46bf6f:	41                   	inc    %ecx
46bf70:	8b c2                	mov    %edx,%eax
46bf72:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
46bf78:	72 14                	jb     0x46bf8e
46bf7a:	8b 52 fc             	mov    -0x4(%edx),%edx
46bf7d:	83 c1 23             	add    $0x23,%ecx
46bf80:	2b c2                	sub    %edx,%eax
46bf82:	83 c0 fc             	add    $0xfffffffc,%eax
46bf85:	83 f8 1f             	cmp    $0x1f,%eax
46bf88:	0f 87 00 10 00 00    	ja     0x46cf8e
46bf8e:	51                   	push   %ecx
46bf8f:	52                   	push   %edx
46bf90:	e8 dd 50 17 00       	call   0x5e1072
46bf95:	8b 45 b8             	mov    -0x48(%ebp),%eax
46bf98:	83 c4 08             	add    $0x8,%esp
46bf9b:	83 3c 83 00          	cmpl   $0x0,(%ebx,%eax,4)
46bf9f:	0f 84 cd 0e 00 00    	je     0x46ce72
46bfa5:	8b 7d a4             	mov    -0x5c(%ebp),%edi
46bfa8:	e9 e4 fb ff ff       	jmp    0x46bb91
46bfad:	8b 45 d4             	mov    -0x2c(%ebp),%eax
46bfb0:	8b 55 b0             	mov    -0x50(%ebp),%edx
46bfb3:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46bfb6:	83 f8 10             	cmp    $0x10,%eax
46bfb9:	8d 4d c0             	lea    -0x40(%ebp),%ecx
46bfbc:	0f 43 ca             	cmovae %edx,%ecx
46bfbf:	83 fb 07             	cmp    $0x7,%ebx
46bfc2:	0f 85 e0 0c 00 00    	jne    0x46cca8
46bfc8:	8b 01                	mov    (%ecx),%eax
46bfca:	ba f4 10 69 00       	mov    $0x6910f4,%edx
46bfcf:	c7 45 ac 03 00 00 00 	movl   $0x3,-0x54(%ebp)
46bfd6:	3b 02                	cmp    (%edx),%eax
46bfd8:	75 0d                	jne    0x46bfe7
46bfda:	83 c1 04             	add    $0x4,%ecx
46bfdd:	c7 45 ac ff ff ff ff 	movl   $0xffffffff,-0x54(%ebp)
46bfe4:	83 c2 04             	add    $0x4,%edx
46bfe7:	8a 01                	mov    (%ecx),%al
46bfe9:	3a 02                	cmp    (%edx),%al
46bfeb:	75 22                	jne    0x46c00f
46bfed:	8a 41 01             	mov    0x1(%ecx),%al
46bff0:	3a 42 01             	cmp    0x1(%edx),%al
46bff3:	75 1a                	jne    0x46c00f
46bff5:	8a 41 02             	mov    0x2(%ecx),%al
46bff8:	3a 42 02             	cmp    0x2(%edx),%al
46bffb:	75 12                	jne    0x46c00f
46bffd:	83 7d ac ff          	cmpl   $0xffffffff,-0x54(%ebp)
46c001:	74 08                	je     0x46c00b
46c003:	8a 41 03             	mov    0x3(%ecx),%al
46c006:	3a 42 03             	cmp    0x3(%edx),%al
46c009:	75 04                	jne    0x46c00f
46c00b:	33 c0                	xor    %eax,%eax
46c00d:	eb 05                	jmp    0x46c014
46c00f:	1b c0                	sbb    %eax,%eax
46c011:	83 c8 01             	or     $0x1,%eax
46c014:	85 c0                	test   %eax,%eax
46c016:	0f 85 86 0c 00 00    	jne    0x46cca2
46c01c:	8b 45 b8             	mov    -0x48(%ebp),%eax
46c01f:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46c022:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
46c025:	8b 41 24             	mov    0x24(%ecx),%eax
46c028:	85 c0                	test   %eax,%eax
46c02a:	0f 84 72 0c 00 00    	je     0x46cca2
46c030:	83 38 00             	cmpl   $0x0,(%eax)
46c033:	0f 84 1d ff ff ff    	je     0x46bf56
46c039:	33 db                	xor    %ebx,%ebx
46c03b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
46c040:	ff 31                	push   (%ecx)
46c042:	68 b4 17 69 00       	push   $0x6917b4
46c047:	57                   	push   %edi
46c048:	e8 63 bb ff ff       	call   0x467bb0
46c04d:	8b 4f 1c             	mov    0x1c(%edi),%ecx
46c050:	83 c4 0c             	add    $0xc,%esp
46c053:	8b 01                	mov    (%ecx),%eax
46c055:	ff 50 18             	call   *0x18(%eax)
46c058:	8b f8                	mov    %eax,%edi
46c05a:	85 ff                	test   %edi,%edi
46c05c:	0f 84 1f 0c 00 00    	je     0x46cc81
46c062:	8b 45 b8             	mov    -0x48(%ebp),%eax
46c065:	8b 4d bc             	mov    -0x44(%ebp),%ecx
46c068:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
46c06b:	ff 71 04             	push   0x4(%ecx)
46c06e:	8b cf                	mov    %edi,%ecx
46c070:	68 20 17 69 00       	push   $0x691720
46c075:	e8 36 8b ff ff       	call   0x464bb0
46c07a:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46c07d:	8b 55 bc             	mov    -0x44(%ebp),%edx
46c080:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46c083:	8b cf                	mov    %edi,%ecx
46c085:	ff 70 0c             	push   0xc(%eax)
46c088:	68 2c 17 69 00       	push   $0x69172c
46c08d:	e8 1e 8b ff ff       	call   0x464bb0
46c092:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46c095:	8b 55 bc             	mov    -0x44(%ebp),%edx
46c098:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46c09b:	8b cf                	mov    %edi,%ecx
46c09d:	ff 30                	push   (%eax)
46c09f:	68 6c 08 69 00       	push   $0x69086c
46c0a4:	e8 07 8b ff ff       	call   0x464bb0
46c0a9:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46c0ac:	8b 55 bc             	mov    -0x44(%ebp),%edx
46c0af:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46c0b2:	8b cf                	mov    %edi,%ecx
46c0b4:	ff 70 08             	push   0x8(%eax)
46c0b7:	68 38 17 69 00       	push   $0x691738
46c0bc:	e8 ef 8a ff ff       	call   0x464bb0
46c0c1:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46c0c4:	8b 55 bc             	mov    -0x44(%ebp),%edx
46c0c7:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46c0ca:	8b cf                	mov    %edi,%ecx
46c0cc:	ff 70 10             	push   0x10(%eax)
46c0cf:	68 40 17 69 00       	push   $0x691740
46c0d4:	e8 d7 8a ff ff       	call   0x464bb0
46c0d9:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46c0dc:	8b 55 bc             	mov    -0x44(%ebp),%edx
46c0df:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46c0e2:	8b 40 24             	mov    0x24(%eax),%eax
46c0e5:	8b 04 18             	mov    (%eax,%ebx,1),%eax
46c0e8:	0f b7 40 0c          	movzwl 0xc(%eax),%eax
46c0ec:	50                   	push   %eax
46c0ed:	6a 00                	push   $0x0
46c0ef:	68 bc 17 69 00       	push   $0x6917bc
46c0f4:	57                   	push   %edi
46c0f5:	e8 f6 bb ff ff       	call   0x467cf0
46c0fa:	83 c4 10             	add    $0x10,%esp
46c0fd:	c7 85 8c fd ff ff 2c 	movl   $0x68f22c,-0x274(%ebp)
46c104:	f2 68 00
46c107:	c7 85 9c fd ff ff 34 	movl   $0x68f234,-0x264(%ebp)
46c10e:	f2 68 00
46c111:	c7 85 f4 fd ff ff e0 	movl   $0x68c4e0,-0x20c(%ebp)
46c118:	c4 68 00
46c11b:	6a 00                	push   $0x0
46c11d:	6a 00                	push   $0x0
46c11f:	8d 85 a4 fd ff ff    	lea    -0x25c(%ebp),%eax
46c125:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
46c129:	83 ce 01             	or     $0x1,%esi
46c12c:	8d 8d 8c fd ff ff    	lea    -0x274(%ebp),%ecx
46c132:	50                   	push   %eax
46c133:	89 75 ac             	mov    %esi,-0x54(%ebp)
46c136:	e8 55 d7 ff ff       	call   0x469890
46c13b:	8d 85 9c fd ff ff    	lea    -0x264(%ebp),%eax