Function at 0x10006ac0
Capabilities:
Check if file exists
Get file attributes
Get file size
Read file on windows
Set file attributes
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x218
mov eax, dword [0x10047140]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
mov edi, dword [ebp + 8]
push edi
mov dword [ebp - 0x214], edi
mov dword [ebp - 0x210], 0xffffffff
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x10006b04
or eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000db11
mov esp, ebp
pop ebp
ret
push 0x80
push edi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocStringLen
push edi
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x218], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
push 0
push eax
mov dword [ebp - 0x20c], eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp eax, 0xffffffff
jne 0x10006b73
push str._SKUtil__SK_FileEncode_GetFileSize_Error
call fcn.100010e0
mov eax, dword [ebp - 0x210]
add esp, 4
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000db11
mov esp, ebp
pop ebp
ret
push ebx
push esi
lea esi, [eax + 1]
push esi
call fcn.1000f2f2
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x10006db6
push esi
push 0
push ebx
call fcn.100105b0
add esp, 0xc
cmp dword [ebp - 0x20c], 0xffffffff
je 0x10006dad
push str._SKUtil__SK_FileEncode_Create_file_for_read_success
call fcn.100010e0
push 0xff
lea eax, [ebp - 0x203]
push 0
push eax
mov byte [ebp - 0x204], 0
call fcn.100105b0
push 0xff
lea eax, [ebp - 0x103]
push 0
push eax
mov byte [ebp - 0x104], 0
call fcn.100105b0
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x204]
push eax
push 0
push 0
push edi
call fcn.1000f47d
add esp, 0x30
lea eax, [ebp - 0x208]
push 0
push eax
push esi
mov esi, dword [ebp - 0x20c]
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [ebp + 0xc], 0
push dword [ebp - 0x208]
mov dword [ebp - 0x20c], eax
push ebx
je 0x10006cb2
call fcn.10002e90
add esp, 8
mov ecx, str..xml
lea eax, [ebp - 0x104]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10006c60
test dl, dl
je 0x10006c5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10006c60
add eax, 2
add ecx, 2
test dl, dl
jne 0x10006c40
xor eax, eax
jmp 0x10006c65
sbb eax, eax
or eax, 1
test eax, eax
je 0x10006ca1
mov ecx, str..skr
lea eax, [ebp - 0x104]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10006c94
test dl, dl
je 0x10006c90
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10006c94
add eax, 2
add ecx, 2
test dl, dl
jne 0x10006c74
xor eax, eax
jmp 0x10006c99
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10006d38
push dword [ebp - 0x208]
push ebx
call fcn.10002e90
jmp 0x10006d35
call fcn.10002b90
add esp, 8
mov ecx, str..xml
lea eax, [ebp - 0x104]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10006ce5
test dl, dl
je 0x10006ce1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10006ce5
add eax, 2
add ecx, 2
test dl, dl
jne 0x10006cc5
xor eax, eax
jmp 0x10006cea
sbb eax, eax
or eax, 1
test eax, eax
je 0x10006d29
mov ecx, str..skr
lea eax, [ebp - 0x104]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10006d20
test dl, dl
je 0x10006d1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10006d20
add eax, 2
add ecx, 2
test dl, dl
jne 0x10006d00
xor eax, eax
jmp 0x10006d25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10006d38
push dword [ebp - 0x208]
push ebx
call fcn.10002b90
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
call edi
cmp dword [ebp - 0x20c], 0
je 0x10006dad
push str._SKUtil__SK_FileEncode_Read_file_success
call fcn.100010e0
add esp, 4
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
push dword [ebp - 0x214]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
je 0x10006dad
push str._SKUtil__SK_FileEncode_Create_file_for_write_success
call fcn.100010e0
add esp, 4
lea eax, [ebp - 0x218]
push 0
push eax
push dword [ebp - 0x208]
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call edi
mov dword [ebp - 0x210], 0
push ebx
call fcn.1000f27d
add esp, 4
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x210]
pop esi
pop ebx
xor ecx, ebp
pop edi
call fcn.1000db11
mov esp, ebp
pop ebp
ret