54df61:	33 6c 24 3c          	xor    0x3c(%esp),%ebp
54df65:	c1 c0 0e             	rol    $0xe,%eax
54df68:	0b c8                	or     %eax,%ecx
54df6a:	c1 c2 0e             	rol    $0xe,%edx
54df6d:	8b 46 48             	mov    0x48(%esi),%eax
54df70:	33 44 24 44          	xor    0x44(%esp),%eax
54df74:	c1 c0 0a             	rol    $0xa,%eax
54df77:	89 4c 24 48          	mov    %ecx,0x48(%esp)
54df7b:	33 c9                	xor    %ecx,%ecx
54df7d:	0b c8                	or     %eax,%ecx
54df7f:	89 54 24 2c          	mov    %edx,0x2c(%esp)
54df83:	8b 46 54             	mov    0x54(%esi),%eax
54df86:	33 44 24 38          	xor    0x38(%esp),%eax
54df8a:	8b 56 4c             	mov    0x4c(%esi),%edx
54df8d:	33 54 24 20          	xor    0x20(%esp),%edx
54df91:	c1 c0 02             	rol    $0x2,%eax
54df94:	89 4c 24 34          	mov    %ecx,0x34(%esp)
54df98:	0b d8                	or     %eax,%ebx
54df9a:	8b 4e 50             	mov    0x50(%esi),%ecx
54df9d:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
54dfa3:	33 4c 24 14          	xor    0x14(%esp),%ecx
54dfa7:	33 44 24 40          	xor    0x40(%esp),%eax
54dfab:	c1 c2 0a             	rol    $0xa,%edx
54dfae:	d1 c1                	rol    $1,%ecx
54dfb0:	c1 cd 0a             	ror    $0xa,%ebp
54dfb3:	c1 c8 09             	ror    $0x9,%eax
54dfb6:	33 f6                	xor    %esi,%esi
54dfb8:	89 54 24 30          	mov    %edx,0x30(%esp)
54dfbc:	89 4c 24 60          	mov    %ecx,0x60(%esp)
54dfc0:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
54dfc4:	0b f0                	or     %eax,%esi
54dfc6:	8b 7c 24 18          	mov    0x18(%esp),%edi
54dfca:	33 d2                	xor    %edx,%edx
54dfcc:	8b 44 24 10          	mov    0x10(%esp),%eax
54dfd0:	89 6c 24 4c          	mov    %ebp,0x4c(%esp)
54dfd4:	33 81 b4 00 00 00    	xor    0xb4(%ecx),%eax
54dfda:	33 b9 b0 00 00 00    	xor    0xb0(%ecx),%edi
54dfe0:	8b cb                	mov    %ebx,%ecx
54dfe2:	0b 4c 24 34          	or     0x34(%esp),%ecx
54dfe6:	33 4c 24 48          	xor    0x48(%esp),%ecx
54dfea:	8b 6c 24 58          	mov    0x58(%esp),%ebp
54dfee:	d1 c8                	ror    $1,%eax
54dff0:	0b d0                	or     %eax,%edx
54dff2:	c1 cf 02             	ror    $0x2,%edi
54dff5:	8b 44 24 60          	mov    0x60(%esp),%eax
54dff9:	0b 44 24 30          	or     0x30(%esp),%eax
54dffd:	33 44 24 2c          	xor    0x2c(%esp),%eax
54e001:	89 4d 28             	mov    %ecx,0x28(%ebp)
54e004:	8b cd                	mov    %ebp,%ecx
54e006:	89 41 2c             	mov    %eax,0x2c(%ecx)
54e009:	8b ce                	mov    %esi,%ecx
54e00b:	8b 44 24 4c          	mov    0x4c(%esp),%eax
54e00f:	23 cb                	and    %ebx,%ecx
54e011:	33 4c 24 34          	xor    0x34(%esp),%ecx
54e015:	23 44 24 60          	and    0x60(%esp),%eax
54e019:	33 44 24 30          	xor    0x30(%esp),%eax
54e01d:	89 4d 30             	mov    %ecx,0x30(%ebp)
54e020:	8b cd                	mov    %ebp,%ecx
54e022:	89 41 34             	mov    %eax,0x34(%ecx)
54e025:	8b ca                	mov    %edx,%ecx
54e027:	f7 d1                	not    %ecx
54e029:	8b c7                	mov    %edi,%eax
54e02b:	0b ce                	or     %esi,%ecx
54e02d:	f7 d0                	not    %eax
54e02f:	0b 44 24 4c          	or     0x4c(%esp),%eax
54e033:	33 cb                	xor    %ebx,%ecx
54e035:	33 44 24 60          	xor    0x60(%esp),%eax
54e039:	8b dd                	mov    %ebp,%ebx
54e03b:	89 4b 38             	mov    %ecx,0x38(%ebx)
54e03e:	8b ca                	mov    %edx,%ecx
54e040:	0b 4c 24 48          	or     0x48(%esp),%ecx
54e044:	89 43 3c             	mov    %eax,0x3c(%ebx)
54e047:	33 ce                	xor    %esi,%ecx
54e049:	8b f3                	mov    %ebx,%esi
54e04b:	8b c7                	mov    %edi,%eax
54e04d:	0b 44 24 2c          	or     0x2c(%esp),%eax
54e051:	33 44 24 4c          	xor    0x4c(%esp),%eax
54e055:	89 4e 40             	mov    %ecx,0x40(%esi)
54e058:	8b 4c 24 30          	mov    0x30(%esp),%ecx
54e05c:	23 4c 24 2c          	and    0x2c(%esp),%ecx
54e060:	89 46 44             	mov    %eax,0x44(%esi)
54e063:	33 cf                	xor    %edi,%ecx
54e065:	8b 44 24 34          	mov    0x34(%esp),%eax
54e069:	23 44 24 48          	and    0x48(%esp),%eax
54e06d:	8b 7c 24 5c          	mov    0x5c(%esp),%edi
54e071:	33 c2                	xor    %edx,%eax
54e073:	8b 54 24 3c          	mov    0x3c(%esp),%edx
54e077:	89 46 48             	mov    %eax,0x48(%esi)
54e07a:	8b 44 24 40          	mov    0x40(%esp),%eax
54e07e:	89 4e 4c             	mov    %ecx,0x4c(%esi)
54e081:	33 c9                	xor    %ecx,%ecx
54e083:	33 47 0c             	xor    0xc(%edi),%eax
54e086:	33 57 08             	xor    0x8(%edi),%edx
54e089:	d1 c0                	rol    $1,%eax
54e08b:	0b c8                	or     %eax,%ecx
54e08d:	89 54 24 2c          	mov    %edx,0x2c(%esp)
54e091:	8b 44 24 18          	mov    0x18(%esp),%eax
54e095:	33 47 38             	xor    0x38(%edi),%eax
54e098:	8b 54 24 10          	mov    0x10(%esp),%edx
54e09c:	33 57 3c             	xor    0x3c(%edi),%edx
54e09f:	89 4c 24 48          	mov    %ecx,0x48(%esp)
54e0a3:	33 c9                	xor    %ecx,%ecx
54e0a5:	c1 c0 03             	rol    $0x3,%eax
54e0a8:	0b c8                	or     %eax,%ecx
54e0aa:	c1 c2 03             	rol    $0x3,%edx
54e0ad:	8b 47 6c             	mov    0x6c(%edi),%eax
54e0b0:	89 4c 24 34          	mov    %ecx,0x34(%esp)
54e0b4:	8b 4f 68             	mov    0x68(%edi),%ecx
54e0b7:	33 4c 24 24          	xor    0x24(%esp),%ecx
54e0bb:	89 54 24 30          	mov    %edx,0x30(%esp)
54e0bf:	33 44 24 1c          	xor    0x1c(%esp),%eax
54e0c3:	33 db                	xor    %ebx,%ebx
54e0c5:	c1 c0 0d             	rol    $0xd,%eax
54e0c8:	33 f6                	xor    %esi,%esi
54e0ca:	0b d8                	or     %eax,%ebx
54e0cc:	8b 6c 24 20          	mov    0x20(%esp),%ebp
54e0d0:	33 af 9c 00 00 00    	xor    0x9c(%edi),%ebp
54e0d6:	33 d2                	xor    %edx,%edx
54e0d8:	8b 44 24 44          	mov    0x44(%esp),%eax
54e0dc:	33 87 98 00 00 00    	xor    0x98(%edi),%eax
54e0e2:	c1 c0 04             	rol    $0x4,%eax
54e0e5:	0b f0                	or     %eax,%esi
54e0e7:	c1 c1 0c             	rol    $0xc,%ecx
54e0ea:	8b 44 24 14          	mov    0x14(%esp),%eax
54e0ee:	33 87 a0 00 00 00    	xor    0xa0(%edi),%eax
54e0f4:	8b 7c 24 38          	mov    0x38(%esp),%edi
54e0f8:	89 4c 24 60          	mov    %ecx,0x60(%esp)
54e0fc:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
54e100:	c1 c0 09             	rol    $0x9,%eax
54e103:	0b d0                	or     %eax,%edx
54e105:	c1 c5 04             	rol    $0x4,%ebp
54e108:	8b 44 24 60          	mov    0x60(%esp),%eax
54e10c:	33 b9 a4 00 00 00    	xor    0xa4(%ecx),%edi
54e112:	8b cb                	mov    %ebx,%ecx
54e114:	0b 4c 24 34          	or     0x34(%esp),%ecx
54e118:	33 4c 24 48          	xor    0x48(%esp),%ecx
54e11c:	0b 44 24 30          	or     0x30(%esp),%eax
54e120:	33 44 24 2c          	xor    0x2c(%esp),%eax
54e124:	89 6c 24 4c          	mov    %ebp,0x4c(%esp)
54e128:	8b 6c 24 58          	mov    0x58(%esp),%ebp
54e12c:	c1 c7 09             	rol    $0x9,%edi
54e12f:	89 4d 50             	mov    %ecx,0x50(%ebp)
54e132:	8b cd                	mov    %ebp,%ecx
54e134:	89 41 54             	mov    %eax,0x54(%ecx)
54e137:	8b ce                	mov    %esi,%ecx
54e139:	8b 44 24 4c          	mov    0x4c(%esp),%eax
54e13d:	23 cb                	and    %ebx,%ecx
54e13f:	33 4c 24 34          	xor    0x34(%esp),%ecx
54e143:	f7 d6                	not    %esi
54e145:	23 44 24 60          	and    0x60(%esp),%eax
54e149:	33 44 24 30          	xor    0x30(%esp),%eax
54e14d:	89 4d 58             	mov    %ecx,0x58(%ebp)
54e150:	8b cd                	mov    %ebp,%ecx
54e152:	8b 6c 24 4c          	mov    0x4c(%esp),%ebp
54e156:	f7 d5                	not    %ebp
54e158:	89 41 5c             	mov    %eax,0x5c(%ecx)
54e15b:	8b ca                	mov    %edx,%ecx
54e15d:	23 ce                	and    %esi,%ecx
54e15f:	8b c7                	mov    %edi,%eax
54e161:	33 cb                	xor    %ebx,%ecx
54e163:	23 c5                	and    %ebp,%eax
54e165:	8b 5c 24 58          	mov    0x58(%esp),%ebx
54e169:	33 44 24 60          	xor    0x60(%esp),%eax
54e16d:	89 4b 60             	mov    %ecx,0x60(%ebx)
54e170:	8b ca                	mov    %edx,%ecx
54e172:	0b 4c 24 48          	or     0x48(%esp),%ecx
54e176:	89 43 64             	mov    %eax,0x64(%ebx)
54e179:	33 ce                	xor    %esi,%ecx
54e17b:	8b f3                	mov    %ebx,%esi
54e17d:	8b c7                	mov    %edi,%eax
54e17f:	0b 44 24 2c          	or     0x2c(%esp),%eax
54e183:	33 c5                	xor    %ebp,%eax
54e185:	89 4e 68             	mov    %ecx,0x68(%esi)
54e188:	8b 4c 24 30          	mov    0x30(%esp),%ecx
54e18c:	23 4c 24 2c          	and    0x2c(%esp),%ecx
54e190:	89 46 6c             	mov    %eax,0x6c(%esi)
54e193:	33 cf                	xor    %edi,%ecx
54e195:	8b 44 24 34          	mov    0x34(%esp),%eax
54e199:	23 44 24 48          	and    0x48(%esp),%eax
54e19d:	8b 7c 24 5c          	mov    0x5c(%esp),%edi
54e1a1:	33 c2                	xor    %edx,%eax
54e1a3:	89 46 70             	mov    %eax,0x70(%esi)
54e1a6:	89 4e 74             	mov    %ecx,0x74(%esi)
54e1a9:	33 c9                	xor    %ecx,%ecx
54e1ab:	8b 47 24             	mov    0x24(%edi),%eax
54e1ae:	8b 57 20             	mov    0x20(%edi),%edx
54e1b1:	33 44 24 20          	xor    0x20(%esp),%eax
54e1b5:	33 54 24 44          	xor    0x44(%esp),%edx
54e1b9:	c1 c0 0e             	rol    $0xe,%eax
54e1bc:	c1 c2 0d             	rol    $0xd,%edx
54e1bf:	0b c8                	or     %eax,%ecx
54e1c1:	8b 47 28             	mov    0x28(%edi),%eax
54e1c4:	33 db                	xor    %ebx,%ebx
54e1c6:	33 44 24 14          	xor    0x14(%esp),%eax
54e1ca:	33 f6                	xor    %esi,%esi
54e1cc:	8b af 88 00 00 00    	mov    0x88(%edi),%ebp
54e1d2:	c1 c8 0e             	ror    $0xe,%eax
54e1d5:	89 4c 24 48          	mov    %ecx,0x48(%esp)
54e1d9:	33 c9                	xor    %ecx,%ecx
54e1db:	0b c8                	or     %eax,%ecx
54e1dd:	33 6c 24 18          	xor    0x18(%esp),%ebp
54e1e1:	8b 44 24 3c          	mov    0x3c(%esp),%eax
54e1e5:	33 47 58             	xor    0x58(%edi),%eax
54e1e8:	c1 c0 05             	rol    $0x5,%eax
54e1eb:	0b d8                	or     %eax,%ebx
54e1ed:	89 4c 24 34          	mov    %ecx,0x34(%esp)
54e1f1:	8b 87 8c 00 00 00    	mov    0x8c(%edi),%eax
54e1f7:	33 44 24 10          	xor    0x10(%esp),%eax
54e1fb:	8b 4c 24 40          	mov    0x40(%esp),%ecx
54e1ff:	33 4f 5c             	xor    0x5c(%edi),%ecx
54e202:	c1 c0 08             	rol    $0x8,%eax
54e205:	0b f0                	or     %eax,%esi
54e207:	c1 c1 05             	rol    $0x5,%ecx
54e20a:	8b 44 24 24          	mov    0x24(%esp),%eax
54e20e:	33 87 b8 00 00 00    	xor    0xb8(%edi),%eax
54e214:	89 4c 24 60          	mov    %ecx,0x60(%esp)
54e218:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
54e21c:	89 54 24 2c          	mov    %edx,0x2c(%esp)
54e220:	8b 57 2c             	mov    0x2c(%edi),%edx
54e223:	33 54 24 38          	xor    0x38(%esp),%edx
54e227:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
54e22b:	33 b9 bc 00 00 00    	xor    0xbc(%ecx),%edi
54e231:	8b cb                	mov    %ebx,%ecx
54e233:	23 4c 24 34          	and    0x34(%esp),%ecx
54e237:	33 4c 24 48          	xor    0x48(%esp),%ecx
54e23b:	c1 c8 04             	ror    $0x4,%eax
54e23e:	c1 c5 07             	rol    $0x7,%ebp
54e241:	c1 ca 0e             	ror    $0xe,%edx
54e244:	89 6c 24 4c          	mov    %ebp,0x4c(%esp)
54e248:	8b 6c 24 58          	mov    0x58(%esp),%ebp
54e24c:	89 54 24 30          	mov    %edx,0x30(%esp)
54e250:	33 d2                	xor    %edx,%edx
54e252:	0b d0                	or     %eax,%edx
54e254:	c1 cf 04             	ror    $0x4,%edi
54e257:	8b 44 24 60          	mov    0x60(%esp),%eax
54e25b:	23 44 24 30          	and    0x30(%esp),%eax
54e25f:	33 44 24 2c          	xor    0x2c(%esp),%eax
54e263:	89 4d 78             	mov    %ecx,0x78(%ebp)
54e266:	8b cd                	mov    %ebp,%ecx
54e268:	89 41 7c             	mov    %eax,0x7c(%ecx)
54e26b:	8b ce                	mov    %esi,%ecx
54e26d:	8b 44 24 4c          	mov    0x4c(%esp),%eax
54e271:	0b cb                	or     %ebx,%ecx
54e273:	33 4c 24 34          	xor    0x34(%esp),%ecx
54e277:	f7 d6                	not    %esi
54e279:	0b 44 24 60          	or     0x60(%esp),%eax
54e27d:	33 44 24 30          	xor    0x30(%esp),%eax
54e281:	89 8d 80 00 00 00    	mov    %ecx,0x80(%ebp)
54e287:	8b cd                	mov    %ebp,%ecx
54e289:	8b 6c 24 4c          	mov    0x4c(%esp),%ebp
54e28d:	f7 d5                	not    %ebp
54e28f:	89 81 84 00 00 00    	mov    %eax,0x84(%ecx)
54e295:	8b ca                	mov    %edx,%ecx
54e297:	0b ce                	or     %esi,%ecx
54e299:	8b c7                	mov    %edi,%eax
54e29b:	33 cb                	xor    %ebx,%ecx
54e29d:	0b c5                	or     %ebp,%eax
54e29f:	8b 5c 24 58          	mov    0x58(%esp),%ebx
54e2a3:	33 44 24 60          	xor    0x60(%esp),%eax
54e2a7:	89 8b 88 00 00 00    	mov    %ecx,0x88(%ebx)
54e2ad:	8b ca                	mov    %edx,%ecx
54e2af:	23 4c 24 48          	and    0x48(%esp),%ecx
54e2b3:	89 83 8c 00 00 00    	mov    %eax,0x8c(%ebx)
54e2b9:	33 ce                	xor    %esi,%ecx
54e2bb:	8b c7                	mov    %edi,%eax
54e2bd:	8b f3                	mov    %ebx,%esi
54e2bf:	23 44 24 2c          	and    0x2c(%esp),%eax
54e2c3:	33 c5                	xor    %ebp,%eax
54e2c5:	89 86 94 00 00 00    	mov    %eax,0x94(%esi)
54e2cb:	8b 44 24 34          	mov    0x34(%esp),%eax
54e2cf:	0b 44 24 48          	or     0x48(%esp),%eax
54e2d3:	89 8e 90 00 00 00    	mov    %ecx,0x90(%esi)
54e2d9:	8b 6c 24 5c          	mov    0x5c(%esp),%ebp
54e2dd:	33 c2                	xor    %edx,%eax
54e2df:	8b 4c 24 30          	mov    0x30(%esp),%ecx
54e2e3:	33 db                	xor    %ebx,%ebx
54e2e5:	0b 4c 24 2c          	or     0x2c(%esp),%ecx
54e2e9:	89 86 98 00 00 00    	mov    %eax,0x98(%esi)
54e2ef:	33 cf                	xor    %edi,%ecx
54e2f1:	89 8e 9c 00 00 00    	mov    %ecx,0x9c(%esi)
54e2f7:	33 c0                	xor    %eax,%eax
54e2f9:	8b 4c 24 18          	mov    0x18(%esp),%ecx
54e2fd:	33 f6                	xor    %esi,%esi
54e2ff:	33 4d 10             	xor    0x10(%ebp),%ecx
54e302:	33 ff                	xor    %edi,%edi
54e304:	8b 54 24 10          	mov    0x10(%esp),%edx
54e308:	33 55 14             	xor    0x14(%ebp),%edx
54e30b:	d1 c9                	ror    $1,%ecx
54e30d:	0b c1                	or     %ecx,%eax
54e30f:	d1 ca                	ror    $1,%edx
54e311:	8b 4d 40             	mov    0x40(%ebp),%ecx
54e314:	33 4c 24 24          	xor    0x24(%esp),%ecx
54e318:	89 44 24 4c          	mov    %eax,0x4c(%esp)
54e31c:	8b 45 44             	mov    0x44(%ebp),%eax
54e31f:	33 44 24 1c          	xor    0x1c(%esp),%eax
54e323:	c1 c8 04             	ror    $0x4,%eax
54e326:	0b f0                	or     %eax,%esi
54e328:	c1 c9 05             	ror    $0x5,%ecx
54e32b:	8b 45 74             	mov    0x74(%ebp),%eax
54e32e:	33 44 24 20          	xor    0x20(%esp),%eax
54e332:	89 4c 24 48          	mov    %ecx,0x48(%esp)
54e336:	33 c9                	xor    %ecx,%ecx
54e338:	c1 c8 0c             	ror    $0xc,%eax
54e33b:	0b c8                	or     %eax,%ecx
54e33d:	89 54 24 10          	mov    %edx,0x10(%esp)
54e341:	8b 55 70             	mov    0x70(%ebp),%edx
54e344:	8b 44 24 38          	mov    0x38(%esp),%eax
54e348:	33 45 7c             	xor    0x7c(%ebp),%eax
54e34b:	33 54 24 44          	xor    0x44(%esp),%edx
54e34f:	89 4c 24 5c          	mov    %ecx,0x5c(%esp)
54e353:	8b 4c 24 14          	mov    0x14(%esp),%ecx
54e357:	33 4d 78             	xor    0x78(%ebp),%ecx
54e35a:	c1 c8 0b             	ror    $0xb,%eax
54e35d:	0b d8                	or     %eax,%ebx
54e35f:	c1 c9 0c             	ror    $0xc,%ecx
54e362:	8b 85 a8 00 00 00    	mov    0xa8(%ebp),%eax
54e368:	33 44 24 3c          	xor    0x3c(%esp),%eax
54e36c:	8b ad ac 00 00 00    	mov    0xac(%ebp),%ebp
54e372:	33 6c 24 40          	xor    0x40(%esp),%ebp
54e376:	89 4c 24 14          	mov    %ecx,0x14(%esp)
54e37a:	d1 c0                	rol    $1,%eax
54e37c:	89 74 24 34          	mov    %esi,0x34(%esp)
54e380:	0b f8                	or     %eax,%edi
54e382:	c1 ca 0d             	ror    $0xd,%edx
54e385:	f7 d6                	not    %esi
54e387:	89 54 24 60          	mov    %edx,0x60(%esp)
54e38b:	8b ce                	mov    %esi,%ecx
54e38d:	23 4c 24 5c          	and    0x5c(%esp),%ecx
54e391:	33 4c 24 4c          	xor    0x4c(%esp),%ecx
54e395:	8b 54 24 48          	mov    0x48(%esp),%edx
54e399:	89 5c 24 44          	mov    %ebx,0x44(%esp)
54e39d:	f7 d2                	not    %edx
54e39f:	8b 5c 24 58          	mov    0x58(%esp),%ebx
54e3a3:	8b c2                	mov    %edx,%eax
54e3a5:	23 44 24 60          	and    0x60(%esp),%eax
54e3a9:	33 44 24 10          	xor    0x10(%esp),%eax
54e3ad:	d1 c5                	rol    $1,%ebp
54e3af:	89 8b a0 00 00 00    	mov    %ecx,0xa0(%ebx)
54e3b5:	8b cb                	mov    %ebx,%ecx
54e3b7:	8b 5c 24 44          	mov    0x44(%esp),%ebx
54e3bb:	89 81 a4 00 00 00    	mov    %eax,0xa4(%ecx)
54e3c1:	8b cb                	mov    %ebx,%ecx
54e3c3:	0b 4c 24 5c          	or     0x5c(%esp),%ecx
54e3c7:	8b 44 24 14          	mov    0x14(%esp),%eax
54e3cb:	33 ce                	xor    %esi,%ecx
54e3cd:	8b 74 24 58          	mov    0x58(%esp),%esi
54e3d1:	0b 44 24 60          	or     0x60(%esp),%eax
54e3d5:	33 c2                	xor    %edx,%eax
54e3d7:	89 8e a8 00 00 00    	mov    %ecx,0xa8(%esi)
54e3dd:	8b cf                	mov    %edi,%ecx