System Functions¶
These are some of the functions I've identified within the system.shpac
firmware while reverse engineering it.
Please let me know if any of these are inaccurate.
Function List¶
Address | Function Name |
---|---|
7007798c |
AES_Decrypt |
70077920 |
AES_Encrypt |
700cbc98 |
atomic |
700cbdd4 |
atomic2gen |
700cd57c |
auxresume |
700c799a |
auxsetstr |
70045ea4 |
BusFault_IRQHandler |
700cb7c8 |
callallpendingfinalizers |
7007723c |
check_fs |
7005bc12 |
CheckIfAudioFile |
70077748 |
CheckIfEncrypted |
700d8eec |
checkliteral |
700cad4c |
checkmode |
700d8f48 |
checksize |
700cc62c |
checkSizes |
7010d98c |
Chipboot |
70075c98 |
chk_share |
700775b8 |
clear_dirty_flag |
70075478 |
clear_share |
700761be |
clst2sect |
700cc660 |
correctgraylist |
70015e68 |
cosf |
700c5edc |
CreateEnum |
7007650e |
create_chain |
70079c10 |
Curl_conn_connect |
700aca88 |
Curl_conn_may_http3 |
700796a0 |
Curl_debug |
7007972c |
Curl_failf |
7008de50 |
Curl_http |
7008e3c0 |
Curl_http_auth_act |
7008e2c4 |
Curl_http_connect |
7008e224 |
Curl_http_done |
7008e2e4 |
Curl_http_getsock_do |
7008de0c |
Curl_http_setup_conn |
7008abd8 |
Curl_ipv4_resolve_r |
7008dbee |
Curl_is_in_callback |
7008ae74 |
curl_mvsnprintf |
70091b28 |
Curl_rand |
7008dbd2 |
Curl_set_in_callback |
7008a1f8 |
Curl_shuffle_addr |
70099cf2 |
Curl_ssl_backend |
700cd700 |
db_debug |
700cd7c8 |
db_getuservalue |
70111c2c |
DumpBuffer |
70045f1c |
DebugMonitor_IRQHandler |
7005c988 |
DecodeAudioData |
700767b0 |
dec_share |
700c5e34 |
DecodeLuaFunctionName |
700770a8 |
dir_clear |
700772cc |
dir_find |
70076db0 |
dir_next |
70076b38 |
dir_read |
70075d04 |
dir_register |
70077056 |
dir_remove |
70076a08 |
dir_sdi |
70075258 |
disk_initialize |
700752c4 |
disk_ioctl |
70075284 |
disk_read |
70075240 |
disk_status |
700752a4 |
disk_write |
70045f24 |
DMA1_Stream0_IRQHandler |
70045f30 |
DMA1_Stream1_IRQHandler |
70045f3c |
DMA1_Stream2_IRQHandler |
70045f48 |
DMA1_Stream3_IRQHandler |
70045f78 |
DMA2_Stream0_IRQHandler |
70045f84 |
DMA2_Stream1_IRQHandler |
70045f90 |
DMA2_Stream2_IRQHandler |
7005f0a4 |
DMA2D_IRQHandler |
70048c70 |
DMA_SetConfig |
700cc7b8 |
dothecall |
7010f540 |
dsprintf |
700cb024 |
dumpBlock |
700cae24 |
dumpByte |
700cae38 |
dumpFunction |
700cb0a2 |
dumpInt |
700cb03c |
dumpInteger |
700cb04c |
dumpNumber |
700cb05e |
dumpString |
700cb6c6 |
entergen |
700cb6fc |
enterinc |
700cc7c2 |
entersweep |
700d8f28 |
error |
70045f1e |
EXTI2_IRQHandler |
7007677c |
f_close |
70076aa8 |
f_closedir |
700767ec |
f_lseek |
700753b0 |
f_mount |
7007576c |
f_open |
70076966 |
f_opendir |
700cac28 |
f_parser |
700761d4 |
f_read |
70076ad2 |
f_readdir |
70077100 |
f_rename |
70076e7c |
f_stat |
70076624 |
f_sync |
70076ed0 |
f_truncate |
70076f94 |
f_unlink |
70076386 |
f_write |
70075188 |
FATFS_LinkDriverEx |
700751a8 |
FATFS_UnLinkDriverEx |
70077688 |
ff_convert |
70077648 |
ff_oem2uni |
700c6426 |
fflush |
700012e4 |
fgets |
70074b00 |
FileDriverLinkMount |
70074b50 |
FileDriverUnlinkUnmount |
700cc5d4 |
finishgencycle |
700759b0 |
follow_path |
700c64ac |
fprintf |
700cbb6c |
fullgen |
70002b5a |
fwrite |
700cc6c4 |
GCTM |
700cf754 |
gctm |
700cd28c |
generic_reader |
70076106 |
get_fat |
70076c60 |
get_fileinfo |
70077616 |
get_fptr |
70075434 |
get_ldnumber |
7005e74c |
GetBaseAddress |
700751bc |
GetDrivePrefixPointer |
70074b38 |
GetError |
70093b30 |
getErrorMessage |
700c8e98 |
getF |
700cb560 |
getgclist |
700c82f2 |
getgcparam |
700d7b40 |
getgeneric |
700c5960 |
GetLuaState |
700c5958 |
GetLuaStatePtr |
700c7074 |
GetLuaVersion |
700cb0da |
GetProtoUpvalDesc |
700c8ef0 |
getS |
70044584 |
GetSHAAFile |
700ce0f8 |
GetStderr |
70059438 |
GetSystemPackageFilePath |
700c7870 |
gettable |
7005e786 |
GPIO_ResetPin |
70046914 |
HAL_Delay |
70048210 |
HAL_DMA_Abort |
700486f8 |
HAL_DMA_IRQHandler |
70047fd8 |
HAL_DMA_Start_IT |
70046908 |
HAL_GetTick |
70048f94 |
HAL_GPIO_DeInit |
70048df8 |
HAL_GPIO_Init |
70049096 |
HAL_GPIO_WritePin |
7004a844 |
HAL_MMC_ConfigSpeedBusOperation |
70049d50 |
HAL_MMC_ConfigWideBusOperation |
7004a40c |
HAL_MMC_GetCardCSD |
7004abaa |
HAL_MMC_GetCardState |
70049b42 |
HAL_MMC_Init |
70049b88 |
HAL_MMC_InitCard |
70045a40 |
HAL_MMC_MspInit |
70049e10 |
HAL_MMC_ReadBlocks |
70047798 |
HAL_NVIC_EnableIRQ |
7004773c |
HAL_NVIC_SetPriority |
7004771c |
HAL_NVIC_SetPriorityGrouping |
7004cb84 |
HAL_RCCEx_GetPeriphCLKFreq |
7004dcdc |
HAL_SAI_DisableInterrupt |
7004db14 |
HAL_SAI_DMAStop |
7004d824 |
HAL_SAI_Init |
7004581c |
HAL_SAI_MspInit |
7004dba0 |
HAL_SAI_Transmit_DMA |
7005be20 |
HAL_SAI_TxCpltCallback |
7005be26 |
HAL_SAI_TxHalfCpltCallback |
7004dd44 |
HAL_SPI_Init |
70048cba |
HAL_Unlock |
70045e2c |
HardFault_IRQHandler |
70076060 |
inc_share |
700c7204 |
index2value |
700797aa |
infof |
70044aa8 |
Init_ADC1 |
70044b80 |
Init_ADC2 |
70044c28 |
Init_ADC3 |
70044ef8 |
Init_CRYP |
70044fe0 |
Init_DMA |
70045068 |
Init_DMA2D |
7001c530 |
Init_Flash |
700450ec |
Init_FMC |
70045264 |
Init_GPIO |
70045590 |
Init_I2C1 |
7004566c |
Init_MDMA |
700456fc |
Init_RTC |
70045798 |
Init_SAI1 |
70045934 |
Init_SDMMC2 |
70045bb4 |
Init_SPI1 |
70045c14 |
Init_SPI4 |
70046334 |
Init_TIM1 |
70046504 |
Init_TIM2 |
70046568 |
Init_TIM3 |
700465d0 |
Init_TIM4 |
70046628 |
Init_TIM5 |
70046894 |
Init_TIM7_PendSV |
70046780 |
Init_USART2 |
700c5aa4 |
InitializeLua |
70075f7c |
ld_clust |
700760f0 |
ld_dword |
700cd248 |
load_aux |
7003a650 |
LoadAchievement |
7003b6d4 |
LoadAlarmConfig |
7003b888 |
LoadBedTimeConfig |
700d8b90 |
loadByte |
7003bbc0 |
LoadDoppler |
700d8bc0 |
loadFunction |
7003b9e0 |
LoadInstalledPosition |
700d9048 |
loadInt |
700d8f70 |
loadInteger |
7003d070 |
LoadMovementRecord |
7003b1d0 |
LoadNetworkConfig |
7003b5b4 |
LoadNetworkServiceConfig |
7003abd4 |
LoadNotifications |
700d8f80 |
loadNumber |
700d8fb0 |
loadStringN |
7003bc5c |
LoadSystemConfig |
7003b958 |
LoadTimeSignalConfig |
700d9050 |
loadUnsigned |
70039c7c |
LoadUserData |
7003c0a8 |
LoadUserRecord |
70077234 |
lock_volume |
700c7080 |
lua_absindex |
700c7c64 |
lua_callk |
700c6fd8 |
lua_checkstack |
700c56f0 |
Lua_CollectGarbage_Default |
700c56d6 |
Lua_CollectGarbage_GCGen |
700c8028 |
lua_concat |
700c78b8 |
lua_createtable |
700c7de0 |
lua_dump |
700c7f9e |
lua_error |
700c7e0c |
lua_gc |
700c8088 |
lua_getallocf |
700c77c6 |
lua_getfield |
700c9618 |
lua_getinfo |
700c94ec |
lua_getstack |
700c70a0 |
lua_gettop |
700c72c4 |
lua_isinteger |
700c7d64 |
lua_load |
700c6386 |
lua_newtable_Create |
700c80a2 |
lua_newuserdatauv |
700c7fc4 |
lua_next |
700c7cb0 |
lua_pcallk |
700c76e8 |
lua_pushboolean |
700c767e |
lua_pushcclosure |
700c6316 |
lua_pushcfunction |
700c7650 |
lua_pushfstring |
700c75a0 |
lua_pushnil |
700c7600 |
lua_pushstring |
700c7264 |
lua_pushvalue |
700c7634 |
lua_pushvfstring |
700c789e |
lua_rawgeti |
700ca930 |
lua_resume |
700c713c |
lua_rotate |
700c7a58 |
lua_setfield |
700c7b9c |
lua_setmetatable |
700c70ae |
lua_settop |
700c8178 |
lua_setupvalue |
700c7472 |
lua_toboolean |
700c7fee |
lua_toclose |
700c744c |
lua_tointegerx |
700c748e |
lua_tolstring |
700c7426 |
lua_tonumberx |
700c7524 |
lua_touserdata |
700c727e |
lua_type |
700c72a0 |
lua_typename |
700c7038 |
lua_xmove |
700c55b0 |
luaB_auxwrap |
700ccc50 |
luaB_load |
700cb45c |
luaC_barrier_ |
700cb6a0 |
luaC_changemode |
700cb598 |
luaC_fix |
700cbb10 |
luaC_fullgc |
700cb7fe |
luaC_runtilstate |
700cb92c |
luaC_step |
700c51ea |
LuaCreateEnum |
700ca8d4 |
luaD_call |
700ca926 |
luaD_callnoyield |
700ca344 |
luaD_inctop |
700cab44 |
luaD_pcall |
700cab98 |
luaD_protectedparser |
700ca0e0 |
luaD_throw |
700d4b00 |
luaE_setdebt |
700d4f64 |
luaE_warnerror |
700d4ff8 |
luaE_warning |
700cb12e |
luaF_initupvals |
700cb106 |
luaF_newLclosure |
700cb370 |
luaF_newproto |
700c9ac4 |
luaG_runerror |
700c9860 |
luaG_typeerror |
700d72f8 |
luaH_next |
700d72c8 |
luaH_realasize |
700c8a74 |
luaL_checkstack |
700c8aa8 |
luaL_checktype |
700c929c |
luaL_checkversion_ |
700c8644 |
luaL_error |
700c9128 |
luaL_getsubtable |
700c8f40 |
luaL_len |
700c8ed4 |
luaL_loadbufferx |
700c8d0c |
luaL_loadfilex |
700c88b4 |
luaL_newmetatable |
700cc940 |
luaL_openlibs |
700c8a0c |
luaL_optlstring |
700cd3a2 |
luaL_optstring |
700c8582 |
luaL_pushresult |
700c9174 |
luaL_requiref |
700c90ac |
luaL_setfuncs |
700c8f74 |
luaL_tolstring |
700c8710 |
luaL_typeerror |
700c87d0 |
luaL_where |
700cf40c |
luaM_free_ |
700cf4ac |
luaM_malloc_ |
700cf42c |
luaM_realloc_ |
700cf3c0 |
luaM_saferealloc_ |
700cf3fc |
luaM_toobig |
700cc970 |
luaopen_base |
700cf4f4 |
luaopen_package |
700260e8 |
LuaRegister_App |
7001d854 |
LuaRegister_Canvas |
70021300 |
LuaRegister_Network |
7003d420 |
LuaRegister_ShiroAchievement |
7003d894 |
LuaRegister_ShiroAlarmConfig |
70040408 |
LuaRegister_ShiroBedTime |
70034da4 |
LuaRegister_ShiroCalendar |
700c521c |
LuaRegister_ShiroCoroutineUtil |
700398e4 |
LuaRegister_ShiroDev |
70039c44 |
LuaRegister_ShiroDevConfig |
7002d758 |
LuaRegister_ShiroLayout |
700409b4 |
LuaRegister_ShiroMovementRecord |
700417d8 |
LuaRegister_ShiroNetworkConfig |
70041ec0 |
LuaRegister_ShiroNetworkServiceConfig |
70040e98 |
LuaRegister_ShiroNotification |
700421e8 |
LuaRegister_ShiroSystemConfig |
7002f0ec |
LuaRegister_ShiroText |
700445b4 |
LuaRegister_ShiroTheme |
70043d44 |
LuaRegister_ShiroTimeSignal |
7003edb4 |
LuaRegister_ShiroUserRecord |
70034868 |
LuaRegister_ShiroUtil |
7003040c |
LuaRegister_ShiroViewport |
700d5148 |
luaS_init |
700d5322 |
luaS_new |
700d51b4 |
luaS_newlstr |
700d506c |
luaS_resize |
700d8630 |
luaT_gettmbyobj |
700cad8c |
luaU_dump |
700d8a5c |
luaU_undump |
700d979c |
luaV_finishset |
700d0630 |
luaY_parser |
700dd568 |
luaZ_init |
7001c414 |
main |
70020c8c |
MainFirmwareUpdate |
70057ad0 |
malloc |
70099f0c |
mbed_connect_common |
7009e7e6 |
mbedtls_aes_init |
7009e800 |
mbedtls_aes_setkey_enc |
70099e04 |
mbedtls_connect |
70099e12 |
mbedtls_connect_nonblocking |
700ac76a |
mbedtls_ctr_drbg_random |
700ac56a |
mbedtls_ctr_drbg_reseed_internal |
700ac61c |
mbedtls_ctr_drbg_seed |
70045fb8 |
MDMA_IRQHandler |
70076378 |
mem_cpy |
700772ac |
mem_cmp |
700007d4 |
memclr |
700007ec |
memcpy |
70045e68 |
MemMgmtFault_IRQHandler |
7004aa20 |
MMC_DDR_Mode |
7004ab0c |
MMC_GetCardState |
7004a920 |
MMC_HighSpeed |
7004a788 |
MMC_PwrClassUpdate |
7004abc6 |
MMC_UpdateRPMBErrorCode |
7007549c |
mount_volume |
70076024 |
move_window |
70099b10 |
multissl_connect_nonblocking |
70098d80 |
multissl_setup |
70045e28 |
NMI_IRQHandler |
7008a068 |
num_addresses |
70074e22 |
OpenDirectory |
70045f9c |
OTG_HS_IRQHandler |
7008e67c |
output_auth_headers |
00006c34 |
PendSV_IRQHandler |
700c8bf0 |
prepbuffsize |
700cc020 |
propagatemark |
700c8680 |
pushglobalfuncname |
7007746c |
put_fat |
7010f744 |
ReadFifo |
7010e3b0 |
ReadFifoSize |
700749f4 |
ReadFile |
700c51a4 |
RegisterLuaFunctions |
7002dcc4 |
RegisterLuaFunctions_10 |
7002f528 |
RegisterLuaFunctions_11 |
7003e8fe |
RegisterLuaFunctions_12 |
7003f620 |
RegisterLuaFunctions_16 |
70030724 |
RegisterLuaFunctions_18 |
7003dd9c |
RegisterLuaFunctions_20 |
700c537e |
RegisterLuaFunctions_3 |
70039bb6 |
RegisterLuaFunctions_4 |
7004273a |
RegisterLuaFunctions_46 |
70043fd0 |
RegisterLuaFunctions_5 |
70034e80 |
RegisterLuaFunctions_6 |
7003d500 |
RegisterLuaFunctions_7 |
70041fa0 |
RegisterLuaFunctions_8 |
70075fb0 |
remove_chain |
701590d0 |
Reset_IRQHandler |
700c938c |
resizebox |
700caa3a |
resume |
700c7190 |
reverse |
1ff08a5c |
RSS_exitSecureArea |
1ff08ae0 |
RSS_getVersion |
1ff08b20 |
RSS_resetAndInitializeSecureAreas |
7004578c |
RTC_Alarm_IRQHandler |
7004daac |
SAI_Disable |
7004dd28 |
SAI_DisableDMARequest |
7004dc8e |
SAI_DMAError |
7012280e |
SAI_DMAStop |
7004dc72 |
SAI_DMATxCplt |
7004dc6c |
SAI_DMATxHalfCplt |
7004dd16 |
SAI_EnableInterrupt |
7004dd32 |
SAI_GetLock |
7004dd3a |
SAI_GetState |
7004dd0c |
SAI_HAL_GetTick |
7004dae8 |
SAI_InterruptFlag |
7004dccc |
SAI_SetErrorDMA |
7005be4e |
SAI_StartTransfer |
7005be42 |
SAI_StopTransfer |
701227f8 |
SAI_TransmitData |
7003a6f8 |
SaveAchievement |
7003b7c8 |
SaveAlarmConfig |
7003b8dc |
SaveBedTimeConfig |
7003bc04 |
SaveDoppler |
7003ba8c |
SaveInstalledPosition |
7003d178 |
SaveMovementRecord |
7003b378 |
SaveNetworkConfig |
7003b628 |
SaveNetworkServiceConfig |
7003adb8 |
SaveNotifications |
7003bea4 |
SaveSystemConfig |
7003b988 |
SaveTimeSignalConfig |
70039e28 |
SaveUserData |
7003c49c |
SaveUserRecord |
000049fc |
SCB_CleanDCache_by_Addr |
7011cfe0 |
sd_wifi_init |
7010fd80 |
SDMMC1_IRQHandler |
70045fc4 |
SDMMC2_IRQHandler |
700507a0 |
SDMMC_CmdSendCID |
700506fc |
SDMMC_CmdSelDesel |
70050808 |
SDMMC_CmdSendCSD |
700504ca |
SDMMC_ConfigData |
70074f7c |
SDMMC_disk_initialize |
700750ec |
SDMMC_disk_ioctl |
70075010 |
SDMMC_disk_read |
70074f50 |
SDMMC_disk_status |
70075070 |
SDMMC_disk_write |
70050510 |
SDMMC_GetCmdResp2 |
700504bc |
SDMMC_GetPowerState |
700504c4 |
SDMMC_GetResponse |
7005047c |
SDMMC_Init |
700504b0 |
SDMMC_PowerState_ON |
7004ac36 |
SDMMC_ReadFIFO |
70077ff8 |
SetDiskAvailability |
700cc820 |
setpause |
7009d954 |
SHA256_Compress |
7009ca80 |
SHA512_Compress |
70019ed0 |
sinf |
700cb824 |
singlestep |
70045fa8 |
SPI4_IRQHandler |
7004e9f8 |
SPI_AddRecvBuffPtr |
7004e920 |
SPI_DecrementRecvTransferCount |
7004ea20 |
SPI_GetInstance |
7004ea60 |
SPI_GetState |
7004e92c |
SPI_ResetAndGetErrorCode |
7004ea08 |
SPI_SetLock |
7004e9ca |
SPI_SetState |
7004e964 |
SPI_StopAndFetchErrors |
7004e904 |
SPI_TimeoutError |
7004e9d6 |
SPI_TransferDone |
7004e982 |
SPI_Unlock |
7004e95a |
SPI_UnlockAndSetErrorMODF |
7009b4cc |
ssl_init |
70075f9a |
st_clust |
7010dbec |
Start |
700c5068 |
StartLua |
7005b488 |
Startup |
7010dcb0 |
Stop |
700d5558 |
str_dump |
7007743c |
strchr |
70003f10 |
strcmp |
700063f4 |
strcpy |
70006b00 |
strlen |
7001cd04 |
str_len |
7007744e |
sum_sfn |
00006a38 |
SVCall_IRQHandler |
700cc57c |
sweep2old |
700cbb86 |
sweeplist |
700cc7da |
sweepstep |
700cb686 |
sweeptolive |
700766c6 |
sync_fs |
7007756c |
sync_window |
00005400 |
SysTick_IRQHandler |
700d50c2 |
tablerehash |
700c8ad6 |
tag_error |
70077620 |
thunk2_validate |
7007760e |
thunk_dir_next |
700775fc |
thunk_disk_write |
70077642 |
thunk_get_fat |
700775c2 |
thunk_move_window |
70077608 |
thunk_validate |
70045f60 |
TIM5_IRQHandler |
70045f6c |
TIM7_IRQHandler |
700cf46c |
tryagain |
70075750 |
unlock_volume |
700caca0 |
unroll |
70045ee0 |
UsageFault_IRQHandler |
70045f54 |
USART2_IRQHandler |
70076328 |
validate |
700cc6aa |
whitelist |
7011ee5c |
wifi_core_init |
7011458c |
wifi_get_scan_result |
70074bb4 |
WriteFile |
700d64f2 |
writer |
70154198 |
ZSTD_getFrameHeader |
70153f80 |
ZSTD_getFrameHeader_advanced |
(More Coming Soon)¶
Work in progress
This page is currently under development.
Feel free to follow @KernelEquinox to get notified about site and documentation updates as they happen.