Function at 0x1400862e0
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push rsi
push r12
sub rsp, 0xb0
mov rax, qword [0x1402de400]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rsi, r9
mov r12, r8
test r8, r8
jne 0x140086312
lea eax, [r8 + 0x16]
jmp 0x14008b9f1
mov qword [rsp + 0xa8], rdi
mov rdi, qword [rcx + 0x10]
mov qword [rsp + 0x50], rdi
test rdi, rdi
jne 0x140086330
lea eax, [rdi + 0x16]
jmp 0x14008b9e9
mov qword [rsp + 0xd8], rbx
xor ebx, ebx
cmp edx, 0x900
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x98], r14
mov ebp, ebx
mov dword [rsp + 0x60], ebx
mov qword [rsp + 0x90], r15
jg 0x14008a67e
cmp edx, 0x900
je 0x14008a4ff
lea eax, [rdx - 1]
cmp eax, 0x32
ja case.0x140086390.42
lea r15, [0x140000000]
cdqe
mov eax, dword [r15 + rax*4 + 0x8ba10]
add rax, r15
jmp rax
cmp r9, 4
jae 0x1400863a2
mov ebp, socket
jmp 0x14008b9c7
add edx, 0xfffffffc
cmp edx, 0x17
ja case.0x1400863c5.11
movsxd rax, edx
movzx eax, byte [r15 + rax + 0x8bafc]
mov ecx, dword [r15 + rax*4 + 0x8badc]
add rcx, r15
jmp rcx
mov ebx, 0x100000
jmp case.0x1400863c5.11
test byte [rdi + 0x158], 4
je 0x140087c9d
cmp dword [0x1402e69d0], ebx
jne 0x1400863f5
cmp dword [r8], ebx
je 0x1400863f5
mov eax, 1
jmp 0x14008b9c9
mov ebx, 0x40
jmp case.0x1400863c5.11
mov ebx, 0x400000
jmp case.0x1400863c5.11
mov ebx, 2
jmp case.0x1400863c5.11
bt dword [rdi + 0x158], 0x1a
jae 0x140087c9d
mov ebx, 0x800000
jmp case.0x1400863c5.11
mov ebx, 0x100
jmp case.0x1400863c5.11
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140087c9d
bt eax, 0x16
jb 0x140087c9d
mov eax, dword [r8]
mov ecx, 0xffffffff
mov ebx, 0x200
imul rax, rax, 0x3e8
cmp rax, rcx
cmova eax, ecx
mov dword [rdi + 0x2a4], eax
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12], ebp
je 0x14008648d
movsxd rax, ebx
lea rcx, [rdi + 0x340]
or qword [rdi + 0x150], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
not ebx
lea rcx, [rdi + 0x340]
movsxd rax, ebx
and qword [rdi + 0x150], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x1400864bb
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 0x10
jne 0x1400864cf
mov ebp, socket
jmp 0x14008b9c7
test al, 1
je 0x1400864dd
mov ebp, socket
jmp 0x14008b9c7
or qword [rdi + 0x150], 0x2000000
jmp 0x14008b9c7
cmp r9, 4
jae 0x1400864fd
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8]
cmp eax, dword [rcx + 0x160]
jbe 0x140086512
mov ebp, socket
jmp 0x14008b9c7
mov dword [rdi + 0x2e4], eax
jmp 0x14008b9c7
cmp r9, 4
jae 0x14008652d
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8]
cmp eax, 2
jne 0x140086542
or qword [rdi + 0x150], 0x18
jmp 0x14008b9c7
cmp eax, 1
jne 0x140086562
mov rax, qword [rdi + 0x150]
and rax, 0xffffffffffffffef
or rax, 8
mov qword [rdi + 0x150], rax
jmp 0x14008b9c7
test eax, eax
jne 0x140086573
and qword [rdi + 0x150], 0xffffffffffffffe7
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008658d
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400865c5
bt eax, 0x16
jb 0x1400865c5
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008661a
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x1400865fd
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400865eb
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008661a
mov eax, dword [r12 + 4]
lea rcx, [rbx + 0x7e8]
mov dword [rbx + 0x568], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008663b
bt eax, 0x16
jb 0x14008663b
test al, 1
je 0x140086661
mov eax, dword [r12]
test eax, eax
je 0x14008663b
cmp eax, 2
jne 0x140086661
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2e8], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140086680
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x1400866cf
nop dword [rax]
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x7e8]
mov dword [rdi + 0x568], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x1400866a0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0xc
jae 0x1400866ed
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086725
bt eax, 0x16
jb 0x140086725
mov eax, dword [r8]
cmp eax, 2
jbe 0x140086758
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140086758
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008674b
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [r12 + 4]
test eax, eax
je 0x140086788
cmp eax, 0x1f4
jbe 0x140086788
mov ebp, socket
test rbx, rbx
je 0x14008b9c7
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test rbx, rbx
je 0x1400867b8
test eax, eax
je 0x140086797
mov dword [rbx + 0x5fc], eax
mov eax, dword [r12 + 8]
test eax, eax
je 0x1400867a6
mov dword [rbx + 0x604], eax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400867d9
bt eax, 0x16
jb 0x1400867d9
test al, 1
je 0x140086813
mov eax, dword [r12]
test eax, eax
je 0x1400867d9
cmp eax, 2
jne 0x140086813
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
test r11d, r11d
je 0x1400867f7
mov dword [rdi + 0x1ac], r11d
mov eax, dword [r12 + 8]
test eax, eax
je 0x140086806
mov dword [rdi + 0x1d4], eax
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140086832
cmp eax, 2
jne 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140086893
nop dword [rax + rax]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
test r11d, r11d
je 0x14008686e
mov dword [rbx + 0x5fc], r11d
mov eax, dword [r12 + 8]
test eax, eax
je 0x14008687d
mov dword [rbx + 0x604], eax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x140086850
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 1
jae 0x1400868b5
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rdi + 0x1f0]
movzx ecx, byte [r12]
call fcn.1400bc640
test eax, eax
je 0x1400868ee
lea rcx, [rdi + 0x340]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
mov byte [rdi + 0x2fa], 1
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140086917
mov ebp, socket
jmp 0x14008b9c7
mov ax, word [r8 + 6]
test ax, ax
jne 0x140086927
lea r14, [r9 - 8]
jmp 0x140086938
movzx r14d, ax
lea rax, [r14 + 8]
cmp rax, r9
ja 0x140086c11
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086974
bt eax, 0x16
jb 0x140086974
mov eax, dword [r8]
cmp eax, 2
jbe 0x140086a4c
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x1400869b0
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008699a
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140086a4c
movzx edx, word [r12 + 4]
mov rcx, rsi
call fcn.1400bd6b0
test r14, r14
je 0x1400869ed
lea rcx, [r12 + 8]
mov edx, r14d
call fcn.1400bc680
mov rbx, rax
test rax, rax
jne 0x1400869ed
lea rcx, [rsi + 0x7e8]
lea ebp, [rax + 0xc]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
call fcn.1400bc950
mov rdx, rax
test rax, rax
jne 0x140086a1e
test rbx, rbx
je 0x140086a07
mov rcx, rbx
call fcn.1401e36c8
lea rcx, [rsi + 0x7e8]
mov ebp, reloc.WS2_32.dll_inet_ntoa
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov qword [rax + 0x10], rbx
movzx eax, word [r12 + 4]
lea rcx, [rsi + 0x690]
mov word [rdx + 0x1c], ax
call fcn.1400bc9d0
lea rcx, [rsi + 0x7e8]
mov ebp, eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086a75
bt eax, 0x16
jb 0x140086a75
test al, 1
je 0x140086b19
mov eax, dword [r12]
test eax, eax
je 0x140086a75
cmp eax, 2
jne 0x140086b19
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd720
test r14, r14
je 0x140086abf
lea rcx, [r12 + 8]
mov edx, r14d
call fcn.1400bc680
mov rbx, rax
test rax, rax
jne 0x140086abf
lea rcx, [rdi + 0x340]
lea ebp, [rax + 0xc]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
call fcn.1400bc950
mov rdx, rax
test rax, rax
jne 0x140086af0
test rbx, rbx
je 0x140086ad9
mov rcx, rbx
call fcn.1401e36c8
lea rcx, [rdi + 0x340]
mov ebp, reloc.WS2_32.dll_inet_ntoa
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov qword [rax + 0x10], rbx
movzx eax, word [r12 + 4]
lea rcx, [rdi + 0x1e8]
mov word [rdx + 0x1c], ax
call fcn.1400bc9d0
lea rcx, [rdi + 0x340]
mov ebp, eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140086b38
cmp eax, 2
jne 0x14008b9c7
lea r15, [rdi + 0x340]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x140086c03
nop dword [rax + rax]
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd6b0
test r14, r14
je 0x140086ba4
lea rcx, [r12 + 8]
mov edx, r14d
call fcn.1400bc680
mov rbx, rax
test rax, rax
jne 0x140086ba4
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140086bf6
call fcn.1400bc950
mov rdx, rax
test rax, rax
jne 0x140086bcd
test rbx, rbx
je 0x140086bbe
mov rcx, rbx
call fcn.1401e36c8
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140086bf6
mov qword [rax + 0x10], rbx
movzx eax, word [r12 + 4]
lea rcx, [rdi + 0x690]
mov word [rdx + 0x1c], ax
call fcn.1400bc9d0
lea rcx, [rdi + 0x7e8]
mov ebp, eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x140086b60
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
cmp r9, 4
jae 0x140086c2b
mov ebp, socket
jmp 0x14008b9c7
mov ecx, dword [r8]
lea rax, [rcx + rcx + 4]
cmp r9, rax
jb 0x140086d15
mov edx, 0xffff
cmp ecx, edx
ja 0x140086d15
movzx ecx, word [r8]
call fcn.1400bcd20
mov rsi, rax
test rax, rax
jne 0x140086c62
lea ebp, [rax + 0xc]
jmp 0x14008b9c7
mov r10d, ebx
cmp dword [r12], ebx
jbe 0x140086c8d
lea r11, [r12 + 4]
movzx edx, word [r11]
mov rcx, rsi
call fcn.1400bcd50
test eax, eax
jne 0x140086cc6
inc r10d
add r11, 2
cmp r10d, dword [r12]
jb 0x140086c70
movzx ecx, word [rsi + 2]
test ecx, ecx
je 0x140086cb0
lea rax, [rsi + 4]
nop dword [rax]
cmp word [rax], 1
je 0x140086cb0
inc ebx
add rax, 2
cmp ebx, ecx
jb 0x140086ca0
cmp ebx, ecx
jne 0x140086cd5
mov rcx, rsi
call fcn.1401e36c8
mov ebp, socket
jmp 0x14008b9c7
mov ebp, socket
call fcn.1401e36c8
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rdi + 0x1f8], rbp
je 0x140086cfc
mov rcx, qword [rdi + 0x1f8]
test rcx, rcx
je 0x140086cfc
call fcn.1401e36c8
lea rcx, [rdi + 0x340]
mov qword [rdi + 0x1f8], rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
cmp r9, 8
jae 0x140086d2f
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086d6b
bt eax, 0x16
jb 0x140086d6b
mov eax, dword [r8]
cmp eax, 2
jbe 0x140086dd1
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140086da3
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140086d91
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140086dd1
movzx edx, word [r12 + 4]
mov rcx, rbx
call fcn.1400bd930
mov ecx, ebp
mov ebp, socket
test eax, eax
cmovne ecx, ebp
mov ebp, ecx
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086df2
bt eax, 0x16
jb 0x140086df2
test al, 1
je 0x140086e36
mov eax, dword [r12]
test eax, eax
je 0x140086df2
cmp eax, 2
jne 0x140086e36
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rdi + 0x1e8]
movzx r11d, word [r12 + 4]
test rax, rax
je 0x140086e24
cmp word [rax + 0x1c], r11w
je 0x140086eb0
mov rax, qword [rax]
test rax, rax
jne 0x140086e11
mov ebp, socket
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140086e55
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x140086ea2
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd930
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x140086e71
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov word [rdi + 0x200], r11w
jmp 0x140086e29
cmp r9, 8
jae 0x140086ecd
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086f09
bt eax, 0x16
jb 0x140086f09
mov eax, dword [r8]
cmp eax, 2
jbe 0x140086f6f
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140086f41
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140086f2f
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140086f6f
movzx edx, word [r12 + 4]
mov rcx, rbx
call fcn.1400bd7e0
mov ecx, ebp
mov ebp, socket
test eax, eax
cmovne ecx, ebp
mov ebp, ecx
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140086f90
bt eax, 0x16
jb 0x140086f90
test al, 1
je 0x140086fc6
mov eax, dword [r12]
test eax, eax
je 0x140086f90
cmp eax, 2
jne 0x140086fc6
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd870
mov ecx, ebp
mov ebp, socket
test eax, eax
cmovne ecx, ebp
mov ebp, ecx
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140086fe5
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x140087032
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd7e0
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x140087001
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140087050
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008708c
bt eax, 0x16
jb 0x14008708c
mov eax, dword [r8]
cmp eax, 2
jbe 0x1400870f2
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x1400870c4
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400870b2
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1400870f2
movzx edx, word [r12 + 4]
mov rcx, rbx
call fcn.1400bd970
mov ecx, ebp
mov ebp, socket
test eax, eax
cmovne ecx, ebp
mov ebp, ecx
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140087113
bt eax, 0x16
jb 0x140087113
test al, 1
je 0x140087149
mov eax, dword [r12]
test eax, eax
je 0x140087113
cmp eax, 2
jne 0x140087149
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bda80
mov ecx, ebp
mov ebp, socket
test eax, eax
cmovne ecx, ebp
mov ebp, ecx
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x140087168
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x1400871c1
nop word [rax + rax]
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx edx, word [r12 + 4]
mov rcx, rdi
call fcn.1400bd970
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x140087190
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x1400871df
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140087217
bt eax, 0x16
jb 0x140087217
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008726c
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008724f
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008723d
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008726c
mov eax, dword [r12 + 4]
lea rcx, [rbx + 0x7e8]
mov dword [rbx + 0x704], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008728d
bt eax, 0x16
jb 0x14008728d
test al, 1
je 0x1400872b3
mov eax, dword [r12]
test eax, eax
je 0x14008728d
cmp eax, 2
jne 0x1400872b3
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2b8], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x1400872d2
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x14008731f
nop
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x7e8]
mov dword [rdi + 0x704], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x1400872f0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008733d
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140087375
bt eax, 0x16
jb 0x140087375
mov eax, dword [r8]
cmp eax, 2
jbe 0x1400873ca
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x1400873ad
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008739b
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1400873ca
mov eax, dword [r12 + 4]
lea rcx, [rbx + 0x7e8]
mov dword [rbx + 0x590], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400873ee
bt eax, 0x16
jb 0x1400873ee
test al, 1
je 0x1400873e4
cmp dword [r12], ebp
je 0x1400873ee
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2e0], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0xb
jae 0x140087429
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp byte [r12], bl
je 0x140087449
or qword [rdi + 0x150], 0x400
jmp 0x140087454
and qword [rdi + 0x150], 0xfffffffffffffbff
mov ebx, 0x800
cmp byte [r12 + 1], bpl
je 0x140087469
or qword [rdi + 0x150], rbx
jmp 0x140087474
and qword [rdi + 0x150], 0xfffffffffffff7ff
cmp byte [r12 + 2], bpl
je 0x140087488
or qword [rdi + 0x150], 0x1000
jmp 0x140087493
and qword [rdi + 0x150], 0xffffffffffffefff
cmp byte [r12 + 3], bpl
je 0x1400874a7
or qword [rdi + 0x150], 0x4000
jmp 0x1400874b2
and qword [rdi + 0x150], 0xffffffffffffbfff
cmp byte [r12 + 4], bpl
je 0x1400874c6
or qword [rdi + 0x150], 0x2000
jmp 0x1400874d1
and qword [rdi + 0x150], 0xffffffffffffdfff
cmp byte [r12 + 5], bpl
je 0x1400874e5
or qword [rdi + 0x150], 0x8000
jmp 0x1400874f0
and qword [rdi + 0x150], 0xffffffffffff7fff
cmp byte [r12 + 6], bpl
je 0x140087504
or qword [rdi + 0x150], 0x20000
jmp 0x14008750f
and qword [rdi + 0x150], 0xfffffffffffdffff
cmp byte [r12 + 7], bpl
je 0x140087523
or qword [rdi + 0x150], 0x10000
jmp 0x14008752e
and qword [rdi + 0x150], 0xfffffffffffeffff
cmp byte [r12 + 8], bpl
je 0x140087542
or qword [rdi + 0x150], 0x40000
jmp 0x14008754d
and qword [rdi + 0x150], 0xfffffffffffbffff
cmp byte [r12 + 9], bpl
je 0x140087561
or qword [rdi + 0x150], 0x4000000
jmp 0x14008756c
and qword [rdi + 0x150], 0xfffffffffbffffff
cmp byte [r12 + 0xa], bpl
je 0x140087580
or qword [rdi + 0x150], 0x80000
jmp 0x14008758b
and qword [rdi + 0x150], 0xfffffffffff7ffff
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008785d
nop dword [rax + rax]
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp byte [r12 + 1], bpl
je 0x1400875cb
test rsi, rsi
je 0x1400875c2
or qword [rsi + 0x750], rbx
jmp 0x1400875e8
or qword [rdi + 0x150], rbx
jmp 0x1400875e8
test rsi, rsi
je 0x1400875dd
and qword [rsi + 0x750], 0xfffffffffffff7ff
jmp 0x1400875e8
and qword [rdi + 0x150], 0xfffffffffffff7ff
cmp byte [r12 + 2], bpl
je 0x14008760e
test rsi, rsi
je 0x140087601
or qword [rsi + 0x750], 0x1000
jmp 0x14008762b
or qword [rdi + 0x150], 0x1000
jmp 0x14008762b
test rsi, rsi
je 0x140087620
and qword [rsi + 0x750], 0xffffffffffffefff
jmp 0x14008762b
and qword [rdi + 0x150], 0xffffffffffffefff
cmp byte [r12 + 3], bpl
je 0x140087651
test rsi, rsi
je 0x140087644
or qword [rsi + 0x750], 0x4000
jmp 0x14008766e
or qword [rdi + 0x150], 0x4000
jmp 0x14008766e
test rsi, rsi
je 0x140087663
and qword [rsi + 0x750], 0xffffffffffffbfff
jmp 0x14008766e
and qword [rdi + 0x150], 0xffffffffffffbfff
cmp byte [r12 + 4], bpl
je 0x140087694
test rsi, rsi
je 0x140087687
or qword [rsi + 0x750], 0x2000
jmp 0x1400876b1
or qword [rdi + 0x150], 0x2000
jmp 0x1400876b1
test rsi, rsi
je 0x1400876a6
and qword [rsi + 0x750], 0xffffffffffffdfff
jmp 0x1400876b1
and qword [rdi + 0x150], 0xffffffffffffdfff
cmp byte [r12 + 5], bpl
je 0x1400876d7
test rsi, rsi
je 0x1400876ca
or qword [rsi + 0x750], 0x8000
jmp 0x1400876f4
or qword [rdi + 0x150], 0x8000
jmp 0x1400876f4
test rsi, rsi
je 0x1400876e9
and qword [rsi + 0x750], 0xffffffffffff7fff
jmp 0x1400876f4
and qword [rdi + 0x150], 0xffffffffffff7fff
cmp byte [r12 + 6], bpl
je 0x14008771a
test rsi, rsi
je 0x14008770d
or qword [rsi + 0x750], 0x20000
jmp 0x140087737
or qword [rdi + 0x150], 0x20000
jmp 0x140087737
test rsi, rsi
je 0x14008772c
and qword [rsi + 0x750], 0xfffffffffffdffff
jmp 0x140087737
and qword [rdi + 0x150], 0xfffffffffffdffff
cmp byte [r12 + 7], bpl
je 0x14008775d
test rsi, rsi
je 0x140087750
or qword [rsi + 0x750], 0x10000
jmp 0x14008777a
or qword [rdi + 0x150], 0x10000
jmp 0x14008777a
test rsi, rsi
je 0x14008776f
and qword [rsi + 0x750], 0xfffffffffffeffff
jmp 0x14008777a
and qword [rdi + 0x150], 0xfffffffffffeffff
cmp byte [r12 + 8], bpl
je 0x1400877a0
test rsi, rsi
je 0x140087793
or qword [rsi + 0x750], 0x40000
jmp 0x1400877bd
or qword [rdi + 0x150], 0x40000
jmp 0x1400877bd
test rsi, rsi
je 0x1400877b2
and qword [rsi + 0x750], 0xfffffffffffbffff
jmp 0x1400877bd
and qword [rdi + 0x150], 0xfffffffffffbffff
cmp byte [r12 + 9], bpl
je 0x1400877e3
test rsi, rsi
je 0x1400877d6
or qword [rsi + 0x750], 0x4000000
jmp 0x140087800
or qword [rdi + 0x150], 0x4000000
jmp 0x140087800
test rsi, rsi
je 0x1400877f5
and qword [rsi + 0x750], 0xfffffffffbffffff
jmp 0x140087800
and qword [rdi + 0x150], 0xfffffffffbffffff
cmp byte [r12 + 0xa], bpl
je 0x140087826
test rsi, rsi
je 0x140087819
or qword [rsi + 0x750], 0x80000
jmp 0x140087843
or qword [rdi + 0x150], 0x80000
jmp 0x140087843
test rsi, rsi
je 0x140087838
and qword [rsi + 0x750], 0xfffffffffff7ffff
jmp 0x140087843
and qword [rdi + 0x150], 0xfffffffffff7ffff
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsi + 0x20]
test rsi, rsi
jne 0x1400875a0
cmp byte [r12 + 9], bpl
je 0x140087926
mov eax, dword [rdi + 0x158]
test eax, 0x400002
je 0x140087926
test al, 8
jne 0x140087926
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140087926
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [rbx + 0x360], rbp
jne 0x140087919
cmp qword [rbx + 0x350], rbp
jne 0x140087919
cmp dword [rbx + 0x5ac], ebp
jne 0x140087919
bt dword [rbx + 0x58], 8
mov r12, qword [rbx + 8]
jb 0x140087919
lea rcx, [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 0x158]
bt r11d, 0x1c
jb 0x14008790b
bt r11d, 0x1d
jb 0x14008790b
bt r11d, 0x1e
jb 0x14008790b
mov edx, 1
mov rcx, rbx
call fcn.140091c80
lea rcx, [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x140087919
lea rcx, [r12 + 0x390]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x140087948
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2ac], r11d
mov byte [rdi + 0x2b0], 1
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x80
jae 0x14008798c
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400879c7
bt eax, 0x16
jb 0x1400879c7
mov edx, dword [r8 + 0x1c]
cmp edx, 2
jbe 0x140087a52
mov r8d, 1
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x1400879ff
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400879ed
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140087a52
movzx eax, word [rbx + 0x6e2]
cmp word [r12], ax
jae 0x140087a3b
mov r8d, 0x24
lea rcx, [rbx + 0x90]
mov rdx, r12
cmp rsi, r8
cmovb r8, rsi
call fcn.1401e3ed0
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 0x24
test al, 2
jne 0x140087a7a
bt eax, 0x16
jb 0x140087a7a
test al, 1
je 0x140087aad
mov eax, dword [r12 + 0x1c]
test eax, eax
je 0x140087a7a
cmp eax, 2
jne 0x140087aad
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r8, r13
cmp rsi, r13
lea rcx, [rdi + 0x304]
mov rdx, r12
cmovb r8, rsi
call fcn.1401e3ed0
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12 + 0x1c]
cmp eax, 1
je 0x140087acd
cmp eax, 2
jne 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140087b3b
nop word [rax + rax]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [rbx + 0x6e2]
cmp word [r12], r11w
jae 0x140087b25
cmp rsi, r13
mov r8, r13
lea rcx, [rbx + 0x90]
cmovb r8, rsi
mov rdx, r12
call fcn.1401e3ed0
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x140087af0
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x98
jae 0x140087b60
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
or r15d, 0xffffffff
lea r13d, [r15 + 2]
test al, 2
jne 0x140087b9f
bt eax, 0x16
jb 0x140087b9f
mov edx, dword [r8 + 0x80]
cmp edx, 2
jbe 0x140087bef
mov r8d, r13d
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x140087bd7
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x140087bc5
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140087bef
mov rdx, r12
mov rcx, rsi
call fcn.14007c180
mov r14, rax
mov qword [rsp + 0x58], rax
jmp 0x140087cb1
mov qword [rsp + 0x58], rbx
mov eax, r13d
lock xadd dword [rdi + 0x3b8], eax
cmp word [r12], 0x7b
je 0x140087c0c
mov rsi, rbx
jmp 0x140087c38
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0x58]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rdx, r12
mov qword [rsp + 0x20], rbx
call fcn.140078e60
mov rsi, rax
test rax, rax
jne 0x140087ca7
mov rcx, qword [rsp + 0x50]
mov eax, r15d
lock xadd dword [rcx + 0x3b8], eax
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
mov eax, dword [r12 + 0x8c]
test al, 1
je 0x140087c62
test al, 2
jne 0x140087c8b
test al, 8
je 0x140087c6a
test al, 0x10
jne 0x140087c8b
mov edx, 0x200
test al, 0x10
je 0x140087cf2
mov ecx, dword [r12 + 0x88]
test ecx, ecx
je 0x140087cf2
cmp ecx, edx
jb 0x140087c8b
cmp ecx, 0x10000
jbe 0x140087cf2
test rsi, rsi
je 0x140087c9d
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, socket
jmp 0x14008b9c9
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
test r14, r14
jne 0x140087c52
cmp word [r12], 0x7b
jne 0x140087cdb
cmp qword [r12 + 8], rbx
je 0x140087c52
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ebp, [r14 + 0x16]
jmp 0x14008b9c7
lea rcx, [rsi + 0x7e8]
mov ebp, 0x273f
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test rsi, rsi
je 0x1400885b1
test r14, r14
je 0x1400881cf
test al, 2
je 0x140087d3d
movzx eax, word [r14 + 0x23c]
test dx, ax
jne 0x140087d34
test al, 4
jne 0x140087d34
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
mov dword [rsp + 0x20], 0x50000009
call fcn.14008f120
or word [r14 + 0x23c], 4
mov ecx, dword [r12 + 0x8c]
test cl, 1
je 0x140087da5
mov eax, dword [r12 + 0x84]
test eax, eax
je 0x140087d5f
mov dword [r14 + 0x238], eax
jmp 0x140087d6a
test cl, cl
jns 0x140087d6a
mov dword [r14 + 0x238], ebx
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
mov dword [rsp + 0x20], 0x5000000a
call fcn.14008f120
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
call fcn.14008eb90
mov eax, 0xfffb
and word [r14 + 0x23c], ax
test byte [r12 + 0x8c], 4
je 0x140087dee
mov eax, dword [rsi + 0x58]
and al, 0x7f
cmp al, 8
jne 0x140087dee
mov r8d, r13d
mov rdx, r14
mov rcx, rsi
call fcn.1400b3580
mov r9d, r13d
mov r8d, reloc.WS2_32.dll_recvfrom
mov rdx, rsi
mov rcx, rdi
call fcn.1400b0ce0
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
call fcn.14008eb90
test byte [r12 + 0x8c], 0x10
je 0x140087f8b
test byte [r14 + 0x38], 4
je 0x140087f42
test rdi, rdi
je 0x140087f42
mov ecx, dword [r14 + 0x40]
lea rax, [r14 + 0x10]
mov qword [rsp + 0x60], rax
test ecx, ecx
je 0x140087e2b
cmp ecx, 8
jne 0x140087f42
mov rcx, rax
mov qword [rax + 0x50], rbx
mov dword [rax + 0x5c], 0x5000000b
call fcn.140076930
cmp eax, 1
jne 0x140087f42
mov rdx, qword [rsp + 0x60]
cmp qword [rdx + 0x38], rbx
je 0x140087e6b
mov qword [rdx + 0x38], rbx
mov eax, r15d
lock xadd dword [rdi + 0x3b8], eax
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
cmp qword [rdx + 0x40], rbx
je 0x140087e8a
mov qword [rdx + 0x40], rbx
mov eax, r15d
lock xadd dword [rsi + 0x6c8], eax
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
mov rcx, qword [rdx + 0x48]
mov qword [rsp + 0x60], rcx
test rcx, rcx
je 0x140087f42
mov qword [rdx + 0x48], rbx
test rcx, rcx
je 0x140087f42
mov eax, r15d
lock xadd dword [rcx + 0x1e8], eax
cmp eax, 1
jne 0x140087f38
mov rax, qword [rcx + 0xd0]
test rax, rax
je 0x140087eec
cmp dword [rax + 0x14], 1
jg 0x140087ee2
dec dword [rax + 0x14]
cmp dword [rax + 0x14], ebx
jg 0x140087ee5
mov rcx, rax
call fcn.1401e36c8
mov rcx, qword [rsp + 0x60]
jmp 0x140087ee5
dec dword [rax + 0x14]
mov qword [rcx + 0xd0], rbx
cmp byte [rcx + 0x24b], bl
je 0x140087f0c
mov rcx, qword [rcx + 0xf8]
call fcn.140078120
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0xf8], rbx
mov eax, 0xfffe
mov byte [rcx + 0x24b], bl
and word [rcx + 0x23c], ax
call fcn.1401e36c8
lock xadd dword [0x1402e659c], r15d
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
jmp 0x140087f42
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
or word [r14 + 0x23c], 2
mov eax, dword [r12 + 0x88]
test eax, eax
je 0x140087f8b
mov dword [r14 + 0x100], eax
cmp word [r14 + 0xd8], 0x7b
jne 0x140087f71
add dword [r14 + 0x100], 0xc
mov edx, dword [r14 + 0x100]
cmp edx, dword [rsi + 0x524]
jae 0x140087f8b
mov r8d, r13d
mov rcx, rsi
call fcn.140081580
test byte [r12 + 0x8c], 8
je 0x14008807a
test byte [r14 + 0x38], 4
jne 0x14008806c
bt dword [rsi + 0x58], 9
jb 0x14008806c
movzx eax, word [r14 + 0x23c]
test al, 8
jne 0x14008806c
test rdi, rdi
je 0x14008806c
test al, 2
jne 0x14008806c
test byte [r14 + 0x38], 4
mov eax, dword [rdi + 0x1b8]
lea r15, [r14 + 0x10]
mov dword [rsp + 0x60], eax
jne 0x14008806c
mov dword [r15 + 0x5c], ebx
mov dword [r15 + 0x30], 8
mov qword [r15 + 0x38], rdi
mov qword [r15 + 0x40], rsi
mov qword [r15 + 0x48], r14
mov qword [r15 + 0x50], r15
call fcn.140076800
mov edx, dword [rsp + 0x60]
lea r8, [0x14008e1f0]
mov r9, r15
mov rcx, r15
mov dword [r15 + 0x58], eax
call fcn.140076830
test eax, eax
jne 0x14008806c
cmp qword [r15 + 0x38], rbx
je 0x14008803f
mov eax, r13d
lock xadd dword [rdi + 0x3b8], eax
mov r14, qword [rsp + 0x58]
cmp qword [r15 + 0x40], rbx
je 0x140088055
mov eax, r13d
lock xadd dword [rsi + 0x6c8], eax
mov r14, qword [rsp + 0x58]
cmp qword [r15 + 0x48], rbx
je 0x14008806c
mov eax, r13d
lock xadd dword [r14 + 0x1e8], eax
mov r14, qword [rsp + 0x58]
mov r15d, 0xfffd
and word [r14 + 0x23c], r15w
movzx eax, word [r12 + 0x94]
test ax, ax
je 0x140088199
mov edi, 0x800
test word [r14 + 0x23c], di
je 0x1400880b5
cmp word [r14 + 0x242], ax
jbe 0x140088112
mov r15d, 0xf7ff
and word [r14 + 0x23c], r15w
jmp 0x140088112
movzx ecx, word [r14 + 0x242]
cmp cx, ax
ja 0x140088112
cmp cx, word [r14 + 0x240]
jbe 0x140088112
or word [r14 + 0x23c], di
mov r8d, r13d
mov rdx, r14
mov rcx, rsi
call fcn.1400b3580
mov rdx, qword [rsi + 8]
mov r9, r14
mov r8, rsi
mov ecx, 5
mov dword [rsp + 0x20], 0x5000000c
call fcn.14008f120
mov rdx, qword [rsi + 8]
mov r9, r14
mov r8, rsi
mov ecx, 5
call fcn.14008eb90
test byte [r14 + 0x23c], 1
je 0x140088155
movzx eax, word [r12 + 0x94]
cmp word [r14 + 0x242], ax
jbe 0x140088188
xor r8d, r8d
mov eax, 0xfffe
mov r9, r14
and word [r14 + 0x23c], ax
lea ecx, [r8 + 3]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
jmp 0x140088188
movzx eax, word [r12 + 0x94]
cmp word [r14 + 0x242], ax
ja 0x140088188
or word [r14 + 0x23c], 1
xor r8d, r8d
mov r9, r14
lea ecx, [r8 + 4]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
movzx eax, word [r12 + 0x94]
mov word [r14 + 0x23e], ax
bt dword [r12 + 0x8c], 9
jae 0x14008859f
movzx eax, byte [r12 + 0x96]
lea rcx, [rsi + 0x7e8]
and al, 0xfd
or al, 1
mov byte [r14 + 0x224], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx eax, word [r12 + 0x94]
test ax, ax
je 0x14008832e
mov r14, qword [rsi + 0x310]
mov word [rsi + 0x6ec], ax
test r14, r14
je 0x14008832e
mov ebx, 0x800
mov ebp, 0xfffe
mov r15d, 0xf7ff
nop dword [rax + rax]
test word [r14 + 0x23c], bx
je 0x140088237
movzx eax, word [r12 + 0x94]
cmp word [r14 + 0x242], ax
jbe 0x14008829a
and word [r14 + 0x23c], r15w
jmp 0x14008829a
movzx eax, word [r14 + 0x242]
cmp ax, word [r12 + 0x94]
ja 0x14008829a
cmp ax, word [r14 + 0x240]
jbe 0x14008829a
or word [r14 + 0x23c], bx
mov r8d, r13d
mov rdx, r14
mov rcx, rsi
call fcn.1400b3580
mov rdx, qword [rsi + 8]
mov r9, r14
mov r8, rsi
mov ecx, 5
mov dword [rsp + 0x20], 0x5000000d
call fcn.14008f120
mov rdx, qword [rsi + 8]
mov r9, r14
mov r8, rsi
mov ecx, 5
call fcn.14008eb90
test byte [r14 + 0x23c], 1
je 0x1400882d8
movzx eax, word [r12 + 0x94]
cmp word [r14 + 0x242], ax
jbe 0x14008830b
and word [r14 + 0x23c], bp
xor r8d, r8d
mov r9, r14
lea ecx, [r8 + 3]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
jmp 0x14008830b
movzx eax, word [r12 + 0x94]
cmp word [r14 + 0x242], ax
ja 0x14008830b
or word [r14 + 0x23c], 1
xor r8d, r8d
mov r9, r14
lea ecx, [r8 + 4]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
movzx eax, word [r12 + 0x94]
mov word [r14 + 0x23e], ax
mov r14, qword [r14]
test r14, r14
jne 0x140088210
mov ebp, dword [rsp + 0x60]
xor ebx, ebx
mov ecx, dword [r12 + 0x8c]
test cl, 1
je 0x1400883eb
mov eax, dword [r12 + 0x84]
test eax, eax
je 0x140088353
mov dword [rsi + 0x5e8], eax
jmp 0x14008835d
test cl, cl
jns 0x14008835d
mov dword [rsi + 0x5e8], ebx
mov r14, qword [rsi + 0x310]
test r14, r14
je 0x1400883e3
mov ebp, 0xfffb
nop
mov eax, dword [r12 + 0x84]
test eax, eax
je 0x140088385
mov dword [r14 + 0x238], eax
jmp 0x140088397
test byte [r12 + 0x8c], 0x80
je 0x140088397
mov dword [r14 + 0x238], ebx
test byte [r14 + 0x23c], 4
je 0x1400883a9
and word [r14 + 0x23c], bp
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
mov dword [rsp + 0x20], 0x5000000e
call fcn.14008f120
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
call fcn.14008eb90
mov r14, qword [r14]
test r14, r14
jne 0x140088370
mov ebp, dword [rsp + 0x60]
and qword [rsi + 0x750], 0xfffffffffffffffb
test byte [r12 + 0x8c], 2
je 0x140088458
mov r14, qword [rsi + 0x310]
test r14, r14
je 0x140088450
mov r15d, 0x200
nop dword [rax + rax]
test byte [r14 + 0x23c], 4
jne 0x140088448
or word [r14 + 0x23c], 4
test word [r14 + 0x23c], r15w
jne 0x140088448
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 5
mov dword [rsp + 0x20], 0x5000000f
call fcn.14008f120
mov r14, qword [r14]
test r14, r14
jne 0x140088410
or qword [rsi + 0x750], 4
test byte [r12 + 0x8c], 0x10
je 0x140088500
mov r14, qword [rsi + 0x310]
test r14, r14
je 0x1400884e6
test byte [r14 + 0x38], 4
je 0x140088495
mov r9, r14
mov r8, rsi
mov rdx, rdi
mov ecx, 8
mov dword [rsp + 0x20], 0x50000010
call fcn.14008f120
or word [r14 + 0x23c], 2
mov eax, dword [r12 + 0x88]
test eax, eax
je 0x1400884de
mov dword [r14 + 0x100], eax
cmp word [r14 + 0xd8], 0x7b
jne 0x1400884c4
add dword [r14 + 0x100], 0xc
mov edx, dword [r14 + 0x100]
cmp edx, dword [rsi + 0x524]
jae 0x1400884de
mov r8d, r13d
mov rcx, rsi
call fcn.140081580
mov r14, qword [r14]
test r14, r14
jne 0x140088473
mov eax, dword [r12 + 0x88]
test eax, eax
je 0x1400884f8
mov dword [rsi + 0x6d4], eax
or qword [rsi + 0x750], 1
test byte [r12 + 0x8c], 8
je 0x140088559
mov r13, qword [rsi + 0x310]
test r13, r13
je 0x14008854b
mov r15d, 0xfffd
nop dword [rax]
test byte [r13 + 0x38], 4
jne 0x14008853a
mov r9, r13
mov r8, rsi
mov rdx, rdi
mov ecx, 8
call fcn.14008eb90
and word [r13 + 0x23c], r15w
mov r13, qword [r13]
test r13, r13
jne 0x140088520
and qword [rsi + 0x750], 0xfffffffffffffffe
mov dword [rsi + 0x6d4], ebx
bt dword [r12 + 0x8c], 9
jae 0x14008859f
mov rcx, qword [rsi + 0x310]
test rcx, rcx
je 0x14008858c
movzx eax, byte [r12 + 0x96]
and al, 0xfd
or al, 1
mov byte [rcx + 0x224], al
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140088571
movzx eax, byte [r12 + 0x96]
and al, 0xfd
or al, 1
mov byte [rsi + 0x718], al
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400885d9
bt eax, 0x16
jb 0x1400885d9
test al, 1
je 0x1400885cf
cmp dword [r12 + 0x80], ebx
je 0x1400885d9
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12 + 0x94]
test r11w, r11w
je 0x1400885fd
mov word [rdi + 0x20c], r11w
test byte [r12 + 0x8c], 0x80
je 0x140088610
mov dword [rdi + 0x1b4], ebx
jmp 0x14008863d
mov eax, dword [r12 + 0x84]
test eax, eax
je 0x14008863d
cmp eax, 0xdbba00
jbe 0x14008862f
mov dword [r12 + 0x84], 0xdbba00
mov eax, dword [r12 + 0x84]
mov dword [rdi + 0x1b4], eax
mov eax, dword [r12 + 0x8c]
test al, 1
je 0x140088679
test al, al
jns 0x14008865d
mov dword [rdi + 0x1b4], ebx
and qword [rdi + 0x150], 0xfffffffffffffffb
jmp 0x140088685
mov eax, dword [r12 + 0x84]
test eax, eax
je 0x14008866f
mov dword [rdi + 0x1b4], eax
and qword [rdi + 0x150], 0xfffffffffffffffb
jmp 0x140088685
test al, 2
je 0x140088685
or qword [rdi + 0x150], 4
mov eax, dword [r12 + 0x8c]
test al, 8
je 0x1400886a1
mov dword [rdi + 0x204], ebx
and qword [rdi + 0x150], 0xfffffffffffffffe
jmp 0x1400886bf
test al, 0x10
je 0x1400886bf
mov eax, dword [r12 + 0x88]
test eax, eax
je 0x1400886b7
mov dword [rdi + 0x204], eax
or qword [rdi + 0x150], 1
bt dword [r12 + 0x8c], 9
jae 0x1400886de
movzx eax, byte [r12 + 0x96]
and al, 0xfd
or al, 1
mov byte [rdi + 0x2c0], al
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x10
jae 0x140088700
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008873c
bt eax, 0x16
jb 0x14008873c
mov eax, dword [r8]
cmp eax, 2
jbe 0x1400887e4
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140088774
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140088762
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x1400887e4
mov eax, dword [r12 + 4]
test eax, eax
jne 0x140088783
mov eax, dword [rbx + 0x664]
mov edx, dword [r12 + 8]
test edx, edx
jne 0x140088792
mov edx, dword [rbx + 0x66c]
mov ecx, dword [r12 + 0xc]
test ecx, ecx
jne 0x1400887a1
mov ecx, dword [rbx + 0x668]
cmp ecx, eax
ja 0x1400887cd
cmp eax, edx
ja 0x1400887cd
mov dword [rbx + 0x668], ecx
lea rcx, [rbx + 0x7e8]
mov dword [rbx + 0x664], eax
mov dword [rbx + 0x66c], edx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140088808
bt eax, 0x16
jb 0x140088808
test al, 1
je 0x1400887fe
cmp dword [r12], ebp
je 0x140088808
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
test r11d, r11d
jne 0x140088826
mov r11d, dword [rdi + 0x1cc]
mov ecx, dword [r12 + 8]
test ecx, ecx
jne 0x140088835
mov ecx, dword [rdi + 0x1c8]
mov eax, dword [r12 + 0xc]
test eax, eax
jne 0x140088844
mov eax, dword [rdi + 0x1c4]
cmp eax, r11d
ja 0x140088873
cmp r11d, ecx
ja 0x140088873
mov dword [rdi + 0x1cc], r11d
mov dword [rdi + 0x1c8], ecx
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x1c4], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x14
jae 0x14008889a
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400888d2
bt eax, 0x16
jb 0x1400888d2
mov eax, dword [r8]
cmp eax, 2
jbe 0x140088905
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140088905
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400888f8
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [r12 + 0xc]
test eax, eax
je 0x140088932
cmp eax, 0x3e8
jae 0x14008891e
mov dword [r12 + 0xc], 0x3e8
cmp dword [r12 + 0xc], 0x36ee80
jbe 0x140088932
mov dword [r12 + 0xc], 0x36ee80
test rbx, rbx
je 0x14008896a
movzx eax, word [r12 + 0x10]
test ax, ax
je 0x140088949
mov word [rbx + 0x6ea], ax
mov eax, dword [r12 + 0xc]
test eax, eax
je 0x140088958
mov dword [rbx + 0x5f8], eax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008898e
bt eax, 0x16
jb 0x14008898e
test al, 1
je 0x140088984
cmp dword [r12], ebp
je 0x14008898e
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12 + 0x10]
test r11w, r11w
je 0x1400889af
mov word [rdi + 0x20a], r11w
mov eax, dword [r12 + 0xc]
test eax, eax
je 0x1400889be
mov dword [rdi + 0x2a0], eax
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x1400889e0
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12]
test r11w, r11w
je 0x140088a00
mov word [rdi + 0x210], r11w
movzx eax, word [r12 + 2]
test ax, ax
je 0x140088a12
mov word [rdi + 0x212], ax
movzx eax, word [r12 + 4]
test ax, ax
je 0x140088a24
mov word [rdi + 0x208], ax
mov ax, word [r12 + 6]
test ax, ax
je 0x140088a38
movzx eax, ax
mov dword [rdi + 0x1d0], eax
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x88
jae 0x140088a5d
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140088a97
bt eax, 0x16
jb 0x140088a97
mov edx, dword [r8 + 0x80]
cmp edx, 2
jbe 0x140088ae7
mov r8d, 1
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x140088acf
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x140088abd
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140088ae7
mov rdx, r12
mov rcx, rsi
call fcn.14007c180
mov rdi, rax
mov qword [rsp + 0x70], rax
jmp 0x140088b6b
mov qword [rsp + 0x70], rbx
mov r13d, 1
lock xadd dword [rdi + 0x3b8], r13d
cmp word [r12], 0x7b
je 0x140088b08
mov rsi, rbx
jmp 0x140088b34
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0x70]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rdx, r12
mov qword [rsp + 0x20], rbx
call fcn.140078e60
mov rsi, rax
test rax, rax
jne 0x140088b66
mov rax, qword [rsp + 0x50]
or r15d, 0xffffffff
lock xadd dword [rax + 0x3b8], r15d
mov ebp, socket
test rsi, rsi
je 0x14008b9c7
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rdi, qword [rsp + 0x70]
test rdi, rdi
je 0x140088b46
cmp rdi, qword [rsi + 0x3d0]
je 0x140088b4b
mov r15d, 0x200
test word [rdi + 0x23c], r15w
jne 0x140088c96
mov r8, rdi
xor edx, edx
mov rcx, rsi
call fcn.140081050
test eax, eax
jne 0x140088c8c
mov rcx, qword [rsi + 0x3d8]
test rcx, rcx
je 0x140088b4b
movzx eax, word [rdi + 0x23c]
mov edi, 0x800
test di, ax
jne 0x140088b4b
test al, 1
je 0x140088b4b
or r15d, 0xffffffff
mov eax, r15d
lock xadd dword [rcx + 0x1e8], eax
cmp eax, 1
jne 0x140088c80
mov rax, qword [rsi + 0x3d8]
mov rcx, qword [rax + 0xd0]
test rcx, rcx
je 0x140088c22
cmp dword [rcx + 0x14], 1
jg 0x140088c03
dec dword [rcx + 0x14]
cmp dword [rcx + 0x14], ebx
jg 0x140088c06
call fcn.1401e36c8
jmp 0x140088c06
dec dword [rcx + 0x14]
mov rax, qword [rsi + 0x3d8]
mov qword [rax + 0xd0], rbx
mov rax, qword [rsi + 0x3d8]
mov qword [rax + 0xd0], rbx
mov rcx, qword [rsi + 0x3d8]
cmp byte [rcx + 0x24b], bl
je 0x140088c4b
mov rcx, qword [rcx + 0xf8]
call fcn.140078120
mov r11, qword [rsi + 0x3d8]
mov qword [r11 + 0xf8], rbx
mov rax, qword [rsi + 0x3d8]
mov ecx, 0xfffe
mov byte [rax + 0x24b], bl
mov rax, qword [rsi + 0x3d8]
and word [rax + 0x23c], cx
mov rcx, qword [rsi + 0x3d8]
call fcn.1401e36c8
lock xadd dword [0x1402e659c], r15d
mov qword [rsi + 0x3d8], rbx
jmp 0x140088b4b
mov ebp, socket
jmp 0x140088b4b
mov ebp, socket
jmp 0x140088b4b
cmp r9, 0x88
jae 0x140088cb3
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x140088cf4
bt eax, 0x16
jb 0x140088cf4
mov edx, dword [r8 + 0x80]
cmp edx, 2
jbe 0x140088df8
mov r8d, r13d
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x140088d30
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x140088d1a
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140088df8
mov edx, dword [rsi + 0x4f4]
xor r8d, r8d
mov rcx, r12
call fcn.1400964a0
mov r14, rax
test rax, rax
jne 0x140088d5e
lea rcx, [rsi + 0x7e8]
lea ebp, [rax + 0x16]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test byte [rdi + 0x158], 4
jne 0x140088db9
mov rbx, qword [rdi + 0x138]
test rbx, rbx
je 0x140088da2
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x140088d9a
mov rcx, rsi
call fcn.1400a4c80
test eax, eax
je 0x140088d94
mov rcx, rsi
call fcn.1400c3490
test eax, eax
je 0x140088d9a
cmp qword [rbx + 0x10], r14
je 0x140088db9
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140088d73
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rdx, r12
mov rcx, rsi
call fcn.1400c3420
mov ecx, ebp
mov ebp, socket
test eax, eax
mov r9d, r13d
mov r8d, reloc.WS2_32.dll_recvfrom
cmovne ecx, ebp
mov rdx, rsi
mov ebp, ecx
mov rcx, rdi
call fcn.1400b0ce0
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
cmp r9, 8
jae 0x140088e12
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x140088e4d
bt eax, 0x16
jb 0x140088e4d
mov eax, dword [r8]
cmp eax, 2
jbe 0x140088e80
mov r8d, r13d
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140088e80
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140088e73
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
movzx eax, word [r12 + 4]
dec eax
cmp eax, 0xd
ja case.default.0x140088e9e
cdqe
mov ecx, dword [r15 + rax*4 + 0x8bb14]
add rcx, r15
jmp rcx
mov r14d, 0x800
jmp 0x140088f10
mov r14d, 0x1000
jmp 0x140088f10
mov r14d, 0x2000
jmp 0x140088f10
mov r14d, 0x4000
jmp 0x140088f10
mov r14d, 0x8000
jmp 0x140088f10
mov r14d, 0x10000
jmp 0x140088f10
mov r14d, 0x20000
jmp 0x140088f10
mov r14d, 0x40000
jmp 0x140088f10
mov r14d, 0x80000
jmp 0x140088f10
mov r14d, 0x4000000
jmp 0x140088f10
mov ebp, 0x273d
jmp 0x1400890cd
mov r14d, 0x20000000
jmp 0x140088f10
mov r14d, 0x40000000
jmp 0x140088f10
mov r14d, 0x80000000
test rbx, rbx
je 0x140088f91
cmp byte [r12 + 6], bpl
je 0x140088f72
mov eax, r14d
or qword [rbx + 0x750], rax
cmp r14d, 0x4000000
jne 0x140088f7f
cmp qword [rbx + 0x360], rbp
jne 0x140088f7f
cmp qword [rbx + 0x350], rbp
jne 0x140088f7f
cmp dword [rbx + 0x5ac], ebp
jne 0x140088f7f
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
lea ecx, [r9 + 0x1c]
mov dword [rsp + 0x20], r13d
call fcn.140093040
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
not r14d
mov eax, r14d
and qword [rbx + 0x750], rax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r14d, 0x4000000
jne 0x140088fbb
test byte [rdi + 0x158], r13b
je 0x140088fbb
mov eax, dword [r12]
cmp eax, 2
je 0x140088fb1
cmp eax, r13d
jne 0x140088fbb
mov ebp, 0x273d
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140088fdd
bt eax, 0x16
jb 0x140088fdd
test r13b, al
je 0x140089016
mov eax, dword [r12]
test eax, eax
je 0x140088fdd
cmp eax, 2
jne 0x140089016
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp byte [r12 + 6], bpl
je 0x140088ffd
mov eax, r14d
or qword [rdi + 0x150], rax
jmp 0x140089009
mov eax, r14d
not eax
and qword [rdi + 0x150], rax
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], r13b
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, r13d
je 0x140089035
cmp eax, 2
jne 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400890b6
nop
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp byte [r12 + 6], bpl
je 0x140089081
test rbx, rbx
je 0x140089075
mov eax, r14d
or qword [rbx + 0x750], rax
jmp 0x1400890a0
mov eax, r14d
or qword [rdi + 0x150], rax
jmp 0x1400890a0
test rbx, rbx
je 0x140089094
mov eax, r14d
not eax
and qword [rbx + 0x750], rax
jmp 0x1400890a0
mov eax, r14d
not eax
and qword [rdi + 0x150], rax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x140089050
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
test rbx, rbx
je 0x14008b9c7
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x1400890f8
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12], ebx
je 0x140089128
or qword [rdi + 0x150], 0x8000000
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
and qword [rdi + 0x150], 0xfffffffff7ffffff
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x140089155
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12], ebx
je 0x140089185
or qword [rdi + 0x150], 0x10000000
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
and qword [rdi + 0x150], 0xffffffffefffffff
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x10
jae 0x1400891b2
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400891ed
bt eax, 0x16
jb 0x1400891ed
mov edx, dword [r8 + 0xc]
cmp edx, 2
jbe 0x140089294
mov r8d, 1
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089225
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140089213
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140089294
movzx eax, word [r12]
cmp ax, word [rbx + 0x6e2]
jae 0x14008927d
movzx ecx, word [rbx + 0x94]
mov word [rbx + 0x90], ax
movzx eax, word [r12 + 2]
and cx, 0xf
or ax, cx
lea rcx, [rbx + 0x7e8]
mov word [rbx + 0x94], ax
mov eax, dword [r12 + 4]
mov dword [rbx + 0x98], eax
mov eax, dword [r12 + 8]
mov dword [rbx + 0x9c], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x1400892b6
bt eax, 0x16
jb 0x1400892b6
test al, 1
je 0x14008930e
mov eax, dword [r12 + 0xc]
test eax, eax
je 0x1400892b6
cmp eax, 2
jne 0x14008930e
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12]
mov word [rdi + 0x304], r11w
movzx ecx, word [rdi + 0x308]
movzx eax, word [r12 + 2]
and cx, 0xf
or ax, cx
lea rcx, [rdi + 0x340]
mov word [rdi + 0x308], ax
mov eax, dword [r12 + 4]
mov dword [rdi + 0x30c], eax
mov eax, dword [r12 + 8]
mov dword [rdi + 0x310], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12 + 0xc]
cmp eax, 1
je 0x14008932e
cmp eax, 2
jne 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x1400893bb
nop word [rax + rax]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12]
cmp r11w, word [rbx + 0x6e2]
jae 0x1400893a5
movzx ecx, word [rbx + 0x94]
mov word [rbx + 0x90], r11w
movzx eax, word [r12 + 2]
and cx, 0xf
or ax, cx
mov word [rbx + 0x94], ax
mov eax, dword [r12 + 4]
mov dword [rbx + 0x98], eax
mov eax, dword [r12 + 8]
mov dword [rbx + 0x9c], eax
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x140089350
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0xc
jae 0x1400893dd
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089414
bt eax, 0x16
jb 0x140089414
mov edx, dword [r8 + 8]
cmp edx, 2
jbe 0x140089447
mov r8d, 1
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089447
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008943a
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp word [r12], 3
jbe 0x14008946b
test rbx, rbx
je 0x140089461
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebp, socket
jmp 0x14008b9c7
test rbx, rbx
je 0x1400894ac
mov esi, 0xfff0
lea rcx, [rbx + 0x7e8]
and word [rbx + 0x94], si
movzx eax, word [rbx + 0x94]
or ax, word [r12]
mov word [rbx + 0x94], ax
mov eax, dword [r12 + 4]
mov dword [rbx + 0xa0], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov esi, 0xfff0
test al, 2
jne 0x1400894d3
bt eax, 0x16
jb 0x1400894d3
test al, 1
je 0x140089512
mov eax, dword [r12 + 8]
test eax, eax
je 0x1400894d3
cmp eax, 2
jne 0x140089512
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
and word [rdi + 0x308], si
movzx eax, word [rdi + 0x308]
or ax, word [r12]
lea rcx, [rdi + 0x340]
mov word [rdi + 0x308], ax
mov eax, dword [r12 + 4]
mov dword [rdi + 0x314], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12 + 8]
cmp eax, 1
je 0x140089532
cmp eax, 2
jne 0x14008b9c7
lea r13, [rdi + 0x340]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x140089598
nop
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
and word [rdi + 0x94], si
movzx eax, word [rdi + 0x94]
or ax, word [r12]
lea rcx, [rdi + 0x7e8]
mov word [rdi + 0x94], ax
mov eax, dword [r12 + 4]
mov dword [rdi + 0xa0], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x140089550
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x90
jae 0x1400895b9
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x1400895f6
bt eax, 0x16
jb 0x1400895f6
mov edx, dword [r8 + 0x80]
cmp edx, 2
jbe 0x140089641
mov r8d, r13d
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x14008962e
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008961c
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140089641
mov rdx, r12
mov rcx, rsi
call fcn.14007c180
mov rbx, rax
jmp 0x1400896dc
mov qword [rsp + 0x78], rbx
mov eax, r13d
lock xadd dword [rdi + 0x3b8], eax
cmp word [r12], 0x7b
je 0x14008965e
mov rsi, rbx
jmp 0x14008968a
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0x78]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rdx, r12
mov qword [rsp + 0x20], rbx
call fcn.140078e60
mov rsi, rax
test rax, rax
jne 0x1400896d2
mov rax, qword [rsp + 0x50]
or r15d, 0xffffffff
lock xadd dword [rax + 0x3b8], r15d
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x78]
mov edx, 0xffff
cmp word [r12 + 0x88], dx
je 0x14008971c
test rsi, rsi
je 0x1400896c8
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebp, socket
jmp 0x14008b9c7
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x78]
test rbx, rbx
jne 0x1400896a6
cmp word [r12], 0x7b
jne 0x140089705
cmp qword [r12 + 8], rbp
je 0x1400896a6
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ebp, [rbx + 0x16]
jmp 0x14008b9c7
lea rcx, [rsi + 0x7e8]
mov ebp, 0x273f
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test rsi, rsi
je 0x1400899ec
test rbx, rbx
je 0x140089872
movzx eax, word [r12 + 0x84]
mov edi, 0x800
mov word [rbx + 0x23e], ax
movzx eax, word [r12 + 0x86]
mov word [rbx + 0x240], ax
test word [rbx + 0x23c], di
je 0x140089781
movzx ecx, word [rbx + 0x242]
cmp cx, word [rbx + 0x23e]
ja 0x140089771
cmp cx, ax
ja 0x1400897db
mov r15d, 0xf7ff
and word [rbx + 0x23c], r15w
jmp 0x1400897db
movzx ecx, word [rbx + 0x242]
cmp cx, ax
jbe 0x1400897db
cmp cx, word [rbx + 0x23e]
ja 0x1400897db
or word [rbx + 0x23c], di
mov r8d, r13d
mov rdx, rbx
mov rcx, rsi
call fcn.1400b3580
mov rdx, qword [rsi + 8]
mov r9, rbx
mov r8, rsi
mov ecx, 5
mov dword [rsp + 0x20], 0x50000011
call fcn.14008f120
mov rdx, qword [rsi + 8]
mov r9, rbx
mov r8, rsi
mov ecx, 5
call fcn.14008eb90
test byte [rbx + 0x23c], 1
je 0x14008982d
movzx eax, word [rbx + 0x23e]
cmp word [rbx + 0x242], ax
jbe 0x1400899da
xor r8d, r8d
mov eax, 0xfffe
mov r9, rbx
and word [rbx + 0x23c], ax
lea ecx, [r8 + 3]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx eax, word [rbx + 0x23e]
cmp word [rbx + 0x242], ax
ja 0x1400899da
or word [rbx + 0x23c], 1
xor r8d, r8d
mov r9, rbx
lea ecx, [r8 + 4]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rbx, qword [rsi + 0x310]
test rbx, rbx
je 0x1400899ba
mov edi, 0x800
mov ebp, 0xfffe
mov r15d, 0xf7ff
nop word [rax + rax]
movzx eax, word [r12 + 0x84]
mov word [rbx + 0x23e], ax
movzx eax, word [r12 + 0x86]
mov word [rbx + 0x240], ax
test word [rbx + 0x23c], di
je 0x1400898e8
movzx ecx, word [rbx + 0x242]
cmp cx, word [rbx + 0x23e]
ja 0x1400898de
cmp cx, ax
ja 0x140089942
and word [rbx + 0x23c], r15w
jmp 0x140089942
movzx ecx, word [rbx + 0x242]
cmp cx, ax
jbe 0x140089942
cmp cx, word [rbx + 0x23e]
ja 0x140089942
or word [rbx + 0x23c], di
mov r8d, r13d
mov rdx, rbx
mov rcx, rsi
call fcn.1400b3580
mov rdx, qword [rsi + 8]
mov r9, rbx
mov r8, rsi
mov ecx, 5
mov dword [rsp + 0x20], 0x50000012
call fcn.14008f120
mov rdx, qword [rsi + 8]
mov r9, rbx
mov r8, rsi
mov ecx, 5
call fcn.14008eb90
test byte [rbx + 0x23c], 1
je 0x14008997b
movzx eax, word [rbx + 0x23e]
cmp word [rbx + 0x242], ax
jbe 0x1400899aa
and word [rbx + 0x23c], bp
xor r8d, r8d
mov r9, rbx
lea ecx, [r8 + 3]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
jmp 0x1400899aa
movzx eax, word [rbx + 0x23e]
cmp word [rbx + 0x242], ax
ja 0x1400899aa
or word [rbx + 0x23c], 1
xor r8d, r8d
mov r9, rbx
lea ecx, [r8 + 4]
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.140093040
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1400898a0
mov ebp, dword [rsp + 0x60]
movzx eax, word [r12 + 0x84]
mov word [rsi + 0x6ec], ax
movzx eax, word [r12 + 0x86]
mov word [rsi + 0x6ee], ax
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089a14
bt eax, 0x16
jb 0x140089a14
test al, 1
je 0x140089a0a
cmp dword [r12 + 0x80], ebp
je 0x140089a14
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12 + 0x84]
lea rcx, [rdi + 0x340]
mov word [rdi + 0x20c], r11w
movzx eax, word [r12 + 0x86]
mov word [rdi + 0x20e], ax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0x88
jae 0x140089a67
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089aa1
bt eax, 0x16
jb 0x140089aa1
mov edx, dword [r8 + 0x80]
cmp edx, 2
jbe 0x140089ae9
mov r8d, 1
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x140089ad9
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x140089ac7
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x140089ae9
mov rdx, r12
mov rcx, rsi
call fcn.14007c180
mov rdx, rax
jmp 0x140089b43
mov qword [rsp + 0x68], rbx
mov r13d, 1
lock xadd dword [rdi + 0x3b8], r13d
cmp word [r12], 0x7b
jne 0x140089bd3
mov rax, qword [rsp + 0x50]
lea r8, [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rdx, r12
mov qword [rsp + 0x20], rbx
call fcn.140078e60
mov rsi, rax
test rax, rax
je 0x140089bd3
mov rdi, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x68]
test rdx, rdx
jne 0x140089b85
cmp word [r12], 0x7b
jne 0x140089b6e
cmp qword [r12 + 8], rbx
je 0x140089b85
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rsi + 0x7e8]
mov ebp, 0x273f
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test rsi, rsi
je 0x140089bea
test rdx, rdx
je 0x140089bb1
movzx eax, word [r12 + 0x84]
lea rcx, [rsi + 0x7e8]
mov word [rdx + 0x244], ax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx eax, word [r12 + 0x84]
lea rcx, [rsi + 0x7e8]
mov word [rsi + 0x75c], ax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rax, qword [rsp + 0x50]
or r15d, 0xffffffff
lock xadd dword [rax + 0x3b8], r15d
mov rdi, qword [rsp + 0x50]
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089c12
bt eax, 0x16
jb 0x140089c12
test al, 1
je 0x140089c08
cmp dword [r12 + 0x80], ebx
je 0x140089c12
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12 + 0x84]
lea rcx, [rdi + 0x340]
mov word [rdi + 0x2c4], r11w
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140089c52
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089c8a
bt eax, 0x16
jb 0x140089c8a
mov eax, dword [r8]
cmp eax, 2
jbe 0x140089cd9
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089cc2
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140089cb0
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140089cd9
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089cfd
bt eax, 0x16
jb 0x140089cfd
test al, 1
je 0x140089cf3
cmp dword [r12], ebp
je 0x140089cfd
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2f8], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140089d3a
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089d72
bt eax, 0x16
jb 0x140089d72
mov eax, dword [r8]
cmp eax, 2
jbe 0x140089dc1
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089daa
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140089d98
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140089dc1
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089de5
bt eax, 0x16
jb 0x140089de5
test al, 1
je 0x140089ddb
cmp dword [r12], ebp
je 0x140089de5
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2f9], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140089e22
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089e5a
bt eax, 0x16
jb 0x140089e5a
mov eax, dword [r8]
cmp eax, 2
jbe 0x140089ea9
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089e92
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140089e80
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140089ea9
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089ecd
bt eax, 0x16
jb 0x140089ecd
test al, 1
je 0x140089ec3
cmp dword [r12], ebp
je 0x140089ecd
mov ebp, socket
jmp 0x14008b9c7
cmp dword [r12 + 4], ebp
jne 0x140089ee7
cmp byte [rdi + 0x2fc], 1
jne 0x140089ee7
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2fa], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x140089f24
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089f5c
bt eax, 0x16
jb 0x140089f5c
mov eax, dword [r8]
cmp eax, 2
jbe 0x140089fab
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x140089f94
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x140089f82
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140089fab
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x140089fcf
bt eax, 0x16
jb 0x140089fcf
test al, 1
je 0x140089fc5
cmp dword [r12], ebp
je 0x140089fcf
mov ebp, socket
jmp 0x14008b9c7
cmp dword [r12 + 4], ebp
je 0x140089fe9
cmp byte [rdi + 0x2fa], bpl
jne 0x140089fe9
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
jne 0x14008a05a
mov byte [rdi + 0x2fc], bpl
mov rax, qword [rdi + 0x1f0]
test rax, rax
je 0x14008a026
cmp byte [rax + 0xc1], 1
jne 0x14008a026
dec byte [rax + 0x100]
mov byte [rax + 0xc1], bpl
mov rax, qword [rdi + 0x1f0]
test rax, rax
je 0x14008a0a5
cmp byte [rax + 0x80], 1
jne 0x14008a0a5
dec byte [rax + 0x100]
lea rcx, [rdi + 0x340]
mov byte [rax + 0x80], bpl
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov byte [rdi + 0x2fc], 1
mov rax, qword [rdi + 0x1f0]
test rax, rax
je 0x14008a083
cmp byte [rax + 0xc1], bpl
jne 0x14008a083
inc byte [rax + 0x100]
mov byte [rax + 0xc1], 1
mov rax, qword [rdi + 0x1f0]
test rax, rax
je 0x14008a0a5
cmp byte [rax + 0x80], bpl
jne 0x14008a0a5
inc byte [rax + 0x100]
mov byte [rax + 0x80], 1
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008a0c7
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a0ff
bt eax, 0x16
jb 0x14008a0ff
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a14e
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008a137
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008a125
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008a14e
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a172
bt eax, 0x16
jb 0x14008a172
test al, 1
je 0x14008a168
cmp dword [r12], ebp
je 0x14008a172
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2fd], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008a1af
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a1e7
bt eax, 0x16
jb 0x14008a1e7
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a236
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008a21f
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008a20d
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008a236
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a25a
bt eax, 0x16
jb 0x14008a25a
test al, 1
je 0x14008a250
cmp dword [r12], ebp
je 0x14008a25a
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2fe], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008a297
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a2cf
bt eax, 0x16
jb 0x14008a2cf
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a31e
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008a307
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008a2f5
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008a31e
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a342
bt eax, 0x16
jb 0x14008a342
test al, 1
je 0x14008a338
cmp dword [r12], ebp
je 0x14008a342
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
lea rcx, [rdi + 0x340]
setne al
mov byte [rdi + 0x2ff], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008a37f
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a3bb
bt eax, 0x16
jb 0x14008a3bb
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a45f
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008a3f3
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008a3e1
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008a45f
mov eax, dword [r12 + 4]
mov dword [rbx + 0x758], eax
test eax, eax
je 0x14008a44d
mov rcx, qword [rbx + 0x310]
test rcx, rcx
je 0x14008a44d
nop
mov eax, dword [rcx + 0x1f0]
mov edx, dword [rbx + 0x758]
cmp eax, edx
jbe 0x14008a445
mov r8d, dword [rcx + 0x100]
lea r9, [r8 - 0xc]
cmp rax, r9
jbe 0x14008a445
mov dword [rcx + 0x1f0], edx
cmp rdx, r9
jae 0x14008a445
lea eax, [r8 - 0xc]
mov dword [rcx + 0x1f0], eax
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14008a410
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a483
bt eax, 0x16
jb 0x14008a483
test al, 1
je 0x14008a479
cmp dword [r12], ebp
je 0x14008a483
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2ec], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x14008a4be
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8]
test eax, eax
je 0x14008a4d4
cmp eax, 1
je 0x14008a4d4
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, byte [r12]
lea rcx, [rdi + 0x340]
mov byte [rdi + 0x300], r11b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008a50f
mov ebp, socket
jmp 0x14008b9c7
test dword [r8 + 4], 0xfffffff8
je 0x14008a523
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a55b
bt eax, 0x16
jb 0x14008a55b
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a5b1
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008a593
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008a581
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008a5b1
movzx eax, byte [r12 + 4]
lea rcx, [rbx + 0x7e8]
mov byte [rbx + 0x726], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008a5d2
bt eax, 0x16
jb 0x14008a5d2
test al, 1
je 0x14008a5f9
mov eax, dword [r12]
test eax, eax
je 0x14008a5d2
cmp eax, 2
jne 0x14008a5f9
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, byte [r12 + 4]
lea rcx, [rdi + 0x340]
mov byte [rdi + 0x2f0], r11b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x14008a618
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x14008a670
nop word [rax + rax]
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, byte [r12 + 4]
lea rcx, [rdi + 0x7e8]
mov byte [rdi + 0x726], r11b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x14008a640
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp edx, 0x1200
jg 0x14008aeb8
cmp edx, 0x1200
je 0x14008ad33
sub edx, 0x901
je 0x14008aa45
sub edx, 1
je 0x14008a8bd
sub edx, 1
je 0x14008a6c6
cmp edx, 0x704
jne case.0x140086390.42
mov ebp, 0x273d
jmp 0x14008b9c7
movzx r14d, bx
cmp r9, 8
jae 0x14008a6da
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x14008a715
bt eax, 0x16
jb 0x14008a715
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a74d
mov r8d, r13d
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x14008a757
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008a73b
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
jne 0x14008a757
mov ebp, 2
jmp 0x14008b9c7
cmp byte [rsi + 0x71f], bl
jne 0x14008a776
lea rcx, [rsi + 0x7e8]
mov ebp, 0x273d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rsi + 0x58]
and al, 0x7f
cmp al, 8
je 0x14008a796
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp byte [rsi + 0x734], bl
je 0x14008a7b5
lea rcx, [rsi + 0x7e8]
mov ebp, 0x2735
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ax, word [r12 + 6]
test ax, ax
jne 0x14008a7df
cmp word [r12 + 4], bx
jne 0x14008a7df
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov edx, 0xffff
test ax, ax
je 0x14008a816
movzx ecx, word [rsi + 0x6e2]
movzx ebx, ax
movzx ebp, r13b
add ecx, ebx
mov eax, ebx
cmp ecx, edx
jle 0x14008a816
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx eax, word [r12 + 4]
test ax, ax
je 0x14008a86d
movzx ecx, word [rsi + 0x6e0]
movzx r14d, ax
or bpl, 2
add ecx, r14d
cmp ecx, edx
jle 0x14008a84e
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp ecx, dword [rsi + 0x5f4]
jle 0x14008a86d
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
xor edx, edx
xor r9d, r9d
xor r8d, r8d
mov byte [rsp + 0x40], dl
mov word [rsp + 0x38], r14w
mov word [rsp + 0x30], bx
mov rcx, rsi
mov byte [rsp + 0x28], bpl
mov byte [rsp + 0x20], dl
call fcn.1400b64c0
mov r9d, r13d
mov r8d, reloc.WS2_32.dll_inet_ntoa
mov rdx, rsi
mov rcx, rdi
mov ebp, eax
call fcn.1400b0ce0
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 4
jae 0x14008a8cd
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x14008a908
bt eax, 0x16
jb 0x14008a908
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008a940
mov r8d, r13d
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x14008a94a
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008a92e
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
jne 0x14008a94a
mov ebp, 2
jmp 0x14008b9c7
cmp byte [rsi + 0x71f], bl
jne 0x14008a969
lea rcx, [rsi + 0x7e8]
mov ebp, 0x273d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rsi + 0x58]
and al, 0x7f
cmp al, 8
je 0x14008a989
lea rcx, [rsi + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp byte [rsi + 0x734], bl
je 0x14008a9a8
lea rcx, [rsi + 0x7e8]
mov ebp, 0x2735
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp qword [rsi + 0x360], rbx
jne 0x14008aa2e
cmp qword [rsi + 0x350], rbx
jne 0x14008aa2e
movzx edx, word [rsi + 0x6e2]
mov ecx, ebx
test edx, edx
jle 0x14008a9df
mov rax, qword [rsi + 0x3c0]
nop
cmp qword [rax], rbx
jne 0x14008aa2e
inc ecx
add rax, 0x48
cmp ecx, edx
jl 0x14008a9d0
xor edx, edx
xor r9d, r9d
xor r8d, r8d
mov byte [rsp + 0x40], dl
mov word [rsp + 0x38], bx
mov word [rsp + 0x30], bx
mov byte [rsp + 0x28], dl
mov rcx, rsi
mov byte [rsp + 0x20], r13b
call fcn.1400b64c0
mov r9d, r13d
mov r8d, reloc.WS2_32.dll_inet_ntoa
mov rdx, rsi
mov rcx, rdi
mov ebp, eax
call fcn.1400b0ce0
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rsi + 0x7e8]
mov ebp, reloc.WS2_32.dll_recv
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008aa55
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x14008aa90
bt eax, 0x16
jb 0x14008aa90
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008aac8
mov r8d, r13d
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov r14, rax
test rax, rax
jne 0x14008aad2
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r14, qword [rdi + 0x2d8]
test r14, r14
je 0x14008aab6
lea rcx, [r14 + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test r14, r14
jne 0x14008aad2
mov ebp, 2
jmp 0x14008b9c7
cmp byte [r14 + 0x71f], bl
jne 0x14008aaf2
lea rcx, [r14 + 0x7e8]
mov ebp, 0x273d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [r14 + 0x58]
and al, 0x7f
cmp al, 8
je 0x14008ab13
lea rcx, [r14 + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx r10d, word [r12 + 6]
lea rax, [r10 + r10 + 8]
cmp rax, rsi
jbe 0x14008ab3a
lea rcx, [r14 + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
movzx eax, word [r12 + 4]
test r13b, al
je 0x14008ab68
mov ebp, r13d
cmp byte [r14 + 0x734], bl
je 0x14008ab68
lea rcx, [r14 + 0x7e8]
mov ebp, 0x2735
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test al, 2
mov r8d, ebx
mov eax, 0xc8
cmovne r8d, r13d
cmp r10w, ax
jbe 0x14008ab97
test ebp, ebp
je 0x14008ab9b
lea rcx, [r14 + 0x7e8]
mov ebp, reloc.WS2_32.dll_inet_ntoa
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test ebp, ebp
jne 0x14008abb6
test r8d, r8d
jne 0x14008abb6
lea rcx, [r14 + 0x7e8]
lea ebp, [r8 + 0x16]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov edx, ebx
test r10d, r10d
jle 0x14008abf9
lea rcx, [r12 + 8]
test ebp, ebp
je 0x14008abd3
movzx eax, word [r14 + 0x6e0]
cmp word [rcx], ax
jae 0x14008ac4e
test r8d, r8d
je 0x14008abe9
movzx eax, word [r14 + 0x6e2]
cmp word [rcx], ax
jae 0x14008ac65
movzx eax, word [r12 + 6]
inc edx
add rcx, 2
cmp edx, eax
jl 0x14008abc2
test r8d, r8d
je 0x14008acb5
test r10w, r10w
je 0x14008ac7c
mov ecx, ebx
test r10d, r10d
jle 0x14008acb5
lea rdx, [r12 + 8]
nop dword [rax + rax]
movzx eax, word [rdx]
lea r8, [rax + rax*8]
mov rax, qword [r14 + 0x3c0]
cmp byte [rax + r8*8 + 0x47], 2
jne 0x14008ac3c
mov byte [rax + r8*8 + 0x47], 3
movzx eax, word [r12 + 6]
inc ecx
add rdx, 2
cmp ecx, eax
jl 0x14008ac20
jmp 0x14008acb5
lea rcx, [r14 + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [r14 + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov edx, ebx
cmp bx, word [r14 + 0x6e2]
jae 0x14008acb5
mov rcx, rbx
nop dword [rax + rax]
mov rax, qword [r14 + 0x3c0]
cmp byte [rcx + rax + 0x47], 2
jne 0x14008aca3
mov byte [rcx + rax + 0x47], 3
movzx eax, word [r14 + 0x6e2]
inc edx
add rcx, 0x48
cmp edx, eax
jl 0x14008ac90
test ebp, ebp
je 0x14008acea
movzx edx, word [r12 + 6]
mov byte [rsp + 0x40], bl
mov word [rsp + 0x38], bx
mov word [rsp + 0x30], bx
lea r8, [r12 + 8]
movzx r9d, bpl
mov rcx, r14
mov byte [rsp + 0x28], bl
mov byte [rsp + 0x20], bl
call fcn.1400b64c0
mov ebp, eax
jmp 0x14008acf7
mov edx, r13d
mov rcx, r14
call fcn.1400b5dd0
mov ebp, eax
test ebp, ebp
jne 0x14008ad1f
lea r8d, [rbp + 0xc]
mov r9d, r13d
mov rdx, r14
mov rcx, rdi
call fcn.1400b0ce0
lea rcx, [r14 + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [r14 + 0x7e8]
mov ebp, ebx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp dword [0x1402e6a68], ebx
je 0x14008aeae
cmp r9, 8
jae 0x14008ad4f
mov ebp, socket
jmp 0x14008b9c7
cmp dword [r8 + 4], 4
jbe 0x14008ad60
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008ad98
bt eax, 0x16
jb 0x14008ad98
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008adee
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008add0
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008adbe
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008adee
movzx eax, byte [r12 + 4]
lea rcx, [rbx + 0x7e8]
mov byte [rbx + 0x73f], al
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008ae0f
bt eax, 0x16
jb 0x14008ae0f
test al, 1
je 0x14008ae35
mov eax, dword [r12]
test eax, eax
je 0x14008ae0f
cmp eax, 2
jne 0x14008ae35
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x2f4], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x14008ae54
cmp eax, 2
jne 0x14008b9c7
lea rsi, [rdi + 0x340]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x14008aea0
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, byte [r12 + 4]
lea rcx, [rdi + 0x7e8]
mov byte [rdi + 0x73f], r11b
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x14008ae70
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, 0x273a
jmp 0x14008b9c7
cmp edx, 0x3002
jg 0x14008b7d7
cmp edx, 0x3002
je 0x14008b7cd
cmp edx, 0x1205
jg 0x14008b639
cmp edx, 0x1205
je 0x14008b4ec
sub edx, 0x1202
je 0x14008b2b5
sub edx, 1
je 0x14008b085
cmp edx, 1
jne case.0x140086390.42
cmp r9, 8
jae 0x14008af14
lea ebp, [rdx + 0x15]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008af50
bt eax, 0x16
jb 0x14008af50
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008afd7
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008af88
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008af76
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008afd7
movzx eax, word [r12 + 4]
cmp ax, word [rbx + 0x6e2]
jae 0x14008afc0
movzx r9d, word [r12 + 6]
movzx eax, ax
lea rdx, [rbx + 0x58]
lea rcx, [rax + rax*8]
mov rax, qword [rbx + 0x3c0]
lea r8, [rax + rcx*8]
mov rcx, rbx
call qword [rbx + 0x4e0]
test eax, eax
jns 0x14008afc5
mov ebp, socket
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
test byte [rdi + 0x158], 1
je 0x14008b07b
cmp dword [r12], 1
jne 0x14008b07b
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008b069
nop dword [rax + rax]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movzx r11d, word [r12 + 4]
cmp r11w, word [rbx + 0x6e2]
jae 0x14008b053
movzx r9d, word [r12 + 6]
movzx eax, r11w
lea rdx, [rbx + 0x58]
lea rcx, [rax + rax*8]
mov rax, qword [rbx + 0x3c0]
lea r8, [rax + rcx*8]
mov rcx, rbx
call qword [rbx + 0x4e0]
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x14008b010
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008b095
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8 + 4]
test eax, eax
je 0x14008b0c0
cmp eax, 1
je 0x14008b0c0
cmp eax, 2
je 0x14008b0c0
cmp eax, 3
je 0x14008b0c0
cmp eax, 4
je 0x14008b0c0
cmp eax, 5
je 0x14008b0c0
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x14008b0ff
bt eax, 0x16
jb 0x14008b0ff
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008b1a0
mov r8d, r13d
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x14008b137
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008b125
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x14008b1a0
lea rdx, [rsi + 0x58]
mov r8d, r13d
mov rcx, rsi
call qword [rsi + 0x498]
mov eax, dword [r12 + 4]
lea r15, [0x140000000]
lea r8, [rax + rax*2]
lea rcx, [rsi + 0x490]
shl r8, 5
lea rdx, [r8 + r15 + 0x28bb20]
mov r8d, 0x60
call fcn.1401e3ed0
mov r11d, dword [r12 + 4]
lea rdx, [rsi + 0x58]
mov rcx, rsi
mov dword [rsi + 0x4f0], r11d
call qword [rsi + 0x490]
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008b1c2
bt eax, 0x16
jb 0x14008b1c2
test r13b, al
je 0x14008b1e8
mov eax, dword [r12]
test eax, eax
je 0x14008b1c2
cmp eax, 2
jne 0x14008b1e8
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x1e4], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], r13b
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, r13d
je 0x14008b207
cmp eax, 2
jne 0x14008b9c7
lea rax, [rdi + 0x340]
mov rcx, rax
mov qword [rsp + 0x68], rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r14, qword [rdi + 0x2d8]
test r14, r14
je 0x14008b2a5
lea r15, [0x140000000]
nop
lea rcx, [r14 + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [r14 + 0x58]
mov r8d, r13d
mov rcx, r14
call qword [r14 + 0x498]
mov eax, dword [r12 + 4]
lea rcx, [r14 + 0x490]
lea r8, [rax + rax*2]
shl r8, 5
lea rdx, [r8 + r15 + 0x28bb20]
mov r8d, 0x60
call fcn.1401e3ed0
mov r11d, dword [r12 + 4]
lea rdx, [r14 + 0x58]
mov rcx, r14
mov dword [r14 + 0x4f0], r11d
call qword [r14 + 0x490]
lea rcx, [r14 + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r14, qword [r14 + 0x20]
test r14, r14
jne 0x14008b230
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008b2c5
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8 + 4]
test eax, eax
je 0x14008b2e6
cmp eax, 1
je 0x14008b2e6
cmp eax, 2
je 0x14008b2e6
cmp eax, 3
je 0x14008b2e6
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008b322
bt eax, 0x16
jb 0x14008b322
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008b3d6
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rsi, rax
test rax, rax
jne 0x14008b35a
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [rdi + 0x2d8]
test rsi, rsi
je 0x14008b348
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x14008b3d6
mov eax, dword [r12 + 4]
lea r15, [0x140000000]
lea rcx, [rsi + 0x418]
mov r8d, reloc.WS2_32.dll_WSASetLastError
imul rax, rax, 0x70
lea rdx, [rax + r15 + 0x28bfc0]
call fcn.1401e3ed0
mov r11d, dword [r12 + 4]
mov dword [rsi + 0x488], r11d
cmp qword [rsi + 0x418], rbx
je 0x14008b3c4
mov rbx, qword [rsi + 0x310]
test rbx, rbx
je 0x14008b3c4
nop word [rax + rax]
mov rdx, rbx
mov rcx, rsi
call qword [rsi + 0x418]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14008b3b0
lea rcx, [rsi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008b3f7
bt eax, 0x16
jb 0x14008b3f7
test al, 1
je 0x14008b41d
mov eax, dword [r12]
test eax, eax
je 0x14008b3f7
cmp eax, 2
jne 0x14008b41d
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11d, dword [r12 + 4]
lea rcx, [rdi + 0x340]
mov dword [rdi + 0x1e0], r11d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test byte [rdi + 0x158], 1
je 0x14008b9c7
mov eax, dword [r12]
cmp eax, 1
je 0x14008b43c
cmp eax, 2
jne 0x14008b9c7
lea r14, [rdi + 0x340]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [rdi + 0x2d8]
test rdi, rdi
je 0x14008b4de
lea r15, [0x140000000]
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [r12 + 4]
lea rcx, [rdi + 0x418]
imul rax, rax, 0x70
lea rdx, [rax + r15 + 0x28bfc0]
mov r8d, reloc.WS2_32.dll_WSASetLastError
call fcn.1401e3ed0
mov r11d, dword [r12 + 4]
mov dword [rdi + 0x488], r11d
cmp qword [rdi + 0x418], rbp
je 0x14008b4c8
mov rbx, qword [rdi + 0x310]
test rbx, rbx
je 0x14008b4c8
mov rdx, rbx
mov rcx, rdi
call qword [rdi + 0x418]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14008b4b4
lea rcx, [rdi + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rdi + 0x20]
test rdi, rdi
jne 0x14008b463
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp r9, 0xc
jae 0x14008b4fc
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
mov r13d, 1
test al, 2
jne 0x14008b53a
bt eax, 0x16
jb 0x14008b53a
mov edx, dword [r8 + 4]
cmp edx, 2
jbe 0x14008b576
mov r8d, r13d
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008b5f7
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008b560
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
jne 0x14008b5f7
test byte [rdi + 0x158], r13b
je 0x14008b5ed
cmp dword [r12 + 4], r13d
jne 0x14008b5ed
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008b5db
nop
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r11, qword [rbx + 0x478]
test r11, r11
je 0x14008b5c5
mov r8, r12
mov edx, r13d
mov rcx, rbx
call r11
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
jne 0x14008b5a0
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, socket
jmp 0x14008b9c7
mov rax, qword [rbx + 0x478]
test rax, rax
jne 0x14008b61a
lea rcx, [rbx + 0x7e8]
mov ebp, 0x273d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov r8, r12
mov edx, r13d
mov rcx, rbx
call rax
lea rcx, [rbx + 0x7e8]
mov ebp, eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
cmp edx, 0x1206
je 0x14008b6a6
cmp edx, 0x2001
je 0x14008b681
cmp edx, 0x3001
jne case.0x140086390.42
cmp r9, 4
jae 0x14008b665
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [r8]
test eax, eax
je 0x14008b676
mov ebp, socket
jmp 0x14008b9c7
mov dword [rdi + 0x3bc], eax
jmp 0x14008b9c7
cmp r9, 0x20
jae 0x14008b691
mov ebp, socket
jmp 0x14008b9c7
mov edx, dword [rdi + 0x3bc]
mov rcx, r8
call fcn.140097b70
mov ebp, eax
jmp 0x14008b9c7
cmp r9, 8
jae 0x14008b6b6
mov ebp, socket
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008b6ee
bt eax, 0x16
jb 0x14008b6ee
mov eax, dword [r8]
cmp eax, 2
jbe 0x14008b73d
mov r8d, 1
mov edx, eax
mov rcx, rdi
call fcn.140079330
mov rbx, rax
test rax, rax
jne 0x14008b726
lea ebp, [rax + 2]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008b714
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14008b73d
lea rcx, [rbx + 0x7e8]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov eax, dword [rdi + 0x158]
test al, 2
jne 0x14008b761
bt eax, 0x16
jb 0x14008b761
test al, 1
je 0x14008b757
cmp dword [r12], ebp
je 0x14008b761
mov ebp, socket
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [r12 + 4], ebp
jne 0x14008b78e
lea rcx, [rdi + 0x340]
mov byte [rdi + 0x2fb], bpl
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rax, qword [rdi + 0x150]
test al, 8
je 0x14008b7b6
test al, 0x10
je 0x14008b7b6
lea rcx, [rdi + 0x340]
mov byte [rdi + 0x2fb], 1
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rdi + 0x340]
mov ebp, socket
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov ebp, 0x273d
jmp 0x14008b9c7
cmp edx, 0x8007
jg 0x14008b85e
cmp edx, 0x8007
je 0x14008b836
sub edx, 0x3005
je 0x14008b82c
sub edx, 0x4ffc
je 0x14008b814
cmp edx, 1
jne case.0x140086390.42
mov ebp, socket
mov eax, 0x273f
cmp r9, 0x10
cmovb eax, ebp
mov ebp, eax
jmp 0x14008b9c7
mov ebp, socket
mov eax, 0x273f
cmp r9, 0x10
cmovb eax, ebp
mov ebp, eax
jmp 0x14008b9c7
mov ebp, 0x273d
jmp 0x14008b9c7
cmp r9, 0x14
jae 0x14008b846
mov ebp, socket
jmp 0x14008b9c7
mov rdx, rdi
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
call fcn.1400820e0
mov ebp, eax
jmp 0x14008b9c7
sub edx, 0x8008
je 0x14008b9a0
cmp edx, 1
je 0x14008b879
mov ebp, 0x273a
jmp 0x14008b9c7
cmp r9, 0x10
jae 0x14008b889
mov ebp, socket
jmp 0x14008b9c7
bt dword [rdi + 0x158], 0x15
mov r13d, 1
jae 0x14008b8d9
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [rdi + 0x2d8]
test rbx, rbx
je 0x14008b8bf
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rdi + 0x340]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
jne 0x14008b91e
lea ebp, [rbx + 2]
jmp 0x14008b9c7
mov eax, r13d
lock xadd dword [rdi + 0x3b8], eax
cmp word [r8], 0x7b
jne 0x14008b987
mov rax, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov rdx, r12
mov qword [rsp + 0x20], rbx
call fcn.140078e60
mov rbx, rax
test rax, rax
je 0x14008b987
mov rdi, qword [rsp + 0x50]
cmp byte [rbx + 0x736], r13b
jne 0x14008b973
lea rcx, [rbx + 0x70]
mov byte [rbx + 0x736], bpl
call fcn.140076af0
mov r9, qword [rbx + 0x3d0]
mov r8, rbx
mov rdx, rdi
mov ecx, 2
mov dword [rsp + 0x20], 0x50000008
call fcn.14008f120
mov r8d, r13d
mov rdx, rbx
mov rcx, rdi
call fcn.1400a63f0
lea rcx, [rbx + 0x7e8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
lea rcx, [rbx + 0x7e8]
mov ebp, 0x2735
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14008b9c7
mov rax, qword [rsp + 0x50]
or r15d, 0xffffffff
lock xadd dword [rax + 0x3b8], r15d
mov ebp, 2
jmp 0x14008b9c7
cmp r9, 0x14
jae 0x14008b9ad
mov ebp, socket
jmp 0x14008b9c7
mov r13d, 1
mov rdx, rdi
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], rbx
call fcn.1400820e0
mov ebp, eax
mov eax, ebp
mov r14, qword [rsp + 0x98]
mov r13, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xd8]
mov r15, qword [rsp + 0x90]
mov rdi, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401e42a0
add rsp, 0xb0
pop r12
pop rsi
pop rbp
ret