Function at 0x41dbc0
Capabilities:
Write file on windows

Disassembly:
mov eax, 0x34a0
call fcn.004054e0
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.test_embusb.exe__file_read_env_12
lea eax, [esp + 0x438]
push eax
call sym.test_embusb.exe__file_eof_4
test al, al
jne 0x41e1c6
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.test_embusb.exe__sys_error_4
test al, al
je 0x41dc57
push edi
call fcn.0041da50
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.test_embusb.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__sys_error_4
test al, al
je 0x41dc95
push edi
call fcn.0041da50
lea eax, [esp + 0x1c]
push eax
call sym.test_embusb.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.test_embusb.exe__string_tkpick80_12
mov eax, dword [esp + 0x18]
sub eax, 1
je 0x41deb0
sub eax, 1
je 0x41de4d
sub eax, 1
je 0x41dd6e
push 1
call fcn.0040887c
push eax
push 0x16
push 1
push str.Unrecognized_command__
call fcn.00408b11
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41dd12
cwde
push 0x431ef9
sub eax, 0x20
push eax
push 0x42f8c0
call fcn.00401350
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41dd29
cmp ax, 0x20
jge 0x41dd22
movsx esi, ax
jmp 0x41dd2b
mov esi, 0x20
jmp 0x41dd2b
xor esi, esi
push 1
call fcn.0040887c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.00408b11
push 1
call fcn.0040887c
push eax
push 2
push 1
push 0x42f8c4
call fcn.00408b11
push 0x42f8c8
call fcn.00401350
add esp, 0x2c
push edi
call fcn.0041da50
jmp 0x41df16
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.test_embusb.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__string_eos_4
test al, al
jne 0x41e020
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__sys_error_4
test al, al
jne 0x41e0b7
cmp word [esp + 0x42], 0
jle 0x41e0b7
push ebp
push ebx
lea eax, [esp + 0x48]
push eax
call fcn.0041d9d0
mov eax, dword [ebx]
xor esi, esi
mov dword [esp + 0x10], eax
test eax, eax
je 0x41ddec
nop dword [eax + eax]
mov esi, eax
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
jne 0x41dde0
lea eax, [esp + 0x10]
push eax
push 1
push dword [ebp]
push 0x40c
call sym.test_embusb.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.test_embusb.exe__string_copy_8
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov eax, dword [esp + 0x10]
test esi, esi
jne 0x41de3f
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov dword [ebx], eax
jmp 0x41df16
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov dword [esi], eax
jmp 0x41df16
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.test_embusb.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__string_eos_4
test al, al
jne 0x41e020
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__sys_error_4
test al, al
jne 0x41e0b7
cmp word [esp + 0x42], 0
jle 0x41e0b7
push ebp
push ebx
lea eax, [esp + 0x48]
push eax
call fcn.0041d9d0
jmp 0x41df16
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.test_embusb.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__string_eos_4
test al, al
jne 0x41e020
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__sys_error_4
test al, al
jne 0x41e0b7
cmp word [esp + 0x42], 0
jle 0x41e0b7
push esi
lea eax, [esp + 0x44]
push eax
call sym.test_embusb.exe__string_copy_8
push esi
call sym.test_embusb.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.test_embusb.exe__string_token_16
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__string_eos_4
test al, al
jne 0x41dfe1
push 1
call fcn.0040887c
push eax
push 0x21
push 1
push str.Too_many_parameters_for_command__
call fcn.00408b11
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41df8a
cwde
push 0x431efa
sub eax, 0x20
push eax
push 0x42f8f0
call fcn.00401350
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41dfa1
cmp ax, 0x20
jge 0x41df9a
movsx esi, ax
jmp 0x41dfa3
mov esi, 0x20
jmp 0x41dfa3
xor esi, esi
push 1
call fcn.0040887c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.00408b11
push 1
call fcn.0040887c
push eax
push 2
push 1
push 0x42f8f4
call fcn.00408b11
push 0x42f8f8
call fcn.00401350
add esp, 0x2c
push edi
call fcn.0041da50
lea eax, [esp + 0x444]
push eax
lea eax, [esp + 0x14b0]
push eax
push edi
call sym.test_embusb.exe__file_read_env_12
lea eax, [esp + 0x444]
push eax
call sym.test_embusb.exe__file_eof_4
mov esi, dword [esp + 0x34b8]
test al, al
je 0x41dc40
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x34a0
ret 0x10
push 1
call fcn.0040887c
push eax
push 0x1d
push 1
push str.Missing_argument_to_command__
call fcn.00408b11
mov ax, word [esp + 0x32]
add esp, 0x14
cmp ax, 0x20
jle 0x41e060
cwde
push 0x431efb
sub eax, 0x20
push eax
push 0x42f91c
call fcn.00401350
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41e077
cmp ax, 0x20
jge 0x41e070
movsx esi, ax
jmp 0x41e079
mov esi, 0x20
jmp 0x41e079
xor esi, esi
push 1
call fcn.0040887c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.00408b11
push 1
call fcn.0040887c
push eax
push 2
push 1
push 0x42f920
call fcn.00408b11
push 0x42f924
call fcn.00401350
add esp, 0x2c
push edi
call fcn.0041da50
push 1
call fcn.0040887c
push eax
push 0xf
push 1
push 0x42f928
call fcn.00408b11
mov ax, word [esp + 0x56]
mov ecx, 0x400
add esp, 0x14
cmp ax, cx
jle 0x41e0ff
cwde
push 0x431f70
sub eax, ecx
push eax
push 0x42f938
call fcn.00401350
mov ax, word [esp + 0x4e]
add esp, 0xc
mov ecx, 0x400
test ax, ax
jle 0x41e115
cmp ax, cx
jge 0x41e10e
movsx esi, ax
jmp 0x41e117
mov esi, 0x400
jmp 0x41e117
xor esi, esi
push 1
call fcn.0040887c
push eax
push esi
lea eax, [esp + 0x50]
push 1
push eax
call fcn.00408b11
push 1
call fcn.0040887c
push eax
push 0xe
push 1
push 0x42f93c
call fcn.00408b11
mov ax, word [esp + 0x46]
add esp, 0x28
cmp ax, 0x20
jle 0x41e16c
cwde
push 0x431f71
sub eax, 0x20
push eax
push 0x42f94c
call fcn.00401350
mov ax, word [esp + 0x2a]
add esp, 0xc
test ax, ax
jle 0x41e183
cmp ax, 0x20
jge 0x41e17c
movsx esi, ax
jmp 0x41e185
mov esi, 0x20
jmp 0x41e185
xor esi, esi
push 1
call fcn.0040887c
push eax
push esi
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.00408b11
push 1
call fcn.0040887c
push eax
push 2
push 1
push 0x42f950
call fcn.00408b11
push 0x42f954
call fcn.00401350
add esp, 0x2c
push edi
call fcn.0041da50
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x34a0
ret 0x10