Function at 0x1006fbe6
Capabilities:
Read file on windows

Disassembly:
push 0xa2c
mov eax, 0x1011436d
call fcn.1006051e
mov dword [ebp - 0xa34], edx
mov edi, ecx
mov dword [ebp - 0xa1c], edi
mov eax, dword [ebp + 8]
xor esi, esi
push 0x208
mov dword [ebp - 0xa38], eax
lea eax, [ebp - 0x218]
push esi
push eax
call fcn.1003e610
add esp, 0xc
test edi, edi
je 0x1006fda5
push 0x5c
push edi
call fcn.1003f13a
pop ecx
pop ecx
test eax, eax
je 0x1006fc63
push esi
lea ecx, [ebp - 0x218]
push 0x82
push ecx
push ecx
lea ecx, [eax + 2]
call fcn.10003264
add esp, 0x10
test eax, eax
je 0x1006fc63
cmp word [ebp - 0x218], si
jne 0x1006fdaf
push esi
push 0x80
push 3
push esi
push 1
push SysReAllocString
push edi
mov ebx, esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xa20], eax
cmp eax, 0xffffffff
je 0x1006feb9
push 2
push esi
push 0xffffff00
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0x800
lea eax, [ebp - 0xa18]
mov dword [ebp - 0xa30], esi
push esi
push eax
call fcn.1003e610
add esp, 0xc
lea eax, [ebp - 0xa30]
push esi
push eax
push 0x800
lea eax, [ebp - 0xa18]
push eax
push dword [ebp - 0xa20]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1006fd6e
mov eax, dword [ebp - 0xa30]
cmp eax, 0x100
ja 0x1006fd6e
shr eax, 1
cmp eax, 0x11
jb 0x1006fd5e
lea edi, [ebp + eax*2 - 0xa3a]
jmp 0x1006fd15
push 0x11
sub edi, 2
push str.____360skin_ver_
push edi
call fcn.100443aa
add esp, 0xc
test eax, eax
je 0x1006fd21
lea eax, [ebp - 0xa18]
cmp edi, eax
jne 0x1006fcfe
jmp 0x1006fd58
test edi, edi
je 0x1006fd58
add edi, 0x22
push 0x10132a74
push edi
call fcn.1003eebe
pop ecx
pop ecx
test eax, eax
je 0x1006fd58
sub eax, edi
sar eax, 1
cmp eax, 0x82
jae 0x1006fd58
push eax
lea eax, [ebp - 0x218]
push edi
push eax
call fcn.10044089
xor ebx, ebx
add esp, 0xc
inc ebx
mov edi, dword [ebp - 0xa1c]
push dword [ebp - 0xa20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
jne 0x1006fdaf
push 0x5c
push edi
call fcn.1003f13a
pop ecx
pop ecx
test eax, eax
je 0x1006fda7
push 1
lea ecx, [ebp - 0x218]
push 0x82
push ecx
push ecx
lea ecx, [eax + 2]
call fcn.10003264
add esp, 0x10
test eax, eax
je 0x1006fda7
cmp word [ebp - 0x218], si
jne 0x1006fdaf
jmp 0x1006fda7
mov ebx, esi
test ebx, ebx
je 0x1006feb9
mov dword [ebp - 0xa2c], esi
mov dword [ebp - 0xa28], esi
mov dword [ebp - 0xa24], esi
push 0x2e
lea edx, [ebp - 0xa2c]
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x218]
call fcn.1006d2fa
mov edx, dword [ebp - 0xa2c]
mov ebx, esi
pop ecx
mov ecx, dword [ebp - 0xa28]
mov edi, esi
mov eax, ecx
mov dword [ebp - 0xa20], esi
sub eax, edx
sar eax, 2
cmp eax, 1
jb 0x1006fe11
push dword [edx]
call fcn.1004d4eb
mov edx, dword [ebp - 0xa2c]
pop ecx
mov ecx, dword [ebp - 0xa28]
movzx esi, ax
mov eax, ecx
sub eax, edx
sar eax, 2
cmp eax, 2
jb 0x1006fe3b
push dword [edx + 4]
call fcn.1004d4eb
mov edx, dword [ebp - 0xa2c]
pop ecx
mov ecx, dword [ebp - 0xa28]
movzx eax, ax
mov dword [ebp - 0xa20], eax
mov eax, ecx
sub eax, edx
sar eax, 2
cmp eax, 3
jb 0x1006fe5f
push dword [edx + 8]
call fcn.1004d4eb
mov edx, dword [ebp - 0xa2c]
pop ecx
mov ecx, dword [ebp - 0xa28]
movzx ebx, ax
sub ecx, edx
sar ecx, 2
cmp ecx, 4
jb 0x1006fe75
push dword [edx + 0xc]
call fcn.1004d4eb
pop ecx
movzx edi, ax
mov edx, dword [ebp - 0xa34]
test edx, edx
je 0x1006fe92
mov eax, dword [ebp - 0xa20]
movzx ecx, si
shl ecx, 0x10
movzx eax, ax
or ecx, eax
mov dword [edx], ecx
mov eax, dword [ebp - 0xa38]
test eax, eax
je 0x1006fea9
movzx edx, bx
shl edx, 0x10
movzx ecx, di
or edx, ecx
mov dword [eax], edx
lea ecx, [ebp - 0xa2c]
call fcn.1000835e
xor eax, eax
inc eax
jmp 0x1006febb
xor eax, eax
call fcn.100604c8
ret