406cf0:	31 f8                	xor    %edi,%eax
406cf2:	8b 4c 24 44          	mov    0x44(%esp),%ecx
406cf6:	c1 ce 02             	ror    $0x2,%esi
406cf9:	01 d0                	add    %edx,%eax
406cfb:	03 54 24 10          	add    0x10(%esp),%edx
406cff:	01 f0                	add    %esi,%eax
406d01:	8b 74 24 38          	mov    0x38(%esp),%esi
406d05:	89 cb                	mov    %ecx,%ebx
406d07:	c1 c9 0b             	ror    $0xb,%ecx
406d0a:	89 f7                	mov    %esi,%edi
406d0c:	c1 ce 02             	ror    $0x2,%esi
406d0f:	31 d9                	xor    %ebx,%ecx
406d11:	c1 eb 03             	shr    $0x3,%ebx
406d14:	c1 c9 07             	ror    $0x7,%ecx
406d17:	31 fe                	xor    %edi,%esi
406d19:	31 cb                	xor    %ecx,%ebx
406d1b:	c1 ce 11             	ror    $0x11,%esi
406d1e:	03 5c 24 40          	add    0x40(%esp),%ebx
406d22:	c1 ef 0a             	shr    $0xa,%edi
406d25:	03 5c 24 24          	add    0x24(%esp),%ebx
406d29:	89 d1                	mov    %edx,%ecx
406d2b:	31 f7                	xor    %esi,%edi
406d2d:	8b 74 24 14          	mov    0x14(%esp),%esi
406d31:	c1 ca 0e             	ror    $0xe,%edx
406d34:	01 fb                	add    %edi,%ebx
406d36:	8b 7c 24 18          	mov    0x18(%esp),%edi
406d3a:	31 ca                	xor    %ecx,%edx
406d3c:	89 5c 24 40          	mov    %ebx,0x40(%esp)
406d40:	31 fe                	xor    %edi,%esi
406d42:	c1 ca 05             	ror    $0x5,%edx
406d45:	21 ce                	and    %ecx,%esi
406d47:	89 4c 24 10          	mov    %ecx,0x10(%esp)
406d4b:	31 ca                	xor    %ecx,%edx
406d4d:	03 5c 24 1c          	add    0x1c(%esp),%ebx
406d51:	31 f7                	xor    %esi,%edi
406d53:	c1 ca 06             	ror    $0x6,%edx
406d56:	89 c1                	mov    %eax,%ecx
406d58:	01 fb                	add    %edi,%ebx
406d5a:	c1 c9 09             	ror    $0x9,%ecx
406d5d:	89 c6                	mov    %eax,%esi
406d5f:	8b 7c 24 04          	mov    0x4(%esp),%edi
406d63:	31 c1                	xor    %eax,%ecx
406d65:	89 04 24             	mov    %eax,(%esp)
406d68:	31 f8                	xor    %edi,%eax
406d6a:	c1 c9 0b             	ror    $0xb,%ecx
406d6d:	21 c5                	and    %eax,%ebp
406d6f:	8d 94 13 ee 82 8f 74 	lea    0x748f82ee(%ebx,%edx,1),%edx
406d76:	31 f1                	xor    %esi,%ecx
406d78:	31 fd                	xor    %edi,%ebp
406d7a:	8b 74 24 48          	mov    0x48(%esp),%esi
406d7e:	c1 c9 02             	ror    $0x2,%ecx
406d81:	01 d5                	add    %edx,%ebp
406d83:	03 54 24 0c          	add    0xc(%esp),%edx
406d87:	01 cd                	add    %ecx,%ebp
406d89:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
406d8d:	89 f3                	mov    %esi,%ebx
406d8f:	c1 ce 0b             	ror    $0xb,%esi
406d92:	89 cf                	mov    %ecx,%edi
406d94:	c1 c9 02             	ror    $0x2,%ecx
406d97:	31 de                	xor    %ebx,%esi
406d99:	c1 eb 03             	shr    $0x3,%ebx
406d9c:	c1 ce 07             	ror    $0x7,%esi
406d9f:	31 f9                	xor    %edi,%ecx
406da1:	31 f3                	xor    %esi,%ebx
406da3:	c1 c9 11             	ror    $0x11,%ecx
406da6:	03 5c 24 44          	add    0x44(%esp),%ebx
406daa:	c1 ef 0a             	shr    $0xa,%edi
406dad:	03 5c 24 28          	add    0x28(%esp),%ebx
406db1:	89 d6                	mov    %edx,%esi
406db3:	31 cf                	xor    %ecx,%edi
406db5:	8b 4c 24 10          	mov    0x10(%esp),%ecx
406db9:	c1 ca 0e             	ror    $0xe,%edx
406dbc:	01 fb                	add    %edi,%ebx
406dbe:	8b 7c 24 14          	mov    0x14(%esp),%edi
406dc2:	31 f2                	xor    %esi,%edx
406dc4:	89 5c 24 44          	mov    %ebx,0x44(%esp)
406dc8:	31 f9                	xor    %edi,%ecx
406dca:	c1 ca 05             	ror    $0x5,%edx
406dcd:	21 f1                	and    %esi,%ecx
406dcf:	89 74 24 0c          	mov    %esi,0xc(%esp)
406dd3:	31 f2                	xor    %esi,%edx
406dd5:	03 5c 24 18          	add    0x18(%esp),%ebx
406dd9:	31 cf                	xor    %ecx,%edi
406ddb:	c1 ca 06             	ror    $0x6,%edx
406dde:	89 ee                	mov    %ebp,%esi
406de0:	01 fb                	add    %edi,%ebx
406de2:	c1 ce 09             	ror    $0x9,%esi
406de5:	89 e9                	mov    %ebp,%ecx
406de7:	8b 3c 24             	mov    (%esp),%edi
406dea:	31 ee                	xor    %ebp,%esi
406dec:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
406df0:	31 fd                	xor    %edi,%ebp
406df2:	c1 ce 0b             	ror    $0xb,%esi
406df5:	21 e8                	and    %ebp,%eax
406df7:	8d 94 13 6f 63 a5 78 	lea    0x78a5636f(%ebx,%edx,1),%edx
406dfe:	31 ce                	xor    %ecx,%esi
406e00:	31 f8                	xor    %edi,%eax
406e02:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
406e06:	c1 ce 02             	ror    $0x2,%esi
406e09:	01 d0                	add    %edx,%eax
406e0b:	03 54 24 08          	add    0x8(%esp),%edx
406e0f:	01 f0                	add    %esi,%eax
406e11:	8b 74 24 40          	mov    0x40(%esp),%esi
406e15:	89 cb                	mov    %ecx,%ebx
406e17:	c1 c9 0b             	ror    $0xb,%ecx
406e1a:	89 f7                	mov    %esi,%edi
406e1c:	c1 ce 02             	ror    $0x2,%esi
406e1f:	31 d9                	xor    %ebx,%ecx
406e21:	c1 eb 03             	shr    $0x3,%ebx
406e24:	c1 c9 07             	ror    $0x7,%ecx
406e27:	31 fe                	xor    %edi,%esi
406e29:	31 cb                	xor    %ecx,%ebx
406e2b:	c1 ce 11             	ror    $0x11,%esi
406e2e:	03 5c 24 48          	add    0x48(%esp),%ebx
406e32:	c1 ef 0a             	shr    $0xa,%edi
406e35:	03 5c 24 2c          	add    0x2c(%esp),%ebx
406e39:	89 d1                	mov    %edx,%ecx
406e3b:	31 f7                	xor    %esi,%edi
406e3d:	8b 74 24 0c          	mov    0xc(%esp),%esi
406e41:	c1 ca 0e             	ror    $0xe,%edx
406e44:	01 fb                	add    %edi,%ebx
406e46:	8b 7c 24 10          	mov    0x10(%esp),%edi
406e4a:	31 ca                	xor    %ecx,%edx
406e4c:	89 5c 24 48          	mov    %ebx,0x48(%esp)
406e50:	31 fe                	xor    %edi,%esi
406e52:	c1 ca 05             	ror    $0x5,%edx
406e55:	21 ce                	and    %ecx,%esi
406e57:	89 4c 24 08          	mov    %ecx,0x8(%esp)
406e5b:	31 ca                	xor    %ecx,%edx
406e5d:	03 5c 24 14          	add    0x14(%esp),%ebx
406e61:	31 f7                	xor    %esi,%edi
406e63:	c1 ca 06             	ror    $0x6,%edx
406e66:	89 c1                	mov    %eax,%ecx
406e68:	01 fb                	add    %edi,%ebx
406e6a:	c1 c9 09             	ror    $0x9,%ecx
406e6d:	89 c6                	mov    %eax,%esi
406e6f:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
406e73:	31 c1                	xor    %eax,%ecx
406e75:	89 44 24 18          	mov    %eax,0x18(%esp)
406e79:	31 f8                	xor    %edi,%eax
406e7b:	c1 c9 0b             	ror    $0xb,%ecx
406e7e:	21 c5                	and    %eax,%ebp
406e80:	8d 94 13 14 78 c8 84 	lea    -0x7b3787ec(%ebx,%edx,1),%edx
406e87:	31 f1                	xor    %esi,%ecx
406e89:	31 fd                	xor    %edi,%ebp
406e8b:	8b 74 24 50          	mov    0x50(%esp),%esi
406e8f:	c1 c9 02             	ror    $0x2,%ecx
406e92:	01 d5                	add    %edx,%ebp
406e94:	03 54 24 04          	add    0x4(%esp),%edx
406e98:	01 cd                	add    %ecx,%ebp
406e9a:	8b 4c 24 44          	mov    0x44(%esp),%ecx
406e9e:	89 f3                	mov    %esi,%ebx
406ea0:	c1 ce 0b             	ror    $0xb,%esi
406ea3:	89 cf                	mov    %ecx,%edi
406ea5:	c1 c9 02             	ror    $0x2,%ecx
406ea8:	31 de                	xor    %ebx,%esi
406eaa:	c1 eb 03             	shr    $0x3,%ebx
406ead:	c1 ce 07             	ror    $0x7,%esi
406eb0:	31 f9                	xor    %edi,%ecx
406eb2:	31 f3                	xor    %esi,%ebx
406eb4:	c1 c9 11             	ror    $0x11,%ecx
406eb7:	03 5c 24 4c          	add    0x4c(%esp),%ebx
406ebb:	c1 ef 0a             	shr    $0xa,%edi
406ebe:	03 5c 24 30          	add    0x30(%esp),%ebx
406ec2:	89 d6                	mov    %edx,%esi
406ec4:	31 cf                	xor    %ecx,%edi
406ec6:	8b 4c 24 08          	mov    0x8(%esp),%ecx
406eca:	c1 ca 0e             	ror    $0xe,%edx
406ecd:	01 fb                	add    %edi,%ebx
406ecf:	8b 7c 24 0c          	mov    0xc(%esp),%edi
406ed3:	31 f2                	xor    %esi,%edx
406ed5:	89 5c 24 4c          	mov    %ebx,0x4c(%esp)
406ed9:	31 f9                	xor    %edi,%ecx
406edb:	c1 ca 05             	ror    $0x5,%edx
406ede:	21 f1                	and    %esi,%ecx
406ee0:	89 74 24 04          	mov    %esi,0x4(%esp)
406ee4:	31 f2                	xor    %esi,%edx
406ee6:	03 5c 24 10          	add    0x10(%esp),%ebx
406eea:	31 cf                	xor    %ecx,%edi
406eec:	c1 ca 06             	ror    $0x6,%edx
406eef:	89 ee                	mov    %ebp,%esi
406ef1:	01 fb                	add    %edi,%ebx
406ef3:	c1 ce 09             	ror    $0x9,%esi
406ef6:	89 e9                	mov    %ebp,%ecx
406ef8:	8b 7c 24 18          	mov    0x18(%esp),%edi
406efc:	31 ee                	xor    %ebp,%esi
406efe:	89 6c 24 14          	mov    %ebp,0x14(%esp)
406f02:	31 fd                	xor    %edi,%ebp
406f04:	c1 ce 0b             	ror    $0xb,%esi
406f07:	21 e8                	and    %ebp,%eax
406f09:	8d 94 13 08 02 c7 8c 	lea    -0x7338fdf8(%ebx,%edx,1),%edx
406f10:	31 ce                	xor    %ecx,%esi
406f12:	31 f8                	xor    %edi,%eax
406f14:	8b 4c 24 54          	mov    0x54(%esp),%ecx
406f18:	c1 ce 02             	ror    $0x2,%esi
406f1b:	01 d0                	add    %edx,%eax
406f1d:	03 14 24             	add    (%esp),%edx
406f20:	01 f0                	add    %esi,%eax
406f22:	8b 74 24 48          	mov    0x48(%esp),%esi
406f26:	89 cb                	mov    %ecx,%ebx
406f28:	c1 c9 0b             	ror    $0xb,%ecx
406f2b:	89 f7                	mov    %esi,%edi
406f2d:	c1 ce 02             	ror    $0x2,%esi
406f30:	31 d9                	xor    %ebx,%ecx
406f32:	c1 eb 03             	shr    $0x3,%ebx
406f35:	c1 c9 07             	ror    $0x7,%ecx
406f38:	31 fe                	xor    %edi,%esi
406f3a:	31 cb                	xor    %ecx,%ebx
406f3c:	c1 ce 11             	ror    $0x11,%esi
406f3f:	03 5c 24 50          	add    0x50(%esp),%ebx
406f43:	c1 ef 0a             	shr    $0xa,%edi
406f46:	03 5c 24 34          	add    0x34(%esp),%ebx
406f4a:	89 d1                	mov    %edx,%ecx
406f4c:	31 f7                	xor    %esi,%edi
406f4e:	8b 74 24 04          	mov    0x4(%esp),%esi
406f52:	c1 ca 0e             	ror    $0xe,%edx
406f55:	01 fb                	add    %edi,%ebx
406f57:	8b 7c 24 08          	mov    0x8(%esp),%edi
406f5b:	31 ca                	xor    %ecx,%edx
406f5d:	89 5c 24 50          	mov    %ebx,0x50(%esp)
406f61:	31 fe                	xor    %edi,%esi
406f63:	c1 ca 05             	ror    $0x5,%edx
406f66:	21 ce                	and    %ecx,%esi
406f68:	89 0c 24             	mov    %ecx,(%esp)
406f6b:	31 ca                	xor    %ecx,%edx
406f6d:	03 5c 24 0c          	add    0xc(%esp),%ebx
406f71:	31 f7                	xor    %esi,%edi
406f73:	c1 ca 06             	ror    $0x6,%edx
406f76:	89 c1                	mov    %eax,%ecx
406f78:	01 fb                	add    %edi,%ebx
406f7a:	c1 c9 09             	ror    $0x9,%ecx
406f7d:	89 c6                	mov    %eax,%esi
406f7f:	8b 7c 24 14          	mov    0x14(%esp),%edi
406f83:	31 c1                	xor    %eax,%ecx
406f85:	89 44 24 10          	mov    %eax,0x10(%esp)
406f89:	31 f8                	xor    %edi,%eax
406f8b:	c1 c9 0b             	ror    $0xb,%ecx
406f8e:	21 c5                	and    %eax,%ebp
406f90:	8d 94 13 fa ff be 90 	lea    -0x6f410006(%ebx,%edx,1),%edx
406f97:	31 f1                	xor    %esi,%ecx
406f99:	31 fd                	xor    %edi,%ebp
406f9b:	8b 74 24 58          	mov    0x58(%esp),%esi
406f9f:	c1 c9 02             	ror    $0x2,%ecx
406fa2:	01 d5                	add    %edx,%ebp
406fa4:	03 54 24 1c          	add    0x1c(%esp),%edx
406fa8:	01 cd                	add    %ecx,%ebp
406faa:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
406fae:	89 f3                	mov    %esi,%ebx
406fb0:	c1 ce 0b             	ror    $0xb,%esi
406fb3:	89 cf                	mov    %ecx,%edi
406fb5:	c1 c9 02             	ror    $0x2,%ecx
406fb8:	31 de                	xor    %ebx,%esi
406fba:	c1 eb 03             	shr    $0x3,%ebx
406fbd:	c1 ce 07             	ror    $0x7,%esi
406fc0:	31 f9                	xor    %edi,%ecx
406fc2:	31 f3                	xor    %esi,%ebx
406fc4:	c1 c9 11             	ror    $0x11,%ecx
406fc7:	03 5c 24 54          	add    0x54(%esp),%ebx
406fcb:	c1 ef 0a             	shr    $0xa,%edi
406fce:	03 5c 24 38          	add    0x38(%esp),%ebx
406fd2:	89 d6                	mov    %edx,%esi
406fd4:	31 cf                	xor    %ecx,%edi
406fd6:	8b 0c 24             	mov    (%esp),%ecx
406fd9:	c1 ca 0e             	ror    $0xe,%edx
406fdc:	01 fb                	add    %edi,%ebx
406fde:	8b 7c 24 04          	mov    0x4(%esp),%edi
406fe2:	31 f2                	xor    %esi,%edx
406fe4:	89 5c 24 54          	mov    %ebx,0x54(%esp)
406fe8:	31 f9                	xor    %edi,%ecx
406fea:	c1 ca 05             	ror    $0x5,%edx
406fed:	21 f1                	and    %esi,%ecx
406fef:	89 74 24 1c          	mov    %esi,0x1c(%esp)
406ff3:	31 f2                	xor    %esi,%edx
406ff5:	03 5c 24 08          	add    0x8(%esp),%ebx
406ff9:	31 cf                	xor    %ecx,%edi
406ffb:	c1 ca 06             	ror    $0x6,%edx
406ffe:	89 ee                	mov    %ebp,%esi
407000:	01 fb                	add    %edi,%ebx
407002:	c1 ce 09             	ror    $0x9,%esi
407005:	89 e9                	mov    %ebp,%ecx
407007:	8b 7c 24 10          	mov    0x10(%esp),%edi
40700b:	31 ee                	xor    %ebp,%esi
40700d:	89 6c 24 0c          	mov    %ebp,0xc(%esp)
407011:	31 fd                	xor    %edi,%ebp
407013:	c1 ce 0b             	ror    $0xb,%esi
407016:	21 e8                	and    %ebp,%eax
407018:	8d 94 13 eb 6c 50 a4 	lea    -0x5baf9315(%ebx,%edx,1),%edx
40701f:	31 ce                	xor    %ecx,%esi
407021:	31 f8                	xor    %edi,%eax
407023:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
407027:	c1 ce 02             	ror    $0x2,%esi
40702a:	01 d0                	add    %edx,%eax
40702c:	03 54 24 18          	add    0x18(%esp),%edx
407030:	01 f0                	add    %esi,%eax
407032:	8b 74 24 50          	mov    0x50(%esp),%esi
407036:	89 cb                	mov    %ecx,%ebx
407038:	c1 c9 0b             	ror    $0xb,%ecx
40703b:	89 f7                	mov    %esi,%edi
40703d:	c1 ce 02             	ror    $0x2,%esi
407040:	31 d9                	xor    %ebx,%ecx
407042:	c1 eb 03             	shr    $0x3,%ebx
407045:	c1 c9 07             	ror    $0x7,%ecx
407048:	31 fe                	xor    %edi,%esi
40704a:	31 cb                	xor    %ecx,%ebx
40704c:	c1 ce 11             	ror    $0x11,%esi
40704f:	03 5c 24 58          	add    0x58(%esp),%ebx
407053:	c1 ef 0a             	shr    $0xa,%edi
407056:	03 5c 24 3c          	add    0x3c(%esp),%ebx
40705a:	89 d1                	mov    %edx,%ecx
40705c:	31 f7                	xor    %esi,%edi
40705e:	8b 74 24 1c          	mov    0x1c(%esp),%esi
407062:	c1 ca 0e             	ror    $0xe,%edx
407065:	01 fb                	add    %edi,%ebx
407067:	8b 3c 24             	mov    (%esp),%edi
40706a:	31 ca                	xor    %ecx,%edx
40706c:	31 fe                	xor    %edi,%esi
40706e:	c1 ca 05             	ror    $0x5,%edx
407071:	21 ce                	and    %ecx,%esi
407073:	89 4c 24 18          	mov    %ecx,0x18(%esp)
407077:	31 ca                	xor    %ecx,%edx
407079:	03 5c 24 04          	add    0x4(%esp),%ebx
40707d:	31 f7                	xor    %esi,%edi
40707f:	c1 ca 06             	ror    $0x6,%edx
407082:	89 c1                	mov    %eax,%ecx
407084:	01 fb                	add    %edi,%ebx
407086:	c1 c9 09             	ror    $0x9,%ecx
407089:	89 c6                	mov    %eax,%esi
40708b:	8b 7c 24 0c          	mov    0xc(%esp),%edi
40708f:	31 c1                	xor    %eax,%ecx
407091:	89 44 24 08          	mov    %eax,0x8(%esp)
407095:	31 f8                	xor    %edi,%eax
407097:	c1 c9 0b             	ror    $0xb,%ecx
40709a:	21 c5                	and    %eax,%ebp
40709c:	8d 94 13 f7 a3 f9 be 	lea    -0x41065c09(%ebx,%edx,1),%edx
4070a3:	31 f1                	xor    %esi,%ecx
4070a5:	31 fd                	xor    %edi,%ebp
4070a7:	8b 74 24 20          	mov    0x20(%esp),%esi
4070ab:	c1 c9 02             	ror    $0x2,%ecx
4070ae:	01 d5                	add    %edx,%ebp
4070b0:	03 54 24 14          	add    0x14(%esp),%edx
4070b4:	01 cd                	add    %ecx,%ebp
4070b6:	8b 4c 24 54          	mov    0x54(%esp),%ecx
4070ba:	89 f3                	mov    %esi,%ebx
4070bc:	c1 ce 0b             	ror    $0xb,%esi
4070bf:	89 cf                	mov    %ecx,%edi
4070c1:	c1 c9 02             	ror    $0x2,%ecx
4070c4:	31 de                	xor    %ebx,%esi
4070c6:	c1 eb 03             	shr    $0x3,%ebx
4070c9:	c1 ce 07             	ror    $0x7,%esi
4070cc:	31 f9                	xor    %edi,%ecx