-
-
Save Gojeflone/6dfb43765195b4dc47e5f21be1445e4f to your computer and use it in GitHub Desktop.
Fibonacci Function C vs. WASM
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
int fib(int n) { | |
if (n == 1) return 1; | |
if (n == 2) return 1; | |
return fib(n-1) + fib(n-2); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(module | |
(type (;0;) (func (param i32 i32 i32) (result i32))) | |
(type (;1;) (func (param i32 i64 i32) (result i64))) | |
(type (;2;) (func (result i32))) | |
(type (;3;) (func (param i32) (result i32))) | |
(type (;4;) (func (param i32))) | |
(type (;5;) (func)) | |
(type (;6;) (func (param i32 i32))) | |
(type (;7;) (func (result i32))) | |
(type (;8;) (func (param i32) (result i32))) | |
(type (;9;) (func (param i32))) | |
(import "env" "emscripten_resize_heap" (func (;0;) (type 3))) | |
(import "env" "__lock" (func (;1;) (type 4))) | |
(import "env" "__unlock" (func (;2;) (type 4))) | |
(import "env" "memory" (memory (;0;) 256 256)) | |
(import "env" "table" (table (;0;) 1 funcref)) | |
(func (;3;) (type 2) (result i32) | |
i32.const 1552) | |
(func (;4;) (type 5)) | |
(func (;5;) (type 2) (result i32) | |
i32.const 1024) | |
(func (;6;) (type 3) (param i32) (result i32) | |
(local i32 i32 i32) | |
call 3 | |
local.set 1 | |
memory.size | |
local.set 2 | |
block ;; label = @1 | |
local.get 1 | |
i32.load | |
local.tee 3 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 2 | |
i32.const 16 | |
i32.shl | |
i32.le_u | |
br_if 0 (;@1;) | |
local.get 0 | |
call 0 | |
br_if 0 (;@1;) | |
call 5 | |
i32.const 48 | |
i32.store | |
i32.const -1 | |
return | |
end | |
local.get 1 | |
local.get 0 | |
i32.store | |
local.get 3) | |
(func (;7;) (type 3) (param i32) (result i32) | |
i32.const 1) | |
(func (;8;) (type 4) (param i32)) | |
(func (;9;) (type 2) (result i32) | |
i32.const 1028 | |
call 1 | |
i32.const 1036) | |
(func (;10;) (type 5) | |
i32.const 1028 | |
call 2) | |
(func (;11;) (type 3) (param i32) (result i32) | |
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) | |
global.get 0 | |
i32.const 16 | |
i32.sub | |
local.tee 1 | |
global.set 0 | |
block ;; label = @1 | |
block ;; label = @2 | |
block ;; label = @3 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
local.get 0 | |
i32.const 244 | |
i32.gt_u | |
br_if 0 (;@12;) | |
block ;; label = @13 | |
i32.const 0 | |
i32.load offset=1044 | |
local.tee 2 | |
i32.const 16 | |
local.get 0 | |
i32.const 11 | |
i32.add | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.const 11 | |
i32.lt_u | |
select | |
local.tee 3 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.const -1 | |
i32.xor | |
i32.const 1 | |
i32.and | |
local.get 4 | |
i32.add | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.const 1092 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 4 | |
i32.load offset=8 | |
local.tee 6 | |
local.get 5 | |
i32.const 1084 | |
i32.add | |
local.tee 5 | |
i32.ne | |
br_if 0 (;@15;) | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 3 | |
i32.rotl | |
i32.and | |
i32.store offset=1044 | |
br 1 (;@14;) | |
end | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 6 | |
i32.gt_u | |
drop | |
local.get 6 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 6 | |
i32.store offset=8 | |
end | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.shl | |
local.tee 6 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 6 | |
i32.add | |
local.tee 4 | |
local.get 4 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 12 (;@1;) | |
end | |
local.get 3 | |
i32.const 0 | |
i32.load offset=1052 | |
local.tee 7 | |
i32.le_u | |
br_if 1 (;@11;) | |
block ;; label = @13 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@13;) | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 0 | |
local.get 4 | |
i32.shl | |
i32.const 2 | |
local.get 4 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
i32.and | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 6 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
local.tee 6 | |
i32.const 3 | |
i32.shl | |
local.tee 5 | |
i32.const 1092 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 5 | |
i32.const 1084 | |
i32.add | |
local.tee 5 | |
i32.ne | |
br_if 0 (;@15;) | |
i32.const 0 | |
local.get 2 | |
i32.const -2 | |
local.get 6 | |
i32.rotl | |
i32.and | |
local.tee 2 | |
i32.store offset=1044 | |
br 1 (;@14;) | |
end | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 0 | |
i32.gt_u | |
drop | |
local.get 0 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 5 | |
local.get 6 | |
i32.const 3 | |
i32.shl | |
local.tee 8 | |
local.get 3 | |
i32.sub | |
local.tee 6 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 8 | |
i32.add | |
local.get 6 | |
i32.store | |
block ;; label = @14 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@14;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 8 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1064 | |
local.set 4 | |
block ;; label = @15 | |
block ;; label = @16 | |
local.get 2 | |
i32.const 1 | |
local.get 8 | |
i32.shl | |
local.tee 8 | |
i32.and | |
br_if 0 (;@16;) | |
i32.const 0 | |
local.get 2 | |
local.get 8 | |
i32.or | |
i32.store offset=1044 | |
local.get 3 | |
local.set 8 | |
br 1 (;@15;) | |
end | |
local.get 3 | |
i32.load offset=8 | |
local.set 8 | |
end | |
local.get 3 | |
local.get 4 | |
i32.store offset=8 | |
local.get 8 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 3 | |
i32.store offset=12 | |
local.get 4 | |
local.get 8 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1064 | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1052 | |
br 12 (;@1;) | |
end | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 9 | |
i32.eqz | |
br_if 1 (;@11;) | |
local.get 9 | |
i32.const 0 | |
local.get 9 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 6 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 6 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
i32.load | |
local.tee 5 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.set 4 | |
local.get 5 | |
local.set 6 | |
block ;; label = @13 | |
loop ;; label = @14 | |
block ;; label = @15 | |
local.get 6 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@15;) | |
local.get 6 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 2 (;@13;) | |
end | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 6 | |
local.get 4 | |
local.get 6 | |
local.get 4 | |
i32.lt_u | |
local.tee 6 | |
select | |
local.set 4 | |
local.get 0 | |
local.get 5 | |
local.get 6 | |
select | |
local.set 5 | |
local.get 0 | |
local.set 6 | |
br 0 (;@14;) | |
unreachable | |
end | |
unreachable | |
end | |
local.get 5 | |
i32.load offset=24 | |
local.set 10 | |
block ;; label = @13 | |
local.get 5 | |
i32.load offset=12 | |
local.tee 8 | |
local.get 5 | |
i32.eq | |
br_if 0 (;@13;) | |
block ;; label = @14 | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 5 | |
i32.load offset=8 | |
local.tee 0 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 0 | |
i32.load offset=12 | |
local.get 5 | |
i32.ne | |
drop | |
end | |
local.get 0 | |
local.get 8 | |
i32.store offset=12 | |
local.get 8 | |
local.get 0 | |
i32.store offset=8 | |
br 11 (;@2;) | |
end | |
block ;; label = @13 | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.tee 6 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@13;) | |
local.get 5 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@10;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 6 | |
end | |
loop ;; label = @13 | |
local.get 6 | |
local.set 11 | |
local.get 0 | |
local.tee 8 | |
i32.const 20 | |
i32.add | |
local.tee 6 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@13;) | |
local.get 8 | |
i32.const 16 | |
i32.add | |
local.set 6 | |
local.get 8 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@13;) | |
end | |
local.get 11 | |
i32.const 0 | |
i32.store | |
br 10 (;@2;) | |
end | |
i32.const -1 | |
local.set 3 | |
local.get 0 | |
i32.const -65 | |
i32.gt_u | |
br_if 0 (;@11;) | |
local.get 0 | |
i32.const 11 | |
i32.add | |
local.tee 0 | |
i32.const -8 | |
i32.and | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 7 | |
i32.eqz | |
br_if 0 (;@11;) | |
i32.const 0 | |
local.set 11 | |
block ;; label = @12 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@12;) | |
i32.const 31 | |
local.set 11 | |
local.get 3 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@12;) | |
local.get 0 | |
local.get 0 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 0 | |
local.get 0 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 6 | |
local.get 6 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 6 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
local.get 0 | |
local.get 4 | |
i32.or | |
local.get 6 | |
i32.or | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.get 3 | |
local.get 0 | |
i32.const 21 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 28 | |
i32.add | |
local.set 11 | |
end | |
i32.const 0 | |
local.get 3 | |
i32.sub | |
local.set 6 | |
block ;; label = @12 | |
block ;; label = @13 | |
block ;; label = @14 | |
block ;; label = @15 | |
local.get 11 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
i32.load | |
local.tee 4 | |
br_if 0 (;@15;) | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 8 | |
br 1 (;@14;) | |
end | |
local.get 3 | |
i32.const 0 | |
i32.const 25 | |
local.get 11 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 11 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 5 | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.set 8 | |
loop ;; label = @15 | |
block ;; label = @16 | |
local.get 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 6 | |
i32.ge_u | |
br_if 0 (;@16;) | |
local.get 2 | |
local.set 6 | |
local.get 4 | |
local.set 8 | |
local.get 2 | |
br_if 0 (;@16;) | |
i32.const 0 | |
local.set 6 | |
local.get 4 | |
local.set 8 | |
local.get 4 | |
local.set 0 | |
br 3 (;@13;) | |
end | |
local.get 0 | |
local.get 4 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 2 | |
local.get 2 | |
local.get 4 | |
local.get 5 | |
i32.const 29 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
i32.load | |
local.tee 4 | |
i32.eq | |
select | |
local.get 0 | |
local.get 2 | |
select | |
local.set 0 | |
local.get 5 | |
local.get 4 | |
i32.const 0 | |
i32.ne | |
i32.shl | |
local.set 5 | |
local.get 4 | |
br_if 0 (;@15;) | |
end | |
end | |
block ;; label = @14 | |
local.get 0 | |
local.get 8 | |
i32.or | |
br_if 0 (;@14;) | |
i32.const 2 | |
local.get 11 | |
i32.shl | |
local.tee 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.or | |
local.get 7 | |
i32.and | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@11;) | |
local.get 0 | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.const -1 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.const 12 | |
i32.shr_u | |
i32.const 16 | |
i32.and | |
local.tee 0 | |
i32.shr_u | |
local.tee 4 | |
i32.const 5 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 5 | |
local.get 0 | |
i32.or | |
local.get 4 | |
local.get 5 | |
i32.shr_u | |
local.tee 0 | |
i32.const 2 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
local.tee 0 | |
i32.const 1 | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
local.tee 4 | |
i32.or | |
local.get 0 | |
local.get 4 | |
i32.shr_u | |
i32.add | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
i32.load | |
local.set 0 | |
end | |
local.get 0 | |
i32.eqz | |
br_if 1 (;@12;) | |
end | |
loop ;; label = @13 | |
local.get 0 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 3 | |
i32.sub | |
local.tee 2 | |
local.get 6 | |
i32.lt_u | |
local.set 5 | |
block ;; label = @14 | |
local.get 0 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@14;) | |
local.get 0 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.set 4 | |
end | |
local.get 2 | |
local.get 6 | |
local.get 5 | |
select | |
local.set 6 | |
local.get 0 | |
local.get 8 | |
local.get 5 | |
select | |
local.set 8 | |
local.get 4 | |
local.set 0 | |
local.get 4 | |
br_if 0 (;@13;) | |
end | |
end | |
local.get 8 | |
i32.eqz | |
br_if 0 (;@11;) | |
local.get 6 | |
i32.const 0 | |
i32.load offset=1052 | |
local.get 3 | |
i32.sub | |
i32.ge_u | |
br_if 0 (;@11;) | |
local.get 8 | |
i32.load offset=24 | |
local.set 11 | |
block ;; label = @12 | |
local.get 8 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 8 | |
i32.eq | |
br_if 0 (;@12;) | |
block ;; label = @13 | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 8 | |
i32.load offset=8 | |
local.tee 0 | |
i32.gt_u | |
br_if 0 (;@13;) | |
local.get 0 | |
i32.load offset=12 | |
local.get 8 | |
i32.ne | |
drop | |
end | |
local.get 0 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
br 9 (;@3;) | |
end | |
block ;; label = @12 | |
local.get 8 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@12;) | |
local.get 8 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 3 (;@9;) | |
local.get 8 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
end | |
loop ;; label = @12 | |
local.get 4 | |
local.set 2 | |
local.get 0 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 0 | |
br_if 0 (;@12;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 0 | |
br_if 0 (;@12;) | |
end | |
local.get 2 | |
i32.const 0 | |
i32.store | |
br 8 (;@3;) | |
end | |
block ;; label = @11 | |
i32.const 0 | |
i32.load offset=1052 | |
local.tee 0 | |
local.get 3 | |
i32.lt_u | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1064 | |
local.set 4 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 6 | |
i32.const 16 | |
i32.lt_u | |
br_if 0 (;@13;) | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1052 | |
i32.const 0 | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 5 | |
i32.store offset=1064 | |
local.get 5 | |
local.get 6 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.get 6 | |
i32.store | |
local.get 4 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@12;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1064 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1052 | |
local.get 4 | |
local.get 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
end | |
local.get 4 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 10 (;@1;) | |
end | |
block ;; label = @11 | |
i32.const 0 | |
i32.load offset=1056 | |
local.tee 5 | |
local.get 3 | |
i32.le_u | |
br_if 0 (;@11;) | |
i32.const 0 | |
local.get 5 | |
local.get 3 | |
i32.sub | |
local.tee 4 | |
i32.store offset=1056 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 0 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
i32.store offset=1068 | |
local.get 6 | |
local.get 4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 10 (;@1;) | |
end | |
block ;; label = @11 | |
block ;; label = @12 | |
i32.const 0 | |
i32.load offset=1516 | |
i32.eqz | |
br_if 0 (;@12;) | |
i32.const 0 | |
i32.load offset=1524 | |
local.set 4 | |
br 1 (;@11;) | |
end | |
i32.const 0 | |
i64.const -1 | |
i64.store offset=1528 align=4 | |
i32.const 0 | |
i64.const 17592186048512 | |
i64.store offset=1520 align=4 | |
i32.const 0 | |
local.get 1 | |
i32.const 12 | |
i32.add | |
i32.const -16 | |
i32.and | |
i32.const 1431655768 | |
i32.xor | |
i32.store offset=1516 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1536 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1488 | |
i32.const 4096 | |
local.set 4 | |
end | |
i32.const 0 | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 47 | |
i32.add | |
local.tee 7 | |
i32.add | |
local.tee 2 | |
i32.const 0 | |
local.get 4 | |
i32.sub | |
local.tee 11 | |
i32.and | |
local.tee 8 | |
local.get 3 | |
i32.le_u | |
br_if 9 (;@1;) | |
i32.const 0 | |
local.set 0 | |
block ;; label = @11 | |
i32.const 0 | |
i32.load offset=1484 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@11;) | |
i32.const 0 | |
i32.load offset=1476 | |
local.tee 6 | |
local.get 8 | |
i32.add | |
local.tee 9 | |
local.get 6 | |
i32.le_u | |
br_if 10 (;@1;) | |
local.get 9 | |
local.get 4 | |
i32.gt_u | |
br_if 10 (;@1;) | |
end | |
i32.const 0 | |
i32.load8_u offset=1488 | |
i32.const 4 | |
i32.and | |
br_if 4 (;@6;) | |
block ;; label = @11 | |
block ;; label = @12 | |
block ;; label = @13 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@13;) | |
i32.const 1492 | |
local.set 0 | |
loop ;; label = @14 | |
block ;; label = @15 | |
local.get 0 | |
i32.load | |
local.tee 6 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@15;) | |
local.get 6 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.get 4 | |
i32.gt_u | |
br_if 3 (;@12;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@14;) | |
end | |
end | |
i32.const 0 | |
call 6 | |
local.tee 5 | |
i32.const -1 | |
i32.eq | |
br_if 5 (;@7;) | |
local.get 8 | |
local.set 2 | |
block ;; label = @13 | |
i32.const 0 | |
i32.load offset=1520 | |
local.tee 0 | |
i32.const -1 | |
i32.add | |
local.tee 4 | |
local.get 5 | |
i32.and | |
i32.eqz | |
br_if 0 (;@13;) | |
local.get 8 | |
local.get 5 | |
i32.sub | |
local.get 4 | |
local.get 5 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
i32.add | |
local.set 2 | |
end | |
local.get 2 | |
local.get 3 | |
i32.le_u | |
br_if 5 (;@7;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 5 (;@7;) | |
block ;; label = @13 | |
i32.const 0 | |
i32.load offset=1484 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@13;) | |
i32.const 0 | |
i32.load offset=1476 | |
local.tee 4 | |
local.get 2 | |
i32.add | |
local.tee 6 | |
local.get 4 | |
i32.le_u | |
br_if 6 (;@7;) | |
local.get 6 | |
local.get 0 | |
i32.gt_u | |
br_if 6 (;@7;) | |
end | |
local.get 2 | |
call 6 | |
local.tee 0 | |
local.get 5 | |
i32.ne | |
br_if 1 (;@11;) | |
br 7 (;@5;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.sub | |
local.get 11 | |
i32.and | |
local.tee 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 4 (;@7;) | |
local.get 2 | |
call 6 | |
local.tee 5 | |
local.get 0 | |
i32.load | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
i32.eq | |
br_if 3 (;@8;) | |
local.get 5 | |
local.set 0 | |
end | |
local.get 0 | |
local.set 5 | |
block ;; label = @11 | |
local.get 3 | |
i32.const 48 | |
i32.add | |
local.get 2 | |
i32.le_u | |
br_if 0 (;@11;) | |
local.get 2 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 0 (;@11;) | |
local.get 5 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@11;) | |
local.get 7 | |
local.get 2 | |
i32.sub | |
i32.const 0 | |
i32.load offset=1524 | |
local.tee 0 | |
i32.add | |
i32.const 0 | |
local.get 0 | |
i32.sub | |
i32.and | |
local.tee 0 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 6 (;@5;) | |
block ;; label = @12 | |
local.get 0 | |
call 6 | |
i32.const -1 | |
i32.eq | |
br_if 0 (;@12;) | |
local.get 0 | |
local.get 2 | |
i32.add | |
local.set 2 | |
br 7 (;@5;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.sub | |
call 6 | |
drop | |
br 4 (;@7;) | |
end | |
local.get 5 | |
i32.const -1 | |
i32.ne | |
br_if 5 (;@5;) | |
br 3 (;@7;) | |
end | |
i32.const 0 | |
local.set 8 | |
br 7 (;@2;) | |
end | |
i32.const 0 | |
local.set 5 | |
br 5 (;@3;) | |
end | |
local.get 5 | |
i32.const -1 | |
i32.ne | |
br_if 2 (;@5;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1488 | |
i32.const 4 | |
i32.or | |
i32.store offset=1488 | |
end | |
local.get 8 | |
i32.const 2147483646 | |
i32.gt_u | |
br_if 1 (;@4;) | |
local.get 8 | |
call 6 | |
local.tee 5 | |
i32.const 0 | |
call 6 | |
local.tee 0 | |
i32.ge_u | |
br_if 1 (;@4;) | |
local.get 5 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@4;) | |
local.get 0 | |
i32.const -1 | |
i32.eq | |
br_if 1 (;@4;) | |
local.get 0 | |
local.get 5 | |
i32.sub | |
local.tee 2 | |
local.get 3 | |
i32.const 40 | |
i32.add | |
i32.le_u | |
br_if 1 (;@4;) | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1476 | |
local.get 2 | |
i32.add | |
local.tee 0 | |
i32.store offset=1476 | |
block ;; label = @5 | |
local.get 0 | |
i32.const 0 | |
i32.load offset=1480 | |
i32.le_u | |
br_if 0 (;@5;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1480 | |
end | |
block ;; label = @5 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@8;) | |
i32.const 1492 | |
local.set 0 | |
loop ;; label = @9 | |
local.get 5 | |
local.get 0 | |
i32.load | |
local.tee 6 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 8 | |
i32.add | |
i32.eq | |
br_if 2 (;@7;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@9;) | |
br 3 (;@6;) | |
unreachable | |
end | |
unreachable | |
end | |
block ;; label = @8 | |
block ;; label = @9 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@9;) | |
local.get 5 | |
local.get 0 | |
i32.ge_u | |
br_if 1 (;@8;) | |
end | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1060 | |
end | |
i32.const 0 | |
local.set 0 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1496 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1492 | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1076 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1516 | |
i32.store offset=1080 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1504 | |
loop ;; label = @8 | |
local.get 0 | |
i32.const 3 | |
i32.shl | |
local.tee 4 | |
i32.const 1092 | |
i32.add | |
local.get 4 | |
i32.const 1084 | |
i32.add | |
local.tee 6 | |
i32.store | |
local.get 4 | |
i32.const 1096 | |
i32.add | |
local.get 6 | |
i32.store | |
local.get 0 | |
i32.const 1 | |
i32.add | |
local.tee 0 | |
i32.const 32 | |
i32.ne | |
br_if 0 (;@8;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 0 | |
i32.const -8 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 4 | |
i32.sub | |
local.tee 6 | |
i32.store offset=1056 | |
i32.const 0 | |
local.get 5 | |
local.get 4 | |
i32.add | |
local.tee 4 | |
i32.store offset=1068 | |
local.get 4 | |
local.get 6 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1532 | |
i32.store offset=1072 | |
br 2 (;@5;) | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
br_if 0 (;@6;) | |
local.get 5 | |
local.get 4 | |
i32.le_u | |
br_if 0 (;@6;) | |
local.get 6 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 0 | |
local.get 8 | |
local.get 2 | |
i32.add | |
i32.store offset=4 | |
i32.const 0 | |
local.get 4 | |
i32.const -8 | |
local.get 4 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 4 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 0 | |
i32.add | |
local.tee 6 | |
i32.store offset=1068 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1056 | |
local.get 2 | |
i32.add | |
local.tee 5 | |
local.get 0 | |
i32.sub | |
local.tee 0 | |
i32.store offset=1056 | |
local.get 6 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 4 | |
local.get 5 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1532 | |
i32.store offset=1072 | |
br 1 (;@5;) | |
end | |
block ;; label = @6 | |
local.get 5 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 8 | |
i32.ge_u | |
br_if 0 (;@6;) | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1060 | |
local.get 5 | |
local.set 8 | |
end | |
local.get 5 | |
local.get 2 | |
i32.add | |
local.set 6 | |
i32.const 1492 | |
local.set 0 | |
block ;; label = @6 | |
block ;; label = @7 | |
block ;; label = @8 | |
block ;; label = @9 | |
block ;; label = @10 | |
block ;; label = @11 | |
block ;; label = @12 | |
loop ;; label = @13 | |
local.get 0 | |
i32.load | |
local.get 6 | |
i32.eq | |
br_if 1 (;@12;) | |
local.get 0 | |
i32.load offset=8 | |
local.tee 0 | |
br_if 0 (;@13;) | |
br 2 (;@11;) | |
unreachable | |
end | |
unreachable | |
end | |
local.get 0 | |
i32.load8_u offset=12 | |
i32.const 8 | |
i32.and | |
i32.eqz | |
br_if 1 (;@10;) | |
end | |
i32.const 1492 | |
local.set 0 | |
loop ;; label = @11 | |
block ;; label = @12 | |
local.get 0 | |
i32.load | |
local.tee 6 | |
local.get 4 | |
i32.gt_u | |
br_if 0 (;@12;) | |
local.get 6 | |
local.get 0 | |
i32.load offset=4 | |
i32.add | |
local.tee 6 | |
local.get 4 | |
i32.gt_u | |
br_if 3 (;@9;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 0 | |
br 0 (;@11;) | |
unreachable | |
end | |
unreachable | |
end | |
local.get 0 | |
local.get 5 | |
i32.store | |
local.get 0 | |
local.get 0 | |
i32.load offset=4 | |
local.get 2 | |
i32.add | |
i32.store offset=4 | |
local.get 5 | |
i32.const -8 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 11 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
i32.const -8 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
local.tee 5 | |
local.get 11 | |
i32.sub | |
local.get 3 | |
i32.sub | |
local.set 0 | |
local.get 11 | |
local.get 3 | |
i32.add | |
local.set 6 | |
block ;; label = @10 | |
local.get 4 | |
local.get 5 | |
i32.ne | |
br_if 0 (;@10;) | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1068 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1056 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1056 | |
local.get 6 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 3 (;@7;) | |
end | |
block ;; label = @10 | |
i32.const 0 | |
i32.load offset=1064 | |
local.get 5 | |
i32.ne | |
br_if 0 (;@10;) | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1064 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1052 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1052 | |
local.get 6 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
br 3 (;@7;) | |
end | |
block ;; label = @10 | |
local.get 5 | |
i32.load offset=4 | |
local.tee 4 | |
i32.const 3 | |
i32.and | |
i32.const 1 | |
i32.ne | |
br_if 0 (;@10;) | |
local.get 4 | |
i32.const -8 | |
i32.and | |
local.set 7 | |
block ;; label = @11 | |
block ;; label = @12 | |
local.get 4 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@12;) | |
local.get 5 | |
i32.load offset=12 | |
local.set 3 | |
block ;; label = @13 | |
local.get 5 | |
i32.load offset=8 | |
local.tee 2 | |
local.get 4 | |
i32.const 3 | |
i32.shr_u | |
local.tee 9 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.tee 4 | |
i32.eq | |
br_if 0 (;@13;) | |
local.get 8 | |
local.get 2 | |
i32.gt_u | |
drop | |
end | |
block ;; label = @13 | |
local.get 3 | |
local.get 2 | |
i32.ne | |
br_if 0 (;@13;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.const -2 | |
local.get 9 | |
i32.rotl | |
i32.and | |
i32.store offset=1044 | |
br 2 (;@11;) | |
end | |
block ;; label = @13 | |
local.get 3 | |
local.get 4 | |
i32.eq | |
br_if 0 (;@13;) | |
local.get 8 | |
local.get 3 | |
i32.gt_u | |
drop | |
end | |
local.get 2 | |
local.get 3 | |
i32.store offset=12 | |
local.get 3 | |
local.get 2 | |
i32.store offset=8 | |
br 1 (;@11;) | |
end | |
local.get 5 | |
i32.load offset=24 | |
local.set 9 | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 5 | |
i32.load offset=12 | |
local.tee 2 | |
local.get 5 | |
i32.eq | |
br_if 0 (;@13;) | |
block ;; label = @14 | |
local.get 8 | |
local.get 5 | |
i32.load offset=8 | |
local.tee 4 | |
i32.gt_u | |
br_if 0 (;@14;) | |
local.get 4 | |
i32.load offset=12 | |
local.get 5 | |
i32.ne | |
drop | |
end | |
local.get 4 | |
local.get 2 | |
i32.store offset=12 | |
local.get 2 | |
local.get 4 | |
i32.store offset=8 | |
br 1 (;@12;) | |
end | |
block ;; label = @13 | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@13;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@13;) | |
i32.const 0 | |
local.set 2 | |
br 1 (;@12;) | |
end | |
loop ;; label = @13 | |
local.get 4 | |
local.set 8 | |
local.get 3 | |
local.tee 2 | |
i32.const 20 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@13;) | |
local.get 2 | |
i32.const 16 | |
i32.add | |
local.set 4 | |
local.get 2 | |
i32.load offset=16 | |
local.tee 3 | |
br_if 0 (;@13;) | |
end | |
local.get 8 | |
i32.const 0 | |
i32.store | |
end | |
local.get 9 | |
i32.eqz | |
br_if 0 (;@11;) | |
block ;; label = @12 | |
block ;; label = @13 | |
local.get 5 | |
i32.load offset=28 | |
local.tee 3 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.tee 4 | |
i32.load | |
local.get 5 | |
i32.ne | |
br_if 0 (;@13;) | |
local.get 4 | |
local.get 2 | |
i32.store | |
local.get 2 | |
br_if 1 (;@12;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1048 | |
i32.const -2 | |
local.get 3 | |
i32.rotl | |
i32.and | |
i32.store offset=1048 | |
br 2 (;@11;) | |
end | |
local.get 9 | |
i32.const 16 | |
i32.const 20 | |
local.get 9 | |
i32.load offset=16 | |
local.get 5 | |
i32.eq | |
select | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
i32.eqz | |
br_if 1 (;@11;) | |
end | |
local.get 2 | |
local.get 9 | |
i32.store offset=24 | |
block ;; label = @12 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@12;) | |
local.get 2 | |
local.get 4 | |
i32.store offset=16 | |
local.get 4 | |
local.get 2 | |
i32.store offset=24 | |
end | |
local.get 5 | |
i32.load offset=20 | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@11;) | |
local.get 2 | |
i32.const 20 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 4 | |
local.get 2 | |
i32.store offset=24 | |
end | |
local.get 7 | |
local.get 0 | |
i32.add | |
local.set 0 | |
local.get 5 | |
local.get 7 | |
i32.add | |
local.set 5 | |
end | |
local.get 5 | |
local.get 5 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 6 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
block ;; label = @10 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 0 | |
block ;; label = @11 | |
block ;; label = @12 | |
i32.const 0 | |
i32.load offset=1044 | |
local.tee 3 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
br_if 0 (;@12;) | |
i32.const 0 | |
local.get 3 | |
local.get 4 | |
i32.or | |
i32.store offset=1044 | |
local.get 0 | |
local.set 4 | |
br 1 (;@11;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
end | |
local.get 0 | |
local.get 6 | |
i32.store offset=8 | |
local.get 4 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
local.get 0 | |
i32.store offset=12 | |
local.get 6 | |
local.get 4 | |
i32.store offset=8 | |
br 3 (;@7;) | |
end | |
i32.const 0 | |
local.set 4 | |
block ;; label = @10 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 3 | |
i32.eqz | |
br_if 0 (;@10;) | |
i32.const 31 | |
local.set 4 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@10;) | |
local.get 3 | |
local.get 3 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 3 | |
local.get 3 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 3 | |
i32.shl | |
local.tee 5 | |
local.get 5 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 5 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
local.get 3 | |
local.get 4 | |
i32.or | |
local.get 5 | |
i32.or | |
i32.sub | |
local.tee 4 | |
i32.const 1 | |
i32.shl | |
local.get 0 | |
local.get 4 | |
i32.const 21 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 28 | |
i32.add | |
local.set 4 | |
end | |
local.get 6 | |
local.get 4 | |
i32.store offset=28 | |
local.get 6 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.set 3 | |
block ;; label = @10 | |
block ;; label = @11 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 5 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 8 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
local.get 5 | |
local.get 8 | |
i32.or | |
i32.store offset=1048 | |
local.get 3 | |
local.get 6 | |
i32.store | |
local.get 6 | |
local.get 3 | |
i32.store offset=24 | |
br 1 (;@10;) | |
end | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 4 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 4 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 4 | |
local.get 3 | |
i32.load | |
local.set 5 | |
loop ;; label = @11 | |
local.get 5 | |
local.tee 3 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 3 (;@8;) | |
local.get 4 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 4 | |
i32.const 1 | |
i32.shl | |
local.set 4 | |
local.get 3 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 8 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@11;) | |
end | |
local.get 8 | |
local.get 6 | |
i32.store | |
local.get 6 | |
local.get 3 | |
i32.store offset=24 | |
end | |
local.get 6 | |
local.get 6 | |
i32.store offset=12 | |
local.get 6 | |
local.get 6 | |
i32.store offset=8 | |
br 2 (;@7;) | |
end | |
i32.const 0 | |
local.get 2 | |
i32.const -40 | |
i32.add | |
local.tee 0 | |
i32.const -8 | |
local.get 5 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 5 | |
i32.const 8 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
local.tee 8 | |
i32.sub | |
local.tee 11 | |
i32.store offset=1056 | |
i32.const 0 | |
local.get 5 | |
local.get 8 | |
i32.add | |
local.tee 8 | |
i32.store offset=1068 | |
local.get 8 | |
local.get 11 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
i32.const 40 | |
i32.store offset=4 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1532 | |
i32.store offset=1072 | |
local.get 4 | |
local.get 6 | |
i32.const 39 | |
local.get 6 | |
i32.sub | |
i32.const 7 | |
i32.and | |
i32.const 0 | |
local.get 6 | |
i32.const -39 | |
i32.add | |
i32.const 7 | |
i32.and | |
select | |
i32.add | |
i32.const -47 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
local.get 4 | |
i32.const 16 | |
i32.add | |
i32.lt_u | |
select | |
local.tee 8 | |
i32.const 27 | |
i32.store offset=4 | |
local.get 8 | |
i32.const 16 | |
i32.add | |
i32.const 0 | |
i64.load offset=1500 align=4 | |
i64.store align=4 | |
local.get 8 | |
i32.const 0 | |
i64.load offset=1492 align=4 | |
i64.store offset=8 align=4 | |
i32.const 0 | |
local.get 8 | |
i32.const 8 | |
i32.add | |
i32.store offset=1500 | |
i32.const 0 | |
local.get 2 | |
i32.store offset=1496 | |
i32.const 0 | |
local.get 5 | |
i32.store offset=1492 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1504 | |
local.get 8 | |
i32.const 24 | |
i32.add | |
local.set 0 | |
loop ;; label = @9 | |
local.get 0 | |
i32.const 7 | |
i32.store offset=4 | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.set 5 | |
local.get 0 | |
i32.const 4 | |
i32.add | |
local.set 0 | |
local.get 5 | |
local.get 6 | |
i32.lt_u | |
br_if 0 (;@9;) | |
end | |
local.get 8 | |
local.get 4 | |
i32.eq | |
br_if 3 (;@5;) | |
local.get 8 | |
local.get 8 | |
i32.load offset=4 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 4 | |
local.get 8 | |
local.get 4 | |
i32.sub | |
local.tee 2 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 8 | |
local.get 2 | |
i32.store | |
block ;; label = @9 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
local.tee 6 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 0 | |
block ;; label = @10 | |
block ;; label = @11 | |
i32.const 0 | |
i32.load offset=1044 | |
local.tee 5 | |
i32.const 1 | |
local.get 6 | |
i32.shl | |
local.tee 6 | |
i32.and | |
br_if 0 (;@11;) | |
i32.const 0 | |
local.get 5 | |
local.get 6 | |
i32.or | |
i32.store offset=1044 | |
local.get 0 | |
local.set 6 | |
br 1 (;@10;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 6 | |
end | |
local.get 0 | |
local.get 4 | |
i32.store offset=8 | |
local.get 6 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=12 | |
local.get 4 | |
local.get 6 | |
i32.store offset=8 | |
br 4 (;@5;) | |
end | |
i32.const 0 | |
local.set 0 | |
block ;; label = @9 | |
local.get 2 | |
i32.const 8 | |
i32.shr_u | |
local.tee 6 | |
i32.eqz | |
br_if 0 (;@9;) | |
i32.const 31 | |
local.set 0 | |
local.get 2 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@9;) | |
local.get 6 | |
local.get 6 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 6 | |
local.get 6 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 6 | |
i32.shl | |
local.tee 5 | |
local.get 5 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 5 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
local.get 6 | |
local.get 0 | |
i32.or | |
local.get 5 | |
i32.or | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.get 2 | |
local.get 0 | |
i32.const 21 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 28 | |
i32.add | |
local.set 0 | |
end | |
local.get 4 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 4 | |
i32.const 28 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.set 6 | |
block ;; label = @9 | |
block ;; label = @10 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 5 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 8 | |
i32.and | |
br_if 0 (;@10;) | |
i32.const 0 | |
local.get 5 | |
local.get 8 | |
i32.or | |
i32.store offset=1048 | |
local.get 6 | |
local.get 4 | |
i32.store | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 6 | |
i32.store | |
br 1 (;@9;) | |
end | |
local.get 2 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 6 | |
i32.load | |
local.set 5 | |
loop ;; label = @10 | |
local.get 5 | |
local.tee 6 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 2 | |
i32.eq | |
br_if 4 (;@6;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 6 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 8 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@10;) | |
end | |
local.get 8 | |
local.get 4 | |
i32.store | |
local.get 4 | |
i32.const 24 | |
i32.add | |
local.get 6 | |
i32.store | |
end | |
local.get 4 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 4 | |
i32.store offset=8 | |
br 3 (;@5;) | |
end | |
local.get 3 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 6 | |
i32.store offset=12 | |
local.get 3 | |
local.get 6 | |
i32.store offset=8 | |
local.get 6 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 6 | |
local.get 3 | |
i32.store offset=12 | |
local.get 6 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 11 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 5 (;@1;) | |
end | |
local.get 6 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 4 | |
i32.store offset=12 | |
local.get 6 | |
local.get 4 | |
i32.store offset=8 | |
local.get 4 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 4 | |
local.get 6 | |
i32.store offset=12 | |
local.get 4 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.load offset=1056 | |
local.tee 0 | |
local.get 3 | |
i32.le_u | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 0 | |
local.get 3 | |
i32.sub | |
local.tee 4 | |
i32.store offset=1056 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1068 | |
local.tee 0 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
i32.store offset=1068 | |
local.get 6 | |
local.get 4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 0 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 3 (;@1;) | |
end | |
call 5 | |
i32.const 48 | |
i32.store | |
i32.const 0 | |
local.set 0 | |
br 2 (;@1;) | |
end | |
block ;; label = @3 | |
local.get 11 | |
i32.eqz | |
br_if 0 (;@3;) | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 8 | |
local.get 8 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.ne | |
br_if 0 (;@5;) | |
local.get 0 | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@4;) | |
i32.const 0 | |
local.get 7 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
local.tee 7 | |
i32.store offset=1048 | |
br 2 (;@3;) | |
end | |
local.get 11 | |
i32.const 16 | |
i32.const 20 | |
local.get 11 | |
i32.load offset=16 | |
local.get 8 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@3;) | |
end | |
local.get 5 | |
local.get 11 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 8 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 5 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 8 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 5 | |
i32.store offset=24 | |
end | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 6 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 8 | |
local.get 6 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 8 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@3;) | |
end | |
local.get 8 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 8 | |
local.get 3 | |
i32.add | |
local.tee 5 | |
local.get 6 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 6 | |
i32.add | |
local.get 6 | |
i32.store | |
block ;; label = @4 | |
local.get 6 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 6 | |
i32.const 3 | |
i32.shr_u | |
local.tee 4 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 0 | |
block ;; label = @5 | |
block ;; label = @6 | |
i32.const 0 | |
i32.load offset=1044 | |
local.tee 6 | |
i32.const 1 | |
local.get 4 | |
i32.shl | |
local.tee 4 | |
i32.and | |
br_if 0 (;@6;) | |
i32.const 0 | |
local.get 6 | |
local.get 4 | |
i32.or | |
i32.store offset=1044 | |
local.get 0 | |
local.set 4 | |
br 1 (;@5;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 4 | |
end | |
local.get 0 | |
local.get 5 | |
i32.store offset=8 | |
local.get 4 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=12 | |
local.get 5 | |
local.get 4 | |
i32.store offset=8 | |
br 1 (;@3;) | |
end | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 6 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
br_if 0 (;@5;) | |
i32.const 0 | |
local.set 0 | |
br 1 (;@4;) | |
end | |
i32.const 31 | |
local.set 0 | |
local.get 6 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 0 | |
i32.shl | |
local.tee 4 | |
local.get 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 3 | |
local.get 3 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 3 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
local.get 4 | |
local.get 0 | |
i32.or | |
local.get 3 | |
i32.or | |
i32.sub | |
local.tee 0 | |
i32.const 1 | |
i32.shl | |
local.get 6 | |
local.get 0 | |
i32.const 21 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 28 | |
i32.add | |
local.set 0 | |
end | |
local.get 5 | |
local.get 0 | |
i32.store offset=28 | |
local.get 5 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 0 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.set 4 | |
block ;; label = @4 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 7 | |
i32.const 1 | |
local.get 0 | |
i32.shl | |
local.tee 3 | |
i32.and | |
br_if 0 (;@6;) | |
i32.const 0 | |
local.get 7 | |
local.get 3 | |
i32.or | |
i32.store offset=1048 | |
local.get 4 | |
local.get 5 | |
i32.store | |
local.get 5 | |
local.get 4 | |
i32.store offset=24 | |
br 1 (;@5;) | |
end | |
local.get 6 | |
i32.const 0 | |
i32.const 25 | |
local.get 0 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 0 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 0 | |
local.get 4 | |
i32.load | |
local.set 3 | |
loop ;; label = @6 | |
local.get 3 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 6 | |
i32.eq | |
br_if 2 (;@4;) | |
local.get 0 | |
i32.const 29 | |
i32.shr_u | |
local.set 3 | |
local.get 0 | |
i32.const 1 | |
i32.shl | |
local.set 0 | |
local.get 4 | |
local.get 3 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 3 | |
br_if 0 (;@6;) | |
end | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
local.get 4 | |
i32.store offset=24 | |
end | |
local.get 5 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 5 | |
i32.store offset=8 | |
br 1 (;@3;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 5 | |
i32.store offset=12 | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
local.get 5 | |
i32.const 0 | |
i32.store offset=24 | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 5 | |
local.get 0 | |
i32.store offset=8 | |
end | |
local.get 8 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
br 1 (;@1;) | |
end | |
block ;; label = @2 | |
local.get 10 | |
i32.eqz | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
block ;; label = @4 | |
local.get 5 | |
local.get 5 | |
i32.load offset=28 | |
local.tee 6 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.tee 0 | |
i32.load | |
i32.ne | |
br_if 0 (;@4;) | |
local.get 0 | |
local.get 8 | |
i32.store | |
local.get 8 | |
br_if 1 (;@3;) | |
i32.const 0 | |
local.get 9 | |
i32.const -2 | |
local.get 6 | |
i32.rotl | |
i32.and | |
i32.store offset=1048 | |
br 2 (;@2;) | |
end | |
local.get 10 | |
i32.const 16 | |
i32.const 20 | |
local.get 10 | |
i32.load offset=16 | |
local.get 5 | |
i32.eq | |
select | |
i32.add | |
local.get 8 | |
i32.store | |
local.get 8 | |
i32.eqz | |
br_if 1 (;@2;) | |
end | |
local.get 8 | |
local.get 10 | |
i32.store offset=24 | |
block ;; label = @3 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 8 | |
local.get 0 | |
i32.store offset=16 | |
local.get 0 | |
local.get 8 | |
i32.store offset=24 | |
end | |
local.get 5 | |
i32.const 20 | |
i32.add | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
local.get 8 | |
i32.const 20 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 0 | |
local.get 8 | |
i32.store offset=24 | |
end | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 4 | |
i32.const 15 | |
i32.gt_u | |
br_if 0 (;@3;) | |
local.get 5 | |
local.get 4 | |
local.get 3 | |
i32.add | |
local.tee 0 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
local.get 0 | |
i32.load offset=4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
br 1 (;@2;) | |
end | |
local.get 5 | |
local.get 3 | |
i32.const 3 | |
i32.or | |
i32.store offset=4 | |
local.get 5 | |
local.get 3 | |
i32.add | |
local.tee 6 | |
local.get 4 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 6 | |
local.get 4 | |
i32.add | |
local.get 4 | |
i32.store | |
block ;; label = @3 | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@3;) | |
local.get 7 | |
i32.const 3 | |
i32.shr_u | |
local.tee 8 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 3 | |
i32.const 0 | |
i32.load offset=1064 | |
local.set 0 | |
block ;; label = @4 | |
block ;; label = @5 | |
i32.const 1 | |
local.get 8 | |
i32.shl | |
local.tee 8 | |
local.get 2 | |
i32.and | |
br_if 0 (;@5;) | |
i32.const 0 | |
local.get 8 | |
local.get 2 | |
i32.or | |
i32.store offset=1044 | |
local.get 3 | |
local.set 8 | |
br 1 (;@4;) | |
end | |
local.get 3 | |
i32.load offset=8 | |
local.set 8 | |
end | |
local.get 3 | |
local.get 0 | |
i32.store offset=8 | |
local.get 8 | |
local.get 0 | |
i32.store offset=12 | |
local.get 0 | |
local.get 3 | |
i32.store offset=12 | |
local.get 0 | |
local.get 8 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
local.get 6 | |
i32.store offset=1064 | |
i32.const 0 | |
local.get 4 | |
i32.store offset=1052 | |
end | |
local.get 5 | |
i32.const 8 | |
i32.add | |
local.set 0 | |
end | |
local.get 1 | |
i32.const 16 | |
i32.add | |
global.set 0 | |
local.get 0) | |
(func (;12;) (type 4) (param i32) | |
(local i32 i32 i32 i32 i32 i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const -8 | |
i32.add | |
local.tee 1 | |
local.get 0 | |
i32.const -4 | |
i32.add | |
i32.load | |
local.tee 2 | |
i32.const -8 | |
i32.and | |
local.tee 0 | |
i32.add | |
local.set 3 | |
block ;; label = @2 | |
local.get 2 | |
i32.const 1 | |
i32.and | |
br_if 0 (;@2;) | |
local.get 2 | |
i32.const 3 | |
i32.and | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 1 | |
local.get 1 | |
i32.load | |
local.tee 2 | |
i32.sub | |
local.tee 1 | |
i32.const 0 | |
i32.load offset=1060 | |
local.tee 4 | |
i32.lt_u | |
br_if 1 (;@1;) | |
local.get 2 | |
local.get 0 | |
i32.add | |
local.set 0 | |
block ;; label = @3 | |
i32.const 0 | |
i32.load offset=1064 | |
local.get 1 | |
i32.eq | |
br_if 0 (;@3;) | |
block ;; label = @4 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@4;) | |
local.get 1 | |
i32.load offset=12 | |
local.set 5 | |
block ;; label = @5 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 6 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
local.tee 7 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.tee 2 | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 4 | |
local.get 6 | |
i32.gt_u | |
drop | |
end | |
block ;; label = @5 | |
local.get 5 | |
local.get 6 | |
i32.ne | |
br_if 0 (;@5;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.const -2 | |
local.get 7 | |
i32.rotl | |
i32.and | |
i32.store offset=1044 | |
br 3 (;@2;) | |
end | |
block ;; label = @5 | |
local.get 5 | |
local.get 2 | |
i32.eq | |
br_if 0 (;@5;) | |
local.get 4 | |
local.get 5 | |
i32.gt_u | |
drop | |
end | |
local.get 6 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 6 | |
i32.store offset=8 | |
br 2 (;@2;) | |
end | |
local.get 1 | |
i32.load offset=24 | |
local.set 7 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 1 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 1 | |
i32.eq | |
br_if 0 (;@5;) | |
block ;; label = @6 | |
local.get 4 | |
local.get 1 | |
i32.load offset=8 | |
local.tee 2 | |
i32.gt_u | |
br_if 0 (;@6;) | |
local.get 2 | |
i32.load offset=12 | |
local.get 1 | |
i32.ne | |
drop | |
end | |
local.get 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
br 1 (;@4;) | |
end | |
block ;; label = @5 | |
local.get 1 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 1 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
i32.const 0 | |
local.set 5 | |
br 1 (;@4;) | |
end | |
loop ;; label = @5 | |
local.get 2 | |
local.set 6 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@5;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@5;) | |
end | |
local.get 6 | |
i32.const 0 | |
i32.store | |
end | |
local.get 7 | |
i32.eqz | |
br_if 1 (;@2;) | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 1 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 1 | |
i32.ne | |
br_if 0 (;@5;) | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@4;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1048 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1048 | |
br 3 (;@2;) | |
end | |
local.get 7 | |
i32.const 16 | |
i32.const 20 | |
local.get 7 | |
i32.load offset=16 | |
local.get 1 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 2 (;@2;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store offset=24 | |
block ;; label = @4 | |
local.get 1 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 1 | |
i32.load offset=20 | |
local.tee 2 | |
i32.eqz | |
br_if 1 (;@2;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
br 1 (;@2;) | |
end | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 3 | |
i32.and | |
i32.const 3 | |
i32.ne | |
br_if 0 (;@2;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1052 | |
local.get 3 | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
return | |
end | |
local.get 3 | |
local.get 1 | |
i32.le_u | |
br_if 0 (;@1;) | |
local.get 3 | |
i32.load offset=4 | |
local.tee 2 | |
i32.const 1 | |
i32.and | |
i32.eqz | |
br_if 0 (;@1;) | |
block ;; label = @2 | |
block ;; label = @3 | |
local.get 2 | |
i32.const 2 | |
i32.and | |
br_if 0 (;@3;) | |
block ;; label = @4 | |
i32.const 0 | |
i32.load offset=1068 | |
local.get 3 | |
i32.ne | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1068 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1056 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1056 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.ne | |
br_if 3 (;@1;) | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1052 | |
i32.const 0 | |
i32.const 0 | |
i32.store offset=1064 | |
return | |
end | |
block ;; label = @4 | |
i32.const 0 | |
i32.load offset=1064 | |
local.get 3 | |
i32.ne | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1064 | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1052 | |
local.get 0 | |
i32.add | |
local.tee 0 | |
i32.store offset=1052 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
return | |
end | |
local.get 2 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.add | |
local.set 0 | |
block ;; label = @4 | |
block ;; label = @5 | |
local.get 2 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@5;) | |
local.get 3 | |
i32.load offset=12 | |
local.set 4 | |
block ;; label = @6 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 5 | |
local.get 2 | |
i32.const 3 | |
i32.shr_u | |
local.tee 3 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.tee 2 | |
i32.eq | |
br_if 0 (;@6;) | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 5 | |
i32.gt_u | |
drop | |
end | |
block ;; label = @6 | |
local.get 4 | |
local.get 5 | |
i32.ne | |
br_if 0 (;@6;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1044 | |
i32.const -2 | |
local.get 3 | |
i32.rotl | |
i32.and | |
i32.store offset=1044 | |
br 2 (;@4;) | |
end | |
block ;; label = @6 | |
local.get 4 | |
local.get 2 | |
i32.eq | |
br_if 0 (;@6;) | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 4 | |
i32.gt_u | |
drop | |
end | |
local.get 5 | |
local.get 4 | |
i32.store offset=12 | |
local.get 4 | |
local.get 5 | |
i32.store offset=8 | |
br 1 (;@4;) | |
end | |
local.get 3 | |
i32.load offset=24 | |
local.set 7 | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 3 | |
i32.load offset=12 | |
local.tee 5 | |
local.get 3 | |
i32.eq | |
br_if 0 (;@6;) | |
block ;; label = @7 | |
i32.const 0 | |
i32.load offset=1060 | |
local.get 3 | |
i32.load offset=8 | |
local.tee 2 | |
i32.gt_u | |
br_if 0 (;@7;) | |
local.get 2 | |
i32.load offset=12 | |
local.get 3 | |
i32.ne | |
drop | |
end | |
local.get 2 | |
local.get 5 | |
i32.store offset=12 | |
local.get 5 | |
local.get 2 | |
i32.store offset=8 | |
br 1 (;@5;) | |
end | |
block ;; label = @6 | |
local.get 3 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@6;) | |
local.get 3 | |
i32.const 16 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@6;) | |
i32.const 0 | |
local.set 5 | |
br 1 (;@5;) | |
end | |
loop ;; label = @6 | |
local.get 2 | |
local.set 6 | |
local.get 4 | |
local.tee 5 | |
i32.const 20 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.tee 4 | |
br_if 0 (;@6;) | |
local.get 5 | |
i32.const 16 | |
i32.add | |
local.set 2 | |
local.get 5 | |
i32.load offset=16 | |
local.tee 4 | |
br_if 0 (;@6;) | |
end | |
local.get 6 | |
i32.const 0 | |
i32.store | |
end | |
local.get 7 | |
i32.eqz | |
br_if 0 (;@4;) | |
block ;; label = @5 | |
block ;; label = @6 | |
local.get 3 | |
i32.load offset=28 | |
local.tee 4 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.tee 2 | |
i32.load | |
local.get 3 | |
i32.ne | |
br_if 0 (;@6;) | |
local.get 2 | |
local.get 5 | |
i32.store | |
local.get 5 | |
br_if 1 (;@5;) | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1048 | |
i32.const -2 | |
local.get 4 | |
i32.rotl | |
i32.and | |
i32.store offset=1048 | |
br 2 (;@4;) | |
end | |
local.get 7 | |
i32.const 16 | |
i32.const 20 | |
local.get 7 | |
i32.load offset=16 | |
local.get 3 | |
i32.eq | |
select | |
i32.add | |
local.get 5 | |
i32.store | |
local.get 5 | |
i32.eqz | |
br_if 1 (;@4;) | |
end | |
local.get 5 | |
local.get 7 | |
i32.store offset=24 | |
block ;; label = @5 | |
local.get 3 | |
i32.load offset=16 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@5;) | |
local.get 5 | |
local.get 2 | |
i32.store offset=16 | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 3 | |
i32.load offset=20 | |
local.tee 2 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 5 | |
i32.const 20 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
local.get 5 | |
i32.store offset=24 | |
end | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
local.get 1 | |
i32.const 0 | |
i32.load offset=1064 | |
i32.ne | |
br_if 1 (;@2;) | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1052 | |
return | |
end | |
local.get 3 | |
local.get 2 | |
i32.const -2 | |
i32.and | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.const 1 | |
i32.or | |
i32.store offset=4 | |
local.get 1 | |
local.get 0 | |
i32.add | |
local.get 0 | |
i32.store | |
end | |
block ;; label = @2 | |
local.get 0 | |
i32.const 255 | |
i32.gt_u | |
br_if 0 (;@2;) | |
local.get 0 | |
i32.const 3 | |
i32.shr_u | |
local.tee 2 | |
i32.const 3 | |
i32.shl | |
i32.const 1084 | |
i32.add | |
local.set 0 | |
block ;; label = @3 | |
block ;; label = @4 | |
i32.const 0 | |
i32.load offset=1044 | |
local.tee 4 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 2 | |
i32.and | |
br_if 0 (;@4;) | |
i32.const 0 | |
local.get 4 | |
local.get 2 | |
i32.or | |
i32.store offset=1044 | |
local.get 0 | |
local.set 2 | |
br 1 (;@3;) | |
end | |
local.get 0 | |
i32.load offset=8 | |
local.set 2 | |
end | |
local.get 0 | |
local.get 1 | |
i32.store offset=8 | |
local.get 2 | |
local.get 1 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=12 | |
local.get 1 | |
local.get 2 | |
i32.store offset=8 | |
return | |
end | |
i32.const 0 | |
local.set 2 | |
block ;; label = @2 | |
local.get 0 | |
i32.const 8 | |
i32.shr_u | |
local.tee 4 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 31 | |
local.set 2 | |
local.get 0 | |
i32.const 16777215 | |
i32.gt_u | |
br_if 0 (;@2;) | |
local.get 4 | |
local.get 4 | |
i32.const 1048320 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 8 | |
i32.and | |
local.tee 2 | |
i32.shl | |
local.tee 4 | |
local.get 4 | |
i32.const 520192 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 4 | |
i32.and | |
local.tee 4 | |
i32.shl | |
local.tee 5 | |
local.get 5 | |
i32.const 245760 | |
i32.add | |
i32.const 16 | |
i32.shr_u | |
i32.const 2 | |
i32.and | |
local.tee 5 | |
i32.shl | |
i32.const 15 | |
i32.shr_u | |
local.get 4 | |
local.get 2 | |
i32.or | |
local.get 5 | |
i32.or | |
i32.sub | |
local.tee 2 | |
i32.const 1 | |
i32.shl | |
local.get 0 | |
local.get 2 | |
i32.const 21 | |
i32.add | |
i32.shr_u | |
i32.const 1 | |
i32.and | |
i32.or | |
i32.const 28 | |
i32.add | |
local.set 2 | |
end | |
local.get 1 | |
i64.const 0 | |
i64.store offset=16 align=4 | |
local.get 1 | |
i32.const 28 | |
i32.add | |
local.get 2 | |
i32.store | |
local.get 2 | |
i32.const 2 | |
i32.shl | |
i32.const 1348 | |
i32.add | |
local.set 4 | |
block ;; label = @2 | |
block ;; label = @3 | |
i32.const 0 | |
i32.load offset=1048 | |
local.tee 5 | |
i32.const 1 | |
local.get 2 | |
i32.shl | |
local.tee 3 | |
i32.and | |
br_if 0 (;@3;) | |
i32.const 0 | |
local.get 5 | |
local.get 3 | |
i32.or | |
i32.store offset=1048 | |
local.get 4 | |
local.get 1 | |
i32.store | |
local.get 1 | |
local.get 1 | |
i32.store offset=12 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 1 | |
local.get 1 | |
i32.store offset=8 | |
br 1 (;@2;) | |
end | |
local.get 0 | |
i32.const 0 | |
i32.const 25 | |
local.get 2 | |
i32.const 1 | |
i32.shr_u | |
i32.sub | |
local.get 2 | |
i32.const 31 | |
i32.eq | |
select | |
i32.shl | |
local.set 2 | |
local.get 4 | |
i32.load | |
local.set 5 | |
block ;; label = @3 | |
loop ;; label = @4 | |
local.get 5 | |
local.tee 4 | |
i32.load offset=4 | |
i32.const -8 | |
i32.and | |
local.get 0 | |
i32.eq | |
br_if 1 (;@3;) | |
local.get 2 | |
i32.const 29 | |
i32.shr_u | |
local.set 5 | |
local.get 2 | |
i32.const 1 | |
i32.shl | |
local.set 2 | |
local.get 4 | |
local.get 5 | |
i32.const 4 | |
i32.and | |
i32.add | |
i32.const 16 | |
i32.add | |
local.tee 3 | |
i32.load | |
local.tee 5 | |
br_if 0 (;@4;) | |
end | |
local.get 3 | |
local.get 1 | |
i32.store | |
local.get 1 | |
local.get 1 | |
i32.store offset=12 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
local.get 4 | |
i32.store | |
local.get 1 | |
local.get 1 | |
i32.store offset=8 | |
br 1 (;@2;) | |
end | |
local.get 4 | |
i32.load offset=8 | |
local.tee 0 | |
local.get 1 | |
i32.store offset=12 | |
local.get 4 | |
local.get 1 | |
i32.store offset=8 | |
local.get 1 | |
i32.const 24 | |
i32.add | |
i32.const 0 | |
i32.store | |
local.get 1 | |
local.get 4 | |
i32.store offset=12 | |
local.get 1 | |
local.get 0 | |
i32.store offset=8 | |
end | |
i32.const 0 | |
i32.const 0 | |
i32.load offset=1076 | |
i32.const -1 | |
i32.add | |
local.tee 1 | |
i32.store offset=1076 | |
local.get 1 | |
br_if 0 (;@1;) | |
i32.const 1500 | |
local.set 1 | |
loop ;; label = @2 | |
local.get 1 | |
i32.load | |
local.tee 0 | |
i32.const 8 | |
i32.add | |
local.set 1 | |
local.get 0 | |
br_if 0 (;@2;) | |
end | |
i32.const 0 | |
i32.const -1 | |
i32.store offset=1076 | |
end) | |
(func (;13;) (type 6) (param i32 i32) | |
block ;; label = @1 | |
i32.const 0 | |
i32.load offset=1540 | |
br_if 0 (;@1;) | |
i32.const 0 | |
local.get 1 | |
i32.store offset=1544 | |
i32.const 0 | |
local.get 0 | |
i32.store offset=1540 | |
end) | |
(func (;14;) (type 3) (param i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
block ;; label = @2 | |
local.get 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
block ;; label = @3 | |
local.get 0 | |
i32.load offset=76 | |
i32.const -1 | |
i32.gt_s | |
br_if 0 (;@3;) | |
local.get 0 | |
call 15 | |
return | |
end | |
local.get 0 | |
call 7 | |
local.set 1 | |
local.get 0 | |
call 15 | |
local.set 2 | |
local.get 1 | |
i32.eqz | |
br_if 1 (;@1;) | |
local.get 0 | |
call 8 | |
local.get 2 | |
return | |
end | |
i32.const 0 | |
local.set 2 | |
block ;; label = @2 | |
i32.const 0 | |
i32.load offset=1040 | |
i32.eqz | |
br_if 0 (;@2;) | |
i32.const 0 | |
i32.load offset=1040 | |
call 14 | |
local.set 2 | |
end | |
block ;; label = @2 | |
call 9 | |
i32.load | |
local.tee 0 | |
i32.eqz | |
br_if 0 (;@2;) | |
loop ;; label = @3 | |
i32.const 0 | |
local.set 1 | |
block ;; label = @4 | |
local.get 0 | |
i32.load offset=76 | |
i32.const 0 | |
i32.lt_s | |
br_if 0 (;@4;) | |
local.get 0 | |
call 7 | |
local.set 1 | |
end | |
block ;; label = @4 | |
local.get 0 | |
i32.load offset=20 | |
local.get 0 | |
i32.load offset=28 | |
i32.le_u | |
br_if 0 (;@4;) | |
local.get 0 | |
call 15 | |
local.get 2 | |
i32.or | |
local.set 2 | |
end | |
block ;; label = @4 | |
local.get 1 | |
i32.eqz | |
br_if 0 (;@4;) | |
local.get 0 | |
call 8 | |
end | |
local.get 0 | |
i32.load offset=56 | |
local.tee 0 | |
br_if 0 (;@3;) | |
end | |
end | |
call 10 | |
end | |
local.get 2) | |
(func (;15;) (type 3) (param i32) (result i32) | |
(local i32 i32) | |
block ;; label = @1 | |
local.get 0 | |
i32.load offset=20 | |
local.get 0 | |
i32.load offset=28 | |
i32.le_u | |
br_if 0 (;@1;) | |
local.get 0 | |
i32.const 0 | |
i32.const 0 | |
local.get 0 | |
i32.load offset=36 | |
call_indirect (type 0) | |
drop | |
local.get 0 | |
i32.load offset=20 | |
br_if 0 (;@1;) | |
i32.const -1 | |
return | |
end | |
block ;; label = @1 | |
local.get 0 | |
i32.load offset=4 | |
local.tee 1 | |
local.get 0 | |
i32.load offset=8 | |
local.tee 2 | |
i32.ge_u | |
br_if 0 (;@1;) | |
local.get 0 | |
local.get 1 | |
local.get 2 | |
i32.sub | |
i64.extend_i32_s | |
i32.const 1 | |
local.get 0 | |
i32.load offset=40 | |
call_indirect (type 1) | |
drop | |
end | |
local.get 0 | |
i32.const 0 | |
i32.store offset=28 | |
local.get 0 | |
i64.const 0 | |
i64.store offset=16 | |
local.get 0 | |
i64.const 0 | |
i64.store offset=4 align=4 | |
i32.const 0) | |
(func (;16;) (type 7) (result i32) | |
global.get 0) | |
(func (;17;) (type 8) (param i32) (result i32) | |
(local i32) | |
global.get 0 | |
local.get 0 | |
i32.sub | |
i32.const -16 | |
i32.and | |
local.tee 1 | |
global.set 0 | |
local.get 1) | |
(func (;18;) (type 9) (param i32) | |
local.get 0 | |
global.set 0) | |
(func (;19;) (type 8) (param i32) (result i32) | |
local.get 0 | |
memory.grow) | |
(global (;0;) (mut i32) (i32.const 5244432)) | |
(global (;1;) i32 (i32.const 1548)) | |
(export "__wasm_call_ctors" (func 4)) | |
(export "__errno_location" (func 5)) | |
(export "fflush" (func 14)) | |
(export "setThrew" (func 13)) | |
(export "malloc" (func 11)) | |
(export "free" (func 12)) | |
(export "__data_end" (global 1)) | |
(export "stackSave" (func 16)) | |
(export "stackAlloc" (func 17)) | |
(export "stackRestore" (func 18)) | |
(export "__growWasmMemory" (func 19)) | |
(data (;0;) (i32.const 1024) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00")) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment