Function at 0x453450
Capabilities:
Get common file path
Get graphical window text
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa9c
mov eax, dword [0x481288]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
mov dword [ebp - 0xa8c], ecx
cmp dword [ebp - 0xa8c], 0x3f6
jg 0x4534d4
cmp dword [ebp - 0xa8c], 0x3f6
je 0x453525
cmp dword [ebp - 0xa8c], 0x3ea
jg 0x4534c3
cmp dword [ebp - 0xa8c], 0x3e8
jge 0x45381e
cmp dword [ebp - 0xa8c], 2
je 0x453516
cmp dword [ebp - 0xa8c], 8
je 0x453516
jmp 0x453aee
cmp dword [ebp - 0xa8c], 0x3f5
je 0x453505
jmp 0x453aee
cmp dword [ebp - 0xa8c], 0x3f8
je 0x45352f
cmp dword [ebp - 0xa8c], 0x411
je 0x4538c9
cmp dword [ebp - 0xa8c], 0x415
je 0x453a05
jmp 0x453aee
push 6
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x453aee
push 1
call fcn.00459760
add esp, 4
jmp 0x453aee
call fcn.00459310
jmp 0x453aee
push 0x104
push 0x4880d0
push 0x410
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov ecx, dword [ebp + 8]
push ecx
call fcn.00450740
add esp, 4
test eax, eax
jne 0x45357c
push 0x10
push 0x4781b4
push 0x4781dc
mov edx, dword [ebp + 8]
push edx
call fcn.00458ce0
add esp, 0x10
jmp 0x453aee
push 0x4880d0
call fcn.00414d31
add esp, 4
movzx eax, word [eax*2 + 0x4880ce]
cmp eax, 0x5c
jne 0x4535ad
push 0x4880d0
call fcn.00414d31
add esp, 4
mov word [eax*2 + 0x4880ce], 0
cmp dword [0x487464], 0
jne 0x45367d
mov ecx, dword [0x4822ec]
xor edx, edx
mov dword [ebp - 0xa94], ecx
mov dword [ebp - 0xa90], edx
mov eax, dword [ebp - 0xa90]
cmp eax, dword [0x48a864]
jl 0x45367d
jg 0x4535f4
mov ecx, dword [ebp - 0xa94]
cmp ecx, dword [0x48a860]
jb 0x45367d
mov word [ebp - 0x218], 0
push 0x206
push 0
lea edx, [ebp - 0x216]
push edx
call fcn.00415680
add esp, 0xc
mov eax, dword [0x4822ec]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0xa98], 0
fild qword [ebp - 0xa9c]
fdiv qword [0x47ab30]
fdiv qword [0x47ab30]
sub esp, 8
fstp qword [esp]
push 0x478200
push 0x208
push 0x104
lea ecx, [ebp - 0x218]
push ecx
call fcn.004157ac
add esp, 0x18
push 0x30
push 0x47824c
lea edx, [ebp - 0x218]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00458ce0
add esp, 0x10
jmp 0x453aee
push 0x4880d0
call fcn.00450f10
add esp, 4
test eax, eax
jne 0x4536ab
push 0x10
push 0x478274
push 0x47829c
mov ecx, dword [ebp + 8]
push ecx
call fcn.00458ce0
add esp, 0x10
jmp 0x453aee
call fcn.00451ad0
mov edx, dword [ebp + 8]
push edx
call fcn.00451830
add esp, 4
test eax, eax
jne 0x4536c5
jmp 0x453aee
mov eax, dword [ebp + 8]
push eax
call fcn.00451600
add esp, 4
test eax, eax
jne 0x4536da
jmp 0x453aee
mov ecx, dword [ebp + 8]
push ecx
call fcn.00452c10
add esp, 4
test eax, eax
jne 0x4536ef
jmp 0x453aee
mov edx, dword [ebp + 8]
push edx
call fcn.00452f50
add esp, 4
test eax, eax
jne 0x453704
jmp 0x453aee
push 0x486708
call fcn.00414d31
add esp, 4
test eax, eax
jbe 0x453765
push 0x4880d0
push 0x486708
call fcn.004159fc
add esp, 8
test eax, eax
je 0x453765
push 0
push 1
push 0x486708
mov eax, dword [ebp + 8]
push eax
call fcn.0044ee20
add esp, 0x10
test eax, eax
jne 0x453765
push 0
push 0
push 0xf5
push 2
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x453aee
push 0
push 0
push 0x4880d0
mov edx, dword [ebp + 8]
push edx
call fcn.0044ee20
add esp, 0x10
test eax, eax
jne 0x45379f
push 0
push 0
push 0xf5
push 2
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x453aee
call fcn.004502f0
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
push ecx
push 0
push 0xd00
mov edx, dword [0x486290]
push edx
call dword [sym.imp.USER32.dll_PostMessageW]
mov dword [ebp - 8], eax
cmp dword [0x48a878], 0
je 0x45380f
push 0x4880d0
push 0x486708
call fcn.004159fc
add esp, 8
test eax, eax
jne 0x4537ed
mov dword [0x487a80], 1
jmp 0x45380f
mov dword [0x487a80], 0
mov dword [0x489b50], 2
mov eax, dword [0x487364]
push eax
call fcn.00441b70
add esp, 4
call fcn.004592f0
call fcn.0044dad0
jmp 0x453aee
mov ecx, dword [ebp + 0xc]
and ecx, 0xffff
movzx edx, cx
cmp edx, 0x3e9
jne 0x45387c
push 5
push 0x414
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 5
push 0x415
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 1
push 0x415
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x4538c4
push 0
push 0x414
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0x415
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0x415
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x453aee
push 0x104
push 0x4825a0
push 0x410
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
cmp dword [0x487434], 0x18
jl 0x45390d
push str.c:_txqq0824
push 0x4825a0
call fcn.004160f0
add esp, 8
test eax, eax
jne 0x45390d
jmp 0x453aee
lea ecx, [ebp - 0x428]
push ecx
push 0
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
test eax, eax
jne 0x453a00
mov edx, dword [ebp + 8]
mov dword [ebp - 0x650], edx
mov eax, dword [ebp - 0x428]
mov dword [ebp - 0x64c], eax
lea ecx, [ebp - 0x630]
mov dword [ebp - 0x648], ecx
mov dword [ebp - 0x644], 0x4782ec
mov dword [ebp - 0x640], 0x45
mov dword [ebp - 0x63c], 0x450260
mov dword [ebp - 0x638], 0
mov dword [ebp - 0x634], 0
lea edx, [ebp - 0x650]
push edx
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov dword [ebp - 0x424], eax
cmp dword [ebp - 0x424], 0
je 0x453a00
lea eax, [ebp - 0x420]
push eax
mov ecx, dword [ebp - 0x424]
push ecx
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
lea edx, [ebp - 0x420]
push edx
call fcn.00414d31
add esp, 4
cmp eax, 0x96
ja 0x4539e8
lea eax, [ebp - 0x420]
push eax
push 0x410
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov dword [0x489b60], 1
jmp 0x453a00
push 0x10
push 0x478300
push 0x478328
mov edx, dword [ebp + 8]
push edx
call fcn.00458ce0
add esp, 0x10
jmp 0x453aee
lea eax, [ebp - 0x860]
push eax
push 0
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
test eax, eax
jne 0x453aee
mov ecx, dword [ebp + 8]
mov dword [ebp - 0xa88], ecx
mov edx, dword [ebp - 0x860]
mov dword [ebp - 0xa84], edx
lea eax, [ebp - 0xa68]
mov dword [ebp - 0xa80], eax
mov dword [ebp - 0xa7c], 0x47834c
mov dword [ebp - 0xa78], 0x45
mov dword [ebp - 0xa74], 0x450260
mov dword [ebp - 0xa70], 0
mov dword [ebp - 0xa6c], 0
lea ecx, [ebp - 0xa88]
push ecx
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov dword [ebp - 0x85c], eax
cmp dword [ebp - 0x85c], 0
je 0x453aee
lea edx, [ebp - 0x858]
push edx
mov eax, dword [ebp - 0x85c]
push eax
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
lea ecx, [ebp - 0x858]
push ecx
call fcn.00414d31
add esp, 4
cmp eax, 0x96
ja 0x453ad6
lea edx, [ebp - 0x858]
push edx
push 0x414
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x453aee
push 0x10
push 0x478364
push 0x47838c
mov ecx, dword [ebp + 8]
push ecx
call fcn.00458ce0
add esp, 0x10
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.004151d0
mov esp, ebp
pop ebp
ret