Function at 0x6906c0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 8], ecx
mov dword [ebp - 4], 0
test edi, edi
je 0x690980
push edi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.006b6232
add esp, 0x10
cmp eax, 1
jb 0x690977
cmp dword [ebp - 4], 0x6468544d
jne 0x690977
push edi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.006b6232
add esp, 0x10
cmp eax, 1
jne 0x690749
lea esp, [esp]
cmp dword [ebp - 4], 0x6b72544d
je 0x690756
push 1
push 0xfffffffffffffffd
push edi
call fcn.006b724c
push edi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.006b6232
add esp, 0x1c
cmp eax, 1
je 0x690720
cmp dword [ebp - 4], 0x6b72544d
jne 0x690977
push 1
push 4
push edi
call fcn.006b724c
push edi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.006b6232
add esp, 0x1c
cmp eax, 1
jne 0x6907e3
push ebx
push esi
jmp 0x690780
mov ecx, dword [ebp - 4]
cmp cx, 0xff00
jne 0x6907e1
cmp ecx, 0x6b72544d
je 0x6907e1
mov esi, ecx
and ecx, 0xffff00
shr esi, 0x18
cmp ecx, 0x4ff00
ja 0x6907f8
je 0x690810
cmp ecx, 0x1ff00
je 0x690810
cmp ecx, 0x2ff00
je 0x690810
cmp ecx, 0x3ff00
je 0x690810
push 1
push esi
push edi
call fcn.006b724c
add esp, 0xc
push edi
push 1
lea eax, [ebp - 4]
push 4
push eax
call fcn.006b6232
add esp, 0x10
cmp eax, 1
je 0x690780
pop esi
pop ebx
push edi
call fcn.006b5369
add esp, 4
mov eax, 1
pop edi
mov esp, ebp
pop ebp
ret 4
cmp ecx, 0x5ff00
je 0x690810
cmp ecx, 0x6ff00
je 0x690810
cmp ecx, 0x7ff00
jne 0x6907bf
lea eax, [esi + 1]
push eax
call fcn.006b1920
mov ebx, eax
add esp, 4
mov dword [ebp - 0xc], ebx
test ebx, ebx
je 0x6907bf
push edi
push 1
push esi
push ebx
call fcn.006b6232
mov byte [esi + ebx], 0
add esp, 0x10
mov eax, dword [ebp - 4]
and eax, 0xffff00
cmp eax, 0x4ff00
ja 0x690880
je 0x690878
cmp eax, 0x1ff00
je 0x690870
cmp eax, 0x2ff00
je 0x690868
cmp eax, 0x3ff00
jne 0x6907bf
mov ebx, dword [ebp - 8]
add ebx, 0x1c
jmp 0x6908af
mov ebx, dword [ebp - 8]
add ebx, 0x18
jmp 0x6908af
mov ebx, dword [ebp - 8]
add ebx, 0x20
jmp 0x6908af
mov ebx, dword [ebp - 8]
add ebx, 0x24
jmp 0x6908af
cmp eax, 0x5ff00
je 0x6908a9
cmp eax, 0x6ff00
je 0x6908a1
cmp eax, 0x7ff00
jne 0x6907bf
mov ebx, dword [ebp - 8]
add ebx, 0x30
jmp 0x6908af
mov ebx, dword [ebp - 8]
add ebx, 0x2c
jmp 0x6908af
mov ebx, dword [ebp - 8]
add ebx, 0x28
mov eax, dword [ebx]
test eax, eax
je 0x69096d
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x6908c0
sub eax, edx
add eax, 2
add eax, esi
push eax
mov dword [ebp - 0x14], eax
call fcn.006b1920
add esp, 4
mov dword [ebp - 0x10], eax
test eax, eax
je 0x69095d
mov edx, dword [ebx]
mov esi, eax
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [esi], cl
lea esi, [esi + 1]
test cl, cl
jne 0x6908e5
lea edi, [eax - 1]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x6908f6
mov ax, word [0x78b370]
mov edx, dword [ebp - 0xc]
mov esi, edx
mov word [edi], ax
mov edi, edi
mov al, byte [edx]
inc edx
test al, al
jne 0x690910
mov edi, dword [ebp - 0x10]
sub edx, esi
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x690920
mov ecx, edx
mov eax, dword [ebp - 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x10]
mov byte [esi + eax - 1], 0
push dword [ebx]
call fcn.006b3261
push dword [ebp - 0xc]
call fcn.006b3261
mov edi, dword [ebp + 8]
add esp, 8
mov dword [ebx], esi
jmp 0x6907cb
push dword [ebp - 0xc]
call fcn.006b3261
add esp, 4
jmp 0x6907cb
mov eax, dword [ebp - 0xc]
mov dword [ebx], eax
jmp 0x6907cb
push edi
call fcn.006b5369
add esp, 4
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret 4