Function at 0x10093b2
Capabilities:
Read file on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x8234
call fcn.0100e330
mov eax, dword [0x101348c]
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0x10]
push 3
mov dword [ebp - 0x8230], edx
mov edx, dword [ebp + 0x18]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push 0x80000000
xor esi, esi
mov dword [ebp - 0x8234], edx
mov edx, dword [ebp + 0x1c]
push eax
push ecx
mov dword [ebp - 0x8224], ecx
mov dword [ebp - 0x821c], edx
mov dword [ebp - 0x8218], esi
mov dword [ebp - 0x8214], esi
mov dword [ebp - 0x8228], esi
mov dword [edi], esi
call fcn.0100c756
cmp eax, 0xffffffff
mov dword [ebp - 0x8208], eax
jne 0x100942e
mov eax, 0xfffffc15
jmp 0x1009786
push ebx
mov ebx, dword [sym.imp.USER32.dll_LoadCursorW]
push 0x7f02
push esi
call ebx
push eax
call dword [sym.imp.USER32.dll_SetCursor]
push esi
push esi
push esi
push dword [ebp - 0x8208]
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push esi
lea eax, [ebp - 0x820c]
push eax
push 0x4000
lea eax, [ebp - 0x8204]
push eax
push dword [ebp - 0x8208]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10096b3
mov esi, dword [ebp - 0x8234]
lea eax, [ebp - 0x8204]
neg eax
mov dword [ebp - 0x822c], eax
shr dword [ebp - 0x820c], 1
push 0x10013a4
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, dword [ebp - 0x820c]
xor edx, edx
cmp eax, edx
mov dword [ebp - 0x8210], edx
mov dword [ebp - 0x8220], edx
jle 0x1009674
jmp 0x10094c7
xor edx, edx
mov ecx, dword [ebp - 0x8220]
add ecx, ecx
mov ax, word [ebp + ecx - 0x8204]
cmp ax, 0xd
je 0x100965c
cmp ax, 0xfeff
je 0x100965c
cmp ax, 0xa
jne 0x1009630
mov eax, dword [ebp - 0x8210]
mov word [ebp + eax*2 - 0x204], dx
lea eax, [ebp - 0x204]
push eax
mov dword [ebp - 0x8210], edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 4
jl 0x100965c
push 0x100140c
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
lea eax, [ebp - 0x204]
jne 0x100954c
mov dword [edi], esi
mov dword [ebp - 0x8218], 1
jmp 0x1009622
push 0x1001438
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1009572
push 0x10013f0
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x100957f
cmp dword [ebp - 0x8218], 0
jne 0x1009727
cmp dword [ebp - 0x8218], 0
je 0x100961c
mov eax, dword [ebp - 0x821c]
movzx eax, word [eax + 0x100]
push eax
push dword [ebp - 0x8234]
lea eax, [ebp - 0x204]
push dword [ebp - 0x8214]
push eax
push dword [ebp - 0x8224]
call fcn.010089b9
test eax, eax
je 0x10095fb
inc dword [ebp - 0x8214]
push 0x10013a4
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, dword [ebp - 0x821c]
movzx eax, word [eax + 0x168]
cmp dword [ebp - 0x8214], eax
jbe 0x100965c
push 1
push dword [ebp - 0x8224]
push 0x4bc
call fcn.0100b820
push dword [ebp - 0x8208]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x7f00
push 0
call ebx
push eax
call dword [sym.imp.USER32.dll_SetCursor]
jmp 0x100977b
lea eax, [ebp - 0x204]
push 0x10013a4
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x100965c
cmp dword [ebp - 0x8210], edx
jne 0x1009648
mov edx, dword [ebp - 0x822c]
lea esi, [edx + ecx]
lea esi, [ebp + esi - 0x8204]
mov ecx, dword [ebp - 0x8210]
inc dword [ebp - 0x8210]
mov word [ebp + ecx*2 - 0x204], ax
inc dword [ebp - 0x8220]
mov eax, dword [ebp - 0x820c]
cmp dword [ebp - 0x8220], eax
jl 0x10094c5
lea ecx, [eax + eax]
mov eax, 0x4000
cmp ecx, eax
jb 0x10096b1
add dword [ebp - 0x8228], eax
add dword [ebp - 0x822c], eax
push 0
lea ecx, [ebp - 0x820c]
push ecx
push eax
lea eax, [ebp - 0x8204]
push eax
push dword [ebp - 0x8208]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x100948f
xor esi, esi
mov ecx, dword [ebp - 0x820c]
sub ecx, dword [edi]
mov eax, dword [ebp - 0x8230]
add ecx, dword [ebp - 0x8228]
cmp dword [ebp - 0x8218], esi
mov dword [eax], ecx
jne 0x10096d3
mov dword [eax], esi
push dword [ebp - 0x8208]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x7f00
push esi
call ebx
push eax
call dword [sym.imp.USER32.dll_SetCursor]
cmp dword [ebp - 0x8218], esi
jne 0x1009782
mov edi, dword [ebp - 0x821c]
add edi, 0x168
cmp word [edi], si
je 0x1009782
push 1
push dword [ebp - 0x8224]
push 0x4bd
call fcn.0100b820
mov word [edi], si
mov eax, 0xfffffb43
jmp 0x1009785
sub esi, dword [edi]
mov eax, dword [ebp - 0x8230]
push dword [ebp - 0x8208]
mov dword [eax], esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x7f00
push 0
call ebx
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov esi, dword [ebp - 0x821c]
mov edi, dword [ebp - 0x8214]
add esi, 0x168
movzx eax, word [esi]
cmp edi, eax
je 0x1009782
push 1
push dword [ebp - 0x8224]
push 0x4bc
call fcn.0100b820
mov word [esi], di
mov eax, 0xfffffb44
jmp 0x1009785
xor eax, eax
inc eax
pop ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
call fcn.0100dd00
leave
ret 0x18