Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

[HELP] VB 6 (p code), mind helping out a little?

Hello there,

I need help cracking this addon software, I tried reversing it myself without any knowledge about C nor ASM, and failed miserably.

This software is just an addon of the 2nd software.


DOWNLOADS 👍
DLL and EXE files of the addon software:
Spoiler (Click to View)

The installer/setup:
Spoiler (Click to View)


Addon of the 2nd software, where I need help cracking, JUST THE ERROR STRING:
Spoiler (Click to View)


Other stuffs that might help:
I checked the cracked and uncracked DLLs of the 1st and 2nd software, the cracked DLLs here are working BTW:
1st software:
Cracked
Spoiler (Click to View)
Untouched
Spoiler (Click to View)

2nd software:
1st DLL
Cracked, it's like they were written from scratch, or maybe I just had to deobfuscate it first.
Spoiler (Click to View)
Untouched:
Spoiler (Click to View)

2nd DLL
Cracked
Spoiler (Click to View)
Untouched
Spoiler (Click to View)


I've tried executing the .EXE file of the addon software through ODv2.01
Spoiler (Click to View)


Also tried decompiling it, but don't know anything about decompilers 🤦‍♂
So i'll just give you an overview of the error string with VBDecompilerV7.9

Spoiler (Click to View)


It's on VB 6 PCode
Spoiler (Click to View)


Thanks in advance! Rainbows <3
Bring
Up
My
Post

Please & Thank you in advance.
(Aug 20, 2014 09:11 AM)legend7 Wrote:  Open PLabelIT.dll with VB Decompiler and find the license check function. Note the addresses displayed by VB Decompiler next to each of the if statements that decide if the invalid license message boxes should be displayed. There's one for invalid licenses and another for license not found. Then search for calls to the license check function. You will find two significant ones; one in frmMain's load event and another in modMain. Note the addresses of the two if statements where the license check function is called. Now that you know where all of the important license checking code is located, the easiest way to deal with it is to just invert the if statements. You can use VB Decompiler's byte patching tool to change the byte at each address you found from 0x1C to 0x1D to invert the if statements.

ARE YOU FROM TEAM LND? :O 😯🤗🎉😈🙃👍

BTW, what options should my VB Decompiler be?

Current VB Decompiler v7.9 Options:
Spoiler (Click to View)

Anyway, thank you! I don't know how to do any of what you just said yet, so I'll ask someone else for help. Much love for team LND.
A little help, I've been trying to look for the license check function yet with no avail. Is there any way that it could be hidden?
BUMP

Please help me? /fingers-crossed.
BUMP

Still waiting for a day that someone would help me.
(Aug 20, 2014 09:11 AM)legend7 Wrote:  Open PLabelIT.dll with VB Decompiler and find the license check function. Note the addresses displayed by VB Decompiler next to each of the if statements that decide if the invalid license message boxes should be displayed. There's one for invalid licenses and another for license not found. Then search for calls to the license check function. You will find two significant ones; one in frmMain's load event and another in modMain. Note the addresses of the two if statements where the license check function is called. Now that you know where all of the important license checking code is located, the easiest way to deal with it is to just invert the if statements. You can use VB Decompiler's byte patching tool to change the byte at each address you found from 0x1C to 0x1D to invert the if statements.

I went to the Form_Load from frmMain
Tried looking for the license check function, but no strings show either Invalid License nor License not found. May I know how to search for calls to the license check function?
Code
Private Sub Form_Load() '11069BE4
  'Data Table: 11009C98
  Dim MemVar_110A3198 As Integer
  Dim var_BC As Long
  Dim var_88 As Variant
  loc_11069AB4: IDE.GoTo loc_11069AB6 'Ignore this
  loc_11069AB6: IDE.GoTo loc_11069ABB 'Ignore this
  loc_11069AB8: On Error Goto loc_11069B52
  loc_11069ABB: IDE.GoTo loc_11069AE1 'Ignore this
  loc_11069AD5: Proc_14_0_11065318(Me.psnSize)
  loc_11069ADA: var_88 = "" = "" 'Ignore this
  loc_11069AE1: IDE.GoTo loc_11069AE8 'Ignore this
  loc_11069AE3: Call S_SetText()
  loc_11069AE8: IDE.GoTo loc_11069AF8 'Ignore this
            If Not(Proc_23_1_11082EE8(0)) Then '11069B02
  loc_11069AF8:   IDE.GoTo loc_11069AFF 'Ignore this
  loc_11069AFC:   MemVar_110A3198 = &HFF
  loc_11069AFF:   IDE.GoTo loc_11069B02 'Ignore this
  loc_11069B01:   Exit Sub
            End If
  loc_11069B02: IDE.GoTo loc_11069B04 'Ignore this
  loc_11069B04: IDE.GoTo loc_11069B1B 'Ignore this
  loc_11069B09: PopAdLdVar 'Ignore this
  loc_11069B0F: PopAdLdVar 'Ignore this
  loc_11069B13: NewIfNullPr frmFillJobs 'Ignore this
  loc_11069B16: frmFillJobs.psnSize.Show 1, var_B4
  loc_11069B1B: IDE.GoTo loc_11069B26 'Ignore this
  loc_11069B1F:  'Ignore this
  loc_11069B22: MemVar_110A339C = Nothing
  loc_11069B26: IDE.GoTo loc_11069B2D 'Ignore this
  loc_11069B28: Call S_FilllstMenu()
  loc_11069B2D: IDE.GoTo loc_11069B34 'Ignore this
  loc_11069B2F: Call S_FilllstJobs()
  loc_11069B34: IDE.GoTo loc_11069B4F 'Ignore this
  loc_11069B3E:  'Ignore this
  loc_11069B47: Proc_31_11_1106EC14(Me, &H1D)
  loc_11069B4C: var_88 = vbNull 'Ignore this
  loc_11069B4F: IDE.GoTo loc_11069B52 'Ignore this
  loc_11069B51: Exit Sub
  loc_11069B52: ' Referenced from: 11069AB8
  loc_11069B52: IDE.GoTo loc_11069BDA 'Ignore this
  loc_11069B73: var_BC = Proc_16_4_1105F64C(Err, "Form_Load")
  loc_11069B76: var_B8 = "" 'Ignore this
  loc_11069B79: var_88 = "" = "" 'Ignore this
  loc_11069B80: IDE.GoTo loc_11069B8E 'Ignore this
            If (var_BC = 0) Then '11069B97
  loc_11069B8E:   IDE.GoTo loc_11069B94 'Ignore this
  loc_11069B90:   Resume Next
  loc_11069B94:   GoTo loc_11069BDA
            End If
  loc_11069B97: IDE.GoTo loc_11069BA5 'Ignore this
            If (var_BC = 1) Then '11069BAE
  loc_11069BA5:   IDE.GoTo loc_11069BAB 'Ignore this
  loc_11069BA7:   Resume
  loc_11069BAB:   GoTo loc_11069BDA
            End If
  loc_11069BAE: IDE.GoTo loc_11069BBC 'Ignore this
            If (var_BC = 2) Then '11069BDA
  loc_11069BBC:   IDE.GoTo loc_11069BC3 'Ignore this
  loc_11069BC0:   MemVar_110A3198 = &HFF
  loc_11069BC3:   IDE.GoTo loc_11069BDA 'Ignore this
  loc_11069BCF:   NewIfNullPr Me 'Ignore this
  loc_11069BD2:   UnLoad Me
  loc_11069BD7:   var_88 = vbNull 'Ignore this
  loc_11069BDA:   ' Referenced from: 11069B94
  loc_11069BDA:   ' Referenced from: 11069BAB
            End If
  loc_11069BDA: IDE.GoTo loc_11069BDC 'Ignore this
  loc_11069BDC: IDE.GoTo loc_11069BDF 'Ignore this
  loc_11069BDE: Exit Sub
  loc_11069BDF: IDE.GoTo loc_11069BDF 'Ignore this
  loc_11069BE1: Exit Sub
End Sub

And the modMain has 54 events, I'm not sure where to look for the license check function here. I need help here too.
Code
'VA: 11001106
Const cdata_0 = rtcMidCharVar
'VA: 1100114E
Const cdata_1 = rtcIsNumeric
'VA: 11001100
Const cdata_2 = rtcR8ValFromBstr
'VA: 110011A8
Const cdata_3 = rtcAnsiValueBstr
'VA: 1101C884
Const cdata_4 = "SELECT MachineXLabelIT.LabelID "
'VA: 11016C50
Const cdata_5 = "FROM RunInfo "
'VA: 1101C5F4
Const cdata_6 = "   INNER JOIN MachineXLabelIT ON RunInfo.MachineID = MachineXLabelIT.MachineID "
'VA: 1101C698
Const cdata_7 = "WHERE (((RunInfo.Counter)="
'VA: 11012104
Const cdata_8 = "))"
'VA: 11011BE4
Const cdata_9 = &H71
'VA: 11011BF4
Const cdata_A = &H31
'VA: 1101C8C8
Const cdata_B = "LabelID"
'VA: 11011C1C
Const cdata_C = &H53
'VA: 11011C2C
Const cdata_D = &H51
'VA: 1101C8DC
Const cdata_E = "Current Label ID"
'VA: 11004FC0
Const cdata_F = proc_11064E70
'VA: 1101C904
Const cdata_10 = "Labels"
'VA: 1101C918
Const cdata_11 = "Active=True"
'VA: 11001130
Const cdata_12 = rtcErrObj
'VA: 11013620
Const cdata_13 = &HA4C466B8
'VA: 1101663C
Const cdata_14 = "ID="
'VA: 110162F0
Const cdata_15 = "ID"
'VA: 1101C934
Const cdata_16 = "Fl_GetLabelID"
'VA: 11005814
Const cdata_17 = proc_1105F64C
'VA: 110A3198
Public cdata_18 As Variant
'VA: 110A319C
Public cdata_19 As Variant
'VA: 110A44D4
Public cdata_1A As Variant
'VA: 11013478
Const cdata_1B = &H2
'VA: 11013468
Const cdata_1C = &HFCFB3D22
'VA: 1100EC04
Const cdata_1D = &HB8
'VA: 1100EBDC
Const cdata_1E = &HB8
'VA: 11012244
Const cdata_1F = "
"
'VA: 1101C954
Const cdata_20 = "I: "
'VA: 11017C90
Const cdata_21 = " - "
'VA: 1100EBB4
Const cdata_22 = &HB8
'VA: 1100EB8C
Const cdata_23 = &HB8
'VA: 1101C960
Const cdata_24 = "E: "
'VA: 1100EC54
Const cdata_25 = &HB8
'VA: 1100EC2C
Const cdata_26 = &HB8
'VA: 1101C96C
Const cdata_27 = &H3A0044
'VA: 1100ECA4
Const cdata_28 = &HB8
'VA: 1100EC7C
Const cdata_29 = &HB8
'VA: 1101C978
Const cdata_2A = "B: "
'VA: 1100ECF4
Const cdata_2B = &HB8
'VA: 1100ECCC
Const cdata_2C = &HB8
'VA: 1101C400
Const cdata_2D = "C: "
'VA: 1100ED44
Const cdata_2E = &HB8
'VA: 1100ED1C
Const cdata_2F = &HB8
'VA: 1101C5E4
Const cdata_30 = "F: "
'VA: 1100ED94
Const cdata_31 = &HB8
'VA: 1100ED6C
Const cdata_32 = &HB8
'VA: 110168A0
Const cdata_33 = "G: "
'VA: 1100EDE4
Const cdata_34 = &HB8
'VA: 1100EDBC
Const cdata_35 = &HB8
'VA: 11016368
Const cdata_36 = "H: "
'VA: 1100EE34
Const cdata_37 = &HB8
'VA: 1100EE0C
Const cdata_38 = &HB8
'VA: 1101368C
Const cdata_39 = "J: "
'VA: 1100EE84
Const cdata_3A = &HB8
'VA: 1100EE5C
Const cdata_3B = &HB8
'VA: 1101C988
Const cdata_3C = "K: "
'VA: 1100EED4
Const cdata_3D = &HB8
'VA: 1100EEAC
Const cdata_3E = &HB8
'VA: 1101C994
Const cdata_3F = "L: "
'VA: 1100EF24
Const cdata_40 = &HB8
'VA: 1100EEFC
Const cdata_41 = &HB8
'VA: 1101C9A0
Const cdata_42 = "M: "
'VA: 1100EF74
Const cdata_43 = &HB8
'VA: 1100EF4C
Const cdata_44 = &HB8
'VA: 1101C9AC
Const cdata_45 = "O: "
'VA: 1100EFC4
Const cdata_46 = &HB8
'VA: 1100EF9C
Const cdata_47 = &HB8
'VA: 1101C9B8
Const cdata_48 = "P: "
'VA: 1100F014
Const cdata_49 = &HB8
'VA: 1100EFEC
Const cdata_4A = &HB8
'VA: 1101C9C4
Const cdata_4B = "Q: "
'VA: 1100F064
Const cdata_4C = &HB8
'VA: 1100F03C
Const cdata_4D = &HB8
'VA: 1101C9D0
Const cdata_4E = "S: "
'VA: 1100F0B4
Const cdata_4F = &HB8
'VA: 1100F08C
Const cdata_50 = &HB8
'VA: 1101C9DC
Const cdata_51 = "T: "
'VA: 1100F104
Const cdata_52 = &HB8
'VA: 1100F0DC
Const cdata_53 = &HB8
'VA: 1101C9E8
Const cdata_54 = "U: "
'VA: 1100F154
Const cdata_55 = &HB8
'VA: 1100F12C
Const cdata_56 = &HB8
'VA: 1101C9F4
Const cdata_57 = "V: "
'VA: 1100F1A4
Const cdata_58 = &HB8
'VA: 1100F17C
Const cdata_59 = &HB8
'VA: 1101CA00
Const cdata_5A = "W: "
'VA: 1100F1F4
Const cdata_5B = &HB8
'VA: 1100F1CC
Const cdata_5C = &HB8
'VA: 1101CA0C
Const cdata_5D = "X: "
'VA: 1100F244
Const cdata_5E = &HB8
'VA: 1100F21C
Const cdata_5F = &HB8
'VA: 1101CA18
Const cdata_60 = "Y: "
'VA: 1100F294
Const cdata_61 = &HB8
'VA: 1100F26C
Const cdata_62 = &HB8
'VA: 1101CA24
Const cdata_63 = "Z: "
'VA: 1101CA30
Const cdata_64 = "Fs_GetBandingList"
'VA: 11001166
Const cdata_65 = rtcUpperCaseVar
'VA: 1101CA58
Const cdata_66 = "Error"
'VA: 110011F0
Const cdata_67 = rtcOctVarFromVar
'VA: 110011C0
Const cdata_68 = rtcHexVarFromVar
'VA: 110011BA
Const cdata_69 = rtcVarBstrFromAnsi
'VA: 1101CA68
Const cdata_6A = "CncRunBase36"
'VA: 1100113C
Const cdata_6B = rtcImmediateIf
'VA: 11013CFC
Const cdata_6C = &H30
'VA: 1100119C
Const cdata_6D = rtcStringVar
'VA: 11009A34
Const cdata_6E = proc_11068A1C
'VA: 11001136
Const cdata_6F = rtcRightCharVar
'VA: 1101CA88
Const cdata_70 = "CncRunMax"
'VA: 1101CAA0
Const cdata_71 = &H52
'VA: 110A4580
Public cdata_72 As Variant
'VA: 11017558
Const cdata_73 = &H2
'VA: 11017548
Const cdata_74 = &H21
'VA: 11017670
Const cdata_75 = "DBInfo"
'VA: 110176A4
Const cdata_76 = &H4B
'VA: 1101CAF8
Const cdata_77 = "SELECT Max(DBInfo.Schema) AS MaxOfSchema FROM DBInfo"
'VA: 1101CB68
Const cdata_78 = "MaxOfSchema"
'VA: 11011894
Const cdata_79 = &H50
'VA: 1100F2E4
Const cdata_7A = &HB8
'VA: 1100F2BC
Const cdata_7B = &HB8
'VA: 1100EB64
Const cdata_7C = &HB8
'VA: 1100F58C
Const cdata_7D = &HB8
'VA: 1100EB28
Const cdata_7E = &HB8
'VA: 1100EA38
Const cdata_7F = &HB8
'VA: 1101CB90
Const cdata_80 = "Down"
'VA: 1101CB84
Const cdata_81 = "Up"
'VA: 1100EB00
Const cdata_82 = &HB8
'VA: 1100EA60
Const cdata_83 = &HB8
'VA: 1100EAC4
Const cdata_84 = &HB8
'VA: 1100EA88
Const cdata_85 = &HB8
'VA: 1100E9FC
Const cdata_86 = &HB8
'VA: 1100E90C
Const cdata_87 = &HB8
'VA: 1100E9D4
Const cdata_88 = &HB8
'VA: 1100E934
Const cdata_89 = &HB8
'VA: 1100E998
Const cdata_8A = &HB8
'VA: 1100E95C
Const cdata_8B = &HB8
'VA: 1100F870
Const cdata_8C = &HB8
'VA: 1100F85C
Const cdata_8D = &HB8
'VA: 1100F848
Const cdata_8E = &HB8
'VA: 1100F834
Const cdata_8F = &HB8
'VA: 1100F474
Const cdata_90 = &HB8
'VA: 11009A7C
Const cdata_91 = proc_1106839C
'VA: 1101CBA0
Const cdata_92 = " x "
'VA: 1100F49C
Const cdata_93 = &HB8
'VA: 1100F53C
Const cdata_94 = &HB8
'VA: 1100400C
Const cdata_95 = &HB8
'VA: 11005288
Const cdata_96 = &HB8
'VA: 1100F334
Const cdata_97 = &HB8
'VA: 110052D8
Const cdata_98 = &HB8
'VA: 1100F4C4
Const cdata_99 = &HB8
'VA: 1101CBAC
Const cdata_9A = ": "
'VA: 1100F3AC
Const cdata_9B = &HB8
'VA: 1100F30C
Const cdata_9C = &HB8
'VA: 1100F604
Const cdata_9D = &HB8
'VA: 1100F62C
Const cdata_9E = &HB8
'VA: 110011C6
Const cdata_9F = rtcGetPresentDate
'VA: 1101CBB8
Const cdata_A0 = "Long Date"
'VA: 110011A2
Const cdata_A1 = rtcVarFromFormatVar
'VA: 110175C0
Const cdata_A2 = &H20
'VA: 1101CBD0
Const cdata_A3 = "Medium Time"
'VA: 1101CBEC
Const cdata_A4 = "Short Date"
'VA: 1100F744
Const cdata_A5 = &HB8
'VA: 1101CC08
Const cdata_A6 = &H4D
'VA: 1100F690
Const cdata_A7 = &HB8
'VA: 11010F58
Public cdata_A8 As Variant
'VA: 1100F6CC
Const cdata_A9 = &HB8
'VA: 1100F708
Const cdata_AA = &HB8
'VA: 1100F5B4
Const cdata_AB = &HB8
'VA: 1100F80C
Const cdata_AC = &HB8
'VA: 1100F76C
Const cdata_AD = &HB8
'VA: 1100F794
Const cdata_AE = &HB8
'VA: 1100F7BC
Const cdata_AF = &HB8
'VA: 1100F7E4
Const cdata_B0 = &HB8
'VA: 11009A1C
Const cdata_B1 = proc_11098BC8
'VA: 1100EB3C
Const cdata_B2 = &HB8
'VA: 1100EAD8
Const cdata_B3 = &HB8
'VA: 1100EA9C
Const cdata_B4 = &HB8
'VA: 1100EA10
Const cdata_B5 = &HB8
'VA: 1100E9AC
Const cdata_B6 = &HB8
'VA: 1100E970
Const cdata_B7 = &HB8
'VA: 1100F758
Const cdata_B8 = &HB8
'VA: 1100F6A4
Const cdata_B9 = &HB8
'VA: 1100F6E0
Const cdata_BA = &HB8
'VA: 1100F71C
Const cdata_BB = &HB8
'VA: 1100FAF0
Const cdata_BC = &HB8
'VA: 1100FB18
Const cdata_BD = &HB8
'VA: 1100FB40
Const cdata_BE = &HB8
'VA: 1100FB68
Const cdata_BF = &HB8
'VA: 1100FB90
Const cdata_C0 = &HB8
'VA: 1100FBB8
Const cdata_C1 = &HB8
'VA: 1100F960
Const cdata_C2 = &HB8
'VA: 1100F974
Const cdata_C3 = &HB8
'VA: 1100F988
Const cdata_C4 = &HB8
'VA: 1100F99C
Const cdata_C5 = &HB8
'VA: 1100F9B0
Const cdata_C6 = &HB8
'VA: 1100F9C4
Const cdata_C7 = &HB8
'VA: 1100F9D8
Const cdata_C8 = &HB8
'VA: 1100F9EC
Const cdata_C9 = &HB8
'VA: 1100FA00
Const cdata_CA = &HB8
'VA: 1100FA14
Const cdata_CB = &HB8
'VA: 1100FA28
Const cdata_CC = &HB8
'VA: 1100FA3C
Const cdata_CD = &HB8
'VA: 1100FA50
Const cdata_CE = &HB8
'VA: 1100FA64
Const cdata_CF = &HB8
'VA: 1100FA78
Const cdata_D0 = &HB8
'VA: 1100FA8C
Const cdata_D1 = &HB8
'VA: 1100FAA0
Const cdata_D2 = &HB8
'VA: 1100FAB4
Const cdata_D3 = &HB8
'VA: 1100FAC8
Const cdata_D4 = &HB8
'VA: 110053DC
Const cdata_D5 = &HB8
'VA: 11005404
Const cdata_D6 = &HB8
'VA: 1100542C
Const cdata_D7 = &HB8
'VA: 1101CC10
Const cdata_D8 = "0.00"
'VA: 11005364
Const cdata_D9 = &HB8
'VA: 1101CC2C
Const cdata_DA = "No"
'VA: 1101CC20
Const cdata_DB = "Yes"
'VA: 1100538C
Const cdata_DC = &HB8
'VA: 110053B4
Const cdata_DD = &HB8
'VA: 11005454
Const cdata_DE = &HB8
'VA: 1100547C
Const cdata_DF = &HB8
'VA: 1100FBE0
Const cdata_E0 = &HB8
'VA: 1100FC08
Const cdata_E1 = &HB8
'VA: 1100FC30
Const cdata_E2 = &HB8
'VA: 1100F8FC
Const cdata_E3 = &HB8
'VA: 1100FC58
Const cdata_E4 = &HB8
'VA: 1100FC80
Const cdata_E5 = &HB8
'VA: 1101CC38
Const cdata_E6 = "Fs_GetLabelData"
'VA: 110A3204
Public cdata_E7 As Variant

and so on... I could send you the whole code if you need it.