c_strtod and c_getenv are kept since strtod doesn't appear in the SDK's libc, and we want our own c_getenv to initialize the Lua main anyway.
Merely a wrapper around the (undocumented) internal SDK AES functions.