56d724:	33 c6                	xor    %esi,%eax
56d726:	05 c8 fb d3 e7       	add    $0xe7d3fbc8,%eax
56d72b:	03 45 d4             	add    -0x2c(%ebp),%eax
56d72e:	03 c8                	add    %eax,%ecx
56d730:	8b c7                	mov    %edi,%eax
56d732:	c1 c9 0c             	ror    $0xc,%ecx
56d735:	03 cf                	add    %edi,%ecx
56d737:	33 c1                	xor    %ecx,%eax
56d739:	23 c6                	and    %esi,%eax
56d73b:	33 c7                	xor    %edi,%eax
56d73d:	05 e6 cd e1 21       	add    $0x21e1cde6,%eax
56d742:	03 45 c8             	add    -0x38(%ebp),%eax
56d745:	03 d0                	add    %eax,%edx
56d747:	8b c1                	mov    %ecx,%eax
56d749:	c1 c2 05             	rol    $0x5,%edx
56d74c:	03 d1                	add    %ecx,%edx
56d74e:	33 c2                	xor    %edx,%eax
56d750:	23 c7                	and    %edi,%eax
56d752:	33 c1                	xor    %ecx,%eax
56d754:	03 c3                	add    %ebx,%eax
56d756:	8d 9e d6 07 37 c3    	lea    -0x3cc8f82a(%esi),%ebx
56d75c:	03 d8                	add    %eax,%ebx
56d75e:	8d b2 05 e9 e3 a9    	lea    -0x561c16fb(%edx),%esi
56d764:	c1 c3 09             	rol    $0x9,%ebx
56d767:	03 da                	add    %edx,%ebx
56d769:	8b c3                	mov    %ebx,%eax
56d76b:	33 c2                	xor    %edx,%eax
56d76d:	23 c1                	and    %ecx,%eax
56d76f:	33 c2                	xor    %edx,%eax
56d771:	05 87 0d d5 f4       	add    $0xf4d50d87,%eax
56d776:	03 45 ec             	add    -0x14(%ebp),%eax
56d779:	03 f8                	add    %eax,%edi
56d77b:	8b c3                	mov    %ebx,%eax
56d77d:	c1 c7 0e             	rol    $0xe,%edi
56d780:	03 fb                	add    %ebx,%edi
56d782:	33 c7                	xor    %edi,%eax
56d784:	89 7d bc             	mov    %edi,-0x44(%ebp)
56d787:	23 c2                	and    %edx,%eax
56d789:	33 c3                	xor    %ebx,%eax
56d78b:	05 ed 14 5a 45       	add    $0x455a14ed,%eax
56d790:	03 45 e0             	add    -0x20(%ebp),%eax
56d793:	03 c8                	add    %eax,%ecx
56d795:	8b c7                	mov    %edi,%eax
56d797:	c1 c9 0c             	ror    $0xc,%ecx
56d79a:	03 cf                	add    %edi,%ecx
56d79c:	33 c1                	xor    %ecx,%eax
56d79e:	89 4d c0             	mov    %ecx,-0x40(%ebp)
56d7a1:	23 c3                	and    %ebx,%eax
56d7a3:	33 c7                	xor    %edi,%eax
56d7a5:	03 45 d8             	add    -0x28(%ebp),%eax
56d7a8:	03 f0                	add    %eax,%esi
56d7aa:	8b c1                	mov    %ecx,%eax
56d7ac:	c1 c6 05             	rol    $0x5,%esi
56d7af:	03 f1                	add    %ecx,%esi
56d7b1:	33 c6                	xor    %esi,%eax
56d7b3:	23 c7                	and    %edi,%eax
56d7b5:	33 c1                	xor    %ecx,%eax
56d7b7:	03 45 cc             	add    -0x34(%ebp),%eax
56d7ba:	8d bb f8 a3 ef fc    	lea    -0x3105c08(%ebx),%edi
56d7c0:	03 f8                	add    %eax,%edi
56d7c2:	8b 5d bc             	mov    -0x44(%ebp),%ebx
56d7c5:	c1 c7 09             	rol    $0x9,%edi
56d7c8:	81 c3 d9 02 6f 67    	add    $0x676f02d9,%ebx
56d7ce:	03 fe                	add    %esi,%edi
56d7d0:	8b 55 c0             	mov    -0x40(%ebp),%edx
56d7d3:	8b c7                	mov    %edi,%eax
56d7d5:	81 c2 8a 4c 2a 8d    	add    $0x8d2a4c8a,%edx
56d7db:	33 c6                	xor    %esi,%eax
56d7dd:	23 c1                	and    %ecx,%eax
56d7df:	8b cf                	mov    %edi,%ecx
56d7e1:	33 c6                	xor    %esi,%eax
56d7e3:	03 45 f8             	add    -0x8(%ebp),%eax
56d7e6:	03 d8                	add    %eax,%ebx
56d7e8:	c1 c3 0e             	rol    $0xe,%ebx
56d7eb:	03 df                	add    %edi,%ebx
56d7ed:	33 cb                	xor    %ebx,%ecx
56d7ef:	8b c1                	mov    %ecx,%eax
56d7f1:	23 c6                	and    %esi,%eax
56d7f3:	33 c7                	xor    %edi,%eax
56d7f5:	03 45 f0             	add    -0x10(%ebp),%eax
56d7f8:	03 d0                	add    %eax,%edx
56d7fa:	8b c3                	mov    %ebx,%eax
56d7fc:	c1 ca 0c             	ror    $0xc,%edx
56d7ff:	03 d3                	add    %ebx,%edx
56d801:	33 c2                	xor    %edx,%eax
56d803:	33 ca                	xor    %edx,%ecx
56d805:	81 c1 42 39 fa ff    	add    $0xfffa3942,%ecx
56d80b:	03 4d f4             	add    -0xc(%ebp),%ecx
56d80e:	03 f1                	add    %ecx,%esi
56d810:	c1 c6 04             	rol    $0x4,%esi
56d813:	03 f2                	add    %edx,%esi
56d815:	33 c6                	xor    %esi,%eax
56d817:	05 81 f6 71 87       	add    $0x8771f681,%eax
56d81c:	03 45 e0             	add    -0x20(%ebp),%eax
56d81f:	03 f8                	add    %eax,%edi
56d821:	c1 c7 0b             	rol    $0xb,%edi
56d824:	03 fe                	add    %esi,%edi
56d826:	8b c7                	mov    %edi,%eax
56d828:	8b cf                	mov    %edi,%ecx
56d82a:	33 c2                	xor    %edx,%eax
56d82c:	33 c6                	xor    %esi,%eax
56d82e:	05 22 61 9d 6d       	add    $0x6d9d6122,%eax
56d833:	03 45 d0             	add    -0x30(%ebp),%eax
56d836:	03 d8                	add    %eax,%ebx
56d838:	c1 c3 10             	rol    $0x10,%ebx
56d83b:	03 df                	add    %edi,%ebx
56d83d:	33 cb                	xor    %ebx,%ecx
56d83f:	8b c1                	mov    %ecx,%eax
56d841:	33 c6                	xor    %esi,%eax
56d843:	05 0c 38 e5 fd       	add    $0xfde5380c,%eax
56d848:	03 45 c4             	add    -0x3c(%ebp),%eax
56d84b:	03 d0                	add    %eax,%edx
56d84d:	8b c3                	mov    %ebx,%eax
56d84f:	c1 ca 09             	ror    $0x9,%edx
56d852:	03 d3                	add    %ebx,%edx
56d854:	33 ca                	xor    %edx,%ecx
56d856:	33 c2                	xor    %edx,%eax
56d858:	81 c1 44 ea be a4    	add    $0xa4beea44,%ecx
56d85e:	03 4d e4             	add    -0x1c(%ebp),%ecx
56d861:	03 f1                	add    %ecx,%esi
56d863:	c1 c6 04             	rol    $0x4,%esi
56d866:	03 f2                	add    %edx,%esi
56d868:	33 c6                	xor    %esi,%eax
56d86a:	05 a9 cf de 4b       	add    $0x4bdecfa9,%eax
56d86f:	03 45 d4             	add    -0x2c(%ebp),%eax
56d872:	03 f8                	add    %eax,%edi
56d874:	c1 c7 0b             	rol    $0xb,%edi
56d877:	03 fe                	add    %esi,%edi
56d879:	8b c7                	mov    %edi,%eax
56d87b:	8b cf                	mov    %edi,%ecx
56d87d:	33 c2                	xor    %edx,%eax
56d87f:	33 c6                	xor    %esi,%eax
56d881:	05 60 4b bb f6       	add    $0xf6bb4b60,%eax
56d886:	03 45 f8             	add    -0x8(%ebp),%eax
56d889:	03 d8                	add    %eax,%ebx
56d88b:	c1 c3 10             	rol    $0x10,%ebx
56d88e:	03 df                	add    %edi,%ebx
56d890:	33 cb                	xor    %ebx,%ecx
56d892:	8b c1                	mov    %ecx,%eax
56d894:	33 c6                	xor    %esi,%eax
56d896:	05 70 bc bf be       	add    $0xbebfbc70,%eax
56d89b:	03 45 e8             	add    -0x18(%ebp),%eax
56d89e:	03 d0                	add    %eax,%edx
56d8a0:	8b c3                	mov    %ebx,%eax
56d8a2:	c1 ca 09             	ror    $0x9,%edx
56d8a5:	03 d3                	add    %ebx,%edx
56d8a7:	33 c2                	xor    %edx,%eax
56d8a9:	33 ca                	xor    %edx,%ecx
56d8ab:	81 c1 c6 7e 9b 28    	add    $0x289b7ec6,%ecx
56d8b1:	03 4d d8             	add    -0x28(%ebp),%ecx
56d8b4:	03 f1                	add    %ecx,%esi
56d8b6:	c1 c6 04             	rol    $0x4,%esi
56d8b9:	03 f2                	add    %edx,%esi
56d8bb:	33 c6                	xor    %esi,%eax
56d8bd:	05 fa 27 a1 ea       	add    $0xeaa127fa,%eax
56d8c2:	03 45 fc             	add    -0x4(%ebp),%eax
56d8c5:	03 f8                	add    %eax,%edi
56d8c7:	c1 c7 0b             	rol    $0xb,%edi
56d8ca:	03 fe                	add    %esi,%edi
56d8cc:	8b c7                	mov    %edi,%eax
56d8ce:	8b cf                	mov    %edi,%ecx
56d8d0:	33 c2                	xor    %edx,%eax
56d8d2:	33 c6                	xor    %esi,%eax
56d8d4:	05 85 30 ef d4       	add    $0xd4ef3085,%eax
56d8d9:	03 45 ec             	add    -0x14(%ebp),%eax
56d8dc:	03 d8                	add    %eax,%ebx
56d8de:	c1 c3 10             	rol    $0x10,%ebx
56d8e1:	03 df                	add    %edi,%ebx
56d8e3:	33 cb                	xor    %ebx,%ecx
56d8e5:	8b c1                	mov    %ecx,%eax
56d8e7:	33 c6                	xor    %esi,%eax
56d8e9:	81 c6 39 d0 d4 d9    	add    $0xd9d4d039,%esi
56d8ef:	05 05 1d 88 04       	add    $0x4881d05,%eax
56d8f4:	03 45 dc             	add    -0x24(%ebp),%eax
56d8f7:	03 d0                	add    %eax,%edx
56d8f9:	8b c3                	mov    %ebx,%eax
56d8fb:	c1 ca 09             	ror    $0x9,%edx
56d8fe:	03 d3                	add    %ebx,%edx
56d900:	33 c2                	xor    %edx,%eax
56d902:	33 ca                	xor    %edx,%ecx
56d904:	03 4d c8             	add    -0x38(%ebp),%ecx
56d907:	03 ce                	add    %esi,%ecx
56d909:	8d b7 e5 99 db e6    	lea    -0x1924661b(%edi),%esi
56d90f:	c1 c1 04             	rol    $0x4,%ecx
56d912:	03 ca                	add    %edx,%ecx
56d914:	33 c1                	xor    %ecx,%eax
56d916:	03 45 f0             	add    -0x10(%ebp),%eax
56d919:	03 f0                	add    %eax,%esi
56d91b:	c1 c6 0b             	rol    $0xb,%esi
56d91e:	03 f1                	add    %ecx,%esi
56d920:	8b fe                	mov    %esi,%edi
56d922:	8b c6                	mov    %esi,%eax
56d924:	33 fa                	xor    %edx,%edi
56d926:	33 f9                	xor    %ecx,%edi
56d928:	81 c7 f8 7c a2 1f    	add    $0x1fa27cf8,%edi
56d92e:	03 7d 0c             	add    0xc(%ebp),%edi
56d931:	03 fb                	add    %ebx,%edi
56d933:	c1 c7 10             	rol    $0x10,%edi
56d936:	03 fe                	add    %esi,%edi
56d938:	33 c7                	xor    %edi,%eax
56d93a:	33 c1                	xor    %ecx,%eax
56d93c:	05 65 56 ac c4       	add    $0xc4ac5665,%eax
56d941:	03 45 cc             	add    -0x34(%ebp),%eax
56d944:	03 d0                	add    %eax,%edx
56d946:	8b c6                	mov    %esi,%eax
56d948:	f7 d0                	not    %eax
56d94a:	c1 ca 09             	ror    $0x9,%edx
56d94d:	03 d7                	add    %edi,%edx
56d94f:	0b c2                	or     %edx,%eax
56d951:	33 c7                	xor    %edi,%eax
56d953:	05 44 22 29 f4       	add    $0xf4292244,%eax
56d958:	03 45 fc             	add    -0x4(%ebp),%eax
56d95b:	03 c8                	add    %eax,%ecx
56d95d:	8b c7                	mov    %edi,%eax
56d95f:	c1 c1 06             	rol    $0x6,%ecx
56d962:	f7 d0                	not    %eax
56d964:	03 ca                	add    %edx,%ecx
56d966:	0b c1                	or     %ecx,%eax
56d968:	33 c2                	xor    %edx,%eax
56d96a:	05 97 ff 2a 43       	add    $0x432aff97,%eax
56d96f:	03 45 f8             	add    -0x8(%ebp),%eax
56d972:	03 f0                	add    %eax,%esi
56d974:	8b c2                	mov    %edx,%eax
56d976:	f7 d0                	not    %eax
56d978:	c1 c6 0a             	rol    $0xa,%esi
56d97b:	03 f1                	add    %ecx,%esi
56d97d:	0b c6                	or     %esi,%eax
56d97f:	33 c1                	xor    %ecx,%eax
56d981:	05 a7 23 94 ab       	add    $0xab9423a7,%eax
56d986:	03 45 c4             	add    -0x3c(%ebp),%eax
56d989:	03 f8                	add    %eax,%edi
56d98b:	8b c1                	mov    %ecx,%eax
56d98d:	f7 d0                	not    %eax
56d98f:	c1 c7 0f             	rol    $0xf,%edi
56d992:	03 fe                	add    %esi,%edi
56d994:	0b c7                	or     %edi,%eax
56d996:	33 c6                	xor    %esi,%eax
56d998:	05 39 a0 93 fc       	add    $0xfc93a039,%eax
56d99d:	03 45 f4             	add    -0xc(%ebp),%eax
56d9a0:	03 d0                	add    %eax,%edx
56d9a2:	8b c6                	mov    %esi,%eax
56d9a4:	f7 d0                	not    %eax
56d9a6:	c1 ca 0b             	ror    $0xb,%edx
56d9a9:	03 d7                	add    %edi,%edx
56d9ab:	0b c2                	or     %edx,%eax
56d9ad:	33 c7                	xor    %edi,%eax
56d9af:	05 c3 59 5b 65       	add    $0x655b59c3,%eax
56d9b4:	03 45 f0             	add    -0x10(%ebp),%eax
56d9b7:	03 c8                	add    %eax,%ecx
56d9b9:	8b c7                	mov    %edi,%eax
56d9bb:	f7 d0                	not    %eax
56d9bd:	c1 c1 06             	rol    $0x6,%ecx
56d9c0:	03 ca                	add    %edx,%ecx
56d9c2:	0b c1                	or     %ecx,%eax
56d9c4:	33 c2                	xor    %edx,%eax
56d9c6:	05 92 cc 0c 8f       	add    $0x8f0ccc92,%eax
56d9cb:	03 45 ec             	add    -0x14(%ebp),%eax
56d9ce:	03 f0                	add    %eax,%esi
56d9d0:	8b c2                	mov    %edx,%eax
56d9d2:	f7 d0                	not    %eax
56d9d4:	c1 c6 0a             	rol    $0xa,%esi
56d9d7:	03 f1                	add    %ecx,%esi
56d9d9:	0b c6                	or     %esi,%eax
56d9db:	33 c1                	xor    %ecx,%eax
56d9dd:	05 7d f4 ef ff       	add    $0xffeff47d,%eax
56d9e2:	03 45 e8             	add    -0x18(%ebp),%eax
56d9e5:	03 f8                	add    %eax,%edi
56d9e7:	8b c1                	mov    %ecx,%eax
56d9e9:	f7 d0                	not    %eax
56d9eb:	c1 c7 0f             	rol    $0xf,%edi
56d9ee:	03 fe                	add    %esi,%edi
56d9f0:	0b c7                	or     %edi,%eax
56d9f2:	33 c6                	xor    %esi,%eax
56d9f4:	05 d1 5d 84 85       	add    $0x85845dd1,%eax
56d9f9:	03 45 e4             	add    -0x1c(%ebp),%eax
56d9fc:	03 d0                	add    %eax,%edx
56d9fe:	8b c6                	mov    %esi,%eax
56da00:	f7 d0                	not    %eax
56da02:	c1 ca 0b             	ror    $0xb,%edx
56da05:	03 d7                	add    %edi,%edx
56da07:	0b c2                	or     %edx,%eax
56da09:	33 c7                	xor    %edi,%eax
56da0b:	05 4f 7e a8 6f       	add    $0x6fa87e4f,%eax
56da10:	03 45 e0             	add    -0x20(%ebp),%eax
56da13:	03 c8                	add    %eax,%ecx
56da15:	8b c7                	mov    %edi,%eax
56da17:	f7 d0                	not    %eax
56da19:	c1 c1 06             	rol    $0x6,%ecx
56da1c:	03 ca                	add    %edx,%ecx
56da1e:	0b c1                	or     %ecx,%eax
56da20:	33 c2                	xor    %edx,%eax
56da22:	05 e0 e6 2c fe       	add    $0xfe2ce6e0,%eax
56da27:	03 45 0c             	add    0xc(%ebp),%eax
56da2a:	03 f0                	add    %eax,%esi
56da2c:	8b c2                	mov    %edx,%eax
56da2e:	c1 c6 0a             	rol    $0xa,%esi
56da31:	f7 d0                	not    %eax
56da33:	03 f1                	add    %ecx,%esi
56da35:	0b c6                	or     %esi,%eax
56da37:	33 c1                	xor    %ecx,%eax
56da39:	03 45 dc             	add    -0x24(%ebp),%eax
56da3c:	8d 9f 14 43 01 a3    	lea    -0x5cfebcec(%edi),%ebx
56da42:	03 d8                	add    %eax,%ebx
56da44:	8d b9 82 7e 53 f7    	lea    -0x8ac817e(%ecx),%edi
56da4a:	8b c1                	mov    %ecx,%eax
56da4c:	c1 c3 0f             	rol    $0xf,%ebx
56da4f:	f7 d0                	not    %eax
56da51:	03 de                	add    %esi,%ebx
56da53:	0b c3                	or     %ebx,%eax
56da55:	33 c6                	xor    %esi,%eax
56da57:	05 a1 11 08 4e       	add    $0x4e0811a1,%eax
56da5c:	03 45 d8             	add    -0x28(%ebp),%eax
56da5f:	03 d0                	add    %eax,%edx
56da61:	8b c6                	mov    %esi,%eax
56da63:	f7 d0                	not    %eax
56da65:	c1 ca 0b             	ror    $0xb,%edx
56da68:	03 d3                	add    %ebx,%edx
56da6a:	0b c2                	or     %edx,%eax
56da6c:	89 55 0c             	mov    %edx,0xc(%ebp)
56da6f:	33 c3                	xor    %ebx,%eax
56da71:	8b 4d 0c             	mov    0xc(%ebp),%ecx
56da74:	03 45 d4             	add    -0x2c(%ebp),%eax
56da77:	81 c1 91 d3 86 eb    	add    $0xeb86d391,%ecx
56da7d:	03 f8                	add    %eax,%edi
56da7f:	8b c3                	mov    %ebx,%eax
56da81:	f7 d0                	not    %eax
56da83:	c1 c7 06             	rol    $0x6,%edi
56da86:	03 fa                	add    %edx,%edi
56da88:	0b c7                	or     %edi,%eax
56da8a:	33 c2                	xor    %edx,%eax
56da8c:	05 35 f2 3a bd       	add    $0xbd3af235,%eax
56da91:	03 45 d0             	add    -0x30(%ebp),%eax
56da94:	03 f0                	add    %eax,%esi
56da96:	8b c2                	mov    %edx,%eax
56da98:	f7 d0                	not    %eax
56da9a:	c1 c6 0a             	rol    $0xa,%esi
56da9d:	03 f7                	add    %edi,%esi
56da9f:	8d 93 bb d2 d7 2a    	lea    0x2ad7d2bb(%ebx),%edx
56daa5:	8b 5d 08             	mov    0x8(%ebp),%ebx
56daa8:	0b c6                	or     %esi,%eax
56daaa:	33 c7                	xor    %edi,%eax
56daac:	03 45 cc             	add    -0x34(%ebp),%eax
56daaf:	03 d0                	add    %eax,%edx
56dab1:	8b c7                	mov    %edi,%eax
56dab3:	01 3b                	add    %edi,(%ebx)
56dab5:	f7 d0                	not    %eax
56dab7:	c1 c2 0f             	rol    $0xf,%edx
56daba:	03 d6                	add    %esi,%edx
56dabc:	01 53 08             	add    %edx,0x8(%ebx)
56dabf:	0b c2                	or     %edx,%eax