Function at 0x100099f0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008436d
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [0x100ad708]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x60], 0
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 4], eax
lea eax, [ebp - 0x78]
push eax
call fcn.1000a880
mov esi, eax
lea eax, [ebp - 0x28]
cmp eax, esi
je 0x10009abb
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x10009a89
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009a7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a18e
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov dword [ebp - 0x18], 0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x64]
cmp edx, 8
jb 0x10009af5
mov ecx, dword [ebp - 0x78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009aeb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a193
push edx
push ecx
call fcn.1002eba8
add esp, 8
cmp dword [ebp - 0x18], 0
jne 0x10009fd4
mov ecx, 0x1008c99c
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10009b20
sub ecx, edx
push ecx
push 0x1008c99c
lea ecx, [ebp - 0x78]
call fcn.1000f590
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x78]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x64]
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x10009b84
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10009b7a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a198
push edx
push ecx
call fcn.1002eba8
add esp, 8
cmp dword [ebp - 0x18], 0
je 0x10009fcb
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmovae eax, dword [ebp - 0x28]
push eax
call esi
test eax, eax
je 0x10009fc5
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
mov ecx, 0x1008c9fc
mov byte [ebp - 4], 2
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], al
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10009bd7
sub ecx, edx
push ecx
push 0x1008c9fc
lea ecx, [ebp - 0x78]
call fcn.1000f590
push 0
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x78]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x64]
test al, al
mov byte [ebp - 4], 2
sete al
mov byte [ebp - 0x59], al
cmp edx, 0x10
jb 0x10009c46
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10009c39
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a19d
push edx
push ecx
call fcn.1002eba8
mov al, byte [ebp - 0x59]
add esp, 8
test al, al
je 0x10009c5b
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.10003900
jmp 0x10009fc5
xor eax, eax
mov byte [ebp - 4], 4
mov word [ebp - 0x78], ax
lea ecx, [ebp - 0x78]
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x68], 0
push eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x60], 1
call fcn.10010230
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x78]
push eax
call fcn.1000f400
push 1
push 0x1008ccb4
lea ecx, [ebp - 0x78]
call fcn.1000f400
cmp dword [ebp - 0x44], 8
lea eax, [ebp - 0x58]
push dword [ebp - 0x48]
cmovae eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x78]
push eax
call fcn.1000f400
mov dword [ebp - 0x84], 0
xor ecx, ecx
mov dword [ebp - 0x80], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x94], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x84], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0x94]
cmp dword [ebp - 0x80], 8
cmovae eax, dword [ebp - 0x94]
push eax
call esi
mov edx, dword [ebp - 0x80]
mov esi, eax
cmp edx, 8
jb 0x10009d52
mov ecx, dword [ebp - 0x94]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009d48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1a2
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x64]
xor eax, eax
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 7
mov word [ebp - 0x94], ax
mov byte [ebp - 4], 2
cmp edx, 8
jb 0x10009daa
mov ecx, dword [ebp - 0x78]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009da0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1a7
push edx
push ecx
call fcn.1002eba8
add esp, 8
test esi, esi
je 0x10009dbf
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.10003900
jmp 0x10009fc5
lea eax, [ebp - 0x28]
push eax
call fcn.10017ad0
add esp, 4
test al, al
je 0x10009de0
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.10003900
jmp 0x10009fc5
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov ecx, 0x1008ca78
mov byte [ebp - 4], 5
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], al
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10009e10
sub ecx, edx
push ecx
push 0x1008ca78
lea ecx, [ebp - 0x78]
call fcn.1000f590
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x78]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x64]
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x10009e74
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10009e6a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1ac
push edx
push ecx
call fcn.1002eba8
add esp, 8
xor eax, eax
mov byte [ebp - 4], 7
mov word [ebp - 0x94], ax
lea ecx, [ebp - 0x94]
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x84], 0
push eax
mov dword [ebp - 0x80], 7
mov dword [ebp - 0x60], 6
call fcn.10010230
push 1
push 0x1008ccb4
lea ecx, [ebp - 0x94]
call fcn.1000f400
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
push dword [ebp - 0x30]
cmovae eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x94]
push eax
call fcn.1000f400
cmp dword [ebp - 0x80], 8
lea eax, [ebp - 0x94]
push dword [ebp - 0x84]
cmovae eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x28]
push eax
call fcn.1000f400
mov edx, dword [ebp - 0x80]
mov byte [ebp - 4], 5
cmp edx, 8
jb 0x10009f36
mov ecx, dword [ebp - 0x94]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009f2c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1b1
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 2
cmp edx, 8
jb 0x10009f74
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009f6a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1b6
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov byte [ebp - 4], al
cmp edx, 8
jb 0x10009fc5
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10009fbb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1bb
push edx
push ecx
call fcn.1002eba8
add esp, 8
cmp dword [ebp - 0x18], 0
jne 0x10009fd4
mov byte [ebp - 0x59], 0
jmp 0x1000a13a
mov ecx, 0x1008c99c
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10009ff0
sub ecx, edx
push ecx
push 0x1008c99c
lea ecx, [ebp - 0x40]
call fcn.1000f590
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 8
test ecx, ecx
je 0x1000a100
cmp dword [ebp - 0x18], 0
je 0x1000a100
mov esi, dword [edi + 0xc]
lea eax, [edi + 0xc]
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x7c], eax
mov eax, esi
mov dword [ebp - 0x60], eax
mov edi, dword [esi + 4]
cmp byte [edi + 0xd], 0
jne 0x1000a082
nop word [eax + eax]
cmp dword [ebp - 0x2c], 0x10
lea ecx, [ebp - 0x40]
cmovae ecx, edx
cmp dword [edi + 0x24], 0x10
lea edx, [edi + 0x10]
jb 0x1000a056
mov edx, dword [edi + 0x10]
push dword [ebp - 0x30]
push ecx
push dword [edi + 0x20]
push edx
call fcn.10005830
add esp, 0x10
test eax, eax
jns 0x1000a06f
mov edi, dword [edi + 8]
jmp 0x1000a073
mov esi, edi
mov edi, dword [edi]
cmp byte [edi + 0xd], 0
mov edx, dword [ebp - 0x40]
je 0x1000a040
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x60]
cmp esi, eax
je 0x1000a0b5
cmp dword [esi + 0x24], 0x10
lea edi, [esi + 0x10]
mov dword [ebp - 0x60], edi
jb 0x1000a097
mov eax, dword [edi]
mov dword [ebp - 0x60], eax
push dword [edi + 0x10]
cmp dword [ebp - 0x2c], 0x10
lea eax, [ebp - 0x40]
push dword [ebp - 0x60]
cmovae eax, edx
push ecx
push eax
call fcn.10005830
add esp, 0x10
test eax, eax
jns 0x1000a0e5
mov ecx, dword [ebp - 0x7c]
lea eax, [ebp - 0x40]
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x59]
push eax
lea eax, [ebp - 0x60]
push eax
push 0x1008c98b
call fcn.10004930
mov ecx, dword [ebp - 0x7c]
push eax
add eax, 0x10
push eax
push esi
lea eax, [ebp - 0x7c]
push eax
call fcn.100050e0
mov esi, dword [ebp - 0x7c]
lea ecx, [esi + 0x28]
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x1000a100
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.100042a0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x40]
cmp eax, 0x10
jb 0x1000a136
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000a12c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1c0
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov byte [ebp - 0x59], 1
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x1000a170
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000a166
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000a1c5
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov al, byte [ebp - 0x59]
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.1002ef19
mov esp, ebp
pop ebp
ret
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
int3