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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
test rcx, rcx
lea rdi, str.__t_r_n
mov edx, 0x90
cmovne rdi, rcx
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov rbx, rax
test rax, rax
jne 0x180056e82
lea r9, str.d:_buildob_bora_15653658cayman_glibglib_srcglibgmem.c:135
mov qword [rsp + 0x20], 0x90
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 dword [rax + rax]
jmp 0x180056e80
xor esi, esi
mov qword [rax + 8], 1
mov qword [rax], rsi
mov qword [rax + 0x10], rsi
add rax, 0x18
je 0x180056ea2
mov qword [rax], rsi
lock or dword [rsp], esi
jmp 0x180056ecd
lea rax, str.datalist___NULL
mov edx, 8
lea r9, [0x1800ed040]
mov qword [rsp + 0x20], rax
lea r8, str._s:_assertion__s_failed
lea rcx, [0x18009cbc8]
call sym.glib_2.0.dll_g_log
mov edx, 0x28
lea ecx, [rdx - 0x27]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov rcx, rax
test rax, rax
jne 0x180056f12
lea r9, str.d:_buildob_bora_15653658cayman_glibglib_srcglibgmem.c:135
mov qword [rsp + 0x20], 0x28
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 dword [rax]
jmp 0x180056f10
mov qword [rbx + 0x20], rcx
mov eax, dword [rax + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 1
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov rax, qword [rdi]
mov qword [rcx], rax
mov rcx, qword [rbx + 0x20]
cmp qword [rcx], rsi
jne 0x180056f43
lea rax, [0x1800eaba1]
mov qword [rcx], rax
mov rcx, qword [rbx + 0x20]
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
mov rcx, qword [rbx + 0x20]
mov rax, qword [rdi + 0x10]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbx + 0x20]
mov rax, qword [rdi + 0x18]
mov qword [rcx + 0x18], rax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 2
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 4
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 8
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x10
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x20
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x40
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x80
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x100
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x200
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x400
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x800
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x1000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x2000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x4000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x8000
lea rdx, [0x180057530]
xor dword [rcx + 0x20], eax
xor r9d, r9d
mov rcx, qword [rbx + 0x20]
xor r8d, r8d
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x10000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x20000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x40000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x80000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x100000
xor dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0x20]
mov eax, dword [rcx + 0x20]
xor eax, dword [rdi + 0x20]
and eax, 0x200000
xor dword [rcx + 0x20], eax
lea rcx, [0x180057570]
mov dword [rbx + 0x28], 0x100
mov qword [rbx + 0x30], rsi
mov qword [rbx + 0x38], 1
mov dword [rbx + 0x40], 0x100
mov qword [rbx + 0x48], rsi
mov qword [rbx + 0x50], 1
call sym.glib_2.0.dll_g_hash_table_new_full
mov qword [rbx + 0x58], rax
lea rax, [0x1800572b0]
mov qword [rbx + 0x88], rax
mov rax, rbx
mov qword [rbx + 0x68], rsi
mov qword [rbx + 0x70], rsi
mov qword [rbx + 0x78], rsi
mov dword [rbx + 0x80], esi
mov rsi, qword [rsp + 0x48]
mov dword [rbx + 0x60], 0xffffffff
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret