[*] Binary protection state of libuClibc-0.9.30.1.so

  	RELRO          CANARY            NX           PIE          RPATH        RUNPATH      SYMBOLS      
  	Full RELRO     No Canary found   NX disabled  DSO          No RPATH     No RUNPATH   No Symbols


[*] Function strcpy tear down of libuClibc-0.9.30.1.so

lw t9, -sym.uname(gp)
move s2, a0
addiu a0, sp, 0x18
jalr t9
move s1, a1
addiu v1, zero, -1
lw gp, 0x10(sp)
beq v0, v1, 0xb960
addiu a0, zero, -1
lw t9, -sym.strlen(gp)
addiu s0, sp, 0x15d
jalr t9
move a0, s0
addiu v0, v0, 1
sltu v0, s1, v0
beqz v0, 0xb948
lw gp, 0x10(sp)
lw t9, -sym.__errno_location(gp)
jalr t9
nop
addiu v1, zero, 0x16
lw gp, 0x10(sp)
addiu a0, zero, -1
b 0xb960
sw v1, (v0)
lw t9, -sym.strcpy(gp)
move a0, s2
jalr t9
move a1, s0
lw gp, 0x10(sp)
move a0, zero
lw ra, 0x1ac(sp)
move v0, a0
lw s2, 0x1a8(sp)
lw s1, 0x1a4(sp)
lw s0, 0x1a0(sp)
jr ra
addiu sp, sp, 0x1b0
nop
lui gp, 7
addiu gp, gp, -0x54a0
addu gp, gp, t9
addiu sp, sp, -0x28
sw ra, 0x24(sp)
sw gp, 0x10(sp)
lw t9, -sym.getrlimit(gp)
--
lw t9, -sym.uname(gp)
move s2, a0
addiu a0, sp, 0x18
jalr t9
move s1, a1
addiu v1, zero, -1
lw gp, 0x10(sp)
beq v0, v1, 0xbcc0
addiu a0, zero, -1
lw t9, -sym.strlen(gp)
addiu s0, sp, 0x59
jalr t9
move a0, s0
addiu v0, v0, 1
sltu v0, s1, v0
beqz v0, 0xbca8
lw gp, 0x10(sp)
lw t9, -sym.__errno_location(gp)
jalr t9
nop
addiu v1, zero, 0x16
lw gp, 0x10(sp)
addiu a0, zero, -1
b 0xbcc0
sw v1, (v0)
lw t9, -sym.strcpy(gp)
move a0, s2
jalr t9
move a1, s0
lw gp, 0x10(sp)
move a0, zero
lw ra, 0x1ac(sp)
move v0, a0
lw s2, 0x1a8(sp)
lw s1, 0x1a4(sp)
lw s0, 0x1a0(sp)
jr ra
addiu sp, sp, 0x1b0
nop
lui gp, 7
addiu gp, gp, -0x5800
addu gp, gp, t9
addiu sp, sp, -0x20
sw ra, 0x1c(sp)
sw s0, 0x18(sp)
sw gp, 0x10(sp)
--
lw v0, 4(s2)
sll s5, s3, 2
addu v0, v0, s5
lw s0, (v0)
lw t9, -sym.strlen(gp)
jalr t9
move a0, s0
lw gp, 0x18(fp)
move a0, s0
lw t9, -sym.realloc(gp)
addiu a1, v0, 2
jalr t9
move s1, v0
lw gp, 0x18(fp)
bnez v0, 0x16614
move s0, v0
lw t9, -sym.globfree(gp)
move a0, s2
jalr t9
nop
lw gp, 0x18(fp)
sw zero, (s2)
b 0x16694
addiu a0, zero, 1
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
addu a0, v0, s1
jalr t9
addiu a1, a1, -0x6604
lw v0, 4(s2)
lw gp, 0x18(fp)
addu v0, v0, s5
sw s0, (v0)
addiu s3, s3, 1
lw v0, 8(s2)
lw v1, (s2)
addu v0, v0, v1
sltu v0, s3, v0
bnel v0, zero, 0x16548
lw v0, 4(s2)
andi v0, s4, 4
bnez v0, 0x16694
move a0, zero
lw v0, (s2)
lw a1, 8(s2)
lw v1, 4(s2)
--
lw v0, 4(s2)
sll s5, s3, 2
addu v0, v0, s5
lw s0, (v0)
lw t9, -sym.strlen(gp)
jalr t9
move a0, s0
lw gp, 0x18(fp)
move a0, s0
lw t9, -sym.realloc(gp)
addiu a1, v0, 2
jalr t9
move s1, v0
lw gp, 0x18(fp)
bnez v0, 0x17408
move s0, v0
lw t9, -sym.globfree64(gp)
move a0, s2
jalr t9
nop
lw gp, 0x18(fp)
sw zero, (s2)
b 0x17488
addiu a0, zero, 1
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
addu a0, v0, s1
jalr t9
addiu a1, a1, -0x6604
lw v0, 4(s2)
lw gp, 0x18(fp)
addu v0, v0, s5
sw s0, (v0)
addiu s3, s3, 1
lw v0, 8(s2)
lw v1, (s2)
addu v0, v0, v1
sltu v0, s3, v0
bnel v0, zero, 0x1733c
lw v0, 4(s2)
andi v0, s4, 4
bnez v0, 0x17488
move a0, zero
lw v0, (s2)
lw a1, 8(s2)
lw v1, 4(s2)
--
addiu v0, zero, 0xa
bne v1, v0, 0x283fc
lw t9, -sym.__libc_close(gp)
sb zero, -1(s1)
b 0x283fc
move s0, a0
move s0, zero
lw t9, -sym.__libc_close(gp)
jalr t9
move a0, s2
beqz s0, 0x28418
lw gp, 0x10(sp)
lb v0, (s0)
bnez v0, 0x28458
xori v0, v0, 0x3a
lw v0, -0x7f68(gp)
lw a0, -0x7d80(gp)
lw t9, -sym.memset(gp)
move a1, zero
addiu a2, zero, 0x30
jalr t9
sb zero, -0x1028(v0)
lw gp, 0x10(sp)
lw a0, -0x7d80(gp)
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
addiu a0, a0, 0x10
jalr t9
addiu a1, a1, -0x5d4d
b 0x288b0
lw gp, 0x10(sp)
lw s1, -0x7f68(gp)
sltiu v0, v0, 1
addu s0, s0, v0
lw t9, -sym.strcoll(gp)
move a0, s0
jalr t9
addiu a1, s1, -0x1028
beqz v0, 0x288e4
lw gp, 0x10(sp)
lw t9, -sym.strncpy(gp)
addiu a0, s1, -0x1028
move a1, s0
jalr t9
addiu a2, zero, 0x44
lw gp, 0x10(sp)
--
bnez v0, 0x28c54
nop
jr ra
addiu v0, zero, 0x16e
jr ra
addiu v0, zero, 0x16d
nop
lui gp, 5
addiu gp, gp, -0x2780
addu gp, gp, t9
addiu sp, sp, -0x58
sw ra, 0x54(sp)
sw s1, 0x50(sp)
sw s0, 0x4c(sp)
sw gp, 0x10(sp)
addiu s0, sp, 0x18
lw t9, -sym.memset(gp)
move s1, a0
addiu a2, zero, 0x30
move a0, s0
jalr t9
move a1, zero
lw gp, 0x10(sp)
addiu a0, sp, 0x28
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
jalr t9
addiu a1, a1, -0x5ce0
lw gp, 0x10(sp)
move a0, s1
lw t9, -0x7d60(gp)
move a2, s0
jalr t9
addiu a1, zero, 1
lw ra, 0x54(sp)
lw gp, 0x10(sp)
lw s1, 0x50(sp)
lw s0, 0x4c(sp)
jr ra
addiu sp, sp, 0x58
nop
nop
nop
lui gp, 5
addiu gp, gp, -0x2810
addu gp, gp, t9
--
move a0, s1
lw s0, (s0)
addiu s1, s0, 4
move a0, s1
bnez s0, 0x291c0
move a1, s2
lw t9, -sym.strnlen(gp)
move a0, s2
jalr t9
addiu a1, zero, 7
lw gp, 0x10(sp)
sltiu v0, v0, 7
lw a0, -0x7f68(gp)
beqz v0, 0x2925c
addiu a0, a0, -0x1f50
lw t9, -sym.malloc(gp)
jalr t9
addiu a0, zero, 0xc
lw gp, 0x10(sp)
move v1, v0
lw a0, -0x7f68(gp)
beqz v0, 0x2925c
addiu a0, a0, -0x1f50
addiu s0, v0, 4
lw v0, 0xc(s5)
lw t9, -sym.strcpy(gp)
move a0, s0
sw v0, (v1)
move a1, s2
jalr t9
sw v1, 0xc(s5)
lw gp, 0x10(sp)
move a0, s0
addiu s4, s4, 1
bne s4, s7, 0x29470
sw a0, 0x28(s3)
lb v0, 0x28(s6)
beqz v0, 0x29464
move t2, zero
lw v0, 0x14(s3)
addiu v1, zero, 0x190
div zero, v0, v1
teq v1, zero, 7
lw s2, (s3)
lw s0, 4(s3)
lw t7, 8(s3)
--
sw s0, 0x18(sp)
sw gp, 0x10(sp)
lw s4, 0x40(sp)
sltiu v0, a3, 0x100
move s2, a3
move s3, a1
move s0, a2
sw zero, (s4)
beqz v0, 0x2c7cc
move s1, a0
lw t9, -sym.__errno_location(gp)
jalr t9
nop
addiu v1, zero, 0x22
lw gp, 0x10(sp)
sw v1, (v0)
b 0x2c818
addiu v0, zero, 0x22
beq a0, a2, 0x2c7fc
lw t9, -sym.strlen(gp)
jalr t9
nop
sltu v0, v0, s2
beqz v0, 0x2c7ac
lw gp, 0x10(sp)
lw t9, -sym.strcpy(gp)
move a1, s1
jalr t9
move a0, s0
lw gp, 0x10(sp)
lw t9, -0x7d18(gp)
move a1, s0
jalr t9
move a0, s3
bnez v0, 0x2c818
lw gp, 0x10(sp)
sw s3, (s4)
lw ra, 0x2c(sp)
lw s4, 0x28(sp)
lw s3, 0x24(sp)
lw s2, 0x20(sp)
lw s1, 0x1c(sp)
lw s0, 0x18(sp)
jr ra
addiu sp, sp, 0x30
nop
--
bnez v0, 0x2e32c
lw gp, 0x10(sp)
lw t9, -0x7c80(gp)
move a0, s0
jalr t9
addiu a1, zero, 3
bnez v0, 0x2e32c
lw gp, 0x10(sp)
lw t9, -sym.strdup(gp)
jalr t9
move a0, s0
b 0x2e330
lw gp, 0x10(sp)
move v0, zero
lw ra, 0x101c(sp)
lw s0, 0x1018(sp)
jr ra
addiu sp, sp, 0x1020
lui gp, 5
addiu gp, gp, -0x7e60
addu gp, gp, t9
bnez a0, 0x2e35c
lw a1, -0x7fac(gp)
lw v0, -0x7f68(gp)
addiu a0, v0, 0x20
lw t9, -sym.strcpy(gp)
jr t9
addiu a1, a1, -0x5ba8
nop
nop
lui gp, 5
addiu gp, gp, -0x7e90
addu gp, gp, t9
addiu sp, sp, -0x20
sw ra, 0x1c(sp)
sw s0, 0x18(sp)
sw gp, 0x10(sp)
lw t9, -sym.ftello64(gp)
jalr t9
move s0, a1
lw gp, 0x10(sp)
sw v0, (s0)
sw v1, 4(s0)
slti a1, v1, 0
addiu a0, zero, -1
lw ra, 0x1c(sp)
--
movz v1, zero, v0
addiu a0, a0, 1
addiu a3, zero, 1
subu a3, a3, v1
sw a0, 0x34(s6)
move a2, s4
addiu a0, sp, 0x1c
move a1, zero
lw s1, 0x38(s6)
jalr t9
lw s0, 0x2c(s6)
lw gp, 0x10(sp)
move a0, s0
lw t9, -0x7c20(gp)
move a1, s1
move a2, v0
move a3, v1
jalr t9
nop
b 0x32ecc
lw gp, 0x10(sp)
lw s7, -0x7c00(gp)
lbu v1, (s1)
bnez v1, 0x32bc8
move a0, s3
lw t9, -sym.strcpy(gp)
lw a1, 0x18(s3)
jalr t9
move a0, s0
lw v0, 0x1c(s3)
lw gp, 0x10(sp)
beqz fp, 0x32bfc
addu s0, s0, v0
b 0x32c6c
lw fp, -0x7c00(gp)
lw v0, (s3)
beq v1, v0, 0x32bec
move t9, s7
lw v0, 0x20(s3)
sltu v0, v0, s1
bnez v0, 0x32ed8
lw t9, -0x7bf8(gp)
b 0x32cb8
nop
jalr t9
addiu s1, s1, 1
--
sw s0, 0x170(sp)
sw gp, 0x10(sp)
lw t9, -sym.fstat(gp)
sw a1, 0x19c(sp)
sw a2, 0x1a0(sp)
addiu a1, sp, 0x38
jalr t9
move s0, a0
bgez v0, 0x35e04
lw gp, 0x10(sp)
lw t9, -sym.__errno_location(gp)
jalr t9
nop
lw gp, 0x10(sp)
b 0x35f94
lw s0, (v0)
lw t9, -sym.isatty(gp)
jalr t9
move a0, s0
beqz v0, 0x35f7c
lw gp, 0x10(sp)
lw v0, -0x7fac(gp)
addiu s4, sp, 0x18
addiu s2, v0, -0x49c0
addiu v0, sp, 0xd0
lw s7, -sym.strcpy(gp)
sw v0, 0x168(sp)
b 0x35f70
lw fp, -sym.closedir(gp)
move a0, s4
move t9, s7
jalr t9
move a1, s3
lw gp, 0x10(sp)
move a0, s3
lw t9, -sym.opendir(gp)
jalr t9
addu s5, s4, s0
move s1, v0
addiu v0, zero, 0x1e
lw gp, 0x10(sp)
bnez s1, 0x35f38
subu s6, v0, s0
b 0x35f68
lb v0, (s2)
lw t9, -sym.strlen(gp)
--
lw gp, 0x10(sp)
lw v0, 0xe4(sp)
addiu v1, zero, 0x2000
andi v0, v0, sym.stat64
bne v0, v1, 0x35f3c
lw t9, -sym.readdir(gp)
lw v1, 0xf8(sp)
lw v0, 0x60(sp)
bne v0, v1, 0x35f3c
lw v1, 0xfc(sp)
lw v0, 0x64(sp)
bne v0, v1, 0x35f3c
nop
lw t9, -sym.closedir(gp)
jalr t9
move a0, s1
lw gp, 0x10(sp)
move a0, s4
lw t9, -sym.strlen(gp)
jalr t9
addiu s0, zero, 0x22
lw t9, 0x1a0(sp)
sltu v0, t9, v0
bnez v0, 0x35f80
lw gp, 0x10(sp)
lw t9, -sym.strcpy(gp)
lw a0, 0x19c(sp)
jalr t9
move a1, s4
lw gp, 0x10(sp)
b 0x35f80
move s0, zero
lw t9, -sym.readdir(gp)
jalr t9
move a0, s1
addiu s0, v0, 0xb
lw gp, 0x10(sp)
bnez v0, 0x35e78
move a0, s0
move t9, fp
jalr t9
move a0, s1
lw gp, 0x10(sp)
lb v0, (s2)
addiu v0, v0, 1
addu s2, s3, v0
--
sw s4, 0xf0(sp)
sw s3, 0xec(sp)
sw s2, 0xe8(sp)
sw s1, 0xe4(sp)
sw s0, 0xe0(sp)
sw gp, 0x18(sp)
move s5, a1
lw a1, -0x7fac(gp)
lw t9, -sym.strcoll(gp)
sw a0, 0x108(fp)
sw a3, 0x114(fp)
addiu a1, a1, -0x4938
move a0, a3
jalr t9
move s6, a2
bnez v0, 0x36cdc
lw gp, 0x18(fp)
lw t9, -sym.memset(gp)
addiu s0, fp, 0x68
addiu a2, zero, 0x6e
move a0, s0
jalr t9
move a1, zero
lw gp, 0x18(fp)
lw a1, 0x108(fp)
lw t9, -sym.strcpy(gp)
addiu v0, zero, 1
addiu a0, fp, 0x6a
jalr t9
sh v0, 0x68(fp)
lw gp, 0x18(fp)
addiu v0, zero, -1
move a0, s0
move a1, s5
move a2, s6
addiu a3, fp, 0x28
sw v0, 0x28(fp)
sw zero, 0x10(sp)
sw zero, 0x14(sp)
b 0x36ef4
lw t9, -sym.clntunix_create(gp)
addiu sp, sp, -0x408
addiu v0, fp, 0x54
addiu a2, sp, 0x18
addiu s0, zero, 0x400
sw v0, 0xd8(fp)
--
addiu a1, a1, -0x667c
move a0, s4
jalr t9
move s1, v0
lw gp, 0x10(sp)
addu s0, s4, v0
lw v0, -0x7fac(gp)
lw a2, (s1)
addiu a3, v0, -0x4740
move v1, zero
sll v0, v1, 3
addu a1, v0, a3
lw v0, (a1)
addiu v1, v1, 1
bne v0, a2, 0x37170
sltiu a0, v1, 0x12
lw v0, -0x7fac(gp)
lw v1, 4(a1)
addiu v0, v0, -0x46b0
b 0x37180
addu a1, v0, v1
bnez a0, 0x37148
sll v0, v1, 3
lw v0, -0x7fac(gp)
addiu a1, v0, -0x4930
lw s2, -sym.strcpy(gp)
lw s3, -sym.strlen(gp)
move t9, s2
jalr t9
move a0, s0
move t9, s3
jalr t9
move a0, s0
lw v1, (s1)
addu s0, s0, v0
addiu v0, zero, 0xc
beq v1, v0, 0x37258
lw gp, 0x10(sp)
addiu v0, zero, 0xe
bne v1, v0, 0x372c0
addiu v0, zero, 0xa
lw a1, -0x7fac(gp)
move a0, s0
move t9, s2
jalr t9
addiu a1, a1, -0x4914
move t9, s3
jalr t9
move a0, s0
lw gp, 0x10(sp)
addu s0, s0, v0
lw v0, -0x7fac(gp)
lw a2, 4(s1)
addiu a3, v0, -0x4740
move v1, zero
sll v0, v1, 3
addu a1, v0, a3
lw v0, (a1)
addiu v1, v1, 1
bne v0, a2, 0x37224
sltiu a0, v1, 0x12
lw v0, -0x7fac(gp)
lw v1, 4(a1)
addiu v0, v0, -0x46b0
b 0x37234
addu a1, v0, v1
bnel a0, zero, 0x371fc
sll v0, v1, 3
lw v0, -0x7fac(gp)
addiu a1, v0, -0x4930
lw t9, -sym.strcpy(gp)
jalr t9
move a0, s0
lw gp, 0x10(sp)
lw t9, -sym.strlen(gp)
jalr t9
move a0, s0
b 0x372b8
lw gp, 0x10(sp)
lw a1, -0x7fac(gp)
move a0, s0
move t9, s2
jalr t9
addiu a1, a1, -0x4914
move t9, s3
jalr t9
move a0, s0
lw gp, 0x10(sp)
lw a0, 8(s1)
lw t9, -sym.__glibc_strerror_r(gp)
addiu s1, sp, 0x18
--
lw t9, -sym.sprintf(gp)
addiu a1, a1, -0x667c
jalr t9
move a0, s5
lw gp, 0x10(sp)
addu s0, s5, v0
lw v0, -0x7fac(gp)
lw a1, 0x18(sp)
addiu a2, v0, -0x4740
move v1, zero
sll v0, v1, 3
addu a0, v0, a2
lw v0, (a0)
bne v0, a1, 0x373f4
addiu v1, v1, 1
lw v0, -0x7fac(gp)
lw v1, 4(a0)
addiu v0, v0, -0x46b0
b 0x37408
addu a1, v0, v1
sltiu v0, v1, 0x12
bnez v0, 0x373d0
sll v0, v1, 3
lw v0, -0x7fac(gp)
addiu a1, v0, -0x4930
lw t9, -sym.strcpy(gp)
jalr t9
move a0, s0
lw gp, 0x10(sp)
lw t9, -sym.strlen(gp)
jalr t9
move a0, s0
lw v1, 0x18(sp)
addu s1, s0, v0
sltiu v0, v1, 0x12
beqz v0, 0x3756c
lw gp, 0x10(sp)
sll v0, v1, 2
lw v1, -0x7fac(gp)
addiu v1, v1, -0x4890
addu v1, v1, v0
lw v0, (v1)
addu v0, v0, gp
jr v0
nop
addiu s0, sp, 0x24
--
lw a1, -0x7fac(gp)
lw t9, -sym.sprintf(gp)
addiu a1, a1, -0x4910
jalr t9
move a0, s1
b 0x3758c
lw gp, 0x10(sp)
lw v0, -0x7fac(gp)
lw a1, 0x1c(sp)
addiu a2, v0, -0x4848
move v1, zero
sll v0, v1, 3
addu a0, v0, a2
lw v0, (a0)
bne v0, a1, 0x374cc
addiu v1, v1, 1
lw v0, -0x7fac(gp)
lw v1, 4(a0)
addiu v0, v0, -0x4808
b 0x374dc
addu s2, v0, v1
sltiu v0, v1, 8
bnez v0, 0x374a8
sll v0, v1, 3
move s2, zero
lw s3, -sym.strcpy(gp)
lw a1, -0x7fac(gp)
lw s4, -sym.strlen(gp)
addiu a1, a1, -0x48d8
move t9, s3
jalr t9
move a0, s1
move t9, s4
jalr t9
move a0, s1
lw gp, 0x10(sp)
beqz s2, 0x37534
addu s0, s1, v0
move a0, s0
move t9, s3
jalr t9
move a1, s2
move t9, s4
jalr t9
move a0, s0
b 0x37550
--
srl v1, v1, 3
sll v1, v1, 3
subu sp, sp, v1
move a3, v0
lw t9, -sym.getpwnam_r(gp)
addiu v0, fp, 0x20
move a0, s4
addiu a1, fp, 0x24
addiu a2, sp, 0x18
jalr t9
sw v0, 0x10(sp)
bnez v0, 0x3cd10
lw gp, 0x18(fp)
lw v0, 0x20(fp)
beqz v0, 0x3cd10
lw t9, -sym.strlen(gp)
jalr t9
lw a0, 0x14(v0)
lw gp, 0x18(fp)
lw t9, -sym.malloc(gp)
jalr t9
addiu a0, v0, 9
move s0, v0
lw gp, 0x18(fp)
lw v0, 0x20(fp)
lw t9, -sym.strcpy(gp)
lw a1, 0x14(v0)
jalr t9
move a0, s0
lw gp, 0x18(fp)
move a0, s0
lw a1, -0x7fac(gp)
lw t9, -sym.strcat(gp)
jalr t9
addiu a1, a1, -0x40a0
lw gp, 0x18(fp)
lw t9, -sym.geteuid(gp)
jalr t9
nop
lw v1, 0x20(fp)
lw gp, 0x18(fp)
lw a0, 8(v1)
lw t9, -sym.seteuid(gp)
jalr t9
move s3, v0
lw gp, 0x18(fp)
--
lw t9, -sym.getgid(gp)
jalr t9
nop
lw gp, 0x10(fp)
lw t9, -sym.getegid(gp)
jalr t9
move s0, v0
bne s0, v0, 0x3f4e8
lw gp, 0x10(fp)
lw a0, -0x7fac(gp)
lw t9, -sym.getenv(gp)
jalr t9
addiu a0, a0, -0x3f10
lw gp, 0x10(fp)
beqz v0, 0x3f4e8
move s0, v0
lw t9, -sym.strlen(gp)
jalr t9
move a0, v0
addiu v0, v0, 0x16
srl v0, v0, 3
lw gp, 0x10(fp)
sll v0, v0, 3
subu sp, sp, v0
addiu s1, sp, 0x10
lw t9, -sym.strcpy(gp)
move a1, s0
jalr t9
move a0, s1
lw gp, 0x10(fp)
move a0, s1
lw a1, -0x7fac(gp)
lw t9, -sym.strcat(gp)
jalr t9
addiu a1, a1, -0x3f08
lw gp, 0x10(fp)
move a0, s1
lw a1, -0x7fac(gp)
lw t9, -sym.fopen(gp)
jalr t9
addiu a1, a1, -0x40f0
lw gp, 0x10(fp)
move a0, v0
lw v0, -0x7f68(gp)
bnez a0, 0x3f160
sw a0, 0x2190(v0)
--
slti v0, v1, 6
bne v1, s0, 0x3f45c
lw a0, -0x7fac(gp)
b 0x3f2d8
move t9, s5
beqz v0, 0x3f45c
lw a0, -0x7fac(gp)
b 0x3f480
move t9, s5
jalr t9
nop
beqz v0, 0x3f47c
lw gp, 0x10(fp)
lw a0, (s7)
bnez a0, 0x3f330
lw t9, -sym.strcoll(gp)
lw t9, -sym.strlen(gp)
jalr t9
move a0, s1
lw gp, 0x10(fp)
lw t9, -sym.malloc(gp)
jalr t9
addiu a0, v0, 1
beqz v0, 0x3f410
lw gp, 0x10(fp)
lw t9, -sym.strcpy(gp)
move a0, v0
jalr t9
move a1, s1
b 0x3f47c
sw v0, (s7)
jalr t9
move a1, s1
beqz v0, 0x3f480
move t9, s5
b 0x3f4b8
nop
lw a1, -0x7fac(gp)
lw t9, -sym.strcoll(gp)
lw a0, (s7)
jalr t9
addiu a1, a1, -0x3ef0
beqz v0, 0x3f3c8
lw gp, 0x10(fp)
lw v0, -0x7f68(gp)
lw t9, -sym.fileno(gp)
--
lw v1, 0x4e8(fp)
lw v0, (v1)
bnez v0, 0x3f480
move t9, s5
lw t9, -sym.strlen(gp)
jalr t9
move a0, s1
lw gp, 0x10(fp)
lw t9, -sym.malloc(gp)
jalr t9
addiu a0, v0, 1
bnez v0, 0x3f440
lw gp, 0x10(fp)
lw a0, -0x7fac(gp)
lw t9, -sym.printf(gp)
addiu a0, a0, -0x3f00
jalr t9
nop
lw gp, 0x10(fp)
lw v0, -0x7f68(gp)
lw t9, -sym.fclose(gp)
jalr t9
lw a0, 0x2190(v0)
b 0x3f4e8
lw gp, 0x10(fp)
lw t9, -sym.strcpy(gp)
move a0, v0
jalr t9
move a1, s1
lw v1, 0x4e8(fp)
b 0x3f47c
sw v0, (v1)
lw t9, -sym.printf(gp)
addiu a0, a0, -0x3e84
jalr t9
move a1, s1
b 0x3f480
move t9, s5
addiu s2, zero, 3
addiu s0, zero, 2
move t9, s5
jalr t9
nop
lw gp, 0x10(fp)
beqz v0, 0x3f4cc
move v1, v0
--
lw v0, 0xc(s1)
lw gp, 0x20(fp)
sh v0, 2(s0)
lw v0, 0x18(s3)
b 0x48798
sw v0, 0x18(s0)
lw s0, 0x14(a0)
lw t9, -sym.memcpy(gp)
move a1, s6
addiu a0, s0, 4
jalr t9
addiu a2, zero, 4
lw gp, 0x20(fp)
lw v0, 0xc(s1)
lw t9, -sym.memset(gp)
addiu a0, s0, 8
sh v0, 2(s0)
move a1, zero
jalr t9
addiu a2, zero, 8
lw gp, 0x20(fp)
lw v0, 0xec(fp)
beqz s4, 0x487d0
lw a0, (v0)
lw v1, 0x9c(fp)
lw t9, -sym.strcpy(gp)
addu v0, a0, v1
sw v0, 0x18(a0)
lw a0, 0xec(fp)
move a1, s4
lw v0, (a0)
jalr t9
lw a0, 0x18(v0)
b 0x487d4
lw gp, 0x20(fp)
sw zero, 0x18(a0)
lw v1, 0xec(fp)
lw v0, (v1)
sw zero, 0x1c(v0)
lw v0, (v1)
lw s1, (s1)
addiu v0, v0, 0x1c
sw v0, 0xec(fp)
bnel s1, zero, 0x48648
lw v0, (s7)
lw s3, (s3)
--
teq t0, zero, 7
addu v1, s0, a2
slti a1, t1, 4
addiu a3, a2, 2
sb t5, 1(v1)
mfhi v0
addiu v0, v0, 0x30
bnez a1, 0x4a544
sb v0, (v1)
addu v0, s0, a3
lw t9, -sym.strlen(gp)
sb zero, -1(v0)
jalr t9
move a0, s0
sltu v0, s2, v0
beqz v0, 0x4a638
lw gp, 0x10(sp)
lw t9, -sym.__errno_location(gp)
jalr t9
nop
addiu v1, zero, 0x1c
lw gp, 0x10(sp)
sw v1, (v0)
b 0x4a64c
move v0, zero
lw t9, -sym.strcpy(gp)
move a0, s3
jalr t9
move a1, s0
lw gp, 0x10(sp)
lw ra, 0x44(sp)
lw s3, 0x40(sp)
lw s2, 0x3c(sp)
lw s1, 0x38(sp)
lw s0, 0x34(sp)
jr ra
addiu sp, sp, 0x48
lui gp, 3
addiu gp, gp, -0x4188
addu gp, gp, t9
addiu sp, sp, -0x98
sw ra, 0x94(sp)
sw fp, 0x90(sp)
sw s7, 0x8c(sp)
sw s6, 0x88(sp)
sw s5, 0x84(sp)
--
slti v0, s1, 8
bnez v0, 0x4a844
addiu t9, zero, -1
addiu v0, zero, -1
beq s2, v0, 0x4a94c
addu v1, s3, s2
addiu v0, zero, 8
bne v1, v0, 0x4a950
lw v1, 0xa4(sp)
addiu v0, zero, 0x3a
sb v0, (s0)
addiu s0, s0, 1
lw v1, 0xa4(sp)
addiu v0, s0, 1
addiu a1, sp, 0x38
subu v0, v0, a1
sltu v0, v1, v0
beqz v0, 0x4a980
sb zero, (s0)
lw t9, -sym.__errno_location(gp)
jalr t9
nop
lw gp, 0x10(sp)
b 0x4a9a8
addiu v1, zero, 0x1c
lw t9, -sym.strcpy(gp)
jalr t9
lw a0, 0xa0(sp)
lw gp, 0x10(sp)
b 0x4a9b0
move v1, v0
jalr t9
nop
lw gp, 0x10(sp)
addiu v1, zero, 0x7c
sw v1, (v0)
move v1, zero
lw ra, 0x94(sp)
move v0, v1
lw fp, 0x90(sp)
lw s7, 0x8c(sp)
lw s6, 0x88(sp)
lw s5, 0x84(sp)
lw s4, 0x80(sp)
lw s3, 0x7c(sp)
lw s2, 0x78(sp)
--
move a1, s1
move a2, s5
jalr t9
move a0, s3
lw gp, 0x20(sp)
addiu s0, s5, -1
lw v0, -0x7fac(gp)
sw s3, 0x10(s3)
addiu s6, v0, -0x3520
move s1, s2
b 0x4e554
lw s5, -sym.sprintf(gp)
lbu a2, (v0)
move t9, s5
srl a3, a2, 4
jalr t9
andi a2, a2, 0xf
lw gp, 0x20(sp)
addiu s0, s0, -1
addu s1, s1, v0
addu v0, s3, s0
move a0, s1
bgez s0, 0x4e534
move a1, s6
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
jalr t9
addiu a1, a1, -0x3518
lw v0, 0x6c(sp)
lw gp, 0x20(sp)
sw zero, 4(v0)
sw s2, 0xc(s3)
lw v1, 0x68(sp)
addiu a0, sp, 0x28
sw zero, 4(v1)
move s1, zero
addiu s3, sp, 0x2c
sw a0, 0x70(sp)
addiu s6, sp, 0x3c
addiu s5, zero, 5
lw a2, -obj.__resolv_lock(gp)
lw a1, -sym.pthread_mutex_unlock(gp)
lw t9, -sym._pthread_cleanup_push_defer(gp)
jalr t9
move a0, s3
lw gp, 0x20(sp)
--
lw a0, -0x7fac(gp)
lw a1, -0x7fac(gp)
lw t9, -sym.fopen(gp)
addiu a0, a0, -0x34f0
jalr t9
addiu a1, a1, -0x40f0
lw gp, 0x10(sp)
move s1, v0
bnez v0, 0x4efb4
addiu s0, zero, -1
b 0x4f004
lw ra, 0x144(sp)
move t9, s4
jalr t9
nop
lw gp, 0x10(sp)
beqz v0, 0x4efc8
move s0, v0
move a0, s6
move a1, s2
move t9, s5
jalr t9
addiu a2, zero, 6
bnez v0, 0x4efc8
lw gp, 0x10(sp)
lw t9, -sym.strcpy(gp)
move a1, s0
jalr t9
move a0, s7
lw gp, 0x10(sp)
b 0x4eff0
move s0, zero
lw v0, -0x794c(gp)
lw s5, -sym.bcmp(gp)
addiu s4, v0, -0x1340
addiu s3, sp, 0x20
addiu s2, sp, 0x18
lw t9, -sym.fgets(gp)
move a0, s3
addiu a1, zero, 0x100
jalr t9
move a2, s1
lw gp, 0x10(sp)
move a0, s3
bnez v0, 0x4ef64
move a1, s2
--
jalr t9
move s2, zero
lw gp, 0x10(sp)
b 0x523dc
addiu v1, zero, 0x16
lb v0, (a0)
bnez v0, 0x52254
lw s4, -sym.strlen(gp)
lw t9, -sym.__errno_location(gp)
jalr t9
move s2, zero
lw gp, 0x10(sp)
b 0x523dc
addiu v1, zero, 2
move t9, s4
jalr t9
nop
move v1, v0
sltiu v0, v0, 0xffe
beqz v0, 0x52384
lw gp, 0x10(sp)
addiu v0, zero, 0xfff
subu v0, v0, v1
addiu v1, sp, 0x18
addu s1, v1, v0
lw t9, -sym.strcpy(gp)
move a1, s0
jalr t9
move a0, s1
lb v0, (s1)
addiu v1, s2, 0xffe
addiu s3, zero, 0x2f
lw gp, 0x10(sp)
beq v0, s3, 0x52304
sw v1, 0x1018(sp)
lw t9, -sym.getcwd(gp)
move a0, s2
jalr t9
addiu a1, zero, 0xfff
beqz v0, 0x524f8
lw gp, 0x10(sp)
move t9, s4
jalr t9
move a0, s2
addu s0, s2, v0
lb v0, -1(s0)
--
move a0, s0
ori a1, a1, 0x5430
addiu a2, sp, 0x20
move s1, v0
jalr t9
lw s3, (v0)
bnez v0, 0x53d78
lw gp, 0x18(sp)
lw a2, 0x20(sp)
addiu s0, sp, 0x2f
addiu v0, zero, -0xa
lw t9, -0x7d74(gp)
move a0, s0
sra a3, a2, 0x1f
sw v0, 0x10(sp)
jalr t9
sw zero, 0x14(sp)
subu s0, s0, v0
addiu s0, s0, 0xa
sltu s0, s5, s0
move s2, v0
lw gp, 0x18(sp)
bnez s0, 0x53d7c
addiu v0, zero, 0x22
lw a1, -0x7fac(gp)
lw t9, -sym.strcpy(gp)
addiu a1, a1, -0x3270
jalr t9
move a0, s4
lw gp, 0x18(sp)
move a0, s4
lw t9, -sym.strcat(gp)
jalr t9
move a1, s2
lw gp, 0x18(sp)
move v0, zero
b 0x53d80
sw s3, (s1)
addiu v0, zero, 0x19
sw v0, (s1)
lw ra, 0x4c(sp)
lw s5, 0x48(sp)
lw s4, 0x44(sp)
lw s3, 0x40(sp)
lw s2, 0x3c(sp)
lw s1, 0x38(sp)
--
nop
nop
lui gp, 2
addiu gp, gp, 0xa50
addu gp, gp, t9
lw a0, -0x7fac(gp)
lw t9, -sym.getenv(gp)
jr t9
addiu a0, a0, -0x3180
lui gp, 2
addiu gp, gp, 0xa34
addu gp, gp, t9
addiu sp, sp, -0x20
sw ra, 0x1c(sp)
sw s0, 0x18(sp)
sw gp, 0x10(sp)
move s0, a0
lw a0, -0x7fac(gp)
lw t9, -sym.getenv(gp)
jalr t9
addiu a0, a0, -0x3180
lw gp, 0x10(sp)
beqz s0, 0x55b0c
move a1, v0
bnez v0, 0x55af8
lw t9, -sym.strcpy(gp)
lw v0, -0x7fac(gp)
addiu a1, v0, -0x3d04
move a0, s0
lw ra, 0x1c(sp)
lw s0, 0x18(sp)
jr t9
addiu sp, sp, 0x20
lw ra, 0x1c(sp)
lw s0, 0x18(sp)
jr ra
addiu sp, sp, 0x20
lui gp, 2
addiu gp, gp, 0x9c4
addu gp, gp, t9
addiu sp, sp, -0x28
sw ra, 0x24(sp)
sw s1, 0x20(sp)
sw s0, 0x1c(sp)
sw gp, 0x10(sp)
move s1, a0

[*] Function strcpy used 29 times libuClibc-0.9.30.1.so