404a4d:	85 f6                	test   %esi,%esi
404a4f:	74 36                	je     0x404a87
404a51:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404a55:	8b cf                	mov    %edi,%ecx
404a57:	72 02                	jb     0x404a5b
404a59:	8b 0f                	mov    (%edi),%ecx
404a5b:	52                   	push   %edx
404a5c:	51                   	push   %ecx
404a5d:	68 00 ec 44 00       	push   $0x44ec00
404a62:	68 54 9f 44 00       	push   $0x449f54
404a67:	68 54 9f 44 00       	push   $0x449f54
404a6c:	68 10 ea 44 00       	push   $0x44ea10
404a71:	68 24 ea 44 00       	push   $0x44ea24
404a76:	6a 14                	push   $0x14
404a78:	8b ce                	mov    %esi,%ecx
404a7a:	ff 15 5c e2 43 00    	call   *0x43e25c
404a80:	ff d6                	call   *%esi
404a82:	83 c4 20             	add    $0x20,%esp
404a85:	eb 39                	jmp    0x404ac0
404a87:	a1 28 72 45 00       	mov    0x457228,%eax
404a8c:	85 c0                	test   %eax,%eax
404a8e:	74 30                	je     0x404ac0
404a90:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404a94:	8b cf                	mov    %edi,%ecx
404a96:	72 02                	jb     0x404a9a
404a98:	8b 0f                	mov    (%edi),%ecx
404a9a:	8b 30                	mov    (%eax),%esi
404a9c:	52                   	push   %edx
404a9d:	51                   	push   %ecx
404a9e:	68 00 ec 44 00       	push   $0x44ec00
404aa3:	8b 76 34             	mov    0x34(%esi),%esi
404aa6:	8b ce                	mov    %esi,%ecx
404aa8:	68 10 ea 44 00       	push   $0x44ea10
404aad:	68 54 9f 44 00       	push   $0x449f54
404ab2:	6a 14                	push   $0x14
404ab4:	50                   	push   %eax
404ab5:	ff 15 5c e2 43 00    	call   *0x43e25c
404abb:	ff d6                	call   *%esi
404abd:	83 c4 1c             	add    $0x1c,%esp
404ac0:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404ac4:	8b c7                	mov    %edi,%eax
404ac6:	72 02                	jb     0x404aca
404ac8:	8b 07                	mov    (%edi),%eax
404aca:	68 80 00 00 00       	push   $0x80
404acf:	50                   	push   %eax
404ad0:	ff 15 c0 e0 43 00    	call   *0x43e0c0
404ad6:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404ada:	8b c7                	mov    %edi,%eax
404adc:	72 02                	jb     0x404ae0
404ade:	8b 07                	mov    (%edi),%eax
404ae0:	50                   	push   %eax
404ae1:	ff 15 c4 e0 43 00    	call   *0x43e0c4
404ae7:	83 f8 01             	cmp    $0x1,%eax
404aea:	0f 94 c3             	sete   %bl
404aed:	84 db                	test   %bl,%bl
404aef:	0f 85 90 00 00 00    	jne    0x404b85
404af5:	83 3d 24 72 45 00 00 	cmpl   $0x0,0x457224
404afc:	74 44                	je     0x404b42
404afe:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404b02:	72 02                	jb     0x404b06
404b04:	8b 3f                	mov    (%edi),%edi
404b06:	ff 15 6c e0 43 00    	call   *0x43e06c
404b0c:	8b 35 24 72 45 00    	mov    0x457224,%esi
404b12:	8b ce                	mov    %esi,%ecx
404b14:	50                   	push   %eax
404b15:	57                   	push   %edi
404b16:	68 d0 ec 44 00       	push   $0x44ecd0
404b1b:	68 54 9f 44 00       	push   $0x449f54
404b20:	68 54 9f 44 00       	push   $0x449f54
404b25:	68 10 ea 44 00       	push   $0x44ea10
404b2a:	68 24 ea 44 00       	push   $0x44ea24
404b2f:	6a 32                	push   $0x32
404b31:	ff 15 5c e2 43 00    	call   *0x43e25c
404b37:	ff d6                	call   *%esi
404b39:	83 c4 20             	add    $0x20,%esp
404b3c:	8a c3                	mov    %bl,%al
404b3e:	5e                   	pop    %esi
404b3f:	5b                   	pop    %ebx
404b40:	5f                   	pop    %edi
404b41:	c3                   	ret
404b42:	8b 35 28 72 45 00    	mov    0x457228,%esi
404b48:	85 f6                	test   %esi,%esi
404b4a:	74 39                	je     0x404b85
404b4c:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404b50:	72 02                	jb     0x404b54
404b52:	8b 3f                	mov    (%edi),%edi
404b54:	8b 36                	mov    (%esi),%esi
404b56:	ff 15 6c e0 43 00    	call   *0x43e06c
404b5c:	8b 76 34             	mov    0x34(%esi),%esi
404b5f:	8b ce                	mov    %esi,%ecx
404b61:	50                   	push   %eax
404b62:	57                   	push   %edi
404b63:	68 d0 ec 44 00       	push   $0x44ecd0
404b68:	68 10 ea 44 00       	push   $0x44ea10
404b6d:	68 54 9f 44 00       	push   $0x449f54
404b72:	6a 32                	push   $0x32
404b74:	ff 35 28 72 45 00    	push   0x457228
404b7a:	ff 15 5c e2 43 00    	call   *0x43e25c
404b80:	ff d6                	call   *%esi
404b82:	83 c4 1c             	add    $0x1c,%esp
404b85:	5e                   	pop    %esi
404b86:	8a c3                	mov    %bl,%al
404b88:	5b                   	pop    %ebx
404b89:	5f                   	pop    %edi
404b8a:	c3                   	ret
404b8b:	b0 01                	mov    $0x1,%al
404b8d:	5f                   	pop    %edi
404b8e:	c3                   	ret
404b8f:	cc                   	int3
404b90:	57                   	push   %edi
404b91:	8b f9                	mov    %ecx,%edi
404b93:	8b 0f                	mov    (%edi),%ecx
404b95:	85 c9                	test   %ecx,%ecx
404b97:	74 64                	je     0x404bfd
404b99:	8b 57 04             	mov    0x4(%edi),%edx
404b9c:	56                   	push   %esi
404b9d:	51                   	push   %ecx
404b9e:	e8 6d 04 00 00       	call   0x405010
404ba3:	8b 4f 08             	mov    0x8(%edi),%ecx
404ba6:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
404bab:	8b 37                	mov    (%edi),%esi
404bad:	83 c4 04             	add    $0x4,%esp
404bb0:	2b ce                	sub    %esi,%ecx
404bb2:	f7 e9                	imul   %ecx
404bb4:	c1 fa 02             	sar    $0x2,%edx
404bb7:	8b c2                	mov    %edx,%eax
404bb9:	c1 e8 1f             	shr    $0x1f,%eax
404bbc:	03 c2                	add    %edx,%eax
404bbe:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
404bc1:	c1 e1 03             	shl    $0x3,%ecx
404bc4:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404bca:	72 12                	jb     0x404bde
404bcc:	8b 56 fc             	mov    -0x4(%esi),%edx
404bcf:	83 c1 23             	add    $0x23,%ecx
404bd2:	2b f2                	sub    %edx,%esi
404bd4:	8d 46 fc             	lea    -0x4(%esi),%eax
404bd7:	83 f8 1f             	cmp    $0x1f,%eax
404bda:	77 23                	ja     0x404bff
404bdc:	8b f2                	mov    %edx,%esi
404bde:	51                   	push   %ecx
404bdf:	56                   	push   %esi
404be0:	e8 d3 4f 01 00       	call   0x419bb8
404be5:	83 c4 08             	add    $0x8,%esp
404be8:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
404bee:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
404bf5:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
404bfc:	5e                   	pop    %esi
404bfd:	5f                   	pop    %edi
404bfe:	c3                   	ret
404bff:	e8 8f ad 01 00       	call   0x41f993
404c04:	cc                   	int3
404c05:	cc                   	int3
404c06:	cc                   	int3
404c07:	cc                   	int3
404c08:	cc                   	int3
404c09:	cc                   	int3
404c0a:	cc                   	int3
404c0b:	cc                   	int3
404c0c:	cc                   	int3
404c0d:	cc                   	int3
404c0e:	cc                   	int3
404c0f:	cc                   	int3
404c10:	55                   	push   %ebp
404c11:	8b ec                	mov    %esp,%ebp
404c13:	56                   	push   %esi
404c14:	57                   	push   %edi
404c15:	8b 7d 08             	mov    0x8(%ebp),%edi
404c18:	8b f1                	mov    %ecx,%esi
404c1a:	3b f7                	cmp    %edi,%esi
404c1c:	74 65                	je     0x404c83
404c1e:	8b 4e 14             	mov    0x14(%esi),%ecx
404c21:	83 f9 08             	cmp    $0x8,%ecx
404c24:	72 2d                	jb     0x404c53
404c26:	8b 06                	mov    (%esi),%eax
404c28:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
404c2f:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404c35:	72 12                	jb     0x404c49
404c37:	8b 50 fc             	mov    -0x4(%eax),%edx
404c3a:	83 c1 23             	add    $0x23,%ecx
404c3d:	2b c2                	sub    %edx,%eax
404c3f:	83 c0 fc             	add    $0xfffffffc,%eax
404c42:	83 f8 1f             	cmp    $0x1f,%eax
404c45:	77 44                	ja     0x404c8b
404c47:	8b c2                	mov    %edx,%eax
404c49:	51                   	push   %ecx
404c4a:	50                   	push   %eax
404c4b:	e8 68 4f 01 00       	call   0x419bb8
404c50:	83 c4 08             	add    $0x8,%esp
404c53:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
404c5a:	33 c0                	xor    %eax,%eax
404c5c:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
404c63:	66 89 06             	mov    %ax,(%esi)
404c66:	0f 10 07             	movups (%edi),%xmm0
404c69:	0f 11 06             	movups %xmm0,(%esi)
404c6c:	f3 0f 7e 47 10       	movq   0x10(%edi),%xmm0
404c71:	66 0f d6 46 10       	movq   %xmm0,0x10(%esi)
404c76:	89 47 10             	mov    %eax,0x10(%edi)
404c79:	c7 47 14 07 00 00 00 	movl   $0x7,0x14(%edi)
404c80:	66 89 07             	mov    %ax,(%edi)
404c83:	5f                   	pop    %edi
404c84:	8b c6                	mov    %esi,%eax
404c86:	5e                   	pop    %esi
404c87:	5d                   	pop    %ebp
404c88:	c2 04 00             	ret    $0x4
404c8b:	e8 03 ad 01 00       	call   0x41f993
404c90:	cc                   	int3
404c91:	cc                   	int3
404c92:	cc                   	int3
404c93:	cc                   	int3
404c94:	cc                   	int3
404c95:	cc                   	int3
404c96:	cc                   	int3
404c97:	cc                   	int3
404c98:	cc                   	int3
404c99:	cc                   	int3
404c9a:	cc                   	int3
404c9b:	cc                   	int3
404c9c:	cc                   	int3
404c9d:	cc                   	int3
404c9e:	cc                   	int3
404c9f:	cc                   	int3
404ca0:	56                   	push   %esi
404ca1:	8b f1                	mov    %ecx,%esi
404ca3:	8b 4e 14             	mov    0x14(%esi),%ecx
404ca6:	83 f9 10             	cmp    $0x10,%ecx
404ca9:	72 27                	jb     0x404cd2
404cab:	8b 06                	mov    (%esi),%eax
404cad:	41                   	inc    %ecx
404cae:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404cb4:	72 12                	jb     0x404cc8
404cb6:	8b 50 fc             	mov    -0x4(%eax),%edx
404cb9:	83 c1 23             	add    $0x23,%ecx
404cbc:	2b c2                	sub    %edx,%eax
404cbe:	83 c0 fc             	add    $0xfffffffc,%eax
404cc1:	83 f8 1f             	cmp    $0x1f,%eax
404cc4:	77 1f                	ja     0x404ce5
404cc6:	8b c2                	mov    %edx,%eax
404cc8:	51                   	push   %ecx
404cc9:	50                   	push   %eax
404cca:	e8 e9 4e 01 00       	call   0x419bb8
404ccf:	83 c4 08             	add    $0x8,%esp
404cd2:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
404cd9:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
404ce0:	c6 06 00             	movb   $0x0,(%esi)
404ce3:	5e                   	pop    %esi
404ce4:	c3                   	ret
404ce5:	e8 a9 ac 01 00       	call   0x41f993
404cea:	cc                   	int3
404ceb:	cc                   	int3
404cec:	cc                   	int3
404ced:	cc                   	int3
404cee:	cc                   	int3
404cef:	cc                   	int3
404cf0:	55                   	push   %ebp
404cf1:	8b ec                	mov    %esp,%ebp
404cf3:	83 ec 18             	sub    $0x18,%esp
404cf6:	8b 45 08             	mov    0x8(%ebp),%eax
404cf9:	8b 55 10             	mov    0x10(%ebp),%edx
404cfc:	53                   	push   %ebx
404cfd:	8b d9                	mov    %ecx,%ebx
404cff:	89 45 fc             	mov    %eax,-0x4(%ebp)
404d02:	8b 4d 14             	mov    0x14(%ebp),%ecx
404d05:	56                   	push   %esi
404d06:	8b 75 0c             	mov    0xc(%ebp),%esi
404d09:	57                   	push   %edi
404d0a:	8b 7b 10             	mov    0x10(%ebx),%edi
404d0d:	89 55 f0             	mov    %edx,-0x10(%ebp)
404d10:	89 4d ec             	mov    %ecx,-0x14(%ebp)
404d13:	3b f8                	cmp    %eax,%edi
404d15:	0f 82 65 01 00 00    	jb     0x404e80
404d1b:	8b c7                	mov    %edi,%eax
404d1d:	2b 45 fc             	sub    -0x4(%ebp),%eax
404d20:	3b c6                	cmp    %esi,%eax
404d22:	0f 42 f0             	cmovb  %eax,%esi
404d25:	89 75 f4             	mov    %esi,-0xc(%ebp)
404d28:	3b f1                	cmp    %ecx,%esi
404d2a:	75 28                	jne    0x404d54
404d2c:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
404d30:	8b f3                	mov    %ebx,%esi
404d32:	72 02                	jb     0x404d36
404d34:	8b 33                	mov    (%ebx),%esi
404d36:	8b 45 fc             	mov    -0x4(%ebp),%eax
404d39:	03 c9                	add    %ecx,%ecx
404d3b:	51                   	push   %ecx
404d3c:	52                   	push   %edx
404d3d:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
404d40:	51                   	push   %ecx
404d41:	e8 3a 69 01 00       	call   0x41b680
404d46:	83 c4 0c             	add    $0xc,%esp
404d49:	8b c3                	mov    %ebx,%eax
404d4b:	5f                   	pop    %edi
404d4c:	5e                   	pop    %esi
404d4d:	5b                   	pop    %ebx
404d4e:	8b e5                	mov    %ebp,%esp
404d50:	5d                   	pop    %ebp
404d51:	c2 10 00             	ret    $0x10
404d54:	8b c7                	mov    %edi,%eax
404d56:	2b c6                	sub    %esi,%eax
404d58:	2b 45 fc             	sub    -0x4(%ebp),%eax
404d5b:	89 45 e8             	mov    %eax,-0x18(%ebp)
404d5e:	8b c1                	mov    %ecx,%eax
404d60:	2b c6                	sub    %esi,%eax
404d62:	89 45 f8             	mov    %eax,-0x8(%ebp)
404d65:	3b ce                	cmp    %esi,%ecx
404d67:	73 49                	jae    0x404db2
404d69:	03 c7                	add    %edi,%eax
404d6b:	8b f3                	mov    %ebx,%esi
404d6d:	89 43 10             	mov    %eax,0x10(%ebx)
404d70:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
404d74:	72 02                	jb     0x404d78
404d76:	8b 33                	mov    (%ebx),%esi
404d78:	8b 45 fc             	mov    -0x4(%ebp),%eax
404d7b:	8d 3c 46             	lea    (%esi,%eax,2),%edi
404d7e:	8d 34 09             	lea    (%ecx,%ecx,1),%esi
404d81:	56                   	push   %esi
404d82:	52                   	push   %edx
404d83:	57                   	push   %edi
404d84:	e8 f7 68 01 00       	call   0x41b680
404d89:	8b 45 e8             	mov    -0x18(%ebp),%eax
404d8c:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
404d93:	50                   	push   %eax
404d94:	8b 45 f4             	mov    -0xc(%ebp),%eax
404d97:	8d 04 47             	lea    (%edi,%eax,2),%eax
404d9a:	50                   	push   %eax
404d9b:	8d 04 3e             	lea    (%esi,%edi,1),%eax
404d9e:	50                   	push   %eax
404d9f:	e8 dc 68 01 00       	call   0x41b680
404da4:	83 c4 18             	add    $0x18,%esp
404da7:	8b c3                	mov    %ebx,%eax
404da9:	5f                   	pop    %edi
404daa:	5e                   	pop    %esi
404dab:	5b                   	pop    %ebx
404dac:	8b e5                	mov    %ebp,%esp
404dae:	5d                   	pop    %ebp
404daf:	c2 10 00             	ret    $0x10
404db2:	8b 43 14             	mov    0x14(%ebx),%eax
404db5:	2b c7                	sub    %edi,%eax
404db7:	39 45 f8             	cmp    %eax,-0x8(%ebp)
404dba:	0f 87 a0 00 00 00    	ja     0x404e60
404dc0:	8b 45 f8             	mov    -0x8(%ebp),%eax
404dc3:	03 c7                	add    %edi,%eax
404dc5:	89 5d f4             	mov    %ebx,-0xc(%ebp)
404dc8:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
404dcc:	89 43 10             	mov    %eax,0x10(%ebx)
404dcf:	72 05                	jb     0x404dd6
404dd1:	8b 03                	mov    (%ebx),%eax
404dd3:	89 45 f4             	mov    %eax,-0xc(%ebp)
404dd6:	8b 45 fc             	mov    -0x4(%ebp),%eax
404dd9:	8b 55 f4             	mov    -0xc(%ebp),%edx
404ddc:	8d 04 42             	lea    (%edx,%eax,2),%eax