Function at 0x60c880
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x691551
mov eax, dword fs:[0]
push eax
mov eax, 0x100f0
call fcn.0065d180
mov eax, dword [0x746694]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x100ec], esi
mov dword [ebp - 0x100e4], eax
mov dword [ebp - 0x100f4], 0
mov dword [ebp - 0x100f0], 0
lea ecx, [ebp - 0x100f4]
mov dword [ebp - 4], 0
push ecx
push eax
call fcn.005be920
add esp, 8
push 0
push 0x80
push 3
push 0
push 1
push accept
push dword [ebp - 0x100f4]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x60cba5
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x10054]
push eax
call fcn.005c0b70
add esp, 8
mov ecx, dword [ebp - 0x100e4]
mov eax, accept
mov byte [ebp - 4], 1
mov edx, dword [ecx + 0x10]
sub eax, edx
mov dword [ebp - 0x100ec], edx
cmp eax, 0xe
jb 0x60cd8b
cmp dword [ecx + 0x14], 0x10
jb 0x60c95e
mov ecx, dword [ecx]
mov dword [ebp - 0x100e4], ecx
lea eax, [edx + 0xe]
mov dword [ebp - 0x1003c], 0
mov edi, 0xf
mov dword [ebp - 0x1002c], 0
mov dword [ebp - 0x10028], 0
lea edx, [ebp - 0x1003c]
mov dword [ebp - 0x100fc], eax
mov dword [ebp - 0x100f8], edx
cmp eax, edi
jbe 0x60c9e1
mov edi, eax
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x60c9ae
mov edi, accept
jmp 0x60c9b8
mov eax, 0x16
cmp edi, eax
cmovb edi, eax
lea eax, [edi + 1]
push eax
lea ecx, [ebp - 0x1003c]
call fcn.00448c50
mov ecx, dword [ebp - 0x100e4]
mov edx, eax
mov eax, dword [ebp - 0x100fc]
mov dword [ebp - 0x100f8], edx
mov dword [ebp - 0x1003c], edx
movq xmm0, qword [str.Error_opening]
mov dword [ebp - 0x1002c], eax
mov dword [ebp - 0x10028], edi
mov edi, dword [ebp - 0x100ec]
movq qword [edx], xmm0
mov eax, dword [0x6a1050]
mov dword [edx + 8], eax
mov ax, word [0x6a1054]
push edi
mov word [edx + 0xc], ax
lea eax, [edx + 0xe]
push ecx
push eax
call fcn.00660260
mov eax, dword [ebp - 0x100f8]
add esp, 0xc
mov byte [eax + edi + 0xe], 0
push 3
push 0x71f7e0
lea ecx, [ebp - 0x1003c]
mov byte [ebp - 4], 2
call fcn.004485a0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1006c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1005c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x10054]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x1006c]
push eax
push dword [ebp - 0x100ec]
lea ecx, [ebp - 0x10084]
call fcn.005a2b00
lea eax, [ebp - 0x10084]
mov ecx, 0x7460c8
push eax
call fcn.005a3660
mov edx, dword [ebp - 0x10070]
cmp edx, 0x10
jb 0x60cad6
mov ecx, dword [ebp - 0x10084]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x60cacc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x60cd90
push edx
push ecx
call fcn.0065d157
add esp, 8
mov edx, dword [ebp - 0x10058]
cmp edx, 0x10
jb 0x60cb10
mov ecx, dword [ebp - 0x1006c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x60cb06
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x60cd90
push edx
push ecx
call fcn.0065d157
add esp, 8
mov edx, dword [ebp - 0x10028]
cmp edx, 0x10
jb 0x60cb4a
mov ecx, dword [ebp - 0x1003c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x60cb40
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x60cd90
push edx
push ecx
call fcn.0065d157
add esp, 8
mov edx, dword [ebp - 0x10040]
mov dword [ebp - 0x1002c], 0
mov dword [ebp - 0x10028], 0xf
mov byte [ebp - 0x1003c], 0
cmp edx, 0x10
jb 0x60cd44
mov ecx, dword [ebp - 0x10054]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x60cb99
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x60cd90
push edx
push ecx
call fcn.0065d157
jmp 0x60cd41
lea eax, [ebp - 0x100e0]
push eax
call fcn.0060d3e0
add esp, 4
push 0
lea eax, [ebp - 0x100e8]
push eax
push 0xffff
lea eax, [ebp - 0x10024]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x60cca1
push dword [ebp - 0x100e8]
lea eax, [ebp - 0x10024]
push eax
lea eax, [ebp - 0x100e0]
push eax
call fcn.0060d420
add esp, 0xc
cmp dword [ebp - 0x100e8], 0
ja 0x60cbb4
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x100e0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0060d4e0
add esp, 8
xor edi, edi
nop dword [eax]
mov dl, byte [ebp + edi - 0x24]
mov al, dl
movzx ecx, dl
and al, 0xf0
cmp al, 0xa0
sbb al, al
shr ecx, 4
and al, 0xd9
add al, 0x57
add al, cl
mov byte [ebp + edi*2 - 0x10024], al
mov al, dl
and al, 0xf
cmp al, 0xa
sbb al, al
and dl, 0xf
and al, 0xd9
add al, 0x57
add al, dl
mov byte [ebp + edi*2 - 0x10023], al
inc edi
cmp edi, 0x14
jl 0x60cc20
lea ecx, [ebp - 0x10024]
mov dword [esi], 0
mov dword [esi + 0x10], 0
lea edx, [ecx + 1]
mov dword [esi + 0x14], 0xf
mov byte [ebp - 0xfffc], 0
mov byte [esi], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x60cc84
sub ecx, edx
lea eax, [ebp - 0x10024]
push ecx
push eax
mov ecx, esi
call fcn.004484a0
jmp 0x60cd5b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x10054]
push eax
call fcn.005c0b70
mov ecx, dword [0x7460dc]
add esp, 8
cmp ecx, 0x10
jb 0x60ccf0
mov eax, dword [0x7460c8]
inc ecx
cmp ecx, 0x1000
jb 0x60cce6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x60cd90
mov eax, edx
push ecx
push eax
call fcn.0065d157
add esp, 8
movups xmm0, xmmword [ebp - 0x10054]
lea eax, [ebp - 0x10024]
push dword [ebp - 0x100e8]
movups xmmword [0x7460c8], xmm0
push eax
movq xmm0, qword [ebp - 0x10044]
lea eax, [ebp - 0x100e0]
push eax
movq qword [0x7460d8], xmm0
call fcn.0060d420
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x100e0]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0060d4e0
add esp, 8
mov dword [esi], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov eax, dword [ebp - 0x100f4]
test eax, eax
je 0x60cd6e
push eax
call fcn.00663ce7
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0065d16a
mov esp, ebp
pop ebp
ret
call fcn.00446f60
call fcn.00663c8b
int3