# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# MLA -- USB Library

20 December, 2013

- 1
- 2
…
- 245
- 246
- 247
- 248
- 249
…
- 311
- 312

Packet Byte Content
0 GET_DATA(0x07)
1-4 Address
5 Size (1-58 bytes)
6-63 (padding)
The response to the GET_DATA command is almost identical to the PROGRAM_DEVICE command format. The address
and size fields of the response packet must match the command packet requesting the data.
Table: GET_DATA response format (sent from device to the host)
Packet byte Content
0 GET_DATA(0x05)
1-4 Address
5 Size (1-58 bytes)
6-(n) Padding (0-57 bytes)
(n+1) Data Payload
1.6.3.2.1.7 RESET_DEVICE
The RESET_DEVICE (0x08) command reads the requested data from the device.
Description
The RESET_DEVICE command (0x08) causes the device to issue a software reset. The command does not have any data
payload or associated response. This command is typically used to effectively switch from firmware update mode back into
application run mode.
Table: RESET_DEVICE command format (sent from host to device)
Packet Byte Content
0 RESET_DEVICE(0x08)
1-63 (padding)
1.6.3.2.1.8 SIGN_FLASH
The SIGN_FLASH command (0x09) causes a special flash signature word to be programmed at a fixed address in the flash
memory.
Description
The SIGN_FLASH command (0x09) causes a special flash signature word to be programmed at a fixed address in the flash
memory. The command does not have any data payload.
Table: SIGN_FLASH command format (sent from host to device)
Packet Byte Content
0 SIGN_FLASH(0x09)
1-63 (padding)
This command should only be issued once, after a fully completed (and successful) erase/program/verify operation on all
memory regions intended to be reprogrammed. The command should be followed by a QUERY_DEVICE command so as to
‘poll’ for the completion of SIGN_FLASH command request.
1.6 Demos MLA - USB Library Help Device - Boot Loader - HID
247

- 1
- 2
…
- 245
- 246
- 247
- 248
- 249
…
- 311
- 312