416b1a:	89 46 08             	mov    %eax,0x8(%esi)
416b1d:	b0 01                	mov    $0x1,%al
416b1f:	5f                   	pop    %edi
416b20:	5e                   	pop    %esi
416b21:	5d                   	pop    %ebp
416b22:	c2 04 00             	ret    $0x4
416b25:	e8 2f 6c 00 00       	call   0x41d759
416b2a:	cc                   	int3
416b2b:	55                   	push   %ebp
416b2c:	8b ec                	mov    %esp,%ebp
416b2e:	56                   	push   %esi
416b2f:	8b f1                	mov    %ecx,%esi
416b31:	33 c0                	xor    %eax,%eax
416b33:	57                   	push   %edi
416b34:	8b 7d 08             	mov    0x8(%ebp),%edi
416b37:	89 06                	mov    %eax,(%esi)
416b39:	89 46 04             	mov    %eax,0x4(%esi)
416b3c:	89 46 08             	mov    %eax,0x8(%esi)
416b3f:	85 ff                	test   %edi,%edi
416b41:	75 04                	jne    0x416b47
416b43:	32 c0                	xor    %al,%al
416b45:	eb 1b                	jmp    0x416b62
416b47:	81 ff ff ff ff 1f    	cmp    $0x1fffffff,%edi
416b4d:	77 19                	ja     0x416b68
416b4f:	57                   	push   %edi
416b50:	e8 a2 88 00 00       	call   0x41f3f7
416b55:	89 06                	mov    %eax,(%esi)
416b57:	89 46 04             	mov    %eax,0x4(%esi)
416b5a:	8d 04 f8             	lea    (%eax,%edi,8),%eax
416b5d:	89 46 08             	mov    %eax,0x8(%esi)
416b60:	b0 01                	mov    $0x1,%al
416b62:	5f                   	pop    %edi
416b63:	5e                   	pop    %esi
416b64:	5d                   	pop    %ebp
416b65:	c2 04 00             	ret    $0x4
416b68:	e8 f7 6b 00 00       	call   0x41d764
416b6d:	cc                   	int3
416b6e:	55                   	push   %ebp
416b6f:	8b ec                	mov    %esp,%ebp
416b71:	56                   	push   %esi
416b72:	8b f1                	mov    %ecx,%esi
416b74:	33 c0                	xor    %eax,%eax
416b76:	57                   	push   %edi
416b77:	8b 7d 08             	mov    0x8(%ebp),%edi
416b7a:	89 06                	mov    %eax,(%esi)
416b7c:	89 46 04             	mov    %eax,0x4(%esi)
416b7f:	89 46 08             	mov    %eax,0x8(%esi)
416b82:	85 ff                	test   %edi,%edi
416b84:	75 04                	jne    0x416b8a
416b86:	32 c0                	xor    %al,%al
416b88:	eb 1d                	jmp    0x416ba7
416b8a:	81 ff aa aa aa 0a    	cmp    $0xaaaaaaa,%edi
416b90:	77 1b                	ja     0x416bad
416b92:	57                   	push   %edi
416b93:	e8 a1 88 00 00       	call   0x41f439
416b98:	6b cf 18             	imul   $0x18,%edi,%ecx
416b9b:	89 06                	mov    %eax,(%esi)
416b9d:	89 46 04             	mov    %eax,0x4(%esi)
416ba0:	03 c8                	add    %eax,%ecx
416ba2:	b0 01                	mov    $0x1,%al
416ba4:	89 4e 08             	mov    %ecx,0x8(%esi)
416ba7:	5f                   	pop    %edi
416ba8:	5e                   	pop    %esi
416ba9:	5d                   	pop    %ebp
416baa:	c2 04 00             	ret    $0x4
416bad:	e8 c8 6b 00 00       	call   0x41d77a
416bb2:	cc                   	int3
416bb3:	55                   	push   %ebp
416bb4:	8b ec                	mov    %esp,%ebp
416bb6:	56                   	push   %esi
416bb7:	8b f1                	mov    %ecx,%esi
416bb9:	33 c0                	xor    %eax,%eax
416bbb:	57                   	push   %edi
416bbc:	8b 7d 08             	mov    0x8(%ebp),%edi
416bbf:	89 06                	mov    %eax,(%esi)
416bc1:	89 46 04             	mov    %eax,0x4(%esi)
416bc4:	89 46 08             	mov    %eax,0x8(%esi)
416bc7:	85 ff                	test   %edi,%edi
416bc9:	75 04                	jne    0x416bcf
416bcb:	32 c0                	xor    %al,%al
416bcd:	eb 1d                	jmp    0x416bec
416bcf:	81 ff 55 55 55 15    	cmp    $0x15555555,%edi
416bd5:	77 1b                	ja     0x416bf2
416bd7:	57                   	push   %edi
416bd8:	e8 b9 88 00 00       	call   0x41f496
416bdd:	6b cf 0c             	imul   $0xc,%edi,%ecx
416be0:	89 06                	mov    %eax,(%esi)
416be2:	89 46 04             	mov    %eax,0x4(%esi)
416be5:	03 c8                	add    %eax,%ecx
416be7:	b0 01                	mov    $0x1,%al
416be9:	89 4e 08             	mov    %ecx,0x8(%esi)
416bec:	5f                   	pop    %edi
416bed:	5e                   	pop    %esi
416bee:	5d                   	pop    %ebp
416bef:	c2 04 00             	ret    $0x4
416bf2:	e8 a4 6b 00 00       	call   0x41d79b
416bf7:	cc                   	int3
416bf8:	55                   	push   %ebp
416bf9:	8b ec                	mov    %esp,%ebp
416bfb:	56                   	push   %esi
416bfc:	8b f1                	mov    %ecx,%esi
416bfe:	33 c0                	xor    %eax,%eax
416c00:	57                   	push   %edi
416c01:	8b 7d 08             	mov    0x8(%ebp),%edi
416c04:	89 06                	mov    %eax,(%esi)
416c06:	89 46 04             	mov    %eax,0x4(%esi)
416c09:	89 46 08             	mov    %eax,0x8(%esi)
416c0c:	85 ff                	test   %edi,%edi
416c0e:	75 04                	jne    0x416c14
416c10:	32 c0                	xor    %al,%al
416c12:	eb 1b                	jmp    0x416c2f
416c14:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
416c1a:	77 19                	ja     0x416c35
416c1c:	57                   	push   %edi
416c1d:	e8 d3 88 00 00       	call   0x41f4f5
416c22:	89 06                	mov    %eax,(%esi)
416c24:	89 46 04             	mov    %eax,0x4(%esi)
416c27:	8d 04 78             	lea    (%eax,%edi,2),%eax
416c2a:	89 46 08             	mov    %eax,0x8(%esi)
416c2d:	b0 01                	mov    $0x1,%al
416c2f:	5f                   	pop    %edi
416c30:	5e                   	pop    %esi
416c31:	5d                   	pop    %ebp
416c32:	c2 04 00             	ret    $0x4
416c35:	e8 82 6b 00 00       	call   0x41d7bc
416c3a:	cc                   	int3
416c3b:	56                   	push   %esi
416c3c:	57                   	push   %edi
416c3d:	8b f9                	mov    %ecx,%edi
416c3f:	8d 77 08             	lea    0x8(%edi),%esi
416c42:	56                   	push   %esi
416c43:	e8 28 1f ff ff       	call   0x408b70
416c48:	56                   	push   %esi
416c49:	89 07                	mov    %eax,(%edi)
416c4b:	e8 6c 20 ff ff       	call   0x408cbc
416c50:	59                   	pop    %ecx
416c51:	59                   	pop    %ecx
416c52:	89 47 04             	mov    %eax,0x4(%edi)
416c55:	5f                   	pop    %edi
416c56:	5e                   	pop    %esi
416c57:	c3                   	ret
416c58:	56                   	push   %esi
416c59:	57                   	push   %edi
416c5a:	8b f9                	mov    %ecx,%edi
416c5c:	8d 77 08             	lea    0x8(%edi),%esi
416c5f:	56                   	push   %esi
416c60:	e8 b1 1f ff ff       	call   0x408c16
416c65:	56                   	push   %esi
416c66:	89 07                	mov    %eax,(%edi)
416c68:	e8 f5 20 ff ff       	call   0x408d62
416c6d:	59                   	pop    %ecx
416c6e:	59                   	pop    %ecx
416c6f:	89 47 04             	mov    %eax,0x4(%edi)
416c72:	5f                   	pop    %edi
416c73:	5e                   	pop    %esi
416c74:	c3                   	ret
416c75:	55                   	push   %ebp
416c76:	8b ec                	mov    %esp,%ebp
416c78:	8b 55 08             	mov    0x8(%ebp),%edx
416c7b:	56                   	push   %esi
416c7c:	57                   	push   %edi
416c7d:	83 ca 0f             	or     $0xf,%edx
416c80:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
416c85:	3b d7                	cmp    %edi,%edx
416c87:	77 1b                	ja     0x416ca4
416c89:	8b 71 14             	mov    0x14(%ecx),%esi
416c8c:	8b c7                	mov    %edi,%eax
416c8e:	8b ce                	mov    %esi,%ecx
416c90:	d1 e9                	shr    $1,%ecx
416c92:	2b c1                	sub    %ecx,%eax
416c94:	3b f0                	cmp    %eax,%esi
416c96:	77 0c                	ja     0x416ca4
416c98:	8d 04 31             	lea    (%ecx,%esi,1),%eax
416c9b:	3b d0                	cmp    %eax,%edx
416c9d:	0f 42 d0             	cmovb  %eax,%edx
416ca0:	8b c2                	mov    %edx,%eax
416ca2:	eb 02                	jmp    0x416ca6
416ca4:	8b c7                	mov    %edi,%eax
416ca6:	5f                   	pop    %edi
416ca7:	5e                   	pop    %esi
416ca8:	5d                   	pop    %ebp
416ca9:	c2 04 00             	ret    $0x4
416cac:	55                   	push   %ebp
416cad:	8b ec                	mov    %esp,%ebp
416caf:	8b 55 08             	mov    0x8(%ebp),%edx
416cb2:	56                   	push   %esi
416cb3:	57                   	push   %edi
416cb4:	83 ca 07             	or     $0x7,%edx
416cb7:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
416cbc:	3b d7                	cmp    %edi,%edx
416cbe:	77 1b                	ja     0x416cdb
416cc0:	8b 71 14             	mov    0x14(%ecx),%esi
416cc3:	8b c7                	mov    %edi,%eax
416cc5:	8b ce                	mov    %esi,%ecx
416cc7:	d1 e9                	shr    $1,%ecx
416cc9:	2b c1                	sub    %ecx,%eax
416ccb:	3b f0                	cmp    %eax,%esi
416ccd:	77 0c                	ja     0x416cdb
416ccf:	8d 04 31             	lea    (%ecx,%esi,1),%eax
416cd2:	3b d0                	cmp    %eax,%edx
416cd4:	0f 42 d0             	cmovb  %eax,%edx
416cd7:	8b c2                	mov    %edx,%eax
416cd9:	eb 02                	jmp    0x416cdd
416cdb:	8b c7                	mov    %edi,%eax
416cdd:	5f                   	pop    %edi
416cde:	5e                   	pop    %esi
416cdf:	5d                   	pop    %ebp
416ce0:	c2 04 00             	ret    $0x4
416ce3:	55                   	push   %ebp
416ce4:	8b ec                	mov    %esp,%ebp
416ce6:	8b 51 08             	mov    0x8(%ecx),%edx
416ce9:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
416cee:	2b 11                	sub    (%ecx),%edx
416cf0:	c1 fa 02             	sar    $0x2,%edx
416cf3:	8b ca                	mov    %edx,%ecx
416cf5:	d1 e9                	shr    $1,%ecx
416cf7:	2b c1                	sub    %ecx,%eax
416cf9:	3b d0                	cmp    %eax,%edx
416cfb:	77 08                	ja     0x416d05
416cfd:	8d 04 11             	lea    (%ecx,%edx,1),%eax
416d00:	3b 45 08             	cmp    0x8(%ebp),%eax
416d03:	73 03                	jae    0x416d08
416d05:	8b 45 08             	mov    0x8(%ebp),%eax
416d08:	5d                   	pop    %ebp
416d09:	c2 04 00             	ret    $0x4
416d0c:	55                   	push   %ebp
416d0d:	8b ec                	mov    %esp,%ebp
416d0f:	8b 41 08             	mov    0x8(%ecx),%eax
416d12:	2b 01                	sub    (%ecx),%eax
416d14:	6a 18                	push   $0x18
416d16:	59                   	pop    %ecx
416d17:	99                   	cltd
416d18:	f7 f9                	idiv   %ecx
416d1a:	b9 aa aa aa 0a       	mov    $0xaaaaaaa,%ecx
416d1f:	8b d0                	mov    %eax,%edx
416d21:	d1 ea                	shr    $1,%edx
416d23:	2b ca                	sub    %edx,%ecx
416d25:	3b c1                	cmp    %ecx,%eax
416d27:	77 07                	ja     0x416d30
416d29:	03 c2                	add    %edx,%eax
416d2b:	3b 45 08             	cmp    0x8(%ebp),%eax
416d2e:	73 03                	jae    0x416d33
416d30:	8b 45 08             	mov    0x8(%ebp),%eax
416d33:	5d                   	pop    %ebp
416d34:	c2 04 00             	ret    $0x4
416d37:	55                   	push   %ebp
416d38:	8b ec                	mov    %esp,%ebp
416d3a:	8b 51 08             	mov    0x8(%ecx),%edx
416d3d:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
416d42:	2b 11                	sub    (%ecx),%edx
416d44:	c1 fa 03             	sar    $0x3,%edx
416d47:	8b ca                	mov    %edx,%ecx
416d49:	d1 e9                	shr    $1,%ecx
416d4b:	2b c1                	sub    %ecx,%eax
416d4d:	3b d0                	cmp    %eax,%edx
416d4f:	77 08                	ja     0x416d59
416d51:	8d 04 11             	lea    (%ecx,%edx,1),%eax
416d54:	3b 45 08             	cmp    0x8(%ebp),%eax
416d57:	73 03                	jae    0x416d5c
416d59:	8b 45 08             	mov    0x8(%ebp),%eax
416d5c:	5d                   	pop    %ebp
416d5d:	c2 04 00             	ret    $0x4
416d60:	55                   	push   %ebp
416d61:	8b ec                	mov    %esp,%ebp
416d63:	8b 51 08             	mov    0x8(%ecx),%edx
416d66:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
416d6b:	2b 11                	sub    (%ecx),%edx
416d6d:	c1 fa 03             	sar    $0x3,%edx
416d70:	8b ca                	mov    %edx,%ecx
416d72:	d1 e9                	shr    $1,%ecx
416d74:	2b c1                	sub    %ecx,%eax
416d76:	3b d0                	cmp    %eax,%edx
416d78:	77 08                	ja     0x416d82
416d7a:	8d 04 11             	lea    (%ecx,%edx,1),%eax
416d7d:	3b 45 08             	cmp    0x8(%ebp),%eax
416d80:	73 03                	jae    0x416d85
416d82:	8b 45 08             	mov    0x8(%ebp),%eax
416d85:	5d                   	pop    %ebp
416d86:	c2 04 00             	ret    $0x4
416d89:	55                   	push   %ebp
416d8a:	8b ec                	mov    %esp,%ebp
416d8c:	8b 51 08             	mov    0x8(%ecx),%edx
416d8f:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
416d94:	2b 11                	sub    (%ecx),%edx
416d96:	c1 fa 03             	sar    $0x3,%edx
416d99:	8b ca                	mov    %edx,%ecx
416d9b:	d1 e9                	shr    $1,%ecx
416d9d:	2b c1                	sub    %ecx,%eax
416d9f:	3b d0                	cmp    %eax,%edx
416da1:	77 08                	ja     0x416dab
416da3:	8d 04 11             	lea    (%ecx,%edx,1),%eax
416da6:	3b 45 08             	cmp    0x8(%ebp),%eax
416da9:	73 03                	jae    0x416dae
416dab:	8b 45 08             	mov    0x8(%ebp),%eax
416dae:	5d                   	pop    %ebp
416daf:	c2 04 00             	ret    $0x4
416db2:	55                   	push   %ebp
416db3:	8b ec                	mov    %esp,%ebp
416db5:	8b 51 08             	mov    0x8(%ecx),%edx
416db8:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
416dbd:	2b 11                	sub    (%ecx),%edx
416dbf:	c1 fa 03             	sar    $0x3,%edx
416dc2:	8b ca                	mov    %edx,%ecx
416dc4:	d1 e9                	shr    $1,%ecx
416dc6:	2b c1                	sub    %ecx,%eax
416dc8:	3b d0                	cmp    %eax,%edx
416dca:	77 08                	ja     0x416dd4
416dcc:	8d 04 11             	lea    (%ecx,%edx,1),%eax
416dcf:	3b 45 08             	cmp    0x8(%ebp),%eax
416dd2:	73 03                	jae    0x416dd7
416dd4:	8b 45 08             	mov    0x8(%ebp),%eax
416dd7:	5d                   	pop    %ebp
416dd8:	c2 04 00             	ret    $0x4
416ddb:	55                   	push   %ebp
416ddc:	8b ec                	mov    %esp,%ebp
416dde:	8b 41 08             	mov    0x8(%ecx),%eax
416de1:	2b 01                	sub    (%ecx),%eax
416de3:	6a 18                	push   $0x18
416de5:	59                   	pop    %ecx
416de6:	99                   	cltd
416de7:	f7 f9                	idiv   %ecx
416de9:	b9 aa aa aa 0a       	mov    $0xaaaaaaa,%ecx
416dee:	8b d0                	mov    %eax,%edx
416df0:	d1 ea                	shr    $1,%edx
416df2:	2b ca                	sub    %edx,%ecx
416df4:	3b c1                	cmp    %ecx,%eax
416df6:	77 07                	ja     0x416dff
416df8:	03 c2                	add    %edx,%eax
416dfa:	3b 45 08             	cmp    0x8(%ebp),%eax
416dfd:	73 03                	jae    0x416e02
416dff:	8b 45 08             	mov    0x8(%ebp),%eax
416e02:	5d                   	pop    %ebp
416e03:	c2 04 00             	ret    $0x4
416e06:	55                   	push   %ebp
416e07:	8b ec                	mov    %esp,%ebp
416e09:	8b 41 08             	mov    0x8(%ecx),%eax
416e0c:	2b 01                	sub    (%ecx),%eax
416e0e:	6a 0c                	push   $0xc
416e10:	59                   	pop    %ecx
416e11:	99                   	cltd
416e12:	f7 f9                	idiv   %ecx
416e14:	b9 55 55 55 15       	mov    $0x15555555,%ecx
416e19:	8b d0                	mov    %eax,%edx
416e1b:	d1 ea                	shr    $1,%edx
416e1d:	2b ca                	sub    %edx,%ecx
416e1f:	3b c1                	cmp    %ecx,%eax
416e21:	77 07                	ja     0x416e2a
416e23:	03 c2                	add    %edx,%eax
416e25:	3b 45 08             	cmp    0x8(%ebp),%eax
416e28:	73 03                	jae    0x416e2d