Function at 0x140007134
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1a0
mov rax, qword [0x14002f318]
xor rax, rsp
mov qword [rsp + 0x190], rax
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x88
call fcn.140013900
mov ebx, 0xa0
lea rcx, [rsp + 0xf0]
mov r8, rbx
xor edx, edx
call fcn.140013900
lea r8d, [rbx - 0x7e]
lea rcx, [rsp + 0xc0]
xor edx, edx
call fcn.140013900
mov edi, 1
cmp dword [0x140030a3c], edi
jne 0x1400071b9
lea rcx, str.DSM_already_open_r_n
call fcn.1400139ec
cmp dword [0x140030a3c], edi
je 0x1400073ef
lea rcx, [rsp + 0xf0]
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea rcx, [rsp + 0xf0]
call fcn.140013fc0
cmp byte [rsp + rax + 0xef], 0x5c
je 0x1400071f5
lea rdx, [0x1400210a4]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.KERNEL32.dll_lstrcatA]
mov rcx, qword [0x140030a48]
xor esi, esi
lea edx, [rsi - 0x10]
cmp dword [0x14002f304], esi
je 0x14000721c
mov byte [rsp + 0xf0], sil
call qword [sym.imp.USER32.dll_GetClassLongPtrA]
lea edx, [rsi + 0x7b]
jmp 0x140007224
call qword [sym.imp.USER32.dll_GetClassLongPtrA]
xor edx, edx
lea r8, [rsp + 0xc0]
mov r9d, 0x22
mov rcx, rax
call qword [sym.imp.USER32.dll_LoadStringA]
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.KERNEL32.dll_lstrcatA]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xf0]
mov r8d, 0x4000
call qword [sym.imp.KERNEL32.dll_OpenFile]
cmp eax, 0xffffffff
je 0x1400073ba
lea rcx, [rsp + 0xc0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x140030a40], rax
cmp rax, rsi
je 0x1400073ba
cmp rax, 0x20
jb 0x1400073ba
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140031e80], rax
cmp rax, rsi
je 0x1400073ba
lea rax, [0x140030a48]
mov ecx, 0x301
mov r9d, 4
mov qword [rsp + 0x28], rax
mov word [rsp + 0x20], cx
lea rcx, [0x140031de0]
mov r8d, edi
xor edx, edx
call fcn.1400070ac
movzx ebx, ax
mov r8d, ebx
cmp ebx, esi
je 0x14000732f
cmp ebx, edi
jne 0x1400072fe
lea rcx, str.OpenDSM_failure_r_n
call fcn.1400139ec
mov dword [0x140030a3c], esi
call fcn.1400033c4
cmp eax, edi
jl 0x1400073ef
lea rax, str.DG_CONTROL_DAT_PARENT_MSG_OPENDSM
mov edx, edi
movzx r8d, bx
mov qword [rsp + 0x28], rax
lea rax, [0x1400205f9]
jmp 0x1400073db
mov dword [0x140030a3c], edi
call fcn.1400033c4
cmp eax, 3
jl 0x14000736b
mov rcx, qword [0x140030a48]
lea rax, str.TWAIN_Information
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea rax, str.Source_Manager_was_Opened_successfully
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.140003194
bt dword [0x140031e12], 0x1c
jae 0x1400073ef
lea rax, [0x140031b60]
lea rcx, [0x140031de0]
mov r9d, 0x403
mov qword [rsp + 0x28], rax
mov r8d, edi
xor edx, edx
mov word [rsp + 0x20], di
mov dword [0x140031b60], 0x2c
call fcn.1400070ac
cmp si, ax
je 0x1400073ef
lea rcx, str.DG_CONTROL___DAT_ENTRYPOINT___MSG_GET_Failed_r_n
call fcn.1400139ec
jmp 0x1400073ef
call fcn.1400033c4
cmp eax, edi
jl 0x1400073ef
lea rax, str.TWAIN_32.DLL
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.Error_in_Open__LoadLibrary__or_GetProcAddress._nTwain_DLL_may_not_exist.
mov rcx, qword [0x140030a48]
xor r9d, r9d
mov qword [rsp + 0x20], rax
call fcn.140003194
mov eax, dword [0x140030a3c]
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.140013bb0
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret