[*] Binary protection state of gpgv
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function fprintf tear down of gpgv
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1090c */
| #include <stdint.h>
|
; (fcn) fcn.0001090c () | void fcn_0001090c () {
0x0001090c lui gp, 5 |
0x00010910 addiu gp, gp, 0x1824 |
0x00010914 addu gp, gp, t9 | gp += t9;
0x00010918 addiu sp, sp, -0x70 |
0x0001091c sw s7, 0x64(sp) | *(var_64h) = s7;
0x00010920 lw s7, -0x781c(gp) | s7 = *((gp - 7687));
0x00010924 sw gp, 0x18(sp) | *(var_18h) = gp;
0x00010928 sw ra, 0x6c(sp) | *(var_6ch) = ra;
0x0001092c lw v0, (s7) | v0 = *(s7);
0x00010930 sw fp, 0x68(sp) | *(var_68h) = fp;
0x00010934 sw s6, 0x60(sp) | *(var_60h) = s6;
0x00010938 sw s5, 0x5c(sp) | *(var_5ch) = s5;
0x0001093c sw s4, 0x58(sp) | *(var_58h) = s4;
0x00010940 sw s3, 0x54(sp) | *(var_54h) = s3;
0x00010944 sw s2, 0x50(sp) | *(var_50h) = s2;
0x00010948 sw s1, 0x4c(sp) | *(var_4ch) = s1;
0x0001094c sw s0, 0x48(sp) | *(var_48h) = s0;
0x00010950 sw v0, 0x44(sp) | *(var_44h) = v0;
0x00010954 lw v0, -0x7fdc(gp) | v0 = *(gp);
| if (a0 == 0) {
0x00010958 beqz a0, 0x10b7c | goto label_5;
| }
0x0001095c lw s5, -0x7fdc(gp) | s5 = *(gp);
0x00010960 lw s4, -0x7fdc(gp) | s4 = *(gp);
0x00010964 lw s3, -0x7fdc(gp) | s3 = *(gp);
0x00010968 sw v0, 0x2c(sp) | *(var_2ch_3) = v0;
| /* str.public_key_decryption_failed:__s_n */
0x0001096c addiu v0, s5, 0x3c14 | v0 = s5 + 0x3c14;
0x00010970 move fp, a0 | fp = a0;
0x00010974 move s2, a1 | s2 = a1;
0x00010978 lw s6, -0x7fdc(gp) | s6 = *(gp);
0x0001097c sw v0, 0x28(sp) | *(var_28h_2) = v0;
| /* str.encrypted_with__s_key__ID__s_n */
0x00010980 addiu s4, s4, 0x3be8 | s4 += 0x3be8;
| /* esilref: '[?]' */
0x00010984 addiu s3, s3, 0x3ba4 | s3 += 0x3ba4;
0x00010988 b 0x10abc |
| if (v0 != 0) {
| while (s2 != 0) {
0x0001098c beql v0, zero, 0x10ab4 |
0x00010990 lw fp, (fp) | fp = *(fp);
0x00010994 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| label_0:
0x00010998 lw a0, 0xc(fp) | a0 = *(arg_ch);
0x0001099c addiu s1, fp, 4 | s1 = fp + 4;
0x000109a0 bal 0x271dc | sym_pubkey_algo_to_string ();
0x000109a4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000109a8 addiu a0, zero, 0x80 | a0 = 0x80;
0x000109ac move s5, v0 | s5 = v0;
0x000109b0 lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
| if (s5 != 0) {
0x000109b4 movz s5, s3, s5 | s5 = s3;
| }
0x000109b8 jalr t9 | t9 ();
0x000109bc lw gp, 0x18(sp) | gp = *(var_18h);
0x000109c0 move s0, v0 | s0 = v0;
0x000109c4 lw v0, 0xc(fp) | v0 = *(arg_ch);
0x000109c8 lw t9, -0x7e34(gp) | t9 = sym.get_pubkey;
0x000109cc sb v0, 0x1f(s0) | *((s0 + 31)) = v0;
0x000109d0 move a1, s1 | a1 = s1;
0x000109d4 move a0, s0 | a0 = s0;
0x000109d8 bal 0xc768 | sym_get_pubkey ();
0x000109dc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000109e0 bnez v0, 0x10ad4 | goto label_6;
| }
0x000109e4 lw t9, -0x7d4c(gp) | t9 = sym.nbits_from_pk;
0x000109e8 move a0, s0 | a0 = s0;
0x000109ec bal 0x19f48 | sym_nbits_from_pk ();
0x000109f0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000109f4 move a0, s0 | a0 = s0;
0x000109f8 lw t9, -0x7e6c(gp) | t9 = sym.keystr_from_pk;
0x000109fc sw v0, 0x24(sp) | *(var_24h_3) = v0;
0x00010a00 bal 0x19dd4 | sym_keystr_from_pk ();
0x00010a04 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a08 lw a0, (s0) | a0 = *(s0);
0x00010a0c lw t9, -0x7d48(gp) | t9 = sym.strtimestamp;
0x00010a10 sw v0, 0x20(sp) | *(var_20h_4) = v0;
0x00010a14 jalr t9 | t9 ();
0x00010a18 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a1c lw a3, 0x20(sp) | a3 = *(var_20h_4);
0x00010a20 lw a1, 0x24(sp) | a1 = *(var_24h_3);
0x00010a24 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x00010a28 move a2, s5 | a2 = s5;
0x00010a2c sw v0, 0x10(sp) | *(var_10h_4) = v0;
| /* str.encrypted_with__u_bit__s_key__ID__s__created__s_n */
0x00010a30 addiu a0, s6, 0x3ba8 | a0 = s6 + 0x3ba8;
0x00010a34 jalr t9 | t9 ();
0x00010a38 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a3c lw t9, -0x7d44(gp) | t9 = sym.get_user_id_native;
0x00010a40 move a0, s1 | a0 = s1;
0x00010a44 bal 0xd254 | sym_get_user_id_native ();
0x00010a48 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a4c lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00010a50 move s1, v0 | s1 = v0;
0x00010a54 jalr t9 | t9 ();
0x00010a58 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a5c move a3, s1 | a3 = s1;
0x00010a60 addiu a1, zero, 1 | a1 = 1;
0x00010a64 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x00010a68 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| /* str.________s__n */
0x00010a6c addiu a2, a2, 0x3bdc | a2 += 0x3bdc;
0x00010a70 move a0, v0 | a0 = v0;
0x00010a74 jalr t9 | t9 ();
0x00010a78 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a7c lw t9, -0x7f24(gp) | t9 = sym.xfree;
0x00010a80 move a0, s1 | a0 = s1;
0x00010a84 jalr t9 | t9 ();
0x00010a88 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010a8c lw t9, -0x7e74(gp) | t9 = sym.free_public_key;
0x00010a90 move a0, s0 | a0 = s0;
0x00010a94 bal 0x91c0 | sym_free_public_key ();
0x00010a98 lw a0, 0x10(fp) | a0 = *(arg_10h);
0x00010a9c addiu v0, zero, 0x11 | v0 = 0x11;
0x00010aa0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (a0 == v0) {
0x00010aa4 beq a0, v0, 0x10b18 | goto label_7;
| }
| label_2:
0x00010aa8 lw t9, -0x7f88(gp) | t9 = sym.g10_errstr;
| if (a0 != 0) {
0x00010aac bnez a0, 0x10bb8 | goto label_8;
| }
| label_3:
0x00010ab0 lw fp, (fp) | fp = *(fp);
| }
| if (fp == 0) {
| label_1:
0x00010ab4 beqz fp, 0x10b7c | goto label_5;
| }
0x00010ab8 nop |
| label_4:
0x00010abc lw v0, 0x10(fp) | v0 = *(arg_10h);
0x00010ac0 bnez s2, 0x1098c |
| }
0x00010ac4 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| if (v0 == 0) {
0x00010ac8 beqz v0, 0x10998 | goto label_0;
| }
0x00010acc lw fp, (fp) | fp = *(fp);
0x00010ad0 b 0x10ab4 | goto label_1;
| label_6:
0x00010ad4 lw t9, -0x7e48(gp) | t9 = sym.keystr;
0x00010ad8 move a0, s1 | a0 = s1;
0x00010adc bal 0x19920 | sym_keystr ();
0x00010ae0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010ae4 move a2, v0 | a2 = v0;
0x00010ae8 move a1, s5 | a1 = s5;
0x00010aec lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x00010af0 move a0, s4 | a0 = s4;
0x00010af4 jalr t9 | t9 ();
0x00010af8 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010afc lw t9, -0x7e74(gp) | t9 = sym.free_public_key;
0x00010b00 move a0, s0 | a0 = s0;
0x00010b04 bal 0x91c0 | sym_free_public_key ();
0x00010b08 lw a0, 0x10(fp) | a0 = *(arg_10h);
0x00010b0c addiu v0, zero, 0x11 | v0 = 0x11;
0x00010b10 lw gp, 0x18(sp) | gp = *(var_18h);
| if (a0 != v0) {
0x00010b14 bne a0, v0, 0x10aa8 | goto label_2;
| }
| label_7:
0x00010b18 lw t9, -0x7d88(gp) | t9 = sym.is_status_enabled;
0x00010b1c bal 0x21b70 | sym_is_status_enabled ();
0x00010b20 nop |
0x00010b24 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00010b28 beqz v0, 0x10ab0 | goto label_3;
| }
0x00010b2c lw v0, 8(fp) | v0 = *(arg_8h);
0x00010b30 lw v1, 0x2c(sp) | v1 = *(var_2ch_3);
0x00010b34 sw v0, 0x14(sp) | *(var_14h_2) = v0;
0x00010b38 lw v0, 4(fp) | v0 = *(arg_4h);
0x00010b3c lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x00010b40 addiu s0, sp, 0x30 | s0 = sp + 0x30;
0x00010b44 addiu a3, v1, 0x3c08 | a3 = v1 + 0x3c08;
0x00010b48 addiu a2, zero, 0x14 | a2 = 0x14;
0x00010b4c addiu a1, zero, 1 | a1 = 1;
0x00010b50 move a0, s0 | a0 = s0;
0x00010b54 sw v0, 0x10(sp) | *(var_10h_4) = v0;
0x00010b58 jalr t9 | t9 ();
0x00010b5c lw gp, 0x18(sp) | gp = *(var_18h);
0x00010b60 move a1, s0 | a1 = s0;
0x00010b64 lw t9, -0x7d80(gp) | t9 = sym.write_status_text;
0x00010b68 addiu a0, zero, 0x1b | a0 = 0x1b;
0x00010b6c bal 0x21b8c | sym_write_status_text ();
0x00010b70 lw fp, (fp) | fp = *(fp);
0x00010b74 lw gp, 0x18(sp) | gp = *(var_18h);
| if (fp != 0) {
0x00010b78 bnez fp, 0x10abc | goto label_4;
| }
| label_5:
0x00010b7c lw v1, 0x44(sp) | v1 = *(var_44h);
0x00010b80 lw v0, (s7) | v0 = *(s7);
0x00010b84 lw ra, 0x6c(sp) | ra = *(var_6ch);
| if (v1 == v0) {
0x00010b88 bne v1, v0, 0x10bdc |
0x00010b8c lw fp, 0x68(sp) | fp = *(var_68h);
0x00010b90 lw s7, 0x64(sp) | s7 = *(var_64h);
0x00010b94 lw s6, 0x60(sp) | s6 = *(var_60h);
0x00010b98 lw s5, 0x5c(sp) | s5 = *(var_5ch);
0x00010b9c lw s4, 0x58(sp) | s4 = *(var_58h);
0x00010ba0 lw s3, 0x54(sp) | s3 = *(var_54h);
0x00010ba4 lw s2, 0x50(sp) | s2 = *(var_50h);
0x00010ba8 lw s1, 0x4c(sp) | s1 = *(var_4ch);
0x00010bac lw s0, 0x48(sp) | s0 = *(var_48h);
0x00010bb0 addiu sp, sp, 0x70 |
0x00010bb4 jr ra | return v1;
| label_8:
0x00010bb8 jalr t9 | t9 ();
0x00010bbc nop |
0x00010bc0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010bc4 lw a0, 0x28(sp) | a0 = *(var_28h_2);
0x00010bc8 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x00010bcc move a1, v0 | a1 = v0;
0x00010bd0 jalr t9 | t9 ();
0x00010bd4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00010bd8 b 0x10ab0 | goto label_3;
| }
0x00010bdc lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x00010be0 jalr t9 | t9 ();
0x00010be4 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x12d38 */
| #include <stdint.h>
|
; (fcn) fcn.00012d38 () | void fcn_00012d38 () {
0x00012d38 lui gp, 5 |
0x00012d3c addiu gp, gp, -0xc08 |
0x00012d40 addu gp, gp, t9 | gp += t9;
0x00012d44 addiu sp, sp, -0x198 |
0x00012d48 lw v0, 4(a1) | v0 = *((a1 + 1));
0x00012d4c sw s3, 0x17c(sp) | *(var_17ch) = s3;
0x00012d50 sw s2, 0x178(sp) | *(var_178h) = s2;
0x00012d54 lw s3, -0x781c(gp) | s3 = *((gp - 7687));
0x00012d58 lw s2, -0x7fc8(gp) | s2 = *(gp);
0x00012d5c sw s1, 0x174(sp) | *(var_174h) = s1;
0x00012d60 lw v1, (s3) | v1 = *(s3);
0x00012d64 lw s1, 0xd8(s2) | s1 = *((s2 + 54));
0x00012d68 sw gp, 0x30(sp) | *(var_30h) = gp;
0x00012d6c sw s0, 0x170(sp) | *(var_170h) = s0;
0x00012d70 sw ra, 0x194(sp) | *(var_194h) = ra;
0x00012d74 sw fp, 0x190(sp) | *(var_190h) = fp;
0x00012d78 sw s7, 0x18c(sp) | *(var_18ch) = s7;
0x00012d7c sw s6, 0x188(sp) | *(var_188h) = s6;
0x00012d80 sw s5, 0x184(sp) | *(var_184h) = s5;
0x00012d84 sw s4, 0x180(sp) | *(var_180h) = s4;
0x00012d88 sw v1, 0x16c(sp) | *(var_16ch) = v1;
0x00012d8c lw s0, 4(v0) | s0 = *((v0 + 1));
0x00012d90 sw zero, 0x60(sp) | *(var_60h) = 0;
0x00012d94 sw zero, 0x64(sp) | *(var_64h) = 0;
| if (s1 != 0) {
0x00012d98 bnez s1, 0x132d4 | goto label_49;
| }
0x00012d9c lw v0, 0x34(a0) | v0 = *((a0 + 13));
0x00012da0 move s5, a0 | s5 = a0;
| if (v0 == 0) {
0x00012da4 beqz v0, 0x140c4 | goto label_50;
| }
0x00012da8 lw v1, 4(v0) | v1 = *((v0 + 1));
0x00012dac move s4, a1 | s4 = a1;
0x00012db0 addiu a0, zero, 2 | a0 = 2;
0x00012db4 lw a1, (v1) | a1 = *(v1);
0x00012db8 addiu a0, zero, 4 | a0 = 4;
| if (a1 == a0) {
0x00012dbc beq a1, a0, 0x13290 | goto label_51;
| }
0x00012dc0 addiu a0, zero, 0x3f | a0 = 0x3f;
| if (a1 == a0) {
0x00012dc4 beq a1, a0, 0x132f0 | goto label_52;
| }
0x00012dc8 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a1 != a0) {
0x00012dcc bne a1, a0, 0x13240 | goto label_7;
| }
0x00012dd0 lw a0, 4(v1) | a0 = *((v1 + 1));
0x00012dd4 addiu v1, zero, 1 | v1 = 1;
0x00012dd8 lw a0, (a0) | a0 = *(a0);
0x00012ddc lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 != v1) {
0x00012de0 bne a0, v1, 0x13240 | goto label_7;
| }
0x00012de4 lw v0, (v0) | v0 = *(v0);
0x00012de8 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| if (v0 == 0) {
0x00012dec beqz v0, 0x13244 | goto label_53;
| }
0x00012df0 lw v1, 4(v0) | v1 = *((v0 + 1));
0x00012df4 lw a0, (v1) | a0 = *(v1);
0x00012df8 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 != a1) {
0x00012dfc bne a0, a1, 0x13244 | goto label_53;
| }
0x00012e00 lw a0, 4(v1) | a0 = *((v1 + 1));
0x00012e04 addiu v1, zero, 3 | v1 = 3;
0x00012e08 lw a0, (a0) | a0 = *(a0);
0x00012e0c lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 == v1) {
0x00012e10 bnel a0, v1, 0x13244 | goto label_53;
| }
0x00012e14 lw v0, (v0) | v0 = *(v0);
0x00012e18 addiu v1, zero, 2 | v1 = 2;
| if (v0 == 0) {
0x00012e1c beqz v0, 0x1323c | goto label_11;
| }
0x00012e20 lw a0, 4(v0) | a0 = *((v0 + 1));
0x00012e24 lw a0, (a0) | a0 = *(a0);
0x00012e28 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 == v1) {
0x00012e2c bnel a0, v1, 0x13244 | goto label_53;
| }
0x00012e30 addiu a0, zero, 2 | a0 = 2;
0x00012e34 b 0x12e44 |
| while (v0 == 0) {
0x00012e38 lw v1, (v1) | v1 = *(v1);
0x00012e3c lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v1 == a0) {
0x00012e40 bnel v1, a0, 0x13240 | goto label_7;
| }
0x00012e44 lw v0, (v0) | v0 = *(v0);
0x00012e48 lw v1, 4(v0) | v1 = *((v0 + 1));
0x00012e4c bnel v0, zero, 0x12e38 |
| }
0x00012e50 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| label_5:
0x00012e54 lbu a0, 0x16(s0) | a0 = *((s0 + 22));
0x00012e58 bal 0x271dc | sym_pubkey_algo_to_string ();
0x00012e5c lw gp, 0x30(sp) | gp = *(var_30h);
0x00012e60 lw t9, -0x7cb4(gp) | t9 = sym.keystrlen;
0x00012e64 move s6, v0 | s6 = v0;
0x00012e68 bal 0x198c0 | sym_keystrlen ();
0x00012e6c sltiu v0, v0, 9 | v0 = (v0 < 9) ? 1 : 0;
0x00012e70 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 != 0) {
0x00012e74 bnez v0, 0x13368 | goto label_54;
| }
0x00012e78 lw t9, -0x7cb0(gp) | t9 = sym.asctimestamp;
0x00012e7c lw a0, 0xc(s0) | a0 = *((s0 + 3));
0x00012e80 jalr t9 | t9 ();
0x00012e84 lw gp, 0x30(sp) | gp = *(var_30h);
0x00012e88 move a1, v0 | a1 = v0;
0x00012e8c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00012e90 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.Signature_made__s_n */
0x00012e94 addiu a0, a0, 0x41e4 | a0 += 0x41e4;
0x00012e98 jalr t9 | t9 ();
0x00012e9c lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == 0) {
0x00012ea0 beqz s6, 0x13c1c | goto label_55;
| }
| label_35:
0x00012ea4 lw t9, -0x7e48(gp) | t9 = sym.keystr;
0x00012ea8 addiu v0, s0, 4 | v0 = s0 + 4;
0x00012eac move a0, v0 | a0 = v0;
0x00012eb0 sw v0, 0x44(sp) | *(var_44h_2) = v0;
0x00012eb4 bal 0x19920 | sym_keystr ();
0x00012eb8 lw gp, 0x30(sp) | gp = *(var_30h);
0x00012ebc move a2, v0 | a2 = v0;
0x00012ec0 move a1, s6 | a1 = s6;
0x00012ec4 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00012ec8 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str._______________using__s_key__s_n */
0x00012ecc addiu a0, a0, 0x41f8 | a0 += 0x41f8;
0x00012ed0 jalr t9 | t9 ();
0x00012ed4 lw gp, 0x30(sp) | gp = *(var_30h);
| label_12:
0x00012ed8 addiu v0, sp, 0x64 | v0 = sp + 0x64;
0x00012edc sw v0, 0x50(sp) | *(var_50h) = v0;
0x00012ee0 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00012ee4 lw v0, -0x7f10(gp) | v0 = *(gp);
0x00012ee8 addiu a3, sp, 0x60 | a3 = sp + 0x60;
| /* fcn.00011688 */
0x00012eec addiu t9, v0, 0x1688 | t9 = v0 + 0x1688;
0x00012ef0 sw a3, 0x4c(sp) | *(var_4ch) = a3;
0x00012ef4 move a2, zero | a2 = 0;
0x00012ef8 move a1, s4 | a1 = s4;
0x00012efc move a0, s5 | a0 = s5;
0x00012f00 sw t9, 0x48(sp) | *(var_48h) = t9;
0x00012f04 bal 0x11688 | fcn_00011688 ();
0x00012f08 move s6, v0 | s6 = v0;
0x00012f0c addiu v0, zero, 9 | v0 = 9;
0x00012f10 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == v0) {
0x00012f14 beq s6, v0, 0x133bc | goto label_56;
| }
| label_17:
0x00012f18 addiu v1, zero, 5 | v1 = 5;
| if (s6 != 0) {
0x00012f1c bnez s6, 0x13580 | goto label_57;
| }
0x00012f20 lhu v0, (s0) | v0 = *(s0);
| label_48:
0x00012f24 andi v0, v0, 0x200 | v0 &= aav.0x00000200;
0x00012f28 addiu v0, zero, 0x41 | v0 = 0x41;
| if (v0 != 0) {
0x00012f2c bnez v0, 0x13b64 | goto label_58;
| }
0x00012f30 lw s6, 0x60(sp) | s6 = *(var_60h);
0x00012f34 lw v1, 0x64(sp) | v1 = *(var_64h);
| if (s6 != 0) {
0x00012f38 bnez s6, 0x13614 | goto label_59;
| }
0x00012f3c addiu v0, zero, 0x46 | v0 = 0x46;
0x00012f40 addiu fp, zero, 4 | fp = 4;
| if (v1 == 0) {
0x00012f44 movn fp, v0, v1 | fp = v0;
| }
0x00012f48 sw fp, 0x40(sp) | *(var_40h_2) = fp;
| label_13:
0x00012f4c lw t9, -0x7e58(gp) | t9 = sym.get_pubkeyblock;
0x00012f50 lw a0, 0x44(sp) | a0 = *(var_44h_2);
0x00012f54 bal 0xb484 | sym_get_pubkeyblock ();
0x00012f58 lw gp, 0x30(sp) | gp = *(var_30h);
0x00012f5c lw v1, 8(s0) | v1 = *((s0 + 2));
0x00012f60 addiu a0, sp, 0x8c | a0 = sp + 0x8c;
0x00012f64 sw v1, 0x14(sp) | *(var_14h) = v1;
0x00012f68 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x00012f6c lw v1, 4(s0) | v1 = *((s0 + 1));
0x00012f70 lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x00012f74 sw a0, 0x3c(sp) | *(var_3ch_2) = a0;
0x00012f78 move s5, v0 | s5 = v0;
0x00012f7c sw v1, 0x10(sp) | *(var_10h_2) = v1;
| /* str._08lX_08lX__uncertain__ */
0x00012f80 addiu a3, a3, 0x4254 | a3 += 0x4254;
0x00012f84 addiu a2, zero, 0x32 | a2 = 0x32;
0x00012f88 addiu a1, zero, 1 | a1 = 1;
0x00012f8c jalr t9 | t9 ();
0x00012f90 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s5 == 0) {
0x00012f94 beqz s5, 0x13cb0 | goto label_60;
| }
0x00012f98 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00012f9c move s7, s5 | s7 = s5;
0x00012fa0 sw v0, 0x50(sp) | *(var_50h) = v0;
0x00012fa4 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00012fa8 move s4, zero | s4 = 0;
| /* str.___s__n */
0x00012fac addiu v0, v0, 0x42bc | v0 += 0x42bc;
0x00012fb0 sw v0, 0x48(sp) | *(var_48h) = v0;
0x00012fb4 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00012fb8 addiu fp, zero, 6 | fp = 6;
| /* str.Good_signature_from___s_ */
0x00012fbc addiu v0, v0, 0x42a0 | v0 += 0x42a0;
0x00012fc0 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x00012fc4 lw v0, -0x7fdc(gp) | v0 = *(gp);
| /* str.BAD_signature_from___s_ */
0x00012fc8 addiu v0, v0, 0x426c | v0 += 0x426c;
0x00012fcc sw v0, 0x54(sp) | *(var_54h) = v0;
0x00012fd0 b 0x13028 |
| while (v0 == fp) {
0x00012fd4 lw s7, (s7) | s7 = *(s7);
| if (v0 != a1) {
0x00012fd8 bnel v0, a1, 0x13020 |
0x00012fdc lw a1, 4(a0) | a1 = *((a0 + 1));
0x00012fe0 lw v0, 0x40(a1) | v0 = *((a1 + 16));
| if (v0 == 0) {
0x00012fe4 beql v0, zero, 0x13020 | goto label_61;
| }
0x00012fe8 lw s7, (s7) | s7 = *(s7);
0x00012fec lw v0, 0x30(a1) | v0 = *((a1 + 12));
0x00012ff0 lw s7, (s7) | s7 = *(s7);
| if (v0 == 0) {
0x00012ff4 bnel v0, zero, 0x13020 | goto label_61;
| }
0x00012ff8 lw v0, 0x34(a1) | v0 = *((a1 + 13));
0x00012ffc lw s7, (s7) | s7 = *(s7);
| if (v0 == 0) {
0x00013000 bnel v0, zero, 0x13020 | goto label_61;
| }
0x00013004 lw v0, 0x2c(a1) | v0 = *((a1 + 11));
| if (v0 == 0) {
0x00013008 beql v0, zero, 0x13020 | goto label_61;
| }
0x0001300c lw s7, (s7) | s7 = *(s7);
0x00013010 lw v0, 0x10(a1) | v0 = *((a1 + 4));
| if (v0 == 0) {
0x00013014 beqz v0, 0x1367c | goto label_62;
| }
0x00013018 nop |
| label_18:
0x0001301c lw s7, (s7) | s7 = *(s7);
| }
| if (s7 == 0) {
| label_61:
0x00013020 beqz s7, 0x13044 | goto label_63;
| }
0x00013024 nop |
| label_0:
0x00013028 lw a0, 4(s7) | a0 = *((s7 + 1));
0x0001302c lw v0, (a0) | v0 = *(a0);
0x00013030 addiu a1, zero, 0xd | a1 = 0xd;
0x00013034 bnel v0, fp, 0x12fd4 |
| }
0x00013038 lw s7, (s7) | s7 = *(s7);
0x0001303c lw s4, 4(a0) | s4 = *((a0 + 1));
| if (s7 != 0) {
0x00013040 bnez s7, 0x13028 | goto label_0;
| }
| if (s1 == 0) {
| label_63:
0x00013044 beql s1, zero, 0x138e4 | goto label_64;
| }
0x00013048 move s1, s5 | s1 = s5;
0x0001304c lw t9, -0x7ea4(gp) | t9 = sym.release_kbnode;
| if (s6 != 0) {
0x00013050 bnez s6, 0x13b28 | goto label_65;
| }
0x00013054 lw v0, 0x154(s2) | v0 = *(s2);
0x00013058 andi v0, v0, 0x200 | v0 &= aav.0x00000200;
0x0001305c lw v0, -0x7fdc(gp) | v0 = *(gp);
| if (v0 != 0) {
0x00013060 bnez v0, 0x1379c | goto label_66;
| }
0x00013064 lw fp, -0x7fdc(gp) | fp = *(gp);
0x00013068 sw v0, 0x3c(sp) | *(var_3ch_2) = v0;
| /* str.revoked */
0x0001306c addiu v0, fp, 0x4128 | v0 = fp + 0x4128;
0x00013070 sw v0, 0x40(sp) | *(var_40h_2) = v0;
0x00013074 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00013078 lw s6, -0x7fdc(gp) | s6 = *(gp);
| /* str.expired */
0x0001307c addiu v0, v0, 0x4130 | v0 += 0x4130;
0x00013080 move s7, s5 | s7 = s5;
0x00013084 addiu s1, zero, 0xd | s1 = 0xd;
| /* str.___s__n */
0x00013088 addiu s6, s6, 0x42bc | s6 += 0x42bc;
0x0001308c sw v0, 0x48(sp) | *(var_48h) = v0;
0x00013090 b 0x1316c | goto label_67;
| label_2:
0x00013094 lw t9, -0x7cac(gp) | t9 = sym.dump_attribs;
| if (a1 != 0) {
0x00013098 beqz a1, 0x13160 |
| label_4:
0x0001309c move a2, zero | a2 = 0;
0x000130a0 move a1, s4 | a1 = s4;
0x000130a4 bal 0x26124 | sym_dump_attribs ();
0x000130a8 lw v0, 0x154(s2) | v0 = *(s2);
0x000130ac andi v0, v0, 1 | v0 &= 1;
0x000130b0 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 != 0) {
0x000130b4 bnez v0, 0x13e1c | goto label_68;
| }
0x000130b8 lw v0, 4(s7) | v0 = *((s7 + 1));
0x000130bc lw a0, 4(v0) | a0 = *((v0 + 1));
| label_43:
0x000130c0 lw a1, 4(a0) | a1 = *((a0 + 1));
| label_3:
0x000130c4 lw t9, -0x7e2c(gp) | t9 = sym.utf8_to_native;
0x000130c8 move a2, zero | a2 = 0;
0x000130cc addiu a0, a0, 0x4c | a0 += 0x4c;
0x000130d0 jalr t9 | t9 ();
0x000130d4 lw gp, 0x30(sp) | gp = *(var_30h);
0x000130d8 move a1, v0 | a1 = v0;
0x000130dc move fp, v0 | fp = v0;
0x000130e0 lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
0x000130e4 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x000130e8 addiu a0, v0, 0x42d0 | a0 = v0 + 0x42d0;
0x000130ec jalr t9 | t9 ();
0x000130f0 lw gp, 0x30(sp) | gp = *(var_30h);
0x000130f4 lw t9, -0x7f24(gp) | t9 = sym.xfree;
0x000130f8 move a0, fp | a0 = fp;
0x000130fc jalr t9 | t9 ();
0x00013100 lw v0, 0x154(s2) | v0 = *(s2);
0x00013104 andi v0, v0, 0x20 | v0 &= 0x20;
0x00013108 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x0001310c beqz v0, 0x13cf4 | goto label_69;
| }
0x00013110 lw v0, 4(s7) | v0 = *((s7 + 1));
0x00013114 lw a1, 4(v0) | a1 = *((v0 + 1));
0x00013118 lw v0, 0x30(a1) | v0 = *((a1 + 12));
0x0001311c lw fp, 0x40(sp) | fp = *(var_40h_2);
| if (v0 == 0) {
0x00013120 bnez v0, 0x13134 |
0x00013124 lw v0, 0x34(a1) | v0 = *((a1 + 13));
0x00013128 lw t9, -0x7ca8(gp) | t9 = sym.get_validity;
| if (v0 == 0) {
0x0001312c beqz v0, 0x13e4c | goto label_70;
| }
0x00013130 lw fp, 0x48(sp) | fp = *(var_48h);
| }
| label_44:
0x00013134 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013138 jalr t9 | t9 ();
0x0001313c nop |
0x00013140 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013144 move a3, fp | a3 = fp;
0x00013148 move a2, s6 | a2 = s6;
0x0001314c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x00013150 addiu a1, zero, 1 | a1 = 1;
0x00013154 move a0, v0 | a0 = v0;
0x00013158 jalr t9 | t9 ();
0x0001315c lw gp, 0x30(sp) | gp = *(var_30h);
| }
| label_40:
0x00013160 lw s7, (s7) | s7 = *(s7);
| do {
| label_1:
0x00013164 lw t9, -0x7ea4(gp) | t9 = sym.release_kbnode;
| if (s7 == 0) {
0x00013168 beqz s7, 0x1379c | goto label_66;
| }
| label_67:
0x0001316c lw v0, 4(s7) | v0 = *((s7 + 1));
0x00013170 lw a0, (v0) | a0 = *(v0);
0x00013174 lw s7, (s7) | s7 = *(s7);
0x00013178 bnel a0, s1, 0x13164 |
| } while (a0 == s1);
0x0001317c lw a0, 4(v0) | a0 = *((v0 + 1));
0x00013180 lw v0, 0x30(a0) | v0 = *((a0 + 12));
0x00013184 lw v0, 0x154(s2) | v0 = *(s2);
| if (v0 != 0) {
0x00013188 bnel v0, zero, 0x1319c |
0x0001318c lw v0, 0x34(a0) | v0 = *((a0 + 13));
| if (v0 == 0) {
0x00013190 beql v0, zero, 0x131ac | goto label_71;
| }
0x00013194 lw v0, 0x2c(a0) | v0 = *((a0 + 11));
0x00013198 lw v0, 0x154(s2) | v0 = *(s2);
| }
0x0001319c andi v0, v0, 0x40 | v0 &= 0x40;
| if (v0 == 0) {
0x000131a0 beql v0, zero, 0x13164 | goto label_1;
| }
0x000131a4 lw s7, (s7) | s7 = *(s7);
0x000131a8 lw v0, 0x2c(a0) | v0 = *((a0 + 11));
| label_71:
0x000131ac lw a1, 0x10(a0) | a1 = *((a0 + 4));
| if (v0 != 0) {
0x000131b0 bnez v0, 0x13094 | goto label_2;
| }
| if (a1 == 0) {
0x000131b4 beql a1, zero, 0x130c4 | goto label_3;
| }
0x000131b8 lw a1, 4(a0) | a1 = *((a0 + 1));
0x000131bc lw t9, -0x7cac(gp) | t9 = sym.dump_attribs;
0x000131c0 b 0x1309c | goto label_4;
| label_8:
0x000131c4 addiu a2, zero, 0x3f | a2 = 0x3f;
| label_9:
0x000131c8 addiu v1, zero, 3 | v1 = 3;
| if (v1 != a2) {
0x000131cc bne v1, a2, 0x1323c | goto label_11;
| }
0x000131d0 lw a0, 4(a0) | a0 = *((a0 + 1));
0x000131d4 lw a0, (a0) | a0 = *(a0);
0x000131d8 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 == v1) {
0x000131dc bnel a0, v1, 0x13240 | goto label_7;
| }
0x000131e0 lw v0, (v0) | v0 = *(v0);
0x000131e4 addiu v1, zero, 2 | v1 = 2;
| if (v0 == 0) {
0x000131e8 beqz v0, 0x1323c | goto label_11;
| }
0x000131ec lw a0, 4(v0) | a0 = *((v0 + 1));
0x000131f0 lw a0, (a0) | a0 = *(a0);
0x000131f4 move v1, zero | v1 = 0;
| if (a0 != v1) {
0x000131f8 bne a0, v1, 0x1323c | goto label_11;
| }
0x000131fc addiu a2, zero, 2 | a2 = 2;
0x00013200 b 0x13214 |
| while (v0 != 0) {
0x00013204 lw a0, 4(v0) | a0 = *((v0 + 1));
0x00013208 lw a0, (a0) | a0 = *(a0);
| if (a0 != a2) {
0x0001320c bne a0, a2, 0x13220 | goto label_72;
| }
0x00013210 nop |
0x00013214 lw v0, (v0) | v0 = *(v0);
0x00013218 addiu v1, v1, 1 | v1++;
0x0001321c bnez v0, 0x13204 |
| }
| label_72:
0x00013220 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| if (v1 == a1) {
0x00013224 beq v1, a1, 0x12e54 | goto label_5;
| }
0x00013228 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001322c lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.number_of_one_pass_packets_does_not_match_number_of_signature_packets_n */
0x00013230 addiu a0, a0, 0x4170 | a0 += 0x4170;
0x00013234 jalr t9 | t9 ();
0x00013238 lw gp, 0x30(sp) | gp = *(var_30h);
| label_11:
0x0001323c lw a0, -0x7fdc(gp) | a0 = *(gp);
| label_7:
0x00013240 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.cant_handle_this_ambiguous_signature_data_n */
| label_53:
0x00013244 addiu a0, a0, 0x41b8 | a0 += 0x41b8;
0x00013248 jalr t9 | t9 ();
0x0001324c lw gp, 0x30(sp) | gp = *(var_30h);
| label_6:
0x00013250 lw a0, 0x16c(sp) | a0 = *(var_16ch);
0x00013254 lw v1, (s3) | v1 = *(s3);
0x00013258 move v0, s1 | v0 = s1;
| if (a0 != v1) {
0x0001325c bne a0, v1, 0x140b8 | goto label_73;
| }
0x00013260 lw ra, 0x194(sp) | ra = *(var_194h);
0x00013264 lw fp, 0x190(sp) | fp = *(var_190h);
0x00013268 lw s7, 0x18c(sp) | s7 = *(var_18ch);
0x0001326c lw s6, 0x188(sp) | s6 = *(var_188h);
0x00013270 lw s5, 0x184(sp) | s5 = *(var_184h);
0x00013274 lw s4, 0x180(sp) | s4 = *(var_180h);
0x00013278 lw s3, 0x17c(sp) | s3 = *(var_17ch);
0x0001327c lw s2, 0x178(sp) | s2 = *(var_178h);
0x00013280 lw s1, 0x174(sp) | s1 = *(var_174h);
0x00013284 lw s0, 0x170(sp) | s0 = *(var_170h);
0x00013288 addiu sp, sp, 0x198 |
0x0001328c jr ra | return v0;
| label_51:
0x00013290 lw v0, (v0) | v0 = *(v0);
0x00013294 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| if (v0 == 0) {
0x00013298 beqz v0, 0x12e54 | goto label_5;
| }
0x0001329c lw a0, 4(v0) | a0 = *((v0 + 1));
0x000132a0 lw v1, (a0) | v1 = *(a0);
0x000132a4 addiu a1, zero, 2 | a1 = 2;
| if (v1 != a1) {
0x000132a8 bne v1, a1, 0x13338 | goto label_74;
| }
0x000132ac lw v0, (v0) | v0 = *(v0);
0x000132b0 b 0x132c4 |
| while (v0 == 0) {
0x000132b4 lw v1, (a0) | v1 = *(a0);
0x000132b8 addiu a1, zero, 0x3f | a1 = 0x3f;
| if (v1 == a1) {
0x000132bc bnel v1, a1, 0x1333c | goto label_75;
| }
0x000132c0 lw v0, (v0) | v0 = *(v0);
0x000132c4 lw a0, 4(v0) | a0 = *((v0 + 1));
0x000132c8 bnel v0, zero, 0x132b4 |
| }
0x000132cc lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
0x000132d0 b 0x12e54 | goto label_5;
| label_49:
0x000132d4 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000132d8 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.signature_verification_suppressed_n */
0x000132dc addiu a0, a0, 0x414c | a0 += 0x414c;
0x000132e0 jalr t9 | t9 ();
0x000132e4 move s1, zero | s1 = 0;
0x000132e8 lw gp, 0x30(sp) | gp = *(var_30h);
0x000132ec b 0x13250 | goto label_6;
| label_52:
0x000132f0 lw v0, (v0) | v0 = *(v0);
0x000132f4 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 == 0) {
0x000132f8 beqz v0, 0x13240 | goto label_7;
| }
0x000132fc lw a0, 4(v0) | a0 = *((v0 + 1));
0x00013300 lw v1, (a0) | v1 = *(a0);
0x00013304 addiu a1, zero, 1 | a1 = 1;
| if (v1 != a1) {
0x00013308 bne v1, a1, 0x131c4 | goto label_8;
| }
0x0001330c addiu a2, zero, 4 | a2 = 4;
0x00013310 b 0x13324 | goto label_76;
| label_10:
0x00013314 lw a0, 4(v0) | a0 = *((v0 + 1));
0x00013318 lw v1, (a0) | v1 = *(a0);
0x0001331c addiu a2, zero, 0x3f | a2 = 0x3f;
| if (v1 == a2) {
0x00013320 bnel v1, a2, 0x131c8 | goto label_9;
| }
| label_76:
0x00013324 lw v0, (v0) | v0 = *(v0);
0x00013328 addiu a1, a1, 1 | a1++;
| if (v0 != 0) {
0x0001332c bnez v0, 0x13314 | goto label_10;
| }
0x00013330 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00013334 b 0x13240 | goto label_7;
| label_74:
0x00013338 addiu a1, zero, 0x3f | a1 = 0x3f;
| label_75:
0x0001333c addiu v1, zero, 3 | v1 = 3;
| if (v1 != a1) {
0x00013340 bne v1, a1, 0x1323c | goto label_11;
| }
0x00013344 lw a0, 4(a0) | a0 = *((a0 + 1));
0x00013348 lw a0, (a0) | a0 = *(a0);
0x0001334c lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (a0 == v1) {
0x00013350 bnel a0, v1, 0x13240 | goto label_7;
| }
0x00013354 lw v0, (v0) | v0 = *(v0);
0x00013358 lw t9, -0x7d50(gp) | t9 = sym.pubkey_algo_to_string;
| if (v0 == 0) {
0x0001335c beqz v0, 0x12e54 | goto label_5;
| }
0x00013360 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00013364 b 0x13240 | goto label_7;
| label_54:
0x00013368 lw t9, -0x7cb0(gp) | t9 = sym.asctimestamp;
0x0001336c lw a0, 0xc(s0) | a0 = *((s0 + 3));
0x00013370 jalr t9 | t9 ();
0x00013374 move s7, v0 | s7 = v0;
0x00013378 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == 0) {
0x0001337c beqz s6, 0x13c10 | goto label_77;
| }
| label_34:
0x00013380 lw t9, -0x7e48(gp) | t9 = sym.keystr;
0x00013384 addiu v0, s0, 4 | v0 = s0 + 4;
0x00013388 move a0, v0 | a0 = v0;
0x0001338c sw v0, 0x44(sp) | *(var_44h_2) = v0;
0x00013390 bal 0x19920 | sym_keystr ();
0x00013394 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013398 move a3, v0 | a3 = v0;
0x0001339c move a2, s6 | a2 = s6;
0x000133a0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000133a4 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x000133a8 move a1, s7 | a1 = s7;
| /* str.Signature_made__s_using__s_key_ID__s_n */
0x000133ac addiu a0, a0, 0x4218 | a0 += 0x4218;
0x000133b0 jalr t9 | t9 ();
0x000133b4 lw gp, 0x30(sp) | gp = *(var_30h);
0x000133b8 b 0x12ed8 | goto label_12;
| label_56:
0x000133bc lhu v0, (s0) | v0 = *(s0);
0x000133c0 andi v0, v0, 0x100 | v0 &= aav.0x00000100;
| if (v0 == 0) {
0x000133c4 beql v0, zero, 0x13498 | goto label_78;
| }
0x000133c8 lw v0, 0x130(s2) | v0 = *(s2);
0x000133cc addiu v0, sp, 0x6c | v0 = sp + 0x6c;
0x000133d0 sw v0, 0x40(sp) | *(var_40h_2) = v0;
0x000133d4 lw s7, -0x7fdc(gp) | s7 = *(gp);
0x000133d8 lw v0, -0x7ca4(gp) | v0 = *(gp);
0x000133dc sw zero, 0x68(sp) | *(var_68h) = 0;
0x000133e0 addiu fp, sp, 0x68 | fp = sp + 0x68;
| /* str.Key_available_at:_ */
0x000133e4 addiu s7, s7, 0x4240 | s7 += 0x4240;
0x000133e8 sw v0, 0x54(sp) | *(var_54h) = v0;
0x000133ec b 0x13460 |
| while (v0 != 0) {
0x000133f0 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x000133f4 sw a1, 0x3c(sp) | *(var_3ch_2) = a1;
0x000133f8 move a0, s7 | a0 = s7;
0x000133fc jalr t9 | t9 ();
0x00013400 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013404 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013408 jalr t9 | t9 ();
0x0001340c nop |
0x00013410 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013414 lw a2, 0x6c(sp) | a2 = *(var_6ch);
0x00013418 lw a1, 0x3c(sp) | a1 = *(var_3ch_2);
0x0001341c lw t9, -0x7d04(gp) | t9 = sym.print_utf8_string;
0x00013420 move a0, v0 | a0 = v0;
0x00013424 jalr t9 | t9 ();
0x00013428 lw gp, 0x30(sp) | gp = *(var_30h);
0x0001342c lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013430 jalr t9 | t9 ();
0x00013434 nop |
0x00013438 lw gp, 0x30(sp) | gp = *(var_30h);
0x0001343c move a1, v0 | a1 = v0;
0x00013440 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x00013444 addiu a0, zero, 0xa | a0 = 0xa;
0x00013448 jalr t9 | t9 ();
0x0001344c lw v0, 0x130(s2) | v0 = *(s2);
0x00013450 addiu v1, zero, 0x18 | v1 = 0x18;
0x00013454 andi v0, v0, 0x18 | v0 &= 0x18;
0x00013458 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == v1) {
0x0001345c beq v0, v1, 0x13ba4 | goto label_79;
| }
| label_33:
0x00013460 lw t9, -0x7f34(gp) | t9 = sym.enum_sig_subpkt;
0x00013464 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x00013468 lw a2, 0x40(sp) | a2 = *(var_40h_2);
0x0001346c addiu a1, zero, 0x18 | a1 = 0x18;
0x00013470 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x00013474 move a3, fp | a3 = fp;
0x00013478 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001347c move a1, v0 | a1 = v0;
0x00013480 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013484 bnez v0, 0x133f0 |
| }
0x00013488 addiu v0, zero, 9 | v0 = 9;
0x0001348c addiu v1, zero, 5 | v1 = 5;
| if (s6 == v0) {
0x00013490 bne s6, v0, 0x13580 |
0x00013494 lw v0, 0x130(s2) | v0 = *(s2);
| label_78:
0x00013498 addiu v1, zero, 0x28 | v1 = 0x28;
0x0001349c andi v0, v0, 0x28 | v0 &= 0x28;
0x000134a0 lw t9, -0x7f10(gp) | t9 = *(gp);
| if (v0 == v1) {
0x000134a4 beq v0, v1, 0x13d5c | goto label_80;
| }
| label_42:
0x000134a8 lw a1, 0x12c(s2) | a1 = *(s2);
0x000134ac addiu v0, zero, 9 | v0 = 9;
| if (a1 != 0) {
0x000134b0 beqz a1, 0x134c8 |
0x000134b4 lw v0, 0x130(s2) | v0 = *(s2);
0x000134b8 andi v0, v0, 8 | v0 &= 8;
0x000134bc lw s6, -0x7ca4(gp) | s6 = *(gp);
| if (v0 != 0) {
0x000134c0 bnez v0, 0x13624 | goto label_81;
| }
| label_16:
0x000134c4 addiu v0, zero, 9 | v0 = 9;
| }
0x000134c8 sw v0, 0x28(sp) | *(var_28h_2) = v0;
0x000134cc lw v0, 0xc(s0) | v0 = *((s0 + 3));
0x000134d0 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x000134d4 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x000134d8 lbu v0, 0x15(s0) | v0 = *((s0 + 21));
0x000134dc lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x000134e0 sw v0, 0x20(sp) | *(var_20h) = v0;
0x000134e4 lbu v0, 0x17(s0) | v0 = *((s0 + 23));
0x000134e8 addiu s1, sp, 0xc0 | s1 = sp + 0xc0;
0x000134ec sw v0, 0x1c(sp) | *(var_1ch) = v0;
0x000134f0 lbu v0, 0x16(s0) | v0 = *((s0 + 22));
| /* str._08lX_08lX__d__d__02x__lu__d */
0x000134f4 addiu a3, a3, 0x4360 | a3 += 0x4360;
0x000134f8 sw v0, 0x18(sp) | *(var_18h_2) = v0;
0x000134fc lw v0, 8(s0) | v0 = *((s0 + 2));
0x00013500 addiu a2, zero, 0x32 | a2 = 0x32;
0x00013504 sw v0, 0x14(sp) | *(var_14h) = v0;
0x00013508 lw v0, 4(s0) | v0 = *((s0 + 1));
0x0001350c addiu a1, zero, 1 | a1 = 1;
0x00013510 move a0, s1 | a0 = s1;
0x00013514 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013518 jalr t9 | t9 ();
0x0001351c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013520 move a1, s1 | a1 = s1;
0x00013524 lw t9, -0x7d80(gp) | t9 = sym.write_status_text;
0x00013528 addiu a0, zero, 6 | a0 = 6;
0x0001352c bal 0x21b8c | sym_write_status_text ();
0x00013530 lw gp, 0x30(sp) | gp = *(var_30h);
| label_14:
0x00013534 lw t9, -0x7d80(gp) | t9 = sym.write_status_text;
0x00013538 move a1, s1 | a1 = s1;
0x0001353c addiu a0, zero, 0x1a | a0 = 0x1a;
0x00013540 sb zero, 0xd0(sp) | *(var_d0h) = 0;
0x00013544 bal 0x21b8c | sym_write_status_text ();
0x00013548 lw gp, 0x30(sp) | gp = *(var_30h);
0x0001354c addiu s6, zero, 9 | s6 = 9;
0x00013550 lw t9, -0x7f88(gp) | t9 = sym.g10_errstr;
| label_15:
0x00013554 move a0, s6 | a0 = s6;
0x00013558 jalr t9 | t9 ();
0x0001355c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013560 move a1, v0 | a1 = v0;
0x00013564 move s1, s6 | s1 = s6;
0x00013568 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001356c lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.Cant_check_signature:__s_n */
0x00013570 addiu a0, a0, 0x4380 | a0 += 0x4380;
0x00013574 jalr t9 | t9 ();
0x00013578 lw gp, 0x30(sp) | gp = *(var_30h);
0x0001357c b 0x13250 | goto label_6;
| }
| label_57:
0x00013580 addiu v0, zero, 8 | v0 = 8;
0x00013584 sw v1, 0x40(sp) | *(var_40h_2) = v1;
| if (s6 == v0) {
0x00013588 beq s6, v0, 0x12f4c | goto label_13;
| }
0x0001358c sw s6, 0x28(sp) | *(var_28h_2) = s6;
0x00013590 lw v0, 0xc(s0) | v0 = *((s0 + 3));
0x00013594 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x00013598 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x0001359c lbu v0, 0x15(s0) | v0 = *((s0 + 21));
0x000135a0 lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x000135a4 sw v0, 0x20(sp) | *(var_20h) = v0;
0x000135a8 lbu v0, 0x17(s0) | v0 = *((s0 + 23));
0x000135ac addiu s1, sp, 0xc0 | s1 = sp + 0xc0;
0x000135b0 sw v0, 0x1c(sp) | *(var_1ch) = v0;
0x000135b4 lbu v0, 0x16(s0) | v0 = *((s0 + 22));
| /* str._08lX_08lX__d__d__02x__lu__d */
0x000135b8 addiu a3, a3, 0x4360 | a3 += 0x4360;
0x000135bc sw v0, 0x18(sp) | *(var_18h_2) = v0;
0x000135c0 lw v0, 8(s0) | v0 = *((s0 + 2));
0x000135c4 addiu a2, zero, 0x32 | a2 = 0x32;
0x000135c8 sw v0, 0x14(sp) | *(var_14h) = v0;
0x000135cc lw v0, 4(s0) | v0 = *((s0 + 1));
0x000135d0 addiu a1, zero, 1 | a1 = 1;
0x000135d4 move a0, s1 | a0 = s1;
0x000135d8 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x000135dc jalr t9 | t9 ();
0x000135e0 lw gp, 0x30(sp) | gp = *(var_30h);
0x000135e4 move a1, s1 | a1 = s1;
0x000135e8 lw t9, -0x7d80(gp) | t9 = sym.write_status_text;
0x000135ec addiu a0, zero, 6 | a0 = 6;
0x000135f0 bal 0x21b8c | sym_write_status_text ();
0x000135f4 addiu v0, zero, 9 | v0 = 9;
0x000135f8 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == v0) {
0x000135fc beq s6, v0, 0x13534 | goto label_14;
| }
0x00013600 addiu v0, zero, 0x34 | v0 = 0x34;
0x00013604 lw t9, -0x7f88(gp) | t9 = sym.g10_errstr;
| if (s6 != v0) {
0x00013608 bne s6, v0, 0x13554 | goto label_15;
| }
0x0001360c move s1, s6 | s1 = s6;
0x00013610 b 0x13250 | goto label_6;
| label_59:
0x00013614 addiu v0, zero, 0x42 | v0 = 0x42;
0x00013618 move s6, zero | s6 = 0;
0x0001361c sw v0, 0x40(sp) | *(var_40h_2) = v0;
0x00013620 b 0x12f4c | goto label_13;
| label_81:
0x00013624 lw t9, -0x7ca0(gp) | t9 = sym.keyserver_import_keyid;
0x00013628 lw a0, 0x44(sp) | a0 = *(var_44h_2);
0x0001362c lw v0, (s6) | v0 = *(s6);
0x00013630 addiu v0, v0, 1 | v0++;
0x00013634 sw v0, (s6) | *(s6) = v0;
0x00013638 bal 0x634c | sym_keyserver_import_keyid ();
0x0001363c lw v1, (s6) | v1 = *(s6);
0x00013640 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013644 addiu v1, v1, -1 | v1 += -1;
0x00013648 sw v1, (s6) | *(s6) = v1;
| if (v0 != 0) {
0x0001364c bnez v0, 0x134c4 | goto label_16;
| }
0x00013650 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00013654 lw a3, 0x4c(sp) | a3 = *(var_4ch);
0x00013658 lw t9, 0x48(sp) | t9 = *(var_48h);
0x0001365c sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013660 move a2, zero | a2 = 0;
0x00013664 move a1, s4 | a1 = s4;
0x00013668 move a0, s5 | a0 = s5;
0x0001366c jalr t9 | t9 ();
0x00013670 move s6, v0 | s6 = v0;
0x00013674 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013678 b 0x12f18 | goto label_17;
| label_62:
0x0001367c lw t9, -0x7ca8(gp) | t9 = sym.get_validity;
| if (s4 == 0) {
0x00013680 beqz s4, 0x140e8 | goto label_82;
| }
0x00013684 move a0, s4 | a0 = s4;
0x00013688 bal 0x631c | sym_get_validity ();
0x0001368c sb zero, 0x9d(sp) | *(var_9dh) = 0;
0x00013690 lw a0, 4(s7) | a0 = *((s7 + 1));
0x00013694 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013698 addiu t1, zero, -1 | t1 = -1;
0x0001369c lw a0, 4(a0) | a0 = *((a0 + 1));
0x000136a0 lw t9, -0x7c9c(gp) | t9 = sym.write_status_text_and_buffer;
0x000136a4 addiu a2, a0, 0x4c | a2 = a0 + 0x4c;
0x000136a8 lw a3, 4(a0) | a3 = *((a0 + 1));
0x000136ac lw a1, 0x3c(sp) | a1 = *(var_3ch_2);
0x000136b0 lw a0, 0x40(sp) | a0 = *(var_40h_2);
0x000136b4 sw t1, 0x10(sp) | *(var_10h_2) = t1;
0x000136b8 sw v0, 0x58(sp) | *(var_58h) = v0;
0x000136bc bal 0x22334 | sym_write_status_text_and_buffer ();
0x000136c0 lw v0, 4(s7) | v0 = *((s7 + 1));
0x000136c4 lw gp, 0x30(sp) | gp = *(var_30h);
0x000136c8 move a2, zero | a2 = 0;
0x000136cc lw v0, 4(v0) | v0 = *((v0 + 1));
0x000136d0 lw t9, -0x7e2c(gp) | t9 = sym.utf8_to_native;
0x000136d4 addiu a0, v0, 0x4c | a0 = v0 + 0x4c;
0x000136d8 lw a1, 4(v0) | a1 = *((v0 + 1));
0x000136dc jalr t9 | t9 ();
0x000136e0 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 != 0) {
0x000136e4 bnez s6, 0x13b84 | goto label_83;
| }
0x000136e8 lhu a0, (s0) | a0 = *(s0);
0x000136ec lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x000136f0 andi a0, a0, 0x200 | a0 &= aav.0x00000200;
0x000136f4 move a1, v0 | a1 = v0;
0x000136f8 sw v0, 0x5c(sp) | *(var_5ch) = v0;
| if (a0 == 0) {
0x000136fc beqz a0, 0x13b70 | goto label_84;
| }
0x00013700 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00013704 addiu a0, v0, 0x4284 | a0 = v0 + 0x4284;
0x00013708 jalr t9 | t9 ();
0x0001370c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013710 lw v0, 0x5c(sp) | v0 = *(var_5ch);
| label_32:
0x00013714 lw t9, -0x7f24(gp) | t9 = sym.xfree;
0x00013718 move a0, v0 | a0 = v0;
0x0001371c jalr t9 | t9 ();
0x00013720 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013724 lw v0, 0x154(s2) | v0 = *(s2);
0x00013728 andi v0, v0, 0x20 | v0 &= 0x20;
0x0001372c lw t9, -0x7d40(gp) | t9 = sym.log_stream;
| if (v0 == 0) {
0x00013730 beqz v0, 0x13ab0 | goto label_85;
| }
0x00013734 addiu s1, s1, 1 | s1++;
0x00013738 jalr t9 | t9 ();
0x0001373c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013740 lw a0, 0x58(sp) | a0 = *(var_58h);
0x00013744 lw t9, -0x7c98(gp) | t9 = sym.trust_value_to_string;
0x00013748 sw v0, 0x58(sp) | *(var_58h) = v0;
0x0001374c bal 0x6324 | sym_trust_value_to_string ();
0x00013750 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013754 lw t1, 0x58(sp) | t1 = *(var_58h);
0x00013758 lw a2, 0x48(sp) | a2 = *(var_48h);
0x0001375c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x00013760 move a3, v0 | a3 = v0;
0x00013764 addiu a1, zero, 1 | a1 = 1;
0x00013768 move a0, t1 | a0 = t1;
0x0001376c jalr t9 | t9 ();
0x00013770 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013774 b 0x1301c | goto label_18;
| label_20:
0x00013778 jalr t9 | t9 ();
0x0001377c nop |
0x00013780 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013784 move a1, v0 | a1 = v0;
0x00013788 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x0001378c addiu a0, zero, 0xa | a0 = 0xa;
0x00013790 jalr t9 | t9 ();
0x00013794 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013798 lw t9, -0x7ea4(gp) | t9 = sym.release_kbnode;
| label_66:
0x0001379c move a0, s5 | a0 = s5;
0x000137a0 bal 0xfd24 | sym_release_kbnode ();
0x000137a4 lw gp, 0x30(sp) | gp = *(var_30h);
| label_21:
0x000137a8 lw v0, 0x154(s2) | v0 = *(s2);
0x000137ac andi v0, v0, 2 | v0 &= 2;
0x000137b0 lw t9, -0x7c94(gp) | t9 = sym.show_policy_url;
| if (v0 == 0) {
0x000137b4 beqz v0, 0x13b08 | goto label_86;
| }
0x000137b8 addiu a2, zero, 1 | a2 = 1;
0x000137bc move a1, zero | a1 = 0;
0x000137c0 move a0, s0 | a0 = s0;
0x000137c4 bal 0x259b8 | sym_show_policy_url ();
0x000137c8 lw gp, 0x30(sp) | gp = *(var_30h);
| label_29:
0x000137cc lw v0, 0x154(s2) | v0 = *(s2);
0x000137d0 andi v0, v0, 0x10 | v0 &= 0x10;
0x000137d4 lw t9, -0x7c90(gp) | t9 = sym.show_keyserver_url;
| if (v0 == 0) {
0x000137d8 beqz v0, 0x13af0 | goto label_87;
| }
0x000137dc addiu a2, zero, 1 | a2 = 1;
0x000137e0 move a1, zero | a1 = 0;
0x000137e4 move a0, s0 | a0 = s0;
0x000137e8 bal 0x25be0 | sym_show_keyserver_url ();
0x000137ec lw gp, 0x30(sp) | gp = *(var_30h);
| label_28:
0x000137f0 lw a3, 0x154(s2) | a3 = *(s2);
0x000137f4 andi v0, a3, 0xc | v0 = a3 & 0xc;
0x000137f8 lw t9, -0x7c8c(gp) | t9 = sym.show_notation;
| if (v0 == 0) {
0x000137fc beqz v0, 0x13ad4 | goto label_88;
| }
0x00013800 ext a3, a3, 2, 2 | __asm ("ext a3, a3, 2, 2");
0x00013804 addiu a2, zero, 1 | a2 = 1;
0x00013808 move a1, zero | a1 = 0;
0x0001380c move a0, s0 | a0 = s0;
0x00013810 bal 0x25e7c | sym_show_notation ();
0x00013814 lw gp, 0x30(sp) | gp = *(var_30h);
| label_27:
0x00013818 lw t9, -0x7d88(gp) | t9 = sym.is_status_enabled;
0x0001381c bal 0x21b70 | sym_is_status_enabled ();
0x00013820 nop |
0x00013824 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 != 0) {
0x00013828 bnez v0, 0x13d1c | goto label_89;
| }
| label_41:
0x0001382c lw v0, 0x154(s2) | v0 = *(s2);
0x00013830 andi v0, v0, 0x80 | v0 &= 0x80;
0x00013834 lw t9, -0x7f10(gp) | t9 = *(gp);
| if (v0 != 0) {
0x00013838 bnez v0, 0x13c9c | goto label_90;
| }
| label_38:
0x0001383c lw t9, -0x7c88(gp) | t9 = sym.check_signatures_trust;
0x00013840 move a0, s0 | a0 = s0;
0x00013844 bal 0x630c | sym_check_signatures_trust ();
0x00013848 lw gp, 0x30(sp) | gp = *(var_30h);
0x0001384c move s1, v0 | s1 = v0;
| label_22:
0x00013850 lhu v0, (s0) | v0 = *(s0);
0x00013854 andi v0, v0, 0x200 | v0 &= aav.0x00000200;
0x00013858 lw a0, 0x10(s0) | a0 = *((s0 + 4));
| if (v0 != 0) {
0x0001385c bnez v0, 0x13a78 | goto label_91;
| }
0x00013860 lw t9, -0x7cb0(gp) | t9 = sym.asctimestamp;
| if (a0 != 0) {
0x00013864 bnez a0, 0x13b3c | goto label_92;
| }
| label_31:
0x00013868 lw v0, (s2) | v0 = *(s2);
| if (v0 != 0) {
0x0001386c beqz v0, 0x138c0 |
0x00013870 nop |
| label_25:
0x00013874 lbu v0, 0x15(s0) | v0 = *((s0 + 21));
0x00013878 lw s4, -0x7fdc(gp) | s4 = *(gp);
| if (v0 == 0) {
0x0001387c beqz v0, 0x13b20 | goto label_93;
| }
0x00013880 addiu v1, zero, 1 | v1 = 1;
0x00013884 lw s4, -0x7fdc(gp) | s4 = *(gp);
| if (v0 == v1) {
0x00013888 beq v0, v1, 0x13e14 | goto label_94;
| }
0x0001388c lw s4, -0x7fdc(gp) | s4 = *(gp);
| /* str.unknown */
0x00013890 addiu s4, s4, 0x3850 | s4 += 0x3850;
| label_30:
0x00013894 lw t9, -0x7c84(gp) | t9 = sym.digest_algo_to_string;
0x00013898 lbu a0, 0x17(s0) | a0 = *((s0 + 23));
0x0001389c bal 0x27db8 | sym_digest_algo_to_string ();
0x000138a0 lw gp, 0x30(sp) | gp = *(var_30h);
0x000138a4 move a2, v0 | a2 = v0;
0x000138a8 move a1, s4 | a1 = s4;
0x000138ac lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000138b0 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str._s_signature__digest_algorithm__s_n */
0x000138b4 addiu a0, a0, 0x433c | a0 += 0x433c;
0x000138b8 jalr t9 | t9 ();
0x000138bc lw gp, 0x30(sp) | gp = *(var_30h);
| }
0x000138c0 lw v1, -0x7fd0(gp) | v1 = *(gp);
| if (s1 == 0) {
0x000138c4 beqz s1, 0x13250 | goto label_6;
| }
| label_26:
0x000138c8 lw v0, 0x40(s2) | v0 = *((s2 + 16));
0x000138cc addiu a0, zero, 1 | a0 = 1;
0x000138d0 sw a0, (v1) | *(v1) = a0;
| if (v0 == 0) {
0x000138d4 beqz v0, 0x13250 | goto label_6;
| }
0x000138d8 lw t9, -0x7f90(gp) | t9 = sym.g10_exit;
0x000138dc bal 0x62b4 | sym_g10_exit ();
0x000138e0 nop |
| label_64:
0x000138e4 addiu a0, zero, 0xd | a0 = 0xd;
0x000138e8 b 0x138f4 |
| while (v1 == a0) {
| if (s1 == 0) {
| label_19:
0x000138ec beql s1, zero, 0x13a40 | goto label_95;
| }
0x000138f0 lw v1, 4(s5) | v1 = *((s5 + 1));
0x000138f4 lw v0, 4(s1) | v0 = *((s1 + 1));
0x000138f8 lw v1, (v0) | v1 = *(v0);
0x000138fc lw s1, (s1) | s1 = *(s1);
0x00013900 bnel v1, a0, 0x138ec |
| }
0x00013904 lw v0, 4(v0) | v0 = *((v0 + 1));
0x00013908 lw v0, 0x10(v0) | v0 = *((v0 + 4));
0x0001390c lw s1, (s1) | s1 = *(s1);
| if (v0 == 0) {
0x00013910 bnel v0, zero, 0x138ec | goto label_19;
| }
| label_23:
0x00013914 lw v1, 0xe4(s2) | v1 = *((s2 + 57));
| label_24:
0x00013918 addiu v0, zero, 3 | v0 = 3;
| if (v1 != v0) {
0x0001391c beql v1, v0, 0x13924 |
0x00013920 sb zero, 0x9d(sp) | *(var_9dh) = 0;
| }
0x00013924 lw v0, 4(s1) | v0 = *((s1 + 1));
0x00013928 lw t9, -0x7c9c(gp) | t9 = sym.write_status_text_and_buffer;
0x0001392c lw a1, 0x3c(sp) | a1 = *(var_3ch_2);
0x00013930 lw v0, 4(v0) | v0 = *((v0 + 1));
0x00013934 lw a0, 0x40(sp) | a0 = *(var_40h_2);
0x00013938 addiu a2, v0, 0x4c | a2 = v0 + 0x4c;
0x0001393c lw a3, 4(v0) | a3 = *((v0 + 1));
0x00013940 addiu v0, zero, -1 | v0 = -1;
0x00013944 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013948 bal 0x22334 | sym_write_status_text_and_buffer ();
0x0001394c lw v0, 4(s1) | v0 = *((s1 + 1));
0x00013950 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013954 move a2, zero | a2 = 0;
0x00013958 lw v0, 4(v0) | v0 = *((v0 + 1));
0x0001395c lw t9, -0x7e2c(gp) | t9 = sym.utf8_to_native;
0x00013960 addiu a0, v0, 0x4c | a0 = v0 + 0x4c;
0x00013964 lw a1, 4(v0) | a1 = *((v0 + 1));
0x00013968 jalr t9 | t9 ();
0x0001396c lw gp, 0x30(sp) | gp = *(var_30h);
| label_39:
0x00013970 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| if (s6 != 0) {
0x00013974 bnez s6, 0x13c3c | goto label_96;
| }
0x00013978 lhu v1, (s0) | v1 = *(s0);
0x0001397c andi v1, v1, 0x200 | v1 &= aav.0x00000200;
0x00013980 move a1, v0 | a1 = v0;
| if (v1 == 0) {
0x00013984 beqz v1, 0x13c28 | goto label_97;
| }
0x00013988 lw a0, -0x7fdc(gp) | a0 = *(gp);
| /* str.Expired_signature_from___s_ */
0x0001398c addiu a0, a0, 0x4284 | a0 += 0x4284;
0x00013990 jalr t9 | t9 ();
0x00013994 lw gp, 0x30(sp) | gp = *(var_30h);
| label_36:
0x00013998 lw v1, 0xe4(s2) | v1 = *((s2 + 57));
0x0001399c addiu v0, zero, 3 | v0 = 3;
0x000139a0 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
| if (v1 == v0) {
0x000139a4 beq v1, v0, 0x13778 | goto label_20;
| }
| if (s1 == 0) {
0x000139a8 beqz s1, 0x13778 | goto label_20;
| }
0x000139ac nop |
| label_37:
0x000139b0 jalr t9 | t9 ();
0x000139b4 nop |
0x000139b8 lw gp, 0x30(sp) | gp = *(var_30h);
0x000139bc move a1, v0 | a1 = v0;
0x000139c0 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x000139c4 addiu a0, zero, 0x20 | a0 = 0x20;
0x000139c8 jalr t9 | t9 ();
0x000139cc lw gp, 0x30(sp) | gp = *(var_30h);
0x000139d0 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x000139d4 jalr t9 | t9 ();
0x000139d8 nop |
0x000139dc lw gp, 0x30(sp) | gp = *(var_30h);
0x000139e0 move a3, v0 | a3 = v0;
0x000139e4 addiu a2, zero, 0xb | a2 = 0xb;
0x000139e8 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000139ec lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x000139f0 addiu a1, zero, 1 | a1 = 1;
| /* str._uncertain_ */
0x000139f4 addiu a0, a0, 0x42c4 | a0 += 0x42c4;
0x000139f8 jalr t9 | t9 ();
0x000139fc lw gp, 0x30(sp) | gp = *(var_30h);
0x00013a00 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013a04 jalr t9 | t9 ();
0x00013a08 nop |
0x00013a0c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013a10 move a1, v0 | a1 = v0;
0x00013a14 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x00013a18 addiu a0, zero, 0xa | a0 = 0xa;
0x00013a1c jalr t9 | t9 ();
0x00013a20 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013a24 lw t9, -0x7ea4(gp) | t9 = sym.release_kbnode;
0x00013a28 move a0, s5 | a0 = s5;
0x00013a2c bal 0xfd24 | sym_release_kbnode ();
0x00013a30 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == 0) {
0x00013a34 beqz s6, 0x137a8 | goto label_21;
| }
0x00013a38 move s1, s6 | s1 = s6;
0x00013a3c b 0x13850 | goto label_22;
| label_95:
0x00013a40 addiu v0, zero, 0xd | v0 = 0xd;
0x00013a44 lw v1, (v1) | v1 = *(v1);
0x00013a48 move s1, s5 | s1 = s5;
| if (v1 == v0) {
0x00013a4c beq v1, v0, 0x13914 | goto label_23;
| }
0x00013a50 addiu v1, zero, 0xd | v1 = 0xd;
0x00013a54 lw s1, (s1) | s1 = *(s1);
| if (s1 == 0) {
| do {
0x00013a58 beql s1, zero, 0x13cb4 | goto label_98;
| }
0x00013a5c lw s1, -0x7fdc(gp) | s1 = *(gp);
0x00013a60 lw v0, 4(s1) | v0 = *((s1 + 1));
0x00013a64 lw v0, (v0) | v0 = *(v0);
0x00013a68 lw s1, (s1) | s1 = *(s1);
0x00013a6c bnel v0, v1, 0x13a58 |
| } while (v0 == v1);
0x00013a70 lw v1, 0xe4(s2) | v1 = *((s2 + 57));
0x00013a74 b 0x13918 | goto label_24;
| label_91:
0x00013a78 lw t9, -0x7cb0(gp) | t9 = sym.asctimestamp;
0x00013a7c addiu s1, zero, 1 | s1 = 1;
0x00013a80 jalr t9 | t9 ();
0x00013a84 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013a88 move a1, v0 | a1 = v0;
0x00013a8c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00013a90 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.Signature_expired__s_n */
0x00013a94 addiu a0, a0, 0x430c | a0 += 0x430c;
0x00013a98 jalr t9 | t9 ();
0x00013a9c lw v0, (s2) | v0 = *(s2);
0x00013aa0 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 != 0) {
0x00013aa4 bnez v0, 0x13874 | goto label_25;
| }
0x00013aa8 lw v1, -0x7fd0(gp) | v1 = *(gp);
0x00013aac b 0x138c8 | goto label_26;
| label_85:
0x00013ab0 addiu s1, s1, 1 | s1++;
0x00013ab4 jalr t9 | t9 ();
0x00013ab8 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013abc move a1, v0 | a1 = v0;
0x00013ac0 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x00013ac4 addiu a0, zero, 0xa | a0 = 0xa;
0x00013ac8 jalr t9 | t9 ();
0x00013acc lw gp, 0x30(sp) | gp = *(var_30h);
0x00013ad0 b 0x1301c | goto label_18;
| label_88:
0x00013ad4 move a3, zero | a3 = 0;
0x00013ad8 addiu a2, zero, 2 | a2 = 2;
0x00013adc move a1, zero | a1 = 0;
0x00013ae0 move a0, s0 | a0 = s0;
0x00013ae4 bal 0x25e7c | sym_show_notation ();
0x00013ae8 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013aec b 0x13818 | goto label_27;
| label_87:
0x00013af0 addiu a2, zero, 2 | a2 = 2;
0x00013af4 move a1, zero | a1 = 0;
0x00013af8 move a0, s0 | a0 = s0;
0x00013afc bal 0x25be0 | sym_show_keyserver_url ();
0x00013b00 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b04 b 0x137f0 | goto label_28;
| label_86:
0x00013b08 addiu a2, zero, 2 | a2 = 2;
0x00013b0c move a1, zero | a1 = 0;
0x00013b10 move a0, s0 | a0 = s0;
0x00013b14 bal 0x259b8 | sym_show_policy_url ();
0x00013b18 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b1c b 0x137cc | goto label_29;
| /* str.binary */
| label_93:
0x00013b20 addiu s4, s4, 0x4138 | s4 += 0x4138;
0x00013b24 b 0x13894 | goto label_30;
| label_65:
0x00013b28 move a0, s5 | a0 = s5;
0x00013b2c bal 0xfd24 | sym_release_kbnode ();
0x00013b30 move s1, s6 | s1 = s6;
0x00013b34 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b38 b 0x13850 | goto label_22;
| label_92:
0x00013b3c jalr t9 | t9 ();
0x00013b40 nop |
0x00013b44 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b48 move a1, v0 | a1 = v0;
0x00013b4c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00013b50 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.Signature_expires__s_n */
0x00013b54 addiu a0, a0, 0x4324 | a0 += 0x4324;
0x00013b58 jalr t9 | t9 ();
0x00013b5c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b60 b 0x13868 | goto label_31;
| label_58:
0x00013b64 move s6, zero | s6 = 0;
0x00013b68 sw v0, 0x40(sp) | *(var_40h_2) = v0;
0x00013b6c b 0x12f4c | goto label_13;
| label_84:
0x00013b70 lw a0, 0x4c(sp) | a0 = *(var_4ch);
0x00013b74 jalr t9 | t9 ();
0x00013b78 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b7c lw v0, 0x5c(sp) | v0 = *(var_5ch);
0x00013b80 b 0x13714 | goto label_32;
| label_83:
0x00013b84 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
0x00013b88 lw a0, 0x54(sp) | a0 = *(var_54h);
0x00013b8c move a1, v0 | a1 = v0;
0x00013b90 sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x00013b94 jalr t9 | t9 ();
0x00013b98 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013b9c lw v0, 0x5c(sp) | v0 = *(var_5ch);
0x00013ba0 b 0x13714 | goto label_32;
| label_79:
0x00013ba4 lw t9, -0x7c80(gp) | t9 = sym.parse_preferred_keyserver;
0x00013ba8 move a0, s0 | a0 = s0;
0x00013bac bal 0x6390 | sym_parse_preferred_keyserver ();
0x00013bb0 move v1, v0 | v1 = v0;
0x00013bb4 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x00013bb8 beqz v0, 0x13460 | goto label_33;
| }
0x00013bbc lw a2, 0x54(sp) | a2 = *(var_54h);
0x00013bc0 lw t9, -0x7ca0(gp) | t9 = sym.keyserver_import_keyid;
0x00013bc4 lw a0, 0x44(sp) | a0 = *(var_44h_2);
0x00013bc8 lw v0, (a2) | v0 = *(a2);
0x00013bcc move a1, v1 | a1 = v1;
0x00013bd0 addiu v0, v0, 1 | v0++;
0x00013bd4 sw v1, 0x3c(sp) | *(var_3ch_2) = v1;
0x00013bd8 sw v0, (a2) | *(a2) = v0;
0x00013bdc bal 0x634c | sym_keyserver_import_keyid ();
0x00013be0 lw a2, 0x54(sp) | a2 = *(var_54h);
0x00013be4 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013be8 lw v1, 0x3c(sp) | v1 = *(var_3ch_2);
0x00013bec lw a0, (a2) | a0 = *(a2);
0x00013bf0 addiu a0, a0, -1 | a0 += -1;
0x00013bf4 sw a0, (a2) | *(a2) = a0;
| if (v0 == 0) {
0x00013bf8 beqz v0, 0x14070 | goto label_99;
| }
0x00013bfc lw t9, -0x7c7c(gp) | t9 = sym.free_keyserver_spec;
0x00013c00 move a0, v1 | a0 = v1;
0x00013c04 bal 0x63a0 | sym_free_keyserver_spec ();
0x00013c08 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013c0c b 0x13460 | goto label_33;
| label_77:
0x00013c10 lw s6, -0x7fdc(gp) | s6 = *(gp);
0x00013c14 addiu s6, s6, 0x239c | s6 += 0x239c;
0x00013c18 b 0x13380 | goto label_34;
| label_55:
0x00013c1c lw s6, -0x7fdc(gp) | s6 = *(gp);
0x00013c20 addiu s6, s6, 0x239c | s6 += 0x239c;
0x00013c24 b 0x12ea4 | goto label_35;
| label_97:
0x00013c28 lw a0, -0x7fdc(gp) | a0 = *(gp);
| /* str.Good_signature_from___s_ */
0x00013c2c addiu a0, a0, 0x42a0 | a0 += 0x42a0;
0x00013c30 jalr t9 | t9 ();
0x00013c34 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013c38 b 0x13998 | goto label_36;
| label_96:
0x00013c3c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00013c40 move a1, v0 | a1 = v0;
| /* str.BAD_signature_from___s_ */
0x00013c44 addiu a0, a0, 0x426c | a0 += 0x426c;
0x00013c48 jalr t9 | t9 ();
0x00013c4c lw v1, 0xe4(s2) | v1 = *((s2 + 57));
0x00013c50 addiu v0, zero, 3 | v0 = 3;
0x00013c54 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v1 == v0) {
0x00013c58 beq v1, v0, 0x13c64 | goto label_100;
| }
0x00013c5c lw t9, -0x7d40(gp) | t9 = sym.log_stream;
| if (s1 != 0) {
0x00013c60 bnez s1, 0x139b0 | goto label_37;
| }
| label_100:
0x00013c64 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013c68 move s1, s6 | s1 = s6;
0x00013c6c jalr t9 | t9 ();
0x00013c70 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013c74 move a1, v0 | a1 = v0;
0x00013c78 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x00013c7c addiu a0, zero, 0xa | a0 = 0xa;
0x00013c80 jalr t9 | t9 ();
0x00013c84 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013c88 lw t9, -0x7ea4(gp) | t9 = sym.release_kbnode;
0x00013c8c move a0, s5 | a0 = s5;
0x00013c90 bal 0xfd24 | sym_release_kbnode ();
0x00013c94 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013c98 b 0x13850 | goto label_22;
| /* fcn.00012b44 */
| label_90:
0x00013c9c addiu t9, t9, 0x2b44 | t9 += 0x2b44;
0x00013ca0 move a0, s0 | a0 = s0;
0x00013ca4 bal 0x12b44 | fcn_00012b44 ();
0x00013ca8 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013cac b 0x1383c | goto label_38;
| label_60:
0x00013cb0 lw s1, -0x7fdc(gp) | s1 = *(gp);
| label_98:
0x00013cb4 lw t9, -0x7c9c(gp) | t9 = sym.write_status_text_and_buffer;
0x00013cb8 addiu v0, zero, -1 | v0 = -1;
0x00013cbc lw a1, 0x3c(sp) | a1 = *(var_3ch_2);
0x00013cc0 lw a0, 0x40(sp) | a0 = *(var_40h_2);
| /* esilref: '[?]' */
0x00013cc4 addiu a2, s1, 0x3ba4 | a2 = s1 + 0x3ba4;
0x00013cc8 addiu a3, zero, 3 | a3 = 3;
0x00013ccc sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013cd0 sb zero, 0x9d(sp) | *(var_9dh) = 0;
0x00013cd4 bal 0x22334 | sym_write_status_text_and_buffer ();
0x00013cd8 lw gp, 0x30(sp) | gp = *(var_30h);
| /* esilref: '[?]' */
0x00013cdc addiu a0, s1, 0x3ba4 | a0 = s1 + 0x3ba4;
0x00013ce0 lw t9, -0x7e4c(gp) | t9 = sym.xstrdup;
0x00013ce4 move s1, zero | s1 = 0;
0x00013ce8 jalr t9 | t9 ();
0x00013cec lw gp, 0x30(sp) | gp = *(var_30h);
0x00013cf0 b 0x13970 | goto label_39;
| label_69:
0x00013cf4 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00013cf8 jalr t9 | t9 ();
0x00013cfc nop |
0x00013d00 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013d04 move a1, v0 | a1 = v0;
0x00013d08 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x00013d0c addiu a0, zero, 0xa | a0 = 0xa;
0x00013d10 jalr t9 | t9 ();
0x00013d14 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013d18 b 0x13160 | goto label_40;
| label_89:
0x00013d1c lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
0x00013d20 addiu a0, zero, 0x80 | a0 = 0x80;
0x00013d24 jalr t9 | t9 ();
0x00013d28 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013d2c lw a1, 0x44(sp) | a1 = *(var_44h_2);
0x00013d30 move a0, v0 | a0 = v0;
0x00013d34 lw t9, -0x7e34(gp) | t9 = sym.get_pubkey;
0x00013d38 move s5, v0 | s5 = v0;
0x00013d3c bal 0xc768 | sym_get_pubkey ();
0x00013d40 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x00013d44 beqz v0, 0x13e70 | goto label_101;
| }
| label_45:
0x00013d48 lw t9, -0x7e74(gp) | t9 = sym.free_public_key;
0x00013d4c move a0, s5 | a0 = s5;
0x00013d50 bal 0x91c0 | sym_free_public_key ();
0x00013d54 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013d58 b 0x1382c | goto label_41;
| /* fcn.00012b44 */
| label_80:
0x00013d5c addiu t9, t9, 0x2b44 | t9 += 0x2b44;
0x00013d60 move a0, s0 | a0 = s0;
0x00013d64 bal 0x12b44 | fcn_00012b44 ();
0x00013d68 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x00013d6c beqz v0, 0x134a8 | goto label_42;
| }
0x00013d70 lw t9, -0x7c78(gp) | t9 = sym.parse_keyserver_uri;
0x00013d74 move a3, zero | a3 = 0;
0x00013d78 move a2, zero | a2 = 0;
0x00013d7c addiu a1, zero, 1 | a1 = 1;
0x00013d80 move a0, v0 | a0 = v0;
0x00013d84 bal 0x6398 | sym_parse_keyserver_uri ();
0x00013d88 move s6, v0 | s6 = v0;
0x00013d8c lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x00013d90 beqz v0, 0x134a8 | goto label_42;
| }
0x00013d94 lw s7, -0x7ca4(gp) | s7 = *(gp);
0x00013d98 move a1, v0 | a1 = v0;
0x00013d9c lw t9, -0x7ca0(gp) | t9 = sym.keyserver_import_keyid;
0x00013da0 lw v0, (s7) | v0 = *(s7);
0x00013da4 lw a0, 0x44(sp) | a0 = *(var_44h_2);
0x00013da8 addiu v0, v0, 1 | v0++;
0x00013dac sw v0, (s7) | *(s7) = v0;
0x00013db0 bal 0x634c | sym_keyserver_import_keyid ();
0x00013db4 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013db8 lw v1, (s7) | v1 = *(s7);
0x00013dbc move fp, v0 | fp = v0;
0x00013dc0 lw t9, -0x7c7c(gp) | t9 = sym.free_keyserver_spec;
0x00013dc4 addiu v1, v1, -1 | v1 += -1;
0x00013dc8 move a0, s6 | a0 = s6;
0x00013dcc sw v1, (s7) | *(s7) = v1;
0x00013dd0 bal 0x63a0 | sym_free_keyserver_spec ();
0x00013dd4 lw gp, 0x30(sp) | gp = *(var_30h);
| if (fp != 0) {
0x00013dd8 bnez fp, 0x134a8 | goto label_42;
| }
0x00013ddc lw v0, 0x50(sp) | v0 = *(var_50h);
0x00013de0 lw a3, 0x4c(sp) | a3 = *(var_4ch);
0x00013de4 lw t9, 0x48(sp) | t9 = *(var_48h);
0x00013de8 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013dec move a2, zero | a2 = 0;
0x00013df0 move a1, s4 | a1 = s4;
0x00013df4 move a0, s5 | a0 = s5;
0x00013df8 jalr t9 | t9 ();
0x00013dfc move s6, v0 | s6 = v0;
0x00013e00 addiu v0, zero, 9 | v0 = 9;
0x00013e04 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 == v0) {
0x00013e08 beq s6, v0, 0x134a8 | goto label_42;
| }
0x00013e0c b 0x12f18 | goto label_17;
0x00013e10 nop |
| /* str.textmode */
| label_94:
0x00013e14 addiu s4, s4, 0x4140 | s4 += 0x4140;
0x00013e18 b 0x13894 | goto label_30;
| label_68:
0x00013e1c lw v0, 4(s7) | v0 = *((s7 + 1));
0x00013e20 lw t9, -0x7c74(gp) | t9 = sym.show_photos;
0x00013e24 move a3, zero | a3 = 0;
0x00013e28 lw v0, 4(v0) | v0 = *((v0 + 1));
0x00013e2c move a2, s4 | a2 = s4;
0x00013e30 lw a0, 8(v0) | a0 = *((v0 + 2));
0x00013e34 lw a1, 0xc(v0) | a1 = *((v0 + 3));
0x00013e38 bal 0x63a8 | sym_show_photos ();
0x00013e3c lw v0, 4(s7) | v0 = *((s7 + 1));
0x00013e40 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013e44 lw a0, 4(v0) | a0 = *((v0 + 1));
0x00013e48 b 0x130c0 | goto label_43;
| label_70:
0x00013e4c move a0, s4 | a0 = s4;
0x00013e50 bal 0x631c | sym_get_validity ();
0x00013e54 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013e58 lw t9, -0x7c98(gp) | t9 = sym.trust_value_to_string;
0x00013e5c move a0, v0 | a0 = v0;
0x00013e60 bal 0x6324 | sym_trust_value_to_string ();
0x00013e64 move fp, v0 | fp = v0;
0x00013e68 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013e6c b 0x13134 | goto label_44;
| label_101:
0x00013e70 lw t9, -0x7dc0(gp) | t9 = sym.fingerprint_from_pk;
0x00013e74 addiu a2, sp, 0x6c | a2 = sp + 0x6c;
0x00013e78 addiu s6, sp, 0x78 | s6 = sp + 0x78;
0x00013e7c sw a2, 0x40(sp) | *(var_40h_2) = a2;
0x00013e80 sw s6, 0x3c(sp) | *(var_3ch_2) = s6;
0x00013e84 move a1, s6 | a1 = s6;
0x00013e88 move a0, s5 | a0 = s5;
0x00013e8c bal 0x1a318 | sym_fingerprint_from_pk ();
0x00013e90 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00013e94 lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 == 0) {
0x00013e98 beqz v0, 0x14064 | goto label_102;
| }
0x00013e9c lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00013ea0 addiu s1, sp, 0xc0 | s1 = sp + 0xc0;
0x00013ea4 move s7, zero | s7 = 0;
0x00013ea8 move s4, s1 | s4 = s1;
| /* str._02X */
0x00013eac addiu fp, v0, 0x3d40 | fp = v0 + 0x3d40;
| do {
0x00013eb0 lbu v0, (s6) | v0 = *(s6);
0x00013eb4 lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x00013eb8 move a0, s4 | a0 = s4;
0x00013ebc sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013ec0 move a3, fp | a3 = fp;
0x00013ec4 addiu a2, zero, 0xaa | a2 = 0xaa;
0x00013ec8 addiu a1, zero, 1 | a1 = 1;
0x00013ecc jalr t9 | t9 ();
0x00013ed0 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00013ed4 addiu s7, s7, 1 | s7++;
0x00013ed8 sltu v0, s7, v0 | v0 = (s7 < v0) ? 1 : 0;
0x00013edc lw gp, 0x30(sp) | gp = *(var_30h);
0x00013ee0 addiu s6, s6, 1 | s6++;
0x00013ee4 addiu s4, s4, 2 | s4 += 2;
0x00013ee8 bnez v0, 0x13eb0 |
| } while (v0 != 0);
| label_47:
0x00013eec lw t9, -0x7d48(gp) | t9 = sym.strtimestamp;
0x00013ef0 lw a0, 0xc(s0) | a0 = *((s0 + 3));
0x00013ef4 jalr t9 | t9 ();
0x00013ef8 lbu v1, 0x15(s0) | v1 = *((s0 + 21));
0x00013efc lw gp, 0x30(sp) | gp = *(var_30h);
0x00013f00 sw v1, 0x28(sp) | *(var_28h_2) = v1;
0x00013f04 lbu v1, 0x17(s0) | v1 = *((s0 + 23));
0x00013f08 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x00013f0c sw v1, 0x24(sp) | *(var_24h_2) = v1;
0x00013f10 lbu v1, 0x16(s0) | v1 = *((s0 + 22));
0x00013f14 lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x00013f18 sw v1, 0x20(sp) | *(var_20h) = v1;
0x00013f1c lbu v1, 0x14(s0) | v1 = *((s0 + 20));
0x00013f20 move a0, s4 | a0 = s4;
0x00013f24 sw v1, 0x1c(sp) | *(var_1ch) = v1;
0x00013f28 lw v1, 0x10(s0) | v1 = *((s0 + 4));
| /* str.__s__lu__lu__d_0__d__d__02X_ */
0x00013f2c addiu a3, a3, 0x42ec | a3 += 0x42ec;
0x00013f30 sw v1, 0x18(sp) | *(var_18h_2) = v1;
0x00013f34 lw v1, 0xc(s0) | v1 = *((s0 + 3));
0x00013f38 addiu a2, zero, 0xaa | a2 = 0xaa;
0x00013f3c sw v1, 0x14(sp) | *(var_14h) = v1;
0x00013f40 addiu a1, zero, 1 | a1 = 1;
0x00013f44 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013f48 jalr t9 | t9 ();
0x00013f4c lw gp, 0x30(sp) | gp = *(var_30h);
0x00013f50 lw t9, -0x78a0(gp) | t9 = sym.imp.strlen;
0x00013f54 move a0, s4 | a0 = s4;
0x00013f58 jalr t9 | t9 ();
0x00013f5c lbu v1, 0x4c(s5) | v1 = *((s5 + 76));
0x00013f60 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013f64 addu s4, s4, v0 | s4 += v0;
| if (v1 == 0) {
0x00013f68 beqz v1, 0x13fd8 | goto label_103;
| }
| label_46:
0x00013f6c lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00013f70 lw v0, -0x7fdc(gp) | v0 = *(gp);
| if (v0 == 0) {
0x00013f74 beqz v0, 0x13fc0 | goto label_104;
| }
0x00013f78 lw s6, 0x3c(sp) | s6 = *(var_3ch_2);
0x00013f7c move fp, zero | fp = 0;
| /* str._02X */
0x00013f80 addiu s7, v0, 0x3d40 | s7 = v0 + 0x3d40;
| do {
0x00013f84 lbu v0, (s6) | v0 = *(s6);
0x00013f88 lw t9, -0x794c(gp) | t9 = sym.imp.__sprintf_chk;
0x00013f8c move a0, s4 | a0 = s4;
0x00013f90 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x00013f94 move a3, s7 | a3 = s7;
0x00013f98 addiu a2, zero, -1 | a2 = -1;
0x00013f9c addiu a1, zero, 1 | a1 = 1;
0x00013fa0 jalr t9 | t9 ();
0x00013fa4 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00013fa8 addiu fp, fp, 1 | fp++;
0x00013fac sltu v0, fp, v0 | v0 = (fp < v0) ? 1 : 0;
0x00013fb0 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013fb4 addiu s6, s6, 1 | s6++;
0x00013fb8 addiu s4, s4, 2 | s4 += 2;
0x00013fbc bnez v0, 0x13f84 |
| } while (v0 != 0);
| label_104:
0x00013fc0 lw t9, -0x7d80(gp) | t9 = sym.write_status_text;
0x00013fc4 move a1, s1 | a1 = s1;
0x00013fc8 addiu a0, zero, 0x15 | a0 = 0x15;
0x00013fcc bal 0x21b8c | sym_write_status_text ();
0x00013fd0 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013fd4 b 0x13d48 | goto label_45;
| label_103:
0x00013fd8 lw v1, 0x3c(s5) | v1 = *((s5 + 15));
0x00013fdc lw v0, 0x40(s5) | v0 = *((s5 + 16));
0x00013fe0 lw t9, -0x7e74(gp) | t9 = sym.free_public_key;
0x00013fe4 move a0, s5 | a0 = s5;
0x00013fe8 sw v1, 0x70(sp) | *(var_70h) = v1;
0x00013fec sw v0, 0x74(sp) | *(var_74h) = v0;
0x00013ff0 bal 0x91c0 | sym_free_public_key ();
0x00013ff4 lw gp, 0x30(sp) | gp = *(var_30h);
0x00013ff8 lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
0x00013ffc addiu a0, zero, 0x80 | a0 = 0x80;
0x00014000 jalr t9 | t9 ();
0x00014004 lw gp, 0x30(sp) | gp = *(var_30h);
0x00014008 addiu a1, sp, 0x70 | a1 = sp + 0x70;
0x0001400c move a0, v0 | a0 = v0;
0x00014010 lw t9, -0x7e34(gp) | t9 = sym.get_pubkey;
0x00014014 move s5, v0 | s5 = v0;
0x00014018 bal 0xc768 | sym_get_pubkey ();
0x0001401c lw gp, 0x30(sp) | gp = *(var_30h);
| if (v0 != 0) {
0x00014020 beqz v0, 0x14048 |
0x00014024 addiu v0, zero, 0x14 | v0 = 0x14;
0x00014028 sw v0, 0x6c(sp) | *(var_6ch) = v0;
0x0001402c lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
0x00014030 sw zero, 0x78(sp) | *(var_78h) = 0;
0x00014034 sw zero, 4(v0) | *((v0 + 1)) = 0;
0x00014038 sw zero, 8(v0) | *((v0 + 2)) = 0;
0x0001403c sw zero, 0xc(v0) | *((v0 + 3)) = 0;
0x00014040 sw zero, 0x10(v0) | *((v0 + 4)) = 0;
0x00014044 b 0x13f6c | goto label_46;
| }
0x00014048 lw t9, -0x7dc0(gp) | t9 = sym.fingerprint_from_pk;
0x0001404c lw a2, 0x40(sp) | a2 = *(var_40h_2);
0x00014050 lw a1, 0x3c(sp) | a1 = *(var_3ch_2);
0x00014054 move a0, s5 | a0 = s5;
0x00014058 bal 0x1a318 | sym_fingerprint_from_pk ();
0x0001405c lw gp, 0x30(sp) | gp = *(var_30h);
0x00014060 b 0x13f6c | goto label_46;
| label_102:
0x00014064 addiu s1, sp, 0xc0 | s1 = sp + 0xc0;
0x00014068 move s4, s1 | s4 = s1;
0x0001406c b 0x13eec | goto label_47;
| label_99:
0x00014070 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00014074 lw a3, 0x4c(sp) | a3 = *(var_4ch);
0x00014078 lw t9, 0x48(sp) | t9 = *(var_48h);
0x0001407c move a2, zero | a2 = 0;
0x00014080 move a1, s4 | a1 = s4;
0x00014084 move a0, s5 | a0 = s5;
0x00014088 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x0001408c jalr t9 | t9 ();
0x00014090 lw gp, 0x30(sp) | gp = *(var_30h);
0x00014094 lw v1, 0x3c(sp) | v1 = *(var_3ch_2);
0x00014098 move s6, v0 | s6 = v0;
0x0001409c lw t9, -0x7c7c(gp) | t9 = sym.free_keyserver_spec;
0x000140a0 move a0, v1 | a0 = v1;
0x000140a4 bal 0x63a0 | sym_free_keyserver_spec ();
0x000140a8 lw gp, 0x30(sp) | gp = *(var_30h);
| if (s6 != 0) {
0x000140ac bnez s6, 0x13460 | goto label_33;
| }
0x000140b0 lhu v0, (s0) | v0 = *(s0);
0x000140b4 b 0x12f24 | goto label_48;
| label_73:
0x000140b8 lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x000140bc jalr t9 | t9 ();
0x000140c0 nop |
| label_50:
0x000140c4 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x000140c8 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x000140cc lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000140d0 lw t9, -0x7944(gp) | t9 = sym.imp.__assert_fail;
| /* str.check_sig_and_print */
0x000140d4 addiu a3, a3, 0x48f8 | a3 += 0x48f8;
0x000140d8 addiu a2, zero, 0x5bc | a2 = 0x5bc;
| /* str..._.._gnupg_1.4.7_g10_mainproc.c */
0x000140dc addiu a1, a1, 0x3eac | a1 += 0x3eac;
0x000140e0 addiu a0, a0, 0x4fe0 | a0 += 0x4fe0;
0x000140e4 jalr t9 | t9 ();
| label_82:
0x000140e8 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x000140ec lw a1, -0x7fdc(gp) | a1 = *(gp);
0x000140f0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000140f4 lw t9, -0x7944(gp) | t9 = sym.imp.__assert_fail;
| /* str.check_sig_and_print */
0x000140f8 addiu a3, a3, 0x48f8 | a3 += 0x48f8;
0x000140fc addiu a2, zero, 0x69b | a2 = 0x69b;
| /* str..._.._gnupg_1.4.7_g10_mainproc.c */
0x00014100 addiu a1, a1, 0x3eac | a1 += 0x3eac;
| /* esilref: 'pk' */
0x00014104 addiu a0, a0, 0x2c00 | a0 += 0x2c00;
0x00014108 jalr t9 | return t9 ();
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1ad24 */
| #include <stdint.h>
|
; (fcn) fcn.0001ad24 () | void fcn_0001ad24 () {
0x0001ad24 lui gp, 4 |
0x0001ad28 addiu gp, gp, 0x740c |
0x0001ad2c addu gp, gp, t9 | gp += t9;
0x0001ad30 addiu sp, sp, -0x28 |
0x0001ad34 lw a3, (a1) | a3 = *(a1);
0x0001ad38 sw s2, 0x20(sp) | *(var_20h) = s2;
0x0001ad3c lw s2, -0x7fb4(gp) | s2 = *((gp - 8173));
0x0001ad40 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0001ad44 sw s1, 0x1c(sp) | *(var_1ch) = s1;
0x0001ad48 sw s0, 0x18(sp) | *(var_18h) = s0;
0x0001ad4c move s1, a0 | s1 = a0;
0x0001ad50 sw ra, 0x24(sp) | *(var_24h) = ra;
0x0001ad54 move s0, a1 | s0 = a1;
0x0001ad58 lw a0, -0x4cb0(s2) | a0 = *((s2 - 4908));
| if (a3 != 0) {
0x0001ad5c beqz a3, 0x1ad6c |
0x0001ad60 andi v0, a3, 7 | v0 = a3 & 7;
0x0001ad64 lui v0, 0x2aaa | v0 = 0x2aaa0000;
| if (v0 == 0) {
0x0001ad68 beqz v0, 0x1adb4 | goto label_1;
| }
| }
| label_0:
0x0001ad6c addiu v0, zero, -1 | v0 = -1;
0x0001ad70 move a3, a0 | a3 = a0;
| if (s1 == v0) {
0x0001ad74 beq s1, v0, 0x1ae08 | goto label_2;
| }
| do {
0x0001ad78 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001ad7c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001ad80 move a3, s1 | a3 = s1;
| /* str.__02x */
0x0001ad84 addiu a2, a2, 0x52fc | a2 += 0x52fc;
0x0001ad88 addiu a1, zero, 1 | a1 = 1;
0x0001ad8c jalr t9 | t9 ();
| label_1:
0x0001adb4 ori v0, v0, 0xaaab | v0 |= 0xaaab;
0x0001adb8 mult a3, v0 | __asm ("mult a3, v0");
0x0001adbc mfhi v0 | __asm ("mfhi v0");
0x0001adc0 sra v1, a3, 0x1f | v1 = a3 >> 0x1f;
0x0001adc4 sra v0, v0, 2 | v0 >>= 2;
0x0001adc8 subu v0, v0, v1 | __asm ("subu v0, v0, v1");
0x0001adcc sll v1, v0, 1 | v1 = v0 << 1;
0x0001add0 addu v0, v1, v0 | v0 = v1 + v0;
0x0001add4 sll v0, v0, 3 | v0 <<= 3;
0x0001add8 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (a3 != v0) {
0x0001addc bne a3, v0, 0x1ae44 | goto label_3;
| }
0x0001ade0 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001ade4 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| /* str._n_4d: */
0x0001ade8 addiu a2, a2, 0x52ec | a2 += 0x52ec;
0x0001adec addiu a1, zero, 1 | a1 = 1;
0x0001adf0 jalr t9 | t9 ();
0x0001adf4 addiu v0, zero, -1 | v0 = -1;
0x0001adf8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001adfc lw a0, -0x4cb0(s2) | a0 = *((s2 - 4908));
0x0001ae00 bne s1, v0, 0x1ad78 |
| } while (s1 != v0);
0x0001ae04 move a3, a0 | a3 = a0;
| label_2:
0x0001ae08 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001ae0c lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001ae10 addiu a2, zero, 4 | a2 = 4;
0x0001ae14 addiu a1, zero, 1 | a1 = 1;
| /* str._EOF */
0x0001ae18 addiu a0, a0, 0x52f4 | a0 += 0x52f4;
0x0001ae1c jalr t9 | t9 ();
0x0001ae20 lw v0, (s0) | v0 = *(s0);
0x0001ae24 lw ra, 0x24(sp) | ra = *(var_24h);
0x0001ae28 addiu v0, v0, 1 | v0++;
0x0001ae2c sw v0, (s0) | *(s0) = v0;
0x0001ae30 lw s2, 0x20(sp) | s2 = *(var_20h);
0x0001ae34 lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x0001ae38 lw s0, 0x18(sp) | s0 = *(var_18h);
0x0001ae3c addiu sp, sp, 0x28 |
0x0001ae40 jr ra | return v0;
| label_3:
0x0001ae44 move a1, a0 | a1 = a0;
0x0001ae48 addiu a0, zero, 0x20 | a0 = 0x20;
0x0001ae4c jalr t9 | t9 ();
0x0001ae50 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001ae54 lw a0, -0x4cb0(s2) | a0 = *((s2 - 4908));
0x0001ae58 b 0x1ad6c | goto label_0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1af40 */
| #include <stdint.h>
|
; (fcn) fcn.0001af40 () | void fcn_0001af40 () {
0x0001af40 lui gp, 4 |
0x0001af44 addiu gp, gp, 0x71f0 |
0x0001af48 addu gp, gp, t9 | gp += t9;
0x0001af4c addiu sp, sp, -0x90 |
0x0001af50 lw v0, -0x781c(gp) | v0 = *((gp - 7687));
0x0001af54 sw s3, 0x74(sp) | *(var_74h) = s3;
0x0001af58 move s3, a0 | s3 = a0;
0x0001af5c sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x0001af60 lw a0, (v0) | a0 = *(v0);
0x0001af64 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001af68 sw gp, 0x20(sp) | *(var_20h) = gp;
0x0001af6c sw s5, 0x7c(sp) | *(var_7ch) = s5;
0x0001af70 sw s2, 0x70(sp) | *(var_70h) = s2;
0x0001af74 sw s1, 0x6c(sp) | *(var_6ch) = s1;
0x0001af78 sw s0, 0x68(sp) | *(var_68h) = s0;
0x0001af7c sw ra, 0x8c(sp) | *(var_8ch) = ra;
0x0001af80 sw fp, 0x88(sp) | *(var_88h) = fp;
0x0001af84 sw s7, 0x84(sp) | *(var_84h) = s7;
0x0001af88 sw s6, 0x80(sp) | *(var_80h) = s6;
0x0001af8c sw s4, 0x78(sp) | *(var_78h) = s4;
0x0001af90 move s0, a1 | s0 = a1;
0x0001af94 move s1, a2 | s1 = a2;
0x0001af98 move s2, a3 | s2 = a3;
0x0001af9c lw s5, 0xa0(sp) | s5 = *(arg_a0h);
0x0001afa0 sw a0, 0x64(sp) | *(var_64h) = a0;
0x0001afa4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001afa8 bnez v0, 0x1afc4 |
0x0001afac lw a0, 0x2c(s3) | a0 = *((s3 + 11));
0x0001afb0 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001afb4 sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
0x0001afb8 lw v0, 0x10(s3) | v0 = *((s3 + 4));
| if (v0 == 0) {
0x0001afbc bnel v0, zero, 0x1b04c | goto label_12;
| }
0x0001afc0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| }
0x0001afc4 move a0, s3 | a0 = s3;
0x0001afc8 jalr t9 | t9 ();
0x0001afcc andi s7, v0, 0xff | s7 = v0 & 0xff;
0x0001afd0 addiu v0, zero, 0xe | v0 = 0xe;
0x0001afd4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001afd8 addiu s4, s1, -1 | s4 = s1 + -1;
| if (s0 == v0) {
0x0001afdc beq s0, v0, 0x1b080 | goto label_13;
| }
| do {
0x0001afe0 addiu v0, zero, 4 | v0 = 4;
| label_0:
0x0001afe4 addiu v0, s7, -2 | v0 = s7 + -2;
| if (s7 == v0) {
0x0001afe8 beq s7, v0, 0x1b0bc | goto label_14;
| }
0x0001afec sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
| if (v0 == 0) {
0x0001aff0 beql v0, zero, 0x1b424 | goto label_15;
| }
0x0001aff4 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001aff8 sltiu v0, s4, 0xb | v0 = (s4 < 0xb) ? 1 : 0;
0x0001affc lw t9, -0x7bd4(gp) | t9 = *(gp);
| if (v0 != 0) {
0x0001b000 bnez v0, 0x1b37c | goto label_16;
| }
| /* fcn.0001a990 */
0x0001b004 addiu t9, t9, -0x5670 | t9 += -0x5670;
0x0001b008 move a0, s3 | a0 = s3;
0x0001b00c bal 0x1a990 | fcn_0001a990 ();
0x0001b010 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b014 move a0, s3 | a0 = s3;
0x0001b018 move s6, v0 | s6 = v0;
0x0001b01c lw t9, -0x7bd4(gp) | t9 = *(gp);
| /* fcn.0001ab8c */
0x0001b020 addiu t9, t9, -0x5474 | t9 += -0x5474;
0x0001b024 addiu s4, s1, -7 | s4 = s1 + -7;
0x0001b028 bal 0x1ab8c | fcn_0001ab8c ();
0x0001b02c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0001b030 beqz v0, 0x1b444 | goto label_17;
| }
0x0001b034 lui t1, 1 | t1 = 0x15180;
0x0001b038 addiu t1, t1, 0x5180 |
0x0001b03c mul v1, v0, t1 | __asm ("mul v1, v0, t1");
0x0001b040 sw zero, 0x40(sp) | *(var_40h) = 0;
0x0001b044 addu t1, v1, s6 | t1 = v1 + s6;
0x0001b048 b 0x1b0ec | goto label_2;
| label_12:
0x0001b04c lw a2, 0x14(s3) | a2 = *((s3 + 5));
0x0001b050 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001b054 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001b058 lw s7, 0x34(s3) | s7 = *((s3 + 13));
0x0001b05c addu v0, v0, a2 | v0 += a2;
0x0001b060 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001b064 sw v0, 0x14(s3) | *((s3 + 5)) = v0;
0x0001b068 sw a1, 0x10(s3) | *((s3 + 4)) = a1;
0x0001b06c sw a2, 0x2c(s3) | *((s3 + 11)) = a2;
0x0001b070 addiu v0, zero, 0xe | v0 = 0xe;
0x0001b074 lbux s7, a0(s7) | __asm ("lbux s7, a0(s7)");
0x0001b078 addiu s4, s1, -1 | s4 = s1 + -1;
0x0001b07c bne s0, v0, 0x1afe0 |
| } while (s0 != v0);
| label_13:
0x0001b080 addiu v0, zero, 0x23 | v0 = 0x23;
0x0001b084 addiu v0, zero, 4 | v0 = 4;
| if (s7 != v0) {
0x0001b088 bne s7, v0, 0x1afe4 | goto label_0;
| }
0x0001b08c lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001b090 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001b094 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
| if (v0 == 0) {
0x0001b098 bnel v0, zero, 0x1bb80 | goto label_18;
| }
| label_9:
0x0001b09c lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
0x0001b0a0 move a2, zero | a2 = 0;
0x0001b0a4 move a1, s4 | a1 = s4;
0x0001b0a8 move a0, s3 | a0 = s3;
0x0001b0ac jalr t9 | t9 ();
0x0001b0b0 move s0, zero | s0 = 0;
0x0001b0b4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b0b8 b 0x1b3b0 | void (*0x1b3b0)() ();
| label_14:
0x0001b0bc sltiu v0, s4, 0xb | v0 = (s4 < 0xb) ? 1 : 0;
0x0001b0c0 lw t9, -0x7bd4(gp) | t9 = *(gp);
| if (v0 != 0) {
0x0001b0c4 bnez v0, 0x1b37c | goto label_16;
| }
| /* fcn.0001a990 */
0x0001b0c8 addiu t9, t9, -0x5670 | t9 += -0x5670;
0x0001b0cc move a0, s3 | a0 = s3;
0x0001b0d0 bal 0x1a990 | fcn_0001a990 ();
0x0001b0d4 move s6, v0 | s6 = v0;
0x0001b0d8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b0dc addiu v0, zero, 1 | v0 = 1;
0x0001b0e0 addiu s4, s1, -5 | s4 = s1 + -5;
0x0001b0e4 sw v0, 0x40(sp) | *(var_40h) = v0;
0x0001b0e8 move t1, zero | t1 = 0;
| label_2:
0x0001b0ec lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001b0f0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001b0f4 bnez v0, 0x1b110 |
0x0001b0f8 lw v0, 0x2c(s3) | v0 = *((s3 + 11));
0x0001b0fc lw a0, 0x30(s3) | a0 = *((s3 + 12));
0x0001b100 sltu a0, v0, a0 | a0 = (v0 < a0) ? 1 : 0;
0x0001b104 lw a0, 0x10(s3) | a0 = *((s3 + 4));
| if (a0 == 0) {
0x0001b108 bnel a0, zero, 0x1b3f4 | goto label_19;
| }
0x0001b10c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| }
0x0001b110 sw t1, 0x28(sp) | *(var_28h) = t1;
0x0001b114 move a0, s3 | a0 = s3;
0x0001b118 jalr t9 | t9 ();
0x0001b11c lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b120 lw t1, 0x28(sp) | t1 = *(var_28h);
0x0001b124 andi s1, v0, 0xff | s1 = v0 & 0xff;
0x0001b128 andi fp, v0, 0xff | fp = v0 & 0xff;
| label_1:
0x0001b12c lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001b130 sw v0, 0x28(sp) | *(var_28h) = v0;
0x0001b134 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001b138 addiu s4, s4, -1 | s4 += -1;
| if (v0 != 0) {
0x0001b13c beqz v0, 0x1b1b0 |
0x0001b140 lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0001b144 addiu v0, zero, 6 | v0 = 6;
0x0001b148 lw a0, -0x4cb0(a0) | a0 = *((a0 - 4908));
| if (s0 != v0) {
0x0001b14c beq s0, v0, 0x1b178 |
0x0001b150 addiu v0, zero, 5 | v0 = 5;
0x0001b154 addiu v0, zero, 0xe | v0 = 0xe;
| if (s0 == v0) {
0x0001b158 beq s0, v0, 0x1b8c8 | goto label_20;
| }
0x0001b15c addiu v0, zero, 7 | v0 = 7;
| if (s0 == v0) {
0x0001b160 beq s0, v0, 0x1bed0 | goto label_21;
| }
| if (s0 == v0) {
0x0001b164 beql s0, v0, 0x1bb78 | goto label_22;
| }
0x0001b168 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x0001b16c lw a3, -0x7fdc(gp) | a3 = *(gp);
| /* esilref: '??' */
0x0001b170 addiu a3, a3, 0x5180 | a3 += 0x5180;
0x0001b174 b 0x1b180 |
| } else {
0x0001b178 lw a3, -0x7fdc(gp) | a3 = *(gp);
| /* str.public */
0x0001b17c addiu a3, a3, 0x531c | a3 += 0x531c;
| }
| label_6:
0x0001b180 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001b184 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001b188 sw t1, 0x1c(sp) | *(var_1ch) = t1;
0x0001b18c sw t1, 0x30(sp) | *(var_30h) = t1;
0x0001b190 sw s6, 0x18(sp) | *(var_18h) = s6;
0x0001b194 sw s1, 0x14(sp) | *(var_14h) = s1;
0x0001b198 sw s7, 0x10(sp) | *(var_10h) = s7;
| /* str.:_s_key_packet:_n_tversion__d__algo__d__created__lu__expires__lu_n */
0x0001b19c addiu a2, a2, 0x53e4 | a2 += 0x53e4;
0x0001b1a0 addiu a1, zero, 1 | a1 = 1;
0x0001b1a4 jalr t9 | t9 ();
0x0001b1a8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b1ac lw t1, 0x30(sp) | t1 = *(var_30h);
| }
0x0001b1b0 addiu v0, zero, -3 | v0 = -3;
0x0001b1b4 and v0, s0, v0 | v0 = s0 & v0;
0x0001b1b8 addiu a0, zero, 5 | a0 = 5;
0x0001b1bc lw a1, (s5) | a1 = *(s5);
0x0001b1c0 andi s2, s2, 0xff | s2 &= 0xff;
0x0001b1c4 andi s7, s7, 0xff | s7 &= 0xff;
| if (v0 == a0) {
0x0001b1c8 beq v0, a0, 0x1b2ac | goto label_23;
| }
0x0001b1cc xori v0, s0, 6 | v0 = s0 ^ 6;
0x0001b1d0 lw t9, -0x7f40(gp) | t9 = sym.pubkey_get_nskey;
0x0001b1d4 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x0001b1d8 sb s2, 0x1c(a1) | *((a1 + 28)) = s2;
0x0001b1dc move a0, s1 | a0 = s1;
0x0001b1e0 sw s6, (a1) | *(a1) = s6;
0x0001b1e4 sw t1, 4(a1) | *((a1 + 1)) = t1;
0x0001b1e8 sw t1, 8(a1) | *((a1 + 2)) = t1;
0x0001b1ec sb s7, 0x1d(a1) | *((a1 + 29)) = s7;
0x0001b1f0 sb v0, 0x4c(a1) | *((a1 + 76)) = v0;
0x0001b1f4 sb fp, 0x1f(a1) | *((a1 + 31)) = fp;
0x0001b1f8 sh zero, 0x20(a1) | *((a1 + 16)) = 0;
0x0001b1fc sw zero, 0x28(a1) | *((a1 + 10)) = 0;
0x0001b200 sb zero, 0x4d(a1) | *((a1 + 77)) = 0;
0x0001b204 sw zero, 0x44(a1) | *((a1 + 17)) = 0;
0x0001b208 sw zero, 0x48(a1) | *((a1 + 18)) = 0;
0x0001b20c bal 0x27528 | sym_pubkey_get_nskey ();
0x0001b210 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b214 lw t9, -0x7f44(gp) | t9 = sym.pubkey_get_npkey;
0x0001b218 move a0, s1 | a0 = s1;
0x0001b21c bal 0x27430 | sym_pubkey_get_npkey ();
0x0001b220 move s2, v0 | s2 = v0;
0x0001b224 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0001b228 beqz v0, 0x1b304 | goto label_24;
| }
0x0001b22c lw s1, (s5) | s1 = *(s5);
| if (v0 <= 0) {
0x0001b230 blez v0, 0x1b374 | void (*0x1b374)() ();
| }
0x0001b234 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001b238 lw s6, -0x7fb4(gp) | s6 = *((gp - 8173));
0x0001b23c sw v0, 0x34(sp) | *(var_34h) = v0;
0x0001b240 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0001b244 addiu s1, s1, 0x70 | s1 += 0x70;
| /* str._tpkey__d_:_ */
0x0001b248 addiu v0, v0, 0x558c | v0 += 0x558c;
0x0001b24c move s0, zero | s0 = 0;
0x0001b250 move fp, zero | fp = 0;
0x0001b254 addiu s7, sp, 0x50 | s7 = sp + 0x50;
0x0001b258 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0001b25c addiu s5, zero, 0xe | s5 = 0xe;
| do {
0x0001b260 lw t9, -0x7bbc(gp) | t9 = sym.mpi_read;
0x0001b264 move a1, s7 | a1 = s7;
0x0001b268 move a0, s3 | a0 = s3;
0x0001b26c sw s4, 0x50(sp) | *(var_50h) = s4;
0x0001b270 move a2, zero | a2 = 0;
0x0001b274 bal 0x34570 | sym_mpi_read ();
0x0001b278 lw v1, 0x28(sp) | v1 = *(var_28h);
0x0001b27c lw a1, 0x50(sp) | a1 = *(var_50h);
0x0001b280 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b284 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001b288 sw v0, (s1) | *(s1) = v0;
0x0001b28c subu s4, s4, a1 | __asm ("subu s4, s4, a1");
| if (a0 != 0) {
0x0001b290 bnez a0, 0x1b66c | goto label_25;
| }
| label_5:
0x0001b294 addiu fp, fp, 1 | fp++;
| if (v0 != 0) {
0x0001b298 movz s0, s5, v0 | s0 = s5;
| }
0x0001b29c addiu s1, s1, 4 | s1 += 4;
0x0001b2a0 bne s2, fp, 0x1b260 |
| } while (s2 != fp);
0x0001b2a4 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
0x0001b2a8 b 0x1b39c | void (*0x1b39c)() ();
| label_23:
0x0001b2ac xori v0, s0, 5 | v0 = s0 ^ 5;
0x0001b2b0 lw t9, -0x7f40(gp) | t9 = sym.pubkey_get_nskey;
0x0001b2b4 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x0001b2b8 sb s2, 0xc(a1) | *((a1 + 12)) = s2;
0x0001b2bc move a0, s1 | a0 = s1;
0x0001b2c0 sw s6, (a1) | *(a1) = s6;
0x0001b2c4 sw t1, 4(a1) | *((a1 + 1)) = t1;
0x0001b2c8 sw t1, 8(a1) | *((a1 + 2)) = t1;
0x0001b2cc sb s7, 0xd(a1) | *((a1 + 13)) = s7;
0x0001b2d0 sb v0, 0x30(a1) | *((a1 + 48)) = v0;
0x0001b2d4 sb fp, 0xe(a1) | *((a1 + 14)) = fp;
0x0001b2d8 sb zero, 0x10(a1) | *((a1 + 16)) = 0;
0x0001b2dc sb zero, 0xf(a1) | *((a1 + 15)) = 0;
0x0001b2e0 bal 0x27528 | sym_pubkey_get_nskey ();
0x0001b2e4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b2e8 move a0, s1 | a0 = s1;
0x0001b2ec lw t9, -0x7f44(gp) | t9 = sym.pubkey_get_npkey;
0x0001b2f0 sw v0, 0x34(sp) | *(var_34h) = v0;
0x0001b2f4 bal 0x27430 | sym_pubkey_get_npkey ();
0x0001b2f8 move s2, v0 | s2 = v0;
0x0001b2fc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0001b300 bnez v0, 0x1b450 |
| label_24:
0x0001b304 lw v0, 0x28(sp) | v0 = *(var_28h);
0x0001b308 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001b30c lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
| if (v0 != 0) {
0x0001b310 bnez v0, 0x1b604 | goto label_26;
| }
| label_4:
0x0001b314 lw t9, -0x7bd4(gp) | t9 = *(gp);
| /* fcn.0001ac9c */
0x0001b318 addiu t9, t9, -0x5364 | t9 += -0x5364;
0x0001b31c move a0, s1 | a0 = s1;
0x0001b320 bal 0x1ac9c | fcn_0001ac9c ();
0x0001b324 addiu v0, zero, 5 | v0 = 5;
0x0001b328 lw gp, 0x20(sp) | gp = *(var_20h);
| if (s0 == v0) {
0x0001b32c beq s0, v0, 0x1b628 | goto label_27;
| }
0x0001b330 addiu v0, zero, 7 | v0 = 7;
0x0001b334 lw s1, (s5) | s1 = *(s5);
| if (s0 == v0) {
0x0001b338 beq s0, v0, 0x1b62c | goto label_28;
| }
0x0001b33c lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001b340 move a1, s4 | a1 = s4;
| /* fcn.0001ae5c */
0x0001b344 addiu t9, t9, -0x51a4 | t9 += -0x51a4;
0x0001b348 move a0, s3 | a0 = s3;
0x0001b34c bal 0x1ae5c | fcn_0001ae5c ();
0x0001b350 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b354 move a2, s4 | a2 = s4;
0x0001b358 move a1, v0 | a1 = v0;
0x0001b35c lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001b360 move a0, zero | a0 = 0;
0x0001b364 bal 0x37be4 | sym_mpi_set_opaque ();
0x0001b368 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b36c sw v0, 0x70(s1) | *((s1 + 28)) = v0;
| label_16:
0x0001b37c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001b380 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001b384 move a1, s0 | a1 = s0;
| /* str.packet__d__too_short_n */
0x0001b388 addiu a0, a0, 0x53cc | a0 += 0x53cc;
0x0001b38c bal 0x38550 | sym_g10_log_error ();
0x0001b390 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b394 addiu s0, zero, 0xe | s0 = 0xe;
| label_19:
0x0001b3f4 lw a2, 0x14(s3) | a2 = *((s3 + 5));
0x0001b3f8 addiu a1, a0, 1 | a1 = a0 + 1;
0x0001b3fc sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001b400 lw fp, 0x34(s3) | fp = *((s3 + 13));
0x0001b404 addu a0, a0, a2 | a0 += a2;
0x0001b408 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001b40c sw a1, 0x10(s3) | *((s3 + 4)) = a1;
0x0001b410 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001b414 sw a2, 0x2c(s3) | *((s3 + 11)) = a2;
0x0001b418 lbux fp, v0(fp) | __asm ("lbux fp, v0(fp)");
0x0001b41c move s1, fp | s1 = fp;
0x0001b420 b 0x1b12c | goto label_1;
| label_15:
0x0001b424 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001b428 move a1, s0 | a1 = s0;
0x0001b42c move a2, s7 | a2 = s7;
| /* str.packet__d__with_unknown_version__d_n */
0x0001b430 addiu a0, a0, 0x53a8 | a0 += 0x53a8;
0x0001b434 bal 0x38550 | sym_g10_log_error ();
0x0001b438 addiu s0, zero, 0xe | s0 = 0xe;
0x0001b43c lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b440 b 0x1b398 | void (*0x1b398)() ();
| label_17:
0x0001b444 sw zero, 0x40(sp) | *(var_40h) = 0;
0x0001b448 move t1, zero | t1 = 0;
0x0001b44c b 0x1b0ec | goto label_2;
| }
0x0001b450 lw s1, (s5) | s1 = *(s5);
| if (v0 <= 0) {
0x0001b454 blez v0, 0x1b544 | goto label_29;
| }
0x0001b458 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001b45c addiu s6, s1, 0x60 | s6 = s1 + 0x60;
0x0001b460 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0001b464 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001b468 move s0, zero | s0 = 0;
0x0001b46c sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x0001b470 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0001b474 move fp, zero | fp = 0;
| /* str._tskey__d_:_ */
0x0001b478 addiu v0, v0, 0x543c | v0 += 0x543c;
0x0001b47c addiu s7, sp, 0x50 | s7 = sp + 0x50;
0x0001b480 sw v0, 0x38(sp) | *(var_38h) = v0;
0x0001b484 addiu s5, zero, 0xe | s5 = 0xe;
0x0001b488 b 0x1b49c |
| while (a0 == 0) {
0x0001b48c addiu fp, fp, 1 | fp++;
| if (v0 != 0) {
0x0001b490 movz s0, s5, v0 | s0 = s5;
| }
0x0001b494 addiu s6, s6, 4 | s6 += 4;
| if (fp == s2) {
0x0001b498 beq fp, s2, 0x1b53c | goto label_30;
| }
| label_3:
0x0001b49c lw t9, -0x7bbc(gp) | t9 = sym.mpi_read;
0x0001b4a0 move a1, s7 | a1 = s7;
0x0001b4a4 move a0, s3 | a0 = s3;
0x0001b4a8 sw s4, 0x50(sp) | *(var_50h) = s4;
0x0001b4ac move a2, zero | a2 = 0;
0x0001b4b0 bal 0x34570 | sym_mpi_read ();
0x0001b4b4 lw v1, 0x28(sp) | v1 = *(var_28h);
0x0001b4b8 lw a1, 0x50(sp) | a1 = *(var_50h);
0x0001b4bc lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b4c0 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001b4c4 sw v0, (s6) | *(s6) = v0;
0x0001b4c8 subu s4, s4, a1 | __asm ("subu s4, s4, a1");
0x0001b4cc beqz a0, 0x1b48c |
| }
0x0001b4d0 lw v0, 0x30(sp) | v0 = *(var_30h);
0x0001b4d4 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001b4d8 lw a2, 0x38(sp) | a2 = *(var_38h);
0x0001b4dc lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001b4e0 move a3, fp | a3 = fp;
0x0001b4e4 addiu a1, zero, 1 | a1 = 1;
0x0001b4e8 jalr t9 | t9 ();
0x0001b4ec lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b4f0 lw v1, 0x3c(sp) | v1 = *(var_3ch);
0x0001b4f4 lw v0, 0x30(sp) | v0 = *(var_30h);
0x0001b4f8 lw a1, (s6) | a1 = *(s6);
0x0001b4fc lw t9, -0x7bb4(gp) | t9 = sym.mpi_print;
0x0001b500 lw a2, -0x4ca8(v1) | a2 = *((v1 - 4906));
0x0001b504 lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001b508 addiu fp, fp, 1 | fp++;
0x0001b50c bal 0x3489c | sym_mpi_print ();
0x0001b510 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b514 lw v0, 0x30(sp) | v0 = *(var_30h);
0x0001b518 addiu a0, zero, 0xa | a0 = 0xa;
0x0001b51c lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001b520 lw a1, -0x4cb0(v0) | a1 = *((v0 - 4908));
0x0001b524 addiu s6, s6, 4 | s6 += 4;
0x0001b528 jalr t9 | t9 ();
0x0001b52c lw v0, -4(s6) | v0 = *((s6 - 1));
0x0001b530 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0001b534 movz s0, s5, v0 | s0 = s5;
| goto label_31;
| }
| if (fp != s2) {
| label_31:
0x0001b538 bne fp, s2, 0x1b49c | goto label_3;
| }
| label_30:
0x0001b53c lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| if (s0 != 0) {
0x0001b540 bnez s0, 0x1b39c | void (*0x1b39c)() ();
| }
| label_29:
0x0001b544 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001b548 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001b54c bnez v0, 0x1b6c0 | goto label_32;
| }
0x0001b550 lw a0, 0x2c(s3) | a0 = *((s3 + 11));
0x0001b554 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001b558 sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001b55c beqz v0, 0x1b6c0 | goto label_32;
| }
0x0001b560 nop |
0x0001b564 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001b568 lw a2, 0x14(s3) | a2 = *((s3 + 5));
0x0001b56c addiu a1, v0, 1 | a1 = v0 + 1;
0x0001b570 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001b574 lw a3, 0x34(s3) | a3 = *((s3 + 13));
0x0001b578 addu v0, v0, a2 | v0 += a2;
0x0001b57c addiu a2, a0, 1 | a2 = a0 + 1;
0x0001b580 sw a1, 0x10(s3) | *((s3 + 4)) = a1;
0x0001b584 sw v0, 0x14(s3) | *((s3 + 5)) = v0;
0x0001b588 sw a2, 0x2c(s3) | *((s3 + 11)) = a2;
0x0001b58c lbux a3, a0(a3) | __asm ("lbux a3, a0(a3)");
| do {
0x0001b590 sb a3, 0x34(s1) | *((s1 + 52)) = a3;
0x0001b594 addiu fp, s4, -1 | fp = s4 + -1;
0x0001b598 sb zero, 0x35(s1) | *((s1 + 53)) = 0;
| if (a3 == 0) {
0x0001b59c beqz a3, 0x1b6d4 | goto label_33;
| }
0x0001b5a0 addiu v0, a3, 2 | v0 = a3 + 2;
0x0001b5a4 andi v0, v0, 0xff | v0 &= 0xff;
0x0001b5a8 addiu a0, zero, 1 | a0 = 1;
0x0001b5ac sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x0001b5b0 sb a0, 0x31(s1) | *((s1 + 49)) = a0;
0x0001b5b4 sw zero, 0x48(s1) | *((s1 + 18)) = 0;
| if (v0 != 0) {
0x0001b5b8 bnez v0, 0x1b940 | goto label_34;
| }
0x0001b5bc lw v0, 0x28(sp) | v0 = *(var_28h);
0x0001b5c0 sw zero, 0x38(s1) | *((s1 + 14)) = 0;
0x0001b5c4 sb a0, 0x3c(s1) | *((s1 + 60)) = a0;
0x0001b5c8 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001b5cc lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
| if (v0 != 0) {
0x0001b5d0 bnez v0, 0x1c024 | goto label_35;
| }
0x0001b5d4 addiu a0, a3, -7 | a0 = a3 + -7;
0x0001b5d8 sltiu a0, a0, 4 | a0 = (a0 < 4) ? 1 : 0;
0x0001b5dc addiu a1, zero, 0x10 | a1 = 0x10;
0x0001b5e0 addiu v0, zero, 8 | v0 = 8;
| if (a0 == 0) {
0x0001b5e4 movn v0, a1, a0 | v0 = a1;
| }
0x0001b5e8 move a0, v0 | a0 = v0;
| label_26:
0x0001b604 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001b608 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001b60c lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001b610 move a3, s1 | a3 = s1;
| /* str._tunknown_algorithm__d_n */
0x0001b614 addiu a2, a2, 0x5424 | a2 += 0x5424;
0x0001b618 addiu a1, zero, 1 | a1 = 1;
0x0001b61c jalr t9 | t9 ();
0x0001b620 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b624 b 0x1b314 | goto label_4;
| label_27:
0x0001b628 lw s1, (s5) | s1 = *(s5);
| label_28:
0x0001b62c lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001b630 move a1, s4 | a1 = s4;
| /* fcn.0001ae5c */
0x0001b634 addiu t9, t9, -0x51a4 | t9 += -0x51a4;
0x0001b638 move a0, s3 | a0 = s3;
0x0001b63c bal 0x1ae5c | fcn_0001ae5c ();
0x0001b640 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b644 move a2, s4 | a2 = s4;
0x0001b648 move a1, v0 | a1 = v0;
0x0001b64c lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001b650 move a0, zero | a0 = 0;
0x0001b654 bal 0x37be4 | sym_mpi_set_opaque ();
0x0001b658 move s4, zero | s4 = 0;
0x0001b65c lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b660 sw v0, 0x60(s1) | *((s1 + 24)) = v0;
0x0001b664 move s0, zero | s0 = 0;
0x0001b668 b 0x1b398 | void (*0x1b398)() ();
| label_25:
0x0001b66c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001b670 lw a0, -0x4cb0(s6) | a0 = *((s6 - 4908));
0x0001b674 lw a2, 0x30(sp) | a2 = *(var_30h);
0x0001b678 move a3, fp | a3 = fp;
0x0001b67c addiu a1, zero, 1 | a1 = 1;
0x0001b680 jalr t9 | t9 ();
0x0001b684 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b688 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0001b68c lw a1, (s1) | a1 = *(s1);
0x0001b690 lw t9, -0x7bb4(gp) | t9 = sym.mpi_print;
0x0001b694 lw a2, -0x4ca8(v0) | a2 = *((v0 - 4906));
0x0001b698 lw a0, -0x4cb0(s6) | a0 = *((s6 - 4908));
0x0001b69c bal 0x3489c | sym_mpi_print ();
0x0001b6a0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b6a4 lw a1, -0x4cb0(s6) | a1 = *((s6 - 4908));
0x0001b6a8 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001b6ac addiu a0, zero, 0xa | a0 = 0xa;
0x0001b6b0 jalr t9 | t9 ();
0x0001b6b4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b6b8 lw v0, (s1) | v0 = *(s1);
0x0001b6bc b 0x1b294 | goto label_5;
| label_32:
0x0001b6c0 move a0, s3 | a0 = s3;
0x0001b6c4 jalr t9 | t9 ();
0x0001b6c8 andi a3, v0, 0xff | a3 = v0 & 0xff;
0x0001b6cc lw gp, 0x20(sp) | gp = *(var_20h);
0x0001b6d0 b 0x1b590 |
| } while (1);
| label_33:
0x0001b6d4 sb zero, 0x31(s1) | *((s1 + 49)) = 0;
| label_20:
0x0001b8c8 lw a3, -0x7fdc(gp) | a3 = *(gp);
| /* str.secret */
0x0001b8cc addiu a3, a3, 0x5324 | a3 += 0x5324;
0x0001b8d0 b 0x1b180 | goto label_6;
| label_34:
0x0001b940 sltiu v0, fp, 3 | v0 = (fp < 3) ? 1 : 0;
0x0001b944 move s4, fp | s4 = fp;
| if (v0 == 0) {
0x0001b948 bnel v0, zero, 0x1c148 | void (*0x1c148)() ();
| }
0x0001b94c xori v0, a3, 0xfe | v0 = a3 ^ 0xfe;
0x0001b950 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x0001b954 sb v0, 0x35(s1) | *((s1 + 53)) = v0;
0x0001b958 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001b95c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001b960 bnez v0, 0x1c108 | goto label_36;
| }
0x0001b964 lw a0, 0x2c(s3) | a0 = *((s3 + 11));
0x0001b968 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001b96c sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001b970 beqz v0, 0x1c108 | goto label_36;
| }
0x0001b974 nop |
0x0001b978 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001b97c lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001b980 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001b984 lw a1, 0x34(s3) | a1 = *((s3 + 13));
0x0001b988 sltu v0, a2, v0 | v0 = (a2 < v0) ? 1 : 0;
0x0001b98c addu v0, v0, a3 | v0 += a3;
0x0001b990 addiu a3, a0, 1 | a3 = a0 + 1;
0x0001b994 sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001b998 sw v0, 0x14(s3) | *((s3 + 5)) = v0;
0x0001b99c sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001b9a0 lbux a0, a0(a1) | __asm ("lbux a0, a0(a1)");
0x0001b9a4 sb a0, 0x34(s1) | *((s1 + 52)) = a0;
| label_10:
0x0001b9a8 lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001b9ac lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001b9b0 sltu a0, a1, v0 | a0 = (a1 < v0) ? 1 : 0;
| if (a0 == 0) {
0x0001b9b4 beql a0, zero, 0x1c124 | goto label_37;
| }
0x0001b9b8 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| /* str.secret_sub */
| label_22:
0x0001bb78 addiu a3, a3, 0x5310 | a3 += 0x5310;
0x0001bb7c b 0x1b180 | goto label_6;
| label_18:
0x0001bb80 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001bb84 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001bb88 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001bb8c addiu a2, zero, 0x1a | a2 = 0x1a;
0x0001bb90 addiu a1, zero, 1 | a1 = 1;
| /* str.:rfc1991_comment_packet:__ */
0x0001bb94 addiu a0, a0, 0x5380 | a0 += 0x5380;
0x0001bb98 jalr t9 | t9 ();
0x0001bb9c lw gp, 0x20(sp) | gp = *(var_20h);
| if (s4 == 0) {
0x0001bba0 beqz s4, 0x1bf20 | goto label_38;
| }
0x0001bba4 lw s1, -0x7fdc(gp) | s1 = *(gp);
| /* esilref: '\x&x' */
0x0001bba8 addiu s1, s1, 0x53a0 | s1 += 0x53a0;
0x0001bbac b 0x1bbd0 |
| while (a1 != 0) {
0x0001bbb0 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001bbb4 move a1, a0 | a1 = a0;
0x0001bbb8 move a0, a3 | a0 = a3;
0x0001bbbc jalr t9 | t9 ();
0x0001bbc0 lw gp, 0x20(sp) | gp = *(var_20h);
| label_7:
0x0001bbc4 addiu s4, s4, -1 | s4 += -1;
| if (s4 == 0) {
0x0001bbc8 beql s4, zero, 0x1bf24 | goto label_39;
| }
0x0001bbcc lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001bbd0 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001bbd4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001bbd8 bnez v0, 0x1bdb0 | goto label_40;
| }
0x0001bbdc lw a0, 0x2c(s3) | a0 = *((s3 + 11));
0x0001bbe0 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001bbe4 sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001bbe8 beqz v0, 0x1bdb0 | goto label_40;
| }
0x0001bbec nop |
0x0001bbf0 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001bbf4 lw a2, 0x14(s3) | a2 = *((s3 + 5));
0x0001bbf8 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001bbfc sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001bc00 lw a3, 0x34(s3) | a3 = *((s3 + 13));
0x0001bc04 addu v0, v0, a2 | v0 += a2;
0x0001bc08 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001bc0c sw a1, 0x10(s3) | *((s3 + 4)) = a1;
0x0001bc10 sw v0, 0x14(s3) | *((s3 + 5)) = v0;
0x0001bc14 sw a2, 0x2c(s3) | *((s3 + 11)) = a2;
0x0001bc18 lbux a3, a0(a3) | __asm ("lbux a3, a0(a3)");
| label_8:
0x0001bc1c addiu a1, a3, -0x20 | a1 = a3 + -0x20;
0x0001bc20 sltiu a1, a1, 0x5b | a1 = (a1 < 0x5b) ? 1 : 0;
0x0001bc24 lw a0, -0x4cb0(s0) | a0 = *((s0 - 4908));
0x0001bc28 bnez a1, 0x1bbb0 |
| }
0x0001bc2c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001bc30 move a2, s1 | a2 = s1;
0x0001bc34 addiu a1, zero, 1 | a1 = 1;
0x0001bc38 jalr t9 | t9 ();
0x0001bc3c lw gp, 0x20(sp) | gp = *(var_20h);
0x0001bc40 b 0x1bbc4 | goto label_7;
| label_40:
0x0001bdb0 move a0, s3 | a0 = s3;
0x0001bdb4 jalr t9 | t9 ();
0x0001bdb8 andi a3, v0, 0xff | a3 = v0 & 0xff;
0x0001bdbc lw gp, 0x20(sp) | gp = *(var_20h);
0x0001bdc0 b 0x1bc1c | goto label_8;
| label_21:
0x0001bed0 lw a3, -0x7fdc(gp) | a3 = *(gp);
| /* str.public_sub */
0x0001bed4 addiu a3, a3, 0x5304 | a3 += 0x5304;
0x0001bed8 b 0x1b180 | goto label_6;
| label_38:
0x0001bf20 lw a0, -0x7fdc(gp) | a0 = *(gp);
| label_39:
0x0001bf24 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001bf28 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001bf2c addiu a2, zero, 2 | a2 = 2;
0x0001bf30 addiu a1, zero, 1 | a1 = 1;
| /* esilref: '"
' */
0x0001bf34 addiu a0, a0, 0x539c | a0 += 0x539c;
0x0001bf38 jalr t9 | t9 ();
0x0001bf3c move s4, zero | s4 = 0;
0x0001bf40 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001bf44 b 0x1b09c | goto label_9;
| label_35:
0x0001c024 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c028 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c02c lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001c030 addiu v0, zero, 1 | v0 = 1;
0x0001c034 addiu a1, zero, 1 | a1 = 1;
0x0001c038 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str._tprotect_algo:__d___hash_algo:__d__n */
0x0001c03c addiu a2, a2, 0x5504 | a2 += 0x5504;
0x0001c040 jalr t9 | t9 ();
0x0001c044 move s4, fp | s4 = fp;
0x0001c048 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001c04c lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001c050 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001c054 move v0, zero | v0 = 0;
0x0001c058 b 0x1ba98 | void (*0x1ba98)() ();
| label_11:
0x0001c0ec lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_36:
0x0001c108 move a0, s3 | a0 = s3;
0x0001c10c jalr t9 | t9 ();
0x0001c110 lw a0, 0x20(s3) | a0 = *((s3 + 8));
0x0001c114 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001c118 sb v0, 0x34(s1) | *((s1 + 52)) = v0;
| if (a0 == 0) {
0x0001c11c beqz a0, 0x1b9a8 | goto label_10;
| }
0x0001c120 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_37:
0x0001c124 move a0, s3 | a0 = s3;
0x0001c128 jalr t9 | t9 ();
0x0001c12c lw a0, 0x20(s3) | a0 = *((s3 + 8));
0x0001c130 andi a1, v0, 0xff | a1 = v0 & 0xff;
0x0001c134 lw gp, 0x20(sp) | gp = *(var_20h);
0x0001c138 sw a1, 0x38(s1) | *((s1 + 14)) = a1;
| if (a0 != 0) {
0x0001c13c bnez a0, 0x1c0ec | goto label_11;
| }
0x0001c140 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001c144 b 0x1b9ec | return void (*0x1b9ec)() ();
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1b9bc */
| #include <stdint.h>
|
; (fcn) fcn.0001b9bc () | void fcn_0001b9bc () {
| label_23:
0x0001b370 move s4, zero | s4 = 0;
| label_2:
0x0001b374 move s0, zero | s0 = 0;
0x0001b378 b 0x1b398 |
| while (1) {
| label_3:
0x0001b398 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| label_15:
0x0001b39c move a2, zero | a2 = 0;
0x0001b3a0 move a1, s4 | a1 = s4;
0x0001b3a4 move a0, s3 | a0 = s3;
0x0001b3a8 jalr t9 | t9 ();
0x0001b3ac lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001b3b0 lw v0, 0x2c(sp) | v0 = *(arg_2ch);
0x0001b3b4 lw a0, 0x64(sp) | a0 = *(arg_64h);
0x0001b3b8 lw v1, (v0) | v1 = *(v0);
0x0001b3bc move v0, s0 | v0 = s0;
| if (a0 != v1) {
0x0001b3c0 bne a0, v1, 0x1c5ec | goto label_40;
| }
0x0001b3c4 lw ra, 0x8c(sp) | ra = *(arg_8ch);
0x0001b3c8 lw fp, 0x88(sp) | fp = *(arg_88h);
0x0001b3cc lw s7, 0x84(sp) | s7 = *(arg_84h);
0x0001b3d0 lw s6, 0x80(sp) | s6 = *(arg_80h);
0x0001b3d4 lw s5, 0x7c(sp) | s5 = *(arg_7ch);
0x0001b3d8 lw s4, 0x78(sp) | s4 = *(arg_78h);
0x0001b3dc lw s3, 0x74(sp) | s3 = *(arg_74h);
0x0001b3e0 lw s2, 0x70(sp) | s2 = *(arg_70h);
0x0001b3e4 lw s1, 0x6c(sp) | s1 = *(arg_6ch);
0x0001b3e8 lw s0, 0x68(sp) | s0 = *(arg_68h);
0x0001b3ec addiu sp, sp, 0x90 |
0x0001b3f0 jr ra | return v0;
| label_19:
0x0001b5ec sltu v0, fp, a0 | v0 = (fp < a0) ? 1 : 0;
0x0001b5f0 move s4, fp | s4 = fp;
0x0001b5f4 sb a0, 0x4c(s1) | *((s1 + 76)) = a0;
| if (v0 == 0) {
0x0001b5f8 beqz v0, 0x1bc44 | goto label_41;
| }
| label_20:
0x0001b5fc addiu s0, zero, 0xe | s0 = 0xe;
0x0001b600 b 0x1b398 |
| }
| label_4:
0x0001b6d8 lw v0, 0x38(s1) | v0 = *((s1 + 14));
0x0001b6dc addiu v0, v0, -0x3e9 | v0 += -0x3e9;
0x0001b6e0 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x0001b6e4 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 != 0) {
0x0001b6e8 bnez v0, 0x1bedc | goto label_42;
| }
0x0001b6ec lw v0, 0x40(sp) | v0 = *(arg_40h);
0x0001b6f0 lbu v0, 0x31(s1) | v0 = *((s1 + 49));
| if (v0 == 0) {
0x0001b6f4 bnel v0, zero, 0x1b8d4 | goto label_43;
| }
0x0001b6f8 lw v0, 0x34(sp) | v0 = *(arg_34h);
0x0001b6fc slt v0, s2, v0 | v0 = (s2 < v0) ? 1 : 0;
0x0001b700 move s4, fp | s4 = fp;
| if (v0 == 0) {
0x0001b704 beqz v0, 0x1b8ec | goto label_44;
| }
0x0001b708 lbu v0, 0x31(s1) | v0 = *((s1 + 49));
0x0001b70c lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
| label_1:
0x0001b710 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001b714 sw v1, 0x3c(sp) | *(arg_3ch) = v1;
0x0001b718 lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
0x0001b71c addiu s5, s2, 0x18 | s5 = s2 + 0x18;
0x0001b720 sw v1, 0x44(sp) | *(arg_44h) = v1;
0x0001b724 addiu v1, a0, 0x543c | v1 = a0 + 0x543c;
0x0001b728 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001b72c sw v1, 0x40(sp) | *(arg_40h) = v1;
0x0001b730 addiu v1, a0, 0x5560 | v1 = a0 + 0x5560;
0x0001b734 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001b738 sll s5, s5, 2 | s5 <<= 2;
0x0001b73c sw v1, 0x48(sp) | *(arg_48h) = v1;
0x0001b740 addiu v1, a0, 0x5598 | v1 = a0 + 0x5598;
0x0001b744 addu s5, s1, s5 | s5 = s1 + s5;
0x0001b748 move s4, fp | s4 = fp;
0x0001b74c move s0, zero | s0 = 0;
0x0001b750 sw v1, 0x4c(sp) | *(arg_4ch) = v1;
| label_8:
0x0001b754 lw t9, -0x7bbc(gp) | t9 = sym.mpi_read;
| if (v0 == 0) {
0x0001b758 beqz v0, 0x1bcd4 | goto label_45;
| }
0x0001b75c sltiu v0, s4, 2 | v0 = (s4 < 2) ? 1 : 0;
0x0001b760 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 != 0) {
0x0001b764 bnez v0, 0x1c05c | goto label_46;
| }
0x0001b768 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001b76c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001b770 bnez v0, 0x1bd80 | goto label_47;
| }
0x0001b774 lw a2, 0x2c(s3) | a2 = *((s3 + 11));
0x0001b778 lw a0, 0x30(s3) | a0 = *((s3 + 12));
0x0001b77c sltu v0, a2, a0 | v0 = (a2 < a0) ? 1 : 0;
0x0001b780 addiu s6, s4, -1 | s6 = s4 + -1;
| if (v0 == 0) {
0x0001b784 beqz v0, 0x1bd80 | goto label_47;
| }
0x0001b788 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001b78c lw a1, 0x14(s3) | a1 = *((s3 + 5));
0x0001b790 addiu a3, v0, 1 | a3 = v0 + 1;
0x0001b794 lw fp, 0x34(s3) | fp = *((s3 + 13));
0x0001b798 sltu v0, a3, v0 | v0 = (a3 < v0) ? 1 : 0;
0x0001b79c addu v0, v0, a1 | v0 += a1;
0x0001b7a0 addiu a1, a2, 1 | a1 = a2 + 1;
0x0001b7a4 sw a3, 0x10(s3) | *((s3 + 4)) = a3;
0x0001b7a8 sw v0, 0x14(s3) | *((s3 + 5)) = v0;
0x0001b7ac sw a1, 0x2c(s3) | *((s3 + 11)) = a1;
0x0001b7b0 lbux v0, a2(fp) | __asm ("lbux v0, a2(fp)");
0x0001b7b4 sll fp, v0, 8 | fp = v0 << 8;
| label_9:
0x0001b7b8 sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001b7bc lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (a0 == 0) {
0x0001b7c0 beqz a0, 0x1bdc8 | goto label_48;
| }
0x0001b7c4 lw a0, 0x10(s3) | a0 = *((s3 + 4));
0x0001b7c8 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001b7cc addiu a2, a0, 1 | a2 = a0 + 1;
0x0001b7d0 sltu a0, a2, a0 | a0 = (a2 < a0) ? 1 : 0;
0x0001b7d4 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001b7d8 addu a0, a0, a3 | a0 += a3;
0x0001b7dc addiu a3, a1, 1 | a3 = a1 + 1;
0x0001b7e0 sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001b7e4 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001b7e8 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001b7ec lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_10:
0x0001b7f0 or s6, v0, fp | s6 = v0 | fp;
0x0001b7f4 sltiu v0, s6, 0x4001 | v0 = (s6 < 0x4001) ? 1 : 0;
0x0001b7f8 addiu s4, s4, -2 | s4 += -2;
| if (v0 == 0) {
0x0001b7fc beqz v0, 0x1bdf8 | goto label_49;
| }
0x0001b800 addiu a1, s6, 7 | a1 = s6 + 7;
0x0001b804 srl a1, a1, 3 | a1 >>= 3;
0x0001b808 addiu a3, a1, 2 | a3 = a1 + 2;
0x0001b80c lw t9, -0x7f28(gp) | t9 = sym.xmalloc;
0x0001b810 sw a1, 0x30(sp) | *(arg_30h) = a1;
0x0001b814 move a0, a3 | a0 = a3;
0x0001b818 sw a3, 0x38(sp) | *(arg_38h) = a3;
0x0001b81c jalr t9 | t9 ();
0x0001b820 move fp, v0 | fp = v0;
0x0001b824 lw a1, 0x30(sp) | a1 = *(arg_30h);
0x0001b828 srl v0, s6, 8 | v0 = s6 >> 8;
0x0001b82c lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001b830 sb v0, (fp) | *(fp) = v0;
0x0001b834 addiu s7, fp, 2 | s7 = fp + 2;
0x0001b838 sb s6, 1(fp) | *(arg_1h) = s6;
| if (a1 == 0) {
0x0001b83c beqz a1, 0x1be48 | goto label_50;
| }
0x0001b840 lw a3, 0x38(sp) | a3 = *(arg_38h);
| if (s4 == 0) {
0x0001b844 beqz s4, 0x1be80 | goto label_51;
| }
0x0001b848 addu s6, fp, a3 | s6 = fp + a3;
0x0001b84c b 0x1b890 |
| while (a0 == 0) {
0x0001b850 lw t1, 0x14(s3) | t1 = *((s3 + 5));
0x0001b854 addiu a3, a0, 1 | a3 = a0 + 1;
0x0001b858 sltu a0, a3, a0 | a0 = (a3 < a0) ? 1 : 0;
0x0001b85c lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001b860 addu a0, a0, t1 | a0 += t1;
0x0001b864 addiu t1, a1, 1 | t1 = a1 + 1;
0x0001b868 sw a3, 0x10(s3) | *((s3 + 4)) = a3;
0x0001b86c sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001b870 sw t1, 0x2c(s3) | *((s3 + 11)) = t1;
0x0001b874 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_0:
0x0001b878 addiu s7, s7, 1 | s7++;
0x0001b87c addiu s4, s4, -1 | s4 += -1;
0x0001b880 sb v0, -1(s7) | *((s7 - 1)) = v0;
| if (s7 == s6) {
0x0001b884 beq s7, s6, 0x1be4c | goto label_52;
| }
0x0001b888 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| if (s4 == 0) {
0x0001b88c beqz s4, 0x1be84 | goto label_53;
| }
0x0001b890 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001b894 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001b898 bnez v0, 0x1b8b4 | goto label_54;
| }
0x0001b89c lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001b8a0 lw a0, 0x30(s3) | a0 = *((s3 + 12));
0x0001b8a4 sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001b8a8 lw a0, 0x10(s3) | a0 = *((s3 + 4));
0x0001b8ac bnel a0, zero, 0x1b850 |
| }
0x0001b8b0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_54:
0x0001b8b4 move a0, s3 | a0 = s3;
0x0001b8b8 jalr t9 | t9 ();
0x0001b8bc andi v0, v0, 0xff | v0 &= 0xff;
0x0001b8c0 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001b8c4 b 0x1b878 | goto label_0;
| label_43:
0x0001b8d4 lw v1, 0x34(sp) | v1 = *(arg_34h);
| if (v0 != 0) {
0x0001b8d8 bnez v0, 0x1c070 | goto label_55;
| }
0x0001b8dc slt a0, s2, v1 | a0 = (s2 < v1) ? 1 : 0;
0x0001b8e0 lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
| if (a0 != 0) {
0x0001b8e4 bnez a0, 0x1b710 | goto label_1;
| }
0x0001b8e8 move s4, fp | s4 = fp;
| label_44:
0x0001b8ec lw t9, -0x7bd4(gp) | t9 = *(gp);
| label_16:
0x0001b8f0 addiu t9, t9, -0x5474 | t9 += -0x5474;
0x0001b8f4 move a0, s3 | a0 = s3;
0x0001b8f8 bal 0x1ab8c | fcn_0001ab8c ();
0x0001b8fc lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001b900 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001b904 sh v0, 0x78(s1) | *((s1 + 60)) = v0;
0x0001b908 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001b90c addiu s4, s4, -2 | s4 += -2;
| if (a0 == 0) {
0x0001b910 beqz a0, 0x1b374 | goto label_2;
| }
0x0001b914 lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0001b918 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001b91c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001b920 lw a0, -0x4cb0(a0) | a0 = *((a0 - 4908));
0x0001b924 move a3, v0 | a3 = v0;
0x0001b928 addiu a2, a2, 0x5578 | a2 += 0x5578;
0x0001b92c addiu a1, zero, 1 | a1 = 1;
0x0001b930 jalr t9 | t9 ();
0x0001b934 move s0, zero | s0 = 0;
0x0001b938 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001b93c b 0x1b398 | goto label_3;
0x0001b9bc lw a0, 0x10(s3) | a0 = *((s3 + 4));
0x0001b9c0 lw t1, 0x14(s3) | t1 = *((s3 + 5));
0x0001b9c4 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001b9c8 lw a3, 0x34(s3) | a3 = *((s3 + 13));
0x0001b9cc sltu a0, a2, a0 | a0 = (a2 < a0) ? 1 : 0;
0x0001b9d0 addu a0, a0, t1 | a0 += t1;
0x0001b9d4 addiu t1, a1, 1 | t1 = a1 + 1;
0x0001b9d8 sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001b9dc sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001b9e0 sw t1, 0x2c(s3) | *((s3 + 11)) = t1;
0x0001b9e4 lbux a1, a1(a3) | __asm ("lbux a1, a1(a3)");
0x0001b9e8 sw a1, 0x38(s1) | *((s1 + 14)) = a1;
0x0001b9ec lw a2, 0x2c(s3) | a2 = *((s3 + 11));
0x0001b9f0 sltu v0, a2, v0 | v0 = (a2 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001b9f4 beql v0, zero, 0x1c0f0 | goto label_56;
| }
0x0001b9f8 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001b9fc lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001ba00 lw t1, 0x14(s3) | t1 = *((s3 + 5));
0x0001ba04 addiu a3, v0, 1 | a3 = v0 + 1;
0x0001ba08 sltu a0, a3, v0 | a0 = (a3 < v0) ? 1 : 0;
0x0001ba0c lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001ba10 addu a0, a0, t1 | a0 += t1;
0x0001ba14 addiu t1, a2, 1 | t1 = a2 + 1;
0x0001ba18 sw a3, 0x10(s3) | *((s3 + 4)) = a3;
0x0001ba1c sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001ba20 sw t1, 0x2c(s3) | *((s3 + 11)) = t1;
0x0001ba24 lbux v0, a2(v0) | __asm ("lbux v0, a2(v0)");
| label_24:
0x0001ba28 sb v0, 0x3c(s1) | *((s1 + 60)) = v0;
0x0001ba2c lw v0, 0x40(sp) | v0 = *(arg_40h);
0x0001ba30 addiu fp, s4, -4 | fp = s4 + -4;
| if (v0 != 0) {
0x0001ba34 beqz v0, 0x1ba44 |
0x0001ba38 addiu v0, zero, 0x65 | v0 = 0x65;
| if (a1 == v0) {
0x0001ba3c beq a1, v0, 0x1c210 | goto label_57;
| }
0x0001ba40 nop |
| }
0x0001ba44 addiu v0, zero, 1 | v0 = 1;
0x0001ba48 addiu v0, zero, 3 | v0 = 3;
| if (a1 == v0) {
0x0001ba4c beq a1, v0, 0x1c150 | goto label_58;
| }
| if (a1 == v0) {
0x0001ba50 beq a1, v0, 0x1c150 | goto label_58;
| }
0x0001ba54 nop |
| label_26:
0x0001ba58 lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001ba5c addiu v0, zero, 3 | v0 = 3;
0x0001ba60 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
| if (a1 == v0) {
0x0001ba64 beq a1, v0, 0x1c464 | goto label_59;
| }
0x0001ba68 slti v0, a1, 4 | v0 = (a1 < 4) ? 1 : 0;
0x0001ba6c addiu v0, zero, 0x3e9 | v0 = 0x3e9;
| if (v0 == 0) {
0x0001ba70 beqz v0, 0x1bf60 | goto label_60;
| }
0x0001ba74 addiu v0, zero, 1 | v0 = 1;
| if (a1 == 0) {
0x0001ba78 beqz a1, 0x1c490 | goto label_61;
| }
| if (a1 != v0) {
0x0001ba7c bne a1, v0, 0x1c4c0 | goto label_62;
| }
0x0001ba80 nop |
0x0001ba84 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
| if (a0 != 0) {
0x0001ba88 bnez a0, 0x1c598 | goto label_63;
| }
0x0001ba8c lbu a0, 0x34(s1) | a0 = *((s1 + 52));
| label_29:
0x0001ba90 move s4, fp | s4 = fp;
0x0001ba94 move v0, zero | v0 = 0;
| label_18:
0x0001ba98 addiu a0, a0, -7 | a0 += -7;
0x0001ba9c sltiu a0, a0, 4 | a0 = (a0 < 4) ? 1 : 0;
0x0001baa0 addiu a2, zero, 0x10 | a2 = 0x10;
0x0001baa4 addiu t1, zero, 8 | t1 = 8;
| if (a0 == 0) {
0x0001baa8 movn t1, a2, a0 | t1 = a2;
| }
0x0001baac addiu a3, zero, 0x3e9 | a3 = 0x3e9;
0x0001bab0 move a0, t1 | a0 = t1;
| if (a1 != a3) {
0x0001bab4 bne a1, a3, 0x1bfe8 | goto label_64;
| }
0x0001bab8 sb zero, 0x4c(s1) | *((s1 + 76)) = 0;
0x0001babc move fp, s4 | fp = s4;
0x0001bac0 addiu s6, sp, 0x54 | s6 = sp + 0x54;
| label_5:
0x0001bac4 lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001bac8 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001bacc lw t9, -0x7818(gp) | t9 = sym.imp.memcpy;
| if (v0 == 0) {
0x0001bad0 beqz v0, 0x1bb60 | goto label_65;
| }
0x0001bad4 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
0x0001bad8 lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001badc addiu v0, zero, 0x3ea | v0 = 0x3ea;
0x0001bae0 lw a0, -0x4cb0(s0) | a0 = *((s0 - 4908));
| if (a1 == v0) {
0x0001bae4 beq a1, v0, 0x1c204 | goto label_66;
| }
0x0001bae8 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001baec addiu a2, a2, 0x5370 | a2 += 0x5370;
| label_27:
0x0001baf0 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001baf4 addiu a1, zero, 1 | a1 = 1;
0x0001baf8 jalr t9 | t9 ();
0x0001bafc lbu v0, 0x4c(s1) | v0 = *((s1 + 76));
0x0001bb00 lw gp, 0x20(sp) | gp = *(arg_20h);
| if (v0 == 0) {
0x0001bb04 beqz v0, 0x1bb48 | goto label_67;
| }
0x0001bb08 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x0001bb0c move s7, s6 | s7 = s6;
0x0001bb10 move s4, zero | s4 = 0;
0x0001bb14 addiu s5, s5, 0x52fc | s5 += 0x52fc;
| do {
0x0001bb18 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001bb1c lbu a3, (s7) | a3 = *(s7);
0x0001bb20 lw a0, -0x4cb0(s0) | a0 = *((s0 - 4908));
0x0001bb24 move a2, s5 | a2 = s5;
0x0001bb28 addiu a1, zero, 1 | a1 = 1;
0x0001bb2c jalr t9 | t9 ();
0x0001bb30 lbu v0, 0x4c(s1) | v0 = *((s1 + 76));
0x0001bb34 addiu s4, s4, 1 | s4++;
0x0001bb38 slt v0, s4, v0 | v0 = (s4 < v0) ? 1 : 0;
0x0001bb3c lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bb40 addiu s7, s7, 1 | s7++;
0x0001bb44 bnez v0, 0x1bb18 |
| } while (v0 != 0);
| label_67:
0x0001bb48 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001bb4c lw a1, -0x4cb0(s0) | a1 = *((s0 - 4908));
0x0001bb50 addiu a0, zero, 0xa | a0 = 0xa;
0x0001bb54 jalr t9 | t9 ();
0x0001bb58 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bb5c lw t9, -0x7818(gp) | t9 = sym.imp.memcpy;
| label_65:
0x0001bb60 lbu a2, 0x4c(s1) | a2 = *((s1 + 76));
0x0001bb64 move a1, s6 | a1 = s6;
0x0001bb68 addiu a0, s1, 0x4d | a0 = s1 + 0x4d;
0x0001bb6c jalr t9 | t9 ();
0x0001bb70 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bb74 b 0x1b6d8 | goto label_4;
| label_41:
0x0001bc44 addiu s6, sp, 0x54 | s6 = sp + 0x54;
0x0001bc48 move s0, s6 | s0 = s6;
0x0001bc4c move fp, s4 | fp = s4;
0x0001bc50 b 0x1bc9c | goto label_21;
| label_6:
0x0001bc54 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001bc58 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001bc5c sltu a0, a2, a0 | a0 = (a2 < a0) ? 1 : 0;
0x0001bc60 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001bc64 addu a0, a0, a3 | a0 += a3;
0x0001bc68 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001bc6c sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001bc70 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001bc74 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001bc78 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_7:
0x0001bc7c addiu fp, fp, -1 | fp += -1;
0x0001bc80 lbu a1, 0x4c(s1) | a1 = *((s1 + 76));
0x0001bc84 subu a0, s4, fp | __asm ("subu a0, s4, fp");
0x0001bc88 slt a0, a0, a1 | a0 = (a0 < a1) ? 1 : 0;
0x0001bc8c sb v0, (s0) | *(s0) = v0;
| if (a0 == 0) {
0x0001bc90 beqz a0, 0x1bac4 | goto label_5;
| }
0x0001bc94 addiu s0, s0, 1 | s0++;
| if (fp == 0) {
0x0001bc98 beqz fp, 0x1c01c | goto label_68;
| }
| label_21:
0x0001bc9c lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001bca0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001bca4 bnez v0, 0x1bcc0 | goto label_69;
| }
0x0001bca8 lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001bcac lw a0, 0x30(s3) | a0 = *((s3 + 12));
0x0001bcb0 sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001bcb4 lw a0, 0x10(s3) | a0 = *((s3 + 4));
| if (a0 == 0) {
0x0001bcb8 bnel a0, zero, 0x1bc54 | goto label_6;
| }
0x0001bcbc lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_69:
0x0001bcc0 move a0, s3 | a0 = s3;
0x0001bcc4 jalr t9 | t9 ();
0x0001bcc8 andi v0, v0, 0xff | v0 &= 0xff;
0x0001bccc lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bcd0 b 0x1bc7c | goto label_7;
| label_45:
0x0001bcd4 addiu a1, sp, 0x50 | a1 = sp + 0x50;
0x0001bcd8 move a0, s3 | a0 = s3;
0x0001bcdc sw s4, 0x50(sp) | *(arg_50h) = s4;
0x0001bce0 move a2, zero | a2 = 0;
0x0001bce4 bal 0x34570 | sym_mpi_read ();
0x0001bce8 lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001bcec lw a1, 0x50(sp) | a1 = *(arg_50h);
0x0001bcf0 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bcf4 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001bcf8 sw v0, (s5) | *(s5) = v0;
0x0001bcfc subu s4, s4, a1 | __asm ("subu s4, s4, a1");
0x0001bd00 bnez a0, 0x1bd28 |
| while (1) {
| label_12:
0x0001bd04 addiu a0, zero, 0xe | a0 = 0xe;
| if (v0 != 0) {
| label_13:
0x0001bd08 movz s0, a0, v0 | s0 = a0;
| }
| label_11:
0x0001bd0c lw v0, 0x34(sp) | v0 = *(arg_34h);
0x0001bd10 addiu s2, s2, 1 | s2++;
0x0001bd14 slt v0, s2, v0 | v0 = (s2 < v0) ? 1 : 0;
0x0001bd18 addiu s5, s5, 4 | s5 += 4;
| if (v0 == 0) {
0x0001bd1c beqz v0, 0x1bec0 | goto label_70;
| }
0x0001bd20 lbu v0, 0x31(s1) | v0 = *((s1 + 49));
0x0001bd24 b 0x1b754 | goto label_8;
0x0001bd28 lw s6, 0x3c(sp) | s6 = *(arg_3ch);
0x0001bd2c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001bd30 lw a2, 0x40(sp) | a2 = *(arg_40h);
0x0001bd34 lw a0, -0x4cb0(s6) | a0 = *((s6 - 4908));
0x0001bd38 move a3, s2 | a3 = s2;
0x0001bd3c addiu a1, zero, 1 | a1 = 1;
0x0001bd40 jalr t9 | t9 ();
0x0001bd44 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bd48 lw v0, 0x44(sp) | v0 = *(arg_44h);
0x0001bd4c lw a1, (s5) | a1 = *(s5);
0x0001bd50 lw t9, -0x7bb4(gp) | t9 = sym.mpi_print;
0x0001bd54 lw a2, -0x4ca8(v0) | a2 = *((v0 - 4906));
0x0001bd58 lw a0, -0x4cb0(s6) | a0 = *((s6 - 4908));
0x0001bd5c bal 0x3489c | sym_mpi_print ();
0x0001bd60 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bd64 lw a1, -0x4cb0(s6) | a1 = *((s6 - 4908));
0x0001bd68 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001bd6c addiu a0, zero, 0xa | a0 = 0xa;
0x0001bd70 jalr t9 | t9 ();
0x0001bd74 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bd78 lw v0, (s5) | v0 = *(s5);
0x0001bd7c b 0x1bd04 |
| }
| label_47:
0x0001bd80 move a0, s3 | a0 = s3;
0x0001bd84 jalr t9 | t9 ();
0x0001bd88 addiu a0, zero, -1 | a0 = -1;
0x0001bd8c lw gp, 0x20(sp) | gp = *(arg_20h);
| if (v0 == a0) {
0x0001bd90 beq v0, a0, 0x1bf48 | goto label_71;
| }
0x0001bd94 lw a0, 0x20(s3) | a0 = *((s3 + 8));
0x0001bd98 addiu s6, s4, -1 | s6 = s4 + -1;
0x0001bd9c sll fp, v0, 8 | fp = v0 << 8;
| if (a0 == 0) {
0x0001bda0 bnez a0, 0x1bdc4 |
0x0001bda4 lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001bda8 lw a0, 0x30(s3) | a0 = *((s3 + 12));
0x0001bdac b 0x1b7b8 | goto label_9;
| }
0x0001bdc4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_48:
0x0001bdc8 move a0, s3 | a0 = s3;
0x0001bdcc jalr t9 | t9 ();
0x0001bdd0 addiu a0, zero, -1 | a0 = -1;
0x0001bdd4 lw gp, 0x20(sp) | gp = *(arg_20h);
| if (v0 != a0) {
0x0001bdd8 bne v0, a0, 0x1b7f0 | goto label_10;
| }
0x0001bddc lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001bde0 sw zero, (s5) | *(s5) = 0;
0x0001bde4 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001bde8 move s4, s6 | s4 = s6;
| if (v0 != 0) {
0x0001bdec bnez v0, 0x1be20 | goto label_17;
| }
| do {
0x0001bdf0 addiu s0, zero, 0xe | s0 = 0xe;
0x0001bdf4 b 0x1bd0c | goto label_11;
| label_49:
0x0001bdf8 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001bdfc lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001be00 move a1, s6 | a1 = s6;
0x0001be04 addiu a0, a0, 0x7fb0 | a0 += 0x7fb0;
0x0001be08 bal 0x38550 | sym_g10_log_error ();
0x0001be0c lw gp, 0x20(sp) | gp = *(arg_20h);
| label_22:
0x0001be10 lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001be14 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001be18 sw zero, (s5) | *(s5) = 0;
0x0001be1c beqz v0, 0x1bdf0 |
| } while (v0 == 0);
| label_17:
0x0001be20 lw v0, 0x3c(sp) | v0 = *(arg_3ch);
| label_14:
0x0001be24 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001be28 lw a2, 0x48(sp) | a2 = *(arg_48h);
0x0001be2c lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001be30 move a3, s2 | a3 = s2;
0x0001be34 addiu a1, zero, 1 | a1 = 1;
0x0001be38 jalr t9 | t9 ();
0x0001be3c lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001be40 lw v0, (s5) | v0 = *(s5);
0x0001be44 b 0x1bd04 | goto label_12;
| label_50:
0x0001be48 move s6, s7 | s6 = s7;
| label_52:
0x0001be4c lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001be50 move a0, zero | a0 = 0;
0x0001be54 subu a2, s6, fp | __asm ("subu a2, s6, fp");
0x0001be58 move a1, fp | a1 = fp;
0x0001be5c bal 0x37be4 | sym_mpi_set_opaque ();
0x0001be60 lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001be64 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001be68 sw v0, (s5) | *(s5) = v0;
0x0001be6c lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001be70 addiu a0, zero, 0xe | a0 = 0xe;
| if (a0 == 0) {
0x0001be74 beqz a0, 0x1bd08 | goto label_13;
| }
0x0001be78 lw v0, 0x3c(sp) | v0 = *(arg_3ch);
0x0001be7c b 0x1be24 | goto label_14;
| label_51:
0x0001be80 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| label_53:
0x0001be84 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x0001be88 move s4, zero | s4 = 0;
0x0001be8c bal 0x38550 | sym_g10_log_error ();
0x0001be90 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001be94 lw t9, -0x7f24(gp) | t9 = sym.xfree;
0x0001be98 move a0, fp | a0 = fp;
0x0001be9c jalr t9 | t9 ();
0x0001bea0 lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001bea4 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bea8 sw zero, (s5) | *(s5) = 0;
0x0001beac lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001beb0 lw v0, 0x3c(sp) | v0 = *(arg_3ch);
| if (v0 != 0) {
0x0001beb4 bnez v0, 0x1be24 | goto label_14;
| }
0x0001beb8 addiu s0, zero, 0xe | s0 = 0xe;
0x0001bebc b 0x1bd0c | goto label_11;
| label_70:
0x0001bec0 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| if (s0 == 0) {
0x0001bec4 bnel s0, zero, 0x1b39c | goto label_15;
| }
0x0001bec8 lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001becc b 0x1b8f0 | goto label_16;
| label_42:
0x0001bedc lw t9, -0x7e4c(gp) | t9 = sym.xstrdup;
| /* str.dummydata */
0x0001bee0 addiu a0, a0, 0x5528 | a0 += 0x5528;
0x0001bee4 jalr t9 | t9 ();
0x0001bee8 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001beec addiu s2, s2, 0x18 | s2 += 0x18;
0x0001bef0 sll s2, s2, 2 | s2 <<= 2;
0x0001bef4 lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001bef8 addiu a2, zero, 0xa | a2 = 0xa;
0x0001befc move a1, v0 | a1 = v0;
0x0001bf00 move a0, zero | a0 = 0;
0x0001bf04 addu s1, s1, s2 | s1 += s2;
0x0001bf08 bal 0x37be4 | sym_mpi_set_opaque ();
0x0001bf0c move s4, zero | s4 = 0;
0x0001bf10 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001bf14 sw v0, (s1) | *(s1) = v0;
0x0001bf18 move s0, zero | s0 = 0;
0x0001bf1c b 0x1b398 | goto label_3;
| label_71:
0x0001bf48 lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001bf4c lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001bf50 sw zero, (s5) | *(s5) = 0;
| if (v0 != 0) {
0x0001bf54 bnez v0, 0x1be20 | goto label_17;
| }
0x0001bf58 addiu s0, zero, 0xe | s0 = 0xe;
0x0001bf5c b 0x1bd0c | goto label_11;
| label_60:
0x0001bf60 addiu v0, zero, 0x3ea | v0 = 0x3ea;
| if (a1 == v0) {
0x0001bf64 beq a1, v0, 0x1c2d4 | goto label_72;
| }
| if (a1 != v0) {
0x0001bf68 bne a1, v0, 0x1c4c0 | goto label_62;
| }
0x0001bf6c nop |
0x0001bf70 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
| if (a0 != 0) {
0x0001bf74 bnez a0, 0x1c5bc | goto label_73;
| }
| label_36:
0x0001bf78 move s4, zero | s4 = 0;
| if (fp == 0) {
0x0001bf7c beqz fp, 0x1c508 | goto label_74;
| }
0x0001bf80 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001bf84 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001bf88 bnez v0, 0x1c560 | goto label_75;
| }
0x0001bf8c lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001bf90 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001bf94 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001bf98 beqz v0, 0x1c560 | goto label_75;
| }
0x0001bf9c nop |
0x0001bfa0 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001bfa4 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001bfa8 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001bfac sltu a0, a2, v0 | a0 = (a2 < v0) ? 1 : 0;
0x0001bfb0 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001bfb4 addu a0, a0, a3 | a0 += a3;
0x0001bfb8 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001bfbc sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001bfc0 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001bfc4 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001bfc8 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_37:
0x0001bfcc addiu s4, fp, -1 | s4 = fp + -1;
0x0001bfd0 sltu a0, s4, v0 | a0 = (s4 < v0) ? 1 : 0;
0x0001bfd4 addiu s0, zero, 0xe | s0 = 0xe;
| if (a0 != 0) {
0x0001bfd8 bnez a0, 0x1b398 | goto label_3;
| }
0x0001bfdc lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001bfe0 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001bfe4 b 0x1ba98 | goto label_18;
| label_64:
0x0001bfe8 addiu a3, zero, 0x3ea | a3 = 0x3ea;
0x0001bfec move fp, s4 | fp = s4;
| if (a1 != a3) {
0x0001bff0 bne a1, a3, 0x1b5ec | goto label_19;
| }
0x0001bff4 sltiu a0, v0, 0x11 | a0 = (v0 < 0x11) ? 1 : 0;
| if (a0 == 0) {
0x0001bff8 movn a2, v0, a0 | a2 = v0;
| }
0x0001bffc sltu a0, s4, a2 | a0 = (s4 < a2) ? 1 : 0;
0x0001c000 sb a2, 0x4c(s1) | *((s1 + 76)) = a2;
| if (a0 != 0) {
0x0001c004 bnez a0, 0x1b5fc | goto label_20;
| }
0x0001c008 addiu s6, sp, 0x54 | s6 = sp + 0x54;
| if (v0 == 0) {
0x0001c00c beqz v0, 0x1bac4 | goto label_5;
| }
0x0001c010 move s0, s6 | s0 = s6;
| if (s4 != 0) {
0x0001c014 bnez s4, 0x1bc9c | goto label_21;
| }
0x0001c018 addiu s6, sp, 0x54 | s6 = sp + 0x54;
| label_68:
0x0001c01c move fp, zero | fp = 0;
0x0001c020 b 0x1bac4 | goto label_5;
| label_46:
0x0001c05c lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001c060 addiu a0, a0, 0x5550 | a0 += 0x5550;
0x0001c064 bal 0x38550 | sym_g10_log_error ();
0x0001c068 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c06c b 0x1be10 | goto label_22;
| label_55:
0x0001c070 lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001c074 move a1, fp | a1 = fp;
| /* fcn.0001ae5c */
0x0001c078 addiu t9, t9, -0x51a4 | t9 += -0x51a4;
0x0001c07c move a0, s3 | a0 = s3;
0x0001c080 bal 0x1ae5c | fcn_0001ae5c ();
0x0001c084 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c088 move a0, zero | a0 = 0;
0x0001c08c move a2, fp | a2 = fp;
0x0001c090 lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001c094 move a1, v0 | a1 = v0;
0x0001c098 bal 0x37be4 | sym_mpi_set_opaque ();
0x0001c09c lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001c0a0 addiu a0, s2, 0x18 | a0 = s2 + 0x18;
0x0001c0a4 sll a0, a0, 2 | a0 <<= 2;
0x0001c0a8 addu s1, s1, a0 | s1 += a0;
0x0001c0ac lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001c0b0 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c0b4 sw v0, (s1) | *(s1) = v0;
| if (a0 == 0) {
0x0001c0b8 beqz a0, 0x1b370 | goto label_23;
| }
0x0001c0bc lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001c0c0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c0c4 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c0c8 lw a3, -0x4cb0(v0) | a3 = *((v0 - 4908));
0x0001c0cc addiu a2, zero, 0x19 | a2 = 0x19;
0x0001c0d0 addiu a1, zero, 1 | a1 = 1;
0x0001c0d4 addiu a0, a0, 0x5534 | a0 += 0x5534;
0x0001c0d8 jalr t9 | t9 ();
0x0001c0dc move s4, zero | s4 = 0;
0x0001c0e0 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c0e4 move s0, zero | s0 = 0;
0x0001c0e8 b 0x1b398 | goto label_3;
| label_56:
0x0001c0f0 move a0, s3 | a0 = s3;
0x0001c0f4 jalr t9 | t9 ();
0x0001c0f8 andi v0, v0, 0xff | v0 &= 0xff;
0x0001c0fc lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c100 lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001c104 b 0x1ba28 | goto label_24;
| label_33:
0x0001c148 addiu s0, zero, 0xe | s0 = 0xe;
0x0001c14c b 0x1b398 | goto label_3;
| label_58:
0x0001c150 addiu s6, sp, 0x54 | s6 = sp + 0x54;
| if (fp == 0) {
0x0001c154 beqz fp, 0x1c1d8 | goto label_76;
| }
0x0001c158 move s0, s6 | s0 = s6;
0x0001c15c addiu s4, s4, -0xc | s4 += -0xc;
0x0001c160 b 0x1c1a0 |
| while (v0 == 0) {
0x0001c164 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001c168 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001c16c sltu a0, a2, v0 | a0 = (a2 < v0) ? 1 : 0;
0x0001c170 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001c174 addu a0, a0, a3 | a0 += a3;
0x0001c178 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001c17c sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001c180 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001c184 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001c188 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_25:
0x0001c18c addiu fp, fp, -1 | fp += -1;
0x0001c190 sb v0, (s0) | *(s0) = v0;
| if (s4 == fp) {
0x0001c194 beq s4, fp, 0x1c1dc | goto label_77;
| }
0x0001c198 addiu s0, s0, 1 | s0++;
| if (fp == 0) {
0x0001c19c beqz fp, 0x1c1d8 | goto label_76;
| }
0x0001c1a0 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001c1a4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001c1a8 bnez v0, 0x1c1c4 | goto label_78;
| }
0x0001c1ac lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001c1b0 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001c1b4 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001c1b8 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001c1bc bnel v0, zero, 0x1c164 |
| }
0x0001c1c0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_78:
0x0001c1c4 move a0, s3 | a0 = s3;
0x0001c1c8 jalr t9 | t9 ();
0x0001c1cc andi v0, v0, 0xff | v0 &= 0xff;
0x0001c1d0 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c1d4 b 0x1c18c | goto label_25;
| label_76:
0x0001c1d8 move s4, zero | s4 = 0;
| label_77:
0x0001c1dc lw a1, 0x54(sp) | a1 = *(arg_54h);
0x0001c1e0 addiu v0, s1, 0x3d | v0 = s1 + 0x3d;
0x0001c1e4 swl a1, 0x40(s1) | __asm ("swl a1, 0x40(s1)");
0x0001c1e8 lw a0, 4(s6) | a0 = *((s6 + 1));
0x0001c1ec swr a1, (v0) | __asm ("swr a1, (v0)");
0x0001c1f0 swl a0, 7(v0) | __asm ("swl a0, 7(v0)");
0x0001c1f4 swr a0, 4(v0) | __asm ("swr a0, 4(v0)");
0x0001c1f8 lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001c1fc move fp, s4 | fp = s4;
0x0001c200 b 0x1ba58 | goto label_26;
| label_66:
0x0001c204 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c208 addiu a2, a2, 0x535c | a2 += 0x535c;
0x0001c20c b 0x1baf0 | goto label_27;
| label_57:
0x0001c210 addiu s4, s4, -8 | s4 += -8;
| if (fp == 0) {
0x0001c214 beqz fp, 0x1c280 | goto label_79;
| }
0x0001c218 addiu s6, sp, 0x54 | s6 = sp + 0x54;
0x0001c21c move s0, s6 | s0 = s6;
| do {
0x0001c220 lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001c224 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001c228 bnez v0, 0x1c2c0 | goto label_80;
| }
0x0001c22c lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001c230 lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001c234 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001c238 beqz v0, 0x1c2c0 | goto label_80;
| }
0x0001c23c nop |
0x0001c240 lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001c244 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001c248 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001c24c sltu a0, a2, v0 | a0 = (a2 < v0) ? 1 : 0;
0x0001c250 lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001c254 addu a0, a0, a3 | a0 += a3;
0x0001c258 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001c25c sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001c260 sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001c264 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001c268 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_28:
0x0001c26c addiu fp, fp, -1 | fp += -1;
0x0001c270 sb v0, (s0) | *(s0) = v0;
| if (s4 == fp) {
0x0001c274 beq s4, fp, 0x1c510 | goto label_81;
| }
0x0001c278 addiu s0, s0, 1 | s0++;
0x0001c27c bnez fp, 0x1c220 |
| } while (fp != 0);
| label_79:
0x0001c280 move s4, zero | s4 = 0;
0x0001c284 lw v0, 0x28(sp) | v0 = *(arg_28h);
| label_34:
0x0001c288 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
| if (v0 == 0) {
0x0001c28c beql v0, zero, 0x1b398 | goto label_3;
| }
0x0001c290 addiu s0, zero, 0xe | s0 = 0xe;
0x0001c294 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001c298 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c29c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c2a0 lw a3, 0x38(s1) | a3 = *((s1 + 14));
0x0001c2a4 lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001c2a8 addiu a2, a2, 0x5448 | a2 += 0x5448;
0x0001c2ac addiu a1, zero, 1 | a1 = 1;
0x0001c2b0 jalr t9 | t9 ();
0x0001c2b4 addiu s0, zero, 0xe | s0 = 0xe;
0x0001c2b8 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c2bc b 0x1b398 | goto label_3;
| label_80:
0x0001c2c0 move a0, s3 | a0 = s3;
0x0001c2c4 jalr t9 | t9 ();
0x0001c2c8 andi v0, v0, 0xff | v0 &= 0xff;
0x0001c2cc lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c2d0 b 0x1c26c | goto label_28;
| if (a0 == 0) {
| label_72:
0x0001c2d4 beql a0, zero, 0x1ba90 | goto label_29;
| }
0x0001c2d8 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001c2dc lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
0x0001c2e0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c2e4 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c2e8 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c2ec addiu a2, zero, 0xe | a2 = 0xe;
0x0001c2f0 addiu a1, zero, 1 | a1 = 1;
0x0001c2f4 addiu a0, a0, 0x5484 | a0 += 0x5484;
0x0001c2f8 jalr t9 | t9 ();
0x0001c2fc lw gp, 0x20(sp) | gp = *(arg_20h);
| label_32:
0x0001c300 lw v0, 0x28(sp) | v0 = *(arg_28h);
0x0001c304 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
| if (v0 == 0) {
0x0001c308 beql v0, zero, 0x1c378 | goto label_82;
| }
0x0001c30c lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001c310 lbu v0, 0x35(s1) | v0 = *((s1 + 53));
0x0001c314 lw a0, -0x4cb0(s0) | a0 = *((s0 - 4908));
0x0001c318 lbu a3, 0x34(s1) | a3 = *((s1 + 52));
| if (v0 != 0) {
0x0001c31c bnez v0, 0x1c3fc | goto label_83;
| }
0x0001c320 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0001c324 addiu v0, v0, 0x5348 | v0 += 0x5348;
| do {
0x0001c328 lbu a1, 0x3c(s1) | a1 = *((s1 + 60));
0x0001c32c lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c330 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c334 sw a1, 0x14(sp) | *(arg_14h) = a1;
0x0001c338 sw v0, 0x10(sp) | *(arg_10h) = v0;
0x0001c33c addiu a2, a2, 0x54c0 | a2 += 0x54c0;
0x0001c340 addiu a1, zero, 1 | a1 = 1;
0x0001c344 jalr t9 | t9 ();
0x0001c348 lw v0, 0x38(s1) | v0 = *((s1 + 14));
0x0001c34c addiu a0, zero, -3 | a0 = -3;
0x0001c350 and v0, v0, a0 | v0 &= a0;
0x0001c354 addiu a0, zero, 1 | a0 = 1;
0x0001c358 lw gp, 0x20(sp) | gp = *(arg_20h);
| if (v0 == a0) {
0x0001c35c beq v0, a0, 0x1c408 | goto label_84;
| }
0x0001c360 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| label_30:
0x0001c364 lw a1, -0x4cb0(s0) | a1 = *((s0 - 4908));
0x0001c368 addiu a0, zero, 0xa | a0 = 0xa;
0x0001c36c jalr t9 | t9 ();
0x0001c370 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c374 lw a1, 0x38(s1) | a1 = *((s1 + 14));
| label_82:
0x0001c378 addiu v0, zero, 3 | v0 = 3;
0x0001c37c addiu v0, zero, 0x3ea | v0 = 0x3ea;
| if (a1 != v0) {
0x0001c380 bne a1, v0, 0x1c550 | goto label_85;
| }
| label_31:
0x0001c384 move s4, zero | s4 = 0;
| if (fp == 0) {
0x0001c388 beqz fp, 0x1c508 | goto label_74;
| }
0x0001c38c lw v0, 0x20(s3) | v0 = *((s3 + 8));
0x0001c390 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001c394 bnez v0, 0x1c540 | goto label_86;
| }
0x0001c398 lw a1, 0x2c(s3) | a1 = *((s3 + 11));
0x0001c39c lw v0, 0x30(s3) | v0 = *((s3 + 12));
0x0001c3a0 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001c3a4 beqz v0, 0x1c540 | goto label_86;
| }
0x0001c3a8 nop |
0x0001c3ac lw v0, 0x10(s3) | v0 = *((s3 + 4));
0x0001c3b0 lw a3, 0x14(s3) | a3 = *((s3 + 5));
0x0001c3b4 addiu a2, v0, 1 | a2 = v0 + 1;
0x0001c3b8 sltu a0, a2, v0 | a0 = (a2 < v0) ? 1 : 0;
0x0001c3bc lw v0, 0x34(s3) | v0 = *((s3 + 13));
0x0001c3c0 addu a0, a0, a3 | a0 += a3;
0x0001c3c4 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001c3c8 sw a2, 0x10(s3) | *((s3 + 4)) = a2;
0x0001c3cc sw a0, 0x14(s3) | *((s3 + 5)) = a0;
0x0001c3d0 sw a3, 0x2c(s3) | *((s3 + 11)) = a3;
0x0001c3d4 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_35:
0x0001c3d8 lw v1, 0x28(sp) | v1 = *(arg_28h);
0x0001c3dc sw v0, 0x48(s1) | *((s1 + 18)) = v0;
0x0001c3e0 lw a0, -0x4cac(v1) | a0 = *((v1 - 4907));
0x0001c3e4 addiu s4, fp, -1 | s4 = fp + -1;
| if (a0 != 0) {
0x0001c3e8 bnez a0, 0x1c570 | goto label_87;
| }
| label_38:
0x0001c3ec lw a1, 0x38(s1) | a1 = *((s1 + 14));
0x0001c3f0 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001c3f4 move v0, zero | v0 = 0;
0x0001c3f8 b 0x1ba98 | goto label_18;
| label_83:
0x0001c3fc lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0001c400 addiu v0, v0, 0x5334 | v0 += 0x5334;
0x0001c404 b 0x1c328 |
| } while (1);
| label_84:
0x0001c408 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c40c lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c410 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c414 addiu a2, zero, 8 | a2 = 8;
0x0001c418 addiu a1, zero, 1 | a1 = 1;
0x0001c41c addiu a0, a0, 0x54d8 | a0 += 0x54d8;
0x0001c420 jalr t9 | t9 ();
0x0001c424 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c428 addiu s4, s1, 0x3d | s4 = s1 + 0x3d;
0x0001c42c addiu s6, s1, 0x45 | s6 = s1 + 0x45;
0x0001c430 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x0001c434 addiu s5, s5, 0x54e4 | s5 += 0x54e4;
| do {
0x0001c438 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c43c lbu a3, (s4) | a3 = *(s4);
0x0001c440 lw a0, -0x4cb0(s0) | a0 = *((s0 - 4908));
0x0001c444 move a2, s5 | a2 = s5;
0x0001c448 addiu a1, zero, 1 | a1 = 1;
0x0001c44c addiu s4, s4, 1 | s4++;
0x0001c450 jalr t9 | t9 ();
0x0001c454 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c458 bne s6, s4, 0x1c438 |
| } while (s6 != s4);
0x0001c45c lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001c460 b 0x1c364 | goto label_30;
| label_59:
0x0001c464 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
| if (a0 == 0) {
0x0001c468 beqz a0, 0x1c384 | goto label_31;
| }
0x0001c46c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c470 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c474 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c478 addiu a2, zero, 0xe | a2 = 0xe;
0x0001c47c addiu a1, zero, 1 | a1 = 1;
0x0001c480 addiu a0, a0, 0x5474 | a0 += 0x5474;
0x0001c484 jalr t9 | t9 ();
0x0001c488 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c48c b 0x1c300 | goto label_32;
| if (a0 == 0) {
| label_61:
0x0001c490 beql a0, zero, 0x1ba90 | goto label_29;
| }
0x0001c494 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001c498 lw s0, -0x7fb4(gp) | s0 = *((gp - 8173));
0x0001c49c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c4a0 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c4a4 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c4a8 addiu a2, zero, 0xb | a2 = 0xb;
0x0001c4ac addiu a1, zero, 1 | a1 = 1;
0x0001c4b0 addiu a0, a0, 0x545c | a0 += 0x545c;
0x0001c4b4 jalr t9 | t9 ();
0x0001c4b8 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c4bc b 0x1c300 | goto label_32;
| label_62:
0x0001c4c0 move s4, fp | s4 = fp;
| if (a0 == 0) {
0x0001c4c4 beqz a0, 0x1c148 | goto label_33;
| }
0x0001c4c8 lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0001c4cc slti v0, a1, 0x3e8 | v0 = (a1 < 0x3e8) ? 1 : 0;
0x0001c4d0 lw a0, -0x4cb0(a0) | a0 = *((a0 - 4908));
| if (v0 != 0) {
0x0001c4d4 bnez v0, 0x1c5e0 | goto label_88;
| }
0x0001c4d8 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x0001c4dc addiu a3, a3, 0x532c | a3 += 0x532c;
| label_39:
0x0001c4e0 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c4e4 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c4e8 sw a1, 0x10(sp) | *(arg_10h) = a1;
0x0001c4ec addiu a2, a2, 0x54ac | a2 += 0x54ac;
0x0001c4f0 addiu a1, zero, 1 | a1 = 1;
0x0001c4f4 jalr t9 | t9 ();
0x0001c4f8 move s4, fp | s4 = fp;
0x0001c4fc lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c500 addiu s0, zero, 0xe | s0 = 0xe;
0x0001c504 b 0x1b398 | goto label_3;
| label_74:
0x0001c508 addiu s0, zero, 0xe | s0 = 0xe;
0x0001c50c b 0x1b398 | goto label_3;
| label_81:
0x0001c510 lhu a0, 0x54(sp) | a0 = *(arg_54h);
0x0001c514 addiu v0, zero, 0x4e47 | v0 = 0x4e47;
0x0001c518 lw v0, 0x28(sp) | v0 = *(arg_28h);
| if (a0 != v0) {
0x0001c51c bne a0, v0, 0x1c288 | goto label_34;
| }
0x0001c520 lbu a0, 2(s6) | a0 = *((s6 + 2));
0x0001c524 addiu v0, zero, 0x55 | v0 = 0x55;
0x0001c528 lw v0, 0x28(sp) | v0 = *(arg_28h);
| if (a0 != v0) {
0x0001c52c bne a0, v0, 0x1c288 | goto label_34;
| }
0x0001c530 lbu a1, 0x57(sp) | a1 = *(arg_57h);
0x0001c534 addiu a1, a1, 0x3e8 | a1 += 0x3e8;
0x0001c538 sw a1, 0x38(s1) | *((s1 + 14)) = a1;
0x0001c53c b 0x1ba58 | goto label_26;
| label_86:
0x0001c540 move a0, s3 | a0 = s3;
0x0001c544 jalr t9 | t9 ();
0x0001c548 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c54c b 0x1c3d8 | goto label_35;
| if (a1 == v0) {
| label_85:
0x0001c550 beq a1, v0, 0x1bf78 | goto label_36;
| }
0x0001c554 nop |
0x0001c558 lbu a0, 0x34(s1) | a0 = *((s1 + 52));
0x0001c55c b 0x1ba90 | goto label_29;
| label_75:
0x0001c560 move a0, s3 | a0 = s3;
0x0001c564 jalr t9 | t9 ();
0x0001c568 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c56c b 0x1bfcc | goto label_37;
| label_87:
0x0001c570 lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0001c574 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001c578 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001c57c lw a0, -0x4cb0(a0) | a0 = *((a0 - 4908));
0x0001c580 move a3, v0 | a3 = v0;
| /* str._tprotect_count:__lu_n */
0x0001c584 addiu a2, a2, 0x54ec | a2 += 0x54ec;
0x0001c588 addiu a1, zero, 1 | a1 = 1;
0x0001c58c jalr t9 | t9 ();
0x0001c590 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c594 b 0x1c3ec | goto label_38;
| label_63:
0x0001c598 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c59c lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c5a0 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c5a4 addiu a2, zero, 0xb | a2 = 0xb;
0x0001c5a8 addiu a1, zero, 1 | a1 = 1;
0x0001c5ac addiu a0, a0, 0x5468 | a0 += 0x5468;
0x0001c5b0 jalr t9 | t9 ();
0x0001c5b4 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c5b8 b 0x1c300 | goto label_32;
| label_73:
0x0001c5bc lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001c5c0 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001c5c4 lw a3, -0x4cb0(s0) | a3 = *((s0 - 4908));
0x0001c5c8 addiu a2, zero, 0x17 | a2 = 0x17;
0x0001c5cc addiu a1, zero, 1 | a1 = 1;
0x0001c5d0 addiu a0, a0, 0x5494 | a0 += 0x5494;
0x0001c5d4 jalr t9 | t9 ();
0x0001c5d8 lw gp, 0x20(sp) | gp = *(arg_20h);
0x0001c5dc b 0x1c300 | goto label_32;
| label_88:
0x0001c5e0 lw a3, -0x7fdc(gp) | a3 = *(gp);
0x0001c5e4 addiu a3, a3, 0x4b84 | a3 += 0x4b84;
0x0001c5e8 b 0x1c4e0 | goto label_39;
| label_40:
0x0001c5ec lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x0001c5f0 jalr t9 | t9 ();
0x0001c5f4 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1e7d8 */
| #include <stdint.h>
|
; (fcn) fcn.0001e7d8 () | void fcn_0001e7d8 () {
0x0001e7d8 lui gp, 4 |
0x0001e7dc addiu gp, gp, 0x3958 |
0x0001e7e0 addu gp, gp, t9 | gp += t9;
0x0001e7e4 addiu sp, sp, -0xe0 |
0x0001e7e8 lw v0, 4(a1) | v0 = *((a1 + 1));
0x0001e7ec sw s2, 0xc0(sp) | *(var_c0h) = s2;
0x0001e7f0 lw s2, -0x781c(gp) | s2 = *((gp - 7687));
0x0001e7f4 sw s3, 0xc4(sp) | *(var_c4h) = s3;
0x0001e7f8 move s3, a1 | s3 = a1;
0x0001e7fc lw a1, 0xfc(sp) | a1 = *(arg_fch);
0x0001e800 sw s4, 0xc8(sp) | *(var_c8h) = s4;
0x0001e804 lw s4, 0xf0(sp) | s4 = *(arg_f0h);
0x0001e808 lw v1, (s2) | v1 = *(s2);
0x0001e80c sw a1, 0x34(sp) | *(var_34h) = a1;
0x0001e810 lw a1, 0x100(sp) | a1 = *(arg_100h);
0x0001e814 sw gp, 0x28(sp) | *(var_28h) = gp;
0x0001e818 sw s1, 0xbc(sp) | *(var_bch) = s1;
0x0001e81c sw ra, 0xdc(sp) | *(var_dch) = ra;
0x0001e820 sw fp, 0xd8(sp) | *(var_d8h) = fp;
0x0001e824 sw s7, 0xd4(sp) | *(var_d4h) = s7;
0x0001e828 sw s6, 0xd0(sp) | *(var_d0h) = s6;
0x0001e82c sw s5, 0xcc(sp) | *(var_cch) = s5;
0x0001e830 sw s0, 0xb8(sp) | *(var_b8h) = s0;
0x0001e834 sw a2, 0xe8(sp) | *(arg_e8h) = a2;
0x0001e838 lw s1, 0xf4(sp) | s1 = *(arg_f4h);
0x0001e83c sw a1, 0x38(sp) | *(var_38h) = a1;
0x0001e840 sw v1, 0xb4(sp) | *(var_b4h) = v1;
0x0001e844 sw zero, (s4) | *(s4) = 0;
| if (v0 != 0) {
0x0001e848 bnez v0, 0x2121c | goto label_35;
| }
0x0001e84c move s6, a0 | s6 = a0;
0x0001e850 move s0, a3 | s0 = a3;
| if (a3 != 0) {
0x0001e854 beqz a3, 0x1e870 |
0x0001e858 lw t9, -0x7b94(gp) | t9 = sym.iobuf_tell;
0x0001e85c jalr t9 | t9 ();
0x0001e860 nop |
0x0001e864 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001e868 sw v0, (s0) | *(s0) = v0;
0x0001e86c sw v1, 4(s0) | *((s0 + 1)) = v1;
| }
0x0001e870 lw v0, 0x20(s6) | v0 = *((s6 + 8));
0x0001e874 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001e878 bnez v0, 0x1e894 |
0x0001e87c lw a0, 0x2c(s6) | a0 = *((s6 + 11));
0x0001e880 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001e884 sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
0x0001e888 lw v0, 0x10(s6) | v0 = *((s6 + 4));
| if (v0 == 0) {
0x0001e88c bnel v0, zero, 0x1ea90 | goto label_36;
| }
0x0001e890 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| }
0x0001e894 move a0, s6 | a0 = s6;
0x0001e898 jalr t9 | t9 ();
0x0001e89c move s7, v0 | s7 = v0;
0x0001e8a0 addiu v0, zero, -1 | v0 = -1;
0x0001e8a4 lw gp, 0x28(sp) | gp = *(var_28h);
| if (s7 == v0) {
0x0001e8a8 beq s7, v0, 0x1e9a8 | goto label_1;
| }
0x0001e8ac andi v1, s7, 0xff | v1 = s7 & 0xff;
0x0001e8b0 andi v0, s7, 0x80 | v0 = s7 & 0x80;
0x0001e8b4 sb v1, 0x48(sp) | *(var_48h) = v1;
| if (v0 == 0) {
0x0001e8b8 beqz v0, 0x1eac8 | goto label_37;
| }
| label_0:
0x0001e8bc andi s5, s7, 0x40 | s5 = s7 & 0x40;
0x0001e8c0 lw v0, 0x20(s6) | v0 = *((s6 + 8));
| if (s5 == 0) {
0x0001e8c4 bnel s5, zero, 0x1e9e8 | goto label_38;
| }
0x0001e8c8 andi v0, s7, 3 | v0 = s7 & 3;
0x0001e8cc addiu v1, zero, 3 | v1 = 3;
0x0001e8d0 ext s0, s7, 2, 4 | __asm ("ext s0, s7, 2, 4");
| if (v0 == v1) {
0x0001e8d4 beq v0, v1, 0x1ec04 | goto label_39;
| }
0x0001e8d8 addiu v1, zero, 1 | v1 = 1;
0x0001e8dc sllv v0, v1, v0 | v0 = v1 << v0;
0x0001e8e0 addiu s7, sp, 0x48 | s7 = sp + 0x48;
0x0001e8e4 sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x0001e8e8 addu v0, v0, s7 | v0 += s7;
0x0001e8ec sw v0, 0x30(sp) | *(var_30h) = v0;
0x0001e8f0 move fp, zero | fp = 0;
0x0001e8f4 lw v0, 0x20(s6) | v0 = *((s6 + 8));
| do {
0x0001e8f8 sll fp, fp, 8 | fp <<= 8;
| if (v0 != 0) {
0x0001e8fc bnez v0, 0x1eaf0 | goto label_40;
| }
0x0001e900 lw a3, 0x2c(s6) | a3 = *((s6 + 11));
0x0001e904 lw a0, 0x30(s6) | a0 = *((s6 + 12));
0x0001e908 sltu a0, a3, a0 | a0 = (a3 < a0) ? 1 : 0;
0x0001e90c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (a0 == 0) {
0x0001e910 beqz a0, 0x1eaf4 | goto label_41;
| }
0x0001e914 lw a0, 0x10(s6) | a0 = *((s6 + 4));
0x0001e918 lw t1, 0x14(s6) | t1 = *((s6 + 5));
0x0001e91c addiu a1, a0, 1 | a1 = a0 + 1;
0x0001e920 sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001e924 lw v0, 0x34(s6) | v0 = *((s6 + 13));
0x0001e928 addu a0, a0, t1 | a0 += t1;
0x0001e92c addiu t1, a3, 1 | t1 = a3 + 1;
0x0001e930 sw a1, 0x10(s6) | *((s6 + 4)) = a1;
0x0001e934 sw a0, 0x14(s6) | *((s6 + 5)) = a0;
0x0001e938 sw t1, 0x2c(s6) | *((s6 + 11)) = t1;
0x0001e93c lbux v0, a3(v0) | __asm ("lbux v0, a3(v0)");
| label_2:
0x0001e940 sb v0, 1(s7) | *((s7 + 1)) = v0;
0x0001e944 or fp, v0, fp | fp = v0 | fp;
0x0001e948 lw v0, 0x30(sp) | v0 = *(var_30h);
0x0001e94c addiu s7, s7, 1 | s7++;
0x0001e950 lw v0, 0x20(s6) | v0 = *((s6 + 8));
0x0001e954 bnel v0, s7, 0x1e8f8 |
| } while (v0 == s7);
0x0001e958 lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x0001e95c addiu t1, v0, 1 | t1 = v0 + 1;
| do {
| label_3:
0x0001e960 addiu v0, zero, -1 | v0 = -1;
0x0001e964 move s7, zero | s7 = 0;
| if (fp == v0) {
0x0001e968 beq fp, v0, 0x21240 | goto label_42;
| }
| label_13:
0x0001e96c lw v1, 0xe8(sp) | v1 = *(arg_e8h);
| if (s1 == 0) {
0x0001e970 beqz s1, 0x1eb40 | goto label_43;
| }
0x0001e974 lw t9, -0x7f68(gp) | t9 = sym.iobuf_write;
| if (s0 != 0) {
0x0001e978 bnez s0, 0x1fc54 | goto label_44;
| }
| label_23:
0x0001e97c lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| label_5:
0x0001e980 move a2, s7 | a2 = s7;
| label_6:
0x0001e984 move a1, fp | a1 = fp;
0x0001e988 move a0, s6 | a0 = s6;
0x0001e98c jalr t9 | t9 ();
0x0001e990 addiu v0, zero, 1 | v0 = 1;
0x0001e994 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001e998 sw v0, (s4) | *(s4) = v0;
| label_8:
0x0001e99c lw s7, 0x3c(s6) | s7 = *((s6 + 15));
| label_7:
0x0001e9a0 addiu s7, zero, 0x20 | s7 = 0x20;
| if (s7 != 0) {
0x0001e9a4 bnel s7, zero, 0x1e9a8 |
| }
| label_1:
0x0001e9a8 lw a0, 0xb4(sp) | a0 = *(var_b4h);
0x0001e9ac lw v1, (s2) | v1 = *(s2);
0x0001e9b0 move v0, s7 | v0 = s7;
| if (a0 != v1) {
0x0001e9b4 bne a0, v1, 0x21210 | goto label_45;
| }
0x0001e9b8 lw ra, 0xdc(sp) | ra = *(var_dch);
0x0001e9bc lw fp, 0xd8(sp) | fp = *(var_d8h);
0x0001e9c0 lw s7, 0xd4(sp) | s7 = *(var_d4h);
0x0001e9c4 lw s6, 0xd0(sp) | s6 = *(var_d0h);
0x0001e9c8 lw s5, 0xcc(sp) | s5 = *(var_cch);
0x0001e9cc lw s4, 0xc8(sp) | s4 = *(var_c8h);
0x0001e9d0 lw s3, 0xc4(sp) | s3 = *(var_c4h);
0x0001e9d4 lw s2, 0xc0(sp) | s2 = *(var_c0h);
0x0001e9d8 lw s1, 0xbc(sp) | s1 = *(var_bch);
0x0001e9dc lw s0, 0xb8(sp) | s0 = *(var_b8h);
0x0001e9e0 addiu sp, sp, 0xe0 |
0x0001e9e4 jr ra | return v1;
| label_38:
0x0001e9e8 andi s0, s7, 0x3f | s0 = s7 & 0x3f;
| if (v0 == 0) {
0x0001e9ec bnez v0, 0x1ea04 |
0x0001e9f0 lw v1, 0x2c(s6) | v1 = *((s6 + 11));
0x0001e9f4 lw a0, 0x30(s6) | a0 = *((s6 + 12));
0x0001e9f8 sltu a0, v1, a0 | a0 = (v1 < a0) ? 1 : 0;
0x0001e9fc lw a0, 0x10(s6) | a0 = *((s6 + 4));
| if (a0 == 0) {
0x0001ea00 bnel a0, zero, 0x1eb14 | goto label_46;
| }
| }
0x0001ea04 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001ea08 move a0, s6 | a0 = s6;
0x0001ea0c jalr t9 | t9 ();
0x0001ea10 addiu v1, zero, -1 | v1 = -1;
0x0001ea14 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == v1) {
0x0001ea18 beq v0, v1, 0x1fd5c | goto label_47;
| }
| label_4:
0x0001ea1c addiu v1, zero, 8 | v1 = 8;
0x0001ea20 slti v1, v0, 0xc0 | v1 = (v0 < 0xc0) ? 1 : 0;
| if (s0 == v1) {
0x0001ea24 beq s0, v1, 0x1ed50 | goto label_48;
| }
0x0001ea28 sb v0, 0x49(sp) | *(var_49h) = v0;
| if (v1 != 0) {
0x0001ea2c bnez v1, 0x1eb08 | goto label_49;
| }
0x0001ea30 slti v1, v0, 0xe0 | v1 = (v0 < 0xe0) ? 1 : 0;
0x0001ea34 addiu v1, zero, 0xff | v1 = 0xff;
| if (v1 == 0) {
0x0001ea38 beqz v1, 0x1ee3c | goto label_50;
| }
0x0001ea3c lw v1, 0x20(s6) | v1 = *((s6 + 8));
0x0001ea40 addiu v0, v0, -0xc0 | v0 += -0xc0;
0x0001ea44 sll s7, v0, 8 | s7 = v0 << 8;
| if (v1 == 0) {
0x0001ea48 bnez v1, 0x1ea60 |
0x0001ea4c lw v1, 0x2c(s6) | v1 = *((s6 + 11));
0x0001ea50 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001ea54 sltu v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
0x0001ea58 lw v0, 0x10(s6) | v0 = *((s6 + 4));
| if (v0 == 0) {
0x0001ea5c bnel v0, zero, 0x1eeb0 | goto label_51;
| }
| }
0x0001ea60 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001ea64 move a0, s6 | a0 = s6;
0x0001ea68 jalr t9 | t9 ();
0x0001ea6c addiu v1, zero, -1 | v1 = -1;
0x0001ea70 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ea74 andi a0, v0, 0xff | a0 = v0 & 0xff;
| if (v0 == v1) {
0x0001ea78 beq v0, v1, 0x1fbac | goto label_52;
| }
| label_17:
0x0001ea7c addiu v1, s7, 0xc0 | v1 = s7 + 0xc0;
0x0001ea80 sb a0, 0x4a(sp) | *(var_4ah) = a0;
0x0001ea84 addu fp, v0, v1 | fp = v0 + v1;
0x0001ea88 addiu t1, zero, 3 | t1 = 3;
0x0001ea8c b 0x1e960 |
| } while (1);
| label_36:
0x0001ea90 lw a2, 0x14(s6) | a2 = *((s6 + 5));
0x0001ea94 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001ea98 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001ea9c lw v1, 0x34(s6) | v1 = *((s6 + 13));
0x0001eaa0 addu v0, v0, a2 | v0 += a2;
0x0001eaa4 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001eaa8 sw v0, 0x14(s6) | *((s6 + 5)) = v0;
0x0001eaac sw a1, 0x10(s6) | *((s6 + 4)) = a1;
0x0001eab0 sw a2, 0x2c(s6) | *((s6 + 11)) = a2;
0x0001eab4 lbux v1, a0(v1) | __asm ("lbux v1, a0(v1)");
0x0001eab8 move s7, v1 | s7 = v1;
0x0001eabc andi v0, s7, 0x80 | v0 = s7 & 0x80;
0x0001eac0 sb v1, 0x48(sp) | *(var_48h) = v1;
| if (v0 != 0) {
0x0001eac4 bnez v0, 0x1e8bc | goto label_0;
| }
| label_37:
0x0001eac8 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x0001eacc lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001ead0 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001ead4 move a2, s7 | a2 = s7;
| /* str._dont_know_ */
0x0001ead8 addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_invalid_packet__ctb_02x__n */
0x0001eadc addiu a0, a0, 0x5e44 | a0 += 0x5e44;
0x0001eae0 bal 0x38550 | sym_g10_log_error ();
0x0001eae4 addiu s7, zero, 0xe | s7 = 0xe;
0x0001eae8 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001eaec b 0x1e9a8 | goto label_1;
| label_40:
0x0001eaf0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_41:
0x0001eaf4 move a0, s6 | a0 = s6;
0x0001eaf8 jalr t9 | t9 ();
0x0001eafc andi v0, v0, 0xff | v0 &= 0xff;
0x0001eb00 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001eb04 b 0x1e940 | goto label_2;
| label_49:
0x0001eb08 move fp, v0 | fp = v0;
0x0001eb0c addiu t1, zero, 2 | t1 = 2;
0x0001eb10 b 0x1e960 | goto label_3;
| label_46:
0x0001eb14 lw a2, 0x14(s6) | a2 = *((s6 + 5));
0x0001eb18 addiu a1, a0, 1 | a1 = a0 + 1;
0x0001eb1c sltu a0, a1, a0 | a0 = (a1 < a0) ? 1 : 0;
0x0001eb20 lw v0, 0x34(s6) | v0 = *((s6 + 13));
0x0001eb24 addu a0, a0, a2 | a0 += a2;
0x0001eb28 addiu a2, v1, 1 | a2 = v1 + 1;
0x0001eb2c sw a1, 0x10(s6) | *((s6 + 4)) = a1;
0x0001eb30 sw a0, 0x14(s6) | *((s6 + 5)) = a0;
0x0001eb34 sw a2, 0x2c(s6) | *((s6 + 11)) = a2;
0x0001eb38 lbux v0, v1(v0) | __asm ("lbux v0, v1(v0)");
0x0001eb3c b 0x1ea1c | goto label_4;
| label_43:
0x0001eb40 addiu v0, zero, 2 | v0 = 2;
0x0001eb44 addiu v0, zero, 0xd | v0 = 0xd;
| if (v1 == v0) {
0x0001eb48 beq v1, v0, 0x1ecc8 | goto label_53;
| }
| label_10:
0x0001eb4c lw v0, 0xf8(sp) | v0 = *(arg_f8h);
0x0001eb50 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| if (v0 != 0) {
0x0001eb54 bnez v0, 0x1e980 | goto label_5;
| }
0x0001eb58 lw v0, 0xe8(sp) | v0 = *(arg_e8h);
| if (s0 == 0) {
0x0001eb5c beqz s0, 0x1e980 | goto label_5;
| }
0x0001eb60 lw v0, -0x7fc8(gp) | v0 = *(gp);
| if (v0 == 0) {
0x0001eb64 beqz v0, 0x1ec98 | goto label_54;
| }
0x0001eb68 addiu v0, zero, 0xe | v0 = 0xe;
0x0001eb6c addiu v0, zero, 6 | v0 = 6;
| if (s0 == v0) {
0x0001eb70 beq s0, v0, 0x1ee7c | goto label_55;
| }
0x0001eb74 addiu v0, zero, 7 | v0 = 7;
| if (s0 == v0) {
0x0001eb78 beq s0, v0, 0x1eea8 | goto label_56;
| }
0x0001eb7c addiu s1, zero, 7 | s1 = 7;
| if (s0 == v0) {
0x0001eb80 beq s0, v0, 0x1eb90 | goto label_57;
| }
0x0001eb84 addiu s1, zero, 5 | s1 = 5;
0x0001eb88 move a2, s7 | a2 = s7;
| if (s0 != s1) {
0x0001eb8c bne s0, s1, 0x1e984 | goto label_6;
| }
| label_57:
0x0001eb90 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001eb94 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001eb98 andi v0, v0, 1 | v0 &= 1;
| if (v0 != 0) {
0x0001eb9c bnez v0, 0x1ece0 | goto label_14;
| }
0x0001eba0 nop |
0x0001eba4 sw s1, (s3) | *(s3) = s1;
0x0001eba8 lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
0x0001ebac sw t1, 0x30(sp) | *(var_30h) = t1;
0x0001ebb0 addiu a0, zero, 0x7c | a0 = 0x7c;
| label_15:
0x0001ebb4 bal 0x3cbdc | sym_xmalloc_clear ();
0x0001ebb8 nop |
0x0001ebbc lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ebc0 lw t1, 0x30(sp) | t1 = *(var_30h);
0x0001ebc4 addiu a0, s3, 4 | a0 = s3 + 4;
0x0001ebc8 lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001ebcc sw v0, 4(s3) | *((s3 + 1)) = v0;
0x0001ebd0 move a3, t1 | a3 = t1;
0x0001ebd4 sw a0, 0x10(sp) | *(var_10h) = a0;
0x0001ebd8 move a2, fp | a2 = fp;
0x0001ebdc move a1, s0 | a1 = s0;
| /* fcn.0001af40 */
0x0001ebe0 addiu t9, t9, -0x50c0 | t9 += -0x50c0;
0x0001ebe4 move a0, s6 | a0 = s6;
0x0001ebe8 bal 0x1af40 | fcn_0001af40 ();
0x0001ebec lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ebf0 move s7, v0 | s7 = v0;
| if (s7 != 0) {
0x0001ebf4 bnez s7, 0x1e9a8 | goto label_1;
| }
0x0001ebf8 nop |
0x0001ebfc lw s7, 0x3c(s6) | s7 = *((s6 + 15));
0x0001ec00 b 0x1e9a0 | goto label_7;
| label_39:
0x0001ec04 addiu v0, zero, 9 | v0 = 9;
0x0001ec08 addiu v0, zero, 0xb | v0 = 0xb;
| if (s0 != v0) {
0x0001ec0c beq s0, v0, 0x1ec20 |
0x0001ec10 addiu v0, zero, 8 | v0 = 8;
| if (s0 == v0) {
0x0001ec14 beq s0, v0, 0x1ec20 | goto label_58;
| }
0x0001ec18 lw a1, -0x7fdc(gp) | a1 = *(gp);
| if (s0 != v0) {
0x0001ec1c bne s0, v0, 0x20180 | goto label_59;
| }
| }
| label_58:
0x0001ec20 lw v0, 0xf8(sp) | v0 = *(arg_f8h);
| if (s1 == 0) {
0x0001ec24 beqz s1, 0x1fc20 | goto label_60;
| }
| label_12:
0x0001ec28 lw t9, -0x7f68(gp) | t9 = sym.iobuf_write;
0x0001ec2c addiu a2, zero, 1 | a2 = 1;
0x0001ec30 addiu a1, sp, 0x48 | a1 = sp + 0x48;
0x0001ec34 move a0, s1 | a0 = s1;
0x0001ec38 jalr t9 | t9 ();
0x0001ec3c addiu v1, zero, -1 | v1 = -1;
0x0001ec40 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == v1) {
0x0001ec44 bne v0, v1, 0x1ec50 |
| label_20:
0x0001ec48 addiu s7, zero, 0x16 | s7 = 0x16;
0x0001ec4c b 0x1e9a8 | goto label_1;
| }
0x0001ec50 addiu s0, sp, 0x50 | s0 = sp + 0x50;
| label_21:
0x0001ec54 addiu s3, zero, -1 | s3 = -1;
| label_9:
0x0001ec58 lw t9, -0x7f64(gp) | t9 = sym.iobuf_read;
0x0001ec5c addiu a2, zero, 0x64 | a2 = 0x64;
0x0001ec60 move a1, s0 | a1 = s0;
0x0001ec64 move a0, s6 | a0 = s6;
0x0001ec68 jalr t9 | t9 ();
0x0001ec6c lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == s3) {
0x0001ec70 beq v0, s3, 0x1e99c | goto label_8;
| }
0x0001ec74 lw t9, -0x7f68(gp) | t9 = sym.iobuf_write;
0x0001ec78 move a2, v0 | a2 = v0;
0x0001ec7c move a1, s0 | a1 = s0;
0x0001ec80 move a0, s1 | a0 = s1;
0x0001ec84 jalr t9 | t9 ();
0x0001ec88 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == 0) {
0x0001ec8c beqz v0, 0x1ec58 | goto label_9;
| }
0x0001ec90 addiu s7, zero, 0x16 | s7 = 0x16;
0x0001ec94 b 0x1e9a8 | goto label_1;
| label_54:
0x0001ec98 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001ec9c andi v0, v0, 1 | v0 &= 1;
0x0001eca0 move s1, s0 | s1 = s0;
| if (v0 != 0) {
0x0001eca4 bnez v0, 0x1ece0 | goto label_14;
| }
| label_11:
0x0001eca8 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001ecac sll v0, s0, 2 | v0 = s0 << 2;
0x0001ecb0 addiu a0, a0, 0x6414 | a0 += 0x6414;
0x0001ecb4 sltu t0, zero, s5 | t0 = (0 < s5) ? 1 : 0;
0x0001ecb8 lwx v0, v0(a0) | __asm ("lwx v0, v0(a0)");
0x0001ecbc addu v0, v0, gp | v0 += gp;
0x0001ecc0 sw s1, (s3) | *(s3) = s1;
0x0001ecc4 jr v0 | v0 ();
| label_53:
0x0001ecc8 lw v0, -0x7fc8(gp) | v0 = *(gp);
| if (s0 != v0) {
0x0001eccc bne s0, v0, 0x1eb4c | goto label_10;
| }
0x0001ecd0 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001ecd4 andi v0, v0, 1 | v0 &= 1;
0x0001ecd8 addiu s1, zero, 0xd | s1 = 0xd;
| if (v0 == 0) {
0x0001ecdc beqz v0, 0x1f9f0 | goto label_61;
| }
| label_14:
0x0001ece0 lw a1, 0x54(s6) | a1 = *((s6 + 21));
| if (s5 == 0) {
0x0001ece4 beqz s5, 0x1ed44 | goto label_62;
| }
0x0001ece8 lw v0, -0x7fdc(gp) | v0 = *(gp);
| /* str.__new_ctb_ */
0x0001ecec addiu v0, v0, 0x5dfc | v0 += 0x5dfc;
| do {
| label_33:
0x0001ecf0 lw a0, 0x104(sp) | a0 = *(arg_104h);
0x0001ecf4 lw v1, 0x38(sp) | v1 = *(var_38h);
0x0001ecf8 sw a0, 0x1c(sp) | *(var_1ch) = a0;
0x0001ecfc sw v1, 0x18(sp) | *(var_18h) = v1;
0x0001ed00 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001ed04 lw v1, 0x34(sp) | v1 = *(var_34h);
0x0001ed08 lw t9, -0x7f5c(gp) | t9 = sym.g10_log_debug;
0x0001ed0c sw t1, 0x30(sp) | *(var_30h) = t1;
0x0001ed10 sw v1, 0x14(sp) | *(var_14h) = v1;
0x0001ed14 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0001ed18 move a3, fp | a3 = fp;
0x0001ed1c move a2, s0 | a2 = s0;
| /* str.parse_packet_iob_d_:_type_d_length_lu_s___s._s._d__n */
0x0001ed20 addiu a0, a0, 0x5f64 | a0 += 0x5f64;
0x0001ed24 bal 0x388a0 | sym_g10_log_debug ();
0x0001ed28 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ed2c lw t1, 0x30(sp) | t1 = *(var_30h);
0x0001ed30 b 0x1eca8 | goto label_11;
| label_19:
0x0001ed34 lw a1, 0x54(s6) | a1 = *((s6 + 21));
0x0001ed38 addiu s7, zero, 1 | s7 = 1;
0x0001ed3c move fp, zero | fp = 0;
0x0001ed40 addiu t1, zero, 1 | t1 = 1;
| label_62:
0x0001ed44 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0001ed48 addiu v0, v0, 0x4b84 | v0 += 0x4b84;
0x0001ed4c b 0x1ecf0 |
| } while (1);
| label_48:
0x0001ed50 lw t9, -0x7f70(gp) | t9 = sym.iobuf_set_partial_block_mode;
0x0001ed54 andi a1, v0, 0xff | a1 = v0 & 0xff;
0x0001ed58 move a0, s6 | a0 = s6;
0x0001ed5c jalr t9 | t9 ();
0x0001ed60 lw gp, 0x28(sp) | gp = *(var_28h);
| if (s1 != 0) {
0x0001ed64 bnez s1, 0x1ec28 | goto label_12;
| }
0x0001ed68 lw v0, 0xe8(sp) | v0 = *(arg_e8h);
0x0001ed6c lw v1, 0xf8(sp) | v1 = *(arg_f8h);
0x0001ed70 or v0, v0, v1 | v0 |= v1;
0x0001ed74 addiu s7, zero, 1 | s7 = 1;
| if (v0 != 0) {
0x0001ed78 bnez v0, 0x1fcf0 | goto label_63;
| }
0x0001ed7c lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001ed80 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001ed84 andi v0, v0, 1 | v0 &= 1;
0x0001ed88 addiu t0, zero, 1 | t0 = 1;
| if (v0 != 0) {
0x0001ed8c bnez v0, 0x20d60 | goto label_64;
| }
0x0001ed90 sw s0, (s3) | *(s3) = s0;
0x0001ed94 lw t9, -0x7f28(gp) | t9 = sym.xmalloc;
0x0001ed98 sw t0, 0x30(sp) | *(var_30h) = t0;
0x0001ed9c addiu a0, zero, 0xc | a0 = 0xc;
0x0001eda0 bal 0x3cb1c | sym_xmalloc ();
0x0001eda4 lw v1, 0x20(s6) | v1 = *((s6 + 8));
0x0001eda8 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001edac move s0, v0 | s0 = v0;
0x0001edb0 sw v0, 4(s3) | *((s3 + 1)) = v0;
0x0001edb4 lw t0, 0x30(sp) | t0 = *(var_30h);
| if (v1 != 0) {
0x0001edb8 bnez v1, 0x2013c | goto label_65;
| }
0x0001edbc lw v1, 0x2c(s6) | v1 = *((s6 + 11));
0x0001edc0 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001edc4 sltu v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
0x0001edc8 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001edcc beqz v0, 0x20140 | goto label_66;
| }
0x0001edd0 lw v0, 0x10(s6) | v0 = *((s6 + 4));
0x0001edd4 lw a1, 0x14(s6) | a1 = *((s6 + 5));
0x0001edd8 addiu a0, v0, 1 | a0 = v0 + 1;
0x0001eddc sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
0x0001ede0 lw a3, 0x34(s6) | a3 = *((s6 + 13));
0x0001ede4 addu v0, v0, a1 | v0 += a1;
0x0001ede8 addiu a1, v1, 1 | a1 = v1 + 1;
0x0001edec sw a0, 0x10(s6) | *((s6 + 4)) = a0;
0x0001edf0 sw v0, 0x14(s6) | *((s6 + 5)) = v0;
0x0001edf4 sw a1, 0x2c(s6) | *((s6 + 11)) = a1;
0x0001edf8 lbux a3, v1(a3) | __asm ("lbux a3, v1(a3)");
| label_32:
0x0001edfc lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001ee00 sb a3, 5(s0) | *((s0 + 5)) = a3;
0x0001ee04 sw zero, (s0) | *(s0) = 0;
0x0001ee08 lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
0x0001ee0c sb t0, 4(s0) | *((s0 + 4)) = t0;
0x0001ee10 sw s6, 8(s0) | *((s0 + 2)) = s6;
| if (v0 == 0) {
0x0001ee14 beqz v0, 0x1e99c | goto label_8;
| }
0x0001ee18 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001ee1c lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001ee20 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001ee24 lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
| /* str.:compressed_packet:_algo_d_n */
0x0001ee28 addiu a2, a2, 0x6288 | a2 += 0x6288;
0x0001ee2c addiu a1, zero, 1 | a1 = 1;
0x0001ee30 jalr t9 | t9 ();
0x0001ee34 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ee38 b 0x1e99c | goto label_8;
| label_50:
0x0001ee3c andi s7, s7, 0x3d | s7 &= 0x3d;
| if (v0 == v1) {
0x0001ee40 beq v0, v1, 0x1fd80 | goto label_67;
| }
0x0001ee44 addiu v1, zero, 9 | v1 = 9;
0x0001ee48 addiu v1, zero, 0x12 | v1 = 0x12;
| if (s7 != v1) {
0x0001ee4c beq s7, v1, 0x1ee58 |
0x0001ee50 lw a1, -0x7fdc(gp) | a1 = *(gp);
| if (s0 != v1) {
0x0001ee54 bne s0, v1, 0x207a0 | goto label_68;
| }
| }
0x0001ee58 lw t9, -0x7f70(gp) | t9 = sym.iobuf_set_partial_block_mode;
0x0001ee5c andi a1, v0, 0xff | a1 = v0 & 0xff;
0x0001ee60 move a0, s6 | a0 = s6;
0x0001ee64 jalr t9 | t9 ();
0x0001ee68 addiu s7, zero, 1 | s7 = 1;
0x0001ee6c lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ee70 addiu t1, zero, 2 | t1 = 2;
0x0001ee74 move fp, zero | fp = 0;
0x0001ee78 b 0x1e96c | goto label_13;
| label_55:
0x0001ee7c addiu s1, zero, 0xe | s1 = 0xe;
| label_16:
0x0001ee80 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001ee84 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001ee88 andi v0, v0, 1 | v0 &= 1;
| if (v0 != 0) {
0x0001ee8c bnez v0, 0x1ece0 | goto label_14;
| }
0x0001ee90 nop |
0x0001ee94 sw s1, (s3) | *(s3) = s1;
0x0001ee98 sw t1, 0x30(sp) | *(var_30h) = t1;
0x0001ee9c lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
0x0001eea0 addiu a0, zero, 0x80 | a0 = 0x80;
0x0001eea4 b 0x1ebb4 | goto label_15;
| label_56:
0x0001eea8 addiu s1, zero, 6 | s1 = 6;
0x0001eeac b 0x1ee80 | goto label_16;
| label_51:
0x0001eeb0 lw a2, 0x14(s6) | a2 = *((s6 + 5));
0x0001eeb4 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001eeb8 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001eebc lw a0, 0x34(s6) | a0 = *((s6 + 13));
0x0001eec0 addu v0, v0, a2 | v0 += a2;
0x0001eec4 addiu a2, v1, 1 | a2 = v1 + 1;
0x0001eec8 sw v0, 0x14(s6) | *((s6 + 5)) = v0;
0x0001eecc sw a1, 0x10(s6) | *((s6 + 4)) = a1;
0x0001eed0 sw a2, 0x2c(s6) | *((s6 + 11)) = a2;
0x0001eed4 lbux a0, v1(a0) | __asm ("lbux a0, v1(a0)");
0x0001eed8 move v0, a0 | v0 = a0;
0x0001eedc b 0x1ea7c | goto label_17;
| label_61:
0x0001f9f0 sw s0, (s3) | *(s3) = s0;
0x0001f9f4 sltiu v0, fp, 0x801 | v0 = (fp < 0x801) ? 1 : 0;
0x0001f9f8 lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
| if (v0 == 0) {
0x0001f9fc beqz v0, 0x2097c | goto label_69;
| }
0x0001fa00 addiu a0, fp, 0x50 | a0 = fp + 0x50;
0x0001fa04 bal 0x3cbdc | sym_xmalloc_clear ();
0x0001fa08 addiu a0, zero, 1 | a0 = 1;
0x0001fa0c lw gp, 0x28(sp) | gp = *(var_28h);
0x0001fa10 sw v0, 4(s3) | *((s3 + 1)) = v0;
0x0001fa14 addiu s4, v0, 0x4c | s4 = v0 + 0x4c;
0x0001fa18 sw fp, 4(v0) | *((v0 + 1)) = fp;
0x0001fa1c sw a0, (v0) | *(v0) = a0;
| if (fp == 0) {
0x0001fa20 beqz fp, 0x20074 | goto label_70;
| }
0x0001fa24 addiu s1, fp, 0x4c | s1 = fp + 0x4c;
0x0001fa28 addu s1, v0, s1 | s1 = v0 + s1;
0x0001fa2c move s0, s4 | s0 = s4;
0x0001fa30 b 0x1fa6c |
| while (v0 == 0) {
0x0001fa34 lw a3, 0x14(s6) | a3 = *((s6 + 5));
0x0001fa38 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001fa3c sltu a0, a2, a0 | a0 = (a2 < a0) ? 1 : 0;
0x0001fa40 lw v0, 0x34(s6) | v0 = *((s6 + 13));
0x0001fa44 addu a0, a0, a3 | a0 += a3;
0x0001fa48 addiu a3, a1, 1 | a3 = a1 + 1;
0x0001fa4c sw a2, 0x10(s6) | *((s6 + 4)) = a2;
0x0001fa50 sw a0, 0x14(s6) | *((s6 + 5)) = a0;
0x0001fa54 sw a3, 0x2c(s6) | *((s6 + 11)) = a3;
0x0001fa58 lbux v0, a1(v0) | __asm ("lbux v0, a1(v0)");
| label_18:
0x0001fa5c sb v0, (s0) | *(s0) = v0;
0x0001fa60 addiu s0, s0, 1 | s0++;
| if (s0 == s1) {
0x0001fa64 beql s0, s1, 0x20074 | goto label_70;
| }
0x0001fa68 addu s4, s4, fp | s4 += fp;
0x0001fa6c lw v0, 0x20(s6) | v0 = *((s6 + 8));
0x0001fa70 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001fa74 bnez v0, 0x1fa90 | goto label_71;
| }
0x0001fa78 lw a1, 0x2c(s6) | a1 = *((s6 + 11));
0x0001fa7c lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001fa80 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001fa84 lw a0, 0x10(s6) | a0 = *((s6 + 4));
0x0001fa88 bnel v0, zero, 0x1fa34 |
| }
0x0001fa8c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_71:
0x0001fa90 move a0, s6 | a0 = s6;
0x0001fa94 jalr t9 | t9 ();
0x0001fa98 andi v0, v0, 0xff | v0 &= 0xff;
0x0001fa9c lw gp, 0x28(sp) | gp = *(var_28h);
0x0001faa0 b 0x1fa5c | goto label_18;
| label_52:
0x0001fbac lw a1, -0x7fdc(gp) | a1 = *(gp);
0x0001fbb0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001fbb4 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str._dont_know_ */
0x0001fbb8 addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_2nd_length_byte_missing_n */
0x0001fbbc addiu a0, a0, 0x5e84 | a0 += 0x5e84;
0x0001fbc0 bal 0x38550 | sym_g10_log_error ();
0x0001fbc4 addiu s7, zero, 0xe | s7 = 0xe;
0x0001fbc8 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001fbcc b 0x1e9a8 | goto label_1;
| label_60:
0x0001fc20 lw v0, 0xe8(sp) | v0 = *(arg_e8h);
| if (v0 != 0) {
0x0001fc24 bnez v0, 0x1fcec | goto label_72;
| }
0x0001fc28 addiu s7, zero, 1 | s7 = 1;
| if (v0 != 0) {
0x0001fc2c bnez v0, 0x1fcf0 | goto label_63;
| }
0x0001fc30 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001fc34 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0001fc38 andi v0, v0, 1 | v0 &= 1;
0x0001fc3c move s1, s0 | s1 = s0;
| if (v0 != 0) {
0x0001fc40 bnez v0, 0x1ed34 | goto label_19;
| }
0x0001fc44 addiu s7, zero, 1 | s7 = 1;
0x0001fc48 addiu t1, zero, 1 | t1 = 1;
0x0001fc4c move fp, zero | fp = 0;
0x0001fc50 b 0x1eca8 | goto label_11;
| label_44:
0x0001fc54 move a0, s1 | a0 = s1;
0x0001fc58 move a2, t1 | a2 = t1;
0x0001fc5c addiu a1, sp, 0x48 | a1 = sp + 0x48;
0x0001fc60 jalr t9 | t9 ();
0x0001fc64 addiu a0, zero, -1 | a0 = -1;
0x0001fc68 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == a0) {
0x0001fc6c beq v0, a0, 0x1ec48 | goto label_20;
| }
0x0001fc70 addiu s0, sp, 0x50 | s0 = sp + 0x50;
| if (s7 == 0) {
0x0001fc74 bnel s7, zero, 0x1ec54 | goto label_21;
| }
0x0001fc78 addiu v0, zero, 8 | v0 = 8;
| if (fp == 0) {
0x0001fc7c beqz fp, 0x1fcf8 | goto label_73;
| }
0x0001fc80 addiu s0, sp, 0x50 | s0 = sp + 0x50;
0x0001fc84 addiu s5, zero, 0x64 | s5 = 0x64;
0x0001fc88 addiu s4, zero, -1 | s4 = -1;
0x0001fc8c b 0x1fcb8 | goto label_74;
| label_22:
0x0001fc90 lw t9, -0x7f68(gp) | t9 = sym.iobuf_write;
0x0001fc94 move a2, v0 | a2 = v0;
0x0001fc98 move a1, s0 | a1 = s0;
0x0001fc9c move a0, s1 | a0 = s1;
0x0001fca0 jalr t9 | t9 ();
0x0001fca4 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 != 0) {
0x0001fca8 bnez v0, 0x1ec48 | goto label_20;
| }
0x0001fcac subu fp, fp, s3 | __asm ("subu fp, fp, s3");
| if (fp == 0) {
0x0001fcb0 beql fp, zero, 0x1e9a0 | goto label_7;
| }
0x0001fcb4 lw s7, 0x3c(s6) | s7 = *((s6 + 15));
| label_74:
0x0001fcb8 sltiu a2, fp, 0x65 | a2 = (fp < 0x65) ? 1 : 0;
0x0001fcbc move v0, s5 | v0 = s5;
0x0001fcc0 lw t9, -0x7f64(gp) | t9 = sym.iobuf_read;
| if (a2 == 0) {
0x0001fcc4 movn v0, fp, a2 | v0 = fp;
| }
0x0001fcc8 move a2, v0 | a2 = v0;
0x0001fccc move a1, s0 | a1 = s0;
0x0001fcd0 move a0, s6 | a0 = s6;
0x0001fcd4 bal 0x3fc68 | sym_iobuf_read ();
0x0001fcd8 move s3, v0 | s3 = v0;
0x0001fcdc lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 != s4) {
0x0001fce0 bne v0, s4, 0x1fc90 | goto label_22;
| }
0x0001fce4 addiu s7, zero, 0x15 | s7 = 0x15;
0x0001fce8 b 0x1e9a8 | goto label_1;
| label_72:
0x0001fcec addiu s7, zero, 1 | s7 = 1;
| label_63:
0x0001fcf0 move fp, zero | fp = 0;
0x0001fcf4 b 0x1e97c | goto label_23;
| label_73:
0x0001fcf8 lw s7, 0x3c(s6) | s7 = *((s6 + 15));
| if (s0 == v0) {
0x0001fcfc bnel s0, v0, 0x1e9a0 | goto label_7;
| }
0x0001fd00 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001fd04 lw t9, -0x7f5c(gp) | t9 = sym.g10_log_debug;
| /* str.copy_packet:_compressed__n */
0x0001fd08 addiu a0, a0, 0x5f48 | a0 += 0x5f48;
0x0001fd0c bal 0x388a0 | sym_g10_log_debug ();
0x0001fd10 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001fd14 addiu s0, sp, 0x50 | s0 = sp + 0x50;
0x0001fd18 addiu s3, zero, -1 | s3 = -1;
| label_24:
0x0001fd1c lw t9, -0x7f64(gp) | t9 = sym.iobuf_read;
0x0001fd20 addiu a2, zero, 0x64 | a2 = 0x64;
0x0001fd24 move a1, s0 | a1 = s0;
0x0001fd28 move a0, s6 | a0 = s6;
0x0001fd2c bal 0x3fc68 | sym_iobuf_read ();
0x0001fd30 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == s3) {
0x0001fd34 beq v0, s3, 0x1e99c | goto label_8;
| }
0x0001fd38 lw t9, -0x7f68(gp) | t9 = sym.iobuf_write;
0x0001fd3c move a2, v0 | a2 = v0;
0x0001fd40 move a1, s0 | a1 = s0;
0x0001fd44 move a0, s1 | a0 = s1;
0x0001fd48 jalr t9 | t9 ();
0x0001fd4c lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == 0) {
0x0001fd50 beqz v0, 0x1fd1c | goto label_24;
| }
0x0001fd54 addiu s7, zero, 0x16 | s7 = 0x16;
0x0001fd58 b 0x1e9a8 | goto label_1;
| label_47:
0x0001fd5c lw a1, -0x7fdc(gp) | a1 = *(gp);
0x0001fd60 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001fd64 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str._dont_know_ */
0x0001fd68 addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_1st_length_byte_missing_n */
0x0001fd6c addiu a0, a0, 0x5e64 | a0 += 0x5e64;
0x0001fd70 bal 0x38550 | sym_g10_log_error ();
0x0001fd74 addiu s7, zero, 0xe | s7 = 0xe;
0x0001fd78 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001fd7c b 0x1e9a8 | goto label_1;
| label_67:
0x0001fd80 lw v0, 0x20(s6) | v0 = *((s6 + 8));
0x0001fd84 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 != 0) {
0x0001fd88 bnez v0, 0x1ff9c | goto label_75;
| }
0x0001fd8c lw a0, 0x2c(s6) | a0 = *((s6 + 11));
0x0001fd90 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001fd94 sltu v1, a0, v0 | v1 = (a0 < v0) ? 1 : 0;
| if (v1 == 0) {
0x0001fd98 beqz v1, 0x1ff9c | goto label_75;
| }
0x0001fd9c nop |
0x0001fda0 lw v1, 0x10(s6) | v1 = *((s6 + 4));
0x0001fda4 lw a2, 0x14(s6) | a2 = *((s6 + 5));
0x0001fda8 addiu a1, v1, 1 | a1 = v1 + 1;
0x0001fdac sltu v1, a1, v1 | v1 = (a1 < v1) ? 1 : 0;
0x0001fdb0 lw s7, 0x34(s6) | s7 = *((s6 + 13));
0x0001fdb4 addu v1, v1, a2 | v1 += a2;
0x0001fdb8 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001fdbc sw a1, 0x10(s6) | *((s6 + 4)) = a1;
0x0001fdc0 sw v1, 0x14(s6) | *((s6 + 5)) = v1;
0x0001fdc4 sw a2, 0x2c(s6) | *((s6 + 11)) = a2;
0x0001fdc8 lbux s7, a0(s7) | __asm ("lbux s7, a0(s7)");
0x0001fdcc sb s7, 0x4a(sp) | *(var_4ah) = s7;
0x0001fdd0 sll s7, s7, 0x18 | s7 <<= 0x18;
| label_30:
0x0001fdd4 lw a0, 0x2c(s6) | a0 = *((s6 + 11));
0x0001fdd8 sltu v1, a0, v0 | v1 = (a0 < v0) ? 1 : 0;
| if (v1 == 0) {
0x0001fddc beql v1, zero, 0x1ff6c | goto label_76;
| }
0x0001fde0 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001fde4 lw v1, 0x10(s6) | v1 = *((s6 + 4));
0x0001fde8 lw a3, 0x14(s6) | a3 = *((s6 + 5));
0x0001fdec addiu a2, v1, 1 | a2 = v1 + 1;
0x0001fdf0 sltu v1, a2, v1 | v1 = (a2 < v1) ? 1 : 0;
0x0001fdf4 lw a1, 0x34(s6) | a1 = *((s6 + 13));
0x0001fdf8 addu v1, v1, a3 | v1 += a3;
0x0001fdfc addiu a3, a0, 1 | a3 = a0 + 1;
0x0001fe00 sw v1, 0x14(s6) | *((s6 + 5)) = v1;
0x0001fe04 sw a2, 0x10(s6) | *((s6 + 4)) = a2;
0x0001fe08 sw a3, 0x2c(s6) | *((s6 + 11)) = a3;
0x0001fe0c lbux a0, a0(a1) | __asm ("lbux a0, a0(a1)");
0x0001fe10 sll v1, a0, 0x10 | v1 = a0 << 0x10;
0x0001fe14 sb a0, 0x4b(sp) | *(var_4bh) = a0;
0x0001fe18 or s7, v1, s7 | s7 = v1 | s7;
| label_28:
0x0001fe1c lw a0, 0x2c(s6) | a0 = *((s6 + 11));
0x0001fe20 sltu v1, a0, v0 | v1 = (a0 < v0) ? 1 : 0;
| if (v1 == 0) {
0x0001fe24 beql v1, zero, 0x1ff3c | goto label_77;
| }
0x0001fe28 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001fe2c lw v1, 0x10(s6) | v1 = *((s6 + 4));
0x0001fe30 lw a3, 0x14(s6) | a3 = *((s6 + 5));
0x0001fe34 addiu a2, v1, 1 | a2 = v1 + 1;
0x0001fe38 sltu v1, a2, v1 | v1 = (a2 < v1) ? 1 : 0;
0x0001fe3c lw a1, 0x34(s6) | a1 = *((s6 + 13));
0x0001fe40 addu v1, v1, a3 | v1 += a3;
0x0001fe44 addiu a3, a0, 1 | a3 = a0 + 1;
0x0001fe48 sw v1, 0x14(s6) | *((s6 + 5)) = v1;
0x0001fe4c sw a2, 0x10(s6) | *((s6 + 4)) = a2;
0x0001fe50 sw a3, 0x2c(s6) | *((s6 + 11)) = a3;
0x0001fe54 lbux a0, a0(a1) | __asm ("lbux a0, a0(a1)");
0x0001fe58 sll v1, a0, 8 | v1 = a0 << 8;
0x0001fe5c sb a0, 0x4c(sp) | *(var_4ch) = a0;
0x0001fe60 or s7, v1, s7 | s7 = v1 | s7;
| label_26:
0x0001fe64 lw a1, 0x2c(s6) | a1 = *((s6 + 11));
0x0001fe68 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x0001fe6c beql v0, zero, 0x1ff18 | goto label_78;
| }
0x0001fe70 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001fe74 lw v0, 0x10(s6) | v0 = *((s6 + 4));
0x0001fe78 lw a2, 0x14(s6) | a2 = *((s6 + 5));
0x0001fe7c addiu v1, v0, 1 | v1 = v0 + 1;
0x0001fe80 sltu v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
0x0001fe84 lw a0, 0x34(s6) | a0 = *((s6 + 13));
0x0001fe88 addu v0, v0, a2 | v0 += a2;
0x0001fe8c addiu a2, a1, 1 | a2 = a1 + 1;
0x0001fe90 sw v0, 0x14(s6) | *((s6 + 5)) = v0;
0x0001fe94 sw v1, 0x10(s6) | *((s6 + 4)) = v1;
0x0001fe98 sw a2, 0x2c(s6) | *((s6 + 11)) = a2;
0x0001fe9c lbux a0, a1(a0) | __asm ("lbux a0, a1(a0)");
0x0001fea0 move v0, a0 | v0 = a0;
| do {
0x0001fea4 sb a0, 0x4d(sp) | *(var_4dh) = a0;
0x0001fea8 or fp, v0, s7 | fp = v0 | s7;
0x0001feac addiu t1, zero, 6 | t1 = 6;
0x0001feb0 b 0x1e960 | goto label_3;
| label_25:
0x0001ff14 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_78:
0x0001ff18 move a0, s6 | a0 = s6;
0x0001ff1c bal 0x3fb3c | sym_iobuf_readbyte ();
0x0001ff20 addiu v1, zero, -1 | v1 = -1;
0x0001ff24 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == v1) {
0x0001ff28 beq v0, v1, 0x21098 | goto label_79;
| }
0x0001ff2c andi a0, v0, 0xff | a0 = v0 & 0xff;
0x0001ff30 andi v0, v0, 0xff | v0 &= 0xff;
0x0001ff34 b 0x1fea4 |
| } while (1);
| label_27:
0x0001ff38 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_77:
0x0001ff3c move a0, s6 | a0 = s6;
0x0001ff40 bal 0x3fb3c | sym_iobuf_readbyte ();
0x0001ff44 sll v1, v0, 8 | v1 = v0 << 8;
0x0001ff48 lw a0, 0x20(s6) | a0 = *((s6 + 8));
0x0001ff4c andi v1, v1, 0xffff | v1 &= 0xffff;
0x0001ff50 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ff54 sb v0, 0x4c(sp) | *(var_4ch) = v0;
0x0001ff58 or s7, v1, s7 | s7 = v1 | s7;
| if (a0 != 0) {
0x0001ff5c bnez a0, 0x1ff14 | goto label_25;
| }
0x0001ff60 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001ff64 b 0x1fe64 | goto label_26;
| label_29:
0x0001ff68 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_76:
0x0001ff6c move a0, s6 | a0 = s6;
0x0001ff70 bal 0x3fb3c | sym_iobuf_readbyte ();
0x0001ff74 sll v1, v0, 0x10 | v1 = v0 << 0x10;
0x0001ff78 lui a1, 0xff | a1 = 0xff0000;
0x0001ff7c lw a0, 0x20(s6) | a0 = *((s6 + 8));
0x0001ff80 and v1, v1, a1 | v1 &= a1;
0x0001ff84 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ff88 sb v0, 0x4b(sp) | *(var_4bh) = v0;
0x0001ff8c or s7, v1, s7 | s7 = v1 | s7;
| if (a0 != 0) {
0x0001ff90 bnez a0, 0x1ff38 | goto label_27;
| }
0x0001ff94 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001ff98 b 0x1fe1c | goto label_28;
| label_75:
0x0001ff9c move a0, s6 | a0 = s6;
0x0001ffa0 bal 0x3fb3c | sym_iobuf_readbyte ();
0x0001ffa4 lw v1, 0x20(s6) | v1 = *((s6 + 8));
0x0001ffa8 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001ffac sb v0, 0x4a(sp) | *(var_4ah) = v0;
0x0001ffb0 sll s7, v0, 0x18 | s7 = v0 << 0x18;
| if (v1 != 0) {
0x0001ffb4 bnez v1, 0x1ff68 | goto label_29;
| }
0x0001ffb8 lw v0, 0x30(s6) | v0 = *((s6 + 12));
0x0001ffbc b 0x1fdd4 | goto label_30;
| label_70:
0x00020074 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x00020078 sb zero, (s4) | *(s4) = 0;
0x0002007c lw v0, -0x4cac(v0) | v0 = *((v0 - 4907));
| if (v0 == 0) {
0x00020080 beql v0, zero, 0x1e9a0 | goto label_7;
| }
0x00020084 lw s7, 0x3c(s6) | s7 = *((s6 + 15));
0x00020088 lw s1, -0x7fb4(gp) | s1 = *((gp - 8173));
0x0002008c lw v0, 4(s3) | v0 = *((s3 + 1));
0x00020090 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00020094 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x00020098 lw a3, -0x4cb0(s1) | a3 = *((s1 - 4908));
0x0002009c addiu a2, zero, 0x12 | a2 = 0x12;
0x000200a0 addiu a1, zero, 1 | a1 = 1;
| /* str.:user_ID_packet:__ */
0x000200a4 addiu a0, a0, 0x6180 | a0 += 0x6180;
0x000200a8 lw s4, 4(v0) | s4 = *((v0 + 1));
0x000200ac jalr t9 | t9 ();
0x000200b0 lw s3, 4(s3) | s3 = *((s3 + 1));
0x000200b4 lw gp, 0x28(sp) | gp = *(var_28h);
0x000200b8 addiu s0, s3, 0x4c | s0 = s3 + 0x4c;
| if (s4 == 0) {
0x000200bc beqz s4, 0x2015c | goto label_80;
| }
0x000200c0 addiu s4, s4, 0x4c | s4 += 0x4c;
0x000200c4 addu s3, s3, s4 | s3 += s4;
0x000200c8 lw s4, -0x7fdc(gp) | s4 = *(gp);
| /* esilref: '\x&x' */
0x000200cc addiu s4, s4, 0x53a0 | s4 += 0x53a0;
0x000200d0 b 0x200f4 |
| while (v0 != 0) {
0x000200d4 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x000200d8 move a1, a0 | a1 = a0;
0x000200dc move a0, a3 | a0 = a3;
0x000200e0 jalr t9 | t9 ();
0x000200e4 lw gp, 0x28(sp) | gp = *(var_28h);
| label_31:
0x000200e8 addiu s0, s0, 1 | s0++;
| if (s3 == s0) {
0x000200ec beql s3, s0, 0x20160 | goto label_81;
| }
0x000200f0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000200f4 lbu a3, (s0) | a3 = *(s0);
0x000200f8 addiu v0, a3, -0x20 | v0 = a3 + -0x20;
0x000200fc sltiu v0, v0, 0x5b | v0 = (v0 < 0x5b) ? 1 : 0;
0x00020100 lw a0, -0x4cb0(s1) | a0 = *((s1 - 4908));
0x00020104 bnez v0, 0x200d4 |
| }
0x00020108 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0002010c move a2, s4 | a2 = s4;
0x00020110 addiu a1, zero, 1 | a1 = 1;
0x00020114 jalr t9 | t9 ();
0x00020118 lw gp, 0x28(sp) | gp = *(var_28h);
0x0002011c b 0x200e8 | goto label_31;
| label_65:
0x0002013c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_66:
0x00020140 sw t0, 0x30(sp) | *(var_30h) = t0;
0x00020144 move a0, s6 | a0 = s6;
0x00020148 bal 0x3fb3c | sym_iobuf_readbyte ();
0x0002014c andi a3, v0, 0xff | a3 = v0 & 0xff;
0x00020150 lw gp, 0x28(sp) | gp = *(var_28h);
0x00020154 lw t0, 0x30(sp) | t0 = *(var_30h);
0x00020158 b 0x1edfc | goto label_32;
| label_80:
0x0002015c lw a0, -0x7fdc(gp) | a0 = *(gp);
| label_81:
0x00020160 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x00020164 lw a3, -0x4cb0(s1) | a3 = *((s1 - 4908));
0x00020168 addiu a2, zero, 2 | a2 = 2;
0x0002016c addiu a1, zero, 1 | a1 = 1;
| /* esilref: '"
' */
0x00020170 addiu a0, a0, 0x539c | a0 += 0x539c;
0x00020174 jalr t9 | t9 ();
0x00020178 lw gp, 0x28(sp) | gp = *(var_28h);
0x0002017c b 0x1e99c | goto label_8;
| label_59:
0x00020180 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00020184 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x00020188 move a2, s0 | a2 = s0;
| /* str._dont_know_ */
0x0002018c addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_indeterminate_length_for_invalid_packet_type__d_n */
0x00020190 addiu a0, a0, 0x5ef0 | a0 += 0x5ef0;
0x00020194 bal 0x38550 | sym_g10_log_error ();
0x00020198 addiu s7, zero, 0xe | s7 = 0xe;
0x0002019c lw gp, 0x28(sp) | gp = *(var_28h);
0x000201a0 b 0x1e9a8 | goto label_1;
| do {
0x00020204 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
0x00020208 move a2, zero | a2 = 0;
0x0002020c move a1, fp | a1 = fp;
0x00020210 move a0, s6 | a0 = s6;
0x00020214 jalr t9 | t9 ();
0x00020218 addiu s7, zero, 0xe | s7 = 0xe;
0x0002021c lw gp, 0x28(sp) | gp = *(var_28h);
0x00020220 b 0x1e9a8 | goto label_1;
| label_68:
0x000207a0 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000207a4 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x000207a8 move a2, s0 | a2 = s0;
| /* str._dont_know_ */
0x000207ac addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_partial_length_for_invalid_packet_type__d_n */
0x000207b0 addiu a0, a0, 0x5ec0 | a0 += 0x5ec0;
0x000207b4 bal 0x38550 | sym_g10_log_error ();
0x000207b8 addiu s7, zero, 0xe | s7 = 0xe;
0x000207bc lw gp, 0x28(sp) | gp = *(var_28h);
0x000207c0 b 0x1e9a8 | goto label_1;
| label_69:
0x0002097c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00020980 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x00020984 addiu a1, zero, 0xd | a1 = 0xd;
| /* str.packet__d__too_large_n */
0x00020988 addiu a0, a0, 0x5f9c | a0 += 0x5f9c;
0x0002098c bal 0x38550 | sym_g10_log_error ();
0x00020990 lw gp, 0x28(sp) | gp = *(var_28h);
0x00020994 b 0x20204 |
| } while (1);
| do {
0x00020c00 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
0x00020c04 move a2, zero | a2 = 0;
0x00020c08 move a1, zero | a1 = 0;
0x00020c0c move a0, s6 | a0 = s6;
0x00020c10 jalr t9 | t9 ();
0x00020c14 lw gp, 0x28(sp) | gp = *(var_28h);
0x00020c18 b 0x1e99c | goto label_8;
| label_64:
0x00020d60 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x00020d64 lw a1, 0x54(s6) | a1 = *((s6 + 21));
0x00020d68 addiu s7, zero, 1 | s7 = 1;
0x00020d6c move fp, zero | fp = 0;
0x00020d70 addiu t1, zero, 1 | t1 = 1;
0x00020d74 addiu s1, zero, 8 | s1 = 8;
| /* str.__new_ctb_ */
0x00020d78 addiu v0, v0, 0x5dfc | v0 += 0x5dfc;
0x00020d7c b 0x1ecf0 | goto label_33;
| label_34:
0x00021020 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
0x00021024 lw a1, -0x4cb0(s1) | a1 = *((s1 - 4908));
0x00021028 addiu a0, zero, 0xa | a0 = 0xa;
0x0002102c jalr t9 | t9 ();
0x00021030 lw gp, 0x28(sp) | gp = *(var_28h);
0x00021034 b 0x20c00 |
| } while (1);
| label_79:
0x00021098 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x0002109c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x000210a0 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str._dont_know_ */
0x000210a4 addiu a1, a1, 0x5e34 | a1 += 0x5e34;
| /* str._s:_4_byte_length_invalid_n */
0x000210a8 addiu a0, a0, 0x5ea4 | a0 += 0x5ea4;
0x000210ac bal 0x38550 | sym_g10_log_error ();
0x000210b0 addiu s7, zero, 0xe | s7 = 0xe;
0x000210b4 lw gp, 0x28(sp) | gp = *(var_28h);
0x000210b8 b 0x1e9a8 | goto label_1;
| label_45:
0x00021210 lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x00021214 jalr t9 | t9 ();
0x00021218 nop |
| label_35:
0x0002121c lw a3, -0x7fdc(gp) | a3 = *(gp);
0x00021220 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x00021224 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00021228 lw t9, -0x7944(gp) | t9 = sym.imp.__assert_fail;
| /* str.parse */
0x0002122c addiu a3, a3, 0x654c | a3 += 0x654c;
0x00021230 addiu a2, zero, 0x146 | a2 = 0x146;
| /* str..._.._gnupg_1.4.7_g10_parse_packet.c */
0x00021234 addiu a1, a1, 0x5d34 | a1 += 0x5d34;
| /* str._pkt__pkt.generic */
0x00021238 addiu a0, a0, 0x5e20 | a0 += 0x5e20;
0x0002123c jalr t9 | t9 ();
| label_42:
0x00021240 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00021244 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x00021248 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str._s:_garbled_packet_detected_n */
0x0002124c addiu a0, a0, 0x5f28 | a0 += 0x5f28;
| /* str._dont_know_ */
0x00021250 addiu a1, a1, 0x5e34 | a1 += 0x5e34;
0x00021254 bal 0x38550 | sym_g10_log_error ();
0x00021258 lw gp, 0x28(sp) | gp = *(var_28h);
0x0002125c lw t9, -0x7f90(gp) | t9 = sym.g10_exit;
0x00021260 addiu a0, zero, 2 | a0 = 2;
0x00021264 bal 0x62b4 | sym_g10_exit ();
0x00021268 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0002126c andi a3, v1, 0xf | a3 = v1 & 0xf;
0x00021270 srl v0, v1, 4 | v0 = v1 >> 4;
0x00021274 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x00021278 addiu v0, v0, 6 | v0 += 6;
0x0002127c addiu a3, a3, 0x10 | a3 += 0x10;
0x00021280 lw a0, -0x4cb0(s1) | a0 = *((s1 - 4908));
0x00021284 sw v1, 0x10(sp) | *(var_10h) = v1;
0x00021288 sllv a3, a3, v0 | a3 <<= v0;
| /* str.__count__lu___lu_ */
0x0002128c addiu a2, a2, 0x6088 | a2 += 0x6088;
0x00021290 addiu a1, zero, 1 | a1 = 1;
0x00021294 jalr t9 | t9 ();
0x00021298 lw gp, 0x28(sp) | gp = *(var_28h);
0x0002129c b 0x21020 | goto label_34;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0xfecc */
| #include <stdint.h>
|
; (fcn) sym.dump_kbnode () | void dump_kbnode () {
0x0000fecc lui gp, 5 |
0x0000fed0 addiu gp, gp, 0x2264 |
0x0000fed4 addu gp, gp, t9 | gp += t9;
| if (a0 == 0) {
0x0000fed8 beqz a0, 0x10280 | goto label_1;
| }
0x0000fedc nop |
0x0000fee0 addiu sp, sp, -0x60 |
0x0000fee4 lw v0, -0x7d90(gp) | v0 = *((gp - 8036));
0x0000fee8 sw s4, 0x48(sp) | *(var_48h) = s4;
0x0000feec sw s3, 0x44(sp) | *(var_44h) = s3;
0x0000fef0 sw s1, 0x3c(sp) | *(var_3ch) = s1;
0x0000fef4 lw s4, -0x7fdc(gp) | s4 = *(gp);
0x0000fef8 lw s1, -0x7fdc(gp) | s1 = *(gp);
0x0000fefc lw s3, -0x7fdc(gp) | s3 = *(gp);
0x0000ff00 sw s5, 0x4c(sp) | *(var_4ch) = s5;
0x0000ff04 sw s2, 0x40(sp) | *(var_40h) = s2;
0x0000ff08 sw s0, 0x38(sp) | *(var_38h) = s0;
0x0000ff0c lw s2, -0x7fdc(gp) | s2 = *(gp);
0x0000ff10 lw s0, -0x7804(gp) | s0 = *((gp - 7681));
0x0000ff14 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x0000ff18 sw s7, 0x54(sp) | *(var_54h) = s7;
0x0000ff1c sw gp, 0x28(sp) | *(var_28h) = gp;
0x0000ff20 sw ra, 0x5c(sp) | *(var_5ch) = ra;
0x0000ff24 sw fp, 0x58(sp) | *(var_58h) = fp;
0x0000ff28 sw s6, 0x50(sp) | *(var_50h) = s6;
0x0000ff2c move s7, a0 | s7 = a0;
0x0000ff30 sw v0, 0x34(sp) | *(var_34h) = v0;
| /* str.unknown */
0x0000ff34 addiu s4, s4, 0x3850 | s4 += 0x3850;
0x0000ff38 addiu s1, s1, 0x3974 | s1 += 0x3974;
| /* str.gpg_control */
0x0000ff3c addiu s3, s3, 0x38d4 | s3 += 0x38d4;
0x0000ff40 lw v0, 4(s7) | v0 = *((s7 + 1));
| do {
0x0000ff44 lw v0, (v0) | v0 = *(v0);
0x0000ff48 sltiu v1, v0, 0x40 | v1 = (v0 < 0x40) ? 1 : 0;
| if (v1 != 0) {
0x0000ff4c beql v1, zero, 0xff6c |
0x0000ff50 move v0, s4 | v0 = s4;
0x0000ff54 sll v0, v0, 2 | v0 <<= 2;
0x0000ff58 lwx v0, v0(s1) | __asm ("lwx v0, v0(s1)");
0x0000ff5c addu v0, v0, gp | v0 += gp;
0x0000ff60 jr v0 | v0 ();
0x0000ff64 nop |
| }
0x0000ff6c sw v0, 0x18(sp) | *(var_18h) = v0;
0x0000ff70 lw v0, 0xc(s7) | v0 = *((s7 + 3));
0x0000ff74 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0000ff78 sw v0, 0x14(sp) | *(var_14h) = v0;
0x0000ff7c lw v0, 8(s7) | v0 = *((s7 + 2));
0x0000ff80 lw a0, (s0) | a0 = *(s0);
0x0000ff84 move a3, s7 | a3 = s7;
0x0000ff88 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.node__p__02x__02x_type_s */
0x0000ff8c addiu a2, s2, 0x38ec | a2 = s2 + 0x38ec;
0x0000ff90 addiu a1, zero, 1 | a1 = 1;
0x0000ff94 jalr t9 | t9 ();
0x0000ff98 lw v1, 4(s7) | v1 = *((s7 + 1));
0x0000ff9c addiu a0, zero, 0xd | a0 = 0xd;
0x0000ffa0 lw v0, (v1) | v0 = *(v1);
0x0000ffa4 lw gp, 0x28(sp) | gp = *(var_28h);
| if (v0 == a0) {
0x0000ffa8 beq v0, a0, 0x1016c | goto label_2;
| }
0x0000ffac addiu a0, zero, 2 | a0 = 2;
0x0000ffb0 lw s6, (s0) | s6 = *(s0);
| if (v0 == a0) {
0x0000ffb4 beq v0, a0, 0x1021c | goto label_3;
| }
0x0000ffb8 addiu a0, zero, 0x3f | a0 = 0x3f;
| if (v0 == a0) {
0x0000ffbc beql v0, a0, 0x10254 | goto label_4;
| }
0x0000ffc0 lw v0, 4(v1) | v0 = *((v1 + 1));
0x0000ffc4 addiu a0, zero, -9 | a0 = -9;
0x0000ffc8 and v0, v0, a0 | v0 &= a0;
0x0000ffcc addiu a0, zero, 6 | a0 = 6;
0x0000ffd0 lw t9, -0x7904(gp) | t9 = sym.imp.fputc;
| if (v0 == a0) {
0x0000ffd4 beq v0, a0, 0x100d0 | goto label_5;
| }
0x0000ffd8 move a1, s6 | a1 = s6;
0x0000ffdc addiu a0, zero, 0xa | a0 = 0xa;
0x0000ffe0 jalr t9 | t9 ();
0x0000ffe4 lw gp, 0x28(sp) | gp = *(var_28h);
| label_0:
0x0000ffe8 lw s7, (s7) | s7 = *(s7);
0x0000ffec lw v0, 4(s7) | v0 = *((s7 + 1));
0x0000fff0 bnel s7, zero, 0xff44 |
| } while (s7 == 0);
0x0000fff4 lw ra, 0x5c(sp) | ra = *(var_5ch);
0x0000fff8 lw fp, 0x58(sp) | fp = *(var_58h);
0x0000fffc lw zero, 0x54(t8) | 0 = *((t8 + 21));
0x00010000 lw s6, 0x50(sp) | s6 = *(var_50h);
0x00010004 lw s5, 0x4c(sp) | s5 = *(var_4ch);
0x00010008 lw s4, 0x48(sp) | s4 = *(var_48h);
0x0001000c lw s3, 0x44(sp) | s3 = *(var_44h);
0x00010010 lw s2, 0x40(sp) | s2 = *(var_40h);
0x00010014 lw s1, 0x3c(sp) | s1 = *(var_3ch);
0x00010018 lw s0, 0x38(sp) | s0 = *(var_38h);
0x0001001c addiu sp, sp, 0x60 |
0x00010020 jr ra | return v0;
| label_5:
0x000100d0 lw fp, 4(v1) | fp = *((v1 + 1));
0x000100d4 lw t9, -0x7eb4(gp) | t9 = sym.keyid_from_pk;
0x000100d8 move a1, zero | a1 = 0;
0x000100dc move a0, fp | a0 = fp;
0x000100e0 bal 0x19c3c | sym_keyid_from_pk ();
0x000100e4 lw a0, 0x24(fp) | a0 = *(arg_24h);
0x000100e8 addiu v1, zero, 0x2e | v1 = 0x2e;
0x000100ec addiu t3, zero, 0x65 | t3 = 0x65;
0x000100f0 lw a1, 0x28(fp) | a1 = *(arg_28h);
| if (a0 != 0) {
0x000100f4 movz t3, v1, a0 | t3 = v1;
| }
0x000100f8 move a0, t3 | a0 = t3;
0x000100fc addiu t3, zero, 0x72 | t3 = 0x72;
0x00010100 lw a2, 0x30(fp) | a2 = *(arg_30h);
| if (a1 != 0) {
0x00010104 movz t3, v1, a1 | t3 = v1;
| }
0x00010108 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001010c move a1, t3 | a1 = t3;
0x00010110 addiu t3, zero, 0x76 | t3 = 0x76;
| if (a2 != 0) {
0x00010114 movz t3, v1, a2 | t3 = v1;
| }
0x00010118 lw a3, 0x54(fp) | a3 = *(arg_54h);
0x0001011c move a2, t3 | a2 = t3;
0x00010120 lbu t1, 0x1f(fp) | t1 = *(arg_1fh);
0x00010124 lbu t2, 0x20(fp) | t2 = *(arg_20h);
0x00010128 addiu t3, zero, 0x6d | t3 = 0x6d;
0x0001012c sw a2, 0x20(sp) | *(var_20h) = a2;
0x00010130 lw a2, -0x7fdc(gp) | a2 = *(gp);
| if (a3 == 0) {
0x00010134 movn v1, t3, a3 | v1 = t3;
| }
0x00010138 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001013c sw a1, 0x1c(sp) | *(var_1ch) = a1;
0x00010140 sw a0, 0x18(sp) | *(var_18h) = a0;
0x00010144 sw v1, 0x24(sp) | *(var_24h) = v1;
0x00010148 sw t2, 0x14(sp) | *(var_14h) = t2;
0x0001014c sw t1, 0x10(sp) | *(var_10h) = t1;
0x00010150 move a3, v0 | a3 = v0;
| /* str.__keyid_08lX_a_d_u_d__c_c_c_c_n */
0x00010154 addiu a2, a2, 0x3950 | a2 += 0x3950;
0x00010158 addiu a1, zero, 1 | a1 = 1;
0x0001015c move a0, s6 | a0 = s6;
0x00010160 jalr t9 | t9 ();
0x00010164 lw gp, 0x28(sp) | gp = *(var_28h);
0x00010168 b 0xffe8 | goto label_0;
| label_2:
0x0001016c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00010170 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x00010174 lw a3, (s0) | a3 = *(s0);
0x00010178 addiu a2, zero, 3 | a2 = 3;
0x0001017c addiu a1, zero, 1 | a1 = 1;
| /* esilref: ' "' */
0x00010180 addiu a0, a0, 0x3908 | a0 += 0x3908;
0x00010184 lw fp, 4(v1) | fp = *((v1 + 1));
0x00010188 jalr t9 | t9 ();
0x0001018c lw gp, 0x28(sp) | gp = *(var_28h);
0x00010190 lw a2, 4(fp) | a2 = *(arg_4h);
0x00010194 lw a0, (s0) | a0 = *(s0);
0x00010198 lw t9, -0x7d8c(gp) | t9 = sym.print_string;
0x0001019c move a3, zero | a3 = 0;
0x000101a0 addiu a1, fp, 0x4c | a1 = fp + 0x4c;
0x000101a4 jalr t9 | t9 ();
0x000101a8 lw v1, 0x30(fp) | v1 = *(arg_30h);
0x000101ac addiu v0, zero, 0x2e | v0 = 0x2e;
0x000101b0 addiu a0, zero, 0x72 | a0 = 0x72;
0x000101b4 lw a1, 0x40(fp) | a1 = *(arg_40h);
| if (v1 != 0) {
0x000101b8 movz a0, v0, v1 | a0 = v0;
| }
0x000101bc move v1, a0 | v1 = a0;
0x000101c0 addiu a0, zero, 0x76 | a0 = 0x76;
0x000101c4 lw a2, 0x2c(fp) | a2 = *(arg_2ch);
| if (a1 != 0) {
0x000101c8 movz a0, v0, a1 | a0 = v0;
| }
0x000101cc lw gp, 0x28(sp) | gp = *(var_28h);
0x000101d0 move a1, a0 | a1 = a0;
0x000101d4 addiu a0, zero, 0x70 | a0 = 0x70;
| if (a2 != 0) {
0x000101d8 movz a0, v0, a2 | a0 = v0;
| }
0x000101dc lw a3, 0x34(fp) | a3 = *(arg_34h);
0x000101e0 move a2, a0 | a2 = a0;
0x000101e4 lw a0, (s0) | a0 = *(s0);
0x000101e8 sw a2, 0x18(sp) | *(var_18h) = a2;
0x000101ec sw v1, 0x10(sp) | *(var_10h) = v1;
0x000101f0 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x000101f4 addiu v1, zero, 0x65 | v1 = 0x65;
| if (a3 == 0) {
0x000101f8 movn v0, v1, a3 | v0 = v1;
| }
0x000101fc lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x00010200 sw a1, 0x14(sp) | *(var_14h) = a1;
0x00010204 move a3, v0 | a3 = v0;
| /* str.___c_c_c_c_n */
0x00010208 addiu a2, a2, 0x390c | a2 += 0x390c;
0x0001020c addiu a1, zero, 1 | a1 = 1;
0x00010210 jalr t9 | t9 ();
0x00010214 lw gp, 0x28(sp) | gp = *(var_28h);
0x00010218 b 0xffe8 | goto label_0;
| label_3:
0x0001021c lw v0, 4(v1) | v0 = *((v1 + 1));
0x00010220 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x00010224 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x00010228 lw v1, 0xc(v0) | v1 = *((v0 + 3));
0x0001022c lbu a3, 0x15(v0) | a3 = *((v0 + 21));
0x00010230 sw v1, 0x14(sp) | *(var_14h) = v1;
0x00010234 lw v0, 8(v0) | v0 = *((v0 + 2));
| /* str.__class_02x_keyid_08lX_ts_lu_n */
0x00010238 addiu a2, a2, 0x3918 | a2 += 0x3918;
0x0001023c sw v0, 0x10(sp) | *(var_10h) = v0;
0x00010240 addiu a1, zero, 1 | a1 = 1;
0x00010244 move a0, s6 | a0 = s6;
0x00010248 jalr t9 | t9 ();
0x0001024c lw gp, 0x28(sp) | gp = *(var_28h);
0x00010250 b 0xffe8 | goto label_0;
| label_4:
0x00010254 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x00010258 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001025c lw a3, (v0) | a3 = *(v0);
0x00010260 lw v0, 4(v0) | v0 = *((v0 + 1));
| /* str._ctrl_d_len_u_n */
0x00010264 addiu a2, a2, 0x393c | a2 += 0x393c;
0x00010268 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0001026c addiu a1, zero, 1 | a1 = 1;
0x00010270 move a0, s6 | a0 = s6;
0x00010274 jalr t9 | t9 ();
0x00010278 lw gp, 0x28(sp) | gp = *(var_28h);
0x0001027c b 0xffe8 | goto label_0;
| label_1:
0x00010280 jr ra | return v0;
0x00010284 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x38400 */
| #include <stdint.h>
|
; (fcn) sym.g10_log_print_prefix () | void g10_log_print_prefix () {
0x00038400 lui gp, 3 |
0x00038404 addiu gp, gp, -0x62d0 |
0x00038408 addu gp, gp, t9 | gp += t9;
0x0003840c lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
0x00038410 addiu sp, sp, -0x28 |
0x00038414 lw v0, -0x4a08(v1) | v0 = *((v1 - 4738));
0x00038418 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0003841c sw ra, 0x24(sp) | *(var_24h) = ra;
| if (v0 == 0) {
0x00038420 beql v0, zero, 0x38468 | goto label_0;
| }
0x00038424 lw v0, -0x7804(gp) | v0 = *((gp - 7681));
0x00038428 lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
0x0003842c lw a3, -0x4a00(v1) | a3 = *((v1 - 4736));
0x00038430 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| if (a3 == 0) {
0x00038434 beqz a3, 0x38480 | goto label_1;
| }
| do {
0x00038438 lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
0x0003843c lw a2, -0x7d90(gp) | a2 = *((gp - 8036));
0x00038440 addiu v1, v1, -0x49fc | v1 += -0x49fc;
0x00038444 sw a0, 0x14(sp) | *(var_14h) = a0;
0x00038448 sw v1, 0x10(sp) | *(var_10h) = v1;
| /* str._s_s:__s */
0x0003844c addiu a2, a2, -0x7ebc | a2 += -0x7ebc;
0x00038450 addiu a1, zero, 1 | a1 = 1;
0x00038454 move a0, v0 | a0 = v0;
0x00038458 jalr t9 | t9 ();
0x0003845c lw ra, 0x24(sp) | ra = *(var_24h);
0x00038460 addiu sp, sp, 0x28 |
0x00038464 jr ra | return v1;
| label_0:
0x00038468 lw v0, (v0) | v0 = *(v0);
0x0003846c sw v0, -0x4a08(v1) | *((v1 - 4738)) = v0;
0x00038470 lw v1, -0x7fb4(gp) | v1 = *((gp - 8173));
0x00038474 lw a3, -0x4a00(v1) | a3 = *((v1 - 4736));
0x00038478 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0003847c bnez a3, 0x38438 |
| } while (a3 != 0);
| label_1:
0x00038480 lw a3, -0x7fb4(gp) | a3 = *((gp - 8173));
0x00038484 lw a2, -0x7d90(gp) | a2 = *((gp - 8036));
0x00038488 sw a0, 0x10(sp) | *(var_10h) = a0;
0x0003848c addiu a3, a3, -0x49fc | a3 += -0x49fc;
| /* str.__s:__s */
0x00038490 addiu a2, a2, -0x7eb0 | a2 += -0x7eb0;
0x00038494 addiu a1, zero, 1 | a1 = 1;
0x00038498 move a0, v0 | a0 = v0;
0x0003849c jalr t9 | t9 ();
0x000384a0 lw ra, 0x24(sp) | ra = *(var_24h);
0x000384a4 addiu sp, sp, 0x28 |
0x000384a8 jr ra | return v1;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x3489c */
| #include <stdint.h>
|
; (fcn) sym.mpi_print () | void mpi_print () {
0x0003489c lui gp, 3 |
0x000348a0 addiu gp, gp, -0x276c |
0x000348a4 addu gp, gp, t9 | gp += t9;
0x000348a8 addiu sp, sp, -0x38 |
0x000348ac sw gp, 0x10(sp) | *(var_10h) = gp;
0x000348b0 sw ra, 0x34(sp) | *(var_34h) = ra;
0x000348b4 sw s5, 0x30(sp) | *(var_30h) = s5;
0x000348b8 sw s4, 0x2c(sp) | *(var_2ch) = s4;
0x000348bc sw s3, 0x28(sp) | *(var_28h) = s3;
0x000348c0 sw s2, 0x24(sp) | *(var_24h) = s2;
0x000348c4 sw s1, 0x20(sp) | *(var_20h) = s1;
0x000348c8 sw s0, 0x1c(sp) | *(var_1ch) = s0;
| if (a1 == 0) {
0x000348cc beql a1, zero, 0x34a20 | goto label_2;
| }
0x000348d0 lw a2, -0x7d90(gp) | a2 = *((gp - 8036));
0x000348d4 move s3, a0 | s3 = a0;
0x000348d8 move s1, a1 | s1 = a1;
| if (a2 == 0) {
0x000348dc beqz a2, 0x34988 | goto label_3;
| }
0x000348e0 lw v0, 0xc(a1) | v0 = *((a1 + 3));
0x000348e4 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (v0 != 0) {
0x000348e8 bnez v0, 0x34a0c | goto label_4;
| }
| label_1:
0x000348ec lw s0, 4(s1) | s0 = *((s1 + 1));
0x000348f0 lw s4, -0x7d90(gp) | s4 = *((gp - 8036));
| if (s0 <= 0) {
0x000348f4 blez s0, 0x34a50 | goto label_5;
| }
0x000348f8 lw s5, -0x7fdc(gp) | s5 = *(gp);
| /* esilref: '&lX' */
0x000348fc addiu s4, s4, -0x7fa4 | s4 += -0x7fa4;
0x00034900 addiu s0, s0, -1 | s0 += -1;
0x00034904 move s2, zero | s2 = 0;
0x00034908 move a2, s4 | a2 = s4;
| /* str._08lX */
0x0003490c addiu s5, s5, 0x51b4 | s5 += 0x51b4;
| do {
| label_0:
0x00034910 lw v0, 0x14(s1) | v0 = *((s1 + 5));
0x00034914 sll a3, s0, 2 | a3 = s0 << 2;
0x00034918 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0003491c lwx a3, a3(v0) | __asm ("lwx a3, a3(v0)");
0x00034920 addiu a1, zero, 1 | a1 = 1;
0x00034924 move a0, s3 | a0 = s3;
0x00034928 jalr t9 | t9 ();
0x0003492c addu s2, s2, v0 | s2 += v0;
0x00034930 lw gp, 0x10(sp) | gp = *(var_10h);
| if (s0 == 0) {
0x00034934 beqz s0, 0x34958 | goto label_6;
| }
0x00034938 lw v0, 4(s1) | v0 = *((s1 + 1));
0x0003493c move a2, s5 | a2 = s5;
| if (v0 == s0) {
0x00034940 beq v0, s0, 0x3494c | goto label_7;
| }
0x00034944 addiu s0, s0, -1 | s0 += -1;
0x00034948 b 0x34910 |
| } while (1);
| label_7:
0x0003494c move a2, s4 | a2 = s4;
0x00034950 addiu s0, s0, -1 | s0 += -1;
0x00034954 b 0x34910 | goto label_0;
| label_6:
0x00034958 lw s0, 4(s1) | s0 = *((s1 + 1));
| do {
0x0003495c lw ra, 0x34(sp) | ra = *(var_34h);
| if (s0 != 0) {
0x00034960 beqz s0, 0x349d4 |
0x00034964 move v0, s2 | v0 = s2;
0x00034968 lw s5, 0x30(sp) | s5 = *(var_30h);
0x0003496c lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x00034970 lw s3, 0x28(sp) | s3 = *(var_28h);
0x00034974 lw s2, 0x24(sp) | s2 = *(var_24h);
0x00034978 lw s1, 0x20(sp) | s1 = *(var_20h);
0x0003497c lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00034980 addiu sp, sp, 0x38 |
0x00034984 jr ra | return v0;
| label_3:
0x00034988 lw t9, -0x7db0(gp) | t9 = sym.mpi_get_nbits;
0x0003498c move a0, a1 | a0 = a1;
0x00034990 bal 0x317a8 | sym_mpi_get_nbits ();
0x00034994 lw gp, 0x10(sp) | gp = *(var_10h);
0x00034998 lw ra, 0x34(sp) | ra = *(var_34h);
0x0003499c lw s5, 0x30(sp) | s5 = *(var_30h);
0x000349a0 lw a2, -0x7d90(gp) | a2 = *((gp - 8036));
0x000349a4 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x000349a8 lw s2, 0x24(sp) | s2 = *(var_24h);
0x000349ac lw s1, 0x20(sp) | s1 = *(var_20h);
0x000349b0 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x000349b4 move a0, s3 | a0 = s3;
0x000349b8 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x000349bc lw s3, 0x28(sp) | s3 = *(var_28h);
0x000349c0 move a3, v0 | a3 = v0;
| /* str.__u_bits_ */
0x000349c4 addiu a2, a2, -0x7f94 | a2 += -0x7f94;
0x000349c8 addiu a1, zero, 1 | a1 = 1;
0x000349cc addiu sp, sp, 0x38 |
0x000349d0 jr t9 | t9 ();
| }
0x000349d4 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x000349d8 move a1, s3 | a1 = s3;
0x000349dc addiu a0, zero, 0x30 | a0 = 0x30;
0x000349e0 jalr t9 | t9 ();
0x000349e4 lw ra, 0x34(sp) | ra = *(var_34h);
0x000349e8 move v0, s2 | v0 = s2;
0x000349ec lw s5, 0x30(sp) | s5 = *(var_30h);
0x000349f0 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x000349f4 lw s3, 0x28(sp) | s3 = *(var_28h);
0x000349f8 lw s2, 0x24(sp) | s2 = *(var_24h);
0x000349fc lw s1, 0x20(sp) | s1 = *(var_20h);
0x00034a00 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00034a04 addiu sp, sp, 0x38 |
0x00034a08 jr ra | return v0;
| label_4:
0x00034a0c move a1, a0 | a1 = a0;
0x00034a10 addiu a0, zero, 0x2d | a0 = 0x2d;
0x00034a14 jalr t9 | t9 ();
0x00034a18 lw gp, 0x10(sp) | gp = *(var_10h);
0x00034a1c b 0x348ec | goto label_1;
| label_2:
0x00034a20 lw ra, 0x34(sp) | ra = *(var_34h);
0x00034a24 lw s5, 0x30(sp) | s5 = *(var_30h);
0x00034a28 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x00034a2c lw s3, 0x28(sp) | s3 = *(var_28h);
0x00034a30 lw s2, 0x24(sp) | s2 = *(var_24h);
0x00034a34 lw s1, 0x20(sp) | s1 = *(var_20h);
0x00034a38 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00034a3c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| /* str._MPI_NULL_ */
0x00034a40 addiu a2, a2, -0x7fa0 | a2 += -0x7fa0;
0x00034a44 addiu a1, zero, 1 | a1 = 1;
0x00034a48 addiu sp, sp, 0x38 |
0x00034a4c jr t9 | t9 ();
| label_5:
0x00034a50 move s2, zero | s2 = 0;
0x00034a54 b 0x3495c |
| } while (1);
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x1d814 */
| #include <stdint.h>
|
; (fcn) sym.parse_signature () | void parse_signature () {
0x0001d814 lui gp, 4 |
0x0001d818 addiu gp, gp, 0x491c |
0x0001d81c addu gp, gp, t9 | gp += t9;
0x0001d820 addiu sp, sp, -0x88 |
0x0001d824 sltiu v0, a2, 0x10 | v0 = (a2 < 0x10) ? 1 : 0;
0x0001d828 sw s4, 0x70(sp) | *(var_70h) = s4;
0x0001d82c lw s4, -0x781c(gp) | s4 = *((gp - 7687));
0x0001d830 sw gp, 0x38(sp) | *(var_38h_2) = gp;
0x0001d834 sw s2, 0x68(sp) | *(var_68h) = s2;
0x0001d838 lw v1, (s4) | v1 = *(s4);
0x0001d83c sw s0, 0x60(sp) | *(var_60h) = s0;
0x0001d840 sw ra, 0x84(sp) | *(var_84h) = ra;
0x0001d844 sw fp, 0x80(sp) | *(var_80h) = fp;
0x0001d848 sw s7, 0x7c(sp) | *(var_7ch) = s7;
0x0001d84c sw s6, 0x78(sp) | *(var_78h) = s6;
0x0001d850 sw s5, 0x74(sp) | *(var_74h) = s5;
0x0001d854 sw s3, 0x6c(sp) | *(var_6ch) = s3;
0x0001d858 sw s1, 0x64(sp) | *(var_64h) = s1;
0x0001d85c move s2, a2 | s2 = a2;
0x0001d860 move s0, a0 | s0 = a0;
0x0001d864 sw v1, 0x5c(sp) | *(var_5ch) = v1;
0x0001d868 move s6, a1 | s6 = a1;
| if (v0 != 0) {
0x0001d86c bnez v0, 0x1dd6c | goto label_25;
| }
0x0001d870 lw v0, 0x20(a0) | v0 = *((a0 + 8));
0x0001d874 move s1, a3 | s1 = a3;
| if (v0 == 0) {
0x0001d878 bnez v0, 0x1d890 |
0x0001d87c lw v0, 0x2c(a0) | v0 = *((a0 + 11));
0x0001d880 lw v1, 0x30(a0) | v1 = *((a0 + 12));
0x0001d884 sltu v1, v0, v1 | v1 = (v0 < v1) ? 1 : 0;
0x0001d888 lw v1, 0x10(a0) | v1 = *((a0 + 4));
| if (v1 == 0) {
0x0001d88c bnel v1, zero, 0x1db2c | goto label_26;
| }
| }
0x0001d890 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001d894 move a0, s0 | a0 = s0;
0x0001d898 jalr t9 | t9 ();
0x0001d89c andi a2, v0, 0xff | a2 = v0 & 0xff;
0x0001d8a0 addiu v0, zero, 4 | v0 = 4;
0x0001d8a4 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001d8a8 sb a2, 0x14(s1) | *((s1 + 20)) = a2;
0x0001d8ac addiu s7, s2, -1 | s7 = s2 + -1;
| if (a2 == v0) {
0x0001d8b0 beq a2, v0, 0x1db64 | goto label_27;
| }
| label_0:
0x0001d8b4 addiu v0, a2, -2 | v0 = a2 + -2;
0x0001d8b8 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x0001d8bc lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 == 0) {
0x0001d8c0 beqz v0, 0x1e118 | goto label_28;
| }
0x0001d8c4 lw s3, 0x20(s0) | s3 = *((s0 + 8));
0x0001d8c8 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (s3 == 0) {
0x0001d8cc bnez s3, 0x1d8e8 |
0x0001d8d0 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x0001d8d4 lw v1, 0x30(s0) | v1 = *((s0 + 12));
0x0001d8d8 sltu v0, a0, v1 | v0 = (a0 < v1) ? 1 : 0;
0x0001d8dc lw v0, 0x10(s0) | v0 = *((s0 + 4));
| if (v0 == 0) {
0x0001d8e0 bnel v0, zero, 0x1de50 | goto label_29;
| }
0x0001d8e4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| }
0x0001d8e8 move a0, s0 | a0 = s0;
0x0001d8ec jalr t9 | t9 ();
0x0001d8f0 andi s5, v0, 0xff | s5 = v0 & 0xff;
0x0001d8f4 lw v0, 0x20(s0) | v0 = *((s0 + 8));
0x0001d8f8 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001d8fc addiu s7, s2, -2 | s7 = s2 + -2;
0x0001d900 move s3, zero | s3 = 0;
| if (v0 != 0) {
0x0001d904 bnez v0, 0x1db74 | goto label_30;
| }
| label_1:
0x0001d908 lw v1, 0x30(s0) | v1 = *((s0 + 12));
| label_10:
0x0001d90c lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x0001d910 sltu v1, a0, v1 | v1 = (a0 < v1) ? 1 : 0;
0x0001d914 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v1 == 0) {
0x0001d918 beqz v1, 0x1db78 | goto label_31;
| }
0x0001d91c lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0001d920 lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001d924 addiu a1, v1, 1 | a1 = v1 + 1;
0x0001d928 lw v0, 0x34(s0) | v0 = *((s0 + 13));
0x0001d92c sltu v1, a1, v1 | v1 = (a1 < v1) ? 1 : 0;
0x0001d930 addu v1, v1, a2 | v1 += a2;
0x0001d934 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001d938 sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001d93c sw v1, 0x14(s0) | *((s0 + 5)) = v1;
0x0001d940 sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001d944 lbux v0, a0(v0) | __asm ("lbux v0, a0(v0)");
0x0001d948 sb v0, 0x15(s1) | *((s1 + 21)) = v0;
| if (s3 == 0) {
0x0001d94c beqz s3, 0x1db90 | goto label_32;
| }
| label_2:
0x0001d950 lw v0, 0x20(s0) | v0 = *((s0 + 8));
0x0001d954 addiu s2, s7, -1 | s2 = s7 + -1;
| if (v0 != 0) {
0x0001d958 bnez v0, 0x1dbd8 | goto label_33;
| }
| label_3:
0x0001d95c lw v1, 0x2c(s0) | v1 = *((s0 + 11));
0x0001d960 lw v0, 0x30(s0) | v0 = *((s0 + 12));
0x0001d964 sltu v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
0x0001d968 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001d96c beqz v0, 0x1dbdc | goto label_34;
| }
0x0001d970 lw v0, 0x10(s0) | v0 = *((s0 + 4));
0x0001d974 lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001d978 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001d97c lw a0, 0x34(s0) | a0 = *((s0 + 13));
0x0001d980 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001d984 addu v0, v0, a2 | v0 += a2;
0x0001d988 addiu a2, v1, 1 | a2 = v1 + 1;
0x0001d98c sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001d990 sw v0, 0x14(s0) | *((s0 + 5)) = v0;
0x0001d994 sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001d998 lbux v1, v1(a0) | __asm ("lbux v1, v1(a0)");
0x0001d99c sb v1, 0x16(s1) | *((s1 + 22)) = v1;
| label_4:
0x0001d9a0 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x0001d9a4 lw v1, 0x30(s0) | v1 = *((s0 + 12));
0x0001d9a8 sltu v1, a0, v1 | v1 = (a0 < v1) ? 1 : 0;
0x0001d9ac lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v1 == 0) {
0x0001d9b0 beqz v1, 0x1dbf8 | goto label_35;
| }
0x0001d9b4 lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0001d9b8 lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001d9bc addiu a1, v1, 1 | a1 = v1 + 1;
0x0001d9c0 sltu v1, a1, v1 | v1 = (a1 < v1) ? 1 : 0;
0x0001d9c4 lw v0, 0x34(s0) | v0 = *((s0 + 13));
0x0001d9c8 addu v1, v1, a2 | v1 += a2;
0x0001d9cc sw v1, 0x14(s0) | *((s0 + 5)) = v1;
0x0001d9d0 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001d9d4 lbu v1, (s1) | v1 = *(s1);
0x0001d9d8 sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001d9dc sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001d9e0 lbux v0, a0(v0) | __asm ("lbux v0, a0(v0)");
0x0001d9e4 andi v1, v1, 0xcf | v1 &= 0xcf;
0x0001d9e8 ori v1, v1, 0x30 | v1 |= 0x30;
0x0001d9ec sb v0, 0x17(s1) | *((s1 + 23)) = v0;
0x0001d9f0 sb v1, (s1) | *(s1) = v1;
| if (s3 != 0) {
0x0001d9f4 bnez s3, 0x1dc20 | goto label_36;
| }
| label_5:
0x0001d9f8 addiu s2, s2, -2 | s2 += -2;
| label_7:
0x0001d9fc sltiu v0, s2, 5 | v0 = (s2 < 5) ? 1 : 0;
| label_6:
0x0001da00 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 != 0) {
0x0001da04 bnez v0, 0x1e21c | goto label_37;
| }
0x0001da08 lw v0, 0x20(s0) | v0 = *((s0 + 8));
0x0001da0c lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| if (v0 == 0) {
0x0001da10 bnez v0, 0x1da2c |
0x0001da14 lw v1, 0x2c(s0) | v1 = *((s0 + 11));
0x0001da18 lw v0, 0x30(s0) | v0 = *((s0 + 12));
0x0001da1c sltu v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
0x0001da20 lw v0, 0x10(s0) | v0 = *((s0 + 4));
| if (v0 == 0) {
0x0001da24 bnel v0, zero, 0x1de08 | goto label_38;
| }
0x0001da28 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| }
0x0001da2c move a0, s0 | a0 = s0;
0x0001da30 jalr t9 | t9 ();
0x0001da34 lw v1, 0x20(s0) | v1 = *((s0 + 8));
0x0001da38 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001da3c sb v0, 0x34(s1) | *((s1 + 52)) = v0;
| if (v1 == 0) {
0x0001da40 bnez v1, 0x1da58 |
0x0001da44 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x0001da48 lw v1, 0x30(s0) | v1 = *((s0 + 12));
0x0001da4c sltu v1, a0, v1 | v1 = (a0 < v1) ? 1 : 0;
0x0001da50 lw v1, 0x10(s0) | v1 = *((s0 + 4));
| if (v1 == 0) {
0x0001da54 bnel v1, zero, 0x1dddc | goto label_39;
| }
| }
0x0001da58 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_9:
0x0001da5c move a0, s0 | a0 = s0;
0x0001da60 jalr t9 | t9 ();
0x0001da64 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001da68 andi v0, v0, 0xff | v0 &= 0xff;
| label_8:
0x0001da6c sb v0, 0x35(s1) | *((s1 + 53)) = v0;
0x0001da70 addiu s2, s2, -2 | s2 += -2;
0x0001da74 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
| if (s3 != 0) {
0x0001da78 beqz s3, 0x1da84 |
0x0001da7c lw s6, -0x7f34(gp) | s6 = sym.enum_sig_subpkt;
| if (a3 != 0) {
0x0001da80 bnez a3, 0x1dea4 | goto label_40;
| }
| }
| label_12:
0x0001da84 lw s6, -0x7fb4(gp) | s6 = *((gp - 8173));
0x0001da88 lw v0, -0x4cac(s6) | v0 = *((s6 - 4907));
0x0001da8c lw a2, 0xc(s1) | a2 = *((s1 + 3));
| if (v0 == 0) {
0x0001da90 bnel v0, zero, 0x1e1b0 | goto label_41;
| }
| label_15:
0x0001da94 lw t9, -0x7f4c(gp) | t9 = sym.pubkey_get_nsig;
0x0001da98 move a0, a3 | a0 = a3;
0x0001da9c bal 0x27620 | sym_pubkey_get_nsig ();
0x0001daa0 move t0, v0 | t0 = v0;
0x0001daa4 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 == 0) {
0x0001daa8 beqz v0, 0x1dd04 | goto label_42;
| }
0x0001daac lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
| if (v0 <= 0) {
0x0001dab0 blez v0, 0x1de9c | goto label_43;
| }
0x0001dab4 addiu s5, s1, 0x38 | s5 = s1 + 0x38;
0x0001dab8 sw v0, 0x48(sp) | *(var_48h_2) = v0;
0x0001dabc lw s1, -0x7fdc(gp) | s1 = *(gp);
0x0001dac0 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001dac4 move s7, zero | s7 = 0;
0x0001dac8 sw v0, 0x4c(sp) | *(var_4ch_2) = v0;
0x0001dacc move s3, zero | s3 = 0;
0x0001dad0 addiu fp, sp, 0x54 | fp = sp + 0x54;
| /* str._tdata:_ */
0x0001dad4 addiu s1, s1, 0x5d00 | s1 += 0x5d00;
| do {
0x0001dad8 lw t9, -0x7bbc(gp) | t9 = sym.mpi_read;
0x0001dadc sw t0, 0x44(sp) | *(var_44h_3) = t0;
0x0001dae0 move a1, fp | a1 = fp;
0x0001dae4 move a0, s0 | a0 = s0;
0x0001dae8 sw s2, 0x54(sp) | *(var_54h) = s2;
0x0001daec move a2, zero | a2 = 0;
0x0001daf0 bal 0x34570 | sym_mpi_read ();
0x0001daf4 lw a1, 0x54(sp) | a1 = *(var_54h);
0x0001daf8 lw a0, -0x4cac(s6) | a0 = *((s6 - 4907));
0x0001dafc lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001db00 sw v0, (s5) | *(s5) = v0;
0x0001db04 subu s2, s2, a1 | __asm ("subu s2, s2, a1");
0x0001db08 lw t0, 0x44(sp) | t0 = *(var_44h_3);
| if (a0 != 0) {
0x0001db0c bnez a0, 0x1e14c | goto label_44;
| }
| label_14:
0x0001db10 addiu v1, zero, 0xe | v1 = 0xe;
0x0001db14 addiu s7, s7, 1 | s7++;
| if (v0 != 0) {
0x0001db18 movz s3, v1, v0 | s3 = v1;
| }
0x0001db1c addiu s5, s5, 4 | s5 += 4;
0x0001db20 bne t0, s7, 0x1dad8 |
| } while (t0 != s7);
0x0001db24 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
0x0001db28 b 0x1dd88 | goto label_45;
| label_26:
0x0001db2c lw a1, 0x14(a0) | a1 = *((a0 + 5));
0x0001db30 addiu a0, v1, 1 | a0 = v1 + 1;
0x0001db34 lw a2, 0x34(s0) | a2 = *((s0 + 13));
0x0001db38 sltu v1, a0, v1 | v1 = (a0 < v1) ? 1 : 0;
0x0001db3c addu v1, v1, a1 | v1 += a1;
0x0001db40 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001db44 sw a0, 0x10(s0) | *((s0 + 4)) = a0;
0x0001db48 sw v1, 0x14(s0) | *((s0 + 5)) = v1;
0x0001db4c sw a1, 0x2c(s0) | *((s0 + 11)) = a1;
0x0001db50 lbux a2, v0(a2) | __asm ("lbux a2, v0(a2)");
0x0001db54 addiu v0, zero, 4 | v0 = 4;
0x0001db58 sb a2, 0x14(s1) | *((s1 + 20)) = a2;
0x0001db5c addiu s7, s2, -1 | s7 = s2 + -1;
| if (a2 != v0) {
0x0001db60 bne a2, v0, 0x1d8b4 | goto label_0;
| }
| label_27:
0x0001db64 lw v0, 0x20(s0) | v0 = *((s0 + 8));
0x0001db68 addiu s3, zero, 1 | s3 = 1;
0x0001db6c move s5, zero | s5 = 0;
| if (v0 == 0) {
0x0001db70 beqz v0, 0x1d908 | goto label_1;
| }
| label_30:
0x0001db74 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_31:
0x0001db78 move a0, s0 | a0 = s0;
0x0001db7c jalr t9 | t9 ();
0x0001db80 andi v0, v0, 0xff | v0 &= 0xff;
0x0001db84 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001db88 sb v0, 0x15(s1) | *((s1 + 21)) = v0;
| if (s3 != 0) {
0x0001db8c bnez s3, 0x1d950 | goto label_2;
| }
| label_32:
0x0001db90 lw s2, -0x7bd4(gp) | s2 = *(gp);
| /* fcn.0001a990 */
0x0001db94 addiu s2, s2, -0x5670 | s2 += -0x5670;
0x0001db98 move t9, s2 | t9 = s2;
0x0001db9c move a0, s0 | a0 = s0;
0x0001dba0 bal 0x1a990 | fcn_0001a990 ();
0x0001dba4 sw v0, 0xc(s1) | *((s1 + 3)) = v0;
0x0001dba8 move t9, s2 | t9 = s2;
0x0001dbac move a0, s0 | a0 = s0;
0x0001dbb0 bal 0x1a990 | fcn_0001a990 ();
0x0001dbb4 sw v0, 4(s1) | *((s1 + 1)) = v0;
0x0001dbb8 move t9, s2 | t9 = s2;
0x0001dbbc move a0, s0 | a0 = s0;
0x0001dbc0 bal 0x1a990 | fcn_0001a990 ();
0x0001dbc4 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dbc8 sw v0, 8(s1) | *((s1 + 2)) = v0;
0x0001dbcc lw v0, 0x20(s0) | v0 = *((s0 + 8));
0x0001dbd0 addiu s2, s7, -0xd | s2 = s7 + -0xd;
| if (v0 == 0) {
0x0001dbd4 beqz v0, 0x1d95c | goto label_3;
| }
| label_33:
0x0001dbd8 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_34:
0x0001dbdc move a0, s0 | a0 = s0;
0x0001dbe0 jalr t9 | t9 ();
0x0001dbe4 lw v1, 0x20(s0) | v1 = *((s0 + 8));
0x0001dbe8 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dbec sb v0, 0x16(s1) | *((s1 + 22)) = v0;
| if (v1 == 0) {
0x0001dbf0 beqz v1, 0x1d9a0 | goto label_4;
| }
0x0001dbf4 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
| label_35:
0x0001dbf8 move a0, s0 | a0 = s0;
0x0001dbfc jalr t9 | t9 ();
0x0001dc00 lbu v1, (s1) | v1 = *(s1);
0x0001dc04 andi v0, v0, 0xff | v0 &= 0xff;
0x0001dc08 andi v1, v1, 0xcf | v1 &= 0xcf;
0x0001dc0c ori v1, v1, 0x30 | v1 |= 0x30;
0x0001dc10 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dc14 sb v0, 0x17(s1) | *((s1 + 23)) = v0;
0x0001dc18 sb v1, (s1) | *(s1) = v1;
| if (s3 == 0) {
0x0001dc1c beqz s3, 0x1d9f8 | goto label_5;
| }
| label_36:
0x0001dc20 lw s7, -0x7bd4(gp) | s7 = *(gp);
| /* fcn.0001ab8c */
0x0001dc24 addiu s7, s7, -0x5474 | s7 += -0x5474;
0x0001dc28 move t9, s7 | t9 = s7;
0x0001dc2c move a0, s0 | a0 = s0;
0x0001dc30 bal 0x1ab8c | fcn_0001ab8c ();
0x0001dc34 sltiu v1, v0, 0x2711 | v1 = (v0 < 0x2711) ? 1 : 0;
0x0001dc38 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dc3c sw v0, 0x54(sp) | *(var_54h) = v0;
0x0001dc40 addiu s2, s2, -4 | s2 += -4;
| if (v1 == 0) {
0x0001dc44 beqz v1, 0x1e384 | goto label_46;
| }
0x0001dc48 move t9, s7 | t9 = s7;
| if (v0 != 0) {
0x0001dc4c beqz v0, 0x1dc98 |
0x0001dc50 lw t9, -0x7f28(gp) | t9 = sym.xmalloc;
0x0001dc54 addiu a0, v0, 0xb | a0 = v0 + 0xb;
0x0001dc58 bal 0x3cb1c | sym_xmalloc ();
0x0001dc5c lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dc60 lw v1, 0x54(sp) | v1 = *(var_54h);
0x0001dc64 sw v0, 0x2c(s1) | *((s1 + 11)) = v0;
0x0001dc68 lw t9, -0x7f64(gp) | t9 = sym.iobuf_read;
0x0001dc6c move a2, v1 | a2 = v1;
0x0001dc70 sw v1, (v0) | *(v0) = v1;
0x0001dc74 sw v1, 4(v0) | *((v0 + 1)) = v1;
0x0001dc78 addiu a1, v0, 8 | a1 = v0 + 8;
0x0001dc7c move a0, s0 | a0 = s0;
0x0001dc80 jalr t9 | t9 ();
0x0001dc84 lw v1, 0x54(sp) | v1 = *(var_54h);
0x0001dc88 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 != v1) {
0x0001dc8c bne v0, v1, 0x1e3d8 | goto label_47;
| }
0x0001dc90 subu s2, s2, v0 | __asm ("subu s2, s2, v0");
0x0001dc94 move t9, s7 | t9 = s7;
| }
0x0001dc98 move a0, s0 | a0 = s0;
0x0001dc9c bal 0x1ab8c | fcn_0001ab8c ();
0x0001dca0 sltiu v1, v0, 0x2711 | v1 = (v0 < 0x2711) ? 1 : 0;
0x0001dca4 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dca8 sw v0, 0x54(sp) | *(var_54h) = v0;
0x0001dcac addiu s2, s2, -2 | s2 += -2;
| if (v1 == 0) {
0x0001dcb0 beqz v1, 0x1e28c | goto label_48;
| }
| if (v0 == 0) {
0x0001dcb4 beql v0, zero, 0x1da00 | goto label_6;
| }
0x0001dcb8 sltiu v0, s2, 5 | v0 = (s2 < 5) ? 1 : 0;
0x0001dcbc lw t9, -0x7f28(gp) | t9 = sym.xmalloc;
0x0001dcc0 addiu a0, v0, 0xb | a0 = v0 + 0xb;
0x0001dcc4 bal 0x3cb1c | sym_xmalloc ();
0x0001dcc8 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dccc lw v1, 0x54(sp) | v1 = *(var_54h);
0x0001dcd0 sw v0, 0x30(s1) | *((s1 + 12)) = v0;
0x0001dcd4 lw t9, -0x7f64(gp) | t9 = sym.iobuf_read;
0x0001dcd8 move a2, v1 | a2 = v1;
0x0001dcdc sw v1, (v0) | *(v0) = v1;
0x0001dce0 sw v1, 4(v0) | *((v0 + 1)) = v1;
0x0001dce4 addiu a1, v0, 8 | a1 = v0 + 8;
0x0001dce8 move a0, s0 | a0 = s0;
0x0001dcec jalr t9 | t9 ();
0x0001dcf0 lw v1, 0x54(sp) | v1 = *(var_54h);
0x0001dcf4 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 != v1) {
0x0001dcf8 bne v0, v1, 0x1e3f4 | goto label_49;
| }
0x0001dcfc subu s2, s2, v0 | __asm ("subu s2, s2, v0");
0x0001dd00 b 0x1d9fc | goto label_7;
| label_42:
0x0001dd04 lw v0, -0x4cac(s6) | v0 = *((s6 - 4907));
0x0001dd08 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
| if (v0 != 0) {
0x0001dd0c bnez v0, 0x1e0f0 | goto label_50;
| }
| label_13:
0x0001dd10 lw t9, -0x7bd4(gp) | t9 = *(gp);
| /* fcn.0001ac9c */
0x0001dd14 addiu t9, t9, -0x5364 | t9 += -0x5364;
0x0001dd18 move a0, a3 | a0 = a3;
0x0001dd1c bal 0x1ac9c | fcn_0001ac9c ();
0x0001dd20 sltiu v0, s2, 0x2801 | v0 = (s2 < 0x2801) ? 1 : 0;
0x0001dd24 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 == 0) {
0x0001dd28 beqz v0, 0x1de80 | goto label_51;
| }
0x0001dd2c lw t9, -0x7bd4(gp) | t9 = *(gp);
0x0001dd30 move a1, s2 | a1 = s2;
| /* fcn.0001ae5c */
0x0001dd34 addiu t9, t9, -0x51a4 | t9 += -0x51a4;
0x0001dd38 move a0, s0 | a0 = s0;
0x0001dd3c bal 0x1ae5c | fcn_0001ae5c ();
0x0001dd40 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dd44 move a2, s2 | a2 = s2;
0x0001dd48 move a1, v0 | a1 = v0;
0x0001dd4c lw t9, -0x7bb8(gp) | t9 = sym.mpi_set_opaque;
0x0001dd50 move a0, zero | a0 = 0;
0x0001dd54 bal 0x37be4 | sym_mpi_set_opaque ();
0x0001dd58 move s3, zero | s3 = 0;
0x0001dd5c lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dd60 sw v0, 0x38(s1) | *((s1 + 14)) = v0;
0x0001dd64 move s2, zero | s2 = 0;
0x0001dd68 b 0x1dd84 | goto label_11;
| label_25:
0x0001dd6c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001dd70 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.packet__d__too_short_n */
0x0001dd74 addiu a0, a0, 0x53cc | a0 += 0x53cc;
0x0001dd78 bal 0x38550 | sym_g10_log_error ();
0x0001dd7c lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dd80 move s3, zero | s3 = 0;
| label_11:
0x0001dd84 lw t9, -0x7bc0(gp) | t9 = sym.iobuf_skip_rest;
| label_45:
0x0001dd88 move a0, s0 | a0 = s0;
0x0001dd8c move a2, zero | a2 = 0;
0x0001dd90 move a1, s2 | a1 = s2;
0x0001dd94 jalr t9 | t9 ();
0x0001dd98 lw a0, 0x5c(sp) | a0 = *(var_5ch);
0x0001dd9c lw v1, (s4) | v1 = *(s4);
0x0001dda0 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001dda4 move v0, s3 | v0 = s3;
| if (a0 != v1) {
0x0001dda8 bne a0, v1, 0x1e410 | goto label_52;
| }
0x0001ddac lw ra, 0x84(sp) | ra = *(var_84h);
0x0001ddb0 lw fp, 0x80(sp) | fp = *(var_80h);
0x0001ddb4 lw s7, 0x7c(sp) | s7 = *(var_7ch);
0x0001ddb8 lw s6, 0x78(sp) | s6 = *(var_78h);
0x0001ddbc lw s5, 0x74(sp) | s5 = *(var_74h);
0x0001ddc0 lw s4, 0x70(sp) | s4 = *(var_70h);
0x0001ddc4 lw s3, 0x6c(sp) | s3 = *(var_6ch);
0x0001ddc8 lw s2, 0x68(sp) | s2 = *(var_68h);
0x0001ddcc lw s1, 0x64(sp) | s1 = *(var_64h);
0x0001ddd0 lw s0, 0x60(sp) | s0 = *(var_60h);
0x0001ddd4 addiu sp, sp, 0x88 |
0x0001ddd8 jr ra | return v0;
| do {
| label_39:
0x0001dddc lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001dde0 addiu a1, v1, 1 | a1 = v1 + 1;
0x0001dde4 sltu v1, a1, v1 | v1 = (a1 < v1) ? 1 : 0;
0x0001dde8 lw v0, 0x34(s0) | v0 = *((s0 + 13));
0x0001ddec addu v1, v1, a2 | v1 += a2;
0x0001ddf0 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001ddf4 sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001ddf8 sw v1, 0x14(s0) | *((s0 + 5)) = v1;
0x0001ddfc sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001de00 lbux v0, a0(v0) | __asm ("lbux v0, a0(v0)");
0x0001de04 b 0x1da6c | goto label_8;
| label_38:
0x0001de08 lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001de0c addiu a1, v0, 1 | a1 = v0 + 1;
0x0001de10 lw a0, 0x34(s0) | a0 = *((s0 + 13));
0x0001de14 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001de18 addu v0, v0, a2 | v0 += a2;
0x0001de1c addiu a2, v1, 1 | a2 = v1 + 1;
0x0001de20 sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001de24 sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001de28 sw v0, 0x14(s0) | *((s0 + 5)) = v0;
0x0001de2c lbux v1, v1(a0) | __asm ("lbux v1, v1(a0)");
0x0001de30 sb v1, 0x34(s1) | *((s1 + 52)) = v1;
0x0001de34 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x0001de38 lw v1, 0x30(s0) | v1 = *((s0 + 12));
0x0001de3c sltu v1, a0, v1 | v1 = (a0 < v1) ? 1 : 0;
0x0001de40 lw v1, 0x10(s0) | v1 = *((s0 + 4));
0x0001de44 bnel v1, zero, 0x1dddc |
| } while (v1 == 0);
0x0001de48 lw t9, -0x7c38(gp) | t9 = sym.iobuf_readbyte;
0x0001de4c b 0x1da5c | goto label_9;
| label_29:
0x0001de50 lw a2, 0x14(s0) | a2 = *((s0 + 5));
0x0001de54 addiu a1, v0, 1 | a1 = v0 + 1;
0x0001de58 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0001de5c lw s5, 0x34(s0) | s5 = *((s0 + 13));
0x0001de60 addu v0, v0, a2 | v0 += a2;
0x0001de64 addiu a2, a0, 1 | a2 = a0 + 1;
0x0001de68 sw a1, 0x10(s0) | *((s0 + 4)) = a1;
0x0001de6c sw v0, 0x14(s0) | *((s0 + 5)) = v0;
0x0001de70 sw a2, 0x2c(s0) | *((s0 + 11)) = a2;
0x0001de74 lbux s5, a0(s5) | __asm ("lbux s5, a0(s5)");
0x0001de78 addiu s7, s2, -2 | s7 = s2 + -2;
0x0001de7c b 0x1d90c | goto label_10;
| label_51:
0x0001de80 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001de84 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.signature_packet:_too_much_data_n */
0x0001de88 addiu a0, a0, 0x5cdc | a0 += 0x5cdc;
0x0001de8c bal 0x38550 | sym_g10_log_error ();
0x0001de90 addiu s3, zero, 0xe | s3 = 0xe;
0x0001de94 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001de98 b 0x1dd84 | goto label_11;
| label_43:
0x0001de9c move s3, zero | s3 = 0;
0x0001dea0 b 0x1dd84 | goto label_11;
| label_40:
0x0001dea4 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001dea8 move a3, zero | a3 = 0;
0x0001deac sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001deb0 move a2, zero | a2 = 0;
0x0001deb4 move t9, s6 | t9 = s6;
0x0001deb8 addiu a1, zero, -3 | a1 = -3;
0x0001debc bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001dec0 move a3, zero | a3 = 0;
| if (v0 == 0) {
0x0001dec4 beqz v0, 0x1e138 | goto label_53;
| }
0x0001dec8 lw a0, 0x30(s1) | a0 = *((s1 + 12));
0x0001decc sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001ded0 move a2, zero | a2 = 0;
0x0001ded4 move t9, s6 | t9 = s6;
0x0001ded8 addiu a1, zero, -3 | a1 = -3;
0x0001dedc bal 0x1c758 | sym_enum_sig_subpkt ();
| if (v0 == 0) {
0x0001dee0 beql v0, zero, 0x1e13c | goto label_54;
| }
0x0001dee4 lhu v0, (s1) | v0 = *(s1);
| do {
0x0001dee8 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001deec move a3, zero | a3 = 0;
0x0001def0 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001def4 move a2, zero | a2 = 0;
0x0001def8 move t9, s6 | t9 = s6;
0x0001defc addiu a1, zero, 2 | a1 = 2;
0x0001df00 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001df04 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 == 0) {
0x0001df08 beqz v0, 0x1e320 | goto label_55;
| }
0x0001df0c lw t9, -0x7ec0(gp) | t9 = sym.buffer_to_u32;
0x0001df10 move a0, v0 | a0 = v0;
0x0001df14 bal 0x180d4 | sym_buffer_to_u32 ();
0x0001df18 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001df1c sw v0, 0xc(s1) | *((s1 + 3)) = v0;
| label_21:
0x0001df20 lw fp, -0x7ba4(gp) | fp = sym.parse_sig_subpkt2;
| label_19:
0x0001df24 move a2, zero | a2 = 0;
| label_20:
0x0001df28 addiu a1, zero, 0x10 | a1 = 0x10;
0x0001df2c move t9, fp | t9 = fp;
0x0001df30 move a0, s1 | a0 = s1;
0x0001df34 bal 0x1d654 | sym_parse_sig_subpkt2 ();
0x0001df38 move s7, v0 | s7 = v0;
0x0001df3c lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 == 0) {
0x0001df40 beqz v0, 0x1e2e4 | goto label_56;
| }
0x0001df44 lw t9, -0x7ec0(gp) | t9 = sym.buffer_to_u32;
0x0001df48 move a0, v0 | a0 = v0;
0x0001df4c bal 0x180d4 | sym_buffer_to_u32 ();
0x0001df50 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001df54 sw v0, 4(s1) | *((s1 + 1)) = v0;
0x0001df58 lw t9, -0x7ec0(gp) | t9 = sym.buffer_to_u32;
0x0001df5c addiu a0, s7, 4 | a0 = s7 + 4;
0x0001df60 bal 0x180d4 | sym_buffer_to_u32 ();
0x0001df64 sw v0, 8(s1) | *((s1 + 2)) = v0;
0x0001df68 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
| label_18:
0x0001df6c move a3, zero | a3 = 0;
0x0001df70 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001df74 move a2, zero | a2 = 0;
0x0001df78 move t9, s6 | t9 = s6;
0x0001df7c addiu a1, zero, 3 | a1 = 3;
0x0001df80 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001df84 move s7, v0 | s7 = v0;
0x0001df88 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 != 0) {
0x0001df8c beqz v0, 0x1dfa4 |
0x0001df90 lw t9, -0x7ec0(gp) | t9 = sym.buffer_to_u32;
0x0001df94 move a0, v0 | a0 = v0;
0x0001df98 bal 0x180d4 | sym_buffer_to_u32 ();
0x0001df9c lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 != 0) {
0x0001dfa0 bnez v0, 0x1e2bc | goto label_57;
| }
| }
0x0001dfa4 lw s7, 0x10(s1) | s7 = *((s1 + 4));
| label_17:
0x0001dfa8 lw t9, -0x7ea0(gp) | t9 = sym.make_timestamp;
| if (s7 != 0) {
0x0001dfac bnez s7, 0x1e35c | goto label_58;
| }
| label_23:
0x0001dfb0 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
| label_22:
0x0001dfb4 move a3, zero | a3 = 0;
0x0001dfb8 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001dfbc move a2, zero | a2 = 0;
0x0001dfc0 move t9, s6 | t9 = s6;
0x0001dfc4 addiu a1, zero, 0x1a | a1 = 0x1a;
0x0001dfc8 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001dfcc addiu v1, zero, 1 | v1 = 1;
| if (v0 != 0) {
0x0001dfd0 beqz v0, 0x1dfe0 |
0x0001dfd4 lhu v0, (s1) | v0 = *(s1);
0x0001dfd8 ins v0, v1, 6, 1 | __asm ("ins v0, v1, 6, 1");
0x0001dfdc sh v0, (s1) | *(s1) = v0;
| }
0x0001dfe0 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001dfe4 move a3, zero | a3 = 0;
0x0001dfe8 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001dfec move a2, zero | a2 = 0;
0x0001dff0 move t9, s6 | t9 = s6;
0x0001dff4 addiu a1, zero, 0x18 | a1 = 0x18;
0x0001dff8 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001dffc addiu v1, zero, 1 | v1 = 1;
| if (v0 != 0) {
0x0001e000 beqz v0, 0x1e010 |
0x0001e004 lhu v0, (s1) | v0 = *(s1);
0x0001e008 ins v0, v1, 8, 1 | __asm ("ins v0, v1, 8, 1");
0x0001e00c sh v0, (s1) | *(s1) = v0;
| }
0x0001e010 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e014 move a3, zero | a3 = 0;
0x0001e018 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e01c move a2, zero | a2 = 0;
0x0001e020 move t9, s6 | t9 = s6;
0x0001e024 addiu a1, zero, 0x14 | a1 = 0x14;
0x0001e028 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001e02c addiu v1, zero, 1 | v1 = 1;
| if (v0 != 0) {
0x0001e030 beqz v0, 0x1e040 |
0x0001e034 lhu v0, (s1) | v0 = *(s1);
0x0001e038 ins v0, v1, 7, 1 | __asm ("ins v0, v1, 7, 1");
0x0001e03c sh v0, (s1) | *(s1) = v0;
| }
0x0001e040 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e044 move a3, zero | a3 = 0;
0x0001e048 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e04c move a2, zero | a2 = 0;
0x0001e050 move t9, s6 | t9 = s6;
0x0001e054 addiu a1, zero, 7 | a1 = 7;
0x0001e058 bal 0x1c758 | sym_enum_sig_subpkt ();
| if (v0 != 0) {
0x0001e05c beql v0, zero, 0x1e074 |
0x0001e060 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e064 lbu v0, (v0) | v0 = *(v0);
| if (v0 == 0) {
0x0001e068 beql v0, zero, 0x1e280 | goto label_59;
| }
0x0001e06c lhu v0, (s1) | v0 = *(s1);
| label_16:
0x0001e070 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
| }
0x0001e074 addiu s7, sp, 0x58 | s7 = sp + 0x58;
0x0001e078 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e07c move a3, zero | a3 = 0;
0x0001e080 move a2, s7 | a2 = s7;
0x0001e084 move t9, s6 | t9 = s6;
0x0001e088 addiu a1, zero, 5 | a1 = 5;
0x0001e08c bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001e090 lw a0, 0x58(sp) | a0 = *(var_58h);
| if (v0 != 0) {
0x0001e094 beqz v0, 0x1e0a4 |
0x0001e098 addiu v1, zero, 2 | v1 = 2;
| if (a0 == v1) {
0x0001e09c beql a0, v1, 0x1e3a0 | goto label_60;
| }
0x0001e0a0 lbu v1, (v0) | v1 = *(v0);
| }
| label_24:
0x0001e0a4 move a2, zero | a2 = 0;
0x0001e0a8 addiu a1, zero, 4 | a1 = 4;
0x0001e0ac move t9, fp | t9 = fp;
0x0001e0b0 move a0, s1 | a0 = s1;
0x0001e0b4 bal 0x1d654 | sym_parse_sig_subpkt2 ();
0x0001e0b8 lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (v0 != 0) {
0x0001e0bc beqz v0, 0x1e0d8 |
0x0001e0c0 lbu v0, (v0) | v0 = *(v0);
0x0001e0c4 lbu v1, 0x15(s1) | v1 = *((s1 + 21));
| if (v0 == 0) {
0x0001e0c8 bnel v0, zero, 0x1e0dc | goto label_61;
| }
0x0001e0cc lhu v0, (s1) | v0 = *(s1);
0x0001e0d0 ins v0, zero, 4, 1 | __asm ("ins v0, zero, 4, 1");
0x0001e0d4 sh v0, (s1) | *(s1) = v0;
| }
0x0001e0d8 lbu v1, 0x15(s1) | v1 = *((s1 + 21));
| label_61:
0x0001e0dc addiu v0, zero, 0x1f | v0 = 0x1f;
0x0001e0e0 lw t9, -0x7ba0(gp) | t9 = sym.parse_revkeys;
| if (v1 == v0) {
0x0001e0e4 beq v1, v0, 0x1e2a8 | goto label_62;
| }
0x0001e0e8 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
0x0001e0ec b 0x1da84 | goto label_12;
| label_50:
0x0001e0f0 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0001e0f4 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001e0f8 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001e0fc lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
| /* str._tunknown_algorithm__d_n */
0x0001e100 addiu a2, a2, 0x5424 | a2 += 0x5424;
0x0001e104 addiu a1, zero, 1 | a1 = 1;
0x0001e108 jalr t9 | t9 ();
0x0001e10c lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e110 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
0x0001e114 b 0x1dd10 | goto label_13;
| label_28:
0x0001e118 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001e11c move a1, s6 | a1 = s6;
| /* str.packet__d__with_unknown_version__d_n */
0x0001e120 addiu a0, a0, 0x53a8 | a0 += 0x53a8;
0x0001e124 bal 0x38550 | sym_g10_log_error ();
0x0001e128 move s2, s7 | s2 = s7;
0x0001e12c lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e130 addiu s3, zero, 0xe | s3 = 0xe;
0x0001e134 b 0x1dd84 | goto label_11;
| label_53:
0x0001e138 lhu v0, (s1) | v0 = *(s1);
| label_54:
0x0001e13c addiu v1, zero, 1 | v1 = 1;
0x0001e140 ins v0, v1, 3, 1 | __asm ("ins v0, v1, 3, 1");
0x0001e144 sh v0, (s1) | *(s1) = v0;
0x0001e148 b 0x1dee8 |
| } while (1);
| label_44:
0x0001e14c lw v0, 0x48(sp) | v0 = *(var_48h_2);
0x0001e150 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x0001e154 addiu a2, zero, 7 | a2 = 7;
0x0001e158 lw a3, -0x4cb0(v0) | a3 = *((v0 - 4908));
0x0001e15c addiu a1, zero, 1 | a1 = 1;
0x0001e160 move a0, s1 | a0 = s1;
0x0001e164 jalr t9 | t9 ();
0x0001e168 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e16c lw v1, 0x4c(sp) | v1 = *(var_4ch_2);
0x0001e170 lw v0, 0x48(sp) | v0 = *(var_48h_2);
0x0001e174 lw a1, (s5) | a1 = *(s5);
0x0001e178 lw t9, -0x7bb4(gp) | t9 = sym.mpi_print;
0x0001e17c lw a2, -0x4ca8(v1) | a2 = *((v1 - 4906));
0x0001e180 lw a0, -0x4cb0(v0) | a0 = *((v0 - 4908));
0x0001e184 bal 0x3489c | sym_mpi_print ();
0x0001e188 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e18c lw v0, 0x48(sp) | v0 = *(var_48h_2);
0x0001e190 addiu a0, zero, 0xa | a0 = 0xa;
0x0001e194 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0001e198 lw a1, -0x4cb0(v0) | a1 = *((v0 - 4908));
0x0001e19c jalr t9 | t9 ();
0x0001e1a0 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e1a4 lw v0, (s5) | v0 = *(s5);
0x0001e1a8 lw t0, 0x44(sp) | t0 = *(var_44h_3);
0x0001e1ac b 0x1db10 | goto label_14;
| label_41:
0x0001e1b0 lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0001e1b4 lbu a1, 0x14(s1) | a1 = *((s1 + 20));
0x0001e1b8 lbu t3, 0x35(s1) | t3 = *((s1 + 53));
0x0001e1bc lbu t2, 0x34(s1) | t2 = *((s1 + 52));
0x0001e1c0 lbu t1, 0x17(s1) | t1 = *((s1 + 23));
0x0001e1c4 lbu t0, 0x15(s1) | t0 = *((s1 + 21));
0x0001e1c8 lw v1, 8(s1) | v1 = *((s1 + 2));
0x0001e1cc lw v0, 4(s1) | v0 = *((s1 + 1));
0x0001e1d0 sw a2, 0x1c(sp) | *(var_1ch_2) = a2;
0x0001e1d4 lw a2, -0x7fdc(gp) | a2 = *(gp);
0x0001e1d8 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0001e1dc lw a0, -0x4cb0(a0) | a0 = *((a0 - 4908));
0x0001e1e0 sw a1, 0x18(sp) | *(var_18h_2) = a1;
0x0001e1e4 sw t3, 0x30(sp) | *(var_30h_3) = t3;
0x0001e1e8 sw t2, 0x2c(sp) | *(var_2ch_3) = t2;
0x0001e1ec sw t1, 0x28(sp) | *(var_28h_2) = t1;
0x0001e1f0 sw t0, 0x24(sp) | *(var_24h_3) = t0;
0x0001e1f4 sw s5, 0x20(sp) | *(var_20h) = s5;
0x0001e1f8 sw v1, 0x14(sp) | *(var_14h) = v1;
0x0001e1fc sw v0, 0x10(sp) | *(var_10h_2) = v0;
| /* str.:signature_packet:_algo__d__keyid__08lX_08lX_n_tversion__d__created__lu__md5len__d__sigclass_0x_02x_n_tdigest_algo__d__begin_of_digest__02x__02x_n */
0x0001e200 addiu a2, a2, 0x5c4c | a2 += 0x5c4c;
0x0001e204 addiu a1, zero, 1 | a1 = 1;
0x0001e208 jalr t9 | t9 ();
0x0001e20c lw gp, 0x38(sp) | gp = *(var_38h_2);
| if (s3 == 0) {
0x0001e210 bnez s3, 0x1e238 |
0x0001e214 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
0x0001e218 b 0x1da94 | goto label_15;
| label_37:
0x0001e21c lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
0x0001e220 move a1, s6 | a1 = s6;
| /* str.packet__d__too_short_n */
0x0001e224 addiu a0, a0, 0x53cc | a0 += 0x53cc;
0x0001e228 bal 0x38550 | sym_g10_log_error ();
0x0001e22c addiu s3, zero, 0xe | s3 = 0xe;
0x0001e230 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e234 b 0x1dd84 | goto label_11;
| }
0x0001e238 lw s3, -0x7f34(gp) | s3 = sym.enum_sig_subpkt;
0x0001e23c lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e240 move a3, zero | a3 = 0;
0x0001e244 move a2, zero | a2 = 0;
0x0001e248 addiu a1, zero, -1 | a1 = -1;
0x0001e24c move t9, s3 | t9 = s3;
0x0001e250 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e254 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001e258 lw a0, 0x30(s1) | a0 = *((s1 + 12));
0x0001e25c move a3, zero | a3 = 0;
0x0001e260 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e264 move a2, zero | a2 = 0;
0x0001e268 move t9, s3 | t9 = s3;
0x0001e26c addiu a1, zero, -2 | a1 = -2;
0x0001e270 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001e274 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e278 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
0x0001e27c b 0x1da94 | goto label_15;
| label_59:
0x0001e280 ins v0, zero, 5, 1 | __asm ("ins v0, zero, 5, 1");
0x0001e284 sh v0, (s1) | *(s1) = v0;
0x0001e288 b 0x1e070 | goto label_16;
| label_48:
0x0001e28c lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e290 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.signature_packet:_unhashed_data_too_long_n */
0x0001e294 addiu a0, a0, 0x5ba4 | a0 += 0x5ba4;
0x0001e298 bal 0x38550 | sym_g10_log_error ();
0x0001e29c addiu s3, zero, 0xe | s3 = 0xe;
0x0001e2a0 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e2a4 b 0x1dd84 | goto label_11;
| label_62:
0x0001e2a8 move a0, s1 | a0 = s1;
0x0001e2ac bal 0x1d6f8 | sym_parse_revkeys ();
0x0001e2b0 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e2b4 lbu a3, 0x16(s1) | a3 = *((s1 + 22));
0x0001e2b8 b 0x1da84 | goto label_12;
| label_57:
0x0001e2bc lw v1, 0xc(s1) | v1 = *((s1 + 3));
0x0001e2c0 lw t9, -0x7ec0(gp) | t9 = sym.buffer_to_u32;
0x0001e2c4 sw v1, 0x44(sp) | *(var_44h_3) = v1;
0x0001e2c8 move a0, s7 | a0 = s7;
0x0001e2cc bal 0x180d4 | sym_buffer_to_u32 ();
0x0001e2d0 lw v1, 0x44(sp) | v1 = *(var_44h_3);
0x0001e2d4 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e2d8 addu s7, v1, v0 | s7 = v1 + v0;
0x0001e2dc sw s7, 0x10(s1) | *((s1 + 4)) = s7;
0x0001e2e0 b 0x1dfa8 | goto label_17;
| label_56:
0x0001e2e4 lbu v0, 0x16(s1) | v0 = *((s1 + 22));
0x0001e2e8 addiu v0, v0, -0x64 | v0 += -0x64;
0x0001e2ec sltiu v0, v0, 0xb | v0 = (v0 < 0xb) ? 1 : 0;
0x0001e2f0 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
| if (v0 == 0) {
0x0001e2f4 bnel v0, zero, 0x1df6c | goto label_18;
| }
0x0001e2f8 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001e2fc lw v0, (v0) | v0 = *(v0);
| if (v0 == 0) {
0x0001e300 beql v0, zero, 0x1df6c | goto label_18;
| }
0x0001e304 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e308 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e30c lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.signature_packet_without_keyid_n */
0x0001e310 addiu a0, a0, 0x5c2c | a0 += 0x5c2c;
0x0001e314 bal 0x384ac | sym_g10_log_info ();
0x0001e318 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e31c b 0x1df6c | goto label_18;
| label_55:
0x0001e320 lbu v0, 0x16(s1) | v0 = *((s1 + 22));
0x0001e324 addiu v0, v0, -0x64 | v0 += -0x64;
0x0001e328 sltiu v0, v0, 0xb | v0 = (v0 < 0xb) ? 1 : 0;
0x0001e32c lw fp, -0x7ba4(gp) | fp = sym.parse_sig_subpkt2;
| if (v0 != 0) {
0x0001e330 bnez v0, 0x1df24 | goto label_19;
| }
0x0001e334 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0001e338 lw v0, (v0) | v0 = *(v0);
0x0001e33c move a2, zero | a2 = 0;
| if (v0 == 0) {
0x0001e340 beqz v0, 0x1df28 | goto label_20;
| }
0x0001e344 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e348 lw t9, -0x7f30(gp) | t9 = sym.g10_log_info;
| /* str.signature_packet_without_timestamp_n */
0x0001e34c addiu a0, a0, 0x5c08 | a0 += 0x5c08;
0x0001e350 bal 0x384ac | sym_g10_log_info ();
0x0001e354 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e358 b 0x1df20 | goto label_21;
| label_58:
0x0001e35c bal 0x38c7c | sym_make_timestamp ();
0x0001e360 nop |
0x0001e364 sltu v0, v0, s7 | v0 = (v0 < s7) ? 1 : 0;
0x0001e368 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
| if (v0 == 0) {
0x0001e36c bnel v0, zero, 0x1dfb4 | goto label_22;
| }
0x0001e370 lhu v0, (s1) | v0 = *(s1);
0x0001e374 addiu v1, zero, 1 | v1 = 1;
0x0001e378 ins v0, v1, 9, 1 | __asm ("ins v0, v1, 9, 1");
0x0001e37c sh v0, (s1) | *(s1) = v0;
0x0001e380 b 0x1dfb0 | goto label_23;
| label_46:
0x0001e384 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e388 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.signature_packet:_hashed_data_too_long_n */
0x0001e38c addiu a0, a0, 0x5b48 | a0 += 0x5b48;
0x0001e390 bal 0x38550 | sym_g10_log_error ();
0x0001e394 addiu s3, zero, 0xe | s3 = 0xe;
0x0001e398 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e39c b 0x1dd84 | goto label_11;
| label_60:
0x0001e3a0 lw a0, 0x2c(s1) | a0 = *((s1 + 11));
0x0001e3a4 sb v1, 0x18(s1) | *((s1 + 24)) = v1;
0x0001e3a8 lbu v0, 1(v0) | v0 = *((v0 + 1));
0x0001e3ac move a3, zero | a3 = 0;
0x0001e3b0 sb v0, 0x19(s1) | *((s1 + 25)) = v0;
0x0001e3b4 move a2, s7 | a2 = s7;
0x0001e3b8 sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001e3bc move t9, s6 | t9 = s6;
0x0001e3c0 addiu a1, zero, 6 | a1 = 6;
0x0001e3c4 bal 0x1c758 | sym_enum_sig_subpkt ();
0x0001e3c8 lw v1, 0x58(sp) | v1 = *(var_58h);
| if (v1 != 0) {
0x0001e3cc movz v0, zero, v1 | v0 = 0;
| }
0x0001e3d0 sw v0, 0x1c(s1) | *((s1 + 7)) = v0;
0x0001e3d4 b 0x1e0a4 | goto label_24;
| label_47:
0x0001e3d8 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e3dc lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.premature_eof_while_reading_hashed_signature_data_n */
0x0001e3e0 addiu a0, a0, 0x5b70 | a0 += 0x5b70;
0x0001e3e4 bal 0x38550 | sym_g10_log_error ();
0x0001e3e8 addiu s3, zero, -1 | s3 = -1;
0x0001e3ec lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e3f0 b 0x1dd84 | goto label_11;
| label_49:
0x0001e3f4 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0001e3f8 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.premature_eof_while_reading_unhashed_signature_data_n */
0x0001e3fc addiu a0, a0, 0x5bd0 | a0 += 0x5bd0;
0x0001e400 bal 0x38550 | sym_g10_log_error ();
0x0001e404 addiu s3, zero, -1 | s3 = -1;
0x0001e408 lw gp, 0x38(sp) | gp = *(var_38h_2);
0x0001e40c b 0x1dd84 | goto label_11;
| label_52:
0x0001e410 lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x0001e414 jalr t9 | t9 ();
0x0001e418 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x26154 */
| #include <stdint.h>
|
; (fcn) sym.print_fingerprint () | void print_fingerprint () {
| label_7:
0x00026154 lui gp, 4 |
0x00026158 addiu gp, gp, -0x4024 |
0x0002615c addu gp, gp, t9 | gp += t9;
0x00026160 addiu sp, sp, -0x60 |
0x00026164 sw s3, 0x4c(sp) | *(var_4ch) = s3;
0x00026168 lw s3, -0x781c(gp) | s3 = *((gp - 7687));
0x0002616c sw gp, 0x18(sp) | *(var_18h) = gp;
0x00026170 sw s6, 0x58(sp) | *(var_58h) = s6;
0x00026174 lw v0, (s3) | v0 = *(s3);
0x00026178 sw s4, 0x50(sp) | *(var_50h) = s4;
0x0002617c sw ra, 0x5c(sp) | *(var_5ch) = ra;
0x00026180 sw s5, 0x54(sp) | *(var_54h) = s5;
0x00026184 sw s2, 0x48(sp) | *(var_48h) = s2;
0x00026188 sw s1, 0x44(sp) | *(var_44h) = s1;
0x0002618c sw s0, 0x40(sp) | *(var_40h) = s0;
0x00026190 move s4, a1 | s4 = a1;
0x00026194 move s6, a0 | s6 = a0;
0x00026198 sw v0, 0x3c(sp) | *(var_3ch) = v0;
| if (a1 == 0) {
0x0002619c beql a1, zero, 0x263cc | goto label_21;
| }
0x000261a0 lw v1, 0x3c(a0) | v1 = *((a0 + 15));
0x000261a4 lw v1, 0x20(a1) | v1 = *((a1 + 8));
0x000261a8 lw v0, 0x28(a1) | v0 = *((a1 + 10));
| if (v1 == v0) {
0x000261ac beql v1, v0, 0x26360 | goto label_22;
| }
0x000261b0 lw v1, 0x24(a1) | v1 = *((a1 + 9));
0x000261b4 andi v0, a2, 0x80 | v0 = a2 & 0x80;
| if (v0 != 0) {
| label_1:
0x000261b8 beql v0, zero, 0x261d8 |
0x000261bc addiu s0, zero, -0x81 | s0 = -0x81;
0x000261c0 lw a0, -0x7fdc(gp) | a0 = *(gp);
| label_6:
0x000261c4 lw t9, -0x7f84(gp) | t9 = sym.g10_log_error;
| /* str.primary_key_is_not_really_primary__n */
0x000261c8 addiu a0, a0, 0x7548 | a0 += 0x7548;
0x000261cc bal 0x38550 | sym_g10_log_error ();
0x000261d0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000261d4 b 0x2632c | goto label_9;
| }
0x000261d8 and s0, a2, s0 | s0 = a2 & s0;
0x000261dc addiu v0, s0, -1 | v0 = s0 + -1;
0x000261e0 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x000261e4 lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
| if (v0 != 0) {
0x000261e8 bnez v0, 0x26530 | goto label_23;
| }
0x000261ec addiu v0, zero, 3 | v0 = 3;
| label_2:
0x000261f0 lw v0, -0x78e0(gp) | v0 = *((gp - 7736));
| if (s0 == v0) {
0x000261f4 beq s0, v0, 0x265dc | goto label_24;
| }
0x000261f8 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x000261fc lw s2, (v0) | s2 = *(v0);
| /* str.______Key_fingerprint_ */
0x00026200 addiu s5, s5, 0x7514 | s5 += 0x7514;
| label_17:
0x00026204 lw t9, -0x7dc0(gp) | t9 = sym.fingerprint_from_pk;
| if (s4 == 0) {
0x00026208 beqz s4, 0x2639c | goto label_25;
| }
| label_3:
0x0002620c lw t9, -0x7dbc(gp) | t9 = sym.fingerprint_from_sk;
0x00026210 addiu s1, sp, 0x28 | s1 = sp + 0x28;
0x00026214 addiu a2, sp, 0x24 | a2 = sp + 0x24;
0x00026218 move a1, s1 | a1 = s1;
0x0002621c move a0, s4 | a0 = s4;
0x00026220 bal 0x1a648 | sym_fingerprint_from_sk ();
0x00026224 lw gp, 0x18(sp) | gp = *(var_18h);
| label_4:
0x00026228 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0002622c lw v0, 0x50(v0) | v0 = *((v0 + 20));
| if (v0 != 0) {
0x00026230 beqz v0, 0x26240 |
0x00026234 nop |
| if (s0 == 0) {
0x00026238 beql s0, zero, 0x265ec | goto label_26;
| }
0x0002623c lw a0, -0x7fdc(gp) | a0 = *(gp);
| }
0x00026240 lw t9, -0x793c(gp) | t9 = sym.imp.fputs;
| if (s2 == 0) {
0x00026244 beqz s2, 0x26514 | goto label_27;
| }
0x00026248 move a1, s2 | a1 = s2;
0x0002624c move a0, s5 | a0 = s5;
0x00026250 jalr t9 | t9 ();
0x00026254 lw gp, 0x18(sp) | gp = *(var_18h);
| label_14:
0x00026258 lw v0, 0x24(sp) | v0 = *(var_24h);
0x0002625c addiu v1, zero, 0x14 | v1 = 0x14;
| if (v0 == v1) {
0x00026260 beql v0, v1, 0x2647c | goto label_28;
| }
0x00026264 lw s4, -0x7fdc(gp) | s4 = *(gp);
| if (v0 == 0) {
0x00026268 beqz v0, 0x26310 | goto label_10;
| }
0x0002626c nop |
0x00026270 lw s4, -0x7fdc(gp) | s4 = *(gp);
0x00026274 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x00026278 move s0, zero | s0 = 0;
| /* str.__02X */
0x0002627c addiu s4, s4, 0x59c4 | s4 += 0x59c4;
0x00026280 addiu s5, s5, 0x49fc | s5 += 0x49fc;
0x00026284 b 0x262cc |
| while (s2 != 0) {
0x00026288 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| if (s0 != 0) {
0x0002628c beqz s0, 0x262a0 |
0x00026290 andi v0, s0, 7 | v0 = s0 & 7;
0x00026294 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (v0 == 0) {
0x00026298 beqz v0, 0x263b8 | goto label_29;
| }
| label_5:
0x0002629c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| }
0x000262a0 lbu a3, (s1) | a3 = *(s1);
0x000262a4 move a2, s4 | a2 = s4;
0x000262a8 addiu a1, zero, 1 | a1 = 1;
0x000262ac move a0, s2 | a0 = s2;
0x000262b0 jalr t9 | t9 ();
0x000262b4 lw v0, 0x24(sp) | v0 = *(var_24h);
0x000262b8 addiu s0, s0, 1 | s0++;
0x000262bc sltu v0, s0, v0 | v0 = (s0 < v0) ? 1 : 0;
0x000262c0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000262c4 addiu s1, s1, 1 | s1++;
| if (v0 == 0) {
0x000262c8 beqz v0, 0x26310 | goto label_10;
| }
| label_0:
0x000262cc bnez s2, 0x26288 |
| }
0x000262d0 nop |
0x000262d4 lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
| if (s0 != 0) {
0x000262d8 beqz s0, 0x262ec |
0x000262dc andi v0, s0, 7 | v0 = s0 & 7;
| if (v0 == 0) {
0x000262e0 beqz v0, 0x265cc | goto label_30;
| }
0x000262e4 nop |
| label_18:
0x000262e8 lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
| }
0x000262ec lbu a1, (s1) | a1 = *(s1);
0x000262f0 move a0, s4 | a0 = s4;
0x000262f4 bal 0x6438 | sym_tty_printf ();
0x000262f8 lw v0, 0x24(sp) | v0 = *(var_24h);
0x000262fc addiu s0, s0, 1 | s0++;
0x00026300 sltu v0, s0, v0 | v0 = (s0 < v0) ? 1 : 0;
0x00026304 lw gp, 0x18(sp) | gp = *(var_18h);
0x00026308 addiu s1, s1, 1 | s1++;
| if (v0 != 0) {
0x0002630c bnez v0, 0x262cc | goto label_0;
| }
| label_10:
0x00026310 lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (s2 == 0) {
0x00026314 beqz s2, 0x26468 | goto label_31;
| }
| label_19:
0x00026318 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0002631c move a1, s2 | a1 = s2;
0x00026320 addiu a0, zero, 0xa | a0 = 0xa;
0x00026324 jalr t9 | t9 ();
0x00026328 lw gp, 0x18(sp) | gp = *(var_18h);
| label_9:
0x0002632c lw v1, 0x3c(sp) | v1 = *(var_3ch);
0x00026330 lw v0, (s3) | v0 = *(s3);
0x00026334 lw ra, 0x5c(sp) | ra = *(var_5ch);
| if (v1 != v0) {
0x00026338 bne v1, v0, 0x26690 | goto label_32;
| }
0x0002633c lw s6, 0x58(sp) | s6 = *(var_58h);
0x00026340 lw s5, 0x54(sp) | s5 = *(var_54h);
0x00026344 lw s4, 0x50(sp) | s4 = *(var_50h);
0x00026348 lw s3, 0x4c(sp) | s3 = *(var_4ch);
0x0002634c lw s2, 0x48(sp) | s2 = *(var_48h);
0x00026350 lw s1, 0x44(sp) | s1 = *(var_44h);
0x00026354 lw s0, 0x40(sp) | s0 = *(var_40h);
0x00026358 addiu sp, sp, 0x60 |
0x0002635c jr ra | return v1;
| label_22:
0x00026360 lw v0, 0x2c(a1) | v0 = *((a1 + 11));
0x00026364 andi v0, a2, 0x80 | v0 = a2 & 0x80;
| if (v1 != v0) {
0x00026368 bne v1, v0, 0x261b8 | goto label_1;
| }
0x0002636c addiu s0, zero, -0x81 | s0 = -0x81;
| label_16:
0x00026370 and s0, a2, s0 | s0 = a2 & s0;
0x00026374 addiu v0, zero, 1 | v0 = 1;
0x00026378 addiu v0, zero, 2 | v0 = 2;
| if (s0 == v0) {
0x0002637c beq s0, v0, 0x26670 | goto label_33;
| }
0x00026380 addiu v0, zero, 3 | v0 = 3;
| if (s0 != v0) {
0x00026384 bne s0, v0, 0x261f0 | goto label_2;
| }
0x00026388 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x0002638c move s2, zero | s2 = 0;
| /* str._Primary_key_fingerprint: */
0x00026390 addiu s5, s5, 0x74f8 | s5 += 0x74f8;
| if (s4 != 0) {
0x00026394 bnez s4, 0x2620c | goto label_3;
| }
| label_8:
0x00026398 lw t9, -0x7dc0(gp) | t9 = sym.fingerprint_from_pk;
| label_25:
0x0002639c addiu s1, sp, 0x28 | s1 = sp + 0x28;
0x000263a0 addiu a2, sp, 0x24 | a2 = sp + 0x24;
0x000263a4 move a1, s1 | a1 = s1;
0x000263a8 move a0, s6 | a0 = s6;
0x000263ac bal 0x1a318 | sym_fingerprint_from_pk ();
0x000263b0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000263b4 b 0x26228 | goto label_4;
| label_29:
0x000263b8 move a1, s2 | a1 = s2;
0x000263bc addiu a0, zero, 0x20 | a0 = 0x20;
0x000263c0 jalr t9 | t9 ();
0x000263c4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000263c8 b 0x2629c | goto label_5;
| label_21:
0x000263cc lw v0, 0x44(a0) | v0 = *((a0 + 17));
| if (v1 == v0) {
0x000263d0 beql v1, v0, 0x26598 | goto label_34;
| }
0x000263d4 lw v1, 0x40(a0) | v1 = *((a0 + 16));
0x000263d8 andi v0, a2, 0x80 | v0 = a2 & 0x80;
| label_15:
0x000263dc lw a0, -0x7fdc(gp) | a0 = *(gp);
| if (v0 == 0) {
0x000263e0 bnel v0, zero, 0x261c4 | goto label_6;
| }
0x000263e4 addiu s0, zero, -0x81 | s0 = -0x81;
0x000263e8 and s0, a2, s0 | s0 = a2 & s0;
0x000263ec addiu v0, s0, -1 | v0 = s0 + -1;
0x000263f0 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x000263f4 addiu v0, zero, 3 | v0 = 3;
| if (v0 == 0) {
0x000263f8 beqz v0, 0x261f0 | goto label_2;
| }
0x000263fc lw t9, -0x7f2c(gp) | t9 = sym.xmalloc_clear;
0x00026400 addiu a0, zero, 0x80 | a0 = 0x80;
0x00026404 bal 0x3cbdc | sym_xmalloc_clear ();
0x00026408 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002640c addiu a1, s6, 0x3c | a1 = s6 + 0x3c;
0x00026410 move a0, v0 | a0 = v0;
0x00026414 lw t9, -0x7e34(gp) | t9 = sym.get_pubkey;
0x00026418 move s1, v0 | s1 = v0;
0x0002641c bal 0xc768 | sym_get_pubkey ();
0x00026420 lw gp, 0x18(sp) | gp = *(var_18h);
0x00026424 ori a2, s0, 0x80 | a2 = s0 | 0x80;
0x00026428 move a1, zero | a1 = 0;
0x0002642c lw t9, -0x7ce4(gp) | t9 = sym.print_fingerprint;
0x00026430 move a0, s1 | a0 = s1;
0x00026434 bal 0x26154 | sym_print_fingerprint ();
| goto label_7;
0x00026438 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002643c lw t9, -0x7e74(gp) | t9 = sym.free_public_key;
0x00026440 move a0, s1 | a0 = s1;
0x00026444 bal 0x91c0 | sym_free_public_key ();
0x00026448 addiu v0, zero, 1 | v0 = 1;
0x0002644c lw gp, 0x18(sp) | gp = *(var_18h);
| if (s0 == v0) {
0x00026450 beq s0, v0, 0x265ac | goto label_35;
| }
0x00026454 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x00026458 addiu s0, zero, 2 | s0 = 2;
| /* str.______Subkey_fingerprint: */
0x0002645c addiu s5, s5, 0x752c | s5 += 0x752c;
0x00026460 move s2, zero | s2 = 0;
0x00026464 b 0x26398 | goto label_8;
| label_31:
0x00026468 lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
0x0002646c addiu a0, a0, 0x5f60 | a0 += 0x5f60;
0x00026470 jalr t9 | t9 ();
0x00026474 lw gp, 0x18(sp) | gp = *(var_18h);
0x00026478 b 0x2632c | goto label_9;
| label_28:
0x0002647c lw s6, -0x7fdc(gp) | s6 = *(gp);
0x00026480 move s0, zero | s0 = 0;
0x00026484 addiu s5, zero, 0xa | s5 = 0xa;
| /* str.__02X_02X */
0x00026488 addiu s4, s4, 0x757c | s4 += 0x757c;
0x0002648c addiu s6, s6, 0x49fc | s6 += 0x49fc;
0x00026490 b 0x264d4 | goto label_36;
| label_11:
0x00026494 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (s0 == s5) {
0x00026498 beq s0, s5, 0x26500 | goto label_37;
| }
| label_13:
0x0002649c lbu v0, 1(s1) | v0 = *((s1 + 1));
0x000264a0 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x000264a4 lbu a3, (s1) | a3 = *(s1);
0x000264a8 move a2, s4 | a2 = s4;
0x000264ac sw v0, 0x10(sp) | *(var_10h) = v0;
0x000264b0 addiu a1, zero, 1 | a1 = 1;
0x000264b4 move a0, s2 | a0 = s2;
0x000264b8 jalr t9 | t9 ();
0x000264bc lw gp, 0x18(sp) | gp = *(var_18h);
| label_12:
0x000264c0 lw v0, 0x24(sp) | v0 = *(var_24h);
0x000264c4 addiu s0, s0, 2 | s0 += 2;
0x000264c8 sltu v0, s0, v0 | v0 = (s0 < v0) ? 1 : 0;
0x000264cc addiu s1, s1, 2 | s1 += 2;
| if (v0 == 0) {
0x000264d0 beqz v0, 0x26310 | goto label_10;
| }
| if (s2 != 0) {
| label_36:
0x000264d4 bnez s2, 0x26494 | goto label_11;
| }
0x000264d8 nop |
0x000264dc lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
| if (s0 == s5) {
0x000264e0 beq s0, s5, 0x26660 | goto label_38;
| }
| label_20:
0x000264e4 lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
0x000264e8 lbu a2, 1(s1) | a2 = *((s1 + 1));
0x000264ec lbu a1, (s1) | a1 = *(s1);
0x000264f0 move a0, s4 | a0 = s4;
0x000264f4 jalr t9 | t9 ();
0x000264f8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000264fc b 0x264c0 | goto label_12;
| label_37:
0x00026500 move a1, s2 | a1 = s2;
0x00026504 addiu a0, zero, 0x20 | a0 = 0x20;
0x00026508 jalr t9 | t9 ();
0x0002650c lw gp, 0x18(sp) | gp = *(var_18h);
0x00026510 b 0x2649c | goto label_13;
| label_27:
0x00026514 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x00026518 lw t9, -0x7c14(gp) | t9 = sym.tty_printf;
0x0002651c move a1, s5 | a1 = s5;
| /* esilref: '&s' */
0x00026520 addiu a0, a0, 0x586c | a0 += aav.0x0000586c;
0x00026524 jalr t9 | t9 ();
0x00026528 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002652c b 0x26258 | goto label_14;
| label_23:
0x00026530 addiu a0, zero, 0x7c | a0 = 0x7c;
0x00026534 bal 0x3cbdc | sym_xmalloc_clear ();
0x00026538 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002653c addiu a1, s4, 0x20 | a1 = s4 + 0x20;
0x00026540 move a0, v0 | a0 = v0;
0x00026544 lw t9, -0x7b34(gp) | t9 = sym.get_seckey;
0x00026548 move s1, v0 | s1 = v0;
0x0002654c bal 0xc980 | sym_get_seckey ();
0x00026550 lw gp, 0x18(sp) | gp = *(var_18h);
0x00026554 ori a2, s0, 0x80 | a2 = s0 | 0x80;
0x00026558 move a1, s1 | a1 = s1;
0x0002655c lw t9, -0x7ce4(gp) | t9 = sym.print_fingerprint;
0x00026560 move a0, zero | a0 = 0;
0x00026564 bal 0x26154 | sym_print_fingerprint ();
| goto label_7;
0x00026568 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002656c lw t9, -0x7b30(gp) | t9 = sym.free_secret_key;
0x00026570 move a0, s1 | a0 = s1;
0x00026574 bal 0x8e08 | sym_free_secret_key ();
0x00026578 addiu v0, zero, 1 | v0 = 1;
0x0002657c lw gp, 0x18(sp) | gp = *(var_18h);
| if (s0 == v0) {
0x00026580 beq s0, v0, 0x265ac | goto label_35;
| }
0x00026584 lw s5, -0x7fdc(gp) | s5 = *(gp);
0x00026588 addiu s0, zero, 2 | s0 = 2;
| /* str.______Subkey_fingerprint: */
0x0002658c addiu s5, s5, 0x752c | s5 += 0x752c;
0x00026590 move s2, zero | s2 = 0;
0x00026594 b 0x2620c | goto label_3;
| label_34:
0x00026598 lw v0, 0x48(a0) | v0 = *((a0 + 18));
0x0002659c andi v0, a2, 0x80 | v0 = a2 & 0x80;
| if (v1 != v0) {
0x000265a0 bne v1, v0, 0x263dc | goto label_15;
| }
0x000265a4 addiu s0, zero, -0x81 | s0 = -0x81;
0x000265a8 b 0x26370 | goto label_16;
| label_35:
0x000265ac lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x000265b0 addiu s0, zero, 1 | s0 = 1;
0x000265b4 bal 0x382e4 | sym_log_stream ();
0x000265b8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000265bc move s2, v0 | s2 = v0;
0x000265c0 lw s5, -0x7fdc(gp) | s5 = *(gp);
| /* str._____Subkey_fingerprint: */
0x000265c4 addiu s5, s5, 0x74dc | s5 += 0x74dc;
0x000265c8 b 0x26204 | goto label_17;
| label_30:
0x000265cc move a0, s5 | a0 = s5;
0x000265d0 jalr t9 | t9 ();
0x000265d4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000265d8 b 0x262e8 | goto label_18;
| label_24:
0x000265dc lw s5, -0x7fdc(gp) | s5 = *(gp);
0x000265e0 move s2, zero | s2 = 0;
| /* str.______Key_fingerprint_ */
0x000265e4 addiu s5, s5, 0x7514 | s5 += 0x7514;
0x000265e8 b 0x26204 | goto label_17;
| label_26:
0x000265ec lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x000265f0 move a3, s2 | a3 = s2;
0x000265f4 addiu a2, zero, 0xc | a2 = 0xc;
0x000265f8 addiu a1, zero, 1 | a1 = 1;
| /* str.fpr::::::::: */
0x000265fc addiu a0, a0, 0x756c | a0 += aav.0x0000756c;
0x00026600 jalr t9 | t9 ();
0x00026604 lw v0, 0x24(sp) | v0 = *(var_24h);
0x00026608 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0002660c beqz v0, 0x26648 | goto label_39;
| }
0x00026610 lw s4, -0x7fdc(gp) | s4 = *(gp);
| /* str._02X */
0x00026614 addiu s4, s4, 0x3d40 | s4 += 0x3d40;
| do {
0x00026618 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0002661c lbu a3, (s1) | a3 = *(s1);
0x00026620 move a2, s4 | a2 = s4;
0x00026624 addiu a1, zero, 1 | a1 = 1;
0x00026628 move a0, s2 | a0 = s2;
0x0002662c jalr t9 | t9 ();
0x00026630 lw v0, 0x24(sp) | v0 = *(var_24h);
0x00026634 addiu s0, s0, 1 | s0++;
0x00026638 sltu v0, s0, v0 | v0 = (s0 < v0) ? 1 : 0;
0x0002663c lw gp, 0x18(sp) | gp = *(var_18h);
0x00026640 addiu s1, s1, 1 | s1++;
0x00026644 bnez v0, 0x26618 |
| } while (v0 != 0);
| label_39:
0x00026648 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0002664c move a1, s2 | a1 = s2;
0x00026650 addiu a0, zero, 0x3a | a0 = 0x3a;
0x00026654 jalr t9 | t9 ();
0x00026658 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002665c b 0x26318 | goto label_19;
| label_38:
0x00026660 move a0, s6 | a0 = s6;
0x00026664 jalr t9 | t9 ();
0x00026668 lw gp, 0x18(sp) | gp = *(var_18h);
0x0002666c b 0x264e4 | goto label_20;
| label_33:
0x00026670 lw t9, -0x7d40(gp) | t9 = sym.log_stream;
0x00026674 bal 0x382e4 | sym_log_stream ();
0x00026678 nop |
0x0002667c lw gp, 0x18(sp) | gp = *(var_18h);
0x00026680 move s2, v0 | s2 = v0;
0x00026684 lw s5, -0x7fdc(gp) | s5 = *(gp);
| /* str.Primary_key_fingerprint: */
0x00026688 addiu s5, s5, 0x74c0 | s5 += 0x74c0;
0x0002668c b 0x26204 | goto label_17;
| label_32:
0x00026690 lw t9, -0x7834(gp) | t9 = sym.imp.__stack_chk_fail;
0x00026694 jalr t9 | t9 ();
0x00026698 nop |
0x0002669c lui gp, 4 |
0x000266a0 addiu gp, gp, -0x456c |
0x000266a4 addu gp, gp, t9 | gp += t9;
0x000266a8 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x000266ac addiu v1, zero, 1 | v1 = 1;
0x000266b0 sw v1, -0x4c88(v0) | *((v0 - 4898)) = v1;
0x000266b4 jr ra | return v1;
0x000266b8 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x39030 */
| #include <stdint.h>
|
; (fcn) sym.print_string2 () | void print_string2 () {
0x00039030 lui gp, 3 |
0x00039034 addiu gp, gp, -0x6f00 |
0x00039038 addu gp, gp, t9 | gp += t9;
0x0003903c addiu sp, sp, -0x40 |
0x00039040 sw gp, 0x10(sp) | *(var_10h_2) = gp;
0x00039044 sw s7, 0x34(sp) | *(var_34h_2) = s7;
0x00039048 sw ra, 0x3c(sp) | *(var_3ch) = ra;
0x0003904c sw fp, 0x38(sp) | *(var_38h) = fp;
0x00039050 sw s6, 0x30(sp) | *(var_30h_2) = s6;
0x00039054 sw s5, 0x2c(sp) | *(var_2ch_2) = s5;
0x00039058 sw s4, 0x28(sp) | *(var_28h_2) = s4;
0x0003905c sw s3, 0x24(sp) | *(var_24h_2) = s3;
0x00039060 sw s2, 0x20(sp) | *(var_20h) = s2;
0x00039064 sw s1, 0x1c(sp) | *(var_1ch_2) = s1;
0x00039068 sw s0, 0x18(sp) | *(var_18h_2) = s0;
0x0003906c lw s7, 0x50(sp) | s7 = *(var_10h);
| if (a2 == 0) {
0x00039070 beqz a2, 0x39150 | goto label_2;
| }
0x00039074 lw s6, -0x7d90(gp) | s6 = *((gp - 8036));
0x00039078 move s1, a0 | s1 = a0;
0x0003907c move s0, a1 | s0 = a1;
0x00039080 move s5, a3 | s5 = a3;
0x00039084 addu s2, a1, a2 | s2 = a1 + a2;
0x00039088 addiu s3, zero, 0xa | s3 = 0xa;
0x0003908c addiu s4, zero, 0xd | s4 = 0xd;
| /* str.x_02x */
0x00039090 addiu s6, s6, -0x7dec | s6 += -0x7dec;
0x00039094 or fp, a3, s7 | fp = a3 | s7;
0x00039098 b 0x390d4 |
| while (v0 == 0) {
0x0003909c lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (a0 == s5) {
0x000390a0 beq a0, s5, 0x390f4 | goto label_3;
| }
0x000390a4 move a1, s1 | a1 = s1;
| if (a0 == s7) {
0x000390a8 beq a0, s7, 0x390f8 | goto label_4;
| }
0x000390ac addiu v0, zero, 0x5c | v0 = 0x5c;
| if (fp != 0) {
0x000390b0 beqz fp, 0x390bc |
| if (a0 == v0) {
0x000390b4 beq a0, v0, 0x390f8 | goto label_4;
| }
0x000390b8 nop |
| }
0x000390bc move a1, s1 | a1 = s1;
0x000390c0 jalr t9 | t9 ();
0x000390c4 lw gp, 0x10(sp) | gp = *(var_10h_2);
| label_1:
0x000390c8 addiu s0, s0, 1 | s0++;
0x000390cc lw ra, 0x3c(sp) | ra = *(var_3ch);
| if (s0 == s2) {
0x000390d0 beq s0, s2, 0x39154 | goto label_5;
| }
| label_0:
0x000390d4 lbu a0, (s0) | a0 = *(s0);
0x000390d8 sltiu v0, a0, 0x20 | v0 = (a0 < 0x20) ? 1 : 0;
0x000390dc addiu v0, a0, -0x7f | v0 = a0 + -0x7f;
| if (v0 != 0) {
0x000390e0 bnez v0, 0x390f0 | goto label_6;
| }
0x000390e4 sltiu v0, v0, 0x21 | v0 = (v0 < 0x21) ? 1 : 0;
0x000390e8 beqz v0, 0x3909c |
| }
0x000390ec nop |
| label_6:
0x000390f0 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| label_3:
0x000390f4 move a1, s1 | a1 = s1;
| label_4:
0x000390f8 addiu a0, zero, 0x5c | a0 = 0x5c;
0x000390fc jalr t9 | t9 ();
0x00039100 lbu a3, (s0) | a3 = *(s0);
0x00039104 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (a3 == s3) {
0x00039108 beq a3, s3, 0x39180 | goto label_7;
| }
0x0003910c addiu v0, zero, 0xc | v0 = 0xc;
| if (a3 == s4) {
0x00039110 beq a3, s4, 0x39198 | goto label_8;
| }
0x00039114 addiu v0, zero, 0xb | v0 = 0xb;
| if (a3 == v0) {
0x00039118 beq a3, v0, 0x391c8 | goto label_9;
| }
0x0003911c addiu v0, zero, 8 | v0 = 8;
| if (a3 == v0) {
0x00039120 beq a3, v0, 0x391e0 | goto label_10;
| }
0x00039124 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (a3 == v0) {
0x00039128 beq a3, v0, 0x391f8 | goto label_11;
| }
0x0003912c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
| if (a3 != 0) {
0x00039130 bnez a3, 0x391b0 | goto label_12;
| }
0x00039134 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x00039138 move a1, s1 | a1 = s1;
0x0003913c addiu a0, zero, 0x30 | a0 = 0x30;
0x00039140 addiu s0, s0, 1 | s0++;
0x00039144 jalr t9 | t9 ();
0x00039148 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (s0 != s2) {
0x0003914c bne s0, s2, 0x390d4 | goto label_0;
| }
| label_2:
0x00039150 lw ra, 0x3c(sp) | ra = *(var_3ch);
| label_5:
0x00039154 lw fp, 0x38(sp) | fp = *(var_38h);
0x00039158 lw s7, 0x34(sp) | s7 = *(var_34h_2);
0x0003915c lw s6, 0x30(sp) | s6 = *(var_30h_2);
0x00039160 lw s5, 0x2c(sp) | s5 = *(var_2ch_2);
0x00039164 lw s4, 0x28(sp) | s4 = *(var_28h_2);
0x00039168 lw s3, 0x24(sp) | s3 = *(var_24h_2);
0x0003916c lw s2, 0x20(sp) | s2 = *(var_20h);
0x00039170 lw s1, 0x1c(sp) | s1 = *(var_1ch_2);
0x00039174 lw s0, 0x18(sp) | s0 = *(var_18h_2);
0x00039178 addiu sp, sp, 0x40 |
0x0003917c jr ra | return v0;
| label_7:
0x00039180 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x00039184 move a1, s1 | a1 = s1;
0x00039188 addiu a0, zero, 0x6e | a0 = 0x6e;
0x0003918c jalr t9 | t9 ();
0x00039190 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00039194 b 0x390c8 | goto label_1;
| label_8:
0x00039198 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x0003919c move a1, s1 | a1 = s1;
0x000391a0 addiu a0, zero, 0x72 | a0 = 0x72;
0x000391a4 jalr t9 | t9 ();
0x000391a8 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000391ac b 0x390c8 | goto label_1;
| label_12:
0x000391b0 move a2, s6 | a2 = s6;
0x000391b4 addiu a1, zero, 1 | a1 = 1;
0x000391b8 move a0, s1 | a0 = s1;
0x000391bc jalr t9 | t9 ();
0x000391c0 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000391c4 b 0x390c8 | goto label_1;
| label_9:
0x000391c8 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x000391cc move a1, s1 | a1 = s1;
0x000391d0 addiu a0, zero, 0x66 | a0 = 0x66;
0x000391d4 jalr t9 | t9 ();
0x000391d8 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000391dc b 0x390c8 | goto label_1;
| label_10:
0x000391e0 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x000391e4 move a1, s1 | a1 = s1;
0x000391e8 addiu a0, zero, 0x76 | a0 = 0x76;
0x000391ec jalr t9 | t9 ();
0x000391f0 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000391f4 b 0x390c8 | goto label_1;
| label_11:
0x000391f8 move a1, s1 | a1 = s1;
0x000391fc addiu a0, zero, 0x62 | a0 = 0x62;
0x00039200 jalr t9 | t9 ();
0x00039204 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00039208 b 0x390c8 | goto label_1;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x3d320 */
| #include <stdint.h>
|
; (fcn) sym.secmem_dump_stats () | void secmem_dump_stats () {
0x0003d320 lui gp, 2 |
0x0003d324 addiu gp, gp, 0x4e10 |
0x0003d328 addu gp, gp, t9 | gp += t9;
0x0003d32c lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d330 addiu sp, sp, -0x38 |
0x0003d334 lw v0, -0x4928(v0) | v0 = *((v0 - 4682));
0x0003d338 sw gp, 0x28(sp) | *(var_28h) = gp;
0x0003d33c sw ra, 0x34(sp) | *(var_34h) = ra;
0x0003d340 lw ra, 0x34(sp) | ra = *(var_34h);
| if (v0 == 0) {
0x0003d344 bnez v0, 0x3d3ac |
0x0003d348 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d34c lw a0, -0x7fb4(gp) | a0 = *((gp - 8173));
0x0003d350 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x0003d354 lw t0, -0x490c(v0) | t0 = *((v0 - 4675));
0x0003d358 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d35c lw a3, -0x491c(a0) | a3 = *((a0 - 4679));
0x0003d360 lw a0, -0x7804(gp) | a0 = *((gp - 7681));
0x0003d364 lw a2, -0x4910(v0) | a2 = *((v0 - 4676));
0x0003d368 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d36c lw a0, (a0) | a0 = *(a0);
0x0003d370 sw a2, 0x1c(sp) | *(var_1ch) = a2;
0x0003d374 lw a1, -0x4920(v0) | a1 = *((v0 - 4680));
0x0003d378 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d37c lw a2, -0x7d90(gp) | a2 = *((gp - 8036));
0x0003d380 sw a1, 0x18(sp) | *(var_18h) = a1;
0x0003d384 lw v1, -0x4924(v0) | v1 = *((v0 - 4681));
0x0003d388 lw v0, -0x7fb4(gp) | v0 = *((gp - 8173));
0x0003d38c sw t0, 0x20(sp) | *(var_20h) = t0;
0x0003d390 sw v1, 0x14(sp) | *(var_14h) = v1;
0x0003d394 lw v0, -0x4918(v0) | v0 = *((v0 - 4678));
| /* str.secmem_usage:__u__u_bytes_in__u__u_blocks_of_pool__lu__lu_n */
0x0003d398 addiu a2, a2, -0x745c | a2 += -0x745c;
0x0003d39c sw v0, 0x10(sp) | *(var_10h) = v0;
0x0003d3a0 addiu a1, zero, 1 | a1 = 1;
0x0003d3a4 jalr t9 | t9 ();
0x0003d3a8 lw ra, 0x34(sp) | ra = *(var_34h);
| }
0x0003d3ac addiu sp, sp, 0x38 |
0x0003d3b0 jr ra | return v0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/gpgv @ 0x22334 */
| #include <stdint.h>
|
; (fcn) sym.write_status_text_and_buffer () | void write_status_text_and_buffer () {
0x00022334 lui gp, 4 |
0x00022338 addiu gp, gp, -0x204 |
0x0002233c addu gp, gp, t9 | gp += t9;
0x00022340 addiu sp, sp, -0x50 |
0x00022344 sw s1, 0x2c(sp) | *(var_2ch_2) = s1;
0x00022348 lw s1, -0x7fb4(gp) | s1 = *((gp - 8173));
0x0002234c sw gp, 0x10(sp) | *(var_10h_3) = gp;
0x00022350 sw fp, 0x48(sp) | *(var_10h_2) = fp;
0x00022354 lw v1, -0x4c9c(s1) | v1 = *((s1 - 4903));
0x00022358 sw ra, 0x4c(sp) | *(var_4ch) = ra;
0x0002235c sw s7, 0x44(sp) | *(var_44h) = s7;
0x00022360 sw s6, 0x40(sp) | *(var_40h) = s6;
0x00022364 sw s5, 0x3c(sp) | *(var_3ch) = s5;
0x00022368 sw s4, 0x38(sp) | *(var_38h) = s4;
0x0002236c sw s3, 0x34(sp) | *(var_34h_2) = s3;
0x00022370 sw s2, 0x30(sp) | *(var_30h) = s2;
0x00022374 sw s0, 0x28(sp) | *(var_28h_2) = s0;
0x00022378 sw a1, 0x54(sp) | *(var_1ch_2) = a1;
0x0002237c lw fp, 0x60(sp) | fp = *(var_28h);
| if (v1 == 0) {
0x00022380 beqz v1, 0x22440 | goto label_12;
| }
0x00022384 lw v0, -0x7ca4(gp) | v0 = *(gp);
0x00022388 move s5, a2 | s5 = a2;
0x0002238c lw v0, (v0) | v0 = *(v0);
0x00022390 move s7, a3 | s7 = a3;
| if (v0 == 0) {
0x00022394 beqz v0, 0x22470 | goto label_13;
| }
0x00022398 addiu v0, a0, -0x24 | v0 = a0 + -0x24;
0x0002239c sltiu a1, v0, 0x22 | a1 = (v0 < 0x22) ? 1 : 0;
0x000223a0 sll a1, v0, 2 | a1 = v0 << 2;
| if (a1 == 0) {
0x000223a4 beqz a1, 0x22440 | goto label_12;
| }
0x000223a8 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x000223ac addiu v0, v0, 0x6c88 | v0 += 0x6c88;
0x000223b0 lwx v0, a1(v0) | __asm ("lwx v0, a1(v0)");
0x000223b4 addu v0, v0, gp | v0 += gp;
0x000223b8 jr v0 | v0 ();
0x000223bc nop |
| label_0:
0x000223c0 move t4, zero | t4 = 0;
| if (s0 != 0) {
0x000223c4 bnez s0, 0x225f0 | goto label_14;
| }
| label_9:
0x000223c8 move s7, v0 | s7 = v0;
| if (s5 == v1) {
0x000223cc beq s5, v1, 0x225d8 | goto label_15;
| }
0x000223d0 move s6, v1 | s6 = v1;
0x000223d4 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
| label_6:
0x000223d8 sw t4, 0x18(sp) | *(var_18h_3) = t4;
0x000223dc move a3, a1 | a3 = a1;
0x000223e0 addiu a2, zero, 1 | a2 = 1;
0x000223e4 subu a1, s6, s5 | __asm ("subu a1, s6, s5");
0x000223e8 move a0, s5 | a0 = s5;
0x000223ec jalr t9 | t9 ();
0x000223f0 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x000223f4 lw a1, -0x4c9c(s1) | a1 = *((s1 - 4903));
0x000223f8 lw t4, 0x18(sp) | t4 = *(var_18h_3);
| if (s0 != 0) {
0x000223fc bnez s0, 0x22598 | goto label_16;
| }
| if (t4 == 0) {
| label_7:
0x00022400 beqz t4, 0x22578 | goto label_17;
| }
0x00022404 nop |
0x00022408 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
| if (s7 != 0) {
0x0002240c bnez s7, 0x225fc | goto label_18;
| }
| do {
| label_5:
0x00022410 addiu a0, zero, 0xa | a0 = 0xa;
0x00022414 jalr t9 | t9 ();
0x00022418 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x0002241c lw t9, -0x77fc(gp) | t9 = sym.imp.fflush;
0x00022420 lw a0, -0x4c9c(s1) | a0 = *((s1 - 4903));
0x00022424 jalr t9 | t9 ();
0x00022428 lw gp, 0x10(sp) | gp = *(var_10h_3);
| if (v0 != 0) {
0x0002242c beqz v0, 0x22440 |
0x00022430 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x00022434 lw v0, 0x214(v0) | v0 = *(v0);
0x00022438 lw t9, -0x7f90(gp) | t9 = sym.g10_exit;
| if (v0 != 0) {
0x0002243c bnez v0, 0x22618 | goto label_19;
| }
| }
| label_12:
0x00022440 lw ra, 0x4c(sp) | ra = *(var_4ch);
0x00022444 lw fp, 0x48(sp) | fp = *(var_10h_2);
0x00022448 lw s7, 0x44(sp) | s7 = *(var_44h);
0x0002244c lw s6, 0x40(sp) | s6 = *(var_40h);
0x00022450 lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x00022454 lw s4, 0x38(sp) | s4 = *(var_38h);
0x00022458 lw s3, 0x34(sp) | s3 = *(var_34h_2);
0x0002245c lw s2, 0x30(sp) | s2 = *(var_30h);
0x00022460 lw s1, 0x2c(sp) | s1 = *(var_2ch_2);
0x00022464 lw s0, 0x28(sp) | s0 = *(var_28h_2);
0x00022468 addiu sp, sp, 0x50 |
0x0002246c jr ra | return v1;
| label_13:
0x00022470 addiu v0, zero, -1 | v0 = -1;
0x00022474 addiu s4, zero, 0x1f | s4 = 0x1f;
| if (fp == v0) {
0x00022478 beq fp, v0, 0x22570 | goto label_20;
| }
0x0002247c addiu s4, zero, 0x20 | s4 = 0x20;
| label_3:
0x00022480 lw t9, -0x7bd4(gp) | t9 = *(gp);
| /* fcn.00021598 */
0x00022484 addiu t9, t9, 0x1598 | t9 += 0x1598;
0x00022488 addiu s0, zero, 1 | s0 = 1;
0x0002248c bal 0x21598 | fcn_00021598 ();
0x00022490 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x00022494 sw v0, 0x1c(sp) | *(var_1ch_3) = v0;
0x00022498 lw s2, -0x7fdc(gp) | s2 = *(gp);
0x0002249c lw a0, -0x7fdc(gp) | a0 = *(gp);
| /* str.___02X */
0x000224a0 addiu v0, s2, 0x6c80 | v0 = s2 + 0x6c80;
0x000224a4 sw a0, 0x20(sp) | *(var_20h_3) = a0;
0x000224a8 sw v0, 0x24(sp) | *(var_24h_3) = v0;
| label_11:
0x000224ac lw v0, 0x20(sp) | v0 = *(var_20h_3);
0x000224b0 lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x000224b4 lw a3, 0x1c(sp) | a3 = *(var_1ch_3);
0x000224b8 addiu a1, zero, 1 | a1 = 1;
0x000224bc addiu a2, v0, 0x6c70 | a2 = v0 + 0x6c70;
0x000224c0 move a0, v1 | a0 = v1;
0x000224c4 jalr t9 | t9 ();
0x000224c8 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x000224cc lw a1, -0x4c9c(s1) | a1 = *((s1 - 4903));
| if (s0 == 0) {
0x000224d0 beqz s0, 0x225d0 | goto label_21;
| }
0x000224d4 lw v0, 0x54(sp) | v0 = *(var_1ch_2);
0x000224d8 lw t9, -0x793c(gp) | t9 = sym.imp.fputs;
| if (v0 == 0) {
0x000224dc beqz v0, 0x225d0 | goto label_21;
| }
0x000224e0 move a0, v0 | a0 = v0;
0x000224e4 jalr t9 | t9 ();
0x000224e8 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x000224ec lw t9, -0x78a0(gp) | t9 = sym.imp.strlen;
0x000224f0 lw a0, 0x54(sp) | a0 = *(var_1ch_2);
0x000224f4 jalr t9 | t9 ();
0x000224f8 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x000224fc lw a1, -0x4c9c(s1) | a1 = *((s1 - 4903));
0x00022500 move s2, v0 | s2 = v0;
| label_8:
0x00022504 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x00022508 beqz s7, 0x22410 |
| } while (s7 == 0);
0x0002250c addiu s3, zero, 0x25 | s3 = 0x25;
| label_4:
0x00022510 move s6, s5 | s6 = s5;
0x00022514 b 0x2255c | goto label_22;
| label_1:
0x00022518 slt v1, s4, v0 | v1 = (s4 < v0) ? 1 : 0;
0x0002251c addiu s0, zero, 1 | s0 = 1;
| if (v1 != 0) {
0x00022520 beqz v1, 0x2252c |
0x00022524 xori v0, v0, 0x7f | v0 ^= 0x7f;
0x00022528 sltiu s0, v0, 1 | s0 = (v0 < 1) ? 1 : 0;
| }
| label_2:
0x0002252c addiu v0, s7, -1 | v0 = s7 + -1;
| if (fp != 0) {
0x00022530 beqz fp, 0x22544 |
0x00022534 addiu s2, s2, 1 | s2++;
0x00022538 sltu v0, fp, s2 | v0 = (fp < s2) ? 1 : 0;
0x0002253c addiu v0, s7, -1 | v0 = s7 + -1;
| if (v0 != 0) {
0x00022540 bnez v0, 0x225e0 | goto label_23;
| }
| }
0x00022544 addiu v1, s6, 1 | v1 = s6 + 1;
| if (v0 == 0) {
0x00022548 beqz v0, 0x223c0 | goto label_0;
| }
0x0002254c move t4, zero | t4 = 0;
| if (s0 != 0) {
0x00022550 bnez s0, 0x22588 | goto label_10;
| }
0x00022554 move s7, v0 | s7 = v0;
0x00022558 move s6, v1 | s6 = v1;
| label_22:
0x0002255c lb v0, (s6) | v0 = *(s6);
0x00022560 andi v0, v0, 0xff | v0 &= 0xff;
| if (v0 != s3) {
0x00022564 bne v0, s3, 0x22518 | goto label_1;
| }
0x00022568 addiu s0, zero, 1 | s0 = 1;
0x0002256c b 0x2252c | goto label_2;
| label_20:
0x00022570 move fp, zero | fp = 0;
0x00022574 b 0x22480 | goto label_3;
| label_17:
0x00022578 move s5, s6 | s5 = s6;
| if (s7 != 0) {
0x0002257c bnez s7, 0x22510 | goto label_4;
| }
0x00022580 lw t9, -0x7840(gp) | t9 = sym.imp._IO_putc;
0x00022584 b 0x22410 | goto label_5;
| label_10:
0x00022588 addiu s0, zero, 1 | s0 = 1;
| if (s5 != s6) {
0x0002258c beq s5, s6, 0x2259c |
0x00022590 lw t9, -0x7848(gp) | t9 = sym.imp.fwrite;
0x00022594 b 0x223d8 | goto label_6;
| label_16:
0x00022598 move s5, s6 | s5 = s6;
| }
0x0002259c lw t9, -0x7920(gp) | t9 = sym.imp.__fprintf_chk
0x000225a0 lbu a3, (s5) | a3 = *(s5);
0x000225a4 lw a2, 0x24(sp) | a2 = *(var_24h_3);
0x000225a8 sw t4, 0x18(sp) | *(var_18h_3) = t4;
0x000225ac move a0, a1 | a0 = a1;
0x000225b0 addiu a1, zero, 1 | a1 = 1;
0x000225b4 jalr t9 | t9 ();
0x000225b8 addiu s6, s5, 1 | s6 = s5 + 1;
0x000225bc lw gp, 0x10(sp) | gp = *(var_10h_3);
0x000225c0 lw a1, -0x4c9c(s1) | a1 = *((s1 - 4903));
0x000225c4 addiu s7, s7, -1 | s7 += -1;
0x000225c8 lw t4, 0x18(sp) | t4 = *(var_18h_3);
0x000225cc b 0x22400 | goto label_7;
| label_21:
0x000225d0 move s2, zero | s2 = 0;
0x000225d4 b 0x22504 | goto label_8;
| label_15:
0x000225d8 move s6, s5 | s6 = s5;
0x000225dc b 0x22400 | goto label_7;
| label_23:
0x000225e0 move v1, s6 | v1 = s6;
0x000225e4 move v0, s7 | v0 = s7;
0x000225e8 addiu t4, zero, 1 | t4 = 1;
| if (s0 == 0) {
0x000225ec beqz s0, 0x223c8 | goto label_9;
| }
| label_14:
0x000225f0 addiu s6, v1, -1 | s6 = v1 + -1;
0x000225f4 addiu s7, v0, 1 | s7 = v0 + 1;
0x000225f8 b 0x22588 | goto label_10;
| label_18:
0x000225fc addiu a0, zero, 0xa | a0 = 0xa;
0x00022600 jalr t9 | t9 ();
0x00022604 move s5, s6 | s5 = s6;
0x00022608 lw gp, 0x10(sp) | gp = *(var_10h_3);
0x0002260c lw v1, -0x4c9c(s1) | v1 = *((s1 - 4903));
0x00022610 move s0, zero | s0 = 0;
0x00022614 b 0x224ac | goto label_11;
| label_19:
0x00022618 move a0, zero | a0 = 0;
0x0002261c bal 0x62b4 | return sym_g10_exit ();
| }
[*] Function fprintf used 45 times gpgv