[*] Binary protection state of dnsmasq

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


[*] Function strcpy tear down of dnsmasq

move s3, a1
beqz a0, 0x403fb8
move s1, a2
move s2, zero
b 0x403ec4
move s0, zero
lhu a3, 0x24(s2)
nop
andi v0, a3, 0x40
beqz v0, 0x403e9c
andi v1, a3, 0x10
lw a0, 0x14(s2)
lw v0, (s3)
nop
beq a0, v0, 0x403ec4
addiu s0, zero, 1
lw s1, -obj.dnsmasq_daemon(gp)
lw t9, -sym.imp.inet_ntoa(gp)
lw v0, (s1)
nop
lw s0, 0xf8(v0)
jalr t9
nop
lw gp, 0x18(sp)
move a0, s0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a1, v0
lw gp, 0x18(sp)
lw a0, (s3)
lw t9, -sym.imp.inet_ntoa(gp)
nop
jalr t9
nop
lw s1, (s1)
lw gp, 0x18(sp)
lw a0, 0x10(s2)
lw v1, 0x98(s1)
b 0x403e60
move a3, v0
lw v0, 8(v1)
nop
bne v0, a0, 0x403e58
nop
lw v0, 4(v1)
--
sw a0, (v0)
lui v0, 0x43
sw a0, 0x5d24(v0)
lw v0, (s0)
lw a0, 4(s0)
beqz v0, 0x4041f0
nop
b 0x4041f8
sw a0, 4(v0)
lui v0, 0x43
sw a0, 0x5d28(v0)
beqz v1, 0x40420c
sh s3, 0x24(s0)
ori v0, s3, 0x200
sw v1, 0x28(s0)
sh v0, 0x24(s0)
lhu v1, 0x24(s0)
beqz s4, 0x40424c
andi v0, v1, 0x200
bnez v0, 0x40422c
nop
andi v0, v1, 0x10
beqz v0, 0x404230
addiu a0, s0, 0x28
lw a0, 0x28(s0)
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a1, s4
lw gp, 0x10(sp)
b 0x40426c
nop
bnez v0, 0x404260
nop
andi v0, v1, 0x10
beqz v0, 0x404268
addiu v1, s0, 0x28
lw v1, 0x28(s0)
nop
sb zero, (v1)
beqz s6, 0x404290
move a1, s6
lw t9, -sym.imp.memcpy(gp)
addiu a0, s0, 0x14
jalr t9
addiu a2, zero, 0x10
--
nop
beqz v1, 0x404934
nop
bnez s0, 0x404934
nop
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s2
lw gp, 0x18(sp)
lw a0, 0x8c(sp)
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move s0, v0
lw gp, 0x18(sp)
addu s0, s0, v0
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, s0, 0x2a
lw gp, 0x18(sp)
beqz v0, 0x404934
move s1, v0
addiu s0, v0, 0x28
lw t9, -sym.imp.strcpy(gp)
move a0, s0
jalr t9
move a1, s2
lw gp, 0x18(sp)
lui a1, 0x42
lw t9, -sym.imp.strcat(gp)
move a0, s0
jalr t9
addiu a1, a1, 0x2274
lw gp, 0x18(sp)
lw a1, 0x8c(sp)
lw t9, -sym.imp.strcat(gp)
nop
jalr t9
move a0, s0
lw v0, 0x90(sp)
lw a1, 0x4c(sp)
move a0, s1
move a2, s6
move a3, s5
sw s4, 0x14(sp)
jal 0x4042e4
sw v0, 0x10(sp)
lw gp, 0x18(sp)
addiu s3, s3, 1
addiu s4, zero, 1
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s2
lw gp, 0x18(sp)
nop
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, v0, 0x29
lw gp, 0x18(sp)
beqz v0, 0x4049c8
move s0, v0
lw t9, -sym.imp.strcpy(gp)
move a1, s2
jalr t9
addiu a0, v0, 0x28
lw v1, 0x90(sp)
lw a1, 0x4c(sp)
move a0, s0
move a2, s6
move a3, s5
sw v1, 0x10(sp)
sw s4, 0x14(sp)
jal 0x4042e4
addiu s3, s3, 1
lw gp, 0x18(sp)
b 0x4049c8
nop
lw t9, -sym.my_syslog(gp)
lw a2, 0x80(sp)
addiu a0, zero, 3
addiu a1, a1, 0xf70
jalr t9
--
lw v0, 0xb4(sp)
sw v1, 0x1c(sp)
lw v1, 0xb0(sp)
sw v0, 0x18(sp)
lw a0, 0xf8(sp)
lw a1, 0xfc(sp)
lw a2, 0xac(sp)
lui v0, 0x42
sw v1, 0x10(sp)
addiu v0, v0, 0xf6c
addiu v1, zero, 1
move a3, s1
sw s0, 0x14(sp)
sw v1, 0x20(sp)
jal 0x4061a0
sw v0, 0x24(sp)
sltu v0, zero, v0
lw gp, 0x40(sp)
addu s6, s6, v0
lw t9, -sym.cache_get_name(gp)
lw a0, 0x14(s2)
jalr t9
nop
lw gp, 0x40(sp)
move a1, v0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a0, s4
lw gp, 0x40(sp)
b 0x406f08
nop
beqz v0, 0x40713c
andi v0, s0, 0x50
andi v0, s0, 0x1000
beqz v0, 0x40710c
addiu v1, zero, 1
sw v1, 0x88(sp)
bnez fp, 0x407130
nop
lw t9, -sym.log_query(gp)
move a0, s0
move a1, s4
move a2, zero
jalr t9
move a3, zero
--
sw ra, 0x3c(sp)
sw fp, 0x38(sp)
sw s7, 0x34(sp)
sw s6, 0x30(sp)
sw s5, 0x2c(sp)
sw s4, 0x28(sp)
sw s3, 0x24(sp)
sw s2, 0x20(sp)
sw s1, 0x1c(sp)
sw s0, 0x18(sp)
sw gp, 0x10(sp)
move s2, a2
move fp, a1
beqz a2, 0x409268
move s7, a0
lui v0, 0x42
addiu s6, v0, 0xf50
lui v0, 0x42
addiu s5, v0, 0x407c
lui v0, 0x42
addiu s4, v0, 0x10e8
move s1, a0
move s0, zero
b 0x4092a4
addiu s3, a2, -1
lw t9, -sym.imp.strcpy(gp)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x10e0
lw gp, 0x10(sp)
b 0x4092bc
nop
lbu a2, (v1)
bne s0, s3, 0x409294
move a3, s5
move a3, s6
jalr t9
addiu s0, s0, 1
lw gp, 0x10(sp)
addu s1, s1, v0
slt v0, s0, s2
lw t9, -sym.imp.sprintf(gp)
move a0, s1
move a1, s4
bnez v0, 0x409284
addu v1, fp, s0
--
move v0, s7
lw fp, 0x38(sp)
lw s7, 0x34(sp)
lw s6, 0x30(sp)
lw s5, 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, 0x40
lui gp, 0x44
addiu sp, sp, -0x28
addiu gp, gp, -0x2700
sw ra, 0x24(sp)
sw s2, 0x20(sp)
sw s1, 0x1c(sp)
sw s0, 0x18(sp)
sw gp, 0x10(sp)
addiu v0, zero, -1
move s1, a1
bne a1, v0, 0x409344
move s2, a0
lui a1, 0x42
lw t9, -sym.imp.strcpy(gp)
lw ra, 0x24(sp)
lw s2, 0x20(sp)
lw s1, 0x1c(sp)
lw s0, 0x18(sp)
addiu a1, a1, 0x10f0
jr t9
addiu sp, sp, 0x28
lui v0, 1
ori v0, v0, 0x5180
bnez v0, 0x409358
divu zero, a1, v0
break 7
mflo a2
beqz a2, 0x40937c
move s0, zero
lw t9, -sym.imp.sprintf(gp)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x10fc
lw gp, 0x10(sp)
--
lw ra, 0x1c(sp)
nop
jr ra
addiu sp, sp, 0x20
lui gp, 0x44
addiu sp, sp, -0x28
addiu gp, gp, -0x2700
sw ra, 0x24(sp)
sw s1, 0x20(sp)
sw s0, 0x1c(sp)
sw gp, 0x10(sp)
beqz a0, 0x40a0dc
move s1, a0
lb v0, (a0)
nop
beqz v0, 0x40a0e0
move s0, zero
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
nop
jal 0x409fb8
addiu a0, v0, 1
lw gp, 0x10(sp)
move s0, v0
lw t9, -sym.imp.strcpy(gp)
move a1, s1
jalr t9
move a0, v0
lw gp, 0x10(sp)
beqz s0, 0x40a0e0
lui v0, 0x42
addiu v0, v0, 0x3598
b 0x40a0c0
move a0, s0
beqz a1, 0x40a0b8
nop
lb v1, (a2)
nop
sb v1, (a0)
addiu a0, a0, 1
lb v1, (a0)
nop
addu a2, v1, v0
bnez v1, 0x40a0a8
sltiu a1, v1, 0x20
--
move s1, v0
addu v0, s0, v0
lb v1, 0x12(v0)
addiu a0, zero, 0x7e
beq v1, a0, 0x40a8e4
nop
lb v0, 0x13(s0)
nop
bne v0, s6, 0x40a7dc
nop
bne v1, s6, 0x40a7e4
nop
b 0x40a8e4
nop
beq v0, s7, 0x40a8e4
nop
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s2
addu v0, s1, v0
jal 0x409fb8
addiu a0, v0, 2
lw gp, 0x18(sp)
move a0, v0
lw t9, -sym.imp.strcpy(gp)
move a1, s2
jalr t9
move s0, v0
lw gp, 0x18(sp)
lui a1, 0x42
lw t9, -sym.imp.strcat(gp)
move a0, s0
jalr t9
addiu a1, a1, 0x11f0
lw gp, 0x18(sp)
move a1, s3
lw t9, -sym.imp.strcat(gp)
nop
jalr t9
move a0, s0
lw gp, 0x18(sp)
lw a1, 0x138(sp)
lw t9, -sym.imp.stat64(gp)
nop
jalr t9
--
sw s0, 4(s2)
move a1, s1
jalr t9
move a2, s0
b 0x40c09c
nop
lw t9, -sym.imp.strstr(gp)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x12dc
lw gp, 0x18(sp)
bne s0, v0, 0x40be1c
move a0, s0
lw t9, -sym.imp.strlen(gp)
addiu s0, s0, 4
jalr t9
move a0, s0
jal 0x409fb8
addiu a0, v0, 1
lw gp, 0x18(sp)
move a0, v0
beqz v0, 0x40c0c0
sw v0, 0x28(s2)
lw v0, (s2)
lw t9, -sym.imp.strcpy(gp)
ori v0, v0, 0x40
sw v0, (s2)
jalr t9
move a1, s0
lw v1, 0x28(s2)
lw gp, 0x18(sp)
bnez v1, 0x40bdfc
nop
b 0x40c0c4
addiu s5, s5, 1
beqz a0, 0x40bdf4
nop
lb v0, (a1)
nop
sb v0, (v1)
addiu v1, v1, 1
lb v0, (v1)
lui a0, 0x42
addiu a0, a0, 0x3598
addu a1, v0, a0
--
bnez v0, 0x40c038
nop
lw v0, (s2)
b 0x40c0bc
ori v0, v0, 1
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s0
move a0, s0
jal 0x40a1b8
move s1, v0
lw gp, 0x18(sp)
bnez v0, 0x40c06c
nop
lui s4, 0x42
b 0x40c0c0
addiu s4, s4, 0x130c
jal 0x409fb8
addiu a0, s1, 1
lw gp, 0x18(sp)
move a0, v0
beqz v0, 0x40c0c0
sw v0, 0x24(s2)
lw v0, (s2)
lw t9, -sym.imp.strcpy(gp)
ori v0, v0, 0x10
sw v0, (s2)
jalr t9
move a1, s0
lw gp, 0x18(sp)
b 0x40c0c4
addiu s5, s5, 1
addiu a0, zero, 0x78
sw a0, 0x38(s2)
lw v0, (s2)
nop
ori v0, v0, 8
sw v0, (s2)
addiu s5, s5, 1
addiu s6, s6, 4
slt v0, s5, s3
bnez v0, 0x40bc2c
nop
lw v0, -obj.dnsmasq_daemon(gp)
nop
--
move s2, s5
lui s2, 0x42
addiu s2, s2, 0x1648
lui v1, 0x43
b 0x40e3c0
addiu v1, v1, 0x482c
lw v0, 0xc(v1)
nop
beq v0, a2, 0x40e3d0
addiu v1, v1, 0x10
lw s0, (v1)
nop
bnez s0, 0x40e3b0
nop
slti v0, a2, 0x100
beqz v0, 0x40e3f8
nop
lw t9, -sym.imp.sprintf(gp)
lui a1, 0x42
move a0, s4
jalr t9
addiu a1, a1, 0x164c
b 0x40e40c
nop
lui a1, 0x42
lw t9, -sym.imp.strcpy(gp)
move a0, s4
jalr t9
addiu a1, a1, 0x1654
lw gp, 0x18(sp)
lui a1, 0x42
lw t9, -sym.imp.sprintf(gp)
move a2, s0
move a3, s2
move a0, s6
addiu a1, a1, 0x165c
jalr t9
sw s1, 0x10(sp)
lw gp, 0x18(sp)
lui a0, 0x42
lw t9, -sym.imp.printf(gp)
move a1, s4
jalr t9
addiu a0, a0, 0x1668
lw a1, 4(s3)
lw gp, 0x18(sp)
beqz a1, 0x40e4bc
nop
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a0, s4
lw gp, 0x18(sp)
lw s1, 0xb8(sp)
b 0x40e4ac
nop
lw v0, 4(s3)
nop
lb v0, (v0)
nop
bne v0, v1, 0x40e4a8
move a0, s4
lw t9, -sym.imp.sprintf(gp)
lw a2, 4(s1)
lui a1, 0x42
jalr t9
addiu a1, a1, 0xf84
lw gp, 0x18(sp)
addiu s1, s1, 8
--
beqz v0, 0x40ec1c
lui v0, 0x42
lw s0, 0x1c(a0)
addiu s5, v0, 0x2274
b 0x40ec14
move s4, v1
lw v0, 8(s0)
nop
beqz v0, 0x40ec0c
nop
lw s1, (s0)
lw t9, -sym.imp.strchr(gp)
move a0, s1
jalr t9
addiu a1, zero, 0x2e
lw gp, 0x18(sp)
beqz v0, 0x40ec0c
move s2, v0
lw t9, -sym.imp.strrchr(gp)
move a0, s1
jalr t9
addiu a1, zero, 0x2e
lw gp, 0x18(sp)
bne s2, v0, 0x40ec0c
move a1, s1
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a0, s3
lw gp, 0x18(sp)
move a0, s3
lw t9, -sym.imp.strcat(gp)
nop
jalr t9
move a1, s5
lw gp, 0x18(sp)
lw v0, (s4)
lw t9, -sym.imp.strcat(gp)
lw a1, 0x4c(v0)
jalr t9
move a0, s3
lw gp, 0x18(sp)
lw a0, (s0)
lw t9, -sym.imp.free(gp)
nop
jalr t9
--
lw gp, 0x18(sp)
bnez v0, 0x40fc64
move a1, s3
lw t9, -sym.imp.close(gp)
lw a0, 0x58(s1)
jalr t9
nop
lw gp, 0x18(sp)
b 0x40fa90
sw fp, 0x58(s1)
lbu v0, 0x20(sp)
lbu v1, 0x21(sp)
sll v0, v0, 8
lw t9, -sym.read_write(gp)
or s0, v0, v1
lw a0, 0x58(s1)
move a2, s0
jalr t9
addiu a3, zero, 1
lw gp, 0x18(sp)
beqz v0, 0x40fdf4
nop
bnez s6, 0x40fcb8
nop
lw v0, (s5)
lw t9, -sym.imp.strcpy(gp)
lw a0, 0xf8(v0)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x35e8
lw gp, 0x18(sp)
lhu v0, (s1)
addiu v1, zero, 2
lw t9, -sym.log_query(gp)
bne v0, v1, 0x40fce0
addiu a0, zero, 0x888
lw v0, (s5)
nop
lw a1, 0xf8(v0)
b 0x40fcf0
addiu a2, s1, 4
lw v0, (s5)
addiu a0, zero, 0x908
lw a1, 0xf8(v0)
addiu a2, s1, 8
jalr t9
--
lw t9, -sym.imp.sendto(gp)
sw v0, 0x14(sp)
sw s0, 0x10(sp)
move a1, s5
move a2, fp
jalr t9
move a3, zero
addiu a0, zero, -1
lw gp, 0x20(sp)
bne v0, a0, 0x4105fc
nop
lw t9, -sym.retry_send(gp)
nop
jalr t9
nop
lw gp, 0x20(sp)
bnez v0, 0x4104ac
nop
b 0x410694
nop
lw v0, (s4)
nop
sw s0, 0x118(v0)
bnez s7, 0x410628
sw fp, 0x11c(v0)
lw t9, -sym.imp.strcpy(gp)
lw a0, 0xf8(v0)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x35e8
lw gp, 0x20(sp)
lhu v0, (s0)
addiu v1, zero, 2
lw t9, -sym.log_query(gp)
bne v0, v1, 0x410650
addiu a0, zero, 0x888
lw v0, (s4)
nop
lw a1, 0xf8(v0)
b 0x410660
addiu a2, s0, 4
lw v0, (s4)
addiu a0, zero, 0x908
lw a1, 0xf8(v0)
addiu a2, s0, 8
jalr t9
--
jal sym.local_bind
move a3, zero
lw gp, 0x10(sp)
beqz v0, 0x411ac8
nop
lw a0, (s1)
jal sym.fix_fd
nop
lw gp, 0x10(sp)
bnez v0, 0x411b00
move a1, s4
lw t9, -sym.imp.close(gp)
lw a0, (s1)
lw s0, (s3)
jalr t9
nop
lw gp, 0x10(sp)
nop
lw t9, -sym.imp.free(gp)
nop
jalr t9
move a0, s1
lw gp, 0x10(sp)
b 0x411b50
sw s0, (s3)
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
addiu a0, s1, 0x20
lw gp, 0x10(sp)
move a1, s0
lw t9, -sym.imp.memcpy(gp)
addiu a0, s1, 4
jalr t9
addiu a2, zero, 0x1c
lw gp, 0x10(sp)
move s2, s1
lw v0, -obj.dnsmasq_daemon(gp)
nop
lw v1, (v0)
nop
lw v0, 0x108(v1)
nop
sw v0, 0x34(s1)
sw s1, 0x108(v1)
lw ra, 0x2c(sp)
--
nop
lw gp, 0x10(sp)
bnez v0, 0x412d84
addiu v0, zero, 1
b 0x412e08
sw v0, 0x20(s0)
lw s0, 0x28(s0)
nop
bnez s0, 0x412d54
nop
b 0x412f80
nop
lw t9, -sym.imp.strlen(gp)
addiu s1, sp, 0x18
jalr t9
move a0, s1
lw gp, 0x10(sp)
nop
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, v0, 1
lw gp, 0x10(sp)
beqz v0, 0x412e08
sw v0, (s0)
lw t9, -sym.imp.strcpy(gp)
move a0, v0
jalr t9
move a1, s1
lw gp, 0x10(sp)
addiu v1, zero, 1
lw v0, -obj.dnsmasq_daemon(gp)
sw v1, 0x20(s0)
lw a0, (v0)
sw v1, 0x24(s0)
lw v0, 0x58(a0)
nop
sw v0, 0x28(s0)
sw s0, 0x58(a0)
lhu v1, (s3)
addiu v0, zero, 2
bne v1, v0, 0x412e34
addiu a0, zero, 2
addiu a1, s3, 4
addiu a2, sp, 0x18
jal sym.iface_check
--
lw v0, (v1)
nop
lw s1, 0x9c(v0)
nop
beqz s1, 0x415144
lui v0, 0x42
addiu s6, v0, 0x3c18
lui v0, 0x42
move s2, v1
addiu s4, v0, 0x3c40
lw v0, (s2)
lw t9, -sym.prettyprint_time(gp)
lw a1, (s1)
lw a0, 0x38c(v0)
jalr t9
move s3, s6
lw gp, 0x18(sp)
lw v0, (s2)
lw t9, -sym.imp.inet_ntoa(gp)
lw a0, 0x18(s1)
lw s0, 0x388(v0)
jalr t9
nop
lw gp, 0x18(sp)
move a0, s0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a1, v0
lw v0, 0x20(s1)
lw gp, 0x18(sp)
andi v0, v0, 1
beqz v0, 0x4150f0
nop
move s3, s4
lw t9, -sym.imp.inet_ntoa(gp)
lw a0, 0x1c(s1)
lw v0, (s2)
nop
lw s0, 0x388(v0)
jalr t9
nop
lw v1, (s2)
lw gp, 0x18(sp)
lw v1, 0x38c(v1)
lw t9, -sym.my_syslog(gp)
--
lw v1, (fp)
addiu a0, zero, 0x100
lw v0, 0xa0(v1)
sw a0, (s0)
sw v0, 0x40(s0)
sw zero, 0x3c(s0)
sw s0, 0xa0(v1)
lw v0, (s0)
andi v1, s3, 0x10
or v0, v0, s3
beqz v1, 0x41679c
sw v0, (s0)
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s1
lw gp, 0x18(sp)
nop
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, v0, 1
lw gp, 0x18(sp)
beqz v0, 0x41678c
sw v0, 0x24(s0)
lw t9, -sym.imp.strcpy(gp)
move a0, v0
jalr t9
move a1, s1
lw gp, 0x18(sp)
b 0x4167a0
andi v0, s3, 0x20
lw v0, (s0)
addiu a1, zero, -0x11
and v0, v0, a1
sw v0, (s0)
andi v0, s3, 0x20
beqz v0, 0x4167ac
nop
sw s2, 0x30(s0)
lw v0, (s0)
addiu v1, zero, 1
ori v0, v0, 0x84
sw v0, (s0)
lw v0, 0x20(sp)
addiu a0, zero, 6
--
beq v0, s4, 0x416e18
move a0, s3
lw t9, -sym.is_same_net(gp)
lw a1, 0x18(s2)
jalr t9
move a2, s4
lw gp, 0x18(sp)
beqz v0, 0x416d74
nop
lw t9, -sym.is_same_net(gp)
lw a1, 0x1c(s2)
move a0, s3
jalr t9
move a2, s4
lw gp, 0x18(sp)
bnez v0, 0x416e18
nop
lw t9, -sym.imp.inet_ntoa(gp)
lw v0, (s6)
lw a0, 0x18(s2)
lw s0, 0x388(v0)
jalr t9
nop
lw gp, 0x18(sp)
move a1, v0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a0, s0
lw gp, 0x18(sp)
lw v0, (s6)
lw t9, -sym.imp.inet_ntoa(gp)
lw a0, 0x1c(s2)
lw s0, 0x38c(v0)
jalr t9
nop
lw gp, 0x18(sp)
move a1, v0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a0, s0
lw gp, 0x18(sp)
lw v0, (s6)
lw t9, -sym.imp.inet_ntoa(gp)
lw s1, 0x38c(v0)
lw s0, 0x388(v0)
jalr t9
move a0, s4
lw gp, 0x18(sp)
sw v0, 0x10(sp)
lw t9, -sym.my_syslog(gp)
move a2, s0
move a3, s1
addiu a0, zero, 4
jalr t9
move a1, fp
lw gp, 0x18(sp)
sw s4, 8(s2)
--
lw s1, 0xc(s0)
lw gp, 0x10(sp)
sw v0, 0x10(s0)
beqz s1, 0x4183ec
sw zero, 8(s0)
b 0x4183ec
sw zero, 0xc(s0)
lw s0, 0x54(s0)
lw t9, -sym.hostname_isequal(gp)
bnez s0, 0x41836c
move a1, s2
move s1, zero
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s2
lw gp, 0x10(sp)
nop
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, v0, 1
lw gp, 0x10(sp)
beqz v0, 0x418434
move s3, v0
lw t9, -sym.imp.strcpy(gp)
move a0, v0
jalr t9
move a1, s2
lw gp, 0x10(sp)
beqz s5, 0x4184d4
nop
bnez s1, 0x4184d4
nop
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move a0, s2
lw gp, 0x10(sp)
move a0, s5
lw t9, -sym.imp.strlen(gp)
nop
jalr t9
move s0, v0
lw gp, 0x10(sp)
addu s0, s0, v0
lw t9, -sym.whine_malloc(gp)
nop
jalr t9
addiu a0, s0, 2
lw gp, 0x10(sp)
beqz v0, 0x4184d4
move s1, v0
lw t9, -sym.imp.strcpy(gp)
move a1, s2
jalr t9
move a0, v0
lw gp, 0x10(sp)
lui a1, 0x42
lw t9, -sym.imp.strcat(gp)
addiu a1, a1, 0x2274
jalr t9
move a0, s1
lw gp, 0x10(sp)
move a1, s5
lw t9, -sym.imp.strcat(gp)
nop
jalr t9
move a0, s1
lw gp, 0x10(sp)
lw v0, 8(s4)
nop
beqz v0, 0x418500
nop
--
addiu a0, zero, 0x100
lw gp, 0x20(sp)
sw v0, 0x388(s0)
lw t9, -sym.safe_malloc(gp)
lw s0, (s3)
jalr t9
addiu a0, zero, 0x100
lw s1, (s3)
lui v1, 0x40
lw a0, (s1)
lw a1, 0xc8(s1)
sw v0, 0x38c(s0)
and a0, a0, v1
lui v0, 0x43
lw gp, 0x20(sp)
beqz a0, 0x4193c8
sw a1, 0x5f60(v0)
lw a1, 0x54(s1)
nop
bnez a1, 0x419374
lui v0, 0x43
sw zero, 0x5f58(v0)
lui v0, 0x43
b 0x41978c
sw zero, 0x5f5c(v0)
lw t9, -sym.imp.strcpy(gp)
lw a0, 0x388(s1)
jalr t9
nop
lw gp, 0x20(sp)
lw v0, (s3)
lw t9, -sym.imp.strcat(gp)
lw a0, 0x388(v0)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x40b4
lw gp, 0x20(sp)
lw v0, (s3)
lw t9, -sym.imp.popen(gp)
lw a0, 0x388(v0)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x2080
lw gp, 0x20(sp)
b 0x419424
move s2, v0
--
nop
and v0, v0, v1
beqz v0, 0x41be40
sw a0, 0x64(sp)
lw t9, -sym.my_syslog(gp)
lw a2, 4(s3)
lui a1, 0x42
addiu a1, a1, 0x42a8
jalr t9
addiu a0, zero, 6
lui v0, 0x42
addiu s5, v0, 0x42ec
lw gp, 0x28(sp)
lui v0, 0x42
move s2, s0
addiu s4, v0, 0x42cc
move s1, fp
lw t9, -sym.imp.inet_ntoa(gp)
lw v0, (s2)
lw a0, 0x18(s1)
lw s0, 0xf8(v0)
jalr t9
nop
lw gp, 0x28(sp)
move a0, s0
lw t9, -sym.imp.strcpy(gp)
nop
jalr t9
move a1, v0
lw v0, 0x20(s1)
lw gp, 0x28(sp)
andi v0, v0, 1
lw t9, -sym.imp.inet_ntoa(gp)
beqz v0, 0x41bdfc
nop
lw v0, (s2)
lw a0, 8(s1)
lw s0, 0xf8(v0)
jalr t9
nop
lw gp, 0x28(sp)
move a2, s0
lw t9, -sym.my_syslog(gp)
move a3, v0
addiu a0, zero, 6
b 0x41be28
--
nop
lbu v0, 0x39(sp)
nop
bnez v0, 0x41f40c
nop
lw t9, -sym.imp.sprintf(gp)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x405c
lw gp, 0x20(sp)
addu s0, s0, v0
b 0x41f460
move s1, zero
lw t9, -sym.imp.sprintf(gp)
lbu a2, 0x14(v0)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x4064
lbu v1, 0x39(sp)
lw gp, 0x20(sp)
addiu v1, v1, -1
beq s1, v1, 0x41f45c
addu s0, s0, v0
lw t9, -sym.imp.strcpy(gp)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x407c
lw gp, 0x20(sp)
addiu s0, s0, 1
addiu s1, s1, 1
lbu v0, 0x39(sp)
nop
slt v0, s1, v0
beqz v0, 0x41f47c
addiu v0, zero, 0x10
bne s1, v0, 0x41f414
addu v0, fp, s1
lw t9, -sym.read_write(gp)
lw a0, 0x30(sp)
lbu a2, 0x3b(sp)
move a1, s3
jalr t9
addiu a3, zero, 1
lw gp, 0x20(sp)
beqz v0, 0x41f35c
move s2, s3
lw v0, (s4)
nop
lw s0, 0xf0(v0)
b 0x41f4fc
move s1, zero
lbu a2, (v0)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x4064
lbu v1, 0x3b(sp)
lw gp, 0x20(sp)
addiu v1, v1, -1
beq s1, v1, 0x41f4f8
addu s0, s0, v0
lw t9, -sym.imp.strcpy(gp)
lui a1, 0x42
move a0, s0
jalr t9
addiu a1, a1, 0x407c
lw gp, 0x20(sp)
addiu s0, s0, 1
addiu s1, s1, 1
lbu v0, 0x3b(sp)
lw t9, -sym.imp.sprintf(gp)
slt v0, s1, v0
bnez v0, 0x41f4b4
addu v0, s3, s1
lw v0, (s4)
lw a2, 0x48(sp)
lw a0, 0x38c(v0)
lui a1, 0x42
jalr t9
addiu a1, a1, 0x4058
lw gp, 0x20(sp)
lbu a2, 0x3d(sp)

[*] Function strcpy used 28 times dnsmasq