Function at 0x1400054f0
Capabilities:
Check if file exists
Read .ini file

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2c8]
sub rsp, 0x3a0
mov qword [rbp + 0x68], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14027bbd0]
xor rax, rsp
mov qword [rbp + 0x290], rax
mov r13, rcx
mov dword [rsp + 0x60], 0x2f
xor r14d, r14d
mov esi, r14d
mov dword [rsp + 0x48], r14d
call fcn.14000c310
movsxd rdi, eax
call fcn.140054cb8
mov r15, qword [rax + 8]
lea rdx, str._CMFPUNINST
lea rcx, [rbp + 0x78]
call fcn.1400020c0
mov rbx, rax
mov qword [rbp - 0x50], rax
mov rcx, qword [rax]
sub rcx, 0x18
call fcn.140001950
add rax, 0x18
mov qword [rbp + 0x50], rax
lea rcx, [r13 + 0x88]
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x60], r14
mov rdx, qword [rbx]
sub rdx, 0x18
or r12d, 0xffffffff
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400055b3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rbx, qword [rbp + 0x50]
lea rcx, [rbx - 0x18]
call fcn.140001950
add rax, 0x18
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], r14
mov eax, r12d
lock xadd dword [rbx - 8], eax
dec eax
test eax, eax
jg 0x1400055f0
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [0x1401c6ec8]
lea rcx, [rbp + 0x70]
call fcn.1400020c0
mov rbx, rax
mov qword [rsp + 0x58], rax
mov rcx, qword [rax]
sub rcx, 0x18
call fcn.140001950
add rax, 0x18
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], r14
lea rcx, [r13 + 0x90]
mov qword [rbp + 0x48], rcx
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000564a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rbx, qword [rbp + 0x38]
lea rcx, [rbx - 0x18]
call fcn.140001950
add rax, 0x18
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], r14
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x30], rax
mov eax, r12d
lock xadd dword [rbx - 8], eax
dec eax
test eax, eax
jg 0x140005688
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rdx, [rsp + 0x60]
mov rcx, qword [r13 + 8]
call fcn.140193dec
test rax, rax
je 0x140006732
sub rax, qword [r13 + 8]
sar rax, 1
cmp eax, 0xffffffff
je 0x140006732
lea rcx, [r13 + 8]
call fcn.1400070c0
call fcn.140051e58
mov r11, rax
mov ecx, r14d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400056d8
mov ecx, 0x80004005
call fcn.140001010
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], r14
mov r9d, 0x2f
lea r8, [rbp - 0x70]
mov rdx, qword [r13 + 8]
mov rcx, r13
call fcn.140004f10
mov r14, qword [rbp - 0x70]
mov qword [rsp + 0x58], rdi
mov rbx, qword [rbp - 0x68]
cmp r14, rbx
je 0x1400066cb
call fcn.140051e58
xor ebx, ebx
mov ecx, ebx
test rax, rax
setne cl
test ecx, ecx
je 0x1400066c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
call fcn.140051e58
mov ecx, ebx
test rax, rax
setne cl
test ecx, ecx
je 0x1400066b5
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov r9, qword [r14]
lea rdx, [r9 - 0x18]
mov rcx, qword [rsp + 0x30]
lea rbx, [rcx - 0x18]
cmp rdx, rbx
je 0x1400057e1
cmp dword [rbx + 0x10], 0
jl 0x1400057cb
mov rax, qword [rbx]
cmp qword [rdx], rax
jne 0x1400057cb
mov rcx, rdx
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x1400057bb
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rcx, [rdi + 0x18]
mov qword [rsp + 0x30], rcx
mov rdi, qword [rsp + 0x58]
jmp 0x1400057e1
mov r8d, dword [r9 - 0x10]
mov rdx, r9
lea rcx, [rsp + 0x30]
call fcn.140001c20
mov rcx, qword [rsp + 0x30]
mov r8d, 3
lea rdx, [0x1401c6ff0]
call fcn.140194830
test eax, eax
je 0x14000580c
lea rdx, [0x1401c6ff8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005817
mov ebx, 1
mov dword [r13 + 0x48], ebx
jmp 0x14000581c
mov ebx, 1
mov r8d, 3
lea rdx, [0x1401c6fd0]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x14000584c
lea rdx, [0x1401c6fd8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005850
mov dword [r13 + 0x4c], ebx
mov r8d, 3
lea rdx, [0x1401c6fc0]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005884
lea rdx, [0x1401c6fc8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005998
mov dword [r13 + 0x50], ebx
cmp rdi, 0xa
jne 0x140005998
lea rcx, [r13 + 0x30]
call fcn.140001870
lea edx, [rdi + 0x18]
mov rcx, qword [rsp + 0x40]
call fcn.140193dc0
mov rdi, rax
test rax, rax
jne 0x1400058b5
mov edi, r12d
jmp 0x1400058bd
sub rdi, qword [rsp + 0x40]
sar rdi, 1
lea rdx, [0x1401c7500]
mov rcx, qword [rsp + 0x40]
call fcn.140193dec
mov rbx, rax
test rax, rax
jne 0x1400058db
mov ebx, r12d
jmp 0x1400058e3
sub rbx, qword [rsp + 0x40]
sar rbx, 1
lea rdx, [0x1401c7500]
mov rcx, qword [rsp + 0x40]
call fcn.140193dec
test rax, rax
jne 0x1400058fe
mov eax, r12d
jmp 0x140005906
sub rax, qword [rsp + 0x40]
sar rax, 1
sub edi, ebx
lea r8d, [rax + 1]
lea r9d, [rdi - 1]
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x40]
call fcn.140006970
nop
mov rdx, rax
lea rcx, [r13 + 0x30]
call fcn.140001de0
nop
mov rdx, qword [rbp - 0x10]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000594b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [r13 + 0x30]
call fcn.1400071b0
lea rcx, [r13 + 0x30]
call fcn.140007140
mov rcx, qword [r13 + 0x30]
cmp dword [rcx - 0x10], 0
je 0x140005987
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov r8d, 1
test eax, eax
je 0x140005981
mov esi, r8d
mov dword [rsp + 0x48], r8d
jmp 0x140005998
mov dword [r13 + 0x68], r8d
jmp 0x140005994
mov r8d, 1
mov dword [r15 + 0x308], r8d
mov esi, dword [rsp + 0x48]
mov r8d, 3
lea rdx, [0x1401c6fa0]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x1400059cc
lea rdx, [0x1401c6fa8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005b39
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 3
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140005a4a
cmp dword [rbx + 0x10], 0
jl 0x140005a3b
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140005a3b
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140005a30
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140005a4a
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140005a69
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x30]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
call fcn.140051e58
xor edi, edi
mov ecx, edi
test rax, rax
setne cl
test ecx, ecx
je 0x1400066aa
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rax, str.Delete_Printer_Name
test rax, 0xffffffffffff0000
jne 0x140005ad1
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140005ae4
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140001b00
jmp 0x140005ae4
mov r8d, 0x13
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140001c20
nop
mov rbx, qword [rbp - 0x80]
lea rcx, [rbx - 0x18]
call fcn.140001950
add rax, 0x18
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x28]
mov rcx, r13
call fcn.140004350
mov eax, 1
mov dword [r13 + 0x58], eax
cmp qword [rsp + 0x58], 0xa
cmove esi, eax
mov dword [rsp + 0x48], esi
mov eax, r12d
lock xadd dword [rbx - 8], eax
dec eax
test eax, eax
jg 0x140005b3b
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140005b3b
xor edi, edi
mov r8d, 3
lea rdx, [0x1401c6f78]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005b6f
lea rdx, [0x1401c6f80]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005cda
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 3
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140005bed
cmp dword [rbx + 0x10], 0
jl 0x140005bde
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140005bde
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140005bd3
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140005bed
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140005c0c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x30]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
call fcn.140051e58
xor edi, edi
mov ecx, edi
test rax, rax
setne cl
test ecx, ecx
je 0x14000669f
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rbp - 0x78], rax
lea rax, str.Delete_Driver_Name
test rax, 0xffffffffffff0000
jne 0x140005c74
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140005c87
mov r8d, ebx
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140001b00
jmp 0x140005c87
mov r8d, 0x12
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140001c20
nop
mov rbx, qword [rbp - 0x78]
lea rcx, [rbx - 0x18]
call fcn.140001950
add rax, 0x18
mov qword [rbp], rax
lea rdx, [rbp]
mov rcx, r13
call fcn.140004350
mov eax, 1
mov dword [r13 + 0x5c], eax
cmp qword [rsp + 0x58], 0xa
cmove esi, eax
mov dword [rsp + 0x48], esi
mov eax, r12d
lock xadd dword [rbx - 8], eax
dec eax
test eax, eax
jg 0x140005cda
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp esi, 1
jne 0x140005d4f
mov word [rbp + 0x80], di
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x82]
call fcn.140192cb0
mov r11, qword [r13 + 0x30]
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], 0x104
lea r9, [rbp + 0x80]
lea r8, [0x1401c74f8]
lea rdx, str.UninstDriverPackage
lea rcx, str.Uninstaller_Info
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rdx, [0x1401c74f8]
lea rcx, [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov ecx, edi
test eax, eax
sete cl
mov dword [r15 + 0x308], ecx
mov r8d, 3
lea rdx, [0x1401c6fe0]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005d83
lea rdx, [0x1401c6fe8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005e3e
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 3
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140005e03
cmp dword [rbx + 0x10], 0
jl 0x140005df4
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140005df4
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140005de7
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
xor edi, edi
jmp 0x140005e03
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140005e22
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x20]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
mov ebx, 1
mov dword [r13 + 0x60], ebx
jmp 0x140005e43
mov ebx, 1
mov r8d, 3
lea rdx, [0x1401c6fb0]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005e73
lea rdx, [0x1401c6fb8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005e77
mov dword [r13 + 0x54], ebx
mov r8d, 3
lea rdx, [0x1401c6f50]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005ea7
lea rdx, [0x1401c6f58]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140005eab
mov dword [r13 + 0x64], ebx
mov r8d, 3
lea rdx, [0x1401c6f40]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140005edf
lea rdx, [0x1401c6f48]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x1400060e6
call fcn.140051e58
mov ecx, edi
test rax, rax
setne cl
test ecx, ecx
je 0x140006694
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea rax, [0x1401c6ea8]
test rax, 0xffffffffffff0000
jne 0x140005f36
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140005f47
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140001b00
jmp 0x140005f47
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140001c20
nop
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x40]
call fcn.140193dec
test rax, rax
jne 0x140005f60
mov eax, r12d
jmp 0x140005f68
sub rax, qword [rsp + 0x40]
sar rax, 1
lea r9d, [rax - 1]
mov r8d, 1
lea rdx, [rbp - 8]
lea rcx, [rsp + 0x40]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x50]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140005fe1
cmp dword [rbx + 0x10], 0
jl 0x140005fd2
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140005fd2
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140005fc7
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x140005fe1
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x50]
call fcn.140001c20
nop
mov rdx, qword [rbp - 8]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140006000
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 3
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x14000607e
cmp dword [rbx + 0x10], 0
jl 0x14000606f
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x14000606f
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140006064
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x14000607e
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000609d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
lea r8, [r15 + 0x788]
lea rdx, [0x1401c74a0]
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1401946e0
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400060e6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r8d, 4
lea rdx, str._DN
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x14000611a
lea rdx, [0x1401c6f70]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x14000626b
call fcn.140051e58
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x140006689
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea rax, [0x1401c6ea8]
test rax, 0xffffffffffff0000
jne 0x140006171
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140006182
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140001b00
jmp 0x140006182
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140001c20
nop
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 4
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140006200
cmp dword [rbx + 0x10], 0
jl 0x1400061f1
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x1400061f1
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x1400061e6
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140006200
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000621f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x40]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
mov r11, qword [r13 + 0x40]
cmp dword [r11 - 0x10], 0
je 0x14000624b
mov eax, 1
mov dword [r13 + 0x6c], eax
mov dword [r15 + 0x308], eax
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000626b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r8d, 4
lea rdx, str._PN
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x14000629f
lea rdx, [0x1401c6f98]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x1400063f0
call fcn.140051e58
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14000667e
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea rax, [0x1401c6ea8]
test rax, 0xffffffffffff0000
jne 0x1400062f6
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140006307
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140001b00
jmp 0x140006307
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140001c20
nop
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 4
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140006385
cmp dword [rbx + 0x10], 0
jl 0x140006376
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140006376
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x14000636b
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
jmp 0x140006385
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x38]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400063a4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x38]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
mov r11, qword [r13 + 0x38]
cmp dword [r11 - 0x10], 0
je 0x1400063d0
mov eax, 1
mov dword [r13 + 0x70], eax
mov dword [r15 + 0x308], eax
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400063f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r8d, 5
lea rdx, [0x1401c6f20]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140006420
lea rdx, str._FUD
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x14000642b
xor edi, edi
mov dword [r13 + 0x80], edi
jmp 0x14000642d
xor edi, edi
mov r8d, 5
lea rdx, [0x1401c6f00]
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x14000645d
lea rdx, str._FDD
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x140006464
mov dword [r13 + 0x84], edi
mov r8d, 4
lea rdx, str._UL
mov rcx, qword [rsp + 0x30]
call fcn.140194830
test eax, eax
je 0x140006498
lea rdx, [0x1401c6ef8]
mov rcx, qword [rsp + 0x30]
call fcn.1401936c8
test eax, eax
jne 0x1400065d1
call fcn.140051e58
mov ecx, edi
test rax, rax
setne cl
test ecx, ecx
je 0x140006673
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rax, [0x1401c6ea8]
test rax, 0xffffffffffff0000
jne 0x1400064ef
movzx ebx, ax
mov ecx, ebx
call fcn.140051c2c
test rax, rax
je 0x140006500
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140001b00
jmp 0x140006500
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140001c20
nop
mov rax, qword [rsp + 0x30]
mov r9d, dword [rax - 0x10]
mov r8d, 4
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x30]
call fcn.140006970
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rbx, qword [rsp + 0x38]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x140006580
cmp dword [rbx + 0x10], 0
jl 0x140006571
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140006571
call fcn.140001950
mov rdi, rax
mov ecx, r12d
lock xadd dword [rbx + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x140006564
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rsp + 0x38], rax
xor edi, edi
jmp 0x140006580
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x38]
call fcn.140001c20
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14000659f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [r13 + 0x78]
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.140003b00
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x1400065d1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov ebx, edi
lea rdi, [rbp + 0x10]
nop word [rax + rax]
mov r10, qword [r13]
movsxd rax, ebx
lea rcx, [rax + rax*2]
lea r8, [rbp + rcx*8 + 8]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x20], rax
mov r9, qword [rdi]
lea rdx, [rsp + 0x30]
mov rcx, r13
call qword [r10]
test eax, eax
jne 0x140006616
inc ebx
add rdi, 0x18
cmp ebx, 2
jb 0x1400065e0
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140006637
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140006657
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add r14, 8
mov rbx, qword [rbp - 0x68]
cmp r14, rbx
mov rdi, qword [rsp + 0x58]
jne 0x140005722
mov r14, qword [rbp - 0x70]
jmp 0x1400066cb
mov ecx, 0x80004005
call fcn.140001010
int3
mov ecx, 0x80004005
call fcn.140001010
int3
mov ecx, 0x80004005
call fcn.140001010
int3
mov ecx, 0x80004005
call fcn.140001010
int3
mov ecx, 0x80004005
call fcn.140001010
int3
mov ecx, 0x80004005
call fcn.140001010
nop
mov ecx, 0x80004005
call fcn.140001010
nop
mov ecx, 0x80004005
call fcn.140001010
nop
test r14, r14
je 0x140006701
cmp r14, rbx
je 0x1400066f9
nop word [rax + rax]
mov rdx, r14
lea rcx, [rbp - 0x58]
call fcn.1400075f0
add r14, 8
cmp r14, rbx
jne 0x1400066e0
mov r14, qword [rbp - 0x70]
mov rcx, r14
call fcn.140050e78
xor eax, eax
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
dec r12d
test r12d, r12d
jg 0x140006730
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x140006732
lea r9, [fcn.140001840]
mov r8d, 2
lea edx, [r8 + 0x16]
lea rcx, [rbp + 8]
call fcn.14019345c
mov rcx, qword [rbp + 0x290]
xor rcx, rsp
call fcn.1401945b0
lea r11, [rsp + 0x3a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret