Function at 0x140121b84
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x270
mov rax, qword [0x14017a608]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov r13b, dl
mov r14, rcx
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x140121bef
test byte [rcx + 0x1c], 1
je 0x140121bef
cmp byte [rcx + 0x19], 4
jb 0x140121bef
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x3f
call fcn.140006b98
xor ebx, ebx
mov edi, 0x4000000
mov ecx, edi
mov dword [rsp + 0x44], ebx
or rbp, 0xffffffffffffffff
mov r15b, bl
mov esi, ebx
call fcn.140001950
mov r12, rax
test rax, rax
jne 0x140121c5a
mov edi, 0x8007000e
mov rcx, qword [0x14017a048]
lea rbx, [0x14017a048]
cmp rcx, rbx
je 0x140122100
test byte [rcx + 0x1c], 1
je 0x1401220da
cmp byte [rcx + 0x19], 2
jb 0x1401220da
mov rcx, qword [rcx + 0x10]
lea edx, [rbp + 0x41]
lea r8, [0x140168318]
call fcn.140006b98
jmp 0x1401220d3
mov r8, rdi
xor edx, edx
mov rcx, r12
call sub.msvcrt.dll_memset
test r14, r14
je 0x140121c72
cmp word [r14], bx
jne 0x140121c8a
lea r8, str.wszMountedDeviceName__wszMountedDeviceName
mov edx, 0x48e
lea rcx, str.base_stor_blbengine_blbengutils_blbvhdhelper.cpp
call fcn.14008ac24
mov r9d, 0x104
lea rax, [rsp + 0x50]
mov r8, r14
lea rcx, [rsp + 0x50]
mov edx, r9d
sub r8, rax
lea rax, [rdx + 0x7ffffefa]
test rax, rax
je 0x140121cc6
movzx eax, word [r8 + rcx]
test ax, ax
je 0x140121cc6
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140121ca3
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], bx
mov rax, rdx
neg rax
sbb edi, edi
not edi
and edi, 0x8007007a
test rdx, rdx
jne 0x140121d31
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x1401220c4
test byte [rcx + 0x1c], 1
je 0x1401220c4
cmp byte [rcx + 0x19], 2
jb 0x1401220c4
mov edx, 0x41
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov r9d, edi
call fcn.140006bc4
jmp 0x1401220c4
lea r8, [0x140157a78]
mov rdx, r9
lea rcx, [rsp + 0x50]
call fcn.14005485c
mov edi, eax
test eax, eax
jns 0x140121d7d
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x1401220c4
test byte [rcx + 0x1c], 1
je 0x1401220c4
cmp byte [rcx + 0x19], 2
jb 0x1401220c4
mov edx, 0x42
jmp 0x140121d19
cmp byte [0x14017b2c0], bl
jne 0x140122072
mov eax, 0x80000000
test r13b, r13b
je 0x140121e11
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x40], ebx
lea rcx, [rsp + 0x50]
call fcn.14009100c
mov ecx, 0x80000000
mov edi, eax
add eax, ecx
test ecx, eax
jne 0x140121fb8
cmp edi, 0x800703ed
je 0x140121fb8
mov rcx, qword [0x14017a048]
lea rbx, [0x14017a048]
cmp rcx, rbx
je 0x140121f80
test byte [rcx + 0x1c], 1
je 0x140121f50
cmp byte [rcx + 0x19], 4
jb 0x140121f50
mov rcx, qword [rcx + 0x10]
lea r9, [rsp + 0x50]
mov edx, 0x44
mov dword [rsp + 0x20], edi
lea r8, [0x140168318]
call fcn.140011330
jmp 0x140121f49
test r15b, r15b
jne 0x140121ee4
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x2000080
mov edx, eax
mov rcx, r14
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
nop dword [rax + rax]
mov rbp, rax
cmp rax, 0xffffffffffffffff
jne 0x140121ea6
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14017a048]
lea rbx, [0x14017a048]
cmp rcx, rbx
je 0x140121f80
test byte [rcx + 0x1c], 1
je 0x140121f50
cmp byte [rcx + 0x19], 4
jb 0x140121f50
mov rcx, qword [rcx + 0x10]
lea edx, [rbp + 0x47]
mov r9, r14
mov dword [rsp + 0x20], eax
lea r8, [0x140168318]
call fcn.14003d5bc
jmp 0x140121f49
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x140121ee1
test byte [rcx + 0x1c], 1
je 0x140121ee1
cmp byte [rcx + 0x19], 4
jb 0x140121ee1
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x47
mov dword [rsp + 0x20], esi
mov r9, r14
call fcn.14003d060
mov r15b, 1
lea r9, [rsp + 0x44]
mov qword [rsp + 0x20], rbx
mov r8d, 0x4000000
mov rdx, r12
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
nop dword [rax + rax]
test eax, eax
jne 0x140122039
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14017a048]
lea rbx, [0x14017a048]
cmp rcx, rbx
je 0x140121f80
test byte [rcx + 0x1c], 1
je 0x140121f50
cmp byte [rcx + 0x19], 4
jb 0x140121f50
mov rcx, qword [rcx + 0x10]
mov r9, rbp
mov dword [rsp + 0x20], eax
call fcn.14012446c
mov rcx, qword [0x14017a048]
cmp rcx, rbx
je 0x140121f80
test byte [rcx + 0x1c], 1
je 0x140121f80
cmp byte [rcx + 0x19], 4
jb 0x140121f80
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x4a
mov r9d, esi
call fcn.140006cec
mov rcx, qword [0x14017a048]
mov eax, 0x10624dd3
mul dword [0x14017ac04]
shr edx, 6
cmp esi, edx
jae 0x140122002
cmp esi, 0xa
sbb ebx, ebx
and ebx, 0xfffffffd
add ebx, 5
imul ecx, ebx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
nop dword [rax + rax]
add esi, ebx
xor ebx, ebx
jmp 0x140121d7d
mov edi, ebx
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x1401220ab
test byte [rcx + 0x1c], 1
je 0x1401220ab
cmp byte [rcx + 0x19], 4
jb 0x1401220ab
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x45
mov r9d, esi
call fcn.140006cec
jmp 0x1401220ab
lea rax, [0x14017a048]
cmp rcx, rax
je 0x140122032
test byte [rcx + 0x1c], 1
je 0x140122032
cmp byte [rcx + 0x19], 2
jb 0x140122032
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x4b
mov r9d, esi
call fcn.140006cec
mov edi, 0x8078004f
jmp 0x1401220ab
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x1401220ab
test byte [rcx + 0x1c], 1
je 0x1401220ab
cmp byte [rcx + 0x19], 4
jb 0x1401220ab
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x49
mov r9, rbp
call fcn.14003df0c
jmp 0x1401220ab
mov rcx, qword [0x14017a048]
lea rax, [0x14017a048]
cmp rcx, rax
je 0x1401220a6
test byte [rcx + 0x1c], 1
je 0x1401220a6
cmp byte [rcx + 0x19], 2
jb 0x1401220a6
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x43
call fcn.140006b98
mov edi, 0x80780075
lea rax, [rbp - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1401220c4
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
mov rcx, r12
call fcn.140001944
lea rbx, [0x14017a048]
mov rcx, qword [0x14017a048]
cmp rcx, rbx
je 0x140122100
test byte [rcx + 0x1c], 1
je 0x140122100
cmp byte [rcx + 0x19], 4
jb 0x140122100
mov rcx, qword [rcx + 0x10]
lea r8, [0x140168318]
mov edx, 0x4c
call fcn.140006b98
mov eax, edi
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.140001d90
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret