52ddbe:	cc                   	int3
52ddbf:	cc                   	int3
52ddc0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
52ddc4:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
52ddc9:	2b 4c 24 04          	sub    0x4(%esp),%ecx
52ddcd:	f7 e9                	imul   %ecx
52ddcf:	c1 fa 02             	sar    $0x2,%edx
52ddd2:	8b c2                	mov    %edx,%eax
52ddd4:	c1 e8 1f             	shr    $0x1f,%eax
52ddd7:	03 c2                	add    %edx,%eax
52ddd9:	c3                   	ret
52ddda:	cc                   	int3
52dddb:	cc                   	int3
52dddc:	cc                   	int3
52dddd:	cc                   	int3
52ddde:	cc                   	int3
52dddf:	cc                   	int3
52dde0:	32 c0                	xor    %al,%al
52dde2:	c3                   	ret
52dde3:	cc                   	int3
52dde4:	cc                   	int3
52dde5:	cc                   	int3
52dde6:	cc                   	int3
52dde7:	cc                   	int3
52dde8:	cc                   	int3
52dde9:	cc                   	int3
52ddea:	cc                   	int3
52ddeb:	cc                   	int3
52ddec:	cc                   	int3
52dded:	cc                   	int3
52ddee:	cc                   	int3
52ddef:	cc                   	int3
52ddf0:	32 c0                	xor    %al,%al
52ddf2:	c3                   	ret
52ddf3:	cc                   	int3
52ddf4:	cc                   	int3
52ddf5:	cc                   	int3
52ddf6:	cc                   	int3
52ddf7:	cc                   	int3
52ddf8:	cc                   	int3
52ddf9:	cc                   	int3
52ddfa:	cc                   	int3
52ddfb:	cc                   	int3
52ddfc:	cc                   	int3
52ddfd:	cc                   	int3
52ddfe:	cc                   	int3
52ddff:	cc                   	int3
52de00:	8b 44 24 04          	mov    0x4(%esp),%eax
52de04:	33 d2                	xor    %edx,%edx
52de06:	56                   	push   %esi
52de07:	8b 74 24 0c          	mov    0xc(%esp),%esi
52de0b:	2b f0                	sub    %eax,%esi
52de0d:	83 c6 03             	add    $0x3,%esi
52de10:	c1 ee 02             	shr    $0x2,%esi
52de13:	57                   	push   %edi
52de14:	33 ff                	xor    %edi,%edi
52de16:	3b 44 24 10          	cmp    0x10(%esp),%eax
52de1a:	0f 47 f7             	cmova  %edi,%esi
52de1d:	85 f6                	test   %esi,%esi
52de1f:	74 11                	je     0x52de32
52de21:	8b 7c 24 14          	mov    0x14(%esp),%edi
52de25:	8b 0f                	mov    (%edi),%ecx
52de27:	8d 40 04             	lea    0x4(%eax),%eax
52de2a:	42                   	inc    %edx
52de2b:	89 48 fc             	mov    %ecx,-0x4(%eax)
52de2e:	3b d6                	cmp    %esi,%edx
52de30:	75 f3                	jne    0x52de25
52de32:	5f                   	pop    %edi
52de33:	5e                   	pop    %esi
52de34:	c3                   	ret
52de35:	cc                   	int3
52de36:	cc                   	int3
52de37:	cc                   	int3
52de38:	cc                   	int3
52de39:	cc                   	int3
52de3a:	cc                   	int3
52de3b:	cc                   	int3
52de3c:	cc                   	int3
52de3d:	cc                   	int3
52de3e:	cc                   	int3
52de3f:	cc                   	int3
52de40:	cc                   	int3
52de41:	cc                   	int3
52de42:	cc                   	int3
52de43:	cc                   	int3
52de44:	cc                   	int3
52de45:	cc                   	int3
52de46:	cc                   	int3
52de47:	cc                   	int3
52de48:	cc                   	int3
52de49:	cc                   	int3
52de4a:	cc                   	int3
52de4b:	cc                   	int3
52de4c:	cc                   	int3
52de4d:	cc                   	int3
52de4e:	cc                   	int3
52de4f:	cc                   	int3
52de50:	8b 44 24 04          	mov    0x4(%esp),%eax
52de54:	33 d2                	xor    %edx,%edx
52de56:	56                   	push   %esi
52de57:	8b 74 24 0c          	mov    0xc(%esp),%esi
52de5b:	2b f0                	sub    %eax,%esi
52de5d:	83 c6 03             	add    $0x3,%esi
52de60:	c1 ee 02             	shr    $0x2,%esi
52de63:	57                   	push   %edi
52de64:	33 ff                	xor    %edi,%edi
52de66:	3b 44 24 10          	cmp    0x10(%esp),%eax
52de6a:	0f 47 f7             	cmova  %edi,%esi
52de6d:	85 f6                	test   %esi,%esi
52de6f:	74 11                	je     0x52de82
52de71:	8b 7c 24 14          	mov    0x14(%esp),%edi
52de75:	8b 0f                	mov    (%edi),%ecx
52de77:	8d 40 04             	lea    0x4(%eax),%eax
52de7a:	42                   	inc    %edx
52de7b:	89 48 fc             	mov    %ecx,-0x4(%eax)
52de7e:	3b d6                	cmp    %esi,%edx
52de80:	75 f3                	jne    0x52de75
52de82:	5f                   	pop    %edi
52de83:	5e                   	pop    %esi
52de84:	c3                   	ret
52de85:	cc                   	int3
52de86:	cc                   	int3
52de87:	cc                   	int3
52de88:	cc                   	int3
52de89:	cc                   	int3
52de8a:	cc                   	int3
52de8b:	cc                   	int3
52de8c:	cc                   	int3
52de8d:	cc                   	int3
52de8e:	cc                   	int3
52de8f:	cc                   	int3
52de90:	cc                   	int3
52de91:	cc                   	int3
52de92:	cc                   	int3
52de93:	cc                   	int3
52de94:	cc                   	int3
52de95:	cc                   	int3
52de96:	cc                   	int3
52de97:	cc                   	int3
52de98:	cc                   	int3
52de99:	cc                   	int3
52de9a:	cc                   	int3
52de9b:	cc                   	int3
52de9c:	cc                   	int3
52de9d:	cc                   	int3
52de9e:	cc                   	int3
52de9f:	cc                   	int3
52dea0:	8b 44 24 04          	mov    0x4(%esp),%eax
52dea4:	33 d2                	xor    %edx,%edx
52dea6:	56                   	push   %esi
52dea7:	8b 74 24 0c          	mov    0xc(%esp),%esi
52deab:	2b f0                	sub    %eax,%esi
52dead:	83 c6 03             	add    $0x3,%esi
52deb0:	c1 ee 02             	shr    $0x2,%esi
52deb3:	57                   	push   %edi
52deb4:	33 ff                	xor    %edi,%edi
52deb6:	3b 44 24 10          	cmp    0x10(%esp),%eax
52deba:	0f 47 f7             	cmova  %edi,%esi
52debd:	85 f6                	test   %esi,%esi
52debf:	74 11                	je     0x52ded2
52dec1:	8b 7c 24 14          	mov    0x14(%esp),%edi
52dec5:	8b 0f                	mov    (%edi),%ecx
52dec7:	8d 40 04             	lea    0x4(%eax),%eax
52deca:	42                   	inc    %edx
52decb:	89 48 fc             	mov    %ecx,-0x4(%eax)
52dece:	3b d6                	cmp    %esi,%edx
52ded0:	75 f3                	jne    0x52dec5
52ded2:	5f                   	pop    %edi
52ded3:	5e                   	pop    %esi
52ded4:	c3                   	ret
52ded5:	cc                   	int3
52ded6:	cc                   	int3
52ded7:	cc                   	int3
52ded8:	cc                   	int3
52ded9:	cc                   	int3
52deda:	cc                   	int3
52dedb:	cc                   	int3
52dedc:	cc                   	int3
52dedd:	cc                   	int3
52dede:	cc                   	int3
52dedf:	cc                   	int3
52dee0:	cc                   	int3
52dee1:	cc                   	int3
52dee2:	cc                   	int3
52dee3:	cc                   	int3
52dee4:	cc                   	int3
52dee5:	cc                   	int3
52dee6:	cc                   	int3
52dee7:	cc                   	int3
52dee8:	cc                   	int3
52dee9:	cc                   	int3
52deea:	cc                   	int3
52deeb:	cc                   	int3
52deec:	cc                   	int3
52deed:	cc                   	int3
52deee:	cc                   	int3
52deef:	cc                   	int3
52def0:	8b 44 24 04          	mov    0x4(%esp),%eax
52def4:	33 d2                	xor    %edx,%edx
52def6:	56                   	push   %esi
52def7:	8b 74 24 0c          	mov    0xc(%esp),%esi
52defb:	2b f0                	sub    %eax,%esi
52defd:	83 c6 03             	add    $0x3,%esi
52df00:	c1 ee 02             	shr    $0x2,%esi
52df03:	57                   	push   %edi
52df04:	33 ff                	xor    %edi,%edi
52df06:	3b 44 24 10          	cmp    0x10(%esp),%eax
52df0a:	0f 47 f7             	cmova  %edi,%esi
52df0d:	85 f6                	test   %esi,%esi
52df0f:	74 11                	je     0x52df22
52df11:	8b 7c 24 14          	mov    0x14(%esp),%edi
52df15:	8b 0f                	mov    (%edi),%ecx
52df17:	8d 40 04             	lea    0x4(%eax),%eax
52df1a:	42                   	inc    %edx
52df1b:	89 48 fc             	mov    %ecx,-0x4(%eax)
52df1e:	3b d6                	cmp    %esi,%edx
52df20:	75 f3                	jne    0x52df15
52df22:	5f                   	pop    %edi
52df23:	5e                   	pop    %esi
52df24:	c3                   	ret
52df25:	cc                   	int3
52df26:	cc                   	int3
52df27:	cc                   	int3
52df28:	cc                   	int3
52df29:	cc                   	int3
52df2a:	cc                   	int3
52df2b:	cc                   	int3
52df2c:	cc                   	int3
52df2d:	cc                   	int3
52df2e:	cc                   	int3
52df2f:	cc                   	int3
52df30:	cc                   	int3
52df31:	cc                   	int3
52df32:	cc                   	int3
52df33:	cc                   	int3
52df34:	cc                   	int3
52df35:	cc                   	int3
52df36:	cc                   	int3
52df37:	cc                   	int3
52df38:	cc                   	int3
52df39:	cc                   	int3
52df3a:	cc                   	int3
52df3b:	cc                   	int3
52df3c:	cc                   	int3
52df3d:	cc                   	int3
52df3e:	cc                   	int3
52df3f:	cc                   	int3
52df40:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
52df45:	c3                   	ret
52df46:	cc                   	int3
52df47:	cc                   	int3
52df48:	cc                   	int3
52df49:	cc                   	int3
52df4a:	cc                   	int3
52df4b:	cc                   	int3
52df4c:	cc                   	int3
52df4d:	cc                   	int3
52df4e:	cc                   	int3
52df4f:	cc                   	int3
52df50:	51                   	push   %ecx
52df51:	56                   	push   %esi
52df52:	8b 74 24 14          	mov    0x14(%esp),%esi
52df56:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
52df5b:	57                   	push   %edi
52df5c:	8b 7c 24 10          	mov    0x10(%esp),%edi
52df60:	8b ce                	mov    %esi,%ecx
52df62:	2b cf                	sub    %edi,%ecx
52df64:	f7 e9                	imul   %ecx
52df66:	c1 fa 03             	sar    $0x3,%edx
52df69:	8b c2                	mov    %edx,%eax
52df6b:	c1 e8 1f             	shr    $0x1f,%eax
52df6e:	03 c2                	add    %edx,%eax
52df70:	83 f8 28             	cmp    $0x28,%eax
52df73:	7e 6c                	jle    0x52dfe1
52df75:	40                   	inc    %eax
52df76:	99                   	cltd
52df77:	83 e2 07             	and    $0x7,%edx
52df7a:	03 c2                	add    %edx,%eax
52df7c:	c1 f8 03             	sar    $0x3,%eax
52df7f:	53                   	push   %ebx
52df80:	55                   	push   %ebp
52df81:	8b 6c 24 24          	mov    0x24(%esp),%ebp
52df85:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
52df88:	c1 e1 05             	shl    $0x5,%ecx
52df8b:	8d 1c 40             	lea    (%eax,%eax,2),%ebx
52df8e:	c1 e3 04             	shl    $0x4,%ebx
52df91:	55                   	push   %ebp
52df92:	89 4c 24 14          	mov    %ecx,0x14(%esp)
52df96:	8d 04 39             	lea    (%ecx,%edi,1),%eax
52df99:	50                   	push   %eax
52df9a:	8d 14 3b             	lea    (%ebx,%edi,1),%edx
52df9d:	52                   	push   %edx
52df9e:	57                   	push   %edi
52df9f:	e8 1d 76 f0 ff       	call   0x4355c1
52dfa4:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
52dfa8:	55                   	push   %ebp
52dfa9:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
52dfac:	50                   	push   %eax
52dfad:	8b c7                	mov    %edi,%eax
52dfaf:	2b c3                	sub    %ebx,%eax
52dfb1:	57                   	push   %edi
52dfb2:	50                   	push   %eax
52dfb3:	e8 09 76 f0 ff       	call   0x4355c1
52dfb8:	8b c6                	mov    %esi,%eax
52dfba:	2b f3                	sub    %ebx,%esi
52dfbc:	55                   	push   %ebp
52dfbd:	50                   	push   %eax
52dfbe:	2b 44 24 38          	sub    0x38(%esp),%eax
52dfc2:	56                   	push   %esi
52dfc3:	50                   	push   %eax
52dfc4:	e8 f8 75 f0 ff       	call   0x4355c1
52dfc9:	8b 44 24 48          	mov    0x48(%esp),%eax
52dfcd:	55                   	push   %ebp
52dfce:	56                   	push   %esi
52dfcf:	03 c3                	add    %ebx,%eax
52dfd1:	57                   	push   %edi
52dfd2:	50                   	push   %eax
52dfd3:	e8 e9 75 f0 ff       	call   0x4355c1
52dfd8:	83 c4 40             	add    $0x40,%esp
52dfdb:	5d                   	pop    %ebp
52dfdc:	5b                   	pop    %ebx
52dfdd:	5f                   	pop    %edi
52dfde:	5e                   	pop    %esi
52dfdf:	59                   	pop    %ecx
52dfe0:	c3                   	ret
52dfe1:	ff 74 24 1c          	push   0x1c(%esp)
52dfe5:	56                   	push   %esi
52dfe6:	ff 74 24 1c          	push   0x1c(%esp)
52dfea:	57                   	push   %edi
52dfeb:	e8 d1 75 f0 ff       	call   0x4355c1
52dff0:	83 c4 10             	add    $0x10,%esp
52dff3:	5f                   	pop    %edi
52dff4:	5e                   	pop    %esi
52dff5:	59                   	pop    %ecx
52dff6:	c3                   	ret
52dff7:	cc                   	int3
52dff8:	cc                   	int3
52dff9:	cc                   	int3
52dffa:	cc                   	int3
52dffb:	cc                   	int3
52dffc:	cc                   	int3
52dffd:	cc                   	int3
52dffe:	cc                   	int3
52dfff:	cc                   	int3
52e000:	cc                   	int3
52e001:	cc                   	int3
52e002:	cc                   	int3
52e003:	cc                   	int3
52e004:	cc                   	int3
52e005:	cc                   	int3