Function at 0x41284d
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf4
mov eax, dword [0x44c5a0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, ecx
mov ecx, eax
mov dword [ebp - 0xec], eax
call fcn.00413196
xor ebx, ebx
xor eax, eax
push 0xf
mov word [ebp - 0x40], ax
pop eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xe8], ebx
mov dword [ebp - 0xe4], ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], ebx
mov byte [ebp - 0x28], bl
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x58], bl
mov dword [ebp - 0xcc], ebx
cmp dword [edi + 8], ebx
jle 0x412bac
push dword [edi]
xor eax, eax
push 1
mov word [ebp - 0xb8], ax
lea eax, [ebp - 0x10]
push 0xc
push eax
mov dword [ebp - 0xa4], 7
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b91
mov eax, dword [ebp - 0x10]
push ebx
dec eax
push eax
lea ecx, [ebp - 0x40]
call fcn.00403668
push dword [edi]
cmp dword [ebp - 0x2c], 8
push 1
push dword [ebp - 0x10]
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b91
push dword [ebp - 8]
lea ecx, [ebp - 0xdc]
call fcn.00413b58
push dword [edi]
mov esi, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xd8]
sub eax, esi
push 1
and eax, 0xfffffffc
push eax
push esi
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b91
xor eax, eax
cmp dword [ebp - 8], eax
jle 0x41298d
add ebx, dword [esi + eax*4]
inc eax
cmp eax, dword [ebp - 8]
jl 0x412984
push ebx
lea ecx, [ebp - 0xe8]
call fcn.00413bc6
push dword [edi]
mov eax, ebx
push 1
shl eax, 3
push eax
push dword [ebp - 0xe8]
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b8f
xor eax, eax
mov ebx, eax
mov dword [ebp - 0xd0], ebx
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 8], eax
jle 0x412b16
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
call fcn.00410aa8
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xe8]
lea eax, [eax + ebx*8]
xor ebx, ebx
mov dword [ebp - 0xbc], eax
cmp dword [esi], ebx
jle 0x412acf
mov eax, dword [eax + ebx*8]
push 0
dec eax
push eax
lea ecx, [ebp - 0x28]
call fcn.0040c821
push dword [edi]
mov ecx, dword [ebp - 0xbc]
cmp dword [ebp - 0x14], 0x10
push 1
push dword [ecx + ebx*8]
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b84
mov eax, dword [ebp - 0xbc]
push 0
mov eax, dword [eax + ebx*8 + 4]
dec eax
push eax
lea ecx, [ebp - 0x58]
call fcn.0040c821
push dword [edi]
mov ecx, dword [ebp - 0xbc]
cmp dword [ebp - 0x44], 0x10
push 1
push dword [ecx + ebx*8 + 4]
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push eax
call fcn.00424e71
add esp, 0x10
cmp eax, 1
jne 0x412b84
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00411cb5
add esp, 0xc
lea ecx, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.00411c54
lea ecx, [ebp - 0x70]
call fcn.00401180
lea ecx, [ebp - 0x88]
call fcn.00401180
mov eax, dword [ebp - 0xbc]
inc ebx
cmp ebx, dword [esi]
jl 0x412a09
mov ebx, dword [ebp - 0xd0]
add ebx, dword [esi]
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0xd0], ebx
call fcn.00413af8
lea ecx, [ebp - 0xc4]
call fcn.00410454
mov eax, dword [ebp - 0xc8]
inc eax
add esi, 4
cmp eax, dword [ebp - 8]
push 0
mov dword [ebp - 0xc8], eax
pop eax
jl 0x4129d3
cmp byte [ebp - 0xc], 0
push 0xffffffffffffffff
push eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0xb8]
setne byte [ebp - 0x94]
call fcn.004021c0
mov ecx, dword [ebp - 0xec]
lea eax, [ebp - 0xb8]
push eax
call fcn.00417c6c
lea ecx, [ebp - 0xa0]
call fcn.00410bf0
push 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.0040206d
mov ebx, dword [ebp - 0xcc]
inc ebx
mov dword [ebp - 0xcc], ebx
cmp ebx, dword [edi + 8]
jge 0x412bac
xor ebx, ebx
jmp 0x4128cf
lea ecx, [ebp - 0xc4]
call fcn.00410454
xor ebx, ebx
lea ecx, [ebp - 0xa0]
call fcn.00410bf0
push ebx
push 1
lea ecx, [ebp - 0xb8]
call fcn.0040206d
jmp 0x412bae
mov bl, 1
lea ecx, [ebp - 0x58]
call fcn.00401180
lea ecx, [ebp - 0x28]
call fcn.00401180
lea ecx, [ebp - 0xe8]
call fcn.004035e9
lea ecx, [ebp - 0xdc]
call fcn.004035e9
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040206d
mov ecx, dword [ebp - 4]
pop edi
pop esi
mov al, bl
xor ecx, ebp
pop ebx
call fcn.00421734
leave
ret 4