Function at 0x58e2c0
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x3c
mov eax, dword [0xd41044]
mov dword [esp + 0x2c], eax
xor eax, eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 9
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xc], 0xf
mov dword [esp + 8], 8
mov dword [esp], eax
call 0x58e020
mov edx, dword [esp + 0x2c]
sub edx, dword [0xd41044]
jne 0x58e012
add esp, 0x3c
ret
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov eax, dword [0xd41044]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x64]
mov esi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.005a1b60
or ah, 0x20
mov dword [esp + 0x1c], eax
test ebx, ebx
je 0x58e157
sub edi, 1
cmp edi, 8
ja 0x58e150
cmp ebp, 8
jne 0x58e150
cmp esi, 0xf
je 0x58e092
mov dword [esp], esi
call fcn.00402730
cmp eax, 0xf
jne 0x58e150
mov eax, 1
xor edx, edx
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x30], eax
mov eax, dword [ebx + 0x20]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x34], edx
mov dword [ebx + 8], 0
mov dword [ebx + 0x14], 0
test eax, eax
je 0x58e120
mov edx, dword [ebx + 0x24]
test edx, edx
je 0x58e133
mov dword [esp + 8], 0x4df40
mov dword [esp + 4], 1
mov edx, dword [ebx + 0x28]
mov dword [esp], edx
call eax
test eax, eax
je 0x58e13c
mov ecx, dword [esp + 0x1c]
mov dword [ebx + 0x1c], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.005a2d60
test eax, eax
jne 0x58e143
mov edx, dword [esp + 0x2c]
sub edx, dword [0xd41044]
jne 0x58e15e
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 0x24]
mov dword [ebx + 0x20], 0x58d650
mov eax, 0x58d650
test edx, edx
jne 0x58e0c9
mov dword [ebx + 0x24], 0x58d690
jmp 0x58e0c9
mov eax, 0xfffffffc
jmp 0x58e10c
mov dword [esp], ebx
call fcn.0058e770
lea esi, [esi]
nop
mov eax, 0xffffd8f0
jmp 0x58e10c
mov eax, 0xfffffffe
jmp 0x58e10c
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x2c
mov edx, dword [0xd41044]
mov dword [esp + 0x1c], edx
xor edx, edx
mov eax, dword [esp + 0x30]
test eax, eax
je 0x58e1e0
mov edx, dword [eax + 0x1c]
test edx, edx
je 0x58e1e0
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x58e1e0
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x58e1e0
mov dword [eax + 0x14], 0
mov dword [eax + 8], 0
mov eax, dword [edx + 8]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call fcn.005a2d60
xor eax, eax
mov edx, dword [esp + 0x1c]
sub edx, dword [0xd41044]
jne 0x58e1e7
add esp, 0x2c
ret
mov eax, 0xfffffffe
jmp 0x58e1cb
call fcn.00401690
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0xd41044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
cmp eax, dword [0xa884a0]
je 0x58e265
cmp eax, dword [0xa884a8]
je 0x58e279
cmp eax, dword [0xa884b0]
je 0x58e280
cmp eax, dword [0xa884b8]
je 0x58e287
cmp eax, dword [0xa884c0]
je 0x58e28e
cmp eax, dword [0xa884c8]
je 0x58e295
cmp eax, dword [0xa884d0]
je 0x58e29c
cmp eax, dword [0xa884d8]
je 0x58e2a3
cmp eax, dword [0xa884e0]
je 0x58e2aa
cmp dword [0xa884e8], eax
je 0x58e2b1
mov eax, dword [esp + 0xc]
sub eax, dword [0xd41044]
jne 0x58e2b8
mov eax, edx
add esp, 0x1c
ret
xor eax, eax
lea esi, [esi]
nop
mov edx, dword [eax*8 + 0xa884a4]
jmp 0x58e253
mov eax, 1
jmp 0x58e270
mov eax, 2
jmp 0x58e270
mov eax, 3
jmp 0x58e270
mov eax, 4
jmp 0x58e270
mov eax, 5
jmp 0x58e270
mov eax, 6
jmp 0x58e270
mov eax, 7
jmp 0x58e270
mov eax, 8
jmp 0x58e270
mov eax, 9
jmp 0x58e270
call fcn.00401690
nop
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov eax, dword [esp + 0x5c]
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0x60]
mov eax, dword [0xd41044]
mov dword [esp + 0x2c], eax
xor eax, eax
mov dword [esp], esi
call dword [0x6c22e8]
test ebx, ebx
js 0x58e358
mov ecx, eax
mov eax, edx
mov edx, ebp
xor eax, ebx
xor edx, ecx
or edx, eax
je 0x58e322
mov dword [esp + 0xc], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp], esi
call dword [0x6c22ec]
test eax, eax
jne 0x58e358
mov eax, dword [esp + 0x2c]
sub eax, dword [0xd41044]
jne 0x58e36e
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], edi
mov dword [esp + 0x54], 1
mov dword [esp + 0x50], eax
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.0040f8d0
mov eax, dword [esp + 0x2c]
sub eax, dword [0xd41044]
jne 0x58e36e
add esp, 0x3c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0xd41044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
sub edx, dword [0xd41044]
jne 0x58e3ab
mov dword [esp + 0x20], eax
add esp, 0x1c
jmp 0x5a1b30
call fcn.00401690
sub esp, 0x1c
mov edx, dword [0xd41044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
sub edx, dword [0xd41044]
jne 0x5a1b5b
mov dword [esp + 0x20], eax
add esp, 0x1c
jmp sub.msvcrt.dll_free
call fcn.00401690