Function at 0x548560
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0xffffffffffffffff
push 0x65b703
mov eax, dword fs:[0]
push eax
sub esp, 0x48
mov eax, dword [0x755898]
xor eax, esp
mov dword [esp + 0x44], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x755898]
xor eax, esp
push eax
lea eax, [esp + 0x5c]
mov dword fs:[0], eax
mov eax, dword [esp + 0x6c]
push eax
mov esi, ecx
push 0x69
mov dword [esp + 0x2c], esi
call fcn.005f2ee2
xor ebx, ebx
mov dword [esp + 0x64], ebx
lea edi, [esi + 0x7c]
mov ecx, edi
mov dword [esi], vtable.CTipDlg.0
call fcn.00402500
mov byte [esp + 0x64], 1
mov dword [esi + 0x74], 1
call fcn.005f9c7a
push ebx
push str.TipStartUp
call fcn.004b22d0
neg eax
sbb eax, eax
inc eax
push ebx
push str.TipFilePos
mov dword [esi + 0x74], eax
call fcn.004b22d0
add esp, 0x10
mov dword [esp + 0x14], eax
xor eax, eax
push str.tips.txt
lea ecx, [esp + 0x50]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x58], ebx
mov word [esp + 0x54], ax
call fcn.004017f0
mov byte [esp + 0x64], 2
cmp dword [0x75ad18], ebx
je 0x54865f
mov edx, dword [0x75acdc]
cmp edx, ebx
je 0x54865f
mov eax, edx
lea ebp, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x548630
sub eax, ebp
sar eax, 1
je 0x54865f
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x54865f
mov ecx, dword [0x75acdc]
push ecx
lea ecx, [esp + 0x50]
call fcn.004017f0
jmp 0x54867d
mov eax, dword [0x75ac4c]
cmp eax, ebx
jne 0x54866d
mov eax, 0x75ac50
push ebx
push eax
push str._stips.txt
lea ecx, [esp + 0x58]
call fcn.004021b0
mov eax, dword [esp + 0x4c]
cmp eax, ebx
jne 0x548689
lea eax, [esp + 0x50]
push 0x67ac18
push eax
call fcn.0061ffcd
add esp, 8
mov dword [esi + 0x78], eax
cmp eax, ebx
jne 0x548704
push 0x6d
cmp dword [0x75ad18], ebx
je 0x5486e8
lea edx, [esp + 0x18]
push edx
mov ecx, 0x75acd8
call fcn.004ebab0
mov byte [esp + 0x64], 3
push eax
mov ecx, edi
call fcn.004058f0
mov byte [esp + 0x64], 2
lea ecx, [esp + 0x14]
call fcn.00402570
mov eax, dword [edi]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5486d7
sub eax, edx
jne 0x5487e1
push 0x6d
call fcn.005fab36
cmp eax, ebx
je 0x5487e1
push 0x6d
push eax
mov ecx, edi
call fcn.004028a0
jmp 0x5487e1
lea ecx, [esp + 0x28]
push ecx
push eax
call fcn.00624837
add esp, 4
push eax
call fcn.00624507
lea edx, [esp + 0x50]
push edx
call fcn.0062393a
add esp, 0xc
push eax
lea ecx, [esp + 0x1c]
call fcn.004030b0
mov byte [esp + 0x64], 4
lea ecx, [esp + 0x18]
call fcn.00548090
push ebx
lea eax, [esp + 0x20]
push str.TipTimeStamp
push eax
call fcn.004b6b40
add esp, 0xc
mov byte [esp + 0x64], 5
mov ecx, dword [esp + 0x1c]
xor eax, eax
cmp ecx, ebx
setne al
cmp eax, ebx
jne 0x54876e
push 0x80004005
call fcn.00401090
push ecx
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00620a8a
add esp, 8
cmp eax, ebx
setne al
cmp al, bl
je 0x54879b
mov edx, dword [esp + 0x18]
push edx
push str.TipTimeStamp
mov dword [esp + 0x1c], ebx
call fcn.004b2310
add esp, 8
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0x78]
push ebx
push eax
push ecx
call fcn.00624482
add esp, 0xc
test eax, eax
je 0x5487bd
push 0xffffffffffffffff
push ebx
push 0x6e
call fcn.005fff0d
jmp 0x5487c5
push edi
mov ecx, esi
call fcn.00547eb0
mov byte [esp + 0x64], 4
lea ecx, [esp + 0x1c]
call fcn.00402570
mov byte [esp + 0x64], 2
lea ecx, [esp + 0x18]
call fcn.00402570
mov byte [esp + 0x64], 1
lea ecx, [esp + 0x4c]
call fcn.00401210
mov dword [esp + 0x64], 0xffffffff
mov eax, esi
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.0061d2ff
add esp, 0x54
ret 4