I have been trying to disassemble the app in IDA
bye and quit commands seem to jump to the same place (which is expected).
The "key" command seems like it will respond with an "ok" message if the correct input is received.
You can see the commands below.. not sure why it doesnt respond tho? any ideas?
there were also some bits of code using HTTP protocol but not sure if they are used..
.text:00013A48 loc_13A48: # CODE XREF: command_loop?+60j
.text:00013A48 lui $v0, 1
.text:00013A4C addiu $a3, $v0, aOk # "ok"
.text:00013A50 lui $v0, 1
.text:00013A54 addiu $a2, $v0, aKey_0 # "key"
.text:00013A58 lui $v0, 1
.text:00013A5C lw $v1, 0x88+var_3C($fp)
.text:00013A60 addiu $a1, $v0, aBye # "bye"
.text:00013A64 lui $v0, 1
.text:00013A68 lw $v1, 0($v1)
.text:00013A6C addiu $a0, $v0, aQuit # "quit"
.text:00013A70 addiu $s2, $fp, 0x88+var_60
.text:00013A74 addiu $s3, $fp, 0x88+var_60
.text:00013A78 addiu $s4, $fp, 0x88+var_50
.text:00013A7C addiu $s5, $fp, 0x88+var_50
.text:00013A80 sw $v1, 0x88+var_78($fp)
.text:00013A84 addiu $s6, $fp, 0x88+var_50
.text:00013A88 sw $a3, 0x88+var_68($fp)
.text:00013A8C addiu $s0, $fp, 0x88+var_60
.text:00013A90 sw $a2, 0x88+var_6C($fp)
.text:00013A94 addiu $s1, $fp, 0x88+var_78
.text:00013A98 sw $a1, 0x88+var_70($fp)
.text:00013A9C sw $a0, 0x88+var_74($fp)
.text:00013AA0
.text:00013AA0 loc_13AA0: # CODE XREF: command_loop?+1A4j
.text:00013AA0 li $a3, 1
.text:00013AA4 lw $t0, 0x88+var_3C($fp)
.text:00013AA8 beq $v1, $t0, loc_13AB4
.text:00013AAC move $v0, $a3
.text:00013AB0 move $v0, $0
.text:00013AB4
.text:00013AB4 loc_13AB4: # CODE XREF: command_loop?+D0j
.text:00013AB4 bnez $v0, loc_13AC4
.text:00013AB8 nop
.text:00013ABC b loc_13AC8
.text:00013AC0 move $v0, $a3
.text:00013AC4 # ---------------------------------------------------------------------------
.text:00013AC4
.text:00013AC4 loc_13AC4: # CODE XREF: command_loop?:loc_13AB4j
.text:00013AC4 move $v0, $0
.text:00013AC8
.text:00013AC8 loc_13AC8: # CODE XREF: command_loop?+E4j
.text:00013AC8 beqz $v0, loc_13B84
.text:00013ACC nop
.text:00013AD0 addiu $s7, $v1, 0xC
.text:00013AD4 move $a1, $s7
.text:00013AD8 jal sub_16D8C
.text:00013ADC move $a0, $s2
.text:00013AE0 lw $a1, 0x88+var_74($fp) # quit
.text:00013AE4 move $a0, $s3
.text:00013AE8
.text:00013AE8 loc_13AE8: # DATA XREF: .text:000112B4o
.text:00013AE8 jal stringcompare?
.text:00013AEC nop
.text:00013AF0 bnez $v0, loc_13B5C
.text:00013AF4 nop
.text:00013AF8 lw $a1, 0x88+var_70($fp) # bye
.text:00013AFC jal stringcompare?
.text:00013B00 addiu $a0, $fp, 0x88+var_60
.text:00013B04 bnez $v0, loc_13B5C
.text:00013B08 nop
.text:00013B0C lw $a1, 0x88+var_6C($fp) # key
.text:00013B10 jal stringcompare?
.text:00013B14 addiu $a0, $fp, 0x88+var_60
.text:00013B18 beqz $v0, loc_13B68
.text:00013B1C nop
.text:00013B20 addiu $a1, $s7, 0x10
.text:00013B24 jal sub_1377C
.text:00013B28 move $a0, $s4
.text:00013B2C jal sub_12504
.text:00013B30 move $a0, $s5
.text:00013B34 lw $a1, 0x88+var_68($fp) # ok
.text:00013B38 lw $a0, 0x88+arg_0($fp)
.text:00013B3C li $a2, 3
.text:00013B40 jal transmit
.text:00013B44 nop
.text:00013B48 li $a1, 1
.text:00013B4C jal sub_123C0
.text:00013B50 move $a0, $s6
.text:00013B54 b loc_13B68
.text:00013B58 nop