Skip to content

Instantly share code, notes, and snippets.

@MrToph MrToph/mumachayinmm.wast Secret
Created Sep 25, 2019

Embed
What would you like to do?
EOSPlay hack attacker contract
(module
(type $t0 (func (param i32 i32 i32)))
(type $t1 (func (param i32 i32)))
(type $t2 (func (param i32 i32 i32 i32 i32)))
(type $t3 (func (param i32)))
(type $t4 (func (param i32 i64)))
(type $t5 (func (param i32 i64 i64)))
(type $t6 (func))
(type $t7 (func (result i64)))
(type $t8 (func (param i64 i64)))
(type $t9 (func (result i32)))
(type $t10 (func (param i32 i32) (result i32)))
(type $t11 (func (param i32 i32 i32) (result i32)))
(type $t12 (func (param i64)))
(type $t13 (func (param i64 i64 i64 i64) (result i32)))
(type $t14 (func (param i32 i64 i32 i32)))
(type $t15 (func (param i64 i64 i64 i64 i32 i32) (result i32)))
(type $t16 (func (param i32) (result i32)))
(type $t17 (func (param i32 i64 i32 i32 i32)))
(type $t18 (func (param f64)))
(type $t19 (func (param i64 i64 i64)))
(type $t20 (func (param i32 i32 i64 i32)))
(type $t21 (func (param i32 i32 i32 i32)))
(type $t22 (func (param i32 i32 i32 i32 i32 i32 i32 i32)))
(import "env" "abort" (func $env.abort (type $t6)))
(import "env" "action_data_size" (func $env.action_data_size (type $t9)))
(import "env" "cancel_deferred" (func $env.cancel_deferred (type $t16)))
(import "env" "current_receiver" (func $env.current_receiver (type $t7)))
(import "env" "current_time" (func $env.current_time (type $t7)))
(import "env" "db_get_i64" (func $env.db_get_i64 (type $t11)))
(import "env" "db_lowerbound_i64" (func $env.db_lowerbound_i64 (type $t13)))
(import "env" "db_next_i64" (func $env.db_next_i64 (type $t10)))
(import "env" "db_remove_i64" (func $env.db_remove_i64 (type $t3)))
(import "env" "db_store_i64" (func $env.db_store_i64 (type $t15)))
(import "env" "db_update_i64" (func $env.db_update_i64 (type $t14)))
(import "env" "eosio_assert" (func $env.eosio_assert (type $t1)))
(import "env" "memcpy" (func $env.memcpy (type $t11)))
(import "env" "printdf" (func $env.printdf (type $t18)))
(import "env" "prints" (func $env.prints (type $t3)))
(import "env" "printui" (func $env.printui (type $t12)))
(import "env" "read_action_data" (func $env.read_action_data (type $t10)))
(import "env" "require_auth" (func $env.require_auth (type $t12)))
(import "env" "require_auth2" (func $env.require_auth2 (type $t8)))
(import "env" "send_deferred" (func $env.send_deferred (type $t17)))
(import "env" "send_inline" (func $env.send_inline (type $t1)))
(func $_ZeqRK11checksum256S1_ (export "_ZeqRK11checksum256S1_") (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(i32.eqz
(call $memcmp
(local.get $p0)
(local.get $p1)
(i32.const 32))))
(func $_ZeqRK11checksum160S1_ (export "_ZeqRK11checksum160S1_") (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(i32.eqz
(call $memcmp
(local.get $p0)
(local.get $p1)
(i32.const 32))))
(func $_ZneRK11checksum160S1_ (export "_ZneRK11checksum160S1_") (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(i32.ne
(call $memcmp
(local.get $p0)
(local.get $p1)
(i32.const 32))
(i32.const 0)))
(func $now (export "now") (type $t9) (result i32)
(i32.wrap_i64
(i64.div_u
(call $env.current_time)
(i64.const 1000000))))
(func $_ZN5eosio12require_authERKNS_16permission_levelE (export "_ZN5eosio12require_authERKNS_16permission_levelE") (type $t3) (param $p0 i32)
(call $env.require_auth2
(i64.load
(local.get $p0))
(i64.load offset=8
(local.get $p0))))
(func $apply (export "apply") (type $t19) (param $p0 i64) (param $p1 i64) (param $p2 i64)
(local $l3 i32) (local $l4 i32) (local $l5 i64) (local $l6 i64) (local $l7 i64) (local $l8 i64) (local $l9 i32)
(i32.store offset=4
(i32.const 0)
(local.tee $l9
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 240))))
(local.set $l6
(i64.const 0))
(local.set $l5
(i64.const 59))
(local.set $l4
(i32.const 16))
(local.set $l7
(i64.const 0))
(loop $L0
(block $B1
(block $B2
(block $B3
(block $B4
(block $B5
(br_if $B5
(i64.gt_u
(local.get $l6)
(i64.const 6)))
(br_if $B4
(i32.gt_u
(i32.and
(i32.add
(local.tee $l3
(i32.load8_s
(local.get $l4)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l3
(i32.add
(local.get $l3)
(i32.const 165)))
(br $B3))
(local.set $l8
(i64.const 0))
(br_if $B2
(i64.le_u
(local.get $l6)
(i64.const 11)))
(br $B1))
(local.set $l3
(select
(i32.add
(local.get $l3)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l3)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l8
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l3))
(i64.const 56))
(i64.const 56))))
(local.set $l8
(i64.shl
(i64.and
(local.get $l8)
(i64.const 31))
(i64.and
(local.get $l5)
(i64.const 4294967295)))))
(local.set $l4
(i32.add
(local.get $l4)
(i32.const 1)))
(local.set $l6
(i64.add
(local.get $l6)
(i64.const 1)))
(local.set $l7
(i64.or
(local.get $l8)
(local.get $l7)))
(br_if $L0
(i64.ne
(local.tee $l5
(i64.add
(local.get $l5)
(i64.const -5)))
(i64.const -6))))
(block $B6
(br_if $B6
(i64.ne
(local.get $l7)
(local.get $p2)))
(local.set $l6
(i64.const 0))
(local.set $l5
(i64.const 59))
(local.set $l4
(i32.const 32))
(local.set $l7
(i64.const 0))
(loop $L7
(block $B8
(block $B9
(block $B10
(block $B11
(block $B12
(br_if $B12
(i64.gt_u
(local.get $l6)
(i64.const 4)))
(br_if $B11
(i32.gt_u
(i32.and
(i32.add
(local.tee $l3
(i32.load8_s
(local.get $l4)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l3
(i32.add
(local.get $l3)
(i32.const 165)))
(br $B10))
(local.set $l8
(i64.const 0))
(br_if $B9
(i64.le_u
(local.get $l6)
(i64.const 11)))
(br $B8))
(local.set $l3
(select
(i32.add
(local.get $l3)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l3)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l8
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l3))
(i64.const 56))
(i64.const 56))))
(local.set $l8
(i64.shl
(i64.and
(local.get $l8)
(i64.const 31))
(i64.and
(local.get $l5)
(i64.const 4294967295)))))
(local.set $l4
(i32.add
(local.get $l4)
(i32.const 1)))
(local.set $l6
(i64.add
(local.get $l6)
(i64.const 1)))
(local.set $l7
(i64.or
(local.get $l8)
(local.get $l7)))
(br_if $L7
(i64.ne
(local.tee $l5
(i64.add
(local.get $l5)
(i64.const -5)))
(i64.const -6))))
(call $env.eosio_assert
(i64.eq
(local.get $l7)
(local.get $p1))
(i32.const 48)))
(block $B13
(block $B14
(br_if $B14
(i64.eq
(local.get $p1)
(local.get $p0)))
(local.set $l6
(i64.const 0))
(local.set $l5
(i64.const 59))
(local.set $l4
(i32.const 16))
(local.set $l7
(i64.const 0))
(loop $L15
(block $B16
(block $B17
(block $B18
(block $B19
(block $B20
(br_if $B20
(i64.gt_u
(local.get $l6)
(i64.const 6)))
(br_if $B19
(i32.gt_u
(i32.and
(i32.add
(local.tee $l3
(i32.load8_s
(local.get $l4)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l3
(i32.add
(local.get $l3)
(i32.const 165)))
(br $B18))
(local.set $l8
(i64.const 0))
(br_if $B17
(i64.le_u
(local.get $l6)
(i64.const 11)))
(br $B16))
(local.set $l3
(select
(i32.add
(local.get $l3)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l3)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l8
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l3))
(i64.const 56))
(i64.const 56))))
(local.set $l8
(i64.shl
(i64.and
(local.get $l8)
(i64.const 31))
(i64.and
(local.get $l5)
(i64.const 4294967295)))))
(local.set $l4
(i32.add
(local.get $l4)
(i32.const 1)))
(local.set $l6
(i64.add
(local.get $l6)
(i64.const 1)))
(local.set $l7
(i64.or
(local.get $l8)
(local.get $l7)))
(br_if $L15
(i64.ne
(local.tee $l5
(i64.add
(local.get $l5)
(i64.const -5)))
(i64.const -6))))
(br_if $B13
(i64.ne
(local.get $l7)
(local.get $p2))))
(i64.store offset=232
(local.get $l9)
(local.get $p0))
(block $B21
(block $B22
(block $B23
(block $B24
(block $B25
(block $B26
(block $B27
(block $B28
(block $B29
(block $B30
(block $B31
(block $B32
(block $B33
(br_if $B33
(i64.gt_s
(local.get $p2)
(i64.const -4417024779550720001)))
(br_if $B32
(i64.le_s
(local.get $p2)
(i64.const -4417327547008679937)))
(br_if $B30
(i64.gt_s
(local.get $p2)
(i64.const -4417119430073384961)))
(br_if $B28
(i64.eq
(local.get $p2)
(i64.const -4417327547008679936)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const -4417265315080044544)))
(i32.store offset=180
(local.get $l9)
(i32.const 0))
(i32.store offset=176
(local.get $l9)
(i32.const 1))
(i64.store offset=56 align=4
(local.get $l9)
(i64.load offset=176
(local.get $l9)))
(drop
(call $f37
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 56))))
(br $B13))
(br_if $B31
(i64.le_s
(local.get $p2)
(i64.const 4923676291099525119)))
(br_if $B29
(i64.gt_s
(local.get $p2)
(i64.const 7746191359077253119)))
(br_if $B27
(i64.eq
(local.get $p2)
(i64.const 4923676291099525120)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const 5350276357316149248)))
(i32.store offset=220
(local.get $l9)
(i32.const 0))
(i32.store offset=216
(local.get $l9)
(i32.const 2))
(i64.store offset=16 align=4
(local.get $l9)
(i64.load offset=216
(local.get $l9)))
(drop
(call $f30
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 16))))
(br $B13))
(br_if $B26
(i64.eq
(local.get $p2)
(i64.const -4709076360369274880)))
(br_if $B25
(i64.eq
(local.get $p2)
(i64.const -4420687654543163392)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const -4417352477888217088)))
(i32.store offset=172
(local.get $l9)
(i32.const 0))
(i32.store offset=168
(local.get $l9)
(i32.const 3))
(i64.store offset=64 align=4
(local.get $l9)
(i64.load offset=168
(local.get $l9)))
(drop
(call $f40
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 64))))
(br $B13))
(br_if $B24
(i64.eq
(local.get $p2)
(i64.const -4417024779550720000)))
(br_if $B23
(i64.eq
(local.get $p2)
(i64.const -4417020468658176000)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const -4157529991795441664)))
(i32.store offset=212
(local.get $l9)
(i32.const 0))
(i32.store offset=208
(local.get $l9)
(i32.const 4))
(i64.store offset=24 align=4
(local.get $l9)
(i64.load offset=208
(local.get $l9)))
(drop
(call $f28
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 24))))
(br $B13))
(br_if $B22
(i64.eq
(local.get $p2)
(i64.const -4417119430073384960)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const -4417049033503145984)))
(i32.store offset=132
(local.get $l9)
(i32.const 0))
(i32.store offset=128
(local.get $l9)
(i32.const 5))
(i64.store offset=104 align=4
(local.get $l9)
(i64.load offset=128
(local.get $l9)))
(drop
(call $f37
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 104))))
(br $B13))
(br_if $B21
(i64.eq
(local.get $p2)
(i64.const 7746191359077253120)))
(br_if $B13
(i64.ne
(local.get $p2)
(i64.const 8421045207927095296)))
(i32.store offset=196
(local.get $l9)
(i32.const 0))
(i32.store offset=192
(local.get $l9)
(i32.const 6))
(i64.store offset=40 align=4
(local.get $l9)
(i64.load offset=192
(local.get $l9)))
(drop
(call $f35
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 40))))
(br $B13))
(i32.store offset=204
(local.get $l9)
(i32.const 0))
(i32.store offset=200
(local.get $l9)
(i32.const 7))
(i64.store offset=32 align=4
(local.get $l9)
(i64.load offset=200
(local.get $l9)))
(drop
(call $f33
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 32))))
(br $B13))
(i32.store offset=148
(local.get $l9)
(i32.const 0))
(i32.store offset=144
(local.get $l9)
(i32.const 8))
(i64.store offset=88 align=4
(local.get $l9)
(i64.load offset=144
(local.get $l9)))
(drop
(call $f35
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 88))))
(br $B13))
(i32.store offset=228
(local.get $l9)
(i32.const 0))
(i32.store offset=224
(local.get $l9)
(i32.const 9))
(i64.store offset=8 align=4
(local.get $l9)
(i64.load offset=224
(local.get $l9)))
(drop
(call $f28
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 8))))
(br $B13))
(i32.store offset=164
(local.get $l9)
(i32.const 0))
(i32.store offset=160
(local.get $l9)
(i32.const 10))
(i64.store offset=72 align=4
(local.get $l9)
(i64.load offset=160
(local.get $l9)))
(drop
(call $f35
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 72))))
(br $B13))
(i32.store offset=124
(local.get $l9)
(i32.const 0))
(i32.store offset=120
(local.get $l9)
(i32.const 11))
(i64.store offset=112 align=4
(local.get $l9)
(i64.load offset=120
(local.get $l9)))
(drop
(call $f47
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 112))))
(br $B13))
(i32.store offset=140
(local.get $l9)
(i32.const 0))
(i32.store offset=136
(local.get $l9)
(i32.const 12))
(i64.store offset=96 align=4
(local.get $l9)
(i64.load offset=136
(local.get $l9)))
(drop
(call $f40
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 96))))
(br $B13))
(i32.store offset=156
(local.get $l9)
(i32.const 0))
(i32.store offset=152
(local.get $l9)
(i32.const 13))
(i64.store offset=80 align=4
(local.get $l9)
(i64.load offset=152
(local.get $l9)))
(drop
(call $f37
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 80))))
(br $B13))
(i32.store offset=188
(local.get $l9)
(i32.const 0))
(i32.store offset=184
(local.get $l9)
(i32.const 14))
(i64.store offset=48 align=4
(local.get $l9)
(i64.load offset=184
(local.get $l9)))
(drop
(call $f37
(i32.add
(local.get $l9)
(i32.const 232))
(i32.add
(local.get $l9)
(i32.const 48)))))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l9)
(i32.const 240))))
(func $f27 (type $t0) (param $p0 i32) (param $p1 i32) (param $p2 i32)
(local $l3 i32) (local $l4 i64) (local $l5 i64) (local $l6 i64) (local $l7 i32) (local $l8 f64) (local $l9 i32)
(i32.store offset=4
(i32.const 0)
(local.tee $l9
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 128))))
(call $env.require_auth
(i64.load
(local.get $p0)))
(i32.store
(i32.add
(local.get $l9)
(i32.const 120))
(i32.const 0))
(i64.store offset=104
(local.get $l9)
(i64.const -1))
(i64.store offset=88
(local.get $l9)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=96
(local.get $l9)
(local.get $l6))
(i64.store offset=112
(local.get $l9)
(i64.const 0))
// HINT: target check
(local.set $l4
(i64.add
(local.tee $l6
(i64.load offset=32
(call $f48
(i32.add
(local.get $l9)
(i32.const 88))
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const 4982871467403247616)
(i64.const 0)))))
(i64.const -500)))
(block $B0
(block $B1
(block $B2
(block $B3
(br_if $B3
(i64.eq
(local.get $l6)
(local.tee $l5
(i64.div_u
(call $env.current_time)
(i64.const 1000)))))
(br_if $B3
(i64.eq
(local.get $l4)
(local.get $l5)))
(i32.store
(i32.add
(i32.add
(local.get $l9)
(i32.const 48))
(i32.const 32))
(i32.const 0))
(i64.store offset=64
(local.get $l9)
(i64.const -1))
(i64.store offset=48
(local.get $l9)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=56
(local.get $l9)
(local.get $l6))
(i64.store offset=72
(local.get $l9)
(i64.const 0))
(br_if $B0
(i64.eqz
(i64.load offset=8
(call $f78
(i32.add
(local.get $l9)
(i32.const 48))
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const -8925712248983257088)
(i64.const 0))))))
(i32.store
(i32.add
(i32.add
(local.get $l9)
(i32.const 8))
(i32.const 32))
(i32.const 0))
(i64.store offset=24
(local.get $l9)
(i64.const -1))
(i64.store offset=8
(local.get $l9)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=16
(local.get $l9)
(local.get $l6))
(i64.store offset=32
(local.get $l9)
(i64.const 0))
(block $B4
(br_if $B4
(i64.eqz
(i64.load offset=8
(call $f54
(i32.add
(local.get $l9)
(i32.const 8))
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const 8419281591276142592)
(i64.const 0))))))
(local.set $l8
(f64.const 0x1p+0 (;=1;)))
(block $B5
(br_if $B5
(i32.lt_s
(local.get $p1)
(i32.const 1)))
(loop $L6
(local.set $l8
(f64.mul
(local.get $l8)
(f64.const 0x1.6666666666666p+1 (;=2.8;))))
(br_if $L6
(local.tee $p1
(i32.add
(local.get $p1)
(i32.const -1))))))
(call $env.prints
(i32.const 992))
(call $env.printdf
(local.get $l8)))
(br_if $B0
(i32.eqz
(local.tee $l3
(i32.load offset=32
(local.get $l9)))))
(br_if $B2
(i32.eq
(local.tee $p1
(i32.load
(local.tee $l7
(i32.add
(local.get $l9)
(i32.const 36)))))
(local.get $l3)))
(loop $L7
(local.set $p0
(i32.load
(local.tee $p1
(i32.add
(local.get $p1)
(i32.const -24)))))
(i32.store
(local.get $p1)
(i32.const 0))
(block $B8
(br_if $B8
(i32.eqz
(local.get $p0)))
(call $f98
(local.get $p0)))
(br_if $L7
(i32.ne
(local.get $l3)
(local.get $p1))))
(local.set $p1
(i32.load
(i32.add
(local.get $l9)
(i32.const 32))))
(br $B1))
(loop $L9
(br $L9)))
(local.set $p1
(local.get $l3)))
(i32.store
(local.get $l7)
(local.get $l3))
(call $f98
(local.get $p1)))
(block $B10
(br_if $B10
(i32.eqz
(local.tee $l3
(i32.load offset=72
(local.get $l9)))))
(block $B11
(block $B12
(br_if $B12
(i32.eq
(local.tee $p1
(i32.load
(local.tee $l7
(i32.add
(local.get $l9)
(i32.const 76)))))
(local.get $l3)))
(loop $L13
(local.set $p0
(i32.load
(local.tee $p1
(i32.add
(local.get $p1)
(i32.const -24)))))
(i32.store
(local.get $p1)
(i32.const 0))
(block $B14
(br_if $B14
(i32.eqz
(local.get $p0)))
(call $f98
(local.get $p0)))
(br_if $L13
(i32.ne
(local.get $l3)
(local.get $p1))))
(local.set $p1
(i32.load
(i32.add
(local.get $l9)
(i32.const 72))))
(br $B11))
(local.set $p1
(local.get $l3)))
(i32.store
(local.get $l7)
(local.get $l3))
(call $f98
(local.get $p1)))
(block $B15
(br_if $B15
(i32.eqz
(local.tee $l3
(i32.load offset=112
(local.get $l9)))))
(block $B16
(block $B17
(br_if $B17
(i32.eq
(local.tee $p1
(i32.load
(local.tee $l7
(i32.add
(local.get $l9)
(i32.const 116)))))
(local.get $l3)))
(loop $L18
(local.set $p0
(i32.load
(local.tee $p1
(i32.add
(local.get $p1)
(i32.const -24)))))
(i32.store
(local.get $p1)
(i32.const 0))
(block $B19
(br_if $B19
(i32.eqz
(local.get $p0)))
(call $f98
(local.get $p0)))
(br_if $L18
(i32.ne
(local.get $l3)
(local.get $p1))))
(local.set $p1
(i32.load
(i32.add
(local.get $l9)
(i32.const 112))))
(br $B16))
(local.set $p1
(local.get $l3)))
(i32.store
(local.get $l7)
(local.get $l3))
(call $f98
(local.get $p1)))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l9)
(i32.const 128))))
(func $f28 (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(local $l2 i32) (local $l3 i32) (local $l4 i32) (local $l5 i32)
(local.set $l5
(local.tee $l3
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 16))))
(i32.store offset=4
(i32.const 0)
(local.get $l3))
(local.set $l2
(i32.load offset=4
(local.get $p1)))
(local.set $l4
(i32.load
(local.get $p1)))
(block $B0
(block $B1
(block $B2
(block $B3
(br_if $B3
(i32.eqz
(local.tee $p1
(call $env.action_data_size))))
(br_if $B2
(i32.lt_u
(local.get $p1)
(i32.const 513)))
(local.set $l3
(call $malloc
(local.get $p1)))
(br $B1))
(local.set $l3
(i32.const 0))
(br $B0))
(i32.store offset=4
(i32.const 0)
(local.tee $l3
(i32.sub
(local.get $l3)
(i32.and
(i32.add
(local.get $p1)
(i32.const 15))
(i32.const -16))))))
(drop
(call $env.read_action_data
(local.get $l3)
(local.get $p1))))
(i64.store offset=8
(local.get $l5)
(i64.const 0))
(call $env.eosio_assert
(i32.gt_u
(local.get $p1)
(i32.const 3))
(i32.const 112))
(drop
(call $env.memcpy
(i32.add
(local.get $l5)
(i32.const 8))
(local.get $l3)
(i32.const 4)))
(call $env.eosio_assert
(i32.ne
(i32.and
(local.get $p1)
(i32.const -4))
(i32.const 4))
(i32.const 112))
(drop
(call $env.memcpy
(i32.or
(i32.add
(local.get $l5)
(i32.const 8))
(i32.const 4))
(i32.add
(local.get $l3)
(i32.const 4))
(i32.const 4)))
(block $B4
(br_if $B4
(i32.lt_u
(local.get $p1)
(i32.const 513)))
(call $free
(local.get $l3)))
(local.set $p1
(i32.add
(local.get $p0)
(i32.shr_s
(local.get $l2)
(i32.const 1))))
(local.set $l3
(i32.load offset=12
(local.get $l5)))
(local.set $p0
(i32.load offset=8
(local.get $l5)))
(block $B5
(br_if $B5
(i32.eqz
(i32.and
(local.get $l2)
(i32.const 1))))
(local.set $l4
(i32.load
(i32.add
(i32.load
(local.get $p1))
(local.get $l4)))))
(call_indirect (type $t0) $T0
(local.get $p1)
(local.get $p0)
(local.get $l3)
(local.get $l4))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l5)
(i32.const 16)))
(i32.const 1))
(func $f29 (type $t1) (param $p0 i32) (param $p1 i32)
(local $l2 i64) (local $l3 i32) (local $l4 i32) (local $l5 i64) (local $l6 i64) (local $l7 i64) (local $l8 i64) (local $l9 i32)
(i32.store offset=4
(i32.const 0)
(local.tee $l9
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 160))))
(i32.store offset=140
(local.get $l9)
(local.get $p1))
(call $env.require_auth
(i64.load
(local.get $p0)))
(i32.store
(i32.add
(local.get $l9)
(i32.const 128))
(i32.const 0))
(i64.store offset=112
(local.get $l9)
(i64.const -1))
(i64.store offset=96
(local.get $l9)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=104
(local.get $l9)
(local.get $l6))
(i64.store offset=120
(local.get $l9)
(i64.const 0))
(block $B0
(block $B1
(br_if $B1
(i32.lt_s
(local.tee $p1
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const -8925712248983257088)
(i64.const 0)))
(i32.const 0)))
(local.set $p1
(call $f78
(i32.add
(local.get $l9)
(i32.const 96))
(local.get $p1)))
(br $B0))
(call $f89
(i32.add
(local.get $l9)
(i32.const 32))
(i32.add
(local.get $l9)
(i32.const 96))
(i64.load
(local.get $p0))
(i32.add
(local.get $l9)
(i32.const 16)))
(local.set $p1
(i32.load offset=36
(local.get $l9))))
(local.set $l6
(i64.load
(local.get $p0)))
(i32.store offset=32
(local.get $l9)
(i32.add
(local.get $l9)
(i32.const 140)))
(call $env.eosio_assert
(i32.ne
(local.get $p1)
(i32.const 0))
(i32.const 128))
(call $f90
(i32.add
(local.get $l9)
(i32.const 96))
(local.get $p1)
(local.get $l6)
(i32.add
(local.get $l9)
(i32.const 32)))
(block $B2
(br_if $B2
(i32.ne
(i32.load offset=140
(local.get $l9))
(i32.const 1)))
(local.set $l6
(call $env.current_time))
(i32.store
(i32.add
(local.get $l9)
(i32.const 60))
(i32.const 0))
(i32.store
(i32.add
(local.get $l9)
(i32.const 64))
(i32.const 0))
(i32.store offset=44
(local.get $l9)
(i32.const 0))
(i32.store8 offset=48
(local.get $l9)
(i32.const 0))
(i32.store offset=52
(local.get $l9)
(i32.const 0))
(i32.store offset=56
(local.get $l9)
(i32.const 0))
(i32.store offset=32
(local.get $l9)
(i32.add
(i32.wrap_i64
(i64.div_u
(local.get $l6)
(i64.const 1000000)))
(i32.const 60)))
(i32.store offset=68
(local.get $l9)
(i32.const 0))
(i32.store
(i32.add
(local.get $l9)
(i32.const 72))
(i32.const 0))
(i32.store
(i32.add
(local.get $l9)
(i32.const 76))
(i32.const 0))
(i32.store offset=80
(local.get $l9)
(i32.const 0))
(i32.store
(i32.add
(local.get $l9)
(i32.const 84))
(i32.const 0))
(i32.store
(i32.add
(local.get $l9)
(i32.const 88))
(i32.const 0))
(local.set $l4
(i32.add
(local.get $l9)
(i32.const 68)))
(local.set $l2
(i64.load
(local.get $p0)))
(local.set $l6
(i64.const 0))
(local.set $l5
(i64.const 59))
(local.set $p1
(i32.const 816))
(local.set $l7
(i64.const 0))
(loop $L3
(block $B4
(block $B5
(block $B6
(block $B7
(block $B8
(br_if $B8
(i64.gt_u
(local.get $l6)
(i64.const 5)))
(br_if $B7
(i32.gt_u
(i32.and
(i32.add
(local.tee $l3
(i32.load8_s
(local.get $p1)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l3
(i32.add
(local.get $l3)
(i32.const 165)))
(br $B6))
(local.set $l8
(i64.const 0))
(br_if $B5
(i64.le_u
(local.get $l6)
(i64.const 11)))
(br $B4))
(local.set $l3
(select
(i32.add
(local.get $l3)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l3)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l8
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l3))
(i64.const 56))
(i64.const 56))))
(local.set $l8
(i64.shl
(i64.and
(local.get $l8)
(i64.const 31))
(i64.and
(local.get $l5)
(i64.const 4294967295)))))
(local.set $p1
(i32.add
(local.get $p1)
(i32.const 1)))
(local.set $l6
(i64.add
(local.get $l6)
(i64.const 1)))
(local.set $l7
(i64.or
(local.get $l8)
(local.get $l7)))
(br_if $L3
(i64.ne
(local.tee $l5
(i64.add
(local.get $l5)
(i64.const -5)))
(i64.const -6))))
(i64.store offset=24
(local.get $l9)
(local.get $l7))
(i64.store offset=16
(local.get $l9)
(local.get $l2))
(local.set $l6
(i64.const 0))
(local.set $l5
(i64.const 59))
(local.set $p1
(i32.const 960))
(local.set $l7
(i64.const 0))
(loop $L9
(block $B10
(block $B11
(block $B12
(block $B13
(block $B14
(br_if $B14
(i64.gt_u
(local.get $l6)
(i64.const 4)))
(br_if $B13
(i32.gt_u
(i32.and
(i32.add
(local.tee $l3
(i32.load8_s
(local.get $p1)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l3
(i32.add
(local.get $l3)
(i32.const 165)))
(br $B12))
(local.set $l8
(i64.const 0))
(br_if $B11
(i64.le_u
(local.get $l6)
(i64.const 11)))
(br $B10))
(local.set $l3
(select
(i32.add
(local.get $l3)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l3)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l8
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l3))
(i64.const 56))
(i64.const 56))))
(local.set $l8
(i64.shl
(i64.and
(local.get $l8)
(i64.const 31))
(i64.and
(local.get $l5)
(i64.const 4294967295)))))
(local.set $p1
(i32.add
(local.get $p1)
(i32.const 1)))
(local.set $l6
(i64.add
(local.get $l6)
(i64.const 1)))
(local.set $l7
(i64.or
(local.get $l8)
(local.get $l7)))
(br_if $L9
(i64.ne
(local.tee $l5
(i64.add
(local.get $l5)
(i64.const -5)))
(i64.const -6))))
(i64.store offset=144
(local.get $l9)
(local.get $l7))
(i64.store offset=8
(local.get $l9)
(i64.const 4295067296))
(call $f91
(local.get $l4)
(i32.add
(local.get $l9)
(i32.const 16))
(local.get $p0)
(i32.add
(local.get $l9)
(i32.const 144))
(i32.add
(local.get $l9)
(i32.const 8)))
(i64.store offset=24
(local.get $l9)
(i64.const 0))
(i64.store offset=16
(local.get $l9)
(i64.const 99))
(drop
(call $env.cancel_deferred
(i32.add
(local.get $l9)
(i32.const 16))))
(i64.store offset=24
(local.get $l9)
(i64.const 0))
(i64.store offset=16
(local.get $l9)
(i64.const 99))
(local.set $l6
(i64.load
(local.get $p0)))
(call $f83
(i32.add
(local.get $l9)
(i32.const 144))
(i32.add
(local.get $l9)
(i32.const 32)))
(call $env.send_deferred
(i32.add
(local.get $l9)
(i32.const 16))
(local.get $l6)
(local.tee $p1
(i32.load offset=144
(local.get $l9)))
(i32.sub
(i32.load offset=148
(local.get $l9))
(local.get $p1))
(i32.const 0))
(block $B15
(br_if $B15
(i32.eqz
(local.tee $p1
(i32.load offset=144
(local.get $l9)))))
(i32.store offset=148
(local.get $l9)
(local.get $p1))
(call $f98
(local.get $p1)))
(drop
(call $f84
(i32.add
(local.get $l9)
(i32.const 32)))))
(block $B16
(br_if $B16
(i32.eqz
(local.tee $p0
(i32.load offset=120
(local.get $l9)))))
(block $B17
(block $B18
(br_if $B18
(i32.eq
(local.tee $p1
(i32.load
(local.tee $l4
(i32.add
(local.get $l9)
(i32.const 124)))))
(local.get $p0)))
(loop $L19
(local.set $l3
(i32.load
(local.tee $p1
(i32.add
(local.get $p1)
(i32.const -24)))))
(i32.store
(local.get $p1)
(i32.const 0))
(block $B20
(br_if $B20
(i32.eqz
(local.get $l3)))
(call $f98
(local.get $l3)))
(br_if $L19
(i32.ne
(local.get $p0)
(local.get $p1))))
(local.set $p1
(i32.load
(i32.add
(local.get $l9)
(i32.const 120))))
(br $B17))
(local.set $p1
(local.get $p0)))
(i32.store
(local.get $l4)
(local.get $p0))
(call $f98
(local.get $p1)))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l9)
(i32.const 160))))
(func $f30 (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(local $l2 i32) (local $l3 i32) (local $l4 i32) (local $l5 i32) (local $l6 i32)
(local.set $l5
(local.tee $l6
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 16))))
(i32.store offset=4
(i32.const 0)
(local.get $l6))
(local.set $l2
(i32.load offset=4
(local.get $p1)))
(local.set $l4
(i32.load
(local.get $p1)))
(local.set $l3
(i32.const 0))
(block $B0
(br_if $B0
(i32.eqz
(local.tee $p1
(call $env.action_data_size))))
(block $B1
(block $B2
(br_if $B2
(i32.lt_u
(local.get $p1)
(i32.const 513)))
(local.set $l3
(call $malloc
(local.get $p1)))
(br $B1))
(i32.store offset=4
(i32.const 0)
(local.tee $l3
(i32.sub
(local.get $l6)
(i32.and
(i32.add
(local.get $p1)
(i32.const 15))
(i32.const -16))))))
(drop
(call $env.read_action_data
(local.get $l3)
(local.get $p1))))
(i32.store offset=8
(local.get $l5)
(i32.const 0))
(call $env.eosio_assert
(i32.gt_u
(local.get $p1)
(i32.const 3))
(i32.const 112))
(drop
(call $env.memcpy
(i32.add
(local.get $l5)
(i32.const 8))
(local.get $l3)
(i32.const 4)))
(local.set $l6
(i32.load offset=8
(local.get $l5)))
(block $B3
(br_if $B3
(i32.lt_u
(local.get $p1)
(i32.const 513)))
(call $free
(local.get $l3)))
(local.set $p1
(i32.add
(local.get $p0)
(i32.shr_s
(local.get $l2)
(i32.const 1))))
(block $B4
(br_if $B4
(i32.eqz
(i32.and
(local.get $l2)
(i32.const 1))))
(local.set $l4
(i32.load
(i32.add
(i32.load
(local.get $p1))
(local.get $l4)))))
(call_indirect (type $t1) $T0
(local.get $p1)
(local.get $l6)
(local.get $l4))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l5)
(i32.const 16)))
(i32.const 1))
(func $f31 (type $t0) (param $p0 i32) (param $p1 i32) (param $p2 i32)
(local $l3 i32) (local $l4 i32) (local $l5 i32) (local $l6 i32) (local $l7 i64) (local $l8 i32) (local $l9 i32) (local $l10 i32) (local $l11 i32) (local $l12 i32) (local $l13 i32) (local $l14 i32) (local $l15 i32) (local $l16 i32) (local $l17 i32) (local $l18 i32) (local $l19 i32) (local $l20 i32) (local $l21 i32) (local $l22 i64) (local $l23 i64) (local $l24 i64) (local $l25 i64) (local $l26 i32)
(i32.store offset=4
(i32.const 0)
(local.tee $l26
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 304))))
(call $env.require_auth
(i64.load
(local.get $p0)))
(i32.store
(i32.add
(local.get $l26)
(i32.const 280))
(i32.const 0))
(i64.store offset=264
(local.get $l26)
(i64.const -1))
(i64.store offset=248
(local.get $l26)
(local.tee $l23
(i64.load
(local.get $p0))))
(i64.store offset=256
(local.get $l26)
(local.get $l23))
(i64.store offset=272
(local.get $l26)
(i64.const 0))
// HINT: configs
(local.set $l23
(i64.load offset=32
(call $f48
(i32.add
(local.get $l26)
(i32.const 248))
(call $env.db_lowerbound_i64
(local.get $l23)
(local.get $l23)
(i64.const 4982871467403247616)
(i64.const 0)))))
(local.set $l25
(call $env.current_time))
(call $env.prints
(i32.const 944))
(call $env.printui
(local.tee $l25
(i64.div_u
(local.get $l25)
(i64.const 1000))))
(local.set $l22
(i64.add
(local.get $l23)
(i64.const -500)))
(block $B0
(block $B1
(block $B2
(block $B3
(block $B4
(br_if $B4
(i64.eq
(local.get $l23)
(local.get $l25)))
(br_if $B4
(i64.eq
(local.get $l22)
(local.get $l25)))
(i32.store
(i32.add
(i32.add
(local.get $l26)
(i32.const 208))
(i32.const 32))
(i32.const 0))
(i64.store offset=224
(local.get $l26)
(i64.const -1))
(i64.store offset=208
(local.get $l26)
(local.tee $l25
(i64.load
(local.get $p0))))
(i64.store offset=216
(local.get $l26)
(local.get $l25))
(local.set $l23
(i64.const 0))
(i64.store offset=232
(local.get $l26)
(i64.const 0))
(br_if $B0
(i64.eqz
(i64.load offset=8
(call $f78
(i32.add
(local.get $l26)
(i32.const 208))
(call $env.db_lowerbound_i64
(local.get $l25)
(local.get $l25)
(i64.const -8925712248983257088)
(i64.const 0))))))
(local.set $l25
(call $env.current_time))
(i32.store
(i32.add
(local.get $l26)
(i32.const 172))
(i32.const 0))
(i32.store
(i32.add
(i32.add
(local.get $l26)
(i32.const 144))
(i32.const 32))
(i32.const 0))
(i32.store offset=156
(local.get $l26)
(i32.const 0))
(i32.store8 offset=160
(local.get $l26)
(i32.const 0))
(i32.store offset=164
(local.get $l26)
(i32.const 0))
(i32.store offset=168
(local.get $l26)
(i32.const 0))
(i32.store offset=144
(local.get $l26)
(i32.add
(i32.wrap_i64
(i64.div_u
(local.get $l25)
(i64.const 1000000)))
(i32.const 60)))
(i32.store offset=180
(local.get $l26)
(i32.const 0))
(i32.store
(i32.add
(local.get $l26)
(i32.const 184))
(i32.const 0))
(i32.store
(i32.add
(local.get $l26)
(i32.const 188))
(i32.const 0))
(i32.store offset=192
(local.get $l26)
(i32.const 0))
(i32.store
(i32.add
(local.get $l26)
(i32.const 196))
(i32.const 0))
(i32.store
(i32.add
(local.get $l26)
(i32.const 200))
(i32.const 0))
(local.set $l21
(i32.add
(local.get $p2)
(i32.const 1)))
(local.set $l4
(i32.add
(local.get $l26)
(i32.const 180)))
(local.set $l7
(i64.load
(local.get $p0)))
(local.set $l22
(i64.const 59))
(local.set $p2
(i32.const 816))
(local.set $l24
(i64.const 0))
(loop $L5
(block $B6
(block $B7
(block $B8
(block $B9
(block $B10
(br_if $B10
(i64.gt_u
(local.get $l23)
(i64.const 5)))
(br_if $B9
(i32.gt_u
(i32.and
(i32.add
(local.tee $l8
(i32.load8_s
(local.get $p2)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l8
(i32.add
(local.get $l8)
(i32.const 165)))
(br $B8))
(local.set $l25
(i64.const 0))
(br_if $B7
(i64.le_u
(local.get $l23)
(i64.const 11)))
(br $B6))
(local.set $l8
(select
(i32.add
(local.get $l8)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l8)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l25
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l8))
(i64.const 56))
(i64.const 56))))
(local.set $l25
(i64.shl
(i64.and
(local.get $l25)
(i64.const 31))
(i64.and
(local.get $l22)
(i64.const 4294967295)))))
(local.set $p2
(i32.add
(local.get $p2)
(i32.const 1)))
(local.set $l23
(i64.add
(local.get $l23)
(i64.const 1)))
(local.set $l24
(i64.or
(local.get $l25)
(local.get $l24)))
(br_if $L5
(i64.ne
(local.tee $l22
(i64.add
(local.get $l22)
(i64.const -5)))
(i64.const -6))))
(i64.store offset=40
(local.get $l26)
(local.get $l24))
(i64.store offset=32
(local.get $l26)
(local.get $l7))
(local.set $l23
(i64.const 0))
(local.set $l22
(i64.const 59))
(local.set $p2
(i32.const 960))
(local.set $l24
(i64.const 0))
(loop $L11
(block $B12
(block $B13
(block $B14
(block $B15
(block $B16
(br_if $B16
(i64.gt_u
(local.get $l23)
(i64.const 4)))
(br_if $B15
(i32.gt_u
(i32.and
(i32.add
(local.tee $l8
(i32.load8_s
(local.get $p2)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l8
(i32.add
(local.get $l8)
(i32.const 165)))
(br $B14))
(local.set $l25
(i64.const 0))
(br_if $B13
(i64.le_u
(local.get $l23)
(i64.const 11)))
(br $B12))
(local.set $l8
(select
(i32.add
(local.get $l8)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l8)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l25
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l8))
(i64.const 56))
(i64.const 56))))
(local.set $l25
(i64.shl
(i64.and
(local.get $l25)
(i64.const 31))
(i64.and
(local.get $l22)
(i64.const 4294967295)))))
(local.set $p2
(i32.add
(local.get $p2)
(i32.const 1)))
(local.set $l23
(i64.add
(local.get $l23)
(i64.const 1)))
(local.set $l24
(i64.or
(local.get $l25)
(local.get $l24)))
(br_if $L11
(i64.ne
(local.tee $l22
(i64.add
(local.get $l22)
(i64.const -5)))
(i64.const -6))))
(i64.store offset=104
(local.get $l26)
(local.get $l24))
(i32.store offset=16
(local.get $l26)
(local.get $p1))
(i32.store offset=20
(local.get $l26)
(local.get $l21))
(call $f82
(local.get $l4)
(i32.add
(local.get $l26)
(i32.const 32))
(local.get $p0)
(i32.add
(local.get $l26)
(i32.const 104))
(i32.add
(local.get $l26)
(i32.const 16)))
(i64.store offset=40
(local.get $l26)
(local.tee $l25
(i64.shr_s
(local.tee $l23
(i64.extend_i32_s
(i32.mul
(local.get $l21)
(i32.const 100))))
(i64.const 63))))
(i64.store offset=32
(local.get $l26)
(local.get $l23))
(drop
(call $env.cancel_deferred
(i32.add
(local.get $l26)
(i32.const 32))))
(i64.store offset=40
(local.get $l26)
(local.get $l25))
(i64.store offset=32
(local.get $l26)
(local.get $l23))
(local.set $l23
(i64.load
(local.get $p0)))
(call $f83
(i32.add
(local.get $l26)
(i32.const 104))
(i32.add
(local.get $l26)
(i32.const 144)))
(call $env.send_deferred
(i32.add
(local.get $l26)
(i32.const 32))
(local.get $l23)
(local.tee $p2
(i32.load offset=104
(local.get $l26)))
(i32.sub
(i32.load offset=108
(local.get $l26))
(local.get $p2))
(i32.const 0))
(block $B17
(br_if $B17
(i32.eqz
(local.tee $p2
(i32.load offset=104
(local.get $l26)))))
(i32.store offset=108
(local.get $l26)
(local.get $p2))
(call $f98
(local.get $p2)))
(i32.store
(i32.add
(local.get $l26)
(i32.const 136))
(i32.const 0))
(i64.store offset=120
(local.get $l26)
(i64.const -1))
(i64.store offset=104
(local.get $l26)
(local.tee $l23
(i64.load
(local.get $p0))))
(i64.store offset=112
(local.get $l26)
(local.get $l23))
(i64.store offset=128
(local.get $l26)
(i64.const 0))
(block $B18
(br_if $B18
(i64.eqz
(i64.load offset=8
(call $f54
(i32.add
(local.get $l26)
(i32.const 104))
(call $env.db_lowerbound_i64
(local.get $l23)
(local.get $l23)
(i64.const 8419281591276142592)
(i64.const 0))))))
(br_if $B18
(i32.lt_s
(local.tee $l3
(i32.load offset=16
(call $f54
(i32.add
(local.get $l26)
(i32.const 104))
(call $env.db_lowerbound_i64
(i64.load offset=104
(local.get $l26))
(i64.load
(i32.add
(i32.add
(local.get $l26)
(i32.const 104))
(i32.const 8)))
(i64.const 8419281591276142592)
(i64.const 0)))))
(i32.const 1)))
(local.set $l6
(i32.mul
(local.get $l21)
(i32.const 10000)))
(local.set $l5
(i32.mul
(local.get $l21)
(i32.const 1000)))
(local.set $l4
(i32.add
(local.get $l26)
(i32.const 68)))
(local.set $l9
(i32.add
(local.get $l26)
(i32.const 44)))
(local.set $l10
(i32.add
(local.get $l26)
(i32.const 48)))
(local.set $l11
(i32.add
(local.get $l26)
(i32.const 52)))
(local.set $l12
(i32.add
(local.get $l26)
(i32.const 56)))
(local.set $l13
(i32.add
(local.get $l26)
(i32.const 60)))
(local.set $l14
(i32.add
(local.get $l26)
(i32.const 64)))
(local.set $l15
(i32.add
(local.get $l26)
(i32.const 72)))
(local.set $l16
(i32.add
(local.get $l26)
(i32.const 76)))
(local.set $l17
(i32.add
(local.get $l26)
(i32.const 80)))
(local.set $l18
(i32.add
(local.get $l26)
(i32.const 84)))
(local.set $l19
(i32.add
(local.get $l26)
(i32.const 88)))
(local.set $l20
(i32.add
(i32.add
(local.get $l26)
(i32.const 16))
(i32.const 8)))
(local.set $l21
(i32.const 0))
(loop $L19
(local.set $l23
(call $env.current_time))
(i32.store
(local.get $l9)
(i32.const 0))
(i32.store8
(local.get $l10)
(i32.const 0))
(i32.store
(local.get $l11)
(i32.const 0))
(i32.store
(local.get $l12)
(i32.const 0))
(i32.store
(local.get $l13)
(i32.const 0))
(i32.store
(local.get $l14)
(i32.const 0))
(i32.store offset=32
(local.get $l26)
(i32.add
(i32.wrap_i64
(i64.div_u
(local.get $l23)
(i64.const 1000000)))
(i32.const 60)))
(i32.store
(local.get $l4)
(i32.const 0))
(i32.store
(local.get $l15)
(i32.const 0))
(i32.store
(local.get $l16)
(i32.const 0))
(i32.store
(local.get $l17)
(i32.const 0))
(i32.store
(local.get $l18)
(i32.const 0))
(i32.store
(local.get $l19)
(i32.const 0))
(local.set $l7
(i64.load
(local.get $p0)))
(local.set $l23
(i64.const 0))
(local.set $l22
(i64.const 59))
(local.set $p2
(i32.const 816))
(local.set $l24
(i64.const 0))
(loop $L20
(block $B21
(block $B22
(block $B23
(block $B24
(block $B25
(br_if $B25
(i64.gt_u
(local.get $l23)
(i64.const 5)))
(br_if $B24
(i32.gt_u
(i32.and
(i32.add
(local.tee $l8
(i32.load8_s
(local.get $p2)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l8
(i32.add
(local.get $l8)
(i32.const 165)))
(br $B23))
(local.set $l25
(i64.const 0))
(br_if $B22
(i64.le_u
(local.get $l23)
(i64.const 11)))
(br $B21))
(local.set $l8
(select
(i32.add
(local.get $l8)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l8)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l25
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l8))
(i64.const 56))
(i64.const 56))))
(local.set $l25
(i64.shl
(i64.and
(local.get $l25)
(i64.const 31))
(i64.and
(local.get $l22)
(i64.const 4294967295)))))
(local.set $p2
(i32.add
(local.get $p2)
(i32.const 1)))
(local.set $l23
(i64.add
(local.get $l23)
(i64.const 1)))
(local.set $l24
(i64.or
(local.get $l25)
(local.get $l24)))
(br_if $L20
(i64.ne
(local.tee $l22
(i64.add
(local.get $l22)
(i64.const -5)))
(i64.const -6))))
(i64.store
(local.get $l20)
(local.get $l24))
(i64.store offset=16
(local.get $l26)
(local.get $l7))
(local.set $l23
(i64.const 0))
(local.set $l22
(i64.const 59))
(local.set $p2
(i32.const 976))
(local.set $l24
(i64.const 0))
(loop $L26
(block $B27
(block $B28
(block $B29
(block $B30
(block $B31
(br_if $B31
(i64.gt_u
(local.get $l23)
(i64.const 2)))
(br_if $B30
(i32.gt_u
(i32.and
(i32.add
(local.tee $l8
(i32.load8_s
(local.get $p2)))
(i32.const -97))
(i32.const 255))
(i32.const 25)))
(local.set $l8
(i32.add
(local.get $l8)
(i32.const 165)))
(br $B29))
(local.set $l25
(i64.const 0))
(br_if $B28
(i64.le_u
(local.get $l23)
(i64.const 11)))
(br $B27))
(local.set $l8
(select
(i32.add
(local.get $l8)
(i32.const 208))
(i32.const 0)
(i32.lt_u
(i32.and
(i32.add
(local.get $l8)
(i32.const -49))
(i32.const 255))
(i32.const 5)))))
(local.set $l25
(i64.shr_s
(i64.shl
(i64.extend_i32_u
(local.get $l8))
(i64.const 56))
(i64.const 56))))
(local.set $l25
(i64.shl
(i64.and
(local.get $l25)
(i64.const 31))
(i64.and
(local.get $l22)
(i64.const 4294967295)))))
(local.set $p2
(i32.add
(local.get $p2)
(i32.const 1)))
(local.set $l23
(i64.add
(local.get $l23)
(i64.const 1)))
(local.set $l24
(i64.or
(local.get $l25)
(local.get $l24)))
(br_if $L26
(i64.ne
(local.tee $l22
(i64.add
(local.get $l22)
(i64.const -5)))
(i64.const -6))))
(i64.store offset=288
(local.get $l26)
(local.get $l24))
(i32.store offset=12
(local.get $l26)
(i32.add
(local.get $l21)
(local.get $l5)))
(i32.store offset=8
(local.get $l26)
(local.get $p1))
(call $f82
(local.get $l4)
(i32.add
(local.get $l26)
(i32.const 16))
(local.get $p0)
(i32.add
(local.get $l26)
(i32.const 288))
(i32.add
(local.get $l26)
(i32.const 8)))
(i64.store offset=24
(local.get $l26)
(local.tee $l25
(i64.shr_s
(local.tee $l23
(i64.extend_i32_s
(i32.add
(local.get $l21)
(local.get $l6))))
(i64.const 63))))
(i64.store offset=16
(local.get $l26)
(local.get $l23))
(drop
(call $env.cancel_deferred
(i32.add
(local.get $l26)
(i32.const 16))))
(i64.store offset=24
(local.get $l26)
(local.get $l25))
(i64.store offset=16
(local.get $l26)
(local.get $l23))
(local.set $l23
(i64.load
(local.get $p0)))
(call $f83
(i32.add
(local.get $l26)
(i32.const 288))
(i32.add
(local.get $l26)
(i32.const 32)))
(call $env.send_deferred
(i32.add
(local.get $l26)
(i32.const 16))
(local.get $l23)
(local.tee $p2
(i32.load offset=288
(local.get $l26)))
(i32.sub
(i32.load offset=292
(local.get $l26))
(local.get $p2))
(i32.const 0))
(block $B32
(br_if $B32
(i32.eqz
(local.tee $p2
(i32.load offset=288
(local.get $l26)))))
(i32.store offset=292
(local.get $l26)
(local.get $p2))
(call $f98
(local.get $p2)))
(drop
(call $f84
(i32.add
(local.get $l26)
(i32.const 32))))
(br_if $L19
(i32.ne
(local.tee $l21
(i32.add
(local.get $l21)
(i32.const 1)))
(local.get $l3)))))
(br_if $B1
(i32.eqz
(local.tee $p0
(i32.load offset=128
(local.get $l26)))))
(br_if $B3
(i32.eq
(local.tee $p2
(i32.load
(local.tee $l21
(i32.add
(local.get $l26)
(i32.const 132)))))
(local.get $p0)))
(loop $L33
(local.set $l8
(i32.load
(local.tee $p2
(i32.add
(local.get $p2)
(i32.const -24)))))
(i32.store
(local.get $p2)
(i32.const 0))
(block $B34
(br_if $B34
(i32.eqz
(local.get $l8)))
(call $f98
(local.get $l8)))
(br_if $L33
(i32.ne
(local.get $p0)
(local.get $p2))))
(local.set $p2
(i32.load
(i32.add
(local.get $l26)
(i32.const 128))))
(br $B2))
(loop $L35
(br $L35)))
(local.set $p2
(local.get $p0)))
(i32.store
(local.get $l21)
(local.get $p0))
(call $f98
(local.get $p2)))
(drop
(call $f84
(i32.add
(local.get $l26)
(i32.const 144)))))
(block $B36
(br_if $B36
(i32.eqz
(local.tee $p0
(i32.load offset=232
(local.get $l26)))))
(block $B37
(block $B38
(br_if $B38
(i32.eq
(local.tee $p2
(i32.load
(local.tee $l21
(i32.add
(local.get $l26)
(i32.const 236)))))
(local.get $p0)))
(loop $L39
(local.set $l8
(i32.load
(local.tee $p2
(i32.add
(local.get $p2)
(i32.const -24)))))
(i32.store
(local.get $p2)
(i32.const 0))
(block $B40
(br_if $B40
(i32.eqz
(local.get $l8)))
(call $f98
(local.get $l8)))
(br_if $L39
(i32.ne
(local.get $p0)
(local.get $p2))))
(local.set $p2
(i32.load
(i32.add
(local.get $l26)
(i32.const 232))))
(br $B37))
(local.set $p2
(local.get $p0)))
(i32.store
(local.get $l21)
(local.get $p0))
(call $f98
(local.get $p2)))
(block $B41
(br_if $B41
(i32.eqz
(local.tee $p0
(i32.load offset=272
(local.get $l26)))))
(block $B42
(block $B43
(br_if $B43
(i32.eq
(local.tee $p2
(i32.load
(local.tee $l21
(i32.add
(local.get $l26)
(i32.const 276)))))
(local.get $p0)))
(loop $L44
(local.set $l8
(i32.load
(local.tee $p2
(i32.add
(local.get $p2)
(i32.const -24)))))
(i32.store
(local.get $p2)
(i32.const 0))
(block $B45
(br_if $B45
(i32.eqz
(local.get $l8)))
(call $f98
(local.get $l8)))
(br_if $L44
(i32.ne
(local.get $p0)
(local.get $p2))))
(local.set $p2
(i32.load
(i32.add
(local.get $l26)
(i32.const 272))))
(br $B42))
(local.set $p2
(local.get $p0)))
(i32.store
(local.get $l21)
(local.get $p0))
(call $f98
(local.get $p2)))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l26)
(i32.const 304))))
(func $f32 (type $t2) (param $p0 i32) (param $p1 i32) (param $p2 i32) (param $p3 i32) (param $p4 i32)
(local $l5 i32) (local $l6 i64) (local $l7 i32) (local $l8 i32)
(i32.store offset=4
(i32.const 0)
(local.tee $l8
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 112))))
(i32.store offset=108
(local.get $l8)
(local.get $p1))
(call $env.require_auth
(i64.load
(local.get $p0)))
(i32.store
(i32.add
(i32.add
(local.get $l8)
(i32.const 64))
(i32.const 32))
(i32.const 0))
(i64.store offset=80
(local.get $l8)
(i64.const -1))
(i64.store offset=88
(local.get $l8)
(i64.const 0))
(i64.store offset=64
(local.get $l8)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=72
(local.get $l8)
(local.get $l6))
(call $env.eosio_assert
(i64.eq
(i64.load offset=8
(call $f78
(i32.add
(local.get $l8)
(i32.const 64))
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const -8925712248983257088)
(i64.const 0))))
(i64.const 1))
(i32.const 912))
(i32.store
(i32.add
(i32.add
(local.get $l8)
(i32.const 24))
(i32.const 32))
(i32.const 0))
(i64.store offset=40
(local.get $l8)
(i64.const -1))
(i64.store offset=48
(local.get $l8)
(i64.const 0))
(i64.store offset=24
(local.get $l8)
(local.tee $l6
(i64.load
(local.get $p0))))
(i64.store offset=32
(local.get $l8)
(local.get $l6))
(block $B0
(block $B1
(br_if $B1
(i32.lt_s
(local.tee $p1
(call $env.db_lowerbound_i64
(local.get $l6)
(local.get $l6)
(i64.const 8419281591276142592)
(i64.const 0)))
(i32.const 0)))
(drop
(call $f54
(i32.add
(local.get $l8)
(i32.const 24))
(local.get $p1)))
(br $B0))
(call $f79
(i32.add
(local.get $l8)
(i32.const 8))
(i32.add
(local.get $l8)
(i32.const 24))
(i64.load
(local.get $p0))
(i32.add
(local.get $l8)
(i32.const 16))))
(local.set $p1
(i32.const 0))
(block $B2
(br_if $B2
(i32.lt_s
(local.tee $l5
(call $env.db_lowerbound_i64
(i64.load offset=24
(local.get $l8))
(i64.load
(i32.add
(local.get $l8)
(i32.const 32)))
(i64.const 8419281591276142592)
(i64.const 0)))
(i32.const 0)))
(local.set $p1
(call $f54
(i32.add
(local.get $l8)
(i32.const 24))
(local.get $l5))))
(local.set $l6
(i64.load
(local.get $p0)))
(i32.store offset=8
(local.get $l8)
(i32.add
(local.get $l8)
(i32.const 108)))
(call $env.eosio_assert
(i32.ne
(local.get $p1)
(i32.const 0))
(i32.const 128))
(call $f80
(i32.add
(local.get $l8)
(i32.const 24))
(local.get $p1)
(local.get $l6)
(i32.add
(local.get $l8)
(i32.const 8)))
(block $B3
(br_if $B3
(i32.eqz
(local.tee $l5
(i32.load offset=48
(local.get $l8)))))
(block $B4
(block $B5
(br_if $B5
(i32.eq
(local.tee $p0
(i32.load
(local.tee $l7
(i32.add
(local.get $l8)
(i32.const 52)))))
(local.get $l5)))
(loop $L6
(local.set $p1
(i32.load
(local.tee $p0
(i32.add
(local.get $p0)
(i32.const -24)))))
(i32.store
(local.get $p0)
(i32.const 0))
(block $B7
(br_if $B7
(i32.eqz
(local.get $p1)))
(call $f98
(local.get $p1)))
(br_if $L6
(i32.ne
(local.get $l5)
(local.get $p0))))
(local.set $p0
(i32.load
(i32.add
(local.get $l8)
(i32.const 48))))
(br $B4))
(local.set $p0
(local.get $l5)))
(i32.store
(local.get $l7)
(local.get $l5))
(call $f98
(local.get $p0)))
(block $B8
(br_if $B8
(i32.eqz
(local.tee $l5
(i32.load offset=88
(local.get $l8)))))
(block $B9
(block $B10
(br_if $B10
(i32.eq
(local.tee $p0
(i32.load
(local.tee $l7
(i32.add
(local.get $l8)
(i32.const 92)))))
(local.get $l5)))
(loop $L11
(local.set $p1
(i32.load
(local.tee $p0
(i32.add
(local.get $p0)
(i32.const -24)))))
(i32.store
(local.get $p0)
(i32.const 0))
(block $B12
(br_if $B12
(i32.eqz
(local.get $p1)))
(call $f98
(local.get $p1)))
(br_if $L11
(i32.ne
(local.get $l5)
(local.get $p0))))
(local.set $p0
(i32.load
(i32.add
(local.get $l8)
(i32.const 88))))
(br $B9))
(local.set $p0
(local.get $l5)))
(i32.store
(local.get $l7)
(local.get $l5))
(call $f98
(local.get $p0)))
(i32.store offset=4
(i32.const 0)
(i32.add
(local.get $l8)
(i32.const 112))))
(func $f33 (type $t10) (param $p0 i32) (param $p1 i32) (result i32)
(local $l2 i32) (local $l3 i32) (local $l4 i32) (local $l5 i32) (local $l6 i32) (local $l7 i32)
(local.set $l6
(local.tee $l7
(i32.sub
(i32.load offset=4
(i32.const 0))
(i32.const 48))))
(i32.store offset=4
(i32.const 0)
(local.get $l7))
(local.set $l2
(i32.load offset=4
(local.get $p1)))
(local.set $l5
(i32.load
(local.get $p1)))
(block $B0
(block $B1
(block $B2
(block $B3
(br_if $B3
(i32.eqz
(local.tee $l3
(call $env.action_data_size))))
(br_if $B2
(i32.lt_u
(local.get $l3)
(i32.const 513)))
(local.set $p1
(call $malloc
(local.get $l3)))
(br $B1))
(local.set $p1
(i32.const 0))
(br $B0))
(i32.store offset=4
(i32.const 0)
(local.tee $p1
(i32.sub
(local.get $l7)
(i32.and
(i32.add
(local.get $l3)
(i32.const 15))
(i32.const -16))))))
(drop
(call $env.read_action_data
(local.get $p1)
(local.get $l3))))
(i64.store
(local.get $l6)
(i64.const 0))
(i64.store offset=8
(local.get $l6)
(i64.const 0))
(i32.store offset=20
(local.get $l6)
(local.get $p1))
(i32.store offset=16
(local.get $l6)
(local.get $p1))
(i32.store offset=24
(local.get $l6)
(i32.add
(local.get $p1)
(local.get $l3)))
(i32.store offset=32
(local.get $l6)
(i32.add
(local.get $l6)
(i32.const 16)))
(i32.store offset=40
(local.get $l6)
(local.get $l6))
(call $f77
(i32.add
(local.get $l6)
(i32.const 40))
(i32.add
(local.get $l6)
(i32.const 32)))
(block $B4
(br_if $B4
(i32.lt_u
(local.get $l3)
(i32.const 513)))
(call $free
(local.get $p1)))
(local.set $p1
(i32.add
(local.get $p0)
(i32.shr_s
(local.get $l2)
(i32.const 1))))
(local.set $l3
(i32.load
(i32.add