Function at 0x10001900
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10243dd7
mov eax, dword fs:[0]
push eax
sub esp, 0x2d8
mov eax, dword [0x102de06c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.10002580
mov ecx, eax
call fcn.1003b34d
lea eax, [ebp - 0xa0]
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003ab1f
sub esp, 0x18
mov dword [ebp - 4], 0
lea eax, [ebp - 0xa0]
mov ecx, esp
push eax
call fcn.10008c80
call fcn.1003f499
push 4
push edx
push eax
call fcn.10044bba
add esp, 0x24
test eax, eax
je 0x10001997
call fcn.10046a89
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003c414
call fcn.10002580
mov ecx, eax
call fcn.1003bb2b
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x8c]
cmp edx, 8
jb 0x100019de
mov ecx, dword [ebp - 0xa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100019d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021c0
push edx
push ecx
call fcn.10039277
add esp, 8
lea eax, [ebp - 0x88]
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003b1eb
mov dword [ebp - 4], 1
cmp dword [ebp - 0x78], 0
ja 0x10001c1c
lea ecx, [ebp - 0x1b8]
call fcn.1005f850
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 2
call fcn.1005f6f0
push 0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 3
call fcn.10072fc0
push 0
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x1b8]
push eax
call fcn.10002410
mov ecx, eax
call fcn.100736a0
test al, al
je 0x10001baa
cmp dword [ebp - 0xa4], 0x10
lea edx, [ebp - 0xb8]
mov dword [ebp - 0x30], 0
cmovae edx, dword [ebp - 0xb8]
mov ecx, edx
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10001a80
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x40]
call fcn.10009070
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.10040cf9
mov esi, eax
add esp, 8
lea eax, [ebp - 0x88]
cmp eax, esi
je 0x10001ae4
mov ecx, eax
call fcn.100094a0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x88], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x78], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x8c]
cmp edx, 8
jb 0x10001b24
mov ecx, dword [ebp - 0xa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10001b1a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021c5
push edx
push ecx
call fcn.10039277
add esp, 8
xor eax, eax
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 7
mov word [ebp - 0xa0], ax
cmp edx, 0x10
jb 0x10001b79
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10001b6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021ca
push edx
push ecx
call fcn.10039277
add esp, 8
cmp dword [ebp - 0x78], 0
jbe 0x10001baa
sub esp, 0x18
lea eax, [ebp - 0x88]
mov ecx, esp
mov dword [ebp - 0x2e0], esp
push eax
call fcn.10008c80
mov byte [ebp - 4], 5
call fcn.10002580
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.1003c1e8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0xbc], vtable.CParseUserLocality.0
cmp edx, 0x10
jb 0x10001bf2
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10001be8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021cf
push edx
push ecx
call fcn.10039277
add esp, 8
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
mov byte [ebp - 4], 1
call fcn.10071b70
lea eax, [ebp - 0x28]
push eax
call fcn.10002300
mov byte [ebp - 4], 6
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 8
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x10001e38
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ebp - 0x2e0], esp
push eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x102c46e8
mov word [ecx], ax
call fcn.100088f0
sub esp, 0x18
mov byte [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x2e4], esp
xor eax, eax
push 8
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push str.31413128
mov word [ecx], ax
call fcn.100088f0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 8
push eax
call fcn.10002580
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.1003ad1d
mov byte [ebp - 4], 9
call fcn.10042b8d
test al, al
je 0x10001d5c
mov eax, dword [0x102ee634]
test eax, eax
je 0x10001d5c
cmp dword [eax + 4], 4
jl 0x10001d5c
sub esp, 0xc
lea ecx, [ebp - 0x2d8]
push 0x27
push str.CSoftStrategy::SaveStrategy
push 4
call fcn.100084a0
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 0xa
mov edx, str._____get_sss_time_____
mov ecx, esi
call fcn.10003a00
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x40]
mov eax, 0x102c45c0
cmovae ecx, dword [ebp - 0x40]
test ecx, ecx
cmovne eax, ecx
push eax
push esi
call fcn.10002850
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x28]
mov eax, 0x102c45c0
cmovae ecx, dword [ebp - 0x28]
test ecx, ecx
cmovne eax, ecx
push eax
push esi
call fcn.10002850
mov ecx, dword [0x102ee634]
add esp, 0x10
push edi
call fcn.100086e0
lea ecx, [ebp - 0x2d8]
mov byte [ebp - 4], 9
call fcn.10004230
cmp dword [ebp - 0x2c], 8
lea edx, [ebp - 0x40]
push 3
cmovae edx, dword [ebp - 0x40]
sub esp, 0x18
mov esi, esp
mov ecx, edx
xor eax, eax
mov dword [esi + 0x10], 0
lea edi, [ecx + 2]
mov dword [esi + 0x14], 7
mov word [esi], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10001d86
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, esi
call fcn.100088f0
call fcn.1003f499
add esp, 0x18
push edx
push eax
call fcn.10044bba
add esp, 0xc
test eax, eax
jne 0x10001dfa
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x10001dee
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10001de4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021d4
push edx
push ecx
call fcn.10039277
add esp, 8
mov byte [ebp - 0x2d9], 0
jmp 0x10002118
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x10001e38
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10001e2e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021d9
push edx
push ecx
call fcn.10039277
add esp, 8
push 0
call fcn.100b5790
push edx
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.1003e2df
add esp, 0x10
mov byte [ebp - 4], 0xb
call fcn.10042b8d
test al, al
je 0x10001ef7
mov eax, dword [0x102ee634]
test eax, eax
je 0x10001ef7
cmp dword [eax + 4], 4
jl 0x10001ef7
sub esp, 0xc
lea ecx, [ebp - 0x2d8]
push 0x2f
push str.CSoftStrategy::SaveStrategy
push 4
call fcn.100084a0
mov edi, eax
lea esi, [edi + 0x30]
mov byte [ebp - 4], 0xc
mov edx, str._____save_sss_time_____
mov ecx, esi
call fcn.10003a00
cmp dword [ebp - 0x5c], 8
lea ecx, [ebp - 0x70]
mov eax, 0x102c45c0
cmovae ecx, dword [ebp - 0x70]
test ecx, ecx
cmovne eax, ecx
push eax
push esi
call fcn.10002850
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov ecx, 0x102c45c0
cmovae eax, dword [ebp - 0x28]
test eax, eax
cmovne ecx, eax
push ecx
push esi
call fcn.10002850
mov ecx, dword [0x102ee634]
add esp, 0x10
push edi
call fcn.100086e0
lea ecx, [ebp - 0x2d8]
mov byte [ebp - 4], 0xb
call fcn.10004230
sub esp, 0x18
lea eax, [ebp - 0x70]
mov ecx, esp
mov dword [ebp - 0x2e4], esp
push eax
call fcn.10008c80
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x2e0], esp
xor eax, eax
push 8
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push str.31413128
mov word [ecx], ax
call fcn.100088f0
mov byte [ebp - 4], 0xe
call fcn.10002580
mov ecx, eax
mov byte [ebp - 4], 0xb
call fcn.1003bd02
lea ecx, [ebp - 0x148]
call fcn.1005f7c0
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xf
call fcn.1005f600
push 0x1e
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x10
call fcn.10072fc0
push 0
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0x148]
push eax
call fcn.10002410
mov ecx, eax
call fcn.100736a0
test al, al
jne 0x10001fce
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0x148]
push eax
call fcn.10002410
mov ecx, eax
call fcn.100736a0
test al, al
jne 0x10001fce
mov byte [ebp - 0x2d9], al
jmp 0x10002060
push 0x10
push 0x10
push 0x102c455c
push 0x102c4570
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10044ece
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
cmp dword [ebp - 0x44], 0x10
lea eax, [ebp - 0x28]
push dword [ebp - 0x48]
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x14], 8
push ecx
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.10046716
mov edx, dword [ebp - 0x44]
add esp, 0x24
mov byte [ebp - 0x2d9], 1
cmp edx, 0x10
jb 0x1000204e
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10002044
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021de
push edx
push ecx
call fcn.10039277
add esp, 8
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0xd8], vtable.CParseSoftStrategy.0
cmp edx, 0x10
jb 0x100020a4
mov ecx, dword [ebp - 0xd4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000209a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021e3
push edx
push ecx
call fcn.10039277
add esp, 8
lea ecx, [ebp - 0x148]
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0xf
mov byte [ebp - 0xd4], 0
call fcn.10071b70
mov edx, dword [ebp - 0x5c]
cmp edx, 8
jb 0x10002104
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100020fa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021e8
push edx
push ecx
call fcn.10039277
add esp, 8
xor eax, eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 7
mov word [ebp - 0x70], ax
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x10002152
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002148
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021ed
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
cmp edx, 8
jb 0x1000219f
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002195
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100021f2
push edx
push ecx
call fcn.10039277
add esp, 8
mov al, byte [ebp - 0x2d9]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10039266
mov esp, ebp
pop ebp
ret
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
int3