Function at 0x14003e320
Capabilities:
Get socket status

Disassembly:
push r15
mov eax, 0x8698
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.140067b90
sub rsp, rax
mov rsi, qword [sym.imp.libssp_0.dll___stack_chk_guard]
mov rax, qword [rsi]
mov qword [rsp + 0x8688], rax
xor eax, eax
mov rdi, rcx
call sym.g_main_context_default
mov rcx, rax
mov rsi, rax
call sym.g_main_context_acquire
mov rbx, qword [0x1400b4de0]
test rbx, rbx
je 0x14003e38b
xor r12d, r12d
nop
mov rcx, qword [rbx + 8]
call qword [rbx]
mov rbx, qword [rbx + 0x10]
or r12d, eax
test rbx, rbx
jne 0x14003e370
test r12d, r12d
jne 0x14003e750
mov r10, qword [0x1400b4df0]
mov ecx, 0xffffffff
mov dword [rsp + 0x50], 0
xor r8d, r8d
mov dword [rsp + 0x260], 0
mov dword [rsp + 0x470], 0
mov r11d, dword [r10 + 8]
test r11d, r11d
jne 0x14003e3ee
jmp 0x14003e4fe
test r11b, 4
jne 0x14003e44a
and r11d, 2
jne 0x14003e49e
add r8d, 1
cmp r8d, dword [r10 + 8]
jae 0x14003e4f5
movsxd rax, r8d
shl rax, 4
add rax, qword [r10]
movzx r11d, word [rax + 8]
mov r9, qword [rax]
test r11b, 1
je 0x14003e3d0
mov ebx, dword [rsp + 0x50]
movsxd r12, r9d
test ebx, ebx
je 0x14003e83f
lea rdx, [rsp + 0x58]
xor eax, eax
jmp 0x14003e42b
add eax, 1
add rdx, 8
cmp eax, ebx
je 0x14003e430
cmp qword [rdx], r12
jne 0x14003e420
cmp ebx, 0x3f
ja 0x14003e43d
cmp ebx, eax
je 0x14003e7f0
cmp ecx, r9d
cmovl ecx, r9d
test r11b, 4
je 0x14003e3d6
mov ebx, dword [rsp + 0x260]
movsxd r12, r9d
test ebx, ebx
je 0x14003e848
lea rdx, [rsp + 0x268]
xor eax, eax
jmp 0x14003e47b
add eax, 1
add rdx, 8
cmp eax, ebx
je 0x14003e480
cmp qword [rdx], r12
jne 0x14003e470
cmp ebx, eax
jne 0x14003e48d
cmp ebx, 0x3f
jbe 0x14003e828
cmp ecx, r9d
cmovl ecx, r9d
and r11d, 2
je 0x14003e3e0
mov r11d, dword [rsp + 0x470]
movsxd rbx, r9d
test r11d, r11d
je 0x14003e851
lea rdx, [rsp + 0x478]
xor eax, eax
jmp 0x14003e4cc
add eax, 1
add rdx, 8
cmp eax, r11d
je 0x14003e4d1
cmp qword [rdx], rbx
jne 0x14003e4c0
cmp r11d, 0x3f
ja 0x14003e4e0
cmp r11d, eax
je 0x14003e808
cmp ecx, r9d
cmovl ecx, r9d
add r8d, 1
cmp r8d, dword [r10 + 8]
jb 0x14003e3ee
cmp ecx, 0xffffffff
jne 0x14003e700
mov dword [rsp + 0x34], 0
lea rdx, [0x1400b4de8]
mov rcx, rsi
lea r12, [rsp + 0x680]
call sym.g_main_context_prepare
mov r9, r12
lea r8, [rsp + 0x4c]
mov rcx, rsi
mov dword [rsp + 0x20], 0x800
mov edx, dword [0x1400b4de8]
call sym.g_main_context_query
mov ebx, eax
mov eax, dword [global_w]
lea r9d, [rax + rbx]
cmp r9d, 0x800
ja 0x14003e6d0
lea rcx, [0x1400b47c8]
mov edx, ebx
test eax, eax
jle 0x14003e595
nop dword [rax]
mov r8, qword [rcx]
movsxd rax, edx
add edx, 1
add rcx, 8
shl rax, 4
mov qword [rsp + rax + 0x680], r8
mov r8d, 1
mov word [rsp + rax + 0x688], r8w
cmp r9d, edx
jne 0x14003e568
movsxd rax, dword [rsp + 0x4c]
mov r14, 0xffffffffffffffff
test eax, eax
js 0x14003e5ac
imul r14, rax, 0xf4240
call dbg.qemu_mutex_unlock_iothread
call sym.replay_mutex_unlock
mov edx, dword [global_w]
mov rcx, r12
add edx, ebx
cmp rdi, r14
cmovbe r14, rdi
mov r8, r14
call dbg.qemu_poll_ns
mov r14d, eax
call sym.replay_mutex_lock
mov edx, 0x214
lea rcx, str..._util_main_loop.c
call dbg.qemu_mutex_lock_iothread_impl
test r14d, r14d
jle 0x14003e669
mov r9d, dword [global_w]
test r9d, r9d
jle 0x14003e669
lea r15, [0x1400b46c4]
mov eax, ebx
add r9d, ebx
mov rcx, r15
nop dword [rax]
movsxd rdx, eax
add eax, 1
add rcx, 4
shl rdx, 4
movzx edx, word [rsp + rdx + 0x68a]
mov dword [rcx - 4], edx
cmp r9d, eax
jne 0x14003e610
lea r13, [0x1400b46c0]
xor edi, edi
lea rbp, [r13 + 0x518]
nop
mov eax, dword [r15 + rdi*4]
test eax, eax
je 0x14003e65f
lea rax, [0x1400b49d0]
mov rax, qword [rax + rdi*8]
test rax, rax
je 0x14003e65f
mov rcx, qword [rbp + rdi*8]
call rax
add rdi, 1
cmp dword [r13], edi
jg 0x14003e640
mov edx, dword [0x1400b4de8]
mov r9d, ebx
mov r8, r12
mov rcx, rsi
call sym.g_main_context_check
test eax, eax
jne 0x14003e7e0
mov rcx, rsi
xor r12d, r12d
call sym.g_main_context_release
or r14d, dword [rsp + 0x34]
setne r12b
mov rsi, qword [sym.imp.libssp_0.dll___stack_chk_guard]
mov rax, qword [rsp + 0x8688]
sub rax, qword [rsi]
jne 0x14003e85b
mov eax, r12d
add rsp, 0x8698
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, str.n_poll_fds__w__num___ARRAY_SIZE_poll_fds_
lea r9, global___func__.18
mov r8d, 0x1fd
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea rdx, str..._util_main_loop.c
call sym.g_assertion_message_expr
nop word [rax + rax]
lea rdx, [rsp + 0x50]
lea rax, [0x1400b46a8]
add ecx, 1
lea r12, [rsp + 0x470]
lea r14, [rsp + 0x260]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x20], rax
mov r9, r12
mov r8, r14
call qword [sym.imp.WS2_32.dll_select]
mov dword [rsp + 0x34], eax
test eax, eax
je 0x14003e4fe
jg 0x14003e75d
xor edi, edi
jmp 0x14003e506
mov rcx, rsi
call sym.g_main_context_release
jmp 0x14003e699
mov rbp, qword [0x1400b4df0]
xor r13d, r13d
mov r9d, dword [rbp + 8]
test r9d, r9d
je 0x14003e743
mov rbx, qword [rbp]
movsxd r8, r13d
mov rdx, qword [rsp + 0x38]
xor edi, edi
shl r8, 4
add rbx, r8
movsxd r15, dword [rbx]
mov rcx, r15
call sym.__WSAFDIsSet
mov rdx, r14
mov rcx, r15
test eax, eax
setne dil
call sym.__WSAFDIsSet
mov rcx, r15
mov edx, eax
mov eax, edi
or eax, 4
test edx, edx
mov rdx, r12
cmovne edi, eax
call sym.__WSAFDIsSet
mov edx, eax
mov eax, edi
or eax, 2
test edx, edx
cmovne edi, eax
and di, word [rbx + 8]
add r13d, 1
mov word [rbx + 0xa], di
cmp r13d, dword [rbp + 8]
jb 0x14003e770
xor edi, edi
jmp 0x14003e506
mov rcx, rsi
call sym.g_main_context_dispatch
jmp 0x14003e685
add ebx, 1
mov qword [rsp + rax*8 + 0x58], r12
mov dword [rsp + 0x50], ebx
jmp 0x14003e43d
add r11d, 1
mov qword [rsp + rax*8 + 0x478], rbx
mov dword [rsp + 0x470], r11d
jmp 0x14003e4e0
add ebx, 1
mov qword [rsp + rax*8 + 0x268], r12
mov dword [rsp + 0x260], ebx
jmp 0x14003e48d
xor eax, eax
mov ebx, 1
jmp 0x14003e7f3
xor eax, eax
mov ebx, 1
jmp 0x14003e82b
xor eax, eax
mov r11d, 1
jmp 0x14003e80c
call sym.__stack_chk_fail
nop
nop word cs:[rax + rax]
nop dword [rax]