Function at 0x48c6b5
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3b0
push ebx
push esi
mov esi, ecx
push edi
mov dword [esi + 0x264], 0
call fcn.00478990
cmp dword [eax + 0xc4], 0
jle 0x48c0f7
call fcn.00478990
cmp dword [eax + 0xc8], 0
jle 0x48c0f7
push 1
push 0
call fcn.00478990
mov eax, dword [eax + 0xc8]
push eax
call fcn.00478990
mov ecx, esi
mov eax, dword [eax + 0xc4]
push eax
call fcn.004254a0
call fcn.00478990
mov ecx, esi
mov eax, dword [eax + 0xe0]
push eax
call fcn.00428010
cmp dword [esi + 0x258], 0
je 0x48c930
push 9
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_name
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0x18
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 8
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_url
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0x48
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 9
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_icon
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0x6c
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_param
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0x84
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
xor eax, eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
push 8
push str.edit_dir
lea ecx, [ebp - 0x1c]
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0x9c
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_admin
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, dword [esi + 0x258]
push 0
mov edx, dword [eax]
movzx ecx, byte [ecx + 0xc0]
push ecx
mov ecx, eax
call dword [edx + 0x164]
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_color
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0xc4
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 0xb
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_remark
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
add eax, 0xdc
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044be70
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 0xb
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_hotkey
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
mov eax, dword [esi + 0x258]
mov ecx, esi
movzx eax, word [eax + 0xb8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00427880
mov ecx, eax
call fcn.004a3b00
lea ecx, [ebp - 0x1c]
call fcn.00403070
push 5
xor eax, eax
mov dword [ebp - 0xc], 0
push str.title
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
push 0x5b8710
push 0x5b780c
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
lea ecx, [ebp - 0x1c]
mov edi, eax
call fcn.00403070
push 9
xor eax, eax
mov dword [ebp - 0xa4], 0
push str.label_url
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0xa0], 7
mov word [ebp - 0xb4], ax
call fcn.00402e60
push 0
push 0x5b8710
push 0x5b780c
push 0
lea eax, [ebp - 0xb4]
mov ecx, esi
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
lea ecx, [ebp - 0xb4]
mov ebx, eax
call fcn.00403070
push 8
xor eax, eax
mov dword [ebp - 0xbc], 0
push str.edit_url
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xb8], 7
mov word [ebp - 0xcc], ax
call fcn.00402e60
lea eax, [ebp - 0xcc]
mov ecx, esi
push eax
call fcn.00427880
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x74], eax
call fcn.00403070
push 8
xor eax, eax
mov dword [ebp - 0xd4], 0
push str.btn_path
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xd0], 7
mov word [ebp - 0xe4], ax
call fcn.00402e60
lea eax, [ebp - 0xe4]
mov ecx, esi
push eax
call fcn.00427880
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0x44], eax
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0xec], 0
push str.edit_param
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xe8], 7
mov word [ebp - 0xfc], ax
call fcn.00402e60
lea eax, [ebp - 0xfc]
mov ecx, esi
push eax
call fcn.00427880
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x48], eax
call fcn.00403070
push 8
xor eax, eax
mov dword [ebp - 0x7c], 0
push str.edit_dir
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x78], 7
mov word [ebp - 0x8c], ax
call fcn.00402e60
lea eax, [ebp - 0x8c]
mov ecx, esi
push eax
call fcn.00427880
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x20], eax
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0x50], 0
push str.edit_admin
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
call fcn.00402e60
lea eax, [ebp - 0x60]
mov ecx, esi
push eax
call fcn.00427880
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], eax
call fcn.00403070
mov ecx, dword [esi + 0x258]
mov eax, dword [ecx + 0x14]
cmp eax, 7
ja case.default.0x48c5cc
jmp dword [eax*4 + 0x48d468]
push 0x57f524
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push 0x57f534
lea ecx, [ebp - 0x38]
call fcn.00402fa0
jmp 0x48c743
push 0x57f53c
jmp 0x48c5d8
push 0x57f54c
jmp 0x48c5d8
push 0x57f55c
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push 0x57f56c
lea ecx, [ebp - 0x38]
call fcn.00402fa0
jmp 0x48c743
push 0x57f574
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push 0x57f588
lea ecx, [ebp - 0x38]
call fcn.00402fa0
jmp 0x48c743
push 0x57f590
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push 0x57f5a8
lea ecx, [ebp - 0x38]
call fcn.00402fa0
jmp 0x48c743
push 0x57f5b0
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push str.Pidl
lea ecx, [ebp - 0x38]
call fcn.00402fa0
jmp 0x48c743
push 4
xor eax, eax
mov dword [ebp - 0x28], 0
push 0x57f5d0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
mov eax, dword [edi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
push 2
xor eax, eax
mov dword [ebp - 0x28], 0
push 0x57f534
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
call dword [eax + 0x154]
lea ecx, [ebp - 0x38]
call fcn.00403070
mov edi, dword [esi + 0x258]
mov eax, dword [edi + 0x14]
cmp eax, 7
ja case.default.0x48c76b
jmp dword [eax*4 + 0x48d488]
mov ecx, dword [ebp - 0x74]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x44]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x48]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x20]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
push 1
jmp 0x48c888
mov ecx, dword [ebp - 0x74]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x44]
push 1
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x48]
push 0
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x20]
push 0
mov eax, dword [ecx]
call dword [eax + 0xa0]
push 1
jmp 0x48c888
push 0x2b4
lea eax, [ebp - 0x3b0]
push 0
push eax
call sub.msvcrt.dll_memset
mov ecx, dword [edi + 0x64]
lea eax, [ebp - 0x3b0]
sub ecx, dword [edi + 0x60]
add esp, 0xc
neg ecx
sbb ecx, ecx
and ecx, dword [edi + 0x60]
push 0x4208
push 0x2b4
push eax
push 0
push ecx
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
cmp dword [ebp - 0x3ac], 0
je case.default.0x48c76b
lea eax, [ebp - 0x3a4]
push eax
lea ecx, [ebp - 0x38]
call fcn.00402fa0
mov ebx, dword [ebp - 0x74]
lea eax, [ebp - 0x38]
push eax
mov ecx, ebx
call fcn.0044be70
lea ecx, [ebp - 0x38]
call fcn.00403070
mov eax, dword [ebx]
mov ecx, ebx
push 0
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x44]
push 0
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x48]
push 0
mov eax, dword [ecx]
call dword [eax + 0xa0]
mov ecx, dword [ebp - 0x20]
push 0
mov eax, dword [ecx]
call dword [eax + 0xa0]
push 0
mov ecx, dword [ebp - 4]
mov eax, dword [ecx]
call dword [eax + 0xa0]
push 0xa
xor eax, eax
mov dword [ebp - 0x28], 0
push str.edit_admin
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
push 0
push 0x5b8ba0
push 0x5b780c
push 0
lea eax, [ebp - 0x38]
mov ecx, esi
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
lea ecx, [ebp - 0x38]
mov edi, eax
call fcn.00403070
mov ecx, dword [esi + 0x258]
xor eax, eax
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
cmp dword [ecx + 0x14], 4
lea ecx, [ebp - 0x60]
jne 0x48c90e
push 7
push 0x57f5dc
jmp 0x48c915
push 8
push 0x57f5ec
call fcn.00402e60
mov eax, dword [edi]
lea ecx, [ebp - 0x60]
push ecx
mov ecx, edi
call dword [eax + 0x154]
lea ecx, [ebp - 0x60]
call fcn.00403070
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_color
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov edx, dword [ebp - 8]
mov dword [esi + 0x260], eax
cmp edx, 8
jb 0x48c99e
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48c994
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d43e
push edx
push ecx
call fcn.00531d2c
add esp, 8
mov eax, dword [esi + 0x258]
cmp dword [eax + 0xd4], 0
jbe 0x48c9c1
mov ecx, dword [esi + 0x260]
add eax, 0xc4
push eax
mov edx, dword [ecx]
call dword [edx + 0x200]
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x49fe90
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x40]
push eax
call fcn.004831c0
lea eax, [ebp - 0x40]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x3c]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x4c], edi
test ecx, ecx
je 0x48ca20
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48ca20
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [esi + 0x260]
lea eax, [ebp - 4]
push eax
add ecx, 0x70
mov dword [ebp - 4], 0x2e
call fcn.00429ea0
mov ebx, eax
mov ecx, dword [ebx + 4]
mov dword [ebp - 0x20], ecx
cmp dword [ebx + 8], ecx
je 0x48ca64
mov dword [ecx + 0x24], 0
test edi, edi
je 0x48ca5e
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x24], eax
add dword [ebx + 4], 0x28
jmp 0x48ca70
lea eax, [ebp - 0x70]
push eax
push ecx
mov ecx, ebx
call fcn.0042a0e0
test edi, edi
je 0x48ca87
mov edx, dword [edi]
lea eax, [ebp - 0x70]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 8
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_url
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044ca50
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48caf8
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48caee
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d443
push edx
push ecx
call fcn.00531d2c
add esp, 8
push 9
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_icon
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044ca50
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48cb69
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48cb5f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d448
push edx
push ecx
call fcn.00531d2c
add esp, 8
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_param
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044ca50
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48cbda
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48cbd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d44d
push edx
push ecx
call fcn.00531d2c
add esp, 8
push 8
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_dir
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044ca50
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48cc4b
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48cc41
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d452
push edx
push ecx
call fcn.00531d2c
add esp, 8
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.edit_color
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
mov ecx, eax
call fcn.0044ca50
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48ccbc
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48ccb2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d457
push edx
push ecx
call fcn.00531d2c
add esp, 8
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x40]
push eax
call fcn.004831c0
lea eax, [ebp - 0x40]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x3c]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x4c], edi
test ecx, ecx
je 0x48cd1b
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48cd1b
mov eax, dword [ecx]
call dword [eax + 4]
push 6
xor eax, eax
mov dword [ebp - 0xc], 0
push str.btn_ok
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
push 0x5b80ec
push 0x5b780c
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov dword [ebp - 4], 0x29
lea ecx, [ebp - 4]
push ecx
lea ecx, [eax + 0x70]
call fcn.00429ea0
mov dword [ebp - 0x20], eax
mov ebx, dword [eax + 4]
cmp dword [eax + 8], ebx
je 0x48cd9c
mov dword [ebx + 0x24], 0
test edi, edi
je 0x48cd96
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x20]
add dword [eax + 4], 0x28
jmp 0x48cda8
lea ecx, [ebp - 0x70]
push ecx
push ebx
mov ecx, eax
call fcn.0042a0e0
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48cde2
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48cdd8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d45c
push edx
push ecx
call fcn.00531d2c
add esp, 8
xor eax, eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
test edi, edi
je 0x48ce0d
mov edx, dword [edi]
lea eax, [ebp - 0x70]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x40]
push eax
call fcn.004831c0
lea eax, [ebp - 0x40]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x3c]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x4c], edi
test ecx, ecx
je 0x48ce6c
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48ce6c
mov eax, dword [ecx]
call dword [eax + 4]
push 0xa
xor eax, eax
mov dword [ebp - 0xc], 0
push str.btn_cancel
lea ecx, [ebp - 0x1c]
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
call fcn.00402e60
push 0
push 0x5b80ec
push 0x5b780c
push 0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov dword [ebp - 4], 0x29
lea ecx, [ebp - 4]
push ecx
lea ecx, [eax + 0x70]
call fcn.00429ea0
mov dword [ebp - 0x20], eax
mov ebx, dword [eax + 4]
cmp dword [eax + 8], ebx
je 0x48ceed
mov dword [ebx + 0x24], 0
test edi, edi
je 0x48cee7
mov eax, dword [edi]
mov ecx, edi
push ebx
call dword [eax]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x20]
add dword [eax + 4], 0x28
jmp 0x48cef9
lea ecx, [ebp - 0x70]
push ecx
push ebx
mov ecx, eax
call fcn.0042a0e0
mov edx, dword [ebp - 8]
cmp edx, 8
jb 0x48cf33
mov ecx, dword [ebp - 0x1c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x48cf29
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48d461
push edx
push ecx
call fcn.00531d2c
add esp, 8
xor eax, eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 7
mov word [ebp - 0x1c], ax
test edi, edi
je 0x48cf5e
mov edx, dword [edi]
lea eax, [ebp - 0x70]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x68]
push eax
call fcn.004831c0
lea eax, [ebp - 0x68]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x64]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x48cfbd
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48cfbd
mov eax, dword [ecx]
call dword [eax + 4]
push 8
xor eax, eax
mov dword [ebp - 0x28], 0
push str.btn_path
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
lea eax, [ebp - 0x9c]
mov ecx, esi
push eax
push 0
push 0x5b80ec
push 0x5b780c
push 0
lea eax, [ebp - 0x38]
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov ecx, eax
call fcn.00439cf0
lea ecx, [ebp - 0x38]
call fcn.00403070
test edi, edi
je 0x48d032
mov edx, dword [edi]
lea eax, [ebp - 0x9c]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x68]
push eax
call fcn.004831c0
lea eax, [ebp - 0x68]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x64]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x48d091
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48d091
mov eax, dword [ecx]
call dword [eax + 4]
push 8
xor eax, eax
mov dword [ebp - 0x28], 0
push str.btn_icon
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
lea eax, [ebp - 0x9c]
mov ecx, esi
push eax
push 0
push 0x5b80ec
push 0x5b780c
push 0
lea eax, [ebp - 0x38]
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov ecx, eax
call fcn.00439cf0
lea ecx, [ebp - 0x38]
call fcn.00403070
test edi, edi
je 0x48d106
mov edx, dword [edi]
lea eax, [ebp - 0x9c]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 0x57e969
lea eax, [ebp - 4]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 4], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x68]
push eax
call fcn.004831c0
lea eax, [ebp - 0x68]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x64]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x48d165
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48d165
mov eax, dword [ecx]
call dword [eax + 4]
push 9
xor eax, eax
mov dword [ebp - 0x28], 0
push str.btn_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
lea eax, [ebp - 0x9c]
mov ecx, esi
push eax
push 0
push 0x5b80ec
push 0x5b780c
push 0
lea eax, [ebp - 0x38]
push eax
call fcn.00427880
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov ecx, eax
call fcn.00439cf0
lea ecx, [ebp - 0x38]
call fcn.00403070
test edi, edi
je 0x48d1da
mov edx, dword [edi]
lea eax, [ebp - 0x9c]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
push 8
xor eax, eax
mov dword [ebp - 0x28], 0
push str.colorbox
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
lea eax, [ebp - 0x38]
mov ecx, esi
push eax
call fcn.00427880
mov edi, eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], edi
call fcn.00403070
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x15c]
xor ebx, ebx
mov dword [ebp - 0x44], eax
test eax, eax
jle 0x48d307
nop dword [eax]
mov eax, dword [edi]
mov ecx, edi
push 0
push 0x5b80ec
push 0x5b780c
push 0
push ebx
call dword [eax + pe_nt_image_headers32]
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov dword [ebp - 0x48], eax
test eax, eax
je 0x48d2fd
push 0x57e969
lea eax, [ebp - 0x20]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 0x20], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x68]
push eax
call fcn.004831c0
lea eax, [ebp - 0x68]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x64]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x48d2bc
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48d2bc
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x29
push eax
add ecx, 0x70
call fcn.00429ea0
mov ecx, eax
call fcn.0042a370
test edi, edi
je 0x48d2fa
mov edx, dword [edi]
lea eax, [ebp - 0x9c]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov edi, dword [ebp - 4]
inc ebx
cmp ebx, dword [ebp - 0x44]
jl 0x48d230
push 9
xor eax, eax
mov dword [ebp - 0x28], 0
push str.colorbox2
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 7
mov word [ebp - 0x38], ax
call fcn.00402e60
lea eax, [ebp - 0x38]
mov ecx, esi
push eax
call fcn.00427880
mov edi, eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], edi
call fcn.00403070
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x15c]
xor ebx, ebx
mov dword [ebp - 0x44], eax
test eax, eax
jle 0x48d437
nop dword [eax]
mov eax, dword [edi]
mov ecx, edi
push 0
push 0x5b80ec
push 0x5b780c
push 0
push ebx
call dword [eax + pe_nt_image_headers32]
push eax
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov dword [ebp - 0x48], eax
test eax, eax
je 0x48d42d
push 0x57e969
lea eax, [ebp - 0x20]
mov dword [ebp - 0x10], 0x48672c
push eax
sub esp, 0xc
mov dword [ebp - 0xc], 0
movq xmm0, qword [ebp - 0x10]
mov eax, esp
mov dword [ebp - 0x20], esi
movq qword [eax], xmm0
mov dword [eax + 8], 0
lea eax, [ebp - 0x68]
push eax
call fcn.004831c0
lea eax, [ebp - 0x68]
push eax
call fcn.00483590
mov ecx, dword [ebp - 0x64]
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x48d3ec
or edx, 0xffffffff
lock xadd dword [ecx + 8], edx
jne 0x48d3ec
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x29
push eax
add ecx, 0x70
call fcn.00429ea0
mov ecx, eax
call fcn.0042a370
test edi, edi
je 0x48d42a
mov edx, dword [edi]
lea eax, [ebp - 0x9c]
cmp edi, eax
mov ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov edi, dword [ebp - 4]
inc ebx
cmp ebx, dword [ebp - 0x44]
jl 0x48d360
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
call fcn.0055e070
nop
rol ebp, cl
dec eax
add byte [eax], cl
invalid