Function at 0x5a7a30
Capabilities:
Set socket configuration

Disassembly:
push rbp
add rsp, 0xffffffffffffff80
mov rbp, rsp
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x90], rcx
nop
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7a97
lea rcx, [rbp + 0x5c]
lea rdx, [rbp + 0x6c]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x68]
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x5c]
mov qword [rsp + 0x28], rax
call fcn.00569860
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x68], 0
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x60]
add eax, 0x61
mov dword [rbp + 0x64], eax
mov eax, dword [rbp + 0x60]
add eax, dword [rbp + 0x58]
cmp eax, dword [rbp + 0x6c]
jle 0x5a7ac8
add dword [rbp + 0x6c], 0x30c
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7ae4
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x1b7
mov dword [rbp + 0x60], eax
add dword [rbp + 0x68], 1
cmp dword [rbp + 0x68], 3
jne 0x5a7aa7
nop
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x68]
mov ecx, dword [rbp + 0x64]
add ecx, dword [rbp + 0x60]
cmp eax, ecx
jge 0x5a7b0c
lea rcx, [rbp + 0x58]
lea rdx, [rbp + 0x6c]
call fcn.00584100
lea rcx, [rbp + 0x70]
call fcn.0040e5d0
mov eax, dword [rbp + 0x58]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x70]
mov rdx, qword [0x0060ec88]
call fcn.0040fe40
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7b4a
mov eax, dword [rbp + 0x5c]
sub eax, 0x1a2
mov dword [rbp + 0x60], eax
lea rcx, [rbp + 0x70]
mov rdx, qword [0x0060ecd8]
call fcn.0040fe40
mov eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0x48]
mov edx, 2
call fcn.0042c720
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x48]
call fcn.0040fe40
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x60]
mov ecx, dword [rbp + 0x60]
sub ecx, dword [rbp + 0x5c]
cmp eax, ecx
jle 0x5a7b98
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x1f3
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x70]
lea rdx, [0x005a82a8]
call fcn.0040fe40
lea rcx, [0x005a82b8]
lea rdx, [0x005a82dc]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x55
jge 0x5a7bd0
mov eax, dword [rbp + 0x64]
add eax, 0x2a
mov dword [rbp + 0x68], eax
lea rcx, [rbp + 0x40]
mov edx, 3
call fcn.0042c720
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x40]
call fcn.0040fe40
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x1f1
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x38]
mov edx, 2
call fcn.0042c720
lea rcx, [rbp + 0x70]
mov rdx, qword [rbp + 0x38]
call fcn.0040fe40
lea rcx, [rbp + 0x70]
lea rdx, [0x005a82fc]
call fcn.0040fe40
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x60]
mov ecx, dword [rbp + 0x60]
sub ecx, dword [rbp + 0x5c]
cmp eax, ecx
jle 0x5a7c40
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x1f3
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x70]
mov rdx, qword [0x0060ece0]
call fcn.0040fe40
mov eax, dword [rbp + 0x6c]
imul eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
lea rcx, [rbp + 0x70]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
lea rcx, [rbp + 0x70]
mov rdx, qword [0x0060ed10]
call fcn.0040fe40
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x205
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7cbd
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0x58]
lea r8, [rbp + 0x6c]
lea r9, [rbp + 0x6c]
lea rax, [rbp + 0x68]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rax
call fcn.00567db0
mov eax, dword [rbp + 0x5c]
sub eax, 0x199
mov dword [rbp + 0x60], eax
call fcn.0059e4a0
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 1
jge 0x5a7d3f
add dword [rbp + 0x68], 1
add dword [rbp + 0x6c], 0x32c
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x68]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x60]
cmp eax, ecx
jge 0x5a7d0b
mov eax, dword [rbp + 0x5c]
sub eax, 0x177
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x5c]
add eax, dword [rbp + 0x58]
cmp eax, dword [rbp + 0x6c]
jle 0x5a7d1d
add dword [rbp + 0x6c], 0x341
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x60]
cmp eax, ecx
jge 0x5a7d39
mov eax, dword [rbp + 0x5c]
sub eax, 0x18c
mov dword [rbp + 0x60], eax
cmp dword [rbp + 0x68], 1
jl 0x5a7ce4
nop
mov eax, dword [rbp + 0x6c]
cmp eax, dword [rbp + 0x68]
jle 0x5a7d6f
lea rcx, [rbp + 0x64]
lea rdx, [rbp + 0x60]
lea r8, [rbp + 0x5c]
lea r9, [rbp + 0x58]
lea rax, [rbp + 0x6c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x68]
mov qword [rsp + 0x28], rax
call fcn.0054f640
mov eax, dword [rbp + 0x6c]
cmp eax, dword [rbp + 0x68]
jle 0x5a7d8c
lea rcx, [rbp + 0x68]
lea rdx, [rbp + 0x64]
lea r8, [rbp + 0x5c]
lea r9, [rbp + 0x58]
call fcn.00540aa0
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x68], 0
mov eax, dword [rbp + 0x64]
add eax, 0x387
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x5c]
add eax, dword [rbp + 0x58]
cmp dword [rbp + 0x64], eax
jne 0x5a7dbc
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x58], eax
add dword [rbp + 0x6c], 0x338
mov eax, 0x9d
sub eax, dword [rbp + 0x60]
mov dword [rbp + 0x64], eax
add dword [rbp + 0x68], 1
cmp dword [rbp + 0x68], 3
jne 0x5a7d9c
nop
lea rcx, [0x005a830c]
lea rdx, [0x005a832c]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x26
je 0x5a7e02
mov eax, dword [rbp + 0x6c]
sub eax, dword [rbp + 0x68]
mov dword [rbp + 0x58], eax
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x1dc
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x68]
call fcn.00536080
mov eax, dword [rbp + 0x6c]
cmp eax, dword [rbp + 0x68]
jle 0x5a7e46
lea rcx, [rbp + 0x68]
lea rdx, [rbp + 0x60]
lea r8, [rbp + 0x5c]
lea r9, [rbp + 0x58]
lea rax, [rbp + 0x6c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x68]
mov qword [rsp + 0x28], rax
call fcn.005438f0
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0x64]
lea r9, [rbp + 0x60]
lea rax, [rbp + 0x58]
mov qword [rsp + 0x20], rax
call fcn.005a7480
mov rcx, qword [rbp + 0x90]
xor edx, edx
xor r8, r8
call sub.ws2_32.dll_WSAEventSelect
mov eax, dword [rbp + 0x5c]
sub eax, 0x1a2
mov dword [rbp + 0x60], eax
mov dword [rbp + 0x58], 0
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x68]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x60]
cmp eax, ecx
jge 0x5a7ead
lea rcx, [rbp + 0x64]
lea rdx, [rbp + 0x60]
lea r8, [rbp + 0x58]
lea r9, [rbp + 0x6c]
call fcn.00560180
lea rcx, [0x005a8348]
lea rdx, [0x005a8368]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x1c
je 0x5a7ed5
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x6c]
cmp eax, dword [rbp + 0x68]
jle 0x5a7f04
lea rcx, [rbp + 0x64]
lea rdx, [rbp + 0x60]
lea r8, [rbp + 0x5c]
lea r9, [rbp + 0x58]
lea rax, [rbp + 0x6c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x68]
mov qword [rsp + 0x28], rax
call fcn.00548890
call fcn.005a7710
mov dword [rbp + 0x58], 0
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7f29
lea rcx, [rbp + 0x64]
call fcn.0055ff80
mov dword [rbp + 0x7c], 0
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7f51
lea rcx, [rbp + 0x5c]
lea rdx, [rbp + 0x58]
lea r8, [rbp + 0x6c]
call fcn.00568530
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
call fcn.0059a0d0
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0x64]
call fcn.00536250
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 2
jge 0x5a7fd2
add dword [rbp + 0x68], 1
add dword [rbp + 0x6c], 0x352
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
add ecx, dword [rbp + 0x5c]
cmp eax, ecx
jge 0x5a7fa3
mov eax, dword [rbp + 0x5c]
sub eax, 0x19c
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x5c]
add eax, dword [rbp + 0x6c]
cmp eax, dword [rbp + 0x6c]
jle 0x5a7fba
mov eax, dword [rbp + 0x64]
add eax, 0x367
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
cmp dword [rbp + 0x60], eax
jne 0x5a7fcc
mov dword [rbp + 0x5c], 0
cmp dword [rbp + 0x68], 2
jl 0x5a7f7c
nop
mov eax, dword [rbp + 0x58]
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x58]
sub eax, 0x1c5
mov dword [rbp + 0x5c], eax
lea rcx, [rbp + 0x6c]
lea rdx, [rbp + 0x68]
lea r8, [rbp + 0x64]
call fcn.005a7370
mov dword [rbp + 0x68], 0
add dword [rbp + 0x6c], 0x333
mov eax, 0x99
sub eax, dword [rbp + 0x60]
mov dword [rbp + 0x64], eax
mov eax, dword [rbp + 0x5c]
add eax, dword [rbp + 0x58]
cmp dword [rbp + 0x64], eax
jne 0x5a8027
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x223
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
add dword [rbp + 0x68], 1
cmp dword [rbp + 0x68], 3
jne 0x5a7ffd
nop
mov eax, dword [rbp + 0x58]
sub eax, 0x1cf
mov dword [rbp + 0x5c], eax
lea rcx, [0x005a838c]
lea rdx, [0x005a8368]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x1b
je 0x5a806c
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x58], eax
mov eax, dword [rbp + 0x68]
add eax, dword [rbp + 0x68]
mov ecx, dword [rbp + 0x64]
add ecx, dword [rbp + 0x60]
cmp eax, ecx
jge 0x5a8091
lea rcx, [rbp + 0x64]
lea rdx, [rbp + 0x5c]
lea r8, [rbp + 0x58]
lea r9, [rbp + 0x6c]
call fcn.00560180
mov eax, dword [rbp + 0x68]
sub dword [rbp + 0x6c], eax
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 2
jge 0x5a80da
add dword [rbp + 0x68], 1
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x60]
imul eax, eax, 0x3e
mov dword [rbp + 0x64], eax
mov eax, dword [rbp + 0x5c]
add eax, dword [rbp + 0x58]
cmp dword [rbp + 0x64], eax
jne 0x5a80ce
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x229
mov dword [rbp + 0x5c], eax
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x58], eax
cmp dword [rbp + 0x68], 2
jl 0x5a80a4
nop
mov rcx, qword [rbp + 0x90]
mov edx, 0x8004667e
lea r8, [rbp + 0x7c]
call sub.ws2_32.dll_ioctlsocket
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 1
jge 0x5a813e
add dword [rbp + 0x68], 1
add dword [rbp + 0x6c], 0x34d
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
sub ecx, dword [rbp + 0x5c]
cmp eax, ecx
jle 0x5a8125
mov eax, dword [rbp + 0x58]
imul eax, eax, 0x219
mov dword [rbp + 0x5c], eax
mov dword [rbp + 0x58], 0
mov eax, dword [rbp + 0x64]
add eax, 0x383
mov dword [rbp + 0x6c], eax
cmp dword [rbp + 0x68], 1
jl 0x5a80fe
nop
mov eax, dword [rbp + 0x6c]
add eax, dword [rbp + 0x6c]
mov dword [rbp + 0x5c], eax
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 2
jge 0x5a8186
add dword [rbp + 0x68], 1
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x60]
imul eax, eax, 0x59
mov dword [rbp + 0x64], eax
mov eax, dword [rbp + 0x5c]
sub eax, dword [rbp + 0x58]
cmp dword [rbp + 0x64], eax
jne 0x5a817a
mov dword [rbp + 0x58], 0
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
cmp dword [rbp + 0x68], 2
jl 0x5a8155
nop
mov eax, dword [rbp + 0x58]
sub eax, dword [rbp + 0x6c]
mov dword [rbp + 0x5c], eax
mov dword [rbp + 0x68], 0
cmp dword [rbp + 0x68], 2
jge 0x5a81e7
add dword [rbp + 0x68], 1
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x6c], eax
mov eax, 7
sub eax, dword [rbp + 0x60]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
sub ecx, dword [rbp + 0x5c]
cmp eax, ecx
jle 0x5a81cf
mov eax, dword [rbp + 0x5c]
sub eax, 0x1b1
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x60]
add eax, dword [rbp + 0x58]
cmp eax, dword [rbp + 0x6c]
jle 0x5a81e1
mov dword [rbp + 0x58], 0
cmp dword [rbp + 0x68], 2
jl 0x5a819d
nop
mov dword [rbp + 0x64], 0
mov eax, dword [rbp + 0x6c]
imul eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
mov eax, 0x3c9
sub eax, dword [rbp + 0x68]
mov dword [rbp + 0x6c], eax
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x64]
mov ecx, dword [rbp + 0x60]
sub ecx, dword [rbp + 0x5c]
cmp eax, ecx
jle 0x5a8221
mov eax, dword [rbp + 0x5c]
sub eax, 0x193
mov dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x60]
add eax, dword [rbp + 0x58]
cmp eax, dword [rbp + 0x6c]
jle 0x5a8233
mov dword [rbp + 0x58], 0
mov eax, dword [rbp + 0x68]
add eax, 0x3a2
mov dword [rbp + 0x6c], eax
add dword [rbp + 0x64], 1
cmp dword [rbp + 0x64], 3
jne 0x5a81ef
nop
nop
lea rcx, [rbp + 0x38]
mov edx, 3
call fcn.0040e6b0
lea rcx, [rbp + 0x70]
call fcn.0040e5d0
lea rsp, [rbp + 0x80]
pop rbp
ret