Function at 0x140010900
Capabilities:
Get socket status
Set socket configuration

Disassembly:
jmp 0x140010900
mov r11, rsp
push rbp
push r12
lea rbp, [r11 - 0x1c8]
sub rsp, 0x2b8
mov rax, qword [0x140125350]
xor rax, rsp
mov qword [rbp + 0x190], rax
xor eax, eax
mov qword [r11 + 8], rbx
xor r12d, r12d
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
lea rcx, [rbp - 0x78]
xor edx, edx
mov r8d, 0x200
mov qword [r11 - 0x28], r15
mov word [rsp + 0x58], r12w
mov qword [rsp + 0x5a], rax
mov dword [rsp + 0x62], eax
mov word [rsp + 0x66], ax
mov word [rsp + 0x68], r12w
mov qword [rsp + 0x6a], rax
mov dword [rsp + 0x72], eax
mov word [rsp + 0x76], ax
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x50], 1
mov qword [rsp + 0x48], r12
mov dword [rbp - 0x80], r12d
call fcn.14008ca20
lock inc qword [0x140127a28]
mov eax, r12d
lea r8, [0x1400dd5dd]
lea rbx, str.8888
xchg qword [0x140127a20], rax
cmp byte [0x140127a14], r12b
lea rax, [0x1400de060]
lea r9, str.0.0.0.0
lea rdx, str.starting__sweb_server__IP__s_port__s_..._n
lea ecx, [r12 + 3]
cmovne r8, rax
mov qword [rsp + 0x20], rbx
call fcn.1400013e3
call fcn.14000fac0
call fcn.140011ac0
mov ecx, dword [0x1401214d4]
sub ecx, 0xffffff80
call fcn.1400017df
cmp qword [0x140127a00], r12
je 0x140010fe6
cmp qword [0x140127a08], r12
je 0x140010fe6
lea rax, [0x1400de100]
lea r8, str.0.0.0.0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x58]
mov r9, rbx
mov dword [rsp + 0x40], reloc.WSOCK32.dll_recv
mov qword [rsp + 0x20], rax
call fcn.140011460
test eax, eax
jns 0x140010a79
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
lea rax, str.Invalid_server_address_port_number
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xac
jmp 0x14001100f
xor r8d, r8d
lea edx, [r8 + 1]
lea ecx, [rdx + 1]
call qword [sym.imp.WSOCK32.dll_socket]
mov qword [0x140120350], rax
cmp rax, 0xffffffffffffffff
jne 0x140010af4
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001104a
test dword [0x140124900], 0x40000
je 0x14001104a
call fcn.14008fb2c
mov ecx, dword [rax]
lea rax, str.open_socket_error__error__d
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xb2
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
call fcn.140001a41
jmp 0x14001102c
lea r9, [rsp + 0x50]
mov edx, 0xffff
mov r8d, 4
mov rcx, rax
mov dword [rsp + 0x20], 4
call qword [sym.imp.WSOCK32.dll_setsockopt]
test eax, eax
jns 0x140010b5a
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
call fcn.14008fb2c
mov ecx, dword [rax]
lea rax, str.setsockopt_failed__error__d
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xb8
jmp 0x140010ad2
mov r8d, dword [rsp + 0x40]
mov rcx, qword [0x140120350]
lea rdx, [rsp + 0x58]
call qword [sym.imp.WSOCK32.dll_bind]
test eax, eax
jns 0x140010bb6
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
call fcn.14008fb2c
mov ecx, dword [rax]
lea rax, str.bind_system_call_failed__error__d
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xbe
jmp 0x140010ad2
mov rcx, qword [0x140120350]
mov edx, 0xa
call qword [sym.imp.WSOCK32.dll_listen]
test eax, eax
jns 0x140010c0d
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
call fcn.14008fb2c
mov ecx, dword [rax]
lea rax, str.listen_system_call_failed__error__d
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xc4
jmp 0x140010ad2
mov rax, r12
lock xadd qword [0x140127a20], rax
test rax, rax
jne 0x14001102c
lea r13, str.Client__d_connected_n
lea r14, str.Out_of_memory_n
mov rcx, qword [0x140120350]
mov r9, qword [0x140127a00]
mov edx, 1
mov eax, ecx
lea r15, str.Client__d_disconnected_n
lea rsi, str.Connection_Limit_Exceeded___d_
mov dword [rbp - 0x80], edx
lea r11d, [rcx + 1]
mov ebx, edx
mov qword [rbp - 0x78], rax
mov r10, r12
cmp ebx, 0xa
jge 0x140010cc5
cmp qword [r9], 0xffffffffffffffff
je 0x140010cb8
mov eax, r12d
test edx, edx
je 0x140010c8f
mov r8d, dword [r9]
nop dword [rax + rax]
mov ecx, eax
cmp qword [rbp + rcx*8 - 0x78], r8
je 0x140010c8f
inc eax
cmp eax, edx
jb 0x140010c80
cmp eax, edx
jne 0x140010caa
cmp edx, 0x40
jae 0x140010caa
mov edx, dword [r9]
mov ecx, eax
mov qword [rbp + rcx*8 - 0x78], rdx
mov edx, dword [rbp - 0x80]
inc edx
mov dword [rbp - 0x80], edx
mov eax, dword [r9]
inc eax
cmp r11d, eax
cmovl r11d, eax
inc ebx
inc r10
add r9, 0x38
cmp r10, 0xa
jl 0x140010c63
test r11d, r11d
je 0x14001102c
lea rax, [rsp + 0x48]
lea rdx, [rbp - 0x80]
xor r9d, r9d
xor r8d, r8d
mov ecx, r11d
mov dword [rsp + 0x48], 2
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x4c], 0xc350
call qword [sym.imp.WSOCK32.dll_select]
cmp eax, 0xffffffff
je 0x14001102c
test eax, eax
je 0x140010fa5
mov rcx, qword [0x140120350]
lea rdx, [rbp - 0x80]
call sub.WSOCK32.dll___WSAFDIsSet
test eax, eax
je 0x140010e32
mov rcx, qword [0x140120350]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x68]
mov ebx, 1
mov dword [rsp + 0x40], reloc.WSOCK32.dll_recv
call qword [sym.imp.WSOCK32.dll_accept]
movsxd r15, eax
cmp r15, 0xffffffffffffffff
je 0x140010fbb
mov rax, qword [0x140127a00]
mov edi, r12d
mov rcx, r12
cmp ebx, 0xa
jge 0x140010dcc
cmp qword [rax], 0xffffffffffffffff
je 0x140010d80
inc rcx
inc ebx
inc edi
add rax, 0x38
cmp rcx, 0xa
jl 0x140010d62
jmp 0x140010dcc
mov rsi, qword [0x140127a00]
imul r14, rcx, 0x38
add rsi, r14
je 0x140010db3
lea rcx, [rsi + 0xc]
mov dword [rsi + 8], r12d
call fcn.1400113d0
mov rcx, qword [rsi]
cmp rcx, 0xffffffffffffffff
je 0x140010dac
call qword [sym.imp.WSOCK32.dll_closesocket]
mov qword [rsi], 0xffffffffffffffff
mov rax, qword [0x140127a00]
lea rsi, str.Connection_Limit_Exceeded___d_
mov qword [r14 + rax], r15
lea r14, str.Out_of_memory_n
cmp edi, 0xa
jge 0x140010dd6
cmp ebx, 0xa
jl 0x140010e2b
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x140010e1d
test dword [0x140124900], 0x40000
je 0x140010e1d
mov dword [rsp + 0x30], 0xa
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x10b
call fcn.140001a41
mov rcx, r15
call qword [sym.imp.WSOCK32.dll_closesocket]
jmp 0x140010fa5
lea r15, str.Client__d_disconnected_n
mov rsi, r12
nop word [rax + rax]
mov rax, qword [0x140127a00]
mov rdi, qword [rsi + rax]
cmp rdi, 0xffffffffffffffff
je 0x140010f94
cmp rdi, qword [0x140120350]
je 0x140010f94
lea rdx, [rbp - 0x80]
mov rcx, rdi
call sub.WSOCK32.dll___WSAFDIsSet
test eax, eax
je 0x140010f94
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x140010eba
test dword [0x140124900], 0x40000
je 0x140010eba
mov qword [rsp + 0x30], rdi
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0x11b
call fcn.140001a41
mov rbx, qword [0x140127a00]
add rbx, rsi
mov rcx, rbx
call fcn.140010580
cmp eax, 0xc1c
jne 0x140010f1d
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x140010f63
test dword [0x140124900], 0x40000
je 0x140010f63
mov qword [rsp + 0x30], rdi
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x122
call fcn.140001a41
jmp 0x140010f63
cmp eax, 0x708
jne 0x140010f8b
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x140010f63
test dword [0x140124900], 0x40000
je 0x140010f63
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 0x126
call fcn.140001a41
test rbx, rbx
je 0x140010f8b
lea rcx, [rbx + 0xc]
mov dword [rbx + 8], r12d
call fcn.1400113d0
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x140010f84
call qword [sym.imp.WSOCK32.dll_closesocket]
mov qword [rbx], 0xffffffffffffffff
lea rcx, [rbx + 0xc]
call fcn.1400113d0
add rsi, 0x38
cmp rsi, 0x230
jl 0x140010e40
mov rax, r12
lock xadd qword [0x140127a20], rax
test rax, rax
jne 0x14001102c
jmp 0x140010c30
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
lea rax, str.accept_2_
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xfb
jmp 0x14001100f
cmp dword [reloc.WSOCK32.dll_accept], 4
jl 0x14001102c
test dword [0x140124900], 0x40000
je 0x14001102c
lea rax, str.Out_of_memory
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa4
lea r9, str.........ESIF_WSSourcesesif_ws_server.c
lea r8, str.esif_ws_init
mov edx, 4
mov ecx, 0x40000
call fcn.140001a41
mov rcx, qword [0x140120350]
cmp rcx, 0xffffffffffffffff
je 0x14001104a
call qword [sym.imp.WSOCK32.dll_closesocket]
mov qword [0x140120350], 0xffffffffffffffff
cmp qword [0x140127a00], r12
mov r15, qword [rsp + 0x2a0]
mov r14, qword [rsp + 0x2a8]
mov r13, qword [rsp + 0x2b0]
mov rsi, qword [rsp + 0x2d8]
je 0x140011130
mov rdi, r12
nop word [rax + rax]
mov rbx, qword [0x140127a00]
add rbx, rdi
je 0x140011107
mov rcx, qword [rbx + 0xc]
test rcx, rcx
je 0x14001109a
call fcn.14008c8c8
mov rcx, qword [rbx + 0x14]
test rcx, rcx
je 0x1400110a8
call fcn.14008c8c8
mov rcx, qword [rbx + 0x24]
test rcx, rcx
je 0x1400110b6
call fcn.14008c8c8
mov rcx, qword [rbx + 0x1c]
test rcx, rcx
je 0x1400110c4
call fcn.14008c8c8
mov rcx, qword [rbx + 0x2c]
test rcx, rcx
je 0x1400110d2
call fcn.14008c8c8
mov qword [rbx + 0xc], r12
mov qword [rbx + 0x14], r12
mov qword [rbx + 0x24], r12
mov qword [rbx + 0x1c], r12
mov qword [rbx + 0x2c], r12
mov dword [rbx + 0x34], 0xf0
mov rcx, qword [rbx]
mov dword [rbx + 8], r12d
cmp rcx, 0xffffffffffffffff
je 0x140011107
call qword [sym.imp.WSOCK32.dll_closesocket]
mov qword [rbx], 0xffffffffffffffff
add rdi, 0x38
cmp rdi, 0x230
jl 0x140011080
mov rcx, qword [0x140127a00]
test rcx, rcx
je 0x140011129
call fcn.14008c8c8
mov qword [0x140127a00], r12
mov rcx, qword [0x140127a18]
mov rdi, qword [rsp + 0x2e0]
mov rbx, qword [rsp + 0x2d0]
test rcx, rcx
je 0x140011151
call fcn.14008c8c8
mov rcx, qword [0x140127a08]
test rcx, rcx
je 0x140011162
call fcn.14008c8c8
mov qword [0x140127a18], r12
mov qword [0x140127a08], r12
mov dword [0x140127a10], r12d
call qword [sym.imp.WSOCK32.dll_WSACleanup]
lock dec qword [0x140127a28]
xor eax, eax
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.14008d900
add rsp, 0x2b8
pop r12
pop rbp
ret