; ; fclose from 0x18012fa80 to 0x18012fae2 (98 bytes) ; ; 3 xrefs: ; > sub_180043D20 @ 0x180043e3d ; > _fcloseall @ 0x180138711 ; > @ 0x180202dd4 ; ; This function is hookable on this platform! ; ; Using BromaIDA 8.0.0 @ https:;github.com/Stazzical/BromaIDA ; Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https:;github.com/geode-sdk/bindings ; mov [rsp+arg_8], rbx ; +0x0, 0x18012fa80 mov [rsp+arg_0], rcx ; +0x5, 0x18012fa85 push rdi ; +0xa, 0x18012fa8a sub rsp, 20h ; +0xb, 0x18012fa8b mov rbx, rcx ; +0xf, 0x18012fa8f test rcx, rcx ; +0x12, 0x18012fa92 jnz short loc_18012FAB5 ; +0x15, 0x18012fa95 call _errno ; +0x17, 0x18012fa97 mov dword ptr [rax], 16h ; +0x1c, 0x18012fa9c call _invalid_parameter_noinfo ; +0x22, 0x18012faa2 or eax, 0FFFFFFFFh ; +0x27, 0x18012faa7 mov rbx, [rsp+28h+arg_8] ; +0x2a, 0x18012faaa add rsp, 20h ; +0x2f, 0x18012faaf pop rdi ; +0x33, 0x18012fab3 retn ; +0x34, 0x18012fab4 mov eax, [rcx+14h] ; +0x35, 0x18012fab5 shr eax, 0Ch ; +0x38, 0x18012fab8 test al, 1 ; +0x3b, 0x18012fabb jz short loc_18012FAC6 ; +0x3d, 0x18012fabd call ?__acrt_stdio_free_stream@@YAXV__crt_stdio_stream@@@Z ; +0x3f, 0x18012fabf jmp short loc_18012FAA7 ; +0x44, 0x18012fac4 call sub_18012F9E4 ; +0x46, 0x18012fac6 nop ; +0x4b, 0x18012facb mov rcx, rbx; Stream ; +0x4c, 0x18012facc call _fclose_nolock ; +0x4f, 0x18012facf mov edi, eax ; +0x54, 0x18012fad4 mov rcx, rbx ; +0x56, 0x18012fad6 call sub_18012F9F0 ; +0x59, 0x18012fad9 mov eax, edi ; +0x5e, 0x18012fade jmp short loc_18012FAAA ; +0x60, 0x18012fae0