Function at 0x1000c39e
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x120
mov dword [ebp - 0x118], 9
mov dword [ebp - 0x110], 0
jmp 0x1000c3cc
mov eax, dword [ebp - 0x110]
add eax, 1
mov dword [ebp - 0x110], eax
mov ecx, dword [ebp - 0x110]
cmp ecx, dword [ebp + 0x10]
jae 0x1000c3e8
mov edx, dword [ebp - 0x110]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx*4]
mov byte [ecx], 0
jmp 0x1000c3bd
mov edx, dword [ebp + 8]
push edx
push 0x10016b08
push 0x105
lea eax, [ebp - 0x108]
push eax
call fcn.1000d0f0
add esp, 0x10
test eax, eax
je 0x1000c413
mov eax, 0x202
jmp 0x1000c660
push 0
push 0x80
push 4
push 0
push 1
push bind
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0xffffffff
jne 0x1000c44b
mov eax, 0x19
jmp 0x1000c660
mov dword [ebp - 0x114], 0
jmp 0x1000c466
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x114]
cmp eax, dword [ebp + 0x10]
jae 0x1000c64d
mov dword [ebp - 0x110], 0
mov ecx, 1
test ecx, ecx
je 0x1000c61c
push 0
lea edx, [ebp - 0x120]
push edx
push 1
lea eax, [ebp - 0x10c]
push eax
mov ecx, dword [ebp - 0x11c]
push ecx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1000c603
cmp dword [ebp - 0x120], 0
jne 0x1000c4da
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx*4]
mov byte [ecx], 0
mov dword [ebp - 0x118], 0x27
jmp 0x1000c61c
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
mov edx, dword [ebp - 0x110]
movsx eax, byte [ecx + edx]
movsx ecx, byte [ebp - 0x10c]
cmp eax, ecx
jne 0x1000c5f7
mov edx, dword [ebp - 0x110]
add edx, 1
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov eax, dword [ebp - 0x110]
movsx ecx, byte [edx + eax]
test ecx, ecx
jne 0x1000c5f5
mov dword [ebp - 0x110], 0
mov edx, 1
test edx, edx
je 0x1000c5f3
push 0
lea eax, [ebp - 0x120]
push eax
push 1
lea ecx, [ebp - 0x10c]
push ecx
mov edx, dword [ebp - 0x11c]
push edx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1000c5da
cmp dword [ebp - 0x120], 0
jne 0x1000c58a
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx + eax*4]
mov byte [edx], 0
mov dword [ebp - 0x118], 0x27
jmp 0x1000c5f3
movsx eax, byte [ebp - 0x10c]
cmp eax, 0x3b
jne 0x1000c5ae
mov ecx, dword [ebp - 0x114]
mov edx, dword [ebp + 0x14]
mov eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x110]
mov byte [eax + ecx], 0
jmp 0x1000c5f3
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx*4]
mov edx, dword [ebp - 0x110]
mov al, byte [ebp - 0x10c]
mov byte [ecx + edx], al
mov ecx, dword [ebp - 0x110]
add ecx, 1
mov dword [ebp - 0x110], ecx
jmp 0x1000c5ee
mov edx, dword [ebp - 0x11c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x26
jmp 0x1000c660
jmp 0x1000c536
jmp 0x1000c61c
jmp 0x1000c601
mov dword [ebp - 0x110], 0
jmp 0x1000c617
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x26
jmp 0x1000c660
jmp 0x1000c47f
push 0
push 0
push 0
mov ecx, dword [ebp - 0x11c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x1000c648
mov edx, dword [ebp - 0x11c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x10a
jmp 0x1000c660
jmp 0x1000c457
mov eax, dword [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x118]
mov esp, ebp
pop ebp
ret 0x10