Function at 0x1400e5360
Capabilities:
Get common file path

Disassembly:
mov dword [rsp + 0x20], r9d
mov byte [rsp + 0x18], r8b
mov word [rsp + 0x10], dx
mov byte [rsp + 8], cl
sub rsp, 0x1c8
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x198]
call fcn.1400e70b0
mov byte [rsp + 0x6c], 0x12
mov eax, 0x6e8
mov word [rsp + 0x60], ax
mov eax, 0x31fe
mov word [rsp + 0x68], ax
movzx eax, word [rsp + 0x1d8]
add eax, 0xfe3
mov word [rsp + 0x60], ax
movzx eax, word [rsp + 0x60]
sub eax, 0x1d2
movzx ecx, word [rsp + 0x1d8]
cmp eax, ecx
jg 0x1400e53e2
movzx eax, word [rsp + 0x1d8]
and eax, 0xd3b
mov word [rsp + 0x60], ax
movzx eax, word [rsp + 0x1d8]
mov dword [rsp + 0xb0], eax
cmp dword [rsp + 0xb0], 0xe5d
je 0x1400e5400
jmp 0x1400e5477
mov rcx, qword [rsp + 0xd8]
call sub.WINSPOOL.DRV_AbortPrinter
mov dword [rsp + 0x84], eax
mov edx, 0xfe
mov ecx, 0x85
call fcn.1400e5cd0
lea r9, [rsp + 0x100]
mov r8d, 0x49
mov edx, 0xea
mov rcx, qword [rsp + 0x140]
call sub.WINSPOOL.DRV_FindFirstPrinterChangeNotification
mov qword [rsp + 0x100], rax
movsx eax, word [rsp + 0x68]
sar eax, 0xf
mov word [rsp + 0x68], ax
lea rdx, [rsp + 0xd8]
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.GDI32.dll_GetWindowExtEx]
mov dword [rsp + 0x80], eax
jmp 0x1400e548f
movzx eax, word [rsp + 0x68]
mov word [rsp + 0x78], ax
mov byte [rsp + 0x64], 0x2b
movzx eax, byte [rsp + 0x64]
mov byte [rsp + 0x65], al
movsx eax, word [rsp + 0x68]
mov dword [rsp + 0x88], eax
cmp dword [rsp + 0x88], 0xd7f
je 0x1400e5b32
cmp dword [rsp + 0x88], 0x31fe
je 0x1400e54be
jmp 0x1400e5b79
movzx eax, byte [rsp + 0x1d0]
mov byte [rsp + 0xb4], al
cmp byte [rsp + 0xb4], 0
je 0x1400e54dc
jmp 0x1400e5a15
movzx eax, byte [rsp + 0x1d0]
mov byte [rsp + 0xb8], al
cmp byte [rsp + 0xb8], 0
je 0x1400e54fa
jmp 0x1400e5913
mov dword [rsp + 0x7c], 0x2083c126
movzx eax, byte [rsp + 0x64]
mov byte [rsp + 0x8c], al
cmp byte [rsp + 0x8c], 0x2b
je 0x1400e5524
cmp byte [rsp + 0x8c], 0x5e
je 0x1400e5569
jmp 0x1400e559b
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x65]
mov qword [rsp + 0xa0], rax
movzx eax, word [rsp + 0x68]
mov word [rsp + 0x74], ax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0xa0]
movzx eax, byte [rax]
mov byte [rsp + 0x6d], al
jmp 0x1400e559b
mov rax, qword [rsp + 0xa0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0x64]
and eax, ecx
mov rcx, qword [rsp + 0xa0]
mov byte [rcx], al
mov rax, qword [rsp + 0xa0]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0x65]
add eax, ecx
mov byte [rsp + 0x64], al
movzx eax, byte [rsp + 0x1e0]
mov byte [rsp + 0x90], al
cmp byte [rsp + 0x90], 0
je 0x1400e55c7
cmp byte [rsp + 0x90], 0x37
je 0x1400e5755
jmp 0x1400e5776
movsx eax, byte [rsp + 0x1d0]
sub eax, 0x7d
movsx ecx, byte [rsp + 0x1e0]
cmp eax, ecx
je 0x1400e5753
mov rax, qword [rsp + 0x98]
mov eax, dword [rax]
mov dword [rsp + 0xc4], eax
movzx eax, word [rsp + 0x1d8]
movzx ecx, word [rsp + 0x60]
sub eax, ecx
mov rcx, qword [rsp + 0x108]
movzx ecx, word [rcx]
cmp eax, ecx
jge 0x1400e5746
movabs rax, 0x3721c01fc5aba651
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0x74]
mov qword [rsp + 0xa8], rax
movsx eax, word [rsp + 0x68]
mov dword [rsp + 0xbc], eax
cmp dword [rsp + 0xbc], 0x31fe
je 0x1400e5652
jmp 0x1400e5717
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0xc0], eax
cmp dword [rsp + 0xc0], 0x2083c126
je 0x1400e566f
jmp 0x1400e56fb
movzx eax, word [rsp + 0x60]
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0xc03
je 0x1400e56dc
cmp dword [rsp + 0x94], 0xfe3
je 0x1400e5697
jmp 0x1400e56f9
lea rax, [rsp + 0x1d8]
mov qword [rsp + 0x148], rax
movsx eax, byte [rsp + 0x1d0]
movsx ecx, byte [rsp + 0x1e0]
sar eax, cl
mov byte [rsp + 0x6c], al
lea rax, [rsp + 0x60]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x120], rax
jmp 0x1400e56f9
mov rax, qword [rsp + 0xa8]
movsx eax, word [rax]
movsx ecx, word [rsp + 0x78]
or eax, ecx
mov rcx, qword [rsp + 0xa8]
mov word [rcx], ax
jmp 0x1400e5715
lea rdx, [rsp + 0x7c]
mov rcx, qword [rsp + 0x150]
call qword [sym.imp.USERENV.dll_GetProfilesDirectoryW]
mov dword [rsp + 0x84], eax
jmp 0x1400e5744
mov eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x110], rcx
movzx ecx, al
mov rax, qword [rsp + 0x110]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x98]
mov dword [rcx], eax
jmp 0x1400e5753
mov eax, dword [rsp + 0x7c]
and eax, 0x559dfc9f
mov dword [rsp + 0x7c], eax
jmp 0x1400e5776
mov rax, qword [rsp + 0xa8]
movzx r9d, word [rax]
movzx r8d, byte [rsp + 0x65]
mov edx, dword [rsp + 0x70]
movzx ecx, byte [rsp + 0x6c]
call fcn.1400e5ba0
nop
lea rax, [rsp + 0x64]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xe8]
movzx eax, byte [rax]
movzx ecx, byte [rsp + 0x64]
add eax, ecx
movzx ecx, byte [rsp + 0x6d]
mov rdx, qword [rsp + 0xa0]
movzx edx, byte [rdx]
sub ecx, edx
cmp eax, ecx
jg 0x1400e581f
lea r9, [rsp + 0xd0]
mov r8d, 0x45
mov edx, 0xf7
mov rcx, qword [rsp + 0x138]
call qword [sym.imp.GDI32.dll_OffsetViewportOrgEx]
mov dword [rsp + 0x80], eax
movzx eax, byte [rsp + 0x6d]
mov rcx, qword [rsp + 0xe8]
movzx ecx, byte [rcx]
sub eax, ecx
mov byte [rsp + 0x64], al
movzx eax, word [rsp + 0x60]
movzx ecx, word [rsp + 0x1d8]
add eax, ecx
mov rcx, qword [rsp + 0x118]
mov word [rcx], ax
mov edx, 0xdc
mov rcx, qword [rsp + 0x158]
call qword [sym.imp.GDI32.dll_SetGraphicsMode]
mov dword [rsp + 0xd4], eax
jmp 0x1400e5857
lea rax, [rsp + 0xd4]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x168], rax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0xfc], eax
lea rax, [rsp + 0x74]
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x128], rax
movabs rax, 0x24be1827a0fce6f6
cmp qword [rsp + 0x128], rax
je 0x1400e587d
jmp 0x1400e5897
mov rax, qword [rsp + 0x98]
mov ecx, dword [rsp + 0x70]
mov eax, dword [rax]
and eax, ecx
mov rcx, qword [rsp + 0x98]
mov dword [rcx], eax
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0x1e8], eax
mov dword [rsp + 0x40], 0xa6
mov dword [rsp + 0x38], 0x41
mov dword [rsp + 0x30], 0x7a
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x64
mov r9d, 0xb0
mov r8d, 0xa1
mov edx, 0x9d
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.GDI32.dll_BitBlt]
mov dword [rsp + 0xf8], eax
movzx edx, word [rsp + 0x60]
mov rax, qword [rsp + 0xa8]
movzx ecx, word [rax]
call fcn.1400e4fa0
nop
jmp 0x1400e59ae
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0xc8], eax
cmp dword [rsp + 0xc8], 0x87a615fa
je 0x1400e592d
jmp 0x1400e5942
mov rcx, qword [rsp + 0x178]
call qword [sym.imp.GDI32.dll_UnrealizeObject]
mov dword [rsp + 0x80], eax
lea rdx, [rsp + 0xd8]
mov rcx, qword [rsp + 0x180]
call qword [sym.imp.GDI32.dll_GetAspectRatioFilterEx]
mov dword [rsp + 0x80], eax
movzx eax, byte [rsp + 0x1d0]
mov byte [rsp + 0x1e0], al
mov dword [rsp + 0x20], 0x3c
mov r9d, 0xdb
mov r8d, 0x8b
mov edx, 0xdd
mov rcx, qword [rsp + 0x130]
call qword [sym.imp.GDI32.dll_Ellipse]
mov dword [rsp + 0x84], eax
movzx eax, word [rsp + 0x1d8]
add eax, 0x44a
mov word [rsp + 0x60], ax
mov edx, 0x86
movzx ecx, byte [rsp + 0x1d0]
call fcn.1400e6030
movzx eax, word [rsp + 0x1d8]
sub eax, 0x616
mov word [rsp + 0x60], ax
mov rcx, qword [rsp + 0xd8]
call sub.WINSPOOL.DRV_AbortPrinter
mov dword [rsp + 0x80], eax
mov qword [rsp + 0x20], 0x1a
mov r9d, dword [rsp + 0x70]
mov r8d, 0xed
movzx edx, byte [rsp + 0x1d0]
movzx ecx, byte [rsp + 0x1d0]
call fcn.1400e6be0
nop
jmp 0x1400e5ad8
movsx eax, byte [rsp + 0x1d0]
xor eax, 2
movsx ecx, byte [rsp + 0x1e0]
cmp eax, ecx
jle 0x1400e5a56
mov qword [rsp + 0x20], 0x18
mov r9d, dword [rsp + 0x70]
mov r8d, 0xa5
movzx edx, byte [rsp + 0x1e0]
movzx ecx, byte [rsp + 0x1e0]
call fcn.1400e6be0
nop
mov dword [rsp + 0x58], 8
mov dword [rsp + 0x50], 0xec
mov dword [rsp + 0x48], 0xe9
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x1a
mov dword [rsp + 0x30], 0xdf
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x47
mov r9d, 0xb4
mov r8d, 0xe0
mov edx, 4
mov rcx, qword [rsp + 0x138]
call qword [sym.imp.GDI32.dll_MaskBlt]
mov dword [rsp + 0x84], eax
movzx eax, word [rsp + 0x1d8]
or eax, 0x9bb
mov word [rsp + 0x60], ax
lea r8, [rsp + 0x1b0]
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0xe0]
call sub.gdiplus.dll_GdiplusStartup
mov dword [rsp + 0x70], eax
movzx eax, byte [rsp + 0x65]
mov byte [rsp + 0xcc], al
cmp byte [rsp + 0xcc], 0x37
je 0x1400e5b11
jmp 0x1400e5b20
movzx eax, byte [rsp + 0x1d0]
mov byte [rsp + 0x1e0], al
movzx edx, word [rsp + 0x60]
movzx ecx, word [rsp + 0x68]
call fcn.1400e4fa0
nop
jmp 0x1400e5b79
movzx eax, word [rsp + 0x60]
mov word [rsp + 0x1d8], ax
lea rdx, [rsp + 0x65]
mov rcx, qword [rsp + 0x190]
call qword [sym.imp.USERENV.dll_GetProfilesDirectoryW]
mov dword [rsp + 0xd0], eax
movzx eax, word [rsp + 0x1d8]
shl eax, 8
mov word [rsp + 0x60], ax
movzx edx, word [rsp + 0x60]
movzx ecx, word [rsp + 0x68]
call fcn.1400e4fa0
nop
movzx edx, word [rsp + 0x60]
movzx ecx, word [rsp + 0x78]
call fcn.1400e4fa0
mov eax, 0xc7
add rsp, 0x1c8
ret