Function at 0x1001be5b
Capabilities:
Get file attributes
Identify system language via api

Disassembly:
mov eax, 0x1005fda1
call fcn.1005f0d0
sub esp, 0x3c
cmp byte [ebp + 0xc], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x14], dl
mov dword [ebp - 0x20], ecx
je 0x1001bf76
cmp byte [ebp + 0x38], 0
je 0x1001bf4a
mov dword [ebp - 0x18], 0xe86
cmp dword [ebp - 0x18], 0x1111
jle 0x1001bec1
xor esi, esi
xor edi, edi
mov ecx, edi
mov eax, esi
shl eax, cl
mov ecx, 0x10079cd8
cdq
push edx
push eax
call fcn.10015096
inc edi
cmp edi, 0x6586
jl 0x1001be9c
inc esi
cmp esi, 0x1f95
jl 0x1001be9a
and dword [ebp - 4], 0
cmp dword [ebp - 0x18], 0xdf5
jge 0x1001bedd
mov edx, str.grhiuime_myfxy_urauhhl_ssipagv_vcogshk_lhep_tnfnbjki
mov ecx, 0x10079cd8
call fcn.1001996e
mov esi, dword [ebp + 0x10]
or dword [ebp - 4], 0xffffffff
mov dword [esi], 0
jmp 0x1001bf40
push ecx
push dword [ebp + 0x14]
mov edx, 0x1fe0
mov cl, 1
sub esp, 0x10
call fcn.1001bbc3
add esp, 0xc
push esi
push 0xea0
sub esp, 0xc
push dword [ebp + 0x34]
push ecx
push dword [ebp + 0x24]
push 0x5135
push dword [ebp + 0x2c]
push ecx
push ecx
call fcn.1001bbe3
add esp, 0x3c
inc dword [esi]
cmp dword [esi], 0
jle 0x1001bf06
jmp 0x1001c113
mov edx, dword [ebp + 0x1c]
mov dword [edx], 0
cmp dword [edx], 3
jge 0x1001c113
mov esi, dword [ebp + 0x18]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0xaeab
inc dword [edx]
cmp dword [edx], 3
jl 0x1001bf5f
jmp 0x1001c113
mov dword [ebp - 0x1c], 0x6de7
cmp dword [ebp - 0x1c], 0x70fa
jle 0x1001bff8
xor esi, esi
xor edi, edi
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov eax, ebx
cdq
idiv ecx
mov eax, edi
mov ecx, edx
shl eax, cl
lea ecx, [ebp - 0x48]
and eax, esi
cdq
push edx
push eax
call fcn.10001ac3
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1001bfb3
mov eax, dword [eax]
push eax
call fcn.1004881f
pop ecx
push 0
push 1
lea ecx, [ebp - 0x48]
call fcn.10015918
mov ecx, dword [ebp - 0x18]
inc ecx
mov dword [ebp - 0x18], ecx
cmp ecx, 0x7af
jl 0x1001bf91
inc ebx
cmp ebx, 0x5e58
jl 0x1001bf8c
inc edi
cmp edi, 0x42aa
jl 0x1001bf8a
inc esi
cmp esi, 0x2bcd
jl 0x1001bf88
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp dword [ebp - 0x1c], 0x6d0b
jge 0x1001c00c
push str.hlyhckfz_ugnjsi_gdqq_waqivjxsf_skayobv_gnhqoco_svqiyboar_qwm_zqlsguerz_txraklro
call fcn.1004881f
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0x14], 0
je 0x1001c02d
mov eax, dword [ebp + 8]
cmp byte [eax], 0
je 0x1001c113
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
jmp 0x1001c113
mov esi, dword [ebp + 0x30]
mov dword [esi], 0
cmp dword [esi], 0xfffffff4
jne 0x1001c113
mov edi, dword [ebp + 0x28]
mov ebx, dword [ebp + 0x20]
push 1
lea ecx, [ebp - 0x30]
call fcn.100152de
sub esp, 0xc
mov dword [ebp - 4], 4
lea eax, [ebp - 0x24]
mov dword [ebp - 0x1c], 0x3923ccde
push 0xef6
push eax
sub esp, 0xc
lea eax, [ebp - 0x30]
push 0x2157
push ecx
push 0xbb9
push eax
push 0x6d31
push ecx
push ecx
xor cl, cl
call fcn.1001bbe3
mov eax, dword [esi]
xor edx, edx
mov dword [ebp - 0x1c], eax
add esp, 0x3c
mov ecx, dword [esi]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [esi]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x30]
setle cl
xor edx, edx
cmp dword [eax], ecx
mov eax, dword [edi]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
imul eax, ecx, 0xfffffffb
test eax, eax
jne 0x1001c0c8
cmp dword [esi], eax
jne 0x1001c0c8
xor ecx, ecx
jmp 0x1001c0cb
xor ecx, ecx
inc ecx
mov dword [ebx], ecx
xor dl, dl
mov eax, dword [edi]
sub ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, 0x3826a056
push 0
push 0x185a
push 1
mov dword [eax], ecx
lea eax, [ebp + 0xf]
mov byte [ebp + 0xf], 0
mov ecx, 0x1460
push eax
call fcn.1001baf0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
add esp, 0x10
call fcn.10015361
dec dword [esi]
cmp dword [esi], 0xfffffff4
je 0x1001c045
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret