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

Disassembly:
push 0x3f
pop edx
mov ecx, esi
call fcn.00a22200
test eax, eax
je 0xa2d2d4
jmp 0xa2d2c6
test al, 0x10
je 0xa2d273
mov esi, dword [ebx]
mov ecx, esi
push 0x5c
pop eax
mov edx, eax
call fcn.00a22aea
test eax, eax
je 0xa36319
mov edi, dword [ebp - 0xc]
mov esi, dword [ebx]
add edi, 5
lea ecx, [edi + edi]
call fcn.00a24697
push esi
mov edx, edi
mov dword [ebx], eax
mov ecx, eax
call fcn.00a21417
push dword [ebp - 4]
mov ecx, dword [ebx]
mov edx, edi
call fcn.00a22c30
mov eax, dword [ebx + 0x18]
mov dword [eax], 0x10
jmp 0xa2d273
mov dword [0xa450e4], edi
jmp 0xa2d26a
xor edi, edi
jmp 0xa28ecb
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
mov ebx, ecx
mov dword [ebp - 4], 0xa2d184
xor edx, edx
push esi
mov dword [0xa450e4], edx
mov esi, dword [ebx]
push edi
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
cmp ax, dx
jne 0xa2d1b0
sub esi, ecx
mov ecx, dword [ebx]
sar esi, 1
mov dword [ebp - 0xc], esi
call fcn.00a22b0f
mov edi, eax
push 0x3a
pop eax
mov dword [ebp - 0x14], eax
cmp word [edi], ax
je 0xa3cc6a
mov ecx, 0x250
call fcn.00a24697
push 0x5c
mov dword [ebx + 0x18], eax
movzx eax, word [edi]
pop esi
mov dword [ebp - 0x10], esi
cmp ax, si
je 0xa3630d
mov ecx, dword [ebx]
mov edx, esi
call fcn.00a22aea
mov esi, eax
test esi, esi
je 0xa35258
add esi, 2
mov edi, dword [sym.imp.msvcrt.dll__wcsicmp]
push 0xa22b00
push esi
call edi
pop ecx
pop ecx
test eax, eax
je 0xa3301d
push 0xa22b04
push esi
call edi
pop ecx
pop ecx
test eax, eax
je 0xa3301d
cmp dword [0xa4506c], 4
je 0xa32fb7
push dword [ebx]
call dword [sym.imp.api_ms_win_core_file_l1_2_1.dll_GetFileAttributesW]
mov dword [ebp - 8], eax
cmp eax, 0xffffffff
jne 0xa28ed6
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_GetLastError]
xor edi, edi
mov dword [0xa450e4], eax
mov eax, dword [ebp - 8]
cmp eax, 0xffffffff
jne 0xa28e77
mov edx, dword [ebx]
xor edi, edi
inc edi
mov ecx, edx
xor eax, eax
mov esi, eax
movzx eax, word [ecx]
test ax, ax
je 0xa2d298
cmp ax, word [ebp - 0x10]
je 0xa2d2eb
cmp ax, word [ebp - 0x14]
je 0xa2d2ef
add ecx, 2
inc edi
jmp 0xa2d27e
mov dword [ebx + 0xc], esi
test esi, esi
je 0xa3524e
xor eax, eax
cmp word [esi], ax
lea eax, [esi + 2]
je 0xa3302e
mov dword [ebx + 0x10], eax
push 0x2a
pop edx
mov ecx, esi
call fcn.00a22200
test eax, eax
je 0xa28e0c
or dword [ebx + 0x1c], 8
mov dword [0xa450b4], 1
push 0x2e
pop edx
mov ecx, esi
call fcn.00a22200
mov dword [ebx + 0x14], eax
xor eax, eax
pop edi
pop esi
inc eax
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, ecx
jmp 0xa2d292
cmp edi, 2
jne 0xa2d292
jmp 0xa2d2eb
mov dword [ebx + 0x10], edx
mov esi, edx
jmp 0xa2d2b4
mov esi, dword [ebx]
xor edi, edi
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0xa35261
sub ecx, edx
sar ecx, 1
cmp ecx, 2
jb 0xa2d20f
push 0x3a
pop eax
cmp word [esi + 2], ax
jne 0xa2d20f
jmp 0xa36305
add esi, 4
jmp 0xa2d20f
mov dword [ebp - 4], 0xa2d186
jmp 0xa3301d
mov ecx, esi
lea edx, [ecx + 2]
jmp 0xa3cd33
cmp esi, 2
jle 0xa2d1da
xor eax, eax
mov word [edi], ax
sub edi, 2
push eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_SetErrorMode]
push ecx
mov ecx, dword [ebx]
mov edx, 0x8000
mov dword [ebp - 8], eax
call fcn.00a246f0
mov esi, eax
cmp esi, 0xffffffff
je 0xa3ccc5
mov ecx, esi
call fcn.00a246ae
test eax, eax
jne 0xa3ccaf
mov ecx, esi
call fcn.00a3037c
test eax, eax
je 0xa3ccc5
mov ecx, esi
call fcn.00a246ae
test eax, eax
jne 0xa3cd13
mov ecx, esi
call fcn.00a3037c
test eax, eax
jmp 0xa3cd11
add edi, 2
cmp dword [0xa4506c], 4
push 0x3a
pop eax
mov word [edi], ax
jne 0xa3ccfd
cmp dword [0xa450a4], 0
jne 0xa3ccf1
push dword [ebx]
push 1
push 0x236b
call fcn.00a2e452
add esp, 0xc
mov dword [0xa450a8], 1
jmp 0xa3cd0e
push dword [ebx]
push 1
push 0x236b
call fcn.00a2e452
add esp, 0xc
cmp esi, 0xffffffff
je 0xa3cd1a
mov ecx, esi
call fcn.00a249be
push dword [ebp - 8]
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_SetErrorMode]
jmp 0xa2d1da
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0xa3cd33
sub ecx, edx
sar ecx, 1
cmp ecx, 2
jne 0xa28e95
push 0x3a
pop eax
cmp word [esi + 2], ax
jne 0xa28e95
jmp 0xa28ebd