404b1f:	53                   	push   %ebx
404b20:	56                   	push   %esi
404b21:	57                   	push   %edi
404b22:	6a 10                	push   $0x10
404b24:	8b f0                	mov    %eax,%esi
404b26:	8b 82 f8 00 00 00    	mov    0xf8(%edx),%eax
404b2c:	59                   	pop    %ecx
404b2d:	8d 7d 80             	lea    -0x80(%ebp),%edi
404b30:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
404b32:	8b b2 f4 00 00 00    	mov    0xf4(%edx),%esi
404b38:	6a 08                	push   $0x8
404b3a:	59                   	pop    %ecx
404b3b:	8d 7d c0             	lea    -0x40(%ebp),%edi
404b3e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
404b40:	8b 08                	mov    (%eax),%ecx
404b42:	8b 70 04             	mov    0x4(%eax),%esi
404b45:	8b 82 fc 00 00 00    	mov    0xfc(%edx),%eax
404b4b:	8b 10                	mov    (%eax),%edx
404b4d:	8b 40 04             	mov    0x4(%eax),%eax
404b50:	35 19 cd e0 5b       	xor    $0x5be0cd19,%eax
404b55:	81 f2 ab d9 83 1f    	xor    $0x1f83d9ab,%edx
404b5b:	81 f1 7f 52 0e 51    	xor    $0x510e527f,%ecx
404b61:	81 f6 8c 68 05 9b    	xor    $0x9b05688c,%esi
404b67:	89 45 fc             	mov    %eax,-0x4(%ebp)
404b6a:	c7 45 e0 67 e6 09 6a 	movl   $0x6a09e667,-0x20(%ebp)
404b71:	c7 45 e4 85 ae 67 bb 	movl   $0xbb67ae85,-0x1c(%ebp)
404b78:	c7 45 e8 72 f3 6e 3c 	movl   $0x3c6ef372,-0x18(%ebp)
404b7f:	c7 45 ec 3a f5 4f a5 	movl   $0xa54ff53a,-0x14(%ebp)
404b86:	89 55 f8             	mov    %edx,-0x8(%ebp)
404b89:	33 c0                	xor    %eax,%eax
404b8b:	eb 03                	jmp    0x404b90
404b8d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
404b90:	0f b6 90 98 a4 42 00 	movzbl 0x42a498(%eax),%edx
404b97:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404b9b:	03 55 d0             	add    -0x30(%ebp),%edx
404b9e:	8b 5d c0             	mov    -0x40(%ebp),%ebx
404ba1:	03 da                	add    %edx,%ebx
404ba3:	0f b6 b8 99 a4 42 00 	movzbl 0x42a499(%eax),%edi
404baa:	8b 7c bd 80          	mov    -0x80(%ebp,%edi,4),%edi
404bae:	8b d3                	mov    %ebx,%edx
404bb0:	33 d1                	xor    %ecx,%edx
404bb2:	c1 ca 10             	ror    $0x10,%edx
404bb5:	01 55 e0             	add    %edx,-0x20(%ebp)
404bb8:	8b 4d d0             	mov    -0x30(%ebp),%ecx
404bbb:	33 4d e0             	xor    -0x20(%ebp),%ecx
404bbe:	c1 c9 0c             	ror    $0xc,%ecx
404bc1:	03 f9                	add    %ecx,%edi
404bc3:	03 df                	add    %edi,%ebx
404bc5:	89 5d c0             	mov    %ebx,-0x40(%ebp)
404bc8:	33 da                	xor    %edx,%ebx
404bca:	0f b6 90 9a a4 42 00 	movzbl 0x42a49a(%eax),%edx
404bd1:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404bd5:	03 55 d4             	add    -0x2c(%ebp),%edx
404bd8:	c1 cb 08             	ror    $0x8,%ebx
404bdb:	01 55 c4             	add    %edx,-0x3c(%ebp)
404bde:	01 5d e0             	add    %ebx,-0x20(%ebp)
404be1:	33 4d e0             	xor    -0x20(%ebp),%ecx
404be4:	8b 55 c4             	mov    -0x3c(%ebp),%edx
404be7:	33 d6                	xor    %esi,%edx
404be9:	0f b6 b0 9b a4 42 00 	movzbl 0x42a49b(%eax),%esi
404bf0:	8b 74 b5 80          	mov    -0x80(%ebp,%esi,4),%esi
404bf4:	c1 c9 07             	ror    $0x7,%ecx
404bf7:	c1 ca 10             	ror    $0x10,%edx
404bfa:	01 55 e4             	add    %edx,-0x1c(%ebp)
404bfd:	89 55 f4             	mov    %edx,-0xc(%ebp)
404c00:	8b 55 d4             	mov    -0x2c(%ebp),%edx
404c03:	33 55 e4             	xor    -0x1c(%ebp),%edx
404c06:	8b 7d dc             	mov    -0x24(%ebp),%edi
404c09:	c1 ca 0c             	ror    $0xc,%edx
404c0c:	03 f2                	add    %edx,%esi
404c0e:	01 75 c4             	add    %esi,-0x3c(%ebp)
404c11:	8b 75 c4             	mov    -0x3c(%ebp),%esi
404c14:	33 75 f4             	xor    -0xc(%ebp),%esi
404c17:	c1 ce 08             	ror    $0x8,%esi
404c1a:	01 75 e4             	add    %esi,-0x1c(%ebp)
404c1d:	33 55 e4             	xor    -0x1c(%ebp),%edx
404c20:	89 75 f4             	mov    %esi,-0xc(%ebp)
404c23:	8b 75 d8             	mov    -0x28(%ebp),%esi
404c26:	c1 ca 07             	ror    $0x7,%edx
404c29:	89 55 d4             	mov    %edx,-0x2c(%ebp)
404c2c:	0f b6 90 9c a4 42 00 	movzbl 0x42a49c(%eax),%edx
404c33:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404c37:	03 d6                	add    %esi,%edx
404c39:	01 55 c8             	add    %edx,-0x38(%ebp)
404c3c:	8b 55 c8             	mov    -0x38(%ebp),%edx
404c3f:	33 55 f8             	xor    -0x8(%ebp),%edx
404c42:	c1 ca 10             	ror    $0x10,%edx
404c45:	01 55 e8             	add    %edx,-0x18(%ebp)
404c48:	33 75 e8             	xor    -0x18(%ebp),%esi
404c4b:	89 55 f8             	mov    %edx,-0x8(%ebp)
404c4e:	0f b6 90 9d a4 42 00 	movzbl 0x42a49d(%eax),%edx
404c55:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404c59:	c1 ce 0c             	ror    $0xc,%esi
404c5c:	03 d6                	add    %esi,%edx
404c5e:	01 55 c8             	add    %edx,-0x38(%ebp)
404c61:	8b 55 c8             	mov    -0x38(%ebp),%edx
404c64:	33 55 f8             	xor    -0x8(%ebp),%edx
404c67:	c1 ca 08             	ror    $0x8,%edx
404c6a:	01 55 e8             	add    %edx,-0x18(%ebp)
404c6d:	33 75 e8             	xor    -0x18(%ebp),%esi
404c70:	89 55 f8             	mov    %edx,-0x8(%ebp)
404c73:	0f b6 90 9e a4 42 00 	movzbl 0x42a49e(%eax),%edx
404c7a:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404c7e:	03 d7                	add    %edi,%edx
404c80:	01 55 cc             	add    %edx,-0x34(%ebp)
404c83:	8b 55 cc             	mov    -0x34(%ebp),%edx
404c86:	33 55 fc             	xor    -0x4(%ebp),%edx
404c89:	c1 ce 07             	ror    $0x7,%esi
404c8c:	c1 ca 10             	ror    $0x10,%edx
404c8f:	01 55 ec             	add    %edx,-0x14(%ebp)
404c92:	33 7d ec             	xor    -0x14(%ebp),%edi
404c95:	89 75 d8             	mov    %esi,-0x28(%ebp)
404c98:	89 55 fc             	mov    %edx,-0x4(%ebp)
404c9b:	0f b6 90 9f a4 42 00 	movzbl 0x42a49f(%eax),%edx
404ca2:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404ca6:	c1 cf 0c             	ror    $0xc,%edi
404ca9:	03 d7                	add    %edi,%edx
404cab:	01 55 cc             	add    %edx,-0x34(%ebp)
404cae:	8b 55 cc             	mov    -0x34(%ebp),%edx
404cb1:	33 55 fc             	xor    -0x4(%ebp),%edx
404cb4:	c1 ca 08             	ror    $0x8,%edx
404cb7:	01 55 ec             	add    %edx,-0x14(%ebp)
404cba:	33 7d ec             	xor    -0x14(%ebp),%edi
404cbd:	89 55 fc             	mov    %edx,-0x4(%ebp)
404cc0:	0f b6 90 a0 a4 42 00 	movzbl 0x42a4a0(%eax),%edx
404cc7:	8b 74 95 80          	mov    -0x80(%ebp,%edx,4),%esi
404ccb:	8b 55 d4             	mov    -0x2c(%ebp),%edx
404cce:	03 f2                	add    %edx,%esi
404cd0:	01 75 c0             	add    %esi,-0x40(%ebp)
404cd3:	8b 75 c0             	mov    -0x40(%ebp),%esi
404cd6:	33 75 fc             	xor    -0x4(%ebp),%esi
404cd9:	c1 cf 07             	ror    $0x7,%edi
404cdc:	c1 ce 10             	ror    $0x10,%esi
404cdf:	01 75 e8             	add    %esi,-0x18(%ebp)
404ce2:	33 55 e8             	xor    -0x18(%ebp),%edx
404ce5:	89 7d dc             	mov    %edi,-0x24(%ebp)
404ce8:	0f b6 b8 a1 a4 42 00 	movzbl 0x42a4a1(%eax),%edi
404cef:	8b 7c bd 80          	mov    -0x80(%ebp,%edi,4),%edi
404cf3:	c1 ca 0c             	ror    $0xc,%edx
404cf6:	03 fa                	add    %edx,%edi
404cf8:	01 7d c0             	add    %edi,-0x40(%ebp)
404cfb:	89 55 d4             	mov    %edx,-0x2c(%ebp)
404cfe:	8b 55 c0             	mov    -0x40(%ebp),%edx
404d01:	33 d6                	xor    %esi,%edx
404d03:	c1 ca 08             	ror    $0x8,%edx
404d06:	01 55 e8             	add    %edx,-0x18(%ebp)
404d09:	89 55 fc             	mov    %edx,-0x4(%ebp)
404d0c:	8b 55 d4             	mov    -0x2c(%ebp),%edx
404d0f:	33 55 e8             	xor    -0x18(%ebp),%edx
404d12:	0f b6 b8 a3 a4 42 00 	movzbl 0x42a4a3(%eax),%edi
404d19:	8b 7c bd 80          	mov    -0x80(%ebp,%edi,4),%edi
404d1d:	c1 ca 07             	ror    $0x7,%edx
404d20:	89 55 d4             	mov    %edx,-0x2c(%ebp)
404d23:	0f b6 90 a2 a4 42 00 	movzbl 0x42a4a2(%eax),%edx
404d2a:	8b 74 95 80          	mov    -0x80(%ebp,%edx,4),%esi
404d2e:	8b 55 d8             	mov    -0x28(%ebp),%edx
404d31:	03 f2                	add    %edx,%esi
404d33:	01 75 c4             	add    %esi,-0x3c(%ebp)
404d36:	8b 75 c4             	mov    -0x3c(%ebp),%esi
404d39:	33 f3                	xor    %ebx,%esi
404d3b:	c1 ce 10             	ror    $0x10,%esi
404d3e:	01 75 ec             	add    %esi,-0x14(%ebp)
404d41:	33 55 ec             	xor    -0x14(%ebp),%edx
404d44:	c1 ca 0c             	ror    $0xc,%edx
404d47:	03 fa                	add    %edx,%edi
404d49:	01 7d c4             	add    %edi,-0x3c(%ebp)
404d4c:	8b 7d c4             	mov    -0x3c(%ebp),%edi
404d4f:	33 fe                	xor    %esi,%edi
404d51:	c1 cf 08             	ror    $0x8,%edi
404d54:	8b f7                	mov    %edi,%esi
404d56:	01 75 ec             	add    %esi,-0x14(%ebp)
404d59:	33 55 ec             	xor    -0x14(%ebp),%edx
404d5c:	0f b6 b8 a5 a4 42 00 	movzbl 0x42a4a5(%eax),%edi
404d63:	8b 7c bd 80          	mov    -0x80(%ebp,%edi,4),%edi
404d67:	c1 ca 07             	ror    $0x7,%edx
404d6a:	89 55 d8             	mov    %edx,-0x28(%ebp)
404d6d:	0f b6 90 a4 a4 42 00 	movzbl 0x42a4a4(%eax),%edx
404d74:	89 75 f0             	mov    %esi,-0x10(%ebp)
404d77:	8b 74 95 80          	mov    -0x80(%ebp,%edx,4),%esi
404d7b:	8b 55 dc             	mov    -0x24(%ebp),%edx
404d7e:	03 f2                	add    %edx,%esi
404d80:	01 75 c8             	add    %esi,-0x38(%ebp)
404d83:	8b 75 c8             	mov    -0x38(%ebp),%esi
404d86:	33 75 f4             	xor    -0xc(%ebp),%esi
404d89:	c1 ce 10             	ror    $0x10,%esi
404d8c:	01 75 e0             	add    %esi,-0x20(%ebp)
404d8f:	33 55 e0             	xor    -0x20(%ebp),%edx
404d92:	c1 ca 0c             	ror    $0xc,%edx
404d95:	03 fa                	add    %edx,%edi
404d97:	01 7d c8             	add    %edi,-0x38(%ebp)
404d9a:	8b 7d c8             	mov    -0x38(%ebp),%edi
404d9d:	33 fe                	xor    %esi,%edi
404d9f:	c1 cf 08             	ror    $0x8,%edi
404da2:	8b f7                	mov    %edi,%esi
404da4:	01 75 e0             	add    %esi,-0x20(%ebp)
404da7:	33 55 e0             	xor    -0x20(%ebp),%edx
404daa:	0f b6 b8 a7 a4 42 00 	movzbl 0x42a4a7(%eax),%edi
404db1:	8b 7c bd 80          	mov    -0x80(%ebp,%edi,4),%edi
404db5:	c1 ca 07             	ror    $0x7,%edx
404db8:	89 55 dc             	mov    %edx,-0x24(%ebp)
404dbb:	0f b6 90 a6 a4 42 00 	movzbl 0x42a4a6(%eax),%edx
404dc2:	8b 54 95 80          	mov    -0x80(%ebp,%edx,4),%edx
404dc6:	03 d1                	add    %ecx,%edx
404dc8:	01 55 cc             	add    %edx,-0x34(%ebp)
404dcb:	8b 55 cc             	mov    -0x34(%ebp),%edx
404dce:	33 55 f8             	xor    -0x8(%ebp),%edx
404dd1:	83 c0 10             	add    $0x10,%eax
404dd4:	c1 ca 10             	ror    $0x10,%edx
404dd7:	01 55 e4             	add    %edx,-0x1c(%ebp)
404dda:	33 4d e4             	xor    -0x1c(%ebp),%ecx
404ddd:	89 75 f4             	mov    %esi,-0xc(%ebp)
404de0:	c1 c9 0c             	ror    $0xc,%ecx
404de3:	03 f9                	add    %ecx,%edi
404de5:	01 7d cc             	add    %edi,-0x34(%ebp)
404de8:	8b 7d cc             	mov    -0x34(%ebp),%edi
404deb:	33 fa                	xor    %edx,%edi
404ded:	c1 cf 08             	ror    $0x8,%edi
404df0:	8b d7                	mov    %edi,%edx
404df2:	01 55 e4             	add    %edx,-0x1c(%ebp)
404df5:	33 4d e4             	xor    -0x1c(%ebp),%ecx
404df8:	89 55 f8             	mov    %edx,-0x8(%ebp)
404dfb:	c1 c9 07             	ror    $0x7,%ecx
404dfe:	89 4d d0             	mov    %ecx,-0x30(%ebp)
404e01:	3d 90 00 00 00       	cmp    $0x90,%eax
404e06:	0f 86 81 fd ff ff    	jbe    0x404b8d
404e0c:	5f                   	pop    %edi
404e0d:	5e                   	pop    %esi
404e0e:	33 c9                	xor    %ecx,%ecx
404e10:	5b                   	pop    %ebx
404e11:	8b 45 08             	mov    0x8(%ebp),%eax
404e14:	8b 80 f4 00 00 00    	mov    0xf4(%eax),%eax
404e1a:	8b 54 0d e0          	mov    -0x20(%ebp,%ecx,1),%edx
404e1e:	03 c1                	add    %ecx,%eax
404e20:	33 10                	xor    (%eax),%edx
404e22:	83 c1 04             	add    $0x4,%ecx
404e25:	33 54 0d bc          	xor    -0x44(%ebp,%ecx,1),%edx
404e29:	89 10                	mov    %edx,(%eax)
404e2b:	83 f9 20             	cmp    $0x20,%ecx
404e2e:	72 e1                	jb     0x404e11
404e30:	c9                   	leave
404e31:	c2 04 00             	ret    $0x4
404e34:	55                   	push   %ebp
404e35:	8b ec                	mov    %esp,%ebp
404e37:	53                   	push   %ebx
404e38:	8b 5d 0c             	mov    0xc(%ebp),%ebx
404e3b:	85 db                	test   %ebx,%ebx
404e3d:	0f 86 ab 00 00 00    	jbe    0x404eee
404e43:	57                   	push   %edi
404e44:	8b 86 00 01 00 00    	mov    0x100(%esi),%eax
404e4a:	8b 8e f0 00 00 00    	mov    0xf0(%esi),%ecx
404e50:	bf 80 00 00 00       	mov    $0x80,%edi
404e55:	2b f8                	sub    %eax,%edi
404e57:	03 c8                	add    %eax,%ecx
404e59:	3b df                	cmp    %edi,%ebx
404e5b:	76 70                	jbe    0x404ecd
404e5d:	57                   	push   %edi
404e5e:	ff 75 08             	push   0x8(%ebp)
404e61:	51                   	push   %ecx
404e62:	e8 09 6e 01 00       	call   0x41bc70
404e67:	01 be 00 01 00 00    	add    %edi,0x100(%esi)
404e6d:	8d 86 f8 00 00 00    	lea    0xf8(%esi),%eax
404e73:	8b 08                	mov    (%eax),%ecx
404e75:	83 01 40             	addl   $0x40,(%ecx)
404e78:	8b 00                	mov    (%eax),%eax
404e7a:	83 c4 0c             	add    $0xc,%esp
404e7d:	83 38 40             	cmpl   $0x40,(%eax)
404e80:	1b c9                	sbb    %ecx,%ecx
404e82:	f7 d9                	neg    %ecx
404e84:	01 48 04             	add    %ecx,0x4(%eax)
404e87:	83 3d 40 ea 44 00 02 	cmpl   $0x2,0x44ea40
404e8e:	7c 0e                	jl     0x404e9e
404e90:	ff b6 f0 00 00 00    	push   0xf0(%esi)
404e96:	56                   	push   %esi
404e97:	e8 70 e8 ff ff       	call   0x40370c
404e9c:	eb 0c                	jmp    0x404eaa
404e9e:	8b 86 f0 00 00 00    	mov    0xf0(%esi),%eax
404ea4:	56                   	push   %esi
404ea5:	e8 69 fc ff ff       	call   0x404b13
404eaa:	8b 86 f0 00 00 00    	mov    0xf0(%esi),%eax
404eb0:	6a 40                	push   $0x40
404eb2:	8d 48 40             	lea    0x40(%eax),%ecx
404eb5:	51                   	push   %ecx
404eb6:	50                   	push   %eax
404eb7:	e8 b4 6d 01 00       	call   0x41bc70
404ebc:	83 86 00 01 00 00 c0 	addl   $0xffffffc0,0x100(%esi)
404ec3:	01 7d 08             	add    %edi,0x8(%ebp)
404ec6:	83 c4 0c             	add    $0xc,%esp
404ec9:	2b df                	sub    %edi,%ebx
404ecb:	eb 18                	jmp    0x404ee5
404ecd:	53                   	push   %ebx
404ece:	ff 75 08             	push   0x8(%ebp)
404ed1:	51                   	push   %ecx
404ed2:	e8 99 6d 01 00       	call   0x41bc70
404ed7:	01 9e 00 01 00 00    	add    %ebx,0x100(%esi)
404edd:	01 5d 08             	add    %ebx,0x8(%ebp)
404ee0:	83 c4 0c             	add    $0xc,%esp
404ee3:	33 db                	xor    %ebx,%ebx
404ee5:	85 db                	test   %ebx,%ebx
404ee7:	0f 87 57 ff ff ff    	ja     0x404e44
404eed:	5f                   	pop    %edi
404eee:	5b                   	pop    %ebx
404eef:	5d                   	pop    %ebp
404ef0:	c2 08 00             	ret    $0x8
404ef3:	83 be 00 01 00 00 40 	cmpl   $0x40,0x100(%esi)
404efa:	76 44                	jbe    0x404f40
404efc:	8d 86 f8 00 00 00    	lea    0xf8(%esi),%eax
404f02:	8b 08                	mov    (%eax),%ecx
404f04:	83 01 40             	addl   $0x40,(%ecx)
404f07:	8b 00                	mov    (%eax),%eax
404f09:	83 38 40             	cmpl   $0x40,(%eax)
404f0c:	57                   	push   %edi
404f0d:	1b c9                	sbb    %ecx,%ecx
404f0f:	f7 d9                	neg    %ecx
404f11:	01 48 04             	add    %ecx,0x4(%eax)
404f14:	8d be f0 00 00 00    	lea    0xf0(%esi),%edi
404f1a:	8b 07                	mov    (%edi),%eax
404f1c:	56                   	push   %esi
404f1d:	e8 f1 fb ff ff       	call   0x404b13
404f22:	83 86 00 01 00 00 c0 	addl   $0xffffffc0,0x100(%esi)
404f29:	8b 86 00 01 00 00    	mov    0x100(%esi),%eax
404f2f:	8b 3f                	mov    (%edi),%edi
404f31:	50                   	push   %eax
404f32:	8d 47 40             	lea    0x40(%edi),%eax
404f35:	50                   	push   %eax
404f36:	57                   	push   %edi
404f37:	e8 34 6d 01 00       	call   0x41bc70
404f3c:	83 c4 0c             	add    $0xc,%esp
404f3f:	5f                   	pop    %edi
404f40:	8b 8e 00 01 00 00    	mov    0x100(%esi),%ecx
404f46:	8d 86 f8 00 00 00    	lea    0xf8(%esi),%eax
404f4c:	8b 10                	mov    (%eax),%edx
404f4e:	01 0a                	add    %ecx,(%edx)
404f50:	8b 00                	mov    (%eax),%eax
404f52:	39 08                	cmp    %ecx,(%eax)
404f54:	1b c9                	sbb    %ecx,%ecx
404f56:	f7 d9                	neg    %ecx
404f58:	01 48 04             	add    %ecx,0x4(%eax)
404f5b:	80 be 04 01 00 00 00 	cmpb   $0x0,0x104(%esi)
404f62:	74 0a                	je     0x404f6e
404f64:	8b 86 fc 00 00 00    	mov    0xfc(%esi),%eax
404f6a:	83 48 04 ff          	orl    $0xffffffff,0x4(%eax)
404f6e:	8b 86 fc 00 00 00    	mov    0xfc(%esi),%eax
404f74:	83 08 ff             	orl    $0xffffffff,(%eax)
404f77:	8b 86 00 01 00 00    	mov    0x100(%esi),%eax
404f7d:	b9 80 00 00 00       	mov    $0x80,%ecx
404f82:	2b c8                	sub    %eax,%ecx
404f84:	51                   	push   %ecx
404f85:	8b 8e f0 00 00 00    	mov    0xf0(%esi),%ecx
404f8b:	03 c8                	add    %eax,%ecx
404f8d:	6a 00                	push   $0x0