Function at 0x18000acc0
Capabilities:
Create process on windows
Create thread
Log keystrokes via polling
Read file on windows
Write and execute a file
Write file on windows

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push rdi
push r14
lea rbp, [r11 - 0x5f]
sub rsp, 0xa0
mov rax, qword [0x180096020]
xor rax, rsp
mov qword [rbp - 1], rax
movups xmm0, xmmword [0x180090090]
mov qword [r11 + 0x10], r12
lea r8, [rbp - 0x19]
movaps xmmword [r11 - 0x48], xmm8
lea rcx, [0x18008e6d0]
movss xmm8, dword [0x18008ec40]
xorps xmm1, xmm1
unpcklps xmm1, xmm8
movq rdx, xmm1
movaps xmmword [r11 - 0x58], xmm10
movdqa xmmword [rbp - 0x19], xmm0
call fcn.180001990
movss xmm2, dword [0x18008ec6c]
lea r8, [rbp - 0x19]
movups xmm0, xmmword [0x180090090]
lea rcx, [0x18008e6d0]
xorps xmm1, xmm1
unpcklps xmm1, xmm2
movq rdx, xmm1
movdqa xmmword [rbp - 0x19], xmm0
call fcn.180001990
movss xmm2, dword [0x18008ec7c]
lea r8, [rbp - 0x19]
movups xmm0, xmmword [0x180090090]
lea rcx, [0x18008e6d0]
xorps xmm1, xmm1
unpcklps xmm1, xmm2
movq rdx, xmm1
movdqa xmmword [rbp - 0x19], xmm0
call fcn.180001990
movss xmm2, dword [0x18008ec90]
lea r8, [rbp - 0x19]
movups xmm0, xmmword [0x180090090]
lea rcx, [0x18008e6d0]
xorps xmm1, xmm1
unpcklps xmm1, xmm2
movq rdx, xmm1
movdqa xmmword [rbp - 0x19], xmm0
call fcn.180001990
movups xmm0, xmmword [0x180090090]
lea r8, [rbp - 0x19]
movss xmm10, dword [0x18008eca4]
lea rcx, [0x18008e6d0]
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x19], xmm0
unpcklps xmm1, xmm10
movq rdx, xmm1
call fcn.180001990
mov r12d, 1
mov ecx, r12d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
lea ecx, [r12 + 0x2c]
setne byte [0x1800995ac]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test r12b, al
je 0x18000ae18
cmp byte [0x180096ca0], 0
sete byte [0x180096ca0]
mov ecx, 0x24
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test r12b, al
je 0x18000ae3c
cmp byte [0x180096ca0], 0
sete r9b
mov byte [0x180096ca0], r9b
jmp 0x18000ae44
movzx r9d, byte [0x180096ca0]
movss xmm0, dword [0x18008ecd0]
lea rdx, [0x180099720]
movss xmm1, dword [0x18008eccc]
unpcklps xmm1, xmm0
movq r8, xmm1
call fcn.18000cdd0
mov r14d, 0x80
test al, al
je 0x18000bcee
cmp dword [0x18009bc80], 0
lea rcx, [0x18008e6fc]
mov qword [rsp + 0xc0], rsi
movaps xmmword [rsp + 0x90], xmm6
sete r8b
movss xmm6, dword [0x18008ec84]
movaps xmmword [rsp + 0x80], xmm7
movaps xmm0, xmm6
movss xmm7, dword [0x18008ec4c]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d230
mov ecx, dword [0x18009bc80]
xor esi, esi
test al, al
movaps xmm0, xmm6
unpcklps xmm0, xmm7
cmovne ecx, esi
movq rdx, xmm0
cmp ecx, r12d
mov dword [0x18009bc80], ecx
lea rcx, [0x18008e704]
sete r8b
call fcn.18000d230
mov ecx, dword [0x18009bc80]
test al, al
movaps xmm0, xmm6
cmovne ecx, r12d
unpcklps xmm0, xmm7
cmp ecx, r12d
mov dword [0x18009bc80], ecx
movq rdx, xmm0
lea rcx, [0x18008e70c]
sete r8b
call fcn.18000d230
mov ecx, dword [0x18009bc80]
test al, al
movaps xmm0, xmm6
mov ebx, 2
cmovne ecx, ebx
unpcklps xmm0, xmm7
cmp ecx, 3
mov dword [0x18009bc80], ecx
movq rdx, xmm0
lea rcx, [0x18008e714]
sete r8b
call fcn.18000d230
mov ecx, dword [0x18009bc80]
test al, al
movaps xmm0, xmm6
mov edi, 3
cmovne ecx, edi
unpcklps xmm0, xmm7
cmp ecx, 4
mov dword [0x18009bc80], ecx
movq rdx, xmm0
lea rcx, [0x18008e71c]
sete r8b
call fcn.18000d230
mov ecx, dword [0x18009bc80]
test al, al
movss xmm0, dword [0x18008ecb0]
mov edx, 4
cmovne ecx, edx
unpcklps xmm0, xmm7
mov dword [0x18009bc80], ecx
movq rdx, xmm0
lea rcx, [0x18008e728]
call fcn.18000d4f0
test al, al
je 0x18000afe2
mov dword [rsp + 0x28], r12d
lea r8, str.http:__qm.qq.com_cgi_bin_qm_qr__wv1027kVoJlYUpIB0_zKVO6YwneNm_2onwreSIJauthKeyXfHZu4efywO4G8SJUZeD8LsTP4SLOropdI3kmmEtTGuXYJF9_2F1Do5HSI_2FeHgYbNLnoverify0group_code731620779
xor r9d, r9d
mov qword [rsp + 0x20], rsi
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteA]
mov eax, dword [0x18009bc80]
test eax, eax
jne 0x18000b107
lea rcx, [0x18008e748]
call fcn.18000d0e0
lea rdx, [0x1800997c6]
lea rcx, [0x18008e758]
call fcn.18000d770
cmp byte [0x1800997c6], sil
je 0x18000bcd6
lea rdx, [0x1800997c0]
lea rcx, [0x18008e768]
call fcn.18000d770
lea rdx, [0x1800997c1]
lea rcx, [0x18008e778]
call fcn.18000d770
lea rdx, [0x1800997c3]
lea rcx, [0x18008e788]
call fcn.18000d770
lea rdx, [0x1800997c2]
lea rcx, [0x18008e798]
call fcn.18000d770
lea rdx, [0x1800997bd]
lea rcx, [0x18008e7a8]
call fcn.18000d770
lea rdx, [0x1800997be]
lea rcx, [0x18008e7b8]
call fcn.18000d770
movss xmm3, dword [0x18008ecc8]
lea rdx, [0x180099768]
movss xmm2, dword [0x18008ebf0]
lea rcx, [0x18008e7d0]
call fcn.18000df40
lea rdx, [0x18009977c]
lea rcx, [0x18008e7e0]
call fcn.18000e7e0
lea rdx, [0x18009978c]
lea rcx, [0x18008e7f0]
call fcn.18000e7e0
lea rdx, [0x18009976c]
lea rcx, [0x18008e800]
call fcn.18000e7e0
lea rcx, [0x18008e810]
call fcn.18000d0e0
lea rcx, str.VShift
call fcn.18000d0e0
jmp 0x18000bcd6
cmp eax, r12d
jne 0x18000b328
lea rcx, [0x18008e840]
call fcn.18000d0e0
lea rdx, [0x1800997c9]
lea rcx, [0x18008e850]
call fcn.18000d770
cmp byte [0x1800997c9], sil
je 0x18000bcd6
lea rdx, [0x18009979c]
lea rcx, [0x18008e860]
call fcn.18000d770
lea rdx, [0x1800997a4]
lea rcx, [0x18008e870]
call fcn.18000d770
lea rdx, [0x1800997ac]
lea rcx, [0x18008e880]
call fcn.18000d770
lea rdx, [0x1800997b4]
lea rcx, [0x18008e890]
call fcn.18000d770
lea rdx, [0x1800997bf]
lea rcx, [0x18008e8a0]
call fcn.18000d770
cmp byte [0x1800997bf], sil
je 0x18000b282
movss xmm6, dword [0x18008ec98]
lea rcx, [0x18008e8b0]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b21b
mov rax, qword [0x180099528]
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b21b
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b21b
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x18000b21b
mov rax, qword [rax + 0x330]
mov rcx, qword [rax + 0x310]
mov eax, 5
mov word [rcx + 0x180], ax
movaps xmm0, xmm6
lea rcx, [0x18008e8c0]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b282
mov rax, qword [0x180099528]
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b282
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b282
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x18000b282
mov rax, qword [rax + 0x330]
mov rcx, qword [rax + 0x310]
mov word [rcx + 0x180], r12w
cmp byte [0x18009979c], sil
je 0x18000b2ae
movss xmm3, dword [0x18008ecd4]
lea rdx, [0x1800997a0]
movss xmm2, dword [0x18008eccc]
lea rcx, [0x18008e8d0]
call fcn.18000df40
cmp byte [0x1800997a4], sil
movss xmm6, dword [0x18008ebf0]
je 0x18000b2d9
movaps xmm3, xmm8
lea rdx, [0x1800997a8]
movaps xmm2, xmm6
lea rcx, [0x18008e8e0]
call fcn.18000df40
cmp byte [0x1800997ac], sil
je 0x18000b2fc
movaps xmm3, xmm8
lea rdx, [0x1800997b0]
movaps xmm2, xmm6
lea rcx, [0x18008e8f0]
call fcn.18000df40
cmp byte [0x1800997b4], sil
je 0x18000bcd6
movaps xmm3, xmm8
lea rdx, [0x1800997b8]
movaps xmm2, xmm6
lea rcx, [0x18008e900]
call fcn.18000df40
jmp 0x18000bcd6
cmp eax, ebx
jne 0x18000b953
lea rcx, [0x18008e910]
call fcn.18000d0e0
mov rcx, qword [0x1800996d0]
movabs rbx, 0x2aaaaaaaaaaaaaab
sub rcx, qword [0x1800996c8]
mov rax, rbx
imul rcx
xor r8d, r8d
lea rcx, [0x18008e91c]
sar rdx, 1
mov r9, rdx
shr r9, 0x3f
add r9, rdx
lea rdx, [0x180099730]
call fcn.18000da30
movss xmm6, dword [0x18008ec98]
lea rcx, [0x18008e928]
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b444
movsxd rdx, dword [0x180099730]
lea rcx, [0x1800996c0]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b444
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b444
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000b444
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000b444
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
movaps xmm0, xmm6
lea rcx, [0x18008e938]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b54a
mov r8d, dword [0x180099730]
mov rax, rbx
mov rcx, qword [0x1800996d0]
inc r8d
sub rcx, qword [0x1800996c8]
mov r9d, esi
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r8d
cmp rax, rdx
cmovb r9d, r8d
movsxd rax, r9d
mov dword [0x180099730], r9d
cmp rax, rdx
jae 0x18000b54a
mov rdx, rax
lea rcx, [0x1800996c0]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b54a
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b54a
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000b54a
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000b54a
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
mov rcx, qword [0x1800996f0]
mov rax, rbx
sub rcx, qword [0x1800996e8]
xor r8d, r8d
imul rcx
lea rcx, [0x18008e948]
sar rdx, 1
mov r9, rdx
shr r9, 0x3f
add r9, rdx
lea rdx, [0x180099734]
call fcn.18000da30
movaps xmm0, xmm6
lea rcx, [0x18008e950]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b640
movsxd rdx, dword [0x180099734]
lea rcx, [0x1800996e0]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b640
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b640
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000b640
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000b640
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
movaps xmm0, xmm6
lea rcx, [0x18008e960]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b746
mov r8d, dword [0x180099734]
mov rax, rbx
mov rcx, qword [0x1800996f0]
inc r8d
sub rcx, qword [0x1800996e8]
mov r9d, esi
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r8d
cmp rax, rdx
cmovb r9d, r8d
movsxd rax, r9d
mov dword [0x180099734], r9d
cmp rax, rdx
jae 0x18000b746
mov rdx, rax
lea rcx, [0x1800996e0]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b746
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b746
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000b746
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000b746
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
mov rcx, qword [0x180099710]
mov rax, rbx
sub rcx, qword [0x180099708]
xor r8d, r8d
imul rcx
lea rcx, [0x18008e970]
sar rdx, 1
mov r9, rdx
shr r9, 0x3f
add r9, rdx
lea rdx, [0x180099738]
call fcn.18000da30
movaps xmm0, xmm6
lea rcx, [0x18008e978]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000b83c
movsxd rdx, dword [0x180099738]
lea rcx, [0x180099700]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000b83c
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000b83c
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000b83c
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000b83c
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
movaps xmm0, xmm6
lea rcx, [0x18008e988]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000bcd6
mov r8d, dword [0x180099738]
mov rax, rbx
mov rcx, qword [0x180099710]
inc r8d
sub rcx, qword [0x180099708]
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r8d
cmp rax, rdx
cmovb esi, r8d
movsxd rax, esi
mov dword [0x180099738], esi
cmp rax, rdx
jae 0x18000bcd6
mov rdx, rax
lea rcx, [0x180099700]
call fcn.18000bdf0
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x11], eax
mov rax, qword [0x180099528]
movsd qword [rbp - 0x19], xmm0
mov rcx, qword [rax + 0x81a86c0]
mov qword [0x180099520], rcx
mov rax, qword [rcx + 0x1a8]
test rax, rax
je 0x18000bcd6
mov rax, qword [rax + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000bcd6
mov rcx, qword [rcx + 0x38]
test rcx, rcx
je 0x18000bcd6
mov rcx, qword [rcx + 0x330]
test rcx, rcx
je 0x18000bcd6
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x19]
movss xmm1, dword [rbp - 0x15]
movss dword [rax + 0x1f0], xmm0
mov rax, qword [rcx + 0x1a0]
movss xmm0, dword [rbp - 0x11]
movss dword [rax + 0x1f4], xmm1
mov rax, qword [rcx + 0x1a0]
movss dword [rax + 0x1f8], xmm0
jmp 0x18000bcd6
cmp eax, edi
jne 0x18000bba1
lea rcx, [0x18008e998]
call fcn.18000d0e0
lea rdx, [0x1800997c8]
lea rcx, [0x18008e9a8]
call fcn.18000d770
cmp byte [0x1800997c8], sil
je 0x18000bcd6
lea rdx, [0x1800997c4]
lea rcx, [0x18008e9b8]
call fcn.18000d770
cmp byte [0x1800997c4], sil
movss xmm6, dword [0x18008ebf0]
movss xmm8, dword [0x18008ec64]
je 0x18000b9ce
movaps xmm3, xmm8
lea rdx, [0x180099760]
movaps xmm2, xmm6
lea rcx, [0x18008e9c8]
call fcn.18000df40
lea rdx, [0x1800997c5]
lea rcx, [0x18008e9d8]
call fcn.18000d770
cmp byte [0x1800997c5], sil
je 0x18000ba04
movaps xmm3, xmm8
lea rdx, [0x180099764]
movaps xmm2, xmm6
lea rcx, [0x18008e9f0]
call fcn.18000df40
cmp byte [0x18009975c], sil
jne 0x18000badb
movss xmm0, dword [0x18008eca0]
lea rcx, [0x18008ea00]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000badb
xor ecx, ecx
mov qword [rsp + 0xd0], r15
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdi, [rax + 0x2681360]
mov rax, qword [0x18009bc68]
test rax, rax
mov rcx, rdi
cmove rax, rdi
mov qword [0x18009bc68], rax
call fcn.180001b90
mov rax, qword [0x18009bc68]
mov qword [rbp - 9], rax
call fcn.180018df0
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
call fcn.180019310
lea r15, [0x180004720]
mov rdx, r15
lea rcx, [rbp - 9]
call fcn.1800185f0
call fcn.180018e60
mov rbx, qword [rbp - 9]
lea rdx, [rbp - 0x19]
mov qword [rbp - 0x19], r15
call fcn.180004e40
mov rcx, rdi
mov qword [rax], rbx
call fcn.180001b90
mov r15, qword [rsp + 0xd0]
cmp byte [rax], 0xe9
jne 0x18000badb
lea rcx, str.HOOK
mov byte [0x18009975c], r12b
call fcn.180002920
lea rdx, [0x18009974b]
lea rcx, [0x18008ea18]
call fcn.18000d770
lea rdx, [0x18009974a]
lea rcx, [0x18008ea28]
call fcn.18000d770
cmp byte [0x18009974a], sil
je 0x18000bb26
mov r9d, 0x64
lea rdx, [0x18009972c]
mov r8d, r12d
lea rcx, [0x18008ea38]
call fcn.18000da30
movss xmm0, dword [0x18008ecb0]
lea rcx, [0x18008ea48]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000bb63
mov qword [rsp + 0x28], rsi
lea r8, [0x1800066b0]
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
lea rdx, [0x18009973c]
lea rcx, [0x18008ea60]
call fcn.18000d770
lea rdx, [0x18009973d]
lea rcx, [0x18008ea70]
call fcn.18000d770
lea rdx, [0x18009973e]
lea rcx, [0x18008ea7c]
call fcn.18000d770
jmp 0x18000bcd6
cmp eax, 4
jne 0x18000bcd6
movaps xmm0, xmm10
lea rcx, [0x18008ea88]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000bc40
mov qword [rsp + 0x30], rsi
lea rcx, str.MC.cfg
mov dword [rsp + 0x28], r14d
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], ebx
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18000bc40
lea r9, [rbp - 9]
mov qword [rsp + 0x20], rsi
mov r8d, pe_nt_image_headers64
lea rdx, [0x1800996c0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x18000bc28
lea rcx, [0x18008d708]
call fcn.180002920
mov edx, dword [rbp - 9]
lea rcx, [0x18008d718]
call fcn.180002920
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movaps xmm0, xmm10
lea rcx, [0x18008ea98]
unpcklps xmm0, xmm7
movq rdx, xmm0
call fcn.18000d4f0
test al, al
je 0x18000bcd6
mov qword [rsp + 0x30], rsi
lea rcx, str.MC.cfg
mov dword [rsp + 0x28], r14d
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], edi
mov edx, 0x80000000
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18000bcd6
lea r9, [rbp - 9]
mov qword [rsp + 0x20], rsi
mov r8d, pe_nt_image_headers64
lea rdx, [0x1800996c0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x18000bcbe
lea rcx, [0x18008d730]
call fcn.180002920
mov edx, dword [rbp - 9]
lea rcx, [0x18008d740]
call fcn.180002920
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movaps xmm6, xmmword [rsp + 0x90]
mov rsi, qword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x60]
lea rbx, [0x180099810]
movaps xmm8, xmmword [rsp + 0x70]
lea rdi, [0x1800997e4]
mov r12, qword [rsp + 0xc8]
mov eax, dword [rbx - 0x30]
cmp eax, 0xffffffff
je 0x18000bdb0
cmp eax, 1
jne 0x18000bd41
movups xmm0, xmmword [rbx - 0x1c]
lea r9, [rbp - 0x19]
mov rcx, qword [rdi]
movss xmm2, dword [rbx - 0x20]
movss xmm1, dword [rbx - 0x24]
movaps xmmword [rbp - 0x19], xmm0
call fcn.18000cb30
jmp 0x18000bda9
cmp eax, 2
jne 0x18000bd64
movups xmm0, xmmword [rbx - 0x1c]
movzx r9d, byte [rbx]
lea r8, [rbp - 0x19]
mov rdx, qword [rdi]
mov rcx, qword [rbx - 8]
movaps xmmword [rbp - 0x19], xmm0
call fcn.18000c530
jmp 0x18000bda9
cmp eax, 3
jne 0x18000bd87
movups xmm0, xmmword [rbx - 0x1c]
movzx r9d, byte [rbx]
lea r8, [rbp - 0x19]
mov rdx, qword [rdi]
mov rcx, qword [rbx - 8]
movaps xmmword [rbp - 0x19], xmm0
call fcn.18000c7a0
jmp 0x18000bda9
cmp eax, 4
jne 0x18000bda9
movups xmm0, xmmword [rbx - 0x1c]
mov r8d, dword [rbx + 0x14]
lea r9, [rbp - 0x19]
mov rdx, qword [rdi + 0x38]
mov rcx, qword [rdi + 0x30]
movaps xmmword [rbp - 0x19], xmm0
call fcn.18000ca10
mov dword [rbx - 0x30], 0xffffffff
add rdi, 0x48
add rbx, 0x48
sub r14, 1
jne 0x18000bd10
call fcn.18000c160
mov rcx, qword [rbp - 1]
xor rcx, rsp
call fcn.180015250
mov rbx, qword [rsp + 0xd8]
add rsp, 0xa0
pop r14
pop rdi
pop rbp
ret