Function at 0x401970
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x958
mov eax, dword [0x41f060]
xor eax, esp
mov dword [esp + 0x954], eax
push 0x4c494e4b
call fcn.004018d0
add esp, 4
test eax, eax
je 0x4019af
mov eax, 1
mov ecx, dword [esp + 0x954]
xor ecx, esp
call fcn.0040a476
add esp, 0x958
ret
mov eax, dword [0x426498]
push ebx
push esi
push eax
push 4
lea ecx, [esp + 0x10]
push 1
push ecx
call fcn.0040a459
mov edx, dword [0x426498]
mov eax, dword [esp + 0x18]
push edx
push eax
lea ecx, [esp + 0x28]
push 1
push ecx
call fcn.0040a459
mov edx, dword [esp + 0x28]
xor ebx, ebx
add esp, 0x20
mov byte [esp + edx + 0x10], bl
cmp dword [0x426a64], ebx
je 0x401a13
cmp byte [0x427194], bl
je 0x401a13
lea eax, [esp + 0x10]
push eax
push 0x427194
push str._s_s
lea ecx, [esp + 0x24c]
push ecx
jmp 0x401a2a
lea edx, [esp + 0x10]
push edx
push 0x427090
push str._s_s
lea eax, [esp + 0x24c]
push eax
call fcn.0040a6c6
lea ecx, [esp + 0x250]
add esp, 0x10
push ecx
call fcn.004189c4
mov edx, dword [0x426498]
push edx
push 4
lea eax, [esp + 0x18]
push 1
push eax
call fcn.0040a459
add esp, 0x14
xor esi, esi
cmp dword [esp + 0xc], ebx
jle 0x401c60
mov ecx, dword [0x426498]
push ecx
push 4
lea edx, [esp + 0x10]
push 1
push edx
call fcn.0040a459
mov eax, dword [0x426498]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea edx, [esp + 0x564]
push 1
push edx
call fcn.0040a459
mov ecx, dword [0x426498]
mov eax, dword [esp + 0x28]
push ecx
push 4
lea edx, [esp + 0x30]
push 1
push edx
mov byte [esp + eax + 0x57c], bl
call fcn.0040a459
mov eax, dword [0x426498]
mov ecx, dword [esp + 0x38]
push eax
push ecx
lea edx, [esp + 0x110]
push 1
push edx
call fcn.0040a459
mov ecx, dword [0x426498]
mov eax, dword [esp + 0x48]
add esp, 0x40
push ecx
push 4
lea edx, [esp + 0x10]
push 1
push edx
mov byte [esp + eax + 0xe8], bl
call fcn.0040a459
mov eax, dword [0x426498]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea edx, [esp + 0x460]
push 1
push edx
call fcn.0040a459
mov ecx, dword [0x426498]
mov eax, dword [esp + 0x28]
push ecx
push 4
lea edx, [esp + 0x30]
push 1
push edx
mov byte [esp + eax + 0x478], bl
call fcn.0040a459
mov eax, dword [0x426498]
mov ecx, dword [esp + 0x38]
push eax
push ecx
lea edx, [esp + 0x174]
push 1
push edx
call fcn.0040a459
mov ecx, dword [0x426498]
mov eax, dword [esp + 0x48]
add esp, 0x40
push ecx
push 4
lea edx, [esp + 0x10]
push 1
push edx
mov byte [esp + eax + 0x14c], bl
call fcn.0040a459
mov eax, dword [0x426498]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea edx, [esp + 0x8c]
push 1
push edx
call fcn.0040a459
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0x264]
push edx
mov byte [esp + eax + 0x9c], bl
lea eax, [esp + 0x880]
push str._s_s.lnk
push eax
call fcn.0040a6c6
lea ecx, [esp + 0x57c]
push ecx
push 0x426958
lea edx, [esp + 0x78c]
push str._s_s
push edx
call fcn.0040a6c6
add esp, 0x40
lea eax, [esp + 0x448]
push eax
push 0x426958
lea ecx, [esp + 0x658]
push str._s_s
push ecx
call fcn.0040a6c6
add esp, 0x10
cmp byte [esp + 0x13c], bl
je 0x401c1e
lea edx, [esp + 0x13c]
push edx
push 0x426958
lea eax, [esp + 0x34c]
push str._s_s
push eax
call fcn.0040a6c6
add esp, 0x10
jmp 0x401c25
mov byte [esp + 0x344], bl
lea ecx, [esp + 0x344]
push ecx
lea edx, [esp + 0x654]
push edx
lea eax, [esp + 0xe0]
push eax
lea ecx, [esp + 0x760]
push ecx
lea edx, [esp + 0x868]
push edx
call fcn.00401700
inc esi
add esp, 0x14
cmp esi, dword [esp + 0xc]
jl 0x401a63
mov ecx, dword [esp + 0x95c]
pop esi
pop ebx
xor ecx, esp
xor eax, eax
call fcn.0040a476
add esp, 0x958
ret