Function at 0x140009f40
Capabilities:
Get file size
Read file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov qword [rbp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x1a0], rbx
mov r12, rdx
mov rsi, rcx
xor ebx, ebx
mov dword [rsp + 0x40], ebx
mov rcx, qword [rdx]
lea r13, str.__CR__FAILED_
lea r15d, [rbx + 1]
cmp dword [rcx - 0x10], ebx
je 0x14000a05b
lea rdx, [0x140043c20]
call fcn.140029d78
test eax, eax
sete al
test al, al
jne 0x14000a05b
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xb8], rax
test r13, 0xffffffffffff0000
jne 0x140009fef
movzx ebx, r13w
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a005
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp + 0xb8]
call fcn.140002140
jmp 0x14000a005
mov r8d, 0xd
mov rdx, r13
lea rcx, [rbp + 0xb8]
call fcn.140002fd0
nop
mov dword [rsp + 0x40], r15d
lea r8, str.DOWNLOAD_READ__CR__
lea rdx, [rbp + 0xb8]
lea rcx, [rbp - 8]
call fcn.140001550
mov ebx, 3
mov dword [rsp + 0x40], ebx
mov rdx, qword [rax]
xor eax, eax
test rdx, rdx
setne al
test eax, eax
jne 0x14000a044
mov ecx, 0x80004005
call fcn.140001850
int3
mov rcx, qword [r12]
call fcn.140029d78
test eax, eax
sete al
test al, al
jne 0x14000a05b
xor r14b, r14b
jmp 0x14000a05e
mov r14b, 1
test bl, 2
je 0x14000a086
and ebx, 0xfffffffd
mov dword [rsp + 0x40], ebx
mov rdx, qword [rbp - 8]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a082
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov ebx, dword [rsp + 0x40]
test bl, 1
je 0x14000a0a6
mov rdx, qword [rbp + 0xb8]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a0a6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r14b, r14b
je 0x14000a29c
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea rdx, str.Received_an_invalid_path
test rdx, 0xffffffffffff0000
jne 0x14000a0fc
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a10d
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.140002140
jmp 0x14000a10d
mov r8d, 0x18
lea rcx, [rsp + 0x58]
call fcn.140002fd0
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x78], rax
lea rdx, str.ReadFromFile
test rdx, 0xffffffffffff0000
jne 0x14000a158
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a168
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140002140
jmp 0x14000a168
mov r8d, 0xc
lea rcx, [rbp - 0x78]
call fcn.140002fd0
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x60], rax
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 8]
call fcn.140003de0
nop
mov r8d, 2
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140003820
nop
mov rdx, qword [rbp + 8]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a1c0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a1d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a1f2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a20b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
test r13, 0xffffffffffff0000
jne 0x14000a252
movzx ebx, r13w
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a266
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140002140
jmp 0x14000a266
mov r8d, 0xd
mov rdx, r13
lea rcx, [rsp + 0x78]
call fcn.140002fd0
nop
lea r8, str.DOWNLOAD_READ__CR__
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.140001550
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a294
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, rsi
jmp 0x14000aae9
xor eax, eax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
jne 0x14000a502
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, str.Failed_to_open_file:
test rdx, 0xffffffffffff0000
jne 0x14000a31e
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a32f
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.140002140
jmp 0x14000a32f
mov r8d, 0x15
lea rcx, [rsp + 0x48]
call fcn.140002fd0
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rdx, str.ReadFromFile
test rdx, 0xffffffffffff0000
jne 0x14000a37c
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a38d
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140002140
jmp 0x14000a38d
mov r8d, 0xc
lea rcx, [rsp + 0x68]
call fcn.140002fd0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp + 0x38]
call fcn.140003f10
mov rbx, rax
lea rcx, [0x1400622e0]
mov rdx, qword [0x1400622e0]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rbp - 0x58], rax
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x18]
call fcn.140003de0
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.140003de0
nop
mov r8d, 2
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140003820
nop
mov rdx, qword [rbp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a40a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a423
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a43c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x38]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a455
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a46f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a488
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
test r13, 0xffffffffffff0000
jne 0x14000a4cf
movzx ebx, r13w
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a4e3
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140002140
jmp 0x14000a4e3
mov r8d, 0xd
mov rdx, r13
lea rcx, [rsp + 0x50]
call fcn.140002fd0
nop
lea r8, str.DOWNLOAD_READ__CR__
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140001550
nop
mov rdx, qword [rsp + 0x50]
jmp 0x14000a280
xor eax, eax
mov qword [rbp + 0xb0], rax
lea rdx, [rbp + 0xb0]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x14000a702
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rdx, str.GetFileSizeEx_failed
test rdx, 0xffffffffffff0000
jne 0x14000a570
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a581
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140002140
jmp 0x14000a581
mov r8d, 0x14
lea rcx, [rsp + 0x70]
call fcn.140002fd0
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
lea rdx, str.ReadFromFile
test rdx, 0xffffffffffff0000
jne 0x14000a5ce
movzx ebx, dx
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a5df
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140002140
jmp 0x14000a5df
mov r8d, 0xc
lea rcx, [rsp + 0x60]
call fcn.140002fd0
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x18], rax
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x28]
call fcn.140003de0
nop
mov r8d, 2
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140003820
nop
mov rdx, qword [rbp + 0x28]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a638
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a651
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a66b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a684
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
test r13, 0xffffffffffff0000
jne 0x14000a6d2
movzx ebx, r13w
xor edx, edx
mov ecx, ebx
call fcn.1400017a0
test rax, rax
je 0x14000a6e5
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140002140
jmp 0x14000a6e5
mov r8d, 0xd
mov rdx, r13
lea rcx, [rbp - 0x80]
call fcn.140002fd0
nop
lea r8, str.DOWNLOAD_READ__CR__
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.140001550
nop
mov rdx, qword [rbp - 0x80]
jmp 0x14000a280
cmp dword [rbp + 0xb4], 0
je 0x14000a804
lea rdx, str.File_size_is_too_big
lea rcx, [rbp - 0x38]
call fcn.140001100
nop
lea rdx, str.ReadFromFile
lea rcx, [rbp - 0x28]
call fcn.140001100
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x48], rax
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x48]
lea rcx, [rbp]
call fcn.140003de0
nop
mov r8d, 2
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.140003820
nop
mov rdx, qword [rbp]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a788
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a7a1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a7ba
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a7d2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, r13
lea rcx, [rbp + 0x10]
call fcn.140001100
nop
lea r8, str.DOWNLOAD_READ__CR__
mov rdx, rax
mov rcx, rsi
call fcn.140001550
nop
mov rdx, qword [rbp + 0x10]
jmp 0x14000a280
cmp dword [rbp + 0xb0], 0
jne 0x14000a8f1
lea rdx, str.File_size_is_zero
lea rcx, [rbp - 0x40]
call fcn.140001100
nop
lea rdx, str.ReadFromFile
lea rcx, [rbp - 0x50]
call fcn.140001100
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x68], rax
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x20]
call fcn.140003de0
nop
mov r8d, 2
mov rdx, rax
lea rcx, [rbp - 0x50]
call fcn.140003820
nop
mov rdx, qword [rbp + 0x20]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a88a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a8a3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a8bc
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000a8d4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [0x140043c20]
mov rcx, rsi
call fcn.140001100
jmp 0x14000a294
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x70], rbx
xor r12d, r12d
mov dword [rbp + 0xa8], r12d
mov rax, qword [rbp + 0xb0]
test eax, eax
jns 0x14000a92a
mov ecx, 0x80070057
call fcn.140001850
int3
sub r15d, dword [rbx - 8]
mov ecx, dword [rbx - 0xc]
sub ecx, eax
or ecx, r15d
jge 0x14000a94e
mov edx, eax
lea rcx, [rbp - 0x70]
call fcn.1400029e0
mov rax, qword [rbp + 0xb0]
mov rbx, qword [rbp - 0x70]
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0xa8]
mov r8d, eax
mov rdx, rbx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r15d, eax
mov rcx, qword [rbp + 0xb0]
cmp ecx, 0xffffffff
jne 0x14000a986
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.140029698
mov ecx, eax
test ecx, ecx
js 0x14000aade
cmp ecx, dword [rbx - 0xc]
jg 0x14000aade
mov dword [rbx - 0x10], ecx
movsxd rax, ecx
mov byte [rax + rbx], r12b
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15d, r15d
jne 0x14000aab6
lea rdx, str.ReadFile_failed
lea rcx, [rbp - 0x10]
call fcn.140001100
nop
lea rdx, str.ReadFromFile
lea rcx, [rbp - 0x20]
call fcn.140001100
nop
lea rcx, [0x1400622e0]
mov rax, qword [0x1400622e0]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x30], rax
lea r8, [rbp - 0x10]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x30]
call fcn.140003de0
nop
lea r8d, [r15 + 2]
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.140003820
nop
mov rdx, qword [rbp + 0x30]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000aa2a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000aa43
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000aa5c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x10]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000aa74
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, r13
lea rcx, [rbp + 0x40]
call fcn.140001100
nop
lea r8, str.DOWNLOAD_READ__CR__
mov rdx, rax
mov rcx, rsi
call fcn.140001550
nop
mov rdx, qword [rbp + 0x40]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14000aaad
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x70]
jmp 0x14000a280
lea rcx, [rbx - 0x18]
call fcn.140001870
add rax, 0x18
mov qword [rsi], rax
lock add dword [rbx - 8], 0xffffffff
jg 0x14000a294
mov rcx, qword [rbx - 0x18]
lea rdx, [rbx - 0x18]
jmp 0x14000a28e
mov ecx, 0x80070057
call fcn.140001850
nop
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret