459c92:	8b e5                	mov    %ebp,%esp
459c94:	5d                   	pop    %ebp
459c95:	c2 08 00             	ret    $0x8
459c98:	55                   	push   %ebp
459c99:	8b ec                	mov    %esp,%ebp
459c9b:	51                   	push   %ecx
459c9c:	56                   	push   %esi
459c9d:	ff 75 08             	push   0x8(%ebp)
459ca0:	8b f1                	mov    %ecx,%esi
459ca2:	e8 87 01 00 00       	call   0x459e2e
459ca7:	8b c8                	mov    %eax,%ecx
459ca9:	85 c9                	test   %ecx,%ecx
459cab:	75 04                	jne    0x459cb1
459cad:	32 c0                	xor    %al,%al
459caf:	eb 20                	jmp    0x459cd1
459cb1:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
459cb5:	6a 02                	push   $0x2
459cb7:	58                   	pop    %eax
459cb8:	75 03                	jne    0x459cbd
459cba:	33 c0                	xor    %eax,%eax
459cbc:	40                   	inc    %eax
459cbd:	51                   	push   %ecx
459cbe:	50                   	push   %eax
459cbf:	68 02 11 00 00       	push   $0x1102
459cc4:	ff 36                	push   (%esi)
459cc6:	ff 15 88 f6 48 00    	call   *0x48f688
459ccc:	85 c0                	test   %eax,%eax
459cce:	0f 95 c0             	setne  %al
459cd1:	5e                   	pop    %esi
459cd2:	59                   	pop    %ecx
459cd3:	5d                   	pop    %ebp
459cd4:	c2 08 00             	ret    $0x8
459cd7:	55                   	push   %ebp
459cd8:	8b ec                	mov    %esp,%ebp
459cda:	81 ec ac 00 00 00    	sub    $0xac,%esp
459ce0:	53                   	push   %ebx
459ce1:	56                   	push   %esi
459ce2:	57                   	push   %edi
459ce3:	8b f9                	mov    %ecx,%edi
459ce5:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459ceb:	89 7d fc             	mov    %edi,-0x4(%ebp)
459cee:	e8 ed c5 fb ff       	call   0x4162e0
459cf3:	ff 37                	push   (%edi)
459cf5:	8b 45 08             	mov    0x8(%ebp),%eax
459cf8:	6a 10                	push   $0x10
459cfa:	89 45 ec             	mov    %eax,-0x14(%ebp)
459cfd:	e8 ec 7b 00 00       	call   0x4618ee
459d02:	8b f0                	mov    %eax,%esi
459d04:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459d0a:	6a 10                	push   $0x10
459d0c:	56                   	push   %esi
459d0d:	8d 45 ec             	lea    -0x14(%ebp),%eax
459d10:	50                   	push   %eax
459d11:	e8 b6 7c 00 00       	call   0x4619cc
459d16:	56                   	push   %esi
459d17:	33 db                	xor    %ebx,%ebx
459d19:	53                   	push   %ebx
459d1a:	68 04 11 00 00       	push   $0x1104
459d1f:	ff 37                	push   (%edi)
459d21:	ff 15 88 f6 48 00    	call   *0x48f688
459d27:	6a 10                	push   $0x10
459d29:	8d 45 ec             	lea    -0x14(%ebp),%eax
459d2c:	50                   	push   %eax
459d2d:	56                   	push   %esi
459d2e:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459d34:	e8 5e 7c 00 00       	call   0x461997
459d39:	8b 45 f8             	mov    -0x8(%ebp),%eax
459d3c:	2b 45 f0             	sub    -0x10(%ebp),%eax
459d3f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
459d42:	ff 37                	push   (%edi)
459d44:	8b 75 ec             	mov    -0x14(%ebp),%esi
459d47:	99                   	cltd
459d48:	2b c2                	sub    %edx,%eax
459d4a:	d1 f8                	sar    $1,%eax
459d4c:	03 45 f0             	add    -0x10(%ebp),%eax
459d4f:	89 41 04             	mov    %eax,0x4(%ecx)
459d52:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459d58:	6a 10                	push   $0x10
459d5a:	89 45 e0             	mov    %eax,-0x20(%ebp)
459d5d:	e8 8c 7b 00 00       	call   0x4618ee
459d62:	8b f8                	mov    %eax,%edi
459d64:	3b 75 f4             	cmp    -0xc(%ebp),%esi
459d67:	0f 8f ab 00 00 00    	jg     0x459e18
459d6d:	6a 10                	push   $0x10
459d6f:	57                   	push   %edi
459d70:	8d 45 dc             	lea    -0x24(%ebp),%eax
459d73:	89 75 dc             	mov    %esi,-0x24(%ebp)
459d76:	50                   	push   %eax
459d77:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459d7d:	e8 4a 7c 00 00       	call   0x4619cc
459d82:	8b 45 fc             	mov    -0x4(%ebp),%eax
459d85:	57                   	push   %edi
459d86:	53                   	push   %ebx
459d87:	68 11 11 00 00       	push   $0x1111
459d8c:	ff 30                	push   (%eax)
459d8e:	ff 15 88 f6 48 00    	call   *0x48f688
459d94:	6a 10                	push   $0x10
459d96:	8d 45 dc             	lea    -0x24(%ebp),%eax
459d99:	50                   	push   %eax
459d9a:	57                   	push   %edi
459d9b:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459da1:	e8 f1 7b 00 00       	call   0x461997
459da6:	f6 45 e4 40          	testb  $0x40,-0x1c(%ebp)
459daa:	75 06                	jne    0x459db2
459dac:	46                   	inc    %esi
459dad:	3b 75 f4             	cmp    -0xc(%ebp),%esi
459db0:	7e bb                	jle    0x459d6d
459db2:	3b 75 f4             	cmp    -0xc(%ebp),%esi
459db5:	7f 61                	jg     0x459e18
459db7:	89 75 08             	mov    %esi,0x8(%ebp)
459dba:	6a 10                	push   $0x10
459dbc:	57                   	push   %edi
459dbd:	8d 45 dc             	lea    -0x24(%ebp),%eax
459dc0:	89 75 dc             	mov    %esi,-0x24(%ebp)
459dc3:	50                   	push   %eax
459dc4:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459dca:	e8 fd 7b 00 00       	call   0x4619cc
459dcf:	8b 45 fc             	mov    -0x4(%ebp),%eax
459dd2:	57                   	push   %edi
459dd3:	53                   	push   %ebx
459dd4:	68 11 11 00 00       	push   $0x1111
459dd9:	ff 30                	push   (%eax)
459ddb:	ff 15 88 f6 48 00    	call   *0x48f688
459de1:	6a 10                	push   $0x10
459de3:	8d 45 dc             	lea    -0x24(%ebp),%eax
459de6:	50                   	push   %eax
459de7:	57                   	push   %edi
459de8:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459dee:	e8 a4 7b 00 00       	call   0x461997
459df3:	f6 45 e4 40          	testb  $0x40,-0x1c(%ebp)
459df7:	74 06                	je     0x459dff
459df9:	46                   	inc    %esi
459dfa:	3b 75 f4             	cmp    -0xc(%ebp),%esi
459dfd:	7e bb                	jle    0x459dba
459dff:	3b 75 f4             	cmp    -0xc(%ebp),%esi
459e02:	7f 14                	jg     0x459e18
459e04:	2b 75 08             	sub    0x8(%ebp),%esi
459e07:	b3 01                	mov    $0x1,%bl
459e09:	8b 4d 0c             	mov    0xc(%ebp),%ecx
459e0c:	8b c6                	mov    %esi,%eax
459e0e:	99                   	cltd
459e0f:	2b c2                	sub    %edx,%eax
459e11:	d1 f8                	sar    $1,%eax
459e13:	03 45 08             	add    0x8(%ebp),%eax
459e16:	89 01                	mov    %eax,(%ecx)
459e18:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
459e1e:	e8 a2 c4 fb ff       	call   0x4162c5
459e23:	5f                   	pop    %edi
459e24:	5e                   	pop    %esi
459e25:	8a c3                	mov    %bl,%al
459e27:	5b                   	pop    %ebx
459e28:	8b e5                	mov    %ebp,%esp
459e2a:	5d                   	pop    %ebp
459e2b:	c2 08 00             	ret    $0x8
459e2e:	55                   	push   %ebp
459e2f:	8b ec                	mov    %esp,%ebp
459e31:	83 ec 20             	sub    $0x20,%esp
459e34:	53                   	push   %ebx
459e35:	56                   	push   %esi
459e36:	57                   	push   %edi
459e37:	33 f6                	xor    %esi,%esi
459e39:	8b c1                	mov    %ecx,%eax
459e3b:	56                   	push   %esi
459e3c:	56                   	push   %esi
459e3d:	68 0a 11 00 00       	push   $0x110a
459e42:	ff 30                	push   (%eax)
459e44:	89 45 f4             	mov    %eax,-0xc(%ebp)
459e47:	ff 15 88 f6 48 00    	call   *0x48f688
459e4d:	8b f8                	mov    %eax,%edi
459e4f:	89 7d f8             	mov    %edi,-0x8(%ebp)
459e52:	85 ff                	test   %edi,%edi
459e54:	0f 84 be 00 00 00    	je     0x459f18
459e5a:	8b 5d 08             	mov    0x8(%ebp),%ebx
459e5d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
459e60:	8b 5b 04             	mov    0x4(%ebx),%ebx
459e63:	e8 5f d9 fa ff       	call   0x4077c7
459e68:	85 db                	test   %ebx,%ebx
459e6a:	0f 84 9e 00 00 00    	je     0x459f0e
459e70:	85 f6                	test   %esi,%esi
459e72:	74 1c                	je     0x459e90
459e74:	8b 45 f4             	mov    -0xc(%ebp),%eax
459e77:	57                   	push   %edi
459e78:	6a 04                	push   $0x4
459e7a:	68 0a 11 00 00       	push   $0x110a
459e7f:	ff 30                	push   (%eax)
459e81:	ff 15 88 f6 48 00    	call   *0x48f688
459e87:	8b f8                	mov    %eax,%edi
459e89:	89 7d f8             	mov    %edi,-0x8(%ebp)
459e8c:	85 ff                	test   %edi,%edi
459e8e:	74 7e                	je     0x459f0e
459e90:	68 10 f9 48 00       	push   $0x48f910
459e95:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
459e98:	e8 8f de fa ff       	call   0x407d2c
459e9d:	3b f3                	cmp    %ebx,%esi
459e9f:	73 4e                	jae    0x459eef
459ea1:	8b 7d 08             	mov    0x8(%ebp),%edi
459ea4:	56                   	push   %esi
459ea5:	8b cf                	mov    %edi,%ecx
459ea7:	e8 74 dc fa ff       	call   0x407b20
459eac:	6a 7c                	push   $0x7c
459eae:	59                   	pop    %ecx
459eaf:	66 39 08             	cmp    %cx,(%eax)
459eb2:	75 1f                	jne    0x459ed3
459eb4:	8d 46 01             	lea    0x1(%esi),%eax
459eb7:	8b cf                	mov    %edi,%ecx
459eb9:	50                   	push   %eax
459eba:	e8 61 dc fa ff       	call   0x407b20
459ebf:	6a 7c                	push   $0x7c
459ec1:	59                   	pop    %ecx
459ec2:	66 39 08             	cmp    %cx,(%eax)
459ec5:	75 25                	jne    0x459eec
459ec7:	51                   	push   %ecx
459ec8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
459ecb:	e8 b4 db fa ff       	call   0x407a84
459ed0:	83 c6 02             	add    $0x2,%esi
459ed3:	56                   	push   %esi
459ed4:	8b cf                	mov    %edi,%ecx
459ed6:	e8 45 dc fa ff       	call   0x407b20
459edb:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
459ede:	0f b7 00             	movzwl (%eax),%eax
459ee1:	50                   	push   %eax
459ee2:	e8 9d db fa ff       	call   0x407a84
459ee7:	46                   	inc    %esi
459ee8:	3b f3                	cmp    %ebx,%esi
459eea:	72 b8                	jb     0x459ea4
459eec:	8b 7d f8             	mov    -0x8(%ebp),%edi
459eef:	8b 4d f4             	mov    -0xc(%ebp),%ecx
459ef2:	8d 45 e4             	lea    -0x1c(%ebp),%eax
459ef5:	50                   	push   %eax
459ef6:	57                   	push   %edi
459ef7:	e8 e3 01 00 00       	call   0x45a0df
459efc:	8b f8                	mov    %eax,%edi
459efe:	89 45 f8             	mov    %eax,-0x8(%ebp)
459f01:	85 ff                	test   %edi,%edi
459f03:	74 09                	je     0x459f0e
459f05:	46                   	inc    %esi
459f06:	3b f3                	cmp    %ebx,%esi
459f08:	0f 82 62 ff ff ff    	jb     0x459e70
459f0e:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
459f11:	e8 4e bb fa ff       	call   0x405a64
459f16:	8b c7                	mov    %edi,%eax
459f18:	5f                   	pop    %edi
459f19:	5e                   	pop    %esi
459f1a:	5b                   	pop    %ebx
459f1b:	8b e5                	mov    %ebp,%esp
459f1d:	5d                   	pop    %ebp
459f1e:	c2 04 00             	ret    $0x4
459f21:	55                   	push   %ebp
459f22:	8b ec                	mov    %esp,%ebp
459f24:	53                   	push   %ebx
459f25:	8b 5d 08             	mov    0x8(%ebp),%ebx
459f28:	56                   	push   %esi
459f29:	57                   	push   %edi
459f2a:	53                   	push   %ebx
459f2b:	8b f9                	mov    %ecx,%edi
459f2d:	e8 fc fe ff ff       	call   0x459e2e
459f32:	85 c0                	test   %eax,%eax
459f34:	74 25                	je     0x459f5b
459f36:	33 f6                	xor    %esi,%esi
459f38:	39 73 04             	cmp    %esi,0x4(%ebx)
459f3b:	8b 1d 88 f6 48 00    	mov    0x48f688,%ebx
459f41:	74 12                	je     0x459f55
459f43:	50                   	push   %eax
459f44:	6a 04                	push   $0x4
459f46:	eb 04                	jmp    0x459f4c
459f48:	50                   	push   %eax
459f49:	46                   	inc    %esi
459f4a:	6a 01                	push   $0x1
459f4c:	68 0a 11 00 00       	push   $0x110a
459f51:	ff 37                	push   (%edi)
459f53:	ff d3                	call   *%ebx
459f55:	85 c0                	test   %eax,%eax
459f57:	75 ef                	jne    0x459f48
459f59:	8b c6                	mov    %esi,%eax
459f5b:	5f                   	pop    %edi
459f5c:	5e                   	pop    %esi
459f5d:	5b                   	pop    %ebx
459f5e:	5d                   	pop    %ebp
459f5f:	c2 04 00             	ret    $0x4
459f62:	55                   	push   %ebp
459f63:	8b ec                	mov    %esp,%ebp
459f65:	81 ec b8 00 00 00    	sub    $0xb8,%esp
459f6b:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
459f6f:	53                   	push   %ebx
459f70:	56                   	push   %esi
459f71:	8b 75 10             	mov    0x10(%ebp),%esi
459f74:	8b d9                	mov    %ecx,%ebx
459f76:	57                   	push   %edi
459f77:	8b 7d 08             	mov    0x8(%ebp),%edi
459f7a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
459f7d:	8b 06                	mov    (%esi),%eax
459f7f:	89 45 d8             	mov    %eax,-0x28(%ebp)
459f82:	8b 46 04             	mov    0x4(%esi),%eax
459f85:	89 45 dc             	mov    %eax,-0x24(%ebp)
459f88:	8b 46 08             	mov    0x8(%esi),%eax
459f8b:	89 45 e0             	mov    %eax,-0x20(%ebp)
459f8e:	8b 46 0c             	mov    0xc(%esi),%eax
459f91:	89 45 e4             	mov    %eax,-0x1c(%ebp)
459f94:	ff 00                	incl   (%eax)
459f96:	e8 2c d8 fa ff       	call   0x4077c7
459f9b:	85 ff                	test   %edi,%edi
459f9d:	0f 84 be 00 00 00    	je     0x45a061
459fa3:	c7 45 10 01 00 00 00 	movl   $0x1,0x10(%ebp)
459faa:	57                   	push   %edi
459fab:	6a 04                	push   $0x4
459fad:	68 0a 11 00 00       	push   $0x110a
459fb2:	ff 33                	push   (%ebx)
459fb4:	ff 15 88 f6 48 00    	call   *0x48f688
459fba:	89 45 08             	mov    %eax,0x8(%ebp)
459fbd:	85 c0                	test   %eax,%eax
459fbf:	74 7e                	je     0x45a03f
459fc1:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
459fc5:	74 0c                	je     0x459fd3
459fc7:	68 88 95 4b 00       	push   $0x4b9588
459fcc:	8b ce                	mov    %esi,%ecx
459fce:	e8 38 de fa ff       	call   0x407e0b
459fd3:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
459fd7:	74 2d                	je     0x45a006
459fd9:	6a 0a                	push   $0xa
459fdb:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
459fe1:	50                   	push   %eax
459fe2:	ff 75 f8             	push   -0x8(%ebp)
459fe5:	e8 16 97 fc ff       	call   0x423700
459fea:	83 c4 0c             	add    $0xc,%esp
459fed:	8b ce                	mov    %esi,%ecx
459fef:	6a 23                	push   $0x23
459ff1:	e8 8e da fa ff       	call   0x407a84
459ff6:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
459ffc:	8b ce                	mov    %esi,%ecx
459ffe:	50                   	push   %eax
459fff:	e8 07 de fa ff       	call   0x407e0b
45a004:	eb 17                	jmp    0x45a01d
45a006:	8d 45 e8             	lea    -0x18(%ebp),%eax
45a009:	8b cb                	mov    %ebx,%ecx
45a00b:	50                   	push   %eax
45a00c:	57                   	push   %edi
45a00d:	e8 23 02 00 00       	call   0x45a235
45a012:	8d 45 e8             	lea    -0x18(%ebp),%eax
45a015:	8b ce                	mov    %esi,%ecx
45a017:	50                   	push   %eax
45a018:	e8 71 dc fa ff       	call   0x407c8e
45a01d:	6a 00                	push   $0x0
45a01f:	ff 75 14             	push   0x14(%ebp)
45a022:	8b cb                	mov    %ebx,%ecx
45a024:	56                   	push   %esi
45a025:	ff 75 0c             	push   0xc(%ebp)
45a028:	ff 75 08             	push   0x8(%ebp)
45a02b:	e8 32 ff ff ff       	call   0x459f62
45a030:	84 c0                	test   %al,%al
45a032:	75 31                	jne    0x45a065