Function at 0x4744bf
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4bd68b
mov eax, dword fs:[0]
push eax
mov eax, 0x20048
call fcn.004a2e90
mov eax, dword [0x4fc504]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
xor eax, eax
mov byte [ebp - 0x20044], 1
mov edi, eax
mov dword [ebp - 0x2002c], eax
mov dword [ebp - 0x20028], eax
mov dword [ebp - 0x20024], eax
mov dword [ebp - 0x20038], eax
mov byte [ebp - 0x20034], al
mov dword [ebp - 0x20030], eax
mov dword [ebp - 0x2003c], eax
mov dword [ebp - 0x20054], edi
mov dword [ebp - 0x20048], eax
mov dword [ebp - 0x20050], eax
mov dword [ebp - 0x2004c], eax
mov dword [ebp - 0x20040], eax
mov dword [ebp - 0x20020], eax
mov dword [ebp - 0x2001c], eax
mov dword [ebp - 4], eax
mov eax, dword [ebx]
call dword [eax + 0x18c]
test al, al
jne 0x47479e
xor esi, esi
push esi
sub esp, 0x18
mov ecx, esp
push 0x4d8a44
call fcn.0042e6e9
mov ecx, ebx
call fcn.00472426
cmp byte [ebp + 8], 0
je 0x47458e
push esi
push esi
lea ecx, [ebx + 0x754]
jmp 0x4745aa
push 0
push 0
lea esi, [ebx + 0x744]
push 0x81e
mov ecx, esi
call fcn.004108a6
push 0
push 0
mov ecx, esi
push 0x7d4
call fcn.004108a6
call fcn.0049676d
push eax
push 0x20000
lea eax, [ebp - 0x20014]
push 1
push eax
call fcn.00494388
add esp, 0x10
lea ecx, [ebp - 0x20014]
mov esi, eax
mov edx, esi
call fcn.004b65d5
mov dword [ebp - 0x20018], eax
test esi, esi
je 0x474648
mov edi, 0x7d1
push esi
lea eax, [ebp - 0x20014]
push eax
lea ecx, [ebp - 0x20054]
call fcn.0048d5c4
cmp byte [ebp + 8], 0
lea ecx, [ebx + 0x754]
push dword [ebp - 0x2004c]
push eax
push edi
jne 0x47461b
lea ecx, [ebx + 0x744]
call fcn.004108a6
call fcn.0049676d
push eax
push 0x20000
lea eax, [ebp - 0x20014]
push 1
push eax
call fcn.00494388
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4745ee
mov edi, dword [ebp - 0x20054]
xor esi, esi
cmp byte [ebp + 8], 0
push esi
je 0x474681
push str.split.vertical
lea ecx, [ebx + 0xa7c]
call fcn.00452214
neg eax
mov ecx, ebx
sbb eax, eax
and eax, 0xfffffa24
add eax, 0x7d0
mov dword [ebx + 0x7d4], eax
mov eax, dword [ebx]
call dword [eax + 0x150]
jmp 0x474692
push esi
push 0x81f
lea ecx, [ebx + 0x744]
call fcn.004108a6
imul ecx, dword [ebx + 0xb18], 0xa0
mov eax, dword [ebx + 0xb24]
mov dword [ecx + eax + 0x30], edi
imul ecx, dword [ebx + 0xb18], 0xa0
mov eax, dword [ebx + 0xb24]
cmp dword [eax + ecx + 0x30], esi
jne 0x4746d0
imul ecx, dword [ebx + 0xb18], 0xa0
mov edx, dword [ebp - 0x20018]
mov dword [ecx + eax + 0x30], edx
imul ecx, dword [ebx + 0xb18], 0xa0
mov eax, dword [ebx + 0xb24]
cmp dword [ecx + eax + 0x30], esi
je 0x4746f2
mov dword [ebx + 0x648], 0xfde9
jmp 0x474709
push esi
push str.code.page
lea ecx, [ebx + 0xa7c]
call fcn.00452214
mov dword [ebx + 0x648], eax
cmp byte [ebp + 8], 0
push esi
je 0x474718
lea ecx, [ebx + 0x754]
jmp 0x474793
push dword [ebx + 0x648]
lea edi, [ebx + 0x744]
push 0x7f5
mov ecx, edi
call fcn.004108a6
push esi
push esi
push 0x7d5
mov ecx, edi
call fcn.004108a6
imul esi, dword [ebx + 0xb18], 0xa0
push str.x.txt
add esi, dword [ebx + 0xb24]
call fcn.004914f0
pop ecx
push eax
push str.x.txt
lea ecx, [esi + 0x54]
call fcn.004017c0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x17c]
mov ecx, ebx
call fcn.0046cfba
push 0xffffffffffffffff
xor esi, esi
mov ecx, edi
push esi
push 0xfa3
call fcn.004108a6
mov ecx, ebx
call fcn.00460bb9
push esi
mov ecx, edi
push esi
push 0x870
call fcn.004108a6
lea ecx, [ebp - 0x20054]
call fcn.0048d5a8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004906a0
mov esp, ebp
pop ebp
ret 4