Code: Select all
Macro osR(w,msk,shft)
((w & msk) >> shft)
EndMacro
Macro osL(w,msk,shft)
((w & msk) << shft)
EndMacro
Procedure ob_obsfucate_sillier(mem.l, sz.l, skip.l = #False)
Protected i.l, wk.l
Protected *ps.byte
Goto oc
ooa:
wk = *ps\b & $FF
;return to ba
Goto ba
oc:
myooa = ?ooa
Goto ob
begin:
For i = 1 To sz
PUSH myooa
;do some stuff?
RET
ba:
Goto ooo3
;do the *ps+1
orpa:
*ps + 1
Goto ooo4
ooo3:
;do
Goto a1
r2:
Goto a2
r3:
Goto a3
a2:
teos|(osR(wk, $08, 3) | osL(wk, $01, 3) | osR(wk, $04, 1))
Goto r3:
a1:
teos = osR(wk, $C0, 2) | osL(wk, $30, 2)
Goto r2
a3:
teos|(osL(wk, $02, 1))
*ps\b = teos
PUSH l_orpa ;=======ERROR============
RET
ooo4:
Next
Goto oa
ob:
*ps = mem
Goto begin
oa:
EndProcedure
Code: Select all
---------------------------
PureBasic - Assembler error
---------------------------
PureBasic.asm [448]:
MP0
PureBasic.asm [229] MP0 [140]:
PUSH l_orpa
error: undefined symbol 'l_orpa'.
---------------------------
OK
---------------------------