458abe:	50                   	push   %eax
458abf:	ff 15 a8 f6 48 00    	call   *0x48f6a8
458ac5:	ff 75 fc             	push   -0x4(%ebp)
458ac8:	ff 15 5c f3 48 00    	call   *0x48f35c
458ace:	ff 75 f0             	push   -0x10(%ebp)
458ad1:	e8 96 85 fc ff       	call   0x42106c
458ad6:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
458ada:	59                   	pop    %ecx
458adb:	74 09                	je     0x458ae6
458add:	ff 75 f4             	push   -0xc(%ebp)
458ae0:	ff 15 50 f7 48 00    	call   *0x48f750
458ae6:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
458ae9:	e8 25 fc ff ff       	call   0x458713
458aee:	5f                   	pop    %edi
458aef:	5e                   	pop    %esi
458af0:	8a c3                	mov    %bl,%al
458af2:	5b                   	pop    %ebx
458af3:	8b e5                	mov    %ebp,%esp
458af5:	5d                   	pop    %ebp
458af6:	c2 28 00             	ret    $0x28
458af9:	55                   	push   %ebp
458afa:	8b ec                	mov    %esp,%ebp
458afc:	51                   	push   %ecx
458afd:	53                   	push   %ebx
458afe:	33 db                	xor    %ebx,%ebx
458b00:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
458b04:	8b c3                	mov    %ebx,%eax
458b06:	57                   	push   %edi
458b07:	89 45 fc             	mov    %eax,-0x4(%ebp)
458b0a:	8b fb                	mov    %ebx,%edi
458b0c:	74 03                	je     0x458b11
458b0e:	47                   	inc    %edi
458b0f:	eb 09                	jmp    0x458b1a
458b11:	f6 45 14 02          	testb  $0x2,0x14(%ebp)
458b15:	74 03                	je     0x458b1a
458b17:	6a 02                	push   $0x2
458b19:	5f                   	pop    %edi
458b1a:	f6 45 14 04          	testb  $0x4,0x14(%ebp)
458b1e:	74 39                	je     0x458b59
458b20:	56                   	push   %esi
458b21:	8d 45 14             	lea    0x14(%ebp),%eax
458b24:	89 5d 14             	mov    %ebx,0x14(%ebp)
458b27:	50                   	push   %eax
458b28:	6a 0a                	push   $0xa
458b2a:	ff 15 60 f2 48 00    	call   *0x48f260
458b30:	50                   	push   %eax
458b31:	ff 15 38 f0 48 00    	call   *0x48f038
458b37:	6a 01                	push   $0x1
458b39:	ff 75 14             	push   0x14(%ebp)
458b3c:	8d 45 fc             	lea    -0x4(%ebp),%eax
458b3f:	50                   	push   %eax
458b40:	ff 15 58 f7 48 00    	call   *0x48f758
458b46:	ff 75 14             	push   0x14(%ebp)
458b49:	8b f0                	mov    %eax,%esi
458b4b:	ff 15 5c f3 48 00    	call   *0x48f35c
458b51:	85 f6                	test   %esi,%esi
458b53:	5e                   	pop    %esi
458b54:	74 2f                	je     0x458b85
458b56:	8b 45 fc             	mov    -0x4(%ebp),%eax
458b59:	ff 75 2c             	push   0x2c(%ebp)
458b5c:	ff 75 28             	push   0x28(%ebp)
458b5f:	ff 75 24             	push   0x24(%ebp)
458b62:	50                   	push   %eax
458b63:	8b 45 20             	mov    0x20(%ebp),%eax
458b66:	0d 00 04 00 00       	or     $0x400,%eax
458b6b:	50                   	push   %eax
458b6c:	ff 75 1c             	push   0x1c(%ebp)
458b6f:	53                   	push   %ebx
458b70:	57                   	push   %edi
458b71:	ff 75 10             	push   0x10(%ebp)
458b74:	ff 75 0c             	push   0xc(%ebp)
458b77:	ff 75 08             	push   0x8(%ebp)
458b7a:	ff 15 48 f0 48 00    	call   *0x48f048
458b80:	85 c0                	test   %eax,%eax
458b82:	0f 95 c3             	setne  %bl
458b85:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
458b89:	74 09                	je     0x458b94
458b8b:	ff 75 fc             	push   -0x4(%ebp)
458b8e:	ff 15 50 f7 48 00    	call   *0x48f750
458b94:	5f                   	pop    %edi
458b95:	8a c3                	mov    %bl,%al
458b97:	5b                   	pop    %ebx
458b98:	8b e5                	mov    %ebp,%esp
458b9a:	5d                   	pop    %ebp
458b9b:	c2 28 00             	ret    $0x28
458b9e:	55                   	push   %ebp
458b9f:	8b ec                	mov    %esp,%ebp
458ba1:	83 ec 1c             	sub    $0x1c,%esp
458ba4:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
458ba8:	8b c1                	mov    %ecx,%eax
458baa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
458bae:	8d 4d f0             	lea    -0x10(%ebp),%ecx
458bb1:	53                   	push   %ebx
458bb2:	56                   	push   %esi
458bb3:	57                   	push   %edi
458bb4:	51                   	push   %ecx
458bb5:	51                   	push   %ecx
458bb6:	8d 4d fc             	lea    -0x4(%ebp),%ecx
458bb9:	89 45 f4             	mov    %eax,-0xc(%ebp)
458bbc:	51                   	push   %ecx
458bbd:	8b 48 0c             	mov    0xc(%eax),%ecx
458bc0:	32 db                	xor    %bl,%bl
458bc2:	e8 8b fa ff ff       	call   0x458652
458bc7:	8b 75 fc             	mov    -0x4(%ebp),%esi
458bca:	83 c4 0c             	add    $0xc,%esp
458bcd:	84 c0                	test   %al,%al
458bcf:	74 6c                	je     0x458c3d
458bd1:	8b 45 f4             	mov    -0xc(%ebp),%eax
458bd4:	33 ff                	xor    %edi,%edi
458bd6:	89 7d f8             	mov    %edi,-0x8(%ebp)
458bd9:	39 78 04             	cmp    %edi,0x4(%eax)
458bdc:	76 5f                	jbe    0x458c3d
458bde:	8b 00                	mov    (%eax),%eax
458be0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
458be3:	51                   	push   %ecx
458be4:	32 db                	xor    %bl,%bl
458be6:	ff 34 b8             	push   (%eax,%edi,4)
458be9:	6a 00                	push   $0x0
458beb:	ff 15 3c f0 48 00    	call   *0x48f03c
458bf1:	85 c0                	test   %eax,%eax
458bf3:	74 48                	je     0x458c3d
458bf5:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
458bf9:	83 3e 00             	cmpl   $0x0,(%esi)
458bfc:	76 3f                	jbe    0x458c3d
458bfe:	8b 7d ec             	mov    -0x14(%ebp),%edi
458c01:	8d 46 04             	lea    0x4(%esi),%eax
458c04:	89 45 fc             	mov    %eax,-0x4(%ebp)
458c07:	6a 08                	push   $0x8
458c09:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
458c0c:	51                   	push   %ecx
458c0d:	50                   	push   %eax
458c0e:	e8 b1 8a fc ff       	call   0x4216c4
458c13:	83 c4 0c             	add    $0xc,%esp
458c16:	85 c0                	test   %eax,%eax
458c18:	75 02                	jne    0x458c1c
458c1a:	b3 01                	mov    $0x1,%bl
458c1c:	8b 45 fc             	mov    -0x4(%ebp),%eax
458c1f:	47                   	inc    %edi
458c20:	83 c0 0c             	add    $0xc,%eax
458c23:	89 45 fc             	mov    %eax,-0x4(%ebp)
458c26:	3b 3e                	cmp    (%esi),%edi
458c28:	72 dd                	jb     0x458c07
458c2a:	8b 7d f8             	mov    -0x8(%ebp),%edi
458c2d:	84 db                	test   %bl,%bl
458c2f:	74 0c                	je     0x458c3d
458c31:	8b 45 f4             	mov    -0xc(%ebp),%eax
458c34:	47                   	inc    %edi
458c35:	89 7d f8             	mov    %edi,-0x8(%ebp)
458c38:	3b 78 04             	cmp    0x4(%eax),%edi
458c3b:	72 a1                	jb     0x458bde
458c3d:	85 f6                	test   %esi,%esi
458c3f:	74 10                	je     0x458c51
458c41:	56                   	push   %esi
458c42:	6a 00                	push   $0x0
458c44:	ff 15 74 f1 48 00    	call   *0x48f174
458c4a:	50                   	push   %eax
458c4b:	ff 15 78 f1 48 00    	call   *0x48f178
458c51:	5f                   	pop    %edi
458c52:	5e                   	pop    %esi
458c53:	8a c3                	mov    %bl,%al
458c55:	5b                   	pop    %ebx
458c56:	8b e5                	mov    %ebp,%esp
458c58:	5d                   	pop    %ebp
458c59:	c3                   	ret
458c5a:	56                   	push   %esi
458c5b:	8d 71 0c             	lea    0xc(%ecx),%esi
458c5e:	56                   	push   %esi
458c5f:	6a 00                	push   $0x0
458c61:	6a 28                	push   $0x28
458c63:	ff 15 58 f3 48 00    	call   *0x48f358
458c69:	50                   	push   %eax
458c6a:	ff 15 34 f0 48 00    	call   *0x48f034
458c70:	85 c0                	test   %eax,%eax
458c72:	75 16                	jne    0x458c8a
458c74:	56                   	push   %esi
458c75:	6a 28                	push   $0x28
458c77:	ff 15 60 f2 48 00    	call   *0x48f260
458c7d:	50                   	push   %eax
458c7e:	ff 15 38 f0 48 00    	call   *0x48f038
458c84:	85 c0                	test   %eax,%eax
458c86:	75 02                	jne    0x458c8a
458c88:	21 06                	and    %eax,(%esi)
458c8a:	33 c0                	xor    %eax,%eax
458c8c:	39 06                	cmp    %eax,(%esi)
458c8e:	5e                   	pop    %esi
458c8f:	0f 95 c0             	setne  %al
458c92:	c3                   	ret
458c93:	55                   	push   %ebp
458c94:	8b ec                	mov    %esp,%ebp
458c96:	8b 45 14             	mov    0x14(%ebp),%eax
458c99:	ff 75 1c             	push   0x1c(%ebp)
458c9c:	0f be c0             	movsbl %al,%eax
458c9f:	83 e0 02             	and    $0x2,%eax
458ca2:	6a 00                	push   $0x0
458ca4:	83 c8 04             	or     $0x4,%eax
458ca7:	d1 e8                	shr    $1,%eax
458ca9:	50                   	push   %eax
458caa:	ff 75 10             	push   0x10(%ebp)
458cad:	ff 75 0c             	push   0xc(%ebp)
458cb0:	ff 75 08             	push   0x8(%ebp)
458cb3:	ff 15 54 f0 48 00    	call   *0x48f054
458cb9:	f7 d8                	neg    %eax
458cbb:	1b c0                	sbb    %eax,%eax
458cbd:	f7 d8                	neg    %eax
458cbf:	5d                   	pop    %ebp
458cc0:	c2 18 00             	ret    $0x18
458cc3:	55                   	push   %ebp
458cc4:	8b ec                	mov    %esp,%ebp
458cc6:	83 ec 0c             	sub    $0xc,%esp
458cc9:	53                   	push   %ebx
458cca:	56                   	push   %esi
458ccb:	8b f1                	mov    %ecx,%esi
458ccd:	57                   	push   %edi
458cce:	6b 5e 04 0c          	imul   $0xc,0x4(%esi),%ebx
458cd2:	83 c3 04             	add    $0x4,%ebx
458cd5:	53                   	push   %ebx
458cd6:	89 5d f4             	mov    %ebx,-0xc(%ebp)
458cd9:	e8 18 83 fc ff       	call   0x420ff6
458cde:	8b f8                	mov    %eax,%edi
458ce0:	53                   	push   %ebx
458ce1:	89 7d f8             	mov    %edi,-0x8(%ebp)
458ce4:	e8 0d 83 fc ff       	call   0x420ff6
458ce9:	59                   	pop    %ecx
458cea:	59                   	pop    %ecx
458ceb:	8b 4e 04             	mov    0x4(%esi),%ecx
458cee:	89 46 08             	mov    %eax,0x8(%esi)
458cf1:	89 0f                	mov    %ecx,(%edi)
458cf3:	33 c9                	xor    %ecx,%ecx
458cf5:	39 4e 04             	cmp    %ecx,0x4(%esi)
458cf8:	76 2b                	jbe    0x458d25
458cfa:	8d 5f 04             	lea    0x4(%edi),%ebx
458cfd:	8b f9                	mov    %ecx,%edi
458cff:	c7 43 08 02 00 00 00 	movl   $0x2,0x8(%ebx)
458d06:	8b 06                	mov    (%esi),%eax
458d08:	53                   	push   %ebx
458d09:	ff 34 b8             	push   (%eax,%edi,4)
458d0c:	51                   	push   %ecx
458d0d:	ff 15 3c f0 48 00    	call   *0x48f03c
458d13:	47                   	inc    %edi
458d14:	83 c3 0c             	add    $0xc,%ebx
458d17:	6a 00                	push   $0x0
458d19:	59                   	pop    %ecx
458d1a:	3b 7e 04             	cmp    0x4(%esi),%edi
458d1d:	72 e0                	jb     0x458cff
458d1f:	8b 7d f8             	mov    -0x8(%ebp),%edi
458d22:	8b 5d f4             	mov    -0xc(%ebp),%ebx
458d25:	39 4e 08             	cmp    %ecx,0x8(%esi)
458d28:	74 05                	je     0x458d2f
458d2a:	51                   	push   %ecx
458d2b:	51                   	push   %ecx
458d2c:	51                   	push   %ecx
458d2d:	eb 06                	jmp    0x458d35
458d2f:	8d 45 f4             	lea    -0xc(%ebp),%eax
458d32:	50                   	push   %eax
458d33:	51                   	push   %ecx
458d34:	53                   	push   %ebx
458d35:	57                   	push   %edi
458d36:	51                   	push   %ecx
458d37:	ff 76 0c             	push   0xc(%esi)
458d3a:	ff 15 30 f0 48 00    	call   *0x48f030
458d40:	57                   	push   %edi
458d41:	e8 26 83 fc ff       	call   0x42106c
458d46:	59                   	pop    %ecx
458d47:	ff 15 40 f3 48 00    	call   *0x48f340
458d4d:	f7 d8                	neg    %eax
458d4f:	5f                   	pop    %edi
458d50:	1b c0                	sbb    %eax,%eax
458d52:	5e                   	pop    %esi
458d53:	40                   	inc    %eax
458d54:	5b                   	pop    %ebx
458d55:	8b e5                	mov    %ebp,%esp
458d57:	5d                   	pop    %ebp
458d58:	c2 04 00             	ret    $0x4
458d5b:	55                   	push   %ebp
458d5c:	8b ec                	mov    %esp,%ebp
458d5e:	51                   	push   %ecx
458d5f:	51                   	push   %ecx
458d60:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
458d64:	8d 45 fc             	lea    -0x4(%ebp),%eax
458d67:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
458d6b:	53                   	push   %ebx
458d6c:	56                   	push   %esi
458d6d:	50                   	push   %eax
458d6e:	51                   	push   %ecx
458d6f:	8b 4d 08             	mov    0x8(%ebp),%ecx
458d72:	8d 45 f8             	lea    -0x8(%ebp),%eax
458d75:	50                   	push   %eax
458d76:	32 db                	xor    %bl,%bl
458d78:	e8 74 f8 ff ff       	call   0x4585f1
458d7d:	8b 75 f8             	mov    -0x8(%ebp),%esi
458d80:	83 c4 0c             	add    $0xc,%esp
458d83:	84 c0                	test   %al,%al
458d85:	74 5e                	je     0x458de5
458d87:	57                   	push   %edi
458d88:	33 ff                	xor    %edi,%edi
458d8a:	39 3e                	cmp    %edi,(%esi)
458d8c:	76 56                	jbe    0x458de4
458d8e:	8d 4e 08             	lea    0x8(%esi),%ecx
458d91:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
458d96:	8b 01                	mov    (%ecx),%eax
458d98:	23 c2                	and    %edx,%eax
458d9a:	3b c2                	cmp    %edx,%eax
458d9c:	74 0a                	je     0x458da8
458d9e:	47                   	inc    %edi
458d9f:	83 c1 08             	add    $0x8,%ecx
458da2:	3b 3e                	cmp    (%esi),%edi
458da4:	72 f0                	jb     0x458d96
458da6:	eb 3c                	jmp    0x458de4
458da8:	ff 74 fe 04          	push   0x4(%esi,%edi,8)
458dac:	ff 15 4c f0 48 00    	call   *0x48f04c
458db2:	50                   	push   %eax
458db3:	6a 08                	push   $0x8
458db5:	89 45 fc             	mov    %eax,-0x4(%ebp)
458db8:	ff 15 74 f1 48 00    	call   *0x48f174
458dbe:	50                   	push   %eax
458dbf:	ff 15 70 f1 48 00    	call   *0x48f170
458dc5:	8b c8                	mov    %eax,%ecx
458dc7:	8b 45 0c             	mov    0xc(%ebp),%eax
458dca:	89 08                	mov    %ecx,(%eax)
458dcc:	85 c9                	test   %ecx,%ecx
458dce:	74 14                	je     0x458de4
458dd0:	ff 74 fe 04          	push   0x4(%esi,%edi,8)
458dd4:	51                   	push   %ecx
458dd5:	ff 75 fc             	push   -0x4(%ebp)
458dd8:	ff 15 50 f0 48 00    	call   *0x48f050
458dde:	85 c0                	test   %eax,%eax
458de0:	74 02                	je     0x458de4
458de2:	b3 01                	mov    $0x1,%bl
458de4:	5f                   	pop    %edi
458de5:	85 f6                	test   %esi,%esi
458de7:	74 10                	je     0x458df9
458de9:	56                   	push   %esi
458dea:	6a 00                	push   $0x0
458dec:	ff 15 74 f1 48 00    	call   *0x48f174
458df2:	50                   	push   %eax
458df3:	ff 15 78 f1 48 00    	call   *0x48f178
458df9:	5e                   	pop    %esi
458dfa:	8a c3                	mov    %bl,%al
458dfc:	5b                   	pop    %ebx
458dfd:	8b e5                	mov    %ebp,%esp
458dff:	5d                   	pop    %ebp
458e00:	c2 08 00             	ret    $0x8
458e03:	55                   	push   %ebp
458e04:	8b ec                	mov    %esp,%ebp
458e06:	53                   	push   %ebx
458e07:	57                   	push   %edi
458e08:	6a 0c                	push   $0xc
458e0a:	6a 08                	push   $0x8
458e0c:	ff 15 74 f1 48 00    	call   *0x48f174
458e12:	50                   	push   %eax