Function at 0x446692
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x400
mov eax, 0x456f74
cmp dword [0x45f994], 0
push esi
mov ecx, dword [sym.imp.MSVCRT40.dll__fsopen]
push edi
push 0x20
jne 0x4466b5
mov eax, 0x456f28
push eax
mov eax, dword [0x45c4d0]
push eax
call ecx
add esp, 0xc
mov dword [0x466490], eax
test eax, eax
jne 0x4466e8
mov eax, dword [0x45c4d0]
mov edx, 0x158
push eax
mov ecx, 0x53
call fcn.004472b0
pop edi
pop esi
add esp, 0x400
ret
mov eax, dword [0x466490]
mov esi, dword [sym.imp.MSVCRT40.dll_fread]
push eax
push 0x68
push 1
push str.VCPCH0
call esi
add esp, 0x10
mov eax, str.VCPCH0
mov ecx, 0x456f20
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x44674a
or dl, dl
je 0x446728
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x44674a
add eax, 2
add ecx, 2
or dl, dl
jne 0x44670c
xor eax, eax
test eax, eax
je 0x446751
mov eax, dword [0x45c4d0]
push eax
push 0x354
call fcn.004473a7
add esp, 8
pop edi
pop esi
add esp, 0x400
ret
sbb eax, eax
sbb eax, 0xffffffff
jmp 0x44672a
cmp dword [0x45c70c], 0x10157885
jne 0x446a85
test byte [0x45c764], 2
je 0x44679a
mov eax, 0x45c714
mov ecx, str.Feb_20_199621:05:11
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4467c2
or dl, dl
je 0x446790
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4467c2
add eax, 2
add ecx, 2
or dl, dl
jne 0x446774
xor eax, eax
test eax, eax
jne 0x446a85
cmp dword [0x45c710], 0xb146808
je 0x4467c9
mov eax, dword [0x45c4d0]
push eax
push 0x355
call fcn.004473a7
add esp, 8
pop edi
pop esi
add esp, 0x400
ret
sbb eax, eax
sbb eax, 0xffffffff
jmp 0x446792
cmp dword [0x45c74c], 0
je 0x4467f7
test byte [0x45c764], 1
jne 0x4467f7
mov eax, dword [0x45c4d0]
push eax
push 0x354
call fcn.004473a7
add esp, 8
pop edi
pop esi
add esp, 0x400
ret
mov eax, dword [0x466490]
push eax
push 0x408
push 1
push 0x468d50
call esi
add esp, 0x10
xor ecx, ecx
call fcn.0044645b
test eax, eax
je 0x446a98
cmp dword [0x45c178], 0
jne 0x446833
cmp dword [0x45c494], 0
jne 0x4468c3
lea eax, [esp + 0x308]
lea ecx, [esp + 0x108]
push eax
mov esi, dword [sym.imp.MSVCRT40.dll__splitpath]
push ecx
push 0
push 0
push 0x45c17c
call esi
lea ecx, [esp + 0x21c]
lea eax, [esp + 0x1c]
add esp, 0x14
push ecx
push eax
push 0
push 0
push 0x468e24
call esi
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x11c]
add esp, 0x14
call fcn.00423084
test eax, eax
je 0x44689d
lea edx, [esp + 0x208]
lea ecx, [esp + 0x308]
call fcn.00423084
test eax, eax
jne 0x4468c3
push 0x468e24
push 0x456f5c
push 0x45c17c
push 0x456f5c
push 0x187
push 0x35a
call fcn.00447247
add esp, 0x18
mov eax, 0x45c27c
mov ecx, 0x468f24
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x446a53
or dl, dl
je 0x4468f1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x446a53
add eax, 2
add ecx, 2
or dl, dl
jne 0x4468cd
xor eax, eax
test eax, eax
je 0x446927
cmp dword [0x45c4e0], 0
jne 0x446927
mov edi, 0x45c27c
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x446927
push 0x195
push 0x28d
push 1
call fcn.00416761
add esp, 0xc
cmp dword [0x45f994], 0
je 0x446a64
push 0
mov eax, dword [0x466490]
mov ecx, dword [eax + 0x10]
push ecx
call dword [sym.imp.MSVCRT40.dll__futime]
add esp, 8
mov dword [0x469160], eax
test eax, eax
je 0x446970
push 0x6c7
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x55
call fcn.0044725e
cmp dword [0x45c740], 0
je 0x446a36
lea eax, [esp + 8]
push eax
push 0x45c17c
call dword [sym.imp.MSVCRT40.dll__stat]
add esp, 8
cmp eax, 0xffffffff
jne 0x446a36
call dword [sym.imp.MSVCRT40.dll__errno]
cmp dword [eax], 2
jne 0x446a36
push 0
mov eax, dword [0x45c740]
push eax
mov ecx, dword [0x466490]
push ecx
call dword [sym.imp.MSVCRT40.dll_fseek]
add esp, 0xc
mov dword [0x469160], eax
test eax, eax
je 0x4469e8
push 0x6d8
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x56
call fcn.0044725e
cmp dword [0x45c744], 0
je 0x446a01
mov ecx, 0x45c17c
mov edx, dword [0x45c744]
call fcn.00445976
cmp dword [0x45c748], 0
je 0x446a36
cmp dword [0x45c4a8], 0
je 0x446a5d
cmp byte [0x46b440], 0
jne 0x446a26
mov ecx, 0x46b440
call fcn.0041cb1b
mov ecx, 0x46b440
mov edx, dword [0x45c748]
call fcn.00445976
mov ecx, str.PchUse_before_init_main3
call fcn.00407071
call fcn.00418918
call fcn.00445c5d
pop edi
pop esi
add esp, 0x400
ret
sbb eax, eax
sbb eax, 0xffffffff
jmp 0x4468f3
mov ecx, 0x45c17c
jmp 0x446a2b
cmp dword [0x46630c], 0
je 0x446a36
mov eax, dword [0x45c4d0]
mov edx, dword [0x45c760]
push eax
mov ecx, 6
call fcn.00422ca5
jmp 0x446a36
mov eax, dword [0x45c4d0]
push eax
push 0x355
call fcn.004473a7
add esp, 8
pop edi
pop esi
add esp, 0x400
ret