Function at 0x406d22
Capabilities:
Read file on windows

Disassembly:
mov eax, 0x105c
call fcn.00419620
mov eax, dword [0x42e440]
xor eax, esp
mov dword [esp + 0x1054], eax
mov eax, dword [esp + 0x1060]
push ebx
push ebp
mov ebp, dword [esp + 0x1074]
mov ebx, ecx
push esi
mov esi, dword [esp + 0x1070]
push edi
push 8
pop ecx
mov dword [esp + 0x10], eax
lea edi, [esp + 0x20]
xor eax, eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], ebp
rep stosd dword es:[edi], eax
lea edi, [esp + 0x40]
push 8
pop ecx
rep stosd dword es:[edi], eax
test esi, esi
je 0x406f7f
test ebp, ebp
je 0x406f7f
mov esi, dword [esp + 0x1078]
xor ecx, ecx
mov dword [ebp], ecx
test esi, esi
jne 0x406da3
push 0x42b3e0
jmp 0x406f84
mov ebp, ecx
test esi, esi
je 0x406de4
lea edi, [esp + 0x20]
test edx, edx
je 0x406dd5
test edi, edi
je 0x406dd5
push edi
push ecx
push ecx
push 0x8004
push edx
mov dword [edi], ecx
call dword [0x423044]
mov edx, dword [esp + 0x18]
neg eax
sbb eax, eax
neg eax
dec eax
xor ecx, ecx
jmp 0x406dd8
or eax, 0xffffffff
test eax, eax
jne 0x406dfe
inc ebp
add edi, 4
cmp ebp, esi
jb 0x406dad
push ecx
push ecx
push ecx
push ebx
call fcn.0040f2ed
add esp, 0x10
test eax, eax
je 0x406e08
push 0x42b440
jmp 0x406f84
push 0x42b410
jmp 0x406f84
push 0x42b46c
push esi
lea eax, [esp + 0x28]
mov ecx, ebx
push eax
push 0x14
lea edx, [esp + 0x70]
call fcn.004068c5
add esp, 0x10
test eax, eax
jne 0x406f94
xor ebp, ebp
test esi, esi
je 0x406f0b
lea edi, [esp + 0x40]
push 0x42b47c
push esi
lea eax, [esp + 0x28]
mov ecx, ebx
push eax
push 4
lea edx, [esp + 0x70]
call fcn.004068c5
add esp, 0x10
test eax, eax
jne 0x406f94
push 0x42b494
push esi
lea eax, [esp + 0x28]
mov edx, edi
push eax
push 4
mov ecx, ebx
call fcn.004068c5
add esp, 0x10
test eax, eax
jne 0x406f94
push dword [edi]
call dword [0x42f540]
mov dword [edi], eax
cmp eax, 0x800
ja 0x406eb4
push 1
push 0
push eax
push ebx
call fcn.0040f2ed
add esp, 0x10
test eax, eax
jne 0x406eaa
inc ebp
add edi, 4
cmp ebp, esi
jb 0x406e39
jmp 0x406f0b
push 0x42b4d8
jmp 0x406f84
push 0x42b4a8
jmp 0x406f84
push ebx
push 0x1000
lea eax, [esp + 0x68]
push 1
push eax
call fcn.0040cede
push ebx
mov dword [esp + 0x2c], eax
call fcn.0040f2c7
add esp, 0x14
test eax, eax
jne 0x406f71
xor edi, edi
test esi, esi
je 0x406f0b
lea ebp, [esp + 0x20]
push dword [esp + 0x18]
lea edx, [esp + 0x64]
mov ecx, ebp
call fcn.004068a2
pop ecx
test eax, eax
jne 0x406f6a
inc edi
add ebp, 4
cmp edi, esi
jb 0x406eef
push ebx
call fcn.0040f2a1
pop ecx
test eax, eax
je 0x406ebe
xor edi, edi
test esi, esi
je 0x406f66
mov eax, dword [esp + 0x14]
lea ebx, [esp + 0x40]
mov ecx, dword [esp + 0x10]
lea ebp, [esp + 0x20]
sub ecx, eax
sub ebx, eax
mov dword [esp + 0x10], ecx
sub ebp, eax
push dword [ebx + eax]
lea edx, [ecx + eax]
push dword [eax]
lea ecx, [eax + ebp]
call fcn.0040674e
pop ecx
pop ecx
test eax, eax
jne 0x406f78
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
inc dword [eax]
inc edi
mov eax, dword [esp + 0x14]
add eax, 4
mov dword [esp + 0x14], eax
cmp edi, esi
jb 0x406f36
xor eax, eax
jmp 0x406f97
push 0x42b524
jmp 0x406f84
push 0x42b500
jmp 0x406f84
push 0x42b55c
jmp 0x406f84
push 0x42b074
call fcn.0040d686
add eax, 0x40
push eax
call fcn.0040e5c8
pop ecx
pop ecx
or eax, 0xffffffff
mov ecx, dword [esp + 0x1064]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0040bd82
add esp, 0x105c
ret