46bad3:	83 c4 08             	add    $0x8,%esp
46bad6:	89 7d a4             	mov    %edi,-0x5c(%ebp)
46bad9:	85 ff                	test   %edi,%edi
46badb:	0f 85 a0 00 00 00    	jne    0x46bb81
46bae1:	83 7d 20 10          	cmpl   $0x10,0x20(%ebp)
46bae5:	8d 45 0c             	lea    0xc(%ebp),%eax
46bae8:	0f 43 45 0c          	cmovae 0xc(%ebp),%eax
46baec:	50                   	push   %eax
46baed:	68 24 11 69 00       	push   $0x691124
46baf2:	53                   	push   %ebx
46baf3:	e8 b8 c0 ff ff       	call   0x467bb0
46baf8:	83 7d 20 10          	cmpl   $0x10,0x20(%ebp)
46bafc:	8d 45 0c             	lea    0xc(%ebp),%eax
46baff:	0f 43 45 0c          	cmovae 0xc(%ebp),%eax
46bb03:	50                   	push   %eax
46bb04:	53                   	push   %ebx
46bb05:	e8 36 c3 ff ff       	call   0x467e40
46bb0a:	83 7d 68 10          	cmpl   $0x10,0x68(%ebp)
46bb0e:	8b f8                	mov    %eax,%edi
46bb10:	8d 45 54             	lea    0x54(%ebp),%eax
46bb13:	89 7d a4             	mov    %edi,-0x5c(%ebp)
46bb16:	0f 43 45 54          	cmovae 0x54(%ebp),%eax
46bb1a:	50                   	push   %eax
46bb1b:	68 65 aa 68 00       	push   $0x68aa65
46bb20:	68 60 12 69 00       	push   $0x691260
46bb25:	57                   	push   %edi
46bb26:	e8 45 bf ff ff       	call   0x467a70
46bb2b:	83 c4 24             	add    $0x24,%esp
46bb2e:	39 75 4c             	cmp    %esi,0x4c(%ebp)
46bb31:	74 18                	je     0x46bb4b
46bb33:	83 7d 50 10          	cmpl   $0x10,0x50(%ebp)
46bb37:	8d 45 3c             	lea    0x3c(%ebp),%eax
46bb3a:	8b cf                	mov    %edi,%ecx
46bb3c:	0f 43 45 3c          	cmovae 0x3c(%ebp),%eax
46bb40:	50                   	push   %eax
46bb41:	68 88 17 69 00       	push   $0x691788
46bb46:	e8 65 90 ff ff       	call   0x464bb0
46bb4b:	83 7d 38 10          	cmpl   $0x10,0x38(%ebp)
46bb4f:	8d 45 24             	lea    0x24(%ebp),%eax
46bb52:	8b cf                	mov    %edi,%ecx
46bb54:	0f 43 45 24          	cmovae 0x24(%ebp),%eax
46bb58:	50                   	push   %eax
46bb59:	68 9c 17 69 00       	push   $0x69179c
46bb5e:	e8 4d 90 ff ff       	call   0x464bb0
46bb63:	80 7d ab 00          	cmpb   $0x0,-0x55(%ebp)
46bb67:	b9 e8 c3 68 00       	mov    $0x68c3e8,%ecx
46bb6c:	b8 bc c0 68 00       	mov    $0x68c0bc,%eax
46bb71:	0f 44 c1             	cmove  %ecx,%eax
46bb74:	8b cf                	mov    %edi,%ecx
46bb76:	50                   	push   %eax
46bb77:	68 ac 17 69 00       	push   $0x6917ac
46bb7c:	e8 2f 90 ff ff       	call   0x464bb0
46bb81:	8b 5d bc             	mov    -0x44(%ebp),%ebx
46bb84:	33 c0                	xor    %eax,%eax
46bb86:	89 45 b8             	mov    %eax,-0x48(%ebp)
46bb89:	39 03                	cmp    %eax,(%ebx)
46bb8b:	0f 84 e1 12 00 00    	je     0x46ce72
46bb91:	8b 04 83             	mov    (%ebx,%eax,4),%eax
46bb94:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
46bb9b:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
46bba2:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
46bba6:	8b 50 08             	mov    0x8(%eax),%edx
46bba9:	8b ca                	mov    %edx,%ecx
46bbab:	8d 59 01             	lea    0x1(%ecx),%ebx
46bbae:	66 90                	xchg   %ax,%ax
46bbb0:	8a 01                	mov    (%ecx),%al
46bbb2:	41                   	inc    %ecx
46bbb3:	84 c0                	test   %al,%al
46bbb5:	75 f9                	jne    0x46bbb0
46bbb7:	2b cb                	sub    %ebx,%ecx
46bbb9:	51                   	push   %ecx
46bbba:	52                   	push   %edx
46bbbb:	8d 4d c0             	lea    -0x40(%ebp),%ecx
46bbbe:	e8 7d 96 fd ff       	call   0x445240
46bbc3:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
46bbc7:	8d 4d c0             	lea    -0x40(%ebp),%ecx
46bbca:	8b 55 c0             	mov    -0x40(%ebp),%edx
46bbcd:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46bbd0:	0f 43 ca             	cmovae %edx,%ecx
46bbd3:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
46bbd7:	89 55 b0             	mov    %edx,-0x50(%ebp)
46bbda:	83 fb 09             	cmp    $0x9,%ebx
46bbdd:	75 58                	jne    0x46bc37
46bbdf:	ba fc 10 69 00       	mov    $0x6910fc,%edx
46bbe4:	bb 05 00 00 00       	mov    $0x5,%ebx
46bbe9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
46bbf0:	8b 01                	mov    (%ecx),%eax
46bbf2:	3b 02                	cmp    (%edx),%eax
46bbf4:	75 0b                	jne    0x46bc01
46bbf6:	83 c1 04             	add    $0x4,%ecx
46bbf9:	83 c2 04             	add    $0x4,%edx
46bbfc:	83 eb 04             	sub    $0x4,%ebx
46bbff:	73 ef                	jae    0x46bbf0
46bc01:	8a 01                	mov    (%ecx),%al
46bc03:	3a 02                	cmp    (%edx),%al
46bc05:	75 21                	jne    0x46bc28
46bc07:	83 fb fd             	cmp    $0xfffffffd,%ebx
46bc0a:	74 18                	je     0x46bc24
46bc0c:	8a 41 01             	mov    0x1(%ecx),%al
46bc0f:	3a 42 01             	cmp    0x1(%edx),%al
46bc12:	75 14                	jne    0x46bc28
46bc14:	8a 41 02             	mov    0x2(%ecx),%al
46bc17:	3a 42 02             	cmp    0x2(%edx),%al
46bc1a:	75 0c                	jne    0x46bc28
46bc1c:	8a 41 03             	mov    0x3(%ecx),%al
46bc1f:	3a 42 03             	cmp    0x3(%edx),%al
46bc22:	75 04                	jne    0x46bc28
46bc24:	33 c0                	xor    %eax,%eax
46bc26:	eb 05                	jmp    0x46bc2d
46bc28:	1b c0                	sbb    %eax,%eax
46bc2a:	83 c8 01             	or     $0x1,%eax
46bc2d:	85 c0                	test   %eax,%eax
46bc2f:	74 6a                	je     0x46bc9b
46bc31:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46bc34:	8b 55 b0             	mov    -0x50(%ebp),%edx
46bc37:	8b 45 d4             	mov    -0x2c(%ebp),%eax
46bc3a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
46bc3d:	83 f8 10             	cmp    $0x10,%eax
46bc40:	0f 43 ca             	cmovae %edx,%ecx
46bc43:	83 fb 0b             	cmp    $0xb,%ebx
46bc46:	0f 85 6a 03 00 00    	jne    0x46bfb6
46bc4c:	ba 08 11 69 00       	mov    $0x691108,%edx
46bc51:	bb 07 00 00 00       	mov    $0x7,%ebx
46bc56:	8b 01                	mov    (%ecx),%eax
46bc58:	3b 02                	cmp    (%edx),%eax
46bc5a:	75 0b                	jne    0x46bc67
46bc5c:	83 c1 04             	add    $0x4,%ecx
46bc5f:	83 c2 04             	add    $0x4,%edx
46bc62:	83 eb 04             	sub    $0x4,%ebx
46bc65:	73 ef                	jae    0x46bc56
46bc67:	8a 01                	mov    (%ecx),%al
46bc69:	3a 02                	cmp    (%edx),%al
46bc6b:	75 21                	jne    0x46bc8e
46bc6d:	8a 41 01             	mov    0x1(%ecx),%al
46bc70:	3a 42 01             	cmp    0x1(%edx),%al
46bc73:	75 19                	jne    0x46bc8e
46bc75:	8a 41 02             	mov    0x2(%ecx),%al
46bc78:	3a 42 02             	cmp    0x2(%edx),%al
46bc7b:	75 11                	jne    0x46bc8e
46bc7d:	83 fb ff             	cmp    $0xffffffff,%ebx
46bc80:	74 08                	je     0x46bc8a
46bc82:	8a 41 03             	mov    0x3(%ecx),%al
46bc85:	3a 42 03             	cmp    0x3(%edx),%al
46bc88:	75 04                	jne    0x46bc8e
46bc8a:	33 c0                	xor    %eax,%eax
46bc8c:	eb 05                	jmp    0x46bc93
46bc8e:	1b c0                	sbb    %eax,%eax
46bc90:	83 c8 01             	or     $0x1,%eax
46bc93:	85 c0                	test   %eax,%eax
46bc95:	0f 85 12 03 00 00    	jne    0x46bfad
46bc9b:	8b 5d b8             	mov    -0x48(%ebp),%ebx
46bc9e:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bca1:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
46bca4:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46bca7:	8b 40 1c             	mov    0x1c(%eax),%eax
46bcaa:	ff 70 08             	push   0x8(%eax)
46bcad:	e8 fe d7 00 00       	call   0x4794b0
46bcb2:	84 c0                	test   %al,%al
46bcb4:	0f 85 f3 02 00 00    	jne    0x46bfad
46bcba:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bcbd:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46bcc0:	ff 30                	push   (%eax)
46bcc2:	57                   	push   %edi
46bcc3:	e8 78 c1 ff ff       	call   0x467e40
46bcc8:	8b d8                	mov    %eax,%ebx
46bcca:	83 c4 08             	add    $0x8,%esp
46bccd:	85 db                	test   %ebx,%ebx
46bccf:	0f 85 86 00 00 00    	jne    0x46bd5b
46bcd5:	8b 5d b8             	mov    -0x48(%ebp),%ebx
46bcd8:	8b 45 bc             	mov    -0x44(%ebp),%eax
46bcdb:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46bcde:	ff 30                	push   (%eax)
46bce0:	68 b4 17 69 00       	push   $0x6917b4
46bce5:	57                   	push   %edi
46bce6:	e8 c5 be ff ff       	call   0x467bb0
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