422af3:	83 f8 1f             	cmp    $0x1f,%eax
422af6:	0f 87 89 0e 00 00    	ja     0x423985
422afc:	51                   	push   %ecx
422afd:	52                   	push   %edx
422afe:	e8 05 6f 04 00       	call   0x469a08
422b03:	83 c4 08             	add    $0x8,%esp
422b06:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
422b0a:	8b 8d 7c fd ff ff    	mov    -0x284(%ebp),%ecx
422b10:	83 f9 08             	cmp    $0x8,%ecx
422b13:	72 35                	jb     0x422b4a
422b15:	8b 95 68 fd ff ff    	mov    -0x298(%ebp),%edx
422b1b:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
422b22:	8b c2                	mov    %edx,%eax
422b24:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
422b2a:	72 14                	jb     0x422b40
422b2c:	8b 50 fc             	mov    -0x4(%eax),%edx
422b2f:	83 c1 23             	add    $0x23,%ecx
422b32:	2b c2                	sub    %edx,%eax
422b34:	83 c0 fc             	add    $0xfffffffc,%eax
422b37:	83 f8 1f             	cmp    $0x1f,%eax
422b3a:	0f 87 45 0e 00 00    	ja     0x423985
422b40:	51                   	push   %ecx
422b41:	52                   	push   %edx
422b42:	e8 c1 6e 04 00       	call   0x469a08
422b47:	83 c4 08             	add    $0x8,%esp
422b4a:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
422b4e:	8b 8d 34 fd ff ff    	mov    -0x2cc(%ebp),%ecx
422b54:	83 f9 08             	cmp    $0x8,%ecx
422b57:	72 35                	jb     0x422b8e
422b59:	8b 95 20 fd ff ff    	mov    -0x2e0(%ebp),%edx
422b5f:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
422b66:	8b c2                	mov    %edx,%eax
422b68:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
422b6e:	72 14                	jb     0x422b84
422b70:	8b 50 fc             	mov    -0x4(%eax),%edx
422b73:	83 c1 23             	add    $0x23,%ecx
422b76:	2b c2                	sub    %edx,%eax
422b78:	83 c0 fc             	add    $0xfffffffc,%eax
422b7b:	83 f8 1f             	cmp    $0x1f,%eax
422b7e:	0f 87 01 0e 00 00    	ja     0x423985
422b84:	51                   	push   %ecx
422b85:	52                   	push   %edx
422b86:	e8 7d 6e 04 00       	call   0x469a08
422b8b:	83 c4 08             	add    $0x8,%esp
422b8e:	8b b5 38 fa ff ff    	mov    -0x5c8(%ebp),%esi
422b94:	4e                   	dec    %esi
422b95:	89 b5 38 fa ff ff    	mov    %esi,-0x5c8(%ebp)
422b9b:	83 fe fc             	cmp    $0xfffffffc,%esi
422b9e:	0f 8f 7c fa ff ff    	jg     0x422620
422ba4:	83 bd b4 fd ff ff 08 	cmpl   $0x8,-0x24c(%ebp)
422bab:	8d 85 a0 fd ff ff    	lea    -0x260(%ebp),%eax
422bb1:	ff b5 b0 fd ff ff    	push   -0x250(%ebp)
422bb7:	0f 43 85 a0 fd ff ff 	cmovae -0x260(%ebp),%eax
422bbe:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
422bc4:	50                   	push   %eax
422bc5:	e8 36 02 fe ff       	call   0x402e00
422bca:	83 bd 04 fd ff ff 08 	cmpl   $0x8,-0x2fc(%ebp)
422bd1:	8d 85 f0 fc ff ff    	lea    -0x310(%ebp),%eax
422bd7:	0f 43 85 f0 fc ff ff 	cmovae -0x310(%ebp),%eax
422bde:	50                   	push   %eax
422bdf:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
422be5:	68 04 01 00 00       	push   $0x104
422bea:	50                   	push   %eax
422beb:	e8 ad 6a 05 00       	call   0x47969d
422bf0:	83 c4 0c             	add    $0xc,%esp
422bf3:	8d 85 a8 fc ff ff    	lea    -0x358(%ebp),%eax
422bf9:	83 bd bc fc ff ff 08 	cmpl   $0x8,-0x344(%ebp)
422c00:	0f 43 85 a8 fc ff ff 	cmovae -0x358(%ebp),%eax
422c07:	50                   	push   %eax
422c08:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
422c0e:	50                   	push   %eax
422c0f:	ff 15 74 e2 49 00    	call   *0x49e274
422c15:	85 c0                	test   %eax,%eax
422c17:	74 2b                	je     0x422c44
422c19:	8d 8d e8 fd ff ff    	lea    -0x218(%ebp),%ecx
422c1f:	8d 51 02             	lea    0x2(%ecx),%edx
422c22:	66 8b 01             	mov    (%ecx),%ax
422c25:	83 c1 02             	add    $0x2,%ecx
422c28:	66 85 c0             	test   %ax,%ax
422c2b:	75 f5                	jne    0x422c22
422c2d:	2b ca                	sub    %edx,%ecx
422c2f:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
422c35:	d1 f9                	sar    $1,%ecx
422c37:	51                   	push   %ecx
422c38:	50                   	push   %eax
422c39:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
422c3f:	e8 bc 01 fe ff       	call   0x402e00
422c44:	8b 8d 90 fd ff ff    	mov    -0x270(%ebp),%ecx
422c4a:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
422c4f:	2b c1                	sub    %ecx,%eax
422c51:	83 f8 01             	cmp    $0x1,%eax
422c54:	0f 82 26 0d 00 00    	jb     0x423980
422c5a:	83 bd 94 fd ff ff 08 	cmpl   $0x8,-0x26c(%ebp)
422c61:	8d 85 80 fd ff ff    	lea    -0x280(%ebp),%eax
422c67:	6a 01                	push   $0x1
422c69:	0f 43 85 80 fd ff ff 	cmovae -0x280(%ebp),%eax
422c70:	68 bc f2 4a 00       	push   $0x4af2bc
422c75:	51                   	push   %ecx
422c76:	50                   	push   %eax
422c77:	51                   	push   %ecx
422c78:	ff b5 2c fa ff ff    	push   -0x5d4(%ebp)
422c7e:	8d 8d 10 fa ff ff    	lea    -0x5f0(%ebp),%ecx
422c84:	e8 17 05 fe ff       	call   0x4031a0
422c89:	c6 45 fc 0d          	movb   $0xd,-0x4(%ebp)
422c8d:	8d 85 a0 fd ff ff    	lea    -0x260(%ebp),%eax
422c93:	83 bd b4 fd ff ff 08 	cmpl   $0x8,-0x24c(%ebp)
422c9a:	8d 8d 10 fa ff ff    	lea    -0x5f0(%ebp),%ecx
422ca0:	ff b5 b0 fd ff ff    	push   -0x250(%ebp)
422ca6:	0f 43 85 a0 fd ff ff 	cmovae -0x260(%ebp),%eax
422cad:	50                   	push   %eax
422cae:	e8 5d 02 fe ff       	call   0x402f10
422cb3:	c7 85 68 fd ff ff 00 	movl   $0x0,-0x298(%ebp)
422cba:	00 00 00
422cbd:	33 c9                	xor    %ecx,%ecx
422cbf:	c7 85 78 fd ff ff 00 	movl   $0x0,-0x288(%ebp)
422cc6:	00 00 00
422cc9:	c7 85 7c fd ff ff 00 	movl   $0x0,-0x284(%ebp)
422cd0:	00 00 00
422cd3:	0f 10 00             	movups (%eax),%xmm0
422cd6:	0f 11 85 68 fd ff ff 	movups %xmm0,-0x298(%ebp)
422cdd:	f3 0f 7e 40 10       	movq   0x10(%eax),%xmm0
422ce2:	66 0f d6 85 78 fd ff 	movq   %xmm0,-0x288(%ebp)
422ce9:	ff
422cea:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
422cf1:	c7 40 14 07 00 00 00 	movl   $0x7,0x14(%eax)
422cf8:	66 89 08             	mov    %cx,(%eax)
422cfb:	6a 01                	push   $0x1
422cfd:	68 b8 f2 4a 00       	push   $0x4af2b8
422d02:	8d 8d 68 fd ff ff    	lea    -0x298(%ebp),%ecx
422d08:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
422d0c:	e8 ff 01 fe ff       	call   0x402f10
422d11:	c7 85 c0 fc ff ff 00 	movl   $0x0,-0x340(%ebp)
422d18:	00 00 00
422d1b:	33 c9                	xor    %ecx,%ecx
422d1d:	c7 85 d0 fc ff ff 00 	movl   $0x0,-0x330(%ebp)
422d24:	00 00 00
422d27:	c7 85 d4 fc ff ff 00 	movl   $0x0,-0x32c(%ebp)
422d2e:	00 00 00
422d31:	0f 10 00             	movups (%eax),%xmm0
422d34:	0f 11 85 c0 fc ff ff 	movups %xmm0,-0x340(%ebp)
422d3b:	f3 0f 7e 40 10       	movq   0x10(%eax),%xmm0
422d40:	66 0f d6 85 d0 fc ff 	movq   %xmm0,-0x330(%ebp)
422d47:	ff
422d48:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
422d4f:	c7 40 14 07 00 00 00 	movl   $0x7,0x14(%eax)
422d56:	66 89 08             	mov    %cx,(%eax)
422d59:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
422d5d:	8b 8d 7c fd ff ff    	mov    -0x284(%ebp),%ecx
422d63:	83 f9 08             	cmp    $0x8,%ecx
422d66:	72 35                	jb     0x422d9d
422d68:	8b 95 68 fd ff ff    	mov    -0x298(%ebp),%edx
422d6e:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
422d75:	8b c2                	mov    %edx,%eax
422d77:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
422d7d:	72 14                	jb     0x422d93
422d7f:	8b 50 fc             	mov    -0x4(%eax),%edx
422d82:	83 c1 23             	add    $0x23,%ecx
422d85:	2b c2                	sub    %edx,%eax
422d87:	83 c0 fc             	add    $0xfffffffc,%eax
422d8a:	83 f8 1f             	cmp    $0x1f,%eax
422d8d:	0f 87 f2 0b 00 00    	ja     0x423985
422d93:	51                   	push   %ecx
422d94:	52                   	push   %edx
422d95:	e8 6e 6c 04 00       	call   0x469a08
422d9a:	83 c4 08             	add    $0x8,%esp
422d9d:	33 c0                	xor    %eax,%eax
422d9f:	c7 85 78 fd ff ff 00 	movl   $0x0,-0x288(%ebp)
422da6:	00 00 00
422da9:	c7 85 7c fd ff ff 07 	movl   $0x7,-0x284(%ebp)
422db0:	00 00 00
422db3:	66 89 85 68 fd ff ff 	mov    %ax,-0x298(%ebp)
422dba:	c6 45 fc 11          	movb   $0x11,-0x4(%ebp)
422dbe:	8b 8d 24 fa ff ff    	mov    -0x5dc(%ebp),%ecx
422dc4:	83 f9 08             	cmp    $0x8,%ecx
422dc7:	72 35                	jb     0x422dfe
422dc9:	8b 95 10 fa ff ff    	mov    -0x5f0(%ebp),%edx
422dcf:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
422dd6:	8b c2                	mov    %edx,%eax
422dd8:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
422dde:	72 14                	jb     0x422df4
422de0:	8b 50 fc             	mov    -0x4(%eax),%edx
422de3:	83 c1 23             	add    $0x23,%ecx
422de6:	2b c2                	sub    %edx,%eax
422de8:	83 c0 fc             	add    $0xfffffffc,%eax
422deb:	83 f8 1f             	cmp    $0x1f,%eax
422dee:	0f 87 91 0b 00 00    	ja     0x423985
422df4:	51                   	push   %ecx
422df5:	52                   	push   %edx
422df6:	e8 0d 6c 04 00       	call   0x469a08
422dfb:	83 c4 08             	add    $0x8,%esp
422dfe:	33 c0                	xor    %eax,%eax
422e00:	c7 85 20 fa ff ff 00 	movl   $0x0,-0x5e0(%ebp)
422e07:	00 00 00
422e0a:	83 bd d4 fc ff ff 08 	cmpl   $0x8,-0x32c(%ebp)
422e11:	8d 8d 40 fa ff ff    	lea    -0x5c0(%ebp),%ecx
422e17:	66 89 85 10 fa ff ff 	mov    %ax,-0x5f0(%ebp)
422e1e:	8d 85 c0 fc ff ff    	lea    -0x340(%ebp),%eax
422e24:	0f 43 85 c0 fc ff ff 	cmovae -0x340(%ebp),%eax
422e2b:	51                   	push   %ecx
422e2c:	50                   	push   %eax
422e2d:	c7 85 24 fa ff ff 07 	movl   $0x7,-0x5dc(%ebp)
422e34:	00 00 00
422e37:	ff 15 90 e0 49 00    	call   *0x49e090
422e3d:	8b b5 a0 fd ff ff    	mov    -0x260(%ebp),%esi
422e43:	89 85 2c fa ff ff    	mov    %eax,-0x5d4(%ebp)
422e49:	83 f8 ff             	cmp    $0xffffffff,%eax
422e4c:	75 12                	jne    0x422e60
422e4e:	ff 15 30 e1 49 00    	call   *0x49e130
422e54:	e9 7b 08 00 00       	jmp    0x4236d4
422e59:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
422e60:	8d 8d 6c fa ff ff    	lea    -0x594(%ebp),%ecx
422e66:	c6 85 3f fa ff ff 00 	movb   $0x0,-0x5c1(%ebp)
422e6d:	8d 51 02             	lea    0x2(%ecx),%edx
422e70:	66 8b 01             	mov    (%ecx),%ax
422e73:	83 c1 02             	add    $0x2,%ecx
422e76:	66 85 c0             	test   %ax,%ax
422e79:	75 f5                	jne    0x422e70
422e7b:	2b ca                	sub    %edx,%ecx
422e7d:	8d 85 6c fa ff ff    	lea    -0x594(%ebp),%eax
422e83:	d1 f9                	sar    $1,%ecx
422e85:	51                   	push   %ecx
422e86:	50                   	push   %eax
422e87:	8d 8d b8 fd ff ff    	lea    -0x248(%ebp),%ecx
422e8d:	e8 6e ff fd ff       	call   0x402e00
422e92:	b9 c0 f2 4a 00       	mov    $0x4af2c0,%ecx
422e97:	8d 85 6c fa ff ff    	lea    -0x594(%ebp),%eax
422e9d:	0f 1f 00             	nopl   (%eax)
422ea0:	66 8b 10             	mov    (%eax),%dx
422ea3:	66 3b 11             	cmp    (%ecx),%dx
422ea6:	75 1e                	jne    0x422ec6
422ea8:	66 85 d2             	test   %dx,%dx
422eab:	74 15                	je     0x422ec2
422ead:	66 8b 50 02          	mov    0x2(%eax),%dx
422eb1:	66 3b 51 02          	cmp    0x2(%ecx),%dx
422eb5:	75 0f                	jne    0x422ec6
422eb7:	83 c0 04             	add    $0x4,%eax
422eba:	83 c1 04             	add    $0x4,%ecx
422ebd:	66 85 d2             	test   %dx,%dx
422ec0:	75 de                	jne    0x422ea0
422ec2:	33 c0                	xor    %eax,%eax
422ec4:	eb 05                	jmp    0x422ecb
422ec6:	1b c0                	sbb    %eax,%eax
422ec8:	83 c8 01             	or     $0x1,%eax
422ecb:	85 c0                	test   %eax,%eax
422ecd:	0f 84 99 06 00 00    	je     0x42356c
422ed3:	b9 c4 f2 4a 00       	mov    $0x4af2c4,%ecx
422ed8:	8d 85 6c fa ff ff    	lea    -0x594(%ebp),%eax
422ede:	66 90                	xchg   %ax,%ax
422ee0:	66 8b 10             	mov    (%eax),%dx
422ee3:	66 3b 11             	cmp    (%ecx),%dx
422ee6:	75 1e                	jne    0x422f06
422ee8:	66 85 d2             	test   %dx,%dx
422eeb:	74 15                	je     0x422f02
422eed:	66 8b 50 02          	mov    0x2(%eax),%dx
422ef1:	66 3b 51 02          	cmp    0x2(%ecx),%dx
422ef5:	75 0f                	jne    0x422f06
422ef7:	83 c0 04             	add    $0x4,%eax
422efa:	83 c1 04             	add    $0x4,%ecx
422efd:	66 85 d2             	test   %dx,%dx
422f00:	75 de                	jne    0x422ee0
422f02:	33 c0                	xor    %eax,%eax
422f04:	eb 05                	jmp    0x422f0b
422f06:	1b c0                	sbb    %eax,%eax
422f08:	83 c8 01             	or     $0x1,%eax
422f0b:	85 c0                	test   %eax,%eax
422f0d:	0f 84 59 06 00 00    	je     0x42356c
422f13:	8b b5 d4 fd ff ff    	mov    -0x22c(%ebp),%esi
422f19:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
422f1e:	8b bd d0 fd ff ff    	mov    -0x230(%ebp),%edi
422f24:	8b ce                	mov    %esi,%ecx
422f26:	2b cf                	sub    %edi,%ecx
422f28:	c7 85 38 fa ff ff 00 	movl   $0x0,-0x5c8(%ebp)
422f2f:	00 00 00
422f32:	f7 e9                	imul   %ecx
422f34:	c1 fa 02             	sar    $0x2,%edx
422f37:	8b c2                	mov    %edx,%eax
422f39:	c1 e8 1f             	shr    $0x1f,%eax
422f3c:	03 c2                	add    %edx,%eax
422f3e:	0f 84 96 04 00 00    	je     0x4233da
422f44:	8b 8d 38 fa ff ff    	mov    -0x5c8(%ebp),%ecx
422f4a:	c7 85 34 fa ff ff 00 	movl   $0x0,-0x5cc(%ebp)
422f51:	00 00 00
422f54:	2b f7                	sub    %edi,%esi
422f56:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
422f5b:	f7 ee                	imul   %esi
422f5d:	c1 fa 02             	sar    $0x2,%edx
422f60:	8b c2                	mov    %edx,%eax
422f62:	c1 e8 1f             	shr    $0x1f,%eax
422f65:	03 c2                	add    %edx,%eax
422f67:	3b c1                	cmp    %ecx,%eax
422f69:	0f 86 20 0a 00 00    	jbe    0x42398f
422f6f:	8b 85 34 fa ff ff    	mov    -0x5cc(%ebp),%eax
422f75:	8d 8d 38 fd ff ff    	lea    -0x2c8(%ebp),%ecx
422f7b:	03 c7                	add    %edi,%eax
422f7d:	50                   	push   %eax
422f7e:	e8 ed 05 fe ff       	call   0x403570
422f83:	c6 45 fc 12          	movb   $0x12,-0x4(%ebp)
422f87:	8d bd a0 fd ff ff    	lea    -0x260(%ebp),%edi
422f8d:	83 bd b4 fd ff ff 08 	cmpl   $0x8,-0x24c(%ebp)
422f94:	8d 95 b8 fd ff ff    	lea    -0x248(%ebp),%edx
422f9a:	8b 85 c8 fd ff ff    	mov    -0x238(%ebp),%eax
422fa0:	0f 43 bd a0 fd ff ff 	cmovae -0x260(%ebp),%edi
422fa7:	83 bd cc fd ff ff 08 	cmpl   $0x8,-0x234(%ebp)
422fae:	8b b5 b0 fd ff ff    	mov    -0x250(%ebp),%esi
422fb4:	0f 43 95 b8 fd ff ff 	cmovae -0x248(%ebp),%edx
422fbb:	0f 93 85 3e fa ff ff 	setae  -0x5c2(%ebp)
422fc2:	89 bd 30 fa ff ff    	mov    %edi,-0x5d0(%ebp)
422fc8:	89 95 0c fa ff ff    	mov    %edx,-0x5f4(%ebp)
422fce:	3b f0                	cmp    %eax,%esi
422fd0:	0f 87 5f 01 00 00    	ja     0x423135
422fd6:	2b c6                	sub    %esi,%eax
422fd8:	85 f6                	test   %esi,%esi
422fda:	74 77                	je     0x423053
422fdc:	40                   	inc    %eax
422fdd:	8d 0c 42             	lea    (%edx,%eax,2),%ecx
422fe0:	8b c2                	mov    %edx,%eax
422fe2:	89 8d 08 fa ff ff    	mov    %ecx,-0x5f8(%ebp)
422fe8:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
422fef:	00
422ff0:	2b c8                	sub    %eax,%ecx
422ff2:	d1 f9                	sar    $1,%ecx
422ff4:	0f 84 3b 01 00 00    	je     0x423135
422ffa:	0f b7 17             	movzwl (%edi),%edx
422ffd:	0f 1f 00             	nopl   (%eax)
423000:	66 39 10             	cmp    %dx,(%eax)
423003:	74 0d                	je     0x423012
423005:	83 c0 02             	add    $0x2,%eax
423008:	83 e9 01             	sub    $0x1,%ecx
42300b:	75 f3                	jne    0x423000
42300d:	e9 23 01 00 00       	jmp    0x423135
423012:	85 c0                	test   %eax,%eax
423014:	0f 84 1b 01 00 00    	je     0x423135
42301a:	8b d7                	mov    %edi,%edx
42301c:	85 f6                	test   %esi,%esi
42301e:	74 25                	je     0x423045
423020:	8b f8                	mov    %eax,%edi
423022:	2b bd 30 fa ff ff    	sub    -0x5d0(%ebp),%edi
423028:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
42302f:	00
423030:	66 8b 0c 3a          	mov    (%edx,%edi,1),%cx
423034:	66 3b 0a             	cmp    (%edx),%cx
423037:	0f 85 3f 03 00 00    	jne    0x42337c
42303d:	83 c2 02             	add    $0x2,%edx
423040:	83 ee 01             	sub    $0x1,%esi
423043:	75 eb                	jne    0x423030
423045:	2b 85 0c fa ff ff    	sub    -0x5f4(%ebp),%eax
42304b:	d1 f8                	sar    $1,%eax
42304d:	0f 85 e2 00 00 00    	jne    0x423135
423053:	8b 8d 48 fd ff ff    	mov    -0x2b8(%ebp),%ecx
423059:	8d 85 b8 fd ff ff    	lea    -0x248(%ebp),%eax