Function at 0x401f08
Capabilities:
Execute command

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x50
mov dword [rbp - 4], 0
mov dword [rbp - 0x14], 0
mov dword [rbp - 0x18], 0
mov dword [rbp - 8], 0
mov dword [rbp - 0xc], 0
lea rcx, [0x004053bf]
call sym.puts
lea rcx, [0x004053cb]
call sym.puts
mov dword [rbp - 4], 0
jmp 0x4020a4
lea rcx, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, rcx
add rax, 0x10
mov ecx, dword [rax + 0xc]
lea r8, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, r8
add rax, 0x20
mov eax, dword [rax + 4]
sub ecx, eax
lea r8, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, r8
add rax, 0x20
mov dword [rax], ecx
lea rcx, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, rcx
add rax, 0x30
movss xmm0, dword [rax]
cvtss2sd xmm1, xmm0
movq rcx, xmm1
lea r8, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, r8
add rax, 0x20
mov r8d, dword [rax]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
lea rdx, [0x00408a40]
add rax, rdx
lea r10, [rax + 8]
lea r9, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, r9
mov eax, dword [rax]
mov qword [rsp + 0x20], rcx
mov r9d, r8d
mov r8, r10
mov edx, eax
lea rcx, str._t_d__t_s__t_d__t_.2f_n
call sym.printf
add dword [rbp - 4], 1
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 0xc]
jl 0x401f57
mov dword [rbp - 8], 0xffffffff
lea rcx, [0x004053f7]
call sym.printf
lea rax, [rbp - 0x14]
mov rdx, rax
lea rcx, [0x004051ed]
call sym.scanf
mov dword [rbp - 4], 0
jmp 0x402116
lea rcx, [0x00408a40]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, rcx
mov edx, dword [rax]
mov eax, dword [rbp - 0x14]
cmp edx, eax
jne 0x402112
mov eax, dword [rbp - 4]
mov dword [rbp - 8], eax
add dword [rbp - 4], 1
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 0xc]
jl 0x4020df
cmp dword [rbp - 8], 0xffffffff
jne 0x402149
lea rcx, [0x00405403]
call sym.printf
call sym.getch
mov byte [rbp - 0xd], al
lea rcx, section..rdata
call sym.system
jmp 0x4021fb
lea rcx, [0x0040540f]
call sym.printf
lea rax, [rbp - 0x18]
mov rdx, rax
lea rcx, [0x004051ed]
call sym.scanf
lea rcx, [0x00408a40]
mov eax, dword [rbp - 8]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, rcx
add rax, 0x10
mov edx, dword [rax + 0xc]
mov eax, dword [rbp - 0x18]
cmp edx, eax
jge 0x4021bc
lea rcx, [0x0040541b]
call sym.printf
call sym.getch
mov byte [rbp - 0xd], al
lea rcx, section..rdata
call sym.system
jmp 0x4021fb
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
mov rcx, rax
call sym.fflush
mov ecx, dword [rbp - 0x18]
lea r8, [0x00408a40]
mov eax, dword [rbp - 8]
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 2
add rax, rdx
shl rax, 2
add rax, r8
add rax, 0x20
mov dword [rax + 4], ecx
lea rcx, [0x00405428]
call sym.printf
call sym.getch
mov byte [rbp - 0xd], al
lea rcx, section..rdata
call sym.system
cmp byte [rbp - 0xd], 0x6e
jne 0x401f33
lea rcx, section..rdata
call sym.system
nop
add rsp, 0x50
pop rbp
ret