{"arch":"arm64","build_provenance":null,"call_graph":{"calls":{"4294969096":[{"is_tail_call":false,"symbol":"proc_pidinfo","target_va":4294970212},{"is_tail_call":false,"symbol":"ruby_init","target_va":4294970260},{"is_tail_call":false,"symbol":"proc_pidpath","target_va":4294970228},{"is_tail_call":false,"symbol":"realloc","target_va":4294970244},{"is_tail_call":false,"symbol":"ruby_init_stack","target_va":4294970276},{"is_tail_call":false,"symbol":"snprintf","target_va":4294970436},{"is_tail_call":false,"symbol":"strlcat","target_va":4294970452},{"is_tail_call":false,"symbol":"asl_send","target_va":4294970100},{"is_tail_call":false,"symbol":"ruby_sysinit","target_va":4294970404},{"is_tail_call":false,"symbol":"ruby_options","target_va":4294970292},{"is_tail_call":false,"symbol":"os_variant_has_internal_diagnostics","target_va":4294970180},{"is_tail_call":false,"symbol":"setlocale","target_va":4294970420},{"is_tail_call":false,"symbol":"setlocale","target_va":4294970420},{"is_tail_call":false,"symbol":"bzero","target_va":4294970132},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"free","target_va":4294970148},{"is_tail_call":false,"symbol":"asl_set","target_va":4294970116},{"is_tail_call":false,"symbol":"bzero","target_va":4294970132},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"getppid","target_va":4294970164},{"is_tail_call":false,"symbol":"free","target_va":4294970148},{"is_tail_call":false,"symbol":"asl_set","target_va":4294970116},{"is_tail_call":false,"symbol":"proc_name","target_va":4294970196}],"4294969976":[{"is_tail_call":false,"symbol":"ruby_run_node","target_va":4294970388},{"is_tail_call":false,"symbol":"mt_log_BSDServices_ScriptingLanguageUse","target_va":4294969096},{"is_tail_call":false,"symbol":"asl_free","target_va":4294970372},{"is_tail_call":false,"symbol":"__stack_chk_fail","target_va":4294970324},{"is_tail_call":false,"symbol":"__chkstk_darwin","target_va":4294970308},{"is_tail_call":false,"symbol":"__stack_chk_guard","target_va":4294970340},{"is_tail_call":false,"symbol":"__strlcpy_chk","target_va":4294970356}]},"data_xrefs":{"by_data":{"4294971400":[4294969976],"4294971408":[4294969976],"4294971440":[4294969976],"4294971488":[4294969096],"4294972447":[4294969096],"4294972462":[4294969096],"4294972473":[4294969096],"4294972479":[4294969096],"4294972481":[4294969096],"4294972506":[4294969096],"4294972549":[4294969096],"4294972577":[4294969096],"4294972605":[4294969096],"4294972609":[4294969096],"4294972615":[4294969096],"4294972622":[4294969096],"4294972630":[4294969096,4294969976],"4294972631":[4294969096],"4294972677":[4294969096],"4294972706":[4294969096],"4294972713":[4294969096],"4294972742":[4294969976],"4294983680":[4294969096],"4294983872":[4294969096],"4294983880":[4294969096],"4295000064":[4294969096],"4295000072":[4294969096]},"by_function":{"4294969096":[{"data_va":4294983880,"insn_va":4294969136,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294969140,"kind":"Global","value":null},{"data_va":4294983872,"insn_va":4294969164,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294969168,"kind":"Global","value":null},{"data_va":4294972447,"insn_va":4294969216,"kind":"CString","value":"com.apple.ruby"},{"data_va":4294972473,"insn_va":4294969232,"kind":"CString","value":"%s %s"},{"data_va":4294972462,"insn_va":4294969252,"kind":"CString","value":"[redacted]"},{"data_va":4295000064,"insn_va":4294969360,"kind":"Global","value":"/bin/"},{"data_va":4295000072,"insn_va":4294969372,"kind":"Global","value":null},{"data_va":4294972479,"insn_va":4294969520,"kind":"CString","value":null},{"data_va":4294971488,"insn_va":4294969536,"kind":"CString","value":null},{"data_va":4294972481,"insn_va":4294969584,"kind":"CString","value":"com.apple.message.domain"},{"data_va":4294972506,"insn_va":4294969592,"kind":"CString","value":"com.apple.BSDServices.ScriptingLanguageUse"},{"data_va":4294972549,"insn_va":4294969608,"kind":"CString","value":"com.apple.message.signature"},{"data_va":4294972577,"insn_va":4294969636,"kind":"CString","value":"com.apple.message.summarize"},{"data_va":4294972605,"insn_va":4294969644,"kind":"CString","value":"YES"},{"data_va":4294972609,"insn_va":4294969664,"kind":"CString","value":"Level"},{"data_va":4294972615,"insn_va":4294969672,"kind":"CString","value":"Notice"},{"data_va":4294972622,"insn_va":4294969696,"kind":"CString","value":"Message"},{"data_va":4294972630,"insn_va":4294969704,"kind":"CString","value":null},{"data_va":4294972631,"insn_va":4294969760,"kind":"CString","value":"com.apple.BSDServices.ScriptingLanguageUse_v2"},{"data_va":4294972677,"insn_va":4294969792,"kind":"CString","value":"com.apple.message.signature2"},{"data_va":4294972706,"insn_va":4294969800,"kind":"CString","value":"2.6.10"},{"data_va":4294972713,"insn_va":4294969816,"kind":"CString","value":"com.apple.message.signature3"},{"data_va":4294972577,"insn_va":4294969840,"kind":"CString","value":"com.apple.message.summarize"},{"data_va":4294983872,"insn_va":4294969920,"kind":"Global","value":null},{"data_va":4294983680,"insn_va":4294969924,"kind":"Global","value":null}],"4294969976":[{"data_va":4294972630,"insn_va":4294970004,"kind":"CString","value":null},{"data_va":4294972742,"insn_va":4294970020,"kind":"CString","value":"ruby"},{"data_va":4294971408,"insn_va":4294970032,"kind":"CString","value":null},{"data_va":4294971400,"insn_va":4294970044,"kind":"CString","value":null},{"data_va":4294971408,"insn_va":4294970060,"kind":"CString","value":null},{"data_va":4294971440,"insn_va":4294970076,"kind":"CString","value":null}]}},"noreturn_vas":[],"symbols":{"4294969096":"mt_log_BSDServices_ScriptingLanguageUse","4294969976":"main"}},"capabilities":[{"category":"Security","description":"Keychain, certificates, code signing","source":"/System/Library/Frameworks/Security.framework/Versions/A/Security","value":null}],"code_signature":{"code_directory":{"cdhash":"29d0643b48d449bad888b7638282c7c5934259cafebb3de58197754979cb3966","flag_names":[],"flags":0,"hash_type":2,"identifier":"com.apple.ruby","platform":26,"team_id":null},"signing_status":"AppleSigned"},"cpp_hierarchy":null,"data_in_code":[],"dna":{"hashes":{"classhash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","cpp_classhash":null,"entitlementhash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","frameworkhash":"c60d703f61145a3c20b278e46b1c3a35e565302647a31fdfb1d3ab964b6aa1e8","imphash":"2a59825866662342bdfb8bcb48f6e772d41088fa55d4dfce3a27ec281a4be51e","sha256_text":"8d296615c523e414f8e8d0c61ed1fe7dd4aea0ac8948dd894472d997304099a1","symbolhash":"2a59825866662342bdfb8bcb48f6e772d41088fa55d4dfce3a27ec281a4be51e"},"sets":{"apis_called":["__chkstk_darwin","__stack_chk_fail","__stack_chk_guard","__strlcpy_chk","asl_free","asl_send","asl_set","bzero","free","getppid","mt_log_BSDServices_ScriptingLanguageUse","os_variant_has_internal_diagnostics","proc_name","proc_pidinfo","proc_pidpath","realloc","ruby_init","ruby_init_stack","ruby_options","ruby_run_node","ruby_sysinit","setlocale","snprintf","strlcat"],"bundle_ids":["com.apple.BSDServices.ScriptingLanguageUse","com.apple.BSDServices.ScriptingLanguageUse_v2","com.apple.message.domain","com.apple.message.signature","com.apple.message.signature2","com.apple.message.signature3","com.apple.message.summarize","com.apple.ruby"],"cpp_classes":[],"entitlements":[],"frameworks":["Security","Foundation","Ruby","libSystem.B.dylib","libobjc.A.dylib"],"iokit_constants":[],"objc_classes":[],"private_frameworks":[],"protocols":[],"signing_status":"Apple Signed","static_libs":[],"swift_protocol_names":[],"swift_type_names":[],"xpc_services":[]},"vector":{"bundle_ids":8,"cap_analytics":0,"cap_hardware":0,"cap_ipc":0,"cap_keychain":0,"cap_location":0,"cap_network":0,"cap_security":1,"cap_storage":0,"cap_system":0,"cpp_classes":0,"cpp_vtable_entries":0,"entitlements_total":0,"file_paths":3,"frameworks_private":0,"frameworks_total":5,"iokit_constants":0,"library_functions":0,"nlist_functions":2,"objc_classes":0,"objc_ivars":0,"objc_methods":0,"objc_protocols":0,"section_count":8,"size_log2":17.044735,"static_lib_count":0,"swift_conformances":0,"swift_protocols":0,"swift_types":0,"telemetry_strings":1,"text_ratio":0.0073076924,"url_endpoints":4,"xpc_provides":0}},"dwarf_metadata":null,"entitlements":{"entries":{},"raw_plist":null},"exports":[{"address":0,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"_mh_execute_header"},{"address":2680,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"main"},{"address":1800,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"mt_log_BSDServices_ScriptingLanguageUse"},{"address":32768,"is_reexport":false,"is_thread_local":false,"is_weak":false,"name":"pswhitelist"}],"fileset_entries":[],"fingerprint":{"analyzed_at":"2026-04-07T05:21:15Z","available_arches":["x86_64","arm64"],"binary_type":"executable","bundle_id":null,"cdhash":"29d0643b48d449bad888b7638282c7c5934259cafebb3de58197754979cb3966","file_modified":"2026-04-06T11:59:47Z","file_size":135200,"is_arm64e":true,"min_os":"26.1.0","name":"ruby","platform":"macOS","sdk":"26.1.0","sha256":"bed70ae2545cc7f65ac59935edb11d65b8773744aa40859f8dc624e8644f2051","sha256_slice":"260433588c47437f44ff7d223916a7f227a5af45a8190a0c82939c4d1cc7e0c8","source_version":"173.0.0.0.0","team_id":null,"uuid":"8103BCAE-1409-3AC9-A062-2E86293E2E56"},"frameworks":[{"is_private":false,"is_weak":false,"name":"/System/Library/Frameworks/Security.framework/Versions/A/Security"},{"is_private":false,"is_weak":false,"name":"/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation"},{"is_private":false,"is_weak":false,"name":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib"},{"is_private":false,"is_weak":false,"name":"/usr/lib/libSystem.B.dylib"},{"is_private":false,"is_weak":false,"name":"/usr/lib/libobjc.A.dylib"}],"function_starts_count":2,"imports":[{"address":0,"dylib":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","is_lazy":false,"is_weak":false,"name":"ruby_init"},{"address":0,"dylib":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","is_lazy":false,"is_weak":false,"name":"ruby_init_stack"},{"address":0,"dylib":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","is_lazy":false,"is_weak":false,"name":"ruby_options"},{"address":0,"dylib":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","is_lazy":false,"is_weak":false,"name":"ruby_run_node"},{"address":0,"dylib":"/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","is_lazy":false,"is_weak":false,"name":"ruby_sysinit"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__stack_chk_fail"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__strlcpy_chk"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"asl_free"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"asl_new"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"asl_send"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"asl_set"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"bzero"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"free"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"getppid"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"os_variant_has_internal_diagnostics"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"proc_name"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"proc_pidinfo"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"proc_pidpath"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"realloc"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"setlocale"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"snprintf"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strlcat"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strlen"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"strncmp"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__stack_chk_guard"},{"address":0,"dylib":"/usr/lib/libSystem.B.dylib","is_lazy":false,"is_weak":false,"name":"__chkstk_darwin"}],"interesting_strings":{"bundle_ids":["com.apple.BSDServices.ScriptingLanguageUse","com.apple.BSDServices.ScriptingLanguageUse_v2","com.apple.message.domain","com.apple.message.signature","com.apple.message.signature2","com.apple.message.signature3","com.apple.message.summarize","com.apple.ruby"],"file_paths":["/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation","/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/libruby.2.6.dylib","/System/Library/Frameworks/Security.framework/Versions/A/Security"],"telemetry":["_os_variant_has_internal_diagnostics"],"urls_and_endpoints":["$http://crl.apple.com/codesigning.crl0","%http://www.apple.com/appleca/root.crl0","<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">","https://www.apple.com/appleca/0"]},"iokit_surface":null,"library_matches":[],"library_profile":{"libraries":{},"library_ratio":0.0,"total_functions":2,"total_identified":0},"network_surface":{"api_usage":{"callers":[],"classes":[],"methods":[]},"endpoints":[{"is_dynamic":false,"kind":"Url","value":"http://www.apple.com/appleca/root.crl0"},{"is_dynamic":false,"kind":"Hostname","value":"www.apple.com"},{"is_dynamic":false,"kind":"Url","value":"http://crl.apple.com/codesigning.crl0"},{"is_dynamic":false,"kind":"Hostname","value":"crl.apple.com"},{"is_dynamic":false,"kind":"Url","value":"https://www.apple.com/appleca/0"},{"is_dynamic":false,"kind":"Url","value":"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">"}],"has_network_entitlement":false,"network_frameworks":["Foundation"]},"objc_classes":{},"objc_metadata":{"classes":{}},"sections":[{"name":"__text","offset":1800,"protection":"r-x","segment":"__TEXT","size":988},{"name":"__auth_stubs","offset":2788,"protection":"r-x","segment":"__TEXT","size":384},{"name":"__cstring","offset":3172,"protection":"r-x","segment":"__TEXT","size":2279},{"name":"__unwind_info","offset":5452,"protection":"r-x","segment":"__TEXT","size":96},{"name":"__auth_got","offset":16384,"protection":"rw-","segment":"__DATA_CONST","size":192},{"name":"__got","offset":16576,"protection":"rw-","segment":"__DATA_CONST","size":8},{"name":"__auth_ptr","offset":16584,"protection":"rw-","segment":"__DATA_CONST","size":8},{"name":"__data","offset":32768,"protection":"rw-","segment":"__DATA","size":536}],"summary":"Verifies the integrity and validity of signed macOS binaries by checking code signatures, certificates, and entitlements against the system's trusted roots. Accesses the Keychain to retrieve certificates and validation data. Communicates with network endpoints for certificate revocation checking and signature validation services. Handles multiple bundle identifiers and file paths for batch processing of signed code artifacts.","swift_metadata":null,"title":"Code signing utility — validates and manages digital signatures on executables","total_strings":242,"xpc_services":[]}