Function at 0x44c356
Capabilities:
Check if file exists

Disassembly:
push ebp
sub esp, 0x208
lea ebp, [esp - 4]
mov eax, dword [0x4be8a0]
xor eax, ebp
mov dword [ebp + 0x208], eax
push 0x44
mov eax, 0x48a900
call fcn.004677c7
mov edi, ecx
call fcn.0044a074
mov esi, eax
xor ebx, ebx
mov dword [ebp - 0x18], esi
cmp esi, ebx
jne 0x44c3b1
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x208]
xor ecx, ebp
call fcn.0046711a
add ebp, 0x20c
leave
ret
mov ecx, esi
call fcn.0044c69d
push eax
lea ecx, [ebp - 0x14]
call fcn.00402ee2
push str.updatecfg.ini
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], ebx
call fcn.00402f00
push dword [ebp - 0x14]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x44c3ee
push dword [ebp - 0x14]
push ebx
push ebx
push str.theme.xml
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov ecx, esi
call fcn.0044c6bb
mov ebx, eax
neg ebx
sbb ebx, ebx
mov esi, 0x4c4f30
push esi
lea ecx, [ebp - 0x10]
inc ebx
call fcn.00401ce4
mov byte [ebp - 4], 1
test ebx, ebx
je 0x44c4a2
xor eax, eax
push 0x206
push eax
mov word [ebp], ax
lea eax, [ebp + 2]
push eax
call fcn.004670a0
mov ecx, dword [ebp - 0x18]
add esp, 0xc
call fcn.0044c695
test eax, eax
je 0x44c459
mov ecx, dword [eax]
push 0x103
lea edx, [ebp]
push edx
push eax
call dword [ecx + 0x18]
test eax, eax
je 0x44c459
lea eax, [ebp]
push eax
lea ecx, [ebp - 0x10]
call fcn.004025eb
lea ecx, [ebp - 0x30]
call fcn.00446c0b
push 0x497da0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.004025eb
push 0
lea eax, [ebp - 0x30]
push eax
push 0x3443
push dword [edi + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, edi
call fcn.0044a0bb
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x44c52e
lea ecx, [ebp - 0x30]
call fcn.00420829
jmp 0x44c513
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x10]
push eax
call fcn.0044dc24
test eax, eax
jne 0x44c459
push esi
lea ecx, [ebp - 0x24]
call fcn.00401ce4
push 0x9b
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00402a5a
push 0x96
lea ecx, [ebp - 0x20]
call fcn.00421f25
mov eax, dword [eax]
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
push 1
push 0x40
push eax
push esi
push 0
mov byte [ebp - 4], 3
call fcn.0044cf46
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.004023e9
mov ecx, dword [edi + 8]
mov eax, dword [ecx]
push 2
call dword [eax + 0x20]
lea ecx, [esi - 0x10]
call fcn.004023e9
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.004023e9
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.004023e9
jmp 0x44c38c
push esi
lea ecx, [ebp - 0x1c]
call fcn.00401ce4
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 4], 5
call fcn.0044d477
test eax, eax
jne 0x44c57d
xor esi, esi
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.004023e9
lea ecx, [ebp - 0x30]
call fcn.00420829
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.004023e9
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.004023e9
mov eax, esi
jmp 0x44c38e
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x1c]
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov ecx, dword [ebp - 0x18]
call fcn.0044c8ca
xor esi, esi
cmp eax, esi
je 0x44c5a0
push dword [ebp - 0x1c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2c]
push dword [ebp - 0x10]
push esi
call dword [sym.imp.SHELL32.dll_SHCreateDirectory]
lea eax, [ebp - 0x1c]
lea ecx, [edi + 0x40]
push eax
call fcn.00436e1a
lea eax, [ebp - 0x10]
push eax
lea ecx, [edi + 0x40]
call fcn.00436e22
lea eax, [ebp - 0x10]
push eax
lea ecx, [edi + 0x328]
call fcn.00401d13
mov ecx, edi
call fcn.0044b49f
push esi
push esi
push 1
push esi
lea ecx, [ebp - 0x50]
push edi
cmp ebx, esi
je 0x44c5ec
push 0x44b6fa
jmp 0x44c5f1
push 0x44bfd5
call fcn.004011be
lea ecx, [ebp - 0x50]
call fcn.00401202
xor esi, esi
inc esi
jmp 0x44c54d