Function at 0x14002f5f0
Capabilities:
Send data
Send data on socket

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x490]
sub rsp, 0x590
mov rax, qword [0x1400bf0c0]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov r14, rdx
mov rsi, rcx
mov qword [rbp + 0x400], rdx
xor edi, edi
mov dword [rsp + 0x50], edi
cmp qword [rdx + 0x18], rdi
je 0x1400304d8
cmp qword [rdx + 0x38], rdi
je 0x1400304d8
add rdx, 8
lea rcx, [rbp + 0x460]
call fcn.1400168f0
nop
movzx r13d, byte [r14 + 1]
movabs r12, 0x8000000000000000
cmp r13b, 3
jne 0x14002fc25
lea r9, [r14 + 0x28]
mov rcx, qword [rsi]
add rcx, 0xc0
cmp rcx, r9
je 0x14002f6c9
mov rbx, qword [r9 + 0x10]
cmp qword [r9 + 0x18], 0xf
jbe 0x14002f692
mov r9, qword [r9]
mov rax, qword [rcx + 0x18]
cmp rbx, rax
ja 0x14002f6c0
mov r15, rcx
cmp rax, 0xf
jbe 0x14002f6a7
mov r15, qword [rcx]
mov qword [rcx + 0x10], rbx
mov r8, rbx
mov rdx, r9
mov rcx, r15
call fcn.140093090
mov byte [rbx + r15], 0
jmp 0x14002f6c9
mov rdx, rbx
call fcn.14001a510
nop
mov byte [rbp + 0x408], 0
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.140018510
nop
lea r15, [rbp - 0x40]
mov qword [rsp + 0x30], r15
lea rcx, [rbp + 0x10]
call fcn.14002eb00
mov rbx, rax
xor eax, eax
mov qword [rbp - 0x38], rax
mov byte [rbp - 0x40], 3
lea ecx, [rax + 0x20]
call fcn.1400689c0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], send
mov byte [rbx], 0
mov qword [r15 + 8], rax
lea rdx, [0x1400af154]
lea rcx, [rbp + 0x408]
call fcn.140018c90
nop
movzx r9d, byte [rax]
movzx r8d, byte [r15]
mov byte [rax], r8b
mov byte [r15], r9b
mov r8, qword [rax + 8]
mov r9, qword [r15 + 8]
mov qword [rax + 8], r9
mov qword [r15 + 8], r8
movzx edx, byte [r15]
lea rcx, [r15 + 8]
call fcn.140017790
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x14002f7b1
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f7ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003063b
call fcn.140068c3c
nop
mov byte [rbp + 0x418], 0
xor edx, edx
lea rcx, [rbp + 0x420]
call fcn.140018510
nop
lea r15, [rbp - 0x30]
mov qword [rsp + 0x30], r15
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x408]
call fcn.1400163e0
mov rbx, rax
xor eax, eax
mov qword [rbp - 0x28], rax
mov byte [rbp - 0x30], 3
lea ecx, [rax + 0x20]
call fcn.1400689c0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], send
mov byte [rbx], 0
mov qword [r15 + 8], rax
lea rdx, str.hwid
lea rcx, [rbp + 0x418]
call fcn.140018c90
nop
movzx r9d, byte [rax]
movzx r8d, byte [r15]
mov byte [rax], r8b
mov byte [r15], r9b
mov r8, qword [rax + 8]
mov r9, qword [r15 + 8]
mov qword [rax + 8], r9
mov qword [r15 + 8], r8
movzx edx, byte [r15]
lea rcx, [r15 + 8]
call fcn.140017790
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x14002f89f
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002f89a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030641
call fcn.140068c3c
lea rax, [rbp + 0x450]
mov qword [rsp + 0x30], rax
mov rax, qword [rsi]
mov byte [rbp + 0x450], 0
xor ecx, ecx
mov qword [rbp + 0x458], rcx
movzx eax, word [rax + 0x1b0]
mov byte [rbp + 0x450], 6
mov qword [rbp + 0x458], rax
lea rdx, [0x1400af160]
lea rcx, [rbp + 0x418]
call fcn.140018c90
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x450]
mov byte [rax], cl
mov byte [rbp + 0x450], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x458]
mov qword [rax + 8], rdx
mov qword [rbp + 0x458], rcx
movzx edx, byte [rbp + 0x450]
lea rcx, [rbp + 0x458]
call fcn.140017790
mov rbx, qword [rsi]
lea rcx, [rbx + 0xc0]
cmp qword [rbx + 0xd8], 0xf
jbe 0x14002f93d
mov rcx, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xd0]
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x418]
call fcn.1400163e0
nop
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14002f96a
mov rcx, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm1
mov dword [rsp + 0x20], 1
lea r9, [rsp + 0x60]
xor r8d, r8d
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x110]
call fcn.140011bd0
mov r8, qword [rax + 0x18]
test r8, r8
je 0x14002f9e0
cmp qword [rax + 0x38], 0
je 0x14002f9e0
lea rdx, [rax + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x14002f9d0
mov rdx, qword [rdx]
movsxd rcx, dword [rbx]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
jmp 0x14002f9e2
mov ebx, edi
lea rcx, [rbp + 0x110]
call fcn.1400124e0
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14002fa2a
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fa25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030647
call fcn.140068c3c
test ebx, ebx
jg 0x14002fb8b
mov rax, qword [rsi]
mov dword [rax + 0x10], 0x1627
lea rcx, [rsp + 0x30]
call fcn.14000ff90
movabs rdx, 0x7ffffffed5fa0dff
mov r15d, 0xff
mov rax, qword [rsp + 0x30]
cmp rax, rdx
je 0x14002fa7c
mov ecx, 1
cmovl ecx, r15d
test cl, cl
jns 0x14002fa7c
movabs rbx, 0x12a05f200
add rbx, rax
jmp 0x14002fa86
movabs rbx, 0x7fffffffffffffff
movabs r12, 0x4e94914effff
movabs r13, 0x431bde82d7b634db
nop word [rax + rax]
lea rcx, [rsp + 0x58]
call fcn.14000ff90
mov rax, qword [rsp + 0x58]
cmp rbx, rax
je 0x14002fb04
mov ecx, 1
cmovl ecx, r15d
test cl, cl
jle 0x14002fb04
mov rcx, rbx
sub rcx, rax
cmp rcx, r12
jg 0x14002faf8
mov rax, r13
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0xf4240
cmp rax, rcx
jge 0x14002faef
inc rdx
mov ecx, edx
call sub.KERNEL32.dll_Sleep
jmp 0x14002faa0
mov ecx, 0x5265c00
call sub.KERNEL32.dll_Sleep
jmp 0x14002faa0
mov rbx, qword [rsi]
xchg byte [rbx + 4], dil
movsxd rcx, dword [rbx]
call qword [sym.imp.WS2_32.dll_closesocket]
mov dword [rbx], 0xffffffff
movzx edx, byte [rbp + 0x418]
lea rcx, [rbp + 0x420]
call fcn.140017790
nop
movzx edx, byte [rbp + 0x408]
lea rcx, [rbp + 0x410]
call fcn.140017790
nop
mov rdx, qword [rbp + 0x478]
cmp rdx, 0xf
jbe 0x1400304c1
inc rdx
mov rcx, qword [rbp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030629
jmp 0x1400304bc
movzx edx, byte [rbp + 0x418]
lea rcx, [rbp + 0x420]
call fcn.140017790
nop
movzx edx, byte [rbp + 0x408]
lea rcx, [rbp + 0x410]
call fcn.140017790
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rdi
mov rsi, qword [rbp + 0x470]
lea r15, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova r15, qword [rbp + 0x460]
movabs rbx, 0x7fffffffffffffff
cmp rsi, rbx
ja 0x14003064d
cmp rsi, 0xf
ja 0x14003050a
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], socket
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0x60], xmm0
jmp 0x140030591
cmp r13b, 2
jne 0x14002fd72
mov qword [rbp + 0x80], rdi
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], rax
mov byte [rbp + 0x408], 0
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.140018510
nop
mov dword [rsp + 0x50], 1
lea rax, [rbp - 0x80]
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x48], rdi
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x14002fc83
mov rax, qword [rcx]
lea rdx, [rbp - 0x80]
call qword [rax]
mov qword [rbp - 0x48], rax
lea rcx, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rcx, qword [rbp + 0x460]
add rcx, qword [rbp + 0x470]
lea rax, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rax, qword [rbp + 0x460]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rcx
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x160]
call fcn.14001e050
nop
lea r8, [rbp + 0x408]
mov rcx, rax
call fcn.14001a7b0
nop
lea rcx, [rbp + 0x1a8]
call fcn.14001a690
mov rcx, qword [rbp + 0x198]
test rcx, rcx
je 0x14002fd29
mov rax, qword [rcx]
lea rdx, [rbp + 0x160]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x198], rdi
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x14002fd4c
mov rax, qword [rcx]
lea rdx, [rbp + 0x48]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x80], rdi
lea rdx, str.status
lea rcx, [rbp + 0x408]
call fcn.140018c90
mov rcx, rax
call fcn.1400350b0
mov rcx, qword [rsi]
mov dword [rcx + 0x10], eax
jmp 0x14002fb9f
cmp r13b, 5
jne 0x14003006b
mov qword [rbp + 0xc0], rdi
lea rax, [rbp + 0x88]
mov qword [rsp + 0x30], rax
mov byte [rbp + 0x408], 0
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.140018510
nop
mov dword [rsp + 0x50], 2
lea rax, [rbp - 0x80]
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x48], rdi
mov rcx, qword [rbp + 0xc0]
test rcx, rcx
je 0x14002fdd3
mov rax, qword [rcx]
lea rdx, [rbp - 0x80]
call qword [rax]
mov qword [rbp - 0x48], rax
lea rcx, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rcx, qword [rbp + 0x460]
add rcx, qword [rbp + 0x470]
lea rax, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rax, qword [rbp + 0x460]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rcx
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x240]
call fcn.14001e050
nop
lea r8, [rbp + 0x408]
mov rcx, rax
call fcn.14001a7b0
nop
lea rcx, [rbp + 0x288]
call fcn.14001a690
mov rcx, qword [rbp + 0x278]
test rcx, rcx
je 0x14002fe79
mov rax, qword [rcx]
lea rdx, [rbp + 0x240]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x278], rdi
mov rcx, qword [rbp + 0xc0]
test rcx, rcx
je 0x14002fe9f
mov rax, qword [rcx]
lea rdx, [rbp + 0x88]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0xc0], rdi
lea rdx, str.result
lea rcx, [rbp + 0x408]
call fcn.140018c90
mov rcx, rax
call fcn.1400350b0
mov rcx, qword [rsi]
mov dword [rcx + 0xc], eax
mov rax, qword [rsi]
cmp dword [rax + 0xc], 0xf063
jne 0x140030066
lea rdx, str.cheat
lea rcx, [rbp + 0x408]
call fcn.140018c90
mov rdx, rax
lea rcx, [rbp + 0x450]
call fcn.140022040
nop
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x430]
call fcn.140022040
lea rcx, str.games_:_.
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], reloc.WS2_32.dll_inet_addr
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x60], xmm0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140035190
nop
mov byte [rbp + 0x418], 3
mov ecx, 0x20
call fcn.1400689c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
mov r8d, 1
lea rdx, [0x1400af18c]
mov rcx, rax
call fcn.140002fa0
mov qword [rbp + 0x420], rbx
lea rdx, [rbp + 0x418]
lea rcx, [rbp + 0x450]
call fcn.140035ec0
movzx ebx, al
movzx edx, byte [rbp + 0x418]
lea rcx, [rbp + 0x420]
call fcn.140017790
nop
test bl, bl
je 0x14002ffa7
mov byte [0x1400c27f1], 1
mov byte [rbp + 0x418], 3
mov ecx, 0x20
call fcn.1400689c0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
mov r8d, 1
lea rdx, [0x1400af190]
mov rcx, rax
call fcn.140002fa0
mov qword [rbp + 0x420], rbx
lea rdx, [rbp + 0x418]
lea rcx, [rbp + 0x450]
call fcn.140035ec0
movzx ebx, al
movzx edx, byte [rbp + 0x418]
lea rcx, [rbp + 0x420]
call fcn.140017790
nop
test bl, bl
je 0x14003001a
mov byte [0x1400c27f0], 1
lea rax, str.logged_in.
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0xa
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea rcx, [rbp + 0x430]
call fcn.1400044b0
mov rax, qword [rsi]
mov dword [rax + 8], 3
movzx edx, byte [rbp + 0x450]
lea rcx, [rbp + 0x458]
call fcn.140017790
nop
jmp 0x14002fb9f
cmp r13b, 8
jne 0x1400303f8
mov qword [rbp + 0x100], rdi
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x30], rax
mov byte [rbp + 0x408], 0
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.140018510
nop
mov dword [rsp + 0x50], 4
lea rax, [rbp - 0x80]
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x48], rdi
mov rcx, qword [rbp + 0x100]
test rcx, rcx
je 0x1400300cc
mov rax, qword [rcx]
lea rdx, [rbp - 0x80]
call qword [rax]
mov qword [rbp - 0x48], rax
lea rcx, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rcx, qword [rbp + 0x460]
add rcx, qword [rbp + 0x470]
lea rax, [rbp + 0x460]
cmp qword [rbp + 0x478], 0xf
cmova rax, qword [rbp + 0x460]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rcx
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x320]
call fcn.14001e050
nop
lea r8, [rbp + 0x408]
mov rcx, rax
call fcn.14001a7b0
nop
lea rcx, [rbp + 0x368]
call fcn.14001a690
mov rcx, qword [rbp + 0x358]
test rcx, rcx
je 0x140030172
mov rax, qword [rcx]
lea rdx, [rbp + 0x320]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x358], rdi
mov rcx, qword [rbp + 0x100]
test rcx, rcx
je 0x140030198
mov rax, qword [rcx]
lea rdx, [rbp + 0xc8]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x100], rdi
lea rdx, [0x1400af1a4]
lea rcx, [rbp + 0x408]
call fcn.140018c90
xor edx, edx
mov rcx, rax
call fcn.140033830
movzx edx, byte [rax]
mov r8d, edx
sub r8d, 5
je 0x140030217
sub r8d, 1
je 0x140030207
cmp r8d, 1
jne 0x140030653
add rax, 8
cmp dl, 7
cmovne rax, rdi
xor edx, edx
movsd xmm0, qword [rax]
movsd xmm1, qword [0x1400af508]
comisd xmm0, xmm1
jb 0x1400301fd
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400301fd
mov rdx, r12
cvttsd2si rcx, xmm0
add rcx, rdx
jmp 0x140030229
add rax, 8
cmp dl, 6
cmovne rax, rdi
mov rcx, qword [rax]
jmp 0x140030229
sub dl, 5
cmp dl, 1
mov rcx, rdi
ja 0x140030226
lea rcx, [rax + 8]
mov rcx, qword [rcx]
mov rax, qword [rsi]
mov qword [rax + 0x18], rcx
lea rdx, [0x1400af1a4]
lea rcx, [rbp + 0x408]
call fcn.140018c90
mov edx, 1
mov rcx, rax
call fcn.140033830
movzx r8d, byte [rax]
mov edx, r8d
sub edx, 4
je 0x1400302a7
sub edx, 1
je 0x140030292
sub edx, 1
je 0x140030282
cmp edx, 1
jne 0x14003069e
add rax, 8
cmp r8b, 7
cmovne rax, rdi
cvttsd2si rcx, qword [rax]
jmp 0x1400302b6
add rax, 8
cmp r8b, 6
cmovne rax, rdi
mov ecx, dword [rax]
jmp 0x1400302b6
sub r8b, 5
cmp r8b, 1
mov rcx, rdi
ja 0x1400302a3
lea rcx, [rax + 8]
mov ecx, dword [rcx]
jmp 0x1400302b6
add rax, 8
cmp r8b, 4
cmovne rax, rdi
movzx ecx, byte [rax]
mov rax, qword [rsi]
mov dword [rax + 0x20], ecx
lea rdx, str.size
lea rcx, [rbp + 0x408]
call fcn.140018c90
mov rcx, rax
call fcn.1400350b0
mov r12d, eax
mov dword [rsp + 0x58], eax
mov rcx, qword [rsi]
lea r15, [rcx + 0x28]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x430], xmm1
mov qword [rbp + 0x440], rdi
lea rdx, [rbp + 0x430]
call fcn.140003330
mov dword [rsp + 0x30], eax
mov rbx, qword [rbp + 0x438]
mov r9, qword [rbp + 0x430]
sub rbx, r9
mov rcx, qword [r15 + 0x18]
cmp rbx, rcx
ja 0x14003034b
mov r12, r15
cmp rcx, 0xf
jbe 0x14003032d
mov r12, qword [r15]
mov qword [r15 + 0x10], rbx
mov r8, rbx
mov rdx, r9
mov rcx, r12
call fcn.140093090
mov byte [r12 + rbx], 0
mov r12d, dword [rsp + 0x58]
jmp 0x140030357
mov rdx, rbx
mov rcx, r15
call fcn.14001a510
nop
mov rcx, qword [rbp + 0x430]
test rcx, rcx
je 0x140030397
mov rdx, qword [rbp + 0x440]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030392
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400306e9
call fcn.140068c3c
cmp dword [rsp + 0x30], r12d
jne 0x1400303d6
lea rax, str.got_imports
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], reloc.WS2_32.dll_inet_addr
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea rcx, [rbp + 0x430]
call fcn.1400044b0
mov rax, qword [rsi]
mov dword [rax + 8], 4
movzx edx, byte [rbp + 0x408]
lea rcx, [rbp + 0x410]
call fcn.140017790
movabs r12, 0x8000000000000000
jmp 0x14002fbb2
cmp r13b, 9
jne 0x140030456
mov rcx, qword [rsi]
lea rdx, [rcx + 0x48]
call fcn.140003330
mov rcx, qword [rsi]
cdqe
cmp rax, qword [rcx + 0x18]
jne 0x14002fbb2
lea rax, str.got_image
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 9
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
lea rcx, [rbp + 0x430]
call fcn.1400044b0
mov rax, qword [rsi]
mov dword [rax + 8], 6
jmp 0x14002fbb2
cmp r13b, 7
jne 0x14002fbb2
mov rax, qword [rsi]
mov dword [rax + 8], 8
mov rbx, qword [rsi]
xchg byte [rbx + 4], dil
movsxd rcx, dword [rbx]
call qword [sym.imp.WS2_32.dll_closesocket]
mov dword [rbx], 0xffffffff
mov rdx, qword [rbp + 0x478]
cmp rdx, 0xf
jbe 0x1400304c1
inc rdx
mov rcx, qword [rbp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030635
call fcn.140068c3c
movdqa xmm0, xmmword [0x1400af580]
mov byte [rbp + 0x460], 0
movdqu xmmword [rbp + 0x470], xmm0
mov rcx, r14
call fcn.1400124e0
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.140068880
mov rbx, qword [rsp + 0x5e0]
add rsp, 0x590
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, rsi
or rax, 0xf
cmp rax, rbx
jbe 0x14003053a
lea rax, [r12 + 0x27]
mov rcx, rax
call fcn.1400689c0
test rax, rax
je 0x140030623
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140030572
mov rbx, rax
mov ecx, socket
cmp rax, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140030565
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14003062f
jmp 0x14003051b
test rcx, rcx
je 0x140030572
call fcn.1400689c0
mov rdi, rax
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rbx
lea r8, [rsi + 1]
mov rdx, r15
mov rcx, rdi
call fcn.140093090
nop
lea rdx, [r14 + 0x28]
lea rcx, [rbp - 0x80]
call fcn.1400168f0
lea rcx, str.:___
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], ntohl
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x430], xmm0
mov byte [rsp + 0x20], r13b
lea r9, [rsp + 0x60]
mov r8, rax
movzx edx, byte [r14]
lea rcx, [rbp + 0x430]
call fcn.140035470
nop
mov rdx, qword [rbp + 0x478]
cmp rdx, 0xf
jbe 0x1400304c1
inc rdx
mov rcx, qword [rbp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030635
jmp 0x1400304bc
call fcn.140073bd4
nop
call fcn.140073bd4
nop
call fcn.140001400
nop
call fcn.140073bd4
nop
call fcn.140073bd4
nop
call fcn.140073bd4
int3
call fcn.140073bd4
nop
call fcn.1400014a0
nop
mov rcx, rax
call fcn.140017d20
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140002f60
nop
mov r8, rax
lea rdx, [0x1400a6650]
lea rcx, [rbp - 0x10]
call fcn.140018a40
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rbp + 0x10]
call fcn.140010f20
lea rdx, [0x1400bd070]
lea rcx, [rbp + 0x10]
call fcn.14006aa84
nop
mov rcx, rax
call fcn.140017d20
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140002f60
nop
mov r8, rax
lea rdx, [0x1400a65d8]
lea rcx, [rbp - 0x10]
call fcn.140018a40
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rbp + 0x10]
call fcn.140010f20
lea rdx, [0x1400bd070]
lea rcx, [rbp + 0x10]
call fcn.14006aa84
nop
call fcn.140073bd4
int3