459dfa:	88 46 18             	mov    %al,0x18(%esi)
459dfd:	8b c1                	mov    %ecx,%eax
459dff:	5e                   	pop    %esi
459e00:	8b e5                	mov    %ebp,%esp
459e02:	5d                   	pop    %ebp
459e03:	c2 04 00             	ret    $0x4
459e06:	b0 01                	mov    $0x1,%al
459e08:	33 c9                	xor    %ecx,%ecx
459e0a:	88 46 18             	mov    %al,0x18(%esi)
459e0d:	8b c1                	mov    %ecx,%eax
459e0f:	5f                   	pop    %edi
459e10:	5e                   	pop    %esi
459e11:	8b e5                	mov    %ebp,%esp
459e13:	5d                   	pop    %ebp
459e14:	c2 04 00             	ret    $0x4
459e17:	8b 3e                	mov    (%esi),%edi
459e19:	3b 7e 04             	cmp    0x4(%esi),%edi
459e1c:	73 1b                	jae    0x459e39
459e1e:	8a 07                	mov    (%edi),%al
459e20:	3c 80                	cmp    $0x80,%al
459e22:	73 15                	jae    0x459e39
459e24:	0f b6 c0             	movzbl %al,%eax
459e27:	99                   	cltd
459e28:	8b c8                	mov    %eax,%ecx
459e2a:	8d 47 01             	lea    0x1(%edi),%eax
459e2d:	89 06                	mov    %eax,(%esi)
459e2f:	8b c1                	mov    %ecx,%eax
459e31:	5f                   	pop    %edi
459e32:	5e                   	pop    %esi
459e33:	8b e5                	mov    %ebp,%esp
459e35:	5d                   	pop    %ebp
459e36:	c2 04 00             	ret    $0x4
459e39:	8d 45 e4             	lea    -0x1c(%ebp),%eax
459e3c:	8b ce                	mov    %esi,%ecx
459e3e:	50                   	push   %eax
459e3f:	e8 7c 01 00 00       	call   0x459fc0
459e44:	80 7d ec 00          	cmpb   $0x0,-0x14(%ebp)
459e48:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
459e4b:	75 02                	jne    0x459e4f
459e4d:	33 c9                	xor    %ecx,%ecx
459e4f:	5f                   	pop    %edi
459e50:	8b c1                	mov    %ecx,%eax
459e52:	5e                   	pop    %esi
459e53:	8b e5                	mov    %ebp,%esp
459e55:	5d                   	pop    %ebp
459e56:	c2 04 00             	ret    $0x4
459e59:	8b 45 08             	mov    0x8(%ebp),%eax
459e5c:	85 c0                	test   %eax,%eax
459e5e:	75 0f                	jne    0x459e6f
459e60:	8d 41 01             	lea    0x1(%ecx),%eax
459e63:	89 06                	mov    %eax,(%esi)
459e65:	5f                   	pop    %edi
459e66:	33 c0                	xor    %eax,%eax
459e68:	5e                   	pop    %esi
459e69:	8b e5                	mov    %ebp,%esp
459e6b:	5d                   	pop    %ebp
459e6c:	c2 04 00             	ret    $0x4
459e6f:	8d 55 f4             	lea    -0xc(%ebp),%edx
459e72:	52                   	push   %edx
459e73:	51                   	push   %ecx
459e74:	50                   	push   %eax
459e75:	8d 45 f8             	lea    -0x8(%ebp),%eax
459e78:	50                   	push   %eax
459e79:	e8 a2 00 00 00       	call   0x459f20
459e7e:	83 c4 10             	add    $0x10,%esp
459e81:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
459e85:	74 de                	je     0x459e65
459e87:	8b 45 fc             	mov    -0x4(%ebp),%eax
459e8a:	89 06                	mov    %eax,(%esi)
459e8c:	8b 45 f4             	mov    -0xc(%ebp),%eax
459e8f:	5f                   	pop    %edi
459e90:	5e                   	pop    %esi
459e91:	8b e5                	mov    %ebp,%esp
459e93:	5d                   	pop    %ebp
459e94:	c2 04 00             	ret    $0x4
459e97:	cc                   	int3
459e98:	cc                   	int3
459e99:	cc                   	int3
459e9a:	cc                   	int3
459e9b:	cc                   	int3
459e9c:	cc                   	int3
459e9d:	cc                   	int3
459e9e:	cc                   	int3
459e9f:	cc                   	int3
459ea0:	55                   	push   %ebp
459ea1:	8b ec                	mov    %esp,%ebp
459ea3:	83 ec 14             	sub    $0x14,%esp
459ea6:	56                   	push   %esi
459ea7:	8b f1                	mov    %ecx,%esi
459ea9:	8b 4e 04             	mov    0x4(%esi),%ecx
459eac:	8b c1                	mov    %ecx,%eax
459eae:	8b 16                	mov    (%esi),%edx
459eb0:	2b c2                	sub    %edx,%eax
459eb2:	83 f8 0a             	cmp    $0xa,%eax
459eb5:	7d 27                	jge    0x459ede
459eb7:	3b ca                	cmp    %edx,%ecx
459eb9:	76 06                	jbe    0x459ec1
459ebb:	80 79 ff 00          	cmpb   $0x0,-0x1(%ecx)
459ebf:	7d 1d                	jge    0x459ede
459ec1:	8d 45 ec             	lea    -0x14(%ebp),%eax
459ec4:	8b ce                	mov    %esi,%ecx
459ec6:	50                   	push   %eax
459ec7:	e8 f4 00 00 00       	call   0x459fc0
459ecc:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
459ed0:	74 26                	je     0x459ef8
459ed2:	8b 45 ec             	mov    -0x14(%ebp),%eax
459ed5:	33 d2                	xor    %edx,%edx
459ed7:	5e                   	pop    %esi
459ed8:	8b e5                	mov    %ebp,%esp
459eda:	5d                   	pop    %ebp
459edb:	c2 04 00             	ret    $0x4
459ede:	8d 45 fc             	lea    -0x4(%ebp),%eax
459ee1:	50                   	push   %eax
459ee2:	52                   	push   %edx
459ee3:	ff 75 08             	push   0x8(%ebp)
459ee6:	8d 45 f4             	lea    -0xc(%ebp),%eax
459ee9:	50                   	push   %eax
459eea:	e8 31 00 00 00       	call   0x459f20
459eef:	83 c4 10             	add    $0x10,%esp
459ef2:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
459ef6:	75 0c                	jne    0x459f04
459ef8:	83 c8 ff             	or     $0xffffffff,%eax
459efb:	0b d0                	or     %eax,%edx
459efd:	5e                   	pop    %esi
459efe:	8b e5                	mov    %ebp,%esp
459f00:	5d                   	pop    %ebp
459f01:	c2 04 00             	ret    $0x4
459f04:	8b 45 f8             	mov    -0x8(%ebp),%eax
459f07:	33 d2                	xor    %edx,%edx
459f09:	89 06                	mov    %eax,(%esi)
459f0b:	8b 45 fc             	mov    -0x4(%ebp),%eax
459f0e:	5e                   	pop    %esi
459f0f:	8b e5                	mov    %ebp,%esp
459f11:	5d                   	pop    %ebp
459f12:	c2 04 00             	ret    $0x4
459f15:	cc                   	int3
459f16:	cc                   	int3
459f17:	cc                   	int3
459f18:	cc                   	int3
459f19:	cc                   	int3
459f1a:	cc                   	int3
459f1b:	cc                   	int3
459f1c:	cc                   	int3
459f1d:	cc                   	int3
459f1e:	cc                   	int3
459f1f:	cc                   	int3
459f20:	55                   	push   %ebp
459f21:	8b ec                	mov    %esp,%ebp
459f23:	51                   	push   %ecx
459f24:	8b 4d 10             	mov    0x10(%ebp),%ecx
459f27:	8b 45 14             	mov    0x14(%ebp),%eax
459f2a:	53                   	push   %ebx
459f2b:	8b 5d 08             	mov    0x8(%ebp),%ebx
459f2e:	0f b6 51 01          	movzbl 0x1(%ecx),%edx
459f32:	83 c1 02             	add    $0x2,%ecx
459f35:	56                   	push   %esi
459f36:	57                   	push   %edi
459f37:	8b 7d 0c             	mov    0xc(%ebp),%edi
459f3a:	89 45 fc             	mov    %eax,-0x4(%ebp)
459f3d:	83 c7 80             	add    $0xffffff80,%edi
459f40:	8b c2                	mov    %edx,%eax
459f42:	c1 e0 07             	shl    $0x7,%eax
459f45:	03 f8                	add    %eax,%edi
459f47:	84 d2                	test   %dl,%dl
459f49:	79 59                	jns    0x459fa4
459f4b:	0f b6 11             	movzbl (%ecx),%edx
459f4e:	81 c7 00 c0 ff ff    	add    $0xffffc000,%edi
459f54:	8b c2                	mov    %edx,%eax
459f56:	41                   	inc    %ecx
459f57:	c1 e0 0e             	shl    $0xe,%eax
459f5a:	03 f8                	add    %eax,%edi
459f5c:	8b f7                	mov    %edi,%esi
459f5e:	84 d2                	test   %dl,%dl
459f60:	79 42                	jns    0x459fa4
459f62:	0f b6 01             	movzbl (%ecx),%eax
459f65:	41                   	inc    %ecx
459f66:	8d b8 ff 07 00 00    	lea    0x7ff(%eax),%edi
459f6c:	c1 e7 15             	shl    $0x15,%edi
459f6f:	03 fe                	add    %esi,%edi
459f71:	84 c0                	test   %al,%al
459f73:	79 2f                	jns    0x459fa4
459f75:	0f b6 11             	movzbl (%ecx),%edx
459f78:	41                   	inc    %ecx
459f79:	8d 42 0f             	lea    0xf(%edx),%eax
459f7c:	c1 e0 1c             	shl    $0x1c,%eax
459f7f:	03 f8                	add    %eax,%edi
459f81:	84 d2                	test   %dl,%dl
459f83:	79 1f                	jns    0x459fa4
459f85:	33 f6                	xor    %esi,%esi
459f87:	0f b6 11             	movzbl (%ecx),%edx
459f8a:	41                   	inc    %ecx
459f8b:	84 d2                	test   %dl,%dl
459f8d:	79 15                	jns    0x459fa4
459f8f:	46                   	inc    %esi
459f90:	83 fe 05             	cmp    $0x5,%esi
459f93:	7c f2                	jl     0x459f87
459f95:	5f                   	pop    %edi
459f96:	5e                   	pop    %esi
459f97:	c6 03 00             	movb   $0x0,(%ebx)
459f9a:	8b c3                	mov    %ebx,%eax
459f9c:	89 4b 04             	mov    %ecx,0x4(%ebx)
459f9f:	5b                   	pop    %ebx
459fa0:	8b e5                	mov    %ebp,%esp
459fa2:	5d                   	pop    %ebp
459fa3:	c3                   	ret
459fa4:	8b 45 fc             	mov    -0x4(%ebp),%eax
459fa7:	89 38                	mov    %edi,(%eax)
459fa9:	8b c3                	mov    %ebx,%eax
459fab:	5f                   	pop    %edi
459fac:	5e                   	pop    %esi
459fad:	c6 03 01             	movb   $0x1,(%ebx)
459fb0:	89 4b 04             	mov    %ecx,0x4(%ebx)
459fb3:	5b                   	pop    %ebx
459fb4:	8b e5                	mov    %ebp,%esp
459fb6:	5d                   	pop    %ebp
459fb7:	c3                   	ret
459fb8:	cc                   	int3
459fb9:	cc                   	int3
459fba:	cc                   	int3
459fbb:	cc                   	int3
459fbc:	cc                   	int3
459fbd:	cc                   	int3
459fbe:	cc                   	int3
459fbf:	cc                   	int3
459fc0:	55                   	push   %ebp
459fc1:	8b ec                	mov    %esp,%ebp
459fc3:	83 ec 10             	sub    $0x10,%esp
459fc6:	56                   	push   %esi
459fc7:	57                   	push   %edi
459fc8:	8b f9                	mov    %ecx,%edi
459fca:	8b 57 04             	mov    0x4(%edi),%edx
459fcd:	8b c2                	mov    %edx,%eax
459fcf:	8b 37                	mov    (%edi),%esi
459fd1:	2b c6                	sub    %esi,%eax
459fd3:	83 f8 0a             	cmp    $0xa,%eax
459fd6:	7d 30                	jge    0x45a008
459fd8:	3b d6                	cmp    %esi,%edx
459fda:	76 06                	jbe    0x459fe2
459fdc:	80 7a ff 00          	cmpb   $0x0,-0x1(%edx)
459fe0:	7d 26                	jge    0x45a008
459fe2:	53                   	push   %ebx
459fe3:	8d 45 f8             	lea    -0x8(%ebp),%eax
459fe6:	50                   	push   %eax
459fe7:	e8 e4 04 00 00       	call   0x45a4d0
459fec:	8b 4d f8             	mov    -0x8(%ebp),%ecx
459fef:	8a d8                	mov    %al,%bl
459ff1:	8b 45 08             	mov    0x8(%ebp),%eax
459ff4:	8b 55 fc             	mov    -0x4(%ebp),%edx
459ff7:	88 58 08             	mov    %bl,0x8(%eax)
459ffa:	5b                   	pop    %ebx
459ffb:	5f                   	pop    %edi
459ffc:	89 08                	mov    %ecx,(%eax)
459ffe:	89 50 04             	mov    %edx,0x4(%eax)
45a001:	5e                   	pop    %esi
45a002:	8b e5                	mov    %ebp,%esp
45a004:	5d                   	pop    %ebp
45a005:	c2 04 00             	ret    $0x4
45a008:	8d 45 f0             	lea    -0x10(%ebp),%eax
45a00b:	50                   	push   %eax
45a00c:	8d 45 f8             	lea    -0x8(%ebp),%eax
45a00f:	56                   	push   %esi
45a010:	50                   	push   %eax
45a011:	e8 4a 00 00 00       	call   0x45a060
45a016:	8b 55 08             	mov    0x8(%ebp),%edx
45a019:	83 c4 0c             	add    $0xc,%esp
45a01c:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
45a020:	75 1b                	jne    0x45a03d
45a022:	5f                   	pop    %edi
45a023:	c7 02 00 00 00 00    	movl   $0x0,(%edx)
45a029:	8b c2                	mov    %edx,%eax
45a02b:	c7 42 04 00 00 00 00 	movl   $0x0,0x4(%edx)
45a032:	c6 42 08 00          	movb   $0x0,0x8(%edx)
45a036:	5e                   	pop    %esi
45a037:	8b e5                	mov    %ebp,%esp
45a039:	5d                   	pop    %ebp
45a03a:	c2 04 00             	ret    $0x4
45a03d:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a040:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45a043:	89 07                	mov    %eax,(%edi)
45a045:	8b 45 f0             	mov    -0x10(%ebp),%eax
45a048:	5f                   	pop    %edi
45a049:	89 02                	mov    %eax,(%edx)
45a04b:	8b c2                	mov    %edx,%eax
45a04d:	89 4a 04             	mov    %ecx,0x4(%edx)
45a050:	c6 42 08 01          	movb   $0x1,0x8(%edx)
45a054:	5e                   	pop    %esi
45a055:	8b e5                	mov    %ebp,%esp
45a057:	5d                   	pop    %ebp
45a058:	c2 04 00             	ret    $0x4
45a05b:	cc                   	int3
45a05c:	cc                   	int3
45a05d:	cc                   	int3
45a05e:	cc                   	int3
45a05f:	cc                   	int3
45a060:	55                   	push   %ebp
45a061:	8b ec                	mov    %esp,%ebp
45a063:	83 ec 0c             	sub    $0xc,%esp
45a066:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45a069:	8b 45 10             	mov    0x10(%ebp),%eax
45a06c:	53                   	push   %ebx
45a06d:	8b 5d 08             	mov    0x8(%ebp),%ebx
45a070:	89 45 f4             	mov    %eax,-0xc(%ebp)
45a073:	8a 41 01             	mov    0x1(%ecx),%al
45a076:	88 45 ff             	mov    %al,-0x1(%ebp)
45a079:	56                   	push   %esi
45a07a:	57                   	push   %edi
45a07b:	3c 80                	cmp    $0x80,%al
45a07d:	73 27                	jae    0x45a0a6
45a07f:	0f b6 c0             	movzbl %al,%eax
45a082:	99                   	cltd
45a083:	8b f0                	mov    %eax,%esi
45a085:	8b fa                	mov    %edx,%edi
45a087:	0f b6 01             	movzbl (%ecx),%eax
45a08a:	0f a4 f7 07          	shld   $0x7,%esi,%edi
45a08e:	99                   	cltd
45a08f:	c1 e6 07             	shl    $0x7,%esi
45a092:	03 f0                	add    %eax,%esi
45a094:	b8 02 00 00 00       	mov    $0x2,%eax
45a099:	13 fa                	adc    %edx,%edi
45a09b:	83 c6 80             	add    $0xffffff80,%esi
45a09e:	83 d7 ff             	adc    $0xffffffff,%edi
45a0a1:	e9 f0 03 00 00       	jmp    0x45a496
45a0a6:	8a 41 02             	mov    0x2(%ecx),%al
45a0a9:	88 45 fe             	mov    %al,-0x2(%ebp)
45a0ac:	3c 80                	cmp    $0x80,%al
45a0ae:	73 3a                	jae    0x45a0ea
45a0b0:	0f b6 c0             	movzbl %al,%eax
45a0b3:	99                   	cltd
45a0b4:	8b f0                	mov    %eax,%esi
45a0b6:	8b fa                	mov    %edx,%edi
45a0b8:	0f b6 45 ff          	movzbl -0x1(%ebp),%eax
45a0bc:	0f a4 f7 07          	shld   $0x7,%esi,%edi
45a0c0:	99                   	cltd
45a0c1:	c1 e6 07             	shl    $0x7,%esi
45a0c4:	03 f0                	add    %eax,%esi
45a0c6:	0f b6 01             	movzbl (%ecx),%eax
45a0c9:	13 fa                	adc    %edx,%edi
45a0cb:	99                   	cltd
45a0cc:	0f a4 f7 07          	shld   $0x7,%esi,%edi
45a0d0:	c1 e6 07             	shl    $0x7,%esi
45a0d3:	03 f0                	add    %eax,%esi
45a0d5:	b8 03 00 00 00       	mov    $0x3,%eax
45a0da:	13 fa                	adc    %edx,%edi
45a0dc:	81 c6 80 bf ff ff    	add    $0xffffbf80,%esi
45a0e2:	83 d7 ff             	adc    $0xffffffff,%edi
45a0e5:	e9 ac 03 00 00       	jmp    0x45a496
45a0ea:	8a 41 03             	mov    0x3(%ecx),%al
45a0ed:	88 45 fd             	mov    %al,-0x3(%ebp)
45a0f0:	3c 80                	cmp    $0x80,%al
45a0f2:	73 4a                	jae    0x45a13e