Function at 0x45f680
Capabilities:
Check if file exists
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5eefce
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x70f200]
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 edi, ecx
mov esi, dword [ebp + 8]
lea ecx, [edi + 0x119c]
mov dword [edi + 0x11bc], 0xffffffff
mov dword [edi + 0x11c0], 0xffffffff
call fcn.005dc400
push 0
mov ecx, edi
call fcn.0043dbb0
mov eax, dword [edi + 0x14e4]
test eax, eax
je 0x45f6fb
cmp dword [edi + 0x14e8], 0
jne 0x45f6fb
mov dword [edi + 0x14e4], 0
mov dword [edi + 0x14e8], eax
sub esp, 8
mov dword [ebp - 0x14], 0
xorps xmm0, xmm0
lea ecx, [edi + 0x143c]
movq qword [ebp - 0x1c], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.005dc190
push eax
push 0x635b00
push esi
lea ecx, [ebp - 0x1c]
call fcn.005dc520
push 1
mov edx, str.Home
mov dword [ebp - 4], 0
mov ecx, esi
call fcn.005d8ad0
test eax, eax
jne 0x45f76d
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea ecx, [edi + 0x1190]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005da780
mov ebx, dword [ebp + 0xc]
mov ecx, 0xcf0000
mov eax, ebx
and eax, 1
mov dword [ebp - 0x3c], eax
mov eax, 0xca0000
cmovne eax, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 0x1f68]
and eax, 0x40
or eax, 0x80
shr eax, 3
push 0x270
mov dword [ebp - 0x34], eax
call fcn.0041e3d6
add esp, 4
mov esi, eax
mov dword [ebp - 0x30], esi
push 0x270
push 0
push esi
call fcn.00420090
add esp, 0xc
lea eax, [edi + 0x14a8]
mov ecx, esi
push eax
call fcn.005c6300
mov esi, dword [edi + 0x14e4]
mov dword [ebp - 0x30], eax
test esi, esi
je 0x45f7f1
mov ecx, esi
call fcn.005c1c60
push 0x270
push esi
call fcn.0041e7c1
mov eax, dword [ebp - 0x30]
add esp, 8
mov dword [edi + 0x14e4], eax
or esi, 0xffffffff
mov eax, dword [edi + 0xdc]
mov edx, dword [edi + 0xd4]
sub eax, edx
cmp eax, 0x320
jge 0x45f828
mov eax, dword [edi + 0xe0]
mov ecx, dword [edi + 0xd8]
sub eax, ecx
cmp eax, 0x258
jge 0x45f828
mov esi, edx
jmp 0x45f82b
or ecx, 0xffffffff
push ecx
push 0
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push ecx
push esi
push 0x226
push 0x2ee
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ecx, dword [edi + 0x14e4]
push eax
push str.UVK_Ultra_GUI
call fcn.005c5d10
mov esi, eax
test bl, 4
mov eax, 0xb
mov ecx, 8
cmovne ecx, eax
push ecx
push 0xffffffffffffffe6
push esi
call dword [sym.imp.USER32.dll_SetClassLongW]
test byte [edi + 0x13dc], 2
je 0x45f8ac
lea ecx, [edi + 0x146c]
call fcn.005dc190
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x45f8ac
push ecx
lea ecx, [edi + 0x146c]
call fcn.005dc190
mov ecx, dword [edi + 0x14e4]
push eax
call fcn.005c4180
cmp dword [ebp - 0x3c], 0
je 0x45f8f0
lea eax, [ebp - 0x2c]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x20]
sub esp, 8
mov ecx, dword [ebp - 0x24]
sub eax, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x2c]
push eax
mov dword [ebp - 0x24], ecx
push ecx
mov ecx, dword [edi + 0x14e4]
mov dword [ebp - 0x20], eax
call fcn.005c40c0
test bl, 2
je 0x45f90a
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [edi + 0x104]
jmp 0x45f8ff
cmp ebx, 2
jne 0x45f90a
push 0
push 0
push dword [edi + 0x100]
mov ecx, dword [edi + 0x14e4]
call fcn.005c44c0
push ecx
call fcn.005c6100
mov ecx, dword [edi + 0x14e4]
push 0
call fcn.005c44a0
movsd xmm1, qword [0x6edaf8]
mov ecx, dword [edi + 0x14e4]
push 0
push str.Arial
push 1
push 0x190
call fcn.005c42b0
push 0
push 0
push esi
push 0x5c6c90
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [edi + 0x2c]
mov ebx, eax
cmp ecx, 0xffffffff
je 0x45f967
test ecx, ecx
je 0x45f967
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi + 0x2c], ebx
test ebx, ebx
jne 0x45f975
mov dword [edi + 0x2c], 0xffffffff
lea eax, [edi + 0x14a8]
push eax
lea eax, [edi + 0x17e0]
push eax
push dword [edi + 0x14e4]
lea eax, [edi + 0x14f0]
push eax
lea eax, [edi + 0x11c4]
push eax
lea ecx, [edi + 0x1290]
call fcn.0057c740
lea ecx, [ebp - 0x1c]
call fcn.005dc430
mov eax, esi
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.0041e1b5
mov esp, ebp
pop ebp
ret 8