Function at 0x58f110
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x3c
mov eax, dword [0xd42044]
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 0x58ee70
mov edx, dword [esp + 0x2c]
sub edx, dword [0xd42044]
jne 0x58ee62
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 [0xd42044]
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.005a2420
or ah, 0x20
mov dword [esp + 0x1c], eax
test ebx, ebx
je 0x58efa7
sub edi, 1
cmp edi, 8
ja 0x58efa0
cmp ebp, 8
jne 0x58efa0
cmp esi, 0xf
je 0x58eee2
mov dword [esp], esi
call fcn.00402730
cmp eax, 0xf
jne 0x58efa0
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 0x58ef70
mov edx, dword [ebx + 0x24]
test edx, edx
je 0x58ef83
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 0x58ef8c
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.005a3620
test eax, eax
jne 0x58ef93
mov edx, dword [esp + 0x2c]
sub edx, dword [0xd42044]
jne 0x58efae
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 0x24]
mov dword [ebx + 0x20], 0x58e4a0
mov eax, 0x58e4a0
test edx, edx
jne 0x58ef19
mov dword [ebx + 0x24], 0x58e4e0
jmp 0x58ef19
mov eax, 0xfffffffc
jmp 0x58ef5c
mov dword [esp], ebx
call fcn.0058f5c0
lea esi, [esi]
nop
mov eax, 0xffffd8f0
jmp 0x58ef5c
mov eax, 0xfffffffe
jmp 0x58ef5c
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x2c
mov edx, dword [0xd42044]
mov dword [esp + 0x1c], edx
xor edx, edx
mov eax, dword [esp + 0x30]
test eax, eax
je 0x58f030
mov edx, dword [eax + 0x1c]
test edx, edx
je 0x58f030
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x58f030
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x58f030
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.005a3620
xor eax, eax
mov edx, dword [esp + 0x1c]
sub edx, dword [0xd42044]
jne 0x58f037
add esp, 0x2c
ret
mov eax, 0xfffffffe
jmp 0x58f01b
call fcn.00401690
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0xd42044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
cmp eax, dword [0xa89960]
je 0x58f0b5
cmp eax, dword [0xa89968]
je 0x58f0c9
cmp eax, dword [0xa89970]
je 0x58f0d0
cmp eax, dword [0xa89978]
je 0x58f0d7
cmp eax, dword [0xa89980]
je 0x58f0de
cmp eax, dword [0xa89988]
je 0x58f0e5
cmp eax, dword [0xa89990]
je 0x58f0ec
cmp eax, dword [0xa89998]
je 0x58f0f3
cmp eax, dword [0xa899a0]
je 0x58f0fa
cmp dword [0xa899a8], eax
je 0x58f101
mov eax, dword [esp + 0xc]
sub eax, dword [0xd42044]
jne 0x58f108
mov eax, edx
add esp, 0x1c
ret
xor eax, eax
lea esi, [esi]
nop
mov edx, dword [eax*8 + 0xa89964]
jmp 0x58f0a3
mov eax, 1
jmp 0x58f0c0
mov eax, 2
jmp 0x58f0c0
mov eax, 3
jmp 0x58f0c0
mov eax, 4
jmp 0x58f0c0
mov eax, 5
jmp 0x58f0c0
mov eax, 6
jmp 0x58f0c0
mov eax, 7
jmp 0x58f0c0
mov eax, 8
jmp 0x58f0c0
mov eax, 9
jmp 0x58f0c0
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 [0xd42044]
mov dword [esp + 0x2c], eax
xor eax, eax
mov dword [esp], esi
call dword [0x6c37a8]
test ebx, ebx
js 0x58f1a8
mov ecx, eax
mov eax, edx
mov edx, ebp
xor eax, ebx
xor edx, ecx
or edx, eax
je 0x58f172
mov dword [esp + 0xc], 0
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp], esi
call dword [0x6c37ac]
test eax, eax
jne 0x58f1a8
mov eax, dword [esp + 0x2c]
sub eax, dword [0xd42044]
jne 0x58f1be
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 [0xd42044]
jne 0x58f1be
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 [0xd42044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
sub edx, dword [0xd42044]
jne 0x58f1fb
mov dword [esp + 0x20], eax
add esp, 0x1c
jmp 0x5a23f0
call fcn.00401690
sub esp, 0x1c
mov edx, dword [0xd42044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
sub edx, dword [0xd42044]
jne 0x5a241b
mov dword [esp + 0x20], eax
add esp, 0x1c
jmp fcn.0040f8d8
call fcn.00401690