Function at 0x4c4a70
Capabilities:
Read file on windows

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x290
test eax, eax
push ebx
push ebp
push esi
push edi
mov ebp, ecx
jne 0x4c4a94
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x290
ret 4
push 0x4edc1c
push eax
call dword [sym.imp.MSVCRT.dll__wfopen]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4c4ab9
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x290
ret 4
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x9a]
mov word [esp + 0x98], 0
rep stosd dword es:[edi], eax
mov ebx, dword [sym.imp.MSVCRT.dll_fread]
push esi
stosw word es:[edi], ax
push 1
lea eax, [esp + 0x28]
push 4
push eax
call ebx
push esi
push 1
lea ecx, [esp + 0x2c]
push 4
push ecx
mov edi, eax
call ebx
add esp, 0x20
add eax, edi
je 0x4c4cf8
mov eax, dword [esp + 0x20]
cmp eax, 0x2711
jne 0x4c4b30
mov edx, dword [esp + 0x14]
push esi
push edx
lea eax, [ebp + 0x288]
push 1
push eax
call ebx
mov ecx, dword [esp + 0x24]
add esp, 0x10
cmp ecx, eax
jne 0x4c4d05
jmp 0x4c4cca
cmp eax, 0x2712
jne 0x4c4b48
mov ecx, dword [esp + 0x14]
push esi
push ecx
lea edx, [ebp + 0x29c]
push 1
push edx
jmp 0x4c4b1a
cmp eax, 0x2713
jne 0x4c4b65
push esi
mov ecx, ebp
call fcn.004c50f0
cmp eax, 0xffffffff
je 0x4c4d05
jmp 0x4c4cca
cmp eax, 0x2714
jne 0x4c4b80
push esi
push 1
lea eax, [esp + 0x24]
push 4
push eax
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x2715
je 0x4c4c2b
cmp eax, 0x2716
jne 0x4c4bac
push esi
push 0x14
lea edx, [esp + 0xa0]
push 2
push edx
call ebx
add esp, 0x10
cmp eax, 0x14
jmp 0x4c4b25
cmp eax, 0x2717
jne 0x4c4bca
push esi
push 1
lea eax, [esp + 0x1b]
push 1
push eax
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x271a
jne 0x4c4be8
push esi
push 1
lea ecx, [esp + 0x1b]
push 1
push ecx
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x2719
jne 0x4c4c06
push esi
push 1
lea edx, [esp + 0x2c]
push 0x10
push edx
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x2718
jne 0x4c4c24
push esi
push 1
lea eax, [esp + 0x2c]
push 0x10
push eax
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x271b
jne 0x4c4c42
push esi
push 1
lea ecx, [esp + 0x24]
push 4
push ecx
call ebx
add esp, 0x10
cmp eax, 1
jmp 0x4c4b25
cmp eax, 0x271c
jne 0x4c4cf1
mov ecx, 0x18
xor eax, eax
lea edi, [esp + 0x36]
mov word [esp + 0x34], 0
rep stosd dword es:[edi], eax
push esi
push 0x32
lea edx, [esp + 0x3c]
push 2
push edx
stosw word es:[edi], ax
call ebx
add esp, 0x10
cmp eax, 0x32
jne 0x4c4d05
lea eax, [esp + 0x34]
lea ecx, [ebp + 0x80]
push eax
push 0x4e33c0
push 0x32
push ecx
call dword [sym.imp.MSVCRT.dll__snwprintf]
lea edx, [esp + 0x28]
xor edi, edi
push edx
mov dword [esp + 0x2c], edi
call fcn.004af1c0
mov eax, dword [esp + 0x2c]
add esp, 0x14
cmp eax, 2
jne 0x4c4cca
call fcn.004a7080
add eax, 0x8c
push eax
lea eax, [esp + 0x38]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
jne 0x4c4d07
push esi
push 1
lea ecx, [esp + 0x28]
push 4
push ecx
call ebx
push esi
push 1
lea edx, [esp + 0x2c]
push 4
push edx
mov edi, eax
call ebx
add esp, 0x20
add eax, edi
jne 0x4c4b00
jmp 0x4c4cf8
cmp eax, 0x2af8
jne 0x4c4d05
push esi
mov ecx, ebp
call fcn.004c52b0
cmp eax, 0xffffffff
jne 0x4c4d39
xor edi, edi
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x14], edi
cmp eax, edi
mov dword [ebp + 0x18], edi
je 0x4c4d20
push eax
call fcn.0049bb1b
add esp, 4
mov dword [ebp + 0x10], edi
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x290
ret 4
push esi
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x290
ret 4