Function at 0x457e50
Capabilities:
Check if file exists
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a05eb
mov eax, dword fs:[0]
push eax
sub esp, 0x78
mov eax, dword [0x60f074]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ecx, dword [ebp + 8]
lea edx, [ebp - 0x44]
push edx
mov eax, dword [ecx]
call dword [eax + 8]
mov dword [ebp - 4], 0
mov eax, edi
cmp dword [edi + 0x14], 8
jb 0x457e9a
mov eax, dword [edi]
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push eax
call esi
test eax, eax
jne 0x457eba
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x457eb1
mov eax, dword [edi]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push 0xa
xor eax, eax
mov dword [ebp - 0x1c], 0
push str.preference
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
call fcn.00405c70
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x44]
call fcn.004771f0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 2
cmp ecx, eax
je 0x457f12
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x457f06
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x44]
call fcn.00405c70
lea ecx, [ebp - 0x78]
call fcn.00405c10
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0
call fcn.00405c10
lea eax, [ebp - 0x44]
cmp edi, eax
je 0x457f40
cmp dword [ebp - 0x30], 8
mov ecx, edi
push dword [ebp - 0x34]
cmovae eax, dword [ebp - 0x44]
push eax
call fcn.00405c70
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x457f4a
mov eax, dword [edi]
push eax
call esi
test eax, eax
je 0x458c78
push edi
lea ecx, [ebp - 0x2c]
call fcn.00405a50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x60], vtable.JSONFileValueSerializer.0
call fcn.00405a50
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 6
call fcn.00405c10
push 0
push 0
lea ecx, [ebp - 0x60]
call fcn.005343c0
mov esi, eax
mov dword [ebp - 0x84], esi
mov byte [ebp - 4], 7
test esi, esi
je 0x458c52
cmp dword [esi + 8], 6
jne 0x458c52
push 7
push str.setting
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x2c]
mov ecx, esi
push eax
call fcn.00474470
mov byte [ebp - 4], 7
mov bl, al
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458019
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45800f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458c9e
push edx
push ecx
call fcn.0055053d
add esp, 8
test bl, bl
je 0x4589e9
push 0xd
push str.bookmark_show
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 9
mov ebx, dword [ebp - 0x80]
mov ecx, ebx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00474470
test al, al
je 0x458068
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x18]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4580a0
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458096
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458ca3
push edx
push ecx
call fcn.0055053d
add esp, 8
push 9
push str.show_tray
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4580e4
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x3c]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x45811c
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458112
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458ca8
push edx
push ecx
call fcn.0055053d
add esp, 8
push 7
push str.autorun
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458160
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x19]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458198
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45818e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cad
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xe
push str.background_run
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4581dc
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1a]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458214
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45820a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cb2
push edx
push ecx
call fcn.0055053d
add esp, 8
push 5
push str.db_up
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458258
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1b]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458290
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458286
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cb7
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xf
push str.system_explorer
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4582d4
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1c]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x45830c
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458302
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cbc
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xc
push str.db_close_tab
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458350
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1e]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458388
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45837e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cc1
push edx
push ecx
call fcn.0055053d
add esp, 8
push 8
push str.exit_tip
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4583cc
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1f]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458404
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4583fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cc6
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xa
push str.ctrl_click
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458448
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x1d]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458480
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458476
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458ccb
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0x11
push str.ctrl_click_newbab
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4584c4
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x23]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4584fc
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4584f2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cd0
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0x11
push str.show_mousegesture
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458540
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x20]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458578
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45856e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cd5
push edx
push ecx
call fcn.0055053d
add esp, 8
push 7
push str.show_wx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4585bc
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x21]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4585f4
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4585ea
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cda
push edx
push ecx
call fcn.0055053d
add esp, 8
push 3
push 0x5d0718
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458638
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x38]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458670
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458666
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cdf
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xb
push str.open_recent
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4586b4
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x3d]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4586ec
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4586e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458ce4
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xb
push str.open_single
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458730
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x3e]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458768
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45875e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458ce9
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xd
push str.taskbar_trans
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4587ac
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x34]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4587e4
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4587da
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cee
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0x11
push str.open_recent_paths
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458828
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x50]
push eax
mov edx, dword [ecx]
call dword [edx + 0x10]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458860
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458856
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cf3
push edx
push ecx
call fcn.0055053d
add esp, 8
push 4
push str.skin
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x4588a4
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x6c]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4588dc
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4588d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cf8
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xe
push str.open_tab_place
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458920
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x70]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458958
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x45894e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458cfd
push edx
push ecx
call fcn.0055053d
add esp, 8
push 0xf
push str.win11_style_tip
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x45899c
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x40]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x4589d4
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4589ca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d02
push edx
push ecx
call fcn.0055053d
add esp, 8
lea eax, [edi + 0x44]
mov edx, 0x23
push eax
push ecx
lea ecx, [edi + 0x50]
call fcn.004855b0
add esp, 8
push 3
push 0x5d06dc
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x2c]
mov ecx, esi
push eax
call fcn.00474470
mov byte [ebp - 4], 7
mov bl, al
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458a57
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458a4d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d07
push edx
push ecx
call fcn.0055053d
add esp, 8
test bl, bl
je 0x458c52
push 4
push str.left
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x1e
mov ebx, dword [ebp - 0x7c]
mov ecx, ebx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00474470
test al, al
je 0x458aa6
mov ecx, dword [ebp - 0x80]
lea eax, [edi + 0x24]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458ade
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458ad4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d0c
push edx
push ecx
call fcn.0055053d
add esp, 8
push 3
push 0x5d074c
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458b22
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x28]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458b5a
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458b50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d11
push edx
push ecx
call fcn.0055053d
add esp, 8
push 5
push str.right
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x20
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458b9e
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x2c]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458bd6
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458bcc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d16
push edx
push ecx
call fcn.0055053d
add esp, 8
push 6
push str.bottom
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00403690
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0x2c]
mov ecx, ebx
push eax
call fcn.00474470
test al, al
je 0x458c1a
mov ecx, dword [ebp - 0x7c]
lea eax, [edi + 0x30]
push eax
mov edx, dword [ecx]
call dword [edx + 8]
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x458c52
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x458c48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x458d1b
push edx
push ecx
call fcn.0055053d
add esp, 8
mov byte [ebp - 4], 0x22
test esi, esi
je 0x458c62
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x60], vtable.JSONFileValueSerializer.0
call fcn.00405c10
mov dword [ebp - 0x60], vtable.base::ValueSerializer.0
lea ecx, [ebp - 0x44]
call fcn.00405c10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00550156
mov esp, ebp
pop ebp
ret 4
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
call fcn.00572795
int3