Function at 0x40fc6c
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x5c
mov eax, dword [0x42e440]
xor eax, esp
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x60]
push ebx
push ebp
push esi
push edi
mov ebx, ecx
mov dword [esp + 0x1c], eax
push 8
pop ebp
xor eax, eax
mov dword [esp + 0x20], edx
mov ecx, ebp
lea edi, [esp + 0x44]
rep stosd dword es:[edi], eax
xor esi, esi
lea edi, [esp + 0x24]
mov dword [esp + 0x18], esi
mov ecx, ebp
rep stosd dword es:[edi], eax
test ebx, ebx
jne 0x40fcb5
push 0x42b154
jmp 0x40fee1
push 2
push esi
push esi
push ebx
call fcn.004184ec
add esp, 0x10
test eax, eax
je 0x40fcd0
push 0x42b17c
jmp 0x40fee1
push ebx
call fcn.00418050
pop ecx
cmp edx, esi
jl 0x40fcee
jg 0x40fce4
cmp eax, 0x1f400000
jbe 0x40fcee
push 0x42b1b0
jmp 0x40fee1
push esi
push esi
push 0x10
push ebx
call fcn.004184ec
add esp, 0x10
test eax, eax
je 0x40fd09
push 0x42b1e0
jmp 0x40fee1
push ebx
push 1
lea eax, [esp + 0x18]
push 4
push eax
call fcn.004160dd
add esp, 0x10
cmp eax, 1
je 0x40fd2a
push 0x42b210
jmp 0x40fee1
push dword [esp + 0x10]
call dword [0x42f540]
mov dword [esp + 0x10], eax
cmp eax, ebp
jbe 0x40fd58
push ebp
push 0x42b240
call fcn.00416885
add eax, 0x40
push eax
call fcn.004177c7
add esp, 0xc
jmp 0x40ff0b
mov edi, esi
test eax, eax
je 0x40fdfe
push ebx
push 1
lea ebp, [esp + 0x4c]
lea ebp, [ebp + edi*4]
push 4
push ebp
call fcn.004160dd
add esp, 0x10
cmp eax, 1
jne 0x40fed1
push dword [ebp]
call dword [0x42f540]
push ebx
push 1
mov dword [ebp], eax
lea eax, [esp + 0x1c]
push 4
push eax
call fcn.004160dd
add esp, 0x10
cmp eax, 1
jne 0x40feca
push dword [esp + 0x14]
call dword [0x42f540]
mov ebp, eax
mov dword [esp + 0x14], ebp
cmp ebp, 0x800
ja 0x40fec3
push ebp
call fcn.00415076
mov dword [esp + edi*4 + 0x28], eax
pop ecx
test eax, eax
je 0x40febc
push ebx
push 1
push ebp
push eax
call fcn.004160dd
add esp, 0x10
cmp eax, 1
jne 0x40fe8e
cmp dword [esp + edi*4 + 0x44], eax
jne 0x40fe5c
inc edi
cmp edi, dword [esp + 0x10]
jb 0x40fd62
push ebx
call fcn.00418050
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x1c]
pop ecx
push eax
push dword [esp + 0x14]
lea eax, [esp + 0x2c]
mov ecx, ebx
push eax
push dword [esp + 0x28]
call fcn.0040ff21
mov ecx, dword [esp + 0x20]
add esp, 0x10
test ecx, ecx
je 0x40fe40
push dword [esp + esi*4 + 0x24]
call fcn.0041503e
pop ecx
mov ecx, dword [esp + 0x10]
inc esi
cmp esi, ecx
jb 0x40fe2d
mov eax, dword [esp + 0x18]
cmp eax, ecx
jne 0x40fed8
cmp eax, 1
jne 0x40fed8
xor eax, eax
jmp 0x40ff0e
push 0x42b35c
call fcn.00416885
add eax, 0x40
push eax
call fcn.004177c7
pop ecx
pop ecx
cmp dword [esp + 0x10], esi
jbe 0x40ff0b
push dword [esp + esi*4 + 0x24]
call fcn.0041503e
inc esi
pop ecx
cmp esi, dword [esp + 0x10]
jb 0x40fe7b
jmp 0x40ff0b
push 0x42b330
call fcn.00416885
add eax, 0x40
push eax
call fcn.004177c7
pop ecx
pop ecx
cmp dword [esp + 0x10], esi
jbe 0x40ff0b
push dword [esp + esi*4 + 0x24]
call fcn.0041503e
inc esi
pop ecx
cmp esi, dword [esp + 0x10]
jb 0x40fea9
jmp 0x40ff0b
push 0x42b300
jmp 0x40fee1
push 0x42b2cc
jmp 0x40fee1
push 0x42b2a0
jmp 0x40fee1
push 0x42b270
jmp 0x40fee1
test eax, eax
jne 0x40fef3
push 0x42b384
call fcn.00416885
add eax, 0x40
push eax
call fcn.004177c7
pop ecx
pop ecx
jmp 0x40ff0b
push ecx
push eax
push 0x42b3b0
call fcn.00416885
add eax, 0x40
push eax
call fcn.004177c7
add esp, 0x10
or eax, 0xffffffff
mov ecx, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00414f81
add esp, 0x5c
ret