(Jarvis Oj)(Re)androideasy

Jarvisoj 逆向总结 因为本人是菜鸟,所以由简单但难的做了 [61dctf]androideasy 没什么可说的,直接反汇编打求一下密码 #_*_coding:utf-8_*_ a=[113, 123, 118, 112, 108, 94, 99, 72, 38, 68, 72, 87, 89, 72, 36, 118, 100, 78, 72, 87, 121, 83, 101, 39, 62, 94,... 阅读详情

(Jarvis Oj)(Re)androideasy

用jeb打开apk文件
这里写图片描述
相当简单的异或逻辑 ,直接贴代码

#include<iostream>
#include<vector>
using namespace std;
int main(void){
    vector<int> s={113, 123, 118, 112, 108, 94, 99, 72, 38, 68, 72, 87, 89, 72, 36, 118, 100, 78, 72, 87, 121, 83, 101, 39, 62, 94, 62, 38, 107, 115, 106};
    for(auto i=s.begin();i!=s.end();i++){
        cout<<char((*i)^23);
    }
    return 0;
}
Android-EasyAndroid一系列简单轻量方便的Android开发工具集合 EasyAndroid即是专门针对此种需求所设计的一款基础组件集成库 立即下载

相关推荐

CVPR 2027 投稿规划:基于近3年录用率与截稿周期的5步时间管理法

本文为计算机视觉研究者提供CVPR 2027投稿的完整规划指南,基于近三年录用率与截稿周期数据,提出五步时间管理法。涵盖选题策略、实验设计、论文写作、同行评审到最终提交的全流程优化,特别针对CVPR日益激烈的竞争环境(2024年投稿量达11532篇,录取率仅23.6%)提供实用解决方案,帮助研究者提升投稿成功率。

weixin_34079177的博客 1156

【jarvisoj刷题之旅】逆向题目[61dctf]androideasy的writeup

题目名字androideasy    那么猜测就是一个apk   winhex打开后果然是   改下后缀   载入Androidkiller   直接看java源码      明显可以看出关键就在check()方法     很明显就是一个简单的异或运算 那么我们只要将byte[ ] s的每一个字符与0x17异或即可得到flag Py代码: a = [113...

iqiqiya的博客 1012

出个AI8051U的PWM例程 | 3相互补SPWM变频驱动,PWMA-3个相位差120度的PWM互补输出

通道2输出: P2.2, PWMA2P输出, P2.3, PWMA2N输出, PWMA2相对PWMA1滞后120度相位.通道3输出: P2.4, PWMA3P输出, P2.5, PWMA3N输出, PWMA3相对PWMA1滞后240度相位.先别修改程序, 直接下载"Objects"里的"pwm.hex"测试, 下载时选择主频24MHz.主频32.768MHz, PWM周期1422, 刷新频率23040Hz,死区0.5us,通道1输出: P2.0, PWMA1P输出, P2.1, PWMA1N输出。

USB_CAN_8051的博客 691

Jarvis OJ 逆向工程部分WP

RE 1. androideasy 这题我做了一个比较详细(呆)的wp,给个链接:https://blog.youkuaiyun.com/qq_42192672/article/details/82528782 2. DD - Android Easy 怎么反编译成JAVA代码的过程第一题已经给出了,就不多做赘述了 分析一下,首先定义一个arryOfByte1数组,每个元素是p数组与q数组每个元...

qq_42192672的博客 899

KUKA机器人自动回原点程序

创建两个全局变量分别用于储存机器人的笛卡尔姿态与关节角姿态。打开System文件夹中的config文件创建全局变量的点位。在USER GROBALS用户自定义变量Userdefined variables下创建一个E6POS类型的点位,一个E6AXIS类型的点位。

A567852的博客 5213

基于STM32的馆藏文物保存环境监测系统设计与实现

针对馆藏文物保存环境中温湿度、光照、有害气体等参数波动易导致文物损坏的问题,本文设计了一种基于STM32微控制器的馆藏文物保存环境监测系统。该系统以STM32L431RCT6为核心,集成高精度传感器实现多参数实时采集,通过有线与无线结合的通信方式构建监测网络,具备数据存储、异常预警、远程监控等功能。测试结果表明,系统温湿度测量精度分别达±0.2℃、±2%RH,光照与有害气体检测误差≤5%,可满足文物保存环境的高精度监测需求,为文物保护提供科学的数据支撑。

m0_74026776的博客 1543

JarvisOJ DD-Android Easy题解

1.拖入到模拟器中运行,输入信息提示密码错误,使用PKID查壳,发现无壳 2.将apk的后缀名该成rar,随后进行解压缩,使用d2j-dex2jar.bat对classes-dex进行反编译,生成classes-dex2jar.jar 3.接着使用apktool工具,反编译apk文件,可以看到so文件 4.把生成的classes-dex2jar.jar拖入到jadx-gui中,看到FlagAc...

qq_33526144的博客 708

LilyPad三色LED共阳极控制:从原理到Arduino编程实战

RGB LED作为可编程光源的核心组件,通过红、绿、蓝三原色的加色混合原理,能够生成丰富的色彩。其内部结构主要分为共阳极和共阴极两种类型,这决定了驱动电路的设计和编程逻辑。在电子织物和可穿戴设备领域,掌握RGB LED的控制技术对于实现动态光效和交互反馈至关重要。本文以LilyPad三色LED为例,深入解析其共阳极特性,并详细演示如何结合Arduino进行PWM编程,从而精准控制颜色与亮度,为智能服装、互动艺术装置等项目提供可靠的照明解决方案。

weixin_30237719的博客 607

(Jarvis Oj)(Re) DD-androideasy

(Jarvis Oj)(Re) DD-androideasy apk文件,用jeb打开。找到关键函数。 写得脚本 1 p=[-40, -62, 107, 66, -126, 103, -56, 77, 122, -107, -24, -127, 72, -63, -98, 64, -24, -5, -49, -26, 79, -70, -26, -81, 120, 25, 1...

Nothing 504

【100%通过率】华为od机试C卷【出差 / 员工派遣】Java&Go 实现

某公司部门需要派遣员工去国外做项目。现在,代号为 x 的国家和代号为 y 的国家分别需要 cntx 名和 cnty 名员工部门每个员工有一个员工号 (1,2,3,......),工号连续,从 1开始。部长派遣员工的规则:

MISAYAONE的博客 2639

Coze实战:解锁多Bot协同与条件分支工作流的奥秘

本文详细介绍了在字节跳动Coze平台实现多Bot协同与条件分支工作流的方法。首先阐述了Coze平台的功能优势,包括丰富的插件、知识库和工作流功能。随后分步骤讲解了多Bot协同的实现:从准备工作、创建Bot到协同配置,并提供了电商客服的实例演示。在条件分支工作流部分,详细说明了条件节点的作用类型、条件设定方法以及具体配置操作,强调测试优化的重要性。最后通过电商平台综合案例,展示了多Bot协同与条件分支的实际应用效果,并针对常见问题提供解决方案。文章为开发者在Coze平台上构建智能应用提供了实用指导,有助于提升

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 450

Jarvis OJ 刷题题解 RE

最近比赛有点多 决定把 脱强壳 还有软件调试 还有 漏洞战争 放一放 先刷一些题目压压惊 最终还是选择了 Jarvis OJ (buuctf 太卡了。。。 以前也写过几道 === 希望能把上面的题目刷个80%。。 PWN的以前写过 到时候拾起来 把那个PWN博客也更一下 然后把我自己以前写的博客直接粘贴到这上面 以前写的 这里就不再说了 Jarvis OJ 软件密码破解-1 ...

qq_41071646的博客 960

基于DINO自监督学习对YOLO11 Backbone进行预训练

这PoolHead将获取前一层的输出并应用卷积,然后应用自适应平均池化以将特征图的空间维度减小为固定且一致的大小(1x1)。这是必需的,因为否则空间维度会根据输入的大小而变化,这将使将 DINO 头部附加到主干变得困难,因为它需要固定的输入大小。在本指南中,我们将介绍如何使用 Lightly 使用 DINO 预训练 YOLO 11主干,以及如何将其重新加载到 Ultralytics 中进行微调。您可以使用不同的大小,例如,640这与 YOLO 中的默认图像大小更一致,但它也会在训练期间消耗更多 VRAM。

如果想成为中心,那么就到中心去吧。 1014

【jarvisoj刷题之旅】逆向题目DDCTF - Android Easy的writeup

下载附件之后   改后缀为.apk 本来是直接载入jd-gui的   结果不好看明白代码 那我们就先放到安卓模拟器运行一下看看    输入123456789 发现Wrong Key   载入Androidkiller 第一步:搜索Wrong 第二步:搜索flag_result_no 第三步:搜索0x7f060023     得到三个好玩的 发现0x7f06...

iqiqiya的博客 1223

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

(Jarvis OJ)(Re)stheasy

(Jarvis OJ)(Re)stheasy 丢到ida中反汇编找到main函数 找到关键的check()函数 程序的逻辑大概就是输入一个字符串,先判断长度,在和内置的数据进行对比,相等则return 1,内置数据的变化很简单。 找到.data段中定义的数据。 编写程序 1 #include&lt;stdio.h&gt; 2 int main(void){ 3 char...

Nothing 837

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Jarvis OJ reverse之androideasy wp

这是一道我第一次解出的安卓逆向类CTF题目,下面记录并分享一下思路。 一,把文件下载下来,打开是一个apk文件,用jeb反编译(找到MainAcitivity,然后右键Decompile即可)得到java代码。 package com.a.sample.androidtest; import android.os.Bundle; import android.support.v7.app....

Paaaaaaaa的博客 466

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

171219 JarvisOJ(DebugMe)(1)

1625-5 王子昂 总结《2017年12月19日》 【连续第445天总结】 A. JarvisOJ-DebugMe B. JarvisOJ上的题…真是让人痛苦又快乐着,每题都挺难的,但是又能学到不少东西,但是WP难找真让人头疼OTZ强迫自己学习呀这是拖入IDA反编译,发现是Elf的动态链接库 所以动态调试就比较麻烦了(:з」∠)还要自己写个程序加载它main函数很直接,要求有2个参数

whklhhhh的博客 549

Jarvis-androideasy

一道独立自主的Android逆向! 题目地址:Jarvis-androideasy Android killer打开查看源代码: 其关键地方为: 这个JAVA代码看起来还是有点费劲的(哭唧唧)。 非常简单,就是s与0x17异或就可以了。 emmmm,关键还是练习一下python。 s = [0x71,0x7b,0x76,0x70,0x6c,0x5e,0x63,0x48,0x26,0x44,0x4...

weixin_43464124的博客 296

[Android开源]一套快速高效的开发框架EasyAndroid

类库介绍 EasyAndroid 现在Android的框架很多,第三方库也很多,当做一个项目的时候,会考虑怎么整合那么多的资源,以达到复用快速开发。 今天要说的这个框架就是整合了主流Retrofit2网络层封装、Fresco图片加载、都使用OKHTTP3进行网络处理、使用MVP架构,来快速灵活开发复用我们的项目。 框架说明Retrofit2为什么要使用它呢?我们来想想如果不使用它的话,我们直接操作O

站在巨人的肩膀上 2万+

android Easy框架之说明以及总结 草稿

前言: 一天跟朋友吃饭听说他准备写书,分享他多年的工作技巧以及经验,我不禁心中滂湃写一篇微博总结下工作经验和自己开发的Easy框架(之前有写过一篇但不完整)。干一行爱一行从工作中找到乐趣找到成就感,我个人喜欢思考探索钻研,总结开发经验写出Easy框架和一些UI控件,并且用于开发中让开发简单、...

chouqiu3611的博客 308

看大师讲解Android快速开发框架EasyAndroid

前几天做了小应用,感觉小有成就,名字叫“中国好诗词”,是一款趣味答题类的游戏,题目各种火爆各种经典,下载地址,看似一个简单的答题小游戏却是五脏俱全,从开发流程上都进行了严格的规范,大家有空可以下载玩玩~ 在这个应用中,用到了我以前集成的一个快速开发框架-EasyAndroid,这个框架我以前在做项目的时候总结,整理出来的,对于快速开发Android应用非常实用。 其实,A

让我们一起摇摆 2876

【jarvisoj刷题之旅】逆向题目[61dctf]stheasy的writeup

直接载入IDA 看有没有什么可疑字符串   双击进入 双击进入引用 F5反汇编成c代码 经过分析可以看出sub_8048630()这个方法是关键 双击进入 经过分析   再将一些难看的变量名什么的修改下 就变成下图这个样子 分析可知s就相当于我们想要得到的flag   反过来我们可以通过已经有的a和b这两个数组来得到flag           第一步:求a[...

iqiqiya的博客 1307

Jarvis-stheasy

当我觉得自己走到一个瓶颈期之后,就需要去换个方向寻求突破。于是今晚重拾逆向。嘻嘻嘻嘻嘻~ 题目地址:Jarvis-stheasy 32位的IDA打开它 这是它的main函数: 我们可以看出那个if语句才是真正的判断语句。 打开sub_8048630函数,我们可以看到: 很明显,flag的长度要为29,然后每一个flag的字符都等于a[(b[v3]/3-2)]) 那么现在就来看看a、b都是些什么...

weixin_43464124的博客 322

JarvisOJ misc100-easyapk wp

看到这个题放在misc里面,还以为会是以apk掩人耳目的misc题,结果没想到是一个纯正的安卓逆向。 可以看到程序的入口点还是MainActivityprotected void onCreate(Bundle arg3) { super.onCreate(arg3); this.setContentView(2130968602); Applica

Magic1an的博客 1588

JARVIS OJ re方向部分题解

JARVIS OJ re方向部分题解 闲来没事,把以前写过的题目wp写一下吧 都是简单的哟 Androideasy 放进jeb a = [113, 123, 118, 112, 108, 94, 99, 72, 38, 68, 72, 87, 89, 72, 36, 118, 100, 78, 72, 87, 121, 83, 101, 39, 62, 94, 62, 38, 107, 115,...

皮三宝好菜的博客 433

iscc_obfuscation and encode

iscc_obfuscation and encode 没事做了一道iscc的逆向题,题目还是有点意思的。首先ida反汇编。 发现有两个关键的函数fencode()和encode(),输入的字符串通过这两个函数,最后转换成s1与字符串”lUFBuT7hADvItXEGn7KgTEjqw8U5VQUq”进行比较。先进入到fencode()里看一看。 打开之后惊了,数了一下大概11层循环...

Nothing 878
上一篇: (Jarvis Oj)(Re)DD-hello
下一篇: (Jarvis Oj)(Re)Findkey
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值