Function at 0x40144b
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov dword [ebp - 0xc], 1
mov dword [ebp - 8], 0
mov dword [ebp - 0x14], 0
cmp dword [ebp + 8], 1
jle 0x4015b0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 1
jmp 0x40148c
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp + 8]
jge 0x4015b0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
xor edx, edx
mov dx, word [ecx]
mov dword [ebp - 0x84], edx
cmp dword [ebp - 0x84], 0x2d
je 0x4014c3
cmp dword [ebp - 0x84], 0x2f
je 0x4014c3
jmp 0x401597
push 1
push str._FUV
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
add edx, 2
push edx
call fcn.00404c86
add esp, 0xc
test eax, eax
jne 0x4014ef
mov dword [ebp - 0xc], 1
jmp 0x401595
push 1
push 0x4076c4
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
add edx, 2
push edx
call fcn.00404c86
add esp, 0xc
test eax, eax
jne 0x401529
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov ax, word [edx + 4]
mov word [ebp - 0x80], ax
mov dword [ebp - 8], 1
jmp 0x401595
push 1
push 0x4076c8
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + ecx*4]
add eax, 2
push eax
call fcn.00404c86
add esp, 0xc
test eax, eax
jne 0x401563
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + ecx*4]
mov cx, word [eax + 4]
mov word [ebp - 0x80], cx
mov dword [ebp - 0x14], 1
jmp 0x401595
push 1
push 0x4076cc
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
add ecx, 2
push ecx
call fcn.00404c86
add esp, 0xc
test eax, eax
jne 0x401595
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
add ecx, 4
mov dword [0x407034], ecx
jmp 0x4015ab
push 0x4076d0
call fcn.0040176e
add esp, 4
mov dword [ebp - 0xc], 1
jmp 0x401483
cmp dword [ebp - 0xc], 0
je 0x4015ff
push str._nusage:_FLOPPY_switches__n
call fcn.0040176e
add esp, 4
push str._________________Display_this_message_n
call fcn.0040176e
add esp, 4
push str.______________f_drive___Format_a_floppy_n
call fcn.0040176e
add esp, 4
push str.______________u_drive___Update_the_boot_sector_n
call fcn.0040176e
add esp, 4
push str.______________v_label___Specify_a_volume_label_n
call fcn.0040176e
add esp, 4
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [ebp - 8], 0
je 0x40167b
call fcn.00401347
and eax, 0xff
test eax, eax
jne 0x401620
push str.Could_not_located_FMIFS_entry_points._n_n
call fcn.0040176e
add esp, 4
mov dx, word [ebp - 0x80]
mov word [0x408480], dx
mov word [0x408482], 0x3a
mov word [0x408484], 0x5c
mov word [0x408486], 0
mov dword [ebp - 4], 8
push 0x4012bb
mov eax, dword [0x407fb4]
push eax
mov ecx, dword [0x407030]
push ecx
mov edx, dword [0x407034]
push edx
mov eax, dword [0x407038]
push eax
mov ecx, dword [ebp - 4]
push ecx
push 0x408480
call dword [0x408688]
cmp dword [ebp - 0x14], 0
je 0x40174a
mov edx, dword [ebp - 0x80]
and edx, 0xffff
push edx
push str.._c:
lea eax, [ebp - 0x78]
push eax
call fcn.0040188a
add esp, 0xc
push 0
push 0
push 3
push 0
push 3
push 0xc0000000
lea ecx, [ebp - 0x78]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0xffffffff
jne 0x4016e2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea edx, [ebp - 0x78]
push edx
push str.FLOPPY:_Open__s_failed__d_n
call fcn.0040176e
add esp, 0xc
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [ebp - 0x7c]
push eax
call fcn.0040124c
add esp, 4
test eax, eax
jne 0x401712
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x78]
push ecx
push str.FLOPPY:Locking_volume__s_failed__d_n
call fcn.0040176e
add esp, 0xc
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x4071cc
push 0x200
push 0
mov edx, dword [ebp - 0x7c]
push edx
call fcn.004013ab
add esp, 0x10
test eax, eax
je 0x401740
mov eax, dword [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, dword [ebp - 0x7c]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x7c]
push edx
call fcn.00401296
add esp, 4
mov eax, dword [ebp - 0x7c]
push eax
call fcn.00401271
add esp, 4
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]