Function at 0x5cb106
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x330
mov dword [esp + 0x2c], ecx
push 0x2c
pop ecx
push 4
pop esi
mov edx, esi
call fcn.005086b2
mov edi, eax
xor eax, eax
inc eax
mov dword [edi], eax
mov dword [edi + 4], eax
and dword [edi + 8], 0
mov byte [edi + 0xc], 0
and dword [edi + 0x10], 0
mov dword [edi + 0x14], 4
and dword [edi + 0x1c], 0
and dword [edi + 0x18], 0
and dword [edi + 0x24], 0
and dword [edi + 0x20], 0
and dword [edi + 0x28], 0
sub esi, 1
jb 0x5cb167
mov ecx, edi
xor edx, edx
call fcn.005cba2f
jmp 0x5cb157
mov dword [esp + 0x4c], edi
mov eax, dword [0x7f50bc]
cmp eax, 3
jbe 0x5cb1a6
lea ecx, [esp + 0xb0]
mov dword [ecx], 0x789250
mov dword [ecx + 4], 1
and dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x7b0e68
and dword [ecx + 0xc], 0
push 4
pop edx
push 0x789258
call fcn.00513e35
pop eax
mov eax, dword [esp + 0x2c]
lea ebx, [esp + 0xb0]
mov esi, dword [eax + 4]
mov ecx, dword [eax]
mov dl, byte [eax + 0xc]
mov dword [esp + 0x58], esi
mov esi, dword [eax + 8]
mov dword [esp + 0x5c], ecx
mov byte [esp + 7], dl
mov dword [esp + 0x54], esi
mov eax, dword [esp + 0x5c]
mov al, byte [eax + 8]
test al, al
jne 0x5cb777
mov edx, dword [esp + 0x58]
mov ecx, ebx
call fcn.005b5150
cmp word [esp + 0xb4], 2
je 0x5cb6f1
cmp byte [esp + 7], 0
jne 0x5cb7eb
mov esi, dword [esp + 0xb0]
push 0x274
push 0
push ebx
call fcn.00616db0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push ebx
push eax
mov dword [esp + 0x50], esi
push esi
call dword [sym.imp.ws2_32.dll_WSADuplicateSocketW]
cmp eax, 0xffffffff
je 0x5cb7e1
push 0x81
push 0
push ebx
push dword [esp + 0x118]
push dword [esp + 0x118]
push dword [esp + 0x110]
call dword [sym.imp.ws2_32.dll_WSASocketW]
mov edi, eax
cmp eax, 0xffffffff
push 4
pop esi
jne 0x5cb2bb
call dword [sym.imp.ws2_32.dll_WSAGetLastError]
cmp eax, 0x2739
je 0x5cb27a
mov esi, eax
cmp eax, 0x2726
jne 0x5cb849
push 1
push 0
push ebx
push dword [esp + 0x118]
push dword [esp + 0x118]
push dword [esp + 0x110]
call dword [sym.imp.ws2_32.dll_WSASocketW]
cmp eax, 0xffffffff
je 0x5cb7e1
mov edi, eax
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_SetHandleInformation]
test eax, eax
push 4
pop esi
je 0x5cb83b
pxor xmm0, xmm0
lea eax, [esp + 8]
mov dword [esp + 8], pe_nt_image_headers32
movdqa xmmword [esp + 0x120], xmm0
movdqa xmmword [esp + 0x110], xmm0
movdqa xmmword [esp + 0x100], xmm0
movdqa xmmword [esp + 0xf0], xmm0
movdqa xmmword [esp + 0xe0], xmm0
movdqa xmmword [esp + 0xd0], xmm0
movdqa xmmword [esp + 0xc0], xmm0
movdqa xmmword [esp + 0xb0], xmm0
push eax
push ebx
push edi
call dword [sym.imp.ws2_32.dll_getpeername]
cmp eax, 0xffffffff
je 0x5cb39c
movzx ecx, word [esp + 0xb0]
mov eax, dword [esp + 8]
cmp ecx, 2
je 0x5cb3b8
cmp ecx, 0x17
jne 0x5cb40b
cmp eax, 0x1b
jbe 0x5cb870
movzx eax, word [esp + 0xb2]
movdqu xmm0, xmmword [esp + 0xb8]
rol ax, 8
movdqu xmmword [esp + 0x12], xmm0
movd dword [esp + 0x3c], xmm0
pshufd xmm0, xmm0, 0x55
mov word [esp + 0x52], ax
mov eax, dword [esp + 0xb4]
movd dword [esp + 0x38], xmm0
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x34], eax
xor eax, eax
inc eax
mov dword [esp + 0x30], eax
jmp 0x5cb3f9
call dword [sym.imp.ws2_32.dll_WSAGetLastError]
xor ecx, ecx
mov byte [esp + 0x12], cl
and word [esp + 0x13], 0
mov byte [esp + 0x15], cl
mov dword [esp + 0x16], eax
jmp 0x5cb418
cmp eax, 0xf
jbe 0x5cb882
movzx eax, word [esp + 0xb2]
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x30], 0
rol ax, 8
mov dword [esp + 0x10], ecx
mov dword [esp + 0x34], ecx
mov word [esp + 0x14], ax
mov eax, dword [esp + 0x16]
mov ecx, dword [esp + 0x12]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x1a]
mov ecx, dword [esp + 0x1e]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
jmp 0x5cb434
mov byte [esp + 0x12], 2
mov dword [esp + 0x16], 0x786da4
mov eax, dword [esp + 0x12]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x16]
mov dword [esp + 0x38], eax
mov ax, 3
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov ecx, 0x400
xor edx, edx
call fcn.0050d387
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 0x400
and dword [esp + 0x18], 0
and dword [esp + 0x1c], 0
and dword [esp + 0x20], 0
mov ecx, ebx
lea edx, [esp + 0x10]
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], 1
call fcn.005ced39
mov eax, dword [esp + 0xb0]
cmp eax, 3
mov dword [esp + 0x40], eax
je 0x5cb7fd
mov eax, dword [esp + 0xb4]
mov ebx, dword [esp + 0x44]
mov ecx, 0x400
xor edx, edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xb8]
and ebx, 0xffff0000
or ebx, 0x100
mov dword [esp + 0x68], eax
lea eax, [esp + 0xbc]
movsd xmm1, qword [eax + 8]
movsd xmm2, qword [eax + 0x10]
movsd xmm0, qword [eax]
mov eax, dword [esp + 0x28]
movsd qword [esp + 0x98], xmm1
movsd xmm1, qword [esp + 0x20]
movsd qword [esp + 0xa0], xmm2
movsd xmm2, qword [esp + 0x10]
movsd qword [esp + 0x90], xmm0
mov dword [esp + 0x88], eax
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
call fcn.0050d387
mov edi, eax
mov dword [esp + 0x44], edx
push 0x28
pop ecx
mov edx, esi
call fcn.005086b2
mov ecx, dword [esp + 0x44]
mov edx, esi
mov esi, eax
xor eax, eax
mov dword [esp + 0x44], ebx
inc eax
mov dword [esi], eax
mov dword [esi + 4], eax
xor eax, eax
and dword [esi + 8], 0
mov byte [esi + 0xc], al
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x48]
and dword [esi + 0x18], 0
mov byte [esi + 0x1c], al
mov dword [esi + 0x24], ebx
mov ebx, dword [esp + 0x54]
mov dword [esi + 0x20], ecx
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0xa8], xmm0
lock inc dword [ebx]
jle 0x5cb807
push 0x74
pop ecx
call fcn.005086b2
mov edi, eax
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0xb0]
mov dword [edi], eax
mov eax, dword [esp + 0x68]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x30]
movsd xmm0, qword [esp + 0x90]
movsd xmm1, qword [esp + 0x98]
movsd qword [edi + 0xc], xmm0
movsd qword [edi + 0x14], xmm1
movsd xmm0, qword [esp + 0xa0]
movsd qword [edi + 0x1c], xmm0
mov dword [edi + 0x24], 3
mov dword [edi + 0x2c], esi
mov word [edi + 0x30], ax
mov eax, dword [esp + 0x34]
mov word [edi + 0x32], ax
mov eax, dword [esp + 0x38]
mov dword [edi + 0x38], eax
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x34], eax
mov eax, dword [esp + 0x64]
movsd xmm0, qword [esp + 0xa8]
movsd qword [edi + 0x3c], xmm0
mov dword [edi + 0x44], eax
mov eax, dword [esp + 0x60]
mov dword [edi + 0x48], eax
movzx eax, word [esp + 0x52]
mov word [edi + 0x4c], ax
mov eax, dword [esp + 0x88]
mov dword [edi + 0x68], eax
movsd xmm0, qword [esp + 0x80]
movsd qword [edi + 0x60], xmm0
movsd xmm0, qword [esp + 0x70]
movsd xmm1, qword [esp + 0x78]
movsd qword [edi + 0x58], xmm1
movsd qword [edi + 0x50], xmm0
and word [edi + 0x6c], 0
mov dword [edi + 0x70], ebx
mov ebx, dword [esp + 0x4c]
lea edx, [ebx + 8]
call fcn.0048dedc
cmp dword [esp + 0xb0], 0
jne 0x5cb809
mov al, byte [esp + 0xb8]
mov esi, dword [esp + 0xb4]
mov byte [esp + 0x48], al
mov eax, dword [ebx + 0x28]
test eax, eax
je 0x5cb6ce
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x14]
cmp eax, ecx
jne 0x5cb697
lea ecx, [esi + 8]
call fcn.005cbb64
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
mov dword [esp + 0x40], esi
mov esi, 0
add edx, eax
cmp edx, ecx
cmovb ecx, esi
mov esi, dword [esp + 0x40]
add ebx, 0x20
inc eax
sub edx, ecx
mov ecx, dword [esi + 0xc]
mov dword [ecx + edx*8], edi
mov dword [ecx + edx*8 + 4], 0x789284
mov dword [esi + 0x14], eax
push ebx
call dword [sym.imp.KERNEL32.dll_WakeConditionVariable]
jmp 0x5cb6d9
mov ecx, dword [esp + 0x4c]
mov edx, edi
call fcn.005cba2f
movzx edx, byte [esp + 0x48]
mov ecx, esi
call fcn.004bd038
lea ebx, [esp + 0xb0]
jmp 0x5cb1cc
mov eax, dword [esp + 0xb8]
mov esi, dword [esp + 0xbc]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov ecx, dword [0x7f50bc]
test ecx, ecx
je 0x5cb755
xor edx, edx
lea ecx, [esp + 0xb0]
lea eax, [esp + 8]
inc edx
mov dword [ecx], str.Error_accepting_new_client:
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov dword [esp + 0x14], fcn.005b02f0
mov dword [ecx + 4], edx
and dword [ecx + 0x10], 0
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
push 0x7892bc
call fcn.00513e35
pop eax
mov eax, dword [esp + 8]
mov esi, dword [esp + 0xc]
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0xb0]
mov dword [edx + 8], esi
mov dword [edx + 4], eax
mov dword [edx], 2
mov ecx, dword [ecx + 8]
add ecx, 8
call fcn.005cb894
mov eax, dword [0x7f50bc]
cmp eax, 4
jb 0x5cb7b2
lea ecx, [esp + 0xb0]
mov dword [ecx], str.Terminating_accept_thread
mov dword [ecx + 4], 1
and dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x7b0e68
and dword [ecx + 0xc], 0
push 4
pop edx
push 0x7892fc
call fcn.00513e35
pop eax
lea esi, [esp + 0x4c]
mov eax, dword [esi]
mov dword [eax + 0x24], 0x3b9ac9ff
add eax, 0x20
push eax
call dword [sym.imp.KERNEL32.dll_WakeAllConditionVariable]
mov ecx, esi
call fcn.005c8aad
mov ecx, dword [esp + 0x2c]
call fcn.005c43bb
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call dword [sym.imp.ws2_32.dll_WSAGetLastError]
mov esi, eax
jmp 0x5cb849
push 0x28
pop edx
mov ecx, str.internal_error:_entered_unreachable_codeC:Users9B6E629E7D13D387.cargo_registry_src_rsproxy.cn_0dccff568467c15b_rustls_webpki_0.101.7_srccalendar.rs
push 0x789274
call fcn.0062d4b0
mov ecx, 0x788454
call fcn.0062d7f0
ud2
mov eax, dword [esp + 0xb4]
mov cl, byte [esp + 0xb8]
mov dword [esp + 0x10], eax
mov byte [esp + 0x14], cl
push 0x2b
pop edx
mov ecx, str.called__Result::unwrap____on_an__Err__value
push 0x789088
push 0x7882d0
lea eax, [esp + 0x18]
push eax
call fcn.0062d770
call sub.KERNEL32.dll_GetLastError
mov esi, eax
push edi
call dword [sym.imp.ws2_32.dll_closesocket]
and dword [esp + 0xb0], 0
mov dword [esp + 0xb4], esi
push 0x2b
pop edx
mov ecx, str.called__Result::unwrap____on_an__Err__value
push 0x788f24
push 0x788290
push ebx
call fcn.0062d770
push 0x43
pop edx
mov ecx, 0x786d40
push 0x786d84
call fcn.0062d4b0
push 0x42
pop edx
mov ecx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___library_std_src_sys_common_net.rs
push 0x786d30
call fcn.0062d4b0