Function at 0x18006ec94
Capabilities:
Check if file exists
Create directory
Enumerate files on windows
Get file attributes

Disassembly:
push rbx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x408
mov qword [rsp + 0x158], 0xfffffffffffffffe
mov rax, qword [0x1800c9088]
xor rax, rsp
mov qword [rsp + 0x3f0], rax
mov qword [rsp + 0x120], r9
mov rbx, r8
mov rsi, rdx
mov qword [rsp + 0x128], rcx
xor r15d, r15d
test rdx, rdx
je 0x18006f904
mov rax, qword [r8]
lea edi, [r15 + 3]
mov edx, edi
mov rcx, rbx
call qword [rax + 0x20]
test al, al
je 0x18006f8d0
mov rax, qword [rbx]
lea edx, [rdi - 1]
mov rcx, rbx
call qword [rax + 0x20]
test al, al
je 0x18006f8d0
mov dword [rsp + 0x98], r15d
xor eax, eax
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rax
mov rax, qword [rbx]
lea r8, [rsp + 0x98]
mov edx, edi
mov rcx, rbx
call qword [rax + 0xd0]
test al, al
je 0x18006f8aa
mov rax, qword [rbx]
lea r8, [rsp + 0x170]
lea edx, [rdi - 1]
mov rcx, rbx
call qword [rax + 0xb0]
test al, al
je 0x18006f8aa
mov edi, r15d
mov dword [rsp + 0x88], r15d
lea rcx, [rsp + 0xd0]
call fcn.18005cfa8
nop
call fcn.180001d84
mov rcx, rax
test rax, rax
je 0x18006f92a
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x80], rax
mov r8d, dword [rsp + 0x98]
lea rdx, str._08X
lea rcx, [rsp + 0x80]
call fcn.180001700
mov rdx, rsi
lea rcx, [rsp + 0x70]
call fcn.18000a1a8
nop
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x70]
call fcn.18005df00
test al, al
jne 0x18006ee45
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006ee09
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006ee2e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18006f909
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or ecx, 0xffffffff
cmp eax, ecx
setne dl
mov byte [rsp + 0x78], dl
je 0x18006f3f6
mov r12d, r15d
mov dword [rsp + 0x9c], r15d
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
mov eax, dword [rbx - 8]
shr eax, 0x1f
test al, al
jne 0x18006ee99
cmp rcx, qword [rbx - 0x18]
jne 0x18006ee99
lea rsi, [rbx - 0x18]
lock inc dword [rbx - 8]
jmp 0x18006eecf
mov rax, qword [rcx]
mov r8d, 2
mov edx, dword [rbx - 0x10]
call qword [rax]
mov rsi, rax
test rax, rax
je 0x18006f935
mov eax, dword [rbx - 0x10]
mov dword [rsi + 8], eax
mov r8, rbx
lea rcx, [rsi + 0x18]
mov r9d, dword [rbx - 0x10]
inc r9d
movsxd rdx, r9d
call fcn.1800018f0
lea rax, [rsi + 0x18]
mov qword [rsp + 0xa0], rax
lea rdx, str..dat
lea rcx, [rsp + 0xa0]
call fcn.18005df00
test al, al
jne 0x18006ef2d
mov edi, 0x8007000e
mov dword [rsp + 0x88], edi
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffe8
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006ef28
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x18006f052
lea rdx, [rsp + 0x180]
mov rbx, qword [rsp + 0xa0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rsi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18006efae
test byte [rsp + 0x180], 0xa0
lea ecx, [r12 + 1]
cmove ecx, r12d
mov r12d, ecx
lea rdx, [rsp + 0x180]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x18006ef53
lea rdx, [rbx - 0x18]
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006ef9d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov dword [rsp + 0x9c], r12d
lea r12, [0x1800c9a10]
jmp 0x18006f02b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
lea r12, [0x1800c9a10]
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006eff2
test byte [rcx + 0x1c], 1
je 0x18006eff2
cmp byte [rcx + 0x19], 2
jb 0x18006eff2
mov edx, 0x4b
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180001594
movzx edi, r14w
or edi, 0x80070000
test r14d, r14d
cmovle edi, r14d
mov dword [rsp + 0x88], edi
lea rdx, [rbx - 0x18]
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f02b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rax, [rsi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x18006f03e
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, 0x80000000
lea eax, [rdi + rcx]
test ecx, eax
jne 0x18006f0ae
cmp edi, 0x80070002
je 0x18006f0ae
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f074
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f09a
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, edi
jmp 0x18006f909
call fcn.18005d514
test rax, rax
jne 0x18006f146
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f0e8
test byte [rcx + 0x1c], 1
je 0x18006f0e8
cmp byte [rcx + 0x19], 2
jb 0x18006f0e8
lea edx, [rax + 0x4c]
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180001ae4
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f10a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f12f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 0x8000ffff
jmp 0x18006f909
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.18000a1a8
lea rdx, [0x1800a2870]
lea rcx, [rsp + 0x90]
call fcn.18005df00
test al, al
jne 0x18006f1f5
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f197
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f1b9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f1de
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18006f909
mov ebx, 0xa
mov dword [rsp + 0x8c], ebx
lea rdi, [0x1800ab140]
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], r15
call fcn.18005d56c
or eax, 0x20019
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
mov r9d, eax
mov r8, qword [rsp + 0x90]
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0xa8]
call fcn.180064050
test eax, eax
je 0x18006f2a2
lea r8, [rsp + 0x8c]
lea rdx, str.MaxDumpsPerBucket
lea rcx, [rsp + 0xa8]
call fcn.1800649b4
test eax, eax
jne 0x18006f2d7
mov dword [rsp + 0x8c], ebx
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f2de
test byte [rcx + 0x1c], 1
je 0x18006f2de
cmp byte [rcx + 0x19], 3
jb 0x18006f2de
lea edx, [rbx + 0x43]
lea r9, str.MaxDumpsPerBucket
jmp 0x18006f2c7
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f2de
test byte [rcx + 0x1c], 1
je 0x18006f2de
cmp byte [rcx + 0x19], 3
jb 0x18006f2de
mov edx, 0x4e
mov r9, qword [rsp + 0x90]
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180002540
mov rcx, qword [0x1800c9a10]
mov eax, dword [rsp + 0x9c]
cmp eax, dword [rsp + 0x8c]
jb 0x18006f3b6
cmp rcx, r12
je 0x18006f31d
test byte [rcx + 0x1c], 1
je 0x18006f31d
cmp byte [rcx + 0x19], 4
jb 0x18006f31d
mov edx, 0x4f
mov r9, qword [rsp + 0x70]
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180002540
mov qword [rsp + 0xa8], rdi
lea rcx, [rsp + 0xa8]
call fcn.1800646d0
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f357
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f379
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f39f
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 1
jmp 0x18006f909
mov qword [rsp + 0xa8], rdi
lea rcx, [rsp + 0xa8]
call fcn.1800646d0
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f3f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov dl, byte [rsp + 0x78]
jmp 0x18006f401
or r14, 0xffffffffffffffff
lea r12, [0x1800c9a10]
mov rcx, qword [rsp + 0x120]
test rcx, rcx
jne 0x18006f4d1
test dl, dl
jne 0x18006f4ef
xor edx, edx
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x18006f4ef
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f467
test byte [rcx + 0x1c], 1
je 0x18006f467
cmp byte [rcx + 0x19], 2
jb 0x18006f467
mov edx, 0x50
mov r9d, eax
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180001560
movzx ebx, di
or ebx, 0x80070000
test edi, edi
cmovle ebx, edi
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f497
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f4bd
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, ebx
jmp 0x18006f909
mov rax, r14
inc rax
cmp word [rcx + rax*2], r15w
jne 0x18006f4d4
mov r8d, eax
mov rdx, rcx
lea rcx, [rsp + 0x70]
call fcn.180002bc4
nop
call fcn.180001d84
mov rcx, rax
test rax, rax
je 0x18006f93b
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0xc0], rax
movzx eax, byte [rsp + 0x17f]
movzx ecx, byte [rsp + 0x17e]
movzx edx, byte [rsp + 0x17d]
movzx r8d, byte [rsp + 0x17c]
movzx r10d, byte [rsp + 0x17b]
movzx r11d, byte [rsp + 0x17a]
movzx ebx, byte [rsp + 0x179]
movzx edi, byte [rsp + 0x178]
movzx esi, word [rsp + 0x176]
movzx r9d, word [rsp + 0x174]
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x48], r8d
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], r11d
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], esi
mov r8d, dword [rsp + 0x170]
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X.dat
lea rcx, [rsp + 0xc0]
call fcn.180001700
mov rbx, qword [rsp + 0xc0]
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.18005df00
test al, al
jne 0x18006f63d
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f5df
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f601
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f626
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18006f909
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x18006f6ff
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f684
test byte [rcx + 0x1c], 1
je 0x18006f684
cmp byte [rcx + 0x19], 2
jb 0x18006f684
mov edx, 0x51
mov r9, qword [rsp + 0x70]
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180002540
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f6a1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f6c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f6e8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, 0x8000ffff
jmp 0x18006f909
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], r15
mov qword [rsp + 0x14c], 0x80
mov dword [rsp + 0x148], 1
mov dword [rsp + 0x140], 0xc0000000
mov dword [rsp + 0x144], 1
mov rcx, qword [rsp + 0x128]
add rcx, 0x150
lea rdx, [rsp + 0x130]
call fcn.180081fd8
mov edi, eax
mov dword [rsp + 0x88], eax
test eax, eax
jns 0x18006f7e2
lea rdx, [rbx - 0x18]
mov ecx, r14d
lock xadd dword [rdx + 0x10], ecx
add ecx, r14d
test ecx, ecx
jg 0x18006f787
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f7a9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f7ce
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0xd0]
call fcn.18005d030
mov eax, edi
jmp 0x18006f909
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f813
test byte [rcx + 0x1c], 1
je 0x18006f813
cmp byte [rcx + 0x19], 4
jb 0x18006f813
mov edx, 0x52
mov r9, rbx
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180002540
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f830
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f852
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x18006f877
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x18006f883
lea rcx, [rsp + 0xd0]
cmp dword [rsp + 0xd8], r15d
je 0x18006f8a1
call fcn.18005d030
mov eax, 0x8007000e
jmp 0x18006f909
call fcn.18005d030
mov eax, edi
jmp 0x18006f909
lea r12, [0x1800c9a10]
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f904
test byte [rcx + 0x1c], 1
je 0x18006f904
cmp byte [rcx + 0x19], 2
jb 0x18006f904
mov edx, 0x4a
jmp 0x18006f8f4
lea r12, [0x1800c9a10]
mov rcx, qword [0x1800c9a10]
cmp rcx, r12
je 0x18006f904
test byte [rcx + 0x1c], 1
je 0x18006f904
cmp byte [rcx + 0x19], 2
jb 0x18006f904
mov edx, 0x49
lea r8, [0x1800a28b8]
mov rcx, qword [rcx + 0x10]
call fcn.180001ae4
mov eax, 0x80070057
mov rcx, qword [rsp + 0x3f0]
xor rcx, rsp
call fcn.180045d30
add rsp, 0x408
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
mov ecx, 0x80004005
call fcn.180001b3c
nop
call fcn.180001a24
nop
mov ecx, 0x80004005
call fcn.180001b3c
int3