Function at 0x180077a30
Capabilities:
Reference absolute stream path on windows

Disassembly:
push rdi
sub rsp, 0x40
test rcx, rcx
je 0x180077c96
mov qword [rsp + 0x58], rbx
mov r8d, 3
mov qword [rsp + 0x38], rsi
call fcn.1800788c0
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x20], 0
mov edx, ebx
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
mov rdi, rax
call sym.glib_2.0.dll_g_ucs4_to_utf8
mov rsi, rax
test rdi, rdi
je 0x180077a88
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rsp + 0x60], rbp
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x30], r14
call sym.glib_2.0.dll_g_get_charset
test eax, eax
je 0x180077b06
mov r8d, 1
lea rcx, [rsp + 0x50]
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strxfrm]
cmp rax, 0x7ffffffd
jae 0x180077c05
lea rbp, [rax + 1]
mov rcx, rbp
call sym.glib_2.0.dll_g_malloc
mov rdi, rax
test rax, rax
je 0x180077aed
test rbp, rbp
je 0x180077aed
mov r8, rbp
mov rdx, rsi
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strxfrm]
jmp 0x180077bd7
mov r8d, 1
lea rcx, [rsp + 0x50]
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strxfrm]
jmp 0x180077bd7
test rsi, rsi
je 0x180077beb
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x180077be2
xor r8d, r8d
lea rdx, [0x1800eb510]
call fcn.180018fd0
mov rdi, rax
cmp rax, rbx
je 0x180077c05
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov r8, rax
mov qword [rsp + 0x20], 0
mov rdx, rbx
mov rcx, rsi
call sym.glib_2.0.dll_g_convert_with_iconv
mov rcx, rdi
mov rbp, rax
call fcn.1800190d0
test rbp, rbp
je 0x180077c05
mov r8d, 1
lea rcx, [rsp + 0x50]
mov rdx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strxfrm]
mov r14, rax
cmp rax, 0x7ffffffd
jb 0x180077b99
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x180077c05
lea rcx, [rax + 2]
call sym.glib_2.0.dll_g_malloc
mov rdi, rax
lea r8, [r14 + 1]
lea rcx, [rax + 1]
mov byte [rax], 0x41
test rcx, rcx
je 0x180077bba
test r8, r8
jne 0x180077bc5
mov r8d, 1
lea rcx, [rsp + 0x50]
mov rdx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strxfrm]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test rdi, rdi
jne 0x180077c6b
jmp 0x180077c05
lea r8, str.to_codeset___NULL
jmp 0x180077bf2
lea r8, str.str___NULL
lea rdx, [0x1800ecac8]
lea rcx, [0x18009cbc8]
call sym.glib_2.0.dll_g_return_if_fail_warning
inc rbx
cmp byte [rsi + rbx], 0
jne 0x180077c05
lea rbp, [rbx + 2]
test rbp, rbp
je 0x180077c52
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdi, rax
test rax, rax
jne 0x180077c54
lea r9, str.d:_buildob_bora_15653658cayman_glibglib_srcglibgmem.c:105
mov qword [rsp + 0x20], rbp
lea r8, str._s:_failed_to_allocate__I64u_bytes
lea edx, [rax + 4]
lea rcx, [0x18009cbc8]
call sym.glib_2.0.dll_g_log
nop word [rax + rax]
jmp 0x180077c50
xor edi, edi
lea rcx, [rdi + 1]
mov byte [rdi], 0x42
mov r8, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi + 1], 0
mov r14, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
test rsi, rsi
je 0x180077c88
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x38]
mov rax, rdi
add rsp, 0x40
pop rdi
ret
lea rax, str.str___NULL
mov edx, 8
lea r9, [0x1800fa708]
mov qword [rsp + 0x20], rax
lea r8, str._s:_assertion__s_failed
lea rcx, [0x18009cbc8]
call sym.glib_2.0.dll_g_log
xor eax, eax
add rsp, 0x40
pop rdi
ret