Function at 0x58cfe0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4b4
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x10], esi
call fcn.00589d80
mov cl, byte [eax + 0x48]
test cl, cl
je 0x58d342
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x58d342
cmp byte [ebx], 0
je 0x58d342
cmp dword [esi + 0x1c], 0xffffffff
jne 0x58d342
call fcn.00589d80
mov ecx, dword [eax + 0x4c]
test ecx, ecx
mov edx, 0x676a6f69
je 0x58d03e
cmp dword [ecx + 8], edx
jne 0x58d03e
mov eax, dword [ecx + 0x20]
jmp 0x58d057
lea ecx, [eax + 0x3c]
mov eax, dword [ecx]
cmp eax, ecx
je 0x58d060
cmp dword [eax + 8], edx
je 0x58d054
mov eax, dword [eax]
cmp eax, ecx
jne 0x58d047
jmp 0x58d060
mov eax, dword [eax + 0x20]
cmp eax, 0xffffffff
jne 0x58d342
call fcn.00589d80
mov ecx, dword [eax + 0x4c]
test ecx, ecx
mov edx, 0x67637265
je 0x58d07b
cmp dword [ecx + 8], edx
jne 0x58d07b
mov eax, dword [ecx + 0x20]
jmp 0x58d094
lea ecx, [eax + 0x3c]
mov eax, dword [ecx]
cmp eax, ecx
je 0x58d09d
cmp dword [eax + 8], edx
je 0x58d091
mov eax, dword [eax]
cmp eax, ecx
jne 0x58d084
jmp 0x58d09d
mov eax, dword [eax + 0x20]
cmp eax, 0xffffffff
jne 0x58d342
xor eax, eax
mov byte [esp + 0x14], 0
mov ecx, 8
lea edi, [esp + 0x15]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [0x86a618]
mov esi, eax
inc eax
push ebx
push 0x63
mov dword [0x86a618], eax
call fcn.0043c220
add esp, 4
push eax
push esi
lea eax, [esp + 0x20]
push str._d_02d._s
push eax
call fcn.00440120
mov byte [esp + 0xd4], 0
xor eax, eax
mov ecx, 0xff
lea edi, [esp + 0xd5]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x28]
push ecx
push str.NAME
stosw word es:[edi], ax
lea edx, [esp + 0xdc]
push 0x400
push edx
stosb byte es:[edi], al
call fcn.007417a0
mov esi, dword [ebp + 0xc]
movzx eax, byte [esi]
push eax
push str.MAXSIZE
lea ecx, [esp + 0xec]
push 0x400
push ecx
call fcn.007413e0
movzx edx, byte [esi + 1]
push edx
push str.MINSIZE
lea eax, [esp + 0xfc]
push 0x400
push eax
call fcn.007413e0
mov al, byte [esi + 0x1a]
mov ebx, 1
add esp, 0x44
xor ecx, ecx
cmp al, bl
jne 0x58d15f
mov ecx, ebx
cmp byte [esi + 0x19], bl
jne 0x58d167
or ecx, 2
mov eax, dword [esi + 8]
test eax, eax
jne 0x58d176
or ecx, 0x4000000
jmp 0x58d1c6
cmp eax, ebx
jne 0x58d182
or ecx, 0x8000000
jmp 0x58d1c6
cmp eax, 2
jne 0x58d18f
or ecx, 0x10000000
jmp 0x58d1c6
cmp eax, 3
jne 0x58d19c
or ecx, 0x20000000
jmp 0x58d1c6
cmp eax, 5
je 0x58d1c0
cmp eax, 0xa
je 0x58d1c0
cmp eax, 4
jne 0x58d1b3
or ecx, 0x80000000
jmp 0x58d1c6
cmp eax, 8
jne 0x58d1c6
or ecx, 0x2000000
jmp 0x58d1c6
or ecx, 0x40000000
mov al, byte [esi + 0xc]
test al, al
je 0x58d1d5
or ecx, 0xf0
jmp 0x58d1fd
mov al, byte [ebp + 0x10]
test al, al
jne 0x58d1e1
or ecx, 0x10
jmp 0x58d1fd
cmp al, bl
jne 0x58d1ea
or ecx, 0x20
jmp 0x58d1fd
cmp al, 2
jne 0x58d1f3
or ecx, 0x40
jmp 0x58d1fd
cmp al, 3
jne 0x58d1fd
or ecx, 0x80
cmp byte [esi + 0x48], bl
jne 0x58d208
or ecx, 0x100
push ecx
push str.CUSTFLAGS
lea ecx, [esp + 0xc8]
push 0x400
push ecx
call fcn.007413e0
mov cl, byte [esi + 0x18]
add esp, 0x10
xor eax, eax
cmp cl, bl
jne 0x58d231
mov eax, 0x40000
push eax
push str.SYSFLAGS
lea edx, [esp + 0xc8]
push 0x400
push edx
call fcn.007413e0
mov al, byte [esi + 0x1b]
add esp, 0x10
cmp al, bl
jne 0x58d278
mov cl, byte [esi + 0x1c]
test cl, cl
lea eax, [esi + 0x1c]
je 0x58d278
push eax
push str.PASS
lea eax, [esp + 0xc8]
push 0x400
push eax
call fcn.007417a0
add esp, 0x10
mov edx, dword [esi + 0x3c]
xor eax, eax
mov byte [esp + 0x38], 0
mov ecx, 0x20
lea edi, [esp + 0x39]
rep stosd dword es:[edi], eax
movzx ecx, word [esi + 0x3a]
stosw word es:[edi], ax
push ecx
stosb byte es:[edi], al
movzx eax, word [esi + 0x38]
push edx
push eax
push str.TRACK_d_DIR_d_LAPS_d
lea ecx, [esp + 0x48]
push 0x84
push ecx
call fcn.00741c70
mov eax, dword [esi + 8]
add esp, 0x18
cmp eax, 8
jne 0x58d2ed
mov edx, dword [esi + 0x10]
push edx
push 0x7a15c0
lea eax, [esp + 0x40]
push 0x84
push eax
call fcn.007413e0
mov ecx, dword [esi + 0x14]
push ecx
push 0x7a15bc
lea edx, [esp + 0x50]
push 0x84
push edx
call fcn.007413e0
add esp, 0x20
lea eax, [esp + 0x38]
push eax
push 0x7a1668
lea ecx, [esp + 0xc8]
push 0x400
push ecx
call fcn.007417a0
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x20]
add esp, 0x10
push 0
push edx
push eax
push ecx
push 0x58ad10
lea edx, [esp + 0xd4]
push edx
push 0x67637265
call fcn.00589d80
mov ecx, eax
call fcn.00586640
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret 0x14