Function at 0x5d38c0
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov esi, ecx
push 0x8000
push str.DATATILEEDGE.DAT
mov dword [esp + 0x2c], esi
call fcn.005fbe12
mov edi, eax
add esp, 8
cmp edi, 0xffffffff
je 0x5d397d
push 2
push 0
push edi
call fcn.005fc0f3
push edi
call fcn.005fc0e2
mov ebx, eax
push ebx
push 1
call fcn.005fab6a
push 0
push 0
push edi
mov dword [esi + 0x198], eax
call fcn.005fc0f3
mov eax, dword [esi + 0x198]
push ebx
push eax
push edi
call fcn.005fbc1c
push edi
call fcn.005fbb69
mov edx, dword [esi + 0x198]
add esp, 0x34
xor eax, eax
mov ecx, dword [esi + 0x198]
add ecx, eax
add eax, 4
mov ebx, dword [ecx]
add ebx, edx
cmp eax, 0x44
mov dword [ecx], ebx
jl 0x5d3933
xor ebx, ebx
mov eax, dword [esi + 0x198]
mov edi, 0x2f
mov eax, dword [ebx + eax]
mov ecx, dword [eax]
test ecx, ecx
je 0x5d3963
add ecx, edx
mov dword [eax], ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x5d396f
add ecx, edx
mov dword [eax + 4], ecx
add eax, 8
dec edi
jne 0x5d3959
add ebx, 4
cmp ebx, 0x44
jl 0x5d394b
push 0x8000
push str.DATABLKEDGE.DAT
call fcn.005fbe12
mov edi, eax
add esp, 8
cmp edi, 0xffffffff
je 0x5d3a21
push 2
push 0
push edi
call fcn.005fc0f3
push edi
call fcn.005fc0e2
mov ebx, eax
push ebx
push 1
call fcn.005fab6a
push 0
push 0
push edi
mov dword [esi + 0x19c], eax
call fcn.005fc0f3
mov ecx, dword [esi + 0x19c]
push ebx
push ecx
push edi
call fcn.005fbc1c
push edi
call fcn.005fbb69
mov edx, dword [esi + 0x19c]
add esp, 0x34
xor eax, eax
mov ecx, dword [esi + 0x19c]
add ecx, eax
add eax, 4
mov ebx, dword [ecx]
add ebx, edx
cmp eax, 0x44
mov dword [ecx], ebx
jl 0x5d39e3
xor ebx, ebx
mov eax, dword [esi + 0x19c]
mov edi, 0x2f
mov eax, dword [ebx + eax]
mov ecx, dword [eax]
test ecx, ecx
je 0x5d3a13
add ecx, edx
mov dword [eax], ecx
add eax, 4
dec edi
jne 0x5d3a09
add ebx, 4
cmp ebx, 0x44
jl 0x5d39fb
lea edi, [esi + 0x1b4]
mov ecx, 0x40
or eax, 0xffffffff
rep stosd dword es:[edi], eax
xor eax, eax
mov dword [esp + 0x18], eax
mov ebp, 1
mov ecx, eax
and ecx, ebp
mov edx, eax
dec cl
neg cl
sbb ecx, ecx
and edx, 2
inc ecx
mov dword [esp + 0x10], ecx
xor ecx, ecx
cmp dl, 2
mov edx, eax
sete cl
mov dword [esp + 0x14], ecx
and edx, 4
xor ecx, ecx
cmp dl, 4
sete cl
mov edx, ecx
mov ecx, eax
and ecx, 8
xor ebx, ebx
cmp cl, 8
mov ecx, eax
sete bl
mov edi, ebx
and ecx, 0x10
xor ebx, ebx
cmp cl, 0x10
sete bl
mov ecx, eax
mov dword [esp + 0x20], ebx
and ecx, 0x20
xor ebx, ebx
cmp cl, 0x20
mov ecx, eax
sete bl
mov dword [esp + 0x1c], ebx
and ecx, 0x40
xor ebx, ebx
cmp cl, 0x40
sete bl
mov ecx, ebx
mov ebx, eax
and ebx, 0x80
cmp bl, 0x80
jne 0x5d3ac6
mov ebx, dword [esp + 0x10]
test ebx, ebx
jne 0x5d3ac4
test edi, edi
je 0x5d3ac6
xor ebp, ebp
test ecx, ecx
je 0x5d3ad4
test edx, edx
jne 0x5d3ad2
test edi, edi
je 0x5d3ad4
xor ebp, ebp
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x5d3aea
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x5d3ae8
test edx, edx
je 0x5d3aea
xor ebp, ebp
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x5d3b02
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x5d3b16
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x5d3b16
test ebp, ebp
je 0x5d3b16
mov ecx, dword [esp + 0x18]
mov byte [esi + eax + 0x1b4], cl
inc ecx
mov dword [esp + 0x18], ecx
inc eax
cmp eax, 0x100
jl 0x5d3a37
xor eax, eax
cmp byte [esi + eax + 0x1b4], 0xff
jne 0x5d3bbb
mov ecx, eax
mov esi, eax
and ecx, 0x10
mov edx, eax
mov dword [esp + 0x14], ecx
mov ecx, eax
and ecx, 0x20
mov edi, eax
mov ebx, eax
mov dword [esp + 0x18], ecx
mov ebp, eax
mov ecx, eax
and esi, 1
and edx, 2
and edi, 4
and ebx, 8
and ebp, 0x40
and ecx, 0x80
mov dword [esp + 0x20], ebp
je 0x5d3b6f
xor ebx, ebx
xor esi, esi
test ebp, ebp
je 0x5d3b77
xor ebx, ebx
xor edi, edi
mov ebp, dword [esp + 0x18]
test ebp, ebp
je 0x5d3b83
xor edi, edi
xor edx, edx
mov ebp, dword [esp + 0x14]
test ebp, ebp
je 0x5d3b8f
xor edx, edx
xor esi, esi
mov ebp, dword [esp + 0x20]
or ecx, ebp
mov ebp, dword [esp + 0x18]
or ecx, ebp
mov ebp, dword [esp + 0x14]
or ecx, ebp
or ecx, ebx
or ecx, edi
or ecx, edx
or ecx, esi
mov esi, dword [esp + 0x24]
mov dl, byte [ecx + esi + 0x1b4]
mov byte [esi + eax + 0x1b4], dl
inc eax
cmp eax, 0x100
jl 0x5d3b24
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret