Function at 0x10003b60
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc30
mov eax, dword [0x101d9154]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x18]
mov dword [ebp - 0xc2c], eax
mov eax, dword [ebp + 0x24]
push 0x200
mov dword [ebp - 0xc30], eax
lea eax, [ebp - 0x204]
push 0
push eax
call fcn.10080190
push 0x200
lea eax, [ebp - 0x404]
push 0
push eax
call fcn.10080190
push 0x208
lea eax, [ebp - 0x60c]
push 0
push eax
call fcn.10080190
push 0x208
lea eax, [ebp - 0x814]
push 0
push eax
call fcn.10080190
push 0x208
lea eax, [ebp - 0xa1c]
push 0
push eax
call fcn.10080190
add esp, 0x3c
push esi
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x10003bff
cmp byte [ebp + 0x20], al
jne 0x10003ee5
lea ecx, [ebp - 0x60c]
sub ecx, esi
nop word [eax + eax]
movzx eax, word [esi]
lea esi, [esi + 2]
mov word [ecx + esi - 2], ax
test ax, ax
jne 0x10003c10
mov ecx, dword [ebp + 0x10]
lea edx, [ebp - 0x404]
sub edx, ecx
nop dword [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x10003c30
xor ecx, ecx
movzx eax, word [ebp + ecx - 0x404]
lea ecx, [ecx + 2]
test ax, ax
jne 0x10003c42
mov ecx, dword [ebp + 0xc]
lea edx, [ebp - 0x204]
sub edx, ecx
nop dword [eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x10003c60
mov ecx, dword [ebp + 0x1c]
lea edx, [ebp - 0xa1c]
sub edx, ecx
nop dword [eax + eax]
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x10003c80
push edi
lea eax, [ebp - 0x204]
mov edi, 1
push eax
mov esi, str..ico
call fcn.1008332e
add esp, 4
nop dword [eax]
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003cd6
test cx, cx
je 0x10003cd2
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003cd6
add eax, 4
add esi, 4
test cx, cx
jne 0x10003cb0
xor eax, eax
jmp 0x10003cdb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10003ce7
lea edi, [eax + 2]
jmp 0x10003e6d
lea eax, [ebp - 0x204]
mov esi, 0x101739e8
push eax
call fcn.1008332e
add esp, 4
nop dword [eax + eax]
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003d26
test cx, cx
je 0x10003d22
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003d26
add eax, 4
add esi, 4
test cx, cx
jne 0x10003d00
xor eax, eax
jmp 0x10003d2b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10003d37
lea edi, [eax + 3]
jmp 0x10003e6d
lea eax, [ebp - 0x204]
mov esi, 0x101739f4
push eax
call fcn.1008332e
add esp, 4
nop dword [eax + eax]
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003d76
test cx, cx
je 0x10003d72
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003d76
add eax, 4
add esi, 4
test cx, cx
jne 0x10003d50
xor eax, eax
jmp 0x10003d7b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10003d87
lea edi, [eax + 4]
jmp 0x10003e6d
lea eax, [ebp - 0x204]
mov esi, 0x10173a00
push eax
call fcn.1008332e
add esp, 4
nop dword [eax + eax]
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003dc6
test cx, cx
je 0x10003dc2
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003dc6
add eax, 4
add esi, 4
test cx, cx
jne 0x10003da0
xor eax, eax
jmp 0x10003dcb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10003dd7
lea edi, [eax + 5]
jmp 0x10003e6d
lea eax, [ebp - 0x204]
mov esi, str..psd
push eax
call fcn.1008332e
add esp, 4
nop dword [eax + eax]
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003e16
test cx, cx
je 0x10003e12
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003e16
add eax, 4
add esi, 4
test cx, cx
jne 0x10003df0
xor eax, eax
jmp 0x10003e1b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10003e24
lea edi, [eax + 6]
jmp 0x10003e6d
lea eax, [ebp - 0x204]
mov esi, str..tif
push eax
call fcn.1008332e
add esp, 4
mov cx, word [eax]
cmp cx, word [esi]
jne 0x10003e5e
test cx, cx
je 0x10003e5a
mov cx, word [eax + 2]
cmp cx, word [esi + 2]
jne 0x10003e5e
add eax, 4
add esi, 4
test cx, cx
jne 0x10003e38
xor eax, eax
jmp 0x10003e63
sbb eax, eax
or eax, 1
test eax, eax
mov ecx, 7
cmove edi, ecx
push edi
lea eax, [ebp - 0x60c]
push eax
lea eax, [ebp - 0x814]
push str.__s___d
push eax
call fcn.10006d80
add esp, 0x10
mov ecx, dword [ebp - 0xc2c]
lea eax, [ebp - 0xc25]
mov byte [ebp - 0xc25], 0
push eax
push dword [ebp + 0x20]
lea eax, [ebp - 0xc24]
push str.42CA8D45_DC86_41CE_B701_EEF835F50DEA
push 0x101744f4
push eax
lea eax, [ebp - 0x814]
push eax
lea eax, [ebp - 0xa1c]
push eax
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.10004980
cmp byte [ebp - 0xc25], 0
pop edi
je 0x10003ee5
mov eax, dword [ebp - 0xc30]
mov byte [eax], 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.10062ee4
mov esp, ebp
pop ebp
ret 0x20