Function at 0x4248c0
Capabilities:
Check if file exists
Delete file
Get file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4d0665
mov eax, dword fs:[0]
push eax
sub esp, 0x1e8
mov eax, dword [0x4fbf60]
xor eax, esp
mov dword [esp + 0x1e0], eax
push ebx
push esi
push edi
mov eax, dword [0x4fbf60]
xor eax, esp
push eax
lea eax, [esp + 0x1f8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x164]
mov dword [esp + 0x14], eax
call fcn.004238a0
xor ebx, ebx
push str.KometaLaunchPanel.exe
mov dword [esp + 0x204], ebx
call fcn.0041e190
add esp, 4
mov byte [esp + 0x13], al
cmp al, bl
je 0x424958
push str.KometaLaunchPanel
push ebx
call dword [sym.imp.USER32.dll_FindWindowW]
push ebx
push ebx
push 0x10
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0041e270
cmp dword [esp + 0x178], 8
mov eax, dword [esp + 0x164]
jae 0x424970
lea eax, [esp + 0x164]
push eax
call fcn.0041e3d0
add esp, 4
test al, al
jne 0x424a2d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xa4
lea ecx, [esp + 0x24]
push ecx
mov ebx, str.apppanel.cpp
call fcn.00407320
mov edi, eax
mov byte [esp + 0x200], 1
test edi, edi
je 0x4249fb
lea esi, [edi + 0x10]
test esi, esi
je 0x4249b6
lea eax, [edi + 0x20]
jmp 0x4249b8
xor eax, eax
push str.ERROR:
push eax
call fcn.00409b50
add esp, 8
test esi, esi
je 0x4249cf
lea eax, [edi + 0x20]
jmp 0x4249d1
xor eax, eax
push str.Failed_unzip_resources_to_kometa_folder
push eax
call fcn.00409b50
add esp, 8
test esi, esi
je 0x4249e8
lea eax, [edi + 0x20]
jmp 0x4249ea
xor eax, eax
lea edx, [esp + 0x164]
push edx
push eax
call fcn.00409e10
add esp, 8
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0
call fcn.004073f0
cmp dword [esp + 0x178], 8
jb 0x424a26
mov eax, dword [esp + 0x164]
push eax
call fcn.0047f3b4
add esp, 4
xor al, al
jmp 0x4255c3
xor ecx, ecx
push 0x15
mov word [esp + 0xf8], cx
push str.KometaLaunchPanel.exe
lea ecx, [esp + 0xfc]
mov dword [esp + 0x110], 7
mov dword [esp + 0x10c], ebx
call fcn.004028fc
lea ebx, [esp + 0xf4]
lea ecx, [esp + 0x164]
lea edi, [esp + 0xd8]
mov byte [esp + 0x200], 2
call fcn.0041c970
mov esi, 8
mov byte [esp + 0x200], 3
cmp dword [eax + 0x14], esi
jb 0x424a94
mov edx, dword [eax]
jmp 0x424a96
mov edx, eax
xor edi, edi
xor eax, eax
mov word [esp + 0x110], ax
mov eax, edx
mov dword [esp + 0x124], 7
mov dword [esp + 0x120], edi
lea ebx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x424ac0
sub eax, ebx
sar eax, 1
push eax
push edx
lea ecx, [esp + 0x118]
call fcn.004028fc
lea edx, [esp + 0x110]
lea ecx, [esp + 0x180]
mov byte [esp + 0x200], 4
call fcn.0041ec40
cmp dword [esp + 0x124], esi
jb 0x424b11
mov ecx, dword [esp + 0x110]
push ecx
call fcn.0047f3b4
add esp, 4
mov ebx, 7
xor edx, edx
mov dword [esp + 0x124], ebx
mov dword [esp + 0x120], edi
mov word [esp + 0x110], dx
cmp dword [esp + 0xec], esi
jb 0x424b47
mov eax, dword [esp + 0xd8]
push eax
call fcn.0047f3b4
add esp, 4
xor ecx, ecx
mov dword [esp + 0xec], ebx
mov dword [esp + 0xe8], edi
mov word [esp + 0xd8], cx
mov byte [esp + 0x200], 8
cmp dword [esp + 0x108], esi
jb 0x424b80
mov edx, dword [esp + 0xf4]
push edx
call fcn.0047f3b4
add esp, 4
xor eax, eax
mov dword [esp + 0x108], ebx
mov dword [esp + 0x104], edi
mov word [esp + 0xf4], ax
call fcn.00424560
call fcn.00423d80
lea ecx, [esp + 0x180]
push ecx
lea ecx, [esp + 0x168]
call fcn.004245e0
add esp, 4
call fcn.0041d8d0
test al, al
jne 0x424c9d
push 0xc
xor edx, edx
push str.normaliz.dll
lea ecx, [esp + 0x134]
mov dword [esp + 0x148], 7
mov dword [esp + 0x144], edi
mov word [esp + 0x134], dx
call fcn.004028fc
lea ebx, [esp + 0x12c]
lea ecx, [esp + 0x164]
lea edi, [esp + 0x148]
mov byte [esp + 0x200], 9
call fcn.0041c970
mov ebx, 8
mov byte [esp + 0x200], bl
cmp dword [esp + 0x140], ebx
jb 0x424c3c
mov eax, dword [esp + 0x12c]
push eax
call fcn.0047f3b4
add esp, 4
cmp dword [esp + 0x15c], ebx
jb 0x424e03
mov eax, dword [esp + 0x148]
test eax, eax
je 0x424c82
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x424c82
test al, 0x10
jne 0x424c82
mov eax, dword [esp + 0x148]
cmp dword [esp + 0x15c], ebx
jae 0x424c7b
lea eax, [esp + 0x148]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [esp + 0x15c], ebx
jb 0x424c9b
mov ecx, dword [esp + 0x148]
push ecx
call fcn.0047f3b4
add esp, 4
xor edi, edi
push 0xc
xor edx, edx
mov esi, 7
push str.kometaup.zip
lea ecx, [esp + 0x150]
mov dword [esp + 0x164], esi
mov dword [esp + 0x160], edi
mov word [esp + 0x150], dx
call fcn.004028fc
lea ecx, [esp + 0x1d4]
mov byte [esp + 0x200], 0xa
call fcn.004238a0
lea ebx, [esp + 0x148]
mov ecx, eax
lea edi, [esp + 0x19c]
mov byte [esp + 0x200], 0xb
call fcn.0041c970
mov edi, 8
cmp dword [esp + 0x1e8], edi
jb 0x424d1c
mov eax, dword [esp + 0x1d4]
push eax
call fcn.0047f3b4
add esp, 4
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x1e8], esi
mov dword [esp + 0x1e4], ebx
mov word [esp + 0x1d4], cx
mov byte [esp + 0x200], 0xe
cmp dword [esp + 0x15c], edi
jb 0x424d57
mov edx, dword [esp + 0x148]
push edx
call fcn.0047f3b4
add esp, 4
xor eax, eax
mov dword [esp + 0x15c], esi
mov dword [esp + 0x158], ebx
mov word [esp + 0x148], ax
cmp dword [esp + 0x1b0], edi
jb 0x424e0f
mov eax, dword [esp + 0x19c]
cmp eax, ebx
je 0x424e5d
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x424e5d
test al, 0x10
jne 0x424e5d
mov ecx, dword [esp + 0x19c]
cmp dword [esp + 0x1b0], edi
jae 0x424dba
lea ecx, [esp + 0x19c]
call fcn.0041ed90
test al, al
jne 0x424e5d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xc1
lea ecx, [esp + 0x24]
push ecx
mov ebx, str.apppanel.cpp
call fcn.00407320
mov esi, eax
mov byte [esp + 0x200], 0xf
call fcn.004210f0
mov esi, eax
test esi, esi
je 0x424e47
lea edi, [esi + 0x10]
test edi, edi
je 0x424e1b
lea eax, [esi + 0x20]
jmp 0x424e1d
lea eax, [esp + 0x148]
jmp 0x424c54
lea eax, [esp + 0x19c]
jmp 0x424d8b
xor eax, eax
push str.failed_to_check
push eax
call fcn.00409b50
add esp, 8
test edi, edi
je 0x424e34
lea eax, [esi + 0x20]
jmp 0x424e36
xor eax, eax
lea edx, [esp + 0x19c]
push edx
push eax
call fcn.00409e10
add esp, 8
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0xe
call fcn.004073f0
mov edi, 8
cmp byte [ebp + 0xc], 0
jne 0x42514b
push 0xb
xor eax, eax
push str.getdata.exe
lea ecx, [esp + 0xfc]
mov dword [esp + 0x110], 7
mov dword [esp + 0x10c], 0
mov word [esp + 0xfc], ax
call fcn.004028fc
lea ebx, [esp + 0xf4]
lea ecx, [esp + 0x164]
lea edi, [esp + 0x110]
mov byte [esp + 0x200], 0x10
call fcn.0041c970
mov ebx, 8
mov byte [esp + 0x200], 0x12
cmp dword [esp + 0x108], ebx
jb 0x424ee2
mov ecx, dword [esp + 0xf4]
push ecx
call fcn.0047f3b4
add esp, 4
xor esi, esi
xor edx, edx
mov dword [esp + 0x108], 7
mov dword [esp + 0x104], esi
mov word [esp + 0xf4], dx
cmp dword [esp + 0x124], ebx
jb 0x42525f
mov eax, dword [esp + 0x110]
cmp eax, esi
je 0x425000
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x425000
test al, 0x10
jne 0x425000
lea eax, [esp + 0xd8]
push eax
lea edi, [esp + 0x168]
call fcn.00425840
add esp, 4
lea ecx, [esp + 0x12c]
push str.____targetPANEL
push ecx
mov ecx, eax
mov byte [esp + 0x208], 0x13
call fcn.00406565
add esp, 8
mov byte [esp + 0x200], 0x15
cmp dword [esp + 0xec], ebx
jb 0x424f8b
mov edx, dword [esp + 0xd8]
push edx
call fcn.0047f3b4
add esp, 4
mov ecx, dword [esp + 0x12c]
xor eax, eax
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], esi
mov word [esp + 0xd8], ax
cmp dword [esp + 0x140], ebx
jae 0x424fbe
lea ecx, [esp + 0x12c]
mov eax, dword [esp + 0x110]
cmp dword [esp + 0x124], ebx
jae 0x424fd5
lea eax, [esp + 0x110]
push ecx
push eax
call fcn.0041dbf0
add esp, 8
mov byte [esp + 0x200], 0x12
cmp dword [esp + 0x140], ebx
jb 0x425000
mov ecx, dword [esp + 0x12c]
push ecx
call fcn.0047f3b4
add esp, 4
cmp byte [ebp + 0x10], 0
je 0x42526b
lea ecx, [esp + 0x1b8]
call fcn.004238a0
mov byte [esp + 0x200], 0x16
push 0x15
xor edx, edx
push str.KometaLaunchPanel.exe
lea ecx, [esp + 0x134]
mov dword [esp + 0x148], 7
mov dword [esp + 0x144], esi
mov word [esp + 0x134], dx
call fcn.004028fc
lea ebx, [esp + 0x12c]
lea ecx, [esp + 0x1b8]
lea edi, [esp + 0xd8]
mov byte [esp + 0x200], 0x17
call fcn.0041c970
mov edi, 8
mov byte [esp + 0x200], 0x18
cmp dword [eax + 0x14], edi
jb 0x425083
mov eax, dword [eax]
push str.KometaLaunchPanel
mov ecx, str.SOFTWAREMicrosoftWindowsCurrentVersionRun_
call fcn.00412f00
add esp, 4
cmp dword [esp + 0xec], edi
jb 0x4250ae
mov eax, dword [esp + 0xd8]
push eax
call fcn.0047f3b4
add esp, 4
xor ecx, ecx
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], 0
mov word [esp + 0xd8], cx
cmp dword [esp + 0x140], edi
jb 0x4250e7
mov edx, dword [esp + 0x12c]
push edx
call fcn.0047f3b4
add esp, 4
mov byte [esp + 0x200], 0x12
cmp dword [esp + 0x1cc], edi
jb 0x425108
mov eax, dword [esp + 0x1b8]
push eax
call fcn.0047f3b4
add esp, 4
mov ebx, edi
xor ecx, ecx
cmp byte [ebp + 0x14], cl
setne cl
push ecx
push str.BlockCorners
mov ecx, str.SoftwareNetBoxPanel_
call fcn.00412f80
add esp, 8
mov byte [esp + 0x200], 0xe
cmp dword [esp + 0x124], ebx
jb 0x425146
mov edx, dword [esp + 0x110]
push edx
call fcn.0047f3b4
add esp, 4
mov edi, 8
cmp byte [ebp + 0xc], 0
mov byte [esp + 0x12], 1
je 0x425161
cmp byte [esp + 0x13], 0
je 0x4255ec
push 0x15
xor eax, eax
mov esi, 7
push str.KometaLaunchPanel.exe
lea ecx, [esp + 0xfc]
mov dword [esp + 0x110], esi
mov dword [esp + 0x10c], 0
mov word [esp + 0xfc], ax
call fcn.004028fc
lea ebx, [esp + 0xf4]
lea ecx, [esp + 0x164]
lea edi, [esp + 0x110]
mov byte [esp + 0x200], 0x19
call fcn.0041c970
mov edi, 8
mov byte [esp + 0x200], 0x1b
cmp dword [esp + 0x108], edi
jb 0x4251dd
mov ecx, dword [esp + 0xf4]
push ecx
call fcn.0047f3b4
add esp, 4
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x108], esi
mov dword [esp + 0x104], ebx
mov word [esp + 0xf4], dx
cmp dword [esp + 0x124], edi
jb 0x425275
mov eax, dword [esp + 0x110]
cmp eax, ebx
je 0x42521f
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x42521f
test al, 0x10
je 0x4252bd
mov byte [esp + 0x12], bl
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xed
lea eax, [esp + 0x24]
push eax
mov ebx, str.apppanel.cpp
call fcn.00407320
mov esi, eax
mov byte [esp + 0x200], 0x1c
call fcn.004210f0
mov esi, eax
test esi, esi
je 0x4252aa
lea edi, [esi + 0x10]
test edi, edi
je 0x42527e
lea eax, [esi + 0x20]
jmp 0x425280
lea eax, [esp + 0x110]
jmp 0x424f1c
call fcn.004130f0
jmp 0x42510a
lea eax, [esp + 0x110]
jmp 0x42520b
xor eax, eax
push str.failed_to_find_panel_file:
push eax
call fcn.00409b50
add esp, 8
test edi, edi
je 0x425297
lea eax, [esi + 0x20]
jmp 0x425299
xor eax, eax
lea ecx, [esp + 0x110]
push ecx
push eax
call fcn.00409e10
add esp, 8
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x1b
call fcn.004073f0
xor ebx, ebx
mov dword [esp + 0x18], str.__update
cmp byte [ebp + 0xc], bl
jne 0x4252d2
mov dword [esp + 0x18], 0x4da6dc
push 0x15
xor edx, edx
push str.KometaLaunchPanel.exe
lea ecx, [esp + 0x134]
mov dword [esp + 0x148], 7
mov dword [esp + 0x144], ebx
mov word [esp + 0x134], dx
call fcn.004028fc
lea ebx, [esp + 0x12c]
lea ecx, [esp + 0x164]
lea edi, [esp + 0xd8]
mov byte [esp + 0x200], 0x1d
call fcn.0041c970
mov esi, 8
mov byte [esp + 0x200], 0x1e
cmp dword [eax + 0x14], esi
jb 0x425337
mov eax, dword [eax]
mov ecx, dword [esp + 0x18]
push ecx
push eax
call fcn.0041d9d0
add esp, 8
test al, al
sete bl
cmp dword [esp + 0xec], esi
jb 0x425363
mov edx, dword [esp + 0xd8]
push edx
call fcn.0047f3b4
add esp, 4
xor eax, eax
mov byte [esp + 0x200], 0x1b
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], 0
mov word [esp + 0xd8], ax
cmp dword [esp + 0x140], esi
jb 0x4253a4
mov ecx, dword [esp + 0x12c]
push ecx
call fcn.0047f3b4
add esp, 4
test bl, bl
je 0x42542f
mov byte [esp + 0x12], 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xf3
lea edx, [esp + 0x24]
push edx
mov ebx, str.apppanel.cpp
call fcn.00407320
mov esi, eax
mov byte [esp + 0x200], 0x1f
call fcn.004210f0
mov esi, eax
test esi, esi
je 0x425419
lea edi, [esi + 0x10]
test edi, edi
je 0x4253ed
lea eax, [esi + 0x20]
jmp 0x4253ef
xor eax, eax
push str.failed_to_launch_panel:
push eax
call fcn.00409b50
add esp, 8
test edi, edi
je 0x425406
lea eax, [esi + 0x20]
jmp 0x425408
xor eax, eax
lea ecx, [esp + 0x110]
push ecx
push eax
call fcn.00409e10
add esp, 8
lea ecx, [esp + 0x1c]
mov byte [esp + 0x200], 0x1b
call fcn.004073f0
mov esi, 8
mov byte [esp + 0x200], 0xe
cmp dword [esp + 0x124], esi
jb 0x425450
mov edx, dword [esp + 0x110]
push edx
call fcn.0047f3b4
add esp, 4
cmp byte [esp + 0x12], 0
jne 0x4255e7
lea ecx, [esp + 0x1b8]
call fcn.00423af0
mov ecx, dword [esp + 0x14]
push ecx
lea edx, [esp + 0xdc]
push edx
mov ecx, eax
mov byte [esp + 0x208], 0x20
call fcn.00406565
add esp, 8
mov byte [esp + 0x200], 0x21
cmp dword [eax + 0x14], esi
jb 0x425495
mov eax, dword [eax]
mov ebx, dword [esp + 0x180]
cmp dword [esp + 0x194], esi
jae 0x4254ac
lea ebx, [esp + 0x180]
push eax
push 2
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0x10
xor eax, eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push str.s.kometa_stat.ru
mov edi, str.install_fail
mov word [ecx], ax
call fcn.004028fc
mov edx, ebx
mov ecx, edi
call fcn.004151e0
add esp, 0x24
cmp dword [esp + 0xec], esi
jb 0x425501
mov ecx, dword [esp + 0xd8]
push ecx
call fcn.0047f3b4
add esp, 4
xor edx, edx
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], 0
mov word [esp + 0xd8], dx
cmp dword [esp + 0x1cc], esi
jb 0x42553a
mov eax, dword [esp + 0x1b8]
push eax
call fcn.0047f3b4
add esp, 4
mov edi, 8
cmp dword [esp + 0x1b0], edi
jb 0x425558
mov eax, dword [esp + 0x19c]
push eax
call fcn.0047f3b4
add esp, 4
xor ebx, ebx
xor ecx, ecx
mov esi, 7
mov dword [esp + 0x1b0], esi
mov dword [esp + 0x1ac], ebx
mov word [esp + 0x19c], cx
cmp dword [esp + 0x194], edi
jb 0x425590
mov edx, dword [esp + 0x180]
push edx
call fcn.0047f3b4
add esp, 4
xor eax, eax
mov dword [esp + 0x194], esi
mov dword [esp + 0x190], ebx
mov word [esp + 0x180], ax
cmp dword [esp + 0x178], edi
jb 0x4255c1
mov ecx, dword [esp + 0x164]
push ecx
call fcn.0047f3b4
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x1f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1e0]
xor ecx, esp
call fcn.0047f164
mov esp, ebp
pop ebp
ret
mov edi, 8
cmp byte [ebp + 0xc], 0
jne 0x42553f
lea ecx, [esp + 0x1b8]
call fcn.00423af0
mov ecx, dword [esp + 0x14]
push ecx
lea edx, [esp + 0xdc]
push edx
mov ecx, eax
mov byte [esp + 0x208], 0x22
call fcn.00406565
add esp, 8
mov byte [esp + 0x200], 0x23
cmp dword [eax + 0x14], edi
jb 0x425630
mov eax, dword [eax]
mov ecx, dword [esp + 0x180]
cmp dword [esp + 0x194], edi
jae 0x425647
lea ecx, [esp + 0x180]
push ecx
push str.install_success
call fcn.00415880
add esp, 8
cmp dword [esp + 0xec], edi
jb 0x42566e
mov eax, dword [esp + 0xd8]
push eax
call fcn.0047f3b4
add esp, 4
xor ecx, ecx
mov dword [esp + 0xec], 7
mov dword [esp + 0xe8], 0
mov word [esp + 0xd8], cx
cmp dword [esp + 0x1cc], edi
jb 0x42553f
mov edx, dword [esp + 0x1b8]
push edx
call fcn.0047f3b4
add esp, 4
jmp 0x42553f