; assembly | /* r2dec pseudo code output */ | /* bdls_filedescriptorguard.t/assume @ 0x406ab0 */ | #include | ; (fcn) method.BloombergLP::bdls::FileDescriptorGuard.closeAndRelease__ () | void method_BloombergLP::bdls::FileDescriptorGuard_closeAndRelease_ (void * arg1) { | rdi = arg1; | /* BloombergLP::bdls::FileDescriptorGuard::closeAndRelease() */ 0x00406ab0 push rbp | 0x00406ab1 push rbx | 0x00406ab2 push rax | 0x00406ab3 mov rbx, rdi | rbx = rdi; 0x00406ab6 mov ebp, dword [rip + 0x2e174] | ebp = BloombergLP::bdls::FilesystemUtil::k_INVALID_FD; 0x00406abc mov edi, dword [rdi] | 0x00406abe call 0x406b80 | BloombergLP::bdls::FilesystemUtil::close(int) (*(rdi)); 0x00406ac3 mov dword [rbx], ebp | *(rbx) = ebp; 0x00406ac5 add rsp, 8 | 0x00406ac9 pop rbx | 0x00406aca pop rbp | 0x00406acb ret | | }