Function at 0x41e740
Capabilities:
Write file on windows

Disassembly:
mov eax, 0x34a0
call fcn.00407b20
mov eax, 0x2000
mov word [esp + 0x149c], ax
mov eax, 0x20
mov word [esp + 0xc], ax
mov eax, 0x400
push edi
mov edi, dword [esp + 0x34a8]
mov word [esp + 0x34], ax
lea eax, [esp + 0x438]
push eax
lea eax, [esp + 0x14a4]
push eax
push edi
call sym.find_string.exe__file_read_env_12
lea eax, [esp + 0x438]
push eax
call sym.find_string.exe__file_eof_4
test al, al
jne 0x41ed46
push ebx
mov ebx, dword [esp + 0x34b4]
push ebp
mov ebp, dword [esp + 0x34bc]
push esi
mov esi, dword [esp + 0x34b8]
nop word [eax + eax]
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__sys_error_4
test al, al
je 0x41e7d7
push edi
call fcn.0041e5d0
lea eax, [esp + 0x444]
mov dword [esp + 0x14], 1
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x14b8]
push eax
call sym.find_string.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__sys_error_4
test al, al
je 0x41e815
push edi
call fcn.0041e5d0
lea eax, [esp + 0x1c]
push eax
call sym.find_string.exe__string_upcase_4
lea eax, [esp + 0x18]
push eax
push str.LANGUAGE_ENV_PATH_DEL_ENV_PATH_ADD
lea eax, [esp + 0x24]
push eax
call sym.find_string.exe__string_tkpick80_12
mov eax, dword [esp + 0x18]
sub eax, 1
je 0x41ea30
sub eax, 1
je 0x41e9cd
sub eax, 1
je 0x41e8ee
push 1
call fcn.0040af0c
push eax
push 0x16
push 1
push str.Unrecognized_command__
call fcn.0040b1a1
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41e892
cwde
push 0x435639
sub eax, 0x20
push eax
push 0x432548
call fcn.00401410
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41e8a9
cmp ax, 0x20
jge 0x41e8a2
movsx esi, ax
jmp 0x41e8ab
mov esi, 0x20
jmp 0x41e8ab
xor esi, esi
push 1
call fcn.0040af0c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.0040b1a1
push 1
call fcn.0040af0c
push eax
push 2
push 1
push 0x43254c
call fcn.0040b1a1
push 0x432550
call fcn.00401410
add esp, 0x2c
push edi
call fcn.0041e5d0
jmp 0x41ea96
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x14b8]
push eax
call sym.find_string.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__string_eos_4
test al, al
jne 0x41eba0
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__sys_error_4
test al, al
jne 0x41ec37
cmp word [esp + 0x42], 0
jle 0x41ec37
push ebp
push ebx
lea eax, [esp + 0x48]
push eax
call fcn.0041e550
mov eax, dword [ebx]
xor esi, esi
mov dword [esp + 0x10], eax
test eax, eax
je 0x41e96c
nop dword [eax + eax]
mov esi, eax
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
jne 0x41e960
lea eax, [esp + 0x10]
push eax
push 1
push dword [ebp]
push 0x40c
call sym.find_string.exe__util_mem_grab_16
mov eax, dword [esp + 0x10]
mov ecx, 0x400
mov word [eax + 8], cx
mov eax, dword [esp + 0x10]
add eax, 8
push eax
lea eax, [esp + 0x44]
push eax
call sym.find_string.exe__string_copy_8
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov eax, dword [esp + 0x10]
test esi, esi
jne 0x41e9bf
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov dword [ebx], eax
jmp 0x41ea96
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov dword [esi], eax
jmp 0x41ea96
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x14b8]
push eax
call sym.find_string.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__string_eos_4
test al, al
jne 0x41eba0
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__sys_error_4
test al, al
jne 0x41ec37
cmp word [esp + 0x42], 0
jle 0x41ec37
push ebp
push ebx
lea eax, [esp + 0x48]
push eax
call fcn.0041e550
jmp 0x41ea96
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x14b8]
push eax
call sym.find_string.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__string_eos_4
test al, al
jne 0x41eba0
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__sys_error_4
test al, al
jne 0x41ec37
cmp word [esp + 0x42], 0
jle 0x41ec37
push esi
lea eax, [esp + 0x44]
push eax
call sym.find_string.exe__string_copy_8
push esi
call sym.find_string.exe__string_upcase_4
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x14b8]
push eax
call sym.find_string.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__string_eos_4
test al, al
jne 0x41eb61
push 1
call fcn.0040af0c
push eax
push 0x21
push 1
push str.Too_many_parameters_for_command__
call fcn.0040b1a1
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41eb0a
cwde
push 0x43563a
sub eax, 0x20
push eax
push 0x432578
call fcn.00401410
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41eb21
cmp ax, 0x20
jge 0x41eb1a
movsx esi, ax
jmp 0x41eb23
mov esi, 0x20
jmp 0x41eb23
xor esi, esi
push 1
call fcn.0040af0c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.0040b1a1
push 1
call fcn.0040af0c
push eax
push 2
push 1
push 0x43257c
call fcn.0040b1a1
push 0x432580
call fcn.00401410
add esp, 0x2c
push edi
call fcn.0041e5d0
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x14b0]
push eax
push edi
call sym.find_string.exe__file_read_env_12
lea eax, [esp + 0x444]
push eax
call sym.find_string.exe__file_eof_4
mov esi, dword [esp + 0x34b8]
test al, al
je 0x41e7c0
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x34a0
ret 0x10
push 1
call fcn.0040af0c
push eax
push 0x1d
push 1
push str.Missing_argument_to_command__
call fcn.0040b1a1
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41ebe0
cwde
push 0x43563b
sub eax, 0x20
push eax
push 0x4325a4
call fcn.00401410
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41ebf7
cmp ax, 0x20
jge 0x41ebf0
movsx esi, ax
jmp 0x41ebf9
mov esi, 0x20
jmp 0x41ebf9
xor esi, esi
push 1
call fcn.0040af0c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.0040b1a1
push 1
call fcn.0040af0c
push eax
push 2
push 1
push 0x4325a8
call fcn.0040b1a1
push 0x4325ac
call fcn.00401410
add esp, 0x2c
push edi
call fcn.0041e5d0
push 1
call fcn.0040af0c
push eax
push 0xf
push 1
push 0x4325b0
call fcn.0040b1a1
mov ax, word [esp + 0x56]
mov ecx, 0x400
add esp, 0x14
cmp ax, cx
jle 0x41ec7f
cwde
push 0x4356b0
sub eax, ecx
push eax
push 0x4325c0
call fcn.00401410
mov ax, word [esp + 0x4e]
add esp, 0xc
mov ecx, 0x400
test ax, ax
jle 0x41ec95
cmp ax, cx
jge 0x41ec8e
movsx esi, ax
jmp 0x41ec97
mov esi, 0x400
jmp 0x41ec97
xor esi, esi
push 1
call fcn.0040af0c
push eax
push esi
lea eax, [esp + 0x50]
push 1
push eax
call fcn.0040b1a1
push 1
call fcn.0040af0c
push eax
push 0xe
push 1
push 0x4325c4
call fcn.0040b1a1
mov ax, word [esp + 0x46]
add esp, 0x28
cmp ax, 0x20
jle 0x41ecec
cwde
push 0x4356b1
sub eax, 0x20
push eax
push 0x4325d4
call fcn.00401410
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41ed03
cmp ax, 0x20
jge 0x41ecfc
movsx esi, ax
jmp 0x41ed05
mov esi, 0x20
jmp 0x41ed05
xor esi, esi
push 1
call fcn.0040af0c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.0040b1a1
push 1
call fcn.0040af0c
push eax
push 2
push 1
push 0x4325d8
call fcn.0040b1a1
push 0x4325dc
call fcn.00401410
add esp, 0x2c
push edi
call fcn.0041e5d0
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x34a0
ret 0x10