Buenas a todos,
Alguien con paciencia prodria desciframe los siguiente:
txt Pregunta
Public Sub Proc_41FE1_0
loc_00041FE1: ebp = ebp - 1
loc_00041FE3: nop
loc_00041FE4: [ebx] = [ebx] + eax
loc_00041FE6: [eax] = [eax] + eax
loc_00041FE8: [eax+eax] = [eax+eax] + eax]+ea
loc_00041FEB: [eax] = [eax] + eax]+ea
End Sub
password
Public Sub Proc_413209_0
loc_00413209: If Sign(eax - 0) Then GoTo loc_004131FB
End Sub
txtpassword
Public Sub Proc_41322B_0
loc_00413231: xchg eax, edi
loc_00413232: xchg eax, ecx
loc_00413233: into
loc_00413234: If Not Asm.b_flag Then
loc_00413236: out F5h, al
loc_00413238: stosb
loc_00413239: aam 93h
loc_0041323B: ecx = ecx - 1
loc_0041323C: aas
loc_0041323D: esi = esi * edx xor 96C9336Eh
loc_0041324A: ebp = ebp + 1
loc_0041324C: ebp = ebp + 1 + 1
loc_0041324D: edi = edi + 1
loc_00413250: esi = esi*edx xor 96C9336Eh + 1
loc_00413251: ebp = ebp + 1 + 1 + 1
loc_00413255: aam CAh
loc_0041325D: icebp
loc_0041325E: into
loc_0041325F: If -2021941702 >= 0 Then GoTo loc_004131FD
loc_00413261: in al, ACh
loc_00413263: cld
loc_00413264: popfd
txtUsername
Public Sub Proc_413269_0
loc_00413270: xchg eax, esi
loc_00413272: ebx = ebx - var_72
End Sub
loc_00413277: enterd FFC8CAh, 42h
loc_0041327B: nop
loc_0041327C: stosb
loc_0041327E: aaa
loc_0041327F: esi = -2021941702 + 1
loc_00413280: adc al, [-094995DCh]
loc_0041328B: pushfd
loc_0041328C: ebp = ebp + 1 + 1 + 1 - 1
loc_0041328D: [eax] = [eax] + 1
loc_00413294: esi = edi - 1
loc_00413295: edi = edi + 1 + 1
loc_00413298: int 03h
loc_00413299: enterd FF986Eh, 43h
loc_0041329D: adc ebp, [ebx+6786DEEDh]
loc_004132A3: movsb
End Sub
usuario
Public Sub Proc_413303_0
loc_00413303: ebp = ebp + 1
loc_0041330B: cwde
loc_0041330C: callf 0000h:0000B82Ah
loc_00413314: xchg eax, edx
loc_00413315: ecx = ecx - 1
loc_00413316: adc al, 20h
loc_0041331A: cmpsd
End Sub
txtpregunta
Public Sub Proc_414FE1_0
loc_00414FE3: loopd 00415006h
loc_00414FF2: int 02h
loc_00414FF5: les ecx, [ecx+00000022h]
loc_00414FF8: adc var_2AFFBFF1, al
loc_00414FFE: ebx = ebx + 1
loc_00414FFF: If ebx + 1 <= 0 Then
loc_00415001: If Not Asm.a_flag Then GoTo loc_00415082
loc_00415003: If Not Asm.b_flag Then GoTo loc_00414FFC
loc_00415007: leaved
loc_0041500D: xchg eax, ecx
loc_00415019: xchg eax, ebx
loc_0041501A: stosd
loc_0041501B: Exit Subf FFC6CAh
loc_0041501E: Exit Subf
loc_00415022: aas
loc_00415030: arg_1D = arg_1D + edx+3EAA0A28h
loc_00415036: [eax+00000003h] = [eax+00000003h] + arg_1D
loc_0041503D: [ebx] = [ebx] - 1
loc_0041503F: If ecx Then
loc_0041504A: If Not Asm.l_flag Then GoTo loc_00415079
loc_0041504D: movsb
loc_0041504E: If Not Asm.le_flag Then GoTo loc_0041501D
loc_00415050: If Err.Number <> 0 Then GoTo loc_00415004
loc_00415052: cld
loc_00415053: lodsb
loc_00415054: var_eax = call Proc_F77EB47B(ss, arg_1D, es)
loc_00415059: If Not Asm.b_flag Then GoTo loc_00415038
loc_0041505B: pushad
loc_0041505C: End If
loc_0041505C: lahf
End Sub
btnAceptar
Public Sub Proc_415069_0
loc_00415069: If eax < 190 Then
loc_00415070: out 5Bh, al
loc_00415072: If Not Asm.s_flag Then GoTo loc_0041502D
loc_00415074: ebp = ebp - 1
loc_00415075: xlat
loc_00415076: aad 49h
loc_00415078: 7CE53B6Fh = 7CE53B6Fh * edi
loc_00415083: arpl [ecx], bx
loc_0041508B: aam 47h
loc_00415092: out 1Bh, al
loc_00415094: stosd
loc_00415095: If eax > 0 Then
loc_00415097: hlt
loc_00415099: If Err.Number <> 0 Then GoTo loc_00415079
loc_0041509B: iretd
loc_0041509C: ficomp [eax+7C97A777h]
loc_004150A2: xchg eax, esp
loc_004150A3: cmpsb
End Sub
txtRespuesta
Public Sub Proc_4150B2_0
loc_004150B2: repnz xchg bl, [edx-0000003Ah]
End Sub
Public Sub Proc_41502D_0
loc_00415030: arg_1D = arg_1D + edx+3EAA0A28h
loc_00415036: [eax+00000003h] = [eax+00000003h] + arg_1D
loc_0041503D: [ebx] = [ebx] - 1
loc_0041503F: If ecx Then
loc_0041504A: If Not Asm.l_flag Then GoTo loc_00415079
loc_0041504D: movsb
loc_0041504E: If Not Asm.le_flag Then GoTo loc_0041501D
loc_00415050: If Err.Number <> 0 Then GoTo loc_00415004
loc_00415052: cld
loc_00415053: lodsb
loc_00415054: var_eax = call Proc_F77EB47B(ss, arg_1D, )
loc_00415059: If Not Asm.b_flag Then GoTo loc_00415038
loc_0041505B: pushad
loc_0041505C: End If
loc_0041505C: lahf
End Sub
Public Sub Proc_415079_0
loc_00415079: punpckhdq mm4, [ebx]
loc_0041507C: fiadd real4 ptr [esi-44296EC3h]
loc_00415082: If Not Asm.g_flag Then
loc_0041508B: aam 47h
loc_00415092: out 1Bh, al
loc_00415094: stosd
loc_00415095: If eax > 0 Then
loc_00415097: hlt
loc_00415099: If Err.Number <> 0 Then GoTo loc_00415079
loc_0041509B: iretd
loc_0041509C: ficomp [eax+7C97A777h]
loc_004150A2: xchg eax, esp
loc_004150A3: cmpsb
End Sub
Gracias
Cita de: jabrajam en 11 Abril 2020, 04:12 AM
Buenas a todos,
Alguien con paciencia prodria desciframe los siguiente:
eso te corresponde a ti... hazlo hasta donde te tranques y en ese punto realiza una pregunta objetiva, recuerda es una foro de aprendizaje, se resuelven dudas, no se hacen tareas
parece un desensamblado de un vb6. Primero tendrías que conocer las sentencias mínimas en ensamblador hay cientos de tutoriales, pero tienes que debugear el programa si o si, no se puede solo con ese código estático, por ejemplo:
loc_00041FE4: [ebx] = [ebx] + eax
el registro ebx es igual a ebx + el regitro eax, pero no hay forma de saber que valor tienen en el momento de la ejecución y así en muchos lugares, o sea quiza sepas que hacen, pero se desconocen solo con esto los valores de los registros.
Buenos diass,
Engel, no era mi intención, pero llevo una semana con esto y hasta llegar aqui "que es donde yo creo que es mi problema" me ha costado lo suyo. Te pido disculpas si he dado ha entender eso. Pensaba que era mas senncillo y que seri algo aasi como XXXXX+XXXX.
Tincopasan. tienes razon, me rocomiendas alguno para nivel muy muy principiante.
Lo que intentaba era interpretarlo para seguir avanzando por las sentencias que me dijerais y no perder el tiempo por caminos quee no me llevan a nada.
Gracias iguaalmente