780df4:	75 ea                	jne    0x780de0
780df6:	5f                   	pop    %edi
780df7:	5e                   	pop    %esi
780df8:	c2 04 00             	ret    $0x4
780dfb:	cc                   	int3
780dfc:	cc                   	int3
780dfd:	cc                   	int3
780dfe:	cc                   	int3
780dff:	cc                   	int3
780e00:	cc                   	int3
780e01:	cc                   	int3
780e02:	cc                   	int3
780e03:	cc                   	int3
780e04:	cc                   	int3
780e05:	cc                   	int3
780e06:	cc                   	int3
780e07:	cc                   	int3
780e08:	cc                   	int3
780e09:	cc                   	int3
780e0a:	cc                   	int3
780e0b:	cc                   	int3
780e0c:	cc                   	int3
780e0d:	cc                   	int3
780e0e:	cc                   	int3
780e0f:	cc                   	int3
780e10:	8b 44 24 04          	mov    0x4(%esp),%eax
780e14:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
780e18:	56                   	push   %esi
780e19:	8b 74 24 10          	mov    0x10(%esp),%esi
780e1d:	8b 16                	mov    (%esi),%edx
780e1f:	33 54 24 0c          	xor    0xc(%esp),%edx
780e23:	33 54 24 14          	xor    0x14(%esp),%edx
780e27:	03 10                	add    (%eax),%edx
780e29:	03 54 24 1c          	add    0x1c(%esp),%edx
780e2d:	d3 c2                	rol    %cl,%edx
780e2f:	03 54 24 18          	add    0x18(%esp),%edx
780e33:	89 10                	mov    %edx,(%eax)
780e35:	8b 06                	mov    (%esi),%eax
780e37:	c1 c0 0a             	rol    $0xa,%eax
780e3a:	89 06                	mov    %eax,(%esi)
780e3c:	5e                   	pop    %esi
780e3d:	c3                   	ret
780e3e:	cc                   	int3
780e3f:	cc                   	int3
780e40:	cc                   	int3
780e41:	cc                   	int3
780e42:	cc                   	int3
780e43:	cc                   	int3
780e44:	cc                   	int3
780e45:	cc                   	int3
780e46:	cc                   	int3
780e47:	cc                   	int3
780e48:	cc                   	int3
780e49:	cc                   	int3
780e4a:	cc                   	int3
780e4b:	cc                   	int3
780e4c:	cc                   	int3
780e4d:	cc                   	int3
780e4e:	cc                   	int3
780e4f:	cc                   	int3
780e50:	8b 44 24 04          	mov    0x4(%esp),%eax
780e54:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
780e58:	56                   	push   %esi
780e59:	8b 74 24 10          	mov    0x10(%esp),%esi
780e5d:	8b 16                	mov    (%esi),%edx
780e5f:	33 54 24 14          	xor    0x14(%esp),%edx
780e63:	23 54 24 0c          	and    0xc(%esp),%edx
780e67:	33 54 24 14          	xor    0x14(%esp),%edx
780e6b:	03 54 24 1c          	add    0x1c(%esp),%edx
780e6f:	03 54 24 24          	add    0x24(%esp),%edx
780e73:	03 10                	add    (%eax),%edx
780e75:	d3 c2                	rol    %cl,%edx
780e77:	03 54 24 18          	add    0x18(%esp),%edx
780e7b:	89 10                	mov    %edx,(%eax)
780e7d:	8b 06                	mov    (%esi),%eax
780e7f:	c1 c0 0a             	rol    $0xa,%eax
780e82:	89 06                	mov    %eax,(%esi)
780e84:	5e                   	pop    %esi
780e85:	c3                   	ret
780e86:	cc                   	int3
780e87:	cc                   	int3
780e88:	cc                   	int3
780e89:	cc                   	int3
780e8a:	cc                   	int3
780e8b:	cc                   	int3
780e8c:	cc                   	int3
780e8d:	cc                   	int3
780e8e:	cc                   	int3
780e8f:	cc                   	int3
780e90:	cc                   	int3
780e91:	cc                   	int3
780e92:	cc                   	int3
780e93:	cc                   	int3
780e94:	cc                   	int3
780e95:	cc                   	int3
780e96:	cc                   	int3
780e97:	cc                   	int3
780e98:	cc                   	int3
780e99:	cc                   	int3
780e9a:	cc                   	int3
780e9b:	cc                   	int3
780e9c:	cc                   	int3
780e9d:	cc                   	int3
780e9e:	cc                   	int3
780e9f:	cc                   	int3
780ea0:	8b 44 24 04          	mov    0x4(%esp),%eax
780ea4:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
780ea8:	56                   	push   %esi
780ea9:	8b 74 24 10          	mov    0x10(%esp),%esi
780ead:	8b 16                	mov    (%esi),%edx
780eaf:	f7 d2                	not    %edx
780eb1:	0b 54 24 0c          	or     0xc(%esp),%edx
780eb5:	33 54 24 14          	xor    0x14(%esp),%edx
780eb9:	03 54 24 1c          	add    0x1c(%esp),%edx
780ebd:	03 54 24 24          	add    0x24(%esp),%edx
780ec1:	03 10                	add    (%eax),%edx
780ec3:	d3 c2                	rol    %cl,%edx
780ec5:	03 54 24 18          	add    0x18(%esp),%edx
780ec9:	89 10                	mov    %edx,(%eax)
780ecb:	8b 06                	mov    (%esi),%eax
780ecd:	c1 c0 0a             	rol    $0xa,%eax
780ed0:	89 06                	mov    %eax,(%esi)
780ed2:	5e                   	pop    %esi
780ed3:	c3                   	ret
780ed4:	cc                   	int3
780ed5:	cc                   	int3
780ed6:	cc                   	int3
780ed7:	cc                   	int3
780ed8:	cc                   	int3
780ed9:	cc                   	int3
780eda:	cc                   	int3
780edb:	cc                   	int3
780edc:	cc                   	int3
780edd:	cc                   	int3
780ede:	cc                   	int3
780edf:	cc                   	int3
780ee0:	cc                   	int3
780ee1:	cc                   	int3
780ee2:	cc                   	int3
780ee3:	cc                   	int3
780ee4:	cc                   	int3
780ee5:	cc                   	int3
780ee6:	cc                   	int3
780ee7:	cc                   	int3
780ee8:	cc                   	int3
780ee9:	cc                   	int3
780eea:	cc                   	int3
780eeb:	cc                   	int3
780eec:	cc                   	int3
780eed:	cc                   	int3
780eee:	cc                   	int3
780eef:	cc                   	int3
780ef0:	8b 44 24 04          	mov    0x4(%esp),%eax
780ef4:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
780ef8:	56                   	push   %esi
780ef9:	8b 74 24 10          	mov    0x10(%esp),%esi
780efd:	8b 16                	mov    (%esi),%edx
780eff:	33 54 24 0c          	xor    0xc(%esp),%edx
780f03:	23 54 24 14          	and    0x14(%esp),%edx
780f07:	33 16                	xor    (%esi),%edx
780f09:	03 54 24 1c          	add    0x1c(%esp),%edx
780f0d:	03 54 24 24          	add    0x24(%esp),%edx
780f11:	03 10                	add    (%eax),%edx
780f13:	d3 c2                	rol    %cl,%edx
780f15:	03 54 24 18          	add    0x18(%esp),%edx
780f19:	89 10                	mov    %edx,(%eax)
780f1b:	8b 06                	mov    (%esi),%eax
780f1d:	c1 c0 0a             	rol    $0xa,%eax
780f20:	89 06                	mov    %eax,(%esi)
780f22:	5e                   	pop    %esi
780f23:	c3                   	ret
780f24:	cc                   	int3
780f25:	cc                   	int3
780f26:	cc                   	int3
780f27:	cc                   	int3
780f28:	cc                   	int3
780f29:	cc                   	int3
780f2a:	cc                   	int3
780f2b:	cc                   	int3
780f2c:	cc                   	int3
780f2d:	cc                   	int3
780f2e:	cc                   	int3
780f2f:	cc                   	int3
780f30:	cc                   	int3
780f31:	cc                   	int3
780f32:	cc                   	int3
780f33:	cc                   	int3
780f34:	cc                   	int3
780f35:	cc                   	int3
780f36:	cc                   	int3
780f37:	cc                   	int3
780f38:	cc                   	int3
780f39:	cc                   	int3
780f3a:	cc                   	int3
780f3b:	cc                   	int3
780f3c:	cc                   	int3
780f3d:	cc                   	int3
780f3e:	cc                   	int3
780f3f:	cc                   	int3
780f40:	8b 54 24 10          	mov    0x10(%esp),%edx
780f44:	8b 44 24 04          	mov    0x4(%esp),%eax
780f48:	f7 d2                	not    %edx
780f4a:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
780f4e:	56                   	push   %esi
780f4f:	8b 74 24 10          	mov    0x10(%esp),%esi
780f53:	0b 16                	or     (%esi),%edx
780f55:	33 54 24 0c          	xor    0xc(%esp),%edx
780f59:	03 54 24 1c          	add    0x1c(%esp),%edx
780f5d:	03 54 24 24          	add    0x24(%esp),%edx
780f61:	03 10                	add    (%eax),%edx
780f63:	d3 c2                	rol    %cl,%edx
780f65:	03 54 24 18          	add    0x18(%esp),%edx
780f69:	89 10                	mov    %edx,(%eax)
780f6b:	8b 06                	mov    (%esi),%eax
780f6d:	c1 c0 0a             	rol    $0xa,%eax
780f70:	89 06                	mov    %eax,(%esi)
780f72:	5e                   	pop    %esi
780f73:	c3                   	ret
780f74:	cc                   	int3
780f75:	cc                   	int3
780f76:	cc                   	int3
780f77:	cc                   	int3
780f78:	cc                   	int3
780f79:	cc                   	int3
780f7a:	cc                   	int3
780f7b:	cc                   	int3
780f7c:	cc                   	int3
780f7d:	cc                   	int3
780f7e:	cc                   	int3
780f7f:	cc                   	int3
780f80:	cc                   	int3
780f81:	cc                   	int3
780f82:	cc                   	int3
780f83:	cc                   	int3
780f84:	cc                   	int3
780f85:	cc                   	int3
780f86:	cc                   	int3
780f87:	cc                   	int3
780f88:	cc                   	int3
780f89:	cc                   	int3
780f8a:	cc                   	int3
780f8b:	cc                   	int3
780f8c:	cc                   	int3
780f8d:	cc                   	int3
780f8e:	cc                   	int3
780f8f:	cc                   	int3
780f90:	56                   	push   %esi
780f91:	8b f1                	mov    %ecx,%esi
780f93:	e8 2b ce c8 ff       	call   0x40ddc3
780f98:	8b 46 40             	mov    0x40(%esi),%eax
780f9b:	85 c0                	test   %eax,%eax
780f9d:	74 11                	je     0x780fb0
780f9f:	c1 e0 02             	shl    $0x2,%eax
780fa2:	50                   	push   %eax
780fa3:	6a 00                	push   $0x0
780fa5:	ff 76 38             	push   0x38(%esi)
780fa8:	e8 0b 38 c9 ff       	call   0x4147b8
780fad:	83 c4 0c             	add    $0xc,%esp
780fb0:	8b 46 48             	mov    0x48(%esi),%eax
780fb3:	c7 00 01 23 45 67    	movl   $0x67452301,(%eax)
780fb9:	8b 46 48             	mov    0x48(%esi),%eax
780fbc:	c7 40 04 89 ab cd ef 	movl   $0xefcdab89,0x4(%eax)
780fc3:	8b 46 48             	mov    0x48(%esi),%eax
780fc6:	c7 40 08 fe dc ba 98 	movl   $0x98badcfe,0x8(%eax)
780fcd:	8b 46 48             	mov    0x48(%esi),%eax
780fd0:	c7 40 0c 76 54 32 10 	movl   $0x10325476,0xc(%eax)
780fd7:	8b 46 48             	mov    0x48(%esi),%eax
780fda:	5e                   	pop    %esi
780fdb:	c7 40 10 f0 e1 d2 c3 	movl   $0xc3d2e1f0,0x10(%eax)
780fe2:	c3                   	ret
780fe3:	cc                   	int3
780fe4:	cc                   	int3
780fe5:	cc                   	int3
780fe6:	cc                   	int3
780fe7:	cc                   	int3
780fe8:	cc                   	int3
780fe9:	cc                   	int3
780fea:	cc                   	int3
780feb:	cc                   	int3
780fec:	cc                   	int3
780fed:	cc                   	int3
780fee:	cc                   	int3
780fef:	cc                   	int3
780ff0:	cc                   	int3
780ff1:	cc                   	int3
780ff2:	cc                   	int3
780ff3:	cc                   	int3
780ff4:	cc                   	int3
780ff5:	cc                   	int3
780ff6:	cc                   	int3
780ff7:	cc                   	int3
780ff8:	cc                   	int3
780ff9:	cc                   	int3
780ffa:	cc                   	int3
780ffb:	cc                   	int3
780ffc:	cc                   	int3
780ffd:	cc                   	int3
780ffe:	cc                   	int3
780fff:	cc                   	int3
781000:	83 ec 68             	sub    $0x68,%esp
781003:	83 7c 24 70 00       	cmpl   $0x0,0x70(%esp)
781008:	55                   	push   %ebp
781009:	8b e9                	mov    %ecx,%ebp
78100b:	89 6c 24 04          	mov    %ebp,0x4(%esp)
78100f:	0f 84 28 19 00 00    	je     0x78293d
781015:	53                   	push   %ebx
781016:	56                   	push   %esi
781017:	57                   	push   %edi
781018:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
78101f:	00
781020:	8b 5c 24 7c          	mov    0x7c(%esp),%ebx
781024:	33 c0                	xor    %eax,%eax
781026:	8b 55 38             	mov    0x38(%ebp),%edx
781029:	8b 0c 18             	mov    (%eax,%ebx,1),%ecx
78102c:	89 0c 10             	mov    %ecx,(%eax,%edx,1)
78102f:	83 c0 04             	add    $0x4,%eax
781032:	83 f8 40             	cmp    $0x40,%eax
781035:	75 ef                	jne    0x781026
781037:	8b 45 48             	mov    0x48(%ebp),%eax
78103a:	03 5d 08             	add    0x8(%ebp),%ebx
78103d:	89 44 24 60          	mov    %eax,0x60(%esp)
781041:	89 5c 24 7c          	mov    %ebx,0x7c(%esp)
781045:	8b 70 08             	mov    0x8(%eax),%esi
781048:	8b 50 10             	mov    0x10(%eax),%edx
78104b:	8b 08                	mov    (%eax),%ecx
78104d:	8b 68 0c             	mov    0xc(%eax),%ebp
781050:	8b fd                	mov    %ebp,%edi
781052:	8b 44 24 10          	mov    0x10(%esp),%eax
781056:	33 fe                	xor    %esi,%edi
781058:	8b 40 38             	mov    0x38(%eax),%eax
78105b:	8b 18                	mov    (%eax),%ebx
78105d:	89 5c 24 54          	mov    %ebx,0x54(%esp)
781061:	8b 5c 24 60          	mov    0x60(%esp),%ebx
781065:	33 7b 04             	xor    0x4(%ebx),%edi
781068:	8b de                	mov    %esi,%ebx
78106a:	03 38                	add    (%eax),%edi
78106c:	8b 70 14             	mov    0x14(%eax),%esi
78106f:	03 f9                	add    %ecx,%edi
781071:	c1 c7 0b             	rol    $0xb,%edi
781074:	8b c5                	mov    %ebp,%eax
781076:	f7 d0                	not    %eax
781078:	89 74 24 4c          	mov    %esi,0x4c(%esp)
78107c:	03 fa                	add    %edx,%edi
78107e:	c1 c3 0a             	rol    $0xa,%ebx
781081:	89 7c 24 64          	mov    %edi,0x64(%esp)
781085:	81 c6 e6 8b a2 50    	add    $0x50a28be6,%esi
78108b:	8b 7c 24 60          	mov    0x60(%esp),%edi
78108f:	0b 47 08             	or     0x8(%edi),%eax
781092:	33 47 04             	xor    0x4(%edi),%eax
781095:	03 c6                	add    %esi,%eax