Function at 0x406a6d
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 0x406ab6
push 0x42b154
jmp 0x406ce2
push 2
push esi
push esi
push ebx
call fcn.0040f2ed
add esp, 0x10
test eax, eax
je 0x406ad1
push 0x42b17c
jmp 0x406ce2
push ebx
call fcn.0040ee51
pop ecx
cmp edx, esi
jl 0x406aef
jg 0x406ae5
cmp eax, 0x1f400000
jbe 0x406aef
push str.AS
jmp 0x406ce2
push esi
push esi
push 0x10
push ebx
call fcn.0040f2ed
add esp, 0x10
test eax, eax
je 0x406b0a
push 0x42b1e0
jmp 0x406ce2
push ebx
push 1
lea eax, [esp + 0x18]
push 4
push eax
call fcn.0040cede
add esp, 0x10
cmp eax, 1
je 0x406b2b
push 0x42b210
jmp 0x406ce2
push dword [esp + 0x10]
call dword [0x42f540]
mov dword [esp + 0x10], eax
cmp eax, ebp
jbe 0x406b59
push ebp
push 0x42b240
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
add esp, 0xc
jmp 0x406d0c
mov edi, esi
test eax, eax
je 0x406bff
push ebx
push 1
lea ebp, [esp + 0x4c]
lea ebp, [ebp + edi*4]
push 4
push ebp
call fcn.0040cede
add esp, 0x10
cmp eax, 1
jne 0x406cd2
push dword [ebp]
call dword [0x42f540]
push ebx
push 1
mov dword [ebp], eax
lea eax, [esp + 0x1c]
push 4
push eax
call fcn.0040cede
add esp, 0x10
cmp eax, 1
jne 0x406ccb
push dword [esp + 0x14]
call dword [0x42f540]
mov ebp, eax
mov dword [esp + 0x14], ebp
cmp ebp, 0x800
ja 0x406cc4
push ebp
call fcn.0040be77
mov dword [esp + edi*4 + 0x28], eax
pop ecx
test eax, eax
je 0x406cbd
push ebx
push 1
push ebp
push eax
call fcn.0040cede
add esp, 0x10
cmp eax, 1
jne 0x406c8f
cmp dword [esp + edi*4 + 0x44], eax
jne 0x406c5d
inc edi
cmp edi, dword [esp + 0x10]
jb 0x406b63
push ebx
call fcn.0040ee51
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.00406d22
mov ecx, dword [esp + 0x20]
add esp, 0x10
test ecx, ecx
je 0x406c41
push dword [esp + esi*4 + 0x24]
call fcn.0040be3f
pop ecx
mov ecx, dword [esp + 0x10]
inc esi
cmp esi, ecx
jb 0x406c2e
mov eax, dword [esp + 0x18]
cmp eax, ecx
jne 0x406cd9
cmp eax, 1
jne 0x406cd9
xor eax, eax
jmp 0x406d0f
push 0x42b35c
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
pop ecx
pop ecx
cmp dword [esp + 0x10], esi
jbe 0x406d0c
push dword [esp + esi*4 + 0x24]
call fcn.0040be3f
inc esi
pop ecx
cmp esi, dword [esp + 0x10]
jb 0x406c7c
jmp 0x406d0c
push 0x42b330
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
pop ecx
pop ecx
cmp dword [esp + 0x10], esi
jbe 0x406d0c
push dword [esp + esi*4 + 0x24]
call fcn.0040be3f
inc esi
pop ecx
cmp esi, dword [esp + 0x10]
jb 0x406caa
jmp 0x406d0c
push 0x42b300
jmp 0x406ce2
push 0x42b2cc
jmp 0x406ce2
push 0x42b2a0
jmp 0x406ce2
push 0x42b270
jmp 0x406ce2
test eax, eax
jne 0x406cf4
push 0x42b384
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
pop ecx
pop ecx
jmp 0x406d0c
push ecx
push eax
push 0x42b3b0
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
add esp, 0x10
or eax, 0xffffffff
mov ecx, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0040bd82
add esp, 0x5c
ret