Function at 0x41b740
Capabilities:
Check if file exists
Get file attributes
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b1c5a
mov eax, dword fs:[0]
push eax
sub esp, 0x294
mov eax, dword [0x4d8c20]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x12c], ebx
test ebx, ebx
je 0x41b78a
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41b78a
test al, 0x10
je 0x41b809
push 0x537
push str.env.cpp
lea esi, [ebp - 0x1e8]
call fcn.00414f70
mov edi, eax
xor eax, eax
mov dword [ebp - 4], eax
cmp edi, eax
je 0x41b7f0
lea esi, [edi + 0x10]
cmp esi, eax
je 0x41b7b4
lea eax, [edi + 0x20]
push str.ERROR:
push eax
call fcn.00407256
add esp, 8
test esi, esi
je 0x41b7cb
lea eax, [edi + 0x20]
jmp 0x41b7cd
xor eax, eax
push str.failed_to_found_zip_file:
push eax
call fcn.00407256
add esp, 8
test esi, esi
je 0x41b7e4
lea eax, [edi + 0x20]
jmp 0x41b7e6
xor eax, eax
push ebx
push eax
call fcn.00407256
add esp, 8
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 4], 0xffffffff
call fcn.00415130
xor al, al
jmp 0x41c174
lea esi, [ebp - 0xb8]
call fcn.00419320
mov ebx, 1
mov dword [ebp - 4], ebx
cmp dword [ebp - 0xa8], 0
jne 0x41b8aa
push 0x53f
push str.env.cpp
lea esi, [ebp - 0x1e8]
call fcn.00414f70
mov esi, eax
mov byte [ebp - 4], 2
test esi, esi
je 0x41b87d
lea edi, [esi + 0x10]
test edi, edi
je 0x41b854
lea eax, [esi + 0x20]
jmp 0x41b856
xor eax, eax
push str.ERROR:
push eax
call fcn.00407256
add esp, 8
test edi, edi
je 0x41b86d
lea eax, [esi + 0x20]
jmp 0x41b86f
xor eax, eax
push str.failed_to_get_appdatalocal
push eax
call fcn.00407256
add esp, 8
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], bl
call fcn.00415130
cmp dword [ebp - 0xa4], 8
jb 0x41b8a3
mov eax, dword [ebp - 0xb8]
push eax
call fcn.00475dcb
add esp, 4
xor al, al
jmp 0x41c174
xor ecx, ecx
push 6
mov word [ebp - 0x9c], cx
mov esi, 7
push 0x4b9414
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], 0
call fcn.00404447
lea edx, [ebp - 0xb8]
push edx
lea ebx, [ebp - 0x9c]
lea edi, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.00419220
add esp, 4
mov byte [ebp - 4], 5
cmp dword [ebp - 0x88], 8
jb 0x41b912
mov eax, dword [ebp - 0x9c]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
xor eax, eax
push 0xc
mov word [ebp - 0x9c], cx
xor edx, edx
push str.kometaup.exe
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xfc], eax
mov word [ebp - 0x10c], dx
call fcn.00404447
lea eax, [ebp - 0x64]
push eax
lea ebx, [ebp - 0x10c]
lea edi, [ebp - 0x2c]
mov byte [ebp - 4], 6
call fcn.00419220
add esp, 4
mov ebx, 8
mov byte [ebp - 4], bl
cmp dword [ebp - 0xf8], ebx
jb 0x41b988
mov ecx, dword [ebp - 0x10c]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xfc], 0
mov word [ebp - 0x10c], dx
cmp dword [ebp - 0x18], ebx
jb 0x41bab8
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x41b9c5
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41b9c5
test al, 0x10
je 0x41c08e
cmp dword [ebp - 0x50], ebx
jb 0x41bac0
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x41b9e8
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41b9e5
test al, 0x10
jne 0x41b9f7
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], ebx
jae 0x41b9f0
lea eax, [ebp - 0x64]
mov ecx, eax
call fcn.004193e0
mov edi, dword [ebp - 0x12c]
lea esi, [ebp - 0x9c]
call fcn.0041a020
lea edi, [ebp - 0xd4]
mov byte [ebp - 4], 9
call fcn.00419d30
mov byte [ebp - 4], 0xa
cmp dword [eax + 0x14], ebx
jb 0x41ba22
mov eax, dword [eax]
mov edi, eax
lea esi, [ebp - 0x48]
call fcn.0041a020
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0xc0], ebx
jb 0x41ba47
mov eax, dword [ebp - 0xd4]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
xor eax, eax
push 0xc
mov esi, 7
mov word [ebp - 0xd4], cx
xor edx, edx
push str.kometaup.exe
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xe0], eax
mov word [ebp - 0xf0], dx
call fcn.00404447
lea eax, [ebp - 0x48]
push eax
lea ebx, [ebp - 0xf0]
lea edi, [ebp - 0x128]
mov byte [ebp - 4], 0xd
call fcn.00419220
add esp, 4
mov ebx, 8
mov byte [ebp - 4], 0xe
cmp dword [eax + 0x14], ebx
jb 0x41bac8
mov edx, dword [eax]
jmp 0x41baca
lea eax, [ebp - 0x2c]
jmp 0x41b9b1
lea eax, [ebp - 0x64]
jmp 0x41b9d5
mov edx, eax
xor edi, edi
xor ecx, ecx
mov eax, edx
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], cx
lea esi, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x41bae0
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [ebp - 0x80]
call fcn.00404447
cmp dword [ebp - 0x114], ebx
jb 0x41bb10
mov edx, dword [ebp - 0x128]
push edx
call fcn.00475dcb
add esp, 4
mov esi, 7
xor eax, eax
mov dword [ebp - 0x114], esi
mov dword [ebp - 0x118], edi
mov word [ebp - 0x128], ax
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0xdc], ebx
jb 0x41bb45
mov ecx, dword [ebp - 0xf0]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
push ebx
push str.8n4Nm184
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xe0], edi
mov word [ebp - 0xf0], dx
mov dword [ebp - 0xc0], 0xf
mov dword [ebp - 0xc4], edi
mov byte [ebp - 0xd4], dl
call fcn.004040a8
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x9c]
push ecx
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x12
call fcn.00433600
add esp, 8
test al, al
sete byte [ebp - 0x12d]
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0xc0], 0x10
jb 0x41bbc3
mov edx, dword [ebp - 0xd4]
push edx
call fcn.00475dcb
add esp, 4
cmp byte [ebp - 0x12d], 0
je 0x41bd15
mov ecx, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x41bbdb
lea ecx, [ebp - 0x48]
call fcn.00419690
push 0x555
push str.env.cpp
lea esi, [ebp - 0x1e8]
call fcn.00414f70
mov esi, eax
mov byte [ebp - 4], 0x13
call fcn.00405810
mov esi, eax
cmp esi, edi
je 0x41bc3f
lea edi, [esi + 0x10]
test edi, edi
je 0x41bc12
lea eax, [esi + 0x20]
jmp 0x41bc14
xor eax, eax
push str.failed_to_unpack
push eax
call fcn.00407256
add esp, 8
test edi, edi
je 0x41bc2b
lea eax, [esi + 0x20]
jmp 0x41bc2d
xor eax, eax
mov ecx, dword [ebp - 0x12c]
push ecx
push eax
call fcn.00407256
add esp, 8
xor edi, edi
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x11
call fcn.00415130
cmp dword [ebp - 0x6c], ebx
jb 0x41bc5f
mov edx, dword [ebp - 0x80]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov esi, 7
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], ax
cmp dword [ebp - 0x34], ebx
jb 0x41bc81
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], dx
cmp dword [ebp - 0x88], ebx
jb 0x41bca4
mov eax, dword [ebp - 0x9c]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x9c], cx
cmp dword [ebp - 0x18], ebx
jb 0x41bcca
mov edx, dword [ebp - 0x2c]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], ax
cmp dword [ebp - 0x50], ebx
jb 0x41bce7
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], dx
cmp dword [ebp - 0xa4], ebx
jb 0x41b8a3
mov eax, dword [ebp - 0xb8]
push eax
call fcn.00475dcb
add esp, 4
xor al, al
jmp 0x41c174
cmp dword [ebp - 0x6c], ebx
jb 0x41be53
mov eax, dword [ebp - 0x80]
cmp eax, edi
je 0x41bd39
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41bd39
test al, 0x10
je 0x41be5b
mov ecx, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x41bd44
lea ecx, [ebp - 0x48]
call fcn.00419690
push 0x55c
push str.env.cpp
lea esi, [ebp - 0x1e8]
call fcn.00414f70
mov esi, eax
mov byte [ebp - 4], 0x14
call fcn.00405810
mov esi, eax
call fcn.0041e180
lea ecx, [ebp - 0x12c]
mov esi, eax
call fcn.00405834
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x11
call fcn.00415130
cmp dword [ebp - 0x6c], ebx
jb 0x41bd9d
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov esi, 7
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], dx
cmp dword [ebp - 0x34], ebx
jb 0x41bdbf
mov eax, dword [ebp - 0x48]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], cx
cmp dword [ebp - 0x88], ebx
jb 0x41bde2
mov edx, dword [ebp - 0x9c]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x9c], ax
cmp dword [ebp - 0x18], ebx
jb 0x41be08
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], dx
cmp dword [ebp - 0x50], ebx
jb 0x41be25
mov eax, dword [ebp - 0x64]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], cx
cmp dword [ebp - 0xa4], ebx
jb 0x41b8a3
mov edx, dword [ebp - 0xb8]
push edx
call fcn.00475dcb
add esp, 4
xor al, al
jmp 0x41c174
lea eax, [ebp - 0x80]
jmp 0x41bd25
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ebx
jae 0x41be66
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x6c], ebx
jae 0x41be71
lea eax, [ebp - 0x80]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
mov ecx, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x41be84
lea ecx, [ebp - 0x48]
call fcn.00419690
test al, al
jne 0x41bef7
cmp dword [ebp - 0x34], ebx
jb 0x41be9d
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x12c], eax
jmp 0x41bea6
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x12c], ecx
push 0x564
push str.env.cpp
lea esi, [ebp - 0x1e8]
call fcn.00414f70
push str.failed_to_delete_temp_folder
push ecx
mov esi, eax
mov byte [ebp - 4], 0x15
call fcn.00405810
add esp, 4
mov esi, eax
call fcn.00405900
lea ecx, [ebp - 0x12c]
mov esi, eax
call fcn.00405834
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 4], 0x11
call fcn.00415130
mov esi, 7
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ebx
jae 0x41bf02
lea eax, [ebp - 0x2c]
call fcn.00419200
test al, al
jne 0x41c032
cmp dword [ebp - 0x18], ebx
jb 0x41bf1f
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x12c], edx
jmp 0x41bf28
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x12c], eax
push 0x569
push str.env.cpp
lea esi, [ebp - 0x2a0]
call fcn.00414f70
mov esi, eax
mov byte [ebp - 4], 0x16
call fcn.00405810
mov esi, eax
call fcn.0041e1c0
lea ecx, [ebp - 0x12c]
mov esi, eax
call fcn.00405834
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 4], 0x11
call fcn.00415130
cmp dword [ebp - 0x6c], ebx
jb 0x41bf7c
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov esi, 7
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], dx
cmp dword [ebp - 0x34], ebx
jb 0x41bf9e
mov eax, dword [ebp - 0x48]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], cx
cmp dword [ebp - 0x88], ebx
jb 0x41bfc1
mov edx, dword [ebp - 0x9c]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x9c], ax
cmp dword [ebp - 0x18], ebx
jb 0x41bfe7
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.00475dcb
add esp, 4
xor edx, edx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], dx
cmp dword [ebp - 0x50], ebx
jb 0x41c004
mov eax, dword [ebp - 0x64]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], cx
cmp dword [ebp - 0xa4], ebx
jb 0x41b8a3
mov edx, dword [ebp - 0xb8]
push edx
call fcn.00475dcb
add esp, 4
xor al, al
jmp 0x41c174
cmp dword [ebp - 0x6c], ebx
jb 0x41c043
mov eax, dword [ebp - 0x80]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], cx
cmp dword [ebp - 0x34], ebx
jb 0x41c060
mov edx, dword [ebp - 0x48]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov byte [ebp - 4], bl
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], ax
cmp dword [ebp - 0x88], ebx
jb 0x41c086
mov ecx, dword [ebp - 0x9c]
push ecx
call fcn.00475dcb
add esp, 4
mov esi, 7
lea ebx, [esi + 1]
push str.kometaup.exe
call fcn.0041aa60
add esp, 4
test al, al
jne 0x41c11f
cmp dword [ebp - 0x18], ebx
jb 0x41c11a
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x41c0c2
mov ebx, eax
call fcn.0041a8c0
mov ebx, 8
test al, al
jne 0x41c11f
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ebx
jb 0x41c0d0
push eax
call fcn.00475dcb
add esp, 4
xor edi, edi
xor edx, edx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], dx
cmp dword [ebp - 0x50], ebx
jb 0x41c0ef
mov eax, dword [ebp - 0x64]
push eax
call fcn.00475dcb
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], cx
cmp dword [ebp - 0xa4], ebx
jb 0x41b8a3
mov edx, dword [ebp - 0xb8]
push edx
call fcn.00475dcb
add esp, 4
xor al, al
jmp 0x41c174
lea eax, [ebp - 0x2c]
jmp 0x41c0af
cmp dword [ebp - 0x18], ebx
jb 0x41c130
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00475dcb
add esp, 4
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], cx
cmp dword [ebp - 0x50], ebx
jb 0x41c14f
mov edx, dword [ebp - 0x64]
push edx
call fcn.00475dcb
add esp, 4
xor eax, eax
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], ax
cmp dword [ebp - 0xa4], ebx
jb 0x41c172
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.00475dcb
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004751dc
mov esp, ebp
pop ebp
ret