Function at 0x180045fd0
Capabilities:
Initialize winsock library

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x1f8
mov rax, qword [0x18009b018]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call fcn.18005a6d0
mov rcx, qword [rsp + 0x200]
call fcn.180046330
cmp eax, 1
jne 0x180046012
jmp 0x180046309
lea rcx, [0x180046860]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov ecx, 3
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
lea rcx, [0x18009edf8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rdx, [rsp + 0x40]
mov cx, 0x202
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x18004604f
jmp 0x180046309
mov eax, dword [0x18009dbd8]
mov dword [0x18009e855], eax
call fcn.180047340
mov qword [0x18009ee20], rax
mov dword [0x18009edbc], 0
mov byte [rsp + 0x20], 1
call fcn.18005a6a4
xor edx, edx
div dword [0x18009e1f4]
mov eax, edx
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x38]
call fcn.18005a780
cmp dword [0x18009da90], 1
jne 0x1800460cd
mov rax, qword [0x18009daac]
cmp qword [rsp + 0x38], rax
jge 0x1800460bc
mov ecx, 0xea60
call qword [0x18009ee50]
jmp 0x180046188
mov byte [0x18009e810], 0
mov byte [rsp + 0x20], 2
jmp 0x180046193
movzx eax, byte [rsp + 0x20]
cmp eax, 1
jne 0x1800460e8
mov byte [rsp + 0x20], 2
mov byte [0x18009e810], 1
jmp 0x180046193
cmp dword [0x18009da94], 1
jne 0x180046110
cmp dword [0x18009edb0], 0
je 0x180046110
mov byte [0x18009e810], 2
mov dword [0x18009edb0], 0
jmp 0x180046193
cmp dword [0x18009da98], 1
jne 0x180046135
cmp dword [0x18009edb4], 0
je 0x180046135
mov byte [0x18009e810], 3
mov dword [0x18009edb4], 0
jmp 0x180046193
cmp dword [0x18009da9c], 1
jne 0x18004615a
cmp dword [0x18009da64], 0
je 0x18004615a
mov byte [0x18009e810], 4
mov dword [0x18009da64], 0
jmp 0x180046193
mov rax, qword [rsp + 0x38]
cmp qword [0x18009daac], rax
jge 0x18004617d
movzx eax, byte [0x18009e810]
cmp eax, 7
je 0x18004617b
mov byte [0x18009e810], 5
jmp 0x180046193
mov ecx, 0x7d0
call qword [0x18009ee50]
xor eax, eax
cmp eax, 1
jne 0x180046089
mov dword [rsp + 0x24], 0
jmp 0x1800461a7
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov eax, dword [0x18009e1f4]
cmp dword [rsp + 0x24], eax
jae 0x1800462b3
mov dword [rsp + 0x30], 2
mov eax, dword [rsp + 0x34]
inc eax
xor edx, edx
div dword [0x18009e1f4]
mov eax, edx
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x34], eax
mov dword [0x18009edb8], 1
mov dword [rsp + 0x28], 0
jmp 0x1800461f9
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [0x18009daa8]
cmp dword [rsp + 0x28], eax
jae 0x18004629a
mov eax, dword [rsp + 0x2c]
imul rax, rax, 0x104
lea rcx, [0x18009dce0]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.180007170
test eax, eax
jne 0x18004622f
jmp 0x18004629a
mov eax, dword [rsp + 0x2c]
imul rax, rax, 0x104
lea rcx, [0x18009dce0]
add rcx, rax
mov rax, rcx
mov rdx, rax
lea rcx, [0x18009e89d]
call fcn.180008cd0
mov ecx, dword [0x18009e855]
call fcn.180006600
test eax, eax
jne 0x18004626c
call fcn.180007900
jmp 0x18004629a
call fcn.180046890
mov dword [rsp + 0x30], eax
call fcn.180007900
cmp dword [rsp + 0x30], 0
jne 0x180046283
jmp 0x18004629a
mov byte [0x18009e810], 6
mov ecx, 0xea60
call qword [0x18009ee50]
jmp 0x1800461ef
cmp dword [rsp + 0x30], 0
jne 0x1800462a3
jmp 0x1800462b3
mov ecx, 0xea60
call qword [0x18009ee50]
jmp 0x18004619d
mov eax, dword [0x18009e1f4]
cmp dword [rsp + 0x24], eax
jne 0x1800462eb
lea rcx, [rsp + 0x38]
call fcn.18005a780
imul eax, dword [0x18009daa0], 0x3c
mov eax, eax
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rcx
mov qword [0x18009daac], rax
mov byte [0x18009e810], 7
xor eax, eax
cmp eax, 1
jne 0x180046089
lea rcx, [0x18009edf8]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.180047960
add rsp, 0x1f8
ret