Function at 0x46edd0
Capabilities:
Get common file path

Disassembly:
sub esp, 0x214
mov eax, dword [0x4e3f80]
xor eax, esp
mov dword [esp + 0x210], eax
push ebx
push ebp
mov ebp, dword [esp + 0x220]
push edi
push str.THEME_MODE
call fcn.0046ccd0
mov edi, eax
test edi, edi
je 0x46ee17
push edi
call fcn.0049e31d
push edi
mov ebx, eax
call fcn.0049081d
add esp, 8
test ebx, ebx
je 0x46ee17
test ebp, ebp
je 0x46ee3e
push 1
push str.THEME_MODE
mov ecx, esi
call fcn.0046c980
mov ecx, dword [0x4ee74c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x64]
push 0
push 0x4c3af8
push 0xdc
call edx
push 0x4c3af8
push str.MESSAGE_SEARCH_FILTER
mov ecx, esi
call fcn.0046cab0
push 0
push str.PRINTER_STATUS
mov ecx, esi
call fcn.0046c980
push 0
push str.UNPRINTABLE
mov ecx, esi
call fcn.0046c980
push 0
push str.CONTROLLER_FIRMWARE_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_CONTROLLERFIRMWARE_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_PRINTERFIRMWARE_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_FONTS_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_LOGOS_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_MESSAGES_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.IMPORT_SETTINGS_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.MEDIA_SCROLLING
mov ecx, esi
call fcn.0046c980
push 0
push str.PRINTER_FIRMWARE_AVAIL
mov ecx, esi
call fcn.0046c980
push 0
push str.UPGRADING_FIRMWARE
mov ecx, esi
call fcn.0046c980
push 0
push str.SELECTED_COUNT
mov ecx, esi
call fcn.0046c980
push 1
push str.OS_DESKTOP
mov ecx, esi
call fcn.0046c980
push str.CALENDAR_TYPE
call fcn.0046ccd0
mov edi, eax
test edi, edi
je 0x46ef3d
push edi
call fcn.0049e31d
push edi
mov ebx, eax
call fcn.0049081d
add esp, 8
cmp ebx, 1
jne 0x46ef3d
test ebp, ebp
je 0x46ef4b
push 0
push str.CALENDAR_TYPE
mov ecx, esi
call fcn.0046c980
push str.PAPERSIZE_DONT_WARN_AGAIN
call fcn.0046ccd0
mov edi, eax
test edi, edi
je 0x46ef75
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46ef60
sub eax, edx
sar eax, 1
je 0x46ef75
test ebp, ebp
je 0x46ef83
push 0
push str.PAPERSIZE_DONT_WARN_AGAIN
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
push str.BROWSER_PATH_PROJECTS
call fcn.0046ccd0
mov ebx, dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov edi, eax
test edi, edi
je 0x46efba
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46efa5
sub eax, edx
sar eax, 1
je 0x46efba
test ebp, ebp
je 0x46efde
xor eax, eax
lea ecx, [esp + 0x10]
push ecx
push eax
push eax
push 5
push eax
mov word [esp + 0x24], ax
call ebx
lea edx, [esp + 0x10]
push edx
push str.BROWSER_PATH_PROJECTS
mov ecx, esi
call fcn.0046cab0
test edi, edi
je 0x46efeb
push edi
call fcn.0049081d
add esp, 4
push str.BROWSER_PATH_LOGOS
call fcn.0046ccd0
mov edi, eax
test edi, edi
je 0x46f015
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f000
sub eax, edx
sar eax, 1
je 0x46f015
test ebp, ebp
je 0x46f039
xor eax, eax
lea ecx, [esp + 0x10]
push ecx
push eax
push eax
push 5
push eax
mov word [esp + 0x24], ax
call ebx
lea edx, [esp + 0x10]
push edx
push str.BROWSER_PATH_LOGOS
mov ecx, esi
call fcn.0046cab0
test edi, edi
je 0x46f046
push edi
call fcn.0049081d
add esp, 4
push str.BRIGHTNESS
call fcn.0046ccd0
mov edi, eax
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f055
sub eax, edx
sar eax, 1
je 0x46f06a
test ebp, ebp
je 0x46f078
push 0x50
push str.BRIGHTNESS
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
push str.BAUDRATE
call fcn.0046ccd0
mov edi, eax
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f090
sub eax, edx
sar eax, 1
je 0x46f0a5
test ebp, ebp
je 0x46f0e0
push 0x1c200
push str.BAUDRATE
mov ecx, esi
call fcn.0046c980
push 8
push str.DATABITS
mov ecx, esi
call fcn.0046c980
push 0
push str.STOPBITS
mov ecx, esi
call fcn.0046c980
push 0
push str.PARITY
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
push 0
push str.USBPRINT
mov ecx, esi
call fcn.0046c980
push 0
push str.DISABLETABS
mov ecx, esi
call fcn.0046c980
push 0
push str.UPGRADE_AVAILABLE
mov ecx, esi
call fcn.0046c980
push 0x32
push str.UPGRADEFIRMWARE_PERCENT
mov ecx, esi
call fcn.0046c980
push 9
push str.MAXCOUNTER
mov ecx, esi
call fcn.0046c980
push str.SCREENBEEP
call fcn.0046ccd0
mov edi, eax
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f140
sub eax, edx
sar eax, 1
je 0x46f155
test ebp, ebp
je 0x46f163
push 1
push str.SCREENBEEP
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
push str.VOLUME
call fcn.0046ccd0
mov edi, eax
lea edx, [eax + 2]
jmp 0x46f180
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f180
sub eax, edx
sar eax, 1
je 0x46f195
test ebp, ebp
je 0x46f1a3
push 0x50
push str.VOLUME
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
push str.1.20.16
push str.VERSION_NUMBER
mov ecx, esi
call fcn.0046cab0
push 0
push str.COMMS_VIEWMESSAGE
mov ecx, esi
call fcn.0046c980
push 0
push str.PRINT_ERRORCODE
mov ecx, esi
call fcn.0046c980
push 0x4c3af8
push str.ErrorString
mov ecx, esi
call fcn.0046cab0
push 1
push str.INKTYPE
mov ecx, esi
call fcn.0046c980
push 0
push str.PRINTHEAD
mov ecx, esi
call fcn.0046c980
push 0
push str.PRINTDIR
mov ecx, esi
call fcn.0046c980
push 0
push str.PRINTORIENT
mov ecx, esi
call fcn.0046c980
push 0
push str.AUTOPRINT
mov ecx, esi
call fcn.0046c980
push 0
push str.ENCODER
mov ecx, esi
call fcn.0046c980
push 0
push str.INKSAVER
mov ecx, esi
call fcn.0046c980
push 0
push str.INKSPIT
mov ecx, esi
call fcn.0046c980
push 0
push str.INKTICKLE
mov ecx, esi
call fcn.0046c980
push 0
push 0x4c484c
mov ecx, esi
call fcn.0046c980
push 5
push str.OPENOFFSET
mov ecx, esi
call fcn.0046c980
push 5
push str.CLOSEOFFSET
mov ecx, esi
call fcn.0046c980
push str.CONNECTIONTYPE
call fcn.0046ccd0
mov edi, eax
test edi, edi
je 0x46f2c3
test ebp, ebp
jne 0x46f2c3
cmp word [edi], bp
jne 0x46f2b8
push ebp
push str.CONNECTIONTYPE
mov ecx, esi
call fcn.0046c980
push edi
call fcn.0049081d
add esp, 4
jmp 0x46f2d1
push 0
push str.CONNECTIONTYPE
mov ecx, esi
call fcn.0046c980
push 0
push 0x4c5910
mov ecx, esi
call fcn.0046c980
push 0
push str.BARCODE_PROMPT_VALID
mov ecx, esi
call fcn.0046c980
push 0
push 0x4c6948
mov ecx, esi
call fcn.0046c980
push 0
push str.GUISelectedCOMPort
mov ecx, esi
call fcn.0046c980
push 0
push str.GUISelectedCOMSerial
mov ecx, esi
call fcn.0046c980
push str.STARTOFDAYHOURS
call fcn.0046ccd0
push str.STARTOFDAYMINUTES
mov edi, eax
call fcn.0046ccd0
mov ebx, eax
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f334
sub eax, edx
sar eax, 1
je 0x46f349
test ebp, ebp
je 0x46f35a
push 0x4c5904
push str.STARTOFDAYHOURS
mov ecx, esi
call fcn.0046cab0
mov eax, ebx
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46f360
sub eax, edx
sar eax, 1
je 0x46f375
test ebp, ebp
je 0x46f386
push 0x4c5904
push str.STARTOFDAYMINUTES
mov ecx, esi
call fcn.0046cab0
push ebx
call fcn.0049081d
push edi
call fcn.0049081d
mov ecx, dword [esp + 0x224]
add esp, 8
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049dc2a
add esp, 0x214
ret 4