412990:	66 8b 04 31          	mov    (%ecx,%esi,1),%ax
412994:	66 3b 01             	cmp    (%ecx),%ax
412997:	75 11                	jne    0x4129aa
412999:	83 c1 02             	add    $0x2,%ecx
41299c:	83 ea 01             	sub    $0x1,%edx
41299f:	75 ef                	jne    0x412990
4129a1:	8b 45 9c             	mov    -0x64(%ebp),%eax
4129a4:	c6 45 a7 01          	movb   $0x1,-0x59(%ebp)
4129a8:	eb 07                	jmp    0x4129b1
4129aa:	8b 45 9c             	mov    -0x64(%ebp),%eax
4129ad:	c6 45 a7 00          	movb   $0x0,-0x59(%ebp)
4129b1:	80 7d a6 00          	cmpb   $0x0,-0x5a(%ebp)
4129b5:	74 35                	je     0x4129ec
4129b7:	8b 4d 90             	mov    -0x70(%ebp),%ecx
4129ba:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4129c1:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4129c7:	72 16                	jb     0x4129df
4129c9:	8b 50 fc             	mov    -0x4(%eax),%edx
4129cc:	83 c1 23             	add    $0x23,%ecx
4129cf:	2b c2                	sub    %edx,%eax
4129d1:	83 c0 fc             	add    $0xfffffffc,%eax
4129d4:	83 f8 1f             	cmp    $0x1f,%eax
4129d7:	0f 87 61 09 00 00    	ja     0x41333e
4129dd:	eb 03                	jmp    0x4129e2
4129df:	8b 55 9c             	mov    -0x64(%ebp),%edx
4129e2:	51                   	push   %ecx
4129e3:	52                   	push   %edx
4129e4:	e8 cf 71 00 00       	call   0x419bb8
4129e9:	83 c4 08             	add    $0x8,%esp
4129ec:	80 7d a7 00          	cmpb   $0x0,-0x59(%ebp)
4129f0:	74 4a                	je     0x412a3c
4129f2:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4129f9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4129fc:	83 f9 08             	cmp    $0x8,%ecx
4129ff:	0f 82 04 08 00 00    	jb     0x413209
412a05:	8b 55 c0             	mov    -0x40(%ebp),%edx
412a08:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412a0f:	8b c2                	mov    %edx,%eax
412a11:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412a17:	72 14                	jb     0x412a2d
412a19:	8b 50 fc             	mov    -0x4(%eax),%edx
412a1c:	83 c1 23             	add    $0x23,%ecx
412a1f:	2b c2                	sub    %edx,%eax
412a21:	83 c0 fc             	add    $0xfffffffc,%eax
412a24:	83 f8 1f             	cmp    $0x1f,%eax
412a27:	0f 87 11 09 00 00    	ja     0x41333e
412a2d:	51                   	push   %ecx
412a2e:	52                   	push   %edx
412a2f:	e8 84 71 00 00       	call   0x419bb8
412a34:	83 c4 08             	add    $0x8,%esp
412a37:	e9 cd 07 00 00       	jmp    0x413209
412a3c:	83 7d d4 08          	cmpl   $0x8,-0x2c(%ebp)
412a40:	8d 4d c0             	lea    -0x40(%ebp),%ecx
412a43:	8b 75 d0             	mov    -0x30(%ebp),%esi
412a46:	8b d6                	mov    %esi,%edx
412a48:	0f 43 4d c0          	cmovae -0x40(%ebp),%ecx
412a4c:	0f 93 45 a6          	setae  -0x5a(%ebp)
412a50:	6a 01                	push   $0x1
412a52:	68 4c f4 44 00       	push   $0x44f44c
412a57:	51                   	push   %ecx
412a58:	e8 d3 0b 00 00       	call   0x413630
412a5d:	83 c4 0c             	add    $0xc,%esp
412a60:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
412a67:	83 f8 ff             	cmp    $0xffffffff,%eax
412a6a:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
412a71:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
412a78:	0f 44 c6             	cmove  %esi,%eax
412a7b:	3b f0                	cmp    %eax,%esi
412a7d:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
412a83:	8b c8                	mov    %eax,%ecx
412a85:	8d 45 c0             	lea    -0x40(%ebp),%eax
412a88:	0f 42 ce             	cmovb  %esi,%ecx
412a8b:	80 7d a6 00          	cmpb   $0x0,-0x5a(%ebp)
412a8f:	51                   	push   %ecx
412a90:	0f 45 45 c0          	cmovne -0x40(%ebp),%eax
412a94:	8d 4d d8             	lea    -0x28(%ebp),%ecx
412a97:	50                   	push   %eax
412a98:	e8 63 05 ff ff       	call   0x403000
412a9d:	8b 45 a0             	mov    -0x60(%ebp),%eax
412aa0:	83 c8 10             	or     $0x10,%eax
412aa3:	89 45 a0             	mov    %eax,-0x60(%ebp)
412aa6:	89 45 9c             	mov    %eax,-0x64(%ebp)
412aa9:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
412aaf:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412ab3:	8b 45 d0             	mov    -0x30(%ebp),%eax
412ab6:	3b d0                	cmp    %eax,%edx
412ab8:	73 5e                	jae    0x412b18
412aba:	42                   	inc    %edx
412abb:	c7 85 5c ff ff ff 00 	movl   $0x0,-0xa4(%ebp)
412ac2:	00 00 00
412ac5:	c7 85 6c ff ff ff 00 	movl   $0x0,-0x94(%ebp)
412acc:	00 00 00
412acf:	c7 85 70 ff ff ff 00 	movl   $0x0,-0x90(%ebp)
412ad6:	00 00 00
412ad9:	3b c2                	cmp    %edx,%eax
412adb:	0f 82 58 08 00 00    	jb     0x413339
412ae1:	2b c2                	sub    %edx,%eax
412ae3:	83 c9 ff             	or     $0xffffffff,%ecx
412ae6:	83 f8 ff             	cmp    $0xffffffff,%eax
412ae9:	0f 42 c8             	cmovb  %eax,%ecx
412aec:	83 7d d4 08          	cmpl   $0x8,-0x2c(%ebp)
412af0:	8d 45 c0             	lea    -0x40(%ebp),%eax
412af3:	0f 43 45 c0          	cmovae -0x40(%ebp),%eax
412af7:	51                   	push   %ecx
412af8:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
412afe:	8d 04 50             	lea    (%eax,%edx,2),%eax
412b01:	50                   	push   %eax
412b02:	e8 f9 04 ff ff       	call   0x403000
412b07:	8b 4d a0             	mov    -0x60(%ebp),%ecx
412b0a:	83 c9 40             	or     $0x40,%ecx
412b0d:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
412b13:	83 c9 01             	or     $0x1,%ecx
412b16:	eb 36                	jmp    0x412b4e
412b18:	6a 00                	push   $0x0
412b1a:	68 54 9f 44 00       	push   $0x449f54
412b1f:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
412b25:	c7 85 7c ff ff ff 00 	movl   $0x0,-0x84(%ebp)
412b2c:	00 00 00
412b2f:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
412b36:	c7 45 90 00 00 00 00 	movl   $0x0,-0x70(%ebp)
412b3d:	e8 be 04 ff ff       	call   0x403000
412b42:	8b 4d a0             	mov    -0x60(%ebp),%ecx
412b45:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
412b4b:	83 c9 02             	or     $0x2,%ecx
412b4e:	0f 10 00             	movups (%eax),%xmm0
412b51:	33 d2                	xor    %edx,%edx
412b53:	89 4d a0             	mov    %ecx,-0x60(%ebp)
412b56:	0f 11 45 a8          	movups %xmm0,-0x58(%ebp)
412b5a:	f3 0f 7e 40 10       	movq   0x10(%eax),%xmm0
412b5f:	66 0f d6 45 b8       	movq   %xmm0,-0x48(%ebp)
412b64:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
412b6b:	c7 40 14 07 00 00 00 	movl   $0x7,0x14(%eax)
412b72:	66 89 10             	mov    %dx,(%eax)
412b75:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
412b7c:	f6 c1 02             	test   $0x2,%cl
412b7f:	74 46                	je     0x412bc7
412b81:	8b 45 90             	mov    -0x70(%ebp),%eax
412b84:	83 e1 fd             	and    $0xfffffffd,%ecx
412b87:	89 4d a0             	mov    %ecx,-0x60(%ebp)
412b8a:	83 f8 08             	cmp    $0x8,%eax
412b8d:	72 38                	jb     0x412bc7
412b8f:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
412b95:	8d 0c 45 02 00 00 00 	lea    0x2(,%eax,2),%ecx
412b9c:	8b c2                	mov    %edx,%eax
412b9e:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412ba4:	72 14                	jb     0x412bba
412ba6:	8b 50 fc             	mov    -0x4(%eax),%edx
412ba9:	83 c1 23             	add    $0x23,%ecx
412bac:	2b c2                	sub    %edx,%eax
412bae:	83 c0 fc             	add    $0xfffffffc,%eax
412bb1:	83 f8 1f             	cmp    $0x1f,%eax
412bb4:	0f 87 84 07 00 00    	ja     0x41333e
412bba:	51                   	push   %ecx
412bbb:	52                   	push   %edx
412bbc:	e8 f7 6f 00 00       	call   0x419bb8
412bc1:	8b 4d a0             	mov    -0x60(%ebp),%ecx
412bc4:	83 c4 08             	add    $0x8,%esp
412bc7:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
412bcb:	f6 c1 01             	test   $0x1,%cl
412bce:	74 46                	je     0x412c16
412bd0:	83 e1 fe             	and    $0xfffffffe,%ecx
412bd3:	89 4d a0             	mov    %ecx,-0x60(%ebp)
412bd6:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
412bdc:	83 f9 08             	cmp    $0x8,%ecx
412bdf:	72 35                	jb     0x412c16
412be1:	8b 95 5c ff ff ff    	mov    -0xa4(%ebp),%edx
412be7:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412bee:	8b c2                	mov    %edx,%eax
412bf0:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412bf6:	72 14                	jb     0x412c0c
412bf8:	8b 50 fc             	mov    -0x4(%eax),%edx
412bfb:	83 c1 23             	add    $0x23,%ecx
412bfe:	2b c2                	sub    %edx,%eax
412c00:	83 c0 fc             	add    $0xfffffffc,%eax
412c03:	83 f8 1f             	cmp    $0x1f,%eax
412c06:	0f 87 32 07 00 00    	ja     0x41333e
412c0c:	51                   	push   %ecx
412c0d:	52                   	push   %edx
412c0e:	e8 a5 6f 00 00       	call   0x419bb8
412c13:	83 c4 08             	add    $0x8,%esp
412c16:	b9 02 00 00 00       	mov    $0x2,%ecx
412c1b:	c7 85 7c ff ff ff 00 	movl   $0x0,-0x84(%ebp)
412c22:	00 00 00
412c25:	39 4d e8             	cmp    %ecx,-0x18(%ebp)
412c28:	8d 45 d8             	lea    -0x28(%ebp),%eax
412c2b:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
412c32:	0f 42 4d e8          	cmovb  -0x18(%ebp),%ecx
412c36:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
412c3a:	51                   	push   %ecx
412c3b:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
412c3f:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
412c45:	50                   	push   %eax
412c46:	c7 45 90 00 00 00 00 	movl   $0x0,-0x70(%ebp)
412c4d:	e8 ae 03 ff ff       	call   0x403000
412c52:	8b 7d a0             	mov    -0x60(%ebp),%edi
412c55:	8d b5 7c ff ff ff    	lea    -0x84(%ebp),%esi
412c5b:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
412c61:	83 cf 08             	or     $0x8,%edi
412c64:	83 7d 90 08          	cmpl   $0x8,-0x70(%ebp)
412c68:	8b 55 8c             	mov    -0x74(%ebp),%edx
412c6b:	0f 93 45 a6          	setae  -0x5a(%ebp)
412c6f:	89 45 9c             	mov    %eax,-0x64(%ebp)
412c72:	0f 43 f0             	cmovae %eax,%esi
412c75:	83 fa 02             	cmp    $0x2,%edx
412c78:	75 28                	jne    0x412ca2
412c7a:	b9 50 f4 44 00       	mov    $0x44f450,%ecx
412c7f:	85 d2                	test   %edx,%edx
412c81:	74 16                	je     0x412c99
412c83:	2b f1                	sub    %ecx,%esi
412c85:	66 8b 04 31          	mov    (%ecx,%esi,1),%ax
412c89:	66 3b 01             	cmp    (%ecx),%ax
412c8c:	75 11                	jne    0x412c9f
412c8e:	83 c1 02             	add    $0x2,%ecx
412c91:	83 ea 01             	sub    $0x1,%edx
412c94:	75 ef                	jne    0x412c85
412c96:	8b 45 9c             	mov    -0x64(%ebp),%eax
412c99:	c6 45 a7 00          	movb   $0x0,-0x59(%ebp)
412c9d:	eb 07                	jmp    0x412ca6
412c9f:	8b 45 9c             	mov    -0x64(%ebp),%eax
412ca2:	c6 45 a7 01          	movb   $0x1,-0x59(%ebp)
412ca6:	80 7d a6 00          	cmpb   $0x0,-0x5a(%ebp)
412caa:	74 35                	je     0x412ce1
412cac:	8b 4d 90             	mov    -0x70(%ebp),%ecx
412caf:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412cb6:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412cbc:	72 16                	jb     0x412cd4
412cbe:	8b 50 fc             	mov    -0x4(%eax),%edx
412cc1:	83 c1 23             	add    $0x23,%ecx
412cc4:	2b c2                	sub    %edx,%eax
412cc6:	83 c0 fc             	add    $0xfffffffc,%eax
412cc9:	83 f8 1f             	cmp    $0x1f,%eax
412ccc:	0f 87 6c 06 00 00    	ja     0x41333e
412cd2:	eb 03                	jmp    0x412cd7
412cd4:	8b 55 9c             	mov    -0x64(%ebp),%edx
412cd7:	51                   	push   %ecx
412cd8:	52                   	push   %edx
412cd9:	e8 da 6e 00 00       	call   0x419bb8
412cde:	83 c4 08             	add    $0x8,%esp
412ce1:	80 7d a7 00          	cmpb   $0x0,-0x59(%ebp)
412ce5:	0f 84 45 01 00 00    	je     0x412e30
412ceb:	8b 45 98             	mov    -0x68(%ebp),%eax
412cee:	8b 40 08             	mov    0x8(%eax),%eax
412cf1:	85 c0                	test   %eax,%eax
412cf3:	75 3d                	jne    0x412d32
412cf5:	8b 35 24 72 45 00    	mov    0x457224,%esi
412cfb:	85 f6                	test   %esi,%esi
412cfd:	74 2a                	je     0x412d29
412cff:	68 58 f4 44 00       	push   $0x44f458
412d04:	68 54 9f 44 00       	push   $0x449f54
412d09:	68 54 9f 44 00       	push   $0x449f54
412d0e:	68 7c f2 44 00       	push   $0x44f27c
412d13:	68 24 ea 44 00       	push   $0x44ea24
412d18:	6a 32                	push   $0x32
412d1a:	8b ce                	mov    %esi,%ecx
412d1c:	ff 15 5c e2 43 00    	call   *0x43e25c
412d22:	ff d6                	call   *%esi
412d24:	83 c4 18             	add    $0x18,%esp
412d27:	eb 2d                	jmp    0x412d56
412d29:	a1 28 72 45 00       	mov    0x457228,%eax
412d2e:	85 c0                	test   %eax,%eax
412d30:	74 24                	je     0x412d56
412d32:	8b 30                	mov    (%eax),%esi
412d34:	68 58 f4 44 00       	push   $0x44f458
412d39:	68 7c f2 44 00       	push   $0x44f27c
412d3e:	68 54 9f 44 00       	push   $0x449f54
412d43:	8b 76 34             	mov    0x34(%esi),%esi
412d46:	8b ce                	mov    %esi,%ecx
412d48:	6a 32                	push   $0x32
412d4a:	50                   	push   %eax
412d4b:	ff 15 5c e2 43 00    	call   *0x43e25c
412d51:	ff d6                	call   *%esi
412d53:	83 c4 14             	add    $0x14,%esp
412d56:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
412d5a:	8b 4d bc             	mov    -0x44(%ebp),%ecx
412d5d:	83 f9 08             	cmp    $0x8,%ecx
412d60:	72 32                	jb     0x412d94
412d62:	8b 55 a8             	mov    -0x58(%ebp),%edx
412d65:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412d6c:	8b c2                	mov    %edx,%eax
412d6e:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412d74:	72 14                	jb     0x412d8a
412d76:	8b 50 fc             	mov    -0x4(%eax),%edx
412d79:	83 c1 23             	add    $0x23,%ecx
412d7c:	2b c2                	sub    %edx,%eax
412d7e:	83 c0 fc             	add    $0xfffffffc,%eax
412d81:	83 f8 1f             	cmp    $0x1f,%eax
412d84:	0f 87 b4 05 00 00    	ja     0x41333e
412d8a:	51                   	push   %ecx
412d8b:	52                   	push   %edx
412d8c:	e8 27 6e 00 00       	call   0x419bb8
412d91:	83 c4 08             	add    $0x8,%esp
412d94:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
412d98:	8b 4d ec             	mov    -0x14(%ebp),%ecx
412d9b:	83 f9 08             	cmp    $0x8,%ecx
412d9e:	72 32                	jb     0x412dd2
412da0:	8b 55 d8             	mov    -0x28(%ebp),%edx
412da3:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412daa:	8b c2                	mov    %edx,%eax
412dac:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412db2:	72 14                	jb     0x412dc8
412db4:	8b 50 fc             	mov    -0x4(%eax),%edx
412db7:	83 c1 23             	add    $0x23,%ecx
412dba:	2b c2                	sub    %edx,%eax
412dbc:	83 c0 fc             	add    $0xfffffffc,%eax
412dbf:	83 f8 1f             	cmp    $0x1f,%eax
412dc2:	0f 87 76 05 00 00    	ja     0x41333e
412dc8:	51                   	push   %ecx
412dc9:	52                   	push   %edx
412dca:	e8 e9 6d 00 00       	call   0x419bb8
412dcf:	83 c4 08             	add    $0x8,%esp
412dd2:	33 c0                	xor    %eax,%eax
412dd4:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
412ddb:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
412dde:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
412de5:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
412dec:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
412df0:	83 f9 08             	cmp    $0x8,%ecx
412df3:	0f 82 10 04 00 00    	jb     0x413209
412df9:	8b 55 c0             	mov    -0x40(%ebp),%edx
412dfc:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412e03:	8b c2                	mov    %edx,%eax
412e05:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412e0b:	72 14                	jb     0x412e21
412e0d:	8b 50 fc             	mov    -0x4(%eax),%edx
412e10:	83 c1 23             	add    $0x23,%ecx
412e13:	2b c2                	sub    %edx,%eax
412e15:	83 c0 fc             	add    $0xfffffffc,%eax
412e18:	83 f8 1f             	cmp    $0x1f,%eax
412e1b:	0f 87 1d 05 00 00    	ja     0x41333e
412e21:	51                   	push   %ecx
412e22:	52                   	push   %edx
412e23:	e8 90 6d 00 00       	call   0x419bb8
412e28:	83 c4 08             	add    $0x8,%esp
412e2b:	e9 d9 03 00 00       	jmp    0x413209
412e30:	8b 45 e8             	mov    -0x18(%ebp),%eax
412e33:	c7 85 5c ff ff ff 00 	movl   $0x0,-0xa4(%ebp)
412e3a:	00 00 00
412e3d:	c7 85 6c ff ff ff 00 	movl   $0x0,-0x94(%ebp)
412e44:	00 00 00
412e47:	c7 85 70 ff ff ff 00 	movl   $0x0,-0x90(%ebp)
412e4e:	00 00 00
412e51:	83 f8 02             	cmp    $0x2,%eax
412e54:	0f 82 df 04 00 00    	jb     0x413339
412e5a:	83 c0 fe             	add    $0xfffffffe,%eax
412e5d:	83 c9 ff             	or     $0xffffffff,%ecx
412e60:	83 f8 ff             	cmp    $0xffffffff,%eax
412e63:	0f 42 c8             	cmovb  %eax,%ecx
412e66:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
412e6a:	8d 45 d8             	lea    -0x28(%ebp),%eax
412e6d:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax