Function at 0x140029170
Capabilities:
Initialize winsock library

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x1d0
mov rax, qword [0x14006a0d0]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
call fcn.140040088
xor esi, esi
mov r15d, 0xfffd
mov r14, qword [rax]
lea rbx, [rsi - 1]
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x140029337
mov rax, rbx
inc rax
cmp word [rdi + rax*2], si
jne 0x1400291c1
cmp rax, 2
jbe 0x1400291fa
cmp word [rdi], 0x2d
jne 0x1400291fa
cmp word [rdi + 2], 0x2d
lea rbp, [rdi + 2]
jne 0x1400291fa
lfence
lea rcx, [rdi + 4]
lea rdx, [0x1400636ec]
call fcn.140032c50
test eax, eax
je 0x14002923f
jmp 0x1400291fe
lea rbp, [rdi + 2]
mov rax, rbx
inc rax
cmp word [rdi + rax*2], si
jne 0x140029201
cmp rax, 1
jbe 0x140029337
movzx eax, word [rdi]
sub ax, 0x2d
test r15w, ax
jne 0x140029337
lfence
lea rdx, [0x1400636ea]
mov rcx, rbp
call fcn.140032c50
test eax, eax
jne 0x140029337
lea rdx, [0x140055788]
mov ecx, 0x300
call fcn.14002a234
mov rdi, rax
test rax, rax
je 0x1400294ec
mov dword [rdi + 0x18], esi
lea rax, [0x140060c84]
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x180]
mov qword [rdi + 0x10], rax
xorps xmm0, xmm0
mov byte [rdi + 0x1c], 1
lea rax, vtable.CmdWatchdog.0
mov qword [rdi], rax
lea rax, vtable.ExceptionDebugger.0
mov qword [rdi + 0x28], rax
mov dword [rdi + 0x20], esi
mov word [rdi + 0x30], si
mov byte [rdi + 0x32], sil
mov dword [rdi + 0x34], esi
mov dword [rdi + 0xf0], esi
mov qword [rdi + 0xf8], rsi
mov dword [rdi + 0x100], esi
mov qword [rdi + 0x108], rsi
movups xmmword [rdi + 0x110], xmm0
mov qword [rdi + 0x120], rsi
mov qword [rdi + 0x128], 7
mov word [rdi + 0x110], si
movups xmmword [rdi + 0x130], xmm0
mov qword [rdi + 0x140], rsi
mov qword [rdi + 0x148], 7
mov word [rdi + 0x130], si
mov qword [rdi + 0x150], rbx
movups xmmword [rdi + 0x158], xmm0
mov qword [rdi + 0x168], rsi
mov qword [rdi + 0x170], reloc.WS2_32.dll_ntohs
mov byte [rdi + 0x158], sil
mov qword [rdi + 0x178], rsi
call fcn.140027400
mov dword [rdi + 0x2f8], esi
jmp 0x1400294ef
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x14002940a
mov rax, rbx
inc rax
cmp word [rdi + rax*2], si
jne 0x140029347
cmp rax, 2
jbe 0x140029380
cmp word [rdi], 0x2d
jne 0x140029380
cmp word [rdi + 2], 0x2d
lea rbp, [rdi + 2]
jne 0x140029380
lfence
lea rcx, [rdi + 4]
lea rdx, [0x140063704]
call fcn.140032c50
test eax, eax
je 0x1400293b9
jmp 0x140029384
lea rbp, [rdi + 2]
mov rax, rbx
inc rax
cmp word [rdi + rax*2], si
jne 0x140029387
cmp rax, 1
jbe 0x14002940a
movzx eax, word [rdi]
sub ax, 0x2d
test r15w, ax
jne 0x14002940a
lfence
lea rdx, [0x140063702]
mov rcx, rbp
call fcn.140032c50
test eax, eax
jne 0x14002940a
lea rdx, [0x140055788]
mov ecx, 0x1b0
call fcn.14002a234
mov rdi, rax
test rax, rax
je 0x1400294ec
lea rax, [0x140060c84]
mov dword [rdi + 0x18], esi
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x30]
mov qword [rdi + 0x10], rax
lea rax, vtable.CmdSendLog.0
mov qword [rdi], rax
mov byte [rdi + 0x1c], 1
call fcn.140027400
mov dword [rdi + 0x1a8], esi
jmp 0x1400294ef
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x140029573
mov rax, rbx
nop word [rax + rax]
inc rax
cmp word [rdi + rax*2], si
jne 0x140029420
cmp rax, 2
jbe 0x140029459
cmp word [rdi], 0x2d
jne 0x140029459
cmp word [rdi + 2], 0x2d
lea rbp, [rdi + 2]
jne 0x140029459
lfence
lea rcx, [rdi + 4]
lea rdx, [0x14006371c]
call fcn.140032c50
test eax, eax
je 0x14002949e
jmp 0x140029460
lea rbp, [rdi + 2]
nop dword [rax]
inc rbx
cmp word [rdi + rbx*2], si
jne 0x140029460
cmp rbx, 1
jbe 0x140029573
movzx eax, word [rdi]
sub ax, 0x2d
test r15w, ax
jne 0x140029573
lfence
lea rdx, [0x14006371a]
mov rcx, rbp
call fcn.140032c50
test eax, eax
jne 0x140029573
lea rdx, [0x140055788]
mov ecx, 0x1a8
call fcn.14002a234
mov rdi, rax
test rax, rax
je 0x1400294ec
lea rax, [0x140060c84]
mov dword [rdi + 0x18], esi
mov qword [rdi + 8], rax
lea rcx, [rdi + 0x28]
mov qword [rdi + 0x10], rax
lea rax, vtable.CmdSendStatistics.0
mov qword [rdi], rax
mov byte [rdi + 0x1c], 1
mov qword [rdi + 0x20], rsi
call fcn.140027400
mov dword [rdi + 0x1a0], esi
jmp 0x1400294ef
mov rdi, rsi
test rdi, rdi
je 0x14002956f
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x198
call fcn.14002c2a0
mov ecx, 0x202
lea rdx, [rsp + 0x20]
call qword [sym.imp.WS2_32.dll_WSAStartup]
mov rcx, qword [rdi]
lea rdx, [r14 + 8]
mov ebx, eax
mov rax, qword [rcx + 0x10]
mov rcx, rdi
call qword [0x1400543b8]
test al, al
jne 0x140029537
mov esi, 0x57
jmp 0x140029551
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [0x1400543b8]
test al, al
mov ecx, 0x65b
cmove esi, ecx
mov rax, qword [rdi]
mov edx, 1
mov rcx, rdi
mov rax, qword [rax]
call qword [0x1400543b8]
test ebx, ebx
jne 0x14002956f
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov eax, esi
jmp 0x140029578
mov eax, 0x667
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.140029f00
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret