Function at 0x464c14
Capabilities:
Write file on windows

Disassembly:
push ecx
push eax
call fcn.004a48c2
push dword [ebp - 0x78]
call fcn.00475639
add esp, 0x10
cmp word [eax], bx
mov dword [ebp - 0x60], eax
jne 0x464c38
mov ebx, 0x80070057
jmp 0x4650a5
mov eax, dword [ebp + 8]
cmp word [eax], di
jne 0x464c7a
inc eax
inc eax
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
call fcn.0049beaf
mov eax, dword [ebp + 8]
cmp word [eax], di
pop ecx
je 0x464c7a
push 1
push edi
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x88]
call 0x4b2e1d
push ebx
lea ecx, [ebp - 0x74]
push ecx
push eax
call fcn.004a491b
mov eax, dword [ebp + 8]
add esp, 0xc
cmp word [eax], di
mov dword [ebp - 0x24], esi
jne 0x464c88
add eax, 2
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x74]
cmp word [eax], 0x24
mov dword [ebp + 8], eax
mov byte [ebp - 0x61], bl
mov byte [ebp - 1], bl
jne 0x464ca5
mov cl, byte [eax]
add eax, 2
mov byte [ebp - 0x61], cl
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
call fcn.0049bf0f
mov eax, dword [ebp + 8]
pop ecx
mov cx, word [eax]
cmp cx, 0x2b
je 0x464cc1
cmp cx, 0x2d
jne 0x464ccb
mov cl, byte [eax]
inc eax
inc eax
mov byte [ebp - 1], cl
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
call fcn.0049bf35
mov eax, dword [ebp + 8]
movzx eax, word [eax]
push eax
call fcn.00476aa6
add esp, 8
test al, al
je 0x464d0c
push edi
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004a4b52
add esp, 0xc
cmp dword [ebp - 0x58], ebx
jg 0x464d0c
jl 0x4650a5
cmp dword [ebp - 0x5c], ebx
jb 0x4650a5
lea ecx, [ebp - 0x20]
call fcn.004a1e8e
cmp byte [ebp - 0x63], bl
mov esi, 0x4c1b94
je 0x464d6a
mov edi, dword [ebp - 0x24]
cmp word [edi], 0x26
je 0x464d30
mov eax, dword [ebp - 0x4c]
test byte [eax + 9], 0xf
je 0x464d5c
push esi
call dword [0x4a64f0]
mov ecx, dword [ebp - 0x4c]
push 0xffffffffffffffff
push ebx
push edi
call fcn.00477291
cmp eax, ebx
je 0x464d53
push 0xffffffffffffffff
push dword [eax]
lea ecx, [ebp - 0x20]
call fcn.004a1ff1
push esi
call dword [0x4a64f4]
adc eax, 0x4a64f4
jmp 0x464d8e
lea eax, [ebp - 0x20]
push eax
push edi
call 0x4a9b25
pop ecx
pop ecx
jmp 0x464d8e
cmp byte [ebp - 0x61], bl
je 0x464d83
mov ecx, dword [ebp - 0x4c]
push 1
push ebx
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x24]
call str._conv
jmp 0x464d8e
push dword [ebp - 0x24]
lea ecx, [ebp - 0x20]
call 0x4aa689
push dword [ebp - 0x60]
xor esi, esi
push 0x4a7704
mov dword [ebp - 8], esi
mov dword [ebp - 0x24], ebx
mov byte [ebp + 0xb], bl
call fcn.0049d35c
test al, al
pop ecx
pop ecx
je 0x464db7
mov eax, dword [0x4bf318]
mov byte [ebp + 0xb], 2
jmp 0x464dd3
push dword [ebp - 0x60]
push 0x4a7c9c
call fcn.0049d37a
test al, al
pop ecx
pop ecx
je 0x464dd6
mov eax, dword [0x4bf314]
mov byte [ebp + 0xb], 1
mov dword [ebp - 0x24], eax
cmp byte [ebp - 9], bl
jne 0x464ded
cmp byte [ebp - 0xa], bl
jne 0x464ded
push 0x4a9c18
lea ecx, [ebp - 0x20]
call fcn.004a1fd3
cmp byte [ebp - 0xa], bl
mov dword [ebp - 0x14], ebx
je 0x464e01
mov dword [ebp - 0x18], 0x646a8
jmp 0x464fdb
cmp byte [ebp + 0xb], bl
jne 0x464fdb
push dword [ebp - 0x60]
mov byte [ebp - 9], 1
push str.CONOUT_
call fcn.0049d3d1
test al, al
pop ecx
pop ecx
je 0x464e31
push 0x100
mov byte [ebp - 9], bl
imul eax
fnsave dword [ebp - 0x14a6fffd]
invalid
cmp byte [ebp - 0x62], bl
je 0x464e43
push ebx
push ebx
push dword [ebp - 0x60]
call 0x4a81d9
add al, 0
add esp, 0xc
push ebx
push 0x80
push 3
push ebx
push 7
mov edi, 0xc0000000
push edi
push dword [ebp - 0x60]
lea ecx, [ebp - 8]
call fcn.0046942d
mov esi, dword [ebp - 8]
cmp esi, ebx
jne 0x464ebc
push ebx
push 0x2000080
push 3
push ebx
cmp esi, ebx
mov dword [ebp - 0x24], esi
jne 0x464ed0
call dword [0x4a6498]
mov ebx, eax
jmp 0x465095
xor eax, eax
cmp byte [ebp - 9], bl
lea edi, [ebp - 0x51]
mov byte [ebp - 0x54], bl
mov byte [ebp - 0x53], bl
mov byte [ebp - 0x52], bl
stosw word es:[edi], ax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ebx
je 0x464f00
push ebx
lea eax, [ebp - 0x2c]
push eax
push 3
lea eax, [ebp - 0x54]
push eax
push esi
call dword [0x4a64e8]
mov eax, dword [ebp - 0x2c]
cmp byte [ebp - 0x54], 0xff
jne 0x464f1a
cmp byte [ebp - 0x53], 0xfe
jne 0x464f54
mov dword [ebp - 0x18], 0x647bf
mov dword [ebp - 0x14], 2
cmp byte [ebp - 0x54], 0xfe
jne 0x464f34
cmp byte [ebp - 0x53], 0xff
jne 0x464f54
mov dword [ebp - 0x18], 0x647da
mov dword [ebp - 0x14], 2
cmp byte [ebp - 0x54], 0xef
jne 0x464f54
cmp byte [ebp - 0x53], 0xbb
jne 0x464f54
cmp byte [ebp - 0x52], 0xbf
jne 0x464f54
mov dword [ebp - 0x18], 0x74132
mov dword [ebp - 0x14], 3
or eax, dword [ebp - 0x28]
je 0x464f70
cmp byte [ebp - 0x2d], bl
jne 0x464f70
push ebx
xor eax, eax
push eax
push dword [ebp - 0x14]
push esi
call fcn.0049d3f2
add esp, 0x10
jmp 0x464fdb
push ebx
push ebx
push ebx
push esi
call 0x49d400
add esp, 0x10
cmp byte [ebp - 0x2d], bl
je 0x464f88
push esi
call dword [0x4a6250]
cmp dword [ebp - 0x18], 0x6483b
jne 0x464fa1
push 2
pop eax
push ebx
lea ecx, [ebp - 0x68]
push ecx
push eax
push 0x4ac848
jmp 0x464fd1
cmp dword [ebp - 0x18], 0x64855
jne 0x464fba
invalid
push 2
pop eax
push ebx
lea ecx, [ebp - 0x68]
push ecx
push eax
push 0x4ac84c
jmp 0x464fd1
cmp dword [ebp - 0x18], 0x741a6
jne 0x464fdb
push 3
pop eax
push ebx
lea ecx, [ebp - 0x68]
cwde
push ecx
push eax
push 0x4ac850
push esi
mov dword [ebp - 0x14], eax
call dword [0x4a6194]
push dword [ebp - 0x20]
mov edi, dword [0x4a6508]
call edi
mov ecx, dword [ebp - 0x18]
lea ecx, [ebp - 8]
call fcn.00466ff3
lea ecx, [ebp - 0x20]
call fcn.0049c2bb
lea ecx, [ebp - 0x74]
invalid
push ss
jb 0x4650af