Function at 0x4016bd
Capabilities:
Execute command

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x50
mov dword [rbp - 8], 0
lea rcx, str._tMENU_ALUMNOS
call sym.puts
lea rcx, str.Que_accion_desea_realizar_n_Capturar_datos_del_alunmo__1__n_Mostrar_alumnos__2__n_Buscar_y_o_actualizar_datos__3__n_Regresar_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 0x401944
cmp eax, 2
jg 0x40171e
cmp eax, 1
je 0x401736
jmp 0x4024cf
cmp eax, 3
je 0x401ac5
cmp eax, 4
je 0x4024bc
jmp 0x4024cf
nop
lea rcx, str._nRegistra_la_informacion_del_alumno
call sym.puts
lea rcx, str._n_Nombre_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 [0x0040a0ec]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rcx, rax
call sym.gets
lea rcx, str._n_Ingresa_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 [0x0040a0ec]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rcx, rax
call sym.gets
lea rcx, str._n_Domicilio:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rcx, rax
call sym.gets
lea rcx, str._n_Telefono_celular:
call sym.printf
mov eax, dword [0x0040a0ec]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x90]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, [0x00406224]
call sym.scanf
lea rcx, str._n_Ingresa_el_correo_electronico:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
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 0x401908
lea rcx, [0x0040624a]
call sym.puts
lea rcx, str._t_tALTO_nLos_diez_alumnos_ya_fueron_registrados
call sym.puts
nop
jmp 0x4024cf
lea rcx, str.Deseas_registrar_a_otro_alumno_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 0x401735
movzx eax, byte [rbp - 0x19]
cmp al, 0x73
je 0x401735
jmp 0x4024cf
mov eax, dword [0x0040a0ec]
test eax, eax
jle 0x401aa6
mov dword [rbp - 4], 0
jmp 0x401a97
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_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 0x40195e
mov eax, dword [0x0040a0ec]
test eax, eax
jne 0x4024cb
lea rcx, str._nNo_hay_registro_de_estudiantes_aun
call sym.puts
jmp 0x4024cb
lea rcx, str._tSi_quieres_modificar_la_informacion_de_algun_alumno_primero_debes_buscar_la_existencia_del_registro_del_alumno
call sym.puts
lea rcx, str.Ingrese_el_codigo_del_alumno_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 ecx, 0xa
call sym.putchar
mov dword [rbp - 4], 0
jmp 0x402496
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
lea rdx, [rax + 0xc]
lea rax, [rbp - 0x28]
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x402492
mov eax, dword [rbp - 4]
add eax, 1
mov edx, eax
lea rcx, str._tALUMNO_ENCONTRADO_EN_EL_REGISTRO_No.__d_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_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 0x4024a7
lea rcx, str.Que_dato_quiere_actualizar_n_Nombre__1__n_Codigo__2__n_Domicilio_3__n_Numero_de_celular__4__n_Correo__5_
call sym.puts
lea rax, [rbp - 0x18]
mov rdx, rax
lea rcx, [0x004060e3]
call sym.scanf
mov ecx, 0xa
call sym.putchar
mov eax, dword [rbp - 0x18]
cmp eax, 5
ja case.0x401d07.0
mov eax, eax
lea rdx, [rax*4]
lea rax, [0x0040666c]
mov eax, dword [rdx + rax]
cdqe
lea rdx, [0x0040666c]
add rax, rdx
jmp rax
lea rcx, str.Actualizar_el_nombre_nIngrese_el_nombre:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_n
call sym.printf
jmp case.0x401d07.0
lea rcx, str.Actualizar_el_codigo_nIngrese_el_codigo:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_n
call sym.printf
jmp case.0x401d07.0
lea rcx, str.Actualizar_el_domicilio_nIngrese_el_domicilio:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_n
call sym.printf
jmp case.0x401d07.0
lea rcx, str.Actualizar_el_numero_de_celular_nIngrese_el_numero_de_celular:
call sym.printf
mov eax, dword [0x0040a0ec]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x90]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, [0x00406224]
call sym.scanf
lea rcx, [0x00406067]
call sym.system
lea rcx, str._tDATOS_ACTUALIZADOS
call sym.puts
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_n
call sym.printf
jmp case.0x401d07.0
lea rcx, str.Actualizar_el_correo_electronico_nIngrese_el_correo:
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
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]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [0x0040b100]
add rax, rdx
mov rdx, rax
lea rcx, str._n_Nombre_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x60]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xe
mov rdx, rax
lea rcx, str._n_Correo_electronico:__s_n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x80]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Codigo_del_alumno:__s__n
call sym.printf
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
lea rdx, [rax + 0x30]
lea rax, [0x0040b100]
add rax, rdx
add rax, 0xc
mov rdx, rax
lea rcx, str._n_Domicilio:__s__n
call sym.printf
lea rcx, [0x0040b100]
mov eax, dword [rbp - 4]
movsxd rdx, eax
mov rax, rdx
shl rax, 2
add rax, rdx
shl rax, 5
add rax, rcx
add rax, 0x9c
movss xmm0, dword [rax]
cvtss2sd xmm0, xmm0
movq rax, xmm0
mov rdx, rax
movq xmm1, rdx
mov rdx, rax
lea rcx, str._n_Telefono_celular:__.0f_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 0x401b15
jmp 0x4024a8
nop
cmp dword [rbp - 8], 0
jne 0x4024ce
lea rcx, str._nNo_existe_registro_de_alumno_con_ese_codigo
call sym.puts
jmp 0x4024ce
call sym.menu
mov ecx, 0
call sym.exit
nop
jmp 0x4024cf
nop
lea rcx, [0x0040624a]
call sym.puts
lea rcx, str.A_que_menu_quieres_regresar_n_Menu_principal__1__n_Menu_alumnos__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 0x4016cc
call sym.menu
mov eax, 0
add rsp, 0x50
pop rbp
ret