Function at 0x402522
Capabilities:
Execute command

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x50
mov dword [rbp - 8], 0
lea rcx, str._tMENU_LIBROS
call sym.puts
lea rcx, str.Que_accion_desea_realizar_nCapturar_datos_del_libro__1__nMostrar_libros_registrados__2__nBuscar_y_o_actualizar_datos__3__nRegresar_al_menu_principal__4_
call sym.puts
lea rax, [rbp - 0xc]
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
lea rcx, [0x00406067]
call sym.system
mov eax, dword [rbp - 0xc]
cmp eax, 2
je 0x4027c8
cmp eax, 2
jg 0x402583
cmp eax, 1
je 0x40259b
jmp 0x4033ec
cmp eax, 3
je 0x402936
cmp eax, 4
je 0x4033d9
jmp 0x4033ec
nop
lea rcx, str._nRegistre_los_datos_del_libro
call sym.puts
lea rcx, str._n_ID_del_libro:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rcx, rax
call sym.gets
lea rcx, str._n_Titulo_del_libro:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rcx, rax
call sym.gets
lea rcx, str._n_Autor_es_:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rcx, rax
call sym.gets
lea rcx, str._n_Editorial:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rcx, rax
call sym.gets
lea rcx, [0x0040678d]
call sym.printf
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0xa0]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 8
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
lea rcx, str._nDisponibilidad_nEn_caso_de_solo_registrar_el_libro_puede_ingresar_cero_o_saltar_este_apartado__si_no_es_ese_el_caso__favor_de_ingresar_el_codigo_del_alumno_con_el_que_se_asociara_el_libro:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [0x0040a0ec]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rcx, rax
call sym.gets
mov eax, dword [0x0040a0ec]
add eax, 1
mov dword [0x0040a0ec], eax
mov eax, dword [0x0040a0ec]
cmp eax, 0xa
jne 0x40278c
lea rcx, [0x0040624a]
call sym.puts
lea rcx, str._t_tALTO_nLos_diez_libros_ya_fueron_registrados
call sym.puts
nop
jmp 0x4033ec
lea rcx, str.Desea_registrar_otro_libro_S_N
call sym.puts
lea rax, [rbp - 0x19]
mov rdx, rax
lea rcx, [0x004062a3]
call sym.scanf
movzx eax, byte [rbp - 0x19]
cmp al, 0x53
je 0x40259a
movzx eax, byte [rbp - 0x19]
cmp al, 0x73
je 0x40259a
jmp 0x4033ec
mov eax, dword [0x0040a0ec]
test eax, eax
jle 0x402917
mov dword [rbp - 4], 0
jmp 0x402908
mov eax, dword [rbp - 4]
add eax, 1
mov edx, eax
lea rcx, str._t_Registro_No.__d_
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
mov ecx, 0xa
call sym.putchar
add dword [rbp - 4], 1
mov eax, dword [0x0040a0ec]
cmp dword [rbp - 4], eax
jl 0x4027e2
mov eax, dword [0x0040a0ec]
test eax, eax
jne 0x4033e8
lea rcx, str._nAun_no_hay_libros_registrados
call sym.puts
jmp 0x4033e8
lea rcx, str._tSi_requiere_modificar_la_informacion_de_algun_libro_primero_debe_buscar_la_existencia_del_registro_del_libro
call sym.puts
lea rcx, str.Ingrese_el_ID_del_libro_a_buscar
call sym.puts
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
lea rax, [rbp - 0x28]
mov rcx, rax
call sym.gets
mov dword [rbp - 4], 0
jmp 0x4033b3
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
lea rdx, [rax + 1]
lea rax, [rbp - 0x28]
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x4033af
mov eax, dword [rbp - 4]
add eax, 1
mov edx, eax
lea rcx, str._tLIBRO_ENCONTRADO_EN_EL_REGISTRO_No.__d_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
mov ecx, 0xa
call sym.putchar
lea rcx, str.Desea_actualizar_la_informacion__presione__1__para_si_o__2__para_no
call sym.puts
lea rax, [rbp - 0x14]
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
mov eax, dword [rbp - 0x14]
cmp eax, 1
jne 0x4033c4
lea rcx, str.Que_dato_quiere_actualizar_n_Titulo__1__n_Autor__2__n_Editorial__3__n_A
call sym.puts
lea rax, [rbp - 0x18]
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
mov eax, dword [rbp - 0x18]
cmp eax, 6
ja case.0x402b49.0
mov eax, eax
lea rdx, [rax*4]
lea rax, [0x00406c54]
mov eax, dword [rdx + rax]
cdqe
lea rdx, [0x00406c54]
add rax, rdx
jmp rax
lea rcx, str.Actualizar_el_Titulo_nIngrese_el_titulo:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rcx, rax
call sym.gets
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
jmp case.0x402b49.0
lea rcx, str.Actualizar_Autor_es__del_libro_nIngrese_el_los_autor_es_:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rcx, rax
call sym.gets
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
jmp case.0x402b49.0
lea rcx, str.Actualizar_la_Editorial_nIngrese_la_editorial:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rcx, rax
call sym.gets
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
jmp case.0x402b49.0
lea rcx, str.Actualizar_el_a
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0xa0]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 8
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
jmp case.0x402b49.0
lea rcx, str.Actualizar_el_ID_nIngrese_el_ID_del_libro:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rcx, rax
call sym.gets
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
jmp case.0x402b49.0
lea rcx, str.Actualizar_la_disponibilidad_del_libro_nIngrese_el_codigo_del_alumno:
call sym.printf
mov ecx, 0
mov rax, qword [sym.__acrt_iob_func]
call rax
mov rcx, rax
call sym.fflush
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rcx, rax
call sym.gets
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
add rax, 0xf
mov rdx, rax
lea rcx, str._n_Titulo_del_libro:__s__n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x40]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_Autor_es_:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x70]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 3
mov rdx, rax
lea rcx, str._n_Editorial:__s__n
call sym.printf
lea rdx, [0x0040aa40]
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
add rax, rdx
add rax, 0xa8
mov eax, dword [rax]
mov edx, eax
lea rcx, [0x004068f3]
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [rax + 0x90]
lea rax, [0x0040aa40]
add rax, rdx
add rax, 1
mov rdx, rax
lea rcx, str._n_ID:__s_n
call sym.printf
mov eax, dword [rbp - 4]
cdqe
imul rax, rax, 0xac
lea rdx, [0x0040aa40]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Disponibilidad:__s__n
call sym.printf
nop
mov dword [rbp - 8], 1
add dword [rbp - 4], 1
mov eax, dword [0x0040a0ec]
cmp dword [rbp - 4], eax
jl 0x40297c
jmp 0x4033c5
nop
cmp dword [rbp - 8], 0
jne 0x4033eb
lea rcx, str._nNo_existe_registro_de_libro_con_ese_ID
call sym.puts
jmp 0x4033eb
call sym.menu
mov ecx, 0
call sym.exit
nop
jmp 0x4033ec
nop
lea rcx, [0x0040624a]
call sym.puts
lea rcx, str.A_que_menu_quieres_regresar_n_Menu_principal__1__n_Menu_libros__2_
call sym.puts
lea rax, [rbp - 0x10]
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
lea rcx, [0x00406067]
call sym.system
mov eax, dword [rbp - 0x10]
cmp eax, 2
je 0x402531
call sym.menu
mov eax, 0
add rsp, 0x50
pop rbp
ret