Function at 0x14004b320
Capabilities:
Connect to wmi namespace via wbemlocator
Enumerate files on windows
Get disk information

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x510
lea rbp, [rsp + 0x70]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14005e040]
xor rax, rsp
mov qword [rbp + 0x488], rax
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x14004bb80
xor r15d, r15d
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov edx, 0xffffffff
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
js 0x14004bba0
mov qword [rbp + 0x140], r15
lea rax, [rbp + 0x140]
mov qword [rsp + 0x20], rax
lea r9, [0x14004f820]
xor edx, edx
mov r8d, 1
lea rcx, [0x14004f830]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14004bbc6
mov rsi, qword [rbp + 0x140]
mov rcx, rsi
call fcn.14004a5b0
mov r14, rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], rax
movabs rax, 0x6b770f5ca2871d9f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x440], rax
movabs rax, 0x5eb8c32a7b7f8f3d
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x448], rax
movabs rbx, 0x6b3f0f1fa2c81ddd
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
movabs r13, 0x5eb8c32a7b208f6e
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
movdqa xmm0, xmmword [rbp + 0x440]
xorps xmm0, xmmword [rbp + 0x410]
movdqa xmmword [rbp + 0x440], xmm0
movabs rax, 0x6b7c0f4fa2901d9f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
movabs rax, 0x5eb8c3757b7f8f31
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [rbp + 0x410]
xorps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x410], xmm0
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x80]
call fcn.14004bd00
nop
lea rdx, [rbp + 0x410]
lea rcx, [rbp + 0xa0]
call fcn.14004bd00
nop
movabs rax, 0x6b6a0f52a28d1d8c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [rbp + 0x410]
xorps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x410], xmm0
movabs rax, 0x6b510f7ea2bc1d8e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
movabs rax, 0x5edcc3587b418f0a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movabs rax, 0x17328f26aca9cf5f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x170], rax
movabs rax, 0x17f6470beb60a0a0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x178], rax
movabs rax, 0xe85bf9338d4ac0d1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x180], rax
movabs rax, 0x1b0625774c3652f1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x188], rax
movabs rax, 0x99920e591bad64d3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x190], rax
movabs rax, 0x3fc7694c10af93f5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x198], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x440], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x448], rax
movabs r12, 0x17128f65acf9cf7f
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x450], rax
movabs rdi, 0x17c34738eb31a088
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x458], rax
movabs rax, 0xe812f9138d61c0f1
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x460], rax
movabs rax, 0x1b2a254e4c7e52b2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x468], rax
movabs rax, 0x99a20e691b9f64f3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x470], rax
movabs rax, 0x3fc7694c108693cc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x478], rax
vmovdqu ymm0, ymmword [rbp + 0x160]
vpxor ymm1, ymm0, ymmword [rbp + 0x440]
vmovdqa ymmword [rbp + 0x160], ymm1
vmovdqu ymm0, ymmword [rbp + 0x180]
vpxor ymm1, ymm0, ymmword [rbp + 0x460]
vmovdqa ymmword [rbp + 0x180], ymm1
lea rdx, [rbp + 0x410]
lea rcx, [rbp + 0xc0]
vzeroupper
call fcn.14004bd00
nop
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0xe0]
call fcn.14004bd00
nop
movabs rax, 0x6b500f71a2a61db4
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
movabs rax, 0x5e98c3417b458f1a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movabs rax, 0x175a8f07ac94cf38
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x170], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x178], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x420], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x428], rax
vmovdqu ymm0, ymmword [rbp + 0x160]
vpxor ymm1, ymm0, ymmword [rbp + 0x410]
vmovdqu ymmword [rbp + 0x160], ymm1
movabs rax, 0x6b4b0f6da2a11d8b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
movabs rax, 0x5efac3467b418f1b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
movabs rax, 0x17128f65ac81cf10
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x420], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x428], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x440], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x448], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x450], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x458], rax
vmovdqu ymm0, ymmword [rbp + 0x410]
vpxor ymm1, ymm0, ymmword [rbp + 0x440]
vmovdqu ymmword [rbp + 0x410], ymm1
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x100]
vzeroupper
call fcn.14004bd00
nop
lea rdx, [rbp + 0x410]
lea rcx, [rbp + 0x120]
call fcn.14004bd00
nop
lea rdi, [rbp + 0x80]
lea r12, [rbp + 0x140]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r15
mov ecx, 0xc0
call fcn.14004cd58
mov rbx, rax
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], rax
lea rcx, [rax + 0xc0]
mov qword [rbp + 0x1b0], rcx
lea rax, [rbp + 0x1a0]
mov qword [rbp], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x160], rbx
mov qword [rbp + 0x168], rbx
lea rax, [rbp + 0x1a0]
mov qword [rbp + 0x170], rax
cmp rdi, r12
je 0x14004b977
mov qword [rbp + 0x440], rbx
mov rdx, rdi
mov rcx, rbx
call fcn.1400025d0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rdi + 0x20]
call fcn.1400025d0
nop
add rbx, 0x40
mov qword [rbp + 0x168], rbx
add rdi, 0x40
jmp 0x14004b940
mov qword [rbp + 0x160], rbx
mov qword [rbp + 0x1a8], rbx
mov qword [rbp], r15
lea r9, [fcn.14004bc30]
mov edx, 0x40
mov r8d, 3
lea rcx, [rbp + 0x80]
call fcn.14004d0ec
lea rdx, [rbp + 0x1a0]
mov rcx, r14
call fcn.14004a880
test al, al
je 0x14004b9e6
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x10]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
lea rcx, [rbp + 0x1a0]
call fcn.14004be80
mov al, 1
jmp 0x14004bb50
movabs rax, 0x6b3f0f43a2f21d9b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
movabs rbx, 0x6b3f0f1fa2c81ddd
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [rbp + 0x410]
xorps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x410], xmm0
lea rcx, [rbp + 0x410]
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 1
je 0x14004bb24
movabs rax, 0x6b150f43a2f21d9b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x410], rax
movabs rax, 0x5eb8c32a7b0a8f40
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x418], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x160], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x168], rax
movdqa xmm0, xmmword [rbp + 0x410]
xorps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x410], xmm0
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x410]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14004bbed
mov dil, 1
nop
test byte [rbp + 0x1c0], 0x10
je 0x14004bb0f
lea rdx, [rbp + 0x1c0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x14004baf0
jmp 0x14004bb12
xor dil, dil
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
test dil, dil
jne 0x14004bc0d
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x10]
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
lea rcx, [rbp + 0x1a0]
call fcn.14004be80
nop
xor al, al
jmp 0x14004bb50
mov rcx, qword [rbp + 0x488]
xor rcx, rsp
call fcn.14004cd30
lea r11, [rsp + 0x510]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rdx, str.Failed_to_initialize_COM_library.
lea rcx, [rbp + 8]
call fcn.14004a470
lea rdx, [0x14005b9e8]
lea rcx, [rbp + 8]
call sub.VCRUNTIME140.dll__CxxThrowException
call qword [sym.imp.ole32.dll_CoUninitialize]
lea rdx, str.Failed_to_initialize_security.
lea rcx, [rbp + 0x20]
call fcn.14004a470
lea rdx, [0x14005b9e8]
lea rcx, [rbp + 0x20]
call sub.VCRUNTIME140.dll__CxxThrowException
call qword [sym.imp.ole32.dll_CoUninitialize]
lea rdx, str.Failed_to_create_WBEM_locator.
lea rcx, [rbp + 0x38]
call fcn.14004a470
lea rdx, [0x14005b9e8]
lea rcx, [rbp + 0x38]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.Failed_to_find_first_file_in_USB_drive.
lea rcx, [rbp + 0x50]
call fcn.14004a470
lea rdx, [0x14005b9e8]
lea rcx, [rbp + 0x50]
call sub.VCRUNTIME140.dll__CxxThrowException
lea rdx, str.USB_drive_is_empty.
lea rcx, [rbp + 0x68]
call fcn.14004a470
lea rdx, [0x14005b9e8]
lea rcx, [rbp + 0x68]
call sub.VCRUNTIME140.dll__CxxThrowException
int3