Function at 0x1400260d0
Capabilities:
Contain obfuscated stackstrings
Create a process with modified i/o handles and window
Create pipe
Create process on windows
Create process suspended
Encode data using xor
Hash data using fnv
Read file on windows
Self delete

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1490]
mov eax, 0x1590
call fcn.140033c70
sub rsp, rax
mov rax, qword [0x14004b040]
xor rax, rsp
mov qword [rbp + 0x1480], rax
mov ebx, ecx
xor r15d, r15d
mov r13d, r15d
mov dword [rsp + 0x50], r15d
mov qword [rbp - 0x78], r15
lea rax, [rbp - 0x70]
mov qword [rsp + 0x58], rax
mov cl, 1
call qword [sym.imp.MSVCP140.dll_private:_static_class_std::locale::_Locimp____ptr64___cdecl_std::locale::_Init_bool_]
mov qword [rbp - 0x58], rax
lea rcx, [rbp - 0x60]
call fcn.1400140e0
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x60]
call fcn.140013b70
mov qword [rbp - 0x68], rax
lea r9d, [r15 + 1]
lea r8, [0x14003e552]
lea rdx, str.___A_Za_z_:___r_n__._dllexebatjarvbs__b
lea rcx, [rbp - 0x78]
call fcn.140013c60
nop
mov edx, ebx
lea rcx, [rbp + 0x460]
call fcn.14000eb20
nop
mov r8, rax
lea rdx, str.memory.exe__p
lea rcx, [rbp + 0x440]
call fcn.14000f5e0
nop
lea rcx, [rbp + 0x460]
call fcn.140002e70
mov qword [rbp], 0x18
mov qword [rbp + 0x10], 1
mov qword [rbp + 8], r15
xor r9d, r9d
lea r8, [rbp]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CreatePipe]
xor r8d, r8d
lea edx, [r15 + 1]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_SetHandleInformation]
mov dword [rbp + 0x100], 0x68
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
movups xmmword [rbp + 0x118], xmm0
movups xmmword [rbp + 0x128], xmm0
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm0
movups xmmword [rbp + 0x158], xmm0
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x158], rax
psrldq xmm0, 4
movd eax, xmm0
or eax, 0x101
mov dword [rbp + 0x13c], eax
mov word [rbp + 0x140], r15w
lea rdx, [rbp + 0x440]
cmp qword [rbp + 0x458], 7
cmova rdx, qword [rbp + 0x440]
lea rax, [rbp + 0x40]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x10
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
lea r12, [r15 - 1]
test eax, eax
je 0x140027362
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x480]
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbp + 0x2e0], xmm0
mov qword [rbp + 0x2f0], r15
mov qword [rbp + 0x2f8], 0xf
mov byte [rbp + 0x2e0], r15b
mov dword [rbp - 0x50], r15d
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
lea ecx, [r15 + 0x30]
call fcn.1400333a8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x38], r15
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 7
mov qword [rbp - 0x18], 8
mov dword [rbp - 0x50], 0x3f800000
mov r8, rax
lea edx, [r15 + 0x10]
lea rcx, [rbp - 0x38]
call fcn.140005720
nop
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x54]
mov r8d, 0x1000
lea rdx, [rbp + 0x480]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140027328
lea rdi, [0x14003d298]
lea rbx, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
lea rsi, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
nop word [rax + rax]
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x140027328
mov r8d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x340], xmm0
mov qword [rbp + 0x350], r15
mov qword [rbp + 0x358], r15
lea rdx, [rbp + 0x480]
lea rcx, [rbp + 0x340]
call fcn.140009620
nop
mov qword [rbp + 0x170], rdi
lea rcx, [rbp + 0x200]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
or r13d, 8
mov dword [rsp + 0x50], r13d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x170]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x170], rbx
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rbp + rcx + 0x16c], edx
lea rax, [rbp + 0x180]
mov qword [rsp + 0x58], rax
lea rcx, [rbp + 0x180]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov qword [rbp + 0x180], rsi
lea rdx, [rbp + 0x340]
cmp qword [rbp + 0x358], 0xf
cmova rdx, qword [rbp + 0x340]
mov r9d, 2
mov r8, qword [rbp + 0x350]
lea rcx, [rbp + 0x180]
call fcn.140024930
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x2a0], xmm0
mov qword [rbp + 0x2b0], r15
mov qword [rbp + 0x2b8], 0xf
mov byte [rbp + 0x2a0], 0
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x170]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x170]
call fcn.140024a70
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator_bool_void_const___ptr64]
test al, al
je 0x140027239
lea rax, [rsp + 0x68]
mov qword [rbp + 0xf0], rax
nop dword [rax]
lea rbx, [rbp + 0x2a0]
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
seta cl
mov r8, qword [rbp + 0x2a0]
cmova rbx, r8
mov rsi, qword [rbp + 0x2b0]
add rbx, rsi
lea rdi, [rbp + 0x2a0]
test cl, cl
cmovne rdi, r8
cmp rdi, rbx
je 0x14002654a
nop dword [rax]
movzx ecx, byte [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
test eax, eax
je 0x140026535
inc rdi
cmp rdi, rbx
jne 0x140026520
mov rdx, qword [rbp + 0x2b8]
mov rsi, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a0]
lea r14, [rbp + 0x2a0]
cmp rdx, 0xf
seta cl
cmova r14, r8
lea rbx, [rbp + 0x2a0]
test cl, cl
cmovne rbx, r8
add rbx, rsi
cmp rbx, r14
je 0x14002659f
lea rsi, [rbx - 1]
movzx ecx, byte [rsi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
test eax, eax
je 0x14002658a
mov rbx, rsi
cmp rsi, r14
jne 0x140026571
mov rdx, qword [rbp + 0x2b8]
mov rsi, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a0]
lea rax, [rbp + 0x2a0]
cmp rdx, 0xf
seta cl
cmova rax, r8
lea rdx, [rax + rsi]
lea rax, [rbp + 0x2a0]
mov r9, rbx
sub rdx, rbx
test cl, cl
je 0x1400265cb
sub r9, r8
jmp 0x1400265d5
sub r9, rax
lea r8, [rbp + 0x2a0]
mov rax, rsi
sub rax, r9
cmp rax, rdx
cmovb rdx, rax
lea rcx, [r8 + r9]
sub rsi, rdx
mov r8, rsi
sub r8, r9
inc r8
add rdx, rcx
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x2b0], rsi
lea r8, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
seta cl
mov r9, qword [rbp + 0x2a0]
cmova r8, r9
lea rax, [rbp + 0x2a0]
mov rdx, r8
sub rdi, r8
test cl, cl
je 0x140026634
sub rdx, r9
jmp 0x14002663e
sub rdx, rax
lea r9, [rbp + 0x2a0]
mov rax, rsi
sub rax, rdx
cmp rax, rdi
cmovb rdi, rax
lea rcx, [r9 + rdx]
sub rsi, rdi
mov r8, rsi
sub r8, rdx
inc r8
lea rdx, [rcx + rdi]
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x2b0], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0x360], xmm0
mov qword [rbp + 0x370], 4
mov qword [rbp + 0x378], 0xf
mov dword [rbp + 0x360], 0x6578652e
mov byte [rbp + 0x364], 0
movups xmmword [rbp + 0x380], xmm0
mov qword [rbp + 0x390], 4
mov qword [rbp + 0x398], 0xf
mov dword [rbp + 0x380], 0x6c6c642e
mov byte [rbp + 0x384], 0
movups xmmword [rbp + 0x3a0], xmm0
mov qword [rbp + 0x3b0], 4
mov qword [rbp + 0x3b8], 0xf
mov dword [rbp + 0x3a0], 0x7461622e
mov byte [rbp + 0x3a4], 0
movups xmmword [rbp + 0x3c0], xmm0
mov qword [rbp + 0x3d0], 4
mov qword [rbp + 0x3d8], 0xf
mov dword [rbp + 0x3c0], 0x7362762e
mov byte [rbp + 0x3c4], 0
movups xmmword [rbp + 0x3e0], xmm0
mov qword [rbp + 0x3f0], 4
mov qword [rbp + 0x3f8], 0xf
mov dword [rbp + 0x3e0], 0x72616a2e
mov byte [rbp + 0x3e4], 0
movups xmmword [rbp + 0x400], xmm0
mov qword [rbp + 0x410], 4
mov qword [rbp + 0x418], 0xf
mov dword [rbp + 0x400], 0x3173702e
mov byte [rbp + 0x404], 0
movups xmmword [rbp + 0x420], xmm0
mov qword [rbp + 0x430], 3
mov qword [rbp + 0x438], 0xf
mov eax, dword [0x14003e554]
mov word [rbp + 0x420], ax
movzx eax, byte [0x14003e556]
mov byte [rbp + 0x422], al
mov byte [rbp + 0x423], 0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
mov ecx, 0xe0
call fcn.1400333a8
mov rbx, rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
lea rcx, [rax + 0xe0]
mov qword [rsp + 0x78], rcx
lea rdi, [rbp + 0x360]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rax
lea rax, [rsp + 0x68]
mov qword [rbp + 0x78], rax
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.140008d30
add rbx, 0x20
mov qword [rbp + 0x70], rbx
add rdi, 0x20
lea rax, [rbp + 0x440]
cmp rdi, rax
jne 0x140026810
mov qword [rsp + 0x70], rbx
lea r9, [fcn.140008c90]
mov edx, 0x20
lea r8d, [rdx - 0x19]
lea rcx, [rbp + 0x360]
call fcn.140033660
lea r15, [rbp + 0x2a0]
mov r14, qword [rbp + 0x2b8]
cmp r14, 0xf
seta r12b
mov rsi, qword [rbp + 0x2a0]
cmova r15, rsi
mov rdi, qword [rbp + 0x2b0]
test rdi, rdi
je 0x14002689e
mov r8, rdi
mov edx, 0x3a
mov rcx, r15
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x14002689e
sub rbx, r15
jmp 0x1400268a5
mov rbx, 0xffffffffffffffff
lea r15, [rbp + 0x2a0]
test r12b, r12b
cmovne r15, rsi
cmp rbx, rdi
jae 0x1400268dd
mov r8, rdi
sub r8, rbx
lea rcx, [r15 + rbx]
mov edx, 0x5c
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400268dd
sub rax, r15
mov r12, 0xffffffffffffffff
jmp 0x1400268e7
mov r12, 0xffffffffffffffff
mov rax, r12
cmp rbx, 0xffffffffffffffff
je 0x140026a59
cmp rax, 0xffffffffffffffff
je 0x140026a59
lea rax, [rbp + 0x2e0]
cmp qword [rbp + 0x2f8], 0xf
cmova rax, qword [rbp + 0x2e0]
mov rcx, qword [rbp + 0x2f0]
cmp rcx, 1
jb 0x140026a59
cmp byte [rax + rcx - 1], 0x5c
jne 0x14002692e
xor eax, eax
jmp 0x140026933
sbb eax, eax
or eax, 1
test eax, eax
sete al
test al, al
je 0x140026a59
mov rbx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
cmp rbx, r15
je 0x140026a59
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140026960
mov rdx, qword [rbx]
lea rcx, [rbp + 0x2a0]
cmp r14, 0xf
cmova rcx, rsi
cmp rdi, qword [rbx + 0x10]
jne 0x140026981
mov r8, rdi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14002698f
add rbx, 0x20
cmp rbx, r15
jne 0x140026953
jmp 0x140026a59
lea rdx, str.____Detected_file_executed_with_special_characters.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000acc0
lea rdx, [0x14000df70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, str.____Line_1:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000acc0
lea rdx, [rbp + 0x2e0]
cmp qword [rbp + 0x2f8], 0xf
cmova rdx, qword [rbp + 0x2e0]
mov r8, qword [rbp + 0x2f0]
mov rcx, rax
call fcn.140027d70
lea rdx, [0x14000df70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, str.____Line_2:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000acc0
lea rdx, [rbp + 0x2a0]
cmp qword [rbp + 0x2b8], 0xf
cmova rdx, qword [rbp + 0x2a0]
mov r8, qword [rbp + 0x2b0]
mov rcx, rax
call fcn.140027d70
lea rdx, [0x14000df70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r14, qword [rbp + 0x2b8]
mov rdi, qword [rbp + 0x2b0]
mov rsi, qword [rbp + 0x2a0]
xor eax, eax
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x88], al
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xa0], xmm1
mov qword [rbp + 0xb0], rax
mov byte [rbp + 0xb8], al
movdqa xmmword [rbp + 0xc0], xmm0
mov byte [rbp + 0xd0], al
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], rax
mov byte [rbp + 0xe8], al
test rdi, rdi
je 0x1400270a1
lea rdx, [rbp + 0x2a0]
cmp r14, 0xf
seta bl
cmova rdx, rsi
movabs r9, 0xcbf29ce484222325
mov ecx, eax
test rdi, rdi
je 0x140026b0a
movabs r14, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r14
inc rcx
cmp rcx, rdi
jb 0x140026af0
mov r14, qword [rbp + 0x2b8]
lea r8, [rbp + 0x2a0]
lea rdx, [rbp + 0x270]
lea rcx, [rbp - 0x50]
call fcn.140028240
mov rcx, qword [rax + 8]
mov rax, qword [rbp - 0x48]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [rbp - 0x48]
jne 0x1400270a1
lea r8, [rbp + 0x2a0]
test bl, bl
je 0x140026b4e
mov rcx, rsi
lea rdx, [rsi + rdi]
jmp 0x140026b62
lea rdx, [rbp + 0x2a0]
add rdx, rdi
lea rcx, [rbp + 0x2a0]
mov rsi, r8
mov qword [rsp + 0x28], rsi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0x80]
call fcn.140027f30
mov r15, qword [rbp + 0x90]
test al, al
je 0x14002708a
cmp qword [rbp + 0x98], r15
lea rcx, [rbp + 0xd8]
cmovne rcx, r15
cmp byte [rcx + 0x10], 0
je 0x140026ba7
movups xmm0, xmmword [rcx]
movups xmmword [rbp - 0x10], xmm0
jmp 0x140026baf
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c0], xmm0
xor eax, eax
mov qword [rbp + 0x2d0], rax
mov qword [rbp + 0x2d8], rax
mov rdx, qword [rbp - 0x10]
mov r8, qword [rbp - 8]
cmp rdx, r8
jne 0x140026bf4
mov edx, eax
mov qword [rbp + 0x2d0], rax
mov r8d, 0xf
mov qword [rbp + 0x2d8], r8
mov byte [rbp + 0x2c0], al
jmp 0x140026c11
sub r8, rdx
lea rcx, [rbp + 0x2c0]
call fcn.140009620
mov r8, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x2d0]
or r13d, 7
mov dword [rsp + 0x50], r13d
lea rsi, [rbp + 0x2c0]
cmp r8, 0xf
seta cl
mov r9, qword [rbp + 0x2c0]
cmova rsi, r9
add rsi, rdx
lea rax, [rbp + 0x2c0]
test cl, cl
je 0x140026c47
lea rbx, [r9 + rdx]
jmp 0x140026c52
lea rbx, [rax + rdx]
lea r9, [rbp + 0x2c0]
mov r8b, 0x22
mov rdx, rbx
mov rcx, r9
call fcn.140032d40
mov r10, rax
cmp rax, rbx
je 0x140026c86
inc rax
cmp rax, rbx
je 0x140026c86
movzx ecx, byte [rax]
cmp cl, 0x22
je 0x140026c7e
mov byte [r10], cl
inc r10
inc rax
cmp rax, rbx
jne 0x140026c70
lea rcx, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
seta r8b
cmova rcx, qword [rbp + 0x2c0]
mov r9, r10
sub r9, rcx
sub rsi, r10
mov rdi, qword [rbp + 0x2d0]
mov rax, rdi
sub rax, r9
cmp rax, rsi
cmovb rsi, rax
lea rcx, [rbp + 0x2c0]
test r8b, r8b
cmovne rcx, qword [rbp + 0x2c0]
add rcx, r9
sub rdi, rsi
mov r8, rdi
sub r8, r9
inc r8
lea rdx, [rcx + rsi]
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 0x2d0], rdi
lea rdx, [rbp + 0x2c0]
mov rsi, qword [rbp + 0x2d8]
cmp rsi, 0xf
seta r14b
mov rbx, qword [rbp + 0x2c0]
cmova rdx, rbx
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test rdi, rdi
je 0x140026d4a
movabs rsi, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rsi
inc rcx
cmp rcx, rdi
jb 0x140026d30
mov rsi, qword [rbp + 0x2d8]
lea r8, [rbp + 0x2c0]
lea rdx, [rbp + 0x290]
lea rcx, [rbp - 0x50]
call fcn.140028240
mov rcx, qword [rax + 8]
mov rax, qword [rbp - 0x48]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [rbp - 0x48]
jne 0x140027053
lea rax, [rbp + 0x300]
mov qword [rbp + 0x20], rax
lea rsi, [rbp + 0x2c0]
test r14b, r14b
cmovne rsi, rbx
call fcn.1400324dc
mov r14d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x300], xmm0
xor eax, eax
mov qword [rbp + 0x310], rax
mov qword [rbp + 0x318], 7
mov word [rbp + 0x300], ax
or r13d, 0x40
mov dword [rsp + 0x50], r13d
test rdi, rdi
je 0x140026e4d
cmp rdi, 0x7fffffff
ja 0x140027453
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, edi
mov rdx, rsi
mov ecx, r14d
call fcn.140032504
mov rbx, rax
mov qword [rsp + 0x58], rax
shr rax, 0x20
test eax, eax
jne 0x140027449
movsxd rdx, ebx
lea rcx, [rbp + 0x300]
call fcn.14001d5e0
lea r9, [rbp + 0x300]
cmp qword [rbp + 0x318], 7
cmova r9, qword [rbp + 0x300]
mov dword [rsp + 0x20], ebx
mov r8d, edi
mov rdx, rsi
mov ecx, r14d
call fcn.140032504
mov qword [rsp + 0x58], rax
shr rax, 0x20
test eax, eax
jne 0x14002743f
and r13d, 0xffffffbf
or r13d, 0x30
mov dword [rsp + 0x50], r13d
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x260]
call fcn.1400080b0
movsd xmm0, qword [rax]
movsd qword [rbp + 0x58], xmm0
mov ecx, dword [rax + 8]
mov dword [rbp + 0x30], ecx
lea rax, [0x14004b0c8]
mov qword [rbp + 0x38], rax
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x20], xmm0
mov eax, dword [rbp + 0x58]
test eax, eax
je 0x140026e9f
cmp eax, 1
setne bl
jmp 0x140026ea9
xor bl, bl
test ecx, ecx
jne 0x14002742e
mov r8, qword [rbp + 0x318]
cmp r8, 7
jbe 0x140026ec2
mov rdx, qword [rbp + 0x300]
call fcn.1400030f0
test bl, bl
je 0x140026fe5
xorps xmm0, xmm0
movups xmmword [rbp + 0x320], xmm0
xor eax, eax
mov qword [rbp + 0x330], rax
mov qword [rbp + 0x338], 7
mov word [rbp + 0x320], ax
lea r8, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova r8, qword [rbp + 0x2c0]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rax
mov r9d, r12d
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
test eax, eax
jle 0x140026f7d
lea rdx, [rbx - 1]
lea rcx, [rbp + 0x320]
call fcn.14001d5e0
lea rcx, [rbp + 0x320]
cmp qword [rbp + 0x338], 7
cmova rcx, qword [rbp + 0x320]
lea r8, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova r8, qword [rbp + 0x2c0]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rcx
mov r9d, r12d
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rdx, [rbp + 0x320]
call fcn.140031830
test al, al
jne 0x140026fd7
lea rdx, str.___Executed__Unsigned_file:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000acc0
lea rdx, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova rdx, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2d0]
mov rcx, rax
call fcn.140027d70
lea rdx, [0x14000df70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0x320]
call fcn.140002e70
jmp 0x14002702e
lea rdx, str.___Executed__Deleted_file:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000acc0
lea rdx, [rbp + 0x2c0]
cmp qword [rbp + 0x2d8], 0xf
cmova rdx, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2d0]
mov rcx, rax
call fcn.140027d70
lea rdx, [0x14000df70]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea r8, [rbp + 0x2c0]
lea rdx, [rbp + 0x280]
lea rcx, [rbp - 0x50]
call fcn.140027630
mov rsi, qword [rbp + 0x2d8]
mov rbx, qword [rbp + 0x2c0]
cmp rsi, 0xf
jbe 0x14002708a
lea rdx, [rsi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140027082
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027412
mov rcx, rbx
call fcn.140033280
mov r14, qword [rbp + 0x2b8]
mov rdi, qword [rbp + 0x2b0]
mov rsi, qword [rbp + 0x2a0]
jmp 0x1400270a8
mov r15, qword [rbp + 0x90]
lea rdx, [rbp + 0x2a0]
cmp r14, 0xf
cmova rdx, rsi
mov r8, rdi
lea rcx, [rbp + 0x2e0]
call fcn.1400169d0
nop
test r15, r15
je 0x14002711e
mov rax, qword [rbp + 0xa0]
sub rax, r15
sar rax, 3
movabs rcx, 0xaaaaaaaaaaaaaaab
imul rax, rcx
lea rdx, [rax + rax*2]
shl rdx, 3
mov rax, r15
cmp rdx, 0x1000
jb 0x140027115
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027419
mov rcx, r15
call fcn.140033280
nop
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x1400271d2
mov rdi, qword [rsp + 0x70]
cmp rbx, rdi
je 0x140027199
xor eax, eax
nop dword [rax + rax]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x14002717c
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x140027175
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140027420
mov rcx, r8
call fcn.140033280
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
add rbx, 0x20
cmp rbx, rdi
jne 0x140027140
mov rbx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x78]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400271ca
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027420
mov rcx, rbx
call fcn.140033280
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x170]
add rcx, rax
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x170]
call fcn.140024a70
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator_bool_void_const___ptr64]
test al, al
mov r15d, 0
jne 0x1400264e0
lea rbx, vtable.std::basic_istringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
lea rdi, [0x14003d298]
lea rsi, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov rdx, qword [rbp + 0x2b8]
cmp rdx, 0xf
jbe 0x14002727a
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140027275
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027427
call fcn.140033280
mov qword [rbp + 0x2b0], r15
mov qword [rbp + 0x2b8], 0xf
mov byte [rbp + 0x2a0], 0
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x170], rbx
mov rax, qword [rbp + 0x170]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rbp + rcx + 0x16c], edx
lea rcx, [rbp + 0x180]
call fcn.140024760
lea rcx, [rbp + 0x188]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x200]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov r8, qword [rbp + 0x358]
cmp r8, 0xf
jbe 0x1400272fe
mov rdx, qword [rbp + 0x340]
call fcn.140008ff0
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x54]
mov r8d, 0x1000
lea rdx, [rbp + 0x480]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140026370
mov edx, 0xffffffff
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp - 0x50]
call fcn.140027470
nop
lea rcx, [rbp + 0x2e0]
call fcn.140008c90
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rbp + 0x440]
call fcn.140002e70
nop
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x1400273bc
lock xadd dword [rax + 0x2c], r12d
cmp r12d, 1
jne 0x1400273bc
mov rbx, qword [rbp - 0x78]
test rbx, rbx
je 0x1400273bc
nop dword [rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], r15
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x1400273a0
mov qword [rbp - 0x78], r15
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x1400273e2
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1400273e2
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
mov rcx, qword [rbp + 0x1480]
xor rcx, rsp
call fcn.140033260
lea r11, [rsp + 0x1590]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea r8, [rbp + 0x300]
lea rdx, [rbp + 0x20]
call fcn.140007fe0
nop
mov ecx, dword [rsp + 0x5c]
call fcn.140007870
int3
mov ecx, dword [rsp + 0x5c]
call fcn.140007870
int3
call fcn.140007590
int3