# FloatRace_View_FloatRacePopupHelper_1358.luac
; fn @FloatRacePopupHelper.lua  line 0-0 np=0 va=1 ms=4 code=35 consts=16 upvals=1 protos=6
;   K[0]='FloatRacePopupHelper'
;   K[1]='setmetatable'
;   K[2]='canPopScene'
;   K[3]='EPopupScene'
;   K[4]='Board'
;   K[5]=true
;   K[6]='Main'
;   K[7]='BasePopupHelper'
;   K[8]='__index'
;   K[9]='Create'
;   K[10]='FloatRacePopupHelper'
;   K[11]='Init'
;   K[12]='_OnStateChanged'
;   K[13]='_OnFloatRaceFail'
;   K[14]='_OnFloatRaceLevelUp'
;   K[15]='CheckPopup'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  NEWTABLE  R2 = {} (0 items)
0003  GETTABUP  R3 = _ENV[K3('EPopupScene')]
0004  GETTABLE  R3 = R3[K4('Board')]
0005  SETTABLE  R2[R3] = K5(true)
0006  GETTABUP  R3 = _ENV[K3('EPopupScene')]
0007  GETTABLE  R3 = R3[K6('Main')]
0008  SETTABLE  R2[R3] = K5(true)
0009  SETTABLE  R1[K2('canPopScene')] = R2
0010  GETTABUP  R2 = _ENV[K7('BasePopupHelper')]
0011  CALL      R0 = call(R0, 1 args, 2 rets)
0012  SETTABUP  _ENV[K0('FloatRacePopupHelper')] = R0
0013  GETTABUP  R0 = _ENV[K0('FloatRacePopupHelper')]
0014  GETTABUP  R1 = _ENV[K0('FloatRacePopupHelper')]
0015  SETTABLE  R0[K8('__index')] = R1
0016  GETTABUP  R0 = _ENV[K0('FloatRacePopupHelper')]
0017  CLOSURE   R1 = closure proto0
0018  SETTABLE  R0[K9('Create')] = R1
0019  GETTABUP  R0 = _ENV[K10('FloatRacePopupHelper')]
0020  CLOSURE   R1 = closure proto1
0021  SETTABLE  R0[K11('Init')] = R1
0022  GETTABUP  R0 = _ENV[K10('FloatRacePopupHelper')]
0023  CLOSURE   R1 = closure proto2
0024  SETTABLE  R0[K12('_OnStateChanged')] = R1
0025  GETTABUP  R0 = _ENV[K10('FloatRacePopupHelper')]
0026  CLOSURE   R1 = closure proto3
0027  SETTABLE  R0[K13('_OnFloatRaceFail')] = R1
0028  GETTABUP  R0 = _ENV[K10('FloatRacePopupHelper')]
0029  CLOSURE   R1 = closure proto4
0030  SETTABLE  R0[K14('_OnFloatRaceLevelUp')] = R1
0031  GETTABUP  R0 = _ENV[K10('FloatRacePopupHelper')]
0032  CLOSURE   R1 = closure proto5
0033  SETTABLE  R0[K15('CheckPopup')] = R1
0034  RETURN    return R0..R-1
; ---------- proto0 [Create] ----------
  ; fn ?  line 10-14 np=0 va=0 ms=3 code=8 consts=3 upvals=1 protos=0
  ;   K[0]='setmetatable'
  ;   K[1]='FloatRacePopupHelper'
  ;   K[2]='Init'
  ;   upvals: _ENV
  ;   locals: helper(4-8)
  0000  GETTABUP  R0 = _ENV[K0('setmetatable')]
  0001  NEWTABLE  R1 = {} (0 items)
  0002  GETTABUP  R2 = _ENV[K1('FloatRacePopupHelper')]
  0003  CALL      R0 = call(R0, 1 args, 2 rets)
  0004  SELF      R2 = R0[K2('Init')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
  0007  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 16-25 np=1 va=0 ms=5 code=40 consts=18 upvals=1 protos=0
  ;   K[0]='BasePopupHelper'
  ;   K[1]='Init'
  ;   K[2]='m_model'
  ;   K[3]='GM'
  ;   K[4]='ActivityManager'
  ;   K[5]='GetModel'
  ;   K[6]='ActivityType'
  ;   K[7]='FloatRace'
  ;   K[8]='EventDispatcher'
  ;   K[9]='AddListener'
  ;   K[10]='EEventType'
  ;   K[11]='FloatRaceStateChanged'
  ;   K[12]='_OnStateChanged'
  ;   K[13]='FloatRaceFail'
  ;   K[14]='_OnFloatRaceFail'
  ;   K[15]='FloatRaceLevelUp'
  ;   K[16]='_OnFloatRaceLevelUp'
  ;   K[17]='FloatRaceFinishedAll'
  ;   upvals: _ENV
  ;   locals: self(0-40)
  0000  GETTABUP  R1 = _ENV[K0('BasePopupHelper')]
  0001  GETTABLE  R1 = R1[K1('Init')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABUP  R1 = _ENV[K3('GM')]
  0005  GETTABLE  R1 = R1[K4('ActivityManager')]
  0006  SELF      R2 = R1[K5('GetModel')] (self)
  0007  GETTABUP  R3 = _ENV[K6('ActivityType')]
  0008  GETTABLE  R3 = R3[K7('FloatRace')]
  0009  CALL      R1 = call(R1, 1 args, 2 rets)
  0010  SETTABLE  R0[K2('m_model')] = R1
  0011  GETTABUP  R1 = _ENV[K8('EventDispatcher')]
  0012  GETTABLE  R1 = R1[K9('AddListener')]
  0013  GETTABUP  R2 = _ENV[K10('EEventType')]
  0014  GETTABLE  R2 = R2[K11('FloatRaceStateChanged')]
  0015  MOVE      R3 = R0
  0016  GETTABLE  R4 = R0[K12('_OnStateChanged')]
  0017  CALL      R1 = call(R1, 0 args, 3 rets)
  0018  GETTABUP  R1 = _ENV[K8('EventDispatcher')]
  0019  GETTABLE  R1 = R1[K9('AddListener')]
  0020  GETTABUP  R2 = _ENV[K10('EEventType')]
  0021  GETTABLE  R2 = R2[K13('FloatRaceFail')]
  0022  MOVE      R3 = R0
  0023  GETTABLE  R4 = R0[K14('_OnFloatRaceFail')]
  0024  CALL      R1 = call(R1, 0 args, 3 rets)
  0025  GETTABUP  R1 = _ENV[K8('EventDispatcher')]
  0026  GETTABLE  R1 = R1[K9('AddListener')]
  0027  GETTABUP  R2 = _ENV[K10('EEventType')]
  0028  GETTABLE  R2 = R2[K15('FloatRaceLevelUp')]
  0029  MOVE      R3 = R0
  0030  GETTABLE  R4 = R0[K16('_OnFloatRaceLevelUp')]
  0031  CALL      R1 = call(R1, 0 args, 3 rets)
  0032  GETTABUP  R1 = _ENV[K8('EventDispatcher')]
  0033  GETTABLE  R1 = R1[K9('AddListener')]
  0034  GETTABUP  R2 = _ENV[K10('EEventType')]
  0035  GETTABLE  R2 = R2[K17('FloatRaceFinishedAll')]
  0036  MOVE      R3 = R0
  0037  GETTABLE  R4 = R0[K16('_OnFloatRaceLevelUp')]
  0038  CALL      R1 = call(R1, 0 args, 3 rets)
  0039  RETURN    return R0..R-1
; ---------- proto2 [_OnStateChanged] ----------
  ; fn ?  line 27-29 np=1 va=0 ms=4 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='SetNeedCheckPopup'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('SetNeedCheckPopup')] (self)
  0001  LOADBOOL  R3 = true
  0002  CALL      R1 = call(R1, 0 args, 2 rets)
  0003  RETURN    return R0..R-1
; ---------- proto3 [_OnFloatRaceFail] ----------
  ; fn ?  line 31-33 np=1 va=0 ms=4 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='SetNeedCheckPopup'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('SetNeedCheckPopup')] (self)
  0001  LOADBOOL  R3 = true
  0002  CALL      R1 = call(R1, 0 args, 2 rets)
  0003  RETURN    return R0..R-1
; ---------- proto4 [_OnFloatRaceLevelUp] ----------
  ; fn ?  line 35-38 np=1 va=0 ms=4 code=5 consts=3 upvals=0 protos=0
  ;   K[0]='m_bOpenMainWindow'
  ;   K[1]=true
  ;   K[2]='SetNeedCheckPopup'
  ;   locals: self(0-5)
  0000  SETTABLE  R0[K0('m_bOpenMainWindow')] = K1(true)
  0001  SELF      R2 = R0[K2('SetNeedCheckPopup')] (self)
  0002  LOADBOOL  R3 = true
  0003  CALL      R1 = call(R1, 0 args, 2 rets)
  0004  RETURN    return R0..R-1
; ---------- proto5 [CheckPopup] ----------
  ; fn ?  line 40-87 np=1 va=0 ms=5 code=134 consts=28 upvals=1 protos=0
  ;   K[0]='Application'
  ;   K[1]='internetReachability'
  ;   K[2]='NetworkReachability'
  ;   K[3]='NotReachable'
  ;   K[4]='m_model'
  ;   K[5]='GetState'
  ;   K[6]='ActivityState'
  ;   K[7]='Started'
  ;   K[8]='HasWindowOpenedOnce'
  ;   K[9]='UIPrefabConfigName'
  ;   K[10]='FloatRaceReadyWindow'
  ;   K[11]='CanFailWindowPop'
  ;   K[12]='FloatRaceFailWindow'
  ;   K[13]='GetLastLevel'
  ;   K[14]='GetLevel'
  ;   K[15]='m_bOpenMainWindow'
  ;   K[16]=false
  ;   K[17]=true
  ;   K[18]='FloatRaceMainWindow'
  ;   K[19]='IsAllRoundFinished'
  ;   K[20]='CanPopFinishWindow'
  ;   K[21]='FloatRaceFinishWindow'
  ;   K[22]='CanPopSelectWindow'
  ;   K[23]='FloatRaceSelectWindow'
  ;   K[24]='Ended'
  ;   K[25]='CanPopEndWindow'
  ;   K[26]='IsEndWindowSkippedByAway'
  ;   K[27]='FloatRaceEndWindow'
  ;   upvals: _ENV
  ;   locals: self(0-134), state(10-134)
  0000  GETTABUP  R1 = _ENV[K0('Application')]
  0001  GETTABLE  R1 = R1[K1('internetReachability')]
  0002  GETTABUP  R2 = _ENV[K2('NetworkReachability')]
  0003  GETTABLE  R2 = R2[K3('NotReachable')]
  0004  EQ        if R0 eq R2   -> -130552
  0005  JMP       (jump)   -> 7
  0006  RETURN    return R0..R-1
  0007  GETTABLE  R1 = R0[K4('m_model')]
  0008  SELF      R2 = R1[K5('GetState')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  GETTABUP  R2 = _ENV[K6('ActivityState')]
  0011  GETTABLE  R2 = R2[K7('Started')]
  0012  EQ        if R0 eq R2   -> -130544
  0013  JMP       (jump)   -> 89
  0014  GETTABLE  R2 = R0[K4('m_model')]
  0015  SELF      R3 = R2[K8('HasWindowOpenedOnce')] (self)
  0016  GETTABUP  R4 = _ENV[K6('ActivityState')]
  0017  GETTABLE  R4 = R4[K7('Started')]
  0018  CALL      R2 = call(R2, 1 args, 2 rets)
  0019  TEST      if not R2 then   -> -131050
  0020  JMP       (jump)   -> 27
  0021  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0022  GETTABLE  R2 = R2[K10('FloatRaceReadyWindow')]
  0023  NEWTABLE  R3 = {} (1 items)
  0024  LOADBOOL  R4 = true
  0025  SETLIST   setlist R3[B=1,C=1]
  0026  RETURN    return R2..R1
  0027  GETTABLE  R2 = R0[K4('m_model')]
  0028  SELF      R3 = R2[K11('CanFailWindowPop')] (self)
  0029  CALL      R2 = call(R2, 1 args, 1 rets)
  0030  TEST      if not R2 then   -> -131040
  0031  JMP       (jump)   -> 35
  0032  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0033  GETTABLE  R2 = R2[K12('FloatRaceFailWindow')]
  0034  RETURN    return R2..R1
  0035  GETTABLE  R2 = R0[K4('m_model')]
  0036  SELF      R3 = R2[K13('GetLastLevel')] (self)
  0037  CALL      R2 = call(R2, 1 args, 1 rets)
  0038  GETTABLE  R3 = R0[K4('m_model')]
  0039  SELF      R4 = R3[K14('GetLevel')] (self)
  0040  CALL      R3 = call(R3, 1 args, 1 rets)
  0041  EQ        if R0 eq R3   -> -130002
  0042  JMP       (jump)   -> 45
  0043  SETTABLE  R0[K15('m_bOpenMainWindow')] = K16(false)
  0044  JMP       (jump)   -> 46
  0045  SETTABLE  R0[K15('m_bOpenMainWindow')] = K17(true)
  0046  GETTABLE  R2 = R0[K15('m_bOpenMainWindow')]
  0047  TEST      if not R2 then   -> -131023
  0048  JMP       (jump)   -> 56
  0049  SETTABLE  R0[K15('m_bOpenMainWindow')] = K16(false)
  0050  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0051  GETTABLE  R2 = R2[K18('FloatRaceMainWindow')]
  0052  NEWTABLE  R3 = {} (1 items)
  0053  LOADBOOL  R4 = true
  0054  SETLIST   setlist R3[B=1,C=1]
  0055  RETURN    return R2..R1
  0056  GETTABLE  R2 = R0[K4('m_model')]
  0057  SELF      R3 = R2[K19('IsAllRoundFinished')] (self)
  0058  CALL      R2 = call(R2, 1 args, 1 rets)
  0059  TEST      if not R2 then   -> -131011
  0060  JMP       (jump)   -> 72
  0061  GETTABLE  R2 = R0[K4('m_model')]
  0062  SELF      R3 = R2[K20('CanPopFinishWindow')] (self)
  0063  CALL      R2 = call(R2, 1 args, 1 rets)
  0064  TEST      if not R2 then   -> -131006
  0065  JMP       (jump)   -> 72
  0066  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0067  GETTABLE  R2 = R2[K21('FloatRaceFinishWindow')]
  0068  NEWTABLE  R3 = {} (1 items)
  0069  LOADBOOL  R4 = true
  0070  SETLIST   setlist R3[B=1,C=1]
  0071  RETURN    return R2..R1
  0072  GETTABLE  R2 = R0[K4('m_model')]
  0073  SELF      R3 = R2[K22('CanPopSelectWindow')] (self)
  0074  CALL      R2 = call(R2, 1 args, 1 rets)
  0075  TEST      if not R2 then   -> -130995
  0076  JMP       (jump)   -> 133
  0077  GETTABLE  R2 = R0[K4('m_model')]
  0078  SELF      R3 = R2[K19('IsAllRoundFinished')] (self)
  0079  CALL      R2 = call(R2, 1 args, 1 rets)
  0080  TEST      if not R2 then   -> -130989
  0081  JMP       (jump)   -> 133
  0082  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0083  GETTABLE  R2 = R2[K23('FloatRaceSelectWindow')]
  0084  NEWTABLE  R3 = {} (1 items)
  0085  LOADBOOL  R4 = true
  0086  SETLIST   setlist R3[B=1,C=1]
  0087  RETURN    return R2..R1
  0088  JMP       (jump)   -> 133
  0089  GETTABUP  R2 = _ENV[K6('ActivityState')]
  0090  GETTABLE  R2 = R2[K24('Ended')]
  0091  EQ        if R0 eq R2   -> -130465
  0092  JMP       (jump)   -> 133
  0093  GETTABLE  R2 = R0[K4('m_model')]
  0094  SELF      R3 = R2[K8('HasWindowOpenedOnce')] (self)
  0095  GETTABUP  R4 = _ENV[K6('ActivityState')]
  0096  GETTABLE  R4 = R4[K7('Started')]
  0097  CALL      R2 = call(R2, 1 args, 2 rets)
  0098  TEST      if not R2 then   -> -130972
  0099  JMP       (jump)   -> 133
  0100  GETTABLE  R2 = R0[K4('m_model')]
  0101  SELF      R3 = R2[K25('CanPopEndWindow')] (self)
  0102  CALL      R2 = call(R2, 1 args, 1 rets)
  0103  TEST      if not R2 then   -> -130967
  0104  JMP       (jump)   -> 133
  0105  GETTABLE  R2 = R0[K4('m_model')]
  0106  SELF      R3 = R2[K20('CanPopFinishWindow')] (self)
  0107  CALL      R2 = call(R2, 1 args, 1 rets)
  0108  TEST      if not R2 then   -> -130962
  0109  JMP       (jump)   -> 133
  0110  GETTABLE  R2 = R0[K4('m_model')]
  0111  SELF      R3 = R2[K19('IsAllRoundFinished')] (self)
  0112  CALL      R2 = call(R2, 1 args, 1 rets)
  0113  TEST      if not R2 then   -> -130957
  0114  JMP       (jump)   -> 122
  0115  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0116  GETTABLE  R2 = R2[K21('FloatRaceFinishWindow')]
  0117  NEWTABLE  R3 = {} (1 items)
  0118  LOADBOOL  R4 = true
  0119  SETLIST   setlist R3[B=1,C=1]
  0120  RETURN    return R2..R1
  0121  JMP       (jump)   -> 133
  0122  GETTABLE  R2 = R0[K4('m_model')]
  0123  SELF      R3 = R2[K26('IsEndWindowSkippedByAway')] (self)
  0124  CALL      R2 = call(R2, 1 args, 1 rets)
  0125  TEST      if not R2 then   -> -130944
  0126  JMP       (jump)   -> 133
  0127  GETTABUP  R2 = _ENV[K9('UIPrefabConfigName')]
  0128  GETTABLE  R2 = R2[K27('FloatRaceEndWindow')]
  0129  NEWTABLE  R3 = {} (1 items)
  0130  LOADBOOL  R4 = true
  0131  SETLIST   setlist R3[B=1,C=1]
  0132  RETURN    return R2..R1
  0133  RETURN    return R0..R-1
